3 ms·
These days there is also a 16-bit GCC port to DOS (https://github.com/tkchia/gcc-ia16 https://github.com/tkchia/gcc-ia16). I never encountered one of those back
by livrem 3y ago
These days there is also a 16-bit GCC port to DOS (https://github.com/tkchia/gcc-ia16 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.
- rwmj 3y agoThere's also a port of Java / JVM to DOS which I briefly used back in the 90s to port some Java software for a client who was still using DOS and "wouldn't upgrade" (I think he was using a 386 though so I guess it used a DOS extender and wasn't truly 16 bit). I was trying to find this JVM recently and couldn't find any trace of its existence which makes me wonder if I imagined or got confused about the whole thing.
- livrem 3y agoI did not know of a Java port, but this reminds me there is some kind of JavaScript-based environment for DOS that I see linked now and then (think it is bundled with FreeDOS?). Probably this one: https://github.com/SuperIlu/DOjS https://github.com/SuperIlu/DOjS "DOjS is a JavaScript programming environment for systems running MS-DOS, FreeDOS or any DOS based Windows (like 95, 98, ME). It features an integrated editor, graphics & sound output, mouse/keyboard/joystick input and more" Never tried it.
- epcoa 3y agoPerhaps you are only confused about being confused. Called JavaPC. It cost money and I don’t think it sold well, maybe you were the only customer. There was also a DOS port of Kaffe called KaffePC. https://web.archive.org/web/20000613171121/http://www.sun.com/software/javapc/features/index.html https://web.archive.org/web/20000613171121/http://www.sun.co...
- andrewf 3y agoGoogling about I found http://www.delorie.com/djgpp//mail-archives/browse.cgi?p=djgpp/1998/07/26/12:00:23 http://www.delorie.com/djgpp//mail-archives/browse.cgi?p=djg... I'd imagined there might be a port of one of the PalmOS-targeted JVM-alikes (eg SuperWaba) but it doesn't look like any of them made it back to DOS. I could also imagine someone getting an OS/2 or Windows JVM running under a DOS extender.
- zozbot234 3y ago16-bit x86 support requires supporting the old segment-based real mode memory models and _near / _far / _huge pointer types, which can be very fiddly. I'm not even sure if the existing standard extension for "multiple address spaces" in C can accommodate this, or if something even more bespoke is needed. If it can be done it would be great to have in LLVM, if only for completeness sake.
- livrem 3y agoYou do not need segment registers much if you stick to the tiny model. Here is someone compiling Rust to a 16-bit DOS COM executable: https://github.com/o8vm/rust_dos https://github.com/o8vm/rust_dos Not sure what the approach would be for them to expand that to support segments. In DJGPP there are macros to allow your protected mode application access physical real-mode addresses (like when you want to write to video RAM). I don't know if IA-16 also does something like that, or if they added far/near keywords to the language like old 16-bit C compilers did (at least the ones I used). Free Pascal has helper-functions to work with segment+offset pointer pairs, also without having to modify the language itself. I think that would work well enough in C, but I guess the old method of adding non-standard keywords was seen as slightly more convenient.
- sigsev_251 3y agoIsn't the gcc-ia16 more of a cross-compiler for embedded systems?