mirror of
https://github.com/holub/mame
synced 2025-04-21 16:01:56 +03:00
Added i8749 CPU type for MESS.
This commit is contained in:
parent
aad4c81ac4
commit
1424fce298
@ -524,17 +524,18 @@ $(CPUOBJ)/i8085/i8085.o: $(CPUSRC)/i8085/i8085.c \
|
||||
|
||||
|
||||
#-------------------------------------------------
|
||||
# Intel 8039 and derivatives
|
||||
# Intel MCS-48 (8039 and derivatives)
|
||||
#-------------------------------------------------
|
||||
|
||||
CPUDEFS += -DHAS_I8035=$(if $(filter I8035,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_I8039=$(if $(filter I8039,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_I8048=$(if $(filter I8048,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_I8749=$(if $(filter I8749,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_N7751=$(if $(filter N7751,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_MB8884=$(if $(filter MB8884,$(CPUS)),1,0)
|
||||
CPUDEFS += -DHAS_M58715=$(if $(filter M58715,$(CPUS)),1,0)
|
||||
|
||||
ifneq ($(filter I8035 I8039 I8048 N7751 MB8884 M58715,$(CPUS)),)
|
||||
ifneq ($(filter I8035 I8039 I8048 I8749 N7751 MB8884 M58715,$(CPUS)),)
|
||||
OBJDIRS += $(CPUOBJ)/i8039
|
||||
CPUOBJS += $(CPUOBJ)/i8039/i8039.o
|
||||
DBGOBJS += $(CPUOBJ)/i8039/8039dasm.o
|
||||
|
@ -629,6 +629,16 @@ static void i8035_init (int index, int clock, const void *config, int (*irqcallb
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (HAS_I8749)
|
||||
static void i8749_init (int index, int clock, const void *config, int (*irqcallback)(int))
|
||||
{
|
||||
i8039_init(index, clock, config, irqcallback);
|
||||
|
||||
R.ram_mask = 0x7f;
|
||||
R.int_rom_size = 0x800;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (HAS_M58715)
|
||||
static void m58715_init (int index, int clock, const void *config, int (*irqcallback)(int))
|
||||
{
|
||||
@ -1024,6 +1034,22 @@ void i8048_get_info(UINT32 state, cpuinfo *info)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (HAS_I8749)
|
||||
/**************************************************************************
|
||||
* CPU-specific get_info/set_info
|
||||
**************************************************************************/
|
||||
void i8749_get_info(UINT32 state, cpuinfo *info)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
/* --- the following bits of info are returned as NULL-terminated strings --- */
|
||||
case CPUINFO_STR_NAME: strcpy(info->s, "I8749"); break;
|
||||
case CPUINFO_PTR_INIT: info->init = i8749_init; break;
|
||||
|
||||
default: i8039_get_info(state, info); break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (HAS_N7751)
|
||||
/**************************************************************************
|
||||
|
@ -102,6 +102,31 @@ extern void i8035_get_info(UINT32 state, cpuinfo *info);
|
||||
extern void i8048_get_info(UINT32 state, cpuinfo *info);
|
||||
#endif
|
||||
|
||||
/**************************************************************************
|
||||
* I8749 section
|
||||
**************************************************************************/
|
||||
#if (HAS_I8749)
|
||||
#define I8749_PC I8039_PC
|
||||
#define I8749_SP I8039_SP
|
||||
#define I8749_PSW I8039_PSW
|
||||
#define I8749_A I8039_A
|
||||
#define I8749_TC I8039_TC
|
||||
#define I8749_P1 I8039_P1
|
||||
#define I8749_P2 I8039_P2
|
||||
#define I8749_R0 I8039_R0
|
||||
#define I8749_R1 I8039_R1
|
||||
#define I8749_R2 I8039_R2
|
||||
#define I8749_R3 I8039_R3
|
||||
#define I8749_R4 I8039_R4
|
||||
#define I8749_R5 I8039_R5
|
||||
#define I8749_R6 I8039_R6
|
||||
#define I8749_R7 I8039_R7
|
||||
|
||||
#define i8749_ICount i8039_ICount
|
||||
|
||||
extern void i8749_get_info(UINT32 state, cpuinfo *info);
|
||||
#endif
|
||||
|
||||
/**************************************************************************
|
||||
* N7751 section
|
||||
**************************************************************************/
|
||||
|
@ -79,6 +79,7 @@ enum _cpu_type
|
||||
CPU_I8035,
|
||||
CPU_I8039,
|
||||
CPU_I8048,
|
||||
CPU_I8749,
|
||||
CPU_N7751,
|
||||
CPU_MB8884,
|
||||
CPU_M58715,
|
||||
|
@ -52,6 +52,7 @@ void v70_get_info(UINT32 state, cpuinfo *info);
|
||||
void i8035_get_info(UINT32 state, cpuinfo *info);
|
||||
void i8039_get_info(UINT32 state, cpuinfo *info);
|
||||
void i8048_get_info(UINT32 state, cpuinfo *info);
|
||||
void i8749_get_info(UINT32 state, cpuinfo *info);
|
||||
void n7751_get_info(UINT32 state, cpuinfo *info);
|
||||
void mb8884_get_info(UINT32 state, cpuinfo *info);
|
||||
void m58715_get_info(UINT32 state, cpuinfo *info);
|
||||
@ -369,6 +370,9 @@ static const struct
|
||||
#if (HAS_I8048)
|
||||
{ CPU_I8048, i8048_get_info },
|
||||
#endif
|
||||
#if (HAS_I8749)
|
||||
{ CPU_I8749, i8749_get_info },
|
||||
#endif
|
||||
#if (HAS_N7751)
|
||||
{ CPU_N7751, n7751_get_info },
|
||||
#endif
|
||||
|
@ -65,6 +65,7 @@ CPUS += V70
|
||||
CPUS += I8035
|
||||
CPUS += I8039
|
||||
CPUS += I8048
|
||||
CPUS += I8749
|
||||
CPUS += N7751
|
||||
CPUS += MB8884
|
||||
CPUS += M58715
|
||||
|
Loading…
Reference in New Issue
Block a user