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 + -
显示快捷键?