diff --git a/src/cpu/core_normal/prefix_0f.h b/src/cpu/core_normal/prefix_0f.h index c3509448..bbe95b9c 100644 --- a/src/cpu/core_normal/prefix_0f.h +++ b/src/cpu/core_normal/prefix_0f.h @@ -100,7 +100,7 @@ CASE_0F_W(0x02) /* LAR Gw,Ew */ { FillFlags(); - GetRMrw;Bitu ar; + GetRMrw;Bitu ar=*rmrw; if (rm >= 0xc0) { GetEArw;CPU_LAR(*earw,ar); } else { @@ -112,7 +112,7 @@ CASE_0F_W(0x03) /* LSL Gw,Ew */ { FillFlags(); - GetRMrw;Bitu limit; + GetRMrw;Bitu limit=*rmrw; if (rm >= 0xc0) { GetEArw;CPU_LSL(*earw,limit); } else { diff --git a/src/cpu/core_normal/prefix_66_0f.h b/src/cpu/core_normal/prefix_66_0f.h index 39be74ba..8c53663c 100644 --- a/src/cpu/core_normal/prefix_66_0f.h +++ b/src/cpu/core_normal/prefix_66_0f.h @@ -101,7 +101,7 @@ CASE_0F_D(0x02) /* LAR Gd,Ed */ { FillFlags(); - GetRMrd;Bitu ar; + GetRMrd;Bitu ar=*rmrd; if (rm >= 0xc0) { GetEArw;CPU_LAR(*earw,ar); } else { @@ -113,7 +113,7 @@ CASE_0F_D(0x03) /* LSL Gd,Ew */ { FillFlags(); - GetRMrd;Bitu limit; + GetRMrd;Bitu limit=*rmrd; /* Just load 16-bit values for selectors */ if (rm >= 0xc0) { GetEArw;CPU_LSL(*earw,limit);