From 02861089ad80555da7b3ed31efbe47a641ac7577 Mon Sep 17 00:00:00 2001 From: David Benepe Date: Thu, 27 May 2021 19:38:28 -0500 Subject: [PATCH] Finished up the rest of the data sections --- data/dkr.data.s | 2372 ++++++++++++++++++----------------- lib/src/osTimer.c | 3 +- lib/src/osViMgr.c | 3 +- lib/src/unknown_0C91A0.c | 2 + lib/src/unknown_0C9970.c | 2 + lib/src/unknown_0C9A20.c | 27 + lib/src/unknown_0CCF90.c | 7 + lib/src/unknown_0CD820.c | 2 + lib/src/unknown_0CE200.c | 2 + lib/src/unknown_0D29F0.c | 9 +- lib/src/unknown_0D3020.c | 6 +- lib/src/unknown_0D43F0.c | 8 + lib/src/unknown_0D6C90.c | 14 +- lib/src/viint.h | 70 ++ lib/src/vitbl.c | 1602 +++++++++++++++++++++++ src/unknown_0C7F50.c | 16 +- tools/python/generate_ld.py | 11 +- 17 files changed, 2972 insertions(+), 1184 deletions(-) create mode 100644 lib/src/viint.h create mode 100644 lib/src/vitbl.c diff --git a/data/dkr.data.s b/data/dkr.data.s index 1fba5c65..443d5cc9 100644 --- a/data/dkr.data.s +++ b/data/dkr.data.s @@ -7710,1206 +7710,1236 @@ ############## unknown_0C7F50.c (.data) ############## -glabel D_800E3770 -.word 0x00000000 +# glabel D_800E3770 +# .word 0x00000000 +# +# glabel D_800E3774 +# .word 0xFFFFFFFF +# +# glabel D_800E3778 +# .word 0xFFFFFFFF +# +# glabel D_800E377C +# .word 0x00000000 -glabel D_800E3774 -.word 0xFFFFFFFF +###################################################### -glabel D_800E3778 -.word 0xFFFFFFFF +########## lib/src/unknown_0C91A0.c (.data) ########## -glabel D_800E377C -.word 0x00000000 +# glabel alGlobals +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel alGlobals -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +###################################################### -glabel D_800E3790 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x7FFF7FFC -.word 0x7FF57FE8 -.word 0x7FD77FC0 -.word 0x7FA57F84 -.word 0x7F5F7F34 -.word 0x7F057ED0 -.word 0x7E977E58 -.word 0x7E157DCD -.word 0x7D7F7D2D -.word 0x7CD67C7A -.word 0x7C1A7BB4 -.word 0x7B497ADA -.word 0x7A6679ED -.word 0x796F78ED -.word 0x786677DA -.word 0x774976B4 -.word 0x761A757B -.word 0x74D87430 -.word 0x738472D3 -.word 0x721E7164 -.word 0x70A66FE3 -.word 0x6F1C6E51 -.word 0x6D816CAD -.word 0x6BD56AF9 -.word 0x6A186933 -.word 0x684A675D -.word 0x666C6577 -.word 0x647E6381 -.word 0x6280617C -.word 0x60735F67 -.word 0x5E575D43 -.word 0x5C2C5B11 -.word 0x59F258D0 -.word 0x57AA5681 -.word 0x55555425 -.word 0x52F251BC -.word 0x50824F46 -.word 0x4E064CC3 -.word 0x4B7D4A35 -.word 0x48E9479B -.word 0x464944F5 -.word 0x439E4245 -.word 0x40E93F8A -.word 0x3E293CC6 -.word 0x3B6039F8 -.word 0x388D3721 -.word 0x35B23441 -.word 0x32CE3159 -.word 0x2FE22E69 -.word 0x2CEF2B72 -.word 0x29F42875 -.word 0x26F32570 -.word 0x23EC2266 -.word 0x20DF1F57 -.word 0x1DCE1C43 -.word 0x1AB7192A -.word 0x179C160E -.word 0x147E12ED -.word 0x115C0FCA -.word 0x0E380CA5 -.word 0x0B11097D -.word 0x07E90654 -.word 0x04C0032A -.word 0x01950000 +########## lib/src/unknown_0C9970.c (.data) ########## -glabel D_800E38A0 -.word 0x00000000 +# glabel D_800E3790 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel D_800E38A4 -.word 0x03B9ACA0 +###################################################### -glabel D_800E38A8 -.word 0x00000000 +########## lib/src/unknown_0C9A20.c (.data) ########## -glabel D_800E38AC -.word 0x003FFF01 +# .word 0x7FFF7FFC +# .word 0x7FF57FE8 +# .word 0x7FD77FC0 +# .word 0x7FA57F84 +# .word 0x7F5F7F34 +# .word 0x7F057ED0 +# .word 0x7E977E58 +# .word 0x7E157DCD +# .word 0x7D7F7D2D +# .word 0x7CD67C7A +# .word 0x7C1A7BB4 +# .word 0x7B497ADA +# .word 0x7A6679ED +# .word 0x796F78ED +# .word 0x786677DA +# .word 0x774976B4 +# .word 0x761A757B +# .word 0x74D87430 +# .word 0x738472D3 +# .word 0x721E7164 +# .word 0x70A66FE3 +# .word 0x6F1C6E51 +# .word 0x6D816CAD +# .word 0x6BD56AF9 +# .word 0x6A186933 +# .word 0x684A675D +# .word 0x666C6577 +# .word 0x647E6381 +# .word 0x6280617C +# .word 0x60735F67 +# .word 0x5E575D43 +# .word 0x5C2C5B11 +# .word 0x59F258D0 +# .word 0x57AA5681 +# .word 0x55555425 +# .word 0x52F251BC +# .word 0x50824F46 +# .word 0x4E064CC3 +# .word 0x4B7D4A35 +# .word 0x48E9479B +# .word 0x464944F5 +# .word 0x439E4245 +# .word 0x40E93F8A +# .word 0x3E293CC6 +# .word 0x3B6039F8 +# .word 0x388D3721 +# .word 0x35B23441 +# .word 0x32CE3159 +# .word 0x2FE22E69 +# .word 0x2CEF2B72 +# .word 0x29F42875 +# .word 0x26F32570 +# .word 0x23EC2266 +# .word 0x20DF1F57 +# .word 0x1DCE1C43 +# .word 0x1AB7192A +# .word 0x179C160E +# .word 0x147E12ED +# .word 0x115C0FCA +# .word 0x0E380CA5 +# .word 0x0B11097D +# .word 0x07E90654 +# .word 0x04C0032A +# .word 0x01950000 -glabel D_800E38B0 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +###################################################### -glabel D_800E38C0 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +########## lib/src/unknown_0CCF90.c (.data) ########## -glabel D_800E38D0 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +# glabel D_800E38A0 +# .word 0x00000000 +# +# glabel D_800E38A4 +# .word 0x03B9ACA0 +# +# glabel D_800E38A8 +# .word 0x00000000 +# +# glabel D_800E38AC +# .word 0x003FFF01 +# +# glabel D_800E38B0 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel __osViDevMgr -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +###################################################### -glabel D_800E3900 -.word 0x00000000 -.word 0x0000320E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x01000000 -.word 0x0000324E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x02000000 -.word 0x0000311E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x03000000 -.word 0x0000305E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x04000000 -.word 0x0000330F -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x05000000 -.word 0x0000324F -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x06000000 -.word 0x0000301F -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x07000000 -.word 0x0000305F -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x08000000 -.word 0x0000324E -.word 0x00000500 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x09000000 -.word 0x0000324E -.word 0x00000280 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x0A000000 -.word 0x0000305E -.word 0x00000500 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x0B000000 -.word 0x0000305E -.word 0x00000280 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x0C000000 -.word 0x0000334F -.word 0x00000500 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x00000400 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00001400 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x0D000000 -.word 0x0000324F -.word 0x00000280 -.word 0x03E52239 -.word 0x0000020C -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x02000800 -.word 0x002301FD -.word 0x000E0204 -.word 0x00000002 -.word 0x00001400 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x0E000000 -.word 0x0000320E -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x0F000000 -.word 0x0000324E -.word 0x00000140 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x10000000 -.word 0x0000311E -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x11000000 -.word 0x0000305E -.word 0x00000140 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x12000000 -.word 0x0000330F -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x13000000 -.word 0x0000324F -.word 0x00000140 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x14000000 -.word 0x0000301F -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x15000000 -.word 0x0000305F -.word 0x00000140 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x16000000 -.word 0x0000324E -.word 0x00000500 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x17000000 -.word 0x0000324E -.word 0x00000280 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x18000000 -.word 0x0000305E -.word 0x00000500 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x19000000 -.word 0x0000305E -.word 0x00000280 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x1A000000 -.word 0x0000334F -.word 0x00000500 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x00000400 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00001400 -.word 0x00000400 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x1B000000 -.word 0x0000324F -.word 0x00000280 -.word 0x0404233A -.word 0x00000270 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x02000800 -.word 0x005D0237 -.word 0x0009026B -.word 0x00000002 -.word 0x00001400 -.word 0x02000800 -.word 0x005F0239 -.word 0x000D0269 -.word 0x00000002 -.word 0x1C000000 -.word 0x0000320E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x1D000000 -.word 0x0000324E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x1E000000 -.word 0x0000311E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x1F000000 -.word 0x0000305E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x01000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000280 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x20000000 -.word 0x0000330F -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x21000000 -.word 0x0000324F -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x22000000 -.word 0x0000301F -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000500 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x23000000 -.word 0x0000305F -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000500 -.word 0x01000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000500 -.word 0x03000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x24000000 -.word 0x0000324E -.word 0x00000500 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x25000000 -.word 0x0000324E -.word 0x00000280 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x26000000 -.word 0x0000305E -.word 0x00000500 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x00000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000A00 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x27000000 -.word 0x0000305E -.word 0x00000280 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000500 -.word 0x02000800 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00000A00 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x28000000 -.word 0x0000334F -.word 0x00000500 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x00000400 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00001400 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x29000000 -.word 0x0000324F -.word 0x00000280 -.word 0x04651E39 -.word 0x0000020C -.word 0x00000C10 -.word 0x0C1C0C1C -.word 0x006C02EC -.word 0x00000400 -.word 0x00000000 -.word 0x00000A00 -.word 0x02000800 -.word 0x002301FD -.word 0x000B0202 -.word 0x00000002 -.word 0x00001400 -.word 0x02000800 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 +########## lib/src/unknown_0CD820.c (.data) ########## -glabel D_800E4620 -.word 0x00000000 -.word 0x0000320E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 +# glabel D_800E38C0 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel D_800E4670 -.word 0x0E000000 -.word 0x0000320E -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 +###################################################### -glabel D_800E46C0 -.word 0x1C000000 -.word 0x0000320E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 +########## lib/src/unknown_0CE200.c (.data) ########## -glabel D_800E4710 -.word 0x02000000 -.word 0x0000311E -.word 0x00000140 -.word 0x03E52239 -.word 0x0000020D -.word 0x00000C15 -.word 0x0C150C15 -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 +# glabel D_800E38D0 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel D_800E4760 -.word 0x10000000 -.word 0x0000311E -.word 0x00000140 -.word 0x0404233A -.word 0x00000271 -.word 0x00150C69 -.word 0x0C6F0C6E -.word 0x00800300 -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x005F0239 -.word 0x0009026B -.word 0x00000002 +###################################################### -glabel D_800E47B0 -.word 0x1E000000 -.word 0x0000311E -.word 0x00000140 -.word 0x04651E39 -.word 0x0000020D -.word 0x00040C11 -.word 0x0C190C1A -.word 0x006C02EC -.word 0x00000200 -.word 0x00000000 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 -.word 0x00000280 -.word 0x00000400 -.word 0x002501FF -.word 0x000E0204 -.word 0x00000002 +############# lib/src/osViMgr.c (.data) ############## -glabel __osPiAccessQueueEnabled -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +# glabel __osViDevMgr +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 -glabel D_800E4810 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +# glabel D_800E3900 # osViModeTable; +# .word 0x00000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x01000000 +# .word 0x0000324E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x02000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x03000000 +# .word 0x0000305E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x04000000 +# .word 0x0000330F +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x05000000 +# .word 0x0000324F +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x06000000 +# .word 0x0000301F +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x07000000 +# .word 0x0000305F +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x08000000 +# .word 0x0000324E +# .word 0x00000500 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x09000000 +# .word 0x0000324E +# .word 0x00000280 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x0A000000 +# .word 0x0000305E +# .word 0x00000500 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x0B000000 +# .word 0x0000305E +# .word 0x00000280 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x0C000000 +# .word 0x0000334F +# .word 0x00000500 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00001400 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x0D000000 +# .word 0x0000324F +# .word 0x00000280 +# .word 0x03E52239 +# .word 0x0000020C +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00001400 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x0E000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x0F000000 +# .word 0x0000324E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x10000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x11000000 +# .word 0x0000305E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x12000000 +# .word 0x0000330F +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x13000000 +# .word 0x0000324F +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x14000000 +# .word 0x0000301F +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x15000000 +# .word 0x0000305F +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x16000000 +# .word 0x0000324E +# .word 0x00000500 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x17000000 +# .word 0x0000324E +# .word 0x00000280 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x18000000 +# .word 0x0000305E +# .word 0x00000500 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x19000000 +# .word 0x0000305E +# .word 0x00000280 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x1A000000 +# .word 0x0000334F +# .word 0x00000500 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00001400 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x1B000000 +# .word 0x0000324F +# .word 0x00000280 +# .word 0x0404233A +# .word 0x00000270 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x005D0237 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00001400 +# .word 0x02000800 +# .word 0x005F0239 +# .word 0x000D0269 +# .word 0x00000002 +# .word 0x1C000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x1D000000 +# .word 0x0000324E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x1E000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x1F000000 +# .word 0x0000305E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x20000000 +# .word 0x0000330F +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x21000000 +# .word 0x0000324F +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x22000000 +# .word 0x0000301F +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x23000000 +# .word 0x0000305F +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x01000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000500 +# .word 0x03000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x24000000 +# .word 0x0000324E +# .word 0x00000500 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x25000000 +# .word 0x0000324E +# .word 0x00000280 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x26000000 +# .word 0x0000305E +# .word 0x00000500 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x27000000 +# .word 0x0000305E +# .word 0x00000280 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000500 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x28000000 +# .word 0x0000334F +# .word 0x00000500 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x00000400 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00001400 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x29000000 +# .word 0x0000324F +# .word 0x00000280 +# .word 0x04651E39 +# .word 0x0000020C +# .word 0x00000C10 +# .word 0x0C1C0C1C +# .word 0x006C02EC +# .word 0x00000400 +# .word 0x00000000 +# .word 0x00000A00 +# .word 0x02000800 +# .word 0x002301FD +# .word 0x000B0202 +# .word 0x00000002 +# .word 0x00001400 +# .word 0x02000800 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# +# glabel D_800E4620 +# .word 0x00000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# +# glabel D_800E4670 +# .word 0x0E000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# +# glabel D_800E46C0 +# .word 0x1C000000 +# .word 0x0000320E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# +# glabel D_800E4710 +# .word 0x02000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x03E52239 +# .word 0x0000020D +# .word 0x00000C15 +# .word 0x0C150C15 +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# +# glabel D_800E4760 +# .word 0x10000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x0404233A +# .word 0x00000271 +# .word 0x00150C69 +# .word 0x0C6F0C6E +# .word 0x00800300 +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x005F0239 +# .word 0x0009026B +# .word 0x00000002 +# +# glabel D_800E47B0 +# .word 0x1E000000 +# .word 0x0000311E +# .word 0x00000140 +# .word 0x04651E39 +# .word 0x0000020D +# .word 0x00040C11 +# .word 0x0C190C1A +# .word 0x006C02EC +# .word 0x00000200 +# .word 0x00000000 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 +# .word 0x00000280 +# .word 0x00000400 +# .word 0x002501FF +# .word 0x000E0204 +# .word 0x00000002 -glabel __osViCurr -.word 0x800E4810 +# glabel __osPiAccessQueueEnabled +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800E4810 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel __osViCurr +# .word 0x800E4810 +# +# glabel __osViNext +# .word 0x800E4840 +# +# glabel D_800E4878 +# .word 0x02E6D354 +# .word 0x00000000 +# +# glabel __osThreadTail +# .word 0x00000000 +# .word 0xFFFFFFFF +# +# glabel __RunQueue +# .word 0x800E4880 +# +# glabel __osActiveQueue +# .word 0x800E4880 +# +# glabel __osRunningThread +# .word 0x00000000 +# +# glabel D_800E4894 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +#.word 0x00000000 +# +# glabel D_800E48C0 +# .aligned_text " " +# +# glabel D_800E48E4 +# .aligned_text "00000000000000000000000000000000" +# +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800E4910 +# .word 0x8012D200 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800E4920 +# .aligned_text "0123456789abcdef" # lowercase hex digits +# +# glabel D_800E4934 +# .aligned_text "0123456789ABCDEF" # uppercase hex digits +# +# .word 0x00000000 +# .word 0x00000000 -glabel __osViNext -.word 0x800E4840 - -glabel D_800E4878 -.word 0x02E6D354 -.word 0x00000000 - -glabel __osThreadTail -.word 0x00000000 -.word 0xFFFFFFFF - -glabel __RunQueue -.word 0x800E4880 - -glabel __osActiveQueue -.word 0x800E4880 - -glabel __osRunningThread -.word 0x00000000 - -glabel D_800E4894 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 - -glabel D_800E48C0 -.aligned_text " " - -glabel D_800E48E4 -.aligned_text "00000000000000000000000000000000" - -.word 0x00000000 -.word 0x00000000 - -glabel D_800E4910 -.word 0x8012D200 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 - -glabel D_800E4920 -.aligned_text "0123456789abcdef" # lowercase hex digits - -glabel D_800E4934 -.aligned_text "0123456789ABCDEF" # uppercase hex digits - -.word 0x00000000 -.word 0x00000000 +############## unknown_001050.c (.rodata) ############## .aligned_text "amSndPlay: Illegal sound effects table index\n" .aligned_text "amSndPlayDirect: Somebody tried to play illegal sound %d\n" .aligned_text "Invalid midi sequence index\n" -############## unknown_001050.c (.rodata) ############## - glabel D_800E49DC .float 60000000.0 diff --git a/lib/src/osTimer.c b/lib/src/osTimer.c index 28d038e3..cdc87fee 100644 --- a/lib/src/osTimer.c +++ b/lib/src/osTimer.c @@ -4,7 +4,8 @@ #include "macros.h" #include "libultra_internal.h" -extern OSTimer *D_800E4910; +OSTimer *D_800E4910 = (OSTimer *)0x8012D200; + extern OSTime __osCurrentTime; extern u32 __osBaseCounter; extern u32 D_8012D22C; diff --git a/lib/src/osViMgr.c b/lib/src/osViMgr.c index 98689913..36b45803 100644 --- a/lib/src/osViMgr.c +++ b/lib/src/osViMgr.c @@ -5,15 +5,14 @@ #include "macros.h" #include "libultra_internal.h" - #define OS_VIM_STACKSIZE 4096 extern OSTime __osCurrentTime; extern u32 __osBaseCounter; extern u32 D_8012D22C; //__osViIntrCount +OSDevMgr __osViDevMgr = {0}; -extern OSDevMgr __osViDevMgr; extern u8 viThreadStack[OS_VIM_STACKSIZE]; extern OSThread viThread; extern OSMesgQueue viEventQueue; diff --git a/lib/src/unknown_0C91A0.c b/lib/src/unknown_0C91A0.c index 1c3dc5bb..da476fbf 100644 --- a/lib/src/unknown_0C91A0.c +++ b/lib/src/unknown_0C91A0.c @@ -5,6 +5,8 @@ #include "types.h" #include "macros.h" +ALGlobals *alGlobals = NULL; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0C91A0/alCSPPlay.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0C91A0/alCSPStop.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0C91A0/func_800C8600.s") diff --git a/lib/src/unknown_0C9970.c b/lib/src/unknown_0C9970.c index 66f52bc3..2e1d5d6e 100644 --- a/lib/src/unknown_0C9970.c +++ b/lib/src/unknown_0C9970.c @@ -4,4 +4,6 @@ #include "types.h" #include "macros.h" +u8 D_800E3790 = 0; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0C9970/func_800C8D70.s") diff --git a/lib/src/unknown_0C9A20.c b/lib/src/unknown_0C9A20.c index 6d463f96..c63fb58a 100644 --- a/lib/src/unknown_0C9A20.c +++ b/lib/src/unknown_0C9A20.c @@ -4,4 +4,31 @@ #include "types.h" #include "macros.h" +// This probably does not belong here. Please move it to the appropriate place! +#define EQPOWER_LENGTH 128 +static s16 eqpower[ EQPOWER_LENGTH ] = { + 32767, 32764, 32757, 32744, 32727, 32704, + 32677, 32644, 32607, 32564, 32517, 32464, + 32407, 32344, 32277, 32205, 32127, 32045, + 31958, 31866, 31770, 31668, 31561, 31450, + 31334, 31213, 31087, 30957, 30822, 30682, + 30537, 30388, 30234, 30075, 29912, 29744, + 29572, 29395, 29214, 29028, 28838, 28643, + 28444, 28241, 28033, 27821, 27605, 27385, + 27160, 26931, 26698, 26461, 26220, 25975, + 25726, 25473, 25216, 24956, 24691, 24423, + 24151, 23875, 23596, 23313, 23026, 22736, + 22442, 22145, 21845, 21541, 21234, 20924, + 20610, 20294, 19974, 19651, 19325, 18997, + 18665, 18331, 17993, 17653, 17310, 16965, + 16617, 16266, 15913, 15558, 15200, 14840, + 14477, 14113, 13746, 13377, 13006, 12633, + 12258, 11881, 11503, 11122, 10740, 10357, + 9971, 9584, 9196, 8806, 8415, 8023, + 7630, 7235, 6839, 6442, 6044, 5646, + 5246, 4845, 4444, 4042, 3640, 3237, + 2833, 2429, 2025, 1620, 1216, 810, + 405, 0 +}; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0C9A20/func_800C8E20.s") diff --git a/lib/src/unknown_0CCF90.c b/lib/src/unknown_0CCF90.c index e35b6c53..3b42e9b6 100644 --- a/lib/src/unknown_0CCF90.c +++ b/lib/src/unknown_0CCF90.c @@ -8,6 +8,13 @@ GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/alMainBusParam.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/alMainBusPull.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/alSaveParam.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/alSavePull.s") + +s32 D_800E38A0 = 0; // Not sure what this is. +s32 D_800E38A4 = 62500000; // OSTime osClockRate = OS_CLOCK_RATE; +u32 D_800E38A8 = 0; // u32 __osShutdown = 0; +u32 D_800E38AC = 0x3FFF01; // u32 __OSGlobalIntMask = OS_IM_ALL; +s32 D_800E38B0 = 0; // Not sure what this is. + GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/osInitialize.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/osSetThreadPri.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CCF90/guPerspectiveF.s") diff --git a/lib/src/unknown_0CD820.c b/lib/src/unknown_0CD820.c index 0d2c9720..4adbd683 100644 --- a/lib/src/unknown_0CD820.c +++ b/lib/src/unknown_0CD820.c @@ -4,6 +4,8 @@ #include "types.h" #include "macros.h" +s32 D_800E38C0 = 0; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0CD820/func_800CCC20.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CD820/func_800CCE18.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CD820/func_800CCEE8.s") diff --git a/lib/src/unknown_0CE200.c b/lib/src/unknown_0CE200.c index d1633ac2..23bcf4eb 100644 --- a/lib/src/unknown_0CE200.c +++ b/lib/src/unknown_0CE200.c @@ -4,6 +4,8 @@ #include "types.h" #include "macros.h" +s32 D_800E38D0 = 0; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0CE200/__osSiCreateAccessQueue.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CE200/__osSiGetAccess.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0CE200/__osSiRelAccess.s") diff --git a/lib/src/unknown_0D29F0.c b/lib/src/unknown_0D29F0.c index e9de3a33..e2f6d64c 100644 --- a/lib/src/unknown_0D29F0.c +++ b/lib/src/unknown_0D29F0.c @@ -25,8 +25,13 @@ typedef struct /* 0x24 */ __OSViScale y; } __OSViContext; -extern __OSViContext *__osViCurr; -extern __OSViContext *__osViNext; +static __OSViContext vi[2] = {0}; + +__OSViContext *__osViCurr = &vi[0]; +__OSViContext *__osViNext = &vi[1]; + +#define VI_NTSC_CLOCK 48681812 +s32 osViClock = VI_NTSC_CLOCK; GLOBAL_ASM("lib/asm/non_matchings/unknown_0D29F0/func_800D1DF0.s") diff --git a/lib/src/unknown_0D3020.c b/lib/src/unknown_0D3020.c index 6cc413d8..315d60cd 100644 --- a/lib/src/unknown_0D3020.c +++ b/lib/src/unknown_0D3020.c @@ -30,4 +30,8 @@ void __osPiGetAccess(void) void __osPiRelAccess(void) { osSendMesg(&piAccessQueue, NULL, OS_MESG_NOBLOCK); -} \ No newline at end of file +} + +// Used with _Litob.s. Please move this later! +char D_800E4920[20] = "0123456789abcdef"; // lowercase hex digits +char D_800E4934[20] = "0123456789ABCDEF"; // uppercase hex digits diff --git a/lib/src/unknown_0D43F0.c b/lib/src/unknown_0D43F0.c index 468ef72c..36b95882 100644 --- a/lib/src/unknown_0D43F0.c +++ b/lib/src/unknown_0D43F0.c @@ -4,6 +4,14 @@ #include "types.h" #include "macros.h" +// Unused? Probably unrelated to this file, but not sure what it could be. +s32 D_800E48A0[8] = { 0, 0, 0, 0, 0, 0, 0, 0 }; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0D43F0/alCopy.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0D43F0/_Putfld.s") + +// Both of these are used in _Printf +char D_800E48C0[36] = " "; +char D_800E48E4[32] = "00000000000000000000000000000000"; + GLOBAL_ASM("lib/asm/non_matchings/unknown_0D43F0/_Printf.s") \ No newline at end of file diff --git a/lib/src/unknown_0D6C90.c b/lib/src/unknown_0D6C90.c index 5f57cdd4..0f3d8d2d 100644 --- a/lib/src/unknown_0D6C90.c +++ b/lib/src/unknown_0D6C90.c @@ -5,8 +5,18 @@ #include "libultra_internal.h" #include "viint.h" -extern OSThread* __osRunningThread; -extern OSThread* __RunQueue; +struct __osThreadTail +{ + OSThread *next; + OSPri priority; +} __osThreadTail; + +struct __osThreadTail __osThreadTail = {0, -1}; +OSThread *__osActiveQueue = &__osThreadTail.next; +OSThread *__RunQueue = &__osThreadTail.next; + +extern OSThread *__osRunningThread = NULL; +extern OSThread *D_800E4894 = NULL; // __osFaultedThread GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/func_800D63F0.s") diff --git a/lib/src/viint.h b/lib/src/viint.h new file mode 100644 index 00000000..74cee418 --- /dev/null +++ b/lib/src/viint.h @@ -0,0 +1,70 @@ +#ifndef _VIINT_H +#define _VIINT_H +#include "libultra_internal.h" + +#define OS_TV_TYPE_PAL 0 +#define OS_TV_TYPE_NTSC 1 +#define OS_TV_TYPE_MPAL 2 + +//TODO: figure out what this is +#define VI_STATE_01 0x01 +#define VI_STATE_XSCALE_UPDATED 0x02 +#define VI_STATE_YSCALE_UPDATED 0x04 +#define VI_STATE_08 0x08 //related to control regs changing +#define VI_STATE_10 0x10 //swap buffer +#define VI_STATE_BLACK 0x20 //probably related to a black screen +#define VI_STATE_REPEATLINE 0x40 //repeat line? +#define VI_STATE_FADE 0x80 //fade + +#define VI_CTRL_ANTIALIAS_MODE_3 0x00300 /* Bit [9:8] anti-alias mode */ +#define VI_CTRL_ANTIALIAS_MODE_2 0x00200 /* Bit [9:8] anti-alias mode */ +#define VI_CTRL_ANTIALIAS_MODE_1 0x00100 /* Bit [9:8] anti-alias mode */ + +#define VI_SCALE_MASK 0xfff //see rcp scale_x/scale_y +#define VI_2_10_FPART_MASK 0x3ff +#define VI_SUBPIXEL_SH 0x10 + +#define BURST(hsync_width, color_width, vsync_width, color_start) \ + (hsync_width | (color_width << 8) | (vsync_width << 16) | (color_start << 20)) +#define WIDTH(v) v +#define VSYNC(v) v +#define HSYNC(duration, leap) (duration | (leap << 16)) +#define LEAP(upper, lower) ((upper << 16) | lower) +#define START(start, end) ((start << 16) | end) + +#define FTOFIX(val, i, f) ((u32)(val * (f32)(1 << f)) & ((1 << (i + f)) - 1)) + +#define F210(val) FTOFIX(val, 2, 10) +#define SCALE(scaleup, off) (F210((1.0f / (f32)scaleup)) | (F210((f32)off) << 16)) + +#define VCURRENT(v) v //seemingly unused +#define ORIGIN(v) v +#define VINTR(v) v +#define HSTART START + +typedef struct +{ + /* 0x0 */ f32 factor; + /* 0x4 */ u16 offset; + /* 0x8 */ u32 scale; +} __OSViScale; + +typedef struct +{ + /* 0x0 */ u16 state; + /* 0x2 */ u16 retraceCount; + /* 0x4 */ void *framep; + /* 0x8 */ OSViMode *modep; + /* 0xC */ u32 control; + /* 0x10 */ OSMesgQueue *msgq; + /* 0x14 */ OSMesg msg; + /* 0x18 */ __OSViScale x; + /* 0x24 */ __OSViScale y; +} __OSViContext; + +void __osViSwapContext(void); +extern __OSViContext *__osViCurr; +extern __OSViContext *__osViNext; +__OSViContext *__osViGetCurrentContext(void); +void __osViInit(void); +#endif diff --git a/lib/src/vitbl.c b/lib/src/vitbl.c new file mode 100644 index 00000000..cae312c5 --- /dev/null +++ b/lib/src/vitbl.c @@ -0,0 +1,1602 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1991 */ + +// The RAM_POS above is just a hack to put it after osViMgr.c + +#include "libultra_internal.h" +#include "viint.h" + +/* + * Video Interface (VI) mode type + */ +#define OS_VI_NTSC_LPN1 0 /* NTSC */ +#define OS_VI_NTSC_LPF1 1 +#define OS_VI_NTSC_LAN1 2 +#define OS_VI_NTSC_LAF1 3 +#define OS_VI_NTSC_LPN2 4 +#define OS_VI_NTSC_LPF2 5 +#define OS_VI_NTSC_LAN2 6 +#define OS_VI_NTSC_LAF2 7 +#define OS_VI_NTSC_HPN1 8 +#define OS_VI_NTSC_HPF1 9 +#define OS_VI_NTSC_HAN1 10 +#define OS_VI_NTSC_HAF1 11 +#define OS_VI_NTSC_HPN2 12 +#define OS_VI_NTSC_HPF2 13 + +#define OS_VI_PAL_LPN1 14 /* PAL */ +#define OS_VI_PAL_LPF1 15 +#define OS_VI_PAL_LAN1 16 +#define OS_VI_PAL_LAF1 17 +#define OS_VI_PAL_LPN2 18 +#define OS_VI_PAL_LPF2 19 +#define OS_VI_PAL_LAN2 20 +#define OS_VI_PAL_LAF2 21 +#define OS_VI_PAL_HPN1 22 +#define OS_VI_PAL_HPF1 23 +#define OS_VI_PAL_HAN1 24 +#define OS_VI_PAL_HAF1 25 +#define OS_VI_PAL_HPN2 26 +#define OS_VI_PAL_HPF2 27 + +#define OS_VI_MPAL_LPN1 28 /* MPAL - mainly Brazil */ +#define OS_VI_MPAL_LPF1 29 +#define OS_VI_MPAL_LAN1 30 +#define OS_VI_MPAL_LAF1 31 +#define OS_VI_MPAL_LPN2 32 +#define OS_VI_MPAL_LPF2 33 +#define OS_VI_MPAL_LAN2 34 +#define OS_VI_MPAL_LAF2 35 +#define OS_VI_MPAL_HPN1 36 +#define OS_VI_MPAL_HPF1 37 +#define OS_VI_MPAL_HAN1 38 +#define OS_VI_MPAL_HAF1 39 +#define OS_VI_MPAL_HPN2 40 +#define OS_VI_MPAL_HPF2 41 + +/* + * Video Interface (VI) special features + */ +#define OS_VI_GAMMA_ON 0x0001 +#define OS_VI_GAMMA_OFF 0x0002 +#define OS_VI_GAMMA_DITHER_ON 0x0004 +#define OS_VI_GAMMA_DITHER_OFF 0x0008 +#define OS_VI_DIVOT_ON 0x0010 +#define OS_VI_DIVOT_OFF 0x0020 +#define OS_VI_DITHER_FILTER_ON 0x0040 +#define OS_VI_DITHER_FILTER_OFF 0x0080 + +/* + * Video Interface (VI) mode attribute bit + */ +#define OS_VI_BIT_NONINTERLACE 0x0001 /* lo-res */ +#define OS_VI_BIT_INTERLACE 0x0002 /* lo-res */ +#define OS_VI_BIT_NORMALINTERLACE 0x0004 /* hi-res */ +#define OS_VI_BIT_DEFLICKINTERLACE 0x0008 /* hi-res */ +#define OS_VI_BIT_ANTIALIAS 0x0010 +#define OS_VI_BIT_POINTSAMPLE 0x0020 +#define OS_VI_BIT_16PIXEL 0x0040 +#define OS_VI_BIT_32PIXEL 0x0080 +#define OS_VI_BIT_LORES 0x0100 +#define OS_VI_BIT_HIRES 0x0200 +#define OS_VI_BIT_NTSC 0x0400 +#define OS_VI_BIT_PAL 0x0800 + +// osViModeTable +OSViMode D_800E3900[42] = { + {OS_VI_NTSC_LPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(525), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_ANTIALIAS_MODE_1 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(525), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(525), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LAN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(525), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_LAF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_NTSC_HPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 34, 5, 62), //burst + VSYNC(524), //vSync + HSYNC(3093, 0), //hSync + LEAP(3093, 3093), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(625), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_ANTIALIAS_MODE_1 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(625), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(625), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LAN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(625), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_LAF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(640), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(1, 0), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_PAL_HPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(58, 35, 4, 64), //burst + VSYNC(624), //vSync + HSYNC(3177, 21), //hSync + LEAP(3183, 3182), //leap + HSTART(128, 768), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(93, 567), //vStart + BURST(107, 2, 9, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(0.5, 0.5), //yScale + HSTART(95, 569), //vStart + BURST(105, 2, 13, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(525), //vSync + HSYNC(3089, 4), //hSync + LEAP(3097, 3098), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_ANTIALIAS_MODE_1 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(525), //vSync + HSYNC(3089, 4), //hSync + LEAP(3097, 3098), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(640), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(640), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(525), //vSync + HSYNC(3089, 4), //hSync + LEAP(3097, 3098), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LAN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(525), //vSync + HSYNC(3089, 4), //hSync + LEAP(3097, 3098), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_LAF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(320), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(2, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0.25), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(1280), //origin + SCALE(1, 0.75), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HPN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HPF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HAN1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HAF1, //type + { + //comRegs + VI_CTRL_TYPE_16 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_DIVOT_ON | + VI_CTRL_SERRATE_ON | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(1280), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HPN2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_3 | + 0x3000, //ctrl + WIDTH(1280), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(1, 0), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(1, 0), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, + {OS_VI_MPAL_HPF2, //type + { + //comRegs + VI_CTRL_TYPE_32 | + VI_CTRL_GAMMA_DITHER_ON | + VI_CTRL_GAMMA_ON | + VI_CTRL_SERRATE_ON | + VI_CTRL_ANTIALIAS_MODE_2 | + 0x3000, //ctrl + WIDTH(640), //width + BURST(57, 30, 5, 70), //burst + VSYNC(524), //vSync + HSYNC(3088, 0), //hSync + LEAP(3100, 3100), //leap + HSTART(108, 748), //hStart + SCALE(1, 0), //xScale + VCURRENT(0), //vCurrent + }, + {//fldRegs + { + //[0] + ORIGIN(2560), //origin + SCALE(0.5, 0.5), //yScale + HSTART(35, 509), //vStart + BURST(2, 2, 11, 0), //vBurst + VINTR(2), //vIntr + }, + { + //[1] + ORIGIN(5120), //origin + SCALE(0.5, 0.5), //yScale + HSTART(37, 511), //vStart + BURST(4, 2, 14, 0), //vBurst + VINTR(2), //vIntr + }}}, +}; + + +// TODO: Convert the following arrays into OSViMode structs. + +s32 D_800E4620[20] = { + 0x00000000, 0x0000320E, 0x00000140, 0x03E52239, + 0x0000020D, 0x00000C15, 0x0C150C15, 0x006C02EC, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x002501FF, 0x000E0204, 0x00000002, 0x00000280, + 0x00000400, 0x002501FF, 0x000E0204, 0x00000002 +}; + +s32 D_800E4670[20] = { + 0x0E000000, 0x0000320E, 0x00000140, 0x0404233A, + 0x00000271, 0x00150C69, 0x0C6F0C6E, 0x00800300, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x005F0239, 0x0009026B, 0x00000002, 0x00000280, + 0x00000400, 0x005F0239, 0x0009026B, 0x00000002 +}; + +s32 D_800E46C0[20] = { + 0x1C000000, 0x0000320E, 0x00000140, 0x04651E39, + 0x0000020D, 0x00040C11, 0x0C190C1A, 0x006C02EC, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x002501FF, 0x000E0204, 0x00000002, 0x00000280, + 0x00000400, 0x002501FF, 0x000E0204, 0x00000002 +}; + +s32 D_800E4710[20] = { + 0x02000000, 0x0000311E, 0x00000140, 0x03E52239, + 0x0000020D, 0x00000C15, 0x0C150C15, 0x006C02EC, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x002501FF, 0x000E0204, 0x00000002, 0x00000280, + 0x00000400, 0x002501FF, 0x000E0204, 0x00000002 +}; + +s32 D_800E4760[20] = { + 0x10000000, 0x0000311E, 0x00000140, 0x0404233A, + 0x00000271, 0x00150C69, 0x0C6F0C6E, 0x00800300, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x005F0239, 0x0009026B, 0x00000002, 0x00000280, + 0x00000400, 0x005F0239, 0x0009026B, 0x00000002 +}; + +s32 D_800E47B0[20] = { + 0x1E000000, 0x0000311E, 0x00000140, 0x04651E39, + 0x0000020D, 0x00040C11, 0x0C190C1A, 0x006C02EC, + 0x00000200, 0x00000000, 0x00000280, 0x00000400, + 0x002501FF, 0x000E0204, 0x00000002, 0x00000280, + 0x00000400, 0x002501FF, 0x000E0204, 0x00000002 +}; + +// This needs to be moved. +u32 __osPiAccessQueueEnabled = 0; diff --git a/src/unknown_0C7F50.c b/src/unknown_0C7F50.c index dc0f66d3..d0adc4bc 100644 --- a/src/unknown_0C7F50.c +++ b/src/unknown_0C7F50.c @@ -5,16 +5,24 @@ #include "macros.h" #include "libultra_internal.h" -extern s32 D_800E3770; // boolean -extern s32 D_800E3774; -extern s32 D_800E3778; -extern s32 D_800E377C; +/************ .data ************/ + +s32 D_800E3770 = 0; +s32 D_800E3774 = -1; +s32 D_800E3778 = -1; +s32 D_800E377C = 0; + +/*******************************/ + +/************ .bss ************/ extern OSMesgQueue D_8012ACA0; extern OSMesg D_8012ACB8; extern OSThread D_8012AAF0; extern void *D_8012CCC0; +/*****************************/ + void func_800C74A0(void *arg); void func_800C7350(void) { diff --git a/tools/python/generate_ld.py b/tools/python/generate_ld.py index 5710b279..6a76781f 100644 --- a/tools/python/generate_ld.py +++ b/tools/python/generate_ld.py @@ -19,6 +19,12 @@ LIB_ASM_DIR = ROOT_DIR + '/lib/asm' LIB_SRC_DIR = ROOT_DIR + '/lib/src' BUILD_DIR = 'build/' + VERSION +LATE_DATA_FILES = [ + BUILD_DIR + '/lib/src/unknown_0D43F0.o', + BUILD_DIR + '/lib/src/osTimer.o', + BUILD_DIR + '/lib/src/unknown_0D3020.o' +] + class GenerateLD: def __init__(self, file): print('Generating linker file...') @@ -76,7 +82,10 @@ class GenerateLD: self.gen_line('.main_data . : AT(romPos) SUBALIGN(16)') self.gen_open_block() for file in self.files: - self.gen_line(file[0] + '(.data);') + if file[0] not in LATE_DATA_FILES: + self.gen_line(file[0] + '(.data);') + for file in LATE_DATA_FILES: + self.gen_line(file + '(.data);') self.gen_line(BUILD_DIR + '/data/dkr.data.o(.data);') self.gen_close_block() self.gen_line('romPos += SIZEOF(.main_data);')