simh-testsetgenerator/PDP10
B. Scott Michel d9d0e8bd74 CMake: Updates
Issue #294: "apple silicon build problem(s?)": If the "--flavor/-f" flag
is not specified on the command line, then complain loudly, print help
and exit. The script used to default to "Unix Makefiles".

Updates:

- Add missing "-DHAVE_LIBPNG" compiler command line define when the PNG
  library is detected/present for screen capture support.

- Add "clang64" to the list of MinGW64 platforms for which the
  .travis/deps.sh script can install build dependencies.

- Add PThread4W_FOUND to the condition that sets async I/O for Win32
  when using vcpkg for build dependencies.

- Add vs2022-x64, vs2019-x64 and vs2017-x64 build environments to
  build 64-bit Windows executables.

- Use simulator AIO only where needed by the simulator (i.e., the
  simulator calls/uses AIO_CHECK_EVENT in sim_instr())

  - Add "USES_AIO" flag to add_simulator() to mark a simulator that
    acutally uses asynchronous I/O.

  - Build "_aio" SIMH core library variants that have AIO turned on,
    link with the "_aio" variant when a simulator sets USES_AIO.

  - Emit a warning message when WITH_ASYNC is False (CMake configuration
    option) to notify the user/developer that some functionality will be
    crippled.

  Affected simulator builds: 3b2 family, PDP-6, PDP-11, VAX family,
  IMLAC and TT2500. The makefile and cmake/generate.py also updated
  to remain in sync with CMake.

  N.B.: Simulators still link with the underlying platform's threading
  library. SEL32 requires pthreads or equivalent threading library,
  independent of AIO.

- cmake/cmake-builder.sh

  - New "--no-aio" flag: Build simulators without async I/O.

  - New "--no-aio-intrinsics" flag: Don't build async I/O using compiler
    compare-exchange, atomic load intrinsics.

- cmake/cmake-builder.ps1

  - New "-noaio" flag: Build simulators without async I/O.

  - New "-noaiointrinsics" flag: Don't build async I/O using compiler
    compare-exchange, atomic load intrinsics.

CMake 3.28.1 INTERFACE_LINK_LIBRARIES behavior change: The file name
must now be an absolute path. Relative paths no longer accepted.
Internally, SIMH enforces this if CMAKE_VERSION >= 3.19, when REAL_PATH
was first implemented.
2024-02-01 12:51:13 -05:00
..
tests KA10: Added support for Address Stop (lars) 2022-10-23 17:56:02 -04:00
CMakeLists.txt CMake: Updates 2024-02-01 12:51:13 -05:00
ka10_ai.c PDP10-KA, PDP10-KL: Adopt internal SCP internal time base 2020-10-29 13:35:55 -07:00
ka10_auxcpu.c KA10: Removed compiler warnings. 2020-10-13 20:06:04 -04:00
ka10_ch10.c KA10: Fixed Chaosnet devices to work properly under ITS. 2023-01-18 18:01:32 -05:00
ka10_dkb.c KA10: Moved over older changed to ITS and WAITS devices. 2023-10-09 20:27:43 -04:00
ka10_dpk.c KA10: Remove redundant include of time.h. 2020-10-31 11:56:24 -04:00
ka10_iii.c KA10: Moved over older changed to ITS and WAITS devices. 2023-10-09 20:27:43 -04:00
ka10_imx.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ka10_mty.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ka10_pclk.c KA10: Remove redundant include of time.h. 2020-10-31 11:56:24 -04:00
ka10_pd.c KA10: Remove redundant include of time.h. 2020-10-31 11:56:24 -04:00
ka10_pmp.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ka10_stk.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ka10_ten11.c KA10: Moved over older changed to ITS and WAITS devices. 2023-10-09 20:27:43 -04:00
ka10_tk10.c KA10: Remove redundant include of time.h. 2020-10-31 11:56:24 -04:00
ka10_tv.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
kl10_fe.c KA10: Fixed to allow EDDT to work correctly on KL10. 2023-10-09 20:27:42 -04:00
kl10_nia.c KA10: Fixed some coverity errors. 2022-03-10 19:12:46 -05:00
ks10_ch11.c KA10: Fixed Chaosnet devices to work properly under ITS. 2023-01-18 18:01:32 -05:00
ks10_cty.c KA10: Fixed bug with page fault during ILDB/IDBP 2022-02-24 08:37:12 -05:00
ks10_dup.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ks10_dup.h KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ks10_dz.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ks10_kmc.c KA10: Fixed bug with page fault during ILDB/IDBP 2022-02-24 08:37:12 -05:00
ks10_lp.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ks10_tcu.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
ks10_uba.c KA10: Fixed some compiler warnings on MACOS. 2022-03-06 23:20:19 -05:00
kx10_cp.c KA10: Added default disable for devices that could be on KL10. 2022-06-21 09:50:05 -04:00
kx10_cpu.c KA10: Fixed OWGBP on KL10B. 2023-10-09 20:27:43 -04:00
kx10_cr.c KA10: Added default disable for devices that could be on KL10. 2022-06-21 09:50:05 -04:00
kx10_cty.c KA10: Added support for KL10A/B. 2020-03-09 23:07:47 -07:00
kx10_dc.c KA10: Added default disable for devices that could be on KL10. 2022-06-21 09:50:05 -04:00
kx10_defs.h KA10: Moved over older changed to ITS and WAITS devices. 2023-10-09 20:27:43 -04:00
kx10_df.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_disk.c KA10: Removed compiler warnings. 2020-10-13 20:06:04 -04:00
kx10_disk.h KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
kx10_dk.c KA10: Fixed DK10 to properly interrupt. 2022-06-21 09:47:02 -04:00
kx10_dp.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_dpy.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
kx10_dt.c KA10: Code cleanup for Dectape device. Needed for Tenex support. 2022-06-21 09:47:52 -04:00
kx10_imp.c KA10: Moved over older changed to ITS and WAITS devices. 2023-10-09 20:27:43 -04:00
kx10_lights.c KA10: Initial release of PDP10 KA/KI and PDP6 simulators. 2019-07-09 20:59:01 -04:00
kx10_lp.c KA10: Added default disable for devices that could be on KL10. 2022-06-21 09:50:05 -04:00
kx10_mt.c KA10: Fixed TM10A to request first word at issue of write instruction. 2023-01-21 23:07:58 -05:00
kx10_pt.c KA10: Removed REG_UNIT. 2022-06-21 19:32:53 -04:00
kx10_rc.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_rh.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_rp.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_rs.c KA10: Added switch for DF10 vs DF10C. 2022-06-21 09:43:17 -04:00
kx10_sys.c KA10: Add -m option to load .exe files to load monitors. 2023-10-09 20:27:43 -04:00
kx10_tu.c KA10: Release 3 of PDP10 simulators. KS10 support added. 2022-02-19 20:25:44 -05:00
pdp6_dcs.c KA10: Initial release of PDP10 KA/KI and PDP6 simulators. 2019-07-09 20:59:01 -04:00
pdp6_dct.c KA10: Removed duplicate register. 2022-07-08 17:48:04 -04:00
pdp6_dsk.c ALL: Correct help text in "SET <unit> LOCKED" MTAB entries 2021-04-19 15:22:15 -07:00
pdp6_dtc.c ALL: Correct help text in "SET <unit> LOCKED" MTAB entries 2021-04-19 15:22:15 -07:00
pdp6_mtc.c ALL: Standardize writelock behavior adding global UNIT_WLK & UNIT_WPRT 2021-04-19 10:58:51 -07:00
pdp6_slave.c KA10: Removed compiler warnings. 2020-10-13 20:06:04 -04:00
pdp10_bug_history.txt PDP10: Fix nested indirect address limit exceeded (from Bob Supnik) 2016-02-19 12:28:56 -08:00
pdp10_cpu.c PDP10: Compiler warning cleanup 2020-10-19 12:30:27 -07:00
pdp10_defs.h PDP10, PDP11, Unibus VAXen: CH11 Chaosnet interface. 2018-11-22 07:50:57 +01:00
pdp10_fe.c PDP10: Avoid console port input overrun - wait until prior input is processed 2021-01-21 07:56:59 -08:00
pdp10_ksio.c PDP10, PDP11, Unibus VAXen: CH11 Chaosnet interface. 2018-11-22 07:50:57 +01:00
pdp10_lp20.c All LP and CD devices: Removed use of ftell for pipe compatibility 2022-06-16 16:13:46 -07:00
pdp10_mdfp.c PDP11, PDP10, all VAX: General extern cleanup. 2017-02-04 19:37:20 -08:00
pdp10_pag.c PDP11, PDP10, all VAX: General extern cleanup. 2017-02-04 19:37:20 -08:00
pdp10_rp.c PDP10: Fix inadvertent overlapped unit status bits 2022-02-20 11:26:14 -08:00
pdp10_sys.c All: Declare sim_stop_messages as an array SCPE_BASE long 2020-09-02 15:56:07 -07:00
pdp10_tim.c Fix UTF-8 encoding for five files 2023-03-30 09:31:06 -04:00
pdp10_tu.c All Tape DEVICES: Added extra case points for new MTSE definitions 2022-06-16 16:13:46 -07:00
pdp10_xtnd.c PDP11, PDP10, all VAX: General extern cleanup. 2017-02-04 19:37:20 -08:00