From eb23fbe44ce5580ff0ccd9d5dd3691a03ec6b555 Mon Sep 17 00:00:00 2001 From: Adrian Conlon Date: Tue, 12 Aug 2025 17:19:55 +0100 Subject: [PATCH] Correction: the least significant bit is *not* zeroed by an IM 2 interrupt --- Z80/Z80.cs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Z80/Z80.cs b/Z80/Z80.cs index 5ff6dbf..252eaf3 100644 --- a/Z80/Z80.cs +++ b/Z80/Z80.cs @@ -626,10 +626,8 @@ namespace Z80 case 2: this.Tick(); this.PushWord(this.PC); - this.Bus.Address.Assign((byte)(data & ~1), this.IV); - Debug.Assert(this.Bus.Address.Low % 2 == 0); - this.PC.Assign(this.GetWord()); - Debug.Assert(this.Bus.Address.Low % 2 == 1); + this.Bus.Address.Assign(data, this.IV); + this.PC.Assign(this.GetWordPaged()); Debug.Assert(this.Cycles == 19); break; default: