I programmed the ATtiny a week ago and checked for all VCC’s and GND’s. then I installed all chips but unfortunately my MARC-1 didn’t work. To be honest, I didn’t expect it to, at least not right away.
OK, all IC’s pulled out and comparing the eagle board layout with the PCB. That way I found *SEVEN* unsoldered connections. ALL of them were at the top layer on IC sockets.
Result, MARC-1 not working.
Then I rebuild the entire computer on breadboard for comparison, which also didn’t work. Now I began to question the design. On a separate breadboard I rebuild my first design with 32k RAM, 16k ROM and I/O at $8000. I had to have something working! This one ALSO did not work. And I worked really careful and slow. After some measuring I found a faulty jumper wire. It was brand new.
At my MARC-1 breadboard it was a very stupid problem, RXD and TXD have to be cross connected to the UART-USB bridge. The same with CTS and RTS. After that both breadboards were working.
After some searching here on the forum I found some debug topics.
NOP Generator by Lee Davison:
http://6502.org/mini-projects/nop-gen/nop-gen.htmGarth's checking method:
viewtopic.php?f=1&t=1888&p=17653#p17653Garth's debugging tips:
http://wilsonminesco.com/6502primer/debug.htmlas a result:
RES, RDY, IRQ and NMI were high. There was a clock at CPU pin 37 and PHI2 at 39.
I installed the ATtiny, the 74HCT74 and the MOS6502 and connected %11101010 to the data lines of the ACIA. I checked A15-A0 with the scope. They toggled between high and low, each with double frequency. Except for A5 which was high all the time.
I made a scan with 1200 DPI and searched for the short. Seems I shorted A5 with D6 with a very nice blob of solder!
Attachment:
short1.jpg [ 70.38 KiB | Viewed 614 times ]
Then I installed the 74HCT00, 74HCT688 and an EPROM with a test program which jumps from $C000 to $FF00 in a 2 second interval. I checked A8, A9, A10, A11, A12 and A13 for toggling.
After that I installed RAM and used a program which jumps from $C000 to $1000 in a 2 second interval. I checked A12, A14 and A15 for toggling.
Then I installed the 74HCT138, the ACIA and connected the UART correctly.
BINGO!!!
After the "week of hell", MARC-1 finally works.
Now I have a reference board and I finally can prototype the replacing of all glue logic with a 9572!