Language…
13 users online: Anas, Batata Douce, Darolac, DasFueller, eltiolavara9, Foxy_9000_, Hammerer, jump_run_repeat, Mythundare,  Nanako, Necrotext, pzyko103, Rykon-V73 - Guests: 277 - Bots: 431
Users: 64,795 (2,377 active)
Latest user: mathew

Alternate ROM Extender

(Updated Oct 5 2014)
I've created a new rom extender that should work fine with all of the N64 emulators, as well as real N64 consoles.

What it does:

+ Pads with the rom with 0x01's to 24MB.
+ Decompresses all MIO0 files (with proper alignment) to 0x800000, with 32KB gaps after each file.
+ Remaps all of the pointers to these files in the level scripts (and one asm pointer)
+ Clears old MIO0 data with 0x01's
+ Changes all 0x18 commands to 0x17 commands in the level scripts
+ Modifies the 0x1A command's asm routine to load raw files instead of MIO0 data
+ Replaces the segment 0x02 MIO0 loader with a raw file loader
+ Removes EEPROM size limit and EEPROM checksums
+ Removes the main CRC check and replaces the CRC string with 0xFF's (optional)
+ Adds 'EXT2' to the image name
+ Resurrects these textures (to segment 0x02):

and puts pointers to them in the correct places in the character table.

What's different in this extender:

+ This extender decompresses all MIO0 files to 16 byte aligned addresses, meaning increased emulator support and support for real N64 consoles
+ With the edited 0x1A command and replaced segment 0x02 loader, none of the decompressed files need 'fake' MIO0 headers

+ This extender brings back 12 textures from the japanese rom (note that this shifts the other ram segments by 0x1800 bytes)


Download: SM64 AltExtender Beta 10-5.exe
Readme: SM64 Altextender Readme Info.txt
To use it, either drag your rom onto the exe or drag your rom into the exe's window and press enter.

Like VL-Tone's extender, this uses BGNG's mio0dec.exe, but I've linked it into AltExtender's exe to make it more portable. mio0dec.exe and and a directory "mio0_temp" are created temporarily while the rom is being decompressed.
Originally posted by shyguyhex
I've created a new rom extender that should work fine in all of the N64 emulators, as well as real N64 consoles.

What it does:

+ Pads with the rom with 0x00's to 24MB.
+ Decompresses all MIO0 files (with proper alignment) to 0x800000, with 32KB gaps after each file.
+ Remaps all of the pointers to these files in the level scripts (and one asm pointer)
+ Changes all 0x18 commands to 0x17 commands in the level scripts
+ Modifies the 0x1A command's asm routine to load raw files instead of MIO0 data
+ Replaces the segment 0x02 MIO0 loader with a raw file loader
+ Removes the main CRC check
+ Replaces the CRC string with 0x00's and adds 'EXT2' to the image name
+ Resurrects these textures (to segment 0x02):

and puts pointers to them in the correct places in the character table.

Download: SM64 AltExtender Beta.exe

To use it, either drag your rom onto the exe or drag your rom into the exe's window and press enter.

Like VL-Tone's extender, this uses BGNG's mio0dec.exe, but I've linked it into AltExtender's exe to make it more portable. mio0dec.exe and and a directory "mio0_temp" are created temporarily while the rom is being decompressed.



Nice job on making this alternate rom extender. Will this also apply to all n64 games or just Super Mario 64. Also will you be updating this rom extender with more features in it. Keep up making cool programs for Super Mario 64 or any other games etc. :D
Originally posted by mosky2000
Originally posted by shyguyhex
I've created a new rom extender that should work fine in all of the N64 emulators, as well as real N64 consoles.

What it does:

+ Pads with the rom with 0x00's to 24MB.
+ Decompresses all MIO0 files (with proper alignment) to 0x800000, with 32KB gaps after each file.
+ Remaps all of the pointers to these files in the level scripts (and one asm pointer)
+ Changes all 0x18 commands to 0x17 commands in the level scripts
+ Modifies the 0x1A command's asm routine to load raw files instead of MIO0 data
+ Replaces the segment 0x02 MIO0 loader with a raw file loader
+ Removes the main CRC check
+ Replaces the CRC string with 0x00's and adds 'EXT2' to the image name
+ Resurrects these textures (to segment 0x02):

and puts pointers to them in the correct places in the character table.

Download: SM64 AltExtender Beta.exe

To use it, either drag your rom onto the exe or drag your rom into the exe's window and press enter.

Like VL-Tone's extender, this uses BGNG's mio0dec.exe, but I've linked it into AltExtender's exe to make it more portable. mio0dec.exe and and a directory "mio0_temp" are created temporarily while the rom is being decompressed.



Nice job on making this alternate rom extender. Will this also apply to all n64 games or just Super Mario 64. Also will you be updating this rom extender with more features in it. Keep up making cool programs for Super Mario 64 or any other games etc. :D

I think its only for super mario 64 , as the name #tb{:D} says, well, nice job shyguyhex , If I could understand why you created an alternate extender..., maybe it sounds like an stupid question#w{=P}, but I want to know #w{=)}
Working on SM64: A New Adventure
https://www.youtube.com/watch?v=ZxVwAPAQdnc
http://i.imgur.com/qblZTfb.png
Originally posted by lezg_g
Originally posted by mosky2000
Originally posted by shyguyhex
I've created a new rom extender that should work fine in all of the N64 emulators, as well as real N64 consoles.

What it does:

+ Pads with the rom with 0x00's to 24MB.
+ Decompresses all MIO0 files (with proper alignment) to 0x800000, with 32KB gaps after each file.
+ Remaps all of the pointers to these files in the level scripts (and one asm pointer)
+ Changes all 0x18 commands to 0x17 commands in the level scripts
+ Modifies the 0x1A command's asm routine to load raw files instead of MIO0 data
+ Replaces the segment 0x02 MIO0 loader with a raw file loader
+ Removes the main CRC check
+ Replaces the CRC string with 0x00's and adds 'EXT2' to the image name
+ Resurrects these textures (to segment 0x02):

and puts pointers to them in the correct places in the character table.

Download: SM64 AltExtender Beta.exe

To use it, either drag your rom onto the exe or drag your rom into the exe's window and press enter.

Like VL-Tone's extender, this uses BGNG's mio0dec.exe, but I've linked it into AltExtender's exe to make it more portable. mio0dec.exe and and a directory "mio0_temp" are created temporarily while the rom is being decompressed.



Nice job on making this alternate rom extender. Will this also apply to all n64 games or just Super Mario 64. Also will you be updating this rom extender with more features in it. Keep up making cool programs for Super Mario 64 or any other games etc. :D

I think its only for super mario 64 , as the name #tb{:D} says, well, nice job shyguyhex , If I could understand why you created an alternate extender..., maybe it sounds like an stupid question#w{=P}, but I want to know #w{=)}



I was dumb #smw{@_@} it say SM64 which meant Super Mario 64. But you're still right.#tb{:)}
Originally posted by mosky2000
Originally posted by lezg_g
Originally posted by mosky2000
Originally posted by shyguyhex
I've created a new rom extender that should work fine in all of the N64 emulators, as well as real N64 consoles.

What it does:

+ Pads with the rom with 0x00's to 24MB.
+ Decompresses all MIO0 files (with proper alignment) to 0x800000, with 32KB gaps after each file.
+ Remaps all of the pointers to these files in the level scripts (and one asm pointer)
+ Changes all 0x18 commands to 0x17 commands in the level scripts
+ Modifies the 0x1A command's asm routine to load raw files instead of MIO0 data
+ Replaces the segment 0x02 MIO0 loader with a raw file loader
+ Removes the main CRC check
+ Replaces the CRC string with 0x00's and adds 'EXT2' to the image name
+ Resurrects these textures (to segment 0x02):

and puts pointers to them in the correct places in the character table.

Download: SM64 AltExtender Beta.exe

To use it, either drag your rom onto the exe or drag your rom into the exe's window and press enter.

Like VL-Tone's extender, this uses BGNG's mio0dec.exe, but I've linked it into AltExtender's exe to make it more portable. mio0dec.exe and and a directory "mio0_temp" are created temporarily while the rom is being decompressed.



Nice job on making this alternate rom extender. Will this also apply to all n64 games or just Super Mario 64. Also will you be updating this rom extender with more features in it. Keep up making cool programs for Super Mario 64 or any other games etc. :D

I think its only for super mario 64 , as the name #tb{:D} says, well, nice job shyguyhex , If I could understand why you created an alternate extender..., maybe it sounds like an stupid question#w{=P}, but I want to know #w{=)}



I was dumb #smw{@_@} it say SM64 which meant Super Mario 64. But you're still right.#tb{:)}


Haha, you didn't see it maybe.. xD
Working on SM64: A New Adventure
https://www.youtube.com/watch?v=ZxVwAPAQdnc
http://i.imgur.com/qblZTfb.png
le memez
Originally posted by lezg_g
Originally posted by mosky2000
Originally posted by lezg_g
Mod edit: Don't quote huge things.



I was dumb #smw{@_@} it say SM64 which meant Super Mario 64. But you're still right.#tb{:)}


Haha, you didn't see it maybe.. xD



Yep LOL#tb{XD}
Originally posted by shyguyhex
It expands it to 24MB because I figured that's how people would want it, but if there happens to be a decent demand for 64MB + some more space after each of the decompressed files, I'd be willing to change it.

Right now the ROM isn't compatible with TT64 and I haven't checked to see if it works with the level importer because sketchup doesn't want to work on the laptop I'm using and I'm too lazy to download another 3d editor #w{=3}.

I'm not the person coding TT64 and the importer so it's not really my place to say this but it would probably take some minor adjustments to make them compatible with this rom and any other alternate roms that might come about.

It would be cool if you make compatibiliry with those programs, and also, maybe expanding the rom more, for more space.., Good Luck !! #w{:>}
Working on SM64: A New Adventure
https://www.youtube.com/watch?v=ZxVwAPAQdnc
http://i.imgur.com/qblZTfb.png
Originally posted by shyguyhex
It expands it to 24MB because I figured that's how people would want it, but if there happens to be a decent demand for 64MB + some more space after each of the decompressed files, I'd be willing to change it.

Right now the ROM isn't compatible with TT64 and I haven't checked to see if it works with the level importer because sketchup doesn't want to work on the laptop I'm using and I'm too lazy to download another 3d editor #w{=3}.

I'm not the person coding TT64 and the importer so it's not really my place to say this but it would probably take some minor adjustments to make them compatible with this rom and any other alternate roms that might come about.

WOW! Incredible work shyguyhex! I'd contact skelux to see if he could add support for your rom extender, since he handles both the importer and TT64 now.. Also talk with Tarek if you haven't already to see if he will add support for it within the new editor Chuckya64 he is working on.
New layout by RanAS!
i can't even enter castlegrounds with this extender.

to make things clear:

- this was made to make SM64 hacks N64 compatible
- TT64 should work with the rom, skelux just has to remove the "is rom valid?" check
- it won't work with levelimporter, because the levelimporter writes own 0x17 commands that will point improperly
le memez
Hello,

First of all, thank you shyguyhex for showing an interest in helping to get SM64 hacks running on real N64 consoles. It would be incredible to play all these wonderful new levels on the real thing after all these years.

Before I continue, please be aware that I don't know very much about SM64 hacking and have never used a PC emulator. I'm just a guy with a flashcart. So please try and bear that in mind (go easy on me!)


Unfortunately, I'm having some trouble using this tool. I didn't get very far using either drag and drop method - the program either “stopped working” shortly after beginning or repeatedly displayed “could not open file”. I achieved my best result by right clicking the program and running it as an administrator. Next, I would manually type in the root to the Super Mario 64 ROM (“F:\Super Mario 64 (U) [!].z64”) and then press enter. When the tool asks whether or not to “Remove main CRC from ROM bootcode”, I first chose the 'no' option and let the tool finish it's work. Then, I restarted the tool and went through the whole process again, this time choosing the 'yes' option, so that I had 2 files at the end, one with the CRC removed and the other with the CRC left in.

Sadly, when I tried both files on my N64, they just displayed a black screen after booting up. For comparison, VL-Tone's old extender produces files that seem to work correctly up until the file select screen, where it freezes on a white screen.
When I tried patching some copies of the two files with some ppf patches, the result was the same, just a black screen immediately upon booting.

Do you think you could walk me through a specific example, showing the steps needed to make a SM64 hack work on a real N64? It would be really great if every step was covered, from downloading a specific patch (say, Super Mario 74), to correctly extending the ROM with this new tool, then finally applying the ppf patch (assuming that is in-fact the correct order!). I want to be sure that I'm not missing out anything important.

Finally, thank you for taking the time to read all this, and thank you once again for making this tool in the first place. Much appreciated!



(tl;dr – I'm struggling a bit with this tool. My understanding is that it would let me play some SM64 hacks on my N64 (using a flashcart). Could somebody please walk me through all the steps needed to get a SM64 hack running on a real N64 console? Thanks!)
le memez
I'd say to focus on getting it working for PJ64 and others, nemu 64 is pretty outdated anyway and would probably be a lower priority. After that you can try to get it working with nemu. I doubt most people relly use it for more than debugging ASM codes.
New layout by RanAS!
le memez
Great to hear that you're still working on it, and encouraging to hear that an earlier build got a hack running on the real thing. I'm really looking forward to trying out future builds. #tb{^V^} Thanks again, and good luck!
le memez
Do you suppose you might come back to work on this in the future sometime? (I hope so! #tb{:(})