comparison CoCoOS9/level2v3/CMDS/rename.asm @ 31:bd2b07db8917 cocoos9lv2v3

CoCoOS9 version
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 14 Jul 2018 15:16:13 +0900
parents
children
comparison
equal deleted inserted replaced
30:7b1b25ff010a 31:bd2b07db8917
1 ********************************************************************
2 * Rename - Rename a file
3 *
4 * $Id: rename.asm,v 1.1.1.1 2001/02/21 23:30:54 boisy Exp $
5 *
6 * Ed. Comments Who YY/MM/DD
7 * ------------------------------------------------------------------
8 * 6 Original Tandy/Microware version
9
10 nam Rename
11 ttl Rename a file
12
13 * Disassembled 98/09/11 01:35:46 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 6
23
24 mod eom,name,tylg,atrv,start,size
25
26 u0000 rmb 1
27 u0001 rmb 1
28 u0002 rmb 2
29 u0004 rmb 1
30 u0005 rmb 2
31 u0007 rmb 1
32 u0008 rmb 24
33 u0020 rmb 26
34 u003A rmb 2
35 u003C rmb 405
36 size equ .
37
38 name fcs /Rename/
39 fcb edition
40
41 start cmpd #$0004
42 lbcs L00A8
43 stx <u0000
44 lda #WRITE.
45 os9 I$Open
46 bcc L0032
47 cmpb #E$FNA
48 bne L00A5
49 ldx <u0000
50 lda #DIR.+WRITE.
51 os9 I$Open
52 bcs L00A5
53 L0032 stx <u0005
54 ldb #$00
55 leax <u0020,u
56 os9 I$GetStt
57 bcs L00A5
58 os9 I$Close
59 bcs L00A5
60 ldb <u0020
61 cmpb #$01
62 bne L00A8
63 bsr L00AE
64 bcs L00A5
65 ldx <u0002
66 lda #C$CR
67 sta -1,x
68 ldx <u0000
69 lda #$03
70 os9 I$ChgDir
71 bcs L00A5
72 ldx <u0005
73 ldb <u0008
74 decb
75 lda b,x
76 ora #$80
77 sta b,x
78 incb
79 cmpb <u0004
80 bne L0075
81 leay ,x
82 ldx <u0002
83 os9 F$CmpNam
84 bcc L0082
85 L0075 ldx <u0005
86 lda #READ.
87 os9 I$Open
88 bcc L00A8
89 cmpb #E$PNNF
90 bne L00A8
91 L0082 leax <L00AC,pcr
92 lda #DIR.!UPDAT.
93 os9 I$Open
94 bcs L00A5
95 ldx <u003A
96 ldu <u003C
97 os9 I$Seek
98 bcs L00A5
99 ldx <u0005
100 ldy <u0007
101 os9 I$Write
102 bcs L00A5
103 os9 I$Close
104 bcs L00A5
105 clrb
106 L00A5 os9 F$Exit
107 L00A8 ldb #E$BPNam
108 bra L00A5
109 L00AC fdb $2EFE
110 L00AE ldx <u0000
111 bsr L00F6
112 ldu <u0000
113 lda ,u
114 cmpa #PDELIM
115 beq L00C7
116 lda ,y
117 cmpa #PDELIM
118 beq L00C7
119 leau <L00AC,pcr
120 stu <u0000
121 bra L00CD
122 L00C7 leax ,y
123 bsr L00F6
124 bcs L00F2
125 L00CD stx <u0002
126 stb <u0004
127 leax ,y
128 bsr L00F6
129 bcc L00CD
130 ldb <u0004
131 beq L00F2
132 ldx <u0005
133 os9 F$PrsNam
134 bcs L00F2
135 lda ,y
136 cmpa #PDELIM
137 beq L00F2
138 cmpb #$1E
139 bcc L00F2
140 stx <u0005
141 clra
142 std <u0007
143 rts
144 L00F2 comb
145 ldb #E$BPNam
146 rts
147 L00F6 os9 F$PrsNam
148 bcc L0119
149 clrb
150 leau ,x
151 L00FE lda ,u+
152 bpl L0107
153 incb
154 cmpa #$AE
155 bne L010C
156 L0107 incb
157 cmpa #C$PERD
158 beq L00FE
159 L010C decb
160 beq L0118
161 leay -u0001,u
162 cmpb #$03
163 bcc L0118
164 clrb
165 bra L0119
166 L0118 coma
167 L0119 rts
168
169 emod
170 eom equ *
171 end
172