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