aPLib decrunchers

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Post Reply
mic_
Posts: 917
Joined: Thu Oct 05, 2006 6:29 am

aPLib decrunchers

Post by mic_ » Sat Jun 26, 2010 2:42 am

I've written a couple of aPLib decrunchers in 6502 assembly that you can find here.
The first one decrunches to RAM, which might be useful if you've got a cart with extra RAM on it. The second one decrunches directly to VRAM.

None of the routines are particularly optimized for the 6502, since I mainly wanted to get them to work, so I wrote them in what I thought was a straight-forward way. Both of them uses 16 bytes of zeropage RAM while decrunching.

The assembly dialect used is NESASM, but I guess they should be easily fixable to assemble with pretty much any other 65xx assembler.

psycopathicteen
Posts: 2904
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen » Sat Jun 26, 2010 10:00 am

What is APlib, and how does it works. I'm interested in compression algorithms.

mic_
Posts: 917
Joined: Thu Oct 05, 2006 6:29 am

Post by mic_ » Sat Jun 26, 2010 10:04 am

aPLib is an LZ-based algorithm which performs better than simpler algorithms like LZ77 and LZSS.
It has its own website here.

Post Reply