diff options
Diffstat (limited to 'device/lib/stm8/_itoa.lst')
| -rw-r--r-- | device/lib/stm8/_itoa.lst | 185 |
1 files changed, 0 insertions, 185 deletions
diff --git a/device/lib/stm8/_itoa.lst b/device/lib/stm8/_itoa.lst deleted file mode 100644 index 20962c6..0000000 --- a/device/lib/stm8/_itoa.lst +++ /dev/null @@ -1,185 +0,0 @@ - 1 ;-------------------------------------------------------- - 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 3.9.3 #11345 (Linux) - 4 ;-------------------------------------------------------- - 5 .module _itoa - 6 .optsdcc -mstm8 - 7 - 8 ;-------------------------------------------------------- - 9 ; Public variables in this module - 10 ;-------------------------------------------------------- - 11 .globl __itoa - 12 .globl __uitoa - 13 ;-------------------------------------------------------- - 14 ; ram data - 15 ;-------------------------------------------------------- - 16 .area DATA - 17 ;-------------------------------------------------------- - 18 ; ram data - 19 ;-------------------------------------------------------- - 20 .area INITIALIZED - 21 ;-------------------------------------------------------- - 22 ; absolute external ram data - 23 ;-------------------------------------------------------- - 24 .area DABS (ABS) - 25 - 26 ; default segment ordering for linker - 27 .area HOME - 28 .area GSINIT - 29 .area GSFINAL - 30 .area CONST - 31 .area INITIALIZER - 32 .area CODE - 33 - 34 ;-------------------------------------------------------- - 35 ; global & static initialisations - 36 ;-------------------------------------------------------- - 37 .area HOME - 38 .area GSINIT - 39 .area GSFINAL - 40 .area GSINIT - 41 ;-------------------------------------------------------- - 42 ; Home - 43 ;-------------------------------------------------------- - 44 .area HOME - 45 .area HOME - 46 ;-------------------------------------------------------- - 47 ; code - 48 ;-------------------------------------------------------- - 49 .area CODE - 50 ; ../_itoa.c: 40: void _uitoa(unsigned int value, char* string, unsigned char radix) - 51 ; ----------------------------------------- - 52 ; function _uitoa - 53 ; ----------------------------------------- - 000000 54 __uitoa: - 000000 52 05 [ 2] 55 sub sp, #5 - 56 ; ../_itoa.c: 45: do { - 000002 0F 05 [ 1] 57 clr (0x05, sp) - 000004 58 00103$: - 59 ; ../_itoa.c: 46: string[index] = '0' + (value % radix); - 000004 7B 05 [ 1] 60 ld a, (0x05, sp) - 000006 97 [ 1] 61 ld xl, a - 000007 49 [ 1] 62 rlc a - 000008 4F [ 1] 63 clr a - 000009 A2 00 [ 1] 64 sbc a, #0x00 - 00000B 95 [ 1] 65 ld xh, a - 00000C 72 FB 0A [ 2] 66 addw x, (0x0a, sp) - 00000F 1F 01 [ 2] 67 ldw (0x01, sp), x - 000011 7B 0C [ 1] 68 ld a, (0x0c, sp) - 000013 6B 04 [ 1] 69 ld (0x04, sp), a - 000015 0F 03 [ 1] 70 clr (0x03, sp) - 000017 1E 08 [ 2] 71 ldw x, (0x08, sp) - 000019 16 03 [ 2] 72 ldw y, (0x03, sp) - 00001B 65 [ 2] 73 divw x, y - 00001C 90 9F [ 1] 74 ld a, yl - 00001E AB 30 [ 1] 75 add a, #0x30 - 000020 1E 01 [ 2] 76 ldw x, (0x01, sp) - 000022 F7 [ 1] 77 ld (x), a - 78 ; ../_itoa.c: 47: if (string[index] > '9') - 000023 1E 01 [ 2] 79 ldw x, (0x01, sp) - 000025 F6 [ 1] 80 ld a, (x) - 000026 A1 39 [ 1] 81 cp a, #0x39 - 000028 23 05 [ 2] 82 jrule 00102$ - 83 ; ../_itoa.c: 48: string[index] += 'A' - '9' - 1; - 00002A AB 07 [ 1] 84 add a, #0x07 - 00002C 1E 01 [ 2] 85 ldw x, (0x01, sp) - 00002E F7 [ 1] 86 ld (x), a - 00002F 87 00102$: - 88 ; ../_itoa.c: 49: value /= radix; - 00002F 1E 08 [ 2] 89 ldw x, (0x08, sp) - 000031 16 03 [ 2] 90 ldw y, (0x03, sp) - 000033 65 [ 2] 91 divw x, y - 000034 1F 08 [ 2] 92 ldw (0x08, sp), x - 93 ; ../_itoa.c: 50: ++index; - 000036 0C 05 [ 1] 94 inc (0x05, sp) - 95 ; ../_itoa.c: 51: } while (value != 0); - 000038 1E 08 [ 2] 96 ldw x, (0x08, sp) - 00003A 26 C8 [ 1] 97 jrne 00103$ - 98 ; ../_itoa.c: 54: string[index--] = '\0'; - 00003C 7B 05 [ 1] 99 ld a, (0x05, sp) - 00003E 4A [ 1] 100 dec a - 00003F 6B 04 [ 1] 101 ld (0x04, sp), a - 000041 7B 05 [ 1] 102 ld a, (0x05, sp) - 000043 97 [ 1] 103 ld xl, a - 000044 49 [ 1] 104 rlc a - 000045 4F [ 1] 105 clr a - 000046 A2 00 [ 1] 106 sbc a, #0x00 - 000048 95 [ 1] 107 ld xh, a - 000049 72 FB 0A [ 2] 108 addw x, (0x0a, sp) - 00004C 7F [ 1] 109 clr (x) - 110 ; ../_itoa.c: 57: while (index > i) { - 00004D 0F 05 [ 1] 111 clr (0x05, sp) - 00004F 112 00106$: - 00004F 7B 04 [ 1] 113 ld a, (0x04, sp) - 000051 11 05 [ 1] 114 cp a, (0x05, sp) - 000053 2D 27 [ 1] 115 jrsle 00109$ - 116 ; ../_itoa.c: 58: char tmp = string[i]; - 000055 7B 05 [ 1] 117 ld a, (0x05, sp) - 000057 97 [ 1] 118 ld xl, a - 000058 49 [ 1] 119 rlc a - 000059 4F [ 1] 120 clr a - 00005A A2 00 [ 1] 121 sbc a, #0x00 - 00005C 95 [ 1] 122 ld xh, a - 00005D 72 FB 0A [ 2] 123 addw x, (0x0a, sp) - 000060 51 [ 1] 124 exgw x, y - 000061 90 F6 [ 1] 125 ld a, (y) - 000063 6B 03 [ 1] 126 ld (0x03, sp), a - 127 ; ../_itoa.c: 59: string[i] = string[index]; - 000065 7B 04 [ 1] 128 ld a, (0x04, sp) - 000067 97 [ 1] 129 ld xl, a - 000068 49 [ 1] 130 rlc a - 000069 4F [ 1] 131 clr a - 00006A A2 00 [ 1] 132 sbc a, #0x00 - 00006C 95 [ 1] 133 ld xh, a - 00006D 72 FB 0A [ 2] 134 addw x, (0x0a, sp) - 000070 F6 [ 1] 135 ld a, (x) - 000071 90 F7 [ 1] 136 ld (y), a - 137 ; ../_itoa.c: 60: string[index] = tmp; - 000073 7B 03 [ 1] 138 ld a, (0x03, sp) - 000075 F7 [ 1] 139 ld (x), a - 140 ; ../_itoa.c: 61: ++i; - 000076 0C 05 [ 1] 141 inc (0x05, sp) - 142 ; ../_itoa.c: 62: --index; - 000078 0A 04 [ 1] 143 dec (0x04, sp) - 00007A 20 D3 [ 2] 144 jra 00106$ - 00007C 145 00109$: - 146 ; ../_itoa.c: 64: } - 00007C 5B 05 [ 2] 147 addw sp, #5 - 00007E 81 [ 4] 148 ret - 149 ; ../_itoa.c: 66: void _itoa(int value, char* string, unsigned char radix) - 150 ; ----------------------------------------- - 151 ; function _itoa - 152 ; ----------------------------------------- - 00007F 153 __itoa: - 154 ; ../_itoa.c: 68: if (value < 0 && radix == 10) { - 00007F 0D 03 [ 1] 155 tnz (0x03, sp) - 000081 2A 13 [ 1] 156 jrpl 00102$ - 000083 7B 07 [ 1] 157 ld a, (0x07, sp) - 000085 A1 0A [ 1] 158 cp a, #0x0a - 000087 26 0D [ 1] 159 jrne 00102$ - 160 ; ../_itoa.c: 69: *string++ = '-'; - 000089 1E 05 [ 2] 161 ldw x, (0x05, sp) - 00008B A6 2D [ 1] 162 ld a, #0x2d - 00008D F7 [ 1] 163 ld (x), a - 00008E 5C [ 1] 164 incw x - 00008F 1F 05 [ 2] 165 ldw (0x05, sp), x - 166 ; ../_itoa.c: 70: value = -value; - 000091 1E 03 [ 2] 167 ldw x, (0x03, sp) - 000093 50 [ 2] 168 negw x - 000094 1F 03 [ 2] 169 ldw (0x03, sp), x - 000096 170 00102$: - 171 ; ../_itoa.c: 72: _uitoa(value, string, radix); - 000096 7B 07 [ 1] 172 ld a, (0x07, sp) - 000098 88 [ 1] 173 push a - 000099 1E 06 [ 2] 174 ldw x, (0x06, sp) - 00009B 89 [ 2] 175 pushw x - 00009C 1E 06 [ 2] 176 ldw x, (0x06, sp) - 00009E 89 [ 2] 177 pushw x - 00009F CDr00r00 [ 4] 178 call __uitoa - 0000A2 5B 05 [ 2] 179 addw sp, #5 - 180 ; ../_itoa.c: 73: } - 0000A4 81 [ 4] 181 ret - 182 .area CODE - 183 .area CONST - 184 .area INITIALIZER - 185 .area CABS (ABS) |
