I'd like to build a socketed F8 cart. I opened a realsports baseball cart, which is supposedly this type of cart. But there's only one mask rom on the board- there's no "mapper" hardware like I'm used to on a NES cart. Am I missing something? Can I just replace the mask rom with a socket + inverter and reroute the few lines that are different?
If the game uses the F8 mapper but has no visible bank switching hardware, it must have the F8 mapper and the mask ROM inside the same package. I think Sega did something similar for Master System carts.
Yes the bankswitching logic on atari carts for the most part is in the rom chip. Some 3rd parties had TTL logic controlling the banking like telegames if you have access to any of those carts. Watch it though as sometimes the banks are reversed on those compaired to conventional atari banks so bank 1 and bank 2 have to be swapped.
3 74xx ICs gets you F8:
http://www94.pair.com/jsoper/bankswitch_f8.htmlF6 and F8 are a little more annoying, but shouldn't require more than one [edit]more[/edit] IC.
There's also
the solution used by this guy in his "cartridge emulator": He has an (E)EPROM output the bank index to the game ROM and back to itself (keeping both in the same bank), and has the different bank indices stored in the hotspot addresses, to trigger the switches. Sounds crazy, but it does appear to work as long as the (E)EPROM is fast enough, and it's only 1 IC, since the (E)PROM can also invert A12.
It's been so long since I've thought about implementing simple combinatorial logic &// FSMs using just ROMs... they're fun, assuming that you can get them to be sufficiently glitch-less.
He's got both an F8 and a F6 in the same ROM there, depending on whether the PLA ROM's A14 is tied low or high (respectively).
Thanks for the replies. I don't have the IC's to rig up the switching myself and I'm not motivated enough buy them just for this project. I just wanted a quick way to play a game on my newly acquired console while my actual cart is inaccessible for reasons. That second suggestion looks neat but is a bit beyond me, especially with the language barrier.
Machine translation does a remarkable job of translating that page, but basically:
There are 13 address lines from the 2600's 6507.
13 address lines on the PLA ROM are connected straight from the 6507, to detect when the address bus is 1FF6, 1FF7, 1FF8, or 1FF9.
Two data lines are looped from the PLA ROM to itself, producing a feedback path, providing the ability to store the current bank value on that wire.
One data line is just A13 inverted, to produce the low-sense chip enable modern ROMs need.
One final address line allows switching between F8 (when low) or F6 (when high) banking.
lidnariq wrote:
One final address line allows switching between F8 (when low) or F6 (when high) banking.
This line is controlled by his cartridge emulator though, so you'd probably leave that out in a cartridge that used only ROMs, or add a switch so you can manually select between the two bankswitching modes.