Commit graph

2900 commits

Author SHA1 Message Date
Mark Pizzolato
ee4c33ead2 VAX: Fix Interval Timers
- Properly set the Interval Register when a running timer is stopped
- Peoperly clear timer interrupt pending when CSR is updated
- Properly handle the case when the timer is started with the interval
   register is 0.
- Properly stop the running timer when it is restarted or adjusted
   with a new interval value.
- Better debug info
2018-01-07 13:46:07 -08:00
Mark Pizzolato
fc25cf54fa SCP: Add EXECUTE command to remote console master mode.
This allows a set of commands to be received and executed together.
The frontpanel API can make use of this.
2018-01-07 13:40:02 -08:00
Mark Pizzolato
eea15bfe4e SCP: Add DEBUG command to allow Debug enabling/disabling via Remote Console
This exposes the functionality of SET DEBUG and SET <dev> DEBUG without using
a general SET command which the remote console facility avoids.
2018-01-07 12:47:42 -08:00
Mark Pizzolato
154320bf71 SCP: Add support for BREAK/EXPECT/UNTIL/IF action steps in remote console 2018-01-07 12:09:35 -08:00
Mark Pizzolato
35f214c937 SCP: Move Coverity badge to What's New line 2018-01-07 12:07:55 -08:00
Mark Pizzolato
80c1c9e0fd SCP: Silence Coverity warning 2018-01-05 05:53:44 -08:00
Mark Pizzolato
833927d349 SCP: Cleanup compiler warnings 2018-01-04 17:06:58 -08:00
Mark Pizzolato
d2cfee9488 SCP: Add Coverity badge to README.md 2018-01-04 12:12:20 -08:00
Mark Pizzolato
fbcf72abfc SCP: Allow commands to be enclosed in quotes.
This is useful when commands containing semi-colons are used in the
action steps of BREAK, EXPECT, UNTIL, IF commands.
2018-01-04 07:12:43 -08:00
Mark Pizzolato
9086b269b2 SCP: Allow semicolons within quoted strings while parsing action strings 2018-01-04 07:06:52 -08:00
Mark Pizzolato
72d4622ddf SCP: Add ECHOF command which takes a quoted string as an argument 2018-01-04 07:06:51 -08:00
Richard Cornwell
2389f41f5e I7000: Updated copyright notice on i7000_com.c. 2017-12-31 19:21:29 -05:00
Richard Cornwell
8aa6c9fde6 I7000: Fixed coverity warnings. 2017-12-29 16:48:52 -05:00
Mark Pizzolato
4a8564aa51 VAX: Add Bitfield detail to SYSD CNF and TMR CSR REGister definitions 2017-12-28 16:49:04 -08:00
Bob Supnik
c6fb3285a5 PDP11, VAX780: Fix TM03 Read tape mark must set Massbus EXC 2017-12-28 16:14:24 -08:00
Seth Morabito
7ba70ac35b 3b2: Allow OS to set baud rate and parity
The CONTTY emulation now honors parity, baud rate, and character bit
size as set by the operating system.
2017-12-28 12:12:06 -08:00
Richard Cornwell
b5ea9ec38e I7000: Initial release of a set of simulators for IBM 7000 series mainframes.
These include simulators for the IBM 701, IBM 702, IBM 704, IBM 705,
IBM 705/3, IBM 709, IBM 1410/IBM 7010, IBM 7070, IBM 7080, IBM 7090
and IBM7094.

  These basically were a collection of machines that shared a common
  set it peripherals, Each group had its own instruction set, hence
  different simulators.

   IBM 701   -> i701
   IBM 702/705/705/3/7080 -> i7080
   IBM 7070/7074 -> i7070
   IBM 1410/7010 -> i7010
   IBM 704 -> i704
   IBM 704/709/7090/7094 -> i7090
  The i7090 can be set to simulate a IBM 704 however you end up
  disabling almost everything, since the 704 did not have any channels.
  A build option exists that allows this one to be built without all the
  extra features.

   The i7090 simulator’s implementation of the IBM 7094 is a more
   complete implementation of the IBM 7094 which can run CTSS
   while the existing simh I7094 can’t.
2017-12-28 05:05:25 -08:00
Seth Morabito
e78ef46ccb 3b2: Differentiate HD135 and HD161 disks 2017-12-27 17:21:57 -08:00
Seth Morabito
651faa78ae 3b2: Allow handling of TRACE and BREAKPOINT traps
The 3B2 emulator did not have support for traps, rendering debugging
under the simulator fairly useless. This change adds support for
trap handling. The 'sdb' UNIX debugger under SVR3 should now work
correctly.
2017-12-27 15:13:58 -08:00
Richard Cornwell
8494112ee4 B5500: Fixed so Idling will work on B5500. 2017-12-22 15:05:01 -05:00
Richard Cornwell
8606d7692b B5500: Added usage guide for B5500 simulator. 2017-12-22 15:04:33 -05:00
Mark Pizzolato
305ce5b598 TMXR: Fix potential SegFault while negotiating telnet options
If a telnet session sends options just prior to closing a session, the response
traffic might get dropped which isn't a problem, but we need to make sure
that we stop referencing the now invalid line structure after that happens.
2017-12-22 03:20:32 -08:00
Mark Pizzolato
ddb0ee2895 VAX: Add missing TCSR1 REGister declaration in SYSD device
Remove duplicate REGister declaration of TIVEC0
2017-12-22 01:49:01 -08:00
Mark Pizzolato
8e5025fdcf VAX, MicroVAX2: Fix compiler warning with GCC & clang 2017-12-18 15:29:15 -08:00
Mark Pizzolato
33fc5c44e6 FRONTPANEL: sim_frontpanel API release 11
- Properly digest all register data when it arrives from register
   queries and repeat activities.
- Invoke register callback functon when transitioning to Halt state.
- Add option to access instruction history with sim_panel_get_history
   API
- More interesting testing in FrontPanelTest program
2017-12-18 15:05:58 -08:00
Mark Pizzolato
74a80c34bd Visual Studio Projects: Fix typo in library version check (Roberto Sancho Villa) 2017-12-18 13:52:23 -08:00
Mark Pizzolato
bdddcb4004 VAX, MicroVAX2: Add display of ROM and NVR address ranges 2017-12-18 05:10:27 -08:00
Mark Pizzolato
51700bc139 FRONTPANEL: Add BREAK and NOBREAK commands to test program 2017-12-17 11:57:34 -08:00
Seth Morabito
e7eaaa8550 3b2: Fix warnings generated by older GCC
GCC 4.1.2 produced several warnings about inline functions.
This commit fixes those warnings.
2017-12-17 11:32:31 -08:00
Mark Pizzolato
65066b13bf FRONTPANEL: Silence Coverity warnings 2017-12-17 03:07:49 -08:00
Mark Pizzolato
649ddc63da FRONTPANEL: Fix logic detecting sim_panel_exec_... API command completion
Command initiating response can be coalesced with subsequent data by TCP.
Gracefully handle when that happens.
2017-12-17 00:35:28 -08:00
Seth Morabito
7bb02e7530 3b2: CONTTY line configuration
Adds modem control line speed configuration to prevent FIFO overflow.
2017-12-16 16:07:08 -08:00
Mark Pizzolato
52990b3bc2 FRONTPANEL: Fix bug that disabled repeat processing 2017-12-15 16:08:10 -08:00
Mark Pizzolato
2de2b9bd80 FRONTPANEL: sim_frontpanel API release 10
- Reworked STEP, HALT, BOOT, and RUN API's to properly interlock with
   the receive thread.
- Shorten destroy delay while debugging to 1 second.
- Allow execution and text breakpoints to be set and/or cleared while
   simulator is running.
2017-12-15 13:57:20 -08:00
Seth Morabito
634a92f8bf 3b2: Fix for critical MMU caching bugs
Two critical issues are fixed with this commit:

1. The MMU cache was being corrupted by writing the 'Last Used'
   bit into the wrong half of the PD cache (low word vs. high word)

2. The MMU cache was being too aggressively flushed on SRAMA
   write, because the wrong length was being used. In addition,
   the code was walking off the end of the cache array when
   flushing any section other than section 0, potentially causing
   memory corruption.
2017-12-15 13:32:17 -08:00
Seth Morabito
6b8d8b048e 3b2: Support software power-off 2017-12-15 13:32:11 -08:00
Mark Pizzolato
2260eee423 CDC1700: Cleanup minor compiler warnings.
- Avoid macro name conflic REG_NONE changed to REG_NOREG
- Avoid a t_offset truncation assigning to a uint16 in drm_attach.
2017-12-15 04:30:03 -08:00
John Forecast
a5feaf2815 CDC1700: Release 3
- Add 1752 Drum support. Allow shared subroutines across interrupt levels.
- Document and add sample scripts for customizing MSOS5.
2017-12-14 16:44:01 -08:00
Seth Morabito
ecf7af59d5 3b2: Remove unused local variable 2017-12-13 16:44:33 -08:00
Seth Morabito
2fdf6bd1d7 3b2: Support for additional hard disk geometries
This commit adds support for the following emulated hard disks:

   HD30       30 MB CDC Wren 94155-36
   HD72       73 MB CDC Wren II 94156-86
   HD72C      72 MB Fujitsu M2243AS
   HD135     161 MB Maxtor XT1190
2017-12-13 16:30:37 -08:00
Seth Morabito
5a19a6b12c 3b2: Support for multiple integrated disks
This commit improves the integrated disk (ID) controller's behavior,
enabling full support for up to two 72MB (emulated WREN II)
integrated winchester disks.
2017-12-13 14:15:56 -08:00
Mark Pizzolato
d99b12b412 FRONTPANEL: Revised test program to more rigorously exercise various cases 2017-12-13 05:47:13 -08:00
Mark Pizzolato
8cc11faf00 FRONTPANEL: FRONTPANEL: sim_frontpanel API release 9
- Add sim_panel_mem_deposit_instruction API
- Properly shutdown debug activities when more than one panel is active
- Properly unwind socket facilities when more than one panel is active
- More rigorously unwind things when a panel is destroyed while its
   simulator is running.
- Give explicit session request traffic priority over potentially pending
   repeat command processing.
2017-12-13 05:44:43 -08:00
Mark Pizzolato
27f9fc3c3e FRONTPANEL: Add test/demo of sim_panel_debug() to test program 2017-12-11 19:45:55 -08:00
Mark Pizzolato
e083a93ea2 FRONTPANEL: Add format buffer bounds checking 2017-12-10 20:04:11 -08:00
Seth Morabito
06e7851d83 3b2: Fix overflow of mask bits in INSFW/EXTFW
- An overflow bug was causing INSFW and EXTFW to fail
  on Windows hosts compiled with Microsoft Visual Studio.
  This commit fixes the issue and causes 3B2 diagnostics
  to pass under win32.
2017-12-10 12:01:08 -08:00
Mark Pizzolato
2292f2cf3e FRONTPANEL: sim_frontpanel API release 8
- Add sim_panel_debug() API to allow the front panel application to write
  directly to the API's debug file.
- Made transitions to panel Error state properly done with the mutex
   properly serializing accesss to the panel State variable.
2017-12-10 04:14:36 -08:00
Seth Morabito
d5f8a84493 3b2: Initial CONTTY support 2017-12-09 21:30:25 -08:00
Mark Pizzolato
7cd1b27b08 BESM6: Fix error message generation to use sim_error_text
As reported in #500
2017-12-09 20:54:10 -08:00
Mark Pizzolato
1d360efe15 ibm1130: Fix build on FreeBSD as discussed in #499 2017-12-09 17:16:35 -08:00