2624
|
1 IFNE SCF.D-1
|
|
2
|
|
3 SCF.D SET 1
|
|
4
|
|
5 ********************************************************************
|
|
6 * scf.d - Sequential Character File Manager Definitions
|
|
7 *
|
|
8 * $Id$
|
|
9 *
|
|
10 * SCF stands for 'Sequential Character Filemanager' and is a package of subroutines
|
|
11 * that define the logical structure of a serial device.
|
|
12 *
|
|
13 * The data structures in this file give SCF its 'personality' and are used
|
|
14 * by SCF itself, as well as applications that will require disk I/O.
|
|
15 *
|
|
16 * Edt/Rev YYYY/MM/DD Modified by
|
|
17 * Comment
|
|
18 * ------------------------------------------------------------------
|
|
19 * 1984/01/11 YO
|
|
20 * Added V.KANJI, V.KBUF, V.MODADR for new kanji input process.
|
|
21 *
|
|
22 * 1985/04/20 Mark G. Hawkins
|
|
23 * Added V.PDLHd Path Descriptor List Head.
|
|
24 *
|
|
25 * 1985/04/21 Mark G. Hawkins
|
|
26 * Added PD.PLP and PD.PST for modem handling.
|
|
27 *
|
|
28 * 1987/06/23 Kevin K. Darling
|
|
29 * Updated with Dev Desc info.
|
|
30 *
|
|
31 * 1998/10/03 Boisy G. Pitre
|
|
32 * Consolidated L1/L2 scfdefs.
|
|
33 *
|
|
34 * 2003/01/21 Boisy G. Pitre
|
|
35 * Added symbolics for enhanced SCF line editing.
|
|
36 *
|
|
37 * 2003/06/02 Boisy G. Pitre
|
|
38 * Updated comments for clarity.
|
|
39 *
|
|
40 * 2004/05/17 Boisy G. Pitre
|
|
41 * Added higher baud rates.
|
|
42
|
|
43 NAM scf.d
|
|
44 TTL Sequential File Manager Definitions
|
|
45
|
|
46 PAG
|
|
47 *******************************
|
|
48 * SCF Device Descriptor Offsets
|
|
49 *
|
|
50 * These definitions are for SCF device descriptors.
|
|
51
|
|
52 ORG M$DTyp
|
|
53 IT.DVC RMB 1 Device type (DT.SCF)
|
|
54 IT.UPC RMB 1 Uppercase flag
|
|
55 IT.BSO RMB 1 Backspace behavior
|
|
56 IT.DLO RMB 1 Delete behavior
|
|
57 IT.EKO RMB 1 Echo flag
|
|
58 IT.ALF RMB 1 Auto linefeed flag
|
|
59 IT.NUL RMB 1 End-of-line null count
|
|
60 IT.PAU RMB 1 Page pause flag
|
|
61 IT.PAG RMB 1 Number of lines per page
|
|
62 IT.BSP RMB 1 Backspace character
|
|
63 IT.DEL RMB 1 Delete-line character
|
|
64 IT.EOR RMB 1 End-of-record character
|
|
65 IT.EOF RMB 1 End-of-file character
|
|
66 IT.RPR RMB 1 Reprint-line character
|
|
67 IT.DUP RMB 1 Duplicate-last-line character
|
|
68 IT.PSC RMB 1 Pause character
|
|
69 IT.INT RMB 1 Interrupt character
|
|
70 IT.QUT RMB 1 Quit character
|
|
71 IT.BSE RMB 1 Backspace echo character
|
|
72 IT.OVF RMB 1 Bell character
|
|
73 IT.PAR RMB 1 Parity
|
|
74 IT.BAU RMB 1 Baud rate
|
|
75 IT.D2P RMB 2 Attached device name string offset
|
|
76 IT.XON RMB 1 X-ON character
|
|
77 IT.XOFF RMB 1 X-OFF character
|
|
78 IT.COL RMB 1 Number of columns for display
|
|
79 IT.ROW RMB 1 Number of rows for display
|
|
80 IT.XTYP RMB 1 Extended type (added by BRI)
|
|
81
|
|
82 IFGT Level-1
|
|
83 * Window Descriptor Additions
|
|
84 * For CoCo window, where IT.PAR = $80
|
|
85 ORG IT.ROW+1
|
|
86 IT.WND RMB 1 Window number (matches device name) ($2E)
|
|
87 IT.VAL RMB 1 Use defaults on Init (0=no, 1=yes)
|
|
88 IT.STY RMB 1 Screen type default
|
|
89 IT.CPX RMB 1 Column start default
|
|
90 IT.CPY RMB 1 Row start default
|
|
91 IT.FGC RMB 1 Foreground color default
|
|
92 IT.BGC RMB 1 Background color default
|
|
93 IT.BDC RMB 1 Border color default
|
|
94 ENDC
|
|
95
|
|
96
|
|
97 PAG
|
|
98 ********************
|
|
99 * SCF Static Storage
|
|
100 *
|
|
101 * SCF devices must reserve this space for SCF
|
|
102 *
|
|
103 ORG V.USER
|
|
104 V.TYPE RMB 1 Device type or parity
|
|
105 V.LINE RMB 1 Lines left until end of page
|
|
106 V.PAUS RMB 1 Immediate Pause request
|
|
107 V.DEV2 RMB 2 Attached device's static
|
|
108 V.INTR RMB 1 Interrupt char
|
|
109 V.QUIT RMB 1 Quit char
|
|
110 V.PCHR RMB 1 Pause char
|
|
111 V.ERR RMB 1 Accumulated errors
|
|
112 V.XON RMB 1 X-On char
|
|
113 V.XOFF RMB 1 X-Off char
|
|
114 V.KANJI RMB 1 Kanji mode flag
|
|
115 V.KBUF RMB 2 Kana - Kanji convert routine work address
|
|
116 V.MODADR RMB 2 Kana - Kanji convert module address
|
|
117 V.PDLHd RMB 2 Open path descriptor list head pointer
|
|
118 V.RSV RMB 5 Reserve bytes for future expansion
|
|
119 V.SCF EQU . Total SCF manager static overhead
|
|
120
|
|
121
|
|
122 PAG
|
|
123 ***********************
|
|
124 * Character Definitions
|
|
125 *
|
|
126 C$NULL SET 0 Null char
|
|
127 C$RPET SET $01 (CTRL-A - SOH) Repeat last input line
|
|
128 C$INTR SET $03 (CTRL-C - ETX) Keyboard interrupt
|
|
129 C$RPRT SET $04 (CTRL-D - EOT) Reprint current input line
|
|
130 C$QUIT SET $05 (CTRL-E - ENQ) Keyboard Abort
|
|
131 C$BELL SET $07 (CTRL-G - BEL) Line overflow warning
|
|
132 C$BSP SET $08 (CTRL-H - BS ) Back space
|
|
133 C$RARR SET $09 Right Arrow
|
|
134 C$EL SET $05 Erase Line
|
|
135 C$LF SET $0A Line feed
|
|
136 C$HOME SET $0B Home position Code
|
|
137 C$Clsgr SET $15 Graphic screen clear (use FM-11)
|
|
138 C$Clsall SET $16 Graphic & character clear (use FM-11)
|
|
139 C$CR SET $0D Carriage return
|
|
140 C$FORM SET $0C (CTRL-L - FF ) Form Feed ... screen clear
|
|
141 C$SI SET $0F Shift IN Code
|
|
142 C$SO SET $0E Shift OUT Code
|
|
143 C$DELETE SET $10 Delete char (for SCF enhanced line editing)
|
|
144 C$XON SET $11 (CTRL-Q - DC1) Transmit Enable
|
|
145 C$INSERT SET C$XON Insert char (for SCF enhanced line editing)
|
|
146 C$XOFF SET $13 (CTRL-S - DC3) Transmit Disable
|
|
147 C$PLINE SET C$XOFF Print remaining line (for SCF enhanced line editing)
|
|
148 C$PAUS SET $17 (CTRL-W - ETB) Pause character
|
|
149 C$DEL SET $18 (CTRL-X - CAN) Delete line
|
|
150 C$SHRARR SET $19 Shift Right-Arrow
|
|
151 C$EOF SET $1B (CTRL-[ - ESC) END of file
|
|
152 C$RGT SET $1C Cursor right
|
|
153 C$LFT SET $1D Cursor left
|
|
154 C$UP SET $1E Cursor up
|
|
155 C$DWN SET $1F Cursor down
|
|
156 C$SPAC SET $20 Space
|
|
157 C$PERD SET '.
|
|
158 C$COMA SET ',
|
|
159
|
|
160
|
|
161 PAG
|
|
162 *********************************************
|
|
163 * Sequential Character Path Descriptor Format
|
|
164 *
|
|
165 * A path descriptor is created for every new path that is open
|
|
166 * via the I$Open system call (processed by IOMan). Process
|
|
167 * descriptors track state information of a path.
|
|
168 *
|
|
169 ORG PD.FST
|
|
170 PD.DV2 RMB 2 Output device table pointer
|
|
171 PD.RAW RMB 1 Read/Write or ReadLn/WritLn mode
|
|
172 PD.MAX RMB 2 ReadLn high byte count
|
|
173 PD.MIN RMB 1 Devices are "mine" if clear
|
|
174 PD.STS RMB 2 Status routine module addr
|
|
175 PD.STM RMB 2 Reserved for status routine
|
|
176 ORG PD.OPT
|
|
177 RMB 1 Device type
|
|
178 PD.UPC RMB 1 Case (0=both, 1=upper only)
|
|
179 PD.BSO RMB 1 Backspace (0=BSE, 1=BSE,SP,BSE)
|
|
180 PD.DLO RMB 1 Delete (0=BSE over line, 1=CRLF)
|
|
181 PD.EKO RMB 1 Echo (0=No Echo)
|
|
182 PD.ALF RMB 1 Auto linefeed (0=No auto LF)
|
|
183 PD.NUL RMB 1 End of Line null count
|
|
184 PD.PAU RMB 1 Page pause (0=No end of page pause)
|
|
185 PD.PAG RMB 1 Lines per page
|
|
186 PD.BSP RMB 1 Backspace character
|
|
187 PD.DEL RMB 1 Delete Line character
|
|
188 PD.EOR RMB 1 End of Record character (read only)
|
|
189 PD.EOF RMB 1 End of File character
|
|
190 PD.RPR RMB 1 Repront Line character
|
|
191 PD.DUP RMB 1 Dup Last Line character
|
|
192 PD.PSC RMB 1 Pause character
|
|
193 PD.INT RMB 1 Keyboard interrupt character (CTRL-C)
|
|
194 PD.QUT RMB 1 Keyboard quit character (CTRL-E)
|
|
195 PD.BSE RMB 1 Backspace echo character
|
|
196 PD.OVF RMB 1 Line overflow character (BELL)
|
|
197 PD.PAR RMB 1 Parity code
|
|
198 PD.BAU RMB 1 ACIA baud rate (Color Computer)
|
|
199 PD.D2P RMB 2 Offset of DEV2 name
|
|
200 PD.XON RMB 1 ACIA X-ON character
|
|
201 PD.XOFF RMB 1 ACIA X-OFF character
|
|
202 OPTCNT EQU .-PD.OPT Total user settable options
|
|
203 PD.ERR RMB 1 Most recent I/O error status
|
|
204 PD.TBL RMB 2 Device table addr (copy)
|
|
205 PD.PLP RMB 2 Path Descriptor List Pointer
|
|
206 PD.PST RMB 1 Current path status
|
|
207
|
|
208
|
|
209 * PD.PST values Path Descriptor Status byte
|
|
210 *
|
|
211 PST.DCD EQU %00000001 Set if DCD is lost on Serial port
|
|
212
|
|
213
|
|
214 * PD.PAR definitions
|
|
215 *
|
|
216 * Parity
|
|
217 PARNONE EQU %00000000
|
|
218 PARODD EQU %00100000
|
|
219 PAREVEN EQU %01100000
|
|
220 PARMARK EQU %10100000
|
|
221 PARSPACE EQU %11100000
|
|
222
|
|
223 * PD.BAU definitions
|
|
224 *
|
|
225 * Baud rate
|
|
226 B110 EQU %00000000
|
|
227 B300 EQU %00000001
|
|
228 B600 EQU %00000010
|
|
229 B1200 EQU %00000011
|
|
230 B2400 EQU %00000100
|
|
231 B4800 EQU %00000101
|
|
232 B9600 EQU %00000110
|
|
233 B19200 EQU %00000111
|
|
234 B38400 EQU %00001000
|
|
235 B57600 EQU %00001001
|
|
236 B115200 EQU %00001010
|
|
237 * Word size
|
|
238 WORD8 EQU %00000000
|
|
239 WORD7 EQU %00100000
|
|
240 * Stop bits
|
|
241 STOP1 EQU %00000000
|
|
242 STOP2 EQU %00010000
|
|
243
|
|
244 ENDC
|