mirror of
https://github.com/Xeeynamo/sotn-decomp.git
synced 2025-02-20 05:02:14 +00:00
parent
22c86430ea
commit
2d2eb200f1
@ -29,11 +29,24 @@ segments:
|
||||
subalign: 4
|
||||
subsegments:
|
||||
- [0x800, rodata]
|
||||
- [0x874, rodata]
|
||||
- [0x874, rodata] # jpt_80011B20
|
||||
- [0x8F8, rodata]
|
||||
- [0xA10, .rodata, psxsdk/libgpu/sys]
|
||||
- [0xB60, rodata]
|
||||
- [0xC94, rodata]
|
||||
- [0xC94, rodata] # jpt_800163F4
|
||||
- [0xD48, rodata]
|
||||
- [0xEB4, rodata]
|
||||
- [0xF18, rodata] # jpt_80019DE8
|
||||
- [0xF2C, rodata]
|
||||
- [0x1260, rodata] # jpt_8001DE24
|
||||
- [0x1448, rodata] # jpt_8001EECC
|
||||
- [0x14A8, rodata] # jpt_8001EFB8
|
||||
- [0x14D4, .rodata, psxsdk/libsnd/sstick] # jpt_80020818, SsSetTickMode
|
||||
- [0x14EC, rodata]
|
||||
- [0x1574, rodata] # jpt_8002A518
|
||||
- [0x1594, rodata] # jpt_8002A5E8
|
||||
- [0x15B4, rodata] # jpt_8002ADFC
|
||||
- [0x15D4, rodata] # jpt_8002AEC4
|
||||
- [0x15F4, asm, psxsdk/2mbyte]
|
||||
- [0x16B8, c, main]
|
||||
- [0x192C, c, psxsdk/libgpu/ext]
|
||||
@ -242,3 +255,4 @@ segments:
|
||||
- [0x1BB88, c, psxsdk/libspu/sr_gaks]
|
||||
- [0x1BCE0, data]
|
||||
- [0x89800]
|
||||
|
||||
|
@ -1,3 +1,71 @@
|
||||
#include "common.h"
|
||||
|
||||
INCLUDE_ASM("asm/us/main/nonmatchings/psxsdk/libsnd/sstick", SsSetTickMode);
|
||||
s32 GetVideoMode();
|
||||
extern s32 D_80032EF4;
|
||||
extern s32 VBLANK_MINUS;
|
||||
extern s32 snd_seq_tick_env;
|
||||
|
||||
void SsSetTickMode(s32 tick_mode) {
|
||||
s32 videoMode;
|
||||
s32 var_v0;
|
||||
|
||||
videoMode = GetVideoMode();
|
||||
if (tick_mode & 0x1000) {
|
||||
D_80032EF4 = 1;
|
||||
snd_seq_tick_env = tick_mode & 0xFFF;
|
||||
} else {
|
||||
D_80032EF4 = 0;
|
||||
snd_seq_tick_env = tick_mode;
|
||||
}
|
||||
if (snd_seq_tick_env < 6) {
|
||||
switch (snd_seq_tick_env) {
|
||||
case 4:
|
||||
VBLANK_MINUS = 0x32;
|
||||
if (videoMode != 1) {
|
||||
snd_seq_tick_env = 0x32;
|
||||
return;
|
||||
}
|
||||
snd_seq_tick_env = 5;
|
||||
return;
|
||||
case 1:
|
||||
var_v0 = 0x3C;
|
||||
VBLANK_MINUS = 0x3C;
|
||||
if (videoMode == 0) {
|
||||
var_v0 = 5;
|
||||
}
|
||||
snd_seq_tick_env = var_v0;
|
||||
return;
|
||||
case 3:
|
||||
VBLANK_MINUS = 0x78;
|
||||
return;
|
||||
case 2:
|
||||
VBLANK_MINUS = 0xF0;
|
||||
return;
|
||||
case 5:
|
||||
switch (videoMode) {
|
||||
case 1:
|
||||
VBLANK_MINUS = 0x32;
|
||||
return;
|
||||
default:
|
||||
case 0:
|
||||
VBLANK_MINUS = 0x3C;
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 0:
|
||||
if (videoMode != 0) {
|
||||
if (videoMode == 1) {
|
||||
VBLANK_MINUS = 0x32;
|
||||
return;
|
||||
}
|
||||
}
|
||||
VBLANK_MINUS = 0x3C;
|
||||
return;
|
||||
default:
|
||||
VBLANK_MINUS = 0x3C;
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
VBLANK_MINUS = snd_seq_tick_env;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user