<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Fri, 05 Feb 2016 17:35:50 +0000
From   : jgh@... (J.G.Harston)
Subject: Emulation

Steve Fewell wrote:
> It looks like &0356 should contain values between 0 and 4. In your
> code fragment (below), 0 would JMP to &CC02, 1 would JMP to &CC32, 2
> would JMP to &CC7A, 3 would JMP to &CC92 and 4 would JMP to &CCE6
> So a value of &0E definitely seems incorrect to me.

That makes me suspect that:

CB64   LDY &C440,X ;screen display memory index table
CB67   STY &0356   ;memory map type

is wrong, that the emulation of LDY abs,X is wrong. Supported by earlier 
code being:

CB54   LDA #&07    ;else A=7
CB56   ASL         ;A=A*2
CB57   TAY         ;Y=A

so Y=&0E at that point. If LDY abs,X is being implemented as LDX abs,X 
then &0356 is being set to &0E instead of the memory map type.

-- 
J.G.Harston - jgh@...      - mdfs.net/jgh
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>