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

📄 booter.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 836 0514 00A3113C 		li	$17,-1560281088			# 0xffffffffa3000000 837              	 838 0518 03001424 		li	$20,3			# 0x3 839 051c FFFF1324 		li	$19,-1			# 0xffffffffffffffff 840              	$L51: 841              		.loc 1 276 0 842 0520 0000000C 		jal	platformGetChar 843 0524 FFFF1026 		addiu	$16,$16,-1 844              	 845              		.loc 1 277 0 846 0528 05005410 		beq	$2,$20,$L49 847 052c 00000000 		nop 848              	 849              		.loc 1 280 0 850 0530 000022A2 		sb	$2,0($17) 851              		.loc 1 279 0 852 0534 01005226 		addiu	$18,$18,1 853              		.loc 1 280 0 854 0538 F9FF1316 		bne	$16,$19,$L51 855 053c 01003126 		addiu	$17,$17,1 856              	 857              	$L49: 281:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	} 282:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  283:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	if(count) 858              		.loc 1 283 0 859 0540 09004016 		bne	$18,$0,$L56 860 0544 00000000 		nop 861              	 862              	$L46: 284:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	{ 285:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		functions = getFlashFunctions(); 286:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		if(entryPoint = srecLoadImage(functions, "A3000000")) 287:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 			printf("Entry point: 0x%x\n", (int)entryPoint); 288:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		else 289:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 			printf("Load srec file error\n"); 290:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	} 291:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 863              		.loc 1 291 0 864 0548 3400BF8F 		lw	$31,52($sp) 865              	$L57: 866 054c 3000B48F 		lw	$20,48($sp) 867 0550 2C00B38F 		lw	$19,44($sp) 868 0554 2800B28F 		lw	$18,40($sp) 869 0558 2400B18F 		lw	$17,36($sp) 870 055c 2000B08F 		lw	$16,32($sp) 871 0560 0800E003 		j	$31 872 0564 3800BD27 		addiu	$sp,$sp,56GAS LISTING /tmp/ccjGssRD.s 			page 22 873              	 874              	$L56: 875              		.loc 1 285 0 876 0568 0000000C 		jal	getFlashFunctions 877 056c 1000A427 		addiu	$4,$sp,16 878              	 879              		.loc 1 286 0 880 0570 1000A48F 		lw	$4,16($sp) 881 0574 1400A58F 		lw	$5,20($sp) 882 0578 1800A68F 		lw	$6,24($sp) 883 057c 0000073C 		lui	$7,%hi($LC7) 884 0580 0000000C 		jal	srecLoadImage 885 0584 0000E724 		addiu	$7,$7,%lo($LC7) 886              	 887              		.loc 1 289 0 888              		.loc 1 286 0 889 0588 0D004010 		beq	$2,$0,$L53 890 058c 0000043C 		lui	$4,%hi($LC9) 891              	 892              		.loc 1 287 0 893 0590 0000043C 		lui	$4,%hi($LC8) 894 0594 00008424 		addiu	$4,$4,%lo($LC8) 895 0598 0000000C 		jal	printf 896 059c 21284000 		move	$5,$2 897              	 898              		.loc 1 291 0 899 05a0 3400BF8F 		lw	$31,52($sp) 900 05a4 3000B48F 		lw	$20,48($sp) 901 05a8 2C00B38F 		lw	$19,44($sp) 902 05ac 2800B28F 		lw	$18,40($sp) 903 05b0 2400B18F 		lw	$17,36($sp) 904 05b4 2000B08F 		lw	$16,32($sp) 905 05b8 0800E003 		j	$31 906 05bc 3800BD27 		addiu	$sp,$sp,56 907              	 908              	$L53: 909              		.loc 1 289 0 910 05c0 0000000C 		jal	printf 911 05c4 00008424 		addiu	$4,$4,%lo($LC9) 912              	 913              		.loc 1 291 0 914 05c8 53010008 		j	$L57 915 05cc 3400BF8F 		lw	$31,52($sp) 916              	 917              		.set	macro 918              		.set	reorder 919              	$LFE12: 920              		.end	doloadsrec 921              		.section	.rodata.str1.4 922 00bf 00       		.align	2 923              	$LC10: 924 00c0 4C6F6164 		.ascii	"Load bin file sucessfully\n\000" 924      2062696E  924      2066696C  924      65207375  924      63657373  925              		.textGAS LISTING /tmp/ccjGssRD.s 			page 23 926              		.align	2 927              		.globl	doloadbin 928              		.ent	doloadbin 929              		.type	doloadbin, @function 930              	doloadbin: 931              	$LFB13: 292:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  293:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void doloadbin(void *dest, unsigned int len) 294:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 932              		.loc 1 294 0 933              		.frame	$sp,40,$31		# vars= 0, regs= 5/0, args= 16, gp= 0 934              		.mask	0x800f0000,-8 935              		.fmask	0x00000000,0 936              		.set	noreorder 937              		.set	nomacro 938              		 939 05d0 D8FFBD27 		addiu	$sp,$sp,-40 940              	$LCFI48: 941 05d4 1800B2AF 		sw	$18,24($sp) 942              	$LCFI49: 943 05d8 1400B1AF 		sw	$17,20($sp) 944              	$LCFI50: 945 05dc 2000BFAF 		sw	$31,32($sp) 946              	$LCFI51: 947 05e0 1C00B3AF 		sw	$19,28($sp) 948              	$LCFI52: 949 05e4 1000B0AF 		sw	$16,16($sp) 950              	$LCFI53: 295:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	char *tmp = (char *)dest; 951              		.loc 1 295 0 952 05e8 21908000 		move	$18,$4 296:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  297:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	while(len--) 298:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		*tmp++ = platformGetChar(); 953              		.loc 1 298 0 954 05ec 0700A010 		beq	$5,$0,$L63 955 05f0 FFFFB124 		addiu	$17,$5,-1 956              	 957 05f4 FFFF1324 		li	$19,-1			# 0xffffffffffffffff 958              	$L61: 959 05f8 0000000C 		jal	platformGetChar 960 05fc FFFF3126 		addiu	$17,$17,-1 961              	 962 0600 000042A2 		sb	$2,0($18) 963 0604 FCFF3316 		bne	$17,$19,$L61 964 0608 01005226 		addiu	$18,$18,1 965              	 966              	$L63: 299:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	printf("Load bin file sucessfully\n"); 967              		.loc 1 299 0 968 060c 0000043C 		lui	$4,%hi($LC10) 969 0610 2000BF8F 		lw	$31,32($sp) 970 0614 1C00B38F 		lw	$19,28($sp) 971 0618 1800B28F 		lw	$18,24($sp) 972 061c 1400B18F 		lw	$17,20($sp) 973 0620 1000B08F 		lw	$16,16($sp) 974 0624 00008424 		addiu	$4,$4,%lo($LC10)GAS LISTING /tmp/ccjGssRD.s 			page 24 975 0628 00000008 		j	printf 976 062c 2800BD27 		addiu	$sp,$sp,40 977              	 978              		.set	macro 979              		.set	reorder 980              	$LFE13: 981              		.end	doloadbin 982              		.section	.rodata.str1.4 983 00db 00       		.align	2 984              	$LC11: 985 00dc 436F7079 		.ascii	"Copy 0x%x bytes from 0x%x to 0x%x\n\000" 985      20307825  985      78206279  985      74657320  985      66726F6D  986 00ff 00       		.align	2 987              	$LC12: 988 0100 45726173 		.ascii	"Eraseing...\n\000" 988      65696E67  988      2E2E2E0A  988      00 989 010d 000000   		.align	2 990              	$LC13: 991 0110 50726F67 		.ascii	"Programing...\n\000" 991      72616D69  991      6E672E2E  991      2E0A00 992              		.text 993              		.align	2 994              		.globl	docopy 995              		.ent	docopy 996              		.type	docopy, @function 997              	docopy: 998              	$LFB14: 300:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 301:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  302:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void docopy(unsigned int src, unsigned int dst, unsigned int len) 303:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 999              		.loc 1 303 0 1000              		.frame	$sp,48,$31		# vars= 0, regs= 7/0, args= 16, gp= 0 1001              		.mask	0x803f0000,-8 1002              		.fmask	0x00000000,0 1003              		.set	noreorder 1004              		.set	nomacro 1005              		 1006 0630 D0FFBD27 		addiu	$sp,$sp,-48 1007              	$LCFI54: 1008 0634 1800B2AF 		sw	$18,24($sp) 1009              	$LCFI55: 1010 0638 21908000 		move	$18,$4 304:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	unsigned int address; 305:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  306:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	if(((src & 0xd0000000) == 0x80000000) && 1011              		.loc 1 306 0 1012 063c 00D0043C 		li	$4,-805306368			# 0xffffffffd0000000 1013 0640 24184402 		and	$3,$18,$4 1014 0644 0080023C 		li	$2,-2147483648			# 0xffffffff80000000GAS LISTING /tmp/ccjGssRD.s 			page 25 1015              		.loc 1 303 0 1016 0648 1C00B3AF 		sw	$19,28($sp) 1017              	$LCFI56: 1018 064c 2800BFAF 		sw	$31,40($sp) 1019              	$LCFI57: 1020 0650 2400B5AF 		sw	$21,36($sp) 1021              	$LCFI58: 1022 0654 2000B4AF 		sw	$20,32($sp) 1023              	$LCFI59: 1024 0658 1400B1AF 		sw	$17,20($sp) 1025              	$LCFI60: 1026 065c 1000B0AF 		sw	$16,16($sp) 1027              	$LCFI61: 1028              		.loc 1 303 0 1029              		.loc 1 306 0 1030 0660 0A006210 		beq	$3,$2,$L72 1031 0664 2198C000 		move	$19,$6 1032              	 307:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		((dst & 0xd0000000) == 0x90000000)) 308:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	{ 309:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		dst |= 0x20000000; 310:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  311:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		printf("Copy 0x%x bytes from 0x%x to 0x%x\n", len, src, dst); 312:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		printf("Eraseing...\n"); 313:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  314:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		for(address = dst & 0xffff0000; address < (dst + len); address += 0x00010000) 315:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 			nor_erase((void *)address); 316:/mnt/hgfs/boot/booter/source/applications/booter/booter.c ****  317:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		printf("Programing...\n"); 318:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 		nor_program((void *)src, len, (void *)dst); 319:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 	} 320:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 1033              		.loc 1 320 0 1034 0668 2800BF8F 		lw	$31,40($sp) 1035              	$L75: 1036 066c 2400B58F 		lw	$21,36($sp) 1037 0670 2000B48F 		lw	$20,32($sp) 1038 0674 1C00B38F 		lw	$19,28($sp) 1039 0678 1800B28F 		lw	$18,24($sp) 1040 067c 1400B18F 		lw	$17,20($sp) 1041 0680 1000B08F 		lw	$16,16($sp) 1042 0684 0800E003 		j	$31 1043 0688 3000BD27 		addiu	$sp,$sp,48 1044              	 1045              	$L72: 1046              		.loc 1 306 0 1047 068c 2418A400 		and	$3,$5,$4 1048 0690 0090023C 		li	$2,-1879048192			# 0xffffffff90000000 1049              		.loc 1 320 0 1050              		.loc 1 306 0 1051 0694 F5FF6214 		bne	$3,$2,$L75 1052 0698 2800BF8F 		lw	$31,40($sp) 1053              	 1054              		.loc 1 309 0 1055 069c 0020023C 		li	$2,536870912			# 0x20000000 1056 06a0 2588A200 		or	$17,$5,$2 1057              		.loc 1 311 0GAS LISTING /tmp/ccjGssRD.s 			page 26 1058 06a4 0000043C 		lui	$4,%hi($LC11) 1059 06a8 2128C000 		move	$5,$6 1060 06ac 00008424 		addiu	$4,$4,%lo($LC11) 1061 06b0 21304002 		move	$6,$18 1062 06b4 0000000C 		jal	printf 1063 06b8 21382002 		move	$7,$17 1064              	 1065  

⌨️ 快捷键说明

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