Added a SET CPU MODEL=(MicroVAX|VAXServer) to the VAX 3900 simulator

This commit is contained in:
Mark Pizzolato 2013-01-29 08:37:58 -08:00
parent 659873bebb
commit 8df4b94e7f
5 changed files with 27 additions and 13 deletions

View file

@ -27,6 +27,7 @@
when connected to serial ports).
DHU11 (device VH) on Unibus systems now has 16 ports per multiplexer.
MicroVAX 3900 and MicroVAX II have SET CPU AUTOBOOT option
MicroVAX 3900 has a SET CPU MODEL=(MicroVAX|VAXServer) command to change between system types
#### Terminal Multiplexer additions
Added support for TCP connections using IPv4 and/or IPv6.

View file

@ -1623,17 +1623,12 @@ if (*rom == 0) { /* no boot? */
r = cpu_load_bootcode (BOOT_CODE_FILENAME, BOOT_CODE_ARRAY, BOOT_CODE_SIZE, TRUE, 0);
if (r != SCPE_OK)
return r;
rom_wr_B (ROMBASE+4, sys_model ? 1 : 2); /* Set Magic Byte to determine system type */
}
sysd_powerup ();
return SCPE_OK;
}
t_stat cpu_print_model (FILE *st)
{
fprintf (st, "MicroVAX 3900 (KA655)");
return SCPE_OK;
}
t_stat sysd_set_halt (UNIT *uptr, int32 val, char *cptr, void *desc)
{
ka_hltenab = val;
@ -1698,6 +1693,24 @@ char *sysd_description (DEVICE *dptr)
{
return "system devices";
}
t_stat cpu_set_model (UNIT *uptr, int32 val, char *cptr, void *desc)
{
if ((cptr == NULL) || (!*cptr))
return SCPE_ARG;
if (MATCH_CMD(cptr, "VAXSERVER") == 0)
sys_model = 0;
else if (MATCH_CMD(cptr, "MICROVAX") == 0)
sys_model = 1;
else
return SCPE_ARG;
return SCPE_OK;
}
t_stat cpu_print_model (FILE *st)
{
fprintf (st, "%s 3900 (KA655)", (sys_model ? "MicroVAX" : "VAXServer"));
return SCPE_OK;
}
t_stat cpu_model_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr)
{

View file

@ -30,7 +30,7 @@
#include "vax_defs.h"
char sim_name[] = "VAX";
char sim_name[] = "MicroVAX 3900";
extern DEVICE cpu_dev;
extern DEVICE tlb_dev;

View file

@ -127,11 +127,11 @@
{ UNIT_MSIZE, (1u << 28), NULL, "256M", &cpu_set_size }, \
{ UNIT_MSIZE, (1u << 29), NULL, "512M", &cpu_set_size }
#define CPU_MODEL_MODIFIERS \
{ MTAB_XTD|MTAB_VDV, 0, "MODEL", NULL, \
NULL, &cpu_show_model }, \
{ MTAB_XTD|MTAB_VDV, 0, "MODEL", "MODEL={VAXServer|MicroVAX}", \
&cpu_set_model, &cpu_show_model }, \
{ MTAB_XTD|MTAB_VDV, 0, "AUTOBOOT", "AUTOBOOT", \
&sysd_set_halt, &sysd_show_halt }, \
{ MTAB_XTD|MTAB_VDV|MTAB_NMO, 1, "NOAUTOBOOT", "NOAUTOBOOT",\
{ MTAB_XTD|MTAB_VDV|MTAB_NMO, 1, "NOAUTOBOOT", "NOAUTOBOOT", \
&sysd_set_halt, &sysd_show_halt },

Binary file not shown.