mirror of
https://github.com/zellyn/goapple2.git
synced 2024-12-30 10:30:25 +00:00
164 lines
6.8 KiB
Plaintext
164 lines
6.8 KiB
Plaintext
1010 *--------------------------------
|
|
1020 * ZERO PAGE LOCATIONS:
|
|
1030 *--------------------------------
|
|
1040 GOWARM .EQ $00,01,02 GETS "JMP RESTART"
|
|
1050 GOSTROUT .EQ $03,04,05 GETS "JMP STROUT"
|
|
1060 USR .EQ $0A,0B,0C GETS "JMP <USER ADDR>"
|
|
1070 * (INITIALLY $E199)
|
|
1080 CHARAC .EQ $0D ALTERNATE STRING TERMINATOR
|
|
1090 ENDCHR .EQ $0E STRING TERMINATOR
|
|
1100 TKN.CNTR .EQ $0F USED IN PARSE
|
|
1110 EOL.PNTR .EQ $0F USED IN NXLIN
|
|
1120 NUMDIM .EQ $0F USED IN ARRAY ROUTINES
|
|
1130 DIMFLG .EQ $10
|
|
1140 VALTYP .EQ $11,12 $:VALTYP=$FF; %:VALTYP+1=$80
|
|
1150 DATAFLG .EQ $13 USED IN PARSE
|
|
1160 GARFLG .EQ $13 USED IN GARBAG
|
|
1170 SUBFLG .EQ $14
|
|
1180 INPUTFLG .EQ $15 = $40 FOR GET, $98 FOR READ
|
|
1190 CPRMASK .EQ $16 RECEIVES CPRTYP IN FRMEVL
|
|
1200 SIGNFLG .EQ $16 FLAGS SIGN IN TAN
|
|
1210 HGR.SHAPE .EQ $1A,1B
|
|
1220 HGR.BITS .EQ $1C
|
|
1230 HGR.COUNT .EQ $1D
|
|
1240 MON.CH .EQ $24
|
|
1250 MON.GBASL .EQ $26
|
|
1260 MON.GBASH .EQ $27
|
|
1270 MON.H2 .EQ $2C
|
|
1280 MON.V2 .EQ $2D
|
|
1290 MON.HMASK .EQ $30
|
|
1300 MON.INVFLG .EQ $32
|
|
1310 MON.PROMPT .EQ $33
|
|
1320 MON.A1L .EQ $3C USED BY TAPE I/O ROUTINES
|
|
1330 MON.A1H .EQ $3D "
|
|
1340 MON.A2L .EQ $3E "
|
|
1350 MON.A2H .EQ $3F "
|
|
1360 LINNUM .EQ $50,51 CONVERTED LINE #
|
|
1370 TEMPPT .EQ $52 LAST USED TEMP STRING DESC
|
|
1380 LASTPT .EQ $53,54 LAST USED TEMP STRING PNTR
|
|
1390 TEMPST .EQ $55 - 5D HOLDS UP TO 3 DESCRIPTORS
|
|
1400 INDEX .EQ $5E,5F
|
|
1410 DEST .EQ $60,61
|
|
1420 RESULT .EQ $62 - 66 RESULT OF LAST * OR /
|
|
1430 TXTTAB .EQ $67,68 START OF PROGRAM TEXT
|
|
1440 VARTAB .EQ $69,6A START OF VARIABLE STORAGE
|
|
1450 ARYTAB .EQ $6B,6C START OF ARRAY STORAGE
|
|
1460 STREND .EQ $6D,6E END OF ARRAY STORAGE
|
|
1470 FRETOP .EQ $6F,70 START OF STRING STORAGE
|
|
1480 FRESPC .EQ $71,72 TEMP PNTR, STRING ROUTINES
|
|
1490 MEMSIZ .EQ $73,74 END OF STRING SPACE (HIMEM)
|
|
1500 CURLIN .EQ $75,76 CURRENT LINE NUMBER
|
|
1510 * ( = $FFXX IF IN DIRECT MODE)
|
|
1520 OLDLIN .EQ $77,78 ADDR. OF LAST LINE EXECUTED
|
|
1530 OLDTEXT .EQ $79,7A
|
|
1540 DATLIN .EQ $7B,7C LINE # OF CURRENT DATA STT.
|
|
1550 DATPTR .EQ $7D,7E ADDR OF CURRENT DATA STT.
|
|
1560 INPTR .EQ $7F,80
|
|
1570 VARNAM .EQ $81,82 NAME OF VARIABLE
|
|
1580 VARPNT .EQ $83,84 ADDR OF VARIABLE
|
|
1590 FORPNT .EQ $85,86
|
|
1600 TXPSV .EQ $87,88 USED IN INPUT
|
|
1610 LASTOP .EQ $87 SCRATCH FLAG USED IN FRMEVL
|
|
1620 CPRTYP .EQ $89 >,=,< FLAG IN FRMEVL
|
|
1630 TEMP3 .EQ $8A - 8E
|
|
1640 FNCNAM .EQ $8A
|
|
1650 DSCPTR .EQ $8C
|
|
1660 DSCLEN .EQ $8F USED IN GARBAG
|
|
1670 JMPADRS .EQ $90,91,92 GETS "JMP ...."
|
|
1680 LENGTH .EQ $91 USED IN GARBAG
|
|
1690 ARG.EXTENSION .EQ $92 FP EXTRA PRECISION
|
|
1700 TEMP1 .EQ $93 - 97 SAVE AREAS FOR FAC
|
|
1710 ARYPNT .EQ $94 USED IN GARBAG
|
|
1720 HIGHDS .EQ $94,95 PNTR FOR BLTU
|
|
1730 HIGHTR .EQ $96,97 PNTR FOR BLTU
|
|
1740 TEMP2 .EQ $98 - 9C
|
|
1750 TMPEXP .EQ $99 USED IN FIN (EVAL)
|
|
1760 INDX .EQ $99 USED BY ARRAY RTNS
|
|
1770 EXPON .EQ $9A "
|
|
1780 DPFLG .EQ $9B FLAGS DEC PNT IN FIN
|
|
1790 LOWTR .EQ $9B,9C
|
|
1800 EXPSGN .EQ $9C
|
|
1810 FAC .EQ $9D - A1 MAIN FLT PT ACCUMULATOR
|
|
1820 DSCTMP .EQ $9D,9E,9F
|
|
1830 VPNT .EQ $A0,A1 TEMP VAR PTR
|
|
1840 FAC.SIGN .EQ $A2 HOLDS UNPACKED SIGN
|
|
1850 SERLEN .EQ $A3 HOLDS LENGTH OF SERIES-1
|
|
1860 SHIFT.SIGN.EXT .EQ $A4 SIGN EXTENSION, RIGHT SHIFTS
|
|
1870 ARG .EQ $A5 - A9 SECONDARY FP ACC
|
|
1880 ARG.SIGN .EQ $AA
|
|
1890 SGNCPR .EQ $AB FLAGS OPP SIGN IN FP ROUT.
|
|
1900 FAC.EXTENSION .EQ $AC FAC EXTENSION BYTE
|
|
1910 SERPNT .EQ $AD PNTR TO SERIES DATA IN FP
|
|
1920 STRNG1 .EQ $AB,AC
|
|
1930 STRNG2 .EQ $AD,AE
|
|
1940 PRGEND .EQ $AF,B0
|
|
1950 CHRGET .EQ $B1 - C8
|
|
1960 CHRGOT .EQ $B7
|
|
1970 TXTPTR .EQ $B8,B9
|
|
1980 RNDSEED .EQ $C9 - CD
|
|
1990 HGR.DX .EQ $D0,D1
|
|
2000 HGR.DY .EQ $D2
|
|
2010 HGR.QUADRANT .EQ $D3
|
|
2020 HGR.E .EQ $D4,D5
|
|
2030 LOCK .EQ $D6 NO USER ACCESS IF > 127
|
|
2040 ERRFLG .EQ $D8 $80 IF ON ERR ACTIVE
|
|
2050 ERRLIN .EQ $DA,DB LINE # WHERE ERROR OCCURRED
|
|
2060 ERRPOS .EQ $DC,DD TXTPTR SAVE FOR HANDLERR
|
|
2070 ERRNUM .EQ $DE WHICH ERROR OCCURRED
|
|
2080 ERRSTK .EQ $DF STACK PNTR BEFORE ERROR
|
|
2090 HGR.X .EQ $E0,E1
|
|
2100 HGR.Y .EQ $E2
|
|
2110 HGR.COLOR .EQ $E4
|
|
2120 HGR.HORIZ .EQ $E5 BYTE INDEX FROM GBASH,L
|
|
2130 HGR.PAGE .EQ $E6 HGR=$20, HGR2=$40
|
|
2140 HGR.SCALE .EQ $E7
|
|
2150 HGR.SHAPE.PNTR .EQ $E8,E9
|
|
2160 HGR.COLLISIONS .EQ $EA
|
|
2170 FIRST .EQ $F0
|
|
2180 SPEEDZ .EQ $F1 OUTPUT SPEED
|
|
2190 TRCFLG .EQ $F2
|
|
2200 FLASH.BIT .EQ $F3 = $40 FOR FLASH, ELSE =$00
|
|
2210 TXTPSV .EQ $F4,F5
|
|
2220 CURLSV .EQ $F6,F7
|
|
2230 REMSTK .EQ $F8 STACK PNTR BEFORE EACH STT.
|
|
2240 HGR.ROTATION .EQ $F9
|
|
2250 * $FF IS ALSO USED BY THE STRING OUT ROUTINES
|
|
2260 *--------------------------------
|
|
2270 STACK .EQ $100
|
|
2280 INPUT.BUFFER .EQ $200
|
|
2290 AMPERSAND.VECTOR .EQ $3F5 - 3F7 GETS "JMP ...."
|
|
2300 *--------------------------------
|
|
2310 * I/O & SOFT SWITCHES
|
|
2320 *--------------------------------
|
|
2330 KEYBOARD .EQ $C000
|
|
2340 SW.TXTCLR .EQ $C050
|
|
2350 SW.MIXCLR .EQ $C052
|
|
2360 SW.MIXSET .EQ $C053
|
|
2370 SW.LOWSCR .EQ $C054
|
|
2380 SW.HISCR .EQ $C055
|
|
2390 SW.LORES .EQ $C056
|
|
2400 SW.HIRES .EQ $C057
|
|
2410 *--------------------------------
|
|
2420 * MONITOR SUBROUTINES
|
|
2430 *--------------------------------
|
|
2440 MON.PLOT .EQ $F800
|
|
2450 MON.HLINE .EQ $F819
|
|
2460 MON.VLINE .EQ $F828
|
|
2470 MON.SETCOL .EQ $F864
|
|
2480 MON.SCRN .EQ $F871
|
|
2490 MON.PREAD .EQ $FB1E
|
|
2500 MON.SETTXT .EQ $FB39
|
|
2510 MON.SETGR .EQ $FB40
|
|
2520 MON.TABV .EQ $FB5B
|
|
2530 MON.HOME .EQ $FC58
|
|
2540 MON.WAIT .EQ $FCA8
|
|
2550 MON.RD2BIT .EQ $FCFA
|
|
2560 MON.RDKEY .EQ $FD0C
|
|
2570 MON.GETLN .EQ $FD6A
|
|
2580 MON.COUT .EQ $FDED
|
|
2590 MON.INPORT .EQ $FE8B
|
|
2600 MON.OUTPORT .EQ $FE95
|
|
2610 MON.WRITE .EQ $FECD
|
|
2620 MON.READ .EQ $FEFD
|
|
2630 MON.READ2 .EQ $FF02
|
|
2640 *-------------------------------- |