diff --git a/config/GMPE01_00/rels/m401Dll/splits.txt b/config/GMPE01_00/rels/m401Dll/splits.txt index 531cd645..346c5638 100644 --- a/config/GMPE01_00/rels/m401Dll/splits.txt +++ b/config/GMPE01_00/rels/m401Dll/splits.txt @@ -5,3 +5,18 @@ 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/m401Dll/main.c: + .text start:0x000000A0 end:0x00010240 + .rodata start:0x00000000 end:0x00000450 + .data start:0x00000000 end:0x00000478 + .bss start:0x00000000 end:0x00000120 + +REL/m401Dll/main_ex.c: + .text start:0x00010240 end:0x00014E14 + .rodata start:0x00000450 end:0x000005E8 + .data start:0x00000478 end:0x00000498 + .bss start:0x00000120 end:0x00000254 diff --git a/config/GMPE01_00/rels/m401Dll/symbols.txt b/config/GMPE01_00/rels/m401Dll/symbols.txt index 6a0cc8b9..371068fb 100644 --- a/config/GMPE01_00/rels/m401Dll/symbols.txt +++ b/config/GMPE01_00/rels/m401Dll/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_2_A0 = .text:0x000000A0; // type:function size:0x66C +ModuleProlog = .text:0x000000A0; // type:function size:0x66C fn_2_70C = .text:0x0000070C; // type:function size:0x304 fn_2_A10 = .text:0x00000A10; // type:function size:0x88 fn_2_A98 = .text:0x00000A98; // type:function size:0x54 diff --git a/config/GMPE01_00/rels/m402Dll/splits.txt b/config/GMPE01_00/rels/m402Dll/splits.txt index 531cd645..aacd2475 100644 --- a/config/GMPE01_00/rels/m402Dll/splits.txt +++ b/config/GMPE01_00/rels/m402Dll/splits.txt @@ -5,3 +5,9 @@ Sections: .rodata type:rodata align:8 .data type:data align:8 .bss type:bss align:8 + +REL/m402Dll/main.c: + .text start:0x00000000 end:0x00009BC4 + .rodata start:0x00000000 end:0x0000018C + .data start:0x00000000 end:0x000004C6 + .bss start:0x00000000 end:0x00000210 diff --git a/config/GMPE01_00/rels/m403Dll/splits.txt b/config/GMPE01_00/rels/m403Dll/splits.txt index 531cd645..9bdc01d2 100644 --- a/config/GMPE01_00/rels/m403Dll/splits.txt +++ b/config/GMPE01_00/rels/m403Dll/splits.txt @@ -5,3 +5,18 @@ 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/m403Dll/main.c: + .text start:0x000000A0 end:0x0000650C + .rodata start:0x00000000 end:0x000001A8 + .data start:0x00000000 end:0x00000158 + .bss start:0x00000000 end:0x00000058 + +REL/m403Dll/scene.c: + .text start:0x0000650C end:0x00008F6C + .rodata start:0x000001A8 end:0x00000250 + .data start:0x00000158 end:0x00000BBC + .bss start:0x00000058 end:0x000000B8 diff --git a/config/GMPE01_00/rels/m403Dll/symbols.txt b/config/GMPE01_00/rels/m403Dll/symbols.txt index f3ebacb7..312ab162 100644 --- a/config/GMPE01_00/rels/m403Dll/symbols.txt +++ b/config/GMPE01_00/rels/m403Dll/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:0x384 +ModuleProlog = .text:0x000000A0; // type:function size:0x384 fn_1_424 = .text:0x00000424; // type:function size:0x20 fn_1_444 = .text:0x00000444; // type:function size:0x3E8 fn_1_82C = .text:0x0000082C; // type:function size:0x9E8 diff --git a/config/GMPE01_00/rels/m404Dll/splits.txt b/config/GMPE01_00/rels/m404Dll/splits.txt index 531cd645..34c69724 100644 --- a/config/GMPE01_00/rels/m404Dll/splits.txt +++ b/config/GMPE01_00/rels/m404Dll/splits.txt @@ -5,3 +5,12 @@ 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/m404Dll/main.c: + .text start:0x000000A0 end:0x00006C88 + .rodata start:0x00000000 end:0x00000140 + .data start:0x00000000 end:0x00000A0C + .bss start:0x00000000 end:0x0000005C diff --git a/config/GMPE01_00/rels/m404Dll/symbols.txt b/config/GMPE01_00/rels/m404Dll/symbols.txt index b3dd1045..3ffbe0e4 100644 --- a/config/GMPE01_00/rels/m404Dll/symbols.txt +++ b/config/GMPE01_00/rels/m404Dll/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:0x2DC +ModuleProlog = .text:0x000000A0; // type:function size:0x2DC fn_1_37C = .text:0x0000037C; // type:function size:0x10 fn_1_38C = .text:0x0000038C; // type:function size:0x10 fn_1_39C = .text:0x0000039C; // type:function size:0x64 diff --git a/configure.py b/configure.py index 4c29e38f..ef0322fd 100644 --- a/configure.py +++ b/configure.py @@ -758,88 +758,69 @@ config.libs = [ Object(NonMatching, "msm/msmstream.c"), ], }, - { - "lib": "_minigameDLL", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ + Rel('_minigameDLL', + objects = { Object(Matching, "REL/executor.c"), Object(Matching, "REL/_minigameDLL/_minigameDLL.c"), - ], - }, - { - "lib": "bootDll", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ + } + ), + Rel('bootDll', + objects = { Object(Matching, "REL/executor.c"), Object(NonMatching, "REL/bootDll/bootDll.c"), Object(Matching, "REL/bootDll/nintendo_data.c"), - ], - }, - { - "lib": "subchrselDll", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ - Object(Matching, "REL/executor.c"), - Object(Matching, "REL/subchrselDll/subchrselDll.c"), - ], - }, - { - "lib": "staffDll", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ - Object(Matching, "REL/executor.c"), - Object(NonMatching, "REL/staffDll/staffDll.c"), - ], - }, - { - "lib": "E3setupDLL", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ + } + ), + Rel('E3setupDLL', + objects = { Object(NonMatching, "REL/E3setupDLL/mgselect.c"), Object(Matching, "REL/executor.c"), Object(NonMatching, "REL/E3setupDLL/main.c"), - ], - }, - { - "lib": "instDll", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ + } + ), + Rel('instDll', + 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": [ + } + ), + Rel('m401Dll', + objects = { + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/m401Dll/main.c"), + Object(NonMatching, "REL/m401Dll/main_ex.c"), + } + ), + Rel('m402Dll', + objects = { + Object(NonMatching, "REL/m402Dll/main.c"), + } + ), + Rel('m403Dll', + objects = { + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/m403Dll/main.c"), + Object(NonMatching, "REL/m403Dll/scene.c"), + } + ), + Rel('m404Dll', + objects = { + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/m404Dll/main.c"), + } + ), + Rel('modeseldll', + 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": [ + } + ), + Rel('option', + objects = { Object(Matching, "REL/executor.c"), Object(NonMatching, "REL/option/scene.c"), Object(NonMatching, "REL/option/camera.c"), @@ -850,45 +831,45 @@ config.libs = [ 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": [ + } + ), + Rel('present', + 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, - "cflags": cflags_rel, - "host": False, - "objects": [ + } + ), + Rel('selmenuDll', + objects = { Object(Matching, "REL/executor.c"), Object(NonMatching, "REL/selmenuDll/selmenuDll.c"), - ], - }, - { - "lib": "w10Dll", - "mw_version": config.linker_version, - "cflags": cflags_rel, - "host": False, - "objects": [ + } + ), + Rel('staffDll', + objects = { + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/staffDll/staffDll.c"), + } + ), + Rel('subchrselDll', + objects = { + Object(Matching, "REL/executor.c"), + Object(NonMatching, "REL/subchrselDll/subchrselDll.c"), + } + ), + Rel('subchrselDll', + objects = { Object(Matching, "REL/w10Dll/w10Dll_init.c"), Object(Matching, "REL/w10Dll/w10Dll.c"), Object(Matching, "REL/w10Dll/w10Dll2.c"), Object(Matching, "REL/w10Dll/w10Dll3.c"), Object(Matching, "REL/w10Dll/w10Dll4.c"), - ], - }, + } + ), ] if args.mode == "configure":