mirror of
https://github.com/flowenol/applesoft-lite.git
synced 2024-10-31 09:05:47 +00:00
89 lines
2.9 KiB
ArmAsm
89 lines
2.9 KiB
ArmAsm
; Zero Page locatinos used by Applesoft Lite
|
|
|
|
GOWARM := $0000 ; Gets "jmp RESTART"
|
|
GOSTROUTZ := $0003 ; Gets "jmp STROUT"
|
|
CHARAC := $000D ; Alternate string terminator
|
|
ENDCHR := $000E ; String terminator
|
|
TKNCNTR := $000F ; Used in PARSE
|
|
EOLPNTR := $000F ; Used in NXLIN
|
|
NUMDIM := $000F ; Used in array routines
|
|
DIMFLG := $0010
|
|
VALTYP := $0011 ; $: VALTYP=$FF; %: VALTYP+1=$80
|
|
DATAFLG := $0013 ; Used in PARSE
|
|
GARFLG := $0013 ; Used in GARBAG
|
|
SUBFLG := $0014
|
|
INPUTFLG := $0015 ; = $40 for GET, $98 for READ
|
|
CPRMASK := $0016 ; Receives CPRTYP in FRMEVL
|
|
PROMPT := $0033
|
|
LINNUM := $0050 ; Converted line #
|
|
TEMPPT := $0052 ; Last used temp string desc
|
|
LASTPT := $0053 ; Last used temp string pntr
|
|
TEMPST := $0055 ; Holds up to 3 descriptors
|
|
INDEX := $005E
|
|
DEST := $0060
|
|
RESULT := $0062 ; Result of last * or /
|
|
TXTTAB := $0067 ; Start of program text
|
|
VARTAB := $0069 ; Start of variable storage
|
|
ARYTAB := $006B ; Start of array storage
|
|
STREND := $006D ; End of array storage
|
|
FRETOP := $006F ; Start of string storage
|
|
FRESPC := $0071 ; Temp pntr, string routines
|
|
MEMSIZ := $0073 ; End of string space (HIMEM)
|
|
CURLIN := $0075 ; Current line number
|
|
OLDLIN := $0077 ; Addr. of last line executed
|
|
OLDTEXT := $0079
|
|
DATLIN := $007B ; Line # of current data stt.
|
|
DATPTR := $007D ; Addr of current data stt.
|
|
INPTR := $007F
|
|
VARNAM := $0081 ; Name of variable
|
|
VARPNT := $0083 ; Addr of variable
|
|
FORPNT := $0085
|
|
TXPSV := $0087 ; Used in INPUT
|
|
LASTOP := $0087 ; Scratch flag used in FRMEVL
|
|
CPRTYP := $0089 ; >,=,< flag in FRMEVL
|
|
TEMP3 := $008A
|
|
FNCNAM := $008A
|
|
DSCPTR := $008C
|
|
DSCLEN := $008F ; used in GARBAG
|
|
JMPADRS := $0090 ; gets "jmp ...."
|
|
LENGTH := $0091 ; used in GARBAG
|
|
ARGEXTENSION := $0092 ; FP extra precision
|
|
TEMP1 := $0093 ; save areas for FAC
|
|
ARYPNT := $0094 ; used in GARBAG
|
|
HIGHDS := $0094 ; pntr for BLTU
|
|
HIGHTR := $0096 ; pntr for BLTU
|
|
TEMP2 := $0098
|
|
TMPEXP := $0099 ; used in FIN (EVAL)
|
|
INDX := $0099 ; used by array rtns
|
|
EXPON := $009A ; "
|
|
DPFLG := $009B ; flags dec pnt in FIN
|
|
LOWTR := $009B
|
|
EXPSGN := $009C
|
|
FAC := $009D ; main floating point accumulator
|
|
VPNT := $00A0 ; temp var ptr
|
|
FACSIGN := $00A2 ; holds unpacked sign
|
|
SERLEN := $00A3 ; holds length of series - 1
|
|
SHIFTSIGNEXT := $00A4 ; sign extension, right shifts
|
|
ARG := $00A5 ; secondary FP accumulator
|
|
ARGSIGN := $00AA
|
|
SGNCPR := $00AB ; flags opp sign in FP routines
|
|
FACEXTENSION := $00AC ; FAC extension byte
|
|
SERPNT := $00AD ; pntr to series data in FP
|
|
STRNG1 := $00AB
|
|
STRNG2 := $00AD
|
|
PRGEND := $00AF
|
|
CHRGET := $00B1
|
|
CHRGOT := $00B7
|
|
TXTPTR := $00B8
|
|
RNDSEED := $00C9
|
|
LOCK := $00D6 ; no user access if > 127
|
|
ERRFLG := $00D8 ; $80 if ON ERR active
|
|
ERRLIN := $00DA ; line # where error occurred
|
|
ERRPOS := $00DC ; TXTPTR save for HANDLERR
|
|
ERRNUM := $00DE ; which error occurrred
|
|
ERRSTK := $00DF ; stack pntr before error
|
|
TRCFLG := $00F2
|
|
TXTPSV := $00F4
|
|
CURLSV := $00F6
|
|
REMSTK := $00F8 ; stack pntr before each stt.
|