I changed the topic title to "Getting young people into
6502", to differentiate from getting them into computers in general, or simply electronics, as our common interest here is 6502 which is the focus this forum is absolutely committed to. The "young people" part of the title was referring especially to teens, as the pre-teen brain is usually not developed enough yet to have the needed reasoning ability, and the 20's bring more independence, both financial and knowing how to reasearch things.
The idea that that the forum would come up with a kit or product is something good that I wasn't expecting. I really was only thinking that some discussion would make us all more aware of possible opportunities to help young people. If we endorse a particular kit or product, we might as well take advantage of something already available if practical, and just add something minor if it needs it. There are already
Daryl's SBCs, and
Apatco's(ignore the spam in the reviews section), and maybe one of WDC's on 65xx.com which I can't find ATM. The idea of having a keypad and display (like the KIM-1 someone mentioned) does add the attraction that although support from a PC is possible, it is not mandatory. A ROM programmer is not required to get going, although if they want to buy one, the ROM is socketted and they can do their own. And to answer this from jac_goudsmit above:
Quote:
Compare this to e.g. a parallel EEPROM (such as the 28C256) that could be used on the 6502 bus. This is an interesting option but even if some hardware is added to the project to make it possible for the 6502 to re-flash its own EEPROM somehow, it would still be necessary to bootstrap the system with an EEPROM that has something in it, to get the 6502 running. So the users would have to depend on someone else to flash the first image into the EEPROM, or they would require some hardware to put that initial program into the EEPROM themselves. And all of that adds up, in cost and time. With Propeddle, all the user needs is an Internet-connected computer and a USB cable(*).
Daryl's EEPROM-based SBC and SBC OS let the ROM be modified by the very computer it's running. It can transfer code to the RAM to run while the EEPROM itself is being written to and is unavailable for the milliseconds needed for the write. No extra hardware is needed. Different ROMs could be provided up front too.
Quote:
You're right that, if the system would include a fixed-size [E]EPROM, it would be necessary to change the hardware whenever the user gets the idea of changing the RAM or ROM size.
Jumper setting would take care of it.
Quote:
And in the case of the Propeller, a lot of existing code (video drivers, SPI, I2C, SD card drivers) can be used to build the virtual system as seen by the 6502.
Not to downgrade the Propeller, but note that some of this is also already available for 6502, like the code on my site for doing SPI and I²C on the 6522. I did find SD card daunting though, as I wrote recently.
To comment on enso's 3 ways: I lean heavily toward #1. It does not involve a second processor type or Verilog. The two cons are not cons at all, because we can supply a pre-programmed ROM or choice of several ROMs that let it work right out of the box. Again, with EEPROM, it can also program its own ROM without separate equipment or even a PC. Although adding features requires hardware, such hardware would plug in via standard pin headers. A ribbon cable could go from the pin headers to even standard breadboards, either solderless or soldered. Since the breadboards won't be handling the processor's own busses but only 6522 I/O, the far less than ideal construction of a solderless breadboard won't hamper the computer's operation. With an ACIA and a couple of VIAs, nearly anything can be connected, which is largely what my
circuit potpourri page is all about. It is very flexible, being just a scaled-down version of my workbench computer which has three VIAs, and lots of things interfaced through them. (It also has three ACIAs but I have really only used one in recent years.)
If a solution really had to have a minimum of parts (which I don't see as a necessity), another option would be the 65134 microcontroller. Unfortunately the '134 (and '265) is mask-programmed; and although you can have external ROM and RAM, doing this requires forfeiting a lot of I/O pins.