sprite8.s 750 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. .file "sprite8.c"
  2. #NO_APP
  3. .text
  4. tigcc_compiled.:
  5. #APP
  6. .set _A_LINE,0xA000
  7. #NO_APP
  8. .text
  9. .even
  10. .globl Sprite8
  11. Sprite8:
  12. movm.l #0x1c20,-(%sp)
  13. move.w %d2,%d4
  14. move.l %a0,%a2
  15. muls.w #30,%d1
  16. lea (%a1,%d1.w),%a0
  17. move.w %d0,%d1
  18. asr.w #3,%d1
  19. and.l #65534,%d1
  20. add.l %d1,%a0
  21. and.w #15,%d0
  22. moveq.l #24,%d5
  23. sub.w %d0,%d5
  24. jbra .L2
  25. .even
  26. .L10:
  27. clr.w %d0
  28. move.b (%a2)+,%d0
  29. move.w %d5,%d2
  30. ext.l %d2
  31. move.l (%a0),%d1
  32. lea (30,%a0),%a1
  33. cmp.w #2,%d3
  34. jbne .L6
  35. not.w %d0
  36. and.l #0xFF,%d0
  37. lsl.l %d2,%d0
  38. not.l %d0
  39. and.l %d0,%d1
  40. jbra .L11
  41. .even
  42. .L6:
  43. and.l #0xFF,%d0
  44. lsl.l %d2,%d0
  45. tst.w %d3
  46. jbne .L8
  47. eor.l %d0,%d1
  48. jbra .L11
  49. .even
  50. .L8:
  51. or.l %d0,%d1
  52. .L11:
  53. move.l %d1,(%a0)
  54. move.l %a1,%a0
  55. .L2:
  56. dbra %d4,.L10
  57. movm.l (%sp)+,#0x438
  58. rts