annotate level2/cmds/wcreate.asm @ 1143:f052edb830d2

Article from 1994 about DAVID with background info about Microware
author roug
date Mon, 21 Apr 2003 16:56:47 +0000
parents b62985f61614
children bf6f854a4299
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1 ********************************************************************
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
2 * WCreate - Create a window
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
3 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
4 * $Id$
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
5 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
6 * Ed. Comments Who YY/MM/DD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
7 * ------------------------------------------------------------------
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 * 3 Original Tandy/Microware version
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
10 nam WCreate
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
11 ttl Create a window
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
13 * Disassembled 98/09/11 18:26:55 by Disasm v1.6 (C) 1988 by RML
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15 ifp1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 use defsfile
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17 endc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
19 DOHELP set 0
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
20
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 tylg set Prgrm+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22 atrv set ReEnt+rev
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 rev set $01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 edition set 3
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
25
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26 mod eom,name,tylg,atrv,start,size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 u0000 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29 u0002 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 u0003 rmb 7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 u000A rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 u000B rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 u000C rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 u000D rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 u000E rmb 480
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 size equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 name fcs /WCreate/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 fcb edition
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
40
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
41 IFNE DOHELP
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
42 HelpMsg fcb C$CR
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44 fcc "WCreate <windpath> [-s=stype] xpos ypos width height fcol bcol [bord]"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 fcc "Use: Create a new window"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 fcc "Options: -s=stype place the window on a new screen, must also"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 fcc " include the border color."
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
54 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
56 fcc " -z receive commands from standard input"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 fcc " -? receive help message"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 fcb C$LF
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
62 ENDC
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
63
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
64 CurOn fdb $1B21
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 start clr <u000D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 sta <u000C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 lbsr L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 cmpa #PDELIM
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 bne L015D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 bsr L01B2
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
75 bra Exit
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 L015D cmpa #'-
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
77 lbne ShowHelp
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78 leax 1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
80 cmpa #$3F
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
81 lbeq ShowHelp
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 cmpa #$7A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 beq L0177
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
84 cmpa #$5A
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
85 lbne ShowHelp
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 L0177 lda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 sta <u000D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88 L017B clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89 leax u000E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
90 ldy #$0050
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91 os9 I$ReadLn
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 bcs L019C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 cmpa #$2A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95 beq L0177
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 lbsr L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 cmpa #C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 beq L01A0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 bsr L01B5
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
101 bcs Exit
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102 bra L017B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
103 L019C cmpb #$D3
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
104 bne Exit
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 L01A0 lda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106 lbsr L0254
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
107 lda <u000C
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
108 bmi ExitOk
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
109 os9 I$Close
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
110 bcs Exit
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
111 ExitOk clrb
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
112 Exit os9 F$Exit
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
113
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
114 L01B2 lbsr L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
115 L01B5 clr <u000A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
116 clr <u0002
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
117 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
118 cmpa #PDELIM
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
119 lbne L0269
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
120 lda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
121 pshs u,x,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
122 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
123 os9 I$Attach
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
124 puls u,x,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
125 lbcs L0253
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
126 os9 I$Open
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
127 bcs L0253
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
128 sta <u000B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
129 lbsr L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
130 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
131 cmpa #'-
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
132 bne L01FD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
133 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
134 cmpa #$73
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
135 beq L01EA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
136 cmpa #$53
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
137 bne L0269
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
138 L01EA lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
139 cmpa #$3D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
140 bne L0269
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
141 leay u0002,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
142 lbsr L027B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
143 bcs L0269
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
144 inc <u000A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
145 ldb #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
146 bra L0203
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
147 L01FD leay u0003,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
148 ldb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
149 leax -1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
150 L0203 bsr L027B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
151 bcs L0269
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
152 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
153 bne L0203
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
154 leax ,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
155 lda #$1B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
156 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
157 lda #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
158 sta 1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
159 tst <u000A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
160 beq L021E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
161 ldy #$000A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
162 bra L0222
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
163 L021E ldy #$0009
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
164 L0222 lda <u000B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
165 os9 I$Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
166 bcs L0253
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
167 tst <u000D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
168 beq L024E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
169 tst <u000A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
170 beq L024E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
171 tst <u000C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
172 bpl L0239
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
173 lda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
174 bsr L0254
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
175 L0239 lda <u000B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
176 bsr L0254
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
177 bcs L0253
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
178 tst <u000C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
179 bmi L0248
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
180 lda <u000C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
181 os9 I$Close
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
182 L0248 lda <u000B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
183 sta <u000C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
184 bra L0253
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
185 L024E lda <u000B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
186 os9 I$Close
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
187 L0253 rts
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
188 L0254 leax >CurOn,pcr
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
189 ldy #$0002
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
190 os9 I$Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
191 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
192 L0260 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
193 cmpa #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
194 beq L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
195 leax -1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
196 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
197 L0269 leas $02,s
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
198 ShowHelp equ *
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
199 IFNE DOHELP
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
200 lda #$01
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
201 leax >HelpMsg,pcr
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
202 ldy #$0133
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
203 os9 I$Write
922
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
204 ENDC
b62985f61614 Added DOHELP conditional, montype now requires dash before options
boisy
parents: 0
diff changeset
205 lbra ExitOk
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
206 L027B pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
207 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
208 stb ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
209 L0280 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
210 cmpa #$30
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
211 blt L029B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
212 cmpa #$39
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
213 bhi L029B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
214 suba #$30
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
215 pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
216 lda #$0A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
217 ldb ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
218 mul
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
219 addb ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
220 stb ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
221 bvs L02A7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
222 bra L0280
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
223 L029B cmpa #C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
224 beq L02AA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
225 cmpa #C$SPAC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
226 bsr L0260
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
227 bra L02AA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
228 bne L02A7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
229 L02A7 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
230 bra L02AD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
231 L02AA clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
232 leay $01,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
233 L02AD puls pc,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
234
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
235 emod
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
236 eom equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
237 end
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
238