MCPcopy Create free account
hub / github.com/doldecomp/mkdd / writeReg

Method writeReg

libs/JSystem/JAudio/System/JASSeqParser.cpp:145–237  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

143}
144
145void JASSeqParser::writeReg(JASTrack *track, u32 reg, u32 data) {
146 track->writeReg(JASRegisterParam::REG3, data);
147 if (reg < 0x40) {
148 track->writeReg(JASRegisterParam::RegID(reg), data);
149 return;
150 }
151 switch (reg) {
152 case 0x40:
153 case 0x41:
154 case 0x42:
155 case 0x43:
156 case 0x44:
157 case 0x45:
158 case 0x46:
159 case 0x47:
160 case 0x48:
161 case 0x49:
162 case 0x4a:
163 case 0x4b:
164 case 0x4c:
165 case 0x4d:
166 case 0x4e:
167 case 0x4f:
168 track->setPort(reg - 0x40, data);
169 break;
170 case 0x60:
171 case 0x61:
172#line 501
173 JUT_WARNING_F2("%s", "writeReg for Read-Only Register");
174 break;
175 case 0x62:
176 track->setTimebase(data);
177 break;
178 case 0x63:
179 track->setTranspose(data);
180 break;
181 case 0x64:
182 track->setBendSense(data);
183 break;
184 case 0x65:
185 track->setGateRate(data);
186 break;
187 case 0x66:
188 track->setSkipSample(data);
189 break;
190 case 0x67:
191 track->setBankNumber(u8(data));
192 break;
193 case 0x68:
194 track->setProgNumber(u8(data));
195 break;
196 case 0x69:
197 track->setPanPower(data / 32767.0f);
198 break;
199 case 0x6a:
200 track->setReleasePrio(JSUHiByte(data));
201 track->setNoteOnPrio(JSULoByte(data));
202 break;

Callers 3

cmdCheckPortImportMethod · 0.45
cmdCheckPortExportMethod · 0.45
cmdSyncCPUMethod · 0.45

Calls 15

RegIDEnum · 0.85
JSUHiByteFunction · 0.85
JSULoByteFunction · 0.85
setTimebaseMethod · 0.80
setTransposeMethod · 0.80
setBendSenseMethod · 0.80
setGateRateMethod · 0.80
setSkipSampleMethod · 0.80
setBankNumberMethod · 0.80
setProgNumberMethod · 0.80
setPanPowerMethod · 0.80
setReleasePrioMethod · 0.80

Tested by

no test coverage detected