tskVideoInput.asm
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:16k
源码类别:

DSP编程

开发平台:

C/C++

  1. ;******************************************************************************
  2. ;* TMS320C6x C/C++ Codegen                                    PC Version 4.36 *
  3. ;* Date/Time created: Wed Mar 22 15:36:42 2006                                *
  4. ;******************************************************************************
  5. ;******************************************************************************
  6. ;* GLOBAL FILE PARAMETERS                                                     *
  7. ;*                                                                            *
  8. ;*   Architecture      : TMS320C64xx                                          *
  9. ;*   Optimization      : Enabled at level 3                                   *
  10. ;*   Optimizing for    : Speed                                                *
  11. ;*                       Based on options: -o3, no -ms                        *
  12. ;*   Endian            : Little                                               *
  13. ;*   Interrupt Thrshld : Disabled                                             *
  14. ;*   Memory Model      : Large                                                *
  15. ;*   Calls to RTS      : Far                                                  *
  16. ;*   Pipelining        : Enabled                                              *
  17. ;*   Speculative Load  : Enabled                                              *
  18. ;*   Memory Aliases    : Presume not aliases (optimistic)                     *
  19. ;*   Debug Info        : No Debug Info                                        *
  20. ;*                                                                            *
  21. ;******************************************************************************
  22. .asg A15, FP
  23. .asg B14, DP
  24. .asg B15, SP
  25. .global $bss
  26. _YArray: .usect ".far",691200,8
  27. _CbArray: .usect ".far",345600,8
  28. _CrArray: .usect ".far",345600,8
  29. .global _capChan
  30. _capChan: .usect ".far",4,4
  31. .global _capFrameBuf
  32. _capFrameBuf: .usect ".far",4,4
  33. ; c:tic6000cgtoolsbinopt6x.exe -t -DI0 -v6400 -q -O3 C:DOCUME~1ZHAOQI~1LOCALS~1TempTI1896_2 C:DOCUME~1ZHAOQI~1LOCALS~1TempTI1896_5 -w C:/ICETEK-DM642-C V2.22/jpeg_motion/obj/ 
  34. .sect ".text"
  35. .global _tskVideoInputStart
  36. ;******************************************************************************
  37. ;* FUNCTION NAME: _tskVideoInputStart                                         *
  38. ;*                                                                            *
  39. ;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
  40. ;*                           B7,B8,B9,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,*
  41. ;*                           A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20,B21, *
  42. ;*                           B22,B23,B24,B25,B26,B27,B28,B29,B30,B31          *
  43. ;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
  44. ;*                           B7,B8,B9,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,*
  45. ;*                           A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20,B21, *
  46. ;*                           B22,B23,B24,B25,B26,B27,B28,B29,B30,B31          *
  47. ;*   Local Frame Size  : 0 Args + 0 Auto + 4 Save = 4 byte                    *
  48. ;******************************************************************************
  49. _tskVideoInputStart:
  50. ;** --------------------------------------------------------------------------*
  51.            MVKL    .S2     _GIO_control,B5   ; |50| 
  52.            MVKH    .S2     _GIO_control,B5   ; |50| 
  53. ||         MVKL    .S1     _capChan,A3       ; |50| 
  54.            CALL    .S2     B5                ; |50| 
  55. ||         MVKH    .S1     _capChan,A3       ; |50| 
  56.            LDW     .D1T1   *A3,A4            ; |50| 
  57.            NOP             1
  58.            MVKL    .S2     0x10000004,B4     ; |50| 
  59.            MVKH    .S2     0x10000004,B4     ; |50| 
  60.            ZERO    .D1     A6                ; |50| 
  61. RL0:       ; CALL OCCURS                     ; |51| ; bypass _tskVideoInputStart upon return
  62. .sect ".text"
  63. .global _tskVideoInputInit
  64. ;******************************************************************************
  65. ;* FUNCTION NAME: _tskVideoInputInit                                          *
  66. ;*                                                                            *
  67. ;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
  68. ;*                           B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
  69. ;*                           A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
  70. ;*                           B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31      *
  71. ;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
  72. ;*                           B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
  73. ;*                           A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
  74. ;*                           B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31      *
  75. ;*   Local Frame Size  : 0 Args + 4 Auto + 4 Save = 8 byte                    *
  76. ;******************************************************************************
  77. _tskVideoInputInit:
  78. ;** --------------------------------------------------------------------------*
  79.            MVKL    .S1     _GIO_create,A3    ; |42| 
  80.            MVKL    .S1     _EVMDM642_I2C_hI2C,A4 ; |40| 
  81.            MVKH    .S1     _GIO_create,A3    ; |42| 
  82. ||         MVKL    .S2     _extHeap,B4       ; |39| 
  83.            MVKH    .S1     _EVMDM642_I2C_hI2C,A4 ; |40| 
  84. ||         MVKH    .S2     _extHeap,B4       ; |39| 
  85.            CALL    .S2X    A3                ; |42| 
  86. ||         LDW     .D1T1   *A4,A7            ; |40| 
  87. ||         LDW     .D2T2   *B4,B5            ; |39| 
  88. ||         MVKL    .S1     _EVMDM642_vCapParamsChan,A5 ; |42| 
  89.            MVKL    .S1     _EVMDM642_vCapParamsChan+72,A6 ; |39| 
  90.            MVKH    .S1     _EVMDM642_vCapParamsChan,A5 ; |42| 
  91.            MVKL    .S2     _EVMDM642_vCapParamsSAA7115+16,B4 ; |40| 
  92. ||         MVKH    .S1     _EVMDM642_vCapParamsChan+72,A6 ; |39| 
  93. ||         STW     .D2T2   B3,*SP--(8)       ; |35| 
  94.            MV      .D2X    A5,B6             ; |42| 
  95. ||         MVKH    .S2     _EVMDM642_vCapParamsSAA7115+16,B4 ; |40| 
  96. ||         MVKL    .S1     SL1+0,A4          ; |42| 
  97. ||         ZERO    .D1     A8                ; |42| 
  98.            ADDKPC  .S2     RL1,B3,0          ; |42| 
  99. ||         MVK     .L2     0x1,B4            ; |42| 
  100. ||         STW     .D2T1   A7,*B4            ; |40| 
  101. ||         ADD     .L1X    4,SP,A6           ; |42| 
  102. ||         STW     .D1T2   B5,*A6            ; |39| 
  103. ||         MVKH    .S1     SL1+0,A4          ; |42| 
  104. RL1:       ; CALL OCCURS                     ; |42| 
  105.            MVKL    .S1     _GIO_control,A3   ; |45| 
  106.            MVKL    .S2     _capChan,B5       ; |42| 
  107. ||         MVKH    .S1     _GIO_control,A3   ; |45| 
  108.            MVKL    .S2     _EVMDM642_vCapParamsSAA7115,B6 ; |45| 
  109.            CALL    .S2X    A3                ; |45| 
  110.            MVKH    .S2     _capChan,B5       ; |42| 
  111.            MVKL    .S2     0x80000001,B4     ; |45| 
  112.            MVKH    .S2     _EVMDM642_vCapParamsSAA7115,B6 ; |45| 
  113.            MVKH    .S2     0x80000001,B4     ; |45| 
  114.            ADDKPC  .S2     RL2,B3,0          ; |45| 
  115. ||         MV      .D1X    B6,A6             ; |45| 
  116. ||         STW     .D2T1   A4,*B5            ; |42| 
  117. RL2:       ; CALL OCCURS                     ; |45| 
  118.            LDW     .D2T2   *++SP(8),B3       ; |46| 
  119.            NOP             4
  120.            RETNOP  .S2     B3,5              ; |46| 
  121.            ; BRANCH OCCURS                   ; |46| 
  122. .sect ".text"
  123. .global _tskVideoInput
  124. ;******************************************************************************
  125. ;* FUNCTION NAME: _tskVideoInput                                              *
  126. ;*                                                                            *
  127. ;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,   *
  128. ;*                           A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,   *
  129. ;*                           B13,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,  *
  130. ;*                           A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20,B21, *
  131. ;*                           B22,B23,B24,B25,B26,B27,B28,B29,B30,B31          *
  132. ;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,   *
  133. ;*                           A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,   *
  134. ;*                           B13,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,  *
  135. ;*                           A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20,B21, *
  136. ;*                           B22,B23,B24,B25,B26,B27,B28,B29,B30,B31          *
  137. ;*   Local Frame Size  : 0 Args + 64 Auto + 44 Save = 108 byte                *
  138. ;******************************************************************************
  139. _tskVideoInput:
  140. ;** --------------------------------------------------------------------------*
  141.            MVKL    .S1     _SCOM_open,A3     ; |63| 
  142.            MVKH    .S1     _SCOM_open,A3     ; |63| 
  143.            MV      .D1X    SP,A31            ; |55| 
  144.            CALL    .S2X    A3                ; |63| 
  145.            STW     .D2T1   A15,*SP--(112)    ; |55| 
  146.            STDW    .D1T1   A13:A12,*-A31(32)
  147.            STDW    .D2T2   B13:B12,*+SP(104)
  148.            STDW    .D1T1   A11:A10,*-A31(40)
  149. ||         STDW    .D2T2   B11:B10,*+SP(96)
  150. ||         MVKL    .S1     SL2+0,A4          ; |63| 
  151.            ADDKPC  .S2     RL3,B3,0          ; |63| 
  152. ||         STW     .D2T2   B3,*+SP(92)
  153. ||         STW     .D1T1   A14,*-A31(24)
  154. ||         MVKH    .S1     SL2+0,A4          ; |63| 
  155. RL3:       ; CALL OCCURS                     ; |63| 
  156.            MVKL    .S1     _SCOM_open,A3     ; |64| 
  157.            MVKH    .S1     _SCOM_open,A3     ; |64| 
  158.            MV      .D1     A4,A15            ; |63| 
  159.            CALL    .S2X    A3                ; |64| 
  160.            MVKL    .S1     SL3+0,A4          ; |64| 
  161.            ADDKPC  .S2     RL4,B3,2          ; |64| 
  162.            MVKH    .S1     SL3+0,A4          ; |64| 
  163. RL4:       ; CALL OCCURS                     ; |64| 
  164.            MVKL    .S2     _GIO_submit,B5    ; |66| 
  165.            MVKH    .S2     _GIO_submit,B5    ; |66| 
  166. ||         MVKL    .S1     _capChan,A3       ; |66| 
  167.            MVKH    .S1     _capChan,A3       ; |66| 
  168. ||         CALL    .S2     B5                ; |66| 
  169.            LDW     .D1T1   *A3,A4            ; |66| 
  170. ||         MV      .S1     A4,A14            ; |64| 
  171.            MVKL    .S2     _capFrameBuf,B10  ; |66| 
  172.            MVKH    .S2     _capFrameBuf,B10  ; |66| 
  173.            MVK     .S2     0x80,B4           ; |66| 
  174.            ZERO    .D2     B6                ; |66| 
  175. ||         ZERO    .S1     A8                ; |66| 
  176. ||         MV      .D1X    B10,A6            ; |66| 
  177. ||         ADDKPC  .S2     RL5,B3,0          ; |66| 
  178. RL5:       ; CALL OCCURS                     ; |66| 
  179.            MVKL    .S2     _YArray,B4
  180.            MVKL    .S2     _utlstsCapTime,B6
  181.            MVKH    .S2     _YArray,B4
  182.            MVKH    .S2     _utlstsCapTime,B6
  183.            MV      .D2     B4,B11
  184. ||         MVKL    .S1     _CbArray,A3
  185.            ADDAW   .D2     SP,9,B4           ; |68| 
  186. ||         MV      .D1X    B6,A11
  187. ||         MVKH    .S1     _CbArray,A3
  188. ||         MVKL    .S2     _CrArray,B5
  189.            MV      .D1X    B10,A13           ; |66| 
  190. ||         MVKL    .S1     _utlstsCycleTime,A12
  191. ||         MVKH    .S2     _CrArray,B5
  192.            MV      .S2     B5,B13
  193. ||         MVKH    .S1     _utlstsCycleTime,A12
  194. ||         MV      .D1X    B4,A10            ; |68| Define a twin register
  195. ||         MV      .D2X    A3,B12
  196.            MVKL    .S1     _UTL_stsStartFunc,A3
  197.            MVKH    .S1     _UTL_stsStartFunc,A3
  198.            NOP             1
  199. ;*----------------------------------------------------------------------------*
  200. ;*   SOFTWARE PIPELINE INFORMATION
  201. ;*      Disqualified loop: Loop contains a call
  202. ;*----------------------------------------------------------------------------*
  203. L1:    
  204.            CALL    .S2X    A3
  205.            ADDKPC  .S2     RL6,B3,3
  206.            MV      .D1     A11,A4
  207. RL6:       ; CALL OCCURS   
  208.            MVKL    .S1     _capFrameBuf,A3   ; |76| 
  209.            MVKH    .S1     _capFrameBuf,A3   ; |76| 
  210.            LDW     .D1T1   *A3,A3            ; |76| 
  211.            ADD     .D2     SP,24,B4          ; |84| 
  212.            MVK     .S2     0x1e0,B6
  213.            MVK     .S1     0x2d0,A6
  214.            MV      .D1X    B4,A4             ; |84| 
  215.            LDW     .D1T1   *+A3(8),A7        ; |76| 
  216.            NOP             3
  217.            ADD     .L2     8,SP,B4           ; |84| 
  218.            MVKL    .S1     _yuv422to420,A7   ; |84| 
  219. ||         STW     .D2T1   A7,*+SP(24)       ; |76| 
  220.            MVKH    .S1     _yuv422to420,A7   ; |84| 
  221.            LDW     .D1T1   *+A3(12),A5       ; |77| 
  222.            LDW     .D1T1   *+A3(16),A3       ; |78| 
  223. ||         CALL    .S2X    A7                ; |84| 
  224.            STW     .D2T2   B11,*+SP(8)       ; |80| 
  225.            STW     .D2T2   B12,*+SP(12)      ; |81| 
  226.            STW     .D2T2   B13,*+SP(16)      ; |82| 
  227.            STW     .D2T1   A5,*+SP(28)       ; |77| 
  228.            ADDKPC  .S2     RL7,B3,0          ; |84| 
  229. ||         STW     .D2T1   A3,*+SP(32)       ; |78| 
  230. RL7:       ; CALL OCCURS                     ; |84| 
  231.            MVKL    .S2     _UTL_stsStopFunc,B4
  232.            MVKH    .S2     _UTL_stsStopFunc,B4
  233.            CALL    .S2     B4
  234.            ADDKPC  .S2     RL8,B3,3
  235.            MV      .D1     A11,A4
  236. RL8:       ; CALL OCCURS   
  237.            MVKL    .S1     _SCOM_putMsg,A3   ; |91| 
  238.            MVKH    .S1     _SCOM_putMsg,A3   ; |91| 
  239.            STW     .D1T2   B12,*+A10(24)     ; |89| 
  240.            CALL    .S2X    A3                ; |91| 
  241.            MV      .D2X    A10,B4            ; |91| 
  242.            MV      .S1     A15,A4            ; |91| 
  243.            STW     .D1T2   B13,*+A10(28)     ; |90| 
  244.            STW     .D1T2   B11,*+A10(20)     ; |88| 
  245.            ADDKPC  .S2     RL9,B3,0          ; |91| 
  246. RL9:       ; CALL OCCURS                     ; |91| 
  247.            MVKL    .S1     _UTL_stsPeriodFunc,A3
  248.            MVKH    .S1     _UTL_stsPeriodFunc,A3
  249.            MV      .D1     A12,A4
  250.            CALL    .S2X    A3
  251.            ADDKPC  .S2     RL10,B3,4
  252. RL10:      ; CALL OCCURS   
  253.            MVKL    .S1     _GIO_submit,A3    ; |96| 
  254.            MVKL    .S2     _capChan,B5       ; |96| 
  255. ||         MVKH    .S1     _GIO_submit,A3    ; |96| 
  256.            MVKH    .S2     _capChan,B5       ; |96| 
  257.            CALL    .S2X    A3                ; |96| 
  258.            LDW     .D2T1   *B5,A4            ; |96| 
  259.            MVK     .S2     0x82,B4
  260.            MV      .S1     A13,A6            ; |96| 
  261.            ZERO    .D1     A8                ; |96| 
  262.            ZERO    .D2     B6                ; |96| 
  263. ||         ADDKPC  .S2     RL11,B3,0         ; |96| 
  264. RL11:      ; CALL OCCURS                     ; |96| 
  265.            MVKL    .S2     _SCOM_getMsg,B5   ; |98| 
  266.            MVKH    .S2     _SCOM_getMsg,B5   ; |98| 
  267.            CALL    .S2     B5                ; |98| 
  268.            MV      .D1     A14,A4            ; |98| 
  269.            MVK     .D2     0xffffffff,B4
  270.            ADDKPC  .S2     RL12,B3,2         ; |98| 
  271. RL12:      ; CALL OCCURS                     ; |98| 
  272.            BNOP    .S1     L1,2              ; |99| 
  273.            MVKL    .S1     _UTL_stsStartFunc,A3
  274. ||         MV      .D1     A4,A10            ; |98| 
  275.            MVKH    .S1     _UTL_stsStartFunc,A3
  276.            NOP             1
  277.            ; BRANCH OCCURS                   ; |99| 
  278. ;******************************************************************************
  279. ;* STRINGS                                                                    *
  280. ;******************************************************************************
  281. .sect ".const"
  282. SL1: .string "/VP0CAPTURE/A/0",0
  283. SL2: .string "INTOPROC",0
  284. SL3: .string "PROCTOIN",0
  285. ;******************************************************************************
  286. ;* UNDEFINED EXTERNAL REFERENCES                                              *
  287. ;******************************************************************************
  288. .global _SCOM_open
  289. .global _SCOM_putMsg
  290. .global _SCOM_getMsg
  291. .global _UTL_stsStartFunc
  292. .global _UTL_stsStopFunc
  293. .global _UTL_stsPeriodFunc
  294. .global _GIO_control
  295. .global _GIO_create
  296. .global _GIO_submit
  297. .global _yuv422to420
  298. .global _EVMDM642_I2C_hI2C
  299. .global _EVMDM642_vCapParamsChan
  300. .global _EVMDM642_vCapParamsSAA7115
  301. .global _extHeap
  302. .global _utlstsCapTime
  303. .global _utlstsCycleTime