Distribute bss_2 to code files

This commit is contained in:
PikalaxALT
2020-05-22 16:25:42 -04:00
parent 739b32badb
commit 09eb26569c
15 changed files with 1178 additions and 1542 deletions

View File

@@ -585,6 +585,9 @@ SECTIONS {
SDK_STATIC_DATA_START = .;
unk_02003B98.o (.data)
rom2_3.o (.data)
GX.o (.data)
OS_irqHandler.o (.data)
OS_emulator.o (.data)
FS_command.o (.data)
FS_command_default.o (.data)
FS_archive.o (.data)
@@ -652,7 +655,16 @@ SECTIONS {
unk_0208A998.o (.bss)
unk_0208AC14.o (.bss)
custom_allocator.o (.bss)
bss_2.o (.bss)
unk_020910EC.o (.bss)
unk_020AF030.o (.bss)
GX.o (.bss)
GX_state.o (.bss)
GX_load2d.o (.bss)
GX_load3d.o (.bss)
OS_irqTable.o (.bss)
OS_spinLock.o (.bss)
OS_thread.o (.bss)
OS_arena.o (.bss)
OS_alloc.o (.bss)
bss_3.o (.bss)
FS_archive.o (.bss)
@@ -691,8 +703,8 @@ SECTIONS {
.DTCM : {
. = ALIGN(32);
SDK_AUTOLOAD.DTCM.START = .;
OS_irqTable.o (.dtcm)
OS_irqHandler.o (.dtcm)
OS_irqTable.o (.dtcm)
. = ALIGN(32);
SDK_AUTOLOAD.DTCM.END = .;
SDK_AUTOLOAD.DTCM.SIZE = SDK_AUTOLOAD.DTCM.END - SDK_AUTOLOAD.DTCM.START;
@@ -703,7 +715,8 @@ SECTIONS {
{
. = ALIGN(32);
SDK_AUTOLOAD.DTCM.BSS_START = .;
OS_irqTable.o (.bss)
OS_irqHandler.o (.bss)
. = ALIGN(32);
SDK_AUTOLOAD.DTCM.BSS_END = .;
SDK_AUTOLOAD.DTCM.BSS_SIZE = SDK_AUTOLOAD.DTCM.BSS_END - SDK_AUTOLOAD.DTCM.BSS_START;
} >> DTCM

View File

@@ -1,10 +1,26 @@
.include "asm/macros.inc"
.include "global.inc"
.section .dtcm
.section .data
.global OSi_IrqCallbackInfoIndex
OSi_IrqCallbackInfoIndex: ; 0x02106818
.short 8
.short 9
.short 10
.short 11
.short 3
.short 4
.short 5
.short 6
; pragma section DTCM begin
.section .bss
.balign 16, 0
.global OSi_IrqThreadQueue
OSi_IrqThreadQueue: ; 027E0060
.space 4
; pragma section DTCM end
.section .text

View File

@@ -1,6 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
; pragma section DTCM begin
.section .dtcm
.balign 16, 0
.global OS_IRQTable
@@ -28,12 +29,12 @@ OS_IRQTable: ; 027E0000 ;10b6a0
.word OS_IrqDummy
.word OS_IrqDummy
.section .bss
.space 0x20
; pragma section DTCM end
.extern UNK_021D3420
.extern OSi_IrqCallbackInfoIndex
.extern UNK_021D3424
.section .bss
.global OSi_IrqCallbackInfo
OSi_IrqCallbackInfo: ; 0x021D341C
.space 0x60
.section .text
@@ -118,12 +119,12 @@ OSi_IrqCallback: ; 0x020C9D0C
cmp r1, #0x0
mov r5, r5, lsl r3
beq _020C9D54
ldr r0, _020C9D9C ; =UNK_021D3424
ldr r0, _020C9D9C ; =OSi_IrqCallbackInfo + 8
ldr r0, [r0, r4]
blx r1
_020C9D54:
ldr r0, _020C9DA0 ; =0x027E0000
ldr r1, _020C9DA4 ; =UNK_021D3420
ldr r0, _020C9DA0 ; =SDK_AUTOLOAD_DTCM_START
ldr r1, _020C9DA4 ; =OSi_IrqCallbackInfo + 4
add r0, r0, #0x3000
ldr r2, [r0, #0xff8]
orr r2, r2, r5

View File

@@ -1,6 +1,10 @@
.include "asm/macros.inc"
.include "global.inc"
.extern isInitialized
.section .bss
.global isInitialized
isInitialized: ; 0x021D347C
.space 0x4
.text

View File

@@ -1,9 +1,51 @@
.include "asm/macros.inc"
.include "global.inc"
.extern UNK_021D349C
.extern OSi_LauncherThread
.extern OSi_SystemCallbackInSwitchThread
.section .bss
.global OSi_StackForDestructor
OSi_StackForDestructor: ; 0x021D3480
.space 0x4
.global OSi_RescheduleCount
OSi_RescheduleCount: ; 0x021D3484
.space 0x4
.global OSi_ThreadIdCount
OSi_ThreadIdCount: ; 0x021D3488
.space 0x4
.global OSi_SystemCallbackInSwitchThread
OSi_SystemCallbackInSwitchThread: ; 0x021D348C
.space 0x4
.global OSi_CurrentThreadPtr
OSi_CurrentThreadPtr: ; 0x021D3490
.space 0x4
.global OSi_IsThreadInitialized
OSi_IsThreadInitialized: ; 0x021D3494
.space 0x4
.global OSi_ThreadInfo
OSi_ThreadInfo: ; 0x021D3498
.space 0x4
.global UNK_021D349C
UNK_021D349C: ; 0x021D349C
.space 0xc
.global OSi_IdleThread
OSi_IdleThread: ; 0x021D34A8
.space 0xc0
.global OSi_LauncherThread
OSi_LauncherThread: ; 0x021D3568
.space 0xC0
.global OSi_IdleThreadStack
OSi_IdleThreadStack: ; 0x021D3628
.space 0xC8
.text

View File

@@ -1,204 +1,608 @@
.include "asm/macros.inc"
.include "global.inc"
.extern UNK_021C8CD0
.extern UNK_020FF598
.extern UNK_021C8EC8
.extern UNK_021062A0
.extern UNK_021C8EF8
.extern UNK_021CA6FC
.extern UNK_021CB850
.extern UNK_021CA874
.extern UNK_021C8EA8
.extern UNK_021CB89C
.extern UNK_021C8EF0
.extern UNK_021C8EB4
.extern UNK_021CB81C
.extern UNK_021CA8C8
.extern UNK_021C8D6C
.extern UNK_021C8EDC
.extern UNK_021CA8BC
.extern UNK_021C8ED0
.extern UNK_020FF580
.extern UNK_021C9520
.extern UNK_020FF6B4
.extern UNK_021CA87C
.extern UNK_021C8F14
.extern UNK_021C8C8E
.extern UNK_021064B8
.extern UNK_021C8F08
.extern UNK_02106244
.extern UNK_020FF5BC
.extern UNK_021064D0
.extern UNK_020FF518
.extern UNK_021CA8D4
.extern UNK_020FF6BC
.extern UNK_021C8F0C
.extern UNK_02106278
.extern UNK_021CB898
.extern UNK_021CCD48
.extern UNK_021C903C
.extern UNK_021064C0
.extern UNK_021C8CA0
.extern UNK_021C924A
.extern UNK_020FF5B8
.extern UNK_021CAAA4
.extern UNK_021062A4
.extern UNK_021064BC
.extern UNK_021062AC
.extern UNK_021C8D3C
.extern UNK_021CCD3C
.extern UNK_021C8C84
.extern UNK_021CB818
.extern UNK_021CB870
.extern UNK_021C8F24
.extern UNK_021064FC
.extern UNK_021CA8E8
.extern UNK_020FF50C
.extern UNK_021C8F10
.extern UNK_021061C0
.extern UNK_021064C8
.extern UNK_021CA6FB
.extern UNK_021CB7FC
.extern UNK_021CB7EC
.extern UNK_021061DC
.extern UNK_021C8CC4
.extern UNK_021C8C78
.extern UNK_02106230
.extern UNK_021C8EC0
.extern UNK_021061C4
.extern UNK_0210642D
.extern UNK_020FF788
.extern UNK_021C8ED4
.extern UNK_0210646C
.extern UNK_021CA6E8
.extern UNK_021CCD14
.extern UNK_021C8EAC
.extern UNK_021C8EE4
.extern UNK_021C8C89
.extern UNK_021CCD58
.extern UNK_020FF574
.extern UNK_0210632C
.extern UNK_021C8F78
.extern UNK_02106498
.extern UNK_021C8CC8
.extern UNK_021C8DA4
.extern UNK_021CA8D0
.extern UNK_021CA8C0
.extern UNK_021C8D08
.extern UNK_021C8D30
.extern UNK_021CCD1C
.extern UNK_021C8EEC
.extern UNK_021C8EFC
.extern UNK_02106490
.extern UNK_020FF5D4
.extern UNK_021CA870
.extern UNK_021CA8DC
.extern UNK_02106224
.extern UNK_021CB8A0
.extern UNK_021CB868
.extern UNK_021CCD20
.extern UNK_021C8ED8
.extern UNK_021C8D38
.extern UNK_021CB890
.extern UNK_021C8CC0
.extern UNK_021C8EB8
.extern UNK_020FF578
.extern UNK_021C8EF4
.extern UNK_021C8C7C
.extern UNK_021064C4
.extern UNK_020FF590
.extern UNK_021C8C80
.extern UNK_020FF7CC
.extern UNK_021C8D28
.extern UNK_021C8D40
.extern UNK_020FF688
.extern UNK_021CB880
.extern UNK_021CB8A4
.extern UNK_021064E4
.extern UNK_021C8EE8
.extern UNK_021C9220
.extern UNK_02106298
.extern UNK_021CA8CC
.extern UNK_021CB7E0
.extern UNK_021CB7D8
.extern UNK_020FF5C4
.extern UNK_021CA8B4
.extern UNK_021CB86C
.extern UNK_021C93A0
.extern UNK_021CB824
.extern UNK_021CA8B0
.extern UNK_021CA8A0
.extern OSi_ThreadInfo
.extern UNK_020FF689
.extern UNK_021CB838
.extern UNK_021CCD38
.extern UNK_02106170
.extern UNK_0210621C
.extern UNK_02106218
.extern UNK_021C8C8A
.extern UNK_021CA8D8
.extern UNK_021C8D04
.extern UNK_021CB808
.extern UNK_021C8F5E
.extern UNK_020FF7D4
.extern UNK_021C8C90
.extern UNK_021C8F1C
.extern UNK_021CB874
.extern UNK_021C8F04
.extern UNK_021CA6E4
.extern UNK_021CBD14
.extern UNK_021CB8BC
.extern UNK_021C8D4C
.extern UNK_021CB7DC
.extern UNK_021C8FD8
.extern UNK_02106470
.extern UNK_020FF524
.extern UNK_0210620C
.extern UNK_020FF6AC
.extern UNK_020FF694
.extern UNK_021CB814
.extern UNK_021C8ECC
.extern UNK_021CB878
.extern UNK_021062EC
.extern UNK_021C8EB0
.extern UNK_021CA86C
.extern UNK_021C8F82
.extern UNK_0210642C
.extern UNK_021CB8D4
.extern UNK_021CA8C4
.extern UNK_021C9160
.extern UNK_021CA89C
.extern UNK_021CB87C
.extern UNK_021C8CCC
.extern UNK_021062A8
.extern UNK_021CA6E0
.extern UNK_020FF500
.extern UNK_021C8D34
.extern UNK_021C8CD4
.extern UNK_021061F4
.extern UNK_021064A8
.extern UNK_021C8D44
.extern UNK_021C9EE0
.extern UNK_021C8EBC
.extern UNK_021CAF00
.extern UNK_0210618C
.extern UNK_021C90A0
.extern UNK_020FF50C
.extern UNK_020FF518
.extern UNK_020FF524
.extern UNK_020FF574
.extern UNK_020FF578
.extern UNK_020FF580
.extern UNK_020FF590
.extern UNK_020FF598
.extern UNK_020FF5B8
.extern UNK_020FF5BC
.extern UNK_020FF5C4
.extern UNK_020FF5D4
.extern UNK_020FF688
.extern UNK_020FF689
.extern UNK_020FF694
.extern UNK_020FF6AC
.extern UNK_020FF6B4
.extern UNK_020FF6BC
.extern UNK_020FF700
.extern UNK_021C8EC4
.extern UNK_0210619C
.extern UNK_0210623C
.extern UNK_021C8D5C
.extern UNK_02106290
.extern UNK_021CA8B8
.extern UNK_021CB7F0
.extern UNK_02106514
.extern UNK_021CB894
.extern UNK_021CCD4C
.extern UNK_021CCD18
.extern UNK_021C8F00
.extern UNK_021C8EE0
.extern UNK_020FF744
.extern UNK_020FF788
.extern UNK_020FF7CC
.extern UNK_020FF7D4
.extern UNK_02106170
.extern UNK_0210618C
.extern UNK_0210619C
.extern UNK_021061C0
.extern UNK_021061C4
.extern UNK_021061DC
.extern UNK_021061F4
.extern UNK_0210620C
.extern UNK_02106218
.extern UNK_0210621C
.extern UNK_02106224
.extern UNK_02106230
.extern UNK_0210623C
.extern UNK_02106244
.extern UNK_02106278
.extern UNK_02106290
.extern UNK_02106298
.extern UNK_021062A0
.extern UNK_021062A4
.extern UNK_021062A8
.extern UNK_021062AC
.extern UNK_021062EC
.extern UNK_0210632C
.extern UNK_0210642C
.extern UNK_0210642D
.extern UNK_0210646C
.extern UNK_02106470
.extern UNK_02106490
.extern UNK_02106498
.extern UNK_021064A8
.extern UNK_021064B8
.extern UNK_021064BC
.extern UNK_021064C0
.extern UNK_021064C4
.extern UNK_021064C8
.extern UNK_021064D0
.extern UNK_021064E4
.extern UNK_021064FC
.extern UNK_02106514
.section .bss
.global UNK_021C8C78
UNK_021C8C78: ; 0x021C8C78
.space 0x4
.global UNK_021C8C7C
UNK_021C8C7C: ; 0x021C8C7C
.space 0x4
.global UNK_021C8C80
UNK_021C8C80: ; 0x021C8C80
.space 0x4
.global UNK_021C8C84
UNK_021C8C84: ; 0x021C8C84
.space 0x5
.global UNK_021C8C89
UNK_021C8C89: ; 0x021C8C89
.space 0x1
.global UNK_021C8C8A
UNK_021C8C8A: ; 0x021C8C8A
.space 0x4
.global UNK_021C8C8E
UNK_021C8C8E: ; 0x021C8C8E
.space 0x2
.global UNK_021C8C90
UNK_021C8C90: ; 0x021C8C90
.space 0x10
.global UNK_021C8CA0
UNK_021C8CA0: ; 0x021C8CA0
.space 0x20
.global UNK_021C8CC0
UNK_021C8CC0: ; 0x021C8CC0
.space 0x4
.global UNK_021C8CC4
UNK_021C8CC4: ; 0x021C8CC4
.space 0x4
.global UNK_021C8CC8
UNK_021C8CC8: ; 0x021C8CC8
.space 0x4
.global UNK_021C8CCC
UNK_021C8CCC: ; 0x021C8CCC
.space 0x4
.global UNK_021C8CD0
UNK_021C8CD0: ; 0x021C8CD0
.space 0x4
.global UNK_021C8CD4
UNK_021C8CD4: ; 0x021C8CD4
.space 0x30
.global UNK_021C8D04
UNK_021C8D04: ; 0x021C8D04
.space 0x4
.global UNK_021C8D08
UNK_021C8D08: ; 0x021C8D08
.space 0x20
.global UNK_021C8D28
UNK_021C8D28: ; 0x021C8D28
.space 0x8
.global UNK_021C8D30
UNK_021C8D30: ; 0x021C8D30
.space 0x4
.global UNK_021C8D34
UNK_021C8D34: ; 0x021C8D34
.space 0x4
.global UNK_021C8D38
UNK_021C8D38: ; 0x021C8D38
.space 0x4
.global UNK_021C8D3C
UNK_021C8D3C: ; 0x021C8D3C
.space 0x4
.global UNK_021C8D40
UNK_021C8D40: ; 0x021C8D40
.space 0x4
.global UNK_021C8D44
UNK_021C8D44: ; 0x021C8D44
.space 0x8
.global UNK_021C8D4C
UNK_021C8D4C: ; 0x021C8D4C
.space 0x10
.global UNK_021C8D5C
UNK_021C8D5C: ; 0x021C8D5C
.space 0x10
.global UNK_021C8D6C
UNK_021C8D6C: ; 0x021C8D6C
.space 0x38
.global UNK_021C8DA4
UNK_021C8DA4: ; 0x021C8DA4
.space 0x104
.global UNK_021C8EA8
UNK_021C8EA8: ; 0x021C8EA8
.space 0x4
.global UNK_021C8EAC
UNK_021C8EAC: ; 0x021C8EAC
.space 0x4
.global UNK_021C8EB0
UNK_021C8EB0: ; 0x021C8EB0
.space 0x4
.global UNK_021C8EB4
UNK_021C8EB4: ; 0x021C8EB4
.space 0x4
.global UNK_021C8EB8
UNK_021C8EB8: ; 0x021C8EB8
.space 0x4
.global UNK_021C8EBC
UNK_021C8EBC: ; 0x021C8EBC
.space 0x4
.global UNK_021C8EC0
UNK_021C8EC0: ; 0x021C8EC0
.space 0x4
.global UNK_021C8EC4
UNK_021C8EC4: ; 0x021C8EC4
.space 0x4
.global UNK_021C8EC8
UNK_021C8EC8: ; 0x021C8EC8
.space 0x4
.global UNK_021C8ECC
UNK_021C8ECC: ; 0x021C8ECC
.space 0x4
.global UNK_021C8ED0
UNK_021C8ED0: ; 0x021C8ED0
.space 0x4
.global UNK_021C8ED4
UNK_021C8ED4: ; 0x021C8ED4
.space 0x4
.global UNK_021C8ED8
UNK_021C8ED8: ; 0x021C8ED8
.space 0x4
.global UNK_021C8EDC
UNK_021C8EDC: ; 0x021C8EDC
.space 0x4
.global UNK_021C8EE0
UNK_021C8EE0: ; 0x021C8EE0
.space 0x4
.global UNK_021C8EE4
UNK_021C8EE4: ; 0x021C8EE4
.space 0x4
.global UNK_021C8EE8
UNK_021C8EE8: ; 0x021C8EE8
.space 0x4
.global UNK_021C8EEC
UNK_021C8EEC: ; 0x021C8EEC
.space 0x4
.global UNK_021C8EF0
UNK_021C8EF0: ; 0x021C8EF0
.space 0x4
.global UNK_021C8EF4
UNK_021C8EF4: ; 0x021C8EF4
.space 0x4
.global UNK_021C8EF8
UNK_021C8EF8: ; 0x021C8EF8
.space 0x4
.global UNK_021C8EFC
UNK_021C8EFC: ; 0x021C8EFC
.space 0x4
.global UNK_021C8F00
UNK_021C8F00: ; 0x021C8F00
.space 0x4
.global UNK_021C8F04
UNK_021C8F04: ; 0x021C8F04
.space 0x4
.global UNK_021C8F08
UNK_021C8F08: ; 0x021C8F08
.space 0x4
.global UNK_021C8F0C
UNK_021C8F0C: ; 0x021C8F0C
.space 0x4
.global UNK_021C8F10
UNK_021C8F10: ; 0x021C8F10
.space 0x4
.global UNK_021C8F14
UNK_021C8F14: ; 0x021C8F14
.space 0x8
.global UNK_021C8F1C
UNK_021C8F1C: ; 0x021C8F1C
.space 0x8
.global UNK_021C8F24
UNK_021C8F24: ; 0x021C8F24
.space 0x3a
.global UNK_021C8F5E
UNK_021C8F5E: ; 0x021C8F5E
.space 0x1a
.global UNK_021C8F78
UNK_021C8F78: ; 0x021C8F78
.space 0xa
.global UNK_021C8F82
UNK_021C8F82: ; 0x021C8F82
.space 0x56
.global UNK_021C8FD8
UNK_021C8FD8: ; 0x021C8FD8
.space 0x64
.global UNK_021C903C
UNK_021C903C: ; 0x021C903C
.space 0x64
.global UNK_021C90A0
UNK_021C90A0: ; 0x021C90A0
.space 0xc0
.global UNK_021C9160
UNK_021C9160: ; 0x021C9160
.space 0xc0
.global UNK_021C9220
UNK_021C9220: ; 0x021C9220
.space 0x2a
.global UNK_021C924A
UNK_021C924A: ; 0x021C924A
.space 0x156
.global UNK_021C93A0
UNK_021C93A0: ; 0x021C93A0
.space 0x180
.global UNK_021C9520
UNK_021C9520: ; 0x021C9520
.space 0x9c0
.global UNK_021C9EE0
UNK_021C9EE0: ; 0x021C9EE0
.space 0x800
.global UNK_021CA6E0
UNK_021CA6E0: ; 0x021CA6E0
.space 0x4
.global UNK_021CA6E4
UNK_021CA6E4: ; 0x021CA6E4
.space 0x4
.global UNK_021CA6E8
UNK_021CA6E8: ; 0x021CA6E8
.space 0x13
.global UNK_021CA6FB
UNK_021CA6FB: ; 0x021CA6FB
.space 0x1
.global UNK_021CA6FC
UNK_021CA6FC: ; 0x021CA6FC
.space 0x170
.global UNK_021CA86C
UNK_021CA86C: ; 0x021CA86C
.space 0x4
.global UNK_021CA870
UNK_021CA870: ; 0x021CA870
.space 0x4
.global UNK_021CA874
UNK_021CA874: ; 0x021CA874
.space 0x8
.global UNK_021CA87C
UNK_021CA87C: ; 0x021CA87C
.space 0x20
.global UNK_021CA89C
UNK_021CA89C: ; 0x021CA89C
.space 0x4
.global UNK_021CA8A0
UNK_021CA8A0: ; 0x021CA8A0
.space 0x10
.global UNK_021CA8B0
UNK_021CA8B0: ; 0x021CA8B0
.space 0x4
.global UNK_021CA8B4
UNK_021CA8B4: ; 0x021CA8B4
.space 0x4
.global UNK_021CA8B8
UNK_021CA8B8: ; 0x021CA8B8
.space 0x4
.global UNK_021CA8BC
UNK_021CA8BC: ; 0x021CA8BC
.space 0x4
.global UNK_021CA8C0
UNK_021CA8C0: ; 0x021CA8C0
.space 0x4
.global UNK_021CA8C4
UNK_021CA8C4: ; 0x021CA8C4
.space 0x4
.global UNK_021CA8C8
UNK_021CA8C8: ; 0x021CA8C8
.space 0x4
.global UNK_021CA8CC
UNK_021CA8CC: ; 0x021CA8CC
.space 0x4
.global UNK_021CA8D0
UNK_021CA8D0: ; 0x021CA8D0
.space 0x4
.global UNK_021CA8D4
UNK_021CA8D4: ; 0x021CA8D4
.space 0x4
.global UNK_021CA8D8
UNK_021CA8D8: ; 0x021CA8D8
.space 0x4
.global UNK_021CA8DC
UNK_021CA8DC: ; 0x021CA8DC
.space 0xc
.global UNK_021CA8E8
UNK_021CA8E8: ; 0x021CA8E8
.space 0x1bc
.global UNK_021CAAA4
UNK_021CAAA4: ; 0x021CAAA4
.space 0x45c
.global UNK_021CAF00
UNK_021CAF00: ; 0x021CAF00
.space 0x8d8
.global UNK_021CB7D8
UNK_021CB7D8: ; 0x021CB7D8
.space 0x4
.global UNK_021CB7DC
UNK_021CB7DC: ; 0x021CB7DC
.space 0x4
.global UNK_021CB7E0
UNK_021CB7E0: ; 0x021CB7E0
.space 0xc
.global UNK_021CB7EC
UNK_021CB7EC: ; 0x021CB7EC
.space 0x4
.global UNK_021CB7F0
UNK_021CB7F0: ; 0x021CB7F0
.space 0xc
.global UNK_021CB7FC
UNK_021CB7FC: ; 0x021CB7FC
.space 0xc
.global UNK_021CB808
UNK_021CB808: ; 0x021CB808
.space 0xc
.global UNK_021CB814
UNK_021CB814: ; 0x021CB814
.space 0x4
.global UNK_021CB818
UNK_021CB818: ; 0x021CB818
.space 0x4
.global UNK_021CB81C
UNK_021CB81C: ; 0x021CB81C
.space 0x8
.global UNK_021CB824
UNK_021CB824: ; 0x021CB824
.space 0x14
.global UNK_021CB838
UNK_021CB838: ; 0x021CB838
.space 0x18
.global UNK_021CB850
UNK_021CB850: ; 0x021CB850
.space 0x18
.global UNK_021CB868
UNK_021CB868: ; 0x021CB868
.space 0x4
.global UNK_021CB86C
UNK_021CB86C: ; 0x021CB86C
.space 0x4
.global UNK_021CB870
UNK_021CB870: ; 0x021CB870
.space 0x4
.global UNK_021CB874
UNK_021CB874: ; 0x021CB874
.space 0x4
.global UNK_021CB878
UNK_021CB878: ; 0x021CB878
.space 0x4
.global UNK_021CB87C
UNK_021CB87C: ; 0x021CB87C
.space 0x4
.global UNK_021CB880
UNK_021CB880: ; 0x021CB880
.space 0x10
.global UNK_021CB890
UNK_021CB890: ; 0x021CB890
.space 0x4
.global UNK_021CB894
UNK_021CB894: ; 0x021CB894
.space 0x4
.global UNK_021CB898
UNK_021CB898: ; 0x021CB898
.space 0x4
.global UNK_021CB89C
UNK_021CB89C: ; 0x021CB89C
.space 0x4
.global UNK_021CB8A0
UNK_021CB8A0: ; 0x021CB8A0
.space 0x4
.global UNK_021CB8A4
UNK_021CB8A4: ; 0x021CB8A4
.space 0x18
.global UNK_021CB8BC
UNK_021CB8BC: ; 0x021CB8BC
.space 0x18
.global UNK_021CB8D4
UNK_021CB8D4: ; 0x021CB8D4
.space 0x440
.global UNK_021CBD14
UNK_021CBD14: ; 0x021CBD14
.space 0x1000
.global UNK_021CCD14
UNK_021CCD14: ; 0x021CCD14
.space 0x4
.global UNK_021CCD18
UNK_021CCD18: ; 0x021CCD18
.space 0x4
.global UNK_021CCD1C
UNK_021CCD1C: ; 0x021CCD1C
.space 0x4
.global UNK_021CCD20
UNK_021CCD20: ; 0x021CCD20
.space 0x18
.global UNK_021CCD38
UNK_021CCD38: ; 0x021CCD38
.space 0x4
.global UNK_021CCD3C
UNK_021CCD3C: ; 0x021CCD3C
.space 0xc
.global UNK_021CCD48
UNK_021CCD48: ; 0x021CCD48
.space 0x4
.global UNK_021CCD4C
UNK_021CCD4C: ; 0x021CCD4C
.space 0xc
.global UNK_021CCD58
UNK_021CCD58: ; 0x021CCD58
.space 0x14
.text

View File

@@ -1,167 +1,471 @@
.include "asm/macros.inc"
.include "global.inc"
.extern UNK_021066D0
.extern UNK_021D1CB4
.extern UNK_020FFA16
.extern UNK_021CCD8C
.extern UNK_021CD920
.extern UNK_02106578
.extern UNK_021CED14
.extern UNK_021CDD6C
.extern UNK_021067D0
.extern UNK_021D2900
.extern UNK_020FFA38
.extern UNK_020FF970
.extern UNK_0210659C
.extern UNK_021064B8
.extern UNK_020FF8C4
.extern UNK_020FF9F0
.extern UNK_021CD820
.extern UNK_021CEF80
.extern UNK_021CDD70
.extern UNK_021065A8
.extern UNK_021CFD88
.extern UNK_0210663C
.extern UNK_021066DC
.extern UNK_021CED04
.extern UNK_021067F0
.extern UNK_021D2254
.extern UNK_021D2904
.extern UNK_021064C0
.extern UNK_02106594
.extern UNK_021CCD74
.extern UNK_02106570
.extern UNK_021CEDC0
.extern UNK_02106660
.extern UNK_02106630
.extern UNK_02106620
.extern UNK_02106724
.extern UNK_021065A4
.extern UNK_021D1C98
.extern UNK_021CDF08
.extern UNK_021CED0C
.extern UNK_021D2274
.extern UNK_021064BC
.extern UNK_021D27A8
.extern UNK_02106718
.extern UNK_021066A0
.extern UNK_021D0380
.extern UNK_021CED64
.extern UNK_021CDD74
.extern UNK_020FF928
.extern UNK_02106590
.extern UNK_021D27A4
.extern UNK_021CD2E0
.extern UNK_021D28C0
.extern UNK_020FF864
.extern UNK_021066A4
.extern UNK_021D226C
.extern UNK_02106730
.extern UNK_021D1CB0
.extern UNK_021CE1F4
.extern UNK_02106574
.extern UNK_021CED08
.extern UNK_021CEE18
.extern UNK_021CFD84
.extern UNK_021D1E08
.extern UNK_021CED18
.extern UNK_0210655C
.extern UNK_020FF8AC
.extern GXi_DmaId
.extern UNK_021067B0
.extern UNK_021D1C94
.extern UNK_02106608
.extern UNK_021D28C4
.extern UNK_021CED20
.extern UNK_021D2724
.extern UNK_021D26D4
.extern UNK_021D1C80
.extern UNK_021D1C8C
.extern UNK_021CFD8C
.extern UNK_02106650
.extern UNK_021CFD94
.extern UNK_020FF9F2
.extern UNK_021CCD6C
.extern UNK_021CDD20
.extern UNK_020FF990
.extern UNK_020FF9F1
.extern UNK_021CD2A0
.extern UNK_020FFA15
.extern UNK_02106634
.extern UNK_021CEF7C
.extern UNK_021064C4
.extern UNK_021CCD9C
.extern UNK_021D27CC
.extern UNK_02106640
.extern UNK_021CD3E0
.extern UNK_021CCDA0
.extern UNK_021065B4
.extern UNK_021065A0
.extern UNK_021D1CBC
.extern UNK_021D1CA4
.extern UNK_021CCD88
.extern UNK_020FFA14
.extern UNK_021D1E14
.extern UNK_021D2820
.extern UNK_021D2DD8
.extern UNK_021065B8
.extern UNK_020FF9F3
.extern UNK_021D26E4
.extern UNK_02106638
.extern UNK_021CEE04
.extern UNK_020FF8F8
.extern UNK_020FF958
.extern UNK_021065BC
.extern UNK_021D27AC
.extern UNK_021D225C
.extern UNK_021CEDD4
.extern UNK_021D2DF0
.extern UNK_021D1C84
.extern UNK_021CEE78
.extern UNK_02103BAC
.extern UNK_021D1C90
.extern UNK_02106614
.extern UNK_021066E8
.extern UNK_021CDD64
.extern UNK_021CFD90
.extern UNK_021CDD68
.extern UNK_021066F4
.extern UNK_021D1DFC
.extern UNK_021065B0
.extern UNK_021CDD60
.extern UNK_020FF8D8
.extern UNK_021D2DFC
.extern UNK_021CED98
.extern UNK_021CE8F4
.extern UNK_021CED00
.extern UNK_020FF9D0
.extern UNK_021065AC
.extern UNK_020FF864
.extern UNK_020FF894
.extern UNK_021CDF04
.extern UNK_021D26D8
.extern UNK_021066EC
.extern UNK_020FFA17
.extern UNK_021CE8F8
.extern UNK_021CDDF8
.extern UNK_021CECFC
.extern UNK_021D1CB8
.extern UNK_021CD7E0
.extern UNK_021CED10
.extern UNK_021CCD70
.extern UNK_020FF8AC
.extern UNK_020FF8C4
.extern UNK_020FF8D0
.extern UNK_021D1C88
.extern UNK_020FF8D8
.extern UNK_020FF8F8
.extern UNK_020FF928
.extern UNK_020FF958
.extern UNK_020FF970
.extern UNK_020FF990
.extern UNK_020FF9D0
.extern UNK_020FF9F0
.extern UNK_020FF9F1
.extern UNK_020FF9F2
.extern UNK_020FF9F3
.extern UNK_020FFA14
.extern UNK_020FFA15
.extern UNK_020FFA16
.extern UNK_020FFA17
.extern UNK_020FFA38
.extern UNK_02103BAC
.extern UNK_021064B8
.extern UNK_021064BC
.extern UNK_021064C0
.extern UNK_021064C4
.extern UNK_0210655C
.extern UNK_02106570
.extern UNK_02106574
.extern UNK_02106578
.extern UNK_02106590
.extern UNK_02106594
.extern UNK_02106598
.extern UNK_021CDEF4
.extern UNK_021D03C0
.extern UNK_021CEDF8
.extern UNK_021CCEA0
.extern UNK_021CFD80
.extern UNK_0210659C
.extern UNK_021065A0
.extern UNK_021065A4
.extern UNK_021065A8
.extern UNK_021065AC
.extern UNK_021065B0
.extern UNK_021065B4
.extern UNK_021065B8
.extern UNK_021065BC
.extern UNK_02106608
.extern UNK_02106614
.extern UNK_02106620
.extern UNK_02106630
.extern UNK_02106634
.extern UNK_02106638
.extern UNK_0210663C
.extern UNK_02106640
.extern UNK_02106650
.extern UNK_02106660
.extern UNK_021066A0
.extern UNK_021066A4
.extern UNK_021066AC
.extern UNK_021CDDF4
.extern UNK_021CE4F4
.extern UNK_021D2270
.extern UNK_021CEE48
.extern UNK_021066D0
.extern UNK_021066DC
.extern UNK_021066E8
.extern UNK_021066EC
.extern UNK_021066F4
.extern UNK_02106718
.extern UNK_02106724
.extern UNK_02106730
.extern UNK_021067B0
.extern UNK_021067D0
.extern UNK_021067F0
.section .bss
.global UNK_021CCD6C
UNK_021CCD6C: ; 0x021CCD6C
.space 0x4
.global UNK_021CCD70
UNK_021CCD70: ; 0x021CCD70
.space 0x4
.global UNK_021CCD74
UNK_021CCD74: ; 0x021CCD74
.space 0x14
.global UNK_021CCD88
UNK_021CCD88: ; 0x021CCD88
.space 0x4
.global UNK_021CCD8C
UNK_021CCD8C: ; 0x021CCD8C
.space 0x10
.global UNK_021CCD9C
UNK_021CCD9C: ; 0x021CCD9C
.space 0x4
.global UNK_021CCDA0
UNK_021CCDA0: ; 0x021CCDA0
.space 0x100
.global UNK_021CCEA0
UNK_021CCEA0: ; 0x021CCEA0
.space 0x400
.global UNK_021CD2A0
UNK_021CD2A0: ; 0x021CD2A0
.space 0x40
.global UNK_021CD2E0
UNK_021CD2E0: ; 0x021CD2E0
.space 0x100
.global UNK_021CD3E0
UNK_021CD3E0: ; 0x021CD3E0
.space 0x400
.global UNK_021CD7E0
UNK_021CD7E0: ; 0x021CD7E0
.space 0x40
.global UNK_021CD820
UNK_021CD820: ; 0x021CD820
.space 0x100
.global UNK_021CD920
UNK_021CD920: ; 0x021CD920
.space 0x400
.global UNK_021CDD20
UNK_021CDD20: ; 0x021CDD20
.space 0x40
.global UNK_021CDD60
UNK_021CDD60: ; 0x021CDD60
.space 0x4
.global UNK_021CDD64
UNK_021CDD64: ; 0x021CDD64
.space 0x4
.global UNK_021CDD68
UNK_021CDD68: ; 0x021CDD68
.space 0x4
.global UNK_021CDD6C
UNK_021CDD6C: ; 0x021CDD6C
.space 0x4
.global UNK_021CDD70
UNK_021CDD70: ; 0x021CDD70
.space 0x4
.global UNK_021CDD74
UNK_021CDD74: ; 0x021CDD74
.space 0x80
.global UNK_021CDDF4
UNK_021CDDF4: ; 0x021CDDF4
.space 0x4
.global UNK_021CDDF8
UNK_021CDDF8: ; 0x021CDDF8
.space 0xfc
.global UNK_021CDEF4
UNK_021CDEF4: ; 0x021CDEF4
.space 0x10
.global UNK_021CDF04
UNK_021CDF04: ; 0x021CDF04
.space 0x4
.global UNK_021CDF08
UNK_021CDF08: ; 0x021CDF08
.space 0x2ec
.global UNK_021CE1F4
UNK_021CE1F4: ; 0x021CE1F4
.space 0x300
.global UNK_021CE4F4
UNK_021CE4F4: ; 0x021CE4F4
.space 0x400
.global UNK_021CE8F4
UNK_021CE8F4: ; 0x021CE8F4
.space 0x4
.global UNK_021CE8F8
UNK_021CE8F8: ; 0x021CE8F8
.space 0x404
.global UNK_021CECFC
UNK_021CECFC: ; 0x021CECFC
.space 0x4
.global UNK_021CED00
UNK_021CED00: ; 0x021CED00
.space 0x4
.global UNK_021CED04
UNK_021CED04: ; 0x021CED04
.space 0x4
.global UNK_021CED08
UNK_021CED08: ; 0x021CED08
.space 0x4
.global UNK_021CED0C
UNK_021CED0C: ; 0x021CED0C
.space 0x4
.global UNK_021CED10
UNK_021CED10: ; 0x021CED10
.space 0x4
.global UNK_021CED14
UNK_021CED14: ; 0x021CED14
.space 0x4
.global UNK_021CED18
UNK_021CED18: ; 0x021CED18
.space 0x8
.global UNK_021CED20
UNK_021CED20: ; 0x021CED20
.space 0x44
.global UNK_021CED64
UNK_021CED64: ; 0x021CED64
.space 0x34
.global UNK_021CED98
UNK_021CED98: ; 0x021CED98
.space 0x28
.global UNK_021CEDC0
UNK_021CEDC0: ; 0x021CEDC0
.space 0x14
.global UNK_021CEDD4
UNK_021CEDD4: ; 0x021CEDD4
.space 0x24
.global UNK_021CEDF8
UNK_021CEDF8: ; 0x021CEDF8
.space 0xc
.global UNK_021CEE04
UNK_021CEE04: ; 0x021CEE04
.space 0x14
.global UNK_021CEE18
UNK_021CEE18: ; 0x021CEE18
.space 0x30
.global UNK_021CEE48
UNK_021CEE48: ; 0x021CEE48
.space 0x30
.global UNK_021CEE78
UNK_021CEE78: ; 0x021CEE78
.space 0xe0
.global UNK_021CEF58
UNK_021CEF58: ; 0x021CEF58
.space 0xc
.global UNK_021CEF64
UNK_021CEF64: ; 0x021CEF64
.space 0xc
.global UNK_021CEF70
UNK_021CEF70: ; 0x021CEF70
.space 0xc
.global UNK_021CEF7C
UNK_021CEF7C: ; 0x021CEF7C
.space 0x4
.global UNK_021CEF80
UNK_021CEF80: ; 0x021CEF80
.space 0xe00
.global UNK_021CFD80
UNK_021CFD80: ; 0x021CFD80
.space 0x4
.global UNK_021CFD84
UNK_021CFD84: ; 0x021CFD84
.space 0x4
.global UNK_021CFD88
UNK_021CFD88: ; 0x021CFD88
.space 0x4
.global UNK_021CFD8C
UNK_021CFD8C: ; 0x021CFD8C
.space 0x4
.global UNK_021CFD90
UNK_021CFD90: ; 0x021CFD90
.space 0x4
.global UNK_021CFD94
UNK_021CFD94: ; 0x021CFD94
.space 0x2ba
.global UNK_021D004E
UNK_021D004E: ; 0x021D004E
.space 0x332
.global UNK_021D0380
UNK_021D0380: ; 0x021D0380
.space 0x40
.global UNK_021D03C0
UNK_021D03C0: ; 0x021D03C0
.space 0xb42
.global UNK_021D0F02
UNK_021D0F02: ; 0x021D0F02
.space 0xd7e
.global UNK_021D1C80
UNK_021D1C80: ; 0x021D1C80
.space 0x4
.global UNK_021D1C84
UNK_021D1C84: ; 0x021D1C84
.space 0x4
.global UNK_021D1C88
UNK_021D1C88: ; 0x021D1C88
.space 0x4
.global UNK_021D1C8C
UNK_021D1C8C: ; 0x021D1C8C
.space 0x4
.global UNK_021D1C90
UNK_021D1C90: ; 0x021D1C90
.space 0x4
.global UNK_021D1C94
UNK_021D1C94: ; 0x021D1C94
.space 0x4
.global UNK_021D1C98
UNK_021D1C98: ; 0x021D1C98
.space 0xc
.global UNK_021D1CA4
UNK_021D1CA4: ; 0x021D1CA4
.space 0xc
.global UNK_021D1CB0
UNK_021D1CB0: ; 0x021D1CB0
.space 0x4
.global UNK_021D1CB4
UNK_021D1CB4: ; 0x021D1CB4
.space 0x4
.global UNK_021D1CB8
UNK_021D1CB8: ; 0x021D1CB8
.space 0x4
.global UNK_021D1CBC
UNK_021D1CBC: ; 0x021D1CBC
.space 0x140
.global UNK_021D1DFC
UNK_021D1DFC: ; 0x021D1DFC
.space 0xc
.global UNK_021D1E08
UNK_021D1E08: ; 0x021D1E08
.space 0xc
.global UNK_021D1E14
UNK_021D1E14: ; 0x021D1E14
.space 0x440
.global UNK_021D2254
UNK_021D2254: ; 0x021D2254
.space 0x8
.global UNK_021D225C
UNK_021D225C: ; 0x021D225C
.space 0x10
.global UNK_021D226C
UNK_021D226C: ; 0x021D226C
.space 0x4
.global UNK_021D2270
UNK_021D2270: ; 0x021D2270
.space 0x4
.global UNK_021D2274
UNK_021D2274: ; 0x021D2274
.space 0x460
.global UNK_021D26D4
UNK_021D26D4: ; 0x021D26D4
.space 0x4
.global UNK_021D26D8
UNK_021D26D8: ; 0x021D26D8
.space 0xc
.global UNK_021D26E4
UNK_021D26E4: ; 0x021D26E4
.space 0x40
.global UNK_021D2724
UNK_021D2724: ; 0x021D2724
.space 0x80
.global UNK_021D27A4
UNK_021D27A4: ; 0x021D27A4
.space 0x4
.global UNK_021D27A8
UNK_021D27A8: ; 0x021D27A8
.space 0x4
.global UNK_021D27AC
UNK_021D27AC: ; 0x021D27AC
.space 0x20
.global UNK_021D27CC
UNK_021D27CC: ; 0x021D27CC
.space 0x54
.global UNK_021D2820
UNK_021D2820: ; 0x021D2820
.space 0xa0
.global UNK_021D28C0
UNK_021D28C0: ; 0x021D28C0
.space 0x4
.global UNK_021D28C4
UNK_021D28C4: ; 0x021D28C4
.space 0x3c
.global UNK_021D2900
UNK_021D2900: ; 0x021D2900
.space 0x4
.global UNK_021D2904
UNK_021D2904: ; 0x021D2904
.space 0x4d4
.global UNK_021D2DD8
UNK_021D2DD8: ; 0x021D2DD8
.space 0x18
.global UNK_021D2DF0
UNK_021D2DF0: ; 0x021D2DF0
.space 0xc
.global UNK_021D2DFC
UNK_021D2DFC: ; 0x021D2DFC
.space 0x5c0
.text

File diff suppressed because it is too large Load Diff

View File

@@ -2049,18 +2049,3 @@ UNK_021067F0: ; 0x021067F0
.word 0x020BFC8C
.word 0x020BFC4C
.word 0x020BFC28
.global sIsDispOn
sIsDispOn: ; 0x02106810
.byte 0x01, 0x00, 0x00, 0x00
.global GXi_DmaId
GXi_DmaId: ; 0x02106814
.byte 0x03, 0x00, 0x00, 0x00
.global OSi_IrqCallbackInfoIndex
OSi_IrqCallbackInfoIndex: ; 0x02106818
.byte 0x08, 0x00, 0x09, 0x00, 0x0A, 0x00, 0x0B, 0x00, 0x03, 0x00, 0x04, 0x00, 0x05, 0x00, 0x06, 0x00
.global OSi_ConsoleTypeCache
OSi_ConsoleTypeCache: ; 0x02106828
.byte 0xFF, 0xFF, 0xFF, 0xFF

View File

@@ -2,10 +2,11 @@
#include "main.h"
#include "GX.h"
extern u16 GXi_VRamLockId;
extern u16 sDispMode;
extern u32 GXi_DmaId;
extern u16 sIsDispOn;
u32 GXi_DmaId = 3;
vu16 GXi_VRamLockId = 0;
static u16 sDispMode = 0;
static u16 sIsDispOn = TRUE;
ARM_FUNC void GX_Init(){
reg_GX_POWCNT |= 0x8000;

View File

@@ -4,13 +4,13 @@
extern u32 GXi_DmaId;
extern s32 sSubOBJExtPltt;
extern s32 sBGExtPltt;
extern u32 sBGExtPlttLCDCBlk;
extern u32 sBGExtPlttLCDCOffset;
extern s32 sOBJExtPltt;
extern u32 sOBJExtPlttLCDCBlk;
extern s32 sSubBGExtPltt;
static s32 sBGExtPltt = 0;
static u32 sBGExtPlttLCDCBlk = 0;
static u32 sBGExtPlttLCDCOffset = 0;
static s32 sOBJExtPltt = 0;
static u32 sOBJExtPlttLCDCBlk = 0;
static s32 sSubBGExtPltt = 0;
static s32 sSubOBJExtPltt = 0;
static inline void *_GX_OBJ_PTR(){

View File

@@ -4,26 +4,24 @@
extern u32 GXi_DmaId;
extern u32 sTex;
extern u32 sTexLCDCBlk1;
extern u32 sTexLCDCBlk2;
extern u32 sSzTexBlk1;
static const struct _TexStartAddrTable
struct _TexStartAddrTable
{
u16 blk1; // 12 bit shift
u16 blk2; // 12 bit shift
u16 szBlk1; // 12 bit shift
};
extern struct _TexStartAddrTable sTexStartAddrTable[16];
extern const struct _TexStartAddrTable sTexStartAddrTable[16];
extern const u16 sTexPlttStartAddrTable[8];
extern u32 sTexPltt;
extern u32 sTexPlttLCDCBlk;
extern u16 sTexPlttStartAddrTable[8];
extern s32 sClrImg;
extern u32 sClrImgLCDCBlk;
static u32 sTexLCDCBlk2 = 0;
static s32 sTex = 0;
static u32 sClrImgLCDCBlk = 0;
static s32 sTexPltt = 0;
static u32 sTexPlttLCDCBlk = 0;
static u32 sTexLCDCBlk1 = 0;
static s32 sClrImg = 0;
static u32 sSzTexBlk1 = 0;
ARM_FUNC void GX_BeginLoadTex(){
u32 temp = GX_ResetBankForTex();

View File

@@ -2,7 +2,7 @@
#include "main.h"
#include "GX.h"
extern struct GX_State gGXState;
struct GX_State gGXState;
ARM_FUNC void GX_InitGXState(){
gGXState.lcdc = 0x0;

View File

@@ -7,8 +7,9 @@
#include "OS_protectionRegion.h"
#include "OS_emulator.h"
extern BOOL OSi_MainExArenaEnabled;
extern BOOL OSi_Initialized; // TODO: located at 0x021d36f0
static BOOL OSi_Initialized = FALSE;
static BOOL OSi_MainExArenaEnabled = FALSE;
void SDK_MAIN_ARENA_LO(); // TODO: technically this should be defined in the lcf
extern void SDK_SECTION_ARENA_EX_START(); // TODO: technically this should be defined in the lcf
extern void SDK_SECTION_ARENA_ITCM_START(); // TODO: technically this should be defined in the lcf

View File

@@ -5,7 +5,7 @@
#include "OS_emulator.h"
#include "function_target.h"
extern u32 OSi_ConsoleTypeCache; //todo fix bss
u32 OSi_ConsoleTypeCache = -1u; //todo fix bss
ARM_FUNC BOOL OS_IsRunOnEmulator() {
return FALSE;