Nugget
Loading...
Searching...
No Matches
Classes | Macros | Functions | Variables
spdplayer.c File Reference
#include "spdplayer/spdplayer.h"
#include <stddef.h>
#include <stdint.h>
#include "common/hardware/dma.h"
#include "common/hardware/spu.h"
Include dependency graph for spdplayer.c:

Classes

struct  SPDSampleInfo
 
struct  SPDMacroWrite
 
struct  SPDMacro
 

Macros

#define PKT_REG_WRITE   0x00
 
#define PKT_WAIT   0x01
 
#define PKT_END_PATTERN   0x02
 
#define PKT_LOOP_POINT   0x03
 
#define PKT_TRACE_BEGIN   0x04
 
#define PKT_ORDER_TABLE   0x10
 
#define PKT_PATTERN_HDR   0x11
 
#define PKT_SUBSONG_TBL   0x12
 
#define PKT_MACRO_DEF   0x13
 
#define PKT_MACRO_INVOKE   0x14
 
#define PKT_SAMPLE_DIR   0x20
 
#define PKT_SAMPLE_DATA   0x21
 
#define PKT_TICK_RATE   0x30
 
#define PKT_TITLE   0x40
 
#define PKT_AUTHOR   0x41
 
#define PKT_GAME_ID   0x42
 
#define PKT_COMMENT   0x43
 
#define PKT_SUBSONG_NAME   0x44
 
#define PKT_VOICE_COUNT   0x45
 
#define MAX_ORDERS   256
 
#define MAX_PATTERNS   256
 
#define MAX_SAMPLES   128
 
#define MAX_MACROS   256
 
#define MAX_MACRO_WRITES   8
 

Functions

unsigned SPD_Check (const void *data, uint32_t size)
 
unsigned SPD_Load (const void *data, uint32_t size)
 
unsigned SPD_LoadEx (const void *data, uint32_t size, const void *sampleData, uint32_t sampleSize)
 
void SPD_Seek (unsigned order)
 
void SPD_Poll ()
 
void SPD_SetMasterVolume (uint32_t volume)
 
void SPD_PlaySoundEffect (unsigned voice, unsigned sampleID, uint16_t pitch, int16_t volume)
 
void SPD_Silence ()
 

Variables

unsigned SPD_VoiceCount = 24
 
unsigned SPD_OrderCount = 0
 
unsigned SPD_CurrentOrder = 0
 
unsigned SPD_PatternCount = 0
 
unsigned SPD_SampleCount = 0
 
uint32_t SPD_hblanks = 0
 
int SPD_ChangeOrderNextTick = 0
 
unsigned SPD_NextOrder = 0
 

Macro Definition Documentation

◆ MAX_MACRO_WRITES

#define MAX_MACRO_WRITES   8

◆ MAX_MACROS

#define MAX_MACROS   256

◆ MAX_ORDERS

#define MAX_ORDERS   256

◆ MAX_PATTERNS

#define MAX_PATTERNS   256

◆ MAX_SAMPLES

#define MAX_SAMPLES   128

◆ PKT_AUTHOR

#define PKT_AUTHOR   0x41

◆ PKT_COMMENT

#define PKT_COMMENT   0x43

◆ PKT_END_PATTERN

#define PKT_END_PATTERN   0x02

◆ PKT_GAME_ID

#define PKT_GAME_ID   0x42

◆ PKT_LOOP_POINT

#define PKT_LOOP_POINT   0x03

◆ PKT_MACRO_DEF

#define PKT_MACRO_DEF   0x13

◆ PKT_MACRO_INVOKE

#define PKT_MACRO_INVOKE   0x14

◆ PKT_ORDER_TABLE

#define PKT_ORDER_TABLE   0x10

◆ PKT_PATTERN_HDR

#define PKT_PATTERN_HDR   0x11

◆ PKT_REG_WRITE

#define PKT_REG_WRITE   0x00

◆ PKT_SAMPLE_DATA

#define PKT_SAMPLE_DATA   0x21

◆ PKT_SAMPLE_DIR

#define PKT_SAMPLE_DIR   0x20

◆ PKT_SUBSONG_NAME

#define PKT_SUBSONG_NAME   0x44

◆ PKT_SUBSONG_TBL

#define PKT_SUBSONG_TBL   0x12

◆ PKT_TICK_RATE

#define PKT_TICK_RATE   0x30

◆ PKT_TITLE

#define PKT_TITLE   0x40

◆ PKT_TRACE_BEGIN

#define PKT_TRACE_BEGIN   0x04

◆ PKT_VOICE_COUNT

#define PKT_VOICE_COUNT   0x45

◆ PKT_WAIT

#define PKT_WAIT   0x01

Function Documentation

◆ SPD_Check()

unsigned SPD_Check ( const void data,
uint32_t  size 
)

◆ SPD_Load()

unsigned SPD_Load ( const void data,
uint32_t  size 
)

◆ SPD_LoadEx()

unsigned SPD_LoadEx ( const void data,
uint32_t  size,
const void sampleData,
uint32_t  sampleSize 
)

◆ SPD_PlaySoundEffect()

void SPD_PlaySoundEffect ( unsigned  voice,
unsigned  sampleID,
uint16_t  pitch,
int16_t  volume 
)

◆ SPD_Poll()

void SPD_Poll ( )

◆ SPD_Seek()

void SPD_Seek ( unsigned  order)

◆ SPD_SetMasterVolume()

void SPD_SetMasterVolume ( uint32_t  volume)

◆ SPD_Silence()

void SPD_Silence ( )

Variable Documentation

◆ SPD_ChangeOrderNextTick

int SPD_ChangeOrderNextTick = 0

◆ SPD_CurrentOrder

unsigned SPD_CurrentOrder = 0

◆ SPD_hblanks

uint32_t SPD_hblanks = 0

◆ SPD_NextOrder

unsigned SPD_NextOrder = 0

◆ SPD_OrderCount

unsigned SPD_OrderCount = 0

◆ SPD_PatternCount

unsigned SPD_PatternCount = 0

◆ SPD_SampleCount

unsigned SPD_SampleCount = 0

◆ SPD_VoiceCount

unsigned SPD_VoiceCount = 24