git ssb

0+

kode54 / syntrax-c



Commit 780c9c2f3cc5391cd5478c560386cdab3341b621

Almost done with the structs.

anonymous authored on 12/28/2015, 2:11:30 PM
Christopher Snowhill committed on 6/13/2018, 12:10:58 AM
Parent: 17d5b840eb1809d7e01351c5b53c4a77c68da2ff

Files changed

src/syntrax/syntrax.hchanged
src/syntrax/syntrax.hView
@@ -23,8 +23,9 @@
2323 #define SE_PM_PATTERN 1
2424
2525
2626 //---------------------------structures------------------------
27+//don't pack
2728 struct VoiceEffect
2829 {
2930 int VMBNMTNBQU;
3031 int TIPUANVVR;
@@ -38,8 +39,9 @@
3839 int QOMCBTRPXF;
3940 int ABJGHAUY;
4041 };
4142
43+//don't pack
4244 struct Voice
4345 {
4446 int wavelength;
4547 int gainDelay;
@@ -64,8 +66,9 @@
6466 int gainDelayLeft;
6567 int hasLooped;
6668 };
6769
70+//don't pack
6871 struct TuneChannel
6972 {
7073 int JOEEPJCI;
7174 int BNWIGU;
@@ -181,59 +184,76 @@
181184 int8_t spd;
182185 uint8_t command;
183186 };
184187
185-//not packable
188+//almost packable
186189 struct Instrument
187190 {
188- int16_t version; //int16le
189- char name[32]; //char[32]
190- int16_t waveform:int; //int16le
191- int16_t wavelength:int; //int16le
192- int16_t masterVolume:int; //int16le
193- int16_t amWave:int; //int16le
194- int16_t amSpeed:int; //int16le
195- int16_t amLoopPoint:int; //int16le
196- int16_t finetune:int; //int16le
197- int16_t fmWave:int; //int16le
198- int16_t fmSpeed:int; //int16le
199- int16_t fmLoopPoint:int; //int16le
200- int16_t fmDelay:int; //int16le
201- int16_t arpIndex:int; //int16le
202- uint8_t m_ResetWave[16]; //uint8[16]
203- int16_t panWave:int; //int16le
204- int16_t panSpeed:int; //int16le
205- int16_t panLoopPoint:int; //int16le
206- int16_t UNK00:int; //int16le
207- int16_t UNK01:int; //int16le
208- int16_t UNK02:int; //int16le
209- int16_t UNK03:int; //int16le
210- int16_t UNK04:int; //int16le
211- int16_t UNK05:int; //int16le
212- effects:Vector.<InstrumentEffect>; //InstrumentEffect[4]
213- smpFullImportPath:String; //char[192] //why do we even need to store a full path?
214- int32_t UNK06:uint; //uint32le
215- int32_t UNK07:uint; //uint32le
216- int32_t UNK08:uint; //uint32le
217- int32_t UNK09:uint; //uint32le
218- int32_t UNK0A:uint; //uint32le
219- int32_t UNK0B:uint; //uint32le
220- int32_t UNK0C:uint; //uint32le
221- int32_t UNK0D:uint; //uint32le
222- int32_t UNK0E:uint; //uint32le
223- int32_t UNK0F:uint; //uint32le
224- int32_t UNK10:uint; //uint32le
225- int32_t UNK11:uint; //uint32le
226- int16_t UNK12:int; //int16le
227- int16_t shareSmpDataFromInstr:int; //int16le //0 is off
228- int16_t hasLoop:int; //int16le
229- int16_t hasBidiLoop:int; //int16le
230- sampleBuffer:WaveBuffer; //uint32le
231- smpStartPoint:int; //uint32le
232- smpLoopPoint:int; //uint32le
233- smpEndPoint:int; //uint32le
234- hasSample:int; //uint32le
235- smpLength:int; //uint32le
236- synthBuffers:Vector.<WaveBuffer>; //int16le[16][0x100]
191+ int16_t version;
192+ char name[32];
193+ int16_t waveform;
194+ int16_t wavelength;
195+ int16_t masterVolume;
196+ int16_t amWave;
197+ int16_t amSpeed;
198+ int16_t amLoopPoint;
199+ int16_t finetune;
200+ int16_t fmWave;
201+ int16_t fmSpeed;
202+ int16_t fmLoopPoint;
203+ int16_t fmDelay;
204+ int16_t arpIndex;
205+ uint8_t m_ResetWave[16];
206+ int16_t panWave;
207+ int16_t panSpeed;
208+ int16_t panLoopPoint;
209+ int16_t UNK00;
210+ int16_t UNK01;
211+ int16_t UNK02;
212+ int16_t UNK03;
213+ int16_t UNK04;
214+ int16_t UNK05;
215+ InstrumentEffect effects[4];
216+ char smpFullImportPath[192]; //why do we even need to store a full path?
217+ uint32_t UNK06;
218+ uint32_t UNK07;
219+ uint32_t UNK08;
220+ uint32_t UNK09;
221+ uint32_t UNK0A;
222+ uint32_t UNK0B;
223+ uint32_t UNK0C;
224+ uint32_t UNK0D;
225+ uint32_t UNK0E;
226+ uint32_t UNK0F;
227+ uint32_t UNK10;
228+ uint32_t UNK11;
229+ int16_t UNK12;
230+ int16_t shareSmpDataFromInstr; //0 is off
231+ int16_t hasLoop;
232+ int16_t hasBidiLoop;
233+ uint32_t smpStartPoint;
234+ uint32_t smpLoopPoint;
235+ uint32_t smpEndPoint;
236+ uint32_t hasSample;
237+ uint32_t smpLength;
238+ int16_t synthBuffers[16][0x100];
239+ //move me
240+ int16_t *sampleBuffer;
237241 };
238242
243+//packable
244+struct InstrumentEffect
245+{
246+ uint32_t destWave;
247+ uint32_t srcWave1;
248+ uint32_t srcWave2;
249+ uint32_t oscWave;
250+ uint32_t variable1;
251+ uint32_t variable2;
252+ uint32_t fxSpeed;
253+ uint32_t oscSpeed;
254+ uint32_t effectType;
255+ int8_t in5oscSelect;
256+ int8_t resetEffect;
257+ int16_t UNK00;
258+};
239259 #endif

Built with git-ssb-web