gcc-ia16 VS open-watcom-v2

Compare gcc-ia16 vs open-watcom-v2 and see what are their differences.

gcc-ia16

Fork of Lambertsen & Jenner (& al.)'s IA-16 (Intel 16-bit x86) port of GNU compilers ― added far pointers & more • use https://github.com/tkchia/build-ia16 to build • Ubuntu binaries at https://launchpad.net/%7Etkchia/+archive/ubuntu/build-ia16/ • DJGPP/MS-DOS binaries at https://gitlab.com/tkchia/build-ia16/-/releases • mirror of https://gitlab.com/tkchia/gcc-ia16 (by tkchia)

open-watcom-v2

Open Watcom V2.0 - Source code repository, Wiki, Latest Binary build, Archived builds including all installers for download. (by open-watcom)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
gcc-ia16 open-watcom-v2
11 23
154 918
- 4.1%
0.0 9.9
2 months ago about 10 hours ago
C C
GNU General Public License v3.0 only GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

gcc-ia16

Posts with mentions or reviews of gcc-ia16. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-17.
  • Building GCC 1.27 (first GCC with x86 support) (2019)
    1 project | news.ycombinator.com | 1 Apr 2024
    Mainstream GCC has never supported 16-bit code on x86, only 32-bit

    However, there is (at least one) fork which adds 16-bit code support, see https://github.com/tkchia/gcc-ia16

    I don't think the GCC maintainers have ever or will ever want to support 16-bit x86, because it is so limited, and adds a lot of messy corner cases, and nowadays is really only of hobbyist/retrocomputing interest.

    Maybe there is some 16-bit x86 embedded system still being maintained–there were military spec versions of the 8086, and possibly some weapons system, aircraft, satellite, etc, still in use contains one. But I doubt they'd have any interest in adopting a 16-bit GCC – they'd already have some proprietary compiler they'd been using for decades, switching now would add a lot of risk, very late in the life of a legacy system, for no tangible benefit

  • Djgpp
    4 projects | news.ycombinator.com | 17 Jan 2024
    These days there is also a 16-bit GCC port to DOS (https://github.com/tkchia/gcc-ia16). I never encountered one of those back in the day? I think the compiler itself does not run in 16-bit DOS though.

    Anyone interested in compiling for DOS (32-bit or 16-bit) should also check out Free Pascal.

  • Rust is Boring
    6 projects | /r/rust | 13 Mar 2023
    My advice is, when you feel you need that challenge, install DOSBox or DOSBox-X and Open Watcom C/C++, DJGPP, or gcc-ia16 and do some retro-programming. You'll also get the fun of being able to do low-level hardware twiddling and rely on DOS being so simple that it's effectively an RTOS.
  • Writing FreeDOS Programs in C
    1 project | /r/C_Programming | 13 Feb 2023
    Looking at part 1 and some of the videos, it looks like this doesn't actually use OpenWatcom, but i16gcc from the FreeDOS distribution, which looks to be a port of gcc that targets 16-bit x86.
  • "My Reaction to Dr. Stroustrup’s Recent Memory Safety Comments"
    11 projects | /r/rust | 2 Feb 2023
    And, if that surprises you, gcc-ia16 is a thing that has come into existence not only over a decade after DJGPP but also after Open Watcom already existed.
  • How can I compile rust for 16bit x86 (Intel 8086)?
    4 projects | /r/rust | 31 Dec 2022
    or GCC IA 16 (https://github.com/tkchia/gcc-ia16) gets someday mainlined (also a multi month/years project) and then gccrs can maybe use it as backend
  • Tools and/or tutorials for making a roguelike in DOS?
    1 project | /r/roguelikedev | 7 Jun 2022
    There is a 16-bit port of GCC these days as well included together with DJGPP if you install FreeDOS, but available separately as well (I think it can cross-compile from other systems like DJGPP can too?) https://github.com/tkchia/gcc-ia16
  • How FreeDOS Grew Up and Became a Modern DOS
    9 projects | news.ycombinator.com | 29 Jan 2022
    TK Chia and others have been working on adding DOS C/C++ compiler-isms to GCC as well as improving the the codegen to make it more hospitable for DOS apps. So far, the FreeDOS kernel compilable by gcc-ia16.

    https://github.com/tkchia/gcc-ia16

  • Linux (ELKS) running on an IBM PC XT replica
    4 projects | /r/linux | 6 Aug 2021
  • how to get started programming a game/program for dos?
    3 projects | /r/dosgaming | 7 Jul 2021
    There is a more recent fork of gcc/DJGPP to make 16-bit DOS applications that I also never tried, but that might be worth using (and I think it is bundled in the latest FreeDOS, so it might be very easy to set up by just installing that in a virtual machine?): https://github.com/tkchia/gcc-ia16

open-watcom-v2

Posts with mentions or reviews of open-watcom-v2. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-17.
  • Djgpp
    4 projects | news.ycombinator.com | 17 Jan 2024
    https://github.com/open-watcom/open-watcom-v2

    In terms of ISO-complianceness, perhaps don't expect much. It basically C89 (the C99 support is still incomplete), and for C++... most likely not even C++98 - compliant.

  • Popularity of DOS/4GW made Win95 game compat easier, but with higher stakes
    5 projects | news.ycombinator.com | 29 Aug 2023
    > You will also want to start with a 16-bit C compiler like Borland Turbo C or Microsoft C

    The parent post mentioned they're going to use OpenWatcom which is an actively developed[0] C and C++ compiler that targets 16bit DOS (among others).

    [0] https://github.com/open-watcom/open-watcom-v2

  • #pragma once / header guards / C++ committee.
    2 projects | /r/cpp | 31 May 2023
    Despite the lack of feature support, the compiler is still updated to this day, and still does support DOS, Windows, Linux, and OS/2, so it's modern in the sense of maintenance, just not really standards support. If you got further questions, I can send you the Discord link. They are pretty friendly.
  • Rust is Boring
    6 projects | /r/rust | 13 Mar 2023
    My advice is, when you feel you need that challenge, install DOSBox or DOSBox-X and Open Watcom C/C++, DJGPP, or gcc-ia16 and do some retro-programming. You'll also get the fun of being able to do low-level hardware twiddling and rely on DOS being so simple that it's effectively an RTOS.
  • Build C/C++ programs to run on homebrew 286?
    1 project | /r/homebrewcomputer | 24 Feb 2023
    If you want to build under Linux, I would recommend you look at Open Watcom. It's the best open source 16-bit x86 C compiler, IMHO.
  • "My Reaction to Dr. Stroustrup’s Recent Memory Safety Comments"
    11 projects | /r/rust | 2 Feb 2023
    I have recently found out that Watcom C still exists. And not just exists, but there are plenty of commits.
  • Win16 Retro Development
    5 projects | news.ycombinator.com | 24 Dec 2022
    I should note, that OpenWatcom 2.0[1] is far better for supporting more recent C and C++ code, modern hosts and tooling, but still able to compile into 16 bit code. It is also actively maintained. Instead of MASM I recommend JWasm[2] + Jwlink[3]. Back in time I did a fork[4] of JWasm that has cleaner build system (CMake).

    [1] https://github.com/open-watcom/open-watcom-v2

    [2] https://github.com/Baron-von-Riedesel/JWasm

    [3] https://github.com/JWasm/JWlink

    [4] https://github.com/JWasm/JWasm

  • Rendering like it's 1996 - Baby's first pixel
    1 project | /r/programming | 16 Dec 2022
    If you want to run this in DOS: the code under src/should actually compile with this OpenWatcom fork via the -za99 flag. MiniFB however will not compile. You'd have to palettize the output pixel buffer to 256 colors and then blit it to 0xa000if you fancy that.
  • Falsehoods programmers believe about undefined behavior
    7 projects | /r/rust | 28 Nov 2022
    GCC, clang or maybe watcom? You wouldn't find it there (before invention of AGI, but that would be entirely different can of worms).
  • Having trouble setting up whonix on Mac OS
    1 project | /r/Whonix | 8 Nov 2022

What are some alternatives?

When comparing gcc-ia16 and open-watcom-v2 you can also consider the following projects:

elks - Embeddable Linux Kernel Subset - Linux for 8086

DOOM - DOOM Open Source Release

build-djgpp - Build DJGPP cross compiler and binutils on Windows (MinGW/Cygwin), Mac OSX and Linux

MS-DOS - The original sources of MS-DOS 1.25 and 2.0, for reference purposes

em-dosbox - An Emscripten port of DOSBox

rusty-dos - A Rust skeleton for an MS-DOS program for IBM compatibles and the PC-98, including some PC-98-specific functionality

emu2 - Simple x86 and DOS emulator for the Linux terminal.

emularity - easily embed emulators

abrash-black-book - Markdown source for Michael Abrash's Graphics Programming Black Book

awesome-dos - Curated list of references for development of DOS applications.