w65c816 bugs

From: didier_at_aida.org
Date: Mon, 30 Oct 2023 14:16:21 +0100
Message-ID: <653bbca3-ceb5-4ceb-9b6b-64d18819b14d_at_aida.org>
Hi

with my board, I clearly see the bug of 65c816 reading the wrong byte in 
emulation mode
when I try:

          lda #$ff
          sta $80
          sta $81
          ldy #$02
         lda ($80),y

the byte obtained clearly comes from the address:  01 0001 and not from 
00 0001
I used the following patch to try to fix it:  (my board uses only 
address lines A16,A17,A18 so the other bits are ignored)
-- we output the page register on p    if be = '1'
     p  <= bank(2 downto 0) when e = '0' and be = '1' else
           "000"            when e = '1' and be = '1' else
           "ZZZ";
with this patch it clearly read the read byte the one in 00 0001
any idea of possible side effect of my patch ?

I've not been able to reproduce the "bus error" found on the w65c816sxb

I'm wondering if my fix is usable or not....

any idea ?


thanks
Received on 2023-10-30 16:00:08

Archive generated by hypermail 2.3.0.