From 85d09df9382d2ce581f89e9fee2e7d862e21e891 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Thu, 23 May 2024 16:31:14 +0200 Subject: Some more x87 adjustment, but it still off a bit --- src/emu/x64run66dd.c | 4 ++-- src/emu/x64rundd.c | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/emu/x64run66dd.c b/src/emu/x64run66dd.c index e8465dd2..7f768aad 100644 --- a/src/emu/x64run66dd.c +++ b/src/emu/x64run66dd.c @@ -91,7 +91,7 @@ uintptr_t Run66DD(x64emu_t *emu, rex_t rex, uintptr_t addr) char* p =(char*)ED; p += 14; for (int i=0; i<8; ++i) { - LD2D(p, &ST(i).d); + LD2D(p, &emu->x87[7-i].d); p+=10; } } @@ -106,7 +106,7 @@ uintptr_t Run66DD(x64emu_t *emu, rex_t rex, uintptr_t addr) char* p =(char*)ED; p += 14; for (int i=0; i<8; ++i) { - D2LD(&ST(i).d, p); + D2LD(&emu->x87[7-i].d, p); p+=10; } } diff --git a/src/emu/x64rundd.c b/src/emu/x64rundd.c index a62c9254..5aa23395 100644 --- a/src/emu/x64rundd.c +++ b/src/emu/x64rundd.c @@ -129,7 +129,7 @@ uintptr_t RunDD(x64emu_t *emu, rex_t rex, uintptr_t addr) char* p =(char*)ED; p += 28; for (int i=0; i<8; ++i) { - LD2D(p, &ST(i).d); + LD2D(p, &emu->x87[7-i].d); p+=10; } } @@ -143,9 +143,9 @@ uintptr_t RunDD(x64emu_t *emu, rex_t rex, uintptr_t addr) // save the STx { char* p =(char*)ED; - p += 28; + p += 14; for (int i=0; i<8; ++i) { - D2LD(&ST(i).d, p); + D2LD(&emu->x87[7-i].d, p); p+=10; } } -- cgit 1.4.1