8-Bit Computer Addresses LEDs

Homebrew 8-bit computers tend to have fairly limited displays, often one or more seven-segment displays and an array of LEDs to show the values of RAM or perhaps some other states of the computer. [Duncan] is in the process of building just such an computer, but wondered if there was a way to create a more visually appealing display while still keeping the computer true to its 8-bit roots. With some interesting TTL logic he was able to create this addressable RGB LED display to some remarkable results.

The array works by controlling the WS2812B LED strips with a specific timing cycle which was pioneered by [Tim] for a different project. [Tim] was able to perform this timing cycle with some simple Assembly code, which means that [Duncan] could convert that code into TTL gate logic relatively easily. Using 74LS02 NOR chips gets the job done as far as timing goes, and the pulses are then fed into a shift register and support logic which then creates the signal for the LED strips.

When everything is said and done, [Duncan] has a fully addressable 16×16 RGB LED array as a display for his 8-bit computer without violating any of his design principles and keeping everything to discrete TTL logic chips and a stick of RAM. It’s a unique method of display that might go along really well with any other homebrew computer like this one that’s also built with 74LS chips.

Full DIY: A UNIX Clone On TTL

Making a CPU or indeed a whole computer system from scratch using discrete logic chips is by no means an unusual project, but it’s still one that requires quite a lot of technical ability and understanding of how computers work. Similarly, writing a UNIX-like operating system from scratch is something that’s been done more than once, but which definitely puts the author in an exclusive breed.  Creating a CPU and computer system from discrete logic and then writing a UNIX-like OS for it? That’s definitely something new, but here’s [RobotMan2412] with both CPU and operating system to prove it!

The GR8CPU as he calls it is an 8-bit design with a 16-bit address space, making it equivalent to a typical mid-to-late 1970s 8-bit chip. He’s on revision 3 of the processor, and even makes the bold suggestion that it might be the most complex breadboard CPU ever made. That’s impressive enough, but to add a UNIX-like operating system makes it special.

While he has a real GR8CPU, it appears he’s also written an emulator with access to a disk filesystem, and it’s on this that he shows us the OS running. Don’t expect an all-singing all-dancing desktop OS here, instead it’s a kernel and very basic command line that’s just about able to run a Hello World. The kernel is hand-coded in assembler and is about 5 kB in size.

We look forward to seeing more of this project, and hope maybe he’ll one day soon publish the source. As a reminder that this is a perfectly capable platform for the job, here’s the original UNIX running on a vintage DEC PDP7.

Hackaday Links Column Banner

Hackaday Links: February 28, 2021

In an announcement that came as a surprise to few, NASA now says that landing humans on the Moon by 2024 is no longer likely. Acting administrator Steve Jurczyk lays the blame at the feet of Congress, for failing to provide the funds needed for Human Landing Systems development, a critical step needed to meet the aggressive overall timeline. The announcement doesn’t mark the end of the Artemis program; in fact, NASA is continuing to work on a realistic timeline for getting boots back on the lunar surface, and a decision on which of the three submitted proposals for a lunar lander will be further developed should be coming in the next few months. As far as we can see, this is simply an adjustment to the original timeline for a landing, but given the stunning recent success of Perseverance showing just what robots can do, we’d expect pushback from some quarters on the need for human exploration.

The entry-level 3D design market was thrown into considerable turmoil last year when Autodesk changed the licensing terms for its flagship Fusion 360 package. Hobbyists who had been enjoying relatively unfettered access to the powerful suite chafed at the new restrictions, leaving many to threaten to jump ship, apparently without much thought given to the dearth of alternative products. That may be changing now that Dassault Systèmes has announced two new versions of SolidWorks aimed at the maker and student segments. The Makers offer is intended for hobbyists who want to design for benchtop manufacturing methods like 3D-printing. The Students offer is aimed at engineering and design students looking to gain experience with the tools they’ll be expected to have mastered by the time they enter the job market. It looks like the Makers offer will be at least partly contingent on the interest expressed by the community, so you might want to make your feeling know on the subject. If the Makers edition comes to pass in the second half of this year, it will likely target a $99/year price point.

We stumbled upon an interesting YouTube series the other day that stirred the creative juices. We all probably remember the first time we learned about the Mandelbrot set, the fractal number set that looks something like a lumpy kidney bean and continues to do so no matter how far you zoom into it. The image may be complex but the math behind it is simple enough to implement in software that it’s often done as an exercise for CS students and other unfortunates. But implementing a Mandelbrot set generator in logic is possible too, which WildEngineering did in this video series. Rather than implement this as discrete logic gates, he used a neat logic simulator called Digital, which looks like a handy tool to learn all by itself. The Mandelbrot generator concepts are really instructive too, and it sure seems like the next logical step would be to gather the needed 74xx-series chips and start breadboarding. We’d love to give it a whirl ourselves, but won’t be heartbroken if someone beats us to it.

If it sometimes appears that we at Hackaday get a little frustrated with the comments section of the articles we write, rest assured that we know that we have the best readers on the planet, hands down. Where the toxicity of other corners of the Internet is often unbearable, our readers truly do make this a fabulously collaborative environment, on the whole.

In fact, some commenters even go so far as to basically write their own articles in response to one of ours, and when that happens we like to point it out. The article that spawned the effort was Kristina Panos’ excellent “What If I Never Make Version Two?”, a recent piece that dips a toe into the psychology of hacking. Peter Walsh picks up on the theme with his Hackaday.io page entitled “The Psychology of Version Two”, which we really enjoyed. After a brief look at the neurochemistry of happiness, Peter dives into some “brain hacks” to assess the need for a version 2. There are some great tips, and we really enjoyed both the original article and Peter’s response.

Surfing The Web With 7400 Logic

We see more computers built from logic gates than you might expect. However, most of them are really more demonstration computers and can’t do much of what you’d consider essential today. No so with [Alastair Hewitt’s] Novasaur. Although built using 34 TLL chips (and a few memory and analog chips, too, along with one PAL), it boasts some impressive features:

  • Dual Processor CPU/GPU (Harvard Architecture).
  • 33 MHz dot clock, 16.5 MHz data path, 8.25 MHz per processor (~3.5 CPU MIPs)
  • 256k ROM: 96k ALU, 64k native program, 64k cold storage, 32k fonts.
  • 128/512k RAM: 1-7 banks of 64k user, 60k display, 4k system.
  • 76 ALU functions including multiply/divide, system, and math functions.
  • Bitmapped Graphics: Hi-res mode up to 416×240 with 8 colors and 4 dithering patterns. Lo-res mode up to 208×160 with 256 colors, double-buffered.
  • Text Mode: 8 colors FG/BG, 256 line buffer, up to 104×60 using 8×8 glyphs, 80×36, and 64×48 rows using  8×16 glyphs.
  • Audio: 4 voice wavetable synthesis, ADSR, 8-bit DAC, 8Hz-4.8kHz.
  • PS2 Keyboard: Native interface built-in.
  • RS232 Serial Port: Full duplex, RTS/CTS flow control, 9600 baud.
  • Expansion Port: 7 addressable 8-bit register ports, 4 interrupt flags

Continue reading “Surfing The Web With 7400 Logic”

TTL Simulator In JavaScript

How do you celebrate your YouTube channel passing the 7400 subscriber mark? If you are [Low Level JavaScript], the answer is obvious: You create a 7400 TTL logic simulator in JavaScript. The gate simulations progress from simple gates up to flipflops and registers. You could probably build a 7400-based computer virtually with this code.

In addition to just being fun and interesting, there were a lot of links of interest in the video (see below) and its comments. For one, someone watching the channel took the code and made a Verilog-like IDE that is impressive.

Continue reading “TTL Simulator In JavaScript”

Super-Simple VGA Adapter Sports Low-Res Output With Only Four TTL Chips

Here at Hackaday we cast a wary eye at tips that come in with superlative claims. Generally, if we post something that claims to be the fastest or the smallest of all time, we immediately get slapped down in the comments by someone who has done it faster or smaller. So we present the simplest TTL video card ever knowing the same thing will happen, but eager to see how anyone might scale things down.

To be fair, [George Foot] does qualify his claim to the simplest usable VGA adapter, and he does note that it descends from [Ben Eater]’s “world’s worst video card”, which he uses for his 6502 breadboard computer. But where [Ben]’s VGA adapter uses about 20 TTL chips and an EEPROM, [George] has managed to decrease the BOM to just four TTL chips along with the memory and a crystal oscillator. This required a fair number of compromises, of course; the color depth is fairly low, as is the resolution. Each pixel appears as a thin horizontal bar rather than a small square, leading the images to be smeared out across the screen. They’re still surprisingly viewable, though, which probably says more about the quality of the pattern-recognition wetware between our ears than anything about the quality of the adapter. [George] gives a tour of the circuit in the brief video below.

It looks like [George] has posted a few improvements to the project since we first spotted it, so we’re looking forward to seeing how much the parts count went up. We’re also keen to see if anyone can outdo the simplicity of this effort — be sure to let us know if you give it a shot.

Continue reading “Super-Simple VGA Adapter Sports Low-Res Output With Only Four TTL Chips”

Discrete-Logic UART Keeps 8-Bit TTL Computer Connected

Pity the poor TTL computer aficionado. It’s an obsession, really — using discrete logic chips to scratch-build a computer that would probably compare unfavorably to an 80s era 8-bit machine in terms of performance. And yet they still forge ahead with their breadboards full of chips and tangles of wire. It’s really quite beautiful when you think about it.

[Duncan] at Shepherding Electrons has caught the TTL bug, and while building his 8-bit machine outfitted it with this discrete logic UART. The universal asynchronous receiver-transmitter is such a useful thing that single-chip versions of the device have been available since the early 1970s. [Duncan]’s version makes the magic of serial communications happen in just 12 chips, all from the 74LS logic family.

As if the feat of building a discrete logic UART weren’t enough, [Duncan] pulled this off without the aid of an oscilloscope. Debugging was a matter of substituting the 2.4576 MHz crystal oscillator clock with a simple 1 Hz 555 timer circuit; the reduced clock speed made it easier to check voltages and monitor the status of lines with LEDs. Once the circuit was working, the full-speed clock was substituted back in, allowing him to talk to his 8-bit computer at up to 38,400 bps. Color us impressed.

For more TTL computer goodness, and to see where [Duncan] got his inspiration, check out [Ben Eater]’s many discrete logic projects — his scratch-built 6502, a low-end video card, or even his take on serial communications.