home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Set of Apple II Hard Drive Images
/
pdoseric.hdv
/
SOURCE
/
TESTCTRL.SC1BAK.txt
< prev
next >
Wrap
Text File
|
2020-08-13
|
3KB
|
149 lines
;
;
; JOYCTRL - JOYSTICK MIDI CONTROLLERS WITH MIDI THRU
;
;
MAINLOOP JSR CHKMIDI
CHKQUEUE LDA QTAIL
CMP QHEAD
BEQ CHKPDL0
LDY #$00
QDATA LDA (QTAIL),Y
STA $C0A9 ;SEND MIDI MSGS FROM QUEUE
WAITTDRE LDA $C0A8
AND #$02
BEQ WAITTDRE
INC QTAIL
LDA QTAIL
CMP QHEAD
BNE QDATA
JSR CHKMIDI
;
CHKPDL0 BIT PTRIG
LDA #$00
STA $C0A0
PDLLOOP LDA PDL0DONE
BNE CHKPDL1
LDA XTOUT
BMI CHKPDL1
LDA $C0A4
STA PDL0HI
LDA $C0A5
STA PDL0LO
LDA #$01
STA PDL0DONE
;
CHKPDL1 JSR CHKMIDI
LDA PDL1DONE
BNE CHKPDLS
LDA YTOUT
BMI PDLLOOP
LDA $C0A4
STA PDL1HI
LDA $C0A5
STA PDL1LO
LDA #$01
STA PDL1DONE
;
CHKPDLS LDA PDL0DONE
BEQ CHKKBD
LDA PDL1DONE
BEQ CHKKBD
JMP PRCSPDLS
;
CHKKBD LDA $C000
BMI PRCSKBD
JMP MAINLOOP
PRCSKBD CLI
RTS
;
PRCSPDLS LDA #$01
STA $C0A0 ;PLUG TIMER
JSR CHKMIDI
;
LDA PDL0LO
LSR A
LSR A
LSR A
LSR A
STA JOYX
LDA PDL0HI
ASL A
ASL A
ASL A
ASL A
ORA JOYX
TAX
LDA XTABLE,X
STA JOYX
;
JSR CHKMIDI
;
LDA PDL1LO
LSR A
LSR A
LSR A
LSR A
STA JOYY
LDA PDL1HI
ASL A
ASL A
ASL A
ASL A
ORA JOYY
TAX
LDA YTABLE,X
STA JOYY
;
JSR CHKMIDI
;
CHKPDL0C LDA JOYX
CMP JOYXPREV ;DID PADDLE X CHANGE
BEQ CHKPDL1C
STA JOYXPREV
;
LDY XUPDBYTE ;STORE PADDLE VALUE IN MESSAGE
STA XMSG0,Y
;
LDY #$00
LDA XMSG0
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
LDA XMSG1
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
LDA XMSG2
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
;
JSR CHKMIDI
;
CHKPDL1C LDA JOYY
CMP JOYYPREV ;DID PADDLE Y CHANGE
BEQ PDLTRIG
STA JOYYPREV
;
LDY YUPDBYTE ;STORE PADDLE VALUE IN MESSAGE
STA YMSG0,Y
;
LDY #$00
LDA YMSG0
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
LDA YMSG1
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
LDA YMSG2
STA (QHEAD),Y ;STORE MIDI MESSAGE
INC QHEAD
;
PDLTRIG LDA #$00
STA PDL0DONE
STA PDL1DONE
LDA #$00
STA $C0A0 ;START TIMER
BIT PTRIG
JMP MAINLOOP
;
CHN TESTCTRL.SC2