#177499 - brave_orakio - Thu Jul 12, 2012 1:16 am
I created an LZSS decompressor straight to VRAM and I was wondering how many cycles the ones you guys are using takes up?
Mine currently stands at a slow 20k for a 32x32 4-bits per pixel image. I think I can cut it down to around 13k - 15k but the current build doesn't allow any lower than that I think. This is running the process from ROM and not IWRAM by the way.
_________________
help me
#177500 - Dwedit - Thu Jul 12, 2012 4:55 am
I once made an ultra-fast LZ-style compressor/decompressor that operated on aligned 32-bit words only, but that's not practical for most uses.
_________________
"We are merely sprites that dance at the beck and call of our button pressing overlord."
#177501 - brave_orakio - Thu Jul 12, 2012 6:05 am
Mine is 16-bit aligned by default since I want it to write directly to VRAM.
For a 32-bit aligned LZ compression,wouldn't the compression rate be compromised? My 16-bit version has a compression similar to the 8-bit version(roughly 60% of the original file size) but I can't imagine that being the same for the 32-bit version.
_________________
help me
#177507 - brave_orakio - Fri Jul 13, 2012 1:15 am
I managed to speed it up to 10k cycles for a 32x32 4-bit/pixel image executed from ROM. Is this good or can it go faster with a different process?
edit: As an additional question, how fast is the built in BIOS LZSSdecompress2vram of the GBA for 32x32 sprites? My data format is not compatible with the BIOS version because I changed some things up to make it run a little faster in my custom LZSS decompression process.
_________________
help me
#177526 - FluBBa - Sun Jul 22, 2012 3:24 pm
brave_orakio wrote: |
Mine is 16-bit aligned by default since I want it to write directly to VRAM. |
Writing to VRAM can be done with 16 or 32bit writes.
_________________
I probably suck, my not is a programmer.
#177527 - brave_orakio - Mon Jul 23, 2012 4:51 am
Yeah, its just that making it 32-bit might compromise the compression rate
_________________
help me