MicroVAX2: Add IDLE support for Console ROM and Diagnostic Monitor

This commit is contained in:
Mark Pizzolato 2019-07-17 09:00:24 -07:00
parent 0b9cfa9b4d
commit 7b5dc834fd

View file

@ -424,7 +424,7 @@ REG cpu_reg[] = {
MTAB cpu_mod[] = {
{ UNIT_CONH, 0, "HALT to SIMH", "SIMHALT", NULL, NULL, NULL, "Set HALT to trap to simulator" },
{ UNIT_CONH, UNIT_CONH, "HALT to console", "CONHALT", NULL, NULL, NULL, "Set HALT to trap to console ROM" },
{ MTAB_XTD|MTAB_VDV, 0, "IDLE", "IDLE={VMS|ULTRIX|ULTRIX-1.X|ULTRIXOLD|NETBSD|NETBSDOLD|OPENBSD|OPENBSDOLD|QUASIJARUS|32V|ELN}{:n}", &cpu_set_idle, &cpu_show_idle, NULL, "Display idle detection mode" },
{ MTAB_XTD|MTAB_VDV, 0, "IDLE", "IDLE={VMS|ULTRIX|ULTRIX-1.X|ULTRIXOLD|NETBSD|NETBSDOLD|OPENBSD|OPENBSDOLD|QUASIJARUS|32V|ELN|MDM}{:n}", &cpu_set_idle, &cpu_show_idle, NULL, "Display idle detection mode" },
{ MTAB_XTD|MTAB_VDV, 0, NULL, "NOIDLE", &sim_clr_idle, NULL, NULL, "Disables idle detection" },
MEM_MODIFIERS, /* Model specific memory modifiers from vaxXXX_defs.h */
{ MTAB_XTD|MTAB_VDV|MTAB_NMO|MTAB_SHP|MTAB_NC, 0, "HISTORY", "HISTORY",
@ -2490,8 +2490,11 @@ for ( ;; ) {
break;
case BLBC:
if ((op0 & 1) == 0) /* br if bit clear */
if ((op0 & 1) == 0) { /* br if bit clear */
if (fault_PC == 0x20040C09) /* MicroVAX 2 Boot ROM Character Prompt? */
cpu_idle();
BRANCHB (brdisp);
}
break;
/* Extract field instructions - ext?v pos.rl,size.rb,base.wb,dst.wl
@ -3727,6 +3730,7 @@ static struct os_idle os_tab[] = {
{ "OPENBSDOLD", VAX_IDLE_QUAD },
{ "32V", VAX_IDLE_VMS },
{ "ELN", VAX_IDLE_ELN },
{ "MDM", VAX_IDLE_ELN },
{ NULL, 0 }
};