Commit graph

1347 commits

Author SHA1 Message Date
Mark Pizzolato
b907790cc1 ETHER: Fix to allow proper building and operation when networking support is undesired or unavailable. #143 2014-07-10 14:53:21 -07:00
Peter Schorn
a0c978f5f7 AltairZ80: Improved Altair Minidisk support from Mike Douglas 2014-07-05 09:44:20 +02:00
Mark Pizzolato
f961a98ba9 Documentation update from Bob Supnik 2014-06-11 16:39:40 -07:00
Mark Pizzolato
d26bf25e97 Compiler suggested cleanups 2014-06-10 14:21:11 -07:00
Mark Pizzolato
fc4fb737f1 Compiler indicated cleanup - Reported by Peter Schorn 2014-06-10 13:15:47 -07:00
Mark Pizzolato
c15c0058f4 ETHER: Made LAN connections more robust under failing network conditions.
Avoid permanent network network hangs when a network transport starts to return errors for various reasons.
These hangs also result in at least one thread in a CPU bound loop attempting to read on a pcap connection which will never be useful again.

When transmit or receive errors occur, the invoking thread sleeps for 1 second and subsequent operations proceed.  When the total of read + write errors reaches a multiple of ETH_ERROR_REOPEN_THRESHOLD the current transport connection (usually pcap) is closed and re-opened after a ETH_ERROR_REOPEN_PAUSE second delay.  If the open succeeds, we're happy.  If it fails, then the link behaves as if it were never attached until some subsequent operator intervention is performed.

Activities which are known to induce this problems include (but are not limited to) when a simulator is running in a Windows Virtual Machine on a Hyper-V host system and the Hyper-V host system performs a SAVE and a subsequent Restart of the Guest Windows Virtual Machine.  This operation can occur due to specific operator requests or merely when the Hyper-V host system reboots.
2014-06-10 10:20:02 -07:00
Mark Pizzolato
e9b312f26a PDP11, VAX: Added Ethernet packet transmission throttling support to XQ and XU devices.
Migrated the XQ help to the hierarchical help model.  This is a work in progress which will eventually merge much from 0readme_ethernet.txt into the device help.
2014-06-06 15:03:31 -07:00
Mark Pizzolato
753e4dc925 PDP10, PDP11, VAX: Fix buffer leak while generating NAK messages 2014-06-03 12:09:43 -07:00
Mark Pizzolato
a6161c16b1 PDP10, PDP11, VAX: Fix out of order packet numbers after processing some NAK data. Also restart outgoing packet flow consistently if an output stall occurred. 2014-06-01 14:06:46 -07:00
Mark Pizzolato
959ebe7210 PDP10, PDP11, VAX: Fixed DMC/DMR DDCMP implementation to only send a single NAK when a data packet arrives out of order. 2014-05-31 13:26:46 -07:00
Mark Pizzolato
a8a0182f74 PDP10, PDP11, VAX: Fixed Sync Data corruption Troll to actually discard transmit packets which it thinks it wants to. 2014-05-31 13:24:49 -07:00
Mark Pizzolato
779e2437bd PDP10, PDP11, VAX: Fix DMC/DMR DDCMP implementation to not crash due to buffer exhaustion while generating NAK packets for missing packets. 2014-05-30 11:30:07 -07:00
Mark Pizzolato
963ff98da4 PDP10, PDP11, VAX780, VAX750, VAX730: Fixed DMC/DMR DDCMP implementation to be tolerant of packet corruption. 2014-05-29 15:48:00 -07:00
Mark Pizzolato
06a63e5704 PDP10, PDP11, VAX780, VAX750, VAX730: Fix DMC/DMR simulation to generate NAK messages with the correct reason for CRC errors. 2014-05-29 09:43:17 -07:00
Mark Pizzolato
d57e37a392 ETHER, PDP11, VAX: Added a built-in loopback agent which all ethernet devices can leverage to detect MAC address conflicts.
Some of this behavior was previously available in the pdp11_xq simulation for the DELQA device variants, but not the DEQNA.  This adds the behavior for all ethernet devices.

The helps to avoid MAC address conflicts since the Ethernet physical address is completely user settable, and starts with a static value.  Multiple simulators on the same LAN will have conflicting addresses if they don't specifically set unique values.
2014-05-29 09:42:02 -07:00
Peter Schorn
f8020a2c4c AltairZ80: Addressed Microsoft compiler generated warnings 2014-05-29 18:12:18 +02:00
Peter Schorn
589aca19f4 AltairZ80: Added Motorola 68000 CPU support for CP/M-68K, support for Altair mini-disk format, added descriptions for all device registers 2014-05-27 20:01:30 +02:00
Mark Pizzolato
709016c356 PDP10, PDP11, VAX: Revert effort to Avoid returning "Line Unit" test failed after DMC/DMR master clear if a line is not attached. To be addressed more thoroughly later. 2014-05-26 05:32:38 -07:00
Mark Pizzolato
340e7eb40b PDP11, VAX780, VAX8600, VAX750, VAX730: Fix second DEUNA/DELUA device which would crash the simulator when detaching. Problem reported by Jordi Guillaumes Pons. 2014-05-26 04:47:57 -07:00
Mark Pizzolato
27a8a14927 VAX730: Fix 3MB memory setting. Found by Brad Parker. 2014-05-22 07:11:45 -07:00
Mark Pizzolato
cdd39d1fe9 OSX build: Revise to fix prior change. 2014-05-20 11:18:19 -07:00
Mark Pizzolato
ef392b8ab9 OSX build: Added more flexible toolchain support for more recent OS X and xCode versions. 2014-05-20 10:51:00 -07:00
Mark Pizzolato
2c0cedcc9c PDP11, VAX: Added ability to set the size of RAUSER devices to be n binary MB (1024*1024) with the -B switch. Added SHOW -B to display drive capacities in binary MB using the SHOW -B switch. 2014-05-16 15:13:56 -07:00
Mark Pizzolato
c0f9c2e86c PDP11, VAX: Better support for various positioning operations which different OS drivers use. Fix to properly record/tolerate skip n records reaching a tape mark. Fix to #139 2014-05-16 12:46:08 -07:00
Mark Pizzolato
f4771affe7 SCP: Fix SET VERIFY which didn't work while processing command procedures 2014-05-16 05:49:42 -07:00
Mark Pizzolato
fc2f3675fc TAPES: Make sure that all activities related to TPC formatted tapes are read only.
- A -R flag is forced (attach READ ONLY) when TPC formatted tapes are attached.  This should avoid updating file modified timestamps by any simh simulator.
- All write operations to TPC formatted tapes will fail with a write protected status.
2014-05-16 05:22:45 -07:00
Mark Pizzolato
4299ee96db PDP10, PDP11, VAX: Avoid returning "Line Unit" test failed after DMC/DMR master clear if a line is not attached. Let the attached state (if it needs to be determined) be reflected by sensing modem status bits. 2014-05-14 00:16:14 -07:00
Mark Pizzolato
ddaf2764a7 PDP10, PDP11, VAX: Fix DMC/DMR master clear when no units are attached to properly be able to act on register writes. 2014-05-13 09:16:16 -07:00
Mark Pizzolato
f6eb4bc4f5 SCP: Fix buffered console implementation to correctly retain buffering attributes across independent SET CONSOLE commands 2014-05-11 06:16:46 -07:00
Mark Pizzolato
746e5ab88c SCP: Fix reporting of console's buffering status. Fix parsing of MUX settings which were simply interpreted by matching a single token. Reported by Mark Bensen. 2014-05-05 05:30:35 -07:00
Mark Emmer
0432b3232d Merge git://github.com/simh/simh 2014-05-04 20:30:08 -05:00
Mark Emmer
f597da0a98 SDS: Refine Next command for subroutine branch
1. Treat the SBRM SysPOP like the BRM opcode for calling a subroutine.
2. If the -a (atomic) switch is present with a BRM or SBRM instruction, place a breakpoint at EA+1 rather than EA, since the return link is placed at EA (BRM) or at *EA (SBRM) with subroutine execution commencing at EA+1.
2014-04-23 20:51:24 -05:00
Peter Schorn
798b82b868 Added debug support for the MHDSK device, support for the NEXT command and a warning if 8086 symbolic input is attempted. 2014-04-21 08:56:27 +02:00
Mark Emmer
6f9f387c39 SDS: Add more complex (but optional) Next behavior
Allow -f switch with Next to move forward in code.
Allow -a switch with Next for "atomic" behavior that excludes interrupts for all instructions.

Update sds_doc.doc to describe the new behavior.
2014-04-19 14:50:15 -05:00
Mark Pizzolato
3946eb710e VAX, PDP11, PDP10: Added a explanation of the capabilities and limitations of the NEXT command which is output the first time a NEXT command is entered.
Also added CHMK, CHME, CHMS and CHMU to the set of instructions which are considered subroutine call initiators in the VAX simulator.
2014-04-19 05:45:29 -07:00
Mark Pizzolato
e8114cf088 SCP: Fix errant display of NEXT warning on first STEP command. From Peter Schorn
Better display in SHOW VERSION of full compiler name on OSX when using the clang LLVM compilers
Change stray non-ascii quote characters in comments.
2014-04-18 04:58:27 -07:00
Mark Pizzolato
92e3acb2f3 SCP: Added the rest of the NEXT command repeat count support. 2014-04-17 13:17:14 -07:00
Mark Pizzolato
3083933952 PDP10: Added support for the NEXT command to step over subroutine calls. 2014-04-17 13:07:59 -07:00
Mark Pizzolato
e7a934904c PDP11: Added support for the NEXT command to step over subroutine calls. 2014-04-17 13:07:37 -07:00
Mark Pizzolato
7fc8922a48 SCP: Added a repeat count for the NEXT command 2014-04-17 13:07:01 -07:00
Mark Emmer
f64b9d3fa2 Merge git://github.com/simh/simh 2014-04-17 07:55:27 -05:00
Mark Emmer
2df2f33352 SDS: Add -f switch to Next command to force step-over mode
Add -f switch ("force") to the Next command to set the temporary breakpoints regardless of instruction type.  This is useful at
the bottom of loops or to avoid going off into unrelated code should an interrupt or memory paging trap occur.
2014-04-17 07:55:12 -05:00
Mark Pizzolato
d0363c9f93 Merge pull request #132 from markemmer/master
SDS: Support simulator's new NEXT command to step over subroutine calls
2014-04-17 05:43:29 -07:00
Mark Emmer
c4438e15f4 SDS: Support simulator's new NEXT command to step over subroutine calls
Step over BRM, POP or SYSPOP by planting temporary (dynamic) breakpoints at P+1 and P+2.
2014-04-17 00:09:11 -05:00
Mark Pizzolato
9eff5331a9 PDP10: Fixed UBA reset logic to only reset the devices which are connected to the UBA being reset (reported by R. Voorhorst) 2014-04-16 02:17:33 -07:00
Mark Pizzolato
d3bdc26a94 VAX: Added support for the NEXT command to step over subroutine calls BSBB, BSBW, JSB, CALLS and CALLG 2014-04-14 14:23:06 -07:00
Mark Pizzolato
8f3e6438a3 SCP: Added the NEXT command. This command provides the ability for a simulator to step over subroutine calls. 2014-04-14 14:22:18 -07:00
Mark Pizzolato
ce332a18d7 PDP10: Initial code for 36bit DMA operations 2014-04-13 15:53:39 -07:00
Mark Pizzolato
513214ec9b PDP10: Added a generic UBA debug routine to log NXM events. Converted all internal NXM debug output to use this new routine. 2014-04-12 17:18:41 -07:00
Mark Pizzolato
9b7c614bb6 I1401: Fix to deal with instructions that are longer than 8 characters (from Van Snyder) 2014-04-12 10:11:36 -07:00