Not in the original real mode. The 8086 processor certainly didn't have base or limit fields for segment registers. This is an after-construction in later processors that simply don't exist in the original real mode. I doubt that GPF was defined in the 8086 processor either, especially since it overlaps with PIC interrupts. And all current processors sets up the segment limits for real mode in a way that makes it impossible to exceed them with instructions available in the original 16-bit mode (IOW, 16-bit instructions).Combuster wrote:Limit checks are definitely enabled in real mode - otherwise there wouldn't been a difference with Unreal mode.rdos wrote:AFAIK, there are no limit checks in real mode, nor any double fault handler. The only fault that exists (except for single step) is invalid opcode.
For that very same reason, GPFs work just fine, as do the majority of others: division by zero, debug, breakpoint, bounds failed, math fault etc.
Math faults also didn't work the same, as the math processor was not integrated into the CPU, but was an optional chip that reported errors with an interrupt.
Things like "unreal mode" where limits are set to 4G are just exploits of quirks in later processors that never worked in the original real mode environment.