Wikifang:Telefang 1 Translation Patch/NatsumeGB compression
From Wikifang, a definitive guide to Telefang, Dino Device and Bugsite
< Wikifang:Telefang 1 Translation Patch(Redirected from Wikifang:Telefang 1 Translation Patch/Malias compression)
NatsumeGB compression is the compression algorithm used in numerous Game Boy Natsume games, namely, at least Telefang and Medarot. It is a modified implementation of the LZ77 algorithm, which works by referencing previously decompressed data using length-distance pairs. Wikipedia has a good description of the algorithm.
NatsumeGB was formerly called Malias compression after Malias, the person who wrote the first decompresser.
Implementation of the NatsumeGB compression in pseudocode:
compressed = readbyte()
if compressed != 0x00:
total = readshort() # Total length of the graphics
while bytes < total: # bytes is number of bytes decompressed
modes = readshort() # Contains modes for the next 10 bytes
for mode in bits(modes):
if mode == 0x1: # Copy mode
loc = -(readshort() & 0x7ff)
num = lastbyte >> 3 & 0x1f + 0x03
loc += bytes-1
do num times:
data += data[loc]
loc += 1
else: # Insert mode
data += readbyte()
Games that use the compression[edit]
- Keitai Denjuu Telefang
- Medarot 1
- Medarot 2
- Medarot 3
- Medarot 4 (assumed)
- Medarot 5 (assumed)
- Croc 2
Decompression tools[edit]
- Malias' Telefang Tools can decompress and recompress the graphics with ease, provided locations.
- punika is a simple implementation in Python which decompresses all compressed graphics at once, working off tables in the ROM.