1
0
mirror of https://github.com/simh/simh.git synced 2026-01-13 15:27:14 +00:00

4842 Commits

Author SHA1 Message Date
Mark Pizzolato
6bf717976b makefile: Isolate pthreads and png dependencies to binaries that need them
- pthreads are needed for network capable systems and video capable simulators.
- png is only needed for video capable simulators.
2023-08-12 15:33:31 -10:00
Mark Pizzolato
1d8a141b73 makefile: Remove errant message display and standardize all build options
All options which are currently and previously described in the comments
as allowing {option-name}=1 to enable, are now enabled if {option-name}
is defined to be anything at all,
2023-08-08 01:45:51 -10:00
Mark Pizzolato
412385f978 makefile: Add option to automatically run brew for missing dependencies 2023-08-05 08:02:24 -10:00
Mark Pizzolato
4b3c97edb9 APPVEYOR: Fix README.md update for Windows builds, add arch to artifacts 2023-07-31 12:39:09 -10:00
Mark Pizzolato
8db45253e0 APPVEYOR: Use correct name for older Ubuntu 16.04 image 2023-07-29 13:19:55 -10:00
Mark Pizzolato
0dfe5a40a0 ETHER: Load VDE support dynamically 2023-07-29 08:10:50 -10:00
Mark Pizzolato
78fe4ec5e0 SCP: Use sim_defs.h defined global stringify macro 2023-07-29 08:10:50 -10:00
Mark Pizzolato
f9dedad627 makefile: curl needs to be actively installed on some platforms
- Make missing curl or tar visible in simulator environment variables:
       SIM_CURL_CMD_AVAILABLE
and SIM_TAR_CMD_AVAILABLE
2023-07-29 08:09:48 -10:00
Mark Pizzolato
b1d63da52b APPVEYOR: Actually change to the older build images 2023-07-29 08:05:37 -10:00
Mark Pizzolato
86d365d42b APPVEYOR: Build on earlier OS versions to extend pre-built binary compatibility 2023-07-27 06:33:14 -10:00
Mark Pizzolato
63028863e4 SCP: Default to dynamically loading LIBEDIT, LIBPCRE and LIBPNG 2023-07-27 06:28:53 -10:00
Mark Pizzolato
9932fd1610 makefile: Add support for building on OpenSUSE Linux 2023-07-27 06:19:48 -10:00
Mark Pizzolato
e6f47400e8 SCP: Cleanup EXPECT help 2023-07-21 04:57:25 -10:00
Mark Pizzolato
fddcd7c346 SCP: Display editline version in SHOW VERSION output 2023-07-21 04:22:31 -10:00
Mark Pizzolato
79714192b4 SCP: Define and use a global macro to stringify macro values 2023-07-21 04:13:35 -10:00
Mark Pizzolato
2dc0d099f2 makefile: Robustly find simulator test scripts
First look in the directory the first dependent file is located in, if
not found, then look in the first simulator specific include directory.
2023-07-20 14:47:25 -10:00
Mark Pizzolato
949b56b7a9 Qbus & Unibus VAX & PDP11: Correct controller type KLESI (RC25) to 3, add KDB50 2023-07-20 14:47:25 -10:00
Peter Schorn
9e4e9c57f6 AltairZ80: Updated documentation including format change 2023-07-20 14:47:25 -10:00
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