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

4486 Commits

Author SHA1 Message Date
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
Mark Pizzolato
b3a8eddd3c makefile: Add check for gcc on Debian/Ubuntu Linux environments for v3 simh 2022-11-02 15:30:54 -10:00
Mark Pizzolato
b2bf1fdb17 s3: Fix out of bounds array reference and string overflow warning 2022-11-02 13:53:20 -10:00
Mark Pizzolato
4e8b24cabc makefile: Add WARNINGS=ALLOWED make option and change default optimize to -O2
The CI build specifies OPTIMIZE=-O3 and runs with the default where warnings
are converted to errors.
2022-11-02 12:19:55 -10:00
Lars Brinkhoff
ab096a8f7e PDP11: Enforce limit on number of displays in TV device. 2022-11-02 14:05:31 +01:00
Paul Koning
f55193afa6 makefile: don't use -fwhole-program
The GCC documentation explicitly says not to use that option
when -flto is used, and since that is the only place where
the makefile was using it, remove it to conform to the
documented rules.
2022-11-01 10:19:39 -04:00
Howard M. Harte
8d40c40d44 AltairZ80: wd179x: Improve debugging for WRITE_TRACK. 2022-11-01 21:08:27 -07:00
Howard M. Harte
5b2a9daa61 AltairZ80: s100_hdc1001: fix bug in format. 2022-11-01 21:08:20 -07:00
Mark Pizzolato
2214804976 makefile: Clarify advice when libpcap is needed but not found. 2022-10-31 12:01:39 -10:00
Lars Brinkhoff
04f6217c22 PDP11: Remove fprintf debug statement. 2022-10-30 19:34:42 +01:00
Lars Brinkhoff
e37205d8d7 PDP11: Fix TVSEL register.
It's sometimes used as a 16-bit register.
2022-10-31 11:01:00 -10:00
Lars Brinkhoff
34b21dab4c VIDEO: Fix bug handling a redraw event.
An event pulled from the queue after redraw has been handled needs to
update the vptr pointer.
2022-10-29 20:18:16 +02:00
Mark Pizzolato
26712597a1 makefile: Add OPTIMIZE= command option to change default from -O3 2022-10-30 17:22:03 -10:00
Mark Pizzolato
b4b18f02f9 makefile: Make non debug builds with -O3 and LTO under gcc with -fwhole-program 2022-10-29 18:03:33 -10:00
Lars Brinkhoff
da5e7f4769 PDP11: Improve idling. 2022-10-26 12:59:49 +02:00
Lars Brinkhoff
64a9c021f3 PDP11: Add MB11. 2022-10-10 12:32:28 +02:00
Lars Brinkhoff
a43b39acf7 PDP11: Add Logo TV raster display. 2019-09-27 12:00:58 +02:00
Mark Pizzolato
13677e83af README: Update with latest open_simh differences 2022-10-29 08:45:43 -10:00
Mark Pizzolato
18d54161bd IBM1130: Avoid Windows GUI startup for RegisterSanityCheck testing
Also synchronize Window Event pump and command input thread startup
before counting on their use.

Previously the Windows GUI startup happened too early (in the power on
device reset of all DEVICES) and it didn't consistently stabilize before
proceeding.  A quick exit after the RegisterSanityCheck activity would
sometimes hang and builds would never complete.
2022-10-29 07:29:16 -10:00
Mark Pizzolato
aad6cb5fc0 makefile: Add explicit option LTO=1 to enable Link Time Optimization builds 2022-10-28 14:59:03 -10:00
Mark Pizzolato
a4697d0ba3 github: Update workflow dependencies for macos and ubuntu so CI build completes 2022-10-28 10:30:47 -10:00
Mark Pizzolato
d93495beb8 github: Update CI workflow build
- Configure run on push and pull requests
- Use new macos and ubuntu OS images
- Add missing simulators from the build list
- Add potential LTO option for makefile builds
2022-10-28 09:57:14 -10:00
Mark Pizzolato
bbc5b12663 AltairZ80: Fix duplication declaration introduced in rebase 2022-10-27 18:09:03 -10:00
Mark Pizzolato
1ca0b3159e makefile: Make sure missing pcap is added to the desired package list 2022-10-27 02:14:52 -10:00
Lars Brinkhoff
bc893d3023 display: Fix compiler warning in NG device. 2022-10-26 13:11:56 +02:00
Howard M. Harte
e65a35d429 Fix AltairZ80 compilation with Visual Studio 2008 (#85)
* AltairZ80: SS1: Fix disable after reset.

The CompuPro System Support 1 could not be disabled after enabled and
used due to timers causing it to be busy.  Reset properly so that "set
ss1 disabled" works after reset.

* AltairZ80: wd179x: Properly reset 179x state.

* AltairZ80: M68K: Fix compile with VS2008.

* Musashi: Fix compilation with Visual Studio 2008.

* AltairZ80: M68K: Resolve warnings in softfloat.

* AltairZ80: Add headers to .vcproj
2022-10-24 14:15:51 -07:00
Richard Cornwell
7b4bfeca06 I7000: Fixed incorrect definitions. 2022-10-27 09:15:25 -04:00
Mark Pizzolato
7b96dd5c4e Visual Studio Projects: Report warnings as errors so CI builds fail on warnings 2022-10-27 09:22:54 -10:00
Mark Pizzolato
f7112f626f makefile: Make gcc and clang warnings fail builds on compile warnings
This change allows CI builds to fail without detailed viewing of build output
for gcc and clang builds (all modern compilers).  Thus forcing PR submitters
to find these problems before PRs are merged.  This is done  by compiling
with -Werror for these compilers.

We don't know how to do this for other compilers which may be able to use
the makefile, so warnings there will still proceed to build successfully.
2022-10-25 16:41:54 -10:00
Mark Pizzolato
c9252d1e42 makefile, SCP: Ignore the presence of , in "uname -a" output
Fix #1164
2022-10-27 09:07:32 -10:00
Mark Pizzolato
65c11e157d BUILDROMS: Add include to define unlink() on *nix systems. 2022-10-27 08:32:40 -10:00
Mark Pizzolato
c94b00529d makefile: Add missing BUILD_ROMS dependency for the pdp11 simulator 2022-10-27 08:31:09 -10:00
Bill Beech
32bafbb245 Intel-MDS: Properly declare multibus_get_mbyte return type 2022-10-26 16:44:58 -07:00