home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Set of Apple II Hard Drive Images
/
eric.hdv
/
SOURCE
/
JOYCTL.SC4.txt
< prev
next >
Wrap
Text File
|
2020-08-13
|
6KB
|
177 lines
; JOYCTL - JOYSTICK MIDI CONTROLLER
;
;-------------------------------------------
PHASE20 LDA STS ;4
AND #$01 ;2
BEQ STORX ;2/3
LDA DTA ;4
CMP #$F8 ;2
BCS PHASE20 ;2/3
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
JMP PHASE20 ;3
;
; ;DON'T ADD MESSAGE IF QUEUE WILL OVERFLOW
; ;(JOYSTICK WILL GENERATE MOST OF THE MESSAGES)
STORX LDA QHEAD ;3
STA HEADSAVE ;3
LDA XMSG0 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLX ;2/3
;
LDA XMSG1 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLX ;2/3
;
LDA XMSG2 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLX ;2/3
;
PHASE20A LDA STS ;4
AND #$01 ;2
BEQ PHASE20X ;2/3
LDA DTA ;4
CMP #$F8 ;2
BCS PHASE20A ;2/3
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
JMP PHASE20A ;3
;
QFULLX LDA HEADSAVE
STA QHEAD
PHASE20X LDA #10 ;2
STA PHASE ;3
JMP CHKMIDI ;3 ;80 CYCLES
;-------------------------------------------
PHASE22 NOP
PHASE24 NOP
;-------------------------------------------
PHASE26 LDY PREVY ;3
LDA YTABLE,Y ;5
LDY YBYTE ;4
STA YMSG0,Y ;5 STICK INTO MIDI MESSAGE
LDA #28 ;2
STA PHASE ;3
JMP CHKMIDI ;3 ;25 CYCLES
;-------------------------------------------
PHASE28 LDA STS ;4
AND #$01 ;2
BEQ STORY ;2/3
LDA DTA ;4
CMP #$F8 ;2
BCS PHASE28 ;2/3
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
JMP PHASE28 ;3
;
; ;DON'T ADD MESSAGE IF QUEUE WILL OVERFLOW
; ;(JOYSTICK WILL GENERATE MOST OF THE MESSAGES)
STORY LDA QHEAD ;3
STA HEADSAVE ;3
;
LDA YMSG0 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLY ;2/3
;
LDA YMSG1 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLY ;2/3
;
LDA YMSG2 ;4
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
;
LDA QHEAD ;3
CMP QTAIL ;3
BEQ QFULLY ;2/3
;
PHASE28A LDA STS ;4
AND #$01 ;2
BEQ PHASE28X ;2/3
LDA DTA ;4
CMP #$F8 ;2
BCS PHASE28A ;2/3
;;; STA (QHEAD) ;5 *65C02*
DFB $92
DFB QHEAD
INC QHEAD ;5
JMP PHASE28A ;3
;
QFULLY LDA HEADSAVE ;3
STA QHEAD ;3
PHASE28X LDA #12 ;2
STA PHASE ;3
JMP CHKMIDI ;3 ;80 CYCLES
;-------------------------------------------
PHASE30 NOP
PHASE32 NOP
;-------------------------------------------
XTABLE DFB 10,12,14,16,18,20,22,24,26,28
DFB 30,32,34,36,38,40,42,44,46,48
DFB 50,52,54,56,58,60,62,64,66,68
DFB 70,72,74,76,78,80,82,84,86,88
DFB 90,92,94,96,98,100,102,104,106,108
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
DFB 110,110,110,110,110,110,110,110,110,110
;
YTABLE DFB 110,108,106,104,102,100,98,96,94,92
DFB 90,88,86,84,82,80,78,76,74,72
DFB 70,68,66,64,62,60,58,56,54,52
DFB 50,48,46,44,42,40,38,36,34,32
DFB 30,28,26,24,22,20,18,16,14,12
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
DFB 10,10,10,10,10,10,10,10,10,10
;-------------------------------------------
; END OF PROGRAM
;-------------------------------------------