Re: Switchless ROMs

From: Francesco Messineo <>
Date: Thu, 22 Dec 2016 09:39:35 +0100
Message-ID: <>
On Thu, Dec 22, 2016 at 3:54 AM, Jim Brain <> wrote:
> Though it would seem otherwise, I'm not a fan of drilling holes in cases to
> install KERNAL switches.  On the other hand, I'm not a huge fan of putting
> lots of test clip wires inside my 64 either.
> It seems like those are the only two options.  I looked at the switchless
> ROM circuits (basically, a '74 hooked up to RESET as CLK and RESTORE as D,
> and I thought a small uC or GAL might also work. Still, it requires 2 wires.
> But, then I wondered if one could have the 64 or 128 act as the uC, and make
> the ROM switch.
> On boot, have the ROM set to bank 2 (for example).  a special KERNAL would
> jump to $f000, checking for a key.  If found, it would jump to one routine
> in the ROM ($f100), which would then start the machine.  If not found, jump
> to another routine ($f200), which would also start the machine.  A circuit
> on the PCB would detect a fetch to address $fffe, seting bank=2.  It would
> then watch for bit 8 or 9 in the address.  If bit 8 active, then set bank=1.
> If bit 9, set bank=0.
> Does the idea have merit? Or, am I missing something?

This means that a random fetch at $FFFE by a program would bring you
back to the switching ROM mechanism... It would only happen on purpose
I think, but still would change the behaviour of your machine with
respect to a "stock" or switch(less) one.
How do you know the fetch to $FFFE is because of /RST or just because
of LDA $FFFE? Think of a few PEEKs in basic: "hey, let's see what's
the RST vector of this 6502 machine".
Also, the bank switching circuit would probably need phi0 signal to
switch the bank at the right time (but I should really first make a
little tentative schematic, then run some simulation to be sure).
Or did I miss something in this mechanism?


       Message was sent through the cbm-hackers mailing list
Received on 2016-12-22 09:00:03

Archive generated by hypermail 2.2.0.