i8085: correct some variable types

This commit is contained in:
hap 2025-01-11 17:58:29 +01:00
parent 4f1ab340b2
commit ee01ec6aa3
3 changed files with 25 additions and 31 deletions

View File

@ -274,21 +274,13 @@ void i8085a_cpu_device::init_tables()
/* flags */
u8 zs = 0;
if (i==0) zs |= ZF;
if (i&128) zs |= SF;
if (i == 0) zs |= ZF;
if (i & 0x80) zs |= SF;
u8 p = 0;
if (i&1) ++p;
if (i&2) ++p;
if (i&4) ++p;
if (i&8) ++p;
if (i&16) ++p;
if (i&32) ++p;
if (i&64) ++p;
if (i&128) ++p;
u8 p = (population_count_32(i) & 1) ? 0 : PF;
lut_zs[i] = zs;
lut_zsp[i] = zs | ((p&1) ? 0 : PF);
lut_zsp[i] = zs | p;
}
}
@ -307,11 +299,11 @@ void i8085a_cpu_device::device_start()
m_after_ei = 0;
m_nmi_state = 0;
m_irq_state[3] = m_irq_state[2] = m_irq_state[1] = m_irq_state[0] = 0;
m_trap_pending = 0;
m_trap_pending = false;
m_trap_im_copy = 0;
m_sod_state = true; // SOD will go low at reset
m_sod_state = 1; // SOD will go low at reset
m_in_acknowledge = false;
m_ietemp = false;
m_ietemp = 0;
init_tables();
@ -382,7 +374,7 @@ void i8085a_cpu_device::device_reset()
m_halt = 0;
m_im &= ~IM_I75;
m_im |= IM_M55 | IM_M65 | IM_M75;
m_after_ei = false;
m_after_ei = 0;
m_trap_pending = false;
m_trap_im_copy = 0;
set_inte(0);
@ -430,11 +422,11 @@ void i8085a_cpu_device::state_export(const device_state_entry &entry)
switch (entry.index())
{
case I8085_SID:
m_ietemp = ((m_im & IM_SID) != 0) && m_in_sid_func() != 0;
m_ietemp = ((m_im & IM_SID) && m_in_sid_func()) ? 1 : 0;
break;
case I8085_INTE:
m_ietemp = ((m_im & IM_IE) != 0);
m_ietemp = (m_im & IM_IE) ? 1 : 0;
break;
default:

View File

@ -103,29 +103,30 @@ protected:
PAIR m_PC,m_SP,m_AF,m_BC,m_DE,m_HL,m_WZ;
u8 m_halt;
u8 m_im; /* interrupt mask (8085A only) */
u8 m_status; /* status word */
u8 m_im; // interrupt mask (8085A only)
u8 m_status; // status word
u8 m_after_ei; /* post-EI processing; starts at 2, check for ints at 0 */
u8 m_nmi_state; /* raw NMI line state */
u8 m_irq_state[4]; /* raw IRQ line states */
u8 m_trap_pending; /* TRAP interrupt latched? */
u8 m_trap_im_copy; /* copy of IM register when TRAP was taken */
u8 m_sod_state; /* state of the SOD line */
u8 m_after_ei; // post-EI processing; starts at 2, check for ints at 0
u8 m_nmi_state; // raw NMI line state
u8 m_irq_state[4]; // raw IRQ line states
bool m_trap_pending; // TRAP interrupt latched?
u8 m_trap_im_copy; // copy of IM register when TRAP was taken
u8 m_sod_state; // state of the SOD line
bool m_in_acknowledge;
bool m_ietemp; /* import/export temp space */
u8 m_ietemp; // import/export temp space
memory_access<16, 0, 0, ENDIANNESS_LITTLE>::cache m_cprogram, m_copcodes;
memory_access<16, 0, 0, ENDIANNESS_LITTLE>::specific m_program;
memory_access< 8, 0, 0, ENDIANNESS_LITTLE>::specific m_io;
int m_icount;
/* cycles lookup */
// cycles lookup
static const u8 lut_cycles_8080[256];
static const u8 lut_cycles_8085[256];
u8 lut_cycles[256];
/* flags lookup */
// flags lookup
u8 lut_zs[256];
u8 lut_zsp[256];

View File

@ -450,6 +450,7 @@ private:
void ozmawars_port04_w(uint8_t data);
void ozmawars_port05_w(uint8_t data);
void ozmawars_io_map(address_map &map) ATTR_COLD;
uint8_t m_port03 = 0;
uint8_t m_port05 = 0;
bool m_sound_enable = 0;
@ -480,8 +481,8 @@ private:
void main_map(address_map &map) ATTR_COLD;
void io_map(address_map &map) ATTR_COLD;
uint8_t m_port_1_last;
uint8_t m_port_2_last;
uint8_t m_port_1_last = 0;
uint8_t m_port_2_last = 0;
};