-
Notifications
You must be signed in to change notification settings - Fork 85
/
ossrc
166 lines (166 loc) · 3.99 KB
/
ossrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
;**********************************
;* *
;* PET 2001 OPERATING SYSTEM *
;* *
;* VERSION 1.0 AUGUST 8,1977 *
;* *
;* ROMS PRODUCED: 901439-03 *
;* 901439-04 *
;* 901439-07 *
;* RECONSTR.: M.HOFFMANN-VETTER *
;* *
;**********************************
.SKI
OFFSET =$8000 ;FOR *** HARD MACHINE ***
.SKI
; LISTING DATE ??/??/??
.SKI
* =$0
BUF ;BASIC INPUT BUFFER
* =$E0
PNT *=*+1
POINT *=*+1
PNTR *=*+1
SAL *=*+1
SAH *=*+1
EAL *=*+1
EAH *=*+1
CMP0 *=*+1
TEMP *=*+1
T1 *=*+1 ;TEMPORARY 1
QTSW *=*+1
SNSW1 *=*+1
DIFF *=*+1
PRP *=*+1
FNLEN *=*+1 ;LENGTH CURRENT FILE N STR
LA *=*+1 ;CURRENT FILE LOGICAL ADDR
SA *=*+1 ;CURRENT FILE 2ND ADDR
FA *=*+1 ;CURRENT FILE PRIMARY ADDR
LNMX *=*+1
TBUF *=*+2
TBLX *=*+1
DATA *=*+1
STAL *=*+1
STAH *=*+1
FNADR *=*+2 ;ADDR CURRENT FILE NAME STR
INSRT *=*+1
OCHAR *=*+1
FSBLK *=*+1 ;CASSETTE READ BLOCK COUNT
MYCH *=*+1
*=$100
BAD *=*+1
* =$200
TIME *=*+3 ;24 HR CLOCK IN 1/60 SEC
LSTX *=*+1 ;INDEX TO CHAR IN KEYSCAN
SFST *=*+1 ;KEYBOARD SHIFT FLAG
CRFAC *=*+2 ;CORRECTION FACTOR TIME
CAS1 *=*+1
CAS2 *=*+1
STKEY *=*+1 ;STOP KEY FLAG
SVXT *=*+1 ;TEMPORARY
VERCK *=*+1 ;LOAD OR VERIFY FLAG
SATUS *=*+1 ;OPERATION STATUS BYTE
NDX *=*+1 ;INDEX TO KEYD QUEUE
RVS *=*+1 ;REVERSE FIELD ENABLED
KEYD *=*+10
CINV *=*+2 ;IRQ RAM VECTOR
CBINV *=*+2 ;BRK INSTR RAM VECTOR
C3P0 *=*+1 ;CASSETTE SERVQ CONSTANT
INDX *=*+1 ;
SNSW *=*+1 ;CASSETTE....
LSXP *=*+1 ;START GF SCREEN INPUT
LSTP *=*+1
BSOUR *=*+1 ;CHAR BUFFER FOR IEEE
SFDX *=*+1 ;SHIFT MODE FOR PRINT
BLNSW *=*+1 ;CURSOR BLINK ENABLE
BLNCT *=*+1 ;COUNTER TO FLIP CURSORBREAK
GDBLN *=*+1 ;O0LD CHAR BEFORE BLINK
BLNON *=*+1 ;ON/OFF BLINK FLAG
SYNO *=*+1 ;CASSETTE SYNC #
LDTB1 *=*+25
;TABLES FOR OPEN FILES
LAT *=*+10 ;LOGICAL FILE NUMBERS
FAT *=*+10 ;PRIMARY DEVICE NUMBERS
SAT *=*+10 ;SECONDARY ADDRESSES
CRSW *=*+1 ;INPUT/GET FLAG
XSAV *=*+1 ;TEMP FOR BASIN
LDTND *=*+1 ;INDEX TO LOGICAL FILE
DFLTN *=*+1 ;DEFAULT INPUT DEVICE #
DFLTO *=*+1 ;DEFAULT QUTPUT DEVICE #
PRTY *=*+1 ;CASSETTE PARITY
DPSW *=*+1 ;CASSETTE DIPOLE SWITCH
WSW *=*+1 ;CASSETE WRITE ENABLE
RCNT
T2 *=*+1 ;TEMPORARY 2
T3 *=*+1 ;TEMPORARY 3
L026A *=*+2
PCNTR *=*+1 ;CASSETTE STUFF
*=*+2
FIRT *=*+1
CNTDN *=*+1 ;CASSETTE SYNC CQUNTDOWN
BUFPT *=*+2 ;POINTER TO ACTIVE CASSETTE BUFFE
SHCNL *=*+1 ;CASSETTE SHORT COUNT
RER *=*+1 ;CASSETTE READ ERROR
REZ *=*+1 ;CASSETE READING ZEROES
PTR1 *=*+1 ;CASSETTE ERROR PASS1
PTR2 *=*+1 ;CASSETTE ERROR PASS2
RDFLG *=*+1 ;CASSETTE READ MODE
SHCNH *=*+1 ;CASSETTE SHORT CNT
TAPE1 *=*+192
TAPE2 *=*+192 ;192 BYTES RESERVED
*=$E810
PIAL *=*+1
PIAL1 *=*+1
PIAK *=*+1
PIAS *=*+1
*=$E820
IEEI *=*+1
IEEIS *=*+1
IEEO *=*+1
IEEOS *=*+1
*=$E840
PIA *=*+1
SYNC *=*+1
P2DB *=*+1
P2DA *=*+1
TIL *=*+1
TIH *=*+1
TILL *=*+1
TILH *=*+1
T2L *=*+1
T2H *=*+1
SR *=*+1
ACR *=*+1
PCR *=*+1
IFR *=*+1
IER *=*+1
SYNC1 *=*+1
.SKI 5
;CONSTANTS FROM BASIC
INIT =$E0D2+OFFSET-$8000
FRMNUM =$CCA4+OFFSET-$8000
GETADR =$D6D0+OFFSET-$8000
LINNUM =$0008
TXTPTR =$00C9
FINI =$C430+OFFSET-$8000
STXTPT =$C59A+OFFSET-$8000
FLOAD =$C581+OFFSET-$8000
VARTAB =$007C
GETBYT =$D676+OFFSET-$8000
SNERR =$CE1C+OFFSET-$8000
CHRGOT =$00C8
TYPERR =$C379+OFFSET-$8000
SYNCHR =$CE13+OFFSET-$8000
FRESTR =$D57B+OFFSET-$8000
FRMEVL =$CCB8+OFFSET-$8000
BSTOP =$C71C+OFFSET-$8000 ;BASIC SYMB STOP
INDEX1 =$0071
LASTWR =$E1E1+OFFSET-$8000
.SKI 5
;TAPE BLOCK TYPES
EOT=5
BLF=1
BDF=2
BDFH=4
BUFSZ=192
.FILE OA1SRC