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

📄 mobile_demo.txt

📁 支持三星原产的S3C24A0开发板
💻 TXT
📖 第 1 页 / 共 5 页
字号:
00060c  e2600fa0          RSB      r0,r0,#0x280
000610  e3a0c028          MOV      r12,#0x28
000614  e08c00a0          ADD      r0,r12,r0,LSR #1
000618  e88d000f          STMIA    sp,{r0-r3}
00061c  e3a03f48          MOV      r3,#0x120
000620  e3a02f58          MOV      r2,#0x160
000624  e59f00e8          LDR      r0,|L1.1812|
000628  e5901000          LDR      r1,[r0,#0]  ; FimvImageHeight
00062c  e59f00e4          LDR      r0,|L1.1816|
000630  e5900000          LDR      r0,[r0,#0]  ; FimvImageWidth
000634  ebfffffe          BL       CamInit
;;;558    		       (CAM_SRC_VSIZE-FimvImageHeight)/2+8,  0x11000000, LCDFRAMEBUFFERFG2);
;;;559    
;;;560    	rCLKDIVN=(rCLKDIVN&~(0xf<<8))|(2<<8);//24Mhz, updated at 2004.02.13 by ows
000638  e3a00440          MOV      r0,#0x40000000
00063c  e5900028          LDR      r0,[r0,#0x28]
000640  e3c00ef0          BIC      r0,r0,#0xf00
000644  e3800f80          ORR      r0,r0,#0x200
000648  e3a01440          MOV      r1,#0x40000000
00064c  e5810028          STR      r0,[r1,#0x28]
;;;561    
;;;562    	//CamInit(FIMV_IMAGE_WIDTH, FIMV_IMAGE_HEIGHT, 352, 288, 0,0,  0x11000000, LCDFRAMEBUFFERBG1);
;;;563    	mpegframebuffer = 0x13600000;
000650  e59f011c          LDR      r0,|L1.1908|
000654  e59f111c          LDR      r1,|L1.1912|
000658  e5810000          STR      r0,[r1,#0]  ; mpegframebuffer
;;;564    	PostSetFimv16B(FimvImageWidth,FimvImageHeight,240,320, refImage[0].frameStartAddr,mpegframebuffer);
00065c  e59f0114          LDR      r0,|L1.1912|
000660  e5903000          LDR      r3,[r0,#0]  ; mpegframebuffer
000664  e59f00e8          LDR      r0,|L1.1876|
000668  e5902000          LDR      r2,[r0,#0]  ; refImage
00066c  e88d000c          STMIA    sp,{r2,r3}
000670  e3a03f50          MOV      r3,#0x140
000674  e3a020f0          MOV      r2,#0xf0
000678  e59f0094          LDR      r0,|L1.1812|
00067c  e5901000          LDR      r1,[r0,#0]  ; FimvImageHeight
000680  e59f0090          LDR      r0,|L1.1816|
000684  e5900000          LDR      r0,[r0,#0]  ; FimvImageWidth
000688  ebfffffe          BL       PostSetFimv16B
;;;565    	LcdBGInit(MODE_PAR_16BIT565_240320|MODE_MPEG_DISPLAY_16B);
00068c  e59f00e8          LDR      r0,|L1.1916|
000690  ebfffffe          BL       LcdBGInit
;;;566    
;;;567    
;;;568    
;;;569     	VlcConfig4Dctq(FimvImageWidth,0x12900000,(FimvImageWidth/16)*(FimvImageHeight/16),0);
000694  e59f007c          LDR      r0,|L1.1816|
000698  e5900000          LDR      r0,[r0,#0]  ; FimvImageWidth
00069c  e1a00220          MOV      r0,r0,LSR #4
0006a0  e59f106c          LDR      r1,|L1.1812|
0006a4  e5911000          LDR      r1,[r1,#0]  ; FimvImageHeight
0006a8  e1a01221          MOV      r1,r1,LSR #4
0006ac  e0020091          MUL      r2,r1,r0
0006b0  e3a03000          MOV      r3,#0
0006b4  e59f10c4          LDR      r1,|L1.1920|
0006b8  e59f0058          LDR      r0,|L1.1816|
0006bc  e5900000          LDR      r0,[r0,#0]  ; FimvImageWidth
0006c0  ebfffffe          BL       VlcConfig4Dctq
;;;570    
;;;571    	freeBufStartAddr = freeBufStartAddr + (1152/16)*(864/16)*4;
0006c4  e59d0014          LDR      r0,[sp,#0x14]
0006c8  e2800df3          ADD      r0,r0,#0x3cc0
0006cc  e58d0014          STR      r0,[sp,#0x14]
;;;572    
;;;573    
;;;574    	if(freeBufStartAddr >= 0x12900000) printf("Memory allocaton Over : %08x\n",freeBufStartAddr);
0006d0  e59d0014          LDR      r0,[sp,#0x14]
0006d4  e290c4f0          ADDS     r12,r0,#0xf0000000
0006d8  225cc7a4          SUBCSS   r12,r12,#0x2900000
0006dc  3a000030          BCC      |L1.1956|
0006e0  e28f009c          ADR      r0,|L1.1924|
0006e4  e59d1014          LDR      r1,[sp,#0x14]
0006e8  ebfffffe          BL       _printf
0006ec  ea00002f          B        |L1.1968|
                  |L1.1776|
0006f0  00000008          DCD      ||.bss$2|| + 8
                  |L1.1780|
0006f4  00000004          DCD      ||.bss$2|| + 4
                  |L1.1784|
0006f8  00000000          DCD      ||.bss$2||
                  |L1.1788|
0006fc  00000000          DCD      demo_DctqIsr
                  |L1.1792|
000700  13fff000          DCD      0x13fff000
                  |L1.1796|
000704  00000000          DCD      demo_MeIsr
                  |L1.1800|
000708  00000000          DCD      demo_McIsr
                  |L1.1804|
00070c  00000000          DCD      demo_VlxIsr
                  |L1.1808|
000710  00000000          DCD      demo_PostIsr
                  |L1.1812|
000714  00007d9c          DCD      ||.bss$2|| + 32156
                  |L1.1816|
000718  00007d98          DCD      ||.bss$2|| + 32152
                  |L1.1820|
00071c  3d207720          DCB      " w ="
000720  2c642520          DCB      " %d,"
000724  253d6820          DCB      " h=%"
000728  00000a64          DCB      "d\n\0\0"
                  |L1.1836|
00072c  00000074          DCD      ||.bss$2|| + 116
                  |L1.1840|
000730  00000090          DCD      ||.bss$2|| + 144
                  |L1.1844|
000734  000000ac          DCD      ||.bss$2|| + 172
                  |L1.1848|
000738  000000c8          DCD      ||.bss$2|| + 200
                  |L1.1852|
00073c  66657220          DCB      " ref"
000740  64646120          DCB      " add"
000744  255b2072          DCB      "r [%"
000748  203d5d64          DCB      "d]= "
00074c  78383025          DCB      "%08x"
000750  0000000a          DCB      "\n\0\0\0"
                  |L1.1876|
000754  000000e4          DCD      ||.bss$2|| + 228
                  |L1.1880|
000758  00000154          DCD      ||.bss$2|| + 340
                  |L1.1884|
00075c  6120564d          DCB      "MV a"
000760  3a726464          DCB      "ddr:"
000764  78255b20          DCB      " [%x"
000768  0000002c          DCB      ",\0\0\0"
                  |L1.1900|
00076c  00007d84          DCD      ||.bss$2|| + 32132
                  |L1.1904|
000770  00007d94          DCD      ||.bss$2|| + 32148
                  |L1.1908|
000774  13600000          DCD      0x13600000
                  |L1.1912|
000778  00000000          DCD      mpegframebuffer
                  |L1.1916|
00077c  00002245          DCD      0x00002245
                  |L1.1920|
000780  12900000          DCD      0x12900000
                  |L1.1924|
000784  6f6d654d          DCB      "Memo"
000788  61207972          DCB      "ry a"
00078c  636f6c6c          DCB      "lloc"
000790  6e6f7461          DCB      "aton"
000794  65764f20          DCB      " Ove"
000798  203a2072          DCB      "r : "
00079c  78383025          DCB      "%08x"
0007a0  0000000a          DCB      "\n\0\0\0"
;;;575    	else printf("Ok,memory allocation : %08x\n",freeBufStartAddr);
                  |L1.1956|
0007a4  e28f000c          ADR      r0,|L1.1976|
0007a8  e59d1014          LDR      r1,[sp,#0x14]
0007ac  ebfffffe          BL       _printf
;;;576    
;;;577    	 
;;;578    }
                  |L1.1968|
0007b0  e28dd018          ADD      sp,sp,#0x18
0007b4  e8bd8010          LDMFD    sp!,{r4,pc}
                  |L1.1976|
0007b8  6d2c6b4f          DCB      "Ok,m"
0007bc  726f6d65          DCB      "emor"
0007c0  6c612079          DCB      "y al"
0007c4  61636f6c          DCB      "loca"
0007c8  6e6f6974          DCB      "tion"
0007cc  25203a20          DCB      " : %"
0007d0  0a783830          DCB      "08x\n"
0007d4  00000000          DCB      "\0\0\0\0"
                          ENDP

                  Cam_Demo_PostIsr PROC
;;;1123   void __irq Cam_Demo_PostIsr(void)
;;;1124   {
0007d8  e92d0007          STMFD    sp!,{r0-r2}
;;;1125   
;;;1126   	U32 optime;
;;;1127   	
;;;1128   	U32 post_flag;
;;;1129   	
;;;1130   	rINTMSK |= BIT_LCD_POST;
0007dc  e51f1600          LDR      r1,|L1.484|
0007e0  e5911008          LDR      r1,[r1,#8]
0007e4  e3811c40          ORR      r1,r1,#0x4000
0007e8  e51f260c          LDR      r2,|L1.484|
0007ec  e5821008          STR      r1,[r2,#8]
;;;1131   	rINTSUBMSK=BIT_SUB_DISP_FIFO|BIT_SUB_DISP_FRAME|BIT_SUB_POST;
0007f0  e3a01946          MOV      r1,#0x118000
0007f4  e1c22001          BIC      r2,r2,r1
0007f8  e582101c          STR      r1,[r2,#0x1c]
;;;1132   	   
;;;1133   	rMODE &= ~(1<<6);//Clear Source in POST Processor
0007fc  e282169f          ADD      r1,r2,#0x9f00000
000800  e5911000          LDR      r1,[r1,#0]
000804  e3c11040          BIC      r1,r1,#0x40
000808  e282269f          ADD      r2,r2,#0x9f00000
00080c  e5821000          STR      r1,[r2,#0]
;;;1134   	rSUBSRCPND=BIT_SUB_POST; //Clear SUB Interrupt Source Pending.
000810  e3a01c80          MOV      r1,#0x8000
000814  e242269f          SUB      r2,r2,#0x9f00000
000818  e5821018          STR      r1,[r2,#0x18]
;;;1135   	ClearPending(BIT_LCD_POST);//Clear Source Pending, Interrupt Pending	   
00081c  e3a01c40          MOV      r1,#0x4000
000820  e1c22001          BIC      r2,r2,r1
000824  e5821000          STR      r1,[r2,#0]
000828  e1c21001          BIC      r1,r2,r1
00082c  e5911010          LDR      r1,[r1,#0x10]
000830  e5821010          STR      r1,[r2,#0x10]
000834  e1a01002          MOV      r1,r2
000838  e5911010          LDR      r1,[r1,#0x10]
;;;1136   	
;;;1137   	fpsNum++;
00083c  e59f11e4          LDR      r1,|L1.2600|
000840  e5911000          LDR      r1,[r1,#0]  ; fpsNum
000844  e2811001          ADD      r1,r1,#1
000848  e59f21d8          LDR      r2,|L1.2600|
00084c  e5821000          STR      r1,[r2,#0]  ; fpsNum
;;;1138   
;;;1139   	post_flag = _POSTLCD_FLAG;
000850  e59f11d4          LDR      r1,|L1.2604|
000854  e5911000          LDR      r1,[r1,#0]  ; _POSTLCD_FLAG
000858  e1a00001          MOV      r0,r1
;;;1140   
;;;1141   	switch(post_flag){
00085c  e3500010          CMP      r0,#0x10
000860  0a000006          BEQ      |L1.2176|
000864  e3500020          CMP      r0,#0x20
000868  0a000008          BEQ      |L1.2192|
00086c  e3500030          CMP      r0,#0x30
000870  0a00000a          BEQ      |L1.2208|
000874  e3500040          CMP      r0,#0x40
000878  1a000013          BNE      |L1.2252|
00087c  ea00000b          B        |L1.2224|
;;;1142   		case 0x00000010:
;;;1143   			_POSTLCD_FLAG = 0x00000011;
                  |L1.2176|
000880  e3a01011          MOV      r1,#0x11
000884  e59f21a0          LDR      r2,|L1.2604|
000888  e5821000          STR      r1,[r2,#0]  ; _POSTLCD_FLAG
;;;1144   		break;
00088c  ea00000e          B        |L1.2252|
;;;1145   		case 0x00000020:
;;;1146   			_POSTLCD_FLAG = 0x00000021;
                  |L1.2192|
000890  e3a01021          MOV      r1,#0x21
000894  e59f2190          LDR      r2,|L1.2604|
000898  e5821000          STR      r1,[r2,#0]  ; _POSTLCD_FLAG
;;;1147   		break;
00089c  ea00000a          B        |L1.2252|
;;;1148   		case 0x00000030:
;;;1149   			_POSTLCD_FLAG = 0x00000031;
                  |L1.2208|
0008a0  e3a01031          MOV      r1,#0x31
0008a4  e59f2180          LDR      r2,|L1.2604|
0008a8  e5821000          STR      r1,[r2,#0]  ; _POSTLCD_FLAG
;;;1150   		break;
0008ac  ea000006          B        |L1.2252|
;;;1151   		case 0x00000040:
;;;1152   			_POSTLCD_FLAG = 0x00000000;
                  |L1.2224|
0008b0  e3a01000          MOV      r1,#0
0008b4  e59f2170          LDR      r2,|L1.2604|
0008b8  e5821000          STR      r1,[r2,#0]  ; _POSTLCD_FLAG
;;;1153   			_DCTQ_FLAG = 0x00000000;
0008bc  e3a01000          MOV      r1,#0
0008c0  e59f2168          LDR      r2,|L1.2608|
0008c4  e5821000          STR      r1,[r2,#0]  ; _DCTQ_FLAG
;;;1154   		break;
0008c8  e1a00000          NOP      
;;;1155   	}				
;;;1156   
;;;1157   	rINTSUBMSK &= ~(BIT_SUB_POST); // SUB-INT POST Enable
                  |L1.2252|
0008cc  e51f16f0          LDR      r1,|L1.484|
0008d0  e591101c          LDR      r1,[r1,#0x1c]
0008d4  e3c11c80          BIC      r1,r1,#0x8000
0008d8  e51f26fc          LDR      r2,|L1.484|
0008dc  e582101c          STR      r1,[r2,#0x1c]
;;;1158   	rINTMSK &= ~(BIT_LCD_POST); // INT_POST_LCD Enable
0008e0  e1a01002          MOV      r1,r2
0008e4  e5911008          LDR      r1,[r1,#8]
0008e8  e3c11c40          BIC      r1,r1,#0x4000
0008ec  e5821008          STR      r1,[r2,#8]
;;;1159   
;;;1160   	//if( framecnt == 10){
;;;1161   	//	optime=Timer_Stop();
;;;1162   	//	printf("%d fps = %d\n",optime,(1000000*framecnt)/(optime*64));
;;;1163   	//	framecnt = 0;
;;;1164   	//}
;;;1165   		
;;;1166   
;;;1167   	
;;;1168   		
;;;1169       	//Uart_Printf("{P}\n");
;;;1170   }
0008f0  e8bd0007          LDMFD    sp!,{r0-r2}
0008f4  e25ef004          SUBS     pc,lr,#4
                          ENDP

                  Cam_Demo_Cam_CodecIsr PROC
;;;1066   void __irq Cam_Demo_Cam_CodecIsr(void)
;;;1067   {
0008f8  e92d501f          STMFD    sp!,{r0-r4,r12,lr}
0008fc  e24dd004          SUB      sp,sp,#4
;;;1068   	U32 camif_flag;
;;;1069   	U32 optime;
;;;1070   	U32 completedFrameIndex;
;;;1071   

⌨️ 快捷键说明

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