Mercurial > hg > Members > kono > nitros9-code
annotate level1/cmds/xmode.asm @ 2879:531841047512 lwtools-port
boot_scsi.asm: Fix SCSI ID when booting from SCSI
Due to a typo it would probe for SCSI ID 4 instead
of default 0 (or 8 for HDBDOS/SuperDriver).
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Sun, 24 Nov 2013 16:08:53 +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 |