UPKR
[nfo]
|
||||||||
---|---|---|---|---|---|---|---|---|
|
||||||||
|
popularity : 57% |
|||||||
alltime top: #11326 |
|
|||||||
added on the 2022-10-16 21:04:26 by MmcM |
popularity helper
comments
New v0.2.0
https://github.com/exoticorn/upkr/releases/tag/v0.2.0
* change command line interface
* add options for encoding variants to be used by optimized unpackers on various platforms
* optimized unpackers for z80, arm and riscv
https://github.com/exoticorn/upkr/releases/tag/v0.2.0
* change command line interface
* add options for encoding variants to be used by optimized unpackers on various platforms
* optimized unpackers for z80, arm and riscv
Yes!
Great golfing exercise
had lots of fun golfing this for armv6m. Wonderful packer for thumb code, works wonders for pi pico stuff :)
you get a packer and you get a packer! everyone gets a packer!
woah neat!
Quote:
I see no issue with thisyou get a packer and you get a packer! everyone gets a packer!
That looks something that I would try to use.
it's the best compressor for our 4kb intro Moments till now. But i had less success with shorter intros.
UPKR promo tech demo for ZX Spectrum with UPKR inside
YouTube of it https://www.youtube.com/watch?v=HL9GfzX6uNs
YouTube of it https://www.youtube.com/watch?v=HL9GfzX6uNs
yeaaaaaaaaaaah!
Super interesting! Tiny depacker as well (not that there's anything wrong with that)
To add to the UPKR success stories: PICO4K gets 294 bytes smaller (down to 3123 bytes from 3417) when crunched using UPKR instead of exomizer.
It really is a very nice packer :)
It really is a very nice packer :)
Just ran a quick test with Makeshift against the previous best packer/configuration (the packer which I talked about in the blog post linked in the UPKR readme), and just comparing compressed sizes, the previous best was 3523 bytes, and upkr with -9 achieves 3473 bytes. Of course a proper comparison would also have to account for added decoder complexity and I may spend some time looking into that, but at this point I'd be willing to bet that UPKR still comes out on top. Nicely done, this kicks ass :) .
One thing I'm a little surprised about is the probability update used. In my earlier post about rABS on 6502 (the "Modeling" section), I explain a (rather simple) trick to make 8-bit probabilities much more effective, and in my tests that had a quite meaningful effect on compression, so I'm a bit surprised to see that that's not also being used here. Perhaps further savings are possible, or is this perhaps something you tried and dropped when using more sophisticated modeling?
One thing I'm a little surprised about is the probability update used. In my earlier post about rABS on 6502 (the "Modeling" section), I explain a (rather simple) trick to make 8-bit probabilities much more effective, and in my tests that had a quite meaningful effect on compression, so I'm a bit surprised to see that that's not also being used here. Perhaps further savings are possible, or is this perhaps something you tried and dropped when using more sophisticated modeling?
ah, now I see, the probabilities are biased before the shift, which would indeed make the update more accurate. Still, I wonder if the top/bottom of the probability ranges are being used effectively with this, something to play with :) .
just hacked a quick test (yay open source!), and indeed the update rule used here (the simple bias) appears to work better without my trick, which is quite cool :)
Ah, actually, I did the initial test wrong - with my update rule in UPKR (rather than both using your bias and my output trick) compression is slightly better at 3470 bytes, but I'd guess the additional decompressor code for the more complicated update rule would make the result overall larger for a net loss.
And I can get another couple bytes by biasing the initial predictions (3468 with my update rule, 3469 with yours), so might be worth adding an option for that.
anyways, just dicking around here, again, nice work :D
now we can feet even more AY in 48K Speccy
Jaguar RISC depacker
https://github.com/42Bastian/new_bjl/blob/main/exp/depacker/unupkr.js
https://github.com/42Bastian/new_bjl/blob/main/exp/depacker/unupkr.js
Lynx version (65C02 + mathe CoPro)
https://github.com/42Bastian/new_bll/blob/master/demos/depacker/unupkr.asm
https://github.com/42Bastian/new_bll/blob/master/demos/depacker/unupkr.asm
nice :) maybe for 4k sometimes )) but where I can download this, exe packer, for dos (win xp) please? :)
submit changes
if this prod is a fake, some info is false or the download link is broken,
do not post about it in the comments, it will get lost.
instead, click here !
https://github.com/exoticorn/upkr/