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

📄 fat.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 314 019a 0000     		.align	2 315              	$LC24: 316 019c 46696C65 		.ascii	"File Info:\000" 316      20496E66  316      6F3A00 317 01a7 00       		.align	2 318              	$LC25: 319 01a8 0A       		.ascii	"\n" 320 01a9 46696C65 		.ascii	"Filename: \000" 320      6E616D65  320      3A2000 321              		.align	2 322              	$LC26: 323 01b4 2E00     		.ascii	".\000" 324 01b6 0000     		.align	2 325              	$LC27: 326 01b8 0A       		.ascii	"\n" 327 01b9 41747472 		.ascii	"Attributes: %X\000" 327      69627574  327      65733A20  327      255800 328              		.align	2 329              	$LC28: 330 01c8 0A       		.ascii	"\n" 331 01c9 53697A65 		.ascii	"Size: %d Bytes\000" 331      3A202564  331      20427974  331      657300 332              		.align	2 333              	$LC29: 334 01d8 0A       		.ascii	"\n" 335 01d9 53746172 		.ascii	"Start Cluster: %d\n\000" 335      7420436C  335      75737465  335      723A2025  335      640A00 336              		.align	2 337              	$LC30: 338 01ec 4641544F 		.ascii	"FATOffset: %d\n\000" 338      66667365  338      743A2025  338      640A00 339 01fb 00       		.align	2 340              	$LC31: 341 01fc 54686973 		.ascii	"ThisFATSecNum: %d\n\000" 341      46415453  341      65634E75  341      6D3A2025  341      640A00 342 020f 00       		.align	2 343              	$LC32: 344 0210 54686973 		.ascii	"ThisFATEntOffset: %d\n\000" 344      46415445  344      6E744F66  344      66736574  344      3A202564 GAS LISTING /tmp/ccZKkRKo.s 			page 12 345 0226 0000     		.text 346              		.align	2 347              		.globl	displayDirectoryEntry 348              		.ent	displayDirectoryEntry 349              		.type	displayDirectoryEntry, @function 350              	displayDirectoryEntry: 351              	$LFB3: 184:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** } 185:/mnt/hgfs/boot/booter/source/applications/booter/fat.c ****  186:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** void displayDirectoryEntry(FATDirEntry* handle) 187:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** { 352              		.loc 1 187 0 353              		.frame	$sp,8224,$31		# vars= 8192, regs= 4/0, args= 16, gp= 0 354              		.mask	0x80070000,-4 355              		.fmask	0x00000000,0 356              		.set	noreorder 357              		.set	nomacro 358              		 359 01fc E0DFBD27 		addiu	$sp,$sp,-8224 360              	$LCFI6: 361 0200 1420B1AF 		sw	$17,8212($sp) 362              	$LCFI7: 363 0204 21888000 		move	$17,$4 188:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	int FATOffset, ThisFATSecNum, ThisFATEntOffset; 189:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	int i; 190:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	short buffer[4096]; 191:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	 192:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("\n-------------------------------\n"); 364              		.loc 1 192 0 365 0208 0000043C 		lui	$4,%hi($LC0) 366 020c 00008424 		addiu	$4,$4,%lo($LC0) 367              		.loc 1 187 0 368 0210 1C20BFAF 		sw	$31,8220($sp) 369              	$LCFI8: 370 0214 1820B2AF 		sw	$18,8216($sp) 371              	$LCFI9: 372              		.loc 1 187 0 373              	$LCFI10: 374              		.loc 1 192 0 375 0218 0000000C 		jal	printf 376 021c 1020B0AF 		sw	$16,8208($sp) 377              	 193:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("File Info:"); 378              		.loc 1 193 0 379 0220 0000043C 		lui	$4,%hi($LC24) 380 0224 0000000C 		jal	printf 381 0228 00008424 		addiu	$4,$4,%lo($LC24) 382              	 194:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("\nFilename: "); 383              		.loc 1 194 0 384 022c 0000043C 		lui	$4,%hi($LC25) 385 0230 0000000C 		jal	printf 386 0234 00008424 		addiu	$4,$4,%lo($LC25) 387              	 195:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	for(i = 0; i < 8; ++i) 388              		.loc 1 195 0 389 0238 21800000 		move	$16,$0GAS LISTING /tmp/ccZKkRKo.s 			page 13 390 023c 0000123C 		lui	$18,%hi($LC3) 196:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	{ 197:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 		printf("%c", handle->name[i]); 391              		.loc 1 197 0 392 0240 21103002 		addu	$2,$17,$16 393              	$L30: 394 0244 00004590 		lbu	$5,0($2) 395              		.loc 1 195 0 396 0248 01001026 		addiu	$16,$16,1 397              		.loc 1 197 0 398 024c 0000000C 		jal	printf 399 0250 00004426 		addiu	$4,$18,%lo($LC3) 400              	 401              		.loc 1 195 0 402 0254 0800022A 		slt	$2,$16,8 403              		.loc 1 197 0 404              		.loc 1 195 0 405 0258 FAFF4014 		bne	$2,$0,$L30 406 025c 21103002 		addu	$2,$17,$16 407              	 198:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	} 199:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("."); 408              		.loc 1 199 0 409 0260 0000043C 		lui	$4,%hi($LC26) 410 0264 0000000C 		jal	printf 411 0268 00008424 		addiu	$4,$4,%lo($LC26) 412              	 200:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	for(i = 0; i < 3; ++i) 413              		.loc 1 200 0 414 026c 21800000 		move	$16,$0 201:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	{ 202:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 		printf("%c", handle->ext[i]); 415              		.loc 1 202 0 416 0270 21101102 		addu	$2,$16,$17 417              	$L31: 418 0274 08004590 		lbu	$5,8($2) 419              		.loc 1 200 0 420 0278 01001026 		addiu	$16,$16,1 421              		.loc 1 202 0 422 027c 0000000C 		jal	printf 423 0280 00004426 		addiu	$4,$18,%lo($LC3) 424              	 425              		.loc 1 200 0 426 0284 0300022A 		slt	$2,$16,3 427              		.loc 1 202 0 428              		.loc 1 200 0 429 0288 FAFF4014 		bne	$2,$0,$L31 430 028c 21101102 		addu	$2,$16,$17 431              	 203:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	} 204:/mnt/hgfs/boot/booter/source/applications/booter/fat.c ****  205:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("\nAttributes: %X", handle->attr); 432              		.loc 1 205 0 433 0290 0B002592 		lbu	$5,11($17) 434 0294 0000043C 		lui	$4,%hi($LC27) 435 0298 0000000C 		jal	printf 436 029c 00008424 		addiu	$4,$4,%lo($LC27)GAS LISTING /tmp/ccZKkRKo.s 			page 14 437              	 206:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("\nSize: %d Bytes", handle->size); 438              		.loc 1 206 0 439 02a0 1C00258E 		lw	$5,28($17) 440 02a4 0000043C 		lui	$4,%hi($LC28) 441 02a8 0000000C 		jal	printf 442 02ac 00008424 		addiu	$4,$4,%lo($LC28) 443              	 207:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("\nStart Cluster: %d\n", handle->start); 444              		.loc 1 207 0 445 02b0 1A002596 		lhu	$5,26($17) 446 02b4 0000043C 		lui	$4,%hi($LC29) 447 02b8 0000000C 		jal	printf 448 02bc 00008424 		addiu	$4,$4,%lo($LC29) 449              	 208:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	 209:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	FATOffset = handle->start * 2; 210:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	ThisFATSecNum = fat.reservedSectorCount + (FATOffset / fat.bytesPerSector); 450              		.loc 1 210 0 451 02c0 0000023C 		lui	$2,%hi(fat) 452 02c4 00004224 		addiu	$2,$2,%lo(fat) 453              		.loc 1 209 0 454 02c8 1A002596 		lhu	$5,26($17) 455              		.loc 1 210 0 456 02cc 0002438C 		lw	$3,512($2) 457 02d0 0402508C 		lw	$16,516($2) 458              		.loc 1 209 0 459 02d4 40280500 		sll	$5,$5,1 460              		.loc 1 210 0 461 02d8 1A00A300 		div	$0,$5,$3 462 02dc 02006014 		bne	$3,$0,1f 463 02e0 00000000 		nop 464 02e4 0D000700 		break	7 465              	1: 211:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	ThisFATEntOffset = FATOffset % fat.bytesPerSector; 212:/mnt/hgfs/boot/booter/source/applications/booter/fat.c ****  213:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("FATOffset: %d\n", FATOffset); 466              		.loc 1 213 0 467 02e8 0000043C 		lui	$4,%hi($LC30) 468 02ec 00008424 		addiu	$4,$4,%lo($LC30) 469              		.loc 1 210 0 470 02f0 12180000 		mflo	$3 471 02f4 10880000 		mfhi	$17 472              		.loc 1 213 0 473 02f8 0000000C 		jal	printf 474 02fc 21800302 		addu	$16,$16,$3 475              	 214:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("ThisFATSecNum: %d\n", ThisFATSecNum); 476              		.loc 1 214 0 477 0300 0000043C 		lui	$4,%hi($LC31) 478 0304 21280002 		move	$5,$16 479 0308 0000000C 		jal	printf 480 030c 00008424 		addiu	$4,$4,%lo($LC31) 481              	 215:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("ThisFATEntOffset: %d\n", ThisFATEntOffset);  482              		.loc 1 215 0 483 0310 0000043C 		lui	$4,%hi($LC32)GAS LISTING /tmp/ccZKkRKo.s 			page 15 484 0314 21282002 		move	$5,$17 485 0318 0000000C 		jal	printf 486 031c 00008424 		addiu	$4,$4,%lo($LC32) 487              	 216:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	printf("-------------------------------\n"); 488              		.loc 1 216 0 489 0320 0000043C 		lui	$4,%hi($LC23) 490 0324 0000000C 		jal	printf 491 0328 00008424 		addiu	$4,$4,%lo($LC23) 492              	 493 032c 1C20BF8F 		lw	$31,8220($sp) 494 0330 1820B28F 		lw	$18,8216($sp) 495 0334 1420B18F 		lw	$17,8212($sp) 496 0338 1020B08F 		lw	$16,8208($sp) 497 033c 0800E003 		j	$31 498 0340 2020BD27 		addiu	$sp,$sp,8224 499              	 500              		.set	macro 501              		.set	reorder 502              	$LFE3: 503              		.end	displayDirectoryEntry 504              		.align	2 505              		.globl	getSectorNumber 506              		.ent	getSectorNumber 507              		.type	getSectorNumber, @function 508              	getSectorNumber: 509              	$LFB4: 217:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** } 218:/mnt/hgfs/boot/booter/source/applications/booter/fat.c ****  219:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** int getSectorNumber(int clusterOffset) 220:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** { 510              		.loc 1 220 0 511              		.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0 512              		.mask	0x00000000,0 513              		.fmask	0x00000000,0 514              		.set	noreorder 515              		.set	nomacro 516              		 221:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** 	return fat.rootSector + (clusterOffset - 2) * fat.fbs.BPB_SecPerClus + fat.firstDataSector; 517              		.loc 1 221 0 518 0344 0000033C 		lui	$3,%hi(fat) 519 0348 00006324 		addiu	$3,$3,%lo(fat) 520 034c 0D006690 		lbu	$6,13($3) 521 0350 FEFF8424 		addiu	$4,$4,-2 522 0354 3C02658C 		lw	$5,572($3) 523 0358 1802628C 		lw	$2,536($3) 524 035c 02188670 		mul	$3,$4,$6 525 0360 21206500 		addu	$4,$3,$5 222:/mnt/hgfs/boot/booter/source/applications/booter/fat.c **** } 526              		.loc 1 222 0 527 0364 0800E003 		j	$31 528 0368 21108200 		addu	$2,$4,$2 529              	 530              		.set	macro 531              		.set	reorder 532              	$LFE4: 533              		.end	getSectorNumberGAS LISTING /tmp/ccZKkRKo.s 			page 16 534              		.align	2 535              		.globl	getNextCluster 536              		.ent	getNextCluster

⌨️ 快捷键说明

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