Want more features on Pastebin? Sign Up, it's FREE!
Guest

mcuelenaere

By: a guest on Jan 29th, 2008  |  syntax: ASM (NASM)  |  size: 2.79 KB  |  views: 498  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. init_other_IO_OSD_values
  2. regstart = R12
  3. MOV     regstart, #IO_VID_ENC_VMOD ; Rd = Op2
  4. LDR     R1, =0xFFFF8C00 ; Load from Memory
  5. LDRH    R0, [regstart]  ; IO_VID_ENC_VMOD
  6. AND     R0, R1, R0      ; Rd = Op1 & Op2
  7. ORR     R0, R0, #0x14   ; Rd = Op1 | Op2
  8. ORR     R0, R0, #0x2400 ; Rd = Op1 | Op2
  9. STRH    R0, [regstart]  ; IO_VID_ENC_VMOD
  10. LDR     R1, =0xFFFFCFE8 ; Load from Memory
  11. LDRH    R0, [regstart,#2] ; IO_VID_ENC_VDCTL
  12. AND     R0, R1, R0      ; Rd = Op1 & Op2
  13. ORR     R0, R0, #0x20   ; Rd = Op1 | Op2
  14. ORR     R0, R0, #0x4000 ; Rd = Op1 | Op2
  15. STRH    R0, [regstart,#2] ; IO_VID_ENC_VDCTL
  16. LDRH    R0, [regstart,#4] ; IO_VID_ENC_VDPRO
  17. MOV     R0, #0x800      ; Rd = Op2
  18. STRH    R0, [regstart,#4] ; IO_VID_ENC_VDPRO
  19. LDRH    R0, [regstart,#6] ; IO_VID_ENC_SYNCCTL
  20. MOV     R0, R0,ASR#13   ; Rd = Op2
  21. MOV     R0, R0,LSL#13   ; Rd = Op2
  22. ORR     R0, R0, #0xC    ; Rd = Op1 | Op2
  23. STRH    R0, [regstart,#6] ; IO_VID_ENC_SYNCCTL
  24. MOV     R0, #0          ; Rd = Op2
  25. STRH    R0, [regstart,#0x18] ; IO_VID_ENC_HSDLY
  26. MOV     R1, #0x12       ; Rd = Op2
  27. STRH    R1, [regstart,#8] ; IO_VID_ENC_HSPLS
  28. MOV     R1, #0x1B       ; Rd = Op2
  29. STRH    R1, [regstart,#0xE] ; IO_VID_ENC_HSTART
  30. MOV     R1, #0x140      ; Rd = Op2
  31. STRH    R1, [regstart,#0x10] ; IO_VID_ENC_HVALID
  32. MOV     R1, #0x168      ; Rd = Op2
  33. STRH    R1, [regstart,#0xC] ; IO_VID_ENC_HINT
  34. STRH    R0, [regstart,#0x1A] ; IO_VID_ENC_VSDLY
  35. MOV     R1, #3          ; Rd = Op2
  36. STRH    R1, [regstart,#0xA] ; IO_VID_ENC_VSPLS
  37. MOV     R1, #5          ; Rd = Op2
  38. STRH    R1, [regstart,#0x14] ; IO_VID_ENC_VSTART
  39. MOV     R1, #0xF0 ; '' ; Rd = Op2
  40. STRH    R1, [regstart,#0x16] ; IO_VID_ENC_VVALID
  41. MOV     R1, #0x118      ; Rd = Op2
  42. STRH    R1, [regstart,#0x12] ; IO_VID_ENC_VINT
  43. LDR     R2, =0xFFFFF088 ; Load from Memory
  44. LDRH    R1, [regstart,#0x1E] ; IO_VID_ENC_RGBCTL
  45. AND     R1, R2, R1      ; Rd = Op1 & Op2
  46. ORR     R1, R1, #0x400  ; Rd = Op1 | Op2
  47. STRH    R1, [regstart,#0x1E] ; IO_VID_ENC_RGBCTL
  48. LDRH    R1, [regstart,#0x20] ; IO_VID_ENC_RGBCLP
  49. MOV     R1, #0xFF00     ; Rd = Op2
  50. STRH    R1, [regstart,#0x20] ; IO_VID_ENC_RGBCLP
  51. LDRH    R1, [regstart,#0x26] ; IO_VID_ENC_LCDOUT
  52. MOV     R1, R1,ASR#9    ; Rd = Op2
  53. MOV     R1, R1,LSL#9    ; Rd = Op2
  54. ORR     R1, R1, #1      ; Rd = Op1 | Op2
  55. ORR     R1, R1, #0x100  ; IO_VID_ENC_LCDOUT = 0x0101
  56. STRH    R1, [regstart,#0x26] ; IO_VID_ENC_LCDOUT
  57. LDR     R2, =0xFFFFC0C0 ; Load from Memory
  58. LDRH    R1, [regstart,#0x32] ; IO_VID_ENC_DCLKCTL
  59. AND     R1, R2, R1      ; Rd = Op1 & Op2
  60. ORR     R1, R1, #0x800  ; Rd = Op1 | Op2
  61. STRH    R1, [regstart,#0x32] ; IO_VID_ENC_DCLKCTL
  62. MOV     R1, #1          ; Rd = Op2
  63. STRH    R1, [regstart,#0x34] ; IO_VID_ENC_DCLKPTN0
  64. STRH    R0, [regstart,#0x64] ; IO_VID_ENC_UNKNOWN
  65. BX      LR              ; Branch to/from Thumb mode
  66. ; End of function init_other_IO_OSD_values
clone this paste RAW Paste Data