----------------------------------------------------------------------------------
@MSGID:
<24faa60a-22c7-4c57-b73f-4df092cc4153n@googlegroups.com> 61ba879a
@REPLY:
<6c1082c9-d4d6-4b1f-ad34-47521985d745n@googlegroups.com> 234cdfb8
@REPLYADDR Paul Edwards <mutazilah@gmail.com>
@REPLYTO 2:5075/128 Paul Edwards
@CHRS: CP866 2
@RFC: 1 0
@RFC-References:
<6c1082c9-d4d6-4b1f-ad34-47521985d745n@googlegroups.com>
@RFC-Message-ID:
<24faa60a-22c7-4c57-b73f-4df092cc4153n@googlegroups.com>
@TZUTC: -0700
@PID: G2/1.0
@TID: FIDOGATE-5.12-ge4e8b94
On Saturday, March 13, 2021 at 8:56:34 AM UTC+8,
muta...@gmail.com wrote:
> Is it possible to write x64 code that doesn`t
> disturb the top 32 bits of registers? As far
> as possible I would like to stick to using
> pure 80386 instructions and registers.
>
> I`m only interested in application code, e.g.
> printf("hello, world
");
>
> Then we could run 32-bit executables on a
> 64-bit OS without needing to switch modes.
> A different executable, sure, but that`s not
> my fault. That`s the fault of the 80386 and
> x64 designers who apparently didn`t think
> ahead.
I have this working now as proof of concept.
See the bottom of "University Challenge x64" at
http://pdos.org
Note that this is running (some) Win32 executables in LM64
under UEFI still in boot services.
This is NOT running 16-bit executables.
BFN. Paul.
--- G2/1.0
* Origin: usenet.network (2:5075/128)
SEEN-BY: 5001/100 5015/255 5019/40 5020/715 848
1042 4441 12000 5030/49 1081
SEEN-BY: 5058/104 5075/128
@PATH: 5075/128 5020/1042 4441