|
Nugget
Bare-metal libraries and examples for the original PlayStation
|
#include "common/hardware/dma.h"#include "common/hardware/hwregs.h"#include "common/hardware/pcsxhw.h"#include "common/hardware/spu.h"#include "common/syscalls/syscalls.h"#include <stdint.h>
Macros | |
| #define | SPU_DELAY (*(volatile uint32_t *)0xbf801014) |
| #define | SPU_ENDX_LOW (*(volatile uint16_t *)0x1f801d9c) |
| #define | SPU_UPLOAD_ADDR 0x1080u |
| #define | SPU_IRQ_BYTE_ADDR (SPU_UPLOAD_ADDR + 4 * 16) |
| #define | SPU_CTRL_ENABLE 0x8000u |
| #define | SPU_CTRL_UNMUTE 0x4000u |
| #define | SPU_CTRL_IRQ_ENABLE 0x0040u |
| #define | SPU_STATUS_IRQ_FLAG 0x0040u |
| #define | IRQ_POLL_LIMIT 4000000u |
| #define | ENVX_POLL_LIMIT 4000000u |
Functions | |
| int | main () |
| #define ENVX_POLL_LIMIT 4000000u |
| #define IRQ_POLL_LIMIT 4000000u |
| #define SPU_CTRL_ENABLE 0x8000u |
| #define SPU_CTRL_IRQ_ENABLE 0x0040u |
| #define SPU_CTRL_UNMUTE 0x4000u |
| #define SPU_ENDX_LOW (*(volatile uint16_t *)0x1f801d9c) |
| #define SPU_IRQ_BYTE_ADDR (SPU_UPLOAD_ADDR + 4 * 16) |
| #define SPU_STATUS_IRQ_FLAG 0x0040u |
| #define SPU_UPLOAD_ADDR 0x1080u |