An emulator, assembler, and disassembler for the Sega Game Gear
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

1298 lignes
56 KiB

  1. /* Copyright (C) 2014-2016 Ben Kurtovic <ben.kurtovic@gmail.com>
  2. Released under the terms of the MIT License. See LICENSE for details. */
  3. static DispatchTable instruction_table = {
  4. [0x00] = z80_inst_nop,
  5. [0x01] = z80_inst_ld_dd_nn,
  6. [0x02] = z80_inst_unimplemented, // TODO
  7. [0x03] = z80_inst_inc_ss,
  8. [0x04] = z80_inst_inc_r,
  9. [0x05] = z80_inst_unimplemented, // TODO
  10. [0x06] = z80_inst_ld_r_n,
  11. [0x07] = z80_inst_unimplemented, // TODO
  12. [0x08] = z80_inst_unimplemented, // TODO
  13. [0x09] = z80_inst_unimplemented, // TODO
  14. [0x0A] = z80_inst_unimplemented, // TODO
  15. [0x0B] = z80_inst_unimplemented, // TODO
  16. [0x0C] = z80_inst_inc_r,
  17. [0x0D] = z80_inst_unimplemented, // TODO
  18. [0x0E] = z80_inst_ld_r_n,
  19. [0x0F] = z80_inst_unimplemented, // TODO
  20. [0x10] = z80_inst_unimplemented, // TODO
  21. [0x11] = z80_inst_ld_dd_nn,
  22. [0x12] = z80_inst_unimplemented, // TODO
  23. [0x13] = z80_inst_inc_ss,
  24. [0x14] = z80_inst_inc_r,
  25. [0x15] = z80_inst_unimplemented, // TODO
  26. [0x16] = z80_inst_ld_r_n,
  27. [0x17] = z80_inst_unimplemented, // TODO
  28. [0x18] = z80_inst_jr_e,
  29. [0x19] = z80_inst_unimplemented, // TODO
  30. [0x1A] = z80_inst_unimplemented, // TODO
  31. [0x1B] = z80_inst_unimplemented, // TODO
  32. [0x1C] = z80_inst_inc_r,
  33. [0x1D] = z80_inst_unimplemented, // TODO
  34. [0x1E] = z80_inst_ld_r_n,
  35. [0x1F] = z80_inst_unimplemented, // TODO
  36. [0x20] = z80_inst_jr_cc_e,
  37. [0x21] = z80_inst_ld_dd_nn,
  38. [0x22] = z80_inst_unimplemented, // TODO
  39. [0x23] = z80_inst_inc_ss,
  40. [0x24] = z80_inst_inc_r,
  41. [0x25] = z80_inst_unimplemented, // TODO
  42. [0x26] = z80_inst_ld_r_n,
  43. [0x27] = z80_inst_unimplemented, // TODO
  44. [0x28] = z80_inst_jr_cc_e,
  45. [0x29] = z80_inst_unimplemented, // TODO
  46. [0x2A] = z80_inst_unimplemented, // TODO
  47. [0x2B] = z80_inst_unimplemented, // TODO
  48. [0x2C] = z80_inst_inc_r,
  49. [0x2D] = z80_inst_unimplemented, // TODO
  50. [0x2E] = z80_inst_ld_r_n,
  51. [0x2F] = z80_inst_unimplemented, // TODO
  52. [0x30] = z80_inst_jr_cc_e,
  53. [0x31] = z80_inst_ld_dd_nn,
  54. [0x32] = z80_inst_ld_nn_a,
  55. [0x33] = z80_inst_inc_ss,
  56. [0x34] = z80_inst_unimplemented, // TODO
  57. [0x35] = z80_inst_unimplemented, // TODO
  58. [0x36] = z80_inst_ld_hl_n,
  59. [0x37] = z80_inst_unimplemented, // TODO
  60. [0x38] = z80_inst_jr_cc_e,
  61. [0x39] = z80_inst_unimplemented, // TODO
  62. [0x3A] = z80_inst_unimplemented, // TODO
  63. [0x3B] = z80_inst_unimplemented, // TODO
  64. [0x3C] = z80_inst_inc_r,
  65. [0x3D] = z80_inst_unimplemented, // TODO
  66. [0x3E] = z80_inst_ld_r_n,
  67. [0x3F] = z80_inst_unimplemented, // TODO
  68. [0x40] = z80_inst_ld_r_r,
  69. [0x41] = z80_inst_ld_r_r,
  70. [0x42] = z80_inst_ld_r_r,
  71. [0x43] = z80_inst_ld_r_r,
  72. [0x44] = z80_inst_ld_r_r,
  73. [0x45] = z80_inst_ld_r_r,
  74. [0x46] = z80_inst_ld_r_hl,
  75. [0x47] = z80_inst_ld_r_r,
  76. [0x48] = z80_inst_ld_r_r,
  77. [0x49] = z80_inst_ld_r_r,
  78. [0x4A] = z80_inst_ld_r_r,
  79. [0x4B] = z80_inst_ld_r_r,
  80. [0x4C] = z80_inst_ld_r_r,
  81. [0x4D] = z80_inst_ld_r_r,
  82. [0x4E] = z80_inst_ld_r_hl,
  83. [0x4F] = z80_inst_ld_r_r,
  84. [0x50] = z80_inst_ld_r_r,
  85. [0x51] = z80_inst_ld_r_r,
  86. [0x52] = z80_inst_ld_r_r,
  87. [0x53] = z80_inst_ld_r_r,
  88. [0x54] = z80_inst_ld_r_r,
  89. [0x55] = z80_inst_ld_r_r,
  90. [0x56] = z80_inst_ld_r_hl,
  91. [0x57] = z80_inst_ld_r_r,
  92. [0x58] = z80_inst_ld_r_r,
  93. [0x59] = z80_inst_ld_r_r,
  94. [0x5A] = z80_inst_ld_r_r,
  95. [0x5B] = z80_inst_ld_r_r,
  96. [0x5C] = z80_inst_ld_r_r,
  97. [0x5D] = z80_inst_ld_r_r,
  98. [0x5E] = z80_inst_ld_r_hl,
  99. [0x5F] = z80_inst_ld_r_r,
  100. [0x60] = z80_inst_ld_r_r,
  101. [0x61] = z80_inst_ld_r_r,
  102. [0x62] = z80_inst_ld_r_r,
  103. [0x63] = z80_inst_ld_r_r,
  104. [0x64] = z80_inst_ld_r_r,
  105. [0x65] = z80_inst_ld_r_r,
  106. [0x66] = z80_inst_ld_r_hl,
  107. [0x67] = z80_inst_ld_r_r,
  108. [0x68] = z80_inst_ld_r_r,
  109. [0x69] = z80_inst_ld_r_r,
  110. [0x6A] = z80_inst_ld_r_r,
  111. [0x6B] = z80_inst_ld_r_r,
  112. [0x6C] = z80_inst_ld_r_r,
  113. [0x6D] = z80_inst_ld_r_r,
  114. [0x6E] = z80_inst_ld_r_hl,
  115. [0x6F] = z80_inst_ld_r_r,
  116. [0x70] = z80_inst_unimplemented, // TODO
  117. [0x71] = z80_inst_unimplemented, // TODO
  118. [0x72] = z80_inst_unimplemented, // TODO
  119. [0x73] = z80_inst_unimplemented, // TODO
  120. [0x74] = z80_inst_unimplemented, // TODO
  121. [0x75] = z80_inst_unimplemented, // TODO
  122. [0x76] = z80_inst_halt,
  123. [0x77] = z80_inst_unimplemented, // TODO
  124. [0x78] = z80_inst_ld_r_r,
  125. [0x79] = z80_inst_ld_r_r,
  126. [0x7A] = z80_inst_ld_r_r,
  127. [0x7B] = z80_inst_ld_r_r,
  128. [0x7C] = z80_inst_ld_r_r,
  129. [0x7D] = z80_inst_ld_r_r,
  130. [0x7E] = z80_inst_ld_r_hl,
  131. [0x7F] = z80_inst_ld_r_r,
  132. [0x80] = z80_inst_unimplemented, // TODO
  133. [0x81] = z80_inst_unimplemented, // TODO
  134. [0x82] = z80_inst_unimplemented, // TODO
  135. [0x83] = z80_inst_unimplemented, // TODO
  136. [0x84] = z80_inst_unimplemented, // TODO
  137. [0x85] = z80_inst_unimplemented, // TODO
  138. [0x86] = z80_inst_unimplemented, // TODO
  139. [0x87] = z80_inst_unimplemented, // TODO
  140. [0x88] = z80_inst_unimplemented, // TODO
  141. [0x89] = z80_inst_unimplemented, // TODO
  142. [0x8A] = z80_inst_unimplemented, // TODO
  143. [0x8B] = z80_inst_unimplemented, // TODO
  144. [0x8C] = z80_inst_unimplemented, // TODO
  145. [0x8D] = z80_inst_unimplemented, // TODO
  146. [0x8E] = z80_inst_unimplemented, // TODO
  147. [0x8F] = z80_inst_unimplemented, // TODO
  148. [0x90] = z80_inst_unimplemented, // TODO
  149. [0x91] = z80_inst_unimplemented, // TODO
  150. [0x92] = z80_inst_unimplemented, // TODO
  151. [0x93] = z80_inst_unimplemented, // TODO
  152. [0x94] = z80_inst_unimplemented, // TODO
  153. [0x95] = z80_inst_unimplemented, // TODO
  154. [0x96] = z80_inst_unimplemented, // TODO
  155. [0x97] = z80_inst_unimplemented, // TODO
  156. [0x98] = z80_inst_unimplemented, // TODO
  157. [0x99] = z80_inst_unimplemented, // TODO
  158. [0x9A] = z80_inst_unimplemented, // TODO
  159. [0x9B] = z80_inst_unimplemented, // TODO
  160. [0x9C] = z80_inst_unimplemented, // TODO
  161. [0x9D] = z80_inst_unimplemented, // TODO
  162. [0x9E] = z80_inst_unimplemented, // TODO
  163. [0x9F] = z80_inst_unimplemented, // TODO
  164. [0xA0] = z80_inst_unimplemented, // TODO
  165. [0xA1] = z80_inst_unimplemented, // TODO
  166. [0xA2] = z80_inst_unimplemented, // TODO
  167. [0xA3] = z80_inst_unimplemented, // TODO
  168. [0xA4] = z80_inst_unimplemented, // TODO
  169. [0xA5] = z80_inst_unimplemented, // TODO
  170. [0xA6] = z80_inst_unimplemented, // TODO
  171. [0xA7] = z80_inst_unimplemented, // TODO
  172. [0xA8] = z80_inst_xor_r,
  173. [0xA9] = z80_inst_xor_r,
  174. [0xAA] = z80_inst_xor_r,
  175. [0xAB] = z80_inst_xor_r,
  176. [0xAC] = z80_inst_xor_r,
  177. [0xAD] = z80_inst_xor_r,
  178. [0xAE] = z80_inst_unimplemented, // TODO
  179. [0xAF] = z80_inst_xor_r,
  180. [0xB0] = z80_inst_unimplemented, // TODO
  181. [0xB1] = z80_inst_unimplemented, // TODO
  182. [0xB2] = z80_inst_unimplemented, // TODO
  183. [0xB3] = z80_inst_unimplemented, // TODO
  184. [0xB4] = z80_inst_unimplemented, // TODO
  185. [0xB5] = z80_inst_unimplemented, // TODO
  186. [0xB6] = z80_inst_unimplemented, // TODO
  187. [0xB7] = z80_inst_unimplemented, // TODO
  188. [0xB8] = z80_inst_cp_r,
  189. [0xB9] = z80_inst_cp_r,
  190. [0xBA] = z80_inst_cp_r,
  191. [0xBB] = z80_inst_cp_r,
  192. [0xBC] = z80_inst_cp_r,
  193. [0xBD] = z80_inst_cp_r,
  194. [0xBE] = z80_inst_unimplemented, // TODO
  195. [0xBF] = z80_inst_cp_r,
  196. [0xC0] = z80_inst_unimplemented, // TODO
  197. [0xC1] = z80_inst_unimplemented, // TODO
  198. [0xC2] = z80_inst_jp_cc_nn,
  199. [0xC3] = z80_inst_jp_nn,
  200. [0xC4] = z80_inst_call_cc_nn,
  201. [0xC5] = z80_inst_push_qq,
  202. [0xC6] = z80_inst_unimplemented, // TODO
  203. [0xC7] = z80_inst_unimplemented, // TODO
  204. [0xC8] = z80_inst_unimplemented, // TODO
  205. [0xC9] = z80_inst_unimplemented, // TODO
  206. [0xCA] = z80_inst_jp_cc_nn,
  207. [0xCB] = z80_prefix_bits,
  208. [0xCC] = z80_inst_call_cc_nn,
  209. [0xCD] = z80_inst_call_nn,
  210. [0xCE] = z80_inst_unimplemented, // TODO
  211. [0xCF] = z80_inst_unimplemented, // TODO
  212. [0xD0] = z80_inst_unimplemented, // TODO
  213. [0xD1] = z80_inst_unimplemented, // TODO
  214. [0xD2] = z80_inst_jp_cc_nn,
  215. [0xD3] = z80_inst_out_n_a,
  216. [0xD4] = z80_inst_call_cc_nn,
  217. [0xD5] = z80_inst_push_qq,
  218. [0xD6] = z80_inst_unimplemented, // TODO
  219. [0xD7] = z80_inst_unimplemented, // TODO
  220. [0xD8] = z80_inst_unimplemented, // TODO
  221. [0xD9] = z80_inst_exx,
  222. [0xDA] = z80_inst_jp_cc_nn,
  223. [0xDB] = z80_inst_in_a_n,
  224. [0xDC] = z80_inst_call_cc_nn,
  225. [0xDD] = z80_prefix_index,
  226. [0xDE] = z80_inst_unimplemented, // TODO
  227. [0xDF] = z80_inst_unimplemented, // TODO
  228. [0xE0] = z80_inst_unimplemented, // TODO
  229. [0xE1] = z80_inst_unimplemented, // TODO
  230. [0xE2] = z80_inst_jp_cc_nn,
  231. [0xE3] = z80_inst_unimplemented, // TODO
  232. [0xE4] = z80_inst_call_cc_nn,
  233. [0xE5] = z80_inst_push_qq,
  234. [0xE6] = z80_inst_unimplemented, // TODO
  235. [0xE7] = z80_inst_unimplemented, // TODO
  236. [0xE8] = z80_inst_unimplemented, // TODO
  237. [0xE9] = z80_inst_unimplemented, // TODO
  238. [0xEA] = z80_inst_jp_cc_nn,
  239. [0xEB] = z80_inst_unimplemented, // TODO
  240. [0xEC] = z80_inst_call_cc_nn,
  241. [0xED] = z80_prefix_extended,
  242. [0xEE] = z80_inst_unimplemented, // TODO
  243. [0xEF] = z80_inst_unimplemented, // TODO
  244. [0xF0] = z80_inst_unimplemented, // TODO
  245. [0xF1] = z80_inst_unimplemented, // TODO
  246. [0xF2] = z80_inst_jp_cc_nn,
  247. [0xF3] = z80_inst_di,
  248. [0xF4] = z80_inst_call_cc_nn,
  249. [0xF5] = z80_inst_push_qq,
  250. [0xF6] = z80_inst_unimplemented, // TODO
  251. [0xF7] = z80_inst_unimplemented, // TODO
  252. [0xF8] = z80_inst_unimplemented, // TODO
  253. [0xF9] = z80_inst_unimplemented, // TODO
  254. [0xFA] = z80_inst_jp_cc_nn,
  255. [0xFB] = z80_inst_ei,
  256. [0xFC] = z80_inst_call_cc_nn,
  257. [0xFD] = z80_prefix_index,
  258. [0xFE] = z80_inst_cp_n,
  259. [0xFF] = z80_inst_unimplemented // TODO
  260. };
  261. static DispatchTable instruction_table_extended = {
  262. [0x00] = z80_inst_unimplemented, // TODO
  263. [0x01] = z80_inst_unimplemented, // TODO
  264. [0x02] = z80_inst_unimplemented, // TODO
  265. [0x03] = z80_inst_unimplemented, // TODO
  266. [0x04] = z80_inst_unimplemented, // TODO
  267. [0x05] = z80_inst_unimplemented, // TODO
  268. [0x06] = z80_inst_unimplemented, // TODO
  269. [0x07] = z80_inst_unimplemented, // TODO
  270. [0x08] = z80_inst_unimplemented, // TODO
  271. [0x09] = z80_inst_unimplemented, // TODO
  272. [0x0A] = z80_inst_unimplemented, // TODO
  273. [0x0B] = z80_inst_unimplemented, // TODO
  274. [0x0C] = z80_inst_unimplemented, // TODO
  275. [0x0D] = z80_inst_unimplemented, // TODO
  276. [0x0E] = z80_inst_unimplemented, // TODO
  277. [0x0F] = z80_inst_unimplemented, // TODO
  278. [0x10] = z80_inst_unimplemented, // TODO
  279. [0x11] = z80_inst_unimplemented, // TODO
  280. [0x12] = z80_inst_unimplemented, // TODO
  281. [0x13] = z80_inst_unimplemented, // TODO
  282. [0x14] = z80_inst_unimplemented, // TODO
  283. [0x15] = z80_inst_unimplemented, // TODO
  284. [0x16] = z80_inst_unimplemented, // TODO
  285. [0x17] = z80_inst_unimplemented, // TODO
  286. [0x18] = z80_inst_unimplemented, // TODO
  287. [0x19] = z80_inst_unimplemented, // TODO
  288. [0x1A] = z80_inst_unimplemented, // TODO
  289. [0x1B] = z80_inst_unimplemented, // TODO
  290. [0x1C] = z80_inst_unimplemented, // TODO
  291. [0x1D] = z80_inst_unimplemented, // TODO
  292. [0x1E] = z80_inst_unimplemented, // TODO
  293. [0x1F] = z80_inst_unimplemented, // TODO
  294. [0x20] = z80_inst_unimplemented, // TODO
  295. [0x21] = z80_inst_unimplemented, // TODO
  296. [0x22] = z80_inst_unimplemented, // TODO
  297. [0x23] = z80_inst_unimplemented, // TODO
  298. [0x24] = z80_inst_unimplemented, // TODO
  299. [0x25] = z80_inst_unimplemented, // TODO
  300. [0x26] = z80_inst_unimplemented, // TODO
  301. [0x27] = z80_inst_unimplemented, // TODO
  302. [0x28] = z80_inst_unimplemented, // TODO
  303. [0x29] = z80_inst_unimplemented, // TODO
  304. [0x2A] = z80_inst_unimplemented, // TODO
  305. [0x2B] = z80_inst_unimplemented, // TODO
  306. [0x2C] = z80_inst_unimplemented, // TODO
  307. [0x2D] = z80_inst_unimplemented, // TODO
  308. [0x2E] = z80_inst_unimplemented, // TODO
  309. [0x2F] = z80_inst_unimplemented, // TODO
  310. [0x30] = z80_inst_unimplemented, // TODO
  311. [0x31] = z80_inst_unimplemented, // TODO
  312. [0x32] = z80_inst_unimplemented, // TODO
  313. [0x33] = z80_inst_unimplemented, // TODO
  314. [0x34] = z80_inst_unimplemented, // TODO
  315. [0x35] = z80_inst_unimplemented, // TODO
  316. [0x36] = z80_inst_unimplemented, // TODO
  317. [0x37] = z80_inst_unimplemented, // TODO
  318. [0x38] = z80_inst_unimplemented, // TODO
  319. [0x39] = z80_inst_unimplemented, // TODO
  320. [0x3A] = z80_inst_unimplemented, // TODO
  321. [0x3B] = z80_inst_unimplemented, // TODO
  322. [0x3C] = z80_inst_unimplemented, // TODO
  323. [0x3D] = z80_inst_unimplemented, // TODO
  324. [0x3E] = z80_inst_unimplemented, // TODO
  325. [0x3F] = z80_inst_unimplemented, // TODO
  326. [0x40] = z80_inst_unimplemented, // TODO
  327. [0x41] = z80_inst_unimplemented, // TODO
  328. [0x42] = z80_inst_unimplemented, // TODO
  329. [0x43] = z80_inst_unimplemented, // TODO
  330. [0x44] = z80_inst_unimplemented, // TODO
  331. [0x45] = z80_inst_unimplemented, // TODO
  332. [0x46] = z80_inst_im,
  333. [0x47] = z80_inst_unimplemented, // TODO
  334. [0x48] = z80_inst_unimplemented, // TODO
  335. [0x49] = z80_inst_unimplemented, // TODO
  336. [0x4A] = z80_inst_unimplemented, // TODO
  337. [0x4B] = z80_inst_unimplemented, // TODO
  338. [0x4C] = z80_inst_unimplemented, // TODO
  339. [0x4D] = z80_inst_unimplemented, // TODO
  340. [0x4E] = z80_inst_im,
  341. [0x4F] = z80_inst_unimplemented, // TODO
  342. [0x50] = z80_inst_unimplemented, // TODO
  343. [0x51] = z80_inst_unimplemented, // TODO
  344. [0x52] = z80_inst_unimplemented, // TODO
  345. [0x53] = z80_inst_unimplemented, // TODO
  346. [0x54] = z80_inst_unimplemented, // TODO
  347. [0x55] = z80_inst_unimplemented, // TODO
  348. [0x56] = z80_inst_im,
  349. [0x57] = z80_inst_unimplemented, // TODO
  350. [0x58] = z80_inst_unimplemented, // TODO
  351. [0x59] = z80_inst_unimplemented, // TODO
  352. [0x5A] = z80_inst_unimplemented, // TODO
  353. [0x5B] = z80_inst_unimplemented, // TODO
  354. [0x5C] = z80_inst_unimplemented, // TODO
  355. [0x5D] = z80_inst_unimplemented, // TODO
  356. [0x5E] = z80_inst_im,
  357. [0x5F] = z80_inst_unimplemented, // TODO
  358. [0x60] = z80_inst_unimplemented, // TODO
  359. [0x61] = z80_inst_unimplemented, // TODO
  360. [0x62] = z80_inst_unimplemented, // TODO
  361. [0x63] = z80_inst_unimplemented, // TODO
  362. [0x64] = z80_inst_unimplemented, // TODO
  363. [0x65] = z80_inst_unimplemented, // TODO
  364. [0x66] = z80_inst_im,
  365. [0x67] = z80_inst_unimplemented, // TODO
  366. [0x68] = z80_inst_unimplemented, // TODO
  367. [0x69] = z80_inst_unimplemented, // TODO
  368. [0x6A] = z80_inst_unimplemented, // TODO
  369. [0x6B] = z80_inst_unimplemented, // TODO
  370. [0x6C] = z80_inst_unimplemented, // TODO
  371. [0x6D] = z80_inst_unimplemented, // TODO
  372. [0x6E] = z80_inst_im,
  373. [0x6F] = z80_inst_unimplemented, // TODO
  374. [0x70] = z80_inst_unimplemented, // TODO
  375. [0x71] = z80_inst_unimplemented, // TODO
  376. [0x72] = z80_inst_unimplemented, // TODO
  377. [0x73] = z80_inst_unimplemented, // TODO
  378. [0x74] = z80_inst_unimplemented, // TODO
  379. [0x75] = z80_inst_unimplemented, // TODO
  380. [0x76] = z80_inst_im,
  381. [0x77] = z80_inst_unimplemented, // TODO
  382. [0x78] = z80_inst_unimplemented, // TODO
  383. [0x79] = z80_inst_unimplemented, // TODO
  384. [0x7A] = z80_inst_unimplemented, // TODO
  385. [0x7B] = z80_inst_unimplemented, // TODO
  386. [0x7C] = z80_inst_unimplemented, // TODO
  387. [0x7D] = z80_inst_unimplemented, // TODO
  388. [0x7E] = z80_inst_im,
  389. [0x7F] = z80_inst_unimplemented, // TODO
  390. [0x80] = z80_inst_unimplemented, // TODO
  391. [0x81] = z80_inst_unimplemented, // TODO
  392. [0x82] = z80_inst_unimplemented, // TODO
  393. [0x83] = z80_inst_unimplemented, // TODO
  394. [0x84] = z80_inst_unimplemented, // TODO
  395. [0x85] = z80_inst_unimplemented, // TODO
  396. [0x86] = z80_inst_unimplemented, // TODO
  397. [0x87] = z80_inst_unimplemented, // TODO
  398. [0x88] = z80_inst_unimplemented, // TODO
  399. [0x89] = z80_inst_unimplemented, // TODO
  400. [0x8A] = z80_inst_unimplemented, // TODO
  401. [0x8B] = z80_inst_unimplemented, // TODO
  402. [0x8C] = z80_inst_unimplemented, // TODO
  403. [0x8D] = z80_inst_unimplemented, // TODO
  404. [0x8E] = z80_inst_unimplemented, // TODO
  405. [0x8F] = z80_inst_unimplemented, // TODO
  406. [0x90] = z80_inst_unimplemented, // TODO
  407. [0x91] = z80_inst_unimplemented, // TODO
  408. [0x92] = z80_inst_unimplemented, // TODO
  409. [0x93] = z80_inst_unimplemented, // TODO
  410. [0x94] = z80_inst_unimplemented, // TODO
  411. [0x95] = z80_inst_unimplemented, // TODO
  412. [0x96] = z80_inst_unimplemented, // TODO
  413. [0x97] = z80_inst_unimplemented, // TODO
  414. [0x98] = z80_inst_unimplemented, // TODO
  415. [0x99] = z80_inst_unimplemented, // TODO
  416. [0x9A] = z80_inst_unimplemented, // TODO
  417. [0x9B] = z80_inst_unimplemented, // TODO
  418. [0x9C] = z80_inst_unimplemented, // TODO
  419. [0x9D] = z80_inst_unimplemented, // TODO
  420. [0x9E] = z80_inst_unimplemented, // TODO
  421. [0x9F] = z80_inst_unimplemented, // TODO
  422. [0xA0] = z80_inst_unimplemented, // TODO
  423. [0xA1] = z80_inst_unimplemented, // TODO
  424. [0xA2] = z80_inst_unimplemented, // TODO
  425. [0xA3] = z80_inst_unimplemented, // TODO
  426. [0xA4] = z80_inst_unimplemented, // TODO
  427. [0xA5] = z80_inst_unimplemented, // TODO
  428. [0xA6] = z80_inst_unimplemented, // TODO
  429. [0xA7] = z80_inst_unimplemented, // TODO
  430. [0xA8] = z80_inst_unimplemented, // TODO
  431. [0xA9] = z80_inst_unimplemented, // TODO
  432. [0xAA] = z80_inst_unimplemented, // TODO
  433. [0xAB] = z80_inst_unimplemented, // TODO
  434. [0xAC] = z80_inst_unimplemented, // TODO
  435. [0xAD] = z80_inst_unimplemented, // TODO
  436. [0xAE] = z80_inst_unimplemented, // TODO
  437. [0xAF] = z80_inst_unimplemented, // TODO
  438. [0xB0] = z80_inst_unimplemented, // TODO
  439. [0xB1] = z80_inst_unimplemented, // TODO
  440. [0xB2] = z80_inst_unimplemented, // TODO
  441. [0xB3] = z80_inst_unimplemented, // TODO
  442. [0xB4] = z80_inst_unimplemented, // TODO
  443. [0xB5] = z80_inst_unimplemented, // TODO
  444. [0xB6] = z80_inst_unimplemented, // TODO
  445. [0xB7] = z80_inst_unimplemented, // TODO
  446. [0xB8] = z80_inst_unimplemented, // TODO
  447. [0xB9] = z80_inst_unimplemented, // TODO
  448. [0xBA] = z80_inst_unimplemented, // TODO
  449. [0xBB] = z80_inst_unimplemented, // TODO
  450. [0xBC] = z80_inst_unimplemented, // TODO
  451. [0xBD] = z80_inst_unimplemented, // TODO
  452. [0xBE] = z80_inst_unimplemented, // TODO
  453. [0xBF] = z80_inst_unimplemented, // TODO
  454. [0xC0] = z80_inst_unimplemented, // TODO
  455. [0xC1] = z80_inst_unimplemented, // TODO
  456. [0xC2] = z80_inst_unimplemented, // TODO
  457. [0xC3] = z80_inst_unimplemented, // TODO
  458. [0xC4] = z80_inst_unimplemented, // TODO
  459. [0xC5] = z80_inst_unimplemented, // TODO
  460. [0xC6] = z80_inst_unimplemented, // TODO
  461. [0xC7] = z80_inst_unimplemented, // TODO
  462. [0xC8] = z80_inst_unimplemented, // TODO
  463. [0xC9] = z80_inst_unimplemented, // TODO
  464. [0xCA] = z80_inst_unimplemented, // TODO
  465. [0xCB] = z80_inst_unimplemented, // TODO
  466. [0xCC] = z80_inst_unimplemented, // TODO
  467. [0xCD] = z80_inst_unimplemented, // TODO
  468. [0xCE] = z80_inst_unimplemented, // TODO
  469. [0xCF] = z80_inst_unimplemented, // TODO
  470. [0xD0] = z80_inst_unimplemented, // TODO
  471. [0xD1] = z80_inst_unimplemented, // TODO
  472. [0xD2] = z80_inst_unimplemented, // TODO
  473. [0xD3] = z80_inst_unimplemented, // TODO
  474. [0xD4] = z80_inst_unimplemented, // TODO
  475. [0xD5] = z80_inst_unimplemented, // TODO
  476. [0xD6] = z80_inst_unimplemented, // TODO
  477. [0xD7] = z80_inst_unimplemented, // TODO
  478. [0xD8] = z80_inst_unimplemented, // TODO
  479. [0xD9] = z80_inst_unimplemented, // TODO
  480. [0xDA] = z80_inst_unimplemented, // TODO
  481. [0xDB] = z80_inst_unimplemented, // TODO
  482. [0xDC] = z80_inst_unimplemented, // TODO
  483. [0xDD] = z80_inst_unimplemented, // TODO
  484. [0xDE] = z80_inst_unimplemented, // TODO
  485. [0xDF] = z80_inst_unimplemented, // TODO
  486. [0xE0] = z80_inst_unimplemented, // TODO
  487. [0xE1] = z80_inst_unimplemented, // TODO
  488. [0xE2] = z80_inst_unimplemented, // TODO
  489. [0xE3] = z80_inst_unimplemented, // TODO
  490. [0xE4] = z80_inst_unimplemented, // TODO
  491. [0xE5] = z80_inst_unimplemented, // TODO
  492. [0xE6] = z80_inst_unimplemented, // TODO
  493. [0xE7] = z80_inst_unimplemented, // TODO
  494. [0xE8] = z80_inst_unimplemented, // TODO
  495. [0xE9] = z80_inst_unimplemented, // TODO
  496. [0xEA] = z80_inst_unimplemented, // TODO
  497. [0xEB] = z80_inst_unimplemented, // TODO
  498. [0xEC] = z80_inst_unimplemented, // TODO
  499. [0xED] = z80_inst_unimplemented, // TODO
  500. [0xEE] = z80_inst_unimplemented, // TODO
  501. [0xEF] = z80_inst_unimplemented, // TODO
  502. [0xF0] = z80_inst_unimplemented, // TODO
  503. [0xF1] = z80_inst_unimplemented, // TODO
  504. [0xF2] = z80_inst_unimplemented, // TODO
  505. [0xF3] = z80_inst_unimplemented, // TODO
  506. [0xF4] = z80_inst_unimplemented, // TODO
  507. [0xF5] = z80_inst_unimplemented, // TODO
  508. [0xF6] = z80_inst_unimplemented, // TODO
  509. [0xF7] = z80_inst_unimplemented, // TODO
  510. [0xF8] = z80_inst_unimplemented, // TODO
  511. [0xF9] = z80_inst_unimplemented, // TODO
  512. [0xFA] = z80_inst_unimplemented, // TODO
  513. [0xFB] = z80_inst_unimplemented, // TODO
  514. [0xFC] = z80_inst_unimplemented, // TODO
  515. [0xFD] = z80_inst_unimplemented, // TODO
  516. [0xFE] = z80_inst_unimplemented, // TODO
  517. [0xFF] = z80_inst_unimplemented // TODO
  518. };
  519. static DispatchTable instruction_table_bits = {
  520. [0x00] = z80_inst_unimplemented, // TODO
  521. [0x01] = z80_inst_unimplemented, // TODO
  522. [0x02] = z80_inst_unimplemented, // TODO
  523. [0x03] = z80_inst_unimplemented, // TODO
  524. [0x04] = z80_inst_unimplemented, // TODO
  525. [0x05] = z80_inst_unimplemented, // TODO
  526. [0x06] = z80_inst_unimplemented, // TODO
  527. [0x07] = z80_inst_unimplemented, // TODO
  528. [0x08] = z80_inst_unimplemented, // TODO
  529. [0x09] = z80_inst_unimplemented, // TODO
  530. [0x0A] = z80_inst_unimplemented, // TODO
  531. [0x0B] = z80_inst_unimplemented, // TODO
  532. [0x0C] = z80_inst_unimplemented, // TODO
  533. [0x0D] = z80_inst_unimplemented, // TODO
  534. [0x0E] = z80_inst_unimplemented, // TODO
  535. [0x0F] = z80_inst_unimplemented, // TODO
  536. [0x10] = z80_inst_unimplemented, // TODO
  537. [0x11] = z80_inst_unimplemented, // TODO
  538. [0x12] = z80_inst_unimplemented, // TODO
  539. [0x13] = z80_inst_unimplemented, // TODO
  540. [0x14] = z80_inst_unimplemented, // TODO
  541. [0x15] = z80_inst_unimplemented, // TODO
  542. [0x16] = z80_inst_unimplemented, // TODO
  543. [0x17] = z80_inst_unimplemented, // TODO
  544. [0x18] = z80_inst_unimplemented, // TODO
  545. [0x19] = z80_inst_unimplemented, // TODO
  546. [0x1A] = z80_inst_unimplemented, // TODO
  547. [0x1B] = z80_inst_unimplemented, // TODO
  548. [0x1C] = z80_inst_unimplemented, // TODO
  549. [0x1D] = z80_inst_unimplemented, // TODO
  550. [0x1E] = z80_inst_unimplemented, // TODO
  551. [0x1F] = z80_inst_unimplemented, // TODO
  552. [0x20] = z80_inst_unimplemented, // TODO
  553. [0x21] = z80_inst_unimplemented, // TODO
  554. [0x22] = z80_inst_unimplemented, // TODO
  555. [0x23] = z80_inst_unimplemented, // TODO
  556. [0x24] = z80_inst_unimplemented, // TODO
  557. [0x25] = z80_inst_unimplemented, // TODO
  558. [0x26] = z80_inst_unimplemented, // TODO
  559. [0x27] = z80_inst_unimplemented, // TODO
  560. [0x28] = z80_inst_unimplemented, // TODO
  561. [0x29] = z80_inst_unimplemented, // TODO
  562. [0x2A] = z80_inst_unimplemented, // TODO
  563. [0x2B] = z80_inst_unimplemented, // TODO
  564. [0x2C] = z80_inst_unimplemented, // TODO
  565. [0x2D] = z80_inst_unimplemented, // TODO
  566. [0x2E] = z80_inst_unimplemented, // TODO
  567. [0x2F] = z80_inst_unimplemented, // TODO
  568. [0x30] = z80_inst_unimplemented, // TODO
  569. [0x31] = z80_inst_unimplemented, // TODO
  570. [0x32] = z80_inst_unimplemented, // TODO
  571. [0x33] = z80_inst_unimplemented, // TODO
  572. [0x34] = z80_inst_unimplemented, // TODO
  573. [0x35] = z80_inst_unimplemented, // TODO
  574. [0x36] = z80_inst_unimplemented, // TODO
  575. [0x37] = z80_inst_unimplemented, // TODO
  576. [0x38] = z80_inst_unimplemented, // TODO
  577. [0x39] = z80_inst_unimplemented, // TODO
  578. [0x3A] = z80_inst_unimplemented, // TODO
  579. [0x3B] = z80_inst_unimplemented, // TODO
  580. [0x3C] = z80_inst_unimplemented, // TODO
  581. [0x3D] = z80_inst_unimplemented, // TODO
  582. [0x3E] = z80_inst_unimplemented, // TODO
  583. [0x3F] = z80_inst_unimplemented, // TODO
  584. [0x40] = z80_inst_unimplemented, // TODO
  585. [0x41] = z80_inst_unimplemented, // TODO
  586. [0x42] = z80_inst_unimplemented, // TODO
  587. [0x43] = z80_inst_unimplemented, // TODO
  588. [0x44] = z80_inst_unimplemented, // TODO
  589. [0x45] = z80_inst_unimplemented, // TODO
  590. [0x46] = z80_inst_unimplemented, // TODO
  591. [0x47] = z80_inst_unimplemented, // TODO
  592. [0x48] = z80_inst_unimplemented, // TODO
  593. [0x49] = z80_inst_unimplemented, // TODO
  594. [0x4A] = z80_inst_unimplemented, // TODO
  595. [0x4B] = z80_inst_unimplemented, // TODO
  596. [0x4C] = z80_inst_unimplemented, // TODO
  597. [0x4D] = z80_inst_unimplemented, // TODO
  598. [0x4E] = z80_inst_unimplemented, // TODO
  599. [0x4F] = z80_inst_unimplemented, // TODO
  600. [0x50] = z80_inst_unimplemented, // TODO
  601. [0x51] = z80_inst_unimplemented, // TODO
  602. [0x52] = z80_inst_unimplemented, // TODO
  603. [0x53] = z80_inst_unimplemented, // TODO
  604. [0x54] = z80_inst_unimplemented, // TODO
  605. [0x55] = z80_inst_unimplemented, // TODO
  606. [0x56] = z80_inst_unimplemented, // TODO
  607. [0x57] = z80_inst_unimplemented, // TODO
  608. [0x58] = z80_inst_unimplemented, // TODO
  609. [0x59] = z80_inst_unimplemented, // TODO
  610. [0x5A] = z80_inst_unimplemented, // TODO
  611. [0x5B] = z80_inst_unimplemented, // TODO
  612. [0x5C] = z80_inst_unimplemented, // TODO
  613. [0x5D] = z80_inst_unimplemented, // TODO
  614. [0x5E] = z80_inst_unimplemented, // TODO
  615. [0x5F] = z80_inst_unimplemented, // TODO
  616. [0x60] = z80_inst_unimplemented, // TODO
  617. [0x61] = z80_inst_unimplemented, // TODO
  618. [0x62] = z80_inst_unimplemented, // TODO
  619. [0x63] = z80_inst_unimplemented, // TODO
  620. [0x64] = z80_inst_unimplemented, // TODO
  621. [0x65] = z80_inst_unimplemented, // TODO
  622. [0x66] = z80_inst_unimplemented, // TODO
  623. [0x67] = z80_inst_unimplemented, // TODO
  624. [0x68] = z80_inst_unimplemented, // TODO
  625. [0x69] = z80_inst_unimplemented, // TODO
  626. [0x6A] = z80_inst_unimplemented, // TODO
  627. [0x6B] = z80_inst_unimplemented, // TODO
  628. [0x6C] = z80_inst_unimplemented, // TODO
  629. [0x6D] = z80_inst_unimplemented, // TODO
  630. [0x6E] = z80_inst_unimplemented, // TODO
  631. [0x6F] = z80_inst_unimplemented, // TODO
  632. [0x70] = z80_inst_unimplemented, // TODO
  633. [0x71] = z80_inst_unimplemented, // TODO
  634. [0x72] = z80_inst_unimplemented, // TODO
  635. [0x73] = z80_inst_unimplemented, // TODO
  636. [0x74] = z80_inst_unimplemented, // TODO
  637. [0x75] = z80_inst_unimplemented, // TODO
  638. [0x76] = z80_inst_unimplemented, // TODO
  639. [0x77] = z80_inst_unimplemented, // TODO
  640. [0x78] = z80_inst_unimplemented, // TODO
  641. [0x79] = z80_inst_unimplemented, // TODO
  642. [0x7A] = z80_inst_unimplemented, // TODO
  643. [0x7B] = z80_inst_unimplemented, // TODO
  644. [0x7C] = z80_inst_unimplemented, // TODO
  645. [0x7D] = z80_inst_unimplemented, // TODO
  646. [0x7E] = z80_inst_unimplemented, // TODO
  647. [0x7F] = z80_inst_unimplemented, // TODO
  648. [0x80] = z80_inst_unimplemented, // TODO
  649. [0x81] = z80_inst_unimplemented, // TODO
  650. [0x82] = z80_inst_unimplemented, // TODO
  651. [0x83] = z80_inst_unimplemented, // TODO
  652. [0x84] = z80_inst_unimplemented, // TODO
  653. [0x85] = z80_inst_unimplemented, // TODO
  654. [0x86] = z80_inst_unimplemented, // TODO
  655. [0x87] = z80_inst_unimplemented, // TODO
  656. [0x88] = z80_inst_unimplemented, // TODO
  657. [0x89] = z80_inst_unimplemented, // TODO
  658. [0x8A] = z80_inst_unimplemented, // TODO
  659. [0x8B] = z80_inst_unimplemented, // TODO
  660. [0x8C] = z80_inst_unimplemented, // TODO
  661. [0x8D] = z80_inst_unimplemented, // TODO
  662. [0x8E] = z80_inst_unimplemented, // TODO
  663. [0x8F] = z80_inst_unimplemented, // TODO
  664. [0x90] = z80_inst_unimplemented, // TODO
  665. [0x91] = z80_inst_unimplemented, // TODO
  666. [0x92] = z80_inst_unimplemented, // TODO
  667. [0x93] = z80_inst_unimplemented, // TODO
  668. [0x94] = z80_inst_unimplemented, // TODO
  669. [0x95] = z80_inst_unimplemented, // TODO
  670. [0x96] = z80_inst_unimplemented, // TODO
  671. [0x97] = z80_inst_unimplemented, // TODO
  672. [0x98] = z80_inst_unimplemented, // TODO
  673. [0x99] = z80_inst_unimplemented, // TODO
  674. [0x9A] = z80_inst_unimplemented, // TODO
  675. [0x9B] = z80_inst_unimplemented, // TODO
  676. [0x9C] = z80_inst_unimplemented, // TODO
  677. [0x9D] = z80_inst_unimplemented, // TODO
  678. [0x9E] = z80_inst_unimplemented, // TODO
  679. [0x9F] = z80_inst_unimplemented, // TODO
  680. [0xA0] = z80_inst_unimplemented, // TODO
  681. [0xA1] = z80_inst_unimplemented, // TODO
  682. [0xA2] = z80_inst_unimplemented, // TODO
  683. [0xA3] = z80_inst_unimplemented, // TODO
  684. [0xA4] = z80_inst_unimplemented, // TODO
  685. [0xA5] = z80_inst_unimplemented, // TODO
  686. [0xA6] = z80_inst_unimplemented, // TODO
  687. [0xA7] = z80_inst_unimplemented, // TODO
  688. [0xA8] = z80_inst_unimplemented, // TODO
  689. [0xA9] = z80_inst_unimplemented, // TODO
  690. [0xAA] = z80_inst_unimplemented, // TODO
  691. [0xAB] = z80_inst_unimplemented, // TODO
  692. [0xAC] = z80_inst_unimplemented, // TODO
  693. [0xAD] = z80_inst_unimplemented, // TODO
  694. [0xAE] = z80_inst_unimplemented, // TODO
  695. [0xAF] = z80_inst_unimplemented, // TODO
  696. [0xB0] = z80_inst_unimplemented, // TODO
  697. [0xB1] = z80_inst_unimplemented, // TODO
  698. [0xB2] = z80_inst_unimplemented, // TODO
  699. [0xB3] = z80_inst_unimplemented, // TODO
  700. [0xB4] = z80_inst_unimplemented, // TODO
  701. [0xB5] = z80_inst_unimplemented, // TODO
  702. [0xB6] = z80_inst_unimplemented, // TODO
  703. [0xB7] = z80_inst_unimplemented, // TODO
  704. [0xB8] = z80_inst_unimplemented, // TODO
  705. [0xB9] = z80_inst_unimplemented, // TODO
  706. [0xBA] = z80_inst_unimplemented, // TODO
  707. [0xBB] = z80_inst_unimplemented, // TODO
  708. [0xBC] = z80_inst_unimplemented, // TODO
  709. [0xBD] = z80_inst_unimplemented, // TODO
  710. [0xBE] = z80_inst_unimplemented, // TODO
  711. [0xBF] = z80_inst_unimplemented, // TODO
  712. [0xC0] = z80_inst_unimplemented, // TODO
  713. [0xC1] = z80_inst_unimplemented, // TODO
  714. [0xC2] = z80_inst_unimplemented, // TODO
  715. [0xC3] = z80_inst_unimplemented, // TODO
  716. [0xC4] = z80_inst_unimplemented, // TODO
  717. [0xC5] = z80_inst_unimplemented, // TODO
  718. [0xC6] = z80_inst_unimplemented, // TODO
  719. [0xC7] = z80_inst_unimplemented, // TODO
  720. [0xC8] = z80_inst_unimplemented, // TODO
  721. [0xC9] = z80_inst_unimplemented, // TODO
  722. [0xCA] = z80_inst_unimplemented, // TODO
  723. [0xCB] = z80_inst_unimplemented, // TODO
  724. [0xCC] = z80_inst_unimplemented, // TODO
  725. [0xCD] = z80_inst_unimplemented, // TODO
  726. [0xCE] = z80_inst_unimplemented, // TODO
  727. [0xCF] = z80_inst_unimplemented, // TODO
  728. [0xD0] = z80_inst_unimplemented, // TODO
  729. [0xD1] = z80_inst_unimplemented, // TODO
  730. [0xD2] = z80_inst_unimplemented, // TODO
  731. [0xD3] = z80_inst_unimplemented, // TODO
  732. [0xD4] = z80_inst_unimplemented, // TODO
  733. [0xD5] = z80_inst_unimplemented, // TODO
  734. [0xD6] = z80_inst_unimplemented, // TODO
  735. [0xD7] = z80_inst_unimplemented, // TODO
  736. [0xD8] = z80_inst_unimplemented, // TODO
  737. [0xD9] = z80_inst_unimplemented, // TODO
  738. [0xDA] = z80_inst_unimplemented, // TODO
  739. [0xDB] = z80_inst_unimplemented, // TODO
  740. [0xDC] = z80_inst_unimplemented, // TODO
  741. [0xDD] = z80_inst_unimplemented, // TODO
  742. [0xDE] = z80_inst_unimplemented, // TODO
  743. [0xDF] = z80_inst_unimplemented, // TODO
  744. [0xE0] = z80_inst_unimplemented, // TODO
  745. [0xE1] = z80_inst_unimplemented, // TODO
  746. [0xE2] = z80_inst_unimplemented, // TODO
  747. [0xE3] = z80_inst_unimplemented, // TODO
  748. [0xE4] = z80_inst_unimplemented, // TODO
  749. [0xE5] = z80_inst_unimplemented, // TODO
  750. [0xE6] = z80_inst_unimplemented, // TODO
  751. [0xE7] = z80_inst_unimplemented, // TODO
  752. [0xE8] = z80_inst_unimplemented, // TODO
  753. [0xE9] = z80_inst_unimplemented, // TODO
  754. [0xEA] = z80_inst_unimplemented, // TODO
  755. [0xEB] = z80_inst_unimplemented, // TODO
  756. [0xEC] = z80_inst_unimplemented, // TODO
  757. [0xED] = z80_inst_unimplemented, // TODO
  758. [0xEE] = z80_inst_unimplemented, // TODO
  759. [0xEF] = z80_inst_unimplemented, // TODO
  760. [0xF0] = z80_inst_unimplemented, // TODO
  761. [0xF1] = z80_inst_unimplemented, // TODO
  762. [0xF2] = z80_inst_unimplemented, // TODO
  763. [0xF3] = z80_inst_unimplemented, // TODO
  764. [0xF4] = z80_inst_unimplemented, // TODO
  765. [0xF5] = z80_inst_unimplemented, // TODO
  766. [0xF6] = z80_inst_unimplemented, // TODO
  767. [0xF7] = z80_inst_unimplemented, // TODO
  768. [0xF8] = z80_inst_unimplemented, // TODO
  769. [0xF9] = z80_inst_unimplemented, // TODO
  770. [0xFA] = z80_inst_unimplemented, // TODO
  771. [0xFB] = z80_inst_unimplemented, // TODO
  772. [0xFC] = z80_inst_unimplemented, // TODO
  773. [0xFD] = z80_inst_unimplemented, // TODO
  774. [0xFE] = z80_inst_unimplemented, // TODO
  775. [0xFF] = z80_inst_unimplemented // TODO
  776. };
  777. static DispatchTable instruction_table_index = {
  778. [0x00] = z80_inst_unimplemented, // TODO
  779. [0x01] = z80_inst_unimplemented, // TODO
  780. [0x02] = z80_inst_unimplemented, // TODO
  781. [0x03] = z80_inst_unimplemented, // TODO
  782. [0x04] = z80_inst_unimplemented, // TODO
  783. [0x05] = z80_inst_unimplemented, // TODO
  784. [0x06] = z80_inst_unimplemented, // TODO
  785. [0x07] = z80_inst_unimplemented, // TODO
  786. [0x08] = z80_inst_unimplemented, // TODO
  787. [0x09] = z80_inst_unimplemented, // TODO
  788. [0x0A] = z80_inst_unimplemented, // TODO
  789. [0x0B] = z80_inst_unimplemented, // TODO
  790. [0x0C] = z80_inst_unimplemented, // TODO
  791. [0x0D] = z80_inst_unimplemented, // TODO
  792. [0x0E] = z80_inst_unimplemented, // TODO
  793. [0x0F] = z80_inst_unimplemented, // TODO
  794. [0x10] = z80_inst_unimplemented, // TODO
  795. [0x11] = z80_inst_unimplemented, // TODO
  796. [0x12] = z80_inst_unimplemented, // TODO
  797. [0x13] = z80_inst_unimplemented, // TODO
  798. [0x14] = z80_inst_unimplemented, // TODO
  799. [0x15] = z80_inst_unimplemented, // TODO
  800. [0x16] = z80_inst_unimplemented, // TODO
  801. [0x17] = z80_inst_unimplemented, // TODO
  802. [0x18] = z80_inst_unimplemented, // TODO
  803. [0x19] = z80_inst_unimplemented, // TODO
  804. [0x1A] = z80_inst_unimplemented, // TODO
  805. [0x1B] = z80_inst_unimplemented, // TODO
  806. [0x1C] = z80_inst_unimplemented, // TODO
  807. [0x1D] = z80_inst_unimplemented, // TODO
  808. [0x1E] = z80_inst_unimplemented, // TODO
  809. [0x1F] = z80_inst_unimplemented, // TODO
  810. [0x20] = z80_inst_unimplemented, // TODO
  811. [0x21] = z80_inst_unimplemented, // TODO
  812. [0x22] = z80_inst_unimplemented, // TODO
  813. [0x23] = z80_inst_unimplemented, // TODO
  814. [0x24] = z80_inst_unimplemented, // TODO
  815. [0x25] = z80_inst_unimplemented, // TODO
  816. [0x26] = z80_inst_unimplemented, // TODO
  817. [0x27] = z80_inst_unimplemented, // TODO
  818. [0x28] = z80_inst_unimplemented, // TODO
  819. [0x29] = z80_inst_unimplemented, // TODO
  820. [0x2A] = z80_inst_unimplemented, // TODO
  821. [0x2B] = z80_inst_unimplemented, // TODO
  822. [0x2C] = z80_inst_unimplemented, // TODO
  823. [0x2D] = z80_inst_unimplemented, // TODO
  824. [0x2E] = z80_inst_unimplemented, // TODO
  825. [0x2F] = z80_inst_unimplemented, // TODO
  826. [0x30] = z80_inst_unimplemented, // TODO
  827. [0x31] = z80_inst_unimplemented, // TODO
  828. [0x32] = z80_inst_unimplemented, // TODO
  829. [0x33] = z80_inst_unimplemented, // TODO
  830. [0x34] = z80_inst_unimplemented, // TODO
  831. [0x35] = z80_inst_unimplemented, // TODO
  832. [0x36] = z80_inst_unimplemented, // TODO
  833. [0x37] = z80_inst_unimplemented, // TODO
  834. [0x38] = z80_inst_unimplemented, // TODO
  835. [0x39] = z80_inst_unimplemented, // TODO
  836. [0x3A] = z80_inst_unimplemented, // TODO
  837. [0x3B] = z80_inst_unimplemented, // TODO
  838. [0x3C] = z80_inst_unimplemented, // TODO
  839. [0x3D] = z80_inst_unimplemented, // TODO
  840. [0x3E] = z80_inst_unimplemented, // TODO
  841. [0x3F] = z80_inst_unimplemented, // TODO
  842. [0x40] = z80_inst_unimplemented, // TODO
  843. [0x41] = z80_inst_unimplemented, // TODO
  844. [0x42] = z80_inst_unimplemented, // TODO
  845. [0x43] = z80_inst_unimplemented, // TODO
  846. [0x44] = z80_inst_unimplemented, // TODO
  847. [0x45] = z80_inst_unimplemented, // TODO
  848. [0x46] = z80_inst_unimplemented, // TODO
  849. [0x47] = z80_inst_unimplemented, // TODO
  850. [0x48] = z80_inst_unimplemented, // TODO
  851. [0x49] = z80_inst_unimplemented, // TODO
  852. [0x4A] = z80_inst_unimplemented, // TODO
  853. [0x4B] = z80_inst_unimplemented, // TODO
  854. [0x4C] = z80_inst_unimplemented, // TODO
  855. [0x4D] = z80_inst_unimplemented, // TODO
  856. [0x4E] = z80_inst_unimplemented, // TODO
  857. [0x4F] = z80_inst_unimplemented, // TODO
  858. [0x50] = z80_inst_unimplemented, // TODO
  859. [0x51] = z80_inst_unimplemented, // TODO
  860. [0x52] = z80_inst_unimplemented, // TODO
  861. [0x53] = z80_inst_unimplemented, // TODO
  862. [0x54] = z80_inst_unimplemented, // TODO
  863. [0x55] = z80_inst_unimplemented, // TODO
  864. [0x56] = z80_inst_unimplemented, // TODO
  865. [0x57] = z80_inst_unimplemented, // TODO
  866. [0x58] = z80_inst_unimplemented, // TODO
  867. [0x59] = z80_inst_unimplemented, // TODO
  868. [0x5A] = z80_inst_unimplemented, // TODO
  869. [0x5B] = z80_inst_unimplemented, // TODO
  870. [0x5C] = z80_inst_unimplemented, // TODO
  871. [0x5D] = z80_inst_unimplemented, // TODO
  872. [0x5E] = z80_inst_unimplemented, // TODO
  873. [0x5F] = z80_inst_unimplemented, // TODO
  874. [0x60] = z80_inst_unimplemented, // TODO
  875. [0x61] = z80_inst_unimplemented, // TODO
  876. [0x62] = z80_inst_unimplemented, // TODO
  877. [0x63] = z80_inst_unimplemented, // TODO
  878. [0x64] = z80_inst_unimplemented, // TODO
  879. [0x65] = z80_inst_unimplemented, // TODO
  880. [0x66] = z80_inst_unimplemented, // TODO
  881. [0x67] = z80_inst_unimplemented, // TODO
  882. [0x68] = z80_inst_unimplemented, // TODO
  883. [0x69] = z80_inst_unimplemented, // TODO
  884. [0x6A] = z80_inst_unimplemented, // TODO
  885. [0x6B] = z80_inst_unimplemented, // TODO
  886. [0x6C] = z80_inst_unimplemented, // TODO
  887. [0x6D] = z80_inst_unimplemented, // TODO
  888. [0x6E] = z80_inst_unimplemented, // TODO
  889. [0x6F] = z80_inst_unimplemented, // TODO
  890. [0x70] = z80_inst_unimplemented, // TODO
  891. [0x71] = z80_inst_unimplemented, // TODO
  892. [0x72] = z80_inst_unimplemented, // TODO
  893. [0x73] = z80_inst_unimplemented, // TODO
  894. [0x74] = z80_inst_unimplemented, // TODO
  895. [0x75] = z80_inst_unimplemented, // TODO
  896. [0x76] = z80_inst_unimplemented, // TODO
  897. [0x77] = z80_inst_unimplemented, // TODO
  898. [0x78] = z80_inst_unimplemented, // TODO
  899. [0x79] = z80_inst_unimplemented, // TODO
  900. [0x7A] = z80_inst_unimplemented, // TODO
  901. [0x7B] = z80_inst_unimplemented, // TODO
  902. [0x7C] = z80_inst_unimplemented, // TODO
  903. [0x7D] = z80_inst_unimplemented, // TODO
  904. [0x7E] = z80_inst_unimplemented, // TODO
  905. [0x7F] = z80_inst_unimplemented, // TODO
  906. [0x80] = z80_inst_unimplemented, // TODO
  907. [0x81] = z80_inst_unimplemented, // TODO
  908. [0x82] = z80_inst_unimplemented, // TODO
  909. [0x83] = z80_inst_unimplemented, // TODO
  910. [0x84] = z80_inst_unimplemented, // TODO
  911. [0x85] = z80_inst_unimplemented, // TODO
  912. [0x86] = z80_inst_unimplemented, // TODO
  913. [0x87] = z80_inst_unimplemented, // TODO
  914. [0x88] = z80_inst_unimplemented, // TODO
  915. [0x89] = z80_inst_unimplemented, // TODO
  916. [0x8A] = z80_inst_unimplemented, // TODO
  917. [0x8B] = z80_inst_unimplemented, // TODO
  918. [0x8C] = z80_inst_unimplemented, // TODO
  919. [0x8D] = z80_inst_unimplemented, // TODO
  920. [0x8E] = z80_inst_unimplemented, // TODO
  921. [0x8F] = z80_inst_unimplemented, // TODO
  922. [0x90] = z80_inst_unimplemented, // TODO
  923. [0x91] = z80_inst_unimplemented, // TODO
  924. [0x92] = z80_inst_unimplemented, // TODO
  925. [0x93] = z80_inst_unimplemented, // TODO
  926. [0x94] = z80_inst_unimplemented, // TODO
  927. [0x95] = z80_inst_unimplemented, // TODO
  928. [0x96] = z80_inst_unimplemented, // TODO
  929. [0x97] = z80_inst_unimplemented, // TODO
  930. [0x98] = z80_inst_unimplemented, // TODO
  931. [0x99] = z80_inst_unimplemented, // TODO
  932. [0x9A] = z80_inst_unimplemented, // TODO
  933. [0x9B] = z80_inst_unimplemented, // TODO
  934. [0x9C] = z80_inst_unimplemented, // TODO
  935. [0x9D] = z80_inst_unimplemented, // TODO
  936. [0x9E] = z80_inst_unimplemented, // TODO
  937. [0x9F] = z80_inst_unimplemented, // TODO
  938. [0xA0] = z80_inst_unimplemented, // TODO
  939. [0xA1] = z80_inst_unimplemented, // TODO
  940. [0xA2] = z80_inst_unimplemented, // TODO
  941. [0xA3] = z80_inst_unimplemented, // TODO
  942. [0xA4] = z80_inst_unimplemented, // TODO
  943. [0xA5] = z80_inst_unimplemented, // TODO
  944. [0xA6] = z80_inst_unimplemented, // TODO
  945. [0xA7] = z80_inst_unimplemented, // TODO
  946. [0xA8] = z80_inst_unimplemented, // TODO
  947. [0xA9] = z80_inst_unimplemented, // TODO
  948. [0xAA] = z80_inst_unimplemented, // TODO
  949. [0xAB] = z80_inst_unimplemented, // TODO
  950. [0xAC] = z80_inst_unimplemented, // TODO
  951. [0xAD] = z80_inst_unimplemented, // TODO
  952. [0xAE] = z80_inst_unimplemented, // TODO
  953. [0xAF] = z80_inst_unimplemented, // TODO
  954. [0xB0] = z80_inst_unimplemented, // TODO
  955. [0xB1] = z80_inst_unimplemented, // TODO
  956. [0xB2] = z80_inst_unimplemented, // TODO
  957. [0xB3] = z80_inst_unimplemented, // TODO
  958. [0xB4] = z80_inst_unimplemented, // TODO
  959. [0xB5] = z80_inst_unimplemented, // TODO
  960. [0xB6] = z80_inst_unimplemented, // TODO
  961. [0xB7] = z80_inst_unimplemented, // TODO
  962. [0xB8] = z80_inst_unimplemented, // TODO
  963. [0xB9] = z80_inst_unimplemented, // TODO
  964. [0xBA] = z80_inst_unimplemented, // TODO
  965. [0xBB] = z80_inst_unimplemented, // TODO
  966. [0xBC] = z80_inst_unimplemented, // TODO
  967. [0xBD] = z80_inst_unimplemented, // TODO
  968. [0xBE] = z80_inst_unimplemented, // TODO
  969. [0xBF] = z80_inst_unimplemented, // TODO
  970. [0xC0] = z80_inst_unimplemented, // TODO
  971. [0xC1] = z80_inst_unimplemented, // TODO
  972. [0xC2] = z80_inst_unimplemented, // TODO
  973. [0xC3] = z80_inst_unimplemented, // TODO
  974. [0xC4] = z80_inst_unimplemented, // TODO
  975. [0xC5] = z80_inst_unimplemented, // TODO
  976. [0xC6] = z80_inst_unimplemented, // TODO
  977. [0xC7] = z80_inst_unimplemented, // TODO
  978. [0xC8] = z80_inst_unimplemented, // TODO
  979. [0xC9] = z80_inst_unimplemented, // TODO
  980. [0xCA] = z80_inst_unimplemented, // TODO
  981. [0xCB] = z80_prefix_index_bits,
  982. [0xCC] = z80_inst_unimplemented, // TODO
  983. [0xCD] = z80_inst_unimplemented, // TODO
  984. [0xCE] = z80_inst_unimplemented, // TODO
  985. [0xCF] = z80_inst_unimplemented, // TODO
  986. [0xD0] = z80_inst_unimplemented, // TODO
  987. [0xD1] = z80_inst_unimplemented, // TODO
  988. [0xD2] = z80_inst_unimplemented, // TODO
  989. [0xD3] = z80_inst_unimplemented, // TODO
  990. [0xD4] = z80_inst_unimplemented, // TODO
  991. [0xD5] = z80_inst_unimplemented, // TODO
  992. [0xD6] = z80_inst_unimplemented, // TODO
  993. [0xD7] = z80_inst_unimplemented, // TODO
  994. [0xD8] = z80_inst_unimplemented, // TODO
  995. [0xD9] = z80_inst_unimplemented, // TODO
  996. [0xDA] = z80_inst_unimplemented, // TODO
  997. [0xDB] = z80_inst_unimplemented, // TODO
  998. [0xDC] = z80_inst_unimplemented, // TODO
  999. [0xDD] = z80_inst_unimplemented, // TODO
  1000. [0xDE] = z80_inst_unimplemented, // TODO
  1001. [0xDF] = z80_inst_unimplemented, // TODO
  1002. [0xE0] = z80_inst_unimplemented, // TODO
  1003. [0xE1] = z80_inst_unimplemented, // TODO
  1004. [0xE2] = z80_inst_unimplemented, // TODO
  1005. [0xE3] = z80_inst_unimplemented, // TODO
  1006. [0xE4] = z80_inst_unimplemented, // TODO
  1007. [0xE5] = z80_inst_unimplemented, // TODO
  1008. [0xE6] = z80_inst_unimplemented, // TODO
  1009. [0xE7] = z80_inst_unimplemented, // TODO
  1010. [0xE8] = z80_inst_unimplemented, // TODO
  1011. [0xE9] = z80_inst_unimplemented, // TODO
  1012. [0xEA] = z80_inst_unimplemented, // TODO
  1013. [0xEB] = z80_inst_unimplemented, // TODO
  1014. [0xEC] = z80_inst_unimplemented, // TODO
  1015. [0xED] = z80_inst_unimplemented, // TODO
  1016. [0xEE] = z80_inst_unimplemented, // TODO
  1017. [0xEF] = z80_inst_unimplemented, // TODO
  1018. [0xF0] = z80_inst_unimplemented, // TODO
  1019. [0xF1] = z80_inst_unimplemented, // TODO
  1020. [0xF2] = z80_inst_unimplemented, // TODO
  1021. [0xF3] = z80_inst_unimplemented, // TODO
  1022. [0xF4] = z80_inst_unimplemented, // TODO
  1023. [0xF5] = z80_inst_unimplemented, // TODO
  1024. [0xF6] = z80_inst_unimplemented, // TODO
  1025. [0xF7] = z80_inst_unimplemented, // TODO
  1026. [0xF8] = z80_inst_unimplemented, // TODO
  1027. [0xF9] = z80_inst_unimplemented, // TODO
  1028. [0xFA] = z80_inst_unimplemented, // TODO
  1029. [0xFB] = z80_inst_unimplemented, // TODO
  1030. [0xFC] = z80_inst_unimplemented, // TODO
  1031. [0xFD] = z80_inst_unimplemented, // TODO
  1032. [0xFE] = z80_inst_unimplemented, // TODO
  1033. [0xFF] = z80_inst_unimplemented // TODO
  1034. };
  1035. static DispatchTable instruction_table_index_bits = {
  1036. [0x00] = z80_inst_unimplemented, // TODO
  1037. [0x01] = z80_inst_unimplemented, // TODO
  1038. [0x02] = z80_inst_unimplemented, // TODO
  1039. [0x03] = z80_inst_unimplemented, // TODO
  1040. [0x04] = z80_inst_unimplemented, // TODO
  1041. [0x05] = z80_inst_unimplemented, // TODO
  1042. [0x06] = z80_inst_unimplemented, // TODO
  1043. [0x07] = z80_inst_unimplemented, // TODO
  1044. [0x08] = z80_inst_unimplemented, // TODO
  1045. [0x09] = z80_inst_unimplemented, // TODO
  1046. [0x0A] = z80_inst_unimplemented, // TODO
  1047. [0x0B] = z80_inst_unimplemented, // TODO
  1048. [0x0C] = z80_inst_unimplemented, // TODO
  1049. [0x0D] = z80_inst_unimplemented, // TODO
  1050. [0x0E] = z80_inst_unimplemented, // TODO
  1051. [0x0F] = z80_inst_unimplemented, // TODO
  1052. [0x10] = z80_inst_unimplemented, // TODO
  1053. [0x11] = z80_inst_unimplemented, // TODO
  1054. [0x12] = z80_inst_unimplemented, // TODO
  1055. [0x13] = z80_inst_unimplemented, // TODO
  1056. [0x14] = z80_inst_unimplemented, // TODO
  1057. [0x15] = z80_inst_unimplemented, // TODO
  1058. [0x16] = z80_inst_unimplemented, // TODO
  1059. [0x17] = z80_inst_unimplemented, // TODO
  1060. [0x18] = z80_inst_unimplemented, // TODO
  1061. [0x19] = z80_inst_unimplemented, // TODO
  1062. [0x1A] = z80_inst_unimplemented, // TODO
  1063. [0x1B] = z80_inst_unimplemented, // TODO
  1064. [0x1C] = z80_inst_unimplemented, // TODO
  1065. [0x1D] = z80_inst_unimplemented, // TODO
  1066. [0x1E] = z80_inst_unimplemented, // TODO
  1067. [0x1F] = z80_inst_unimplemented, // TODO
  1068. [0x20] = z80_inst_unimplemented, // TODO
  1069. [0x21] = z80_inst_unimplemented, // TODO
  1070. [0x22] = z80_inst_unimplemented, // TODO
  1071. [0x23] = z80_inst_unimplemented, // TODO
  1072. [0x24] = z80_inst_unimplemented, // TODO
  1073. [0x25] = z80_inst_unimplemented, // TODO
  1074. [0x26] = z80_inst_unimplemented, // TODO
  1075. [0x27] = z80_inst_unimplemented, // TODO
  1076. [0x28] = z80_inst_unimplemented, // TODO
  1077. [0x29] = z80_inst_unimplemented, // TODO
  1078. [0x2A] = z80_inst_unimplemented, // TODO
  1079. [0x2B] = z80_inst_unimplemented, // TODO
  1080. [0x2C] = z80_inst_unimplemented, // TODO
  1081. [0x2D] = z80_inst_unimplemented, // TODO
  1082. [0x2E] = z80_inst_unimplemented, // TODO
  1083. [0x2F] = z80_inst_unimplemented, // TODO
  1084. [0x30] = z80_inst_unimplemented, // TODO
  1085. [0x31] = z80_inst_unimplemented, // TODO
  1086. [0x32] = z80_inst_unimplemented, // TODO
  1087. [0x33] = z80_inst_unimplemented, // TODO
  1088. [0x34] = z80_inst_unimplemented, // TODO
  1089. [0x35] = z80_inst_unimplemented, // TODO
  1090. [0x36] = z80_inst_unimplemented, // TODO
  1091. [0x37] = z80_inst_unimplemented, // TODO
  1092. [0x38] = z80_inst_unimplemented, // TODO
  1093. [0x39] = z80_inst_unimplemented, // TODO
  1094. [0x3A] = z80_inst_unimplemented, // TODO
  1095. [0x3B] = z80_inst_unimplemented, // TODO
  1096. [0x3C] = z80_inst_unimplemented, // TODO
  1097. [0x3D] = z80_inst_unimplemented, // TODO
  1098. [0x3E] = z80_inst_unimplemented, // TODO
  1099. [0x3F] = z80_inst_unimplemented, // TODO
  1100. [0x40] = z80_inst_unimplemented, // TODO
  1101. [0x41] = z80_inst_unimplemented, // TODO
  1102. [0x42] = z80_inst_unimplemented, // TODO
  1103. [0x43] = z80_inst_unimplemented, // TODO
  1104. [0x44] = z80_inst_unimplemented, // TODO
  1105. [0x45] = z80_inst_unimplemented, // TODO
  1106. [0x46] = z80_inst_unimplemented, // TODO
  1107. [0x47] = z80_inst_unimplemented, // TODO
  1108. [0x48] = z80_inst_unimplemented, // TODO
  1109. [0x49] = z80_inst_unimplemented, // TODO
  1110. [0x4A] = z80_inst_unimplemented, // TODO
  1111. [0x4B] = z80_inst_unimplemented, // TODO
  1112. [0x4C] = z80_inst_unimplemented, // TODO
  1113. [0x4D] = z80_inst_unimplemented, // TODO
  1114. [0x4E] = z80_inst_unimplemented, // TODO
  1115. [0x4F] = z80_inst_unimplemented, // TODO
  1116. [0x50] = z80_inst_unimplemented, // TODO
  1117. [0x51] = z80_inst_unimplemented, // TODO
  1118. [0x52] = z80_inst_unimplemented, // TODO
  1119. [0x53] = z80_inst_unimplemented, // TODO
  1120. [0x54] = z80_inst_unimplemented, // TODO
  1121. [0x55] = z80_inst_unimplemented, // TODO
  1122. [0x56] = z80_inst_unimplemented, // TODO
  1123. [0x57] = z80_inst_unimplemented, // TODO
  1124. [0x58] = z80_inst_unimplemented, // TODO
  1125. [0x59] = z80_inst_unimplemented, // TODO
  1126. [0x5A] = z80_inst_unimplemented, // TODO
  1127. [0x5B] = z80_inst_unimplemented, // TODO
  1128. [0x5C] = z80_inst_unimplemented, // TODO
  1129. [0x5D] = z80_inst_unimplemented, // TODO
  1130. [0x5E] = z80_inst_unimplemented, // TODO
  1131. [0x5F] = z80_inst_unimplemented, // TODO
  1132. [0x60] = z80_inst_unimplemented, // TODO
  1133. [0x61] = z80_inst_unimplemented, // TODO
  1134. [0x62] = z80_inst_unimplemented, // TODO
  1135. [0x63] = z80_inst_unimplemented, // TODO
  1136. [0x64] = z80_inst_unimplemented, // TODO
  1137. [0x65] = z80_inst_unimplemented, // TODO
  1138. [0x66] = z80_inst_unimplemented, // TODO
  1139. [0x67] = z80_inst_unimplemented, // TODO
  1140. [0x68] = z80_inst_unimplemented, // TODO
  1141. [0x69] = z80_inst_unimplemented, // TODO
  1142. [0x6A] = z80_inst_unimplemented, // TODO
  1143. [0x6B] = z80_inst_unimplemented, // TODO
  1144. [0x6C] = z80_inst_unimplemented, // TODO
  1145. [0x6D] = z80_inst_unimplemented, // TODO
  1146. [0x6E] = z80_inst_unimplemented, // TODO
  1147. [0x6F] = z80_inst_unimplemented, // TODO
  1148. [0x70] = z80_inst_unimplemented, // TODO
  1149. [0x71] = z80_inst_unimplemented, // TODO
  1150. [0x72] = z80_inst_unimplemented, // TODO
  1151. [0x73] = z80_inst_unimplemented, // TODO
  1152. [0x74] = z80_inst_unimplemented, // TODO
  1153. [0x75] = z80_inst_unimplemented, // TODO
  1154. [0x76] = z80_inst_unimplemented, // TODO
  1155. [0x77] = z80_inst_unimplemented, // TODO
  1156. [0x78] = z80_inst_unimplemented, // TODO
  1157. [0x79] = z80_inst_unimplemented, // TODO
  1158. [0x7A] = z80_inst_unimplemented, // TODO
  1159. [0x7B] = z80_inst_unimplemented, // TODO
  1160. [0x7C] = z80_inst_unimplemented, // TODO
  1161. [0x7D] = z80_inst_unimplemented, // TODO
  1162. [0x7E] = z80_inst_unimplemented, // TODO
  1163. [0x7F] = z80_inst_unimplemented, // TODO
  1164. [0x80] = z80_inst_unimplemented, // TODO
  1165. [0x81] = z80_inst_unimplemented, // TODO
  1166. [0x82] = z80_inst_unimplemented, // TODO
  1167. [0x83] = z80_inst_unimplemented, // TODO
  1168. [0x84] = z80_inst_unimplemented, // TODO
  1169. [0x85] = z80_inst_unimplemented, // TODO
  1170. [0x86] = z80_inst_unimplemented, // TODO
  1171. [0x87] = z80_inst_unimplemented, // TODO
  1172. [0x88] = z80_inst_unimplemented, // TODO
  1173. [0x89] = z80_inst_unimplemented, // TODO
  1174. [0x8A] = z80_inst_unimplemented, // TODO
  1175. [0x8B] = z80_inst_unimplemented, // TODO
  1176. [0x8C] = z80_inst_unimplemented, // TODO
  1177. [0x8D] = z80_inst_unimplemented, // TODO
  1178. [0x8E] = z80_inst_unimplemented, // TODO
  1179. [0x8F] = z80_inst_unimplemented, // TODO
  1180. [0x90] = z80_inst_unimplemented, // TODO
  1181. [0x91] = z80_inst_unimplemented, // TODO
  1182. [0x92] = z80_inst_unimplemented, // TODO
  1183. [0x93] = z80_inst_unimplemented, // TODO
  1184. [0x94] = z80_inst_unimplemented, // TODO
  1185. [0x95] = z80_inst_unimplemented, // TODO
  1186. [0x96] = z80_inst_unimplemented, // TODO
  1187. [0x97] = z80_inst_unimplemented, // TODO
  1188. [0x98] = z80_inst_unimplemented, // TODO
  1189. [0x99] = z80_inst_unimplemented, // TODO
  1190. [0x9A] = z80_inst_unimplemented, // TODO
  1191. [0x9B] = z80_inst_unimplemented, // TODO
  1192. [0x9C] = z80_inst_unimplemented, // TODO
  1193. [0x9D] = z80_inst_unimplemented, // TODO
  1194. [0x9E] = z80_inst_unimplemented, // TODO
  1195. [0x9F] = z80_inst_unimplemented, // TODO
  1196. [0xA0] = z80_inst_unimplemented, // TODO
  1197. [0xA1] = z80_inst_unimplemented, // TODO
  1198. [0xA2] = z80_inst_unimplemented, // TODO
  1199. [0xA3] = z80_inst_unimplemented, // TODO
  1200. [0xA4] = z80_inst_unimplemented, // TODO
  1201. [0xA5] = z80_inst_unimplemented, // TODO
  1202. [0xA6] = z80_inst_unimplemented, // TODO
  1203. [0xA7] = z80_inst_unimplemented, // TODO
  1204. [0xA8] = z80_inst_unimplemented, // TODO
  1205. [0xA9] = z80_inst_unimplemented, // TODO
  1206. [0xAA] = z80_inst_unimplemented, // TODO
  1207. [0xAB] = z80_inst_unimplemented, // TODO
  1208. [0xAC] = z80_inst_unimplemented, // TODO
  1209. [0xAD] = z80_inst_unimplemented, // TODO
  1210. [0xAE] = z80_inst_unimplemented, // TODO
  1211. [0xAF] = z80_inst_unimplemented, // TODO
  1212. [0xB0] = z80_inst_unimplemented, // TODO
  1213. [0xB1] = z80_inst_unimplemented, // TODO
  1214. [0xB2] = z80_inst_unimplemented, // TODO
  1215. [0xB3] = z80_inst_unimplemented, // TODO
  1216. [0xB4] = z80_inst_unimplemented, // TODO
  1217. [0xB5] = z80_inst_unimplemented, // TODO
  1218. [0xB6] = z80_inst_unimplemented, // TODO
  1219. [0xB7] = z80_inst_unimplemented, // TODO
  1220. [0xB8] = z80_inst_unimplemented, // TODO
  1221. [0xB9] = z80_inst_unimplemented, // TODO
  1222. [0xBA] = z80_inst_unimplemented, // TODO
  1223. [0xBB] = z80_inst_unimplemented, // TODO
  1224. [0xBC] = z80_inst_unimplemented, // TODO
  1225. [0xBD] = z80_inst_unimplemented, // TODO
  1226. [0xBE] = z80_inst_unimplemented, // TODO
  1227. [0xBF] = z80_inst_unimplemented, // TODO
  1228. [0xC0] = z80_inst_unimplemented, // TODO
  1229. [0xC1] = z80_inst_unimplemented, // TODO
  1230. [0xC2] = z80_inst_unimplemented, // TODO
  1231. [0xC3] = z80_inst_unimplemented, // TODO
  1232. [0xC4] = z80_inst_unimplemented, // TODO
  1233. [0xC5] = z80_inst_unimplemented, // TODO
  1234. [0xC6] = z80_inst_unimplemented, // TODO
  1235. [0xC7] = z80_inst_unimplemented, // TODO
  1236. [0xC8] = z80_inst_unimplemented, // TODO
  1237. [0xC9] = z80_inst_unimplemented, // TODO
  1238. [0xCA] = z80_inst_unimplemented, // TODO
  1239. [0xCB] = z80_inst_unimplemented, // TODO
  1240. [0xCC] = z80_inst_unimplemented, // TODO
  1241. [0xCD] = z80_inst_unimplemented, // TODO
  1242. [0xCE] = z80_inst_unimplemented, // TODO
  1243. [0xCF] = z80_inst_unimplemented, // TODO
  1244. [0xD0] = z80_inst_unimplemented, // TODO
  1245. [0xD1] = z80_inst_unimplemented, // TODO
  1246. [0xD2] = z80_inst_unimplemented, // TODO
  1247. [0xD3] = z80_inst_unimplemented, // TODO
  1248. [0xD4] = z80_inst_unimplemented, // TODO
  1249. [0xD5] = z80_inst_unimplemented, // TODO
  1250. [0xD6] = z80_inst_unimplemented, // TODO
  1251. [0xD7] = z80_inst_unimplemented, // TODO
  1252. [0xD8] = z80_inst_unimplemented, // TODO
  1253. [0xD9] = z80_inst_unimplemented, // TODO
  1254. [0xDA] = z80_inst_unimplemented, // TODO
  1255. [0xDB] = z80_inst_unimplemented, // TODO
  1256. [0xDC] = z80_inst_unimplemented, // TODO
  1257. [0xDD] = z80_inst_unimplemented, // TODO
  1258. [0xDE] = z80_inst_unimplemented, // TODO
  1259. [0xDF] = z80_inst_unimplemented, // TODO
  1260. [0xE0] = z80_inst_unimplemented, // TODO
  1261. [0xE1] = z80_inst_unimplemented, // TODO
  1262. [0xE2] = z80_inst_unimplemented, // TODO
  1263. [0xE3] = z80_inst_unimplemented, // TODO
  1264. [0xE4] = z80_inst_unimplemented, // TODO
  1265. [0xE5] = z80_inst_unimplemented, // TODO
  1266. [0xE6] = z80_inst_unimplemented, // TODO
  1267. [0xE7] = z80_inst_unimplemented, // TODO
  1268. [0xE8] = z80_inst_unimplemented, // TODO
  1269. [0xE9] = z80_inst_unimplemented, // TODO
  1270. [0xEA] = z80_inst_unimplemented, // TODO
  1271. [0xEB] = z80_inst_unimplemented, // TODO
  1272. [0xEC] = z80_inst_unimplemented, // TODO
  1273. [0xED] = z80_inst_unimplemented, // TODO
  1274. [0xEE] = z80_inst_unimplemented, // TODO
  1275. [0xEF] = z80_inst_unimplemented, // TODO
  1276. [0xF0] = z80_inst_unimplemented, // TODO
  1277. [0xF1] = z80_inst_unimplemented, // TODO
  1278. [0xF2] = z80_inst_unimplemented, // TODO
  1279. [0xF3] = z80_inst_unimplemented, // TODO
  1280. [0xF4] = z80_inst_unimplemented, // TODO
  1281. [0xF5] = z80_inst_unimplemented, // TODO
  1282. [0xF6] = z80_inst_unimplemented, // TODO
  1283. [0xF7] = z80_inst_unimplemented, // TODO
  1284. [0xF8] = z80_inst_unimplemented, // TODO
  1285. [0xF9] = z80_inst_unimplemented, // TODO
  1286. [0xFA] = z80_inst_unimplemented, // TODO
  1287. [0xFB] = z80_inst_unimplemented, // TODO
  1288. [0xFC] = z80_inst_unimplemented, // TODO
  1289. [0xFD] = z80_inst_unimplemented, // TODO
  1290. [0xFE] = z80_inst_unimplemented, // TODO
  1291. [0xFF] = z80_inst_unimplemented // TODO
  1292. };