Skip to content
Compare
Choose a tag to compare
@stsp stsp released this 07 Aug 13:47
· 3 commits to master since this release

This release contains ~160 commits, and is mostly targeted to resolving
the long-standing technical debts.

  • ELF format is now fully utilized. We now use ELF-based symbol tables
    and relocations, including dynamic relocations (which we simulate
    with --emit-relocs). This completes the ELF relocation work started at
    1.3 and 1.4 releases. Unfortunately, this brought in the new toolchain
    restrictions:
    • we no longer support upstream nasm (can only use our own nasm-segelf
      fork of the nasm for now)
    • do no longer support ld.lld (can only use GNU ld for now)
    • no longer support GNU strip (can only use llvm-strip for now,
      but the fix is already in GNU binutils-2.42)
      So the ELF support went in very painfully. We will keep working with
      the upstream projects (lld mainly) in a hope to restore their use.
      Nasm project have rejected our contributions, so the vanilla nasm
      support is not anticipated any soon.
  • Meson build system support. But not removing the old makefiles yet,
    as we need meson-1.3.2, which is not yet widely available.
  • thunk_gen and farptr compiler updates. thunk_gen is now a separate project.
  • Finally fixed remaining AlphaWaves problems. This game tests for the
    MS-DOS compatibility in a very rough ways.
  • Share was changed to resemble MS-DOS-7 more closely.
  • Fixed a few regressions of 1.7 (Prehistorik2 again)
  • Switched from C++11 to C++20 for templated lambdas.