mirror of
https://github.com/simh/simh.git
synced 2026-01-26 04:01:38 +00:00
Notes For V3.7-0
1. New Features 1.1 3.7-0 1.1.1 SCP - Added SET THROTTLE and SET NOTHROTTLE commands to regulate simulator execution rate and host resource utilization. - Added idle support (based on work by Mark Pizzolato). - Added -e to control error processing in nested DO commands (from Dave Bryan). 1.1.2 HP2100 - Added Double Integer instructions, 1000-F CPU, and Floating Point Processor (from Dave Bryan). - Added 2114 and 2115 CPUs, 12607B and 12578A DMA controllers, and 21xx binary loader protection (from Dave Bryan). 1.1.3 Interdata - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state. 1.1.4 PDP-11 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (WAIT instruction executed). - Added TA11/TU60 cassette support. 1.1.5 PDP-8 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (keyboard poll loop or jump-to-self). - Added TA8E/TU60 cassette support. 1.1.6 PDP-1 - Added support for 16-channel sequence break system. - Added support for PDP-1D extended features and timesharing clock. - Added support for Type 630 data communications subsystem. 1.1.6 PDP-4/7/9/15 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (keyboard poll loop or jump-to-self). 1.1.7 VAX, VAX780 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (more than 200 cycles at IPL's 0, 1, or 3 in kernel mode). 1.1.8 PDP-10 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (operating system dependent). - Added CD20 (CD11) support. 2. Bugs Fixed Please see the revision history on http://simh.trailing-edge.com or in the source module sim_rev.h.
This commit is contained in:
committed by
Mark Pizzolato
parent
15919a2dd7
commit
53d02f7fa7
@@ -1,6 +1,6 @@
|
||||
/* id_ttp.c: Interdata PASLA console interface
|
||||
|
||||
Copyright (c) 2000-2005, Robert M. Supnik
|
||||
Copyright (c) 2000-2006, Robert M. Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
ttp console (on PAS)
|
||||
|
||||
18-Oct-06 RMS Sync keyboard to LFC clock
|
||||
22-Nov-05 RMS Revised for new terminal processing routines
|
||||
29-Dec-03 RMS Added support for console backpressure
|
||||
25-Apr-03 RMS Revised for extended file support
|
||||
@@ -52,6 +53,8 @@
|
||||
#define CMD_TYP 0x01 /* command type */
|
||||
|
||||
extern uint32 int_req[INTSZ], int_enb[INTSZ];
|
||||
extern int32 pas_par (int32 cmd, int32 c);
|
||||
extern int32 lfc_poll;
|
||||
|
||||
uint32 ttp_sta = 0; /* status */
|
||||
uint32 ttp_cmd = 0; /* command */
|
||||
@@ -68,14 +71,12 @@ t_stat ttp_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
t_stat ttp_set_break (UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
t_stat ttp_set_enbdis (UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
|
||||
extern int32 pas_par (int32 cmd, int32 c);
|
||||
|
||||
/* TTP data structures */
|
||||
|
||||
DIB ttp_dib = { d_TTP, -1, v_TTP, ttp_tplte, &ttp, NULL };
|
||||
|
||||
UNIT ttp_unit[] = {
|
||||
{ UDATA (&ttpi_svc, 0, 0), KBD_POLL_WAIT },
|
||||
{ UDATA (&ttpi_svc, 0, 0), 0 },
|
||||
{ UDATA (&ttpo_svc, 0, 0), SERIAL_OUT_WAIT }
|
||||
};
|
||||
|
||||
@@ -83,7 +84,7 @@ REG ttp_reg[] = {
|
||||
{ HRDATA (CMD, ttp_cmd, 16) },
|
||||
{ HRDATA (KBUF, ttp_unit[TTI].buf, 8) },
|
||||
{ DRDATA (KPOS, ttp_unit[TTI].pos, T_ADDR_W), PV_LEFT },
|
||||
{ DRDATA (KTIME, ttp_unit[TTI].wait, 24), REG_NZ + PV_LEFT },
|
||||
{ DRDATA (KTIME, ttp_unit[TTI].wait, 24), REG_NZ + PV_LEFT + REG_HRO },
|
||||
{ FLDATA (KIREQ, int_req[l_TTP], i_TTP) },
|
||||
{ FLDATA (KIENB, int_enb[l_TTP], i_TTP) },
|
||||
{ FLDATA (KARM, ttp_karm, 0) },
|
||||
@@ -175,7 +176,7 @@ t_stat ttpi_svc (UNIT *uptr)
|
||||
{
|
||||
int32 c, out;
|
||||
|
||||
sim_activate (uptr, uptr->wait); /* continue poll */
|
||||
sim_activate (uptr, KBD_WAIT (uptr->wait, lfc_poll)); /* continue poll */
|
||||
ttp_sta = ttp_sta & ~STA_FR; /* clear break */
|
||||
if ((c = sim_poll_kbd ()) < SCPE_KFLAG) return c; /* no char or error? */
|
||||
ttp_sta = ttp_sta & ~STA_PF; /* clear parity err */
|
||||
@@ -227,7 +228,7 @@ return SCPE_OK;
|
||||
t_stat ttp_reset (DEVICE *dptr)
|
||||
{
|
||||
if (dptr->flags & DEV_DIS) sim_cancel (&ttp_unit[TTI]);
|
||||
else sim_activate (&ttp_unit[TTI], ttp_unit[TTI].wait);
|
||||
else sim_activate_abs (&ttp_unit[TTI], KBD_WAIT (ttp_unit[TTI].wait, lfc_poll));
|
||||
sim_cancel (&ttp_unit[TTO]);
|
||||
CLR_INT (v_TTP); /* clear int */
|
||||
CLR_ENB (v_TTP);
|
||||
|
||||
Reference in New Issue
Block a user