Commit graph

3120 commits

Author SHA1 Message Date
Mark Pizzolato
e05de3e50c TMXR: Provide Modem RING signal to notify MUX line of potential connection
When a new connection arrives it will be bound to the first line found
which has DTR enabled (considering the line order rules).  If none is
available, then all currently unconnected lines will have the RING signal
enabled.  If no such lines exist, the incoming connection is rejected with
"All connections busy".   If a currently disconnected line (with RING
enabled) raises DTR within 3 seconds, then that line gets the pending
connection and all other lines with RING enabled have RING disabled.
If 3 seconds pass without DTR coming up on any line with RING enabled
coming on, all lines with RING enabled will have RING disabled and the
incoming connection will be rejected with "No answer on any connection"
2016-04-08 03:09:51 -07:00
Mark Pizzolato
7b3e63aa75 TMXR: Return modem Ring signal only for connected lines
Ring indicates an incoming call and should preceded carrier coming up,
it shouldn't persist beyond the initial call/session setup.
2016-04-07 16:46:03 -07:00
Ray Jewhurst
09109d2186 TX-0: Added register descriptions to all devices 2016-04-07 15:40:04 -07:00
Ray Jewhurst
e67a180518 PDP-4/7/9/15: Added register descriptions to all devices 2016-04-07 15:40:04 -07:00
Ray Jewhurst
54b3ca04a1 PDP-1: Added register descriptions to all devices. 2016-04-07 15:40:03 -07:00
Mark Pizzolato
3fadb7e376 TMXR: Allow DTR drop to disconnect any network connected line.
Previously, this only worked for lines which had full modem signaling enabled.
2016-04-07 10:19:26 -07:00
Mark Pizzolato
ed4631b8e9 TMXR: Fix RESTORE for full modem lines connected to serial ports
Full modem lines depend on the simulated OS to fully configure the line
parameters (speed, parity, etc.), so setting line speed during a normal
attach violates that behavior.  However, when a RESTORE operation is
being performed, we are obliged to restore the OS set line parameters
which we know were already set by the simulated OS.
2016-04-07 10:09:30 -07:00
Mark Pizzolato
cb96abef96 PDP11, VAX: Use standard error status reporting with richer message text in auto-config 2016-04-05 15:01:11 -07:00
Mark Pizzolato
46465d3348 VAX: Add explanation to reason for stopping due to invalid PSL value
A user could change the contents of the PSL via a DEPOSIT command.
If the resulting PSL indicates Interrupt Stack and IPL is 0, then this is
equivalent to MTPR #0,#IPL which is explicitly described as "undefined"

When a MTPR #0,#IPL is performed, the VAX chip microcode doesn't check,
neither does the 780 microcode.  Nothing bad will happen immediately,
however when an interrupt occurs, the saved PSL will now contain IPL 0
and Interrupt Stack.  This combination will cause the REI dismissing the
taken interrupt to fail.  To avoid a user manually creating this via
a DEPOSIT command or to potentially detect this condition while stepping
through instructions this check refuses to execute when the PSL is
invalid.  This change merely provides an explanation.

On page 5-37 of the VAX SRM (DEC standard 32), the REI pseudo-code defines
exactly what a legal PSL looks like. The check at the beginning of
sim_instr is a direct implementation of that check, intended to prevent
the user from creating an inconsistent PSL through the simulator console.
In a VAX chip, the console code would exit by a genuine REI, and any
illegal value created by the user would cause a system stop (return to the
console).

On page 5-43, the revision history notes that in rev 8 of chapter 5,
MTPR #0,#IPL was made undefined. Because MXPR is privileged, and the
general assumption was that VMS knew what it was doing, no one realized
the potential inconsistency that MTPR #IPL could create until it was
too late. "Undefined" allows any behavior, up to and including blowing up
the system.
2016-04-05 06:44:30 -07:00
Mark Pizzolato
9bfdc1fb42 PDP11, VAX: Add XQ device delay to receive processing for loopback and setup packets 2016-04-05 05:21:04 -07:00
Mark Pizzolato
35180aabb0 PDP11, VAX: Fix DELQA device identity sensing (DEQNA & LockMode) 2016-04-05 05:17:51 -07:00
Tony Nicholson
ac2e3d9c62 VAX: Fix external type definition for BadCmPSL
Compilation under HP C V7.3-009 on OpenVMS Alpha V8.3 detected this
problem
2016-04-02 07:29:57 -07:00
Mark Pizzolato
488e747886 PDP11, VAX: Assure that DMA output to non-connected lines completes normally
Also make all scheduled timing behaviors consistent and not performed by
the input polling unit which may have different scheduling characteristics
to reflect input speed rate limiting.
2016-03-30 09:59:09 -07:00
Mark Pizzolato
bcf6e288b2 PDP11, DH11, DHU11: Fix startup initialization delay in DHU mode
Excessive delay would be reported on Ultrix as:

     "Warning: DHU device failed to exit self-test"

As discussed in #296
2016-03-29 17:22:55 -07:00
Mark Pizzolato
02d9bc304b makefile: Avoid trying to build using static libraries for libsdl and libsdl2.
Fix #297 (at least for OpenSUSE Leap 42.1)
2016-03-29 14:06:15 -07:00
Mark Pizzolato
736e341fd2 makefile: Fix OS X build to correctly supply input events for video capable sims 2016-03-28 18:16:59 -07:00
Mark Pizzolato
fb36c22058 makefile: simplify building Video support by leveraging sdl-config and sdl2-config 2016-03-27 14:00:17 -07:00
Mark Pizzolato
2b155ba29d VAX780, VAX750, VAX730, VAX8600: Add TC11/TU56 (DECtape) device to Unibus VAX simulators
VMS Driver and support files for the TC11 should be available at
http://bitsavers.org/bits/DEC/vax/vms/dkdriver_vms.zip
2016-03-27 12:28:02 -07:00
Mark Pizzolato
72c328e771 PDP7: Fix Visual Studio and VMS build for new GRAPHICS-2 device 2016-03-27 04:43:35 -07:00
Phil Budne
736bf138b9 PDP7: GRAPHICS-2 A bit more description on the hardware, and UNIX-7 usage,
additional thoughts on creating a web interface!!!
2016-03-27 04:36:49 -07:00
Phil Budne
3167abeb93 PDP7: GRAPHICS2 send anything new before pressing button 7! 2016-03-27 04:36:37 -07:00
Phil Budne
8cf83c1b12 PDP7: GRAPHICS2 works, mostly 2016-03-27 04:36:05 -07:00
Phil Budne
90730088fb PDP7: GRAPHICS2 fix "write button lights" IOT
revert back to what it had been (octal/decimal confusion)
2016-03-27 04:35:01 -07:00
Phil Budne
f9d3081cd7 PDP7: GRAPHICS2 Fix keyboard input; map CR to NL on input; stuff CR on output 2016-03-27 04:34:36 -07:00
Phil Budne
8f7523bd45 PDP7: GRAPHICS-2 rename pdp18b_g2.c pdp18b_g2tty.c
This allows for storage scope simulation (too)!
(there is one program among the PDP-7 UNIX sources that uses the display)
2016-03-27 04:33:48 -07:00
Phil Budne
770c37309e PDP7: GRAPHICS2 cleanup, output side starting to work, but not input side? 2016-03-27 04:33:21 -07:00
Phil Budne
40a3628173 PDP7: Start of Bell Labs GRAPHICS-2 simulation (as "Glass TTY") 2016-03-27 04:33:02 -07:00
Mark Pizzolato
b9c43e7eec PDP11: Fix compiler warnings due to recent Xcode version change on OS X 2016-03-25 17:45:20 -07:00
Mark Pizzolato
adcd64d20c makefile: Fix build of VAX simulator which was recently broken 2016-03-25 17:44:44 -07:00
Mark Pizzolato
fb9e0ac354 makefile: Fix -fwhole-program warnings on OS X with newest Xcode 2016-03-25 17:26:30 -07:00
Mark Pizzolato
d2269f8bd5 VAX: Fix compile error introduced by previous commit. 2016-03-25 09:37:27 -07:00
Mark Pizzolato
126032428c VAX: Add IDLE names which align with various BSD Version names
Fix #294
2016-03-25 09:32:36 -07:00
Mark Pizzolato
bfe87ed1c5 VAX780, VAX750, VAX730, VAX8600: Add TC11/TU56 (DECtape) device to Unibus VAX simulators 2016-03-25 04:01:44 -07:00
Mark Pizzolato
d0e3d2252a VAX: Correct documented list of CPU IDLE options.
Fix #294
2016-03-24 10:17:21 -07:00
Mark Pizzolato
733f904b8c VAX: Removed SET CPU IDLE=ALL which can only produce strange behavior
As discussed in issue #294
2016-03-24 09:49:28 -07:00
Mark Pizzolato
e7f7b10f6d BESM6: Change REGister initializers to use sim_defs.h defined macros. 2016-03-23 17:43:13 -07:00
Mark Pizzolato
fc4171140a SCP: Add BINRDATA, BINRDATAD and BINRDATADF REG initialization macros.
These describe a register which is to be displayed in binary.
2016-03-23 00:43:36 -07:00
Mark Pizzolato
313a8e2608 SCP: Defer readline initialization until immediately before it will be used.
On some platforms, readline seems to behave in unexpected ways if another
file is already open when it is initialized.  Fix: #291
2016-03-22 18:41:50 -07:00
Mark Pizzolato
beaabbc35b ETHER: Add libpcap version information to the output of SHOW ETHERNET 2016-03-22 13:35:04 -07:00
Mark Pizzolato
e153b7f224 PDP8, VAX750: Fix compiler detected errors in REG initializers 2016-03-18 15:43:30 -07:00
Mark Pizzolato
80321577f9 PDP10: Adjust build to include network support 2016-03-18 09:29:45 -07:00
Mark Pizzolato
3ff89074f5 SCP: Add generic REGDATA register populating macro.
This allows simulator code to be insulated from any changes which may
be made to the REG structure in the future.  The REGDATA macro will be
update as needed to avoid any changes in simulator specific code.
2016-03-17 10:45:45 -07:00
Mark Pizzolato
a7938b455c DOC: Update "Adding a Device to a Virtual Machine" to include details on the PDP18B simulators from Bob Supnik 2016-03-17 07:19:54 -07:00
Mark Pizzolato
329f42a1fc SCP: Rework newly added REG macro definitions to avoid problems with prior declarations
Fix #288
2016-03-16 20:33:41 -07:00
Mark Pizzolato
e0e58fce66 PDP15: Update pdp18b_rp from Bob Supnik.
1. Added RP03 support and supporting "SET" commands.
2. Fixed implementation of DPCF (it's a full reset and not blocked by BUSY).
3. Fixed handling of JOB DONE flag (not touched by NOP, SEEK, or RECAL).
2016-03-16 12:49:03 -07:00
Mark Pizzolato
af0420f92b TMXR: Add explanatory messages to attach failures 2016-03-16 12:24:41 -07:00
Mark Pizzolato
6fab4cd72c PDP11: Fix TU58 boot and unimplemented commands from Don North
As discussed in #285 and #287
2016-03-16 08:41:51 -07:00
Mark Pizzolato
9de34d7f60 TMXR: Avoid assigning incoming connections to modem enabled lines which don't have DTR raised. 2016-03-15 17:32:09 -07:00
Mark Pizzolato
f71acb307d SCP: Fix expect exit behavior to not be a reason a DO command procedure exits.
The exploit purpose of an EXPECT command is to return control to the SCP
interpreter when data output matches the expect condition;  This will then
allow either related action commands specified on the EXCEPT command to
be performed or subsequent commands in the running command file.
2016-03-15 14:48:53 -07:00
Mark Pizzolato
95d2365c52 PDP18B: Update console CR/LF echo behavior from Bob Supnik
The terminal service (in the ISR) forces a CR to be output IMMEDIATELY (before anything in the output queue) when 0212 is seen on input, so it needs to echo as a LF.

I hadn't seen any (other) echo support, so I had assumed the interface was half-duplex, which of course means passwords would appear on the paper!
2016-03-15 11:33:29 -07:00