diff --git a/config/GMPE01_00/rels/instDll/splits.txt b/config/GMPE01_00/rels/instDll/splits.txt index 531cd645..213de269 100644 --- a/config/GMPE01_00/rels/instDll/splits.txt +++ b/config/GMPE01_00/rels/instDll/splits.txt @@ -5,3 +5,17 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/instDll/main.c: + .text start:0x000000A0 end:0x00005EA4 + .rodata start:0x00000000 end:0x00000210 + .data start:0x00000000 end:0x00000150 + .bss start:0x00000000 end:0x00000064 + +REL/instDll/font.c: + .text start:0x00005EA4 end:0x0000635C + .rodata start:0x00000210 end:0x00000218 + .data start:0x00000150 end:0x00000468 diff --git a/config/GMPE01_00/rels/instDll/symbols.txt b/config/GMPE01_00/rels/instDll/symbols.txt index 2defeafc..db3511cb 100644 --- a/config/GMPE01_00/rels/instDll/symbols.txt +++ b/config/GMPE01_00/rels/instDll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x8F4 +ModuleProlog = .text:0x000000A0; // type:function size:0x8F4 fn_1_994 = .text:0x00000994; // type:function size:0xE50 fn_1_17E4 = .text:0x000017E4; // type:function size:0xA28 fn_1_220C = .text:0x0000220C; // type:function size:0x5F8 diff --git a/config/GMPE01_00/rels/modeseldll/splits.txt b/config/GMPE01_00/rels/modeseldll/splits.txt index 531cd645..36609413 100644 --- a/config/GMPE01_00/rels/modeseldll/splits.txt +++ b/config/GMPE01_00/rels/modeseldll/splits.txt @@ -5,3 +5,29 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/modeseldll/main.c: + .text start:0x000000A0 end:0x00002490 + .rodata start:0x00000000 end:0x000000B8 + .data start:0x00000000 end:0x00000080 + .bss start:0x00000000 end:0x00000080 + +REL/modeseldll/modesel.c: + .text start:0x00002490 end:0x000037DC + .rodata start:0x000000B8 end:0x000001B0 + .data start:0x00000080 end:0x00000100 + .bss start:0x00000080 end:0x00000088 + +REL/modeseldll/filesel.c: + .text start:0x000037DC end:0x0000BED8 + .rodata start:0x000001B0 end:0x00000318 + .data start:0x00000100 end:0x00000428 + .bss start:0x00000088 end:0x000001CA + +REL/modeseldll/datalist.c: + .text start:0x0000BED8 end:0x0000C334 + .rodata start:0x00000318 end:0x00000328 + .data start:0x00000428 end:0x00000A2C diff --git a/config/GMPE01_00/rels/modeseldll/symbols.txt b/config/GMPE01_00/rels/modeseldll/symbols.txt index f12db773..31d88edd 100644 --- a/config/GMPE01_00/rels/modeseldll/symbols.txt +++ b/config/GMPE01_00/rels/modeseldll/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0x374 +ModuleProlog = .text:0x000000A0; // type:function size:0x374 fn_1_414 = .text:0x00000414; // type:function size:0x5E0 fn_1_9F4 = .text:0x000009F4; // type:function size:0xFC fn_1_AF0 = .text:0x00000AF0; // type:function size:0x9C @@ -234,7 +234,7 @@ lbl_1_bss_70 = .bss:0x00000070; // type:object size:0x8 data:4byte lbl_1_bss_78 = .bss:0x00000078; // type:object size:0x4 data:4byte lbl_1_bss_7C = .bss:0x0000007C; // type:object size:0x4 data:4byte lbl_1_bss_80 = .bss:0x00000080; // type:object size:0x2 data:2byte -lbl_1_bss_82 = .bss:0x00000082; // type:object size:0x6 data:2byte +lbl_1_bss_82 = .bss:0x00000082; // type:object size:0x2 data:2byte lbl_1_bss_88 = .bss:0x00000088; // type:object size:0x2 data:2byte lbl_1_bss_8C = .bss:0x0000008C; // type:object size:0x4 data:float lbl_1_bss_90 = .bss:0x00000090; // type:object size:0x2 data:2byte diff --git a/config/GMPE01_00/rels/option/splits.txt b/config/GMPE01_00/rels/option/splits.txt index 531cd645..79b7fd34 100644 --- a/config/GMPE01_00/rels/option/splits.txt +++ b/config/GMPE01_00/rels/option/splits.txt @@ -5,3 +5,57 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/option/scene.c: + .text start:0x000000A0 end:0x000007F8 + .rodata start:0x00000000 end:0x00000028 + .bss start:0x00000000 end:0x00000010 + +REL/option/camera.c: + .text start:0x000007F8 end:0x000015A4 + .rodata start:0x00000028 end:0x000000A8 + .data start:0x00000000 end:0x00000068 + .bss start:0x00000010 end:0x00000018 + +REL/option/room.c: + .text start:0x000015A4 end:0x000021F8 + .rodata start:0x000000A8 end:0x000000E0 + .data start:0x00000068 end:0x00000098 + .bss start:0x00000018 end:0x00000020 + +REL/option/guide.c: + .text start:0x000021F8 end:0x00002E04 + .rodata start:0x000000E0 end:0x00000160 + .data start:0x00000098 end:0x000000A0 + .bss start:0x00000020 end:0x00000028 + +REL/option/state.c: + .text start:0x00002E04 end:0x00003158 + .rodata start:0x00000160 end:0x00000170 + .data start:0x000000A0 end:0x00000108 + .bss start:0x00000028 end:0x00000030 + +REL/option/rumble.c: + .text start:0x00003158 end:0x00004028 + .rodata start:0x00000170 end:0x000001A8 + .data start:0x00000108 end:0x00000118 + .bss start:0x00000030 end:0x00000038 + +REL/option/sound.c: + .text start:0x00004028 end:0x000080E4 + .rodata start:0x000001A8 end:0x000013C0 + .data start:0x00000118 end:0x00000210 + .bss start:0x00000038 end:0x00000040 + +REL/option/record.c: + .text start:0x000080E4 end:0x0000A3B0 + .rodata start:0x000013C0 end:0x000019D0 + .data start:0x00000210 end:0x00000254 + .bss start:0x00000040 end:0x00000044 + +REL/option/window.c: + .text start:0x0000A3B0 end:0x0000A9AC + .rodata start:0x000019D0 end:0x000019F0 diff --git a/config/GMPE01_00/rels/option/symbols.txt b/config/GMPE01_00/rels/option/symbols.txt index 4b8cc6e5..7be52769 100644 --- a/config/GMPE01_00/rels/option/symbols.txt +++ b/config/GMPE01_00/rels/option/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xC0 +ModuleProlog = .text:0x000000A0; // type:function size:0xC0 fn_1_160 = .text:0x00000160; // type:function size:0x110 fn_1_270 = .text:0x00000270; // type:function size:0xE4 fn_1_354 = .text:0x00000354; // type:function size:0x114 diff --git a/config/GMPE01_00/rels/present/splits.txt b/config/GMPE01_00/rels/present/splits.txt index 531cd645..5ac9cc92 100644 --- a/config/GMPE01_00/rels/present/splits.txt +++ b/config/GMPE01_00/rels/present/splits.txt @@ -5,3 +5,32 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/executor.c: + .text start:0x00000000 end:0x000000A0 + +REL/present/init.c: + .text start:0x000000A0 end:0x00000920 + .rodata start:0x00000000 end:0x00000020 + .bss start:0x00000000 end:0x00000020 + +REL/present/camera.c: + .text start:0x00000920 end:0x00001458 + .rodata start:0x00000020 end:0x000000A0 + .data start:0x00000000 end:0x00000050 + +REL/present/present.c: + .text start:0x00001458 end:0x000039A8 + .rodata start:0x000000A0 end:0x00000BB0 + .data start:0x00000050 end:0x000000F0 + +REL/present/main.c: + .text start:0x000039A8 end:0x000042F4 + .rodata start:0x00000BB0 end:0x00000BD8 + .data start:0x000000F0 end:0x000001A0 + .bss start:0x00000020 end:0x00000024 + +REL/present/common.c: + .text start:0x000042F4 end:0x00004DF0 + .rodata start:0x00000BD8 end:0x00000C50 + .data start:0x000001A0 end:0x000001AC diff --git a/config/GMPE01_00/rels/present/symbols.txt b/config/GMPE01_00/rels/present/symbols.txt index e6b4d8f0..fb21664c 100644 --- a/config/GMPE01_00/rels/present/symbols.txt +++ b/config/GMPE01_00/rels/present/symbols.txt @@ -1,6 +1,6 @@ _prolog = .text:0x00000000; // type:function size:0x54 scope:global _epilog = .text:0x00000054; // type:function size:0x4C scope:global -fn_1_A0 = .text:0x000000A0; // type:function size:0xA4 +ModuleProlog = .text:0x000000A0; // type:function size:0xA4 fn_1_144 = .text:0x00000144; // type:function size:0x110 fn_1_254 = .text:0x00000254; // type:function size:0xE0 fn_1_334 = .text:0x00000334; // type:function size:0x128 diff --git a/configure.py b/configure.py index b6ead65c..4c29e38f 100644 --- a/configure.py +++ b/configure.py @@ -810,6 +810,62 @@ config.libs = [ Object(NonMatching, "REL/E3setupDLL/main.c"), ], }, + { + "lib": "instDll", + "mw_version": config.linker_version, + "cflags": cflags_rel, + "host": False, + "objects": [ + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/instDll/main.c"), + Object(NonMatching, "REL/instDll/font.c"), + ], + }, + { + "lib": "modeseldll", + "mw_version": config.linker_version, + "cflags": cflags_rel, + "host": False, + "objects": [ + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/modeseldll/main.c"), + Object(NonMatching, "REL/modeseldll/modesel.c"), + Object(NonMatching, "REL/modeseldll/filesel.c"), + Object(NonMatching, "REL/modeseldll/datalist.c"), + ], + }, + { + "lib": "option", + "mw_version": config.linker_version, + "cflags": cflags_rel, + "host": False, + "objects": [ + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/option/scene.c"), + Object(NonMatching, "REL/option/camera.c"), + Object(NonMatching, "REL/option/room.c"), + Object(NonMatching, "REL/option/guide.c"), + Object(NonMatching, "REL/option/state.c"), + Object(NonMatching, "REL/option/rumble.c"), + Object(NonMatching, "REL/option/sound.c"), + Object(NonMatching, "REL/option/record.c"), + Object(NonMatching, "REL/option/window.c"), + ], + }, + { + "lib": "present", + "mw_version": config.linker_version, + "cflags": cflags_rel, + "host": False, + "objects": [ + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/present/init.c"), + Object(NonMatching, "REL/present/camera.c"), + Object(NonMatching, "REL/present/present.c"), + Object(NonMatching, "REL/present/main.c"), + Object(NonMatching, "REL/present/common.c"), + ], + }, { "lib": "selmenuDll", "mw_version": config.linker_version,