Saturday, November 9, 2013

Update and Pictures of Computer 1

Today I finally got around to taking a couple pictures of my first 6502 computer, which is in breadboard testing.

The board I chose is 2x 64 rows, not very big. I regret using it now, I have one twice as big. There are more chips than I expected to use, or are even necessary, but everything was built with what I could find. The biggest example is the over complexity of the clock section, described below. Whatever additional I/O chips are needed (probably at least the max232) will have to go on another board.

Another regret is using the thick green wire you can see carrying the address lines. I figured out later that thin cat5 wires are perfect for breadboarding, but I'm not about to undo what I've done.

At any rate, here's the pictures: (sorry they're small, it's either that or off the page)



There are currently nine chips. Starting with the top left: 74LS74, 74LS42, 65C22, 74LS00, 6551.
Bottom right: 74LS04, MOS6502, Sony 5864, AT28C64.
Some of the chips are placeholders (6522 and 27C256), until the real ones arrive.

Starting on the left of the board is the clock circuitry. Using a simple three inverter, resistor, capacitor and crystal network, the 74ls74 generates a clean 3.8 Mhz square wave. That was the lowest frequency crystal I had laying around, it's an NTSC color carrier. That signal is fed into the 74ls74 via the black wire on the left edge, which divides it twice and feeds it into Phi0 of the MPU. The real frequency is somewhere around 850khz. I'll replace the crystal with a 2mhz one when it comes, giving me the 2mhz, 1mhz and .5mhz options I'm shooting for.

On the top of the inverter IC is the reset circuitry. A resistor and capacitor between it and the processor hold down the reset line, through two inverters, for about 300ms on start up (I know that isn't necessary/optimal, but it works). The orange and white connector goes to a switch for manual reset. It is also wired through the RC circuit to debounce.

The final inverter is fed with the R/W signal from the MPU, enabling the /OE for RAM and ROM.

Next is the NMOS 6502. Nothing interesting, I bought it NOS, made in 1984. It consumes about 100ma, and gets fairly warm, but I think that's normal. Various control signals are tied to allow free run. Address lines are thick green and thin orange wires, data lines are thin blue (not tied to the MPU yet.) All the messy hook up wire on the data lines is emulating an $EA op code, feeding the 6502 with endless NOP instructions. This just quickly cycles through the address space, allowing you to check functionality of a few of the chips without burning a ROM test program.

8KB SRAM and (soon to be) 8KB ROM on the bottom right. These are addressed at $0000.1FFF and $E000.FFFF, respectively. An LED is connected to each chip's enable pin, and if everything is working properly, they should flash slightly out of sync. The RAM will be soon upgraded to a 32KB chip, which is physically half the size.

On the top left of the board, there's the flip-flop and 74LS42. The latter is a 4 of 10 decoder, with the A3 pin tied low to function like the more common '138, which I of course wasn't able to find until later. The first and eighth blocks are used for RAM and ROM.

Next is an early Synertek 6522 from 1981. I think this chip is blown, as most of its outputs are stuck in a strange pattern, and resetting does nothing. It's just a placeholder until the new one comes. It is powered, but doesn't use any current.

Going down the line, there's a 74LS00, which takes the inverted R/W line and Phi2, and does some magical logic to drive the RAM chip's /WE pin. The three other gates are unused, for future decoding use.

Last is the 6551 ACIA. Not sure about using this chip, it seems to have a bad reputation of bugginess. I'm not going to spend $10+ on a CMOS one, it might have to do. I have quite a few other com chips of the same vintage, I might try to use one of them.

At the very top right is a simple voltage regulator circuit. My bench power supply is very old and makes a loud 'bong' when powered on, so this is essentially a surge protector. 7.5v DC comes in over the cat5 wires, is regulated, then spread on the busses.

The entire computer is working great in free run! It pulls about 120ma and has run fine for hours. Every chip involved so far seems to be doing its job, as the LEDs' flashing shows.

All there is to do now is wait. Wiring up the last couple data busses is an easy task once everything is in place. As soon as the chips come (hopefully in the next couple days), I can burn a little test program in and blink lights 'for real' on an I/O port.

The possibilities from there are endless! :D


Another photo from the top:



Any suggestions/thoughts/etc are greatly appreciated.

I'll try to draw up schematics soon. More for my own reference, as it's probably simple enough from the description. It's a very basic SBC, but it's mine, and I'm quite proud of it ;)

Thanks for reading

No comments:

Post a Comment