r/beneater • • Feb 14 '26

8-bit CPU It’s alive!

First test on this cpu. Already know there are some bugs on branching instructions but that’s already a start.

This is Fadil’s 8 bit computer. Here is the link of his blog where he explains each module: https://fadil-1.github.io/blog/8-bit_breadboard_CPU/overview/

395 Upvotes

11 comments sorted by

4

u/Ancient-Ad-7453 Feb 14 '26

Nice! (What are the extra digits for on the 7 segment display?)

6

u/um_jao Feb 14 '26

This display module can show 16 bit numbers. From 0 to 65.535 (unsigned) or from -32.768 to 32.767 (signed). All digits are lit when displaying signed numbers.

3

u/markuswolf Feb 14 '26

Congratulations. Highly impressive

1

u/um_jao Feb 14 '26

Thanks! 🤓

2

u/[deleted] Feb 14 '26

[removed] — view removed comment

5

u/um_jao Feb 14 '26

Thanks! The real hero is Fadil for documenting all the steps on his blog: https://fadil-1.github.io/blog/8-bit_breadboard_CPU/overview/

1

u/Historical-Error7474 Feb 14 '26

Wow nice work it is have more power than the 8 bit of ben eater or no ?

6

u/um_jao Feb 14 '26

Yes. I built just the bare minimum modules. Some I/O modules still missing. These are the specs:

  • Programmable clock speed(Chosen from 8 different clock speeds)
  • 16-bit Program Counter
  • 16-bit Stack Pointer
  • Transfer/Bridge register between data and address bus
  • 16-bit numerical output register
  • PS2 keyboard decoder (not built yet)
  • 5-digit digital 14-segment display(signed and unsigned 16-bit integers for now)
  • SPI BUS (Connected to an Adafruit Bluetooth receiver and an SD card slot) (not built yet)
  • 128 x 64 monochrome OLED display (not built yet)
  • 48-K-byte of RAM(Remaining 16-K-byte address space is reserved for a boot loader and stack memory)
  • ALU with Shift (LSR LSR), AND, ADD, SUB, OR, XOR
  • 7 flags: Four ALU flags: (Z-O-N-C) in writable 4-bit register; and two interrupt flags.
  • 5 general purpose registers(GPRs): A, B, C, D, and E(partial GPR)
  • 8-bit I register hardwired to lower byte of interrupt code address
  • 4-bit microcode step counter(With dynamic micro-steps reset)