Commit graph

482 commits

Author SHA1 Message Date
Mark Pizzolato
e75b2f29dc VAX 440 simulators: Avoid duplicate model name in SHOW CPU output 2022-02-12 14:21:18 -08:00
Mark Pizzolato
49b6e52d48 PDP11, VAX scsi systems: Migrate DEV_DISK devices using common autosize code 2022-02-11 15:26:21 -08:00
Mark Pizzolato
d64f003cc0 Non Qbus and Non Unibus VAX: Default to autosizing disks for MFM RD disks 2022-02-11 02:09:37 -08:00
Mark Pizzolato
746e4b9e59 SCSI: Add tape activity specific debug option 2021-09-06 10:28:04 -07:00
Mark Pizzolato
eadf12699b VAX systems with graphics: Properly cleanup on memory allocation errors. 2021-08-28 18:31:35 -07:00
Mark Pizzolato
d1a720debd BuildROMs: Change name define logic to avoid conflicts
Each of the BOOT_CODE_SIZE, BOOT_CODE_FILENAME and BOOT_CODE_ARRAY names
are replaced whenever a BuildROMs generated file is included.
2021-08-23 13:36:04 -07:00
Mark Pizzolato
ae1472db79 Generated ROM Image includes: Updated for multiple ROM image support
The actual contents of the input ROM binary files and the contents of the
created arrays are unchanged.

Multiple ROM image include files can be included in the same source module
without the need for any #undef BOOT_CODE_SIZE, etc.
2021-08-23 12:26:45 -07:00
Mark Pizzolato
d3d3c94485 All VAX: Fix CPU HISTORY MTAB help info 2021-08-14 23:11:27 -07:00
Mark Pizzolato
243951a791 Unibus and Qbus VAX systems: Update TODR help information 2021-07-14 11:00:23 -07:00
Mark Pizzolato
1548bd1cf6 infoserver100, infoserver150vtx: Add idle detection support
As reported in #1047
2021-06-05 13:17:27 -07:00
Mark Pizzolato
68e407ba0f ALL: Correct help text in "SET <unit> LOCKED" MTAB entries 2021-04-19 15:22:15 -07:00
Mark Pizzolato
a015e44c10 ALL: Standardize writelock behavior adding global UNIT_WLK & UNIT_WPRT
Historically this functionality was reimplemented within each
DEVICE simulator often with slightly different implementations
and inconsistencies.  Solving this globally within SCP required
changes in many places, but should henceforth be reasonably
managed.

As discussed in #1034
2021-04-19 10:58:51 -07:00
Mark Pizzolato
885277e14f VAX: Fix typo in help for SET CPU IDLE command. 2021-02-23 12:50:22 -08:00
Mark Pizzolato
8c42a3436c VAXen with SCSI: Allow some cross controller read only drive access 2020-12-29 11:14:34 -08:00
Mark Pizzolato
567005a08d VAXStation3100's: Fix Coverity identified warning 2020-12-11 07:18:06 -08:00
Mark Pizzolato
236ca8206d VAX750: Associate bit fields with TTI and TTO DEVICE REGisters 2020-12-02 14:46:58 -08:00
Lars Brinkhoff
d5befa75c1 I650, IBM1130, PDP11, PDP18b, VAX, Sigma: Fix set but unused variables. 2020-12-02 14:45:21 -08:00
Lars Brinkhoff
970fb8ec95 PDP10, ETHER, VIDEO, VAX: Fix set but unused variables. 2020-11-25 04:50:47 -08:00
Mark Pizzolato
0d6f1ce362 All VAX: Remove redundant include of time.h 2020-10-30 14:17:24 -07:00
Mark Pizzolato
16cafb3525 VAX GPX, LK and VE devices: Compiler warning cleanup 2020-10-25 09:06:10 -07:00
Mark Pizzolato
a10b8969cd MicroVAX2000, VAXStation2000: Properly describe 16MB of memory in CFGTST reg
The CFGTST register MTYPE subfield should describe the additional memory
beyond 2MB on the processor board.  Previous logic attempted to describe
the total system memory and the net result didn't fit into the 3 bit field and
thus said no additional memory is present.

The consequence of this new amount of memory is that ALL of it is tested
during the power on self test and thus it takes significantly longer to get to
the >>> prompt.

As reported in #944
2020-10-21 04:25:00 -07:00
Mark Pizzolato
9572108471 MicroVAX2000, VAXStation2000: Add dummy responses to TXCS internal register
As reported in #942
2020-10-20 12:38:30 -07:00
Mark Pizzolato
dc4ce222e5 VAX8200: Cleanup potential compiler warnings
- Properly initialize DIB structure arrays.
- Change use of snprintf to strlcpy to carefully avoid potential buffer
  overflow warnings.
2020-10-19 12:27:53 -07:00
Mark Pizzolato
4db4f90429 VAX, Unibus VAX: Record explicit TODR set immediately to backing store
- Only if backing store is used (i.e. OS Agnostic mode)
- Previously this was only done on a clean simulator exit.  That could
  result in inconsistent timing information in operating system images vs
  the saved TODR baseline data
- Always return TODR values rounded to the TODR granularity (10ms).
2020-10-09 05:10:34 -07:00
Mark Pizzolato
0e72400e09 PDP11, Qbus/Unibus VAX: Silence various compiler warnings 2020-10-09 05:10:12 -07:00
Mark Pizzolato
ae825c9afb All: Declare sim_stop_messages as an array SCPE_BASE long
This avoids a potential invalid pointer dereference when formatting
the return value from sim_instr() if it is < SCPE_BASE but greater
than the previously defined static array size.sizeof

Update simh.doc to reflect this generic change.
2020-09-02 15:56:07 -07:00
Mark Pizzolato
5c48229ce4 Qbus & Unibus VAX: Add a SHOW QBA|UBA MAP{=n} command to display the bus map 2020-08-29 08:16:58 -07:00
Mark Pizzolato
b5a325f467 VAX: Correct ROM device help text to describe built-in ROM as default 2020-06-06 10:03:32 -07:00
Mark Pizzolato
550993a757 VAX: Disable Boot KA655 ROM Interval timer test
Restoring original patch in the ROM.  Too much Heisenberg effects to
capture debug data to isolate the issue.
2020-06-02 20:24:11 -07:00
Mark Pizzolato
09f18ec2ba VAX: Add idle support for VMS V5.0 and V5.1
As discussed in #853
2020-05-18 06:26:10 -07:00
Mark Pizzolato
1c38700d6f All VAX: Increase test RUNLIMIT time to account for VAX8200 extended tests
Features of the VAX 8200 CPU need extra time for diagnostic execution.
2020-03-26 15:26:03 -07:00
Mark Pizzolato
998f2a5254 VAX8200: Standardize model output strings for consistency 2020-03-25 14:34:46 -07:00
Mark Pizzolato
1c589030ae TIMER: Provide a means for VM to indicate its expected calibration rate
As reported and discussed in #817

This allows RUNLIMIT to provide useful results on fast or slow host systems.
2020-03-23 07:48:45 -07:00
Mark Pizzolato
ee317e0cb4 SCP: Adjust RUNLIMIT time values on slow host systems
As reported and discussed in #819
2020-03-21 21:30:58 -07:00
Mark Pizzolato
e6d8d593b4 VAX750, VAX8200: Update UBA device map register REG initializers 2020-03-06 16:42:04 -08:00
Mark Pizzolato
80d9393b83 alpha, HP2100, ID16, ID32, I7094, PDP11 and VAX: Fix array REG definitions
Array REGister definitions have been made consistent by passing the
name of the array object.  This allows proper sizing assessment
to occur in the register validation logic.

Some previously described array REGister initializers were not really
arrays.  Some were structures and others were merely pointers to
someplace in memory that it was desirable to view as a scalar array.

Structures or other blob data should now use SAVEDATA.  Virtual
arrays intended to be interpret some part of memory as scalar data
now use VBRDATA initializers.
2020-03-06 16:29:17 -08:00
Mark Pizzolato
6da28c516f VAX730, VAX750: Remove invalid REGister definitions in console TU58 (TD) device 2020-03-01 12:07:34 -08:00
Mark Pizzolato
8a858c181d SCP: Clean up WEAK definition and rework deprecated references to sim_vm_init
As discussed in #794
2020-01-29 12:30:25 -08:00
Mark Pizzolato
027c1de446 Unibus VAXen: Clock Coschedule interval timers when intervals are 10ms
Record 10ms tick acknowledgements
2020-01-10 08:19:27 -08:00
Mark Pizzolato
f1f4385984 All VAXen: Add a 2 minute execution limit to diagnostic tests 2020-01-09 23:54:53 -08:00
Mark Pizzolato
f9e4e9efba Unibus VAXen: Avoid trying to make interval timers calibrated clocks
Programmatic interval timers are not proper candidates for calibrated
clocks since the interval values can change arbitrarily under program
control and then interfer with attempts at proper calibration.
2020-01-09 23:37:06 -08:00
Mark Pizzolato
76e6111dd4 VAX: Avoid Windows Firewall prompt when running tests during build
This procedure establishes a telnet listen port solely so that the console
output traffic can be buffered (and not emitted).  Since nothing will ever
connect to this port we bound it to the localhost address so that firewall
prompts aren't generated when building in a new directory.
2019-12-21 06:51:41 -08:00
Mark Pizzolato
a06fa9264f VAX: Correct the order of parameter names in vax_fdiv() declaration
As described in #771
2019-11-20 09:40:34 -08:00
Mark Pizzolato
08714aff2b Newer MicroVAX and VAXStations: Fix Coverity warning in RD device 2019-10-21 01:20:04 -07:00
Mark Pizzolato
d8e9915b78 VAXStation3100M76: Move debug statement within loop to precisely display info
Coverity identified an out of loop reference to the loop control variable
that wasn't correct.
2019-10-20 23:56:10 -07:00
Mark Pizzolato
3d09cd2d7f Newer MicroVAX and VAXStations: Avoid error path memory leak
Initialize Coverity flagged uninitialized variable references.  Most/all
of these might never have actually occurred with reasonable
packet buffer descripter lists, but zero initialized values will never
hurt.
2019-10-20 23:05:27 -07:00
Mark Pizzolato
0ca1fe4e40 Newer MicroVAX and VAXStations: Rate limit DZ device character output 2019-10-20 23:01:45 -07:00
Mark Pizzolato
281837c68a PDP11, PDP8, VAX8200: Fix Coverity flagged warnings 2019-10-20 22:57:02 -07:00
Mark Pizzolato
7b5dc834fd MicroVAX2: Add IDLE support for Console ROM and Diagnostic Monitor 2019-07-17 09:00:24 -07:00
Mark Pizzolato
0195bbda4b TIMER: Fix missing catchup ticks for VAX simulators when idling
- MicroVAX I, II and 3900 don't have a DONE bit in the clock status
  register, so sim_rtcn_tick_ack() wasn't being called to acknowledge
  clock ticks.
- Timer catchup tick criteria didn't work unless the host had a slow
  clock tick.

As discussed in #705
2019-05-30 01:51:52 -07:00