registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { return; } public function replaceOutput($output, $key) { require_once( IPSLib::getAppDir('ibprobattle') . '/sources/battleHooks.php' ); $this->battleHook = new battleHooks( $this->registry ); return $this->battleHook->statsTopicView($output, $key); } } ?>registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { require_once( IPSLib::getAppDir('ibprobattle') . '/sources/battleHooks.php' ); $this->battleHook = new battleHooks( $this->registry ); return $this->battleHook->statsTopicViewJS(); } } ?> Super Mario 64 ROM Extender 1.1b Official Release! - Emulator Releases [/emu] -

Jump to content

Welcome to
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account

Super Mario 64 ROM Extender 1.1b Official Release!

- - - - -

  • Please log in to reply
No replies to this topic

Elazul Yagami

Elazul Yagami

    Corrupted Sprite : NWO STYLE!

  • 1Emu Veteran
  • 1,428 posts
  • Gender:Male
  • Location:Jacksonville, Florida || Cairo,Egypt
VL_tone at Acmlm's Board
has released a Super Mario 64 rom Extender and he says:

After some delays, at last I'm releasing the Super Mario 64 ROM Extender!

Posted Image

Yeah, not only it's not a very original name, and it doesn't exactly convey it's real use.

This program will produce a usable decompressed version of the Mario 64 ROM. It means that instead of struggling to fit re-compressed edited data in the ROM. The decompressed data inside the extended ROM can be edited directly, and it can run as is in an emulator.

Note: This is not a level editor.

You can download the Windows version at:

And the Mac OS X version at this url:

Here is in geekier terms what it means: (Copy/paste from documentation)

What this program will do:
1. Swap bytes if a.v64 version is provided. The output file is in.z64 format (ABCD byte order)
2. Extend the ROM to 24 megs, by adding 16 megs of "FF".
3. Decompress all the MIO0 files in a directory named "MIO0files".
4. Copy the uncompressed data in the upper 16 megs of the extended ROM, leaving 32k gaps between data segments.
5. Change pointers to match the decompressed data.
6. Recalculate the checksums.

What this program won't do:

1. It doesn't work with European and Japanese versions.
2. It won't work with ROMs that have a byte ordering other than ABCD or BADC.
3. It doesn't make Luigi a playable character.
4. The extended ROM won't run on an iPod. (Ok that's a lame joke.)

The program is straightforward. Click the Open ROM button, chose a.v64 or.z64 US version of Mario 64. Wait until it's done (a few seconds only) and there you get a 24 megs version of the ROM, with.ext.z64 appended.

Ultimately, this ROM format will be used by my Super Mario 64 Level editor that will be released later this year. But until then, it can have many uses.

The documentation includes a list of where the MIO0 files are moved/decompressed.

Even if you are a newbie, you can make some good use of this program if you know how to use a graphic/tile editor.

Tile Molester will open the extended ROM and enable image viewing and editing, if you set it to RGBA 5551. You'll have to find the textures yourself, starting at 0x800000 in the ROM.

The first part at 0x800000 also includes the game text. I may provide a text editor soon.

I wouldn't mind at all if someone would host the Windows version somewhere, and if anyone wants to make a smaller version of this ROM extender, just PM me, I'll provide the details.


Some people in the past argued that it would be best to only move compressed data after the end of the ROM, instead of being de-compressed, to save space...

I had a few arguments against it, and at least in appearance it looked like I wanted a decompressed version only because I had problems writing a fast compressor in Director. Now that I found I can call command-line utilities, this point is moot.

I still think it's a better idea to standardize around a decompressed format.

Why? I found some good reasons... Being able to use standard tools like Tile Molester is one. Also, anyone wanting to write an editor for Mario 64 wouldn't have to implement MIO0 decoding and encoding in their program. Other benefits include being able to generate standard IPS patches (Unless you put some padding, MIO0 files would move around when their compressed size change), and also generating patches without having to re-compress all the MIO0 data beforehand

check the thread for screenshots.

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users