• Please review our updated Terms and Rules here

Protected mode on 286 machines not designed for it

Thanks everyone. I don't have such a model myself, nor the knowledge to try it. I just though that over the years, someone must have tried it, but I couldn't find any evidence on newsgroups or old forums.

Interestingly for Unix-like systems, Coherent 3 was a 286 Unix-workalike, and according to the manual only needed 640K. (As well as a genuine AT, hard disk, and high-density floppy). The source has been released, so that would be another starting point for the really dedicated.
 
Thanks everyone. I don't have such a model myself, nor the knowledge to try it. I just though that over the years, someone must have tried it, but I couldn't find any evidence on newsgroups or old forums.

Interestingly for Unix-like systems, Coherent 3 was a 286 Unix-workalike, and according to the manual only needed 640K. (As well as a genuine AT, hard disk, and high-density floppy). The source has been released, so that would be another starting point for the really dedicated.

There's Minix 2, which can run in either real or 16 bit protected mode: http://minix1.woodhull.com
 
It's been a looooong time, and I may be misremembering, but....

Back around, oh, probably 2003ish? Just kinda guessing.... Anyway, yeah, some time ago I had a Commodore PC-10 with a Microsoft 286 card in it that I was running ELKS on, and I am pretty sure (but not 100% sure) that it used 286 protected mode. Like previously mentioned, though, it wouldn't self-reboot correctly and had to be power-cycled.
 
It's been a looooong time, and I may be misremembering, but....

Back around, oh, probably 2003ish? Just kinda guessing.... Anyway, yeah, some time ago I had a Commodore PC-10 with a Microsoft 286 card in it that I was running ELKS on, and I am pretty sure (but not 100% sure) that it used 286 protected mode. Like previously mentioned, though, it wouldn't self-reboot correctly and had to be power-cycled.

So far as I know ELKS is real mode only. Never seen any indication they’d made a protected mode port, since the point of ELKS is specifically to run on CPUs that lack protection or memory management. Suppose they might have done it to enable more RAM...

Okay, so, the FAQ says they intended to support it “eventually”, but a mailing list thread from 2019 was discussing dropping that plan, in part because the code to support it was very non-portable, and that the limited experimental chunk they had in the repository had been sitting there pretty much untouched since 1998. The same thread also mentions that ELKS relies heavily on BIOS calls for I/O, so... I’d be kind of surprised if you were able to run that experimental code on a machine that wouldn’t be able to make BIOS calls.

Edit: the official result seems to have been to tank Protected Mode support and investigate LOADALL to access additional memory from Real Mode:

https://github.com/jbruchon/elks/issues/234
 
Last edited:
Maybe I am thinking of Minix then. I remember whatever it was, I was running it specifically because I was curious about 286 protected mode.
 
While conversion of programs with <64KB of code and data may be a no-brainer for PM (i.e. nobody fiddles with the segment registers), larger code and data models get to be a compatibility mare's nest of issues. Conversion of a large code base to PM would be onerous, I suspect.
 
According to the docs the same Minix kernel binary boots on 8086 and 80286 machines, so... I guess the only way to know for sure if it went into protected mode on a given XT with a 286 upgrade would be to try it; should spit out a message at initialization.

It’s *possible* of course that some 286 expansion cards included BIOS changes to make them more AT compatible. I’ve never owned one, only had a 1000 TX, but there were *386* upgrade cards like the Inboard 386 that could do protected mode so it’s not impossible.
 
That's what it was, a Mach something-or-other. I couldn't remember until you mentioned it. Wish I still had it. It's probably worth something nowadays, heh.
 
Well this is just making me want to putter around with the little 286 mini-baby-AT board I picked up in a lot at a garage sale a few years back...
 
It’s *possible* of course that some 286 expansion cards included BIOS changes to make them more AT compatible. I’ve never owned one, only had a 1000 TX, but there were *386* upgrade cards like the Inboard 386 that could do protected mode so it’s not impossible.
The 386 does not rely on BIOS functionality to return back to Real Mode, so I'd assume the design must be seriously broken to not support Protected Mode on a 386.
 
The 386 does not rely on BIOS functionality to return back to Real Mode, so I'd assume the design must be seriously broken to not support Protected Mode on a 386.

But to be backwards compatible with 286 software 386 machines still emulate the reset-but-don’t-reboot behavior at the bios level. I *assume* the Inboard 386 must also do that, but I guess I don’t have one so I don’t know where its limits are.
 
Back
Top