1 1 ;--------------------------------------------------------
2 2 ; File Created by SDCC : FreeWare ANSI-C Compiler
3 3 ; Version 2.1.9Ga Sun Jan 16 17:31:30 2000
5 5 ;--------------------------------------------------------
7 7 ;--------------------------------------------------------
8 8 ; publics variables in this module
9 9 ;--------------------------------------------------------
10 10 .globl _memcpy_PARM_3
11 11 .globl _memcpy_PARM_2
13 13 ;--------------------------------------------------------
14 14 ; special function registers
15 15 ;--------------------------------------------------------
16 16 ;--------------------------------------------------------
17 17 ; special function bits
18 18 ;--------------------------------------------------------
19 19 ;--------------------------------------------------------
20 20 ; internal ram data
21 21 ;--------------------------------------------------------
23 0000 23 _memcpy_sloc0_1_0:
25 0003 25 _memcpy_sloc1_1_0:
27 27 ;--------------------------------------------------------
28 28 ; overlayable items in internal ram
29 29 ;--------------------------------------------------------
30 30 .area OSEG (OVR,DATA)
31 31 ;--------------------------------------------------------
32 32 ; indirectly addressable internal ram data
33 33 ;--------------------------------------------------------
35 35 ;--------------------------------------------------------
37 37 ;--------------------------------------------------------
39 39 ;--------------------------------------------------------
40 40 ; external ram data
41 41 ;--------------------------------------------------------
43 0000 43 _memcpy_PARM_2:
45 0003 45 _memcpy_PARM_3:
47 0005 47 _memcpy_dst_1_1:
49 49 ;--------------------------------------------------------
50 50 ; global & static initialisations
51 51 ;--------------------------------------------------------
52 52 .area GSINIT (CODE)
53 53 ;--------------------------------------------------------
55 55 ;--------------------------------------------------------
57 0000 57 G$memcpy$0$0 ==.
59 59 ; -----------------------------------------
61 61 ; -----------------------------------------
73 0002 C0 83 73 push dph
74 0004 C0 82 74 push dpl
75 0006 90s00r05 75 mov dptr,#_memcpy_dst_1_1
77 000B F0 77 movx @dptr,a
80 000F F0 80 movx @dptr,a
83 0013 F0 83 movx @dptr,a
85 0014 90s00r05 85 mov dptr,#_memcpy_dst_1_1
86 0017 E0 86 movx a,@dptr
87 0018 F5*03 87 mov _memcpy_sloc1_1_0,a
89 001B E0 89 movx a,@dptr
90 001C F5*04 90 mov (_memcpy_sloc1_1_0 + 1),a
92 001F E0 92 movx a,@dptr
93 0020 F5*05 93 mov (_memcpy_sloc1_1_0 + 2),a
95 0022 90s00r00 95 mov dptr,#_memcpy_PARM_2
96 0025 E0 96 movx a,@dptr
97 0026 F5*00 97 mov _memcpy_sloc0_1_0,a
99 0029 E0 99 movx a,@dptr
100 002A F5*01 100 mov (_memcpy_sloc0_1_0 + 1),a
102 002D E0 102 movx a,@dptr
103 002E F5*02 103 mov (_memcpy_sloc0_1_0 + 2),a
105 0030 A8*03 105 mov r0,_memcpy_sloc1_1_0
106 0032 A9*04 106 mov r1,(_memcpy_sloc1_1_0 + 1)
107 0034 AD*05 107 mov r5,(_memcpy_sloc1_1_0 + 2)
108 0036 90s00r03 108 mov dptr,#_memcpy_PARM_3
109 0039 E0 109 movx a,@dptr
112 003C E0 112 movx a,@dptr
115 003E 8B 02 115 mov ar2,r3
116 0040 8C 06 116 mov ar6,r4
118 0043 BB FF 01 118 cjne r3,#0xff,00108$
123 123 ; Peephole 110 removed ljmp by inverse jump logic
124 0049 60 33 124 jz 00103$
127 004B C0 03 127 push ar3
128 004D C0 04 128 push ar4
129 004F 88 02 129 mov ar2,r0
130 0051 89 06 130 mov ar6,r1
131 0053 8D 07 131 mov ar7,r5
133 0056 B8 00 01 133 cjne r0,#0x00,00110$
136 005A 85*00 82 136 mov dpl,_memcpy_sloc0_1_0
137 005D 85*01 83 137 mov dph,(_memcpy_sloc0_1_0 + 1)
138 0060 85*02 F0 138 mov b,(_memcpy_sloc0_1_0 + 2)
139 0063 05*00 139 inc _memcpy_sloc0_1_0
141 0066 B5*00 02 141 cjne a,_memcpy_sloc0_1_0,00111$
142 0069 05*01 142 inc (_memcpy_sloc0_1_0 + 1)
144 006B 12s00r00 144 lcall __gptrget
145 145 ; Peephole 191 removed redundant mov
147 006F 8A 82 147 mov dpl,r2
148 0071 8E 83 148 mov dph,r6
149 0073 8F F0 149 mov b,r7
150 0075 12s00r00 150 lcall __gptrput
151 0078 D0 04 151 pop ar4
152 007A D0 03 152 pop ar3
153 153 ; Peephole 132 changed ljmp to sjmp
154 007C 80 C0 154 sjmp 00101$
157 007E 85*03 82 157 mov dpl,_memcpy_sloc1_1_0
158 0081 85*04 83 158 mov dph,(_memcpy_sloc1_1_0 + 1)
159 0084 85*05 F0 159 mov b,(_memcpy_sloc1_1_0 + 2)
161 0087 161 C$_memcpy.c$45$1$1 ==.
162 0087 162 XG$memcpy$0$0 ==.
164 164 .area CSEG (CODE)