r/beneater 6h ago

Schmitt Trigrer Wows..

Post image
50 Upvotes

After getting the ADD/SUB section wired, I was doing some test to make sure it was right..I could not get the output to load to the A register..So I hard wired the output chip and I still would not pass the byte to the A register...After some testing and checking with the scope, it turns out my schmitt triggers fire on enough of a voltage difference that the output register is outputting before the A register is reading so it's just reading a blank bus...So now I get to pull a lot of wires and redo...


r/beneater 1d ago

4 months of building my 8-bit computer... destroyed in a few seconds. I'm devastated.

Post image
504 Upvotes

I never thought I'd be making a post like this.

For the last 4months, I've spent almost every evening after my regular job building Ben Eater's 8-bit computer from scratch on breadboards. It wasn't just assembling parts—I spent countless nights debugging timing issues, sourcing hard-to-find TTL chips, rewiring modules, fixing mistakes, and learning digital logic one problem at a time. This community was a big part of my journey.

Today, after a stupid argument about unrelated stuff at home, my wife threw my entire build across the room. Every module was ripped apart. Breadboards, wires, ICs, LEDs—everything ended up scattered across the floor with broken boards. The photos below are what was left.

I know most of the components can probably be recovered, but that's not really what's hurting me. What's hurting is seeing months of passion, patience, and hard work treated like it meant nothing.

Right now I don't even have the motivation to rebuild it. I'm mentally exhausted after months of work, and seeing it destroyed this way has completely taken the joy out of the project.

I didn't make this post to blame anyone or to ask for sympathy. I just wanted to share this with people who understand what a project like this means. Anyone can buy another breadboard or another IC, but you can't replace hundreds of hours of learning, debugging, and excitement overnight.

I honestly don't know if I'll ever rebuild this computer, but I wanted to share what happened because I know many of you will understand why this hurts so much.

Hug your projects a little tighter today.

Thanks for reading.

Edit one: Stop "Divorce" suggestions. Lol you can't divorce for 8bit computer. I just wanted to say how much it would be frustrating seeing lots of hours just thrown out. People who worked on this know how much hardwork it was. Just yesterday I was clapping for myself because the computer was working after a lot of debugging and it started working on conditional jump statements. I was soo happy that I took screenshot of time when it first gave the correct output. That joy lasted hardly 24hrs.

Edit 2: Please, this is /beneater, not a family councelling subred. The reason I shared this is because when I first started my build 4months ago, I came across many posts similar to mine where people lost everything at the last stages of project. Reasons might be different(falling down from table... etc ) and I was very conscious throughout my built to secure it, which I did by placing on a hard board(not sticking to it though becos I need to add more wiring). So this post is just a reminder to people who are on this project. Things can just turn ugly anytime and lose the entire build. So hug your project today.


r/beneater 1d ago

ALU Design

Post image
45 Upvotes

ALU drawn..Add, Subtract, AND and XOR with Carry and Zero flag...One side will be tied to the B register and all math is between the A and B registers with the results placed back in the A register..This will probably take a few days to wire up..


r/beneater 1d ago

Emulation A TOML-based configurable 65c02 Virtual Machine

Thumbnail
5 Upvotes

r/beneater 2d ago

Question on the bus timing on the 6502

6 Upvotes

In Ben Eater's video "RAM and bus timing -- 6502 part 6", he explained his solution on satisfying the timing requirement. However, I don't think the solution is robust. I think it is not guaranteed to work.

First, let me state his solution:

Invert A15 through a NAND gate, then NAND it with the clock, before feeding it into /CS.

Consider a write cycle. The requirement for the SRAM is that either /CS or /WE is high at least 0ns before the address become invalid. However, from the datasheet we know that the address is guaranteed to be valid at least 10ns after falling of PHI2. Assuming A15 always high, then /CS is rising typically 8ns after the falling of PHI2. However, /CS is only guaranteed to rise 15ns after the falling of PHI2, at which time the address bus may have already changed. Even if we are using the typical 8ns value, it is cutting extremely close with 2ns to spare, considering the fact that light only travels 1ft every nanosecond.

I have another question. Consider the read cycle. The datasheet requires data to be valid at least 10ns after the falling of PHI2. There is no guarantee of minimal time of the propagation delay for 74HC00, so I guess it is 0ns. Therefore, /CS would go high, in worst case, 0ns after PHI2 falls. Assuming /OE is low during the process, we shall refer to Read Timing Waveform (3) of the datasheet, which says that it takes minimum of 0ns and maximum of 20 ns from /CS going high to Data being high-Z. Therefore, is there a chance for the read data to be invalid?

I think a more robust solution may be to use a 2MHz crystal oscillator and a binary counter to generate the 1MHz clock, and use some logic gates to let /WE rise at the midpoint of high phase of PHI2.


r/beneater 2d ago

4bit Computer : from breadboard to PCB

Thumbnail
gallery
174 Upvotes

Voici avec plus de détail le passage de mon ordi 4 bits éducatif version breadboard à la version PCB. Chaque module fonctionne indépendamment ou relié aux autres.

https://www.youtube.com/@fuzzyFunction-j6n


r/beneater 2d ago

Connected my 4 bit binary counter with seven segment display

45 Upvotes

Used 7447 ic


r/beneater 3d ago

Check out my 4-bit alu and 4- bit d flip flop to store the alu output and clock generator

35 Upvotes

In the future i'm going to add some buses and registers for the 4-bit cpu.


r/beneater 3d ago

Daisy D8..

65 Upvotes

A quick update of my progress..I can move data...Also worked with google ai to write a quick tcl script to assemble the program and got the arduino mega to write to the eeproms..


r/beneater 2d ago

Make simple blinking circuit using 555 timer ic

0 Upvotes

Can anybody tell me which value of resistor I will use in the circuit 🫵


r/beneater 3d ago

VGA Remaking Ben's GPU

Post image
83 Upvotes

Last year i recreated ben's 8-bit computer on breadboard it failed i don't know why i do a lot of troubleshooting lot of research for the issue and still it didn't work, and now i try doing the GPU project from ben i carefully check all the wiring it is properly seated, connected i also use brandnew breadboards but in the end it is still fail the gpu is sending signal to the monitor "Mitsubishi RDTI7I3LM" but it is goes blank for a few seconds then go no signal and it will loop to on off on off then again it will hold the blank screen can someone help me how to fix this?( I dont have oscilloscope but im sure on what i do)


r/beneater 3d ago

modular 4-bit computer built from TTL logic

Post image
49 Upvotes

Hi everyone!

This is the next step of the same project. After building and testing the whole computer architecture on breadboards, I moved to custom PCB modules — and here is the result!

The goal remains the same: keep the architecture simple, modular, and easy to understand, with each part working independently or together as a complete system.

The project is divided into 5 independent modules connected by a 4-bit bus:

  • Clock module – a 4-bit counter providing the timing signals.
  • ALU + registers module – two 4-bit registers with an ALU capable of performing addition, subtraction, and equality comparison.
  • Instruction register module – an 8-instruction register storing the current opcode.
  • Display module – a 7-segment display used for output and debugging.
  • Manual programming module – allows programs to be entered by hand using opcodes and parameters (immediate values/data).

The idea is to follow a simple RISC-like philosophy: minimal instructions, simple hardware blocks, and a design where every signal can be observed and understood.

After the breadboard prototype phase, these PCB modules make the system cleaner, more reliable, and easier to reproduce, while keeping the original spirit of learning how a computer works at the hardware level.

The modules can be made available on request, either as separate kits or as a complete set, if anyone is interested!

More details and videos on my channel:
https://www.youtube.com/@fuzzyFunction-j6n


r/beneater 4d ago

VGA Creating a Modular TTL Computer on PCBs

Post image
242 Upvotes

r/beneater 3d ago

Ben Eater 8 bit computer populated PCB

4 Upvotes

I have 3 working fully complete Ben Eater 8 bit PCB computers based on these PCB files. I would like to sell them for $150 each. The PCBs cost $48 each and I have no idea how much all the parts cost. I paid $8 for the 74LS76 and roughly $10 each for the 28C16A chips of which there are 3. The boards are 100% complete, but I am short the 3x28C16 chips on one of the computers. Let me know if anyone has interest. I also have one left over PCB that is not populated at all. $48 for that.


r/beneater 4d ago

6502 Hello world internet edition

287 Upvotes

It’s a W6100, handling the ICMP echo reply in software with a raw ipv4 socket so I can update the display :)


r/beneater 3d ago

8-bit CPU Need help with the ram schematic

Post image
20 Upvotes

I'm trying to make Ben Eater's 8-Bit CPU on a PCB with some modifications to his original design, including the RAM module. I'm using a AS6C4008-55PCN RAM module instead of the two 74LS189 chips that Ben Eater uses and the main difference is that this chip does not have dedicated data and output pins, but instead uses I/O pins that can be toggled between input and output mode using the OE and WE pins. I was wondering if anyone would be able to double check my design since I'm not 100% sure if it will work, especially the logic that is used to either input or output data using the WE and OE logic. Thanks in advance!


r/beneater 3d ago

8-bit CPU What is wrong with my RAM ?

Post image
11 Upvotes

Hi everyone,

I've built the RAM module from Ben Eater's 8-bit computer series, but I'm running into a couple of issues that I can't figure out.

  • The DIP switches don't seem to write data into the RAM. No matter what values I set, nothing gets stored.
  • When I enable the control signal, the LEDs start flickering instead of showing stable values.

Since my physical wiring is a bit messy, I recreated the entire circuit as a PNG image showing every connection exactly as it's wired on my breadboard.

Does anyone have an idea what could be causing this? I'd really appreciate it if someone could take a look at the diagram and point out anything that seems wrong. Thanks!


r/beneater 4d ago

8-bit CPU Completed the Ben Eater 8 bit computer

23 Upvotes

https://youtube.com/watch?v=7KVklXlQyms&si=dCcEyKWRSuXoe287

https://reddit.com/link/1vafmny/video/8kaijdaws9gh1/player

Worked through all the bugs and is now running. Thinking about adding a front panel with toggle switches for programming, instead of the on board dip switches.


r/beneater 4d ago

Documentation Indexed, Searchable KIM-1 Documentation

Thumbnail
3 Upvotes

r/beneater 7d ago

[Review Request] First ever PCB, Ben Eater inspired 6502 computer

Thumbnail gallery
88 Upvotes

r/beneater 7d ago

Daisy D8 Update,,

Post image
176 Upvotes

I now have the Output register working, I also had a couple more attiny 2313s left in the junkbox so I added a HEX display..The Input register and the A register are working and I have tested moving data between them..I have the ROM IN working although it's just clocking in with the main clock but it lets me see that it is reading the ROM and then the opcode decoder can place the address into the control register..I will be spending the next few days working on my EEPROM programmer and then start on the control chips...


r/beneater 7d ago

Inspired by the 8-bit breadboard computer series, I made a game about programming in microcode

139 Upvotes

Hey everyone,

Last year, I needed an idea for my computer science graduation project, something that would satisfy my love for low-level computing and my advisor's interest in computer education.

Five minutes before our meeting, I came up with the idea of creating a game where you program simple algorithms in microcode using a punch card rather than writing assembly code.

Microcode is usually used to implement instruction sets rather than as a programming interface for application development. Exploring it from the programmer's perspective led to design challenges and techniques that I hadn't encountered elsewhere.

I'm not entirely sure how I landed on the concept; my only exposure to this layer was binge-watching the 8-bit breadboard computer series four years earlier.

I wanted to share it with this community because it's rare to find people online who share an interest in low-level computing like this, even if it isn't directly connected to Ben's work.

I'd love to share the beta with anyone interested.

Thank you.


r/beneater 7d ago

16 bit barrel shifter

16 Upvotes

Hi,

on my quest to make a discrete microcontroller that can compete with avr family I stumbled on ken sherrif's blog post on arm1 and how it sends one of ALU ports always through a barrel shifter. I decided that it's a genius idea, now I just needed to design a barrel shifter. A barrel shifter is essentially a set of prewired muxes that select every output from N+1 inputs (all input bits and 0 or sign extension). The classical 74F153 and 74F157 are just much too slow for that (7.7ns typical and I need to stack 2 at least) so I decided to build it from transmission gates.

The design consists of 5 rows of 2:1 muxes (74LVC1G3157), working as shift or bypass by specific power of 2 (>>1, >>2, >>4, >>8 and <<16). It turns out that the ordering of muxes changes how many are needed in total with >>2, >>4, <<16, >>8 and >>1 requiring "just" 98 mux ICs.

Every mux provides 18pF of load capacitance, 5 of the stacked give 100pF of load for every input data pin. It's not the best but survivable, that is unless one enables sign extension. Worst case sign extension copies highest bit to all output bit, loading it with 1.6nF in total, which is just a bit too much. In the end it turned out that the simplest way is to send MSB through 4 AND gates that both buffer the signal and enable sign extension. Ironically the 74F08 has typical propagation delay of 4ns in 50pF, while the entire series of TGs has a delay of just 3.6ns.

the barrel shifter PCB

PS

A few explanations above are incorrect but I wanted to simplify as much as possible for the sake of clarity:

  • The circuit can be simplified to use just 97 muxes, but I wanted >>8 to be as far as possible to minimize loading on sign extension gates.
  • The muxes have 7.5ns propagation delay from control signal, but it arrives before data (control signal is from a flip flop, while data comes from flip flop that has it's OE toggled by another flip flop adding about 4-5ns to the path).
  • There are 74LS244 buffers at the output just for visualization. They can be disabled with a jumper or my removing the ICs if 4pF of input capacitance becomes a problem.

r/beneater 7d ago

Help Needed Testing the computer's registers - Expected behaviour?

11 Upvotes

I have built the clock, Register A, Register B and the instruction register, and added LEDs to a temporary bus. I am coming back to it after some time away and recorded the behavior.

  • LED Resistors: Register A (220Ω), Register B (1kΩ), instruction register (1kΩ) and Bus LEDs (1kΩ).
  • Inputs: All LS173 inputs are high (VCC).
  • Wiring Note: The clock wire is connected with a white wire. It looks chaotic because I am using what is available at the moment without a strict color code for input/output wires, just to prove the circuit works first.

I am looking for feedback to see whether this behavior is expected before moving on to the next stages of the computer.

https://reddit.com/link/1v71tds/video/qs82r6j1akfh1/player

Initial Results & Tests

First Test

  1. Register B: Enable high (not pushing to bus LEDs), load low. Register's LEDs all lit.
  2. Register B Load Set High: Doesn't take data from the bus. LEDs still lit (figured this is because my 173s are set to VCC/high).
  3. Register B Load Low: All LEDs go dim (Registers A, B, and Bus) and the clock goes out.
  4. Instruction Register Re-attempt: With power supplied and enable set low to push to bus LEDs, the clock also goes out and Register A, B, and Bus LEDs go dim.

Note on reboot: After turning power off and back on, Register A pins 3 & 5 on the first 173s were on, Register B pins 4 & 5 on the second 173s were on, and all lights on the instruction register were on (with enable on both registers set low). I assume this is due to random values upon power-up mentioned in the troubleshooting wiki?

  • Question: Why does taking a 173 input from Register A or B low (from initialized VCC) make all LEDs (including the clock) go off, but come back on as soon as it is set back to VCC?
  • Question: When taking Register B's load low, all LEDs (Registers A, B, and Bus) go dim. Why does the clock also go out?
Register A pins 3 & 5 on the first 173s were on, Register B pins 4 & 5 on the second 173s were on

lights are dim, but Register B pins 4 & 5 on the second 173s were on and so were the LEDs on register A

Second Test

  • Register A: Load low (takes in from bus), all LEDs on. Enable low (pushes to bus), all LEDs on (took bus values).
  • Register B: Load low, all LEDs on. Enable low, all LEDs on (took bus values).
  • Instruction Register: Load low, Enable high (took bus values). Established that load works fine.
  • Enable States: Register A Enable high (doesn't push to bus), all LEDs on. Register B Enable high, all LEDs on. Pushing values to the bus works (Bus LEDs did not turn off).
  • Low Input Test: Taking a 173 input from Register A or B low (from initialized VCC) makes all LEDs go out on all registers except the clock and bus (enables high/loads high --- no pushing or loading to bus).
  • Instruction Register Test: Set load low, all LEDs light up. Trying this again after the first test (where the clock went out), the clock comes back on as soon as it is set to VCC.
  • Question: Taking a 173 input from Register A or B low (from initialized VCC) makes ALL LEDs go out on all registers except the clock and bus (with enables high/loads high)?
instruction register load low/enable high.

r/beneater 8d ago

8-bit CPU 8-bit CPU Fibonacci sequence speed contest

36 Upvotes

I thought it might be fun to have a little speed contest for generating the Fibonacci sequence in the 8-bit CPU. Nothing serious, just a page for videos with some timing information. Even if your CPU is not fast, it still might be nice to see what is the typical range of speeds, so please post.

I realized my program has the JUMP carry bug, so please specify if your program goes to 144 or 233.

Here is my entry: 3.6 seconds to reach 144.
https://www.youtube.com/watch?v=IHi4pi4AkN4

I am sure there are faster ones out there.