home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Set of Apple II Hard Drive Images
/
eric.hdv
/
SOURCE
/
MACRO.ZRC.txt
< prev
next >
Wrap
Text File
|
2020-08-13
|
2KB
|
111 lines
;*** MACRO ENTRY ***
;
; BRUN PROGRAM FROM DISK
;
MTOTAL EQU 3
BASL EQU $28
KSW EQU $38
OURCH EQU $57B
KBD EQU $C000
CXROMOFF EQU $C006
CXROMON EQU $C007
KBDSTRB EQU $C010
ALTCHAR EQU $C01E
OPENAPL EQU $C061
INVERT EQU $CEDD
PICK EQU $CF01
;
ORG $300
;SET UP NEW INPUT LINK
LDA #>NEWIN
STA KSW
LDA #<NEWIN
STA KSW+1
RTS
;THIS IS THE NEW INPUT ROUTINE
NEWIN BIT ALTCHAR
BPL NEWIN1
STA (BASL),Y
STA CXROMON
JSR INVERT
NEWIN1 STX XSAVE
STY YSAVE
STA ASAVE
BIT MACROFLG
BMI GETMAC
NEWIN2 BIT KBD
BPL NEWIN2
BIT ALTCHAR
BMI NEWIN3
STA (BASL),Y
NEWIN3 LDA KBD
BIT KBDSTRB
BIT ALTCHAR
BPL NEWIN4
CMP #$9B
BEQ NEWIN2
CMP #$95
BNE CLRCURS
LDY OURCH
JSR PICK
ORA #$80
CLRCURS JSR INVERT
STA CXROMOFF
NEWIN4 BIT OPENAPL
BPL EXIT
LDX #0
ORIGSCAN CMP MACROKEY,X
BEQ FINDMAC
INX
CPX #MTOTAL
BNE ORIGSCAN
BEQ EXIT
FINDMAC LDA #$80
STA MACROFLG
STA CMDNUM
LDX #0
STX MACROPOS
LDY #0
FINDMAC1 CPY CMDNUM
BEQ GETMAC
SKIPMAC LDX MACROPOS
LDA PHRASES,X
BEQ FINDMAC2
INC MACROPOS
BNE SKIPMAC
FINDMAC2 INC MACROPOS
INY
BNE FINDMAC1
GETMAC LDX MACROPOS
LDA PHRASES,X
INC MACROPOS
CMP #0
BNE EXIT1
LDA #0
STA MACROFLG
BEQ NEWIN2
EXIT1 PHA
LDA ASAVE
LDY YSAVE
STA (BASL),Y
PLA
EXIT LDX XSAVE
RTS
;
ASAVE DS 1
XSAVE DS 1
YSAVE DS 1
CMDNUM DS 1
MACROFLG DFB 0
MACROPOS DFB 0
;
MACROKEY ASC "X"
ASC "x"
ASC "Z"
PHRASES ASC "S"
DFB 0
ASC "s"
DFB 0
DFB 93
DFB 0