Would I be able to take an eeprom chip out of an arduino classic board(uno, duemilanove, etc.) and solder it to a breadboard, then use some sort of connector to plugin the "cartridge" and connect it to the slot for the eeprom. I have some soldering skills and am willing to pay for materials I may need. My goal for this is to make a sort of game console with tvout and use different eeprom chips for the ROM Cartridges. Would this be achievable? If so then how?
I don't think the EEPROM is separate from the rest of the chip
and it doesn't store anything (like code) unless you write it there first
so I think some of your assumptions need a re-think
Well, ok. I would like to remove and replace the flash memory(wherever stored) and place it on a breadboard to act as a cartridge. Then I could re-flash by physically changing the flash memory in its storage. Would this be possible?
same answer
it's all 1 chip
Could I remove that one chip and put eeprom, flash, and whatever else is on there and put it on a breadboard to use as a carttidge to plugin to the main board and use the main board as connections to a controller and to tvout from the chip? Basically I want to extend that chip out using wires, a custom connector and a "cartridge".
So, basically, you want a socketed microcontroller (aka "cartridge") ?
Yeah. Could I adjust an Arduino to do that somehow, like the arduino as the console and its eeprom as a socketed microcontroller?
Sure, what you call a cartridge is really just an adapter card to hold the '328P and allow easier swapping of chips vs handling a bare chip.
Depending on how you program it, you could run from the internal 8 MHz oscillator so all you'd need on the adapter would be the chip, maybe a couple of 100nF caps, and and then maybe a row of right angle male pins to plug into a female header on the main board. Have reset pullup resisitor and whatever else on the main board.
Have to do some testing, maybe it would work having a 16 MHz crystal on the main board too if you wanted to run faster, at the worst you put the crystal and caps (or resonator) with the 328 on the adapter.
I had posted some 328 designs in a SIP format quite a while ago that could be used as a starting point. Maybe go dual row vs single row to make it a little more compact.
That's exactly what I had in mind. Could you post a link to your designs so I could look at them. I tried Google and couldn't find anyone else doing this, but I haven't tried "socket microcontroller" as my search.
I doubt I could find them now, the search tool here is not the greatest, and that was thousands of posts ago, like Dec 2010 timeframe.
I'll repost them when I get home tonight.
Thanks!! That will really help.
Found it - 900+ Pages of posts ago:
http://forum.arduino.cc/index.php?topic=65793.msg482794#msg482794
Here is a simple shematic of what I would try to make:
Now I need help setting up a connection between the two circuits. Any ideas?
Put some signal names on the halves, can't tell what is connected to what.
What is controlling the LCD?
Upper half, why is Vcc pin 7 coming in thru a resistor?
Need both Gnds on 328 connected.
If using analog signals, should have 0.1uF min cap on Aref.
Should have 0.1uF caps on VCC/AVCC pins 7 & 20.
Maybe something like this for the cartridge.
If your sketches aren't too big, maybe add a DIP switch to select between sketches, maybe something like these elements
progSelect = ((digitalRead(D4)) + ((digitalRead(D5)<<1) + ((digitalRead(D6)<<2) + ((digitalRead(D7)<<3);
switch (progSelect){
case 0:
//sketch 0
break;
case 1:
//sketch 1
break;
case 2:
//sketch 2
break;
case 3:
//sketch 3
break;
:
:
case 14:
//sketch 14
break;
case 15:
//sketch 15
break;
}
blueOkiris:
Would I be able to take an eeprom chip out of an arduino classic board(uno, duemilanove, etc.) and solder it to a breadboard, then use some sort of connector to plugin the "cartridge" and connect it to the slot for the eeprom. I have some soldering skills and am willing to pay for materials I may need. My goal for this is to make a sort of game console with tvout and use different eeprom chips for the ROM Cartridges. Would this be achievable? If so then how?
Instead of having your 'cartridge' be the whole microcontroller, how about having the 'cartridge' be an SD card? That would be a bit easier to store/handle than a DIY plug-in system. I'm envisaging a solution where you put the sketch on the SD manually, and have a pair of Arduinos - one owns the SD card and handles cards being plugged in, pulls the sketch off the card and then uploads it to the second Arduino via ICSP or serial; the second Arduino is the one that actually runs the game.
Alternatively, if you wrote your games as bitlash scripts held on the SD card you might not need to reprogram the Arduino at all.
Look at the price of SD cards
I think '328P cartridges might be cheaper!
SD cards could be a better option as I am not the best solderer nor do I have much time to do so. Also I already have an sd card module lying around that I know how to set up, and I can get micro sd cards to use with an adapter. Those can be found in many cell phones, so I don't necessarily need to purchase all of them. I have some questions though: What is this Bitlash and how does it interpret? Would I be able to use it with an lcd or tvout or alter the commands to suit my needs? Also, the second Arduino with sd card, are you refering to Bald Wisdom's BootDrive for Arduino? I would like to keep it down to one arduino if possible.
The problem with sd cards is that they can not give developers, or me just to show off, additional parts in their cartriges(special controllers, more RAM, more Memory for saves, etc.) like back in some of the days of the nes, snes, genesis, and others. So if I could the 328p Cartridges to work, they would save me money and give me a bit more functionality. The SD's would save me time and help me atleast get something working. So each has their benefits and quirks.
Bitlash website:
Soldering - you're only talking 1 chip, 2 resistors, 1 connector. After one or two you will be much better.
My understanding of BitLash is that it's interpreted, which is going to be a performance hit. Whether or not this slowdown is acceptable, depends on your game. The TVOut library, for example, requires some pretty tight timing ("racing the beam" like an Atari 2600) so I would hazard to guess that Bitlash isn't going to cut it unless you write a game graphics library sketch and run interpreted games from SD with canned graphics in progmem.
You might look at the "Hackvision" project, which sounds a lot like what you want to do. I believe it runs at 20MHz (as opposed to the Arduino standard 16MHz) to get the necessary performance...