webport.lst
来自「针对AVR单片机开发的嵌入式操作系统」· LST 代码 · 共 629 行 · 第 1/2 页
LST
629 行
GAS LISTING c:\Temp/ccopaaaa.s page 1
1 .file "webport.c"
2 .arch atmega128
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
10 .data
11 .LC0:
12 0000 722B 6200 .string "r+b"
13 .text
14 .global Service
15 .type Service, @function
16 Service:
17 /* prologue: frame size=4 */
18 0000 EF92 push r14
19 0002 FF92 push r15
20 0004 0F93 push r16
21 0006 1F93 push r17
22 0008 CF93 push r28
23 000a DF93 push r29
24 000c CDB7 in r28,__SP_L__
25 000e DEB7 in r29,__SP_H__
26 0010 2497 sbiw r28,4
27 0012 0FB6 in __tmp_reg__,__SREG__
28 0014 F894 cli
29 0016 DEBF out __SP_H__,r29
30 0018 0FBE out __SREG__,__tmp_reg__
31 001a CDBF out __SP_L__,r28
32 /* prologue end (size=14) */
33 001c 88E8 ldi r24,lo8(5000)
34 001e 93E1 ldi r25,hi8(5000)
35 0020 A0E0 ldi r26,hlo8(5000)
36 0022 B0E0 ldi r27,hhi8(5000)
37 0024 8983 std Y+1,r24
38 0026 9A83 std Y+2,r25
39 0028 AB83 std Y+3,r26
40 002a BC83 std Y+4,r27
41 002c 0E94 0000 call NutTcpCreateSocket
42 0030 7C01 movw r14,r24
43 0032 0097 sbiw r24,0
44 0034 61F1 breq .L1
45 0036 24E0 ldi r18,lo8(4)
46 0038 30E0 ldi r19,hi8(4)
47 003a AE01 movw r20,r28
48 003c 4F5F subi r20,lo8(-(1))
49 003e 5F4F sbci r21,hi8(-(1))
50 0040 66E0 ldi r22,lo8(4102)
51 0042 70E1 ldi r23,hi8(4102)
52 0044 0E94 0000 call NutTcpSetSockOpt
53 0048 60E5 ldi r22,lo8(80)
54 004a 70E0 ldi r23,hi8(80)
55 004c C701 movw r24,r14
56 004e 0E94 0000 call NutTcpAccept
57 0052 892B or r24,r25
GAS LISTING c:\Temp/ccopaaaa.s page 2
58 0054 C9F4 brne .L3
59 0056 06C0 rjmp .L4
60 .L6:
61 0058 68EC ldi r22,lo8(200)
62 005a 70E0 ldi r23,hi8(200)
63 005c 80E0 ldi r24,hlo8(200)
64 005e 90E0 ldi r25,hhi8(200)
65 0060 0E94 0000 call NutSleep
66 .L4:
67 0064 0E94 0000 call NutHeapAvailable
68 0068 8050 subi r24,lo8(4096)
69 006a 9041 sbci r25,hi8(4096)
70 006c A8F3 brlo .L6
71 006e 60E0 ldi r22,lo8(.LC0)
72 0070 70E0 ldi r23,hi8(.LC0)
73 0072 C701 movw r24,r14
74 0074 0E94 0000 call _fdopen
75 0078 8C01 movw r16,r24
76 007a 0097 sbiw r24,0
77 007c 29F0 breq .L3
78 007e 0E94 0000 call NutHttpProcessRequest
79 0082 C801 movw r24,r16
80 0084 0E94 0000 call fclose
81 .L3:
82 0088 C701 movw r24,r14
83 008a 0E94 0000 call NutTcpCloseSocket
84 .L1:
85 /* epilogue: frame size=4 */
86 008e 2496 adiw r28,4
87 0090 0FB6 in __tmp_reg__,__SREG__
88 0092 F894 cli
89 0094 DEBF out __SP_H__,r29
90 0096 0FBE out __SREG__,__tmp_reg__
91 0098 CDBF out __SP_L__,r28
92 009a DF91 pop r29
93 009c CF91 pop r28
94 009e 1F91 pop r17
95 00a0 0F91 pop r16
96 00a2 FF90 pop r15
97 00a4 EF90 pop r14
98 00a6 0895 ret
99 /* epilogue end (size=13) */
100 /* function Service size 85 (58) */
101 .size Service, .-Service
102 .global ServiceThread
103 .type ServiceThread, @function
104 ServiceThread:
105 /* prologue: frame size=0 */
106 /* prologue end (size=0) */
107 .L9:
108 00a8 0E94 0000 call Service
109 00ac FDCF rjmp .L9
110 /* epilogue: frame size=0 */
111 /* epilogue: noreturn */
112 /* epilogue end (size=0) */
113 /* function ServiceThread size 3 (3) */
114 .size ServiceThread, .-ServiceThread
GAS LISTING c:\Temp/ccopaaaa.s page 3
115 .data
116 .LC1:
117 0004 7700 .string "w"
118 .LC2:
119 0006 7561 7274 .string "uart0"
119 3000
120 .LC3:
121 000c 0A0A 4E75 .string "\n\nNut/OS %s Webport Daemon\n"
121 742F 4F53
121 2025 7320
121 5765 6270
121 6F72 7420
122 .LC4:
123 0028 5265 6769 .string "Registering NIC failed"
123 7374 6572
123 696E 6720
123 4E49 4320
123 6661 696C
124 .LC5:
125 003f 0A54 7279 .string "\nTry stored configuration..."
125 2073 746F
125 7265 6420
125 636F 6E66
125 6967 7572
126 .LC6:
127 005c 6574 6830 .string "eth0"
127 00
128 .LC7:
129 0061 00 .byte 0
130 0062 06 .byte 6
131 0063 98 .byte -104
132 0064 00 .byte 0
133 0065 10 .byte 16
134 0066 00 .byte 0
135 .LC8:
136 0067 6661 696C .string "failed\nTry DHCP..."
136 6564 0A54
136 7279 2044
136 4843 502E
136 2E2E 00
137 .LC9:
138 007a 6661 696C .string "failed\nUse fixed configuration..."
138 6564 0A55
138 7365 2066
138 6978 6564
138 2063 6F6E
139 .LC10:
140 009c 3235 352E .string "255.255.255.0"
140 3235 352E
140 3235 352E
140 3000
141 .LC11:
142 00aa 3139 322E .string "192.168.192.100"
142 3136 382E
142 3139 322E
142 3130 3000
143 .LC12:
GAS LISTING c:\Temp/ccopaaaa.s page 4
144 00ba 6661 696C .string "failed\nWhere is the NIC?"
144 6564 0A57
144 6865 7265
144 2069 7320
144 7468 6520
145 .LC13:
146 00d3 4F4B 00 .string "OK"
147 .LC14:
148 00d6 4950 2061 .string "IP addr: %s\n"
148 6464 723A
148 2025 730A
148 00
149 .LC15:
150 00e3 4950 206D .string "IP mask: %s\n"
150 6173 6B3A
150 2025 730A
150 00
151 .LC16:
152 00f0 4950 2067 .string "IP gate: %s\n"
152 6174 653A
152 2025 730A
152 00
153 .LC17:
154 00fd 6363 706F .string "ccports.cgi"
154 7274 732E
154 6367 6900
155 .LC18:
156 0109 6373 706F .string "csports.cgi"
156 7274 732E
156 6367 6900
157 .LC19:
158 0115 7265 6C61 .string "relay.cgi"
158 792E 6367
158 6900
159 .LC20:
160 011f 6F70 746F .string "opto.cgi"
160 2E63 6769
160 00
161 .LC21:
162 0128 6368 326C .string "ch2led.cgi"
162 6564 2E63
162 6769 00
163 .LC22:
164 0133 6368 3273 .string "ch2switch.cgi"
164 7769 7463
164 682E 6367
164 6900
165 .LC23:
166 0141 6874 7470 .string "httpd0"
166 6430 00
167 .text
168 .global NutAppMain
169 .type NutAppMain, @function
170 NutAppMain:
171 /* prologue: frame size=10 */
172 00ae CF92 push r12
173 00b0 DF92 push r13
GAS LISTING c:\Temp/ccopaaaa.s page 5
174 00b2 EF92 push r14
175 00b4 FF92 push r15
176 00b6 0F93 push r16
177 00b8 1F93 push r17
178 00ba CF93 push r28
179 00bc DF93 push r29
180 00be CDB7 in r28,__SP_L__
181 00c0 DEB7 in r29,__SP_H__
182 00c2 2A97 sbiw r28,10
183 00c4 0FB6 in __tmp_reg__,__SREG__
184 00c6 F894 cli
185 00c8 DEBF out __SP_H__,r29
186 00ca 0FBE out __SREG__,__tmp_reg__
187 00cc CDBF out __SP_L__,r28
188 /* prologue end (size=16) */
189 00ce 80E0 ldi r24,lo8(115200)
190 00d0 92EC ldi r25,hi8(115200)
191 00d2 A1E0 ldi r26,hlo8(115200)
192 00d4 B0E0 ldi r27,hhi8(115200)
193 00d6 8F83 std Y+7,r24
194 00d8 9887 std Y+8,r25
195 00da A987 std Y+9,r26
196 00dc BA87 std Y+10,r27
197 00de 40E0 ldi r20,lo8(0)
198 00e0 60E0 ldi r22,lo8(0)
199 00e2 70E0 ldi r23,hi8(0)
200 00e4 80E0 ldi r24,lo8(devDebug0)
201 00e6 90E0 ldi r25,hi8(devDebug0)
202 00e8 0E94 0000 call NutRegisterDevice
203 00ec 4091 0000 lds r20,__iob+2
204 00f0 5091 0000 lds r21,(__iob+2)+1
205 00f4 60E0 ldi r22,lo8(.LC1)
206 00f6 70E0 ldi r23,hi8(.LC1)
207 00f8 80E0 ldi r24,lo8(.LC2)
208 00fa 90E0 ldi r25,hi8(.LC2)
209 00fc 0E94 0000 call freopen
210 0100 8091 0000 lds r24,__iob+2
211 0104 9091 0000 lds r25,(__iob+2)+1
212 0108 0E94 0000 call _fileno
213 010c AE01 movw r20,r28
214 010e 495F subi r20,lo8(-(7))
215 0110 5F4F sbci r21,hi8(-(7))
216 0112 61E0 ldi r22,lo8(257)
217 0114 71E0 ldi r23,hi8(257)
218 0116 0E94 0000 call _ioctl
219 011a 0E94 0000 call NutVersionString
220 011e 9F93 push r25
221 0120 8F93 push r24
222 0122 80E0 ldi r24,lo8(.LC3)
223 0124 90E0 ldi r25,hi8(.LC3)
224 0126 9F93 push r25
225 0128 8F93 push r24
226 012a 0E94 0000 call printf
227 012e 60ED ldi r22,lo8(2000)
228 0130 77E0 ldi r23,hi8(2000)
229 0132 80E0 ldi r24,hlo8(2000)
230 0134 90E0 ldi r25,hhi8(2000)
GAS LISTING c:\Temp/ccopaaaa.s page 6
231 0136 0E94 0000 call NutSleep
232 013a 45E0 ldi r20,lo8(5)
233 013c 60E0 ldi r22,lo8(-32000)
234 013e 73E8 ldi r23,hi8(-32000)
235 0140 80E0 ldi r24,lo8(devSmsc111)
236 0142 90E0 ldi r25,hi8(devSmsc111)
237 0144 0E94 0000 call NutRegisterDevice
238 0148 0F90 pop __tmp_reg__
239 014a 0F90 pop __tmp_reg__
240 014c 0F90 pop __tmp_reg__
241 014e 0F90 pop __tmp_reg__
242 0150 892B or r24,r25
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?