Added the Siemens PCD-2L

A N82330 discrete machine. Segfaults in some places
This commit is contained in:
tiseno100
2019-12-23 21:32:44 +02:00
committed by GitHub
parent 06b8732412
commit 58adb51dbe
6 changed files with 47 additions and 0 deletions

View File

@@ -237,6 +237,23 @@ machine_at_ibmxt286_init(const machine_t *model)
return ret;
}
#if defined(DEV_BRANCH) && defined(USE_SIEMENS)
int
machine_at_siemens_init(const machine_t *model)
{
int ret;
ret = bios_load_linear(L"roms/machines/siemens/286BIOS.BIN",
0x000f0000, 65536, 0);
if (bios_only || !ret)
return ret;
machine_at_ibm_common_init(model);
return ret;
}
#endif
#if defined(DEV_BRANCH) && defined(USE_OPEN_AT)
int

View File

@@ -169,6 +169,10 @@ extern int machine_at_ibmatquadtel_init(const machine_t *); // IBM AT with Quadt
extern int machine_at_ibmxt286_init(const machine_t *);
#if defined(DEV_BRANCH) && defined(USE_SIEMENS)
extern int machine_at_siemens_init(const machine_t *); //Siemens PCD-2L. N82330 discrete machine. It segfaults in some places
#endif
#if defined(DEV_BRANCH) && defined(USE_OPEN_AT)
extern int machine_at_open_at_init(const machine_t *);
#endif

View File

@@ -101,6 +101,9 @@ const machine_t machines[] = {
{ "[286 ISA] IBM PS/1 model 2011", "ibmps1es", {{"", cpus_ps1_m2011}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT | MACHINE_VIDEO | MACHINE_VIDEO_FIXED | MACHINE_HDC | MACHINE_PS2, 512,16384, 512, 63, machine_ps1_m2011_init, NULL },
{ "[286 ISA] IBM PS/2 model 30-286", "ibmps2_m30_286", {{"", cpus_ps2_m30_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT | MACHINE_VIDEO | MACHINE_VIDEO_FIXED | MACHINE_HDC | MACHINE_PS2, 1, 16, 1, 127, machine_ps2_m30_286_init, NULL },
{ "[286 ISA] IBM XT Model 286", "ibmxt286", {{"", cpus_ibmxt286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 127, machine_at_ibmxt286_init, NULL },
#if defined(DEV_BRANCH) && defined(USE_SIEMENS)
{ "[286 ISA] Siemens PCD-2L", "siemens", {{"", cpus_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 63, machine_at_siemens_init, NULL },
#endif
#if defined(DEV_BRANCH) && defined(USE_OPEN_AT)
{ "[286 ISA] OpenAT", "open_at", {{"", cpus_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 63, machine_at_open_at_init, NULL },
#endif

View File

@@ -88,6 +88,9 @@ const machine_t machines[] = {
{ "[286 ISA] IBM PS/1 model 2011", "ibmps1es", {{"", cpus_ps1_m2011}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT | MACHINE_VIDEO | MACHINE_VIDEO_FIXED | MACHINE_HDC | MACHINE_PS2, 512,16384, 512, 63, machine_ps1_m2011_init, NULL },
{ "[286 ISA] IBM PS/2 model 30-286", "ibmps2_m30_286", {{"", cpus_ps2_m30_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT | MACHINE_VIDEO | MACHINE_VIDEO_FIXED | MACHINE_HDC | MACHINE_PS2, 1, 16, 1, 127, machine_ps2_m30_286_init, NULL },
{ "[286 ISA] IBM XT Model 286", "ibmxt286", {{"", cpus_ibmxt286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 127, machine_at_ibmxt286_init, NULL },
#if defined(DEV_BRANCH) && defined(USE_SIEMENS)
{ "[286 ISA] Siemens PCD-2L", "siemens", {{"", cpus_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 63, machine_at_siemens_init, NULL },
#endif
#if defined(DEV_BRANCH) && defined(USE_OPEN_AT)
{ "[286 ISA] OpenAT", "open_at", {{"", cpus_286}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_ISA | MACHINE_AT, 256,15872, 128, 63, machine_at_open_at_init, NULL },
#endif

View File

@@ -86,6 +86,9 @@ ifeq ($(DEV_BUILD), y)
ifndef GOLDSTAR386
GOLDSTAR386 := y
endif
ifndef SIEMENS
SIEMENS := y
endif
ifndef VGAWONDER
VGAWONDER := y
endif
@@ -150,6 +153,9 @@ else
ifndef GOLDSTAR386
GOLDSTAR386 := n
endif
ifndef SIEMENS
SIEMENS := n
endif
ifndef VGAWONDER
VGAWONDER := n
endif
@@ -510,6 +516,10 @@ ifeq ($(GOLDSTAR386), y)
OPTS += -DUSE_GOLDSTAR386
endif
ifeq ($(SIEMENS), y)
OPTS += -DUSE_SIEMENS
endif
ifeq ($(VGAWONDER), y)
OPTS += -DUSE_VGAWONDER
endif

View File

@@ -86,6 +86,9 @@ ifeq ($(DEV_BUILD), y)
ifndef GOLDSTAR386
GOLDSTAR386 := y
endif
ifndef SIEMENS
SIEMENS := y
endif
ifndef VGAWONDER
VGAWONDER := y
endif
@@ -150,6 +153,9 @@ else
ifndef GOLDSTAR386
GOLDSTAR386 := n
endif
ifndef SIEMENS
SIEMENS := n
endif
ifndef VGAWONDER
VGAWONDER := n
endif
@@ -516,6 +522,10 @@ ifeq ($(GOLDSTAR386), y)
OPTS += -DUSE_GOLDSTAR386
endif
ifeq ($(SIEMENS), y)
OPTS += -DUSE_SIEMENS
endif
ifeq ($(VGAWONDER), y)
OPTS += -DUSE_VGAWONDER
endif