Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in 
288 bytes   [2007]

288 bytes Released by :
Digital Sounds System

Release Date :
12 December 2007

Type :
C64 1K Intro

User rating:awaiting 5 votes (5 left)

Credits :
Code .... Knoeki of Digital Sounds System, Gheymaid Inc.

Download :
http://csdb.dk/getinternalfile.php/50568/minicodepacked.prg (downloads: 828)

Look for downloads on external sites:
 Pokefinder.org


User Comment
Submitted by null on 12 December 2007
just to let everyone know; I did this shit over a year ago.. my first toying around with TASS ( got a copy from someone at X'06.. if you read this? who the fuck are you? :D :D )
User Comment
Submitted by enthusi on 12 December 2007
or even smaller (28 bytes including kicker):
!to "knook.prg",cbm

*=$02ea
start
sei
lda #$00
sta $d011
loop nop
nop
sta $d020
inc $d020
nop
nop
nop
inc $d020
nop
jmp loop
*=$0302
!word start

*thanks for keeping me off work :)
User Comment
Submitted by enthusi on 12 December 2007
I wonder why noone is givin' a proper basic head. All this byte-fiddling is so 80s :o)

*=$0801
!word basend ;next basicline
!word 0
!byte $9e ;token for SYS
!tx "2061" ;$080d
!byte 0 ;end of line
basend
!word 0 ;end of basicprg

start_code_here (no *=$080d required)
User Comment
Submitted by Skate on 12 December 2007
Finally, Knoeki has given up trying making $d012 effects from basic ;) Way to go Knoeki. Don't worry about the size (not yet).
User Comment
Submitted by El Topo on 12 December 2007
I'm going to pretend I know stuff and post this insert-sysline-code I found in the old Swedish computermag DMZ:

*=$0801
.byte 11,8,10,0,158
.text "2061"
.byte 0,0,0

---rest of the code---

This is where someone posts a shorter one :)
User Comment
Submitted by iAN CooG on 11 December 2007
Quote:

filename: "minicode.prg", loading from $1000 to $1018
crunching from $1000 to $1018

$1018-$1000 IS the size.
User Comment
Submitted by Cruzer on 11 December 2007
Protip: Don't pack such small files. :)
And you can use the monitor in e.g. Vice to see how many bytes it takes up in memory, then add 2 (load adr) to get the file size.
User Comment
Submitted by tlr on 11 December 2007
Yes. The new file is identical to the old, i.e 299 bytes.

metal-rox-mk3:~$ wc -c minicodepacked.prg
299 minicodepacked.prg
metal-rox-mk3:~$

To add a sys-line yourself, do this:
* from basic, type "0 SYS2061" enter.
* dump the memory at $0801 in the monitor. ($0801 to $080c inclusive)
* start your source with org $0801
* add those hex values as .byte/dc.b statements at the beginning of you source.
* add the actual code right after the hex values. (which is then at $080d/2061).

This can be made even shorter, but let's start with this.
User Comment
Submitted by null on 11 December 2007
Well... 288 bytes is the size of the file now.. changed the catagory and name to match...

...but probably I am wrong again -_-

( it's just the filesize that Linux shows me.. I have really no idea how I can see how big the actual code is... see production notes for source.. )
User Comment
Submitted by Scout on 11 December 2007
I made the same mistakes 20 years ago too :)

Enjoy the exploration!
User Comment
Submitted by tlr on 11 December 2007
Yes do that. :)
Your 47 bytes is excluding the decompression code.
Pretty pointless to "compress" your original 24 bytes into 47 too.
User Comment
Submitted by null on 11 December 2007
darn, I wish I knew that...

*goes to fix that basic header*
User Comment
Submitted by Scout on 11 December 2007
The file is 297 bytes big.
I based this after a glass of vodka wyborowa so I might be wrong.
User Comment
Submitted by Groepaz on 11 December 2007
hehe you shouldnt crunch such a small file, because it will only become (much) bigger =)

next exercise: add a basic stub to your code =)
User Comment
Submitted by null on 11 December 2007
tlr: I based it on the exomizer output.. so I might be wrong!

knoeki@PiNGU ~/c64code $ ./exomizer sfx 4096 -o minicodepacked.prg minicode.prg
 filename: "minicode.prg", loading from $1000 to $1018
 crunching from $1000 to $1018 
Phase 1: Instrumenting file
-----------------------------
 Length of indata: 24 bytes.
 [building.directed.acyclic.graph.building.directed.acyclic.graph.]
 Instrumenting file, done.

Phase 2: Calculating encoding
-----------------------------
 pass 1: optimizing ..
 [finding.cheapest.path.finding.cheapest.path.finding.cheapest.pat]
  size 144.0 bits ~18 bytes
 pass 2: optimizing ..
 [finding.cheapest.path.finding.cheapest.path.finding.cheapest.pat]
  size 144.0 bits ~18 bytes
 Calculating encoding, done.

Phase 3: Generating output file
------------------------------
 Encoding: 0000000000000000,0100,0000000000000000,0000000000000000
 Length of crunched data: 47 bytes.
 Target is self-decrunching C64 executable,
 jmp address $1000.
User Comment
Submitted by tlr on 11 December 2007
Hmm... the file is much larger than 47 bytes, and after depacking there is code from $1000-$1017 (inclusive).
I say: ?
User Comment
Submitted by Yazoo on 11 December 2007
hehe, nice... knoeki released his 1st asm code :-) congrats!
Search CSDb
Advanced
Navigate
Prev - Random - Next
Detailed Info
· Summaries
· User Comments (17)
· Production Notes (1)
Fun Stuff
· Goofs
· Hidden Parts
· Trivia
Forum
· Discuss this release
Sponsored links
Support CSDb
Help keep CSDb running:



Funding status:




About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2019
Page generated in: 0.086 sec.