Removed silly lib files
[fw/sdcc] / device / lib / puts.lst
1                               1 ;--------------------------------------------------------
2                               2 ; File Created by SDCC : FreeWare ANSI-C Compiler
3                               3 ; Version 2.1.9Ga Sun Jan 16 17:31:39 2000
4                               4 
5                               5 ;--------------------------------------------------------
6                               6         .module puts
7                               7 ;--------------------------------------------------------
8                               8 ; publics variables in this module
9                               9 ;--------------------------------------------------------
10                              10         .globl _puts
11                              11 ;--------------------------------------------------------
12                              12 ; special function registers
13                              13 ;--------------------------------------------------------
14                              14 ;--------------------------------------------------------
15                              15 ; special function bits 
16                              16 ;--------------------------------------------------------
17                              17 ;--------------------------------------------------------
18                              18 ; internal ram data
19                              19 ;--------------------------------------------------------
20                              20         .area   DSEG    (DATA)
21                              21 ;--------------------------------------------------------
22                              22 ; overlayable items in internal ram 
23                              23 ;--------------------------------------------------------
24                              24         .area   OSEG    (OVR,DATA)
25                              25 ;--------------------------------------------------------
26                              26 ; indirectly addressable internal ram data
27                              27 ;--------------------------------------------------------
28                              28         .area   ISEG    (DATA)
29                              29 ;--------------------------------------------------------
30                              30 ; bit data
31                              31 ;--------------------------------------------------------
32                              32         .area   BSEG    (BIT)
33                              33 ;--------------------------------------------------------
34                              34 ; external ram data
35                              35 ;--------------------------------------------------------
36                              36         .area   XSEG    (XDATA)
37    0000                      37 _puts_s_1_1:
38    0000                      38         .ds     0x0003
39                              39 ;--------------------------------------------------------
40                              40 ; global & static initialisations
41                              41 ;--------------------------------------------------------
42                              42         .area GSINIT (CODE)
43                              43 ;--------------------------------------------------------
44                              44 ; code
45                              45 ;--------------------------------------------------------
46                              46         .area CSEG (CODE)
47                     0000     47         G$puts$0$0 ==.
48                              48 ;       puts.c 27
49                              49 ;       -----------------------------------------
50                              50 ;        function puts
51                              51 ;       -----------------------------------------
52    0000                      52 _puts:
53                     0002     53         ar2 = 0x02
54                     0003     54         ar3 = 0x03
55                     0004     55         ar4 = 0x04
56                     0005     56         ar5 = 0x05
57                     0006     57         ar6 = 0x06
58                     0007     58         ar7 = 0x07
59                     0000     59         ar0 = 0x00
60                     0001     60         ar1 = 0x01
61                              61 ;       puts.c 35
62    0000 C0 F0                62         push    b
63    0002 C0 83                63         push    dph
64    0004 C0 82                64         push    dpl
65    0006 90s00r00             65         mov     dptr,#_puts_s_1_1
66    0009 D0 E0                66         pop     acc
67    000B F0                   67         movx    @dptr,a
68    000C D0 E0                68         pop     acc
69    000E A3                   69         inc     dptr
70    000F F0                   70         movx    @dptr,a
71    0010 D0 E0                71         pop     acc
72    0012 A3                   72         inc     dptr
73    0013 F0                   73         movx    @dptr,a
74                              74 ;       puts.c 30
75    0014 90s00r00             75         mov     dptr,#_puts_s_1_1
76    0017 E0                   76         movx    a,@dptr
77    0018 FA                   77         mov     r2,a
78    0019 A3                   78         inc     dptr
79    001A E0                   79         movx    a,@dptr
80    001B FB                   80         mov     r3,a
81    001C A3                   81         inc     dptr
82    001D E0                   82         movx    a,@dptr
83    001E FC                   83         mov     r4,a
84    001F 7D 00                84         mov     r5,#0x00
85    0021 7E 00                85         mov     r6,#0x00
86    0023                      86 00101$:
87    0023 8A 82                87         mov     dpl,r2
88    0025 8B 83                88         mov     dph,r3
89    0027 8C F0                89         mov     b,r4
90    0029 12s00r00             90         lcall   __gptrget
91    002C FF                   91         mov     r7,a
92    002D 90s00r00             92         mov     dptr,#_puts_s_1_1
93    0030 EA                   93         mov     a,r2
94    0031 F0                   94         movx    @dptr,a
95    0032 A3                   95         inc     dptr
96    0033 EB                   96         mov     a,r3
97    0034 F0                   97         movx    @dptr,a
98    0035 A3                   98         inc     dptr
99    0036 EC                   99         mov     a,r4
100    0037 F0                  100         movx    @dptr,a
101    0038 EF                  101         mov     a,r7
102                             102 ; Peephole 110   removed ljmp by inverse jump logic
103    0039 60 25               103         jz  00103$
104    003B                     104 00108$:
105                             105 ;       puts.c 31
106    003B 0A                  106         inc     r2
107    003C BA 00 01            107         cjne    r2,#0x00,00109$
108    003F 0B                  108         inc     r3
109    0040                     109 00109$:
110    0040 C0 02               110         push    ar2
111    0042 C0 03               111         push    ar3
112    0044 C0 04               112         push    ar4
113    0046 C0 05               113         push    ar5
114    0048 C0 06               114         push    ar6
115    004A 8F 82               115         mov     dpl,r7
116    004C 12s00r00            116         lcall   _putchar
117    004F D0 06               117         pop     ar6
118    0051 D0 05               118         pop     ar5
119    0053 D0 04               119         pop     ar4
120    0055 D0 03               120         pop     ar3
121    0057 D0 02               121         pop     ar2
122                             122 ;       puts.c 32
123    0059 0D                  123         inc     r5
124    005A BD 00 01            124         cjne    r5,#0x00,00110$
125    005D 0E                  125         inc     r6
126    005E                     126 00110$:
127                             127 ; Peephole 132   changed ljmp to sjmp
128    005E 80 C3               128         sjmp 00101$
129    0060                     129 00103$:
130                             130 ;       puts.c 34
131    0060 C0 05               131         push    ar5
132    0062 C0 06               132         push    ar6
133    0064 75 82 0A            133         mov     dpl,#0x0a
134    0067 12s00r00            134         lcall   _putchar
135    006A D0 06               135         pop     ar6
136    006C D0 05               136         pop     ar5
137                             137 ;       puts.c 35
138    006E 0D                  138         inc     r5
139    006F BD 00 01            139         cjne    r5,#0x00,00111$
140    0072 0E                  140         inc     r6
141    0073                     141 00111$:
142    0073 8D 82               142         mov     dpl,r5
143    0075 8E 83               143         mov     dph,r6
144    0077                     144 00104$:
145                     0077    145         C$puts.c$36$1$1 ==.
146                     0077    146         XG$puts$0$0 ==.
147    0077 22                  147         ret
148                             148         .area   CSEG    (CODE)