2021-03-28 22:49:05 +02:00
|
|
|
#ifndef JASAUDIOTHREAD_H
|
|
|
|
|
#define JASAUDIOTHREAD_H
|
|
|
|
|
|
2023-02-16 13:09:22 -08:00
|
|
|
#include "JSystem/JAudio2/JASGadget.h"
|
2023-06-09 11:55:15 +03:00
|
|
|
#include "JSystem/JKernel/JKRThread.h"
|
2021-03-28 22:49:05 +02:00
|
|
|
|
2023-06-09 11:55:15 +03:00
|
|
|
enum JASAudioMessage {
|
|
|
|
|
AUDIOMSG_DMA = 0,
|
|
|
|
|
AUDIOMSG_DSP = 1,
|
|
|
|
|
AUDIOMSG_STOP = 2,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
struct JASAudioThread : public JKRThread, public JASGlobalInstance<JASAudioThread> {
|
2022-12-30 16:19:57 -07:00
|
|
|
/* 8029CCDC */ JASAudioThread(int, int, u32);
|
2023-06-09 11:55:15 +03:00
|
|
|
/* 8029CD4C */ static void create(s32);
|
2022-12-30 16:19:57 -07:00
|
|
|
/* 8029CDC0 */ void stop();
|
2023-06-09 11:55:15 +03:00
|
|
|
/* 8029CDEC */ virtual void* run();
|
|
|
|
|
/* 8029CF68 */ static void DMACallback();
|
|
|
|
|
/* 8029CFBC */ static void DSPCallback(void*);
|
|
|
|
|
/* 8029D028 */ virtual ~JASAudioThread() {}
|
2022-12-30 16:19:57 -07:00
|
|
|
|
2023-06-09 11:55:15 +03:00
|
|
|
/* 0x7c */ OSThreadQueue sThreadQueue;
|
|
|
|
|
/* 0x84 */ bool sbPauseFlag; // type unsure
|
|
|
|
|
|
|
|
|
|
static volatile int snIntCount; // type unsure
|
2022-12-30 16:19:57 -07:00
|
|
|
};
|
|
|
|
|
|
2021-03-28 22:49:05 +02:00
|
|
|
#endif /* JASAUDIOTHREAD_H */
|