z80ins.dat 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398
  1. ; legend:
  2. ; r - 8-bit register: A/B/C/D/E/H/L
  3. ; r' - 8-bit register: A/B/C/D/E/H/L
  4. ; b - 3-bit immediate value (bit number: [0..7])
  5. ; n - 8-bit immediate value
  6. ; p - immediate value in [$00,$08,$10,$18,$20,$28,$30,$38]
  7. ; e - 8-bit relative jump offset
  8. ; nn - 16-bit immediate value
  9. ; 0 - the immediate value 0
  10. ; 1 - the immediate value 1
  11. ; 2 - the immediate value 2
  12. ; cc - condition: NZ/Z/NC/C/PO/PE/P/M
  13. ; C - condition C
  14. ; NC - condition NC
  15. ; Z - condition Z
  16. ; NZ - condition NZ
  17. ; dd - 16-bit register pair: BC/DE/HL/SP
  18. ; qq - 16-bit register pair: BC/DE/HL/AF
  19. ; pp - 16-bit register pair: BC/DE/IX/SP
  20. ; rr - 16-bit register pair: BC/DE/IY/SP
  21. ; A - register A
  22. ; I - register I
  23. ; R - register R
  24. ; IX - register IX
  25. ; IY - register IY
  26. ; SP - register SP
  27. ; DE - 16-bit register pair DE
  28. ; HL - 16-bit register pair HL
  29. ; AF - 16-bit register pair AF
  30. ; AF' - alternate register set, 16-bit register pair AF'
  31. ; (C) - implied parameter of the IN and OUT instructions
  32. ; (n) - 8-bit immediate port number for the IN and OUT instructions
  33. ; (nn) - memory contents at address (nn = 16-bit immediate address)
  34. ; (BC) - memory contents at address in register BC
  35. ; (DE) - memory contents at address in register DE
  36. ; (HL) - memory contents at address in register HL
  37. ; (SP) - memory contents at address in register SP
  38. ; (IX) - memory contents at address in register IX
  39. ; (IY) - memory contents at address in register IY
  40. ; (IX+d) - memory contents at address in register IX+d, d is in [-128..127]
  41. ; (IY+d) - memory contents at address in register IY+d, d is in [-128..127]
  42. [None]
  43. void void
  44. [ADC]
  45. A,r %10001rrr
  46. A,n $CE,n
  47. A,(HL) $8E
  48. A,(IX+d) $DD,$8E,d
  49. A,(IY+d) $FD,$8E,d
  50. HL,dd $ED,%01dd1010
  51. [ADD]
  52. A,r %10000rrr
  53. A,n $C6,n
  54. A,(HL) $86
  55. A,(IX+d) $DD,$86,d
  56. A,(IY+d) $FD,$86,d
  57. HL,dd %00dd1001
  58. IX,pp $DD,%00pp1001
  59. IY,rr $FD,%00rr1001
  60. [AND]
  61. A,r %10100rrr
  62. A,n $E6,n
  63. A,(HL) $A6
  64. A,(IX+d) $DD,$A6,d
  65. A,(IY+d) $FD,$A6,d
  66. [BIT]
  67. b,r $CB,%01bbbrrr
  68. b,(HL) $CB,%01bbb110
  69. b,(IX+d) $DD,$CB,d,%01bbb110
  70. b,(IY+d) $FD,$CB,d,%01bbb110
  71. [CALL]
  72. nn $CD,nn
  73. cc,nn %11ccc100,nn
  74. [CCF]
  75. void $3F
  76. [CP]
  77. A,r %10111rrr
  78. A,n $FE,n
  79. A,(HL) $BE
  80. A,(IX+d) $DD,$BE,d
  81. A,(IY+d) $FD,$BE,d
  82. [CPD]
  83. void $ED,$A9
  84. [CPDR]
  85. void $ED,$B9
  86. [CPI]
  87. void $ED,$A1
  88. [CPIR]
  89. void $ED,$B1
  90. [CPL]
  91. void $2F
  92. [DAA]
  93. void $27
  94. [DEC]
  95. r %00rrr101
  96. (HL) $35
  97. (IX+d) $DD,$35,d
  98. (IY+d) $FD,$35,d
  99. dd %00dd1011
  100. IX $DD,$2B
  101. IY $FD,$2B
  102. [DI]
  103. void $F3
  104. [DJNZ]
  105. e $10,e
  106. [EI]
  107. void $FB
  108. [EX]
  109. DE,HL $EB
  110. AF,AF' $08
  111. (SP),HL $E3
  112. (SP),IX $DD,$E3
  113. (SP),IY $FD,$E3
  114. [EXX]
  115. void $D9
  116. [HALT]
  117. void $76
  118. [IM]
  119. 0 $ED,$46
  120. 1 $ED,$56
  121. 2 $ED,$5E
  122. [IN]
  123. A,(n) $DB,n
  124. r,(C) $ED,%01rrr000
  125. [INC]
  126. r %00rrr100
  127. (HL) $34
  128. (IX+d) $DD,$34,d
  129. (IY+d) $FD,$34,d
  130. dd %00dd0011
  131. IX $DD,$23
  132. IY $FD,$23
  133. [IND]
  134. void $ED,$AA
  135. [INDR]
  136. void $ED,$BA
  137. [INI]
  138. void $ED,$A2
  139. [INIR]
  140. void $ED,$B2
  141. [JP]
  142. nn $C3,nn
  143. cc,nn %11ccc010,nn
  144. (HL) $E9
  145. (IX) $DD,$E9
  146. (IY) $FD,$E9
  147. [JR]
  148. e $18,e
  149. C,e $38,e
  150. NC,e $30,e
  151. Z,e $28,e
  152. NZ,e $20,e
  153. ; pseudo instruction - translated to JR if possible (i.e. the target is within
  154. ; -126..+129 bytes range and an appropriate form of the JR instruction exists),
  155. ; otherwise to JP
  156. [JRJP]
  157. ; JR
  158. e $18,e
  159. C,e $38,e
  160. NC,e $30,e
  161. Z,e $28,e
  162. NZ,e $20,e
  163. ; JP
  164. nn $C3,nn
  165. cc,nn %11ccc010,nn
  166. (HL) $E9
  167. (IX) $DD,$E9
  168. (IY) $FD,$E9
  169. [LD]
  170. r,r' %01rrrr'r'r'
  171. r,n %00rrr110,n
  172. r,(HL) %01rrr110
  173. r,(IX+d) $DD,%01rrr110,d
  174. r,(IY+d) $FD,%01rrr110,d
  175. (HL),r %01110rrr
  176. (IX+d),r $DD,%01110rrr,d
  177. (IY+d),r $FD,%01110rrr,d
  178. (HL),n $36,n
  179. (IX+d),n $DD,$36,d,n
  180. (IY+d),n $FD,$36,d,n
  181. A,(BC) $0A
  182. A,(DE) $1A
  183. A,(nn) $3A,nn
  184. (BC),A $02
  185. (DE),A $12
  186. (nn),A $32,nn
  187. A,I $ED,$57
  188. A,R $ED,$5F
  189. I,A $ED,$47
  190. R,A $ED,$4F
  191. dd,nn %00dd0001,nn
  192. IX,nn $DD,$21,nn
  193. IY,nn $FD,$21,nn
  194. HL,(nn) $2A,nn
  195. dd,(nn) $ED,%01dd1011,nn
  196. IX,(nn) $DD,$2A,nn
  197. IY,(nn) $FD,$2A,nn
  198. (nn),HL $22,nn
  199. (nn),dd $ED,%01dd0011,nn
  200. (nn),IX $DD,$22,nn
  201. (nn),IY $FD,$22,nn
  202. SP,HL $F9
  203. SP,IX $DD,$F9
  204. SP,IY $FD,$F9
  205. [LDD]
  206. void $ED,$A8
  207. [LDDR]
  208. void $ED,$B8
  209. [LDI]
  210. void $ED,$A0
  211. [LDIR]
  212. void $ED,$B0
  213. [NEG]
  214. void $ED,$44
  215. [NOP]
  216. void $00
  217. [OR]
  218. A,r %10110rrr
  219. A,n $F6,n
  220. A,(HL) $B6
  221. A,(IX+d) $DD,$B6,d
  222. A,(IY+d) $FD,$B6,d
  223. [OTDR]
  224. void $ED,$BB
  225. [OTIR]
  226. void $ED,$B3
  227. [OUT]
  228. (n),A $D3,n
  229. (C),r $ED,%01rrr001
  230. [OUTD]
  231. void $ED,$AB
  232. [OUTI]
  233. void $ED,$A3
  234. [POP]
  235. qq %11qq0001
  236. IX $DD,$E1
  237. IY $FD,$E1
  238. [PUSH]
  239. qq %11qq0101
  240. IX $DD,$E5
  241. IY $FD,$E5
  242. [RES]
  243. b,r $CB,%10bbbrrr
  244. b,(HL) $CB,%10bbb110
  245. b,(IX+d) $DD,$CB,d,%10bbb110
  246. b,(IY+d) $FD,$CB,d,%10bbb110
  247. [RET]
  248. void $C9
  249. cc %11ccc000
  250. [RETI]
  251. void $ED,$4D
  252. [RETN]
  253. void $ED,$45
  254. [RL]
  255. r $CB,%00010rrr
  256. (HL) $CB,$16
  257. (IX+d) $DD,$CB,d,$16
  258. (IY+d) $FD,$CB,d,$16
  259. [RLA]
  260. void $17
  261. [RLC]
  262. r $CB,%00000rrr
  263. (HL) $CB,$06
  264. (IX+d) $DD,$CB,d,$06
  265. (IY+d) $FD,$CB,d,$06
  266. [RLCA]
  267. void $07
  268. [RLD]
  269. void $ED,$6F
  270. [RR]
  271. r $CB,%00001rrr
  272. (HL) $CB,$1E
  273. (IX+d) $DD,$CB,d,$1E
  274. (IY+d) $FD,$CB,d,$1E
  275. [RRA]
  276. void $1F
  277. [RRC]
  278. r $CB,%00001rrr
  279. (HL) $CB,$0E
  280. (IX+d) $DD,$CB,d,$0E
  281. (IY+d) $FD,$CB,d,$0E
  282. [RRCA]
  283. void $0F
  284. [RRD]
  285. void $ED,$67
  286. [RST]
  287. p %11ppp111
  288. [SBC]
  289. A,r %10011rrr
  290. A,n $DE,n
  291. A,(HL) $9E
  292. A,(IX+d) $DD,$9E,d
  293. A,(IY+d) $FD,$9E,d
  294. HL,dd $ED,%01dd0010
  295. [SCF]
  296. void $37
  297. [SET]
  298. b,r $CB,%11bbbrrr
  299. b,(HL) $CB,%11bbb110
  300. b,(IX+d) $DD,$CB,d,%11bbb110
  301. b,(IY+d) $FD,$CB,d,%11bbb110
  302. [SLA]
  303. r $CB,%00100rrr
  304. (HL) $CB,$26
  305. (IX+d) $DD,$CB,d,$26
  306. (IY+d) $FD,$CB,d,$26
  307. [SRA]
  308. r $CB,%00101rrr
  309. (HL) $CB,$2E
  310. (IX+d) $DD,$CB,d,$2E
  311. (IY+d) $FD,$CB,d,$2E
  312. [SRL]
  313. r $CB,%00111rrr
  314. (HL) $CB,$3E
  315. (IX+d) $DD,$CB,d,$3E
  316. (IY+d) $FD,$CB,d,$3E
  317. [SUB]
  318. A,r %10010rrr
  319. A,n $D6,n
  320. A,(HL) $96
  321. A,(IX+d) $DD,$96,d
  322. A,(IY+d) $FD,$96,d
  323. [XOR]
  324. A,r %10101rrr
  325. A,n $EE,n
  326. A,(HL) $AE
  327. A,(IX+d) $DD,$AE,d
  328. A,(IY+d) $FD,$AE,d