gcc-ia16
winevdm
Our great sponsors
gcc-ia16 | winevdm | |
---|---|---|
11 | 116 | |
154 | 2,442 | |
- | - | |
0.0 | 7.9 | |
2 months ago | 8 days ago | |
C | C | |
GNU General Public License v3.0 only | GNU General Public License v3.0 only |
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
-
Building GCC 1.27 (first GCC with x86 support) (2019)
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
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
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
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"
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)?
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?
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
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
-
how to get started programming a game/program for dos?
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
winevdm
-
Winlator: Android app that lets you to run Windows apps with Wine
Not exactly what you were asking, but winevdm [0] does use code from Wine to run 16-bit Windows applications on 64-bit Windows installs that don't support it natively (via ntvdm).
[0] - https://github.com/otya128/winevdm
-
"LibreOffice is better at reading old Word files than Word"
https://github.com/otya128/winevdm run 16 bit apps on 64 windows
This, along with Windows's own compatibility mode tweaks, should run almost any game that has ever been released on Windows.
- 29 years ago today I went online. Netscape Navigator 1.0 was the tool I loved
- Anyone ever play Castle of the Winds?
-
SimCity Classic - Guide to Installation (Windows / DOSBox)
WineVDM: https://github.com/otya128/winevdm/releases
-
Show HN: WinGPT, AI Assistant for Windows 3.1
It could work with the help with otvdm: https://github.com/otya128/winevdm
-
Free Tech Tools and Resources - Mac Scrolling, Load Testing, Win Server Switch Tip & More
You can repeat this command as many times as you need to for additional records. More information can be found here. Total downtime in a VMWare environment is less than five minutes, barring any DNS server replication in play." Yet Another Free Tool winevdm enables you to keep old Windows programs on life support by running 16-bit Windows (1.x, 2.x, 3.0, 3.1, etc.) on a 64-bit Windows system. Ojakobe explains, "Had a special case of a user who clung to their Windows 7 PC because their work was reliant on a 16-bit program from 1997 (and even on 7 it didn't run properly). Used the program above to make it run reliably on 10." One Final Free Tool LocalAI is a self-hosted, OpenAI-compatible API that allows you to run language learning models locally or on-prem using consumer-grade hardware without the need for GPUs. This RESTful API supports multiple model families that are compatible with ggml format. Our thanks go to mudler_it for this one.
-
IT Pro Tuesday #255 - Mac Scrolling, Load Testing, Win Server Switch Tip & More
winevdm enables you to keep old Windows programs on life support by running 16-bit Windows (1.x, 2.x, 3.0, 3.1, etc.) on a 64-bit Windows system. Ojakobe explains, "Had a special case of a user who clung to their Windows 7 PC because their work was reliant on a 16-bit program from 1997 (and even on 7 it didn't run properly). Used the program above to make it run reliably on 10."
-
Anyone know how to get ActiveSync on windows 10?
After that you should now be able to install software. One final sticking point is that some older programs are wrapped up in 16-bit installers, however these can be installed by running the installer with something like otvdm.
-
Why won't this run on my windows 11 pc?
Try WineVDM because NTvdm never got a port to 64-bit since the CPU mode it relied on for fast 16-bit code execution gets disabled when a x86 processor is switched into long mode. WineVDM is likely translating 16-bit instruction calls to 32-bit and then passing that off to Windows
What are some alternatives?
open-watcom-v2 - Open Watcom V2.0 - Source code repository, Wiki, Latest Binary build, Archived builds including all installers for download.
OTVDM - Windows/DOS emulator -> https://github.com/otya128/winevdm
elks - Embeddable Linux Kernel Subset - Linux for 8086
dosbox-x - DOSBox-X fork of the DOSBox project
build-djgpp - Build DJGPP cross compiler and binutils on Windows (MinGW/Cygwin), Mac OSX and Linux
ntvdmx64 - Run Microsoft Windows NTVDM (DOS) on 64bit Editions
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
ScpToolkit - Windows Driver and XInput Wrapper for Sony DualShock 3/4 Controllers
emularity - easily embed emulators
DS4Windows - Like those other ds4tools, but sexier