SM64 ROM Manager (Brand new all-in-one tool for SM64 Hacking) - Public Beta
SM64 ROM Manager
Developed by Pilzinsel64


The SM64 ROM Manager is a brand new all-in-one tool for SM64 Hacking!
You can create wonderful SM64 Hacks with it. Using the onboard Level Manager, you can create and modify custom levels, edit text using the Text Manager, and many other tools which you can explore yourself!

I've spent a lot my of time in developing this program, which is very limited.

I want to make a public beta build because I do not want to keep you waiting any longer, but not every feature is fully functional yet.

Tell me any issue you have and please be patient for wait for the next update. I will bring updates as often as possible.

Updates will be downloaded and installed automatically after you confirmed to do that.

Here is a list of things that are already finished:
  • Level Manager
    • Create and remove Levels easily.
    • Add and remove areas in your levels easily (with up to 8 areas per level).
    • Change the level ID easily (if the level is replacing level 1, you can easily change that to e.g. Level 2).
    • Set up many level dedicated settings every time.
    • Set up many area dedicated settings every time.
    • Select objects banks for your level (Optional).
    • Import and Replace Area Modes
    • Export Level Model & Collision
    • Export Object Models
    • One-0xE-Bank-Per-Area
      • This allows you to move the model size limit from per-level to per-area.
      • That means that now you have around 1.5 times as much space for a single area as you used to have for an entire level in the past.
      • Down in this post, I explained the system of it, so the developer can add support for Levels with this system.
    • Very fast Fast3D-Converter
      Supports over 40 different 3D File formats

    • Very dynamically auto-generated levelscripts and Bank 0xE
    • Water and fog boxes
    • 2D Camera per Area: Select Camera Preset 0xE and you can switch between 3D and 2D Camera.
  • Level Editor (included in the Level Manager)
    • Edit your custom levels using the area editor.
    • Open it from the Level Manager by double-clicking on the level or the area you want to open.
    • Add and remove objects to your current area (more than 300 objects per area, can be extendable)
    • Add and remove warps to your current area (more than enough for your needs)
    • Support for More Object Patch by Kaze Emanuar.
    • History-Feauture
    • Edit your Area Collision: Add/Remove/Edit Faces, Vertices and Special Boxes
    • Scrolling Textures
    • Choose Level BG: Custom, original Image or no background
    • Choose Area BG: Use Level BG or use a clear color
  • Music Manager
    • Enable or disable "Extended Music" hack.
    • Rename sequences.
    • Change NInst set of a sequence.
    • Import Sequences (.m64)
    • Export Sequences (.m64, .mid)
    • Add unlimited number of new sequences (the game's maximum is 127)
  • Model Converter
    • Import over 40 different model formats
    • Select full colors instead of grayscale fror Shading
    • Scale your model using decimal values
  • Text Manager
    • Edit all texts and parameters in dialogs table.
    • Edit all level names.
    • Edit all act names.
  • Custom Model Importer
  • Patches & Tweaks
  • Path Editor
  • Item Box Content Editor
  • Star Position Editor
  • ...

Things on which I am currently working (or are planned as next):
  • Level Manager
    • New collision types like "hot", "toxic", "mad" ...
    • Infinite level size hack (allows you to import levels bigger than the current limit).
    • A special surprise!
  • Area Editor
    • Edit the original levels.
  • Text Manager
    • Edit Peach's dialogue and credits.
  • Several other Editors

FAQ and Information:

"Can I use my SM64 Editor made ROM with this tool?"
Yes, you can, however, it is recommended to create a fresh ROM with this tool and import your levels again. Because of the SM64 Editor, you can't replace (reimport) the area models or change the water boxes. There can also be problems with your custom music.
Anyway, if you want to convert them, then here is how you can do that.

When you open your SM64 Editor made ROM the first time in the SM64 ROM Manager, it will ask you if you want to convert your ROM.
Click Yes. Now it reads all the levels from the ROM, convert the ROM and save the levels to the prepared ROM.

It isn't supported yet while there are too many bugs to solve in the ROM. Like the N64 compatiblity e.g.

But there is a way to import your levels to a new ROM.
Just open a new ROM and goto "Level Manager". Click the arrow on the left of "New Level" and click "Import Level ..".
Then select your ROM (used by SM64 ROM Manager or SM64 Editor) and import any Custom Level that the ROM Manager is able to read.

"What happens if I edit the levelscript, geolayout or displaylist?"
Nothing. The SM64 ROM Manager reads the edited script and keeps the changes.

Note: After you changed something on the ROM outside the ROM Manager, you need to reload your ROM .

"Where are the Objects/Warps located"?

If the One-0xE-Bank-System is enabled, then the objects and warps are located in the "special" 0xE-Bank. This "special" 0xE-Bank will be loaded at parsing the levelscript and will be cleared at loading the first area. I can do that while the objects and warps will not be needed anymore after loading them. So, we have more space in the levelscript and for the area model, yeah!
If the One-0xE-Bank-System is disabled, then they are located in Bank 0x19 directly in the levelscript.

The One-0xE-Bank System explained:
In the Levelscript is an area table. The levelscript is mainly located in Segmented 0xE. So, the data for the current area is located at 0x19005F00 + AreaID * 0x10. The first four bytes shows the ROM address where the bank 0xE for this area starts. The second four bytes shows the ROM Address where the bank 0xE of this area ends. So, it is like a 0x17 levelscript command, but without the first four bytes of such command. But how do I know that the System is enabled? Easy. Just check the four bytes at 0x19005FFC. If they equal to 0x4BC9189A then the One-0xE-Bank-System is enabled. Otherwise, the 0xE Bank is per Level (as known from the SM64 Editor).

Please note: The One-0xE-Bank-System is not supported in SM64 Editor Levels (in converted ROMs).

Any more questions? Any Errors/Issues? Any ideas or suggestions?
Let me know!
  • Ask questions
  • Explain errors in detail

Bug Reports & Feature Requests:

For Bug Reports please fill out this forular.
For Feature Requests please fill out this formular.

  • Big thanks to Kaze Emanuar for coding some useful ASM codes, answering my questions and motivating me.
  • Also a very big thanks to all who supported me and believed in my new tool, which motivated me a lot.
  • With the public beta, I would like to give you all my thanks!


On my website, you will find the changelog and download.
Other tools that I have made for SM64 Hacking can be downloaded on my site.
Subscribe to my channel to get information about updates or new previews.

Messages In This Thread
SM64 ROM Manager (Brand new all-in-one tool for SM64 Hacking) - Public Beta - by Pilzinsel64 - 04-13-2018, 05:35 PM

Users browsing this thread: 1 Guest(s)