mirror of https://github.com/zeldaret/mm.git
Transfer osViModes to C files (#438)
* Transfer osViModes to C files * Finish spec * Import data to and Improve vi.c * spec, again * Format * Use defines for the types
This commit is contained in:
parent
29746156af
commit
304bfa443e
|
@ -81,7 +81,7 @@ extern float D_80097F90;
|
|||
// extern UNK_TYPE4 D_80097FB0;
|
||||
extern OSViMode osViModeNtscLan1;
|
||||
extern OSViMode osViModeMpalLan1;
|
||||
extern __OSViContext D_80098060[2];
|
||||
// extern __OSViContext D_80098060[2];
|
||||
extern __OSViContext* __osViCurr;
|
||||
extern __OSViContext* __osViNext;
|
||||
// extern UNK_TYPE4 D_800980D0;
|
||||
|
|
6
spec
6
spec
|
@ -61,7 +61,8 @@ beginseg
|
|||
include "build/data/boot/setintmask.rodata.o"
|
||||
include "build/asm/boot/getintmask.text.o"
|
||||
include "build/src/libultra/voice/voicesetword.o"
|
||||
include "build/data/boot/vimodeHpf.data.o"
|
||||
include "build/src/libultra/io/osViModeNtscHpf1.o"
|
||||
include "build/src/libultra/io/osViModePalLan1.o"
|
||||
include "build/asm/boot/guScale.text.o"
|
||||
include "build/src/libultra/gu/sinf.o"
|
||||
include "build/src/libultra/gu/sins.o"
|
||||
|
@ -179,8 +180,9 @@ beginseg
|
|||
include "build/src/libultra/io/pfsdeletefile.o"
|
||||
include "build/src/libultra/gu/ortho.o"
|
||||
include "build/asm/boot/interrupt.text.o"
|
||||
include "build/src/libultra/io/osViModeNtscLan1.o"
|
||||
include "build/src/libultra/io/osViModeMpalLan1.o"
|
||||
include "build/src/libultra/io/vi.o"
|
||||
include "build/data/boot/vi.data.o"
|
||||
include "build/src/libultra/io/viswapcontext.o"
|
||||
include "build/src/libultra/io/pigetcmdq.o"
|
||||
include "build/src/libultra/gu/cosf.o"
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
#include "global.h"
|
||||
|
||||
OSViMode osViModeMpalLan1 = {
|
||||
OS_VI_MPAL_LAN1, // type
|
||||
{
|
||||
// comRegs
|
||||
0x311E, // ctrl
|
||||
SCREEN_WIDTH, // width
|
||||
0x4651E39, // burst
|
||||
0x20D, // vSync
|
||||
0x40C11, // hSync
|
||||
0xC190C1A, // leap
|
||||
0x6C02EC, // hStart
|
||||
0x200, // xScale
|
||||
0, // vCurrent
|
||||
},
|
||||
{ // fldRegs
|
||||
{
|
||||
// [0]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x2501FF, // vStart
|
||||
0xE0204, // vBurst
|
||||
2, // vIntr
|
||||
},
|
||||
{
|
||||
// [1]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x2501FF, // vStart
|
||||
0xE0204, // vBurst
|
||||
2, // vIntr
|
||||
} },
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
#include "global.h"
|
||||
|
||||
OSViMode osViModeNtscHpf1 = {
|
||||
OS_VI_NTSC_HPF1, // type
|
||||
{
|
||||
// comRegs
|
||||
0x324E, // ctrl
|
||||
640, // width
|
||||
0x3E52239, // burst
|
||||
0x20C, // vSync
|
||||
0xC15, // hSync
|
||||
0xC150C15, // leap
|
||||
0x6C02EC, // hStart
|
||||
0x400, // xScale
|
||||
0, // vCurrent
|
||||
},
|
||||
{ // fldRegs
|
||||
{
|
||||
// [0]
|
||||
0x500, // origin
|
||||
0x2000800, // yScale
|
||||
0x2301FD, // vStart
|
||||
0xE0204, // vBurst
|
||||
2, // vIntr
|
||||
},
|
||||
{
|
||||
// [1]
|
||||
0xA00, // origin
|
||||
0x2000800, // yScale
|
||||
0x2501FF, // vStart
|
||||
0xE0204, // vBurst
|
||||
2 // vIntr
|
||||
} },
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
#include "global.h"
|
||||
|
||||
OSViMode osViModeNtscLan1 = {
|
||||
OS_VI_NTSC_LAN1, // type
|
||||
{
|
||||
// comRegs
|
||||
0x311E, // ctrl
|
||||
SCREEN_WIDTH, // width
|
||||
0x3E52239, // burst
|
||||
0x20D, // vSync
|
||||
0xC15, // hSync
|
||||
0xC150C15, // leap
|
||||
0x6C02EC, // hStart
|
||||
0x200, // xScale
|
||||
0, // vCurrent
|
||||
},
|
||||
{ // fldRegs
|
||||
{
|
||||
// [0]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x2501FF, // vStart
|
||||
0xE0204, // vBurst
|
||||
2, // vIntr
|
||||
},
|
||||
{
|
||||
// [1]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x2501FF, // vStart
|
||||
0xE0204, // vBurst
|
||||
2, // vIntr
|
||||
} },
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
#include "global.h"
|
||||
|
||||
OSViMode osViModePalLan1 = {
|
||||
OS_VI_PAL_LAN1, // type
|
||||
{
|
||||
// comRegs
|
||||
0x311E, // ctrl
|
||||
SCREEN_WIDTH, // width
|
||||
0x4541E3A, // burst
|
||||
0x271, // vSync
|
||||
0x170C69, // hSync
|
||||
0xC6F0C6D, // leap
|
||||
0x800300, // hStart
|
||||
0x200, // xScale
|
||||
0, // vCurrent
|
||||
},
|
||||
{ // fldRegs
|
||||
{
|
||||
// [0]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x5F0239, // vStart
|
||||
0x9026B, // vBurst
|
||||
2, // vIntr
|
||||
},
|
||||
{
|
||||
// [1]
|
||||
0x280, // origin
|
||||
0x400, // yScale
|
||||
0x5F0239, // vStart
|
||||
0x9026B, // vBurst
|
||||
2 // vIntr
|
||||
} },
|
||||
};
|
|
@ -1,5 +1,9 @@
|
|||
#include "global.h"
|
||||
|
||||
__OSViContext D_80098060[2] = { 0 };
|
||||
__OSViContext* __osViCurr = &D_80098060[0];
|
||||
__OSViContext* __osViNext = &D_80098060[1];
|
||||
|
||||
void __osViInit(void) {
|
||||
bzero(D_80098060, sizeof(D_80098060));
|
||||
__osViCurr = &D_80098060[0];
|
||||
|
@ -9,9 +13,9 @@ void __osViInit(void) {
|
|||
__osViNext->buffer = (void*)0x80000000;
|
||||
__osViCurr->buffer = (void*)0x80000000;
|
||||
|
||||
if (osTvType == 0) {
|
||||
if (osTvType == OS_TV_PAL) {
|
||||
__osViNext->modep = &osViModePalLan1;
|
||||
} else if (osTvType == 2) {
|
||||
} else if (osTvType == OS_TV_MPAL) {
|
||||
__osViNext->modep = &osViModeMpalLan1;
|
||||
} else {
|
||||
__osViNext->modep = &osViModeNtscLan1;
|
||||
|
@ -20,10 +24,9 @@ void __osViInit(void) {
|
|||
__osViNext->state = 0x20;
|
||||
__osViNext->features = __osViNext->modep->comRegs.ctrl;
|
||||
|
||||
while (*(vu32*)0xA4400010 > 10) {
|
||||
;
|
||||
}
|
||||
*(vu32*)0xA4400000 = 0;
|
||||
while (HW_REG(VI_CURRENT_REG, u32) > 10) {}
|
||||
|
||||
HW_REG(VI_STATUS_REG, u32) = 0;
|
||||
|
||||
__osViSwapContext();
|
||||
}
|
||||
|
|
|
@ -259,7 +259,8 @@
|
|||
0x80097500 : "boot_800862E0",
|
||||
0x80097520 : "fp",
|
||||
0x80097530 : "rand",
|
||||
0x80097540 : "vimodeHpf",
|
||||
0x80097540 : "osViModeNtscHpf1",
|
||||
0x80097590 : "osViModePalLan1",
|
||||
0x800975E0 : "sins",
|
||||
0x80097DE0 : "exceptasm",
|
||||
0x80097E10 : "thread",
|
||||
|
@ -276,7 +277,9 @@
|
|||
0x80097F90 : "rotate",
|
||||
0x80097FA0 : "voiceinit",
|
||||
0x80097FB0 : "contramread",
|
||||
0x80097FC0 : "vi",
|
||||
0x80097FC0 : "osViModeNtscLan1",
|
||||
0x80097FC0 : "osViModeMpalLan1",
|
||||
0x80098060 : "vi",
|
||||
0x800980D0 : "cartrominit",
|
||||
0x800980E0 : "guS2DInitBg",
|
||||
0x80098130 : "xldtob",
|
||||
|
|
Loading…
Reference in New Issue