lr35902ish racket
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

179 lines
1.6KB

  1. -- List of Opcodes Sorted by Function --
  2. --- Registers ---
  3. 0: B
  4. 1: C
  5. 2: D
  6. 3: E
  7. 4: H
  8. 5: L
  9. 6: (HL)
  10. 7: A
  11. --- Control Codes ---
  12. 'UNCOND: No condition
  13. 0: NZ
  14. 1: Z
  15. 2: NC
  16. 3: C
  17. --- Racket Implementation ---
  18. '(NOP)
  19. '(STOP)
  20. '(RLCA)
  21. '(RRCA)
  22. '(RLA)
  23. '(RRA)
  24. '(DAA)
  25. '(CPL)
  26. '(SCF)
  27. '(CCF)
  28. '(EI)
  29. '(DI)
  30. '(Prefix)
  31. '(Removed)
  32. '(RST #x10)
  33. '(16b-ld-regp-imm 3 #xFFE0) ; uses lookup table for regp
  34. --- Misc ---
  35. NOP
  36. STOP
  37. RLCA
  38. RRCA
  39. RLA
  40. RRA
  41. DAA
  42. CPL
  43. SCF
  44. CCF
  45. EI
  46. DI
  47. CB-Prefix
  48. Removed
  49. rst-vec:
  50. RST $0000
  51. --- LDs ---
  52. 16b-ld-indimm-regp:
  53. LD ($XXYY), SP
  54. 16b-ld-regp-imm:
  55. LD BC, $XXYY
  56. 8b-ld-indregp-a:
  57. LD (BC), A
  58. 8b-ld-a-indregp:
  59. LD A, (BC)
  60. 8b-ldi-a-indregp:
  61. LD A, (HL+)
  62. 8b-ldi-indregp-a:
  63. 8b-ldd-a-indregp:
  64. 8b-ldd-indregp-a:
  65. 8b-ld-reg-imm:
  66. 8b-ld-reg-reg:
  67. 8b-ldh-imm-a:
  68. 8b-ldh-a-imm:
  69. 16b-ld-HL-SP+d:
  70. 16b-ld-SP-HL:
  71. 8b-ldh-c-a:
  72. 8b-ldh-a-c:
  73. 8b-ld-indimm-a:
  74. 8b-ld-a-indimm:
  75. --- ALU ---
  76. 8b-and-imm:
  77. 8b-adc-imm:
  78. 8b-sub-imm:
  79. 8b-sbc-imm:
  80. 8b-and-imm:
  81. 8b-xor-imm:
  82. 8b-or-imm:
  83. 8b-cp-imm:
  84. 8b-add-a-reg:
  85. 8b-adc-a-reg:
  86. 8b-sub-a-reg:
  87. 8b-sbc-a-reg:
  88. 8b-and-reg:
  89. 8b-xor-reg:
  90. 8b-or-reg:
  91. 8b-cp-reg:
  92. 8b-inc:
  93. 8b-dec:
  94. 16b-inc:
  95. 16b-dec:
  96. 16b-add-regp-regp:
  97. ADD HL, BC (HL only)
  98. --- Jumps ---
  99. jp-relative:
  100. JR [uncond], $d
  101. JR NZ, $d
  102. JR Z, $d
  103. JR NC, $d
  104. JR C, $d
  105. ret:
  106. RET (uncond)
  107. RET NZ
  108. RET Z
  109. RET NC
  110. RET C
  111. reti:
  112. RETI
  113. jp-regp:
  114. JP HL
  115. jp-imm:
  116. JP (uncond), $XXYY
  117. JP NZ, $XXYY
  118. call-imm:
  119. CALL (uncond), $XXYY
  120. CALL NZ, $XXYY
  121. --- Stack ---
  122. 16b-pop:
  123. POP BC
  124. 16b-push:
  125. PUSH BC
  126. --- CB Prefix ---
  127. 8b-rlc-reg:
  128. 8b-rrc-reg:
  129. 8b-rl-reg:
  130. 8b-rr-reg:
  131. 8b-sla-reg:
  132. 8b-sra-reg:
  133. 8b-swap-reg:
  134. 8b-srl-reg:
  135. 8b-bit-x-reg:
  136. 8b-res-x-reg:
  137. 8b-set-x-reg: