Commit graph

2308 commits

Author SHA1 Message Date
Mark Pizzolato
641d72c3a7 PDP11, VAX: convert RL and HK devices to use sim_disk
This adds file system size verification to allow robust auto sizing and
adds the potential to use VHD and/or access RAW devices if desired
2017-02-07 16:46:55 -08:00
Mark Pizzolato
5a0970fefb DISK: Support file system type/size checking for disks without 512 byte sectors 2017-02-07 16:28:01 -08:00
Mark Pizzolato
76dda8a01e PDP11, VAX: Fix SET RPn BADBLOCK behavior and auto sizing.
BAD144 info was written correctly if the user answered Y when the disk
image was created, but would not work if SET RPn BADBLOCK was
entered later.

Auto sizing would be potentially wrong if a disk had been created
without writing the BAD144 data.  Now, if the disk contains a file system
that information along with the physical container's size is used to
properly auto size the disk.
2017-02-07 13:02:21 -08:00
Leo Broukhis
f46c048bb6 BESM6: Implemented punchcard output. 2017-02-06 23:04:40 -08:00
Mark Pizzolato
026d082950 SCP: Fix compiler indicated warning. 2017-02-06 12:26:37 -08:00
Mark Pizzolato
692b9abe5f SCP: Add ability to descriptively name UNITs
This allows a device simulator to specifically name the units that it uses
for different purposes.  This info is visible in the output of SHOW QUEUE
and debug output.

Once specified or dynamically determined (as previously occurred with
each call to sim_uname()), that name is saved for fast delivery on subsequent
calls.  This will remove some overhead when running with debugging on.
2017-02-06 10:27:01 -08:00
Mark Pizzolato
7050a1aef5 DISK: Added disk auto size detection for DEC ODS1 structured disks 2017-02-06 00:04:53 -08:00
Mark Pizzolato
f006aaa398 DISK: Added Ultrix disk partition detection to auto size RQ or RP disks.
Thanks to Henry Bent for info that made this possible.
2017-02-04 19:56:54 -08:00
Mark Pizzolato
7d432406b6 PDP11, PDP10, all VAX: General extern cleanup.
Remove explicit redundant extern declarations in source files that are
defined in processor include files.
2017-02-04 19:37:20 -08:00
Paul Koning
5dc6d9a487 PDP11: Add initial UC15 support from Bob Supnik
Include files I (Mark Pizzolato) missed in prior commit
2017-02-04 13:43:40 -08:00
Paul Koning
998cf5c122 PDP11: Add initial UC15 support from Bob Supnik 2017-02-04 12:19:41 -08:00
Mark Pizzolato
733653092f TIMER: Properly initialize clock coschedule queues 2017-02-04 11:38:56 -08:00
Mark Pizzolato
665ebf0fd1 FRONTPANEL: sim_frontpanel API version 4 release
Add simulator side register bit sampling with averaged sample values
delivered across the API at specified rates.
2017-02-04 10:48:13 -08:00
Mark Pizzolato
f171055809 REMOTE_CONSOLE: Clarify REM-CON unit references
Make REM-CON units dynamically allocated and use symbolic names for the
respective different roles they play.  This will make interpreting the existing
code easier and ease future extensions.
2017-02-04 10:41:39 -08:00
Bob Supnik
370cb0edb7 PDP10: Fix RIM load loader count
As further discussed in #278
2017-02-01 08:06:25 -08:00
Mark Pizzolato
0913edb2f3 REMOTE_CONSOLE: reorganized code to use array of structs
The original model started with two array variables each with one element
for each potential concurrent remote console.  As functionality was added
the number of arrays grew to an unreasonable number.  This change
merely gets rid of the separate arrays of per connection info and uses a
single array of REMOTE struct which contains all the per connection info.
This will make future functional extensions much cleaner.
2017-01-31 21:09:49 -08:00
Mark Pizzolato
724b23844c VAX730, VAX750, VAX780, VAX8600: Fix rounding with interval timer tick rate
As discussed in #390
2017-01-31 18:15:38 -08:00
Richard Cornwell
2503532d13 B5500: Added architecture description to head of b5500_cpu.c. 2017-01-30 20:55:16 -05:00
Richard Cornwell
057120e0b3 SIM_CARD: cleaned up handling of binary cards.
Handling of first character ~ to simulate End of File, now only
is treated as End of File if it appears on a line by itself.
2017-01-30 20:49:32 -05:00
Bob Supnik
d14243c858 PDP8: Renamed switch register variable to SR
As discussed in: #385
2017-01-28 12:15:34 -08:00
Mark Pizzolato
110ded6904 FRONTPANEL: sim_frontpanel API version 3 release
Adds:
1) Simulator side execution of register update activities at an interval
    specified in usecs.  Rates in excess of 1000Hz should be achievable
    for locally connected frontpanel applications.
2) New API for simulators to describe the register state available in
    the simulator.  If all of a the state which is potentially interesting
    to front panel applications is always present in the variables
    described by simh REG structures, then frontpanel API access to
    that data can be more efficiently provided.
2017-01-27 23:06:30 -08:00
Mark Pizzolato
7ac92a0e84 HP3000: Fourth HP 3000 release, update 1
See HP3000/hp3000_release.txt for details of the release
2017-01-25 11:50:49 -08:00
Mark Pizzolato
0046905f72 TMXR: Added ability to quiet attach message confirmations
-Q switch or SET QUIET will suppress the attach message confirmation
2017-01-23 10:39:41 -08:00
Mark Pizzolato
061d778b7f GITHUB: Clarify text in the ISSUE_TEMPLATE 2017-01-23 10:25:55 -08:00
Mark Pizzolato
8dcc8c0678 SCP: Add the ability to Fprintf to memory buffer 2017-01-23 10:25:06 -08:00
Mark Pizzolato
5c6dabbccf GITHUB: Add initial issue template 2017-01-21 11:54:55 -08:00
Bob Supnik
d980bcd7c1 PDP10: Fixed RIM loader to handle ITS and RIM10B formats
As discussed in #378

The fixes include:

1. Tightening up the "magic" code so that it can now tell EXE, SAV, and RIM
    formats apart.
2. Skipping the loader itself for both RIM10B and ITS RIM. (PDP10 Macro manual
    says that RIM10B always includes the loader.) 3. Distinguishing ITS RIM from
    RIM10B by the length of the loader block.
4. Adding the slight differences in processing between ITS RIM and RIM10B.

There is no documentation change. -R or the extension .RIM still invoke the
RIM loader, and the code tells ITS and RIM10B apart.
2017-01-20 15:26:22 -08:00
Mark Pizzolato
9e9658f30c TIMER: Cleanup compiler warning 2017-01-20 12:53:39 -08:00
Mark Pizzolato
e565ee563f SCP: Assure that all SCP produced debug output always lands in the debug file
The fprintf substitute function Fprintf can call tmxr_linemsgvf which may
internally produce debug output thus producing an infinite recursion.

All writes to the debug file are now done by explicit calls to fwrite() OR the
Fprintf socket destination is saved and cleared during all calls to fprintf.
2017-01-20 12:23:54 -08:00
Mark Pizzolato
5c53d8eba0 DOC: Cleaned up API descriptions 2017-01-19 19:54:34 -08:00
Mark Pizzolato
acbb92091b VAX: Add slightly more precise TODR initialization logic with debug support 2017-01-19 16:56:40 -08:00
Mark Pizzolato
1bb42b83ef VAX730, VAX750, VAX780, VAX8600: Make TODR a little more precise
Add consistent debug options to track TODR activities and the values which
are set.  Debug data will display the VMS time related to the values set and
read.
2017-01-19 15:25:08 -08:00
Mark Pizzolato
57d14e5b4a TIMER: Fix coschedule bookkeeping on pending event interval 2017-01-19 11:12:06 -08:00
Mark Pizzolato
5cd0ea4d59 VAX730, VAX750, VAX780, VAX8600: Fix interval timer ics value
- When the running timer is explicitly stopped the ics value needs to be
    determined before canceling the active unit.
2017-01-18 23:57:14 -08:00
Mark Pizzolato
e36873f466 TIMER: Fix coscheduling functionality to produce consistent results
Added debug CHECK option to the sim_timer_activate_after() to verify
that coscheduled events actually have sim_activate_time_usecs() results
which are consistent with each other.
Additionally, coschedule tick processing now properly counts down
pending coschedule queued activities.
2017-01-18 23:53:46 -08:00
Mark Pizzolato
af1603f000 SCP: Add missing sim_strcasecmp() for host platforms without strcasecmp()
sim_strncasecmp() was previously provided.  Now both forms are available.
2017-01-17 21:54:01 -08:00
Mark Pizzolato
e9b51150b0 BESM6: Fixed to use SCP provided sim_strcasecmp() 2017-01-17 16:38:16 -08:00
Mark Pizzolato
34ffe98605 TIMER: Fixed generic coscheduling and extended details in debug information 2017-01-17 16:29:55 -08:00
Mark Pizzolato
1555056396 All VAX: Adjust sim_interval by reasonable amount for string instructions
Previously sim_interval was adjusted by 1 plus the total number of bytes
referenced in string instructions (SCANC, SPANC, LOCC, SKPC, CMPC3,
CMPC5, MOVC3, MOVC5).  Since the amount of data that a string
instruction can reference is arbitrarily large (32bit size), the adjustment
to sim_interval could be ridiculously excessive.  This can result in wild
variances in clock calibration when large string data are referenced.
2017-01-17 15:58:55 -08:00
Mark Pizzolato
d9688833f9 README: Minor formatting cleanup 2017-01-16 15:03:28 -08:00
Mark Pizzolato
d5a56e0ab4 SCP: Take care to only write to a socket a single time and when appropriate 2017-01-16 14:25:38 -08:00
Mark Pizzolato
11c0251059 SCP: Make sure that log and debug file I/O use a large (64K) buffer 2017-01-16 12:56:33 -08:00
Mark Pizzolato
5f6636c6d7 makefile: Add build target 'experimental' to build any experimental simulators
- Upgrade BESM6 from experimental to be included in the 'make all'
- Add imds-225 to make all
- The cdc1700 simulator is currently the only experimental simulator
2017-01-16 12:53:14 -08:00
Leo Broukhis
7d3ede9492 BESM6: Improved TTY I/O (responsiveness, variable rate, turbo/authentic). 2017-01-15 23:58:38 -08:00
Mark Pizzolato
d8dbc7e6b5 SCP: Migrate all stdio writes to pass through SCP provided Fprintf() 2017-01-14 20:48:09 -08:00
Mark Pizzolato
861d9c8d9c makefile: Generalized git-id determination when simh is used as a submodule
This will support arbitrary location and naming of the simh submodule in the
parent repo's working directory.

It probably won't work for sub sub modules.  Suggestions welcome.
2017-01-14 12:09:00 -08:00
Mark Pizzolato
b72ec739be PDP10: Fixed bugs in 1-proceed
As discussed in: PDP-10: single step in DDT crashes ITS (#373)
2017-01-14 08:37:20 -08:00
Mark Pizzolato
84e43a8c73 HP2100: HP 2100 release 25
See HP2100/hp2100_release.txt for details of the release
2017-01-12 06:41:19 -08:00
Bill Beech
38668a25f1 ISYS80XX, IMDS-225: Extended device functions and debug cleanup
a)  Added sim_debug statements, formatted console messages.
b) Removed old debugging statements and redundant byte/word mask operations.
c) Added more device commands.
d) Added zx-200a and changed nulldev to return 0 vice 0xff.
e) Added commands and corrected RTYPE and RBYTE behavior so ISIS-II would boot.
f) Corrected device calls in SBC_reset, corrected get_mbyte and put_mbyte to
   match control bits from ipc_cont.c.
2017-01-11 16:08:14 -07:00
Mark Pizzolato
9851a36dd8 SCP: Fix Async I/O primitives operations for hosts without Intrinsic CAS 2017-01-10 23:40:25 -08:00