1 1 ;--------------------------------------------------------
2 2 ; File Created by SDCC : FreeWare ANSI-C Compiler
3 3 ; Version 2.1.9Ga Sun Jan 16 17:31:23 2000
5 5 ;--------------------------------------------------------
7 7 ;--------------------------------------------------------
8 8 ; publics variables in this module
9 9 ;--------------------------------------------------------
10 10 .globl __divuint_PARM_2
12 12 ;--------------------------------------------------------
13 13 ; special function registers
14 14 ;--------------------------------------------------------
15 15 ;--------------------------------------------------------
16 16 ; special function bits
17 17 ;--------------------------------------------------------
18 18 ;--------------------------------------------------------
19 19 ; internal ram data
20 20 ;--------------------------------------------------------
22 22 ;--------------------------------------------------------
23 23 ; overlayable items in internal ram
24 24 ;--------------------------------------------------------
25 25 .area OSEG (OVR,DATA)
26 26 ;--------------------------------------------------------
27 27 ; indirectly addressable internal ram data
28 28 ;--------------------------------------------------------
30 30 ;--------------------------------------------------------
32 32 ;--------------------------------------------------------
34 0000 34 __divuint_c_1_1:
36 36 ;--------------------------------------------------------
37 37 ; external ram data
38 38 ;--------------------------------------------------------
40 0000 40 __divuint_PARM_2:
42 0002 42 __divuint_a_1_1:
44 0004 44 __divuint_reste_1_1:
46 0006 46 __divuint_count_1_1:
48 48 ;--------------------------------------------------------
49 49 ; global & static initialisations
50 50 ;--------------------------------------------------------
51 51 .area GSINIT (CODE)
52 52 ;--------------------------------------------------------
54 54 ;--------------------------------------------------------
56 0000 56 G$_divuint$0$0 ==.
58 58 ; -----------------------------------------
59 59 ; function _divuint
60 60 ; -----------------------------------------
71 0000 C0 83 71 push dph
72 0002 C0 82 72 push dpl
73 0004 90s00r02 73 mov dptr,#__divuint_a_1_1
75 0009 F0 75 movx @dptr,a
78 000D F0 78 movx @dptr,a
80 000E 90s00r04 80 mov dptr,#__divuint_reste_1_1
83 0013 F0 83 movx @dptr,a
84 0014 12s00r00 84 lcall __decdptr
85 0017 F0 85 movx @dptr,a
87 0018 90s00r06 87 mov dptr,#__divuint_count_1_1
88 001B 74 10 88 mov a,#0x10
89 001D F0 89 movx @dptr,a
91 001E 90s00r00 91 mov dptr,#__divuint_PARM_2
92 0021 E0 92 movx a,@dptr
95 0024 E0 95 movx a,@dptr
99 0026 90s00r02 99 mov dptr,#__divuint_a_1_1
100 0029 E0 100 movx a,@dptr
103 002C E0 103 movx a,@dptr
104 104 ; Peephole 105 removed redundant mov
107 002F 54 01 107 anl a,#0x01
112 0034 25 E0 112 add a,acc
116 0039 90s00r02 116 mov dptr,#__divuint_a_1_1
118 003D F0 118 movx @dptr,a
121 0040 F0 121 movx @dptr,a
123 0041 90s00r04 123 mov dptr,#__divuint_reste_1_1
124 0044 E0 124 movx a,@dptr
127 0047 E0 127 movx a,@dptr
128 128 ; Peephole 105 removed redundant mov
131 004A 25 E0 131 add a,acc
135 004F 90s00r04 135 mov dptr,#__divuint_reste_1_1
137 0053 F0 137 movx @dptr,a
140 0056 F0 140 movx @dptr,a
143 143 ; Peephole 110 removed ljmp by inverse jump logic
144 0058 60 0A 144 jz 00102$
147 005A 90s00r04 147 mov dptr,#__divuint_reste_1_1
148 005D 74 01 148 mov a,#0x01
150 0060 F0 150 movx @dptr,a
153 0063 F0 153 movx @dptr,a
156 0064 90s00r04 156 mov dptr,#__divuint_reste_1_1
157 0067 E0 157 movx a,@dptr
160 006A E0 160 movx a,@dptr
164 006E 9A 164 subb a,r2
166 0070 9B 166 subb a,r3
167 167 ; Peephole 132 changed ljmp to sjmp
168 168 ; Peephole 160 removed sjmp by inverse jump logic
169 0071 40 15 169 jc 00106$
172 0073 90s00r04 172 mov dptr,#__divuint_reste_1_1
175 0078 9A 175 subb a,r2
176 0079 F0 176 movx @dptr,a
178 007B 9B 178 subb a,r3
180 007D F0 180 movx @dptr,a
182 007E 90s00r02 182 mov dptr,#__divuint_a_1_1
183 0081 74 01 183 mov a,#0x01
185 0084 F0 185 movx @dptr,a
188 0087 F0 188 movx @dptr,a
191 0088 90s00r06 191 mov dptr,#__divuint_count_1_1
192 008B E0 192 movx a,@dptr
193 008C 24 FF 193 add a,#0xff
194 194 ; Peephole 100 removed redundant mov
196 008F 90s00r06 196 mov dptr,#__divuint_count_1_1
197 0092 F0 197 movx @dptr,a
199 0094 60 03 199 jz 00116$
200 0096 02s00r26 200 ljmp 00105$
203 0099 90s00r02 203 mov dptr,#__divuint_a_1_1
204 009C E0 204 movx a,@dptr
207 009F E0 207 movx a,@dptr
209 00A1 8A 82 209 mov dpl,r2
210 00A3 8B 83 210 mov dph,r3
212 00A5 212 C$_divuint.c$50$1$1 ==.
213 00A5 213 XG$_divuint$0$0 ==.
215 215 .area CSEG (CODE)