📄 booter.lst
字号:
625 03b0 D8FFBD27 addiu $sp,$sp,-40 626 $LCFI33: 214:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** const char** files; 215:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** const char** addresses; 216:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void* jumpAddress; 217:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef SECUREBOOT 218:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(HSSGetBootData(&files, &addresses, &jumpAddress)) 219:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #else 220:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(platformGetBootData(&files, &addresses, &jumpAddress)) 627 .loc 1 220 0 628 03b4 1000A427 addiu $4,$sp,16 629 03b8 1400A527 addiu $5,$sp,20 630 .loc 1 213 0 631 03bc 2000BFAF sw $31,32($sp) 632 $LCFI34: 633 .loc 1 220 0 634 03c0 0000000C jal platformGetBootData 635 03c4 1800A627 addiu $6,$sp,24 636 221:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 222:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 223:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** //printf("files: %X, address: %X, jump: %X\n", files, addresses, jumpAddress); 224:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** return findImage(files, addresses, jumpAddress); 225:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 226:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 227:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 637 .loc 1 227 0 638 .loc 1 220 0 639 03c8 03004014 bne $2,$0,$L38 640 03cc 2000BF8F lw $31,32($sp) 641 642 .loc 1 227 0 643 03d0 0800E003 j $31 644 03d4 2800BD27 addiu $sp,$sp,40 645 646 $L38: 647 .loc 1 224 0 648 03d8 1000A48F lw $4,16($sp) 649 03dc 1400A58F lw $5,20($sp) 650 03e0 0000000C jal findImage 651 03e4 1800A68F lw $6,24($sp) 652 653 .loc 1 227 0 654 03e8 2000BF8F lw $31,32($sp) 655 03ec 0800E003 j $31 656 03f0 2800BD27 addiu $sp,$sp,40 657 658 .set macro 659 .set reorder 660 $LFE10: 661 .end loadBootImageGAS LISTING /tmp/ccjGssRD.s page 17 662 .align 2 663 .globl doboot 664 .ent doboot 665 .type doboot, @function 666 doboot: 667 $LFB11: 228:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 229:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #define CTRL_C ('C'-0x40) 230:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 231:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void doboot(unsigned int address, int argc, char* argv[], char* env[]) 232:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 668 .loc 1 232 0 669 .frame $sp,72,$31 # vars= 32, regs= 5/0, args= 16, gp= 0 670 .mask 0x800f0000,-8 671 .fmask 0x00000000,0 672 .set noreorder 673 .set nomacro 674 675 03f4 B8FFBD27 addiu $sp,$sp,-72 676 $LCFI35: 677 03f8 21108000 move $2,$4 678 03fc 3800B2AF sw $18,56($sp) 679 $LCFI36: 680 0400 2190A000 move $18,$5 233:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void* entryPoint; 234:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** char filename[9]; 235:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 236:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(address) 237:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 238:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** sprintf(filename, "%X", address); 681 .loc 1 238 0 682 0404 0000053C lui $5,%hi($LC6) 683 .loc 1 232 0 684 0408 3C00B3AF sw $19,60($sp) 685 $LCFI37: 686 040c 3400B1AF sw $17,52($sp) 687 $LCFI38: 688 0410 4000BFAF sw $31,64($sp) 689 $LCFI39: 690 0414 2188C000 move $17,$6 691 0418 3000B0AF sw $16,48($sp) 692 $LCFI40: 693 .loc 1 238 0 694 041c 1000A427 addiu $4,$sp,16 695 .loc 1 232 0 696 0420 2198E000 move $19,$7 697 .loc 1 238 0 698 0424 0000A524 addiu $5,$5,%lo($LC6) 699 .loc 1 236 0 700 0428 1F004010 beq $2,$0,$L40 701 042c 21304000 move $6,$2 702 703 .loc 1 238 0 704 0430 0000000C jal sprintf 705 0434 00000000 nop 706 239:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** entryPoint = loadImage(getFlashFunctions(), filename);GAS LISTING /tmp/ccjGssRD.s page 18 707 .loc 1 239 0 708 0438 0000000C jal getFlashFunctions 709 043c 2000A427 addiu $4,$sp,32 710 711 0440 2000A48F lw $4,32($sp) 712 0444 2400A58F lw $5,36($sp) 713 0448 2800A68F lw $6,40($sp) 714 044c 0000000C jal loadImage 715 0450 1000A727 addiu $7,$sp,16 716 240:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 241:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** else 242:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 243:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** entryPoint = loadBootImage(); 717 .loc 1 243 0 718 0454 21804000 move $16,$2 244:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 245:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 246:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(entryPoint) 247:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 248:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** displayEntryPoint(entryPoint); 719 .loc 1 248 0 720 .loc 1 246 0 721 0458 18004010 beq $2,$0,$L42 722 045c 21204000 move $4,$2 723 724 $L45: 725 $LBB2: 726 .loc 1 248 0 727 0460 0000000C jal displayEntryPoint 728 0464 00000000 nop 729 249:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 250:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef _LCD_OUTPUT_ 251:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcd_shutdown(); 730 .loc 1 251 0 731 0468 0000000C jal lcd_shutdown 732 046c 00000000 nop 733 252:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 253:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** execute(entryPoint, argc, argv, env); 734 .loc 1 253 0 735 0470 21200002 move $4,$16 736 0474 21284002 move $5,$18 737 0478 21302002 move $6,$17 738 047c 0000000C jal execute 739 0480 21386002 move $7,$19 740 254:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef _LCD_OUTPUT_ 255:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcdInit(); 741 .loc 1 255 0 742 0484 0000000C jal lcdInit 743 0488 00000000 nop 744 745 $LBE2: 256:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 257:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** }GAS LISTING /tmp/ccjGssRD.s page 19 258:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** else 259:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 260:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** displayNoImage(); 261:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 262:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 746 .loc 1 262 0 747 048c 4000BF8F lw $31,64($sp) 748 0490 3C00B38F lw $19,60($sp) 749 0494 3800B28F lw $18,56($sp) 750 0498 3400B18F lw $17,52($sp) 751 049c 3000B08F lw $16,48($sp) 752 04a0 0800E003 j $31 753 04a4 4800BD27 addiu $sp,$sp,72 754 755 $L40: 756 .loc 1 243 0 757 04a8 0000000C jal loadBootImage 758 04ac 00000000 nop 759 760 04b0 21804000 move $16,$2 761 .loc 1 248 0 762 .loc 1 246 0 763 04b4 EAFF4014 bne $2,$0,$L45 764 04b8 21204000 move $4,$2 765 766 $L42: 767 .loc 1 260 0 768 04bc 0000000C jal displayNoImage 769 04c0 00000000 nop 770 771 .loc 1 262 0 772 04c4 4000BF8F lw $31,64($sp) 773 04c8 3C00B38F lw $19,60($sp) 774 04cc 3800B28F lw $18,56($sp) 775 04d0 3400B18F lw $17,52($sp) 776 04d4 3000B08F lw $16,48($sp) 777 04d8 0800E003 j $31 778 04dc 4800BD27 addiu $sp,$sp,72 779 780 .set macro 781 .set reorder 782 $LFE11: 783 .end doboot 784 .section .rodata.str1.4 785 0087 00 .align 2 786 $LC7: 787 0088 41333030 .ascii "A3000000\000" 787 30303030 787 00 788 0091 000000 .align 2 789 $LC9: 790 0094 4C6F6164 .ascii "Load srec file error\n\000" 790 20737265 790 63206669 790 6C652065 790 72726F72 791 00aa 0000 .align 2GAS LISTING /tmp/ccjGssRD.s page 20 792 $LC8: 793 00ac 456E7472 .ascii "Entry point: 0x%x\n\000" 793 7920706F 793 696E743A 793 20307825 793 780A00 794 .text 795 .align 2 796 .globl doloadsrec 797 .ent doloadsrec 798 .type doloadsrec, @function 799 doloadsrec: 800 $LFB12: 263:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 264:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void doloadsrec(unsigned int len) 265:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 801 .loc 1 265 0 802 .frame $sp,56,$31 # vars= 16, regs= 6/0, args= 16, gp= 0 803 .mask 0x801f0000,-4 804 .fmask 0x00000000,0 805 .set noreorder 806 .set nomacro 807 808 04e0 C8FFBD27 addiu $sp,$sp,-56 809 $LCFI41: 266:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** int ch, count = 0; 267:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** char *tmp = (char *)0xA3000000; 268:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** DataFunctions functions; 269:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void* entryPoint; 270:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 271:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(len == 0) 272:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** len = 0xffffffff; 810 .loc 1 272 0 811 04e4 FFFF0224 li $2,-1 # 0xffffffffffffffff 812 .loc 1 265 0 813 04e8 2000B0AF sw $16,32($sp) 814 $LCFI42: 815 .loc 1 272 0 816 04ec 21804000 move $16,$2 817 04f0 0B808400 movn $16,$4,$4 273:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 274:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** while(len--) 275:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 276:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** ch = platformGetChar(); 277:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** if(ch == CTRL_C) 278:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** break; 279:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** count++; 280:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** *tmp++ = ch; 818 .loc 1 280 0 819 04f4 FFFF1026 addiu $16,$16,-1 820 .loc 1 265 0 821 04f8 2800B2AF sw $18,40($sp) 822 $LCFI43: 823 04fc 2400B1AF sw $17,36($sp) 824 $LCFI44: 825 0500 3400BFAF sw $31,52($sp) 826 $LCFI45:GAS LISTING /tmp/ccjGssRD.s page 21 827 0504 3000B4AF sw $20,48($sp) 828 $LCFI46: 829 0508 2C00B3AF sw $19,44($sp) 830 $LCFI47: 831 .loc 1 266 0 832 050c 21900000 move $18,$0 833 .loc 1 267 0 834 .loc 1 280 0 835 0510 0D000212 beq $16,$2,$L46
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -