Hi all,

I've finished with the subject successfully.

What I've done is using prot_to_real implementation in current iPXE, I tried to mimic it as much as possible in respective place in Etherboot. That is:

- use ljmp instead of lret (after cr0 change);
- assign ss and esp explicitely after that;
- assign all other segment registers explicitely.

Then Etherboot works fine on 486.

So iPXE's implementation is likely correct and supposedly it should work too, as soon as all 586 opcodes are eliminated or handled carefully as discussed previously. However my brain has pretty much exploded already so I'm not going into more testing for now.


Thank you,

Regards,
Nikolai
_______________________________________________
ipxe-devel mailing list
ipxe-devel@lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo/ipxe-devel

Reply via email to