⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bin.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 251              		GAS LISTING /tmp/ccKe3Yhi.s 			page 7  56:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf("\n-------------------------------\n");
 252              		.loc 1 56 0 253 0134 0000043C 		lui	$4,%hi($LC0) 254              		.loc 1 55 0 255 0138 E8FFBD27 		addiu	$sp,$sp,-24 256              	$LCFI9: 257              		.loc 1 56 0 258 013c 00008424 		addiu	$4,$4,%lo($LC0) 259              		.loc 1 55 0 260 0140 1400BFAF 		sw	$31,20($sp) 261              	$LCFI10: 262              		.loc 1 55 0 263              	$LCFI11: 264              		.loc 1 56 0 265 0144 0000000C 		jal	printf 266 0148 1000B0AF 		sw	$16,16($sp) 267              	  57:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf("Record Info:\n");
 268              		.loc 1 57 0 269 014c 0000043C 		lui	$4,%hi($LC5) 270 0150 00008424 		addiu	$4,$4,%lo($LC5)  58:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf("  Address: 0x%X\n", recordInfo.address);
 271              		.loc 1 58 0 272              		.loc 1 57 0 273 0154 0000000C 		jal	printf 274 0158 0000103C 		lui	$16,%hi(recordInfo) 275              	 276              		.loc 1 58 0 277 015c 0000058E 		lw	$5,%lo(recordInfo)($16) 278 0160 0000043C 		lui	$4,%hi($LC6)  59:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf("   Length: %d bytes\n", recordInfo.length);
 279              		.loc 1 59 0 280 0164 00001026 		addiu	$16,$16,%lo(recordInfo) 281              		.loc 1 58 0 282 0168 0000000C 		jal	printf 283 016c 00008424 		addiu	$4,$4,%lo($LC6) 284              	 285              		.loc 1 59 0 286 0170 0400058E 		lw	$5,4($16) 287 0174 0000043C 		lui	$4,%hi($LC7) 288 0178 0000000C 		jal	printf 289 017c 00008424 		addiu	$4,$4,%lo($LC7) 290              	  60:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf(" Checksum: %X\n", recordInfo.checksum);
 291              		.loc 1 60 0 292 0180 0800058E 		lw	$5,8($16) 293 0184 0000043C 		lui	$4,%hi($LC8) 294 0188 0000000C 		jal	printf 295 018c 00008424 		addiu	$4,$4,%lo($LC8) 296              	  61:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	printf("-------------------------------\n");
 297              		.loc 1 61 0 298 0190 0000043C 		lui	$4,%hi($LC4) 299 0194 1400BF8F 		lw	$31,20($sp) 300 0198 1000B08F 		lw	$16,16($sp) 301 019c 00008424 		addiu	$4,$4,%lo($LC4) 302 01a0 00000008 		j	printfGAS LISTING /tmp/ccKe3Yhi.s 			page 8 303 01a4 1800BD27 		addiu	$sp,$sp,24 304              	 305              		.set	macro 306              		.set	reorder 307              	$LFE5: 308              		.end	displayRecordInfo 309              		.align	2 310              		.globl	readImageInfo 311              		.ent	readImageInfo 312              		.type	readImageInfo, @function 313              	readImageInfo: 314              	$LFB6:  62:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** }
  63:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
  64:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** int readImageInfo()
  65:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** {
 315              		.loc 1 65 0 316              		.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0 317              		.mask	0x00000000,0 318              		.fmask	0x00000000,0 319              		.set	noreorder 320              		.set	nomacro 321              		  66:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	return binRead((char*)&imageInfo, sizeof(BinImageInfo));
 322              		.loc 1 66 0 323 01a8 0000043C 		lui	$4,%hi(imageInfo) 324 01ac 00008424 		addiu	$4,$4,%lo(imageInfo) 325 01b0 00000008 		j	binRead 326 01b4 08000524 		li	$5,8			# 0x8 327              	 328              		.set	macro 329              		.set	reorder 330              	$LFE6: 331              		.end	readImageInfo 332              		.section	.rodata.str1.4 333 00c7 00       		.align	2 334              	$LC9: 335 00c8 0A       		.ascii	"\n" 336 00c9 4572726F 		.ascii	"Error:  BIN checksum error!\n\000" 336      723A2020  336      42494E20  336      63686563  336      6B73756D  337              		.text 338              		.align	2 339              		.globl	readRecord 340              		.ent	readRecord 341              		.type	readRecord, @function 342              	readRecord: 343              	$LFB7:  67:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** }
  68:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
  69:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** int readRecord(void** entryPoint)
  70:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** {
 344              		.loc 1 70 0 345              		.frame	$sp,40,$31		# vars= 0, regs= 5/0, args= 16, gp= 0 346              		.mask	0x800f0000,-8GAS LISTING /tmp/ccKe3Yhi.s 			page 9 347              		.fmask	0x00000000,0 348              		.set	noreorder 349              		.set	nomacro 350              		 351 01b8 D8FFBD27 		addiu	$sp,$sp,-40 352              	$LCFI12: 353 01bc 1400B1AF 		sw	$17,20($sp) 354              	$LCFI13:  71:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	char* address;
  72:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	int bytes, i, checksum;
  73:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
  74:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	checksum = 0;
  75:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	if(bytes = binRead((char*)&recordInfo, sizeof(BinRecordInfo)))
 355              		.loc 1 75 0 356 01c0 0000113C 		lui	$17,%hi(recordInfo) 357              		.loc 1 70 0 358 01c4 1C00B3AF 		sw	$19,28($sp) 359              	$LCFI14: 360              		.loc 1 75 0 361 01c8 0C000524 		li	$5,12			# 0xc 362              		.loc 1 70 0 363 01cc 21988000 		move	$19,$4 364              		.loc 1 75 0 365 01d0 00002426 		addiu	$4,$17,%lo(recordInfo) 366              		.loc 1 70 0 367 01d4 1800B2AF 		sw	$18,24($sp) 368              	$LCFI15: 369 01d8 2000BFAF 		sw	$31,32($sp) 370              	$LCFI16: 371 01dc 1000B0AF 		sw	$16,16($sp) 372              	$LCFI17: 373              		.loc 1 74 0 374              		.loc 1 75 0 375 01e0 0000000C 		jal	binRead 376 01e4 21900000 		move	$18,$0 377              	  76:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	{	
  77:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		if(recordInfo.address == 0)
  78:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		{
  79:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			*entryPoint = (void*) recordInfo.length;
  80:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			return 0;
  81:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		}
  82:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		else
  83:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		{
  84:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			address = (char*) recordInfo.address;
  85:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				
  86:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			if(bytes = binRead(address, recordInfo.length))
  87:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			{
  88:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				for(i = 0; i < bytes; ++i)
  89:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				{
  90:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 					checksum += address[i] & 0x00FF;
  91:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				}
  92:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				
  93:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				if(checksum != recordInfo.checksum)
  94:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				{
  95:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 					printf("\nError:  BIN checksum error!\n");
  96:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 					return 0;
GAS LISTING /tmp/ccKe3Yhi.s 			page 10  97:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				}
  98:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
  99:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 				return 1;
 100:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 			}
 101:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		}		
 102:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	}
 103:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
 104:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	return 0;
 378              		.loc 1 104 0 379              		.loc 1 75 0 380 01e8 23004010 		beq	$2,$0,$L11 381 01ec 21100000 		move	$2,$0 382              	 383              		.loc 1 77 0 384 01f0 0000308E 		lw	$16,%lo(recordInfo)($17) 385              		.loc 1 79 0 386              		.loc 1 77 0 387 01f4 0B000016 		bne	$16,$0,$L13 388 01f8 00002226 		addiu	$2,$17,%lo(recordInfo) 389              	 390              		.loc 1 79 0 391 01fc 0400438C 		lw	$3,4($2) 105:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** }
 392              		.loc 1 105 0 393 0200 2000BF8F 		lw	$31,32($sp) 394 0204 1800B28F 		lw	$18,24($sp) 395              		.loc 1 79 0 396 0208 000063AE 		sw	$3,0($19) 397              		.loc 1 105 0 398 020c 1400B18F 		lw	$17,20($sp) 399 0210 1C00B38F 		lw	$19,28($sp) 400 0214 1000B08F 		lw	$16,16($sp) 401              		.loc 1 80 0 402 0218 21100000 		move	$2,$0 403              		.loc 1 105 0 404 021c 0800E003 		j	$31 405 0220 2800BD27 		addiu	$sp,$sp,40 406              	 407              	$L13: 408              		.loc 1 86 0 409 0224 0400458C 		lw	$5,4($2) 410 0228 0000000C 		jal	binRead 411 022c 21200002 		move	$4,$16 412              	 413 0230 10004010 		beq	$2,$0,$L12 414 0234 21284000 		move	$5,$2 415              	 416              		.loc 1 88 0 417 0238 07004018 		blez	$2,$L22 418 023c 21200000 		move	$4,$0 419              	 420              	$L19: 421              		.loc 1 90 0 422 0240 21100402 		addu	$2,$16,$4 423 0244 00004390 		lbu	$3,0($2) 424              		.loc 1 88 0 425 0248 01008424 		addiu	$4,$4,1GAS LISTING /tmp/ccKe3Yhi.s 			page 11 426 024c 2A108500 		slt	$2,$4,$5 427              		.loc 1 90 0 428              		.loc 1 88 0 429 0250 FBFF4014 		bne	$2,$0,$L19 430 0254 21904302 		addu	$18,$18,$3 431              	 432              	$L22: 433              		.loc 1 93 0 434 0258 00002226 		addiu	$2,$17,%lo(recordInfo) 435 025c 0800438C 		lw	$3,8($2) 436              		.loc 1 99 0 437              		.loc 1 93 0 438 0260 05004312 		beq	$18,$3,$L11 439 0264 01000224 		li	$2,1			# 0x1 440              	 441              		.loc 1 95 0 442 0268 0000043C 		lui	$4,%hi($LC9) 443 026c 0000000C 		jal	printf 444 0270 00008424 		addiu	$4,$4,%lo($LC9) 445              	 446              	$L12: 447              		.loc 1 104 0 448 0274 21100000 		move	$2,$0 449              	$L11: 450              		.loc 1 105 0 451 0278 2000BF8F 		lw	$31,32($sp) 452 027c 1C00B38F 		lw	$19,28($sp) 453 0280 1800B28F 		lw	$18,24($sp) 454 0284 1400B18F 		lw	$17,20($sp) 455 0288 1000B08F 		lw	$16,16($sp) 456 028c 0800E003 		j	$31 457 0290 2800BD27 		addiu	$sp,$sp,40 458              	 459              		.set	macro 460              		.set	reorder 461              	$LFE7: 462              		.end	readRecord 463              		.align	2 464              		.globl	readBin 465              		.ent	readBin 466              		.type	readBin, @function 467              	readBin: 468              	$LFB8: 106:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
 107:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** void* readBin()
 108:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** {
 469              		.loc 1 108 0 470              		.frame	$sp,32,$31		# vars= 8, regs= 1/0, args= 16, gp= 0 471              		.mask	0x80000000,-8 472              		.fmask	0x00000000,0 473              		.set	noreorder 474              		.set	nomacro 475              		 476 0294 E0FFBD27 		addiu	$sp,$sp,-32 477              	$LCFI18: 478 0298 1800BFAF 		sw	$31,24($sp) 479              	$LCFI19:GAS LISTING /tmp/ccKe3Yhi.s 			page 12 109:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	void* entryPoint = (void*) 0;
 480              		.loc 1 109 0 110:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	if(readImageInfo())
 481              		.loc 1 110 0 482 029c 0000000C 		jal	readImageInfo 483 02a0 1000A0AF 		sw	$0,16($sp) 484              	 111:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	{
 112:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		while(readRecord(&entryPoint));
 113:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
 114:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 		return entryPoint;
 115:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	}
 116:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 
 117:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** 	return 0;
 485              		.loc 1 117 0 486              		.loc 1 110 0 487 02a4 05004010 		beq	$2,$0,$L23 488 02a8 21180000 		move	$3,$0 489              	 490              	$L25: 491              		.loc 1 112 0 492 02ac 0000000C 		jal	readRecord 493 02b0 1000A427 		addiu	$4,$sp,16 494              	 495              		.loc 1 114 0 496              		.loc 1 112 0 497 02b4 FDFF4014 		bne	$2,$0,$L25 498 02b8 1000A38F 		lw	$3,16($sp) 499              	 500              	$L23: 118:/mnt/hgfs/boot/booter/source/applications/booter/bin.c **** }
 501              		.loc 1 118 0 502 02bc 1800BF8F 		lw	$31,24($sp) 503 02c0 21106000 		move	$2,$3 504 02c4 0800E003 		j	$31 505 02c8 2000BD27 		addiu	$sp,$sp,32 506              	 507              		.set	macro 508              		.set	reorder 509              	$LFE8: 510              		.end	readBin 511              		.section	.rodata.str1.4 512 00e6 0000     		.align	2 513              	$LC10: 514 00e8 0A       		.ascii	"\n" 515 00e9 2D2D2D2D 		.ascii	"---------------------------------------------\n\000" 515      2D2D2D2D  515      2D2D2D2D  515      2D2D2D2D  515      2D2D2D2D  516              		.align	2 517              	$LC11: 518 0118 4C6F6164 		.ascii	"Loading Image: %12s (Format = CE-BIN)\n\000" 518      696E6720  518      496D6167 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -