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

4518 Commits

Author SHA1 Message Date
Howard M. Harte
0f88cc07e1 AltairZ80: SCP300F: Add support for MS-DOS 2.00.
* Add support for 8259 interrupt controller.
* Add support for Cromemco and Tarbell Monitor ROMs.
* To allow port 0xFE to be used by the simh_dev.
* Use the CPU's SR instead of a SCP300F-specific one.
* 9513 RTC support.
2022-11-23 20:31:10 -08:00
Mark Pizzolato
3f0db42da2 SCP: Correct HELP SET ON INHERIT|NOINHERIT text
In particular, the SET ON INHERIT does not change the SET ON|NOON state.
2022-11-26 14:03:35 -10:00
Mark Pizzolato
52dd402884 Visual Studio Projects: Avoid modifying simh.sln while build_vstudio converts
When converting to a newer Visual Studio version, a new solution file is
created named simh-'vsversion'.sln so that we don't modify any files
managed by git.  The resulting converted solution file will be automatically
used when build_vstudio.bat is subsequently run and that solution can be
opened directly by the Visual Studio IDE.
2022-11-24 16:58:32 -10:00
Mark Pizzolato
a3c16f1d9c Visual Studio Projects: Add missing Property sheet for VS2022 XP builds 2022-11-24 14:20:07 -10:00
Mark Pizzolato
64356eea11 Visual Studio Projects: Allow VS2022 Professional and Enterprise to build XP 2022-11-24 13:04:43 -10:00
Mark Pizzolato
d5fc8dda4f github: Update CI to correct missing run statement 2022-11-24 12:11:16 -10:00
Mark Pizzolato
4e0617ca21 PDP9: Revise test run limit to accommodate very slow/busy host systems
Calibrated clock ticks are enabled and on very slow/busy hosts the
runtime may be exceeded before the tests correctly complete.
2022-11-24 11:13:05 -10:00
Mark Pizzolato
7419457000 SCP: Update HELP SET ON to describe INHERIT and NOINHERIT
Add missing help information reported in #130
2022-11-24 11:12:34 -10:00
Mark Pizzolato
f98a4ca93a Visual Studio Projects: Add extensive support for Visual Studio 2022
- Pre-Pre-Build-Event.cmd now dynamically determines the available
  compiler version along with any alternate toolset which may be part
  of the build environment and makes the appropriate windows-build
  library support available for linking.
- build_vstudio.bat now supports VS2022 and will dynamically adjust
  the converted VS2008 project files to leverage any available XP build
  support which might be installed so that the generated executables
  will support all versions of Windows from XP onward.  The VS2008
  generated executables automatically support all versions of Windows
  from XP onward.
2022-11-24 11:11:52 -10:00
Mark Pizzolato
45c6599577 SCP: Elaborate help for examine/deposit syntax being simulator specific
General help alignment cleanup.
2022-11-24 07:59:35 -10:00
Mark Pizzolato
dc020b325c Visual Studio Projects: Add ability to capture Visual Studio compiler version
Visual Studio defaults to disable the ability to redirect stdout and stderr
for the cl.exe program during a build.  This change allows us to capture,
record and display the compiler version.
2022-11-24 07:58:15 -10:00
Howard M. Harte
a25fb368ab AltairZ80: TDD: Remove unused variable. 2022-11-18 18:51:59 -08:00
Howard M. Harte
c2ea487429 AltairZ80: DJHDC: Conditionalize interrupt support. 2022-11-18 18:51:53 -08:00
Tony Lawrence
dc3cd257f8 PDP11: More correction in RK help text (per Paul Koning) 2022-11-17 21:06:39 -05:00
Tony Lawrence
b2fe75198b PDP11: Correct wording for RK MTAB entries and help text 2022-11-17 17:18:46 -05:00
Howard M. Harte
ccfa38f55f AltairZ80: Add DJHDC to VS project. 2022-11-13 09:38:32 -08:00
Howard M. Harte
3371617aff AltairZ80: Add DJHDC to makefile. 2022-11-13 09:38:28 -08:00
Howard M. Harte
ae54a85acc AltairZ80: Morrow HDC-DMA Hard Disk Controller. 2022-11-13 09:38:26 -08:00
Howard M. Harte
d2dd322c1d AltairZ80: Add Tarbell Double-Density to Visual Studio Project. 2022-11-13 09:38:25 -08:00
Howard M. Harte
9662321f08 AltairZ80: Add Tarbell Double-Density controller to makefile. 2022-11-13 09:38:22 -08:00
Howard M. Harte
47d95a7a6c AltairZ80: Add Tarbell Double-Density FDC
This controller is based the wd179x, adding a couple of Tarbell-specific
registers.
2022-11-13 09:38:18 -08:00
Mark Pizzolato
9ecf680eb5 3B2-700: Properly terminate list of SCSI devices 2022-11-14 17:19:39 -10:00
Mark Pizzolato
4377d93049 SCP: Avoid compile errors when compiled with UNICODE defined
On windows all platform specific APIs deliberately use ANSI APIs.
Fix these few inconsistencies.
2022-11-14 17:18:55 -10:00
Mark Pizzolato
ab610fa0cd simulator tests: update sel32 simulator test runlimit
On an unfettered system, the sel32 test completes after some 588 million
instructions.  On a slow host system, the system clock tick processing will
add to the total instructions executed.  Increase the limit to 750 million
instructions.
2022-11-12 17:18:36 -10:00
Mark Pizzolato
66de730a68 simulator tests: Add missing runlimit update for pdp9 simulator test 2022-11-12 16:10:59 -10:00
Mark Pizzolato
f48f0de9a5 simulator tests: Fix test setup to tolerate very busy or slow host systems
Adjust the RUNLIMIT to specify instructions instead of wall clock time.
2022-11-12 15:34:24 -10:00
Mark Pizzolato
bfc5232f66 SCP: Fix upper bound test for SCP command validation of numbers
- Validation was incorrect for large numbers
- Polish help text for DO command variable insertion
- Polish help text for file name part expansion
- Add SIM_RUNTIME (number of instructions/cycles executed)
- Add SIM_RUNTIME_UNITS (instructions or cycles)
2022-11-12 15:32:12 -10:00
Mark Pizzolato
42206352e8 CI Build: Correct source directory for the .git-commit-id.h file 2022-11-12 14:58:38 -10:00
Mark Pizzolato
b1155d8911 CI Build: Save build results - potential import to Windows-Development-Binaries 2022-11-12 07:37:33 -10:00
Mark Pizzolato
cee07edd77 CI Build: Correct artifacts path 2022-11-11 14:59:35 -10:00
Mark Pizzolato
178efbd49a CI Build: Update directory paths 2022-11-11 14:17:25 -10:00
Mark Pizzolato
d755350cbd CI Setup: Try and save Windows build results and correct build.yml line endings 2022-11-11 13:58:10 -10:00
Mark Pizzolato
4be421e08f BUILDROMS: Fix potential compiler warnings and prep for URL ROM downloads 2022-11-11 13:31:31 -10:00
Paul Koning
4e7443d441 BESM6: fix warning
This fixes a warning with some compilers.
2022-11-06 11:19:50 -05:00
Seth Morabito
b145541121 3b2: Improved sim_load procedure
The previous implementation of sim_load was riddled with little errors.
This change fixes those errors, improves user feedback, and limits the
allowable flags to '-r' and '-o'.
2022-11-08 09:49:02 -08:00
Mark Pizzolato
9b3f1c9d2e github: Update CI workflow build
- Change grouping of simulators built in each job to be in
  alphabetical order so reviewing failed or active github actions
  are more easily identified in the log information.
2022-11-10 10:16:07 -10:00
Mark Pizzolato
af1bffa1b5 makefile: simplify the required info to build a simulator.
Removed the need to specify source directories which are already
included in the specified options and dependent files.
2022-11-10 10:15:07 -10:00
Mark Pizzolato
5d090be536 Visual Studio Projects: Update required windows-build dependency version 2022-11-09 17:58:03 -10:00
Howard M. Harte
45fc63858d AltairZ80: SIO: Fix warning for type mismatch.
Fix warning introduced in PR#108
2022-11-08 22:01:03 -08:00
Howard M. Harte
bae8dc88ef AltairZ80: SIO: Add setFCBAddressCmd to simh_dev.
* Allows setting the FCB address used to send filenames between the host
  and guest operating systems.
* Increment the SIMH device version to SIMH005.
2022-11-06 15:52:58 -08:00
Howard M. Harte
f57826c635 AltairZ80: i86: Don't clear segment override on REPE/REPNE
MASM generates REP CS:MOVSW as:

REP
CS:
MOVSW

The Seattle Computer Products 8086 assembler allows the segment override
as a discrete opcode.  This means that:

CS:
REP
MOVSW

is also possible, and in fact used in the SCP Monitor v1.6.

The i86 emulator was clearing the override flags when REPE/REPNE,
is encountered, which causes the segment override to be lost.
Verifying the behavior of a real 80286 processor in an IBM PC/AT
(5170) using MS-DOS 6.22 DEBUG shows that both instruction sequences
yield the desired segment override.
2022-11-05 19:55:40 -07:00
Howard M. Harte
b6f386fad4 AltairZ80: i86: Fix bug in AAD instruction. 2022-11-05 19:46:53 -07:00
Mark Pizzolato
aa5304b7b4 README: Update to describe additional differences with open-simh 2022-11-07 10:56:37 -10:00
Seth Morabito
88916c7bf1 3B2-700 Initial Public Release
This commit introduces dozens of changes to make the 3B2-700 simulator
fully functional and ready for wider use. In addition to 3B2-700
availability, this commit includes a tremendous amount of refactoring
of the 3B2-400 and common code to make the project structure easier to
maintain and reason about.
2022-11-07 10:49:45 -10:00
Mark Pizzolato
48f1430bd0 3B2: Migrate 3b2_scsi to use updated sim_scsi, sim_disk and sim_tape
Started from pending 3b2-700 3b2_scsi.c and 3b2_scsi.h
2022-11-07 10:46:40 -10:00
Mark Pizzolato
2c7f44d9f7 TAPE: Add support for reading partial fixed sized records.
Partial reading is needed to properly read common archive images found
on bitsavers and elsewhere which were made from QIC devices which must
read multiples of 512 bytes at a time.
2022-11-07 10:46:15 -10:00
Seth Morabito
c73a497fd2 SCSI: Add some QIC tape reading support
These changes were merged from the 3b2-700 commit into the SCSI code here

Comments thoughts from Mark Pizzolato:
- This logic will work only with some archived QIC tape images that
  happen to contain only 512 byte records.  According to the master
  archiver (Al Kossow) QIC tapes have been archived with varying
  record sizes which are multiples of 512 bytes.  The logic in sim_scsi
  should handle reading 512 byte chunks from logical tape records
  which are multiples of that size.  This logic does not do that.
2022-11-06 16:41:24 -10:00
Mark Pizzolato
c3e306d2c3 DISK: Better support for SCSI device changing between disk<->tape device types
- Produce reasonable SHOW output for each respective type
- Changing a device disk<->tape sets disk and tape format to default values
- Don't allow disk oriented modes to be set for tapes (autosize, autozap
2022-11-06 13:07:05 -10:00
Mark Pizzolato
ab6e65507d SCP: Allow MTAB show routines to cleanly output nothing and be well formatted
Merely returning a non SCPE_OK status indicates no output and thus no
comma or newline separation.
2022-11-06 13:01:11 -10:00
Mark Pizzolato
bff443b9b0 makefile: Add alternate build option to compile source files separately
Invoking make with BUILD_SEPARATE=1 on the make command line or
defined as an exported environment variable will cause simulator source
files to be compiled separately.  This option avoids long simulator build
times when actively developing changes or new modules to a simulator.
2022-11-05 12:24:56 -10:00