--- mon/src/mon_6502.cpp 2000/09/25 12:44:31 1.5 +++ mon/src/mon_6502.cpp 2007/01/21 17:32:05 1.10 @@ -1,7 +1,7 @@ /* * mon_6502.cpp - 6502 disassembler * - * mon (C) 1997-2000 Christian Bauer, Marc Hellwig + * cxmon (C) 1997-2004 Christian Bauer, Marc Hellwig * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -25,7 +25,7 @@ // Addressing modes -enum { +enum AddrMode { A_IMPL, A_ACCU, // A A_IMM, // #zz @@ -42,7 +42,7 @@ enum { }; // Mnemonics -enum { +enum Mnemonic { M_ADC, M_AND, M_ASL, M_BCC, M_BCS, M_BEQ, M_BIT, M_BMI, M_BNE, M_BPL, M_BRK, M_BVC, M_BVS, M_CLC, M_CLD, M_CLI, M_CLV, M_CMP, M_CPX, M_CPY, M_DEC, M_DEX, M_DEY, M_EOR, M_INC, M_INX, M_INY, M_JMP, M_JSR, M_LDA, @@ -60,7 +60,7 @@ enum { }; // Mnemonic for each opcode -static const char mnemonic[256] = { +static const Mnemonic mnemonic[256] = { M_BRK , M_ORA , M_IJAM, M_ISLO, M_INOP, M_ORA, M_ASL , M_ISLO, // 00 M_PHP , M_ORA , M_ASL , M_IANC, M_INOP, M_ORA, M_ASL , M_ISLO, M_BPL , M_ORA , M_IJAM, M_ISLO, M_INOP, M_ORA, M_ASL , M_ISLO, // 10 @@ -96,7 +96,7 @@ static const char mnemonic[256] = { }; // Addressing mode for each opcode -static const char adr_mode[256] = { +static const AddrMode adr_mode[256] = { A_IMPL, A_INDX, A_IMPL, A_INDX, A_ZERO , A_ZERO , A_ZERO , A_ZERO, // 00 A_IMPL, A_IMM , A_ACCU, A_IMM , A_ABS , A_ABS , A_ABS , A_ABS, A_REL , A_INDY, A_IMPL, A_INDY, A_ZEROX, A_ZEROX, A_ZEROX, A_ZEROX, // 10 @@ -137,7 +137,7 @@ static const char mnem_2[] = "dnscceimnp static const char mnem_3[] = "cdlcsqtielkcscdivpxycxyrcxypraxyrpaapaplrisccdiaxyxyxasa?cerrpbmpsxaaaxcxasxyoe"; // Instruction length for each addressing mode -static const char adr_length[] = {1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 2, 2}; +static const int adr_length[] = {1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 2, 2}; /* @@ -146,7 +146,8 @@ static const char adr_length[] = {1, 1, int disass_6502(FILE *f, uint32 adr, uint8 op, uint8 lo, uint8 hi) { - char mode = adr_mode[op], mnem = mnemonic[op]; + AddrMode mode = adr_mode[op]; + Mnemonic mnem = mnemonic[op]; // Display instruction bytes in hex switch (adr_length[mode]) {