Mercurial > hg > Members > kono > nitros9-code
annotate level1/cmds/xmode.asm @ 2898:28ed72477814 lwtools-port
Dummy merge of default branch into lwtools
hg -y merge --tool=internal:fail default
hg revert --all --no-backup --rev .
hg resolve -a -m
This dummy merge discards any changes from the default branch
so that the result is the same as what lwtools already had.
When merging back to default branch later, the discarded
changes will be discarded there also, so the result
will be that the default branch will contain what
the lwtools branch had before these merges.
Only scripts/burst was "rescued" from default branch.
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Sat, 11 Jan 2014 18:40:44 +0100 |
parents | 40322608e006 |
children |
rev | line source |
---|---|
963 | 1 ******************************************************************** |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
2 * XMode/TMode - SCF device/path descriptor utility |
963 | 3 * |
4 * $Id$ | |
5 * | |
1325
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
6 * Edt/Rev YYYY/MM/DD Modified by |
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
7 * Comment |
963 | 8 * ------------------------------------------------------------------ |
1325
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
9 * 1 1989/06/21 Bruce Isted |
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
10 * Released to public domain. |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
11 * |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
12 * 2 2004/07/29 Boisy G. Pitre |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
13 * Revamped to also assemble as tmode |
963 | 14 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
15 nam XMode/TMode |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
16 ttl SCF device/path descriptor utility |
963 | 17 |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
18 DOHELP set 0 |
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
19 |
963 | 20 ifp1 |
21 use defsfile | |
22 endc | |
23 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
24 BuffSize equ 34 max. CHAR string length |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
25 Edtn equ 2 |
963 | 26 MaxSize equ $80 maximum module size |
27 NameSize equ 4 maximum module name length | |
1325
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
28 rev equ 0 |
963 | 29 |
30 org 0 | |
31 Count rmb 1 number of option bytes | |
32 DataPtr rmb 2 current option ptr | |
33 HexIn rmb 2 2 byte hex number | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
34 IFNE XMODE |
963 | 35 ModAddr rmb 2 module address |
36 ModSize rmb 2 module size | |
37 OptEnd rmb 2 option table end offset | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
38 ENDC |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
39 PathNmbr rmb 1 file path |
963 | 40 ParmPtr rmb 2 next name DataPtr |
41 TxtPtr rmb 2 option name ptr | |
42 Buffer rmb BuffSize miscellaneous output buffer | |
43 ModBuff rmb MaxSize module work copy buffer | |
44 stack rmb $0200 stack and parameter space | |
45 MemSize equ . | |
46 | |
1325
84ea83668304
Redid comments, reset all rev nibbles that weren't explictly set to 0
boisy
parents:
1264
diff
changeset
|
47 mod Size,Name,Prgrm+Objct,ReEnt+rev,Entry,MemSize |
963 | 48 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
49 Name equ * |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
50 IFNE XMODE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
51 fcc "X" |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
52 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
53 fcc "T" |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
54 ENDC |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
55 fcs "Mode" |
963 | 56 fcb Edtn edition number |
57 | |
58 OptTable | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
59 IFNE XMODE |
963 | 60 fcc " nam" option name |
61 fcb Sign+M$Name,NameSize offset to string offset & max. byte count to change | |
62 fcc " mgr" | |
63 fcb Sign+M$FMgr,0 offset to string offset & no changes allowed | |
64 fcc " ddr" | |
65 fcb Sign+M$PDev,0 | |
66 fcc " hpn" | |
67 fcb M$Port,1 option offset & byte count | |
68 fcc " hpa" | |
69 fcb M$Port+1,2 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
70 ENDC |
963 | 71 fcc " upc" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
72 IFNE XMODE |
963 | 73 fcb IT.UPC,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
74 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
75 fcb PD.UPC-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
76 ENDC |
963 | 77 fcc " bso" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
78 IFNE XMODE |
963 | 79 fcb IT.BSO,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
80 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
81 fcb PD.BSO-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
82 ENDC |
963 | 83 fcc " dlo" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
84 IFNE XMODE |
963 | 85 fcb IT.DLO,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
86 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
87 fcb PD.DLO-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
88 ENDC |
963 | 89 fcc " eko" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
90 IFNE XMODE |
963 | 91 fcb IT.EKO,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
92 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
93 fcb PD.EKO-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
94 ENDC |
963 | 95 fcc " alf" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
96 IFNE XMODE |
963 | 97 fcb IT.ALF,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
98 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
99 fcb PD.ALF-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
100 ENDC |
963 | 101 fcc " nul" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
102 IFNE XMODE |
963 | 103 fcb IT.NUL,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
104 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
105 fcb PD.NUL-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
106 ENDC |
963 | 107 fcc " pau" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
108 IFNE XMODE |
963 | 109 fcb IT.PAU,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
110 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
111 fcb PD.PAU-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
112 ENDC |
963 | 113 fcc " pag" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
114 IFNE XMODE |
963 | 115 fcb IT.PAG,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
116 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
117 fcb PD.PAG-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
118 ENDC |
963 | 119 fcc " bsp" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
120 IFNE XMODE |
963 | 121 fcb IT.BSP,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
122 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
123 fcb PD.BSP-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
124 ENDC |
963 | 125 fcc " del" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
126 IFNE XMODE |
963 | 127 fcb IT.DEL,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
128 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
129 fcb PD.DEL-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
130 ENDC |
963 | 131 fcc " eor" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
132 IFNE XMODE |
963 | 133 fcb IT.EOR,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
134 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
135 fcb PD.EOR-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
136 ENDC |
963 | 137 fcc " eof" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
138 IFNE XMODE |
963 | 139 fcb IT.EOF,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
140 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
141 fcb PD.EOF-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
142 ENDC |
963 | 143 fcc " rpr" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
144 IFNE XMODE |
963 | 145 fcb IT.RPR,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
146 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
147 fcb PD.RPR-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
148 ENDC |
963 | 149 fcc " dup" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
150 IFNE XMODE |
963 | 151 fcb IT.DUP,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
152 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
153 fcb PD.DUP-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
154 ENDC |
963 | 155 fcc " psc" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
156 IFNE XMODE |
963 | 157 fcb IT.PSC,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
158 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
159 fcb PD.PSC-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
160 ENDC |
963 | 161 fcc " int" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
162 IFNE XMODE |
963 | 163 fcb IT.INT,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
164 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
165 fcb PD.INT-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
166 ENDC |
963 | 167 fcc " qut" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
168 IFNE XMODE |
963 | 169 fcb IT.QUT,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
170 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
171 fcb PD.QUT-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
172 ENDC |
963 | 173 fcc " bse" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
174 IFNE XMODE |
963 | 175 fcb IT.BSE,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
176 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
177 fcb PD.BSE-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
178 ENDC |
963 | 179 fcc " ovf" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
180 IFNE XMODE |
963 | 181 fcb IT.OVF,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
182 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
183 fcb PD.OVF-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
184 ENDC |
963 | 185 fcc " par" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
186 IFNE XMODE |
963 | 187 fcb IT.PAR,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
188 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
189 fcb PD.PAR-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
190 ENDC |
963 | 191 fcc " bau" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
192 IFNE XMODE |
963 | 193 fcb IT.BAU,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
194 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
195 fcb PD.BAU-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
196 ENDC |
963 | 197 fcc " xon" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
198 IFNE XMODE |
963 | 199 fcb IT.XON,1 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
200 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
201 fcb PD.XON-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
202 ENDC |
963 | 203 fcc " xof" |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
204 IFNE XMODE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
205 fcb IT.XOFF,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
206 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
207 fcb PD.XOFF-PD.OPT,1 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
208 ENDC |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
209 IFNE XMODE |
963 | 210 fcc " col" |
211 fcb IT.COL,1 | |
212 fcc " row" | |
213 fcb IT.ROW,1 | |
214 IFGT Level-1 | |
215 fcc " xtp" | |
216 fcb IT.XTYP,1 | |
217 fcc " wnd" | |
218 fcb IT.WND,1 | |
219 fcc " val" | |
220 fcb IT.VAL,1 | |
221 fcc " sty" | |
222 fcb IT.STY,1 | |
223 fcc " cpx" | |
224 fcb IT.CPX,1 | |
225 fcc " cpy" | |
226 fcb IT.CPY,1 | |
227 fcc " fgc" | |
228 fcb IT.FGC,1 | |
229 fcc " bgc" | |
230 fcb IT.BGC,1 | |
231 fcc " bdc" | |
232 fcb IT.BDC,1 | |
233 ENDC | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
234 ENDC |
963 | 235 TablOpts equ (*-OptTable)/6 number of table entries |
236 fcb $80 end of option table | |
237 | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
238 IFNE DOHELP |
963 | 239 UseMsg |
240 fcb C$LF | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
241 fcc "Usage: XMode [/<device> || -<pathlist> || -?] [option] [option] [...]" |
963 | 242 fcb C$LF,C$LF |
243 fcc "Purpose: To report or alter current option settings of SCF device" | |
244 fcb C$LF | |
245 fcc " descriptors in memory or on disk in single module files." | |
246 fcb C$LF,C$LF | |
247 fcc "Options: nam, mgr, ddr, hpn, hpa, upc, bso, dlo, eko, alf, nul, pau," | |
248 fcb C$LF | |
249 fcc " pag, bsp, del, eor, eof, rpr, dup, psc, int, qut, bse, ovf," | |
250 fcb C$LF | |
251 fcc " par, bau, xon, xof, col, row, xtp, wnd, val, sty, cpx, cpy," | |
252 fcb C$LF | |
253 fcc " fgc, bgc, bdc" | |
254 fcb C$LF,C$LF | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
255 fcc "Examples: xmode /t2" |
963 | 256 fcb C$LF |
257 fcc " Prints the current option settings of the /T2 descriptor" | |
258 fcb C$LF | |
259 fcc " in memory." | |
260 fcb C$LF | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
261 fcc " xmode -modules/t4.dd nam=T2 bau=6 hpa=ff6c eof=1B" |
963 | 262 fcb C$LF |
263 fcc " Changes the module name in the MODULES/T4.dd file to T2," | |
264 fcb C$LF | |
265 fcc " sets the baud rate code to 6, the hardware port address" | |
266 fcb C$LF | |
267 fcc " to $FF6C, and the end of file character to $1B." | |
268 fcb C$LF | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
269 fcc " xmode -?" |
963 | 270 fcb C$LF |
271 fcc " Prints more complete information on all of the options." | |
272 fcb C$CR | |
273 UseLen equ *-UseMsg | |
274 | |
275 HelpMsg | |
276 fcb C$LF | |
277 fcc "The NAM option accepts only a legal OS-9 module name with a maximum of" | |
278 fcb C$LF | |
279 fcc "4 characters. It is up to the user to ensure that there is adequate" | |
280 fcb C$LF | |
281 fcc "room for the module name, and if required to rename the disk file to" | |
282 fcb C$LF | |
283 fcc "suit the new module name. The MGR and DDR options can't be changed." | |
284 fcb C$LF | |
285 fcc "All other options require hexadecimal numbers (0 through FFFF). XTP is" | |
286 fcb C$LF | |
287 fcc "for certain ACIA descriptors only. WND, VAL, STY, CPX, CPY, FGC, BGC," | |
288 fcb C$LF | |
289 fcc "and BDC are for window descriptors only." | |
290 fcb C$LF,C$LF | |
291 fcc "nam Device Name mgr File Manager Name ddr Device Driver Name" | |
292 fcb C$LF | |
293 fcc "hpn H'ware Page Number hpa H'ware Port Address upc Case Lock Flag" | |
294 fcb C$LF | |
295 fcc "bso Backspace Method dlo Delete Line Method eko Screen Echo Flag" | |
296 fcb C$LF | |
297 fcc "alf Auto Linefeed Flag nul End Of Line Nulls pau Page Pause Flag" | |
298 fcb C$LF | |
299 fcc "pag Page Length bsp Backspace Character del Delete Line Char" | |
300 fcb C$LF | |
301 fcc "eor End Of Record Char eof End Of File Char rpr Reprint Line Char" | |
302 fcb C$LF | |
303 fcc "dup Duplicate Line Char psc Pause Character int Interrupt Character" | |
304 fcb C$LF | |
305 fcc "qut Quit Character bse Backspace Echo Char ovf Overflow Character" | |
306 fcb C$LF | |
307 fcc "par Type (Parity) Code bau Baud Rate Code xon XON Character" | |
308 fcb C$LF | |
309 fcc "xof XOFF Character col Display Columns row Display Rows" | |
310 fcb C$LF | |
311 fcc "xtp Extended Type Code wnd Window Number val Valid Window Flag" | |
312 fcb C$LF | |
313 fcc "sty Window Screen Type cpx X Corner Position cpy Y Corner Position" | |
314 fcb C$LF | |
315 fcc "fgc Foreground Colour bgc Background Colour bdc Border Colour" | |
316 fcb C$CR | |
317 HelpLen equ *-HelpMsg | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
318 ENDC |
963 | 319 |
320 Equal fcc "=" | |
321 | |
322 TypeMsg | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
323 fcc "Not an SCF " |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
324 IFNE XMODE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
325 fcc "descriptor!" |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
326 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
327 fcc "path!" |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
328 ENDC |
963 | 329 CR fcb C$CR |
330 TypeLen equ *-TypeMsg | |
331 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
332 IFNE XMODE |
963 | 333 Sizemsg |
334 fcc "Module size out of range!" | |
335 fcb C$CR | |
336 Sizelen equ *-Sizemsg | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
337 ENDC |
963 | 338 |
339 SynMsg | |
340 fcc "Syntax error: " | |
341 SynLen equ *-SynMsg | |
342 | |
343 **************** | |
344 * miscellaneous error and help routines | |
345 | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
346 IFNE DOHELP |
963 | 347 MuchHelp |
348 leax HelpMsg,pc | |
349 ldy #HelpLen | |
350 bra Helpprnt | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
351 ENDC |
963 | 352 |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
353 IFNE XMODE |
963 | 354 BadSize |
355 leax Sizemsg,pc | |
356 ldy #Sizelen | |
357 bra AddHelp | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
358 ENDC |
963 | 359 |
360 BadType | |
361 leax TypeMsg,pc | |
362 ldy #TypeLen | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
363 |
963 | 364 AddHelp |
365 lda #2 | |
366 os9 I$WritLn | |
367 Help | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
368 IFNE DOHelp |
963 | 369 leax UseMsg,pc |
370 ldy #UseLen | |
371 Helpprnt | |
372 lda #2 | |
373 os9 I$WritLn | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
374 ENDC |
963 | 375 lbra OkayEnd2 |
376 | |
377 **************** | |
378 Entry | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
379 IFNE XMODE |
963 | 380 ldd #0 |
381 std <ModAddr zero mod flag | |
382 sta <PathNmbr zero file flag | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
383 ENDC |
963 | 384 ldd ,x+ check for device name |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
385 IFNE XMODE |
963 | 386 cmpa #'- file option? |
387 bne Link | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
388 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
389 stx <ParmPtr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
390 clr <PathNmbr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
391 cmpa #'. dot? (for path specification) |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
392 bne Process if not, process as option |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
393 subb #$30 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
394 lbmi Syntax |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
395 cmpb #$02 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
396 lbgt Syntax |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
397 stb <PathNmbr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
398 leax 2,x point passed char after '.' |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
399 ENDC |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
400 IFNE DOHELP |
963 | 401 cmpb #'? help option? |
402 beq MuchHelp | |
1655
22c82cfcb1f5
Added DOHELP equate to cut down on size of module by optionally opting out the
boisy
parents:
1325
diff
changeset
|
403 ENDC |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
404 IFNE XMODE |
963 | 405 * Use Filename to Get Desc: |
1264 | 406 lda #UPDAT. open path to module file |
963 | 407 os9 I$Open |
408 bcs Help | |
409 stx <ParmPtr | |
410 sta <PathNmbr save path number | |
411 ldy #MaxSize max size | |
412 leax ModBuff,u module buff | |
413 os9 I$Read get it | |
414 lbcs Error | |
415 ldb M$Opt,x | |
416 clra [D] = option table size | |
417 addd #M$DTyp add options start offset | |
418 std <OptEnd save options end offset | |
419 ldd M$Size,x get module size | |
420 cmpd #MaxSize module size OK? | |
421 bhi BadSize no, go return error... | |
422 std <ModSize | |
423 bra GotIt | |
424 Link | |
425 cmpa #'/ else must be /<devicename> | |
426 bne Help | |
427 pshs u | |
428 lda #Devic | |
429 os9 F$Link link to module | |
430 bcs Help | |
431 stx <ParmPtr update after name | |
432 tfr u,x | |
433 puls u | |
434 stx <ModAddr | |
435 ldb M$Opt,x | |
436 clra [D] = option table size | |
437 addd #M$DTyp add options start offset | |
438 std <OptEnd save options end offset | |
439 ldd M$Size,x get module size | |
440 cmpd #MaxSize module size OK? | |
441 lbhi BadSize no, go report error... | |
442 std <ModSize | |
443 tfr d,y copy module size... | |
444 pshs u save data area pointer | |
445 leau ModBuff,u | |
446 | |
447 GetModLp | |
448 lda ,x+ | |
449 sta ,u+ | |
450 leay -1,y | |
451 bne GetModLp | |
452 puls u recover data area pointer | |
453 | |
454 GotIt | |
455 ldd <OptEnd get option table end offset | |
456 cmpd <ModSize is option table size OK? | |
457 lbhs BadSize no, go report error... | |
458 leax ModBuff,u | |
459 lda M$DTyp,x get device type | |
460 lbne BadType SCF = $00 | |
461 ldx <ParmPtr point to input parms | |
462 lbsr SkipSpac go skip leading spaces... | |
463 cmpa #C$CR no options? | |
464 lbeq Info ..yes, give info | |
465 leax -1,x | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
466 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
467 Process |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
468 leax -1,x |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
469 stx <ParmPtr save for syntax error use |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
470 leax ModBuff,u |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
471 lda <PathNmbr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
472 clrb |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
473 os9 I$GetStt |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
474 tst ,x |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
475 lbne BadType |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
476 ldx <ParmPtr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
477 lbsr SkipSpac go skip leading spaces... |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
478 cmpa #C$CR no options? |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
479 lbeq Info ..yes, give info |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
480 leax -1,x |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
481 ENDC |
963 | 482 |
483 **************** | |
484 * X=ParmPtr | |
485 * Find and Set Options: | |
486 | |
487 FindLp10 | |
488 lbsr SkipSpac get next input param | |
489 stx <ParmPtr save for syntax error use | |
490 cmpa #C$CR end? | |
491 lbeq Verify ..yes, update module CRC | |
492 leay OptTable-6,pc ready option table ptr | |
493 pshs u | |
494 ldu ,x++ get next two chars | |
495 ora #$20 convert 1st param char to lower case | |
496 exg d,u move [U] where we can convert param chars | |
497 ora #$20 convert 2nd param char... | |
498 orb #$20 convert 3rd... | |
499 exg d,u move back again | |
500 | |
501 FindLp20 | |
502 leay 6,y next option entry | |
503 tst ,y last entry? | |
504 bmi Syntax ..yes, bad option | |
505 cmpa 1,y | |
506 bne FindLp20 same name? | |
507 cmpu 2,y | |
508 bne FindLp20 ..no, loop | |
509 * Found Option | |
510 puls u | |
511 sty <TxtPtr | |
512 ldd ,x+ must be followed by "=", leave [X] pointing at char after "=" | |
513 cmpa #'= | |
514 bne Syntax | |
515 cmpb #C$CR rest of option missing? | |
516 beq Syntax yes, go report error | |
517 cmpb #C$SPAC rest of option missing? | |
518 beq Syntax yes, go report error | |
519 ldb 5,y get # of bytes | |
520 beq Syntax 0 bytes, not allowed to change this option | |
521 stb <Count | |
522 ldb 4,y get option offset or offset to option offset | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
523 IFNE XMODE |
963 | 524 bpl NumOpt option offset, go set hexadecimal option |
525 * Get CHAR input and set option: | |
526 andb #^Sign clear sign bit of offset to string offset | |
527 clra [D] = offset to string offset within module | |
528 cmpd <ModSize is it OK? | |
529 bhs Syntax no, go report error... | |
530 leay ModBuff,u point to module | |
531 ldd b,y get offset to string | |
532 cmpd <ModSize is it OK? | |
533 bhs Syntax no, go report error... | |
534 leay d,y point to option | |
535 pshs y save option pointer | |
536 os9 F$PrsNam valid OS-9 name? | |
537 puls y recover option pointer (end of name pointer lost) | |
538 bcs Syntax no, go report error | |
539 cmpa #C$SPAC space delimiter char? | |
540 beq ChkLen yes, go check name length... | |
541 cmpa #C$CR <CR> delimiter char? | |
542 bne Syntax no, go report error | |
543 | |
544 ChkLen | |
545 cmpb <Count name length OK? | |
546 bhi Syntax no, go report error... | |
547 | |
548 SetChrLp | |
549 lda ,x+ get character | |
550 sta ,y+ save it to module copy | |
551 decb done yet? | |
552 bne SetChrLp no, go copy another char... | |
553 lda -1,y get last char | |
554 ora #Sign set sign bit | |
555 sta -1,y save last char | |
556 lbra FindLp10 go do next... | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
557 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
558 lbra NumOpt option offset, go set hexadecimal option |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
559 ENDC |
963 | 560 |
561 * Syntax Error: | |
562 Syntax | |
563 leax SynMsg,pc | |
564 ldy #SynLen | |
565 lda #2 | |
566 os9 I$Write | |
567 ldx <ParmPtr | |
568 leax -1,x | |
569 pshs x | |
570 ldy #0 | |
571 | |
572 CntLoop | |
573 leay 1,y | |
574 lda ,x+ | |
575 cmpa #C$CR | |
576 beq SynSay | |
577 cmpa #C$SPAC | |
578 bne CntLoop | |
579 | |
580 SynSay | |
581 puls x | |
582 lda #2 | |
583 os9 I$Write output err | |
584 lbra OkayEnd | |
585 | |
586 * Get Hex Input and Set Option: | |
587 NumOpt | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
588 IFNE XMODE |
963 | 589 clra [D] = option offset within module |
590 cmpd <OptEnd is it OK? | |
591 bhs Syntax no, go report error... | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
592 ENDC |
963 | 593 clr <HexIn zero hex input bytes |
594 clr <HexIn+1 | |
595 | |
596 SetNumLp | |
597 lda ,x+ get next # | |
598 cmpa #C$SPAC end of number? | |
599 beq SetNum2 ..yes, set option | |
600 cmpa #C$CR end of line? | |
601 beq SetNum1 ..yes, set option | |
602 * Convert ASCII Hex-->Byte: | |
603 suba #$30 make number from ASCII | |
604 bmi Syntax | |
605 cmpa #10 is it number? | |
606 bcs Num | |
607 anda #$5F make uppercase | |
608 suba #$11-$0A make hex $A-$F | |
609 cmpa #$0A | |
610 bcs Syntax | |
611 cmpa #$10 not hex char? | |
612 bcc Syntax | |
613 | |
614 Num | |
615 ldb #16 fancy asl *4 | |
616 mul | |
617 pshs b save top 4 bits | |
618 ldd <HexIn | |
619 rol ,s | |
620 rolb | |
621 rola | |
622 rol ,s | |
623 rolb | |
624 rola | |
625 rol ,s | |
626 rolb | |
627 rola | |
628 rol ,s | |
629 rolb | |
630 rola | |
631 std <HexIn | |
632 puls b drop temp | |
633 bra SetNumLp ..loop | |
634 | |
635 SetNum1 | |
636 leax -1,x reset so can find <CR> | |
637 | |
638 SetNum2 | |
639 ldb 4,y get option offset | |
640 leay ModBuff,u point to module | |
641 leay b,y point to option | |
642 ldd <HexIn pick up hex input | |
643 dec <Count | |
644 beq SetOne | |
645 std ,y set two byte option | |
646 lbra FindLp10 | |
647 | |
648 SetOne | |
649 tsta | |
650 lbne Syntax | |
651 stb ,y set one byte option | |
652 | |
653 SetNDone | |
654 lbra FindLp10 | |
655 | |
656 * -------------- | |
657 * Skip Spaces: | |
658 SkipSpac | |
659 lda ,x+ | |
660 cmpa #C$SPAC | |
661 beq SkipSpac | |
662 rts | |
663 | |
664 * -------------- | |
665 * Update Module CRC: | |
666 Verify | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
667 IFNE XMODE |
963 | 668 pshs u save data ptr |
669 leau ModBuff,u | |
670 tfr u,x X is mod address | |
671 ldy M$Size,x Y is mod size | |
672 leay -3,y beginning of chksum | |
673 tfr y,d Y is byte count | |
674 leau d,u set U to chksum | |
675 lda #$FF init chksum | |
676 sta ,u | |
677 sta 1,u | |
678 sta 2,u | |
679 pshs u | |
680 os9 F$CRC calc new crc | |
681 puls u | |
682 com ,u+ fix it up right | |
683 com ,u+ | |
684 com ,u | |
685 lda <PathNmbr was it file? | |
686 beq MemMod ..no, in memory | |
687 ldx #0 | |
688 tfr x,u | |
689 os9 I$Seek go back to file begin | |
690 bcs Error | |
691 puls u | |
692 leax ModBuff,u | |
693 ldy <ModSize | |
694 os9 I$Write update module file | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
695 ELSE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
696 leax ModBuff,u |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
697 lda <PathNmbr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
698 clrb |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
699 os9 I$SetStt |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
700 ENDC |
963 | 701 bra OkayEnd |
702 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
703 IFNE XMODE |
963 | 704 MemMod |
705 ldu ,s get data area pointer | |
706 leax ModBuff,u | |
707 ldy <ModSize | |
708 ldu <ModAddr | |
709 | |
710 PutModLp | |
711 lda ,x+ | |
712 sta ,u+ | |
713 leay -1,y | |
714 bne PutModLp | |
715 puls u recover data area pointer | |
716 bra OkayEnd2 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
717 ENDC |
963 | 718 |
719 OkayEnd | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
720 * bsr OutCR |
963 | 721 |
722 OkayEnd2 | |
723 clrb okay | |
724 Error | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
725 IFNE XMODE |
963 | 726 pshs b,cc |
727 ldu <ModAddr | |
728 beq Bye | |
729 os9 F$UnLink | |
730 | |
731 Bye | |
732 puls b,cc | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
733 ENDC |
963 | 734 os9 F$Exit we're done... |
735 | |
736 * -------------- | |
737 * Print a <CR>: | |
738 OutCR | |
739 leax CR,pc | |
740 ldy #1 | |
741 lda #1 | |
742 os9 I$WritLn | |
743 rts | |
744 | |
745 **************** | |
746 * Output Current Desc Info: | |
747 Info | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
748 IFNE TMODE |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
749 lda <PathNmbr |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
750 leax Buffer,u |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
751 ldb #PDELIM |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
752 stb ,x+ |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
753 ldb #SS.DevNm |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
754 os9 I$GetStt |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
755 go@ ldb ,x+ |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
756 bpl go@ |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
757 andb #$7F |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
758 stb -1,x |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
759 ldb #C$CR |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
760 stb ,x |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
761 leax Buffer,u |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
762 ldy #80 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
763 lda #$01 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
764 os9 I$WritLn |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
765 ENDC |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
766 |
963 | 767 leax OptTable,pc point to text table |
768 stx <TxtPtr | |
769 | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
770 clr ,-s |
963 | 771 InfoLoop |
772 ldx <TxtPtr | |
773 ldy #4 | |
774 lbsr OutPut print option name | |
775 leax Equal,pc | |
776 ldy #1 | |
777 lbsr OutPut print = | |
778 ldx <TxtPtr | |
779 ldb 4,x get offset to HEX option; if minus, offset to option offset | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
780 IFNE XMODE |
963 | 781 bpl PrintHex go do simple offset to HEX option |
782 andb #^Sign clear sign bit | |
783 clra [D] = offset to string offset within module | |
784 cmpd <ModSize is it OK? | |
785 bhs MovePtr no, skip this option... | |
786 leay ModBuff,u point [Y] to module work copy | |
787 ldd b,y get string offset within module | |
788 cmpd <ModSize is string offset OK? | |
789 bhs MovePtr no, skip this option... | |
790 leay d,y point [Y] to CHAR string | |
791 lda #BuffSize get max. chars to print | |
792 leax Buffer,u point [X] to CHAR string buffer | |
793 clr <Count init counter | |
794 | |
795 CharCopy ldb ,y+ get char | |
796 bpl NotLast sign bit clear so not last, go on... | |
797 andb #^Sign clear sign bit | |
798 lda #1 set up as last char | |
799 | |
800 NotLast stb ,x+ | |
801 inc <Count count chars in string | |
802 deca done yet? | |
803 bne CharCopy no, go do another char... | |
804 ldb <Count get chars in string ([A]=0, so [D]=char count) | |
805 tfr d,y module name length into [Y] | |
806 leax Buffer,u point [X] to CHAR string copy | |
807 bsr OutPut print CHAR string | |
808 bra MovePtr skip HEX output routine | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
809 ENDC |
963 | 810 |
811 * Print Hex Option Values: | |
812 PrintHex | |
813 ldx <TxtPtr | |
814 ldb 5,x get # of digits | |
815 stb <Count | |
816 ldb 4,x get option offset in module | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
817 IFNE XMODE |
963 | 818 clra [D] = option offset within module |
819 cmpd <OptEnd is option offset OK? | |
820 bhs MovePtr no, skip this option... | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
821 ENDC |
963 | 822 leax ModBuff,u point [X] to module work copy |
823 abx point [X] to option | |
824 stx <DataPtr | |
825 | |
826 * Print One Byte: | |
827 NumLoop | |
828 ldx <DataPtr | |
829 lda ,x+ | |
830 stx <DataPtr | |
831 pshs a | |
832 lsra | |
833 lsra | |
834 lsra | |
835 lsra | |
836 bsr OutOne | |
837 puls a | |
838 anda #$0F | |
839 bsr OutOne | |
840 dec <Count | |
841 bne NumLoop | |
842 | |
843 MovePtr | |
844 ldx <TxtPtr | |
845 leax 6,x | |
846 stx <TxtPtr | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
847 ldb ,s+ |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
848 incb |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
849 cmpb #TablOpts |
963 | 850 lbeq OkayEnd done... |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
851 pshs b |
963 | 852 bitb #$07 # of options remaining evenly divisible by eight? |
853 lbne InfoLoop no, go print next option on same line | |
854 lbsr OutCR <CR> after every 8th option | |
855 lbra InfoLoop ..loop | |
856 | |
857 * -------------- | |
858 * Print 1/2 Byte Hex Char: | |
859 OutOne | |
860 cmpa #10 | |
861 bcs Number | |
862 adda #$11-10 make alpha | |
863 | |
864 Number | |
865 adda #$30 make ASCII | |
866 sta <Buffer | |
867 leax Buffer,u | |
868 ldy #1 | |
869 | |
870 OutPut | |
1678
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
871 lda #$01 |
40322608e006
tmode is now made from xmode, dsave modified to handle new tmode parameter
boisy
parents:
1655
diff
changeset
|
872 os9 I$Write |
963 | 873 lbcs Error |
874 rts | |
875 | |
876 emod | |
877 Size equ * | |
878 end | |
879 |