MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / executeSfxSequenceOp

Method executeSfxSequenceOp

Source/Amiga/rjp1.cpp:179–210  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

177}
178
179bool Rjp1::executeSfxSequenceOp(Rjp1Channel *channel, uint8 code, const uint8 *&p) {
180 bool loop = true;
181 switch (code & 7) {
182 case 0:
183 _vars.activeChannelsMask &= ~(1 << _vars.currentChannel);
184 loop = false;
185 stopPaula();
186 break;
187 case 1:
188 setRelease(channel);
189 loop = false;
190 break;
191 case 2:
192 channel->loopSeqCount = *p++;
193 break;
194 case 3:
195 channel->loopSeq2Count = *p++;
196 break;
197 case 4:
198 code = *p++;
199 if (code != 0) {
200 setupInstrument(channel, code);
201 }
202 break;
203 case 7:
204 loop = false;
205 break;
206 default:
207 break;
208 }
209 return loop;
210}
211
212bool Rjp1::executeSongSequenceOp(Rjp1Channel *channel, uint8 code, const uint8 *&p) {
213 bool loop = true;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected