Also one of my favorite projects from recent Maker Faires.
Some other CPU projects I really liked were the wire-wrapped and breadboard TTL CPU implementations.
As an aside, I like the simplicity of NMOS design even if it dissipates static power.
And another: it's always 6502 day on HN apparently; averaging about 1 post per day for the past week at least. Probably not a coincidence, since the 6502 is easy to understand from silicon to circuits to software and it was also wildly successful commercially in real systems from the likes of Apple, Atari, Commodore, and Nintendo.
Might you have some link for these?
Personally I think the 6502/6522 architecture is about the most perfect entry point into learning low level coding and hardware interfacing
> No. (But on the other hand, "Anything is a soldering kit if you're brave enough!")
No kidding - hand-soldering a few surface-mount components is hard enough, let alone 10,000 of them! Though I suppose you'd get very good at it by the time you were done. Maybe 20 components per day for 500 days or something.
Liquid solder flux is key. The core of the method: Melt a small blob of tin onto a solder pad. Solder flux is applied to tin blob. Hold component to blob with tweezers. Melt blob with iron. Component will now stay put. Apply solder to the other pad. Done.
This makes use of the solder's surface tension and adherence properties; The solder only wants to stick to hot metal surfaces, and surface tension will actually align the component on the pad. Very clever! The step that adds flux is there to allow us to re-melt the solder, have it flow well, and crystallize correctly when it cools (so no cold joints).
Chips are soldered with a logical extension of the technique that further employs the solder's preferences for sticking to this and flowing like that :)
After having been taught this, I now find through-hole much more of a hassle. It's nice to be free of the hole-poking and board-flipping and leg-snipping. And it's nice to be able to avoid the increased circuit noise that the superfluous metal brings (the legs are effectively antennae!).
Here is where I learned: https://store.curiousinventor.com/guides/Surface_Mount_Solde...
Getting software written for the Apple II to run was difficult. On one of the early King's Quest games I figured out I could get it to run if I pulled the disk out partway through the load and then put it back in.
I mean, totally worth the research effort because it was King's Quest after all!
Unfortunately, I don't have or ever had a Franklin, and acquiring one just for that would be a bit much (with no other interest in the machine besides that, it would also be a waste).
Reading in a disk drive is also usually entirely nondestructive (barring any mechanical issues), so that's a very good solution already.
I have been thinking of an overwhelmingly cheaper, weenier version. In place of discrete transistors, it has a microcontroller—say, 40 MHz ARM?—and LEDs showing register contents, and a ribbon cable to a 40-pin DIP plug. It watches the clock pin and, on edges, sets output pins and executes just enough of the current instruction to be ready for the next edge.
It would be fast enough to plug into the socket of a real machine, e.g. Apple ][. Probably it should have pause, single-step, and run buttons.
They used to actually sell things like this for what would be $50k, made with TTL logic.
Another alternative would emulate the whole Apple ][, maybe with a bus that could drive real perpheral cards? Or a socket for a real floppy disk drive? Without the connector, a pure software emulation would suffice.
>"Is it truly a "discrete 6502?"
Not in the strictest sense. However, it really depends upon how picky you would like to be.
The MOnSter 6502 uses the original dynamic NMOS logic design, implemented at the individual transistor level.
Dynamic NMOS requires a large number of "transmission gate" transistors that are used to switch currents. For various technical reasons, only a 4-terminal MOSFET can make an effective NMOS transmission gate. Unfortunately, individually packaged 4-terminal MOSFETs are no longer commercially available. However, they do still make arrays of 2 or 4 MOSFETs on a single chip with a separate substrate pin. We used the 4-pack version — These are the quad transistor array chips that we mentioned earlier.
Because these transistors do share a pin, there are (strictly speaking) integrated circuits in the MOnSter 6502. However, one might credibly argue that it is a discrete transistor design since there are not (for example) any logic gate chips in the circuit."
Is a shared pin really the big distinction? On a discreet circuit surely multiple components still share the metal traces on a PCB no? Perhaps I'm misunderstanding the meaning of discreet CPU?
Because the Monster 6502 uses 4-transistor packages, they can't claim their design is 100% discretes.
However, these are separate transistors with a shared substrate. It's not easy to call them integrated circuits either! It's a gray area.
By the most strict definitions, it does count as an integrated circuit. But really, not _that_ integrated.
Bravo to this project!
A BJT/TTL conversion would be very interesting.