diff --git a/plugin/ic1.cpp b/plugin/ic1.cpp index c945e43..4f8249f 100644 --- a/plugin/ic1.cpp +++ b/plugin/ic1.cpp @@ -126,7 +126,7 @@ // 00d1: 4d d2 MOV MA,A // 00d3: 71 bc 08 MVIW $FFBC,$08 // sustain flag? // 00d6: 7b 81 CALF $0b81_clrVoiceTbl -// 00d8: 71 c8 42 MVIW $FFC8,$42 // Bank A Poly 2 +// 00d8: 71 c8 42 MVIW $FFC8_ledCol3,$42 // Bank A Poly 2 // 00db: 24 ff 1f LXI DE,$1FFF // enable keypad demux // 00de: 4a de MVIX DE,$DE // enable IC9 column 6 for Transpose button // 00e0: 4c c0 MOV A,PA // port A @@ -206,13 +206,13 @@ // 0169: 63 be STAW $FFBE_transpose // save transpose value // 016b: 77 0c EQI A,$0C // if it's actually 12 // 016d: c7 JR $0175 // it isn't -// 016e: 01 c8 LDAW $FFC8 // flags -// 0170: 07 fe ANI A,$FE // transpose off -// 0172: 63 c8 STAW $FFC8 // save it back +// 016e: 01 c8 LDAW $FFC8_ledCol3 +// 0170: 07 fe ANI A,$FE // mask bit +// 0172: 63 c8 STAW $FFC8_ledCol3 // turn off Transpose LED // 0174: c6 JR $017B // jump to display -// 0175: 01 c8 LDAW $FFC8 // flags -// 0177: 17 01 ORI A,$01 // transpose on -// 0179: 63 c8 STAW $FFC8 // save it +// 0175: 01 c8 LDAW $FFC8_ledCol3 +// 0177: 17 01 ORI A,$01 // set bit +// 0179: 63 c8 STAW $FFC8_ledCol3 // turn on Transpose LED // 017b: 78 00 CALF $0800_showTranspose // ------------------------------------------------------------- // done with transpose? @@ -367,10 +367,10 @@ // 0275: 48 21 SLR A // // 0277: 07 38 ANI A,$38 // 0279: 1b MOV C,A -// 027a: 01 c8 LDAW $FFC8 -// 027c: 07 c7 ANI A,$C7 +// 027a: 01 c8 LDAW $FFC8_ledCol3 +// 027c: 07 c7 ANI A,$C7 // mask out load/save/verify // 027e: 60 9b ORA A,C -// 0280: 63 c8 STAW $FFC8 +// 0280: 63 c8 STAW $FFC8_ledCol3 // save it back // 0282: 75 ba 10 EQIW $FFBA_bank,$10 // 0285: cf JR $0295 // 0286: 59 cd BIT 1,$FFCD @@ -411,15 +411,15 @@ // 02c9: 40 45 0d CALL $0D45_digitLookup // 02cc: 5f b4 BIT 7,$FFB4 // 02ce: 4e 2f JRE $02FF -// 02d0: 01 c8 LDAW $FFC8 -// 02d2: 16 c0 XRI A,$C0 -// 02d4: 63 c8 STAW $FFC8 -// 02d6: 58 b6 BIT 0,$FFB6 -// 02d8: cc JR $02E5 +// 02d0: 01 c8 LDAW $FFC8_ledCol3 +// 02d2: 16 c0 XRI A,$C0 // toggle Group A/B LEDs +// 02d4: 63 c8 STAW $FFC8_ledCol3 // save it back +// 02d6: 58 b6 BIT 0,$FFB6 // group button? +// 02d8: cc JR $02E5 // not pressed // 02d9: 69 fd MVI A,$FD // select module board // 02db: 79 e8 CALF $09E8_sendToTx -// 02dd: 5e c8 BIT 6,$FFC8 -// 02df: 69 86 MVI A,$86 +// 02dd: 5e c8 BIT 6,$FFC8_ledCol3 // Group A LED +// 02df: 69 86 MVI A,$86 // sustain on/off // 02e1: 69 87 MVI A,$87 // 02e3: 79 e8 CALF $09E8_sendToTx // 02e5: 59 b6 BIT 1,$FFB6 @@ -442,10 +442,10 @@ // 0309: 01 a8 LDAW $FFA8_midiSwitch // 030b: 07 06 ANI A,$06 ; Poly mode switches // 030d: 1b MOV C,A -// 030e: 01 c8 LDAW $FFC8 -// 0310: 07 f9 ANI A,$F9 -// 0312: 60 9b ORA A,C -// 0314: 63 c8 STAW $FFC8 +// 030e: 01 c8 LDAW $FFC8_ledCol3 +// 0310: 07 f9 ANI A,$F9 ; mask off poly mode LEDs +// 0312: 60 9b ORA A,C ; OR in switch values +// 0314: 63 c8 STAW $FFC8_ledCol3 ; save it back // 0316: 25 b1 00 GTIW $FFB1,$00 // 0319: 4e 41 JRE $035C // 031b: 01 b1 LDAW $FFB1 @@ -539,18 +539,18 @@ // 03cd: 79 29 CALF $0929 // 03cf: 45 a8 30 ONIW $FFA8_midiSwitch,$30 (MIDI Func1+2) // 03d2: 78 f0 CALF $08f0_sendSysexPatch -// 03d4: 5f a3 BIT 7,$FFA3 -// 03d6: 4e 32 JRE $040A -// 03d8: 05 a3 7f ANIW $FFA3,$7F -// 03db: 01 c8 LDAW $FFC8 -// 03dd: 07 3f ANI A,$3F -// 03df: 5e a3 BIT 6,$FFA3 -// 03e1: c3 JR $03E5 -// 03e2: 17 80 ORI A,$80 +// 03d4: 5f a3 BIT 7,$FFA3_patchVal // patch set from midi? +// 03d6: 4e 32 JRE $040A // no, jump ahead +// 03d8: 05 a3 7f ANIW $FFA3_patchVal,$7F // mask off bit 7 +// 03db: 01 c8 LDAW $FFC8_ledCol3 +// 03dd: 07 3f ANI A,$3F // mask +// 03df: 5e a3 BIT 6,$FFA3_patchVal // bank +// 03e1: c3 JR $03E5 +// 03e2: 17 80 ORI A,$80 // Group B LED // 03e4: c2 JR $03E7 -// 03e5: 17 40 ORI A,$40 -// 03e7: 63 c8 STAW $FFC8 -// 03e9: 01 a3 LDAW $FFA3 +// 03e5: 17 40 ORI A,$40 // Group A LED +// 03e7: 63 c8 STAW $FFC8_ledCol3 // switch on LED +// 03e9: 01 a3 LDAW $FFA3_patchVal // 03eb: 1b MOV C,A // 03ec: 07 07 ANI A,$07 // 03ee: 41 INR A @@ -565,7 +565,7 @@ // 03ff: 7c 3c CALF $0C3C // 0401: 7c d0 CALF $0CD0 // 0403: 7c 93 CALF $0C93 -// 0405: 55 a3 80 OFFIW $FFA3,$80 +// 0405: 55 a3 80 OFFIW $FFA3_patchVal,$80 // 0408: 4f ce JRE $03D8 // 040a: 4c c2 MOV A,PC // 040c: 1b MOV C,A @@ -1062,7 +1062,7 @@ // 0783: c5 JR $0789 // 0784: 0b MOV A,C // 0785: 17 80 ORI A,$80 // bit 7 might be used to indicate the patch needs changed -// 0787: 63 a3 STAW $FFA3 +// 0787: 63 a3 STAW $FFA3_patchVal // 0789: 71 3f 00 MVIW $FF3F_midiByteCount,$00 // 078c: 54 4c 06 JMP $064C // ------------------------------------------------------------------- @@ -1359,7 +1359,7 @@ // 093c: 66 10 SUI A,$10 // 093e: 48 21 SLR A // 0940: 60 9b ORA A,C -// 0942: 5e c8 BIT 6,$FFC8 +// 0942: 5e c8 BIT 6,$FFC8_ledCol3 // 0944: 17 40 ORI A,$40 // 0946: b8 RET @@ -1525,9 +1525,9 @@ // 0a2d: 4e 23 JRE $0A52 // 0a2f: 08 MOV A,EAH // 0a30: 60 9a ORA A,B -// 0a32: 59 c8 BIT 1,$FFC8 +// 0a32: 59 c8 BIT 1,$FFC8_ledCol3 // Poly 1 // 0a34: da JR $0A4F -// 0a35: 5a c8 BIT 2,$FFC8 +// 0a35: 5a c8 BIT 2,$FFC8_ledCol3 // Poly 2 // 0a37: c7 JR $0A3F // 0a38: 58 b6 BIT 0,$FFB6 // 0a3a: c7 JR $0A42 @@ -1546,9 +1546,9 @@ // 0a51: ce JR $0A60 // 0a52: 08 MOV A,EAH // 0a53: 60 9a ORA A,B -// 0a55: 59 c8 BIT 1,$FFC8 +// 0a55: 59 c8 BIT 1,$FFC8_ledCol3 // Poly 1 // 0a57: c6 JR $0A5E -// 0a58: 5a c8 BIT 2,$FFC8 +// 0a58: 5a c8 BIT 2,$FFC8_ledCol3 // Poly 2 // 0a5a: cb JR $0A66 // 0a5b: 58 b6 BIT 0,$FFB6 // 0a5d: cb JR $0A69 @@ -1990,8 +1990,8 @@ // 0cb8: 66 10 SUI A,$10 // -16 // 0cba: 48 21 SLR A // double it // 0cbc: 60 9b ORA A,C // OR in patch digit -// 0cbe: 5e c8 BIT 6,$FFC8 // upper/lower? -// 0cc0: 17 40 ORI A,$40 // OR in that too +// 0cbe: 5e c8 BIT 6,$FFC8_ledCol3 // set for group A +// 0cc0: 17 40 ORI A,$40 // not set, group B // 0cc2: 44 00 02 LXI EA,$0200 // form the address in RAM // 0cc5: 19 MOV EAL,A // address // 0cc6: 48 a4 DSLL EA @@ -2106,8 +2106,8 @@ // probably something to do with tape // 0d62: 07 38 ANI A,$38 // mask off all but LOAD/SAVE/VERIFY -// 0d64: 5f c8 BIT 7,$FFC8 -// 0d66: 17 04 ORI A,$04 // poly 2 LED? +// 0d64: 5f c8 BIT 7,$FFC8_ledCol3 // Group B +// 0d66: 17 04 ORI A,$04 // // 0d68: 63 d1 STAW $FFD1 // save somewhere // 0d6a: 64 05 ff MVI PF,$FF // column 3 LEDs // 0d6d: 4d c1 MOV PB,A // enable