annotate level1/cmds/scsiquery.asm @ 3165:2d22d31bc74b

L2 kernel: Minor comment tweaks
author Neal Crook <foofoobedoo@gmail.com>
date Thu, 06 Apr 2017 22:51:54 +0100
parents 17d43fd29ee2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2590
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
1 ********************************************************************
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
2 * scsiquery - Get info on SCSI device through SS.DCmd call
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
3 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
4 * $Id$
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
5 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
6 * Edt/Rev YYYY/MM/DD Modified by
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
7 * Comment
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
8 * ------------------------------------------------------------------
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
9 * 1 2008/01/21 Boisy G. Pitre
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
10 * Created while on the FPSO Kikeh in the South China Sea.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
11
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
12 nam scsiquery
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
13 ttl Get info on SCSI device through the SS.DCmd call
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
14
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
15 ifp1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
16 use defsfile
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
17 use scfdefs
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
18 endc
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
19
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
20 tylg set Prgrm+Objct
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
21 atrv set ReEnt+rev
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
22 rev set $00
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
23 edition set 1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
24
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
25 mod eom,name,tylg,atrv,start,size
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
26
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
27 org 0
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
28 code rmb 1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
29 lsn rmb 3
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
30 left rmb 2
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
31 path rmb 1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
32 numbuf rmb 16
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
33 txbuff rmb 2048 to accomodate CD-ROM sector sizes
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
34 rmb 200
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
35 size equ .
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
36
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
37 StartM fcc /SCSI Inquiry Utility/
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
38 cr fcb C$CR
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
39 VID fcc /Vendor ID : /
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
40 VIDL equ *-VID
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
41 PID fcc /Product ID : /
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
42 PIDL equ *-PID
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
43 RLV fcc /Revision : /
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
44 RLVL equ *-RLV
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
45 LBA fcc /Blocks : /
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
46 LBAL equ *-LBA
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
47 BSZ fcc /Block Size : /
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
48 BSZL equ *-BSZ
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
49
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
50 InquiryUnit fcb $12,$00,$00,$00,96,$00
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
51 ReadCapacity fcb $25,$00,$00,$00,$00,$00,$00,$00,$00,$00
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
52
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
53 name fcs /scsiquery/
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
54 fcb edition
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
55
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
56 start
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
57 leay txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
58 ldd #$2060
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
59 l@ sta ,y+
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
60 decb
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
61 bne l@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
62 leay txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
63
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
64 l@ lda ,x+
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
65 cmpa #C$CR
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
66 beq ok@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
67 cmpa #C$SPAC
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
68 beq ok@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
69 sta ,y+
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
70 bra l@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
71 ok@ ldd #'@*256+C$CR
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
72 std ,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
73 leax txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
74
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
75 lda #READ.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
76 os9 I$Open
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
77 lbcs exit
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
78 sta path,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
79
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
80 leax StartM,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
81 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
82 ldy #100
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
83 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
84
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
85 * Do INQUIRY
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
86 leax txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
87 leay InquiryUnit,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
88 lda path,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
89 ldb #SS.DCmd
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
90 os9 I$SetStt
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
91 lbcs exit
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
92
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
93 * Show Vendor ID
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
94 leax VID,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
95 ldy #VIDL
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
96 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
97 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
98
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
99 leax txbuff+8,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
100 ldy #15-8+1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
101 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
102 os9 I$Write
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
103 leax cr,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
104 ldy #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
105 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
106
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
107 * Show Product ID
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
108 leax PID,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
109 ldy #PIDL
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
110 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
111 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
112
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
113 leax txbuff+16,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
114 ldy #31-16+1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
115 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
116 os9 I$Write
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
117 leax cr,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
118 ldy #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
119 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
120
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
121 * Show Revision Level
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
122 leax RLV,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
123 ldy #RLVL
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
124 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
125 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
126
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
127 leax txbuff+32,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
128 ldy #35-32+1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
129 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
130 os9 I$Write
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
131 leax cr,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
132 ldy #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
133 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
134
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
135 * Do READ CAPACITY
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
136 leax txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
137 leay ReadCapacity,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
138 lda path,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
139 ldb #SS.DCmd
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
140 os9 I$SetStt
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
141 bcs exit
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
142
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
143 * Show Number of Blocks
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
144 leax LBA,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
145 ldy #LBAL
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
146 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
147 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
148
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
149 leax txbuff,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
150 leay numbuf,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
151 bsr itoa
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
152 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
153 os9 I$Write
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
154
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
155 leax cr,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
156 ldy #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
157 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
158
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
159 * Show Block Size
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
160 leax BSZ,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
161 ldy #BSZL
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
162 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
163 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
164
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
165 leax txbuff+4,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
166 leay numbuf,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
167 bsr itoa
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
168 lda #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
169 os9 I$Write
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
170
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
171 leax cr,pcr
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
172 ldy #1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
173 os9 I$WritLn
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
174
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
175 exitok clrb
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
176 exit os9 F$Exit
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
177
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
178 * Entry:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
179 * X = address of 32 bit value
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
180 * Y = address of buffer to hold number
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
181 * Exit:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
182 * X = address of buffer holding number
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
183 * Y = length of number string in bytes
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
184 itoa pshs u,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
185 tfr y,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
186 ldb #10 max number of numbers (10^9)
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
187 pshs b save count on stack
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
188 leay Base,pcr point to base of numbers
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
189 s@ lda #$30 put #'0
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
190 sta ,u at U
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
191 s1@ bsr Sub32 ,X=,X-,Y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
192 inc ,u
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
193 bcc s1@ if X>0, continue
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
194 bsr Add32 add back in
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
195 dec ,u+
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
196 dec ,s decrement counter
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
197 beq done@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
198 lda ,s
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
199 cmpa #$09
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
200 beq comma@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
201 cmpa #$06
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
202 beq comma@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
203 cmpa #$03
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
204 bne s2@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
205 comma@ ldb #',
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
206 stb ,u+
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
207 s2@ leay 4,y point to next
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
208 bra s@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
209 done@ leas 1,s
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
210 * 1,234,567,890
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
211 ldb #14 length of string with commas + 1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
212 ldx ,s++ get pointer to buffer
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
213 a@ decb
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
214 beq ex@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
215 lda ,x+ get byte
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
216 cmpa #'0
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
217 beq a@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
218 cmpa #',
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
219 beq a@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
220 clra
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
221 tfr d,y transfer count into Y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
222 v@ leax -1,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
223 puls u,pc
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
224 ex@ ldy #0001
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
225 bra v@
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
226
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
227 * Entry:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
228 * X = address of 32 bit minuend
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
229 * Y = address of 32 bit subtrahend
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
230 * Exit:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
231 * X = address of 32 bit difference
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
232 Sub32 ldd 2,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
233 subd 2,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
234 std 2,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
235 ldd ,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
236 sbcb 1,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
237 sbca ,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
238 std ,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
239 rts
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
240
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
241
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
242 * Entry:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
243 * X = address of 32 bit number
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
244 * Y = address of 32 bit number
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
245 * Exit:
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
246 * X = address of 32 bit sum
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
247 Add32 ldd 2,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
248 addd 2,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
249 std 2,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
250 ldd ,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
251 adcb 1,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
252 adca ,y
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
253 std ,x
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
254 rts
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
255
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
256 Base fcb $3B,$9A,$CA,$00 1,000,000,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
257 fcb $05,$F5,$E1,$00 100,000,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
258 fcb $00,$98,$96,$80 10,000,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
259 fcb $00,$0f,$42,$40 1,000,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
260 fcb $00,$01,$86,$a0 100,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
261 fcb $00,$00,$27,$10 10,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
262 fcb $00,$00,$03,$e8 1,000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
263 fcb $00,$00,$00,$64 100
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
264 fcb $00,$00,$00,$0a 10
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
265 fcb $00,$00,$00,$01 1
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
266
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
267 emod
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
268 eom equ *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
269 end