mirror of
https://github.com/holub/mame
synced 2025-05-21 21:29:15 +03:00
m6809: Fixed compile on older OS X tools. (nw)
This commit is contained in:
parent
2a43be4b00
commit
ab4d9ca569
@ -46,22 +46,28 @@ private:
|
||||
typedef m6809_base_device super;
|
||||
|
||||
// addressing modes
|
||||
static const int ADDRESSING_MODE_REGISTER_E = 5;
|
||||
static const int ADDRESSING_MODE_REGISTER_F = 6;
|
||||
static const int ADDRESSING_MODE_REGISTER_W = 7;
|
||||
static const int ADDRESSING_MODE_REGISTER_X = 8;
|
||||
static const int ADDRESSING_MODE_REGISTER_Y = 9;
|
||||
static const int ADDRESSING_MODE_REGISTER_U = 10;
|
||||
static const int ADDRESSING_MODE_REGISTER_S = 11;
|
||||
static const int ADDRESSING_MODE_REGISTER_CC = 12;
|
||||
static const int ADDRESSING_MODE_REGISTER_DP = 13;
|
||||
static const int ADDRESSING_MODE_REGISTER_PC = 14;
|
||||
static const int ADDRESSING_MODE_REGISTER_V = 15;
|
||||
static const int ADDRESSING_MODE_ZERO = 16;
|
||||
enum
|
||||
{
|
||||
ADDRESSING_MODE_REGISTER_E = 5,
|
||||
ADDRESSING_MODE_REGISTER_F = 6,
|
||||
ADDRESSING_MODE_REGISTER_W = 7,
|
||||
ADDRESSING_MODE_REGISTER_X = 8,
|
||||
ADDRESSING_MODE_REGISTER_Y = 9,
|
||||
ADDRESSING_MODE_REGISTER_U = 10,
|
||||
ADDRESSING_MODE_REGISTER_S = 11,
|
||||
ADDRESSING_MODE_REGISTER_CC = 12,
|
||||
ADDRESSING_MODE_REGISTER_DP = 13,
|
||||
ADDRESSING_MODE_REGISTER_PC = 14,
|
||||
ADDRESSING_MODE_REGISTER_V = 15,
|
||||
ADDRESSING_MODE_ZERO = 16
|
||||
};
|
||||
|
||||
// interrupt vectors
|
||||
static const UINT16 VECTOR_ILLEGAL = 0xFFF0;
|
||||
|
||||
enum
|
||||
{
|
||||
VECTOR_ILLEGAL = 0xFFF0
|
||||
};
|
||||
|
||||
// CPU registers
|
||||
PAIR16 m_w;
|
||||
PAIR16 m_v;
|
||||
|
@ -517,7 +517,7 @@ LSRD:
|
||||
else
|
||||
m_cc &= ~CC_C;
|
||||
|
||||
m_d.w = set_flags<UINT16>(CC_NZ, safe_shift_right<UINT16>(m_d.w, m_temp.b.l));
|
||||
m_d.w = set_flags<UINT16>(CC_NZ, safe_shift_right<INT16>(m_d.w, m_temp.b.l));
|
||||
}
|
||||
eat(1);
|
||||
return;
|
||||
|
@ -79,11 +79,14 @@ protected:
|
||||
virtual void state_string_export(const device_state_entry &entry, astring &string);
|
||||
|
||||
// addressing modes
|
||||
static const int ADDRESSING_MODE_IMMEDIATE = 0;
|
||||
static const int ADDRESSING_MODE_EA = 1;
|
||||
static const int ADDRESSING_MODE_REGISTER_A = 2;
|
||||
static const int ADDRESSING_MODE_REGISTER_B = 3;
|
||||
static const int ADDRESSING_MODE_REGISTER_D = 4;
|
||||
enum
|
||||
{
|
||||
ADDRESSING_MODE_IMMEDIATE = 0,
|
||||
ADDRESSING_MODE_EA = 1,
|
||||
ADDRESSING_MODE_REGISTER_A = 2,
|
||||
ADDRESSING_MODE_REGISTER_B = 3,
|
||||
ADDRESSING_MODE_REGISTER_D = 4
|
||||
};
|
||||
|
||||
// register transfer
|
||||
struct exgtfr_register
|
||||
@ -93,32 +96,41 @@ protected:
|
||||
};
|
||||
|
||||
// flag bits in the cc register
|
||||
static const UINT8 CC_C = 0x01; // Carry
|
||||
static const UINT8 CC_V = 0x02; // Overflow
|
||||
static const UINT8 CC_Z = 0x04; // Zero
|
||||
static const UINT8 CC_N = 0x08; // Negative
|
||||
static const UINT8 CC_I = 0x10; // Inhibit IRQ
|
||||
static const UINT8 CC_H = 0x20; // Half (auxiliary) carry
|
||||
static const UINT8 CC_F = 0x40; // Inhibit FIRQ
|
||||
static const UINT8 CC_E = 0x80; // Entire state pushed
|
||||
enum
|
||||
{
|
||||
CC_C = 0x01, // Carry
|
||||
CC_V = 0x02, // Overflow
|
||||
CC_Z = 0x04, // Zero
|
||||
CC_N = 0x08, // Negative
|
||||
CC_I = 0x10, // Inhibit IRQ
|
||||
CC_H = 0x20, // Half (auxiliary) carry
|
||||
CC_F = 0x40, // Inhibit FIRQ
|
||||
CC_E = 0x80 // Entire state pushed
|
||||
};
|
||||
|
||||
// flag combinations
|
||||
static const UINT8 CC_VC = CC_V | CC_C;
|
||||
static const UINT8 CC_ZC = CC_Z | CC_C;
|
||||
static const UINT8 CC_NZ = CC_N | CC_Z;
|
||||
static const UINT8 CC_NZC = CC_N | CC_Z | CC_C;
|
||||
static const UINT8 CC_NZV = CC_N | CC_Z | CC_V;
|
||||
static const UINT8 CC_NZVC = CC_N | CC_Z | CC_V | CC_C;
|
||||
static const UINT8 CC_HNZVC = CC_H | CC_N | CC_Z | CC_V | CC_C;
|
||||
enum
|
||||
{
|
||||
CC_VC = CC_V | CC_C,
|
||||
CC_ZC = CC_Z | CC_C,
|
||||
CC_NZ = CC_N | CC_Z,
|
||||
CC_NZC = CC_N | CC_Z | CC_C,
|
||||
CC_NZV = CC_N | CC_Z | CC_V,
|
||||
CC_NZVC = CC_N | CC_Z | CC_V | CC_C,
|
||||
CC_HNZVC = CC_H | CC_N | CC_Z | CC_V | CC_C
|
||||
};
|
||||
|
||||
// interrupt vectors
|
||||
static const UINT16 VECTOR_SWI3 = 0xFFF2;
|
||||
static const UINT16 VECTOR_SWI2 = 0xFFF4;
|
||||
static const UINT16 VECTOR_FIRQ = 0xFFF6;
|
||||
static const UINT16 VECTOR_IRQ = 0xFFF8;
|
||||
static const UINT16 VECTOR_SWI = 0xFFFA;
|
||||
static const UINT16 VECTOR_NMI = 0xFFFC;
|
||||
static const UINT16 VECTOR_RESET_FFFE = 0xFFFE;
|
||||
enum
|
||||
{
|
||||
VECTOR_SWI3 = 0xFFF2,
|
||||
VECTOR_SWI2 = 0xFFF4,
|
||||
VECTOR_FIRQ = 0xFFF6,
|
||||
VECTOR_IRQ = 0xFFF8,
|
||||
VECTOR_SWI = 0xFFFA,
|
||||
VECTOR_NMI = 0xFFFC,
|
||||
VECTOR_RESET_FFFE = 0xFFFE
|
||||
};
|
||||
|
||||
// CPU registers
|
||||
PAIR16 m_pc; // program counter
|
||||
|
Loading…
Reference in New Issue
Block a user