Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user eightbitswide ! (Registered 2024-12-24) You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > I need help with packing
2006-01-03 15:25
ready.

Registered: Feb 2003
Posts: 441
I need help with packing

I'm working on a C64 project which requires a lot of loading from disk. I have already got easy with The Dreams fast loader. In order to decrease disk drive access I'm thinking about compressing the datas. I know there are some tools that can compress datas, but I've never worked with them. What I need is:
-a tool that can pack the original data into a file;
-the part of code to insert into my assembler routine, which can unpack the data to memory after loading.

Can anybody suggest me a good packing tool with instructions?

thanks, Ready.
 
... 28 posts hidden. Click here to view all posts....
 
2006-01-05 21:03
Tch
Account closed

Registered: Sep 2004
Posts: 512
Quote: Hmm, i wonder how many info-threads about packers and crunchers we have created in the latest years. I just get a feeling of deja-vu when i read all this. Isn't there a better way to organize tools so that people could actually find out them selves what is best for their needs.. Oh-oh, deja-vu again!! Darn :/.

LOL! 8D

Would be nice indeed.
You can´t even check for "Top TOOLS" down here..
2006-01-05 21:57
Wanderer
Account closed

Registered: Apr 2003
Posts: 478
Quote: Hmm, i wonder how many info-threads about packers and crunchers we have created in the latest years. I just get a feeling of deja-vu when i read all this. Isn't there a better way to organize tools so that people could actually find out them selves what is best for their needs.. Oh-oh, deja-vu again!! Darn :/.

I believe there is, out there in the internet, a page which showed the results of a wide variety of crunchers run against the same program.

Cruel Crunch was nice if you had a few hours to spare on an actual C64. If you have a PC, Pucrunch.

2006-01-06 23:37
Krill

Registered: Apr 2002
Posts: 2980
wanderer: only believe in stats you faked yourself.
2006-01-07 13:07
Slammer

Registered: Feb 2004
Posts: 416
Quote: i believe in the magic of ca65, ld65, c1541, exomizer/pucrunch, some java tools, gnu octave scripts and make. works like a breeze for me.

Well, Guess you haven’t seen Kick Assembler yet! ;-)

I think it would be nice to have the assembler do the packing for you just by adding a .pack directive:

.pack {
*=$5000
lda #0
sta $d020
sta $d021
...
}

It saves you a lot of time and gives you an easy way to exchange information like variables and labels between the packed and the unpacked code. It could be that you have a part containing a load effect in the end which you want to use while loading the next part. You pack it to save memory while doing the main effect and easily exchange information about startAddress, Irq address, Music, Video mem and other data between the two pieces of code. For example passing the startaddress of the loaderpart is done with no effort at all:

lda #<packedLoaderPart
ldx #>packedLoaderPart
jsr unpack
jsr loaderpart

;-----------------------------
packedLoaderPart:
.pack {
*= $5000
loaderPart:
lda #43
...
}

Unfortunately pucrunch is done i C. Anybody knows of one done in java?
2006-01-07 13:18
Slammer

Registered: Feb 2004
Posts: 416
Quote: i believe in the magic of ca65, ld65, c1541, exomizer/pucrunch, some java tools, gnu octave scripts and make. works like a breeze for me.

Well, Guess you haven’t seen Kick Assembler yet! ;-)

I think it would be nice to have the assembler do the packing for you just by adding a .pack directive:

.pack {
*=$5000
lda #0
sta $d020
sta $d021
...
}

It saves you a lot of time and gives you an easy way to exchange information like variables and labels between the packed and the unpacked code. It could be that you have a part containing a load effect in the end which you want to use while loading the next part. You pack it to save memory while doing the main effect and easily exchange information about startAddress, Irq address, Music, Video mem and other data between the two pieces of code. For example passing the startaddress of the loaderpart is done with no effort at all:

lda #<packedLoaderPart
ldx #>packedLoaderPart
jsr unpack
jsr loaderpart

;-----------------------------
packedLoaderPart:
.pack {
*= $5000
loaderPart:
lda #43
...
}

Unfortunately pucrunch is done i C. Anybody knows of one done in java?
2006-01-07 13:21
Slammer

Registered: Feb 2004
Posts: 416
Quote: i believe in the magic of ca65, ld65, c1541, exomizer/pucrunch, some java tools, gnu octave scripts and make. works like a breeze for me.

Well, Guess you haven’t seen Kick Assembler yet! ;-)

I think it would be nice to have the assembler do the packing for you just by adding a .pack directive:

.pack {
*=$5000
lda #0
sta $d020
sta $d021
...
}

It saves you a lot of time and gives you an easy way to exchange information like variables and labels between the packed and the unpacked code. It could be that you have a part containing a load effect in the end which you want to use while loading the next part. You pack it to save memory while doing the main effect and easily exchange information about startAddress, Irq address, Music, Video mem and other data between the two pieces of code. For example passing the startaddress of the loaderpart is done with no effort at all:

lda #<packedLoaderPart
ldx #>packedLoaderPart
jsr unpack
jsr loaderpart

;-----------------------------
packedLoaderPart:
.pack {
*= $5000
loaderPart:
lda #43
...
}

Unfortunately pucrunch is done i C. Anybody knows of one done in java?
2006-01-07 13:31
iAN CooG

Registered: May 2002
Posts: 3197
Luckily i would say!
Why bother with java? *shrug*
2006-01-07 13:32
tlr

Registered: Sep 2003
Posts: 1790
Quote:
Unfortunately pucrunch is done i C. Anybody knows of one done in java?


Haven't seen one. For speed and portability reasons I guess most people have chosen C.
Must it be Java? You could use some kind of JNI-binding, or why not just call the binary?
If not, I guess you'll have to port one of them or write your own.
2006-01-07 14:27
Slammer

Registered: Feb 2004
Posts: 416
Hmm. Sorry about the repetitions. Guess you shouldnt step back over the message with <- when you are done browsing :-(

Tlr: That is absolute a possibility. Or just make java execute a program on the hostmachine and read the resultfile afterwards. But java-cruncher is my first choise since its easier for the user to install: One file works on all systems, no recompiling etc.

2006-01-07 14:34
tlr

Registered: Sep 2003
Posts: 1790
Quote: Hmm. Sorry about the repetitions. Guess you shouldnt step back over the message with <- when you are done browsing :-(

Tlr: That is absolute a possibility. Or just make java execute a program on the hostmachine and read the resultfile afterwards. But java-cruncher is my first choise since its easier for the user to install: One file works on all systems, no recompiling etc.



I'll have to agree a bit with Ian here though.
I don't particulary like Java command-line utilities as they tend to provide a different interface at the prompt, and I don't find them easy to install.
Besides most systems except Windows have a c-compiler by default, so Ansi C should work fine. Not many systems have a Java-interpreter by default.

It should be said here though, that I'm a *nix kind of guy and use emacs, make and cvs for most of my code, so I don't bother compiling most of the tools.

Others might disagree. We all have different approaches. Some code straight into an ML-monitor aswell. :)

The pack-directive is a nice feature! :) Should make it real easy to do overlay-style programming of big programs.
Previous - 1 | 2 | 3 | 4 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Jazzcat/Onslaught
Magic/Nah-Kolor
celticdesign/G★P/M..
Drees
Brataccas/HF
Guests online: 69
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 The Demo Coder  (9.6)
6 Edge of Disgrace  (9.6)
7 What Is The Matrix 2  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Cubic Dream  (9.6)
3 Party Elk 2  (9.6)
4 Copper Booze  (9.6)
5 X-Mas Demo 2024  (9.5)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Triad  (9.3)
Top Fullscreen Graphicians
1 Joe  (9.7)
2 Sulevi  (9.6)
3 The Sarge  (9.6)
4 Veto  (9.6)
5 Facet  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.04 sec.