Mercurial > hg > Members > kono > nitros9-code
annotate level2/modules/ioman.asm @ 2639:283433fa565c
Added notes to atari.d
author | Boisy Pitre <boisy.pitre@nuance.com> |
---|---|
date | Tue, 28 Feb 2012 09:26:09 -0600 |
parents | 7f8d006d5da6 |
children | 29885731c4bb |
rev | line source |
---|---|
0 | 1 ******************************************************************** |
1424
32f1dae476b7
Fixed references in source from OS-9 to NitrOS-9 where appropriate
boisy
parents:
1348
diff
changeset
|
2 * IOMan - NitrOS-9 Level 2 I/O Manager module |
0 | 3 * |
4 * $Id$ | |
5 * | |
1348 | 6 * Edt/Rev YYYY/MM/DD Modified by |
7 * Comment | |
0 | 8 * ------------------------------------------------------------------ |
1348 | 9 * ????/??/?? ??? |
10 * NitrOS-9 2.00 distribution. | |
11 * | |
12 * 13 2002/04/30 Boisy G. Pitre | |
13 * Fixed a long-standing bug in IOMan where the I$Detach routine would | |
14 * deallocate the V$STAT area. This is because the V$USRS offset on the | |
15 * stack, where the temporary device table entry was being built, contained | |
16 * zero. I$Detach wouldn't bother to do a lookup to see if it should | |
17 * release the memory if this value was zero, so we now force I$Detach to | |
18 * do the lookup no matter the V$USRS value. | |
19 * | |
20 * 13r2 2002/12/31 Boisy G. Pitre | |
21 * Made more source changes, found discrepancy in value of POLSIZ in | |
22 * certain areas, fixed. Also added 6809 conditional code for future | |
23 * integration into OS-9 Level Two. | |
24 * | |
25 * 13r3 2003/03/04 Boisy G. Pitre | |
26 * Conditionalized out Level 3 code. | |
27 * | |
28 * 13r4 2003/04/09 Boisy G. Pitre | |
29 * Fixed bug where wrong address was being put in V$STAT when driver's | |
30 * INIT routine was called. | |
1634
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
31 * |
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
32 * 13r5 2004/07/12 Boisy G. Pitre |
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
33 * Fixed bug where device descriptor wasn't being unlinked when V$USRS > 0 |
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
34 * due to the value in X not being loaded. |
0 | 35 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
36 nam IOMan |
1424
32f1dae476b7
Fixed references in source from OS-9 to NitrOS-9 where appropriate
boisy
parents:
1348
diff
changeset
|
37 ttl NitrOS-9 Level 2 I/O Manager module |
0 | 38 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
39 * Disassembled 02/04/29 23:10:07 by Disasm v1.6 (C) 1988 by RML |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
40 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
41 IFP1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
42 use defsfile |
939 | 43 ENDC |
0 | 44 |
45 tylg set Systm+Objct | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
46 atrv set ReEnt+rev |
1634
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
47 rev set $05 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
48 edition set 13 |
0 | 49 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
50 mod eom,name,tylg,atrv,start,size |
0 | 51 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
52 u0000 rmb 0 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
53 size equ . |
0 | 54 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
55 name fcs /IOMan/ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
56 fcb edition |
0 | 57 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
58 start ldx <D.Init get pointer to init module |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
59 lda DevCnt,x get number of entries in device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
60 ldb #DEVSIZ get size of each entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
61 mul calculate size needed for device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
62 pshs d preserve it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
63 lda PollCnt,x get number of entries in polling table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
64 ldb #POLSIZ get size of each entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
65 mul calculate size needed for polling table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
66 pshs d preserve it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
67 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
68 asld |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
69 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
70 lslb multiply by 2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
71 rola |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
72 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
73 addd $02,s add to size of device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
74 os9 F$SRqMem allocate memory |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
75 bcs Crash branch if error |
2414 | 76 * clear allocated mem |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
77 leax ,u point to memory |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
78 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
79 leay <TheZero,pcr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
80 tfr d,w |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
81 tfm y,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
82 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
83 ClrLoop clr ,x+ clear a byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
84 subd #$0001 done? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
85 bne ClrLoop no, keep going |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
86 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
87 stu <D.DevTbl save pointer to device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
88 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
89 puls x,d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
90 addr u,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
91 stx <D.PolTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
92 addr d,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
93 stx <D.CLTb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
94 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
95 ldd ,s++ get pointer to device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
96 std <D.CLTb save to globals temporarily |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
97 ldd ,s++ get size of device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
98 leax d,u point x to the end of device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
99 stx <D.PolTbl save to globals |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
100 ldd <D.CLTb get VIRQ table size |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
101 leax d,x add it to end of device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
102 stx <D.CLTb and save VIRQ table address |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
103 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
104 ldx <D.PthDBT get address of path desc table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
105 os9 F$All64 split it into 64 byte chunks |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
106 bcs Crash branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
107 stx <D.PthDBT save pointer back |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
108 os9 F$Ret64 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
109 leax >IRQPoll,pcr point to polling routine |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
110 stx <D.Poll save the vector address |
1307 | 111 leay <IOCalls,pcr point to service vector table |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
112 os9 F$SSvc set up calls |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
113 rts and return to system |
0 | 114 |
115 ****************************** | |
116 * | |
117 * Fatal error Crash the system | |
118 * | |
2414 | 119 Crash |
120 IFGT Level-1 | |
121 jmp <D.Crash | |
122 ELSE | |
123 jmp [>$FFFE] | |
124 ENDC | |
0 | 125 |
126 ****************************** | |
127 * | |
128 * System service routine vector table | |
129 * | |
1307 | 130 IOCalls fcb $7F |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
131 fdb UsrIO-*-2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
132 fcb F$Load |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
133 fdb FLoad-*-2 |
1307 | 134 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
135 fcb I$Detach |
0 | 136 fdb IDetach0-*-2 |
1307 | 137 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
138 fcb F$PErr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
139 fdb FPErr-*-2 |
0 | 140 fcb F$IOQu+$80 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
141 fdb FIOQu-*-2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
142 fcb $FF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
143 fdb SysIO-*-2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
144 fcb F$IRQ+$80 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
145 fdb FIRQ-*-2 |
0 | 146 fcb F$IODel+$80 |
147 fdb FIODel-*-2 | |
1307 | 148 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
149 fcb F$NMLink |
0 | 150 fdb FNMLink-*-2 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
151 fcb F$NMLoad |
0 | 152 fdb FNMLoad-*-2 |
1307 | 153 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
154 fcb $80 |
0 | 155 |
156 ****************************** | |
157 * | |
158 * Check device status service call? | |
159 * | |
160 * Entry: U = Callers register stack pointer | |
161 * | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
162 FIODel ldx R$X,u get address of module |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
163 ldu <D.Init get pointer to init module |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
164 ldb DevCnt,u get device count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
165 ldu <D.DevTbl get pointer to device table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
166 L0086 ldy V$DESC,u descriptor exists? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
167 beq L0097 no, move to next device |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
168 cmpx V$DESC,u device match? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
169 beq L009E no, move to next device |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
170 cmpx V$DRIV,u driver match? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
171 beq L009E yes, return module busy |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
172 cmpx V$FMGR,u fmgr match? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
173 beq L009E yes, return module busy |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
174 L0097 leau DEVSIZ,u move to next dev entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
175 decb done them all? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
176 bne L0086 no, keep going |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
177 clrb clear carry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
178 L009D rts and return |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
179 L009E comb else set carry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
180 ldb #E$ModBsy submit error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
181 rts and return |
0 | 182 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
183 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
184 TheZero fcb $00 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
185 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
186 |
0 | 187 UsrIODis fdb IAttach-UsrIODis |
188 fdb IDetach-UsrIODis | |
189 fdb UIDup-UsrIODis | |
190 fdb IUsrCall-UsrIODis | |
191 fdb IUsrCall-UsrIODis | |
192 fdb IMakDir-UsrIODis | |
193 fdb IChgDir-UsrIODis | |
194 fdb IDelete-UsrIODis | |
195 fdb UISeek-UsrIODis | |
196 fdb UIRead-UsrIODis | |
197 fdb UIWrite-UsrIODis | |
198 fdb UIRead-UsrIODis | |
199 fdb UIWrite-UsrIODis | |
200 fdb UIGetStt-UsrIODis | |
201 fdb UISeek-UsrIODis | |
202 fdb UIClose-UsrIODis | |
203 fdb IDeletX-UsrIODis | |
204 | |
205 SysIODis fdb IAttach-SysIODis | |
206 fdb IDetach-SysIODis | |
207 fdb SIDup-SysIODis | |
208 fdb ISysCall-SysIODis | |
209 fdb ISysCall-SysIODis | |
210 fdb IMakDir-SysIODis | |
211 fdb IChgDir-SysIODis | |
212 fdb IDelete-SysIODis | |
213 fdb SISeek-SysIODis | |
214 fdb SIRead-SysIODis | |
215 fdb SIWrite-SysIODis | |
216 fdb SIRead-SysIODis | |
217 fdb SIWrite-SysIODis | |
218 fdb SIGetStt-SysIODis | |
219 fdb SISeek-SysIODis | |
220 fdb SIClose-SysIODis | |
221 fdb IDeletX-SysIODis | |
222 | |
1307 | 223 |
224 * Entry to User and System I/O dispatch table | |
225 * B = I/O system call code | |
0 | 226 UsrIO leax <UsrIODis,pcr |
991
0502363c6fa7
Fixed incorrectly labeled code and a problem with I$DeletX under OS-9 Level Two
boisy
parents:
986
diff
changeset
|
227 bra IODsptch |
0 | 228 SysIO leax <SysIODis,pcr |
2414 | 229 IODsptch cmpb #I$DeletX-$70 compare with last I/O call |
230 bhi L00F9 branch if greater | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
231 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
232 ldw b,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
233 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
234 jmp w,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
235 ELSE |
1252
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
236 pshs d |
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
237 ldd b,x |
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
238 leax d,x |
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
239 puls d |
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
240 lsrb |
275aea78cb87
SCF now fully uses V$DRIVEX saving time and code size
boisy
parents:
1242
diff
changeset
|
241 jmp ,x |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
242 ENDC |
0 | 243 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
244 ****************************** |
0 | 245 * |
246 * Unknown service code error handler | |
247 * | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
248 L00F9 comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
249 ldb #E$UnkSvc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
250 rts |
0 | 251 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
252 VDRIV equ $00 \ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
253 VSTAT equ $02 | |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
254 VDESC equ $04 |--- Temporary device table entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
255 VFMGR equ $06 | |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
256 VUSRS equ $08 / |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
257 DRVENT equ $09 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
258 FMENT equ $0B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
259 AMODE equ $0D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
260 HWPG equ $0E |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
261 HWPORT equ $0F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
262 CURDTE equ $11 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
263 DATBYT1 equ $13 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
264 DATBYT2 equ $15 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
265 ODPROC equ $17 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
266 CALLREGS equ $19 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
267 RETERR equ $1A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
268 EOSTACK equ $1B |
0 | 269 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
270 * Entry: U=module header pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
271 IAttach equ * |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
272 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
273 ldw #EOSTACK get stack count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
274 leas <-EOSTACK,s make stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
275 leax <TheZero,pcr point at zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
276 tfr s,y move S to Y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
277 tfm x,y+ and transfer 0 to stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
278 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
279 ldb #EOSTACK-1 get stack count - 1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
280 IALoop clr ,-s clear each byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
281 decb decrement |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
282 bpl IALoop and branch until = 0 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
283 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
284 stu <CALLREGS,s save caller regs |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
285 lda R$A,u access mode |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
286 sta AMODE,s save on stack |
1307 | 287 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
288 ldx <D.Proc get curr proc desc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
289 stx <ODPROC,s save on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
290 leay <P$DATImg,x point to DAT img of curr proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
291 ldx <D.SysPrc get sys proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
292 stx <D.Proc make sys proc current proc |
1307 | 293 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
294 ldx R$X,u get caller's X |
1307 | 295 lda #Devic+0 link to device desc |
296 IFGT Level-1 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
297 os9 F$SLink link to it |
1307 | 298 ELSE |
299 os9 F$Link link to it | |
300 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
301 bcs L0155 branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
302 stu VDESC,s save dev desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
303 ldy <CALLREGS,s get caller regs |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
304 stx R$X,y save updated X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
305 lda M$Port,u get hw page |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
306 sta HWPG,s save onto stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
307 ldd M$Port+1,u get hw addr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
308 std HWPORT,s save onto stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
309 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
310 ldx M$PDev,u get driver name ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
311 addr u,x add U to X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
312 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
313 ldd M$PDev,u get driver name ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
314 leax d,u add D to U and put in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
315 ENDC |
1307 | 316 lda #Drivr+0 driver |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
317 os9 F$Link link to driver |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
318 bcs L0155 branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
319 stu VDRIV,s else save addr save on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
320 sty DRVENT,s save entry point on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
321 ldu VDESC,s get desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
322 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
323 ldx M$FMgr,u get fm name |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
324 addr u,x add U to X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
325 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
326 ldd M$FMgr,u get fm name |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
327 leax d,u add D to U and put in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
328 ENDC |
1307 | 329 lda #FlMgr+0 link to fm |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
330 os9 F$Link link to it! |
1307 | 331 L0155 |
332 IFGT Level-1 | |
333 ldx <ODPROC,s get caller's proc desc | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
334 stx <D.Proc restore orig proc desc |
1307 | 335 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
336 bcc L016A branch if not error |
1307 | 337 * Error on attach, so detach |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
338 L015C stb <RETERR,s save off error code |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
339 leau VDRIV,s point U to device table entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
340 os9 I$Detach detach |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
341 leas <RETERR,s adjust stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
342 comb set carry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
343 puls pc,b exit |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
344 L016A stu VFMGR,s save off fm module ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
345 sty FMENT,s save off fm entry point |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
346 ldx <D.Init get D.Init |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
347 ldb DevCnt,x get device entry count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
348 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
349 tfr b,f |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
350 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
351 tfr b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
352 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
353 ldu <D.DevTbl get device table pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
354 L0177 ldx V$DESC,u get dev desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
355 beq L01B4 branch if empty |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
356 cmpx VDESC,s same as dev desc being attached? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
357 bne L0196 branch if not |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
358 ldx V$STAT,u get driver static |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
359 bne L0191 branch if zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
360 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
361 lde V$USRS,u get user count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
362 beq L0177 branch if zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
363 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
364 pshs a save off A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
365 lda V$USRS,u get user count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
366 beq L0188 branch if zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
367 ENDC |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
368 pshs u,b |
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
369 lbsr FIOQu2 call F$IOQu directly |
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
370 puls u,b |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
371 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
372 L0188 puls a pull A from stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
373 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
374 bra L0177 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
375 L0191 stu <CURDTE,s save current dev table ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
376 ldx V$DESC,u get dev desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
377 L0196 ldy M$Port+1,x get hw addr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
378 cmpy HWPORT,s same as dev entry on stack? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
379 bne L01B4 branch if not |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
380 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
381 lde M$Port,x get hw port |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
382 cmpe HWPG,s same as dev entry on stack? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
383 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
384 ldy M$Port,x get hw port |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
385 cmpy HWPG,s same as dev entry on stack? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
386 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
387 bne L01B4 branch if not |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
388 ldx V$DRIV,u get driver ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
389 cmpx VDRIV,s same as dev entry on stack? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
390 bne L01B4 branch if not |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
391 * A match between device table entries has occurred |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
392 ldx V$STAT,u get driver static |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
393 stx VSTAT,s save off in our statics |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
394 tst V$USRS,u any users for this device |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
395 beq L01B4 branch if not |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
396 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
397 sta HWPG,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
398 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
399 L01B4 leau DEVSIZ,u advance to the next device entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
400 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
401 bne L0177 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
402 ldu <CURDTE,s get curr dev entry ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
403 lbne L0264 branch if not zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
404 ldu <D.DevTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
405 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
406 tfr f,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
407 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
408 L01C4 ldx V$DESC,u get desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
409 beq L01DD branch if zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
410 leau DEVSIZ,u move to next dev table entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
411 deca |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
412 bne L01C4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
413 ldb #E$DevOvf dev table overflow |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
414 bra L015C |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
415 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
416 L01D1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
417 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
418 lsrd /2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
419 lsrd /4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
420 lsrd /8 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
421 lsrd /16 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
422 lsrd /32 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
423 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
424 lsra |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
425 rorb /2 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
426 lsra |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
427 rorb /4 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
428 lsra |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
429 rorb /8 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
430 lsra |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
431 rorb /16 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
432 lsra |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
433 rorb /32 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
434 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
435 clra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
436 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
437 |
1307 | 438 L01DD ldx VSTAT,s get static storage off stack |
439 bne L0259 branch if already alloced | |
440 stu <CURDTE,s else store off ptr to dev table entry | |
441 ldx VDRIV,s get ptr to driver | |
442 ldd M$Mem,x get driver storage req | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
443 os9 F$SRqMem allocate memory |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
444 lbcs L015C branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
445 stu VSTAT,s save newly alloc'ed driver static storage ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
446 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
447 leay VSTAT+1,s point to zero byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
448 tfr d,w tfr count to w counter |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
449 tfm y,u+ clear driver static storage |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
450 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
451 Loop2 clr ,u+ clear newly alloc'ed mem |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
452 subd #$0001 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
453 bhi Loop2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
454 ENDC |
986
aebfc8992bfd
Factored out what appears to be Level III code... was causing ERROR 207's under
boisy
parents:
939
diff
changeset
|
455 * Code here appears to be for Level III? |
1062 | 456 IFGT Level-2 |
1098
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
457 ldd HWPG,s get hwpage and upper addr |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
458 bsr L01D1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
459 std <DATBYT2,s save off |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
460 ldu #$0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
461 tfr u,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
462 stu <DATBYT1,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
463 ldx <D.SysDAT get system mem map ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
464 L0209 ldd ,x++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
465 cmpd <DATBYT2,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
466 beq L023B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
467 cmpd #DAT.Free |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
468 bne L021D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
469 sty <DATBYT1,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
470 leau -$02,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
471 L021D leay >$2000,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
472 bne L0209 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
473 ldb #E$NoRAM |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
474 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
475 cmpr 0,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
476 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
477 cmpu #$0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
478 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
479 lbeq L015C |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
480 ldd <DATBYT2,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
481 std ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
482 ldx <D.SysPrc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
483 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
484 oim #ImgChg,P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
485 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
486 lda P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
487 ora #ImgChg |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
488 sta P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
489 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
490 os9 F$ID |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
491 bra L023F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
492 L023B sty <DATBYT1,s |
1098
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
493 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
494 L023F ldd HWPORT,s |
1098
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
495 IFGT Level-2 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
496 anda #$1F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
497 addd <DATBYT1,s |
986
aebfc8992bfd
Factored out what appears to be Level III code... was causing ERROR 207's under
boisy
parents:
939
diff
changeset
|
498 ENDC |
1098
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
499 ldu VSTAT,s load U with static storage of drvr |
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
500 clr V.PAGE,u clear page byte |
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
501 std V.PORT,u save port address |
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
502 ldy VDESC,s load Y with desc ptr |
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
503 jsr [<DRVENT,s] call driver init routine |
9c837761a347
Fixed a bug where wrong address was being stuffed in driver's static
boisy
parents:
1062
diff
changeset
|
504 lbcs L015C branch if error |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
505 ldu <CURDTE,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
506 L0259 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
507 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
508 ldw #DEVSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
509 tfr s,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
510 tfm x+,u+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
511 leau -DEVSIZ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
512 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
513 ldb #DEVSIZ-1 size of device table - 1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
514 LilLoop lda b,s get from src |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
515 sta b,u save in dest |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
516 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
517 bpl LilLoop |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
518 ENDC |
67 | 519 * Here, U points to Device Table |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
520 L0264 ldx V$DESC,u get desc ptr in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
521 ldb M$Revs,x get revs |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
522 lda AMODE,s get access mode byte passed in A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
523 anda M$Mode,x and with MODE byte in desc. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
524 ldx V$DRIV,u X points to driver module |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
525 anda M$Mode,x AND with mode byte in driver |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
526 cmpa AMODE,s same as passed mode? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
527 beq L0279 if so, ok |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
528 ldb #E$BMode else bad mode |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
529 lbra L015C and return |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
530 L0279 inc V$USRS,u else inc user count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
531 bne L027F if not zero, continue |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
532 dec V$USRS,u else bump back to 255 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
533 L027F ldx <CALLREGS,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
534 stu R$U,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
535 leas <EOSTACK,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
536 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
537 rts |
0 | 538 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
539 IDetach ldu R$U,u |
1634
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
540 ldx V$DESC,u this was incorrectly commented out in 13r4!! |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
541 *** BUG FIX |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
542 * The following two lines fix a long-standing bug in IOMan where |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
543 * the I$Detach routine would deallocate the V$STAT area. This is |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
544 * because the V$USRS offset on the stack, where the temporary |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
545 * device table entry was being built, contained 0. I$Detach wouldn't |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
546 * bother to do a lookup to see if it should release the memory if |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
547 * this value was zero, so here force I$Detach to do the lookup no |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
548 * matter the V$USRS value |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
549 * BGP 04/30/2002 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
550 tst V$USRS,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
551 beq IDetach2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
552 *** BUG FIX |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
553 L0297 lda #$FF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
554 cmpa V$USRS,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
555 lbeq L0351 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
556 dec V$USRS,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
557 lbne L0335 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
558 IDetach2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
559 ldx <D.Init |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
560 ldb DevCnt,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
561 pshs u,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
562 ldx V$STAT,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
563 clr V$STAT,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
564 clr V$STAT+1,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
565 ldy <D.DevTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
566 L02B4 cmpx V$STAT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
567 beq L032B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
568 leay DEVSIZ,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
569 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
570 bne L02B4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
571 ldy <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
572 ldb P$ID,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
573 stb V$USRS,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
574 ldy V$DESC,u |
2415 | 575 IFGT LEVEL-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
576 ldu V$DRIVEX,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
577 exg x,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
578 pshs u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
579 jsr $0F,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
580 puls u |
2415 | 581 ELSE |
582 ldu V$DRIV,u | |
583 exg x,u X pts to driver, U pts to static | |
584 ldd M$Exec,x | |
585 leax d,x | |
586 pshs u | |
587 jsr $0F,x | |
588 puls u | |
589 ENDC | |
590 ldx $01,s get ptr to dev table | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
591 ldx V$DRIV,x load X with driver addr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
592 ldd M$Mem,x get static storage size |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
593 addd #$00FF round up one page |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
594 clrb clear lo byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
595 os9 F$SRtMem return mem |
1634
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
596 |
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
597 * Code here appears to be for Level III? |
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
598 IFGT Level-2 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
599 ldx $01,s get old U on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
600 ldx V$DESC,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
601 ldd M$Port,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
602 beq L032B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
603 lbsr L01D1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
604 cmpb #$3F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
605 beq L032B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
606 tfr d,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
607 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
608 ldf ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
609 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
610 ldu <D.DevTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
611 L02F4 cmpu $01,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
612 beq L0309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
613 ldx V$DESC,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
614 beq L0309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
615 ldd M$Port,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
616 beq L0309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
617 lbsr L01D1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
618 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
619 cmpr y,d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
620 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
621 pshs y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
622 cmpd ,s++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
623 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
624 beq L032B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
625 L0309 leau DEVSIZ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
626 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
627 decf |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
628 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
629 dec ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
630 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
631 bne L02F4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
632 ldx <D.SysPrc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
633 ldu <D.SysDAT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
634 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
635 ldf #$08 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
636 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
637 ldb #$08 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
638 pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
639 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
640 L0316 ldd ,u++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
641 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
642 cmpr y,d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
643 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
644 pshs y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
645 cmpd ,s++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
646 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
647 beq L0323 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
648 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
649 decf |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
650 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
651 dec ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
652 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
653 bne L0316 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
654 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
655 leas 1,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
656 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
657 bra L032B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
658 L0323 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
659 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
660 leas 1,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
661 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
662 ldd #DAT.Free |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
663 std -$02,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
664 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
665 oim #ImgChg,P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
666 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
667 lda P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
668 ora #ImgChg |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
669 sta P$State,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
670 ENDC |
986
aebfc8992bfd
Factored out what appears to be Level III code... was causing ERROR 207's under
boisy
parents:
939
diff
changeset
|
671 ENDC |
1634
5ecf6e023a64
ioman.asm: Fixed bug where descriptor wasn't being unlinked in I$Detach if V$USRS > 0
boisy
parents:
1424
diff
changeset
|
672 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
673 L032B puls u,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
674 ldx V$DESC,u get descriptor in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
675 clr V$DESC,u clear out descriptor |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
676 clr V$DESC+1,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
677 clr V$USRS,u and users |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
678 L0335 |
1307 | 679 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
680 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
681 ldw <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
682 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
683 ldd <D.Proc get curr process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
684 pshs d save it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
685 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
686 ldd <D.SysPrc make system the current process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
687 std <D.Proc |
1307 | 688 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
689 ldy V$DRIV,u get file manager module address |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
690 ldu V$FMGR,u get driver module address |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
691 os9 F$UnLink unlink file manager |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
692 leau ,y point to driver |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
693 os9 F$UnLink unlink driver |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
694 leau ,x point to descriptor |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
695 os9 F$UnLink unlink it |
1307 | 696 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
697 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
698 stw <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
699 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
700 puls d restore current process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
701 std <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
702 ENDC |
1307 | 703 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
704 L0351 lbsr L0595 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
705 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
706 rts |
0 | 707 |
1307 | 708 * User State I$Dup |
709 UIDup bsr LocFrPth look for a free path | |
710 bcs L0376 branch if error | |
711 pshs x,a else save off | |
712 lda R$A,u get path to dup | |
713 lda a,x point to path to dup | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
714 bsr L036F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
715 bcs L036B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
716 puls x,b |
1307 | 717 stb R$A,u save off new path to caller's A |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
718 sta b,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
719 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
720 L036B puls pc,x,a |
0 | 721 |
1307 | 722 * System State I$Dup |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
723 SIDup lda R$A,u |
1307 | 724 L036F lbsr GetPDesc find path descriptor |
725 bcs L0376 exit if error | |
726 inc PD.CNT,y else increment path descriptor | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
727 L0376 rts |
0 | 728 |
1307 | 729 * Find next free path position in current proc |
730 * Exit: X = Ptr to proc's path table | |
731 * A = Free path number (valid if carry clear) | |
732 * | |
733 LocFrPth ldx <D.Proc get ptr to current proc desc | |
734 leax <P$Path,x point X to proc's path table | |
735 clra start from 0 | |
736 L037D tst a,x this path free? | |
737 beq L038A branch if so... | |
738 inca ...else try next path | |
739 cmpa #Numpaths are we at the end? | |
740 bcs L037D branch if not | |
741 comb else path table is full | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
742 ldb #E$PthFul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
743 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
744 L038A andcc #^Carry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
745 rts |
0 | 746 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
747 IUsrCall bsr LocFrPth |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
748 bcs L039F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
749 pshs u,x,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
750 bsr ISysCall |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
751 puls u,x,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
752 bcs L039F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
753 ldb R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
754 stb a,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
755 sta R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
756 L039F rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
757 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
758 ISysCall pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
759 ldb R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
760 bsr AllcPDsc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
761 bcs L03B4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
762 puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
763 lbsr CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
764 bcs L03C3 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
765 lda PD.PD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
766 sta R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
767 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
768 L03B4 puls pc,a |
0 | 769 |
1307 | 770 * Make Directory |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
771 IMakDir pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
772 ldb #DIR.+WRITE. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
773 L03BA bsr AllcPDsc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
774 bcs L03B4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
775 puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
776 lbsr CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
777 L03C3 pshs b,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
778 ldu PD.DEV,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
779 os9 I$Detach |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
780 lda PD.PD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
781 ldx <D.PthDBT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
782 os9 F$Ret64 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
783 puls pc,b,cc |
0 | 784 |
1307 | 785 * Change Directory |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
786 IChgDir pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
787 ldb R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
788 orb #DIR. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
789 bsr AllcPDsc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
790 bcs L03B4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
791 puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
792 lbsr CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
793 bcs L03C3 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
794 ldu <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
795 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
796 tim #PWRIT.+PREAD.+UPDAT.,PD.MOD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
797 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
798 ldb PD.MOD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
799 bitb #PWRIT.+PREAD.+UPDAT. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
800 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
801 beq IChgExec |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
802 ldx PD.DEV,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
803 stx <P$DIO,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
804 inc V$USRS,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
805 bne IChgExec |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
806 dec V$USRS,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
807 IChgExec |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
808 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
809 tim #PEXEC.+EXEC.,PD.MOD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
810 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
811 bitb #PEXEC.+EXEC. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
812 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
813 beq L0406 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
814 ldx PD.DEV,y |
0 | 815 stx <P$DIO+6,u |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
816 inc V$USRS,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
817 bne L0406 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
818 dec V$USRS,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
819 L0406 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
820 bra L03C3 |
0 | 821 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
822 IDelete pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
823 ldb #WRITE. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
824 bra L03BA |
0 | 825 |
1307 | 826 IDeletX ldb #7 Delete offset in file manager |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
827 pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
828 ldb R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
829 bra L03BA |
0 | 830 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
831 * Allocate path descriptor |
744 | 832 * Entry: |
833 * B = mode | |
1307 | 834 AllcPDsc |
835 ldx <D.Proc get pointer to curr proc in X | |
744 | 836 pshs u,x save U/X |
837 ldx <D.PthDBT get ptr to path desc base table | |
838 os9 F$All64 allocate 64 byte page | |
839 bcs L0484 branch if error | |
840 inc PD.CNT,y set path count | |
841 stb PD.MOD,y save mode byte | |
1307 | 842 IFGT Level-1 |
744 | 843 ldx <D.Proc get curr proc desc |
844 ldb P$Task,x get task # | |
1307 | 845 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
846 ldx R$X,u X points to pathlist |
1307 | 847 L042C |
848 IFGT Level-1 | |
849 os9 F$LDABX get byte at X | |
744 | 850 leax 1,x move to next |
1307 | 851 ELSE |
852 lda ,x+ | |
853 ENDC | |
744 | 854 cmpa #C$SPAC space? |
855 beq L042C continue if so | |
856 leax -1,x else back up | |
857 stx R$X,u save updated pointer | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
858 cmpa #PDELIM leading slash? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
859 beq L0459 yep... |
744 | 860 ldx <D.Proc else get curr proc |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
861 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
862 tim #EXEC.,PD.MOD,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
863 ELSE |
744 | 864 ldb PD.MOD,y get mode byte |
865 bitb #EXEC. exec. dir relative? | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
866 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
867 beq L0449 nope... |
744 | 868 ldx <P$DIO+6,x else get dev entry for exec path |
869 bra L044C and branch | |
870 L0449 ldx <P$DIO,x get dev entry for data path | |
871 L044C beq L0489 branch if empty | |
1307 | 872 IFGT Level-1 |
744 | 873 ldd <D.SysPrc get system proc ptr |
874 std <D.Proc get curr proc | |
1307 | 875 ENDC |
744 | 876 ldx V$DESC,x get descriptor pointer |
877 ldd M$Name,x get name offset | |
878 IFNE H6309 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
879 addr d,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
880 ELSE |
744 | 881 leax d,x point X to name in descriptor |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
882 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
883 L0459 pshs y save off path desc ptr in Y |
744 | 884 os9 F$PrsNam parse it |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
885 puls y restore path desc ptr |
744 | 886 bcs L0489 branch if error |
887 lda PD.MOD,y get mode byte | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
888 os9 I$Attach attach to device |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
889 stu PD.DEV,y save dev tbl entry |
744 | 890 bcs L048B branch if error |
891 ldx V$DESC,u else get descriptor pointer | |
0 | 892 * copy options from dev desc to path desc |
744 | 893 leax <M$Opt,x point to opts in desc |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
894 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
895 ldf ,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
896 leau <PD.OPT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
897 cmpf #PD.OPT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
898 bcs L047E |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
899 ldf #$20 |
709
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
900 L047E clre |
6f84b2ce58a6
Incorporated full NitrOS-9 code set; chd/chx still doesn't work under L2
boisy
parents:
704
diff
changeset
|
901 tfm x+,u+ |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
902 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
903 ldb ,x+ get options count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
904 leau <PD.OPT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
905 cmpb #PD.OPT |
0 | 906 bls L03E5 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
907 ldb #PD.OPT-1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
908 KeepLoop lda ,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
909 sta ,u+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
910 L03E5 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
911 bpl KeepLoop |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
912 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
913 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
914 L0484 puls u,x |
1307 | 915 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
916 stx <D.Proc |
1307 | 917 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
918 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
919 |
1242
bdd2f61d5dbc
Fixed case issues in several files (thanks Rodney H.)
boisy
parents:
1098
diff
changeset
|
920 L0489 ldb #E$BPNam |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
921 L048B pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
922 lda ,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
923 ldx <D.PthDBT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
924 os9 F$Ret64 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
925 puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
926 coma |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
927 bra L0484 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
928 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
929 UISeek bsr S2UPath get user path # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
930 bcc GtPDClFM get PD, call FM |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
931 rts |
0 | 932 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
933 SISeek lda R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
934 GtPDClFM bsr GetPDesc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
935 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
936 bcc CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
937 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
938 lbcc CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
939 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
940 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
941 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
942 L04A5 ldb #E$Read |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
943 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
944 tim #WRITE.,,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
945 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
946 lda ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
947 bita #WRITE. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
948 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
949 beq L04B2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
950 ldb #E$Write |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
951 bra L04B2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
952 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
953 L04B0 ldb #E$BMode |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
954 L04B2 com ,s+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
955 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
956 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
957 UIRead bsr S2UPath get user path # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
958 bcc L04E3 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
959 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
960 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
961 UIWrite bsr S2UPath |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
962 bcc L04C1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
963 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
964 |
991
0502363c6fa7
Fixed incorrectly labeled code and a problem with I$DeletX under OS-9 Level Two
boisy
parents:
986
diff
changeset
|
965 SIWrite lda R$A,u |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
966 L04C1 pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
967 ldb #WRITE. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
968 bra L04E7 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
969 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
970 * get path descriptor |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
971 * Passed: A = path number |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
972 * Returned: Y = address of path desc for path num |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
973 GetPDesc ldx <D.PthDBT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
974 os9 F$Find64 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
975 bcs L04DD |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
976 rts |
0 | 977 |
978 * System to User Path routine | |
979 * | |
980 * Returns: | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
981 * A = user path # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
982 * X = path table in path desc. of current proc. |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
983 S2UPath lda R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
984 cmpa #Numpaths |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
985 bcc L04DD illegal path number |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
986 ldx <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
987 adda #P$PATH |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
988 lda a,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
989 bne L04E0 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
990 L04DD comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
991 ldb #E$BPNum |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
992 L04E0 rts |
0 | 993 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
994 SIRead lda R$A,u get user path |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
995 L04E3 pshs b |
0 | 996 ldb #EXEC.+READ. |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
997 L04E7 bsr GetPDesc get path descriptor from path in A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
998 bcs L04B2 branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
999 bitb PD.MOD,y test bits against mode in path desc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1000 beq L04B0 branch if no corresponding bits |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1001 ldd R$Y,u else get count from user |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1002 beq L051C branch if zero count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1003 addd R$X,u else update buffer pointer with size |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1004 bcs L04A5 branch if carry set |
1307 | 1005 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1006 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1007 decd |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1008 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1009 subd #$0001 subtract 1 from count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1010 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1011 lsra / 2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1012 lsra / 4 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1013 lsra / 8 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1014 lsra / 16 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1015 lsra / 32 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1016 ldb R$X,u get address of buffer to hold read data |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1017 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1018 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1019 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1020 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1021 ldx <D.Proc |
0 | 1022 leax <P$DATImg,x |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1023 abx |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1024 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1025 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1026 subr b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1027 tfr a,e |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1028 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1029 pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1030 suba ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1031 sta ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1032 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1033 L0510 ldd ,x++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1034 cmpd #DAT.Free |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1035 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1036 beq L04A5 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1037 dece |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1038 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1039 bne L051X |
0 | 1040 puls a |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1041 bra L04A5 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1042 L051X dec ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1043 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1044 bpl L0510 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1045 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1046 puls a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1047 ENDC |
1307 | 1048 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1049 L051C puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1050 CallFMgr equ * |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1051 subb #$03 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1052 pshs u,y,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1053 ldx <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1054 L0524 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1055 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1056 lde $05,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1057 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1058 tst PD.CPR,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1059 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1060 bne L054B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1061 lda P$ID,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1062 sta PD.CPR,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1063 stu PD.RGS,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1064 ldx PD.DEV,y |
2416 | 1065 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1066 ldx V$FMGREX,x get file manager address |
2415 | 1067 ELSE |
1068 ldx V$FMGR,x | |
1069 ldd M$Exec,x | |
1070 leax d,x | |
1071 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1072 lda #$03 length of lbra instruction |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1073 mul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1074 jsr b,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1075 L0538 pshs b,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1076 bsr L0595 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1077 ldy $04,s get Y off stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1078 ldx <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1079 lda P$ID,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1080 cmpa PD.CPR,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1081 bne L0549 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1082 clr PD.CPR,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1083 L0549 puls pc,u,y,x,b,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1084 L054B pshs u,y,x,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1085 lbsr FIOQu2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1086 puls u,y,x,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1087 coma |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1088 lda <P$Signal,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1089 beq L0524 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1090 tfr a,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1091 bra L0538 |
0 | 1092 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1093 UIGetStt lbsr S2UPath get usr path # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1094 ldx <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1095 bcc L0568 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1096 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1097 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1098 SIGetStt lda R$A,u |
2414 | 1099 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1100 ldx <D.SysPrc |
2414 | 1101 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1102 L0568 pshs x,b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1103 lda R$B,u get func code |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1104 sta $01,s place on stack in B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1105 puls a get path off stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1106 lbsr GtPDClFM |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1107 puls x,a get func code in A, sys proc in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1108 pshs u,y,b,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1109 tsta SS.Opt? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1110 beq SSOpt |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1111 cmpa #SS.DevNm Get device name? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1112 beq SSDevNm |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1113 puls pc,u,y,b,cc |
0 | 1114 |
1307 | 1115 SSOpt equ * |
1116 IFGT Level-1 | |
1117 lda <D.SysTsk | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1118 ldb P$Task,x |
1307 | 1119 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1120 leax <PD.OPT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1121 SSCopy ldy #PD.OPT |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1122 ldu R$X,u |
1307 | 1123 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1124 os9 F$Move |
1307 | 1125 ELSE |
1126 Looper lda ,x+ | |
1127 sta ,u+ | |
1128 decb | |
1129 bne Looper | |
1130 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1131 leas $2,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1132 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1133 puls pc,u,y |
0 | 1134 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1135 L0595 pshs y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1136 ldy <D.Proc get current process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1137 lda <P$IOQN,y get ID of next process in I/O queue |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1138 beq L05AC branch if none |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1139 clr <P$IOQN,y else clear it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1140 ldb #S$Wake get wake signal |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1141 os9 F$Send wake up process ID in A with signal in B |
2414 | 1142 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1143 os9 F$GProcP |
2414 | 1144 ELSE |
1145 ldx <D.PrcDBT | |
1146 os9 F$Find64 | |
1147 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1148 clr P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1149 L05AC clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1150 puls pc,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1151 |
2414 | 1152 SSDevNm |
1153 IFGT Level-1 | |
1154 lda <D.SysTsk | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1155 ldb P$Task,x |
2414 | 1156 ENDC |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1157 IFEQ H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1158 pshs d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1159 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1160 ldx PD.DEV,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1161 ldx V$DESC,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1162 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1163 ldw M$Name,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1164 addr w,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1165 ELSE |
0 | 1166 ldd M$Name,x |
1167 leax d,x | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1168 puls d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1169 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1170 bra SSCopy |
0 | 1171 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1172 UIClose lbsr S2UPath get user path # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1173 bcs L05CE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1174 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1175 lde R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1176 adde #$30 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1177 clr e,x zero path entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1178 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1179 pshs b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1180 ldb R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1181 addb #P$PATH |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1182 clr b,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1183 puls b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1184 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1185 bra L05D1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1186 L05CE rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1187 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1188 SIClose lda R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1189 L05D1 lbsr GetPDesc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1190 bcs L05CE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1191 dec PD.CNT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1192 tst PD.CPR,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1193 bne L05DF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1194 lbsr CallFMgr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1195 L05DF tst PD.CNT,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1196 bne L05CE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1197 lbra L03C3 |
0 | 1198 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1199 FIRQ ldx R$X,u get ptr to IRQ packet |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1200 ldb ,x B = flip byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1201 ldx $01,x X = mask/priority |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1202 clra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1203 pshs cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1204 pshs x,b |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1205 ldx <D.Init |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1206 ldb PollCnt,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1207 ldx <D.PolTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1208 ldy R$X,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1209 beq L0634 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1210 tst $01,s test mask byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1211 beq L0662 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1212 decb dec poll table count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1213 lda #POLSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1214 mul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1215 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1216 addr d,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1217 ELSE |
0 | 1218 leax d,x point to last entry in table |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1219 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1220 lda Q$MASK,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1221 bne L0662 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1222 orcc #IntMasks |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1223 L060D ldb $02,s get priority byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1224 cmpb -(POLSIZ-Q$PRTY),x compare with prev entry's prior |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1225 bcs L0620 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1226 ldb #POLSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1227 L0615 lda ,-x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1228 sta POLSIZ,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1229 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1230 bne L0615 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1231 cmpx <D.PolTbl |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1232 bhi L060D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1233 L0620 ldd R$D,u get dev stat reg |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1234 std Q$POLL,x save it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1235 ldd ,s++ get flip/mask |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1236 std Q$FLIP,x save it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1237 ldb ,s+ get priority |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1238 stb Q$PRTY,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1239 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1240 ldq R$Y,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1241 stq Q$SERV,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1242 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1243 ldd R$Y,u get IRQ svc addr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1244 std Q$SERV,x save |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1245 ldd R$U,u get IRQ svc mem ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1246 std Q$STAT,x save |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1247 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1248 puls pc,cc |
0 | 1249 * Remove the ISR |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1250 L0634 leas $04,s clean stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1251 ldy R$U,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1252 L0639 cmpy Q$STAT,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1253 beq L0645 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1254 leax POLSIZ,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1255 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1256 bne L0639 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1257 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1258 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1259 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1260 L0645 orcc #IntMasks |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1261 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1262 beq L0654 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1263 lda #POLSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1264 mul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1265 tfr d,w |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1266 leay POLSIZ,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1267 tfm y+,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1268 L0654 ldw #POLSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1269 clr ,-s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1270 tfm s,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1271 leas $01,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1272 andcc #^IntMasks |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1273 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1274 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1275 L0645 pshs b,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1276 orcc #IntMasks |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1277 bra L0565 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1278 |
0 | 1279 * Move prev poll entry up one |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1280 L055E ldb POLSIZ,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1281 stb ,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1282 deca |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1283 bne L055E |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1284 L0565 lda #POLSIZ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1285 dec 1,s dec count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1286 bne L055E |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1287 L056B clr ,x+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1288 deca |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1289 bne L056B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1290 puls pc,a,cc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1291 ENDC |
0 | 1292 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1293 L0662 leas $04,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1294 L0664 comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1295 ldb #E$Poll |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1296 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1297 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1298 *************************** |
0 | 1299 * |
1300 * Device polling routine | |
1301 * | |
1302 * Entry: None | |
1303 * | |
1304 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1305 IRQPoll ldy <D.PolTbl get pointer to polling table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1306 ldx <D.Init get pointer to init module |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1307 ldb PollCnt,x get number of entries in table |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1308 L066F lda [Q$POLL,y] get device's status register |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1309 eora Q$FLIP,y flip it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1310 bita Q$MASK,y origin of IRQ? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1311 bne L067E yes, branch |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1312 L0677 leay POLSIZ,y else move to next entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1313 decb done? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1314 bne L066F no, get next one |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1315 bra L0664 else branch |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1316 L067E ldu Q$STAT,y get device static storage |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1317 pshs y,b preserve device # & poll address |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1318 jsr [<Q$SERV,y] execute service routine |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1319 puls y,b restore device # & poll address |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1320 bcs L0677 go to next device if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1321 rts return |
0 | 1322 |
1307 | 1323 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1324 FNMLoad pshs u save caller's regs ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1325 ldx R$X,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1326 lbsr LoadMod allocate proc desc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1327 bcs L06E2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1328 ldy ,s put caller's regs ptr in Y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1329 stx R$X,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1330 ldy ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1331 ldx $04,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1332 ldd #$0006 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1333 os9 F$LDDDXY |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1334 leay ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1335 puls u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1336 bra L06BF |
0 | 1337 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1338 FNMLink ldx <D.Proc |
0 | 1339 leay <P$DATImg,x |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1340 pshs u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1341 ldx R$X,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1342 lda R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1343 os9 F$FModul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1344 bcs L06E2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1345 leay ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1346 puls u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1347 stx R$X,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1348 L06BF std R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1349 ldx MD$Link,y get link count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1350 beq L06C9 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1351 bitb #ReEnt reentrant? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1352 beq L06DF branch if so |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1353 L06C9 leax 1,x increment module link count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1354 beq L06CF branch if zero |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1355 stx MD$Link,y else save new link count |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1356 L06CF ldx MD$MPtr,y get module pointer in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1357 ldy MD$MPDAT,y get module DAT image ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1358 ldd #$000B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1359 os9 F$LDDDXY |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1360 bcs L06DE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1361 std R$Y,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1362 L06DE rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1363 L06DF comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1364 ldb #E$ModBsy |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1365 L06E2 puls pc,u |
1307 | 1366 ENDC |
0 | 1367 |
2414 | 1368 FLoad |
1369 IFGT Level-1 | |
1370 pshs u place caller's reg ptr on stack | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1371 ldx R$X,u get pathname to load |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1372 bsr LoadMod allocate a process descriptor |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1373 bcs L070F exit if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1374 puls y get caller's reg ptr in Y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1375 L06EE pshs y preserve y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1376 stx R$X,y save updated pathlist |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1377 ldy ,u get DAT image pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1378 ldx $04,u get offset within DAT image |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1379 ldd #$0006 get offset to the offset |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1380 os9 F$LDDDXY get language & type |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1381 ldx ,s get caller's reg ptr in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1382 std R$D,x update language/type codes |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1383 leax ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1384 os9 F$ELink |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1385 bcs L070F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1386 ldx ,s get caller's reg ptr in X |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1387 sty R$Y,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1388 stu R$U,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1389 L070F puls pc,u |
2414 | 1390 ELSE |
1391 pshs u | |
1392 ldx R$X,u | |
1393 bsr L05BC | |
1394 bcs L05BA | |
1395 inc $02,u increment link count | |
1396 ldy ,u get mod header addr | |
1397 ldu ,s get caller regs | |
1398 stx R$X,u | |
1399 sty R$U,u | |
1400 lda M$Type,y | |
1401 ldb M$Revs,y | |
1402 std R$D,u | |
1403 ldd M$Exec,y | |
1404 leax d,y | |
1405 stx R$Y,u | |
1406 L05BA puls pc,u | |
1407 ENDC | |
1408 | |
1409 IFGT Level-1 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1410 IDetach0 pshs u save off regs ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1411 ldx R$X,u get ptr to device name |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1412 bsr LoadMod |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1413 bcs L0729 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1414 puls y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1415 ldd <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1416 pshs y,b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1417 ldd R$U,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1418 std <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1419 bsr L06EE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1420 puls x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1421 stx <D.Proc |
2414 | 1422 L0729 puls pc,u |
1423 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1424 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1425 * Load module from file |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1426 * Entry: X = pathlist to file containing module(s) |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1427 * A fake process descriptor is created, then the file is |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1428 * opened and validated into memory. |
0 | 1429 |
2414 | 1430 LoadMod |
1431 IFGT Level-1 | |
1432 os9 F$AllPrc allocate proc desc | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1433 bcc L0731 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1434 rts |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1435 L0731 leay ,u point Y at new alloced mem |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1436 ldu #$0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1437 pshs u,y,x,b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1438 leas <-$11,s make a stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1439 clr $07,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1440 stu ,s save $0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1441 stu $02,s save $0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1442 ldu <D.Proc get proc desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1443 stu $04,s save onto stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1444 clr $06,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1445 lda P$Prior,u get priority |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1446 sta P$Prior,y save |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1447 sta P$Age,y and save as age |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1448 lda #EXEC. from exec dir |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1449 os9 I$Open open it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1450 lbcs L07E1 branch if error |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1451 sta $06,s else save path |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1452 stx <$13,s put updated pathlist in X on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1453 ldx <$15,s get proc desc in Y on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1454 os9 F$AllTsk allocate task |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1455 bcs L07E1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1456 stx <D.Proc save off X into curr proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1457 L0765 ldx <$15,s get proc desc in Y on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1458 lda P$Prior,x get priority |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1459 adda #$08 add eight |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1460 bcc L0770 branch if not overflow |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1461 lda #$FF else load highest |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1462 L0770 sta P$Prior,x save back |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1463 sta P$Age,x and age |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1464 ldd #$0009 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1465 ldx $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1466 lbsr L0866 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1467 bcs L07E1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1468 ldu <$15,s get proc desc in Y on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1469 lda P$Task,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1470 ldb <D.SysTsk |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1471 leau $08,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1472 pshs x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1473 ldx $04,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1474 os9 F$Move |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1475 puls x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1476 ldd M$ID,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1477 cmpd #M$ID12 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1478 bne L07DF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1479 ldd M$Size,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1480 subd #M$IDSize |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1481 lbsr L0866 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1482 bcs L07E1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1483 ldx $04,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1484 lda P$Prior,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1485 ldy <$15,s get proc desc ptr |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1486 sta P$Prior,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1487 sta P$Age,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1488 leay <P$DATImg,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1489 tfr y,d |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1490 ldx $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1491 os9 F$VModul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1492 bcc L07C0 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1493 cmpb #E$KwnMod |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1494 beq L07C6 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1495 bra L07E1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1496 L07C0 ldd $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1497 addd $0A,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1498 std $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1499 * U = mod dir entry |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1500 L07C6 ldd <$17,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1501 bne L0765 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1502 ldd MD$MPtr,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1503 std <$11,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1504 ldd [MD$MPDAT,u] |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1505 std <$17,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1506 ldd MD$Link,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1507 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1508 incd |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1509 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1510 addd #$0001 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1511 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1512 beq L0765 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1513 std MD$Link,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1514 bra L0765 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1515 L07DF ldb #E$BMID |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1516 L07E1 stb $07,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1517 ldd $04,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1518 beq L07E9 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1519 std <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1520 L07E9 lda $06,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1521 beq L07F0 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1522 os9 I$Close close path to file |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1523 L07F0 ldd $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1524 addd #$1FFF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1525 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1526 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1527 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1528 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1529 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1530 sta $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1531 ldb ,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1532 beq L081D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1533 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1534 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1535 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1536 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1537 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1538 subb $02,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1539 beq L081D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1540 ldx <$15,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1541 leax <P$DATImg,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1542 lsla |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1543 leax a,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1544 leax $01,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1545 ldu <D.BlkMap |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1546 L0816 lda ,x++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1547 clr a,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1548 decb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1549 bne L0816 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1550 L081D ldx <$15,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1551 lda P$ID,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1552 os9 F$DelPrc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1553 ldd <$17,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1554 bne L0832 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1555 ldb $07,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1556 stb <$12,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1557 comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1558 bra L0861 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1559 L0832 ldu <D.ModDir |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1560 ldx <$11,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1561 ldd <$17,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1562 leau -MD$ESize,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1563 L083C leau MD$ESize,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1564 cmpu <D.ModEnd |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1565 bcs L084B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1566 comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1567 ldb #E$MNF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1568 stb <$12,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1569 bra L0861 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1570 L084B cmpx MD$MPtr,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1571 bne L083C |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1572 cmpd [MD$MPDAT,u] |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1573 bne L083C |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1574 ldd MD$Link,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1575 beq L085D |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1576 subd #$0001 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1577 std MD$Link,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1578 L085D stu <$17,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1579 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1580 L0861 leas <$11,s |
0 | 1581 puls pc,u,y,x,b,a |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1582 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1583 L0866 pshs y,x,b,a |
0 | 1584 addd $02,s |
1585 std $04,s | |
1586 cmpd $08,s | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1587 bls L08C2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1588 addd #$1FFF |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1589 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1590 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1591 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1592 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1593 lsra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1594 cmpa #$07 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1595 bhi L08A4 |
0 | 1596 ldb $08,s |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1597 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1598 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1599 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1600 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1601 lsrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1602 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1603 subr b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1604 lslb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1605 exg b,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1606 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1607 pshs b |
0 | 1608 exg b,a |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1609 subb ,s+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1610 lsla |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1611 ENDC |
0 | 1612 ldu <$1D,s |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1613 leau <P$DATImg,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1614 leau a,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1615 clra |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1616 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1617 tfr b,f |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1618 ELSE |
0 | 1619 tfr d,x |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1620 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1621 ldy <D.BlkMap |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1622 clrb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1623 L0899 tst ,y+ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1624 beq L08A9 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1625 L089D equ * |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1626 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1627 incd |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1628 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1629 addd #$0001 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1630 ENDC |
0 | 1631 cmpy <D.BlkMap+2 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1632 bne L0899 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1633 L08A4 comb |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1634 ldb #E$MemFul |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1635 bra L08CC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1636 L08A9 inc -$01,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1637 std ,u++ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1638 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1639 lde $08,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1640 adde #$20 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1641 ste $08,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1642 decf |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1643 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1644 pshs a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1645 lda $09,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1646 adda #$20 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1647 sta $09,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1648 puls a |
0 | 1649 leax -1,x |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1650 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1651 bne L089D |
0 | 1652 ldx <$1D,s |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1653 os9 F$SetTsk |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1654 bcs L08CC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1655 L08C2 lda $0E,s |
0 | 1656 ldx $02,s |
1657 ldy ,s | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1658 os9 I$Read |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1659 L08CC leas $04,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1660 puls pc,x |
2414 | 1661 ELSE |
1662 L05BC lda #EXEC. | |
1663 os9 I$Open | |
1664 bcs L0632 | |
1665 leas -$0A,s make room on stack | |
1666 ldu #$0000 | |
1667 pshs u,y,x | |
1668 sta 6,s save path | |
1669 L05CC ldd 4,s get U (caller regs) from stack | |
1670 bne L05D2 | |
1671 stu 4,s | |
1672 L05D2 lda 6,s get path | |
1673 leax 7,s point to place on stack | |
1674 ldy #M$IDSize read M$IDSize bytes | |
1675 os9 I$Read | |
1676 bcs L061E | |
1677 ldd ,x | |
1678 cmpd #M$ID12 | |
1679 bne L061C | |
1680 ldd $09,s get module size | |
1681 os9 F$SRqMem allocate mem | |
1682 bcs L061E | |
1683 ldb #M$IDSize | |
1684 L05F0 lda ,x+ copy over first M$IDSize bytes | |
1685 sta ,u+ | |
1686 decb | |
1687 bne L05F0 | |
1688 lda $06,s get path | |
1689 leax ,u point X at updated U | |
1690 ldu $09,s get module size | |
1691 leay -M$IDSize,u subtract count | |
1692 os9 I$Read | |
1693 leax -M$IDSize,x | |
1694 bcs L060B | |
1695 os9 F$VModul validate module | |
1696 bcc L05CC | |
1697 L060B pshs u,b | |
1698 leau ,x point U at memory allocated | |
1699 ldd M$Size,x | |
1700 os9 F$SRtMem return mem | |
1701 puls u,b | |
1702 cmpb #E$KwnMod | |
1703 beq L05CC | |
1704 bra L061E | |
1705 L061C ldb #E$BMID | |
1706 L061E puls u,y,x | |
1707 lda ,s get path | |
1708 stb ,s save error code | |
1709 os9 I$Close close path | |
1710 ldb ,s | |
1711 leas $0A,s clear up stack | |
1712 cmpu #$0000 | |
1713 bne L0632 | |
1714 coma | |
1715 L0632 rts | |
1716 ENDC | |
1717 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1718 ******************************** |
0 | 1719 * |
1720 * F$PErr System call entry point | |
1721 * | |
1722 * Entry: U = Register stack pointer | |
1723 * | |
1724 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1725 ErrHead fcc /ERROR #/ |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1726 ErrNum equ *-ErrHead |
0 | 1727 fcb $2F,$3A,$30 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1728 fcb C$CR |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1729 ErrMessL equ *-ErrHead |
0 | 1730 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1731 FPErr ldx <D.Proc get current process pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1732 lda <P$PATH+2,x get stderr path |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1733 beq L0922 return if not there |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1734 leas -ErrMessL,s make room on stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1735 * copy error message to stack |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1736 leax <ErrHead,pcr point to error text |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1737 leay ,s point to buffer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1738 L08E9 lda ,x+ get a byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1739 sta ,y+ store a byte |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1740 cmpa #C$CR done? |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1741 bne L08E9 no, keep going |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1742 ldb R$B,u get error # |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1743 * Convert error code to decimal |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1744 L08F3 inc ErrNum+0,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1745 subb #$64 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1746 bcc L08F3 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1747 L08F9 dec ErrNum+1,s |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1748 addb #$0A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1749 bcc L08F9 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1750 addb #$30 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1751 stb ErrNum+2,s |
2414 | 1752 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1753 ldx <D.Proc get current process pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1754 ldu P$SP,x get the stack pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1755 leau -ErrMessL,u put a buffer on it |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1756 lda <D.SysTsk get system task number |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1757 ldb P$Task,x get task number of process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1758 leax ,s point to error text |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1759 ldy #ErrMessL get length of text |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1760 L0913 os9 F$Move move it to the process |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1761 leax ,u point to the moved text |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1762 ldu <D.Proc get process pointer |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1763 lda <P$PATH+2,u get path number |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1764 os9 I$WritLn write the text |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1765 leas ErrMessL,s purge the buffer |
2414 | 1766 ELSE |
1767 ldx <D.Proc | |
1768 leax ,s point to error message | |
1769 ldu <D.Proc | |
1770 lda <P$PATH+2,u | |
1771 os9 I$WritLn write message | |
1772 leas ErrMessL,s fix up stack | |
1773 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1774 L0922 rts return |
0 | 1775 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1776 FIOQu |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1777 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1778 lde R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1779 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1780 FIOQu2 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1781 ldy <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1782 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1783 clrf |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1784 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1785 L092B lda <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1786 beq L094F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1787 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1788 cmpr e,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1789 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1790 cmpa R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1791 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1792 bne L094A |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1793 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1794 stf <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1795 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1796 clr <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1797 ENDC |
2414 | 1798 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1799 os9 F$GProcP |
2414 | 1800 ELSE |
1801 ldx <D.PrcDBT | |
1802 os9 F$Find64 | |
1803 ENDC | |
1804 bcs L0922 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1805 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1806 stf P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1807 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1808 clr P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1809 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1810 ldb #S$Wake |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1811 os9 F$Send |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1812 ldu <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1813 bra L0958 |
2414 | 1814 L094A |
1815 IFGT Level-1 | |
1816 os9 F$GProcP | |
1817 ELSE | |
1818 ldx <D.PrcDBT | |
1819 os9 F$Find64 | |
1820 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1821 bcc L092B |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1822 L094F |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1823 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1824 tfr e,a |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1825 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1826 lda R$A,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1827 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1828 ldu <D.Proc |
2414 | 1829 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1830 os9 F$GProcP |
2414 | 1831 ELSE |
1832 ldx <D.PrcDBT | |
1833 os9 F$Find64 | |
1834 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1835 bcs L09B1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1836 L0958 leax ,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1837 lda <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1838 beq L097A |
2414 | 1839 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1840 os9 F$GProcP |
2414 | 1841 ELSE |
1842 ldx <D.PrcDBT | |
1843 os9 F$Find64 | |
1844 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1845 bcs L09B1 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1846 ldb P$Age,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1847 cmpb P$Age,y FYI, was cmpd, bug in OS-9 Level Two from Tandy |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1848 bls L0958 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1849 ldb ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1850 stb <P$IOQN,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1851 ldb ,x |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1852 stb P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1853 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1854 stf P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1855 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1856 clr P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1857 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1858 exg y,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1859 bra L0958 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1860 L097A lda ,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1861 sta <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1862 lda ,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1863 sta P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1864 ldx #$0000 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1865 os9 F$Sleep |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1866 ldu <D.Proc |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1867 lda P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1868 beq L09B1 |
2414 | 1869 IFGT Level-1 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1870 os9 F$GProcP |
2414 | 1871 ELSE |
1872 ldx <D.PrcDBT | |
1873 os9 F$Find64 | |
1874 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1875 bcs L09AE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1876 lda <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1877 beq L09AE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1878 lda <P$IOQN,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1879 sta <P$IOQN,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1880 beq L09AE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1881 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1882 stf <P$IOQN,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1883 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1884 clr <P$IOQN,u |
2414 | 1885 ENDC |
1886 IFGT Level-1 | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1887 os9 F$GProcP |
2414 | 1888 ELSE |
1889 ldx <D.PrcDBT | |
1890 os9 F$Find64 | |
1891 ENDC | |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1892 bcs L09AE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1893 lda P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1894 sta P$IOQP,y |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1895 L09AE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1896 IFNE H6309 |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1897 stf P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1898 ELSE |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1899 clr P$IOQP,u |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1900 ENDC |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1901 L09B1 rts |
0 | 1902 |
704
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1903 emod |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1904 eom equ * |
671274e822df
Integrated NitrOS-9 IOMan with OS-9 Level Two. Note that DEVSIZ and
boisy
parents:
372
diff
changeset
|
1905 end |
0 | 1906 |