this post was submitted on 25 Mar 2026
196 points (99.0% liked)

Electronics

2783 readers
7 users here now

Projects, pictures, industry discussions and news about electronic engineering & component-level electronic circuits.

Rules

1: Be nice.

2: Be on-topic (eg: Electronic, not electrical).

3: No commercial stuff, buying, selling or valuations.

4: No circuit design or repair, tools or component questions.

5: No excessively promoting your own sites, social media, videos etc.


Ask questions in https://discuss.tchncs.de/c/askelectronics


founded 2 years ago
MODERATORS
 

My main project has been paused while I waited for a shipment of components. Who knew I would need an XNOR gate IC?

In the meantime I switched back to working through Ben Eater's videos on the 6502. I'm up to the ones on implementing the PS/2 keyboard interface. Before getting too far into it, I decided it was finally time to clean up the layout of the computer's components. Ben's layout, while compact, is also pretty messy. The address and data buses wind all over the place, making them difficult to understand and access for diagnostics or expansion. Also when I first built it I hadn't bothered to take any power rails off of the boards before connecting them together, so my power rails were doubled up:

2qmhr9dONxZwnFA.jpg

Inspired by some layouts that I'd seen on r/beneater, I went with a layout that has all the bus lines running vertically through the center of each board. Components are placed on the sides and connect to the bus lines instead of directly to each other. There are 27 bus lines:

  • 8 data lines (light green for the low nibble, dark green for high)
  • Reset (gray)
  • Clock (white)
  • 16 address lines (alternating light and dark blue for each nibble)
  • CPU read/write signal (orange)

There's just enough room on the left side for the DIP40 ICs. The DIP28s go on the right, with a few columns to spare. Since the data bus starts at column 21, it aligns nicely with the numeric labels on the breadboard. The 1st data line is at column 21, 2nd line is at 22, 3rd at 23, and so on. I put the reset and clock lines in between the data and address busses in order to maintain this pattern for the address lines: 1st at 31, up to 16th at 46. I guess I could have gotten 0-based indexing instead of 1-based if I had put the DIP40s on the right side, but the 6502 really wants to be on the left side due to its pin layout.

I also did some creative wiring in order to fit the reset button below the oscillator so that it wouldn't take up any extra real estate:

A681824S5Law1RY.jpg

The center pins of the button share a column with the GND pin of the oscillator. The left pins are in the unusable space between the oscillator and the NAND IC. The right pins are in an otherwise unused column that runs underneath the oscillator. Since the reset button doesn't take up any extra space, there's room for an additional DIP14 next to the oscillator, and another two DIP14s or DIP16s to the right of the bus on that board.

top 19 comments
sorted by: hot top controversial new old
[–] lemmysmash@beehaw.org 2 points 1 day ago (1 children)

Very nice job!

A question: what are those wires? Single core? Which diameter are they?

[–] interrupt_tv@piefed.world 2 points 1 day ago (1 children)

They're 22awg solid. Most of them are from Jameco and have PVC insulation. The bright green and dark blue wires are from Ben Eater's World's Worst Video Card kit, and have what feels like silicone insulation.

[–] lemmysmash@beehaw.org 1 points 1 day ago
[–] WolfLink@sh.itjust.works 4 points 6 days ago (1 children)

It’s a lot neater than mine! Nice job!

[–] interrupt_tv@piefed.world 1 points 6 days ago

With extra USB cables as a garnish. Very nice.

[–] theneverfox@pawb.social 1 points 6 days ago (1 children)

Wait... This isn't click bait? Audible expression

[–] interrupt_tv@piefed.world 1 points 6 days ago

I reorganized my breadboard computer. What happened next will shock and amaze you!

[–] hayvan@piefed.world 18 points 1 week ago

I just came a little. That's some beautiful wire management.

[–] adam_y@lemmy.world 7 points 1 week ago

Lovely work.

[–] Bazell@lemmy.zip 5 points 1 week ago (1 children)

Are you planning to make it capable of running Doom?

[–] xthexder@l.sw0.com 2 points 1 week ago (1 children)

It looks like it might be possible. Someone's done it before on a VIC-20
https://github.com/Kweepa/vicdoom

[–] Bazell@lemmy.zip 2 points 1 week ago* (last edited 1 week ago)

Great. Good luck.

[–] YerbaYerba@lemmy.zip 5 points 1 week ago (1 children)

I built a 6502 breadboard computer years ago. Yours is so much cleaner than mine was. This is another great resource for 6502 homebrew. https://wilsonminesco.com/6502primer/

[–] interrupt_tv@piefed.world 4 points 1 week ago

Definitely a great resource. I've got it bookmarked to read more of later. From the address decoding chapter, I can now better appreciate Ben's weird memory layout that leaves half of the RAM inaccessible. It allows you to hook up a ton of peripherals and use the individual address lines to select them. You can even select multiple devices to write to simultaneously, depending on which part of the address space you access.

[–] Defectus@lemmy.world 4 points 1 week ago (1 children)

Impressive! Would love to have the time and knowledge to this

[–] interrupt_tv@piefed.world 4 points 1 week ago

It's not too difficult to learn. Ben Eater is really good at teaching this stuff. He guides you through everything in small steps that are easy to understand: https://www.youtube.com/watch?v=LnzuMJLZRdU

[–] defaultusername@lemmy.dbzer0.com 4 points 1 week ago (1 children)

I love the socketed IC on the breadboard. Also how long did this take you? Very impressive.

[–] interrupt_tv@piefed.world 4 points 1 week ago

Thank you. I've got the PCB design and assembly instructions here if you want to make your own: https://codeberg.org/interrupt_tv/alpz-bb

Not sure exactly how long it took. I worked on it off and on over the span of a few days.

[–] RamenJunkie@midwest.social 2 points 1 week ago

Dude out here doing cable management on his breadboard.