I1620: DEVICE register list should contain WAIT(TIME) or CPS but not both

Fix #632
This commit is contained in:
David Wise 2018-10-13 10:19:15 -07:00 committed by Mark Pizzolato
parent 8385ef50a6
commit 7d7a57aa88
3 changed files with 14 additions and 5 deletions

View file

@ -81,8 +81,11 @@ UNIT ptr_unit = {
REG ptr_reg[] = {
{ FLDATAD (BIN, ptr_mode, 0, "binary mode flag") },
{ DRDATAD (POS, ptr_unit.pos, T_ADDR_W, "position in the input file"), PV_LEFT },
{ DRDATAD (TIME, ptr_unit.wait, 24, "reader character delay"), PV_LEFT },
#if (SIM_MAJOR >= 4)
{ DRDATAD (CPS, ptr_unit.DEFIO_CPS, 24, "Character Input Rate"), PV_LEFT },
#else
{ DRDATAD (TIME, ptr_unit.wait, 24, "reader character delay"), PV_LEFT },
#endif
{ NULL }
};
@ -108,8 +111,11 @@ UNIT ptp_unit = {
REG ptp_reg[] = {
{ FLDATAD (BIN, ptp_mode, 0, "binary mode flag") },
{ DRDATAD (POS, ptp_unit.pos, T_ADDR_W, "position in the output file"), PV_LEFT },
{ DRDATAD (TIME, ptp_unit.wait, 24, "punch character delay"), PV_LEFT },
#if (SIM_MAJOR >= 4)
{ DRDATAD (CPS, ptp_unit.DEFIO_CPS, 24, "Character output rate"), PV_LEFT },
#else
{ DRDATAD (TIME, ptp_unit.wait, 24, "punch character delay"), PV_LEFT },
#endif
{ NULL }
};

View file

@ -98,10 +98,13 @@ REG tty_reg[] = {
{ FLDATAD (UNLOCK, tti_unlock, 0, "keyboard unlocked flag") },
{ FLDATAD (FLAG, tti_flag, 0, "set flag on next input digit"), REG_HRO },
{ DRDATAD (COL, tto_col, 7, "current column") },
{ DRDATAD (KTIME, tty_unit[UTTI].wait, 24, "keyboard polling interval"), REG_NZ + PV_LEFT },
{ DRDATAD (TTIME, tty_unit[UTTO].wait, 24, "typewriter character delay"), REG_NZ + PV_LEFT },
#if (SIM_MAJOR >= 4)
{ DRDATAD (CPS, tty_unit[UTTO].DEFIO_CPS, 24, "Character Output Rate"), PV_LEFT },
{ DRDATAD (ICPS, tty_unit[UTTI].DEFIO_CPS, 24, "Character Input Rate"), PV_LEFT },
#else
{ DRDATAD (KTIME, tty_unit[UTTI].wait, 24, "keyboard polling interval"), REG_NZ + PV_LEFT },
{ DRDATAD (TTIME, tty_unit[UTTO].wait, 24, "typewriter character delay"), REG_NZ + PV_LEFT },
#endif
{ NULL }
};
@ -502,7 +505,7 @@ return SCPE_OK;
t_stat tty_reset (DEVICE *dptr)
{
sim_activate (&tty_unit[UTTI], tty_unit[UTTI].wait); /* activate poll */
DEFIO_ACTIVATE(&tty_unit[UTTI]); /* activate poll */
sim_cancel (&tty_unit[UTTO]); /* cancel output */
tti_unlock = tti_flag = 0; /* tty locked */
tto_col = 1;

Binary file not shown.