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

📄 memc_test.txt

📁 支持三星原产的S3C24A0开发板
💻 TXT
字号:
; generated by ARM C Compiler, ADS1.2 [Build 805]

; commandline [-errors .\err\memc_test.err -O0 -asm -g+ -cpu 5TEJ -fs -Wd -Ec -I.\include "-IC:\Program Files\ARM\ADSv1_2\INCLUDE"]
                          CODE32

                          AREA ||.text||, CODE, READONLY

                  TestMeMc PROC
;;;75     void TestMeMc(void)
;;;76     {
                  |L1.0|
000000  e92d4070          STMFD    sp!,{r4-r6,lr}
000004  e24dd058          SUB      sp,sp,#0x58
;;;77         	IMAGE420 currImage;  //no-padded image YCbCr420
;;;78         	IMAGE420 prevImage;  //padded image YCbCr420 
;;;79         	IMAGE420 mcedImage;  //padded image YCbCr420
;;;80         	
;;;81         
;;;82         	U32 imageWidth=FIMV_IMAGE_WIDTH;  
000008  e3a05f58          MOV      r5,#0x160
;;;83         	U32 imageHeight=FIMV_IMAGE_HEIGHT; 
00000c  e3a06f48          MOV      r6,#0x120
;;;84         
;;;85         	U32 freeBufStartAddr=_NONCACHE_STARTADDRESS; 
000010  e3a04544          MOV      r4,#0x11000000
;;;86     
;;;87        	 int i;
;;;88     	
;;;89       
;;;90         
;;;91         //currImage has already been in the read-only area.
;;;92         	AllocImage420(&currImage,TEST_CURR_IMAGE,imageWidth,imageHeight,IMAGE420_NO_PADDED);
000014  e3a03001          MOV      r3,#1
000018  e58d3000          STR      r3,[sp,#0]
00001c  e1a03006          MOV      r3,r6
000020  e1a02005          MOV      r2,r5
000024  e59f10e4          LDR      r1,|L1.272|
000028  e28d003c          ADD      r0,sp,#0x3c
00002c  ebfffffe          BL       AllocImage420
;;;93         
;;;94         	printf("currImage addr(read only): %x\n",TEST_CURR_IMAGE);
000030  e59f10d8          LDR      r1,|L1.272|
000034  e28f00d8          ADR      r0,|L1.276|
000038  ebfffffe          BL       printf
;;;95         	//printf("The picture is the currImage. Press any key!\n");
;;;96         	//getchar();
;;;97         
;;;98         
;;;99         	//previous mcedImage has already been in the read-only area.
;;;100        	AllocImage420(&prevImage,TEST_PREV_IMAGE,imageWidth,imageHeight,IMAGE420_PADDED);
00003c  e3a03000          MOV      r3,#0
000040  e58d3000          STR      r3,[sp,#0]
000044  e1a03006          MOV      r3,r6
000048  e1a02005          MOV      r2,r5
00004c  e59f10e0          LDR      r1,|L1.308|
000050  e28d0020          ADD      r0,sp,#0x20
000054  ebfffffe          BL       AllocImage420
;;;101    
;;;102        
;;;103        	printf("prevImage addr(read only): %x\n",TEST_PREV_IMAGE);     
000058  e59f10d4          LDR      r1,|L1.308|
00005c  e28f00d4          ADR      r0,|L1.312|
000060  ebfffffe          BL       printf
;;;104        	//printf("The picture is the prevImage. Press any key!\n");
;;;105        	//getchar();
;;;106       
;;;107    
;;;108        	//mcedImage is used for MC output.
;;;109    	printf("mced Image addr(read only): %x\n",freeBufStartAddr);     
000064  e1a01004          MOV      r1,r4
000068  e28f00e8          ADR      r0,|L1.344|
00006c  ebfffffe          BL       printf
;;;110    	freeBufStartAddr=
000070  e3a03000          MOV      r3,#0
000074  e58d3000          STR      r3,[sp,#0]
000078  e1a03006          MOV      r3,r6
00007c  e1a02005          MOV      r2,r5
000080  e1a01004          MOV      r1,r4
000084  e28d0004          ADD      r0,sp,#4
000088  ebfffffe          BL       AllocImage420
00008c  e1a04000          MOV      r4,r0
;;;111    	AllocImage420(&mcedImage,freeBufStartAddr,imageWidth,imageHeight,
;;;112        		      IMAGE420_PADDED);
;;;113    	
;;;114    	
;;;115        	MeInitIsr();
000090  ebfffffe          BL       MeInitIsr
;;;116        	McInitIsr();
000094  ebfffffe          BL       McInitIsr
;;;117    #if ME_MC_GOB_OPERATION   
;;;118        	for(i=0;i<(imageHeight/16);i++)
;;;119        	{
;;;120    		//Timer_Start(0);
;;;121    		MeEngineGob(&currImage,&prevImage,meVector,(imageWidth/16),
;;;122    		    	((i==0)? ME_FRAME_START_MODE : 0));
;;;123    		while(meDone==0);
;;;124    		//printf("ME(gob=%d) completed,",i);
;;;125    
;;;126    		
;;;127    		//Timer_Start(0);
;;;128    		McEngineGob(&prevImage,&mcedImage,meVector,(imageWidth/16),
;;;129    		    	((i==0)? MC_FRAME_START_MODE : 0));
;;;130            	while(mcDone==0);
;;;131            	//printf("MC(gob=%d) completed.\n",i);
;;;132        	}
;;;133    #else
;;;134    	mtimer_start();
000098  ebfffffe          BL       mtimer_start
;;;135        	MeEngine(&currImage,&prevImage,meVector,0);
00009c  e3a03000          MOV      r3,#0
0000a0  e59f20d0          LDR      r2,|L1.376|
0000a4  e28d1020          ADD      r1,sp,#0x20
0000a8  e28d003c          ADD      r0,sp,#0x3c
0000ac  ebfffffe          BL       MeEngine
;;;136    
;;;137        	//printf("Wait until M.E. is completed.\n");
;;;138        	while(meDone==0);
0000b0  e1a00000          NOP      
                  |L1.180|
0000b4  e59f00c0          LDR      r0,|L1.380|
0000b8  e5900000          LDR      r0,[r0,#0]  ; meDone
0000bc  e3500000          CMP      r0,#0
0000c0  0afffffb          BEQ      |L1.180|
;;;139        	printf("M.E. is completed!\n");
0000c4  e28f00b4          ADR      r0,|L1.384|
0000c8  ebfffffe          BL       printf
;;;140    	Uart_TxEmpty(0);
0000cc  e3a00000          MOV      r0,#0
0000d0  ebfffffe          BL       Uart_TxEmpty
;;;141    	//mtimer_start();
;;;142        	McEngine(&prevImage,&mcedImage,meVector,0);
0000d4  e3a03000          MOV      r3,#0
0000d8  e59f2098          LDR      r2,|L1.376|
0000dc  e28d1004          ADD      r1,sp,#4
0000e0  e28d0020          ADD      r0,sp,#0x20
0000e4  ebfffffe          BL       McEngine
;;;143    
;;;144        	//printf("Wait until M.C. is completed.\n");
;;;145        	while(mcDone==0);
0000e8  e1a00000          NOP      
                  |L1.236|
0000ec  e59f00a0          LDR      r0,|L1.404|
0000f0  e5900000          LDR      r0,[r0,#0]  ; mcDone
0000f4  e3500000          CMP      r0,#0
0000f8  0afffffb          BEQ      |L1.236|
;;;146        	printf("M.C. is completed!\n");
0000fc  e28f0094          ADR      r0,|L1.408|
000100  ebfffffe          BL       printf
;;;147    #endif
;;;148    
;;;149        
;;;150        	//printf("The picture is the mcedImage. Press any key!\n");
;;;151        	getchar();
000104  ebfffffe          BL       getchar
;;;152    }	 
000108  e28dd058          ADD      sp,sp,#0x58
00010c  e8bd8070          LDMFD    sp!,{r4-r6,pc}
                  |L1.272|
000110  00000000          DCD      image_b2
                  |L1.276|
000114  72727563          DCB      "curr"
000118  67616d49          DCB      "Imag"
00011c  64612065          DCB      "e ad"
000120  72287264          DCB      "dr(r"
000124  20646165          DCB      "ead "
000128  796c6e6f          DCB      "only"
00012c  25203a29          DCB      "): %"
000130  00000a78          DCB      "x\n\0\0"
                  |L1.308|
000134  00000000          DCD      image_b1p
                  |L1.312|
000138  76657270          DCB      "prev"
00013c  67616d49          DCB      "Imag"
000140  64612065          DCB      "e ad"
000144  72287264          DCB      "dr(r"
000148  20646165          DCB      "ead "
00014c  796c6e6f          DCB      "only"
000150  25203a29          DCB      "): %"
000154  00000a78          DCB      "x\n\0\0"
                  |L1.344|
000158  6465636d          DCB      "mced"
00015c  616d4920          DCB      " Ima"
000160  61206567          DCB      "ge a"
000164  28726464          DCB      "ddr("
000168  64616572          DCB      "read"
00016c  6c6e6f20          DCB      " onl"
000170  203a2979          DCB      "y): "
000174  000a7825          DCB      "%x\n\0"
                  |L1.376|
000178  00000000          DCD      ||.bss$2||
                  |L1.380|
00017c  00000000          DCD      meDone
                  |L1.384|
000180  2e452e4d          DCB      "M.E."
000184  20736920          DCB      " is "
000188  706d6f63          DCB      "comp"
00018c  6574656c          DCB      "lete"
000190  000a2164          DCB      "d!\n\0"
                  |L1.404|
000194  00000000          DCD      mcDone
                  |L1.408|
000198  2e432e4d          DCB      "M.C."
00019c  20736920          DCB      " is "
0001a0  706d6f63          DCB      "comp"
0001a4  6574656c          DCB      "lete"
0001a8  000a2164          DCB      "d!\n\0"
                          ENDP



                          AREA ||.bss||, NOINIT, ALIGN=1

                  meVector
                  ||.bss$2||
                          % 7920


        END

⌨️ 快捷键说明

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