Newest Hacks

Luigi's Turn MegaManX3 - No armor GFX Super Balls Luigi's True Voice

Newest Translations

Shaq Fu Shaq Fu Mega Man X2 Sub-Terrania

Newest Utilities

DashEditor - Mega Man Legends Translation Toolkit Terranigma Data Reader Yoshi's Island randomizer Zanac Graphics Utilities

Newest Reviews

MegaManX3 - No armor GFX EC CD AI Nerf Project ZM Super Balls

Newest Homebrew

Parachute fds_keyboard_test fds_joypad_test Escape Obliterizer Deluxe

Featured Hack Images

Rydia's Restored Power Brandish Name Restore Final Fantasy Tactics Advance: Anarchy Rockman 4: Luokeren 8 Emeng De Kaishi

Featured Translation Images

Monstania Dragon Ball Z III: Ressen Jinzou Ningen Nekketsu! Street Basket: Ganbare Dunk Heroes King's Field 3: Pilot Style

Recent Updates

  • Hacks
    update to description.
  • Games
    Replaced old title screenshot with a better quality screenshot
  • Community
    Language Romanian
  • Hacks
    Author here, patch was submitted without my knowledge. I've updated it to include the final update (July 8/20), as well as added more details in the description.

Description:

GraveyardDuck is a Python program which will decompress and extract, and compress and insert graphics from several 8-bit Konami games. All you need to do to use it is find where the compression starts. It has been confirmed to work on the RLE in Castlevania 2 FDS, Rampart, and Ai Senshi Nicol.

This is a python script executed by command line: graveduck.py -c [FILENAME] [OFFSET] [BINARY] graveduck.py -d [FILENAME] [OFFSET] [BINARY]

  • c compresses BINARY and sticks it into FILENAME at OFFSET. Don’t blame me if it overwrites stuff because the new compressed data is larger — that is your own fault. My compression is 1-to-1 identical to Konami’s and compresses data to exactly match Konami’s version.
  • d opens FILENAME, goes to OFFSET, decompressed everything and saves it to BINARY.

The RLE in question is incredibly simple: Value less than 0×80: write the following byte n times Value greater than 0×80: write the following (n - 0×80) bytes (note by KingMike: analysis of the original code suggests value = 0×80 = writing the following 256 bytes. I haven’t checked what this program does.) Value == 0xff: end compressed block

Links:

User Review Information
No User Reviews!