Author Topic: [Axiom] Pucrunch Decompression and tools  (Read 14346 times)

0 Members and 1 Guest are viewing this topic.

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
[Axiom] Pucrunch Decompression and tools
« on: March 28, 2011, 12:20:55 pm »
Just to say. I'm in love with the idea of using pucrunch for just about everything that could be compressed. Bitmaps, tilemaps, text, it mattered not. I use it for just about everything. After messing around with it in CaDan and E:SoR, and after writing the Athena installer, I figured I might as well write an Axiom to do the decompression as well.

So here we have it. Something that decompresses pucrunch-compressed data. Useful for large games with tons of data files.

Contains two versions of the pucrunch decompressor, one for use in RAM and one for use as a Flash Application (Axe will automatically select the correct version).

Contains tools that you can use on the PC side of things to compress and package what you want.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline Ikkerens

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 378
  • Rating: +28/-9
  • JavaScript Magician
    • View Profile
    • Walotech
Re: [Axiom] Pucrunch Decompression and tools
« Reply #1 on: March 28, 2011, 12:37:11 pm »
I might be an enormous noob, but could you also provide a link to the compressor of Pucrunch (I have never heard of Pucrunch)
Cause this sounds quite interesting to me, but a link would be greatly appreciated ;)

Splut for Android [----------]
Paused/halted indefinitely, might be abandoned, our graphic designer quit and the rest of us simply doesn't have the time to work on it...

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #2 on: March 28, 2011, 12:40:34 pm »
I might be an enormous noob, but could you also provide a link to the compressor of Pucrunch (I have never heard of Pucrunch)
Cause this sounds quite interesting to me, but a link would be greatly appreciated ;)
It's in the archive.
DecompAx\pc\pucrunch.exe
Instructions are in the IgnoreMe.txt file.

Details regarding pucrunch can be found here: http://www.cs.tut.fi/~albert/Dev/pucrunch/
« Last Edit: March 28, 2011, 12:41:19 pm by Iambian »
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline squidgetx

  • Food.
  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1881
  • Rating: +503/-17
  • rawr.
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #3 on: March 28, 2011, 03:11:07 pm »
Nice, now I don't have to write my own routines for compression...

Just have to wait for Quigibo to reimplement big-endian nibble reads...
« Last Edit: March 28, 2011, 03:11:21 pm by squidgetx »

Offline Fast Crash

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 192
  • Rating: +45/-7
  • Virus of tomorrow
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #4 on: March 28, 2011, 03:33:09 pm »
Could you put a way to compress with pucrunch in your Axiom ?

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #5 on: March 28, 2011, 05:38:06 pm »
Quote from: pudecomp/ReadMe.txt
Q: When will you write a Pucrunch compression Axiom?
A: Short answer: I will not.
   Seriously. Decompression is worlds easier than compression. I'm *SO* not
   gonna write a compressor. And even if I do, it wouldn't do very well to
   make an Axiom out of it. In all seriousness, it would have to be a
   stand-alone utility. If you could just bone up on the theories used in
   the making of pucrunch (just Google that name), you'd find out all the
   information you could ever need. And once you find it out...
   You ought to understand why I don't want to write it...
   And DJ_O will be screaming at my as to why E:SoR isn't being updated.
It was already answered in the ReadME, but I understand the fact that many people might not even download the file and read it unless they're convinced that it's the right thing for them. Still, it was hard enough modifying the pucrunch decompresser to work as an Axiom. On the idea of compressors, there's probably a reason why the compressor is written in C (not assembly of any sort). If you could point me to a good C to Z80 cross-compiler, I might consider it only for writing a standalone compressor. If you tried to use it as an Axiom, I will guarantee you. The Axiom will end up eating more space than anything you could possibly code up.

Now... if I wanted a good exercise, I might just write a standalone compressor in Z80 ASM anyway. If DJ_O starts asking why E:SoR isn't getting anyone done, I'll start blaming everyone involved. Including the Nommer of Fishies.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline FinaleTI

  • Believe in the pony that believes in you!
  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1830
  • Rating: +121/-2
  • Believe in the pony that believes in you!
    • View Profile
    • dmuckerman.tumblr.com
Re: [Axiom] Pucrunch Decompression and tools
« Reply #6 on: March 28, 2011, 05:41:41 pm »
Quote from: pudecomp/ReadMe.txt
Q: When will you write a Pucrunch compression Axiom?
A: Short answer: I will not.
   Seriously. Decompression is worlds easier than compression. I'm *SO* not
   gonna write a compressor. And even if I do, it wouldn't do very well to
   make an Axiom out of it. In all seriousness, it would have to be a
   stand-alone utility. If you could just bone up on the theories used in
   the making of pucrunch (just Google that name), you'd find out all the
   information you could ever need. And once you find it out...
   You ought to understand why I don't want to write it...
   And DJ_O will be screaming at my as to why E:SoR isn't being updated.
It was already answered in the ReadME, but I understand the fact that many people might not even download the file and read it unless they're convinced that it's the right thing for them. Still, it was hard enough modifying the pucrunch decompresser to work as an Axiom. On the idea of compressors, there's probably a reason why the compressor is written in C (not assembly of any sort). If you could point me to a good C to Z80 cross-compiler, I might consider it only for writing a standalone compressor. If you tried to use it as an Axiom, I will guarantee you. The Axiom will end up eating more space than anything you could possibly code up.

Now... if I wanted a good exercise, I might just write a standalone compressor in Z80 ASM anyway. If DJ_O starts asking why E:SoR isn't getting anyone done, I'll start blaming everyone involved. Including the Nommer of Fishies.
Perhaps this could be a start? I think someone is using it over at Cemetech to make an OS for the 83+/84+ family...
« Last Edit: March 28, 2011, 05:42:07 pm by FinaleTI »


Spoiler For Projects:

My projects haven't been worked on in a while, so they're all on hiatus for the time being. I do hope to eventually return to them in some form or another...

Spoiler For Pokemon TI:
Axe port of Pokemon Red/Blue to the 83+/84+ family. On hold.

Spoiler For Nostalgia:
My big personal project, an original RPG about dimensional travel and a few heroes tasked with saving the world.
Coding-wise, on hold, but I am re-working the story.

Spoiler For Finale's Super Insane Tunnel Pack of Doom:
I will be combining Blur and Collision Course into a single gamepack. On hold.

Spoiler For Nostalgia Origins: Sky's Story:
Prequel to Nostalgia. On hold, especially while the story is re-worked.

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #7 on: March 28, 2011, 06:23:47 pm »
Just have to wait for Quigibo to reimplement big-endian nibble reads...

This probably isn't going to be implemented as it was a mistake before.  If you want a big-endian read though, all you have to do is flip the last bit of the doubled pointer:

Code: [Select]
nib{P*2}becomes:
Code: [Select]
nib{P*2 xor 1}and the endianness should switch.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Compynerd255

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 336
  • Rating: +53/-4
  • Betafreak Games
    • View Profile
    • Betafreak Games
Re: [Axiom] Pucrunch Decompression and tools
« Reply #8 on: March 28, 2011, 06:31:12 pm »
I downloaded your Axiom and was looking at the ReadME for it, and I found that the program read from external files in archive. While it is still quite useful in this form, I have a feature request: could we read the compressed data inline so that we can package the whole program as a single file, under the 8811 byte limit? Thanks.
« Last Edit: March 28, 2011, 06:32:55 pm by Compynerd255 »
The Slime: On Hold, preparing to add dynamic tiles

Axe Eitrix: DONE

Betafreak Games: Fun filled games for XBox and PC. Check it out at http://www.betafreak.com



Offline Geekboy1011

  • The Oneironaut
  • Donator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2031
  • Rating: +119/-2
  • Dream that Awakening dream
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #9 on: March 28, 2011, 09:02:38 pm »
i feel like i will be (Ab)useing this in my correlation project...have to store that epic #omnimaga rpg text some how

that makes it a tibasic c3 axe correlation project now doesnt it....
* Geekboy1011 goes back to hunting threw the cherry realm for inspiration

Offline leafy

  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1554
  • Rating: +475/-97
  • Seizon senryakuuuu!
    • View Profile
    • keff.me
Re: [Axiom] Pucrunch Decompression and tools
« Reply #10 on: March 28, 2011, 10:01:07 pm »
Wow, CalcGS support? Man, this is awesome! I may just use this in Graviter :P
In-progress: Graviter (...)

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #11 on: March 28, 2011, 11:29:21 pm »
Pucrunch is designed to be asymmetrical - the PC does the considerably-harder work of compressing the data so that the decompressor can be fairly simple.  If you want to both compress and decompress on the calculator, you should probably think about using a simpler and more symmetrical algorithm.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Axiom] Pucrunch Decompression and tools
« Reply #12 on: March 28, 2011, 11:52:21 pm »
Nice stuff Iambian. :O

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #13 on: March 29, 2011, 11:35:36 am »
I downloaded your Axiom and was looking at the ReadME for it, and I found that the program read from external files in archive. While it is still quite useful in this form, I have a feature request: could we read the compressed data inline so that we can package the whole program as a single file, under the 8811 byte limit? Thanks.
That's a pretty good suggestion. Funny thing is, that's the way the pucrunch decompressor was originally coded. I think it should be easy enough to add in. Just gotta find some time to do it.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: [Axiom] Pucrunch Decompression and tools
« Reply #14 on: March 29, 2011, 12:24:59 pm »
If DJ_O starts asking why E:SoR isn't getting anyone done, I'll start blaming everyone involved. Including the Nommer of Fishies.

O.O
* Qwerty.55 runs
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ