DIY computer with cards - 3DSage - I Made My Own Computer

By searching why the PDP-8 Kaleidoscope papertape doesn’t work on emulators (it’s due to the vector monitor), I found this video.

Next to the interesting, simple computer and cards, there’s also a nice counter with flip-cards.
Some more breadboard computers on the YouTube suggestions.

1 Like

It is interesting, but gives very little technical information about the working of that “computer.” How can you get a computer to work using only a clock, a 4-bit counter and a 32-byte memory? There is no control circuitry, no decision making device, no actual I/O circuitry. Something seems fishy, I wish that he had shown the schematic for this “computer.”

1 Like

This earlier video might help with the design

AFAICT it’s certainly executing instructions, although it is clearly a very limited machine.

(I’d love to see even a one page document, but I’m not sure there is one.)

1 Like

Very strange. People asking for schematics for months on YouTube comments.
3 months ago he said that he would like to make a tutorial. But still none.
But it doesn’t look like a fake.
He is on many websites and has his own. But mainly about 3D printing.
He has some more uploads.
One funny one is the smallest console (not his own) called Thumby, 29.5x18 mm, 1.2x0.7"). GameBoy style but even smaller resolution: 72x40 pixel.

I found this quite intriguing but as yet, I’ve not spent that much time to work out how it work, but I’m thinking that the “PC” - which is a 4-bit counter is the key - it’s a presettable counter - 74x161.

Looking at some of the opcodes - it looks like 4 bits of the data held in RAM is fed into the counter preset inputs and the counters /CLR and /LOAD inputs may be fed from the other 4 bits of the 8-bit data byte.

So with that, I can see how a jump instruction might work - the 4 bits of ‘data’ being the next address with the operand toggling the /LOAD input.

This video @ timestamp is, I think, the key to it all:

But it’s also possible, I’m still missing something.

I’ve reached out to him in email, so who knows.

-Gordon

1 Like

Hi there!

It’s 3DSage, I made the computer and I’m glad to hear you are interested in it. I made it a few years ago to help teach people the basics of computers. This is how it works.

I have a 555 timer pulse on and off, that is the computer’s clock speed, the red led.
That pulse goes to the binary counter signaling it to count up to 15 then reset to zero. The green leds.
Those 4 wires also go into the ram chip so the blue led’s are visually showing the 8 bits stored at that address.
I am just using the first 4 bits as data. They go directly to the blue led’s and can control external components too but it’s just simple current on or off.
Then the heart of the computer is the last 4 bits. I have these wired back to the chips.
The binary counter chip needs a high current on one of the pins to maintain it’s counting, if that bit goes low, then the chip halts. So I can save that first bit in ram as high to maintain counting, and low means halt the program.
Similarly, the next bit is wired to the binary counter’s pin that makes the chip reset. So I can create a loop.
Next bit goes to the binary counter to jump to an address by reading in the first 4 bits of the ram chip.
Looking at a data sheet for a binary counter might help see what the pins can do to that chip.

So basically, the last 4 bits of the ram chip can control the binary counter chip to halt, loop, or jump.
The most basic instructions of a computer.

-Sage

6 Likes

Welcome! Good to see you here, and thanks for the explanation.

1 Like

I’m not sure where to share this on your forum but I thought some of you might be interested in my electronics project. A robotic playing flute with an interactive keyboard too.

When do you plan on making a tutorial?

I personally don’t think this meets the minimum qualifications for a computer, as it doesn’t have selection — the ability to branch based on a condition. Obviously others can have other standards for what they consider to be a computer, but personally I think the minimum list is:

  1. Receiving input in some way
  2. Sending output in some way
  3. Sequence — running one instruction after another
  4. Selection — branching based on a condition

With 1, 3, & 4 you get Iteration, the ability to loop. With just the first three then a Jacquard loom is considered a computer, and I have yet to meet someone who thinks that (though I am sure there is an exception).

The simplest thing that I personally know of is my 1-Bitsty project: GitHub - jockm/1Bitsy; but I am sure someone else has gotten there before me.

Neither 3DSage’s system or mine could be considered fully turing complete, so the title of computer is a bit honorary in both cases

Welcome, Jock. Personally I wouldn’t want to get too wrapped up in definitions - true enough a branchless sequencer can’t hope to be Turing complete but it still might be an interesting project and a possible teaching aid.

Likewise, your 1-Bitsy looks interesting to me - thanks for sharing - and I’m not at all bothered whether we call it 1, 4 or 8 bits. It’s not too helpful to suppose that every CPU necessarily has a specific number of bits.

Parenthetically, Jeff Laughton made a useful 1 bit CPU - see here.

1 Like

As I said, other’s are welcome to their own definitions

1 Like