Let's Make a simple 6502-based computer, Part 3: A different clock circuit, and adding the I/O chip

Channel:
Subscribers:
5,450
Published on ● Video Link: https://www.youtube.com/watch?v=VXHhoFANhg4



Duration: 1:15:55
2,102 views
46


After a long period of trying to figure out what went wrong, I finally get things working by using a simpler and slower clock circuit. The rest of the project works without further problems. To finish off the story about the clock circuit: After making these videos, I did get my hands on a Rockwell TTL 6502, and it works perfectly with the clock circuit I showed in the first video (the one which uses a 2 MHz crystal and a 74F04 chip). So the circuit I showed really does work with a TTL 6502, it just doesn't work with the WDC 65C02. For more stuff like this, check out Ben Eater's channel here: https://www.youtube.com/channel/UCS0N5baNlQWJCUrhCEo8WlA

The original website documenting the construction of this project can be found at these two locations:
http://lateblt.tripod.com/6502prj1.htm
http://lateblt.tripod.com/6502prj2.htm

For reference, the program loaded into the ROM chip in this video is shown below. The first number on each line is the memory address, and the second number is the contents of that address, represented first as a binary and then as a hexadecimal number. The beginning of each instruction is accompanied by an assembly-language mnemonic. Essentially, the program turns all the I/O pins on the VIA chip into outputs by sending 0xFF to the two direction registers, then the outputs are all set to alternating 1s and 0s. Then the program just enters a JMP which infinitely loops.

0000000000000: 10101001 (A9) ;LDA #$FF
0000000000001: 11111111 (FF)
0000000000010: 10001101 (8D) ;STA $8002
0000000000011: 00000010 (02)
0000000000100: 10000000 (80)
0000000000101: 10001101 (8D) ;STA $8003
0000000000110: 00000011 (03)
0000000000111: 10000000 (80)
0000000001000: 10101001 (A9) ;LDA #$AA
0000000001001: 10101010 (AA)
0000000001010: 10001101 (8D) ;STA $8000
0000000001011: 00000000 (00)
0000000001100: 10000000 (80)
0000000001101: 10001101 (8D) ;STA $8001
0000000001110: 00000001 (01)
0000000001111: 10000000 (80)
0000000010000: 01001100 (4C) ;JMP $E010
0000000010001: 00010000 (10)
0000000010010: 11100000 (E0)




Other Videos By LateBlt


2021-01-18Let's Play King's Quest V, Part 1: Colorise
2021-01-12A commentary on Ken Williams' statement about "moon logic" in adventure games and hintbooks
2020-12-24Christmas Eve Stream 2020
2020-12-06Let's Have a Christmas Eve stream
2020-11-16Let's Play Police Quest 1, Part 15: How can you do that?
2020-11-12Let's Play Police Quest 1, Part 14: How do I give people money?
2020-11-09Let's Look at V: The Graphic Adventure
2020-11-05Let's Play Police Quest 1, Part 13: How do I look at people or objects?
2020-11-01Let's Make a simple 6502-based computer, Part 4: A KS0108-based graphical LCD
2020-10-29Let's Play Police Quest 1, Part 12: How do I do anything?
2020-10-26Let's Make a simple 6502-based computer, Part 3: A different clock circuit, and adding the I/O chip
2020-10-22Let's Play Police Quest 1, Part 11: How do I recognize when I have personal agency?
2020-10-19Let's Visit the 1933 World's Fair
2020-10-15Let's Play Police Quest 1, Part 10: How do I hide in the bushes?
2020-10-12Let's Play Police Quest 1, Part 9: How do I interrupt a court trial?
2020-10-08Let's Play Police Quest 1, Part 8: How do I read a memo?
2020-10-05Let's Play Police Quest 1, Part 7: How do I stop talking?
2020-10-01Let's Play Police Quest 1, Part 6: How do I write a memo?
2020-09-28Let's Make a simple 6502-based computer, Part 2: The ROM chip and memory decoder chip
2020-09-24Let's Play Police Quest 1, Part 5: How do I lose the game?
2020-09-21Let's Make a simple 6502-based computer, Part 1: The CPU and clock circuit