CP/M-386 – CP/M for 386 protected mode, derived from CP/M‑68K
Posted by TMWNN 12 hours ago
Comments
Comment by iqp 11 hours ago
Comment by codebje 10 hours ago
Much as I loved DR-DOS, it did have occasional compatibility hiccups.
Comment by m132 7 hours ago
Comment by codebje 5 hours ago
Comment by p_l 6 hours ago
From then on, applications would target MS-DOS in addition to the curse of being too IBM PC specific
Comment by dboreham 10 hours ago
Comment by Brian_K_White 9 hours ago
Comment by skissane 8 hours ago
The big reason for picking the 68K version is it was mainly written in C (initially in Pascal, but they later switched to C.) By contrast, the more famous 8080 versions were largely written in assembly, as was the 8086 version.
Well, CP/M-80 1.x was mostly written in PL/M, a dialect of PL/I developed by Gary Kildall, but CP/M-80 2.x+ was rewritten in assembly for speed; PL/M was still used for some of the utilities. Obviously, C compilers are much easier to come by nowadays than PL/M compilers are.
Comment by rswail 4 hours ago
Of course, it wasn't but there was MP/M-86/CCP/M/CDOS/DR-DOS which allowed you to have 4 "users"/virtual TTYs.
So we ended up using that along with some tweaks to the software (including an IBM 3270 emulator, MS-Word/Excel (the DOS versions), and a custom software app) that ended up getting deployed to a few hundred government offices.
Mostly worked except some of the software really didn't like the fact that it was being swapped out of keyboard/screen access.
Comment by flomo 9 hours ago
"Protected Mode DOS" went through the IBM/MS gristmill and became OS/2, which was a compromised product in a lot of ways. Then Windows (still mostly a DOS program) got a little traction, and Microsoft had hired Dave Cutler to write a real OS. And David overthrew Goliath and the rest is history. On topic, nobody really wanted protected-mode DOS or CP/M etc.
Comment by p_l 6 hours ago
Comment by adrian_b 5 hours ago
Until then, all the applications that could be found for Windows 3.0 or Windows 3.1 looked like worthless toys in comparison with the professional applications that were available for MS-DOS, despite the fact that the latter had to struggle with extended memory or expanded memory in order to use more than 640 kB of memory.
From 1990 to 1995, I had Windows 3.0, then 3.1, then 3.11 and I launched them from time to time, for fun, but to accomplish real work I always had to go back to MS-DOS.
Comment by 1313ed01 5 hours ago
Looking back from now, I wish that era could have continued much longer, as running MS-DOS games in emulators is so much easier and more stable than to run old Windows games.
Comment by pjmlp 2 hours ago
Really, how come anyone find something about WinG, if they don't know what they are actually searching for?
https://www.gamedeveloper.com/programming/a-whirlwind-tour-o...
https://betawiki.net/wiki/WinG
https://en.wikipedia.org/wiki/WinG
Also it took until DirectX 5, to have it be usable for games.
Comment by rgmerk 11 hours ago
Comment by Gracana 10 hours ago
Comment by lorreyfum 11 minutes ago
Comment by anonymousiam 7 hours ago
Full 32‑bit protected mode implementation with Ring‑3 TPA.
Bootable via 3.5" 1.44MB floppy disk MBR or GRUB Multiboot kernel.
Supports VGA text (0xB8000) and/or COM1 serial (9600/N/8/1, 0x3F8) consoles.
No floppy/hard disk/CD/USB/network/sound/other drivers (yet).
So it boots from a floppy, but has no floppy disk support?Comment by jmmv 6 hours ago
This is also pretty common even if you don't use multiboot. The I/O services exposed by the BIOS or firmware during boot may not be usable once the kernel has started, and thus the kernel has to provide its own drivers.
Comment by m132 7 hours ago
Comment by trollbridge 6 hours ago
Makes it much more impressive.
Comment by CursedSilicon 6 hours ago
There's no room for dissent against the slop bot for some reason
Comment by peter_d_sherman 11 hours ago
Looks good!
An order of magnitude (or two!) less code complexity and less memory hungry than most of 2026's bloated Operating Systems...
Well done!
Comment by anonymousiam 7 hours ago
Comment by iberator 10 hours ago
Comment by Zardoz84 4 hours ago
Comment by ButlerianJihad 3 hours ago
In fact, 386 protected mode could still make use of memory segmentation, with 32-bit segment registers being an upgrade from the 286 protected mode.
But there has been no production OS that continued to use segmentation once 386 mode made 32-bit addressing so easy. In large part because Unix could be ported from flat memory models such as VAX, and m68k.
Therefore, since CP/M-386 is derived from CP/M-68K, it seems straightforward that a flat 32-bit memory model is employed.
Comment by unnah 13 minutes ago
Comment by paseante 10 hours ago
Comment by Zardoz84 4 hours ago