banedon wrote:
I'm thinking of creating my first ROM emulator/copier and just want to run my rough plan of action passed some folks who have done it previously.
This is what I was thinking of doing:
* The entire memory map uses 64KB RAM - no ROM. Some space is reserved for I/O
* Use an uC (Atmel 328P or 324P) to control the clock source for PHI2
* Allow the uC to control the 65C02S using the /RESET line
* When the system starts up, the uC hold /RESET low and stop PHI2
* It then copies the 6502 firmware/BIOS into the upper part of RAM and set the Reset, NMI and IRQ vector addresses
* the 6502 /RESET is released and PHI2 is started
What do you think?
My main question: if the 65C02 /RESET is held low, is the address and data buses tri-stated by the 65C02?
Asserting reset doesn't tri-state the 65C02. You'd have to assert (negate) BE (bus enable) to do that. When BE is asserted, A0-A15, D0-D7 and RWB go high-Z.
I'm not sure what the purpose would be of stopping Ø2 while loading your ROM image into RAM. Continuously holding reset down is sufficient halt the 65C02. Note that Ø2 must be running and stable before releasing reset.