Commit graph

312 commits

Author SHA1 Message Date
Mark Pizzolato
8cbe4ba0bd VAX: Properly inline memory reference functions for performance. Fix #169 2014-12-31 13:25:49 -08:00
Mark Pizzolato
7256e0908c PDP11: Simplified idle call logic to leave the idle decision to sim_idle().
Removed the unused references to wait_enable which the comments suggest was related to an old style idle.
2014-12-19 08:45:47 -08:00
Mark Pizzolato
549779fb10 PDP10, PDP11, VAX: Adjusted KDP, DUP and DMR/DMC devices to be better behaved when the simulated system is idling.
This may not completely fix the problem identified in issue #99, but it should help
2014-12-19 08:41:10 -08:00
Mark Pizzolato
18daed6551 PDP11, VAX: Enrich the debug output for the TS device simulation. 2014-12-14 13:14:05 -08:00
Mark Pizzolato
368a5f6998 PDP11, VAX780: Fix DEUNA handling of incoming packets which are dropped into multiple receive buffers.
Make sure to properly support multiple receive buffers by correctly setting the data length read and the appropriate buffer descriptor status bits for each buffer descriptor that is used to hold a packet.
2014-11-12 14:28:27 -08:00
Mark Pizzolato
2b81dd4710 PDP11, VAX: Fix DEQNA emulation to properly indicate receive buffer length for the last segment when dropping incoming packets into multiple buffer descriptors. 2014-11-11 17:32:51 -08:00
Mark Pizzolato
235ce92ff2 PDP11: Correct proper boot support for PDP11 devices when booting via a Remote Console Master session 2014-10-28 10:19:39 -07:00
Mark Pizzolato
178116c978 PDP11: Added proper boot support for PDP11 devices when booting via a Remote Console Master session 2014-10-28 10:06:30 -07:00
Mark Pizzolato
c548b34772 Compiler suggested cleanups. 2014-10-27 17:14:28 -07:00
Mark Pizzolato
611a7e94f0 SCP: Added a Remote Console Master Mode.
This capability will allow a GDB RSB stub to be created to support dynamic debugging of code running in a simulator.

This capability will also allow a complete front panel emulation system to operate a simulator.

This capability is engaged in a simulator by:
     sim> set remote telnet=remoteconsoleport#
     sim> set console telnet=consoleport#
     sim> set remote master

Master mode will provide a TCP session which accepts SCP commands that allow full control of the simulator.
2014-10-26 15:15:31 -07:00
Mark Pizzolato
3256c10c77 General cleanup migrate to using sim_printf vs separate calls to printf and fprintf(sim_log). 2014-10-22 17:12:14 -07:00
Mark Pizzolato
3951ad2432 Cleanup of unneeded global extern declarations 2014-10-10 08:18:15 -07:00
Mark Pizzolato
9c5df04de4 PDP11, VAX: Make sure to initialize amount of data processed for incoming packets which get read into multiple buffer descriptors 2014-10-09 11:15:11 -07:00
Mark Pizzolato
5b288b0d98 PDP11, VAX: Enhance help SET RQn FORMAT description 2014-09-29 03:08:59 -07:00
Mark Pizzolato
cad8bf1cfc Compiler suggested cleanups - Johnny Billquist 2014-07-23 13:59:51 -07:00
Mark Pizzolato
4c55f1af0c VAX: Make sure that Ultrix 1.X specific behaviors are only in effect with that OS 2014-07-17 10:04:40 -07:00
Mark Pizzolato
4d817f1deb VAX: Added support for the DEQNA device on Ultrix 1.x. Henry Bent observed that the deqna driver in this OS counted on older DEQNA firmware which automatically enabled interrupts after a software reset.
CPU Idle detection for this OS is now supported and the combination of SET CPU IDLE=ULTRIX-1.X and explicitly using a DEQNA device (SET XQ TYPE=DEQNA) will enable the automatic enabling of device interrupt generation.
2014-07-14 12:29:53 -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
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
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
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
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
e7a934904c PDP11: Added support for the NEXT command to step over subroutine calls. 2014-04-17 13:07:37 -07:00
Mark Pizzolato
5f5e931db0 PDP11, VAX, PDP10: Fixed setting of register value reflecting return buffer address - Problem reported by R. Voorhorst 2014-04-12 09:48:39 -07:00
Mark Pizzolato
74482ce448 PDP10, PDP11, VAX: Make sure that the DMC and DUP devices produce the right messages when an attach is attempted to an already attached line 2014-04-06 16:42:10 -07:00
Mark Pizzolato
b5d5ef7b56 PDP10, PDP11: Fix DUP device to properly activate polling on simulator startup (after reset) if any DUP devices are attached. 2014-04-02 13:08:48 -07:00
Mark Pizzolato
edb475fcc1 PDP10, PDP11, VAX: Fix DMC & DUP unit attach strings for multi-line device configurations. 2014-04-02 08:47:35 -07:00
Mark Pizzolato
fa9295c9fd PDP11, PDP10, VAX: Fix DMC and DUP DDCMP debugging output for packet data 2014-04-01 19:35:45 -07:00
Mark Pizzolato
6ce8d99cd8 SCP: Added generic output routine sim_printf to output to stdout and sim_log (and sim_deb when enabled)
The goals here being to simplify calling code while getting consistent output delivered everywhere it may be useful.

Modified most places which explicitly used sim_log or merely called printf to now avoid doing that and merely call sim_printf().
2014-03-28 08:20:05 -07:00
Mark Pizzolato
e81de979f6 PDP11, PDP10, VAX: Start device connection polling on device reset when any units are attached 2014-03-27 05:12:44 -07:00
Mark Pizzolato
fe005f7d36 PDP10, PDP11, VAX: Fix DUP and DMC devices which couldn't be disabled after having been enabled. 2014-03-19 02:06:10 -07:00
Mark Pizzolato
090b2f83f2 PDP10, PDP11, VAX: Avoid corrupting a DMC/DMR unit attach string when a line state transitions 2014-03-17 08:48:02 -07:00
Mark Pizzolato
a100c88f1d PDP10, PDP11, VAX: Fix compile error due to C++ variable declaration being used instead of C. 2014-03-08 05:56:40 -08:00
Mark Pizzolato
9320c56f3f PDP11, PDP10, AltairZ80: Fixed cases where assert() macro is called with an expression which has side effects and therefore wouldn't get executed if compiled with NDEBUG defined. 2014-03-02 14:50:43 +01:00
Mark Pizzolato
dbe8533352 PDP10, PDP11: Fix compiler indicated invalid check. Fixed #118 2014-03-02 14:50:42 +01:00
Jordi Guillaumes i Pons
f046887e0c PDP11,VAX: Minor change in pdp11_cr.c 2014-03-01 01:20:09 +01:00
Jordi Guillaumes i Pons
8c9a76bf5a PDP11,VAX: Fixed data overrun due to lost interrupts whith idle enabled; fixed garbage got after EOF due to unnecesary interrupt. 2014-02-28 18:58:20 +01:00
Mark Pizzolato
02cb5c2d88 Compiler suggested cleanups.
Mostly silencing noise warnings, but bugs were found in sim_console.c and pdp11_dmc.c
2014-02-14 17:07:45 -08:00
Mark Pizzolato
dcbb89499e PDP11,VAX: Fix bug which scheduled the wrong unit when more than one VH device is configured, Fix #113 2014-02-14 11:21:42 -08:00
Mark Pizzolato
59d0602b0d PDP8: Add device buffer flush capability and keep track of data written state in the device buffer. Fixes #87
Finishing the last DECtape device which was missed when this functionality was added to pdp11_dt, pdp18b_dt and pdp8_dt
in commits: 2934112a70 and c9e8121c16

Cleaned up the pdp11, pdp18b and other pdp8 implementations to make backporting cleaner.
Made sure that buffer flushing happens correctly when simulation returns to the sim> prompt.
2014-02-12 21:08:18 -08:00