0
|
1 ********************************************************************
|
|
2 * pwd - Print working directory
|
|
3 *
|
|
4 * $Id$
|
|
5 *
|
|
6 * Ed. Comments Who YY/MM/DD
|
|
7 * ------------------------------------------------------------------
|
|
8 * 1 Original Tandy/Microware version
|
|
9
|
|
10 nam pwd
|
|
11 ttl Print working directory
|
|
12
|
|
13 * Disassembled 98/09/10 23:47:33 by Disasm v1.6 (C) 1988 by RML
|
|
14
|
|
15 ifp1
|
|
16 use defsfile
|
|
17 endc
|
|
18
|
|
19 tylg set Prgrm+Objct
|
|
20 atrv set ReEnt+rev
|
|
21 rev set $01
|
|
22 edition set 1
|
|
23
|
|
24 mod eom,name,tylg,atrv,start,size
|
|
25
|
|
26 u0000 rmb 1
|
|
27 u0001 rmb 2
|
|
28 u0003 rmb 2
|
|
29 u0005 rmb 1
|
|
30 u0006 rmb 2
|
|
31 u0008 rmb 1
|
|
32 u0009 rmb 2
|
|
33 u000B rmb 3
|
|
34 u000E rmb 29
|
|
35 u002B rmb 2
|
|
36 u002D rmb 129
|
|
37 u00AE rmb 1
|
|
38 u00AF rmb 282
|
|
39 size equ .
|
|
40
|
|
41 name fcs /pwd/
|
|
42 fcb edition
|
|
43 L0011 fcc "pwd: bad name in path"
|
|
44 fcb C$CR
|
|
45 L0027 fcc "."
|
|
46 L0028 fcc "."
|
|
47 L0029 fcb C$CR
|
|
48 L002A fcc "read error"
|
|
49 fcb C$CR
|
|
50
|
|
51 start leax >u00AE,u
|
|
52 lda #$0D
|
|
53 sta ,x
|
|
54 stx <u0001
|
|
55 leax >L0028,pcr
|
|
56 bsr L0096
|
|
57 sta <u0000
|
|
58 lbsr L00CD
|
|
59 ldd <u0003
|
|
60 std <u0009
|
|
61 lda <u0005
|
|
62 sta <u000B
|
|
63 L0052 bsr L00C6
|
|
64 beq L0079
|
|
65 leax >L0027,pcr
|
|
66 bsr L0090
|
|
67 lda <u0000
|
|
68 os9 I$Close
|
|
69 bcs L008D
|
|
70 leax >L0028,pcr
|
|
71 bsr L0096
|
|
72 bsr L00CD
|
|
73 bsr L00A8
|
|
74 bsr L00E2
|
|
75 ldd <u0003
|
|
76 std <u0009
|
|
77 lda <u0005
|
|
78 sta <u000B
|
|
79 bra L0052
|
|
80 L0079 lbsr L00FB
|
|
81 ldx <u0001
|
|
82 ldy #$0081
|
|
83 lda #$01
|
|
84 os9 I$WritLn
|
|
85 lda <u0000
|
|
86 os9 I$Close
|
|
87 clrb
|
|
88 L008D os9 F$Exit
|
|
89 L0090 lda #$81
|
|
90 os9 I$ChgDir
|
|
91 rts
|
|
92 L0096 lda #$81
|
|
93 os9 I$Open
|
|
94 rts
|
|
95 L009C lda <u0000
|
|
96 leax u000E,u
|
|
97 ldy #$0020
|
|
98 os9 I$Read
|
|
99 rts
|
|
100 L00A8 lda <u0000
|
|
101 bsr L009C
|
|
102 bcs L010F
|
|
103 leax u000E,u
|
|
104 leax <$1D,x
|
|
105 leay u0009,u
|
|
106 bsr L00BA
|
|
107 bne L00A8
|
|
108 rts
|
|
109 L00BA ldd ,x++
|
|
110 cmpd ,y++
|
|
111 bne L00C5
|
|
112 lda ,x
|
|
113 cmpa ,y
|
|
114 L00C5 rts
|
|
115 L00C6 leax u0003,u
|
|
116 leay u0006,u
|
|
117 bsr L00BA
|
|
118 rts
|
|
119 L00CD bsr L009C
|
|
120 ldd <u002B
|
|
121 std <u0006
|
|
122 lda <u002D
|
|
123 sta <u0008
|
|
124 bsr L009C
|
|
125 ldd <u002B
|
|
126 std <u0003
|
|
127 lda <u002D
|
|
128 sta <u0005
|
|
129 rts
|
|
130 L00E2 leax u000E,u
|
|
131 L00E4 os9 F$PrsNam
|
|
132 bcs L0109
|
|
133 ldx <u0001
|
|
134 L00EB lda ,-y
|
|
135 anda #$7F
|
|
136 sta ,-x
|
|
137 decb
|
|
138 bne L00EB
|
|
139 lda #$2F
|
|
140 sta ,-x
|
|
141 stx <u0001
|
|
142 rts
|
|
143 L00FB lda <u0000
|
|
144 ldb #$0E
|
|
145 leax >u00AF,u
|
|
146 os9 I$GetStt
|
|
147 bsr L00E4
|
|
148 rts
|
|
149 L0109 leax >L0011,pcr
|
|
150 bra L0123
|
|
151 L010F leax >L002A,pcr
|
|
152 bra L0123
|
|
153 L0115 lda #$02
|
|
154 os9 I$Write
|
|
155 bcs L0128
|
|
156 rts
|
|
157 bsr L0115
|
|
158 leax >L0029,pcr
|
|
159 L0123 lda #$02
|
|
160 os9 I$WritLn
|
|
161 L0128 ldb #$00
|
|
162 os9 F$Exit
|
|
163
|
|
164 emod
|
|
165 eom equ *
|
|
166 end
|