All External Packages were updated to provide VS2022 support (via a minor update to vstool.cmd), and as a result, have been rebuilt so that Hercules's reported "HHC01417I Built with..." messages for each now accurately report their actual current repository version.
This is actually just a "cosmetic" update since none of the actual logic of any of the External Packages has actually changed. Only the version strings have changed. Not the actual logic.
This should be a cosmetic change for those who build the External Packages themselves.
For those who don't however (i.e. for those who build and link Hercules with the default ExtPkg lib files that come pre-delivered with the Hercules distribution, this should update all ExtPkgs to their latest and greatest version.
Due to a recently discovered CMake build script bug in the External Packages, the actual cpu architecture of the resulting static libs were all the same (i.e. the so-called 32-bit libs, named libcrypto32.a, libdecNumber32.a, libSoftFloat32.a and libtelnet32.a, were actually 64-bit, not 32-bit).
This commit is to simply update all of the extpkg libs with the latest version, which, having now all been built with the fixed CMake script, are now all for the correct cpu architecture. (Only the *nix '.a' static libs were affected, but I'm committing new versions of all of the Windows VS2017 '.lib' files too in order to pick up the new "HHC01417I Built with..." version strings.)
Move selected functionality out of the Hercules proper and into separate externally built and maintained External Packages, keeping only the resulting static libs.
This is an initial proof-of-concept commit that moves decNumber and SoftFloat out of Hercules and into separate externally maintained repositories. Hercules now only links with the resulting static lib files, thereby reducing Hercules's overall code footprint making it easier to build and maintain (i.e. making it more "nimble").
Other functionality is envisioned to eventually be moved out of Hercules and into separate "External Package" repositories as well (such as the channel subsystem and device emulation for example), eventually reducing Hercules down to its core functionality: accurate emulation of the core architectural instruction set.