Files
Microtransactions64/lib/rsp.s

356 lines
8.0 KiB
ArmAsm
Raw Normal View History

#include "macros.inc"
2019-09-01 15:50:50 -04:00
.set UCODE_SIZE, 0x800
.section .text
.balign 16
glabel rspbootTextStart
2020-06-02 12:44:34 -04:00
.incbin "rsp/rspboot.bin"
.balign 16
glabel rspbootTextEnd
2019-09-01 15:50:50 -04:00
.balign 16
#ifndef F3DEX_GBI_SHARED
#if SUPER3D_GBI == 1
glabel gspSuper3D_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/super3d/fifo/Super3D.bin"
glabel gspSuper3D_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
#else /* Use one of the Fast3DEX series grucodes. */
#ifndef F3DZEX_GBI_2
2021-05-08 22:40:59 -04:00
#if F3DEX2PL_GBI == 1
glabel gspF3DEX2_PosLight_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2pl/fifo/F3DEX2_PosLight.bin"
2021-05-08 22:40:59 -04:00
glabel gspF3DEX2_PosLight_fifoTextEnd
#elif F3DEX_GBI_2 == 1
glabel gspF3DEX2_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2.bin"
glabel gspF3DEX2_fifoTextEnd
2021-05-02 09:28:16 -04:00
#elif F3DEX_GBI == 1
glabel gspF3DEX_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DEX.bin"
glabel gspF3DEX_fifoTextEnd
#endif
#else /* Fast3DZEX */
glabel gspF3DZEX2_PosLight_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/F3DZEX.bin"
glabel gspF3DZEX2_PosLight_fifoTextEnd
#endif
#endif
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_fifoTextStart
.incbin "lib/PR/f3dex2/fifo/F3DEX2.bin"
glabel gspF3DEX2_fifoTextEnd
2021-09-17 17:32:11 -07:00
.balign 16
glabel gspF3DEX2_Rej_fifoTextStart
.incbin "lib/PR/f3dex2/fifo/F3DEX2_Rej.bin"
2021-09-17 17:32:11 -07:00
glabel gspF3DEX2_Rej_fifoTextEnd
.balign 16
glabel gspF3DLX2_Rej_fifoTextStart
.incbin "lib/PR/f3dex2/fifo/F3DLX2_Rej.bin"
glabel gspF3DLX2_Rej_fifoTextEnd
.balign 16
glabel gspS2DEX2_fifoTextStart
.incbin "lib/PR/s2dex2/fifo/S2DEX2.bin"
glabel gspS2DEX2_fifoTextEnd
.balign 16
glabel gspL3DZEX2_PosLight_fifoTextStart
.incbin "lib/PR/f3dzex/fifo/L3DZEX.bin"
glabel gspL3DZEX2_PosLight_fifoTextEnd
2019-09-01 15:50:50 -04:00
/* Audio Bins */
2020-12-03 22:19:14 -05:00
/*
* "What the heck is this?"
* Shindou is the only version to actually edit the audio microcode, so I had to do this sorry lol
*/
2019-09-01 15:50:50 -04:00
.balign 16
glabel aspMainTextStart
#if VERSION_SH == 1
2020-12-03 22:19:14 -05:00
.incbin "rsp/audio.bin"
#else
.incbin "lib/PR/audio/aspMain.bin"
#endif
glabel aspMainTextEnd
2019-09-01 15:50:50 -04:00
/*
* LESS COMMON MICROCODES
* These are setup to be loaded by G_LOAD_UCODE
*/
/* Fast3DEX NoN Text */
#ifdef F3DEX_NON_GBI
glabel gspF3DEX_NoN_fifoTextStart
2019-09-01 15:50:50 -04:00
.balign 16
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DEX_NoN.bin"
glabel gspF3DEX_NoN_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX Text */
#ifdef F3DLX_GBI
glabel gspF3DLX_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX.bin"
glabel gspF3DLX_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX NoN Text */
#ifdef F3DLX_NON_GBI
glabel gspF3DLX_NoN_fifoTextStart
2019-09-01 15:50:50 -04:00
.balign 16
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX_NoN.bin"
glabel gspF3DLX_NoN_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX Rej Text */
#ifdef F3DLX_REJ_GBI
glabel gspF3DLX_Rej_fifoTextStart
2019-09-01 15:50:50 -04:00
.balign 16
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX_Rej.bin"
glabel gspF3DLX_Rej_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Line3DEX Text */
#ifdef L3DEX_GBI
glabel gspL3DEX_fifoTextStart
2019-09-01 15:50:50 -04:00
.balign 16
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/L3DEX.bin"
glabel gspL3DEX_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* S2DEX Text */
#ifdef S2DEX_GBI
glabel gspS2DEX_fifoTextStart
2019-09-01 15:50:50 -04:00
.balign 16
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/s2dex/fifo/S2DEX.bin"
glabel gspS2DEX_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DEX2 series */
/* Fast3DEX2 NoN Text */
#ifdef F3DEX2_NON_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_NoN_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2_NoN.bin"
glabel gspF3DEX2_NoN_fifoTextEnd
#endif
/* Fast3DZEX NoN Text */
#ifdef F3DZEX_NON_GBI_2
.balign 16
glabel gspF3DZEX2_NoN_PosLight_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/F3DZEX_NoN.bin"
glabel gspF3DZEX2_NoN_PosLight_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DEX2 Rej Text */
#ifdef F3DEX2_REJ_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_Rej_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2_Rej.bin"
glabel gspF3DEX2_Rej_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* Line3DEX2 Text */
#ifdef L3DEX2_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspL3DEX2_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/L3DEX2.bin"
glabel gspL3DEX2_fifoTextEnd
#endif
/* Line3DZEX Text */
#ifdef L3DZEX_GBI
.balign 16
glabel gspL3DZEX2_PosLight_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/L3DZEX.bin"
glabel gspL3DZEX2_PosLight_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* S2DEX2 Text */
#ifdef S2DEX_GBI_2
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspS2DEX2_fifoTextStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/s2dex2/fifo/S2DEX2.bin"
glabel gspS2DEX2_fifoTextEnd
#endif
2019-09-01 15:50:50 -04:00
/* DATA SECTION START */
.section .rodata
.balign 16
#ifndef F3DEX_GBI_SHARED /* Use regular Fast3D data (default) */
#if SUPER3D_GBI == 1
glabel gspSuper3D_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/super3d/fifo/Super3D_data.bin"
glabel gspSuper3D_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
#else /* Using one of the Fast3DEX series grucodes */
#ifndef F3DZEX_GBI_2
2021-05-08 22:40:59 -04:00
#if F3DEX2PL_GBI == 1
glabel gspF3DEX2_PosLight_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2pl/fifo/F3DEX2_PosLight_data.bin"
2021-05-08 22:40:59 -04:00
glabel gspF3DEX2_PosLight_fifoDataEnd
#elif F3DEX_GBI_2 == 1
glabel gspF3DEX2_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2_data.bin"
glabel gspF3DEX2_fifoDataEnd
2021-05-02 09:28:16 -04:00
#elif F3DEX_GBI == 1
glabel gspF3DEX_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DEX_data.bin"
glabel gspF3DEX_fifoDataEnd
#endif
#else /* Fast3DZEX */
glabel gspF3DZEX2_PosLight_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/F3DZEX_data.bin"
glabel gspF3DZEX2_PosLight_fifoDataEnd
#endif
#endif
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_fifoDataStart
.incbin "lib/PR/f3dex2/fifo/F3DEX2_data.bin"
glabel gspF3DEX2_fifoDataEnd
2021-09-17 17:32:11 -07:00
.balign 16
glabel gspF3DEX2_Rej_fifoDataStart
.incbin "lib/PR/f3dex2/fifo/F3DEX2_Rej_data.bin"
2021-09-17 17:32:11 -07:00
glabel gspF3DEX2_Rej_fifoDataEnd
.balign 16
glabel gspF3DLX2_Rej_fifoDataStart
.incbin "lib/PR/f3dex2/fifo/F3DLX2_Rej_data.bin"
glabel gspF3DLX2_Rej_fifoDataEnd
.balign 16
glabel gspS2DEX_fifoDataStart
.incbin "lib/PR/s2dex/fifo/S2DEX_data.bin"
glabel gspS2DEX_fifoDataEnd
.balign 16
glabel gspS2DEX2_fifoDataStart
.incbin "lib/PR/s2dex2/fifo/S2DEX2_data.bin"
glabel gspS2DEX2_fifoDataEnd
2019-09-01 15:50:50 -04:00
/* Audio Data */
.balign 16
glabel aspMainDataStart
#if VERSION_SH == 1
2020-12-03 22:19:14 -05:00
.incbin "rsp/audio_data.bin"
#else
.incbin "lib/PR/audio/aspMain_data.bin"
#endif
glabel aspMainDataEnd
2019-09-01 15:50:50 -04:00
/* LESS COMMON MICROCODES */
/* Fast3DEX Series */
/* Fast3DEX NoN Data */
#ifdef F3DEX_NON_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX_NoN_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DEX_NoN_data.bin"
glabel gspF3DEX_NoN_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX Data */
#ifdef F3DLX_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DLX_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX_data.bin"
glabel gspF3DLX_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX NoN Data */
#ifdef F3DLX_NON_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DLX_NoN_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX_NoN_data.bin"
glabel gspF3DLX_NoN_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DLX Rej Data */
#ifdef F3DLX_REJ_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DLX_Rej_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/F3DLX_Rej_data.bin"
glabel gspF3DLX_Rej_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Line3DEX Data */
#ifdef L3DEX_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspL3DEX_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex/fifo/L3DEX_data.bin"
glabel gspL3DEX_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* S2DEX Data */
#ifdef S2DEX_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspS2DEX_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/s2dex/fifo/S2DEX_data.bin"
glabel gspS2DEX_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DEX2 Series */
/* Fast3DEX2 NoN Data */
#ifdef F3DEX2_NON_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_NoN_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2_NoN_data.bin"
glabel gspF3DEX2_NoN_fifoDataEnd
#endif
/* Fast3DZEX NoN Data */
#ifdef F3DZEX_NON_GBI_2
.balign 16
glabel gspF3DZEX2_NoN_PosLight_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/F3DZEX_NoN_data.bin"
glabel gspF3DZEX2_NoN_PosLight_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Fast3DEX2 Rej Data */
#ifdef F3DEX2_REJ_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspF3DEX2_Rej_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/F3DEX2_Rej_data.bin"
glabel gspF3DEX2_Rej_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* Line3DEX2 Data */
#ifdef L3DEX2_GBI
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspL3DEX2_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dex2/fifo/L3DEX2_data.bin"
glabel gspL3DEX2_fifoDataEnd
#endif
/* Line3DZEX Text */
#ifdef L3DZEX_GBI
.balign 16
glabel gspL3DZEX2_PosLight_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/f3dzex/fifo/L3DZEX_data.bin"
glabel gspL3DZEX2_PosLight_fifoDataEnd
#endif
2019-09-01 15:50:50 -04:00
/* S2DEX2 Data */
#ifdef S2DEX_GBI_2
2019-09-01 15:50:50 -04:00
.balign 16
glabel gspS2DEX2_fifoDataStart
2021-09-17 18:55:13 -04:00
.incbin "lib/PR/s2dex2/fifo/S2DEX2_data.bin"
glabel gspS2DEX2_fifoDataEnd
#endif