Download super-extended-basic..

Transcript
APPENDIX I
BASIC 1.2/EXTENDED 1.1 vs COLOR EXTENDED 2.0 DIFFERENCES
SUPER EXTENDED BASIC UNRAVELLED II
A057
A059
A05B
A05E
A061
A084
A087
A089
A08A
A08B
A08C
A08D
A08E
A08F
A090
A091
A092
ORIGIN:SPECTRAL ASSOC
REVISED:12/26/1999 WALTER K ZYDHEK
STB
1,X
* ENABLE PIA0 PERIPHERAL REGISTERS, DISABLE PIA0
STB
3,X
* MPU INTERRUPTS, SET CA2, CA1 TO OUTPUTS
JMP
LA072
* THE MANUAL ROM CARTRIDGE START (EXEC &HE010) JUMPS HERE
JSR
LBC2E
SET UP THE SYSTEM FOR A ROM CARTRIDGE
JMP
ROMPAK
JUMP TO THE ROM-PAK
LDX
BRA
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
#$7FFF
LA093
EXBAS+2
B,X
HRWIDTH
$F77E
LA199
>KEYIN
LA0D6
LA1B9
JUMP TO EXTENDED BASIC
LA0DE
JMP
PSHS
TST
LBNE
JSR
JSR
BEQ
JMP
A0F3
LA0F3
JMP
LAC73
GO TO MAIN LOOP OF BASIC
A0FC
LA0FC
JSR
L8C28
PREPARE TO USE THE CARTRIDGE ROM; FORCE THE ROM MODE
A0CB
A0CE
A0D0
A0D2
A0D6
A0D9
A0DC
A0DE
LA084
LA0CE
LA0D6
FORCE THE TOP OF RAM TO BE $7FFF
THESE 10 NOPs ARE JUST SPACE FILLERS
CHECK FOR HI-RES TEXT MODE
BRANCH IF A HI-RES TEXT MODE IS ENABLED (ALINK24)
BLINK THE CURSOR
GET A KEY
KEEP GOING UNTIL A KEY IS DEPRESSED
REMOVE THE CURSOR FROM THE SCREEN AND RETURN
* THIS ROUTINE GETS A KEYSTRIKE FROM THE KEYBOARD IF A KEY
* IS DOWN. IT RETURNS A ZERO TRUE IF THERE WAS NO KEY DOWN.
A1C1
A1C4
A1C5
A1C6
A1C7
A1C8
A1C9
A1CA
BFF0
BFF2
BFF4
BFF6
BFF8
BFFA
BFFC
BFFE
LA1C1
JMP
RTS
RTS
RTS
RTS
RTS
RTS
RTS
KEYIN
*
*
*
*
*
* INTERRUPT VECTORS
FDB
$A681
FDB
INT.SWI3
FDB
INT.SWI2
FDB
INT.FIRQ
FDB
INT.IRQ
FDB
INT.SWI
FDB
INT.NMI
FDB
INT.RESET
THESE RTS's ARE WHERE A CHECK WAS PERFORMED TO
SEE IF A KEY WAS DOWN. IF THE CHECK REVEALED THAT
A KEY WAS NOT DOWN, THEN THE KEYIN
ROUTINE WAS NOT CHECKED. WHICH MAKES BASIC RUN
FASTER
RESERVED FOR FUTURE USE (FILLED WITH GARBAGE BYTES)
SOFTWARE INTERRUPT 3
($FEEE)
SOFTWARE INTERRUPT 2
($FEF1)
FAST INTERRUPT REQUEST
($FEF4)
INTERRUPT REQUEST
($FEF7)
SOFTWARE INTERRUPT
($FEFA)
NON-MASKABLE INTERRUPT
($FEFD)
RESET BUTTON
($8C1B)
I2