Re: Hardware emulation of 6509 using 6502?

From: Jeff Laughton <laughton_at_cyg.net>
Date: Fri, 16 Mar 2018 17:10:31 -0400
Message-ID: <20180316171031.Horde.LMLmYRp9EXzuTsrrSoDMPvZ@www2.cyg.net>
Thanks for the comments, Jim.  Looks like we're both suggesting an  
'816 down the road maybe, but no rush to get there.

> Adapting an '816 to the '09 is actually much simpler.  Latch whether  
> opcode is x91 or xb1 when VDA:VPA = 11 & PHI2=1. and then flip mux  
> during the subsequent VDA:VPA=10 & PHI2=1 cycle.  No need to perform  
> all of the required logic from the original idea.

Good call!  Using the VDA output is clearly a better idea than  
cycle-counting logic.  And I know what you mean -- the '816 is great,  
it really does almost seem like cheating!  >:-]  But I think the  
interrupt recognition logic needs to remain; I don't see any way  
VDA/VPA or any other '816 signal can help with that.

> One can directly use the E pin to select 6509 or '816 bank selection.

Can you elaborate?  You mentioned other design ideas you hadn't shared  
yet, and seemingly those ideas would use Emulation Mode at all times  
(ie, not use Native Mode at all).  Did I miss something?  Btw no-one  
has said those ideas compare poorly with the idea of a more advanced  
CPU.

IMO you should go ahead develop those ideas if you want to.  *I* like  
the idea of migrating to a next-generation CPU, but, again, I'm not  
the one doing the work -- these are questions I talked about in my  
last post.  Besides, it's a slippery slope.  A person could migrate  
the entire computer to an Arduino or Pi or whatever.

> Why CMOS '02s do not work right, but NMOS does

What sort of CMOS '02 did you try?  Modern WDC parts differ in some  
ways from the older Rockwell CMOS versions.  For example, modern WDC  
parts  (including '816 and '02) have much faster rise and fall times  
on the outputs.  If you're able to test both new and old CMOS 02's  
there a chance it might yield a clue.

  -- Jeff
Received on 2018-03-16 23:01:26

Archive generated by hypermail 2.2.0.