interrupt.z80 581 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. ; Grammer's Interrupt Service Routine (ISR)
  2. Interrupt:
  3. push af
  4. push bc
  5. push de
  6. push hl
  7. in a, (4)
  8. cpl
  9. out (3),a
  10. cpl
  11. out (3),a
  12. rra ;bit 0
  13. call c,interruptON
  14. rra ;bit 1
  15. call c,interruptTimer1
  16. rra ;bit 2
  17. call c,interruptTimer2
  18. rra ;bit 3
  19. rra ;bit 4
  20. ; call c,interruptLink
  21. call getKey_interrupt
  22. ; bit inthook,(iy+34)
  23. ; call z,gHook
  24. pop hl
  25. pop de
  26. pop bc
  27. pop af
  28. ei
  29. ret
  30. ;gHook:
  31. ;runs the Grammer code set to interrupt
  32. ; ret
  33. interruptON:
  34. ret
  35. interruptTimer1:
  36. ret
  37. interruptTimer2:
  38. ret
  39. getKey_interrupt:
  40. ret