1
0
mirror of https://github.com/simh/simh.git synced 2026-01-11 23:52:58 +00:00

932 Commits

Author SHA1 Message Date
Mark Pizzolato
e71139a9a0 Added connection destination display to connection status even when a connection has not yet been established. 2013-07-11 14:09:08 -10:00
Timothe Litt
1926e9d6a9 Correct IOLN for DMP, DMV
Sigh.
2013-07-11 18:10:54 -04:00
Timothe Litt
b7f0c79d8d PDP10 Doc update for KDP, I/O space 2013-07-11 16:38:29 -04:00
Timothe Litt
6de3662eaa Fix sim_devices entries for DMCs
Still used old arrayed device, causing autoconfigure crashes.
2013-07-11 16:28:42 -04:00
Timothe Litt
e3b885505f Merge branch 'KDP' of http://github.com/tlhackque/simh into KDP
Conflicts:
	PDP11/pdp11_dmc.c
2013-07-11 16:04:40 -04:00
Timothe Litt
52389b7a88 DMC, DUP: IOLN in DIB 2013-07-11 15:50:23 -04:00
Timothe Litt
fd3eb2e952 Merge branch 'master' into KDP 2013-07-11 15:45:20 -04:00
Timothe Litt
91c7d26095 SHOW IOSPACE, again
Show IOSPACE doesn't always get the number of devices right due to device creativity.

o The distinction between UNIT and DEVICE has blurred
o MUX devices merge several physical devices into one device/unit
o Dynamic device sizing has made things more volatile.

This edit solves the problem for SHOW IOSPACE by adding an (optional) word to the DIBs.
The word contains the amount of IO space consumed by each instance of the physical device that's being emulated.
E.G., if it's a DZ11, the device is the DZ11 module, or 8 lines, even though the MUX device may support 32.

This enables SHOW IOSPACE to determine the number of physical devices being emulated, which is what folks need when configuring software.  The word may have other uses - in a generic dynamic device sizing routine - which is why the amount of IOSPACE per device was chosen rather than the 'number of physical devices.'

The edit should not make any existing device regress.  If the new word (ulnt) is zero (not initialized), SHOW IOSPACE will default to the number of units in the device, or if there's no device (CPUs), 1 as before.  If it is present, the number of devices is the calculated as total allocation/allocation-per-device.

The edit updates all the devices that seem to require this treatment, and all the processors that define the UNIBUS/QBUS DIBs.
2013-07-11 15:39:15 -04:00
Timothe Litt
a5ef1ba2e6 PDP10/11: Include DUPs and KMCs
For the 11, include 2 KMCs, 0 initially enabled

For the 10, include 1 KMC and 4 DUPs.  The KMC is not initially enabled.

The -10 only supports 2 DUPs, but I have a small patch that will allow it to run 4.
2013-07-11 12:10:53 -04:00
Mark Pizzolato
95e54dc60e Merge remote-tracking branch 'origin/master' 2013-07-10 12:04:23 -10:00
Mark Pizzolato
1852f74bba DMC11 Rework
- Reworked the pdp11_dmc implementation to use the TMXR library for network I/O.
- Removed the need for a Primary or Secondary mode describing a DMC line setup/operation.
- Added additional unit to perform I/O polling activities to the DMC and DMP/DMV devices.
- Added Modem status information describing the link state to the register information provided.
- Added a command out queue to pass status information to the host.
2013-07-10 11:59:45 -10:00
Mark Pizzolato
c454aa2498 Added extended packet sending and receiving semantics to TMXR allowing for an optional frame byte to exist between length prefixed data packets 2013-07-10 11:47:04 -10:00
Timothe Litt
07432b7272 DUP: Remove redundant transmit packet trace
The XMT trace is done in ddcmp_tmxr_put_lacket_ln, and is redundant in dup_put_msg_bytes.
2013-07-10 13:01:53 -04:00
Timothe Litt
06ec621754 DUP: Modem change bits
The modem change bits are specified to:
  o Reset when RXCSR is read, on bus init and device reset.
  o Set when modem signals change

This corrects the implementation.  Previously, the change bits were both set and cleared whenever modem status was polled, which happens every dup_svc poll.
2013-07-10 12:58:46 -04:00
Timothe Litt
6998276aec DUP: Add show dup connections
It's useful to know DUP connection state.
2013-07-10 12:46:33 -04:00
Timothe Litt
e9f4c2e037 Merge branch 'master' into KDP 2013-07-10 06:20:53 -04:00
Timothe Litt
5ab2d189ab PDP10 update
EA calc of interrupt instructions is an extension by SimH, and performed incorrectly.  Indirect references are resolved in current context, not exec mode.

Since the Console Execute emulation takes advantage of this extension, correct it to calculate the EA in EXEC mode.
2013-07-10 06:20:01 -04:00
Timothe Litt
7d4481659e DDCMP Trace enhancements
o Decode Link as Q & S flags
o Decode NAK reasons as text
o Make decode strings/pointers const
2013-07-09 06:49:29 -04:00
Timothe Litt
066e192db2 KDP infrastructure
Add # units/devices to show iospace.  For the devices that use units to represent multiple CSR allocations, that helps make sense of the table.

Correct the KDP and DMC autoconfigure table for the 11/VAX.

Correct the DMC device entries in pdp11_sys to match Mark's versions.
2013-07-08 18:46:52 -04:00
Mark Pizzolato
071b8e5cd0 Fix attach help for pdp11_dl (reported by Reindert Voorhorst) 2013-07-08 06:17:08 -10:00
Timothe Litt
317efadcdc DUP: Fix byte writes to odd addresses
Typo.
2013-07-08 09:38:59 -04:00
Timothe Litt
6a9c60c7e7 Fix CR builds
On platforms where the translation code default is dynamic, the default table pointer can't be const.

Remove const from the table pointer.
2013-07-08 07:22:29 -04:00
Mark Pizzolato
1b6fc77421 Fixed multiplexer attach bug introduced when the DEV_DONTAUTO flag was added 2013-07-07 13:49:31 -10:00
Timothe Litt
cd86bc5448 Restore Mark's DMC work from previous repo 2013-07-06 11:16:12 -04:00
Timothe Litt
fb80131c2e Merge branch 'master' into KDP
Bring all master changes, including KDP infrastructure, into KDP
2013-07-05 07:04:59 -04:00
Timothe Litt
467de41bc4 Merge latest tmxr from old repo 2013-07-05 06:18:30 -04:00
Timothe Litt
faf77b008a Merge Mark's new pdp11_dup from previous repository 2013-07-05 01:00:10 -04:00
Timothe Litt
edf467ad0a KMC11-A/DUP (KDP) baseline 2013-07-05 00:54:05 -04:00
Timothe Litt
c2b8523394 PDP-11/VAX NPR to IOSPACE 2013-07-05 00:50:31 -04:00
Timothe Litt
0cc3783711 PDP-11/VAX Update: NPR to/from IO Space
Matches PDP-10 change.  Necessary for KDP, harmless otherwise.
2013-07-05 00:48:10 -04:00
Timothe Litt
3acbd0e2ca SCP: Prevent use of uninitialized pointer. 2013-07-05 00:24:21 -04:00
Timothe Litt
4497bba48f PDP-11/VAX update: SHOW IOSPACE
Teach SHOW IOSPACE to output vector and BR addresses as well as CSR addresses.
2013-07-05 00:23:33 -04:00
Timothe Litt
1bfc2bc57e PDP-10 update: CD20
Make the card reader work on TOPS-10 and TOPS-20.
Augmented Image ECO was not implemented.
Simplify UI by defining commands for the various options/models emulated based on the simulator being built.
Document, and make the help conditional on model where that reduces clutter.
Deal with <CR><LF> reading ASCII files (file is opened 'rb' in scp's attach ; it shouldn't be.
Add translation support for DEC 026/029 full 7-bit ASCII, an ANSI standard & used by TOPS-10/20.
Deliver EOF at the correct time(s).
Preliminary support for update to card image spec being negotiated with the author.
2013-07-05 00:16:11 -04:00
Timothe Litt
9c7f4237d3 PDP-10 update
Halt code for Console FE errors
2013-07-05 00:07:01 -04:00
Timothe Litt
6e78905ecc PDP-10 Update: TIM
Fix subtle errors in timer/timebase implementation.
Document mechanisms.
Reduce magic constants by using what the OS sets via wrint.
2013-07-05 00:03:39 -04:00
Timothe Litt
6243f9314f PDP-10 update: LP20
Add Optical VFU support
Correct some inconsistencies with the hardware.
Add documentation and help.
Flush output file after 10 seconds of idleness to allow external watchers/processors to access entire job without forcing a simulator halt or detach/attach.
Make CR return to column 0, not column 1.
Make DAVFU contents accessible via SHOW.
Initialize RAM structures on power-up reset, but not reboot.
2013-07-05 00:01:24 -04:00
Timothe Litt
0e939d29e8 PDP-10 update
Implement keep-alive and os-requested reload functions of FE.
Preserve HW config flags during (re-) boot.
Allow IPL30 device to interrupt.
Add 18-bit DMA functions.
Implement DMA to/from I/O space.
Optimize DMA memory mapping - once per page, not once per byte.
Teach SHOW IO to report vectors and BR levels as well as CSR addresses.
Add DUP and KDP to Autoconfigure table.
2013-07-04 23:56:24 -04:00
Timothe Litt
8df4e2a3fd Update pdp-10 documentation 2013-07-04 23:40:43 -04:00
Mark Pizzolato
64ed03d10a Revert clearing of sim_interval on sig-int to properly manage the passage of time. 2013-07-01 09:49:47 -10:00
Mark Pizzolato
fa0086ab74 change QVSS device to autoconfigure its vector so other autoconfigured devices get correct vector assignments when the QVSS device is enabled 2013-07-01 09:47:54 -10:00
Mark Pizzolato
5de0c8db9c Instrumented the qvss activities for better debug support 2013-06-30 08:37:29 -10:00
Mark Pizzolato
1f8b3be4c0 Cleanup remote console single command mode. 2013-06-25 04:58:34 -10:00
Mark Pizzolato
5a21db5df6 Fix TMXR line transmit buffer allocation to always be allocated if a listening socket is open 2013-06-24 10:58:28 -07:00
Mark Pizzolato
9f430923c4 Merge remote-tracking branch 'origin/master' 2013-06-20 09:15:53 -07:00
Mark Pizzolato
469b4b249c Fixed typo in comment 2013-06-20 09:11:51 -07:00
Timothe Litt
e529273dee Merge branch 'master' of https://github.com/tlhackque/simh 2013-06-19 08:00:36 -04:00
Timothe Litt
c3b1d9abdd Boot ROMs, again
Make the boot ROMs a bit easier to maintain.

Add assertion that the two variants of each are the same size.

Add offsets to the comments so it's easier to see where jumps are going.
2013-06-19 06:05:57 -04:00
Timothe Litt
9681843fb5 PDP-10 tape boot rom update
The boot rom for tape didn't handle a tapes coming on-line, didn't take
the RH/TM/addresses from the FE.  The launcher also didn't handle
autoboot.

Now it does, with the restriction that ITS will only talk to UBA1.
2013-06-19 05:49:21 -04:00
Timothe Litt
65ea457d5b PDP-10 tape boot rom update
The boot rom for tape didn't handle a tapes coming on-line, didn't take
the RH/TM/addresses from the FE.  The launcher also didn't handle
autoboot.

Now it does, with the restriction that ITS will only talk to UBA1.
2013-06-19 05:49:07 -04:00
Timothe Litt
2efb0a1d65 Add -A to boot, Document & init FE comm area
The KS10's 8080 interfaces to the OS thru a small communications region.

The documentation is rather lacking, and the 8080 microcode is difficult
to follow.  Many years ago (while still at DEC), I worked it out, and
put definitions into TOPS-10.  They're now here, too.

Also, properly initialize the KLINIK communication words and the
keep-alive word.
2013-06-18 22:42:48 -04:00