From 3f880fa76972ee9ab0e5f1c12da019a4c3501504 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Mon, 29 May 2017 11:44:26 -0400 Subject: [PATCH] Fixed [FD/DD][74/75], which always store H or L, never IXh, IXl, IYh or IYl. --- Processors/Z80/Z80.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Processors/Z80/Z80.hpp b/Processors/Z80/Z80.hpp index 87a836c57..95a86f0e4 100644 --- a/Processors/Z80/Z80.hpp +++ b/Processors/Z80/Z80.hpp @@ -541,12 +541,12 @@ template class Processor: public MicroOpScheduler { /* 0x68 LD L, B; 0x69 LD L, C; 0x6a LD L, D; 0x6b LD L, E; 0x6c LD L, H; 0x6d LD H, L; 0x6e LD L, (HL); 0x6f LD L, A */ LD_GROUP(index.bytes.low, hl_.bytes.low), - /* 0x70 LD (HL),B */ Program(INDEX(), STOREL(bc_.bytes.high, INDEX_ADDR())), + /* 0x70 LD (HL), B */ Program(INDEX(), STOREL(bc_.bytes.high, INDEX_ADDR())), /* 0x71 LD (HL), C */ Program(INDEX(), STOREL(bc_.bytes.low, INDEX_ADDR())), - /* 0x72 LD (HL),D */ Program(INDEX(), STOREL(de_.bytes.high, INDEX_ADDR())), + /* 0x72 LD (HL), D */ Program(INDEX(), STOREL(de_.bytes.high, INDEX_ADDR())), /* 0x73 LD (HL), E */ Program(INDEX(), STOREL(de_.bytes.low, INDEX_ADDR())), - /* 0x74 LD (HL),H */ Program(INDEX(), STOREL(index.bytes.high, INDEX_ADDR())), - /* 0x75 LD (HL), L */ Program(INDEX(), STOREL(index.bytes.low, INDEX_ADDR())), + /* 0x74 LD (HL), H */ Program(INDEX(), STOREL(hl_.bytes.high, INDEX_ADDR())), // neither of these stores parts of the index register; + /* 0x75 LD (HL), L */ Program(INDEX(), STOREL(hl_.bytes.low, INDEX_ADDR())), // they always store exactly H and L. /* 0x76 HALT */ XX, /* 0x77 LD (HL), A */ Program(INDEX(), STOREL(a_, INDEX_ADDR())),