JASTrackPort, JASSeqCtrl.h, JASSeqParser (#1904)

* JASTrackPort OK

* JASSeqCtrl.h

* JASSeqParser

* progress

* Move JSU inlines
This commit is contained in:
Jcw87
2023-09-01 11:55:46 +03:00
committed by GitHub
parent 6c4509ceed
commit 2d45b68231
73 changed files with 1354 additions and 3360 deletions
+1 -73
View File
@@ -4,81 +4,9 @@
//
#include "JSystem/JAudio2/JASSeqCtrl.h"
#include "JSystem/JAudio2/JASSeqReader.h"
#include "JSystem/JAudio2/JASSeqParser.h"
#include "JSystem/JAudio2/JASTrack.h"
//
// Types:
//
// TODO: Use JASSeqParser.hh when possible
struct JASSeqParser {
/* 80293CAC */ inline virtual ~JASSeqParser() {}
/* 802958D4 */ virtual int parse(JASTrack*);
/* 80295540 */ virtual void execNoteOnMidi(JASTrack*, u32, u32, u32);
/* 80295498 */ virtual void execNoteOnGate(JASTrack*, u32, u32, u32, u32);
/* 80295570 */ virtual void execNoteOff(JASTrack*, u32);
/* 8029559C */ virtual void execCommand(JASTrack*, s32 (JASSeqParser::*)(JASTrack*, u32*), u32, u32*);
static u8 sCmdInfo[1536];
static u8 sExtCmdInfo[4080];
static u8 sCallBackFunc[4];
};
struct JASSeqCtrl {
enum IntrType {
INTRTYPE_VALUE_0,
INTRTYPE_VALUE_1,
INTRTYPE_VALUE_2,
INTRTYPE_VALUE_3,
INTRTYPE_VALUE_4,
INTRTYPE_VALUE_5,
INTRTYPE_VALUE_6,
};
/* 802938BC */ JASSeqCtrl();
/* 80293924 */ void init();
/* 80293980 */ void start(void*, u32);
/* 802939C4 */ int tickProc(JASTrack*);
/* 80293ABC */ void interrupt(JASSeqCtrl::IntrType);
/* 80293AE0 */ void setIntrMask(u32);
/* 80293AF0 */ void clrIntrMask(u32);
/* 80293B00 */ int retIntr();
/* 80293B28 */ int findIntr();
/* 80293B78 */ void checkIntr();
/* 80293BE8 */ void timerProcess();
u32 get24(int param_0) {
return mReader.get24(param_0);
}
/* 0x00 */ JASSeqReader mReader;
/* 0x3c */ JASSeqParser* field_0x3c;
/* 0x40 */ s32 field_0x40;
/* 0x44 */ void* field_0x44;
/* 0x48 */ u32 field_0x48;
/* 0x4c */ u16 field_0x4c;
/* 0x4e */ u16 field_0x4e;
/* 0x50 */ u8 field_0x50;
/* 0x51 */ u8 field_0x51;
/* 0x52 */ u16 field_0x52;
/* 0x54 */ u32 field_0x54;
/* 0x58 */ u32 field_0x58;
static JASSeqParser sDefaultParser;
};
//
// Forward References:
//
//
// External References:
//
//
// Declarations:
//
/* ############################################################################################## */
/* 80451238-80451240 000738 0004+04 3/3 0/0 0/0 .sbss sDefaultParser__10JASSeqCtrl */
JASSeqParser JASSeqCtrl::sDefaultParser;