Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. #define M_PIXEL_SHIFT .DB %00110111, $CB,$11,$17,$29
  2.  
  3. Sprite_Copy_Mask:
  4.  
  5. _DoSprite5:
  6. DI
  7. LD (_save5),SP
  8. LD SP,HL
  9. SLA E
  10. SLA E
  11. LD L,E
  12. LD H,0
  13. LD D,H
  14. ADD HL,HL
  15. ADD HL,DE
  16. LD E,A
  17. SRA E
  18. SRA E
  19. SRA E
  20. JP P,_Pos5
  21. DEC D
  22. _Pos5:
  23. ADD HL,DE
  24. LD DE,PlotSScreen
  25. ADD HL,DE
  26.  
  27. AND 7
  28. JR Z,_Aligned5
  29. DEC A
  30. LD C, A
  31. ADD A,A
  32. ADD A,A
  33.  
  34. ADD A, C
  35. LD (_Jump5),A
  36.  
  37. _Loop5:
  38. POP DE
  39. XOR A
  40. LD C,D
  41. LD D,A
  42. DEC A
  43. EX DE,HL
  44. _Jump5 =$+1
  45. JR $
  46. M_PIXEL_SHIFT
  47. M_PIXEL_SHIFT
  48. M_PIXEL_SHIFT
  49. M_PIXEL_SHIFT
  50. M_PIXEL_SHIFT
  51. M_PIXEL_SHIFT
  52. M_PIXEL_SHIFT
  53.  
  54.  
  55. EX DE,HL
  56. push af
  57. ld a, d
  58. MaskedClip1:
  59.  
  60. ld d, a
  61. ld a, e
  62. MaskedClip2:
  63.  
  64. ld e, a
  65. pop af
  66.  
  67.  
  68. MaskedClip3:
  69.  
  70. AND (HL)
  71. XOR D
  72. _ClipLeft5:
  73. LD (HL),A
  74. INC HL
  75. LD A,C
  76. MaskedClip4:
  77.  
  78. AND (HL)
  79. XOR E
  80. _ClipRight5:
  81. LD (HL),A
  82. LD DE,11
  83. ADD HL,DE
  84. WideMask2:
  85.  
  86. ;May need to pop de again
  87.  
  88. nop
  89. DJNZ _Loop5
  90.  
  91. _Done5:
  92. LD (IX),$77
  93. _save5 =$+1
  94. LD SP,0
  95. RET
  96.  
  97. _Aligned5:
  98. LD DE,12
  99. LD A,B
  100. _ALoop5:
  101. POP BC
  102.  
  103. EX AF,AF'
  104. LD A,(HL)
  105. AND B
  106. XOR C
  107. LD (HL),A
  108. WideMask:
  109.  
  110. ;May need to pop bc again
  111.  
  112. nop
  113. ADD HL,DE
  114. EX AF,AF'
  115. DEC A
  116. JP NZ,_ALoop5
  117. JP _Done5
  118. nop
  119.  
  120. End_Sprite_Copy_Mask:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement