When I was 16, I designed my first computer from the ground up using the 6502 processor. I also eventually wrote a 4K operating system for it in machine code while in high school. The original computer used sixteen 2114 (1K x 4 bit) memory chips. When I graduated, I rebuilt it in a smaller form factor to make use of the larger 8K x 8 bit static memory chips that were available. I learned a lot about computers doing this project.
The computer had a 40 x 25 character display using the 6545 CRT controller chip. Each character had 8 x 8 pixels in monochrome and I designed a character set which was programmed into a 2716 (2K x 8 bit) EPROM. I was particularly pleased with the display circuit which worked very well, and while mostly cribbed from the 6545 data sheet, had a few features of its own.
The keyboard was just some old keyboard that I had wired up in my own matrix. Many aspects of this project were influenced by the Commodore PET, which was the computer on which I first learned to program in BASIC and then used to learn 6502 assembly language.
I started making a tape operating system but never fully incorporated it into the computer, although I did get it loading and saving. I just didn’t get down to programming it onto an EPROM – partly because I rarely had access to any programmer.
Recently I dusted off the computer and powered it up. All those years kicking around in various boxes seemed to have taken their toll, and while I got a display of random letters and numbers, I did not get full functionality out of it, and the processor seemed to rapidly crash after spewing a bunch of garbage onto the screen.
Sometimes I am tempted to bring it back to life and make a completed and semi-useful computer out of it, but realistically, it is just a nostalgia project – I feel I should be more forward thinking, as refurbishing old computers is the kind of thing I could do when I am an old person!
Best just to keep moving forward.