Hello all, this is my first post. For several years, I have been working on a universal cartridge for the C64. I am now on the second revision and ready to introduce it to you all. I call it Extreme Cart or EC2 for short. Basically it is a cart designed around the Cyclone II FPGA starter board. The cart has an EP2C20F484 FPGA, 4M Flash, 512k SRAM, 8M SDRAM, SD card slot, two 40 pin IO's, two 16 pin IO's, two LEDs, and two switches. The IO's are being used for Serial ports, JTAG, active serial port, audio codec, Amiga clock port, IDE port, additional SRAM, and general purpose IO. I don't have a web page to show the photos, but I will post some here if I can figure out how. The cart so far has the capability of emulating just about any ROM image (with or without RAM), most if not all freeze carts, fast load cartridges, and a lot of hardware base carts like Video Byte II with an additional daughter board. MP3 audio Codec also requires an additional daughter board. This board is like a combination of MMC Replay, IDE64, and MMC2IEC but with much more logic. The protoype boards were very expensive to make and I have 5. As of now I don't plan to sell them until I get the operating system completed. Keep an eye on this thread for updates.
Last Edit: Sept 11, 2008 19:46:08 GMT -5 by Adoreware
Now that you mentioned it, the FPGA is running at 50MHz so it might be possible to emulate the 6510 at a higher speed. I'm not sure if SuperCPU can be emulated, however a core faster then the stock 1MHz 6510 may be possible. Maybe even faster then the SuperCPU. I already have a VHDL model for the 6510. There are 3 clocks on board 24, 27, 50MHz. I'm not sure what emulation speed is possible, but I'll add it to my list or things to explore. If you look closely at the photo you will see the clock port. It is part of the 40 pin header nearest the edge connector. I don't have a RR-Net card to reverse engineer, but I will add it to my list as well.
I have put up a basic web page to give more background on the EC2 board and my company Adoreware. The web page gives more detail on the EC2 project and my history dealing with the C64. You can also download a demo I made last year. You can find the official Adoreware contact email address there too. I have started designing the Serial Configuration ROM and JTAG daughter board. The actual design will be very quick, but getting it fabricated might take a little while. I'm also looking for a used USB Blaster if anyone has one for sale or donation.
You are correct, the Cyclone II is not 5V-tolerant. You are also correct that I used series resistors. 7 resistor networks provide level protection for the IOs connected to the cartridge port and the two 8 bit IO ports. Level shifters are just too expensive and take up too much space, and resistors work perfectly. I tested this prior to making the board with the Cyclone II FPGA Starter Board. That board has two 40 pin IO ports with series resistors allowing 5.0V. In fact, I am using those ports to connect to the C64. I originally purchased the Cyclone III board to develop the EC2, but the IO are 1.25V and level translation had to be done with level translators and they took up most of the board space, so I sold it and went with the Cyclone II. The web site www.adoreware.com has more detailed information on how I'm handling the 5.0V.
Finally proved that bank switching is possible by getting Zaxxon working. It was quite simple actually. Below is the code...
if (falling_edge (CP_O2) and CP_O2'event) then
if CP_ADDR(15 downto 12) = "1000" then ZAXXON_BANK <= '0'; end if;
if CP_ADDR(15 downto 12) = "1001" then ZAXXON_BANK <= '1'; end if;
Next will be EPYX Fastload, Final Cartridge III, Ocean Type 1 (Yes 512K carts), and Super Games.
If someone can tell me how the bank switching is done with Action Replay, I will emulate it also. I know it has 4 banks of 8K mapped to 8000-9FFF, but I don't know the bank register address or what register value determines which bank.
Last Edit: Sept 13, 2008 6:27:57 GMT -5 by Adoreware
I am working to get these out. I still have to fabricate the daughter board in order to program it and finish the OS. I am also working on a web site so stay tuned for the URL. I would like some help writing the OS because I'm not so good at VHDL. If anyone has experience writing VHDL in Quartus for the Cyclone II FPGA Starter board, contact me at firstname.lastname@example.org (alias email for now). I would be willing to send one board to someone interested in partnering with me to accelerate the production of this awesome board.
Official web site and email address coming soon...
Hey man. I can provide you with a subdomain and mail service for free. I plan on putting an 8-bit section into my site in the next week or so, and linking to this forum. mail me if interested:email@example.com
*edit* Darn I need to finish reading the thread before replying. hehehehe nvm.
Last Edit: Sept 13, 2008 13:36:21 GMT -5 by dante7237
Post by Adoreware on Sept 14, 2008 21:58:41 GMT -5
OK, Funplay cartridge emulation is a bit tricky because the cart is disabled after copying ROM to RAM. I have the main menu ROM loading, then the selected game loads, but I havn't figured out how to disable the cart after ROM to RAM copy. This is going on the back burner until I have more time to figure it out.
On a positive note, I just finished C64 Game System/System 3 cartridge emulation (8K x 64)!!! I only have one C64GS ROM (Fiendish Freddy's Big Top O'Fun, International Soccer, Flimbo's Quest & Klax.crt) but contact me if you have know of others.
Last Edit: Sept 14, 2008 22:05:38 GMT -5 by Adoreware