summaryrefslogtreecommitdiff
path: root/device/lib/stm8/_itoa.lst
diff options
context:
space:
mode:
Diffstat (limited to 'device/lib/stm8/_itoa.lst')
-rw-r--r--device/lib/stm8/_itoa.lst185
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)