Files
DNZHRecomp/us.toml
Alejandro Asenjo Nitti 205a7f5293 CI Workflows (#2)
* CI Implementation setup

* update rom name

* update rom name (aspMain.us.toml)

* update recompsyms

* Set execute bit for appimage.sh

* Set execute bit for ld64
2025-10-25 01:07:02 -03:00

221 lines
3.4 KiB
TOML

# Config file for Duke Nukem Zero Hour US Recompilation.
[input]
entrypoint = 0x80000400
# Paths are relative to the location of this config file.
output_func_path = "RecompiledFuncs"
# elf_path = "dukenukemzerohour.elf"
symbols_file_path = "DNZHRecompSyms/dump.toml"
rom_file_path = "dnzh.us.z64"
[patches]
stubs = [
]
ignored = [
]
# Function size
[[patches.function_sizes]]
name = "__muldi3"
size = 56
[[patches.function_sizes]]
name = "__umoddi3"
size = 64
[[patches.function_sizes]]
name = "__osExceptionPreamble"
size = 16
[[patches.function_sizes]]
name = "__osPopThread"
size = 16
[[patches.function_sizes]]
name = "__osSetCompare"
size = 12
[[patches.function_sizes]]
name = "osInvalDCache"
size = 176
[[patches.function_sizes]]
name = "handle_CpU"
size = 52
[[patches.function_sizes]]
name = "send_mesg"
size = 188
[[patches.function_sizes]]
name = "start"
size = 68
[[patches.function_sizes]]
name = "__ucmpdi2"
size = 48
[[patches.function_sizes]]
name = "__fixsfdi"
size = 236
[[patches.function_sizes]]
name = "bcopy"
size = 796
[[patches.function_sizes]]
name = "__cmpdi2"
size = 64
[[patches.function_sizes]]
name = "__moddi3"
size = 180
[[patches.function_sizes]]
name = "__udivdi3"
size = 24
[[patches.function_sizes]]
name = "__osGetCause"
size = 12
[[patches.function_sizes]]
name = "sqrtf"
size = 8
[[patches.function_sizes]]
name = "osSetIntMask"
size = 160
[[patches.function_sizes]]
name = "__osGetSR"
size = 12
[[patches.function_sizes]]
name = "osMapTLBRdb"
size = 88
[[patches.function_sizes]]
name = "osWritebackDCacheAll"
size = 36
[[patches.function_sizes]]
name = "__osException"
size = 1404
[[patches.function_sizes]]
name = "__osEnqueueAndYield"
size = 264
[[patches.function_sizes]]
name = "__osEnqueueThread"
size = 72
[[patches.function_sizes]]
name = "osGetCount"
size = 12
[[patches.function_sizes]]
name = "bzero"
size = 160
[[patches.function_sizes]]
name = "__floatdisf"
size = 244
[[patches.function_sizes]]
name = "__osProbeTLB"
size = 184
[[patches.function_sizes]]
name = "__osCleanupThread"
size = 12
[[patches.function_sizes]]
name = "__osDispatchThread"
size = 380
[[patches.function_sizes]]
name = "__osSetFpcCsr"
size = 16
[[patches.function_sizes]]
name = "__osRestoreInt"
size = 28
[[patches.function_sizes]]
name = "bcmp"
size = 272
[[patches.function_sizes]]
name = "__divdi3"
size = 168
[[patches.function_sizes]]
name = "__osSetSR"
size = 16
[[patches.function_sizes]]
name = "osWritebackDCache"
size = 116
[[patches.function_sizes]]
name = "osUnmapTLBAll"
size = 68
[[patches.function_sizes]]
name = "__osDisableInt"
size = 112
[[patches.function_sizes]]
name = "osInvalICache"
size = 116
[[patches.function_sizes]]
name = "b_big"
size = 8
[[patches.function_sizes]]
name = "a_big"
size = 8
[[patches.function_sizes]]
name = "div64_64"
size = 252
[[patches.function_sizes]]
name = "div64_32"
size = 200
# Hooks
[[patches.hook]]
func = "mainLoop"
text = "load_overlays(0xEB300, 0x801C0D80, 0xBA70);"
#before_vram = 0x80002548
[[patches.hook]]
func = "mainLoop"
text = "yield_self_1ms(rdram);"
before_vram = 0x80002E9C
# Single-instruction patches
[[patches.instruction]]
func = "main_80003940"
vram = 0x80003970
value = 0x00000000 # jal func_80000000 -> nop
[[patches.instruction]]
func = "func_801C30EC"
vram = 0x801C313C
value = 0x00000000 # nop
# force 1 framebuffer for 8 MB
[[patches.instruction]]
func = "allocMemory"
vram = 0x8000207C
value = 0x24020001 # nop