Forums before death by AOL, social media and spammers... "We can't have nice things"
|    alt.os.development    |    Operating system development chatter    |    4,255 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 3,110 of 4,255    |
|    wolfgang kern to James Harris    |
|    Re: The EA jump immediately after enabli    |
|    26 Feb 22 23:13:15    |
      From: nowhere@nevernet.at              On 26/02/2022 18:04, James Harris wrote:       ...       > For example, starting in real mode       >       > mov ax, 7       > mov es, ax <--- ok in real mode, sets ES /selector and base/       >       > mov eax, cr0       > or eax, 1       > mov cr0, eax <--- enter protected mode       > jmp $ + 2       >       > mov ax, es       > then that should put a 7 into AX even though the CPU is in Pmode.       > Just for fun. :)              yes of course, even a first attempt to access with ES would crash.       I ask again what you assume to be: base limit and PL of this pre-PM.              if the base would be 0000 or 07C0 then non of my switches would work.       and why should it be 07c0 ? my switches aren't in this region.              >>> Yes, and Unreal Mode shows that CPUs use PM mechanisms AT ALL TIMES,       >>> even when they are running in what we call "Real Mode".       >>       >> If it would be in PM then all the PM instructions I listed earlier       >> would not crash or raise exceptions. Go figure :)       >       > AIUI - at least on Intel - the instructions you listed should all       > execute if PE = 1 and raise exception 6 if PE = 0. Is that not what       > happens on your hardware?              not quite accurate, AMD-docs tell explicit that privileged instructions       work only in PM and not in UNREAL mode.       I didn't try by intention, but I remember some hard crashes during my       first attempts (>30 years ago) on making mixed modes work.              So between setting PE and loading CS there is the UNREAL story where       the CPU behave partly as PM (seg-regs) but wont execute PM only code.       __       wolfgang              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca