Hello folks, new member and first post here. This might go better in Newbies, but I'm going to focus on hardware, so here we are...
I got into computers when my dad built a COSMAC Elf II kit, and began I programming in 1802 machine language on graph paper. He and I soon moved on the the 6502, and SBC computers, then the Apple ][ and Macintosh. I got sidetracked into writing Computer Based Training software for CDC PLATO and related ports of Tutor on various mini and microcomputers. I learned UNIX along the way, and ultimately did a lot of system support and network administration for various companies. Nowadays I do system support and special projects for a private university. In my so-called spare time, I teach mechatronics and Arduino programming for our local Hackerspace. But I never forgot my early experience with single-board computers, and for some reason now is the time to come full circle and scratch that itch again.
I've been lurking for a while now, and reading data sheets and Garth Wilson's excellent hardware primer, and I've come up wth a concept for what I want to build. I freely admit that what I'm doing is idiosyncratic, and not the easy way, but I'm having fun so far, and at least it will be unique! My goals for the project are the following;
- Play with 6502s!
- Blinkie lights!
- Eventually drive an electrostatic vector CRT.
- Stay away from Arduino and other advanced micro controller ecosystems.
- Stay away from SMT and FPGAs. (for now)
Following those goals, I've made some decisions about the initial configuration I want to build. I'll be designing around WDC's W65C02S and not worrying about compatibility with Rockwell or CMD/MOS devices. I/O will initially include a WDC W65C22 VIA and a W65C51N ACIA, with addressing space for future VIAs and DACs. Clock speed will be a modest 1.0 MHz to start. Glue logic will be discrete 74HCXX. The configuration will be ROMless, using a supercap-backed Cypress CY62256N SRAM in the lower 32K, mirrored into the the upper 32K to cover the vector address space. I/O addressing is also in the upper 32K.
$C000 - $FFFF RAM (mirrored)
$A000 - $AFFF 6522 VIA
$9000 - $9FFF 6551 ACIA
$0000 - $7FFF RAM
The major goal of the initial configuration is to design and build a proper dead start panel, similar to the one in the Altair 8800. (Thus the name in the subject!) No, it's not practical. But it is an interesting design challenge, and once I load a bootstrap into the RAM, I can graduate to a serial terminal pretty quickly after. Having used the crude switch panel on the Elf, I know a panel with a deposit/next function will be quite a bit less painful. It's also a great excuse to really dig into the details of interfacing to the 6502. I'm generally modeling the panel on the Altair 8800's, but the CMOS bus and different timing and instruction set permits me only to use the design concept rather than any of that circuit. Initially, interrupts won't be used, and reset will be handled by a DS1813 for simplicity. I expect to breadboard a good deal of the initial rev, then move on to wire wrap or a PCB ( I haven't decided.)
That's probably enough for now -- comments, questions, scathing rebuttal?
-- Mike Bakula