Zach Banks 23d63852de Use decompiled overlays when building ROM (#121)
* Restore padding in ObjVisiblock struct

* Copy overlays out of compiled `code.elf` to put into the ROM

This is just a "tempory fix"

It seems like the built code/assets in `code.elf` should not be copied
into `build/baserom/...` (over the original ROM's files) but instead
into a `build/decomp/...` tree or similar.

`dmadata_table.txt` would also need to be updated to read from the
correct location.

* Use dmadata_table.txt to generate build rules

`makerom_files.txt` & `makerom_uncompressed_files.txt` contained a lot
of the same data in `dmadata_table.txt`, so I added a small python
script to generate this information into `build/`

Segments are no longer dumped out of `code.elf` into `build/baserom/``,
instead they are put in `build/binary/`.

`linker_scripts/dmadata_script.txt` was checked in, but generated by
`dmadata.py`. I deleted it / moved it to `build/dmadata_script.txt.pre`.

I also introduced some sentinel files (`dep`). I ended up needing these
to make incremental builds work smoothly? (Without them, there were a
lot of steps that were getting re-triggered on every build.) If this
style isn't welcome, I can try to fiddle with the Makefile more to try
to avoid having them?

* Restore padding in BgLbfshot struct

* Touch sentinel file before command; rm on failure

* Restore padding in ObjKepnKoya struct

* Ensure asm/ directories exist before disasm steps

* Clean up Makefile rules

* Set default goal; silent objcopy; fix code_script path

* Fix ovl_En_Ginko_Man, ovl_Obj_Lightswitch merge

ovl_En_Encount2 still needs work to bring back to matching

* Fix ovl_En_Encount2 merge
2021-05-10 18:24:59 -04:00
2021-04-29 18:56:18 -04:00
2021-05-09 22:20:47 -04:00
2020-07-24 19:57:54 -04:00
2020-07-24 19:57:54 -04:00
2021-05-04 22:03:41 -04:00
2021-04-29 18:56:18 -04:00
2020-09-13 21:09:13 -04:00
2020-09-13 21:09:13 -04:00
2020-09-17 17:11:59 -04:00
2020-09-13 21:09:13 -04:00
2020-09-13 21:09:13 -04:00
2021-03-22 06:14:27 -05:00
2020-09-17 17:11:59 -04:00
2021-05-09 22:12:42 -04:00

Legend of Zelda: Majora's Mask (U) 1.0

- WARNING! -

The ROM this repository builds while has a matching checksum cannot be 'shifted' due
to hardcoded pointers which have yet to be dumped. Thus this repository is currently
in an experimental and research phase and cannot currently be used traditionally as a
source code base for general changes.

This repo does not include all assets necessary for compiling the ROM. A prior copy of the game is required to extract the required assets.

This is a decompilation of Legend of Zelda: Majora's Mask (U) 1.0

It builds the following ROM:

  • rom.z64 md5: 2a0a8acb61538235bc1094d297fb6556

Please refer to the Installation guide in the Wiki for setup instructions.

Website: https://zelda64.dev/

Discord: https://discord.zelda64.dev

S
Description
No description provided
Readme 242 MiB
Languages
C 87.3%
gas 5.2%
Python 3.9%
C++ 3%
Assembly 0.3%
Other 0.2%