1
0
mirror of https://github.com/simh/simh.git synced 2026-01-13 23:35:57 +00:00

4774 Commits

Author SHA1 Message Date
Mark Pizzolato
aeddff6de8 APPVEYOR: Reorder build platforms to be: macOS, Ubuntu, and Windows
- This exercises macOS first which is more likely to have build issues than
   Linux or Windows.
- Fix the format of the date used in filenames and commit messages
- Only include the platform simulator binaries in the created tarball
2023-07-16 14:09:53 -10:00
Mark Pizzolato
1e2c3efac0 APPVEYOR: Assure that build failures don't try to save binaries 2023-07-16 10:00:50 -10:00
Mark Pizzolato
8ec41d4503 FIO: Fix clang warnings in _sim_expand_honedir 2023-07-16 09:56:15 -10:00
Mark Pizzolato
77d862c1f7 APPVEYOR: Use GitHub token to save results in Development-Binaries repo
- Windows binaries are saved in a zip file
- Linux and macOS binaries are saved in a .tgz tarball
2023-07-16 08:03:43 -10:00
Mark Pizzolato
6a27b7ef1b SCP: Properly handle when regex string matches without some substring matches
B. Scott Michel's run of clang memory sanitizer potentially identified
that  when a substring doesn't match the returned array offsets would
be -1.

This commit handles that potential and sets the respective substring as
an empty string.
2023-07-15 11:58:28 -10:00
Mark Pizzolato
e42e888298 VIDEO: Initialize SDL_version structures that might not be completely set
B. Scott Michel's run of clang memory sanitizer identified that  some
fields in these structures in some versions on some platforms.
2023-07-15 11:46:31 -10:00
Mark Pizzolato
9cdfb0cae3 MicroVAX I: Cleanup magic boot support for both MicroVMS and VAX/VMS 2023-07-09 21:45:38 -10:00
Mark Pizzolato
c739e6195a Qbus VAX and PDP11's: Correct RQ controller model numbers RQDX1 and RUX50 2023-07-09 12:40:46 -10:00
Mark Pizzolato
05e3b20009 Qbus VAX and PDP11's: Add specific support for RQDX1 MSCP controller
- Change default RQ controller type for MicroVAX I simulator to RQDX1
- Validate changes to controller to CPU system bus
2023-07-09 12:19:17 -10:00
Mark Pizzolato
fbbfe931ae FIO: Don't try to interpret \ escape characters when unquoting file names
The \ character is the directory path separator for native Windows file
specifications.
2023-07-09 11:25:36 -10:00
Mark Pizzolato
e499d09f85 AppVeyor: Only include build targets in artifacts 2023-07-05 04:07:54 -10:00
Howard M. Harte
4eb8c65be8 AltairZ80: m68k: Avoid buffer overflow detected by gcc 9.4.0. 2023-07-04 21:06:58 -10:00
Mark Pizzolato
329a0f815b AppVeyor: Multi-Platform Parallel build with artifacts with no GitHub actions 2023-07-04 21:04:56 -10:00
Mark Pizzolato
183a3f926c Visual Studio Build: Properly generate commit-id when no uncommitted changes 2023-07-04 18:28:35 -10:00
Mark Pizzolato
7c0f13cab2 CONSOLE: Add optional destination port SET CONSOLE TELNET=CONNECT{=port}
This allows SCP commands to create a local telnet session window connected
to either the local simulator console or another localhost tcp port.
2023-07-02 12:44:27 -10:00
Mark Pizzolato
6491cf0371 BuildROMs: Make sure that multiple ROM includes are each numbered _n
The first ROM included will be defined with names:
        BOOT_CODE_SIZE
        BOOT_CODE_CHECKSUM
        BOOT_CODE_FILENAME
        BOOT_CODE_FILEPATH
        BOOT_CODE_ARRAY
 and BOOT_CODE_URL
That first ROM will also have names:
        BOOT_CODE_SIZE_1
        BOOT_CODE_CHECKSUM_1
        BOOT_CODE_FILENAME_1
        BOOT_CODE_FILEPATH_1
        BOOT_CODE_ARRAY_1
 and BOOT_CODE_URL_1
Subsequent included ROM's will have names
        BOOT_CODE_SIZE_n
        BOOT_CODE_CHECKSUM_n
        BOOT_CODE_FILENAME_n
        BOOT_CODE_FILEPATH_n
        BOOT_CODE_ARRAY_n
 and BOOT_CODE_URL_n
where n is 2 thru the max number of supported ROM includes.
2023-07-02 10:52:34 -10:00
Mark Pizzolato
49902b830e TMXR: Add support for tcp port listen backlog
The system default of no extra backlog has generally worked well for
simulated mux devices for a long time since reasonable arrival of
new tcp connections is usually expected to have gaps of minutes.

If, for some reason, connection arrivals in a particular case can
happen multiple times per second, a backlog might be useful.
2023-06-30 03:35:54 -10:00
Mark Pizzolato
f9a4b8c6b9 PDP11: Properly define the RC and RF devices to allow for varying platters
Leverage drive type flag DETAUTO which defers meta data addition to
happen at detach time.  This allows pre-existing containers to be attached
to larger drives (with more platters) with autosize disabled and then if
autosizing is subsequently enabled before detaching, will thus add correct
meta data when the unit is detached.

Newly created containers will have meta data added at creation time and
updated to reflect data written beyond the original data in the container.
2023-06-29 14:13:16 -10:00
Mark Pizzolato
8f4d4d6d0a DISK: Add drive type option to defer autosize meta data addition to detach 2023-06-29 14:05:38 -10:00
Mark Pizzolato
4cbaa13522 README: Correct Ubuntu/Debian build dependencies (Daichi Tamaki) 2023-06-27 13:55:17 -10:00
Mark Pizzolato
dd406478e4 MicroVAX I: Properly boot all VMS versions with differently located SYSBOOT
Different versions of VMS on different VAX systems default to different
locations for the secondary bootstrap program SYSBOOT.EXE.  Some
have it at [SYSEXE]SYSBOOT.EXE and others have it at
[SYS0.SYSEXE]SYSBOOT.EXE.

Digital sold different MicroVAX I and VAXStation I systems with different
boot ROMs that defaulted to look in one of these locations but not
consistently across systems that were sold.

This change uses the existing KA610 ROM image (that supports both
MicroVAX I and VAXStation I systems) and defaults to look for the
secondary bootstrap in [SYSEXE]SYSBOOT.EXE.  If the boot attempt
fails, on the currently connected disk, it retries looking for the
secondary bootstrap in [SYS0.SYSEXE]SYSBOOT.EXE.

This retry process does not work on the VAXStation I.  In order to boot
from disks which have SYSBOOT.EXE located in [SYS0.SYSEXE] you can
execute

    sim> BOOT /R5=100

and when you are prompted in the video screen with:

   Bootfile:

merely enter:

   Bootfile:[SYS0.SYSEXE]SYSBOOT.EXE
2023-06-27 13:53:39 -10:00
Mark Pizzolato
91e2e4beb9 TIMER: More reliable NOCALIBRATE initialization
- Behave well when NOCALIBRATE mode is enabled after some instruction
  execution already happened.
- Properly detect the reliable calibrated clock or use the internal one.
2023-06-27 13:46:31 -10:00
Mark Pizzolato
be831daa1d SCP: Assure that ASSURE() gets used instead of assert() 2023-06-27 13:27:56 -10:00
Mark Pizzolato
2156bf4192 README: Update current features 2023-06-27 13:23:53 -10:00
Mark Pizzolato
a7c789caec All VAXen: Properly set the interrupt latency based on the TODR updates
The interval timer is not a calibrated clock and thus should not be the
basis for reasonably expected instruction execution rate computations.
2023-06-27 13:01:18 -10:00
Mark Pizzolato
008ecc4e8b SCP: Correctly implement $ in all EXAMINE or DEPOSIT cases 2023-06-27 11:59:59 -10:00
Mark Pizzolato
07ea607e79 VAX: Enrich test script to report useful state 2023-06-27 11:49:54 -10:00
Mark Pizzolato
7e8288d84b VIDEO: Actually fix the handling of EVENT_REDRAW to update the correct window 2023-06-27 11:43:04 -10:00
Mark Pizzolato
1e1b97475b PDP11: RK, RX, RY and TD disks let detach_unit handle detaching disks 2023-06-27 11:43:04 -10:00
Mark Pizzolato
13d2e63e03 SCP: Added APIs for opening and closing temporary files 2023-06-27 11:43:04 -10:00
Mark Pizzolato
158c749a7e SCP: Directly call disk and tape detach routines when detach_unit is called 2023-06-27 11:40:44 -10:00
Mark Pizzolato
2d2b8baa4f DISK: Cleanup generated MTAB entries for best ordering and single unit support
Much better HELP <dev> SET and HELP <dev> SHOW results.
2023-06-27 11:39:34 -10:00
Mark Pizzolato
9392ce3974 Visual Studio Projects: Exit build with failure on tests or source check fails 2023-06-27 11:37:45 -10:00
ken rector
c331284b7c sigma: Correct DP Sense Length error(Bob Supnick) 2023-06-27 11:37:45 -10:00
Mark Pizzolato
70ec37ce58 SAGE: Remove irrelevant platform #ifdefs and redundant includes 2023-06-27 11:37:45 -10:00
Howard M. Harte
5d8bceb77d AltairZ80: IBC MCC: Clean up HDC. 2023-06-27 11:37:45 -10:00
Mark Pizzolato
aa189708b4 Visual Studio Projects: Clean up existing project configurations
SEL32: Remove video defines from project with no video device
PDP11: Clean out irrelevant VCWebServiceProxyGeneratorTool entries in project
2023-06-27 11:37:44 -10:00
Mark Pizzolato
a1fb87a026 DISK: Assure that UNIT_MUSTBUF buffered data reflects the actual unit size 2023-06-27 11:37:44 -10:00
Mark Pizzolato
c73235d8ef DISK: Assure that unit flags in proper state on an explicit attach or detach
- Make sure unit isn't queued when detached.
- Properly allow (or reject) EXAMINE or DEPOSIT to disks unless format is
- correct.
2023-06-27 11:37:44 -10:00
Mark Pizzolato
6fa6b5292c FIO: Add a global variable that indicates the normal host path separator
This avoids the potential need for platform specific #ifdef blocks in
simulator code which might be needed on some platforms.
2023-06-27 11:18:24 -10:00
Mark Pizzolato
e7879b1bd0 IBM1130: Cleanup irrelevant include files mostly provided in sim_defs.h 2023-06-27 11:18:24 -10:00
Mark Pizzolato
9e6e0f0355 FIO: Enhance Source Code Checking
- Optionally export problem details
- Optionally allow specific problem exceptions
- Precisely match platform defines
2023-06-27 10:38:22 -10:00
Mark Pizzolato
3c0d7385e1 Visual Studio Projects: Correct file name capitalization in IBM1130 project
Allow dynamic input of source code checking parameters.
2023-06-20 14:42:50 -10:00
Mark Pizzolato
444cf9d215 TAPE: Cleanup faulty logic in sim_tape_detach
Some code paths, depending on tape type, didn't properly close the
open file.
2023-06-20 11:38:15 -10:00
Mark Pizzolato
dfbd099677 BUILDROMS: Reorganize defines so multiple ROM includes have consistent names 2023-06-17 18:25:51 -10:00
Mark Pizzolato
37bc857bf1 makefile: Add current support to build on Android Termux environments 2023-06-17 06:15:25 -10:00
Mark Pizzolato
c179fc52b3 TIMER: Fix check of timing values to properly report inconsistency 2023-06-08 07:52:26 -10:00
Mark Pizzolato
8871b819c9 TIMER: Properly report clock calibration inconsistency 2023-06-08 07:16:57 -10:00
Seth Morabito
fe40ece9f2 SCP: Don't malloc ep->match_pattern twice 2023-06-08 01:31:35 -10:00
Seth Morabito
a496c85e1c 3B2: Properly NULL-terminate IU mod arrays 2023-06-08 01:31:35 -10:00