; PV - permanent variable---DO NOT USE
; TV - temporary variable---maybe use
; DV - double vairable---probably do not use
; Vhh - free to use, but used by BASIC
; Uhh - not used by BASIC at all
;***********************************************
; COLOR BASIC
;***********************************************
CB.endflg equ $00 ; stop/end flag; positive=stop, neg=end
.charac equ $01 ; terminator flag 1
.endcur equ $02 ; terminator flag 2
.tmploc equ $03 ; scratch variable
.ifctr equ $04 ; IF counter - how many IF statement in a line
.dimflg equ $05 ; DV array flag 0=evaluate 1=dimentioning
.valtyp equ $06 ; DV *PV type flag; 0=numeric, $FF=string
.garbfl equ $07 ; *TV string space housekeeping flag
.arydis equ $08 ; disable array search; 0=allow search
.inpflg equ $09 ; *TV input flag: read=0, input<>0
.relflg equ $0A ; *TV relational operator flag
.temppt equ $0B ; *PV temporary string stack pointer
.lastpt equ $0D ; *PV addr of last used string stack address
.temptr equ $0F ; temporary pointer
.tmptr1 equ $11 ; temporary descriptor storage (stack search)
.fpa2 equ $13 ; floating point accumulator #2 mantissa
.botstk equ $17 ; bottom of stack at last check
.txttab equ $19 ; *PV beginning of BASIC program
.vartab equ $1B ; *PV start of variables
.arytab equ $1D ; *PV start of arrays
.aryend equ $1F ; *PV end of arrays (+1)
.fretop equ $21 ; *PV start of string storage (top of free RAM)
.strtab equ $23 ; *PV start of string variables
.frespc equ $25 ; utility string pointer
.memsiz equ $27 ; *PV top of string space
.oldtxt equ $29 ; saved line number during a "STOP"
.binval equ $2B ; binary value of a converted line number
.oldptr equ $2D ; saved input ptr during a "STOP"
.tinptr equ $2F ; temporary input pointer storage
.dattxt equ $31 ; *PV "DATA" statement line number pointer
.datptr equ $33 ; *PV "DATA" statement address pointer
.dattmp equ $35 ; data pointer for "INPUT" & "READ"
.varnam equ $37 ; *TV temp storage for a variable name
.varptr equ $39 ; *TV pointer to a variable descriptor
.vardes equ $3B ; temp pointer to a variable descriptor
.relptr equ $3D ; pointer to relational operator processing routine
.trelfl equ $3F ; temporary relational operator flag byte
V40 equ $40 ; FPA #3 packed
V41 equ $41
V42 equ $42
V43 equ $43
V44 equ $44
V45 equ $45 ; FPA #4 packed
V46 equ $46
V47 equ $47
V48 equ $48
V49 equ $49
V4A equ $4A ; FPA #5 packed
V4B equ $4B
V4C equ $4C
V4D equ $4D
V4E equ $4D
CB.fp0exp equ $4F ; FPA #0 exponent
.fpa0 equ $50 ; FPA #0 mantissa
.fp0sgn equ $54 ; FPA #0 sign
.coefct equ $55 ; polynomial coefficient counter
.strdes equ $56 ; temporary string descriptor
.fpcary equ $5B ; floating point carry byte
.fp1exp equ $5C ; FPA #1 exponent
.fpa1 equ $5D ; FPA #1 mantissa
.fp1sgn equ $61 ; FPA #1 sign
.ressgn equ $62 ; sign of result of floating point operation
.fpsbyt equ $63 ; floating point sub byte (fifth byte)
.coefpt equ $64 ; polynomial coefficient pointer
.lsttxt equ $66 ; current line pointer during list
.curlin equ $68 ; *PV current line # of BASIC program, $FFFF = direct
.devcfw equ $6A ; *TV tab field width
.devlcf equ $6B ; *TV tab zone
.devpos equ $6C ; *TV print position
.devwid equ $6D ; *TV width
.prtdev equ $6E ; *TV print device: 0=not cassette, -1=cassette
.devnum equ $6F ; *PV device number: 0=DLOAD, -2=PRINTER , -1=CASSETTE, 0=SCREEN, 1-15=DISK
.cinbfl equ $70 ; *PV console in buffer flag: 00=not empty, $FF=empty
.rstflg equ $71 ; *PV warm start flag: $55=warm, other=cold
.rstvec equ $72 ; *PV warm start vector - jump address for warm start
.topram equ $74 ; *PV top of RAM
U76 equ $76
U77 equ $77
CB.filsta equ $78 ; *PV file status flag: 0=closed, 1=input, 2=output
.cinctr equ $79 ; *PV console in buffer char counter
.cinptr equ $7A ; *PV console in buffer pointer
.blktyp equ $7C ; *TV cass block type: 0=header, 1=data, $FF=EOF
.blklen equ $7D ; *TV cassette byte count
.cbufad equ $7E ; *TV cassette load buffer pointer
.ccksum equ $80 ; *TV cassette checksum byte
.csrerr equ $81 ; *TV error flag/character count
.cpulwd equ $82 ; *TV pulse width count
.cpertm equ $83 ; *TV bit counter
.cbtpha equ $84 ; *TV bit phase flag
.clstsn equ $85 ; *TV last sine table entry
.grblok equ $86 ; *TV graphic block value for SET, RESET and POINT
.ikeyim equ $87 ; *TV INKEY$ RAM image
.curpos equ $88 ; *PV cursor location
.zero equ $8A ; *PV dummy - these two bytes are alwas zero
.sndton equ $8C ; *TV tone value for SOUND command
.snddur equ $8D ; *TV duration value for SOUND command
.cmpmid equ $8F ; *PV 1200/2400 Hertz partition <-- moved from ROM
.cmp0 equ $90 ; *PV upper limit of 1200 Hz period "
.cmp1 equ $91 ; *PV upper limit of 2400 Hz period "
.syncln equ $92 ; *PV number of $55s to cassette leader "
.blkcnt equ $94 ; *PV cursor blink delay "
.lptbtd equ $95 ; *PV Baud rate constant (600) "
.lptlnd equ $97 ; *PV Printer carriage return delay "
.lptcfw equ $99 ; *PV tab field width "
.lptlcf equ $9A ; *PV last tab zone "
.lptwid equ $9B ; *PV printer width "
.lptpos equ $9C ; *PV line printer position "
.execjp equ $9D ; *PV jump address for EXEC command <-- moved from ROM
.getnch equ $9F ; *PV function <-- moved from ROM
.getcch equ $A5 ; *PV function "
.charad equ $A6 ; *PV function <-- moved from ROM
VAB equ $AB ; low order four bytes of the product
VAC equ $AC ; of a floating point multiplication
VAD equ $AD ; these bytes are used as random data
VAE equ $AE ; by the RND statement
;***********************************************
; EXTENDED COLOR BASIC
;***********************************************
ECB.trcflg equ $AF ; *PV trace flag 0=off else on
.usradr equ $B0 ; *PV address of the start of usr vectors
.forcol equ $B2 ; *PV foreground color
.bakcol equ $B3 ; *PV background color
.wcolor equ $B4 ; *TV wofking color being used by ECB
.allcol equ $B5 ; *TV all pixels in the byte set to color of bakcol
.pmode equ $B6 ; *PV PMODE's mode argument
.endgrp equ $B7 ; *PV end of current graphic page
.horbyt equ $B9 ; *PV number of bytes/horizontal grpahic line
.beggrp equ $BA ; *PV start of graphc page
.grpram equ $BC ; *PV start of graphic RAM (MSB)
.horbeg equ $BD ; DV *PV horizontal coordinate start point
.verbeg equ $BF ; DV *PV vertical coordinate start point
.cssyal equ $C1 ; *PV SCREEN's color set argument
.setflg equ $C2 ; *PV PRESET/PSET flag: 0=PRESET, 1=PSET
.horend equ $C3 ; DV *PV horizontal coordinate ending point
.verend equ $C5 ; DV *PV vertical coordinate ending point
.hordef equ $C7 ; *PV horizontal coordinate default coordinate
.verdef equ $C9 ; *PV vertical coordiate default coordiate
VCB equ $CB
VCC equ $CC
VCD equ $CD
VCE equ $CE
VCF equ $CF
VD0 equ $D0
VD1 equ $D1
VD2 equ $D2
VD3 equ $D3
VD4 equ $D4
VD5 equ $D5
VD6 equ $D6
VD7 equ $D7
VD8 equ $D8
VD9 equ $D9
VDA equ $DA
ECB.chgflg equ $DB ; *TV flag to indicate if graphic data has been changed
.tmpstk equ $DC ; *TV stack pointer storage during paint
.octave equ $DE ; *PV octage value (PLAY)
.volhi equ $DF ; DV *PV volume high value (PLAY)
.vollow equ $E0 ; DV *PV volume low value (PLAY)
.noteln equ $E1 ; *PV note length (PLAY)
.tempo equ $E2 ; *PV tempo value (PLAY)
.plytmr equ $E3 ; *TV timer for the PLAY command
.dotyal equ $E5 ; *TV dotted note timer scale factor
.dlbaud equ $E6 ; DV *PV DLOAD baud rate constant $B0=300, $2C=1200
.timout equ $E7 ; DV *PV DLOAD timeout constant
.angle equ $E8 ; DV *PV angle value (DRAW)
.scale equ $E9 ; DV *PV scale value (DRAW)
;***********************************************
; DISK [EXTENDED] COLOR BASIC
;***********************************************
DECB.dcopc equ $EA ; *PV DSKCON operation code 0-3
.dcdrv equ $EB ; *PV DSKCON drive nubmer 0-3
.dctrk equ $EC ; *PV DSKCON track number 0-34
.dsec equ $ED ; *PV DSKCON sector number 1-18
.dcbpt equ $EE ; *PV DSKCON data pointer
.dcsta equ $F0 ; *PV DSKCON status byte
.fcbtmp equ $F1 ; temporary FCB pointer
UF3 equ $F3
UF4 equ $F4
UF5 equ $F5
UF6 equ $F6
UF7 equ $F7
UF8 equ $F8
UF9 equ $F9
UFA equ $FA
UFB equ $FB
UFC equ $FC
UFD equ $FD
UFE equ $FE
UFF equ $FF
text/x-c; charset=us-ascii
This content has been proxied by September (3851b).