diff options
-rw-r--r-- | hw/kdrive/vesa/vm86.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/hw/kdrive/vesa/vm86.c b/hw/kdrive/vesa/vm86.c index 4bb90daf2..b6f604873 100644 --- a/hw/kdrive/vesa/vm86.c +++ b/hw/kdrive/vesa/vm86.c @@ -431,13 +431,12 @@ vm86_emulate(Vm86InfoPtr vi) if(pref_rep) { if(pref_66) { regs->ecx--; - if(regs->ecx != 0) { + if(regs->ecx != 0) + goto again; + } else { + SET_16(regs->ecx, regs->ecx - 1); + if(regs->ecx & 0xFFFF != 0) goto again; - } else { - SET_16(regs->ecx, regs->ecx - 1); - if(regs->ecx & 0xFFFF != 0) - goto again; - } } } INC_IP(1); |