comparison minijss/jssmod.h @ 2278:40ccc09f09be

Implement empty channel removal in xm2jss and make JSSMOD format support channel remapping for this.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 18 Jun 2019 12:12:51 +0300
parents 5cec199f49f8
children fc58f62f100c
comparison
equal deleted inserted replaced
2277:026c3aa0e48f 2278:40ccc09f09be
141 } JSSNote; 141 } JSSNote;
142 142
143 143
144 typedef struct 144 typedef struct
145 { 145 {
146 int nrows, nchannels; 146 int nrows, nchannels, nmap;
147 BOOL *used;
148 Uint8 *map;
147 JSSNote *data; 149 JSSNote *data;
148 } JSSPattern; 150 } JSSPattern;
149 151
150 152
151 // Module structure 153 // Module structure
178 } JSSModule; 180 } JSSModule;
179 181
180 182
181 #ifdef JSS_SUP_JSSMOD 183 #ifdef JSS_SUP_JSSMOD
182 184
183 #define JSSMOD_VERSION (0x20) 185 #define JSSMOD_VERSION (0x30)
184 186
185 enum 187 enum
186 { 188 {
187 PATMODE_RAW_HORIZ = 1, 189 PATMODE_RAW_HORIZ = 1,
188 PATMODE_COMP_HORIZ, 190 PATMODE_COMP_HORIZ,
288 290
289 typedef struct 291 typedef struct
290 { 292 {
291 Uint32 size; 293 Uint32 size;
292 Uint16 nrows; 294 Uint16 nrows;
295 Uint16 nchannels; // may differ from JSSMODHeader::nchannels
296 // IF nchannels != JSSMODHeader::nchannels, then:
297 // Uint8 map[JSSMODPattern::nchannels];
293 } JSSMODPattern; 298 } JSSMODPattern;
294 299
295 #endif 300 #endif
296 301
297 302