mirror of
https://github.com/PrimeDecomp/prime.git
synced 2026-07-12 18:18:56 -07:00
Match and link OS.c (steal code from pikmin2)
Former-commit-id: 008b7f848d
This commit is contained in:
Vendored
+2
-1
@@ -50,7 +50,8 @@
|
||||
"dsp_regs.h": "c",
|
||||
"dsp.h": "c",
|
||||
"ar.h": "c",
|
||||
"osrtcpriv.h": "c"
|
||||
"osrtcpriv.h": "c",
|
||||
"osbootinfo.h": "c"
|
||||
},
|
||||
"files.autoSave": "onFocusChange",
|
||||
"files.insertFinalNewline": true,
|
||||
|
||||
@@ -17,8 +17,8 @@ lbl_805A97BC:
|
||||
.global lbl_805A97C0
|
||||
lbl_805A97C0:
|
||||
.skip 0x4
|
||||
.global lbl_805A97C4
|
||||
lbl_805A97C4:
|
||||
.global __DVDLongFileNameFlag
|
||||
__DVDLongFileNameFlag:
|
||||
.skip 0x4
|
||||
.global __DVDThreadQueue
|
||||
__DVDThreadQueue:
|
||||
@@ -139,7 +139,7 @@ lbl_803713D4:
|
||||
/* 803713DC 0036E33C 7F 43 D3 78 */ mr r3, r26
|
||||
/* 803713E0 0036E340 48 00 02 1C */ b lbl_803715FC
|
||||
lbl_803713E4:
|
||||
/* 803713E4 0036E344 80 0D AC 04 */ lwz r0, lbl_805A97C4@sda21(r13)
|
||||
/* 803713E4 0036E344 80 0D AC 04 */ lwz r0, __DVDLongFileNameFlag@sda21(r13)
|
||||
/* 803713E8 0036E348 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803713EC 0036E34C 40 82 00 AC */ bne lbl_80371498
|
||||
/* 803713F0 0036E350 3B 97 00 00 */ addi r28, r23, 0
|
||||
@@ -731,4 +731,3 @@ lbl_80371B90:
|
||||
/* 80371B94 0036EAF4 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 80371B98 0036EAF8 7C 08 03 A6 */ mtlr r0
|
||||
/* 80371B9C 0036EAFC 4E 80 00 20 */ blr
|
||||
|
||||
|
||||
+7
-5
@@ -4,7 +4,9 @@
|
||||
.balign 8
|
||||
.global DriveInfo
|
||||
DriveInfo:
|
||||
.skip 0x50
|
||||
.skip 0x20
|
||||
DriveBlock:
|
||||
.skip 0x30
|
||||
|
||||
.section .sbss
|
||||
.balign 8
|
||||
@@ -256,7 +258,7 @@ OSInit:
|
||||
/* 8037D900 0037A860 3C 80 80 00 */ lis r4, 0x800000F4@ha
|
||||
/* 8037D904 0037A864 90 0D AC C4 */ stw r0, BI2DebugFlag@sda21(r13)
|
||||
/* 8037D908 0037A868 90 8D AC C0 */ stw r4, BootInfo@sda21(r13)
|
||||
/* 8037D90C 0037A86C 90 0D AC 04 */ stw r0, lbl_805A97C4@sda21(r13)
|
||||
/* 8037D90C 0037A86C 90 0D AC 04 */ stw r0, __DVDLongFileNameFlag@sda21(r13)
|
||||
/* 8037D910 0037A870 80 64 00 F4 */ lwz r3, 0x800000F4@l(r4)
|
||||
/* 8037D914 0037A874 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8037D918 0037A878 41 82 00 34 */ beq lbl_8037D94C
|
||||
@@ -285,7 +287,7 @@ lbl_8037D94C:
|
||||
lbl_8037D970:
|
||||
/* 8037D970 0037A8D0 38 00 00 01 */ li r0, 1
|
||||
/* 8037D974 0037A8D4 80 6D AC C0 */ lwz r3, BootInfo@sda21(r13)
|
||||
/* 8037D978 0037A8D8 90 0D AC 04 */ stw r0, lbl_805A97C4@sda21(r13)
|
||||
/* 8037D978 0037A8D8 90 0D AC 04 */ stw r0, __DVDLongFileNameFlag@sda21(r13)
|
||||
/* 8037D97C 0037A8DC 80 63 00 30 */ lwz r3, 0x30(r3)
|
||||
/* 8037D980 0037A8E0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8037D984 0037A8E4 40 82 00 10 */ bne lbl_8037D994
|
||||
@@ -304,8 +306,8 @@ lbl_8037D994:
|
||||
/* 8037D9B4 0037A914 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 8037D9B8 0037A918 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 8037D9BC 0037A91C 40 80 00 18 */ bge lbl_8037D9D4
|
||||
/* 8037D9C0 0037A920 3C 60 80 5C */ lis r3, _stack_addr@ha
|
||||
/* 8037D9C4 0037A924 38 63 00 C8 */ addi r3, r3, _stack_addr@l
|
||||
/* 8037D9C0 0037A920 3C 60 80 5C */ lis r3, _db_stack_end@ha
|
||||
/* 8037D9C4 0037A924 38 63 00 C8 */ addi r3, r3, _db_stack_end@l
|
||||
/* 8037D9C8 0037A928 38 03 00 1F */ addi r0, r3, 0x1f
|
||||
/* 8037D9CC 0037A92C 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
|
||||
/* 8037D9D0 0037A930 48 00 0D D9 */ bl OSSetArenaLo
|
||||
|
||||
+1
-1
@@ -804,7 +804,7 @@ LIBS = [
|
||||
"host": False,
|
||||
"objects": [
|
||||
["Dolphin/os/__start", True],
|
||||
"Dolphin/os/OS",
|
||||
["Dolphin/os/OS", True],
|
||||
["Dolphin/os/OSAlarm", True],
|
||||
["Dolphin/os/OSArena", True],
|
||||
["Dolphin/os/OSAudioSystem", True],
|
||||
|
||||
@@ -13,4 +13,27 @@ typedef struct OSBootInfo {
|
||||
u32 FSTMaxLength;
|
||||
} OSBootInfo;
|
||||
|
||||
typedef struct {
|
||||
BOOL valid;
|
||||
u32 restartCode;
|
||||
u32 bootDol;
|
||||
void* regionStart;
|
||||
void* regionEnd;
|
||||
BOOL argsUseDefault;
|
||||
void* argsAddr; // valid only when argsUseDefault = FALSE
|
||||
|
||||
} OSExecParams;
|
||||
|
||||
typedef struct BI2Debug {
|
||||
s32 debugMonSize; // 0x0
|
||||
s32 simMemSize; // 0x4
|
||||
u32 argOffset; // 0x8
|
||||
u32 debugFlag; // 0xC
|
||||
int trackLocation; // 0x10
|
||||
int trackSize; // 0x14
|
||||
u32 countryCode; // 0x18
|
||||
u8 unk[8]; // 0x1C
|
||||
u32 padSpec; // 0x24
|
||||
} BI2Debug;
|
||||
|
||||
#endif // _DOLPHIN_OSBOOTINFO
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user