Re: ROMs replacement.. solved!

From: Gerrit Heitsch <gerrit_at_laosinh.s.bawue.de>
Date: Fri, 19 Oct 2012 10:34:05 +0200
Message-ID: <5081107D.1020105@laosinh.s.bawue.de>
On 10/19/2012 09:11 AM, silverdr@wfmh.org.pl wrote:
>
> On 19 paź 2012, at 08:02, Gerrit Heitsch <gerrit@laosinh.s.bawue.de> wrote:
>
>>> Why? If I want to blend-in the content - say - as if it was loaded in RAM?
>>
>> Yes, but you will need to tell the PLA about putting ROM where RAM would usually be.
>
> Why? I put the ROM there, not PLA

Yes, but unless the PLA knows about it, it will activate the RAM.


>> Otherwise the PLA will generate the _CAS signal for that address space and activate the RAM. That would mean RAM and ROM output drivers fighting it out and the system crashing.
>
> No, I mean I grab the _CAS signals and select the ROM whenever address decodes properly. If not (or if my ROM is disabled), I pass it through. Not sure about the timing though.

Ok, that strikes me as a bit too complicated since you already have all 
the logic present in the PLA if you use the _EXROM and _GAME lines 
intended for exactly that purpose and you don't have to worry about 
routing _CAS through even more logic and incur more delays.


>> This 'telling the PLA about it' is done with the _EXROM and _GAME signals.
>
> Yes, and keep it that way. Let the real cart push the lines so that in such case the real cart can still work and override my ROM.

But how will your logic know that there is a real cart present and it 
should go out of the way?

The IMHO easiest way would be to put some extra logic (*) between 
_EXROM/_GAME from the Expansion port and the PLA. As long as the lines 
from the expansion port stay HIGH you can use the  PLA inputs to 
activate your internal catridge if you want. As soon as one of them goes 
LOW, the logic disables the internal cartridge.

This has the advantage that you work with signals that are mostly static 
and you don't have to worry about additional delays for timing critical 
signals.

(*) I see 3 AND gates here... 2 to combine internal and external _EXROM 
and _GAME and the third one to detect if one of the lines from the 
expansion port goes LOW to disable the internal cart.

  Gerrit




       Message was sent through the cbm-hackers mailing list
Received on 2012-10-19 09:00:10

Archive generated by hypermail 2.2.0.