Commit graph

3875 commits

Author SHA1 Message Date
Mark Pizzolato
b98ece819b DISK: Extended and corrected autosize logic for disk attach.
Previously only the actual size of the container file was used when
attaching a disk.  This was correct only when the size of the container
file actually aligned with the simulated disk drive.  disks created with
sim_disk_attach automatically write to the last sector of a simulated
disk file when the disk is created.  Therefore, auto sizing worked correctly
for any disk created with sim_disk_attach.

Disk images created with simh prior to 4.X would only write to the
portions of the disk drive when the simulated system writes data.  These
disk images would only be properly sized if the simulated operation of
the disk had actually written to the last block of the disk.  Auto sizing of
these disks would usually size the resulting disk incorrectly and strange
behaviors might occur when using such an incorrectly auto sized disk.

Fixes #357
2016-11-29 18:53:52 -08:00
Mark Pizzolato
60fb70128c TIMER: Add additional calibration skip while idling counter statistic 2016-11-28 17:40:24 -08:00
Mark Pizzolato
165c37acee DISK: Add -U attach option, to fix VHD differencing inconsistencies
-O allows overriding for testing purposes.
-U allows overridden checks to update and fix the inconsistencies

As discussed in #352
2016-11-28 03:35:01 -08:00
Mark Pizzolato
f8147fca84 PDP10: Fix typo in sim_rtcn_tick_ack setup 2016-11-27 15:42:58 -08:00
Mark Pizzolato
8b73304322 PDP10: Add recording of clock tick acknowledgments. 2016-11-27 12:58:08 -08:00
Mark Pizzolato
5e201a4407 SCP: Pretty up seconds conversion when days are involved 2016-11-27 12:38:30 -08:00
Mark Pizzolato
b83dae2db2 TIMER: Make sure internal timer doesn't restart after a CONTINUE unless needed 2016-11-27 12:37:35 -08:00
Mark Pizzolato
f285e939a8 SCP: Added suggestive clarification to ATTACH help try HELP <device> ATTACH 2016-11-26 15:52:38 -08:00
Mark Pizzolato
df3fbc3fb4 DISK: Fix -O option for differencing disks 2016-11-26 15:41:10 -08:00
Mark Pizzolato
3511b5e4e3 DISK: Fix -O functionality to override VHD differencing disk consistency checks 2016-11-26 07:06:19 -08:00
Mark Pizzolato
4f1f439174 DISK: Fix auto detect format attach logic for non VHD disks #356 2016-11-25 16:25:43 -08:00
Mark Pizzolato
1ec46fbe11 TIMER: Make sure timers are properly saved and restored after ^E CONTINUE 2016-11-24 01:21:36 -08:00
Mario Abruzzi
47a49c3fda DOC: Added section for centos to 0readme_ethernet.txt
The uml utilties package is part of EPEL and named uml_utilities and not uml-utilities.
2016-11-23 12:14:46 -08:00
Mark Pizzolato
d4082f383e PDP10: Added debug support to clock device (TIM) 2016-11-22 22:29:32 -08:00
Mark Pizzolato
1845fcd53b Visual Studio Projects: Enable asynch I/O (and clocks) for PDP10 simulator 2016-11-22 22:14:37 -08:00
Mark Pizzolato
be47d8539f TIMER: Fix Idling when transitioning betwen multiple calibrated clocks 2016-11-22 22:06:25 -08:00
Mark Pizzolato
89e372ba92 TIMER: Restore functionality for clocks devices that don't use sim_activate_after
Clock devices which call sim_register_clock_unit or sim_register_clock_unit_tmr
are best behaved if they use sim_activate_after to schedule their tick events.
2016-11-22 01:24:26 -08:00
Mark Pizzolato
df80f22152 DISK: Add better error reporting when differencing VHD attach fails 2016-11-21 21:30:46 -08:00
Mark Pizzolato
0a12499a44 PDP10: Fix timing code to use ceil() since round() isn't always available 2016-11-21 15:51:36 -08:00
Mark Pizzolato
522287cb8e SCP: Fix display of multi-bit masks and HELP dev SET output 2016-11-20 15:11:01 -08:00
Mark Pizzolato
d28834fbbf PDP10: Fix 2% wallclock issue for 50 Hz systems (R. Voorhorst) 2016-11-20 14:08:58 -08:00
Mark Pizzolato
8448580a3a SCP: Add support for debug matching multiple bit masks 2016-11-20 13:19:52 -08:00
Mark Pizzolato
f046171269 TIMER: Fix problem activation time for clock units 2016-11-20 13:06:41 -08:00
Mark Pizzolato
08665e4989 ETHER: Add warning about potentially running as root for unavailable devices 2016-11-19 19:20:46 -08:00
Mark Pizzolato
ff95fb8ec2 SCP: Add warning about reset when RUN command is used multiple times.
The RUN command implicitly resets all devices which may have unexpected
consequences for a novice user.

The logic now produces a warning about this side effect when more than one
RUN command is executed in the same simulator session.

An explicit RESET command suppresses this warning for a subsequent RUN
command.

A RUN command with the -Q switch also suppresses this warning.
2016-11-18 05:20:06 -08:00
Mark Pizzolato
fc3ac62218 TIMER: Fix coscheduling to avoid a 0 delay interval
When the timer subsystem hasn't gotten fully initialized, devices may
attempt to coschedule schedule events before the clock has gotten
far enough along to be fully initialized.  When this happens we now
make sure to avoid the potential for a zero delay which will may cause
an infinite scheduling loop.
2016-11-17 16:25:19 -08:00
Mark Pizzolato
39d2944ede TIMER: Add support for catchup clock ticks and cleaned up asynchronous clocks
Asynchronous clocks are now built for all simulators which are built with
SIM_ASYNCH_IO defined.  The default behavior has asynchronous clocks
disabled since this is still experimental, but it can be enabled with
SET TIMER ASYNC.

Catchup clock ticks are now available, but since they're experimental,
they aren't enabled by default.  Catchup ticks are only available if the
simulators clock device calls sim_rtcn_tick_ack to acknowledge processing
of clock ticks.  The VAX simulators have been modified to leverage this.
Catchup clock ticks can be enabled with SET TIMER CATCHUP

Additionally, an idle threshold is provided which can be used to
influence when clock calibration may be suppressed.  The default is not
to suppress calibration activities.

The various timer behaviors are visible with the SHOW TIMER command.

The state of the operating timer facilities is visible with: SHOW CLOCK

Timer events which are queued are visible with the SHOW QUEUE command.
2016-11-16 23:50:53 -08:00
Mark Pizzolato
32bf2629b1 VAX8600: Changed console input polling
Polling is now done at least every 500ms even if the prior input
character hasn't been processed yet.   This allows ^E to provide a way
to exit a simulator which otherwise isn't reading from the console port.
2016-11-16 20:35:35 -08:00
Mark Pizzolato
b1950e1fe2 DOC: Clarified wording for LOAD and DUMP commands in sim_doc.doc 2016-11-16 17:45:07 -08:00
Mark Pizzolato
6e0c26d85a TMXR: simplify #if expression conditions for SIM_ASYNCH_MUX 2016-11-12 13:21:45 -08:00
Mark Pizzolato
ee0aadeb37 SCP: Issue error message when CONTINUE command has unused arguments 2016-11-12 13:14:15 -08:00
Mark Pizzolato
7076527cf2 SCP: Format usecs as msecs with fraction when necessary 2016-11-12 13:12:33 -08:00
Mark Pizzolato
d68c021d1f PDP10: Fixed last digit error in CVTBDT instruction as discussed in #347 2016-11-05 12:38:15 -07:00
Mark Pizzolato
afad8ad374 TMXR: Add help indicating speed factor specification for console and mux lines 2016-11-05 02:52:58 -07:00
Mark Pizzolato
0268da4a28 SCP: Fix seconds format routine when displaying hours 2016-11-05 01:42:59 -07:00
Mark Pizzolato
efabcb9856 SCP: Added routine to format time in seconds down to usecs 2016-11-04 22:59:33 -07:00
Mark Pizzolato
67213a53da Visual Studio Projeccts: PDP11 add configuration support for PNG screenshots 2016-11-04 11:15:23 -07:00
Mark Pizzolato
0779a945d2 SCP: Fix output of SHOW QUEUE to also include event due time in usecs 2016-11-03 13:21:59 -07:00
Mark Pizzolato
f30de55f18 SCP: Fix help to only display breakpoint help for the proper device or CPU 2016-11-02 01:44:55 -07:00
Mark Pizzolato
b8842e40e5 TIMER: Fix internal calibrated clock to be well behaved while idling. 2016-10-26 16:16:36 -07:00
Mark Pizzolato
c9af9a70fa Visual Studio Projects: Update to require SDL2 version 2.0.5 2016-10-22 02:01:06 -07:00
Mark Pizzolato
7ab9b6abec ETHER: Support building with MinGW environment 2016-10-22 01:46:31 -07:00
Mark Pizzolato
5fba6e7607 makefile: Use libSDL when building simulators using display library with MinGW 2016-10-22 01:31:29 -07:00
Mark Pizzolato
7d029e72ab ISYS8010, ISYS8020: Fix incorrect file reference in Visual Studio Projects 2016-10-21 14:51:53 -07:00
Mark Pizzolato
2acdf26c53 TAPE: Add support to allow tape debug output when using sim_tape_attach 2016-10-20 14:48:15 -07:00
Mark Pizzolato
a1fe7934b6 I1401: Properly set device class for tape device so help info is provided 2016-10-20 13:33:40 -07:00
Mark Pizzolato
17abb1223a TAPE: Make sure that all tape library APIs only work after sim_tape_attach
- Detects and fixes the problem reported in #345
2016-10-20 13:32:51 -07:00
Mark Pizzolato
8178816c3f I1401: Fix tape to call sim_tape_attach to attach tapes 2016-10-20 12:54:41 -07:00
Mark Pizzolato
0630db4207 makefile: remove isys8030 from 'all' due to missing piece 2016-10-12 23:38:10 -07:00
Mark Pizzolato
2c1cc11485 makefile: Fix to allow compiling with clang on NetBSD
clang doesn't like the -R option, it wants the long form -Wl,-R. gcc is ok
with either.
clang on OS X doesn't like that form, but the change is only in a
conditional which is relevant when X11R7 is installed and that isn't the
case for OS X.
2016-10-12 05:51:36 -07:00