EarthBound/ASM/Decompression Routine: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(→‎Libraries/Tools: Add all 3 compression tools I could find.)
Line 11: Line 11:


==Libraries/Tools==
==Libraries/Tools==
* [https://github.com/devinacker/exhal/ exhal/inhal] by Devin Acker (Revenant). Decompression and compression tools, generally able to compress data to at least as small of a data size as that found in the EarthBound ROM. As of 2023, used internally by CoilSnake.
* [https://www.romhacking.net/utilities/600/ KompreSS] by Sukasa. One of the oldest libraries (a .NET DLL), mostly only supporting decompression.
* [https://github.com/romhack/kirbyLzRle/ kirbyLzRle] by Griever. Decompression and compression tools, written in Haskell.


{{stub}}
{{stub}}

Revision as of 01:38, 16 May 2023

This is a sub-page of EarthBound/ASM.

This subroutine takes a section of ROM that is compressed and outputs decompressed data to WRAM.

Subroutine Inputs

  • 0E-11 = Compressed data start (long pointer)
  • 12-15 = Decompressed output WRAM location (long pointer)

Compression Format

Data is compressed using a hybrid compression scheme common to many HAL Laboratories games of the NES/SNES/GB era.

Libraries/Tools

  • exhal/inhal by Devin Acker (Revenant). Decompression and compression tools, generally able to compress data to at least as small of a data size as that found in the EarthBound ROM. As of 2023, used internally by CoilSnake.
  • KompreSS by Sukasa. One of the oldest libraries (a .NET DLL), mostly only supporting decompression.
  • kirbyLzRle by Griever. Decompression and compression tools, written in Haskell.
So very stubbly.
This page is rather stubbly and could use some expansion.
Are you a bad enough dude to rescue this article?