diff options
Diffstat (limited to 'opcodes.h')
| -rw-r--r-- | opcodes.h | 106 |
1 files changed, 53 insertions, 53 deletions
| @@ -189,23 +189,23 @@ struct opcode opcodes[0x100] = { | |||
| 189 | /* unofficial opcodes: https://www.nesdev.org/undocumented_opcodes.txt */ | 189 | /* unofficial opcodes: https://www.nesdev.org/undocumented_opcodes.txt */ |
| 190 | [0x0B] = { "AAC", AAC, 2, 2, false, false, false, true, AM_IMM }, | 190 | [0x0B] = { "AAC", AAC, 2, 2, false, false, false, true, AM_IMM }, |
| 191 | [0x2B] = { "AAC", AAC, 2, 2, false, false, false, true, AM_IMM }, | 191 | [0x2B] = { "AAC", AAC, 2, 2, false, false, false, true, AM_IMM }, |
| 192 | [0x87] = { "AAX", AAX, 2, 3, false, false, false, true, AM_ZP }, | 192 | [0x87] = { "SAX", SAX, 2, 3, false, true, false, true, AM_ZP }, |
| 193 | [0x97] = { "AAX", AAX, 2, 4, false, false, false, true, AM_ZP_Y }, | 193 | [0x97] = { "SAX", SAX, 2, 4, false, true, false, true, AM_ZP_Y }, |
| 194 | [0x83] = { "AAX", AAX, 2, 6, false, false, false, true, AM_IND_X }, | 194 | [0x83] = { "SAX", SAX, 2, 6, false, true, false, true, AM_IND_X }, |
| 195 | [0x8F] = { "AAX", AAX, 3, 4, false, false, false, true, AM_ABS }, | 195 | [0x8F] = { "SAX", SAX, 3, 4, false, true, false, true, AM_ABS }, |
| 196 | [0x6B] = { "ARR", ARR, 2, 2, false, false, false, true, AM_IMM }, | 196 | [0x6B] = { "ARR", ARR, 2, 2, false, false, false, true, AM_IMM }, |
| 197 | [0x4B] = { "ASR", ASR, 2, 2, false, false, false, true, AM_IMM }, | 197 | [0x4B] = { "ASR", ASR, 2, 2, false, false, false, true, AM_IMM }, |
| 198 | [0xAB] = { "ATX", ATX, 2, 2, false, false, false, true, AM_IMM }, | 198 | [0xAB] = { "ATX", ATX, 2, 2, false, false, false, true, AM_IMM }, |
| 199 | [0x9F] = { "AXA", AXA, 3, 5, false, false, false, true, AM_ABS_Y }, | 199 | [0x9F] = { "AXA", AXA, 3, 5, false, true, false, true, AM_ABS_Y }, |
| 200 | [0x93] = { "AXA", AXA, 2, 6, false, false, false, true, AM_IND_Y }, | 200 | [0x93] = { "AXA", AXA, 2, 6, false, true, false, true, AM_IND_Y }, |
| 201 | [0xCB] = { "AXS", AXS, 2, 2, false, false, false, true, AM_IMM }, | 201 | [0xCB] = { "AXS", AXS, 2, 2, false, false, false, true, AM_IMM }, |
| 202 | [0xC7] = { "DCP", DCP, 2, 5, false, false, false, true, AM_ZP }, | 202 | [0xC7] = { "DCP", DCP, 2, 5, false, true, false, true, AM_ZP }, |
| 203 | [0xD7] = { "DCP", DCP, 2, 6, false, false, false, true, AM_ZP_X }, | 203 | [0xD7] = { "DCP", DCP, 2, 6, false, true, false, true, AM_ZP_X }, |
| 204 | [0xCF] = { "DCP", DCP, 3, 6, false, false, false, true, AM_ABS }, | 204 | [0xCF] = { "DCP", DCP, 3, 6, false, true, false, true, AM_ABS }, |
| 205 | [0xDF] = { "DCP", DCP, 3, 7, false, false, false, true, AM_ABS_X }, | 205 | [0xDF] = { "DCP", DCP, 3, 7, false, true, false, true, AM_ABS_X }, |
| 206 | [0xDB] = { "DCP", DCP, 3, 7, false, false, false, true, AM_ABS_Y }, | 206 | [0xDB] = { "DCP", DCP, 3, 7, false, true, false, true, AM_ABS_Y }, |
| 207 | [0xC3] = { "DCP", DCP, 2, 8, false, false, false, true, AM_IND_X }, | 207 | [0xC3] = { "DCP", DCP, 2, 8, false, true, false, true, AM_IND_X }, |
| 208 | [0xD3] = { "DCP", DCP, 2, 8, false, false, false, true, AM_IND_Y }, | 208 | [0xD3] = { "DCP", DCP, 2, 8, false, true, false, true, AM_IND_Y }, |
| 209 | [0x04] = { "NOP", NOP, 2, 3, true, false, false, true, AM_ZP }, | 209 | [0x04] = { "NOP", NOP, 2, 3, true, false, false, true, AM_ZP }, |
| 210 | [0x14] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, | 210 | [0x14] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, |
| 211 | [0x34] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, | 211 | [0x34] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, |
| @@ -217,9 +217,9 @@ struct opcode opcodes[0x100] = { | |||
| 217 | [0x82] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, | 217 | [0x82] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, |
| 218 | [0x89] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, | 218 | [0x89] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, |
| 219 | [0xC2] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, | 219 | [0xC2] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, |
| 220 | [0xD4] = { "NOP", NOP, 2, 4, false, false, false, true, AM_ZP_X }, | 220 | [0xD4] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, |
| 221 | [0xE2] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, | 221 | [0xE2] = { "NOP", NOP, 2, 2, false, false, false, true, AM_IMM }, |
| 222 | [0xF4] = { "NOP", NOP, 2, 4, false, false, false, true, AM_ZP_X }, | 222 | [0xF4] = { "NOP", NOP, 2, 4, true, false, false, true, AM_ZP_X }, |
| 223 | [0xE7] = { "ISC", ISC, 2, 5, false, false, false, true, AM_ZP }, | 223 | [0xE7] = { "ISC", ISC, 2, 5, false, false, false, true, AM_ZP }, |
| 224 | [0xF7] = { "ISC", ISC, 2, 6, false, false, false, true, AM_ZP_X }, | 224 | [0xF7] = { "ISC", ISC, 2, 6, false, false, false, true, AM_ZP_X }, |
| 225 | [0xEF] = { "ISC", ISC, 3, 6, false, false, false, true, AM_ABS }, | 225 | [0xEF] = { "ISC", ISC, 3, 6, false, false, false, true, AM_ABS }, |
| @@ -239,50 +239,50 @@ struct opcode opcodes[0x100] = { | |||
| 239 | [0xB2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, | 239 | [0xB2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, |
| 240 | [0xD2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, | 240 | [0xD2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, |
| 241 | [0xF2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, | 241 | [0xF2] = { "KIL", KIL, 1, 0, false, false, false, true, AM_NONE }, |
| 242 | [0xBB] = { "LAR", LAR, 3, 4, false, false, true, true, AM_ABS_Y }, | 242 | [0xBB] = { "LAR", LAR, 3, 4, true, false, true, true, AM_ABS_Y }, |
| 243 | [0xA7] = { "LAX", LAX, 2, 3, false, false, false, true, AM_ZP }, | 243 | [0xA7] = { "LAX", LAX, 2, 3, true, false, false, true, AM_ZP }, |
| 244 | [0xB7] = { "LAX", LAX, 2, 4, false, false, false, true, AM_ZP_Y }, | 244 | [0xB7] = { "LAX", LAX, 2, 4, true, false, false, true, AM_ZP_Y }, |
| 245 | [0xAF] = { "LAX", LAX, 3, 4, false, false, false, true, AM_ABS }, | 245 | [0xAF] = { "LAX", LAX, 3, 4, true, false, false, true, AM_ABS }, |
| 246 | [0xBF] = { "LAX", LAX, 3, 4, false, false, true, true, AM_ABS_Y }, | 246 | [0xBF] = { "LAX", LAX, 3, 4, true, false, true, true, AM_ABS_Y }, |
| 247 | [0xA3] = { "LAX", LAX, 2, 6, false, false, false, true, AM_IND_X }, | 247 | [0xA3] = { "LAX", LAX, 2, 6, true, false, false, true, AM_IND_X }, |
| 248 | [0xB3] = { "LAX", LAX, 2, 5, false, false, true, true, AM_IND_Y }, | 248 | [0xB3] = { "LAX", LAX, 2, 5, true, false, true, true, AM_IND_Y }, |
| 249 | [0x1A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 249 | [0x1A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 250 | [0x3A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 250 | [0x3A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 251 | [0x5A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 251 | [0x5A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 252 | [0x7A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 252 | [0x7A] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 253 | [0xDA] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 253 | [0xDA] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 254 | [0xFA] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, | 254 | [0xFA] = { "NOP", NOP, 1, 2, false, false, false, true, AM_NONE }, |
| 255 | [0x27] = { "RLA", RLA, 2, 5, false, false, false, true, AM_ZP }, | 255 | [0x27] = { "RLA", RLA, 2, 5, true, true, false, true, AM_ZP }, |
| 256 | [0x37] = { "RLA", RLA, 2, 6, false, false, false, true, AM_ZP_X }, | 256 | [0x37] = { "RLA", RLA, 2, 6, true, true, false, true, AM_ZP_X }, |
| 257 | [0x2F] = { "RLA", RLA, 3, 6, false, false, false, true, AM_ABS }, | 257 | [0x2F] = { "RLA", RLA, 3, 6, true, true, false, true, AM_ABS }, |
| 258 | [0x3F] = { "RLA", RLA, 3, 7, false, false, false, true, AM_ABS_X }, | 258 | [0x3F] = { "RLA", RLA, 3, 7, true, true, false, true, AM_ABS_X }, |
| 259 | [0x3B] = { "RLA", RLA, 3, 7, false, false, false, true, AM_ABS_Y }, | 259 | [0x3B] = { "RLA", RLA, 3, 7, true, true, false, true, AM_ABS_Y }, |
| 260 | [0x23] = { "RLA", RLA, 2, 8, false, false, false, true, AM_IND_X }, | 260 | [0x23] = { "RLA", RLA, 2, 8, true, true, false, true, AM_IND_X }, |
| 261 | [0x33] = { "RLA", RLA, 2, 8, false, false, false, true, AM_IND_Y }, | 261 | [0x33] = { "RLA", RLA, 2, 8, true, true, false, true, AM_IND_Y }, |
| 262 | [0x67] = { "RRA", RRA, 2, 5, false, false, false, true, AM_ZP }, | 262 | [0x67] = { "RRA", RRA, 2, 5, true, true, false, true, AM_ZP }, |
| 263 | [0x77] = { "RRA", RRA, 2, 6, false, false, false, true, AM_ZP_X }, | 263 | [0x77] = { "RRA", RRA, 2, 6, true, true, false, true, AM_ZP_X }, |
| 264 | [0x6F] = { "RRA", RRA, 3, 6, false, false, false, true, AM_ABS }, | 264 | [0x6F] = { "RRA", RRA, 3, 6, true, true, false, true, AM_ABS }, |
| 265 | [0x7F] = { "RRA", RRA, 3, 7, false, false, false, true, AM_ABS_X }, | 265 | [0x7F] = { "RRA", RRA, 3, 7, true, true, false, true, AM_ABS_X }, |
| 266 | [0x7B] = { "RRA", RRA, 3, 7, false, false, false, true, AM_ABS_Y }, | 266 | [0x7B] = { "RRA", RRA, 3, 7, true, true, false, true, AM_ABS_Y }, |
| 267 | [0x63] = { "RRA", RRA, 2, 8, false, false, false, true, AM_IND_X }, | 267 | [0x63] = { "RRA", RRA, 2, 8, true, true, false, true, AM_IND_X }, |
| 268 | [0x73] = { "RRA", RRA, 2, 8, false, false, false, true, AM_IND_Y }, | 268 | [0x73] = { "RRA", RRA, 2, 8, true, true, false, true, AM_IND_Y }, |
| 269 | [0xEB] = { "SBC", SBC, 2, 2, false, false, false, true, AM_IMM }, | 269 | [0xEB] = { "SBC", SBC, 2, 2, false, false, false, true, AM_IMM }, |
| 270 | [0x07] = { "SLO", SLO, 2, 5, false, false, false, true, AM_ZP }, | 270 | [0x07] = { "SLO", SLO, 2, 5, true, true, false, true, AM_ZP }, |
| 271 | [0x17] = { "SLO", SLO, 2, 6, false, false, false, true, AM_ZP_X }, | 271 | [0x17] = { "SLO", SLO, 2, 6, true, true, false, true, AM_ZP_X }, |
| 272 | [0x0F] = { "SLO", SLO, 3, 6, false, false, false, true, AM_ABS }, | 272 | [0x0F] = { "SLO", SLO, 3, 6, true, true, false, true, AM_ABS }, |
| 273 | [0x1F] = { "SLO", SLO, 3, 7, false, false, false, true, AM_ABS_X }, | 273 | [0x1F] = { "SLO", SLO, 3, 7, true, true, false, true, AM_ABS_X }, |
| 274 | [0x1B] = { "SLO", SLO, 3, 7, false, false, false, true, AM_ABS_Y }, | 274 | [0x1B] = { "SLO", SLO, 3, 7, true, true, false, true, AM_ABS_Y }, |
| 275 | [0x03] = { "SLO", SLO, 2, 8, false, false, false, true, AM_IND_X }, | 275 | [0x03] = { "SLO", SLO, 2, 8, true, true, false, true, AM_IND_X }, |
| 276 | [0x13] = { "SLO", SLO, 2, 8, false, false, false, true, AM_IND_Y }, | 276 | [0x13] = { "SLO", SLO, 2, 8, true, true, false, true, AM_IND_Y }, |
| 277 | [0x47] = { "SRE", SRE, 2, 5, false, false, false, true, AM_ZP }, | 277 | [0x47] = { "SRE", SRE, 2, 5, true, true, false, true, AM_ZP }, |
| 278 | [0x57] = { "SRE", SRE, 2, 6, false, false, false, true, AM_ZP_X }, | 278 | [0x57] = { "SRE", SRE, 2, 6, true, true, false, true, AM_ZP_X }, |
| 279 | [0x4F] = { "SRE", SRE, 3, 6, false, false, false, true, AM_ABS }, | 279 | [0x4F] = { "SRE", SRE, 3, 6, true, true, false, true, AM_ABS }, |
| 280 | [0x5F] = { "SRE", SRE, 3, 7, false, false, false, true, AM_ABS_X }, | 280 | [0x5F] = { "SRE", SRE, 3, 7, true, true, false, true, AM_ABS_X }, |
| 281 | [0x5B] = { "SRE", SRE, 3, 7, false, false, false, true, AM_ABS_Y }, | 281 | [0x5B] = { "SRE", SRE, 3, 7, true, true, false, true, AM_ABS_Y }, |
| 282 | [0x43] = { "SRE", SRE, 2, 8, false, false, false, true, AM_IND_X }, | 282 | [0x43] = { "SRE", SRE, 2, 8, true, true, false, true, AM_IND_X }, |
| 283 | [0x53] = { "SRE", SRE, 2, 8, false, false, false, true, AM_IND_Y }, | 283 | [0x53] = { "SRE", SRE, 2, 8, true, true, false, true, AM_IND_Y }, |
| 284 | [0x9E] = { "SXA", SXA, 3, 5, false, false, false, true, AM_ABS_Y }, | 284 | [0x9E] = { "SXA", SXA, 3, 5, false, true, false, true, AM_ABS_Y }, |
| 285 | [0x9C] = { "SYA", SYA, 3, 5, false, false, false, true, AM_ABS_X }, | 285 | [0x9C] = { "SYA", SYA, 3, 5, false, true, false, true, AM_ABS_X }, |
| 286 | [0x0C] = { "NOP", NOP, 3, 4, true, false, false, true, AM_ABS }, | 286 | [0x0C] = { "NOP", NOP, 3, 4, true, false, false, true, AM_ABS }, |
| 287 | [0x1C] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, | 287 | [0x1C] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, |
| 288 | [0x3C] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, | 288 | [0x3C] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, |
| @@ -291,5 +291,5 @@ struct opcode opcodes[0x100] = { | |||
| 291 | [0xDC] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, | 291 | [0xDC] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, |
| 292 | [0xFC] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, | 292 | [0xFC] = { "NOP", NOP, 3, 4, true, false, true, true, AM_ABS_X }, |
| 293 | [0x8B] = { "XAA", XAA, 2, 2, false, false, false, true, AM_IMM }, | 293 | [0x8B] = { "XAA", XAA, 2, 2, false, false, false, true, AM_IMM }, |
| 294 | [0x9B] = { "XAS", XAS, 3, 5, false, false, false, true, AM_ABS_Y }, | 294 | [0x9B] = { "XAS", XAS, 3, 5, false, true, false, true, AM_ABS_Y }, |
| 295 | }; | 295 | }; |
