Merge pull request #29 from gamemasterplc/main

Split Some Libraries
This commit is contained in:
gamemasterplc 2023-12-02 11:21:40 -06:00 committed by GitHub
commit 8badfa7db3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 222 additions and 33 deletions

View file

@ -232,6 +232,9 @@ game/wipe.c:
.sdata start:0x801D35E0 end:0x801D35E8
.sdata2 start:0x801D4EE0 end:0x801D4F08
dolphin/os/__start.c:
.init start:0x80003100 end:0x80003354
game/window.c:
.text start:0x8004207C end:0x800483A0
.data start:0x80130140 end:0x80130688
@ -297,6 +300,137 @@ game/flag.c:
.text start:0x80058010 end:0x80058228
.bss start:0x80198410 end:0x80198420
dolphin/PPCArch.c:
.text start:0x800B42F4 end:0x800B439C
dolphin/os/OS.c:
.text start:0x800B439C end:0x800B4CF8
.data start:0x8013B560 end:0x8013B720
.bss start:0x801A5300 end:0x801A5350
.sbss start:0x801D42B0 end:0x801D42E0
dolphin/os/OSAlarm.c:
.text start:0x800B4CF8 end:0x800B53A4
.sbss start:0x801D42E0 end:0x801D42E8
dolphin/os/OSAlloc.c:
.text start:0x800B53A4 end:0x800B5D9C
.data start:0x8013B720 end:0x8013BAB8
.sdata start:0x801D38B8 end:0x801D38C0
.sbss start:0x801D42E8 end:0x801D42F8
dolphin/os/OSArena.c:
.text start:0x800B5D9C end:0x800B5DBC
.sdata start:0x801D38C0 end:0x801D38C8
.sbss start:0x801D42F8 end:0x801D4300
dolphin/os/OSAudioSystem.c:
.text start:0x800B5DBC end:0x800B6050
.data start:0x8013BAB8 end:0x8013BB38
dolphin/os/OSCache.c:
.text start:0x800B6050 end:0x800B66E8
.data start:0x8013BB38 end:0x8013BD68
dolphin/os/OSContext.c:
.text start:0x800B66E8 end:0x800B6F48
.data start:0x8013BD68 end:0x8013BF40
dolphin/os/OSError.c:
.text start:0x800B6F48 end:0x800B71E4
.data start:0x8013BF40 end:0x8013C260
.bss start:0x801A5350 end:0x801A5390
.sdata start:0x801D38C8 end:0x801D38D0
dolphin/os/OSFont.c:
.text start:0x800B71E4 end:0x800B723C
.sdata start:0x801D38D0 end:0x801D38D8
dolphin/os/OSInterrupt.c:
.text start:0x800B723C end:0x800B7AA8
.data start:0x8013C260 end:0x8013C290
.sbss start:0x801D4300 end:0x801D4318
dolphin/os/OSLink.c:
.text start:0x800B7AA8 end:0x800B822C
.data start:0x8013C290 end:0x8013C2E0
dolphin/os/OSMessage.c:
.text start:0x800B822C end:0x800B828C
dolphin/os/OSMemory.c:
.text start:0x800B828C end:0x800B8584
.data start:0x8013C2E0 end:0x8013C2F0
dolphin/os/OSMutex.c:
.text start:0x800B8584 end:0x800B85F4
dolphin/os/OSReboot.c:
.text start:0x800B85F4 end:0x800B8800
.bss start:0x801A53A0 end:0x801A53C0
.sbss start:0x801D4318 end:0x801D4328
dolphin/os/OSReset.c:
.text start:0x800B8800 end:0x800B8BE4
.sbss start:0x801D4328 end:0x801D4330
dolphin/os/OSResetSW.c:
.text start:0x800B8BE4 end:0x800B8F70
.sbss start:0x801D4330 end:0x801D4350
dolphin/os/OSRtc.c:
.text start:0x800B8F70 end:0x800B999C
.bss start:0x801A53C0 end:0x801A5418
dolphin/os/OSStopwatch.c:
.text start:0x800B999C end:0x800B9D0C
.data start:0x8013C2F0 end:0x8013C368
dolphin/os/OSSync.c:
.text start:0x800B9D0C end:0x800B9D90
dolphin/os/OSThread.c:
.text start:0x800B9D90 end:0x800BAE5C
.bss start:0x801A5418 end:0x801A5E00
.sbss start:0x801D4350 end:0x801D4360
dolphin/os/OSTime.c:
.text start:0x800BAE5C end:0x800BB280
.data start:0x8013C368 end:0x8013C3C8
dolphin/os/__ppc_eabi_init.c:
.init start:0x80003354 end:0x800033A8
.text start:0x800BB280 end:0x800BB314
dolphin/db.c:
.text start:0x800BB314 end:0x800BB400
.data start:0x8013C3C8 end:0x8013C3E0
.sbss start:0x801D4360 end:0x801D4368
dolphin/mtx/mtx.c:
.text start:0x800BB400 end:0x800BBCB0
.sdata start:0x801D38D8 end:0x801D38E0
.sdata2 start:0x801D6350 end:0x801D6368
dolphin/mtx/mtxvec.c:
.text start:0x800BBCB0 end:0x800BBDE4
dolphin/mtx/mtx44.c:
.text start:0x800BBDE4 end:0x800BBF4C
.sdata2 start:0x801D6368 end:0x801D6380
dolphin/mtx/vec.c:
.text start:0x800BBF4C end:0x800BC2C4
.sdata2 start:0x801D6380 end:0x801D6390
dolphin/mtx/quat.c:
.text start:0x800BC2C4 end:0x800BC710
.rodata start:0x8011E430 end:0x8011E440
.sdata2 start:0x801D6390 end:0x801D63B8
dolphin/mtx/psmtx.c:
.text start:0x800BC710 end:0x800BC9E8
Runtime.PPCEABI.H/global_destructor_chain.c:
.text start:0x800E2008 end:0x800E2068
.dtors start:0x8011DCE8 end:0x8011DCEC

View file

@ -2100,7 +2100,7 @@ __OSContextInit = .text:0x800B6F00; // type:function size:0x48 scope:global
OSReport = .text:0x800B6F48; // type:function size:0x80 scope:global
OSSetErrorHandler = .text:0x800B6FC8; // type:function size:0x1C scope:global
__OSUnhandledException = .text:0x800B6FE4; // type:function size:0x200 scope:global
fn_800B71E4 = .text:0x800B71E4; // type:function size:0x58
OSGetFontEncode = .text:0x800B71E4; // type:function size:0x58
OSDisableInterrupts = .text:0x800B723C; // type:function size:0x14 scope:global
OSEnableInterrupts = .text:0x800B7250; // type:function size:0x14 scope:global
OSRestoreInterrupts = .text:0x800B7264; // type:function size:0x24 scope:global
@ -2129,8 +2129,7 @@ Config48MB = .text:0x800B83CC; // type:function size:0x80 scope:local
RealMode = .text:0x800B844C; // type:function size:0x18 scope:local
__OSInitMemoryProtection = .text:0x800B8464; // type:function size:0x120 scope:global
__OSUnlockAllMutex = .text:0x800B8584; // type:function size:0x70
fn_800B85F4 = .text:0x800B85F4; // type:function size:0x2C
Run = .text:0x800B8620; // type:function size:0x14 scope:local
Run = .text:0x800B85F4; // type:function size:0x40 scope:local
Callback = .text:0x800B8634; // type:function size:0xC scope:local
__OSReboot = .text:0x800B8640; // type:function size:0x1C0 scope:global
OSRegisterResetFunction = .text:0x800B8800; // type:function size:0x84 scope:global
@ -2440,7 +2439,7 @@ __GXWriteFifoIntReset = .text:0x800C959C; // type:function size:0x4C
__GXCleanGPFifo = .text:0x800C95E8; // type:function size:0xFC
GXGetCPUFifo = .text:0x800C96E4; // type:function size:0x8
GXGetGPFifo = .text:0x800C96EC; // type:function size:0x8
fn_800C96F4 = .text:0x800C96F4; // type:function size:0x158
__GXXfVtxSpecs = .text:0x800C96F4; // type:function size:0x158
GXSetVtxDesc = .text:0x800C984C; // type:function size:0x360
__GXSetVCD = .text:0x800C9BAC; // type:function size:0x54
__GXCalculateVLim = .text:0x800C9C00; // type:function size:0x124
@ -2523,8 +2522,8 @@ GXInitTlutRegion = .text:0x800CD03C; // type:function size:0x48 scope:global
GXInvalidateTexAll = .text:0x800CD084; // type:function size:0x48
GXSetTexRegionCallback = .text:0x800CD0CC; // type:function size:0x14
GXSetTlutRegionCallback = .text:0x800CD0E0; // type:function size:0x14
fn_800CD0F4 = .text:0x800CD0F4; // type:function size:0x9C
fn_800CD190 = .text:0x800CD190; // type:function size:0xCC
GXSetTexCoordScaleManually = .text:0x800CD0F4; // type:function size:0x9C
__SetSURegs = .text:0x800CD190; // type:function size:0xCC scope:local
__GXSetSUTexRegs = .text:0x800CD25C; // type:function size:0x17C
__GXSetTmemConfig = .text:0x800CD3D8; // type:function size:0x240 scope:global
GXSetTevIndirect = .text:0x800CD618; // type:function size:0x9C
@ -2535,7 +2534,7 @@ GXSetNumIndStages = .text:0x800CDB20; // type:function size:0x2C
GXSetTevDirect = .text:0x800CDB4C; // type:function size:0x48
GXSetTevIndWarp = .text:0x800CDB94; // type:function size:0x64
GXSetTevIndTile = .text:0x800CDBF8; // type:function size:0x1AC
fn_800CDDA4 = .text:0x800CDDA4; // type:function size:0xCC
__GXUpdateBPMask = .text:0x800CDDA4; // type:function size:0xCC
__GXFlushTextureState = .text:0x800CDE70; // type:function size:0x24 scope:global
GXSetTevOp = .text:0x800CDE94; // type:function size:0x1A4
GXSetTevColorIn = .text:0x800CE038; // type:function size:0x80
@ -2565,7 +2564,7 @@ GXSetDither = .text:0x800CEEC8; // type:function size:0x40
GXSetDstAlpha = .text:0x800CEF08; // type:function size:0x54
GXSetFieldMask = .text:0x800CEF5C; // type:function size:0x38
GXSetFieldMode = .text:0x800CEF94; // type:function size:0x80
fn_800CF014 = .text:0x800CF014; // type:function size:0x4
__GXSetRange = .text:0x800CF014; // type:function size:0x4
GXBeginDisplayList = .text:0x800CF018; // type:function size:0xC8
GXEndDisplayList = .text:0x800CF0E0; // type:function size:0xD4
GXCallDisplayList = .text:0x800CF1B4; // type:function size:0x70
@ -2662,7 +2661,7 @@ __CARDFormatRegionAsync = .text:0x800D5378; // type:function size:0x658
CARDFormat = .text:0x800D59D0; // type:function size:0x54
__CARDCompareFileName = .text:0x800D5A24; // type:function size:0x68
__CARDAccess = .text:0x800D5A8C; // type:function size:0x98
fn_800D5B24 = .text:0x800D5B24; // type:function size:0x30
__CARDIsPublic = .text:0x800D5B24; // type:function size:0x30
__CARDGetFileNo = .text:0x800D5B54; // type:function size:0x150
CARDOpen = .text:0x800D5CA4; // type:function size:0x178
CARDClose = .text:0x800D5E1C; // type:function size:0x54
@ -2964,7 +2963,7 @@ acosf = .text:0x800EBB90; // type:function size:0x24
TRKNubMainLoop = .text:0x800EBBB4; // type:function size:0xF8 scope:global
TRKDestructEvent = .text:0x800EBCAC; // type:function size:0x24 scope:global
TRKConstructEvent = .text:0x800EBCD0; // type:function size:0x18
fn_800EBCE8 = .text:0x800EBCE8; // type:function size:0xE0
TRKPostEvent = .text:0x800EBCE8; // type:function size:0xE0
TRKGetNextEvent = .text:0x800EBDC8; // type:function size:0xB4 scope:global
TRKInitializeEventQueue = .text:0x800EBE7C; // type:function size:0x58 scope:global
TRKNubWelcome = .text:0x800EBED4; // type:function size:0x28 scope:global
@ -5265,6 +5264,7 @@ jumptable_8013B4F4 = .data:0x8013B4F4; // type:object size:0x20 scope:local
lbl_8013B518 = .data:0x8013B518; // type:object size:0x24 data:string
lbl_8013B53C = .data:0x8013B53C; // type:object size:0x24 data:string
@84 = .data:0x8013B560; // type:object size:0x1E scope:local data:string
__OSExceptionLocations = .data:0x8013B648; // type:object size:0x3C
lbl_8013B720 = .data:0x8013B720; // type:object size:0x398
DSPInitCode = .data:0x8013BAB8; // type:object size:0x80 scope:local
@69 = .data:0x8013BB38; // type:object size:0x29 scope:local data:string
@ -5272,13 +5272,13 @@ lbl_8013BD68 = .data:0x8013BD68; // type:object size:0x1B4
@74 = .data:0x8013BF1C; // type:object size:0x23 scope:local data:string
@10 = .data:0x8013BF40; // type:object size:0x16 scope:local data:string
@43 = .data:0x8013C21C; // type:object size:0x40 scope:local
lbl_8013C260 = .data:0x8013C260; // type:object size:0x30 data:4byte
InterruptPrioTable = .data:0x8013C260; // type:object size:0x2C scope:local data:4byte
lbl_8013C290 = .data:0x8013C290; // type:object size:0x28
lbl_8013C2B8 = .data:0x8013C2B8; // type:object size:0x28
ResetFunctionInfo = .data:0x8013C2E0; // type:object size:0x10 scope:local
lbl_8013C2F0 = .data:0x8013C2F0; // type:object size:0x78
lbl_8013C368 = .data:0x8013C368; // type:object size:0x30
lbl_8013C398 = .data:0x8013C398; // type:object size:0x30
YearDays = .data:0x8013C368; // type:object size:0x30 scope:local
LeapYearDays = .data:0x8013C398; // type:object size:0x30 scope:local
lbl_8013C3C8 = .data:0x8013C3C8; // type:object size:0x18 data:string
lbl_8013C3E0 = .data:0x8013C3E0; // type:object size:0xC8 data:string
lbl_8013C4A8 = .data:0x8013C4A8; // type:object size:0x38
@ -5525,14 +5525,18 @@ lbl_801A4D58 = .bss:0x801A4D58; // type:object size:0x10 data:float
lbl_801A4D68 = .bss:0x801A4D68; // type:object size:0x500 data:byte
lbl_801A5268 = .bss:0x801A5268; // type:object size:0x80
lbl_801A52E8 = .bss:0x801A52E8; // type:object size:0x18 data:4byte
DriveInfo = .bss:0x801A5300; // type:object size:0x20 scope:local
DriveInfo = .bss:0x801A5300; // type:object size:0x20 scope:local align:32
DriveBlock = .bss:0x801A5320; // type:object size:0x30 scope:local
__OSErrorTable = .bss:0x801A5350; // type:object size:0x40 scope:global
lbl_801A53A0 = .bss:0x801A53A0; // type:object size:0x20
Scb = .bss:0x801A53C0; // type:object size:0x54 scope:local data:4byte
Header = .bss:0x801A53A0; // type:object size:0x20 scope:local align:32
Scb = .bss:0x801A53C0; // type:object size:0x54 scope:local align:32 data:4byte
RunQueue = .bss:0x801A5418; // type:object size:0x100 scope:local data:4byte
IdleThread = .bss:0x801A5518; // type:object size:0x318 scope:local align:8 data:4byte
DefaultThread = .bss:0x801A5830; // type:object size:0x318 scope:local align:8 data:4byte
IdleContext = .bss:0x801A5B48; // type:object size:0x2B8 scope:local align:8 data:4byte
CommandList = .bss:0x801A5E00; // type:object size:0x3C scope:local data:4byte
AlarmForTimeout = .bss:0x801A5E68; // type:object size:0x28 scope:local
tmpBuffer = .bss:0x801A5EE0; // type:object size:0x80 scope:local
tmpBuffer = .bss:0x801A5EE0; // type:object size:0x80 scope:local align:32
DummyCommandBlock = .bss:0x801A5F60; // type:object size:0x30 scope:local
WaitingQueue = .bss:0x801A5FB8; // type:object size:0x20 scope:local data:4byte
bb2Buf = .bss:0x801A5FD8; // type:object size:0x3F scope:local
@ -5872,8 +5876,8 @@ lbl_801D38B6 = .sdata:0x801D38B6; // type:object size:0x2 data:2byte
__OSCurrHeap = .sdata:0x801D38B8; // type:object size:0x8 data:4byte
__OSArenaLo = .sdata:0x801D38C0; // type:object size:0x4 scope:local data:4byte
@32 = .sdata:0x801D38C8; // type:object size:0x2 scope:local data:string
lbl_801D38D0 = .sdata:0x801D38D0; // type:object size:0x8 data:2byte
lbl_801D38D8 = .sdata:0x801D38D8; // type:object size:0x8
fontEncode$80 = .sdata:0x801D38D0; // type:object size:0x8 scope:local data:2byte
Unit01 = .sdata:0x801D38D8; // type:object size:0x8
lbl_801D38E0 = .sdata:0x801D38E0; // type:object size:0x8 data:4byte
lbl_801D38E8 = .sdata:0x801D38E8; // type:object size:0x8 data:string
autoInvalidation = .sdata:0x801D38F0; // type:object size:0x4 scope:local data:4byte
@ -6509,26 +6513,24 @@ __OSSavedRegionStart = .sbss:0x801D42CC; // type:object size:0x4 scope:global da
__OSInIPL = .sbss:0x801D42D0; // type:object size:0x4 scope:global data:4byte
__OSStartTime = .sbss:0x801D42D8; // type:object size:0x8 scope:global data:4byte
AlarmQueue = .sbss:0x801D42E0; // type:object size:0x8 scope:local data:4byte
lbl_801D42E8 = .sbss:0x801D42E8; // type:object size:0x4 data:4byte
lbl_801D42EC = .sbss:0x801D42EC; // type:object size:0x4 data:4byte
lbl_801D42F0 = .sbss:0x801D42F0; // type:object size:0x4 data:4byte
lbl_801D42F4 = .sbss:0x801D42F4; // type:object size:0x4 data:4byte
HeapArray = .sbss:0x801D42E8; // type:object size:0x4 scope:local data:4byte
NumHeaps = .sbss:0x801D42EC; // type:object size:0x4 scope:local data:4byte
ArenaStart = .sbss:0x801D42F0; // type:object size:0x4 scope:local data:4byte
ArenaEnd = .sbss:0x801D42F4; // type:object size:0x4 scope:local data:4byte
__OSArenaHi = .sbss:0x801D42F8; // type:object size:0x4 scope:local data:4byte
InterruptHandlerTable = .sbss:0x801D4300; // type:object size:0x4 scope:local data:4byte
__OSLastInterruptSrr0 = .sbss:0x801D4304; // type:object size:0x4 scope:global data:4byte
__OSLastInterrupt = .sbss:0x801D4308; // type:object size:0x2 scope:global data:2byte
__OSLastInterruptTime = .sbss:0x801D4310; // type:object size:0x8 scope:global data:4byte
lbl_801D4318 = .sbss:0x801D4318; // type:object size:0x4 data:4byte
lbl_801D431C = .sbss:0x801D431C; // type:object size:0x4 data:4byte
lbl_801D4320 = .sbss:0x801D4320; // type:object size:0x8 data:4byte
SaveStart = .sbss:0x801D4318; // type:object size:0x4 scope:local data:4byte
SaveEnd = .sbss:0x801D431C; // type:object size:0x4 scope:local data:4byte
Prepared = .sbss:0x801D4320; // type:object size:0x8 scope:local data:4byte
ResetFunctionQueue = .sbss:0x801D4328; // type:object size:0x8 scope:local data:4byte
lbl_801D4330 = .sbss:0x801D4330; // type:object size:0x4 data:4byte
lbl_801D4334 = .sbss:0x801D4334; // type:object size:0x4 data:4byte
lbl_801D4338 = .sbss:0x801D4338; // type:object size:0x8 data:4byte
lbl_801D4340 = .sbss:0x801D4340; // type:object size:0x4 data:4byte
lbl_801D4344 = .sbss:0x801D4344; // type:object size:0x4 data:4byte
lbl_801D4348 = .sbss:0x801D4348; // type:object size:0x4 data:4byte
lbl_801D434C = .sbss:0x801D434C; // type:object size:0x4 data:4byte
ResetCallback = .sbss:0x801D4330; // type:object size:0x4 data:4byte
Down = .sbss:0x801D4334; // type:object size:0x4 data:4byte
LastState = .sbss:0x801D4338; // type:object size:0x8 data:4byte
HoldUp = .sbss:0x801D4340; // type:object size:0x8 align:8 data:4byte
HoldDown = .sbss:0x801D4348; // type:object size:0x8 align:8 data:4byte
RunQueueBits = .sbss:0x801D4350; // type:object size:0x4 scope:local data:4byte
RunQueueHint = .sbss:0x801D4354; // type:object size:0x4 scope:local data:4byte
Reschedule = .sbss:0x801D4358; // type:object size:0x4 scope:local data:4byte

View file

@ -191,6 +191,7 @@ cflags_game = [
"-fp_contract off",
]
config.linker_version = "GC/2.6"
config.rel_strip_partial = False
config.rel_empty_file = "REL/empty.c"
@ -279,6 +280,58 @@ config.libs = [
Object(NonMatching, "game/flag.c"),
],
},
DolphinLib(
"base",
[
Object(NonMatching, "dolphin/PPCArch.c"),
],
),
DolphinLib(
"os",
[
Object(NonMatching, "dolphin/os/OS.c"),
Object(NonMatching, "dolphin/os/OSAlarm.c"),
Object(NonMatching, "dolphin/os/OSAlloc.c"),
Object(NonMatching, "dolphin/os/OSArena.c"),
Object(NonMatching, "dolphin/os/OSAudioSystem.c"),
Object(NonMatching, "dolphin/os/OSCache.c"),
Object(NonMatching, "dolphin/os/OSContext.c"),
Object(NonMatching, "dolphin/os/OSError.c"),
Object(NonMatching, "dolphin/os/OSFont.c"),
Object(NonMatching, "dolphin/os/OSInterrupt.c"),
Object(NonMatching, "dolphin/os/OSLink.c"),
Object(NonMatching, "dolphin/os/OSMessage.c"),
Object(NonMatching, "dolphin/os/OSMemory.c"),
Object(NonMatching, "dolphin/os/OSMutex.c"),
Object(NonMatching, "dolphin/os/OSReboot.c"),
Object(NonMatching, "dolphin/os/OSReset.c"),
Object(NonMatching, "dolphin/os/OSResetSW.c"),
Object(NonMatching, "dolphin/os/OSRtc.c"),
Object(NonMatching, "dolphin/os/OSStopwatch.c"),
Object(NonMatching, "dolphin/os/OSSync.c"),
Object(NonMatching, "dolphin/os/OSThread.c"),
Object(NonMatching, "dolphin/os/OSTime.c"),
Object(NonMatching, "dolphin/os/__start.c"),
Object(NonMatching, "dolphin/os/__ppc_eabi_init.c"),
],
),
DolphinLib(
"db",
[
Object(NonMatching, "dolphin/db.c"),
],
),
DolphinLib(
"mtx",
[
Object(NonMatching, "dolphin/mtx/mtx.c"),
Object(NonMatching, "dolphin/mtx/mtxvec.c"),
Object(NonMatching, "dolphin/mtx/mtx44.c"),
Object(NonMatching, "dolphin/mtx/vec.c"),
Object(NonMatching, "dolphin/mtx/quat.c"),
Object(NonMatching, "dolphin/mtx/psmtx.c"),
],
),
{
"lib": "Runtime.PPCEABI.H",
"mw_version": config.linker_version,