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.
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.
- 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
* 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
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.
* VIDEO: Fix bug: vid_ready can be used uninitialized.
* VIDEO: Not all events come with a valid windowID.
* PDP11: Fix NG SET TYPE.
The sense of MATCH_CMD is reversed.
* display: Fix bug in NG display controller.
There should be a separate state for each of the eight displays.
* display: Symbolic constant for number of displays.
Simulators built with DONT_USE_INTERNAL_ROM defined will not have hte
binary of the needed ROM or boot components build into the simulator
binaries. However, they will automatically and transparently fetch the
neeeded ROM or boot code from the web when these binary files aren't
available locally.
Some potential packaging platforms do not want to package/distribute
simh simulators which have build-in binary code (ROM images or other
boot code) which may have unknown copyright status. Historically Linux
distributed prebuild simulators but left it to a simulator user to reach out
on the web to pick up these needed pieces to actually use the simulator(s).
This addition allows the default simulator builds to include the needed
binary components built into the simulator(s). In addition, it also
allows simlators to be built with DONT_USE_INTERNAL_ROM defined and thus
not to contain the material with potentially questionalble providence,
but to transparently reach out to the web to fetch the needed component(s)
when they are needed without any effort on the part of the simulator user.
- Plan is to avoid "#ifdef DONT_USE_INTERNAL_ROM" in simulator code
and handle builtin or external files in SCP facilities
- Export ROM checksum value and source file path to allow for transparent
dynamic ROM location at run time.