Advertisement
AnthonyCagliano

Untitled

Jan 19th, 2017
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1. call DrawScreen
  2. GameStart:
  3. ld a, 0
  4. KeyGetLoop:
  5. ld hl, $F50000 \ ld a, 1
  6. ld (hl), a ; Set indiscriminate scan mode
  7. nop \ nop
  8. Key_WaitLoop
  9. ld hl, $f50008
  10. bit 2, (hl) \ jr nz, Key_WaitLoop
  11. call _kbdscan
  12. ld a, (kbdScanCode)
  13. push af
  14. ld hl, $F50000 \ ld a, 1
  15. ld (hl), a ; Set indiscriminate scan mode
  16. nop \ nop
  17. Key_WaitRelease:
  18. ld hl, $f50008
  19. bit 2, (hl) \ jr z, Key_WaitRelease
  20. pop af
  21. ; keypad reading
  22. ld hl, playsAllowedFlags
  23. bit playRoll, (hl)
  24. jr z, noRolls
  25. cp sk2nd
  26. jp z, RollDie
  27. cp skYequ \ jp z, holdDie
  28. cp skWindow \ jp z, holdDie
  29. cp skZoom \ jp z, holdDie
  30. cp skTrace \ jp z, holdDie
  31. cp skGraph \ jp z, holdDie
  32. bit playScore, (hl)
  33. jr z, noScores
  34. noRolls:
  35. ; Scoring
  36. bit playScore, (hl)
  37. jr z, noScores
  38. cp skDown
  39. jp z, SwapRow
  40. cp skUp
  41. jp z, SwapRow
  42. cp skRight
  43. jp z, MoveRight
  44. cp skLeft
  45. jp z, MoveLeft
  46. cp skEnter
  47. jp z, ScoreCombo
  48. noScores:
  49. cp skClear
  50. jp z, Quit
  51. jp KeyGetLoop
  52.  
  53. GameLoop_End:
  54. call CalcCurrentScore
  55. ld hl, comboFlags1 \ ld a, (hl)
  56. cp %00111111 \ jp nz, GameStart
  57. ld hl, comboFlags2 \ ld a, (hl)
  58. cp %01111111 \ jp nz, GameStart
  59. jr GameOver
  60. ; exit game conditions
  61. jp GameStart
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement