Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Pixeling > koala otpimizing
2007-03-08 02:41
Oswald

Registered: Apr 2002
Posts: 5020
koala otpimizing

Hi Everyone,

I know there's a c64 tool out there that helps with optimizing koala pictures for packing, but no idea what it is called. Anyone knows?:) Timanthes would do the job for me aswell with its nibble swapper tool, but is there a way to load/save a native c64 koala format picture with it ? *.prg doesnt works, what format does it expect to be .prg anyway ?:)
 
... 65 posts hidden. Click here to view all posts....
 
2024-04-04 09:24
ChristopherJam

Registered: Aug 2004
Posts: 1378
I got the three images in the corpus along with a slideshow down to 17307 bytes \o/

It's a bit slow to decrunch though - may as well be loading off tape..

Compressed data sizes for the three images:
 untitled (floris)  - 6755 bytes
 song_of_the_sunset - 4594 bytes
 short_circuit      - 5624 bytes
Tinned Koalas

Mostly worked on this in November/December 2023, just didn't get around to releasing until today. It does build on the ANS work for bitpickler of course.
2024-04-04 20:26
Jetboy

Registered: Jul 2006
Posts: 216
Wouldn't it compress better if the order of bytes was changed? We were doing some research on it back in the days, and storing data in columns was usually giving better compression. For pictures with dithering, storing first odd bytes, then even bytes was giving even better results.
2024-04-04 23:12
Fungus

Registered: Sep 2002
Posts: 618
I always get best results with pico 1.3 and my brain. Check the short circuit loading pic on the n0s release, it's hand optimized as well with pico and see if it's any better.
2024-04-05 17:58
Burglar

Registered: Dec 2004
Posts: 1031
 +-------------+-------------+-------------+
 |   spot+dali |png2prg+dali | koalacanner |
 +-------------+-------------+-------------+
 |        7349 |        7546 |        6755 | (Untitled/Floris)
 |        5155 |        5464 |        4594 | (Song of the Sunset/Mermaid)
 |        5986 |        6155 |        5624 | (Short Circuit/Karen Davies)
 +-------------+-------------+-------------+

I think this stat belongs in this thread :)
Using SPOT 1.2, png2prg 1.6 and Tinned Koalas.

<cjam> So, spot-style 'optimizing' for png2prg 1.7? :D

I am not sure, for me cleanliness of the koala is the goal. Also, the better result may be because spot combines hi/lo nibbles in colorram, saving 500 bytes. I have no interest in that, I want to output standard format always. But, I could add a cli-flag for it...

@fungus, can you extract that koala from short circuit and pack with dali? would be fun if ur handiwork beats png2prg or even spot :)
2024-04-05 18:21
Krill

Registered: Apr 2002
Posts: 2847
Quoting ChristopherJam
I got the three images in the corpus along with a slideshow down to 17307 bytes \o/

It's a bit slow to decrunch though - may as well be loading off tape..
This sort of flips the table on the entire premise of optimising C-64 multicolour bitmaps for LZ-style compression.

If it only wasn't THAT slow to decode. =)
2024-04-05 19:35
Fungus

Registered: Sep 2002
Posts: 618
pico 1.3+dali = 5980
2024-04-05 19:38
soci

Registered: Sep 2003
Posts: 473
Packed what I did in the past with dali now and it's 7342, 5156 and 5984 respectively. Almost spot on.
2024-04-05 22:32
Sparta

Registered: Feb 2017
Posts: 39
Wow, fantastic achievement CJam! Would be interesting to see how differently “otpimized” versions of the same bitmap compress with koalacanner.

Quoting Burglar
I am not sure, for me cleanliness of the koala is the goal. Also, the better result may be because spot combines hi/lo nibbles in colorram, saving 500 bytes. I have no interest in that, I want to output standard format always. But, I could add a cli-flag for it...

SPOT doesn’t change the cleanliness of the koala and outputs standard koala but it can also create other formats such as the combined color RAM nibbles if that fits one’s needs better. :)

The goal with SPOT is to get as close to hand optimization as possible in a fraction of the time needed for the latter and in a way that can be added to a democoder’s toolchain.
2024-04-06 07:07
Burglar

Registered: Dec 2004
Posts: 1031
Quoting Sparta
SPOT doesn’t change the cleanliness of the koala and outputs standard koala but it can also create other formats such as the combined color RAM nibbles if that fits one’s needs better. :)

Yea, just tested myself as well and indeed, I was just hoping combined nibbles would be the main reason why I'm trailing behind :)

Quoting Fungus
pico 1.3+dali = 5980

Fungus Handiwork Wins! \o/
2024-04-06 09:56
ChristopherJam

Registered: Aug 2004
Posts: 1378
Quoting Krill
This sort of flips the table on the entire premise of optimising C-64 multicolour bitmaps for LZ-style compression.


Yes, it's inspired by the discussion, rather than a direct response to the question. I got a bit distracted :)

Quote:
If it only wasn't THAT slow to decode. =)


Yes, it's a bit impractical for 99% of use cases.


Quoting Sparta
Wow, fantastic achievement CJam! Would be interesting to see how differently “otpimized” versions of the same bitmap compress with koalacanner.


Cheers! FWIW at the moment the first phase of compression just sorts the non-background colours in numerical order and assigns them to bitpairs 1 to n. I could try and allow preserving of input bitpairs, but it would still need to be constrained to using the first m values, where m is the number of distinct colours - the second phase only outputs as many colour nybbles per char as are actually used. Oh, and it'd be a moderate amount of work at this stage too - the current implementation just uses a library call to load a koala into a 160x200 array of four bit values, so it doesn't currently have access to the original bitpairs..

I do need to see if it compresses any better if I sort the colours in luminance order instead - that might be better at dealing with images that use similar shading patterns with different local palettes in different parts of the image.

Nice work on Spot, btw - it actually answers Oswald's original question, and it's the second best option after putting a Fungus in every home :)
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 - 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
Exile/Anubis
Mason/Unicess
Higgie/Kraze/Onslaught
Dymo/G★P
New Design/Excess
Guests online: 130
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 Memento Mori  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Wafer Demo  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Nostalgia  (9.3)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Crackers
1 Mr. Z  (9.9)
2 Antitrack  (9.8)
3 OTD  (9.8)
4 S!R  (9.7)
5 Faayd  (9.7)

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