diff --git a/Makefile b/Makefile index 70cfc4df6d..cfaf3d3449 100644 --- a/Makefile +++ b/Makefile @@ -362,7 +362,7 @@ ifeq ($(DEBUG_FEATURES),1) GBI_DEFINES += -DGBI_DEBUG endif -CPPFLAGS += -P -xc -fno-dollars-in-identifiers $(CPP_DEFINES) +CPPFLAGS += -P -xc -fno-dollars-in-identifiers $(CPP_DEFINES) $(GBI_DEFINES) ASFLAGS += -march=vr4300 -32 -no-pad-sections -Iinclude -I$(EXTRACTED_DIR) ifeq ($(COMPILER),gcc) diff --git a/baseroms/ntsc-1.0/config.yml b/baseroms/ntsc-1.0/config.yml index 948bbd179a..e164590c39 100644 --- a/baseroms/ntsc-1.0/config.yml +++ b/baseroms/ntsc-1.0/config.yml @@ -16,7 +16,7 @@ incbins: segment: code vram: 0x800E2FC0 size: 0xFB0 - - name: gspF3DZEX2_NoN_PosLight_fifoText + - name: gspF3DZEX2_NoN_fifoText segment: code vram: 0x800E3F70 size: 0x1390 @@ -32,7 +32,7 @@ incbins: segment: code vram: 0x801142E0 size: 0x2E0 - - name: gspF3DZEX2_NoN_PosLight_fifoData + - name: gspF3DZEX2_NoN_fifoData segment: code vram: 0x801145C0 size: 0x420 diff --git a/baseroms/ntsc-1.1/config.yml b/baseroms/ntsc-1.1/config.yml index 2317ae2dac..ee27b55df9 100644 --- a/baseroms/ntsc-1.1/config.yml +++ b/baseroms/ntsc-1.1/config.yml @@ -16,7 +16,7 @@ incbins: segment: code vram: 0x800E3180 size: 0xFB0 - - name: gspF3DZEX2_NoN_PosLight_fifoText + - name: gspF3DZEX2_NoN_fifoText segment: code vram: 0x800E4130 size: 0x1390 @@ -32,7 +32,7 @@ incbins: segment: code vram: 0x801144A0 size: 0x2E0 - - name: gspF3DZEX2_NoN_PosLight_fifoData + - name: gspF3DZEX2_NoN_fifoData segment: code vram: 0x80114780 size: 0x420 diff --git a/baseroms/ntsc-1.2/config.yml b/baseroms/ntsc-1.2/config.yml index 6fc7896db0..b0c8b18bee 100644 --- a/baseroms/ntsc-1.2/config.yml +++ b/baseroms/ntsc-1.2/config.yml @@ -16,7 +16,7 @@ incbins: segment: code vram: 0x800E3600 size: 0xFB0 - - name: gspF3DZEX2_NoN_PosLight_fifoText + - name: gspF3DZEX2_NoN_fifoText segment: code vram: 0x800E45B0 size: 0x1390 @@ -32,7 +32,7 @@ incbins: segment: code vram: 0x80114990 size: 0x2E0 - - name: gspF3DZEX2_NoN_PosLight_fifoData + - name: gspF3DZEX2_NoN_fifoData segment: code vram: 0x80114C70 size: 0x420 diff --git a/baseroms/pal-1.0/config.yml b/baseroms/pal-1.0/config.yml index 37ffb7500b..d9bfda781c 100644 --- a/baseroms/pal-1.0/config.yml +++ b/baseroms/pal-1.0/config.yml @@ -13,7 +13,7 @@ incbins: segment: code vram: 0x800E0F10 size: 0xFB0 - - name: gspF3DZEX2_NoN_PosLight_fifoText + - name: gspF3DZEX2_NoN_fifoText segment: code vram: 0x800E1EC0 size: 0x1390 @@ -37,7 +37,7 @@ incbins: segment: code vram: 0x801120E0 size: 0x2E0 - - name: gspF3DZEX2_NoN_PosLight_fifoData + - name: gspF3DZEX2_NoN_fifoData segment: code vram: 0x801123C0 size: 0x420 diff --git a/baseroms/pal-1.1/config.yml b/baseroms/pal-1.1/config.yml index 45bf82b877..6de560bcca 100644 --- a/baseroms/pal-1.1/config.yml +++ b/baseroms/pal-1.1/config.yml @@ -13,7 +13,7 @@ incbins: segment: code vram: 0x800E0F50 size: 0xFB0 - - name: gspF3DZEX2_NoN_PosLight_fifoText + - name: gspF3DZEX2_NoN_fifoText segment: code vram: 0x800E1F00 size: 0x1390 @@ -37,7 +37,7 @@ incbins: segment: code vram: 0x80112120 size: 0x2E0 - - name: gspF3DZEX2_NoN_PosLight_fifoData + - name: gspF3DZEX2_NoN_fifoData segment: code vram: 0x80112400 size: 0x420 diff --git a/data/rsp.rodata.s b/data/rsp.rodata.s index 6688f7c627..e60c522133 100644 --- a/data/rsp.rodata.s +++ b/data/rsp.rodata.s @@ -13,15 +13,19 @@ glabel aspMainDataStart .incbin "incbin/aspMainData" glabel aspMainDataEnd -#if !PLATFORM_N64 +#ifndef F3DEX_GBI_PL +glabel gspF3DZEX2_NoN_fifoDataStart + .incbin "incbin/gspF3DZEX2_NoN_fifoData" +glabel gspF3DZEX2_NoN_fifoDataEnd +#else glabel gspF3DZEX2_NoN_PosLight_fifoTextStart .incbin "incbin/gspF3DZEX2_NoN_PosLight_fifoText" glabel gspF3DZEX2_NoN_PosLight_fifoTextEnd -#endif glabel gspF3DZEX2_NoN_PosLight_fifoDataStart .incbin "incbin/gspF3DZEX2_NoN_PosLight_fifoData" glabel gspF3DZEX2_NoN_PosLight_fifoDataEnd +#endif glabel gspS2DEX2d_fifoDataStart .incbin "incbin/gspS2DEX2d_fifoData" diff --git a/data/rsp.text.s b/data/rsp.text.s index a40252853a..34033443b8 100644 --- a/data/rsp.text.s +++ b/data/rsp.text.s @@ -13,10 +13,10 @@ glabel aspMainTextStart .incbin "incbin/aspMainText" glabel aspMainTextEnd -#if PLATFORM_N64 -glabel gspF3DZEX2_NoN_PosLight_fifoTextStart - .incbin "incbin/gspF3DZEX2_NoN_PosLight_fifoText" -glabel gspF3DZEX2_NoN_PosLight_fifoTextEnd +#ifndef F3DEX_GBI_PL +glabel gspF3DZEX2_NoN_fifoTextStart + .incbin "incbin/gspF3DZEX2_NoN_fifoText" +glabel gspF3DZEX2_NoN_fifoTextEnd #endif glabel gspS2DEX2d_fifoTextStart diff --git a/include/ultra64/ucode.h b/include/ultra64/ucode.h index 9265c882b6..dfd0e08e2e 100644 --- a/include/ultra64/ucode.h +++ b/include/ultra64/ucode.h @@ -17,8 +17,13 @@ extern u64 cic6105TextStart[], cic6105TextEnd[]; extern u64 aspMainTextStart[], aspMainTextEnd[]; extern u64 aspMainDataStart[], aspMainDataEnd[]; +#ifndef F3DEX_GBI_PL +extern u64 gspF3DZEX2_NoN_fifoTextStart[], gspF3DZEX2_NoN_fifoTextEnd[]; +extern u64 gspF3DZEX2_NoN_fifoDataStart[], gspF3DZEX2_NoN_fifoDataEnd[]; +#else extern u64 gspF3DZEX2_NoN_PosLight_fifoTextStart[], gspF3DZEX2_NoN_PosLight_fifoTextEnd[]; extern u64 gspF3DZEX2_NoN_PosLight_fifoDataStart[], gspF3DZEX2_NoN_PosLight_fifoDataEnd[]; +#endif extern u64 gspS2DEX2d_fifoTextStart[], gspS2DEX2d_fifoTextEnd[]; extern u64 gspS2DEX2d_fifoDataStart[], gspS2DEX2d_fifoDataEnd[]; diff --git a/src/code/graph.c b/src/code/graph.c index c6b5f3cb61..826dd71c08 100644 --- a/src/code/graph.c +++ b/src/code/graph.c @@ -50,13 +50,21 @@ OSTime sGraphPrevTaskTimeStart; FaultClient sGraphFaultClient; UCodeInfo D_8012D230[3] = { +#ifndef F3DEX_GBI_PL + { UCODE_TYPE_F3DZEX, gspF3DZEX2_NoN_fifoTextStart }, +#else { UCODE_TYPE_F3DZEX, gspF3DZEX2_NoN_PosLight_fifoTextStart }, +#endif { UCODE_TYPE_UNK, NULL }, { UCODE_TYPE_S2DEX, gspS2DEX2d_fifoTextStart }, }; UCodeInfo D_8012D248[3] = { +#ifndef F3DEX_GBI_PL + { UCODE_TYPE_F3DZEX, gspF3DZEX2_NoN_fifoTextStart }, +#else { UCODE_TYPE_F3DZEX, gspF3DZEX2_NoN_PosLight_fifoTextStart }, +#endif { UCODE_TYPE_UNK, NULL }, { UCODE_TYPE_S2DEX, gspS2DEX2d_fifoTextStart }, }; @@ -81,7 +89,11 @@ void Graph_DisassembleUCode(Gfx* workBuf) { disassembler.enableLog = R_UCODE_DISAS_LOG_LEVEL; UCodeDisas_RegisterUCode(&disassembler, ARRAY_COUNT(D_8012D230), D_8012D230); +#ifndef F3DEX_GBI_PL + UCodeDisas_SetCurUCode(&disassembler, gspF3DZEX2_NoN_fifoTextStart); +#else UCodeDisas_SetCurUCode(&disassembler, gspF3DZEX2_NoN_PosLight_fifoTextStart); +#endif UCodeDisas_Disassemble(&disassembler, workBuf); @@ -120,7 +132,11 @@ void Graph_UCodeFaultClient(Gfx* workBuf) { UCodeDisas_Init(&disassembler); disassembler.enableLog = true; UCodeDisas_RegisterUCode(&disassembler, ARRAY_COUNT(D_8012D248), D_8012D248); +#ifndef F3DEX_GBI_PL + UCodeDisas_SetCurUCode(&disassembler, gspF3DZEX2_NoN_fifoTextStart); +#else UCodeDisas_SetCurUCode(&disassembler, gspF3DZEX2_NoN_PosLight_fifoTextStart); +#endif UCodeDisas_Disassemble(&disassembler, workBuf); UCodeDisas_Destroy(&disassembler); } diff --git a/src/code/sys_ucode.c b/src/code/sys_ucode.c index 71ae003909..d1e6098026 100644 --- a/src/code/sys_ucode.c +++ b/src/code/sys_ucode.c @@ -1,8 +1,13 @@ #include "ultra64.h" #include "sys_ucode.h" +#ifndef F3DEX_GBI_PL +u64* sDefaultGSPUCodeText = gspF3DZEX2_NoN_fifoTextStart; +u64* sDefaultGSPUCodeData = gspF3DZEX2_NoN_fifoDataStart; +#else u64* sDefaultGSPUCodeText = gspF3DZEX2_NoN_PosLight_fifoTextStart; u64* sDefaultGSPUCodeData = gspF3DZEX2_NoN_PosLight_fifoDataStart; +#endif u64* SysUcode_GetUCodeBoot(void) { return rspbootTextStart; diff --git a/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c b/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c index e3de734e45..5401b389d2 100644 --- a/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c +++ b/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c @@ -26,8 +26,8 @@ #include "assets/objects/gameplay_keep/shadow_circle.h" #include "assets/objects/object_tw/object_tw.h" -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0" \ - "ique-cn:0 ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0" +#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:128" \ + "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0" #define FLAGS \ (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \