Files
tp/include/dolphin/ai.h
T

55 lines
1.2 KiB
C
Raw Normal View History

#ifndef _DOLPHIN_AI_H_
#define _DOLPHIN_AI_H_
2021-03-28 22:49:05 +02:00
#ifdef __REVOLUTION_SDK__
#include <revolution/ai.h>
#else
#include <dolphin/types.h>
2021-03-28 22:49:05 +02:00
2023-01-02 11:20:10 -08:00
#ifdef __cplusplus
extern "C" {
#endif
typedef void (*AISCallback)(u32 count);
typedef void (*AIDCallback)();
#define AI_STREAM_START 1
#define AI_STREAM_STOP 0
#define AI_SAMPLERATE_32KHZ 0
#define AI_SAMPLERATE_48KHZ 1
2023-01-02 11:20:10 -08:00
AIDCallback AIRegisterDMACallback(AIDCallback callback);
void AIInitDMA(u32 start_addr, u32 length);
BOOL AIGetDMAEnableFlag(void);
2023-01-02 11:20:10 -08:00
void AIStartDMA(void);
void AIStopDMA(void);
u32 AIGetDMABytesLeft(void);
u32 AIGetDMAStartAddr(void);
u32 AIGetDMALength(void);
BOOL AICheckInit(void);
AISCallback AIRegisterStreamCallback(AISCallback callback);
u32 AIGetStreamSampleCount(void);
void AIResetStreamSampleCount(void);
void AISetStreamTrigger(u32 trigger);
u32 AIGetStreamTrigger(void);
2023-01-02 11:20:10 -08:00
void AISetStreamPlayState(u32 state);
u32 AIGetStreamPlayState(void);
2023-01-02 11:20:10 -08:00
void AISetDSPSampleRate(u32 rate);
u32 AIGetDSPSampleRate(void);
void AISetStreamSampleRate(u32 rate);
2023-01-02 11:20:10 -08:00
u32 AIGetStreamSampleRate(void);
void AISetStreamVolLeft(u8 vol);
u8 AIGetStreamVolLeft(void);
void AISetStreamVolRight(u8 vol);
u8 AIGetStreamVolRight(void);
void AIInit(u8* stack);
void AIReset(void);
2023-01-02 11:20:10 -08:00
#ifdef __cplusplus
}
2023-01-02 11:20:10 -08:00
#endif
#endif
#endif