1
0
mirror of https://github.com/ScrelliCopter/VGM-Tools synced 2025-02-21 04:09:25 +11:00
Files
VGM-Tools/spctools/spc2it/it.h

33 lines
1.1 KiB
C

/****************************************************
*Part of SPC2IT, read readme.md for more information*
****************************************************/
#ifndef IT_H
#define IT_H
#define NUM_PATT_BUFS 128
#include "spc2ittypes.h"
s32 ITStart(s32); // Opens temp file, inits writing
s32 ITUpdate(); // Dumps pattern buffers to file
s32 ITWrite(char *fn); // Stops recording and writes IT file from temp data
void ITMix();
// Macros
#define FINE_SLIDE 0xF0
#define EXTRA_FINE_SLIDE 0xE0
#define EFFECT_F 6
#define EFFECT_E 5
#define IT_PATTERN_MAX 0xFD // The original Impulse Tracker has 200 patterns max
#define IT_SAMPLE_MAX 0xFF // The original Impulse Tracker has 99 samples max
#define IT_MASK_NOTE 1 // 0001 (Note)
#define IT_MASK_SAMPLE 2 // 0010 (Sample/instrument marker)
#define IT_MASK_ADJUSTVOLUME 4 // 0100 (volume/panning)
#define IT_MASK_NOTE_SAMPLE_ADJUSTVOLUME (IT_MASK_NOTE | IT_MASK_SAMPLE | IT_MASK_ADJUSTVOLUME)
#define IT_MASK_PITCHSLIDE 8 // 1000 (some special command, we use effect F and effect E)
#endif