The Sol-1: A 16-bit Computer In 74HC Logic With C Compiler And Unix-like OS

Sol-1 system pictured from the front. {Credit: Paulo Constantino)
Sol-1 system pictured from the front. {Credit: Paulo Constantino)

While the concept of a computer system implemented in discrete logic ICs is by itself not among the most original ideas, the way some machines are executed certainly makes them stick out. This is the case with [Paulo Constantino]’s Sol-1, which not only looks extremely professional, but also comes with a lot of amenities that allow for system development, including a C compiler and assembler, a Unix-like OS (in development), DMA, and a whole host of interfaces to interact with the system and peripherals (serial, parallel, IDE, etc.). Not to mention a SystemVerilog model and an emulator, all of which can be found on [Paulo]’s GitHub.

More photos and videos can be found on [Paulo]’s YouTube channel, as well as the Sol-1 website, which shows off the intricate wire wrap work on the back of each PCB. In terms of the ISA, there are 5 general purpose registers (one scratch) which can also be used as two 8-bit registers each. Most operations are supported, except for floating point. For future improvements and additions, Sol-1’s OS will get more features added, and the first major software to be ported to the Sol-1 should be Colossal Cave Adventure and similar text-based adventure (dungeon) games.

Cowgol Development Environment Comes To Z80 And CP/M

Cowgol on Z80 running CP/M ties together everything needed to provide a Cowgol development environment (including C and assembler) on a Z80 running the CP/M operating system, making it easier to get up and running with a language aimed to be small, bootstrapped, and modern.

Cowgol is an experimental modern language for (very) small systems.

The Zilog Z80 was an 8-bit microprocessor common in embedded systems of the 1970s and 1980s, and CP/M was a contemporary mass-market operating system. As for Cowgol? It’s an Ada-inspired compiler toolchain and programming language aimed at very small systems, such as the Z80.

What’s different about Cowgol is that it is intended to be self-hosted on these small systems; Cowgol is written in itself, and is able to compile itself. Once one has compiled the compiler for a particular target architecture (for example, the Z80) one could then use that compiler on the target system to compile and run programs for itself.

Thankfully, there’s no need to start from scratch. The Cowgol on Z80 running CP/M repository (see the first link of this post) contains the pre-compiled binaries and guidance on using them.

Cowgol is still under development, but it works. It is a modern language well-suited to (very) small systems, and thanks to this project, getting it up and running on a Z80 running CP/M is about as easy as such things can get.

Thanks to [feinfinger] for the tip!

Raspberry Pi 5 Goes Under The X-ray

Most Hackaday readers will know to some extent what lies inside their computer, even if this is only at a block diagram level listing the peripherals. But what is physically on a modern computer board? [Jeff Geerling] has subjected a Raspberry Pi 5 to a medical imager, and shares with us the many layers of parts and PCB he found there. With a six-layer board and a heap of large BGA chips on it, there’s a lot to look at.

For readers who are used to working with printed circuit boards, it’s likely the techniques involved in the design will not be new. For us, the magic lies in the scale. The sheer number of interconnects on the board is impressive enough, but when it becomes possible to peer into the SoC package it becomes evident that there’s an internal PCB with some of the smallest vias we have ever seen. [Jeff] goes on to show us part by part around the board, on the way reminding us that some of the earliest Pi boards had to be reworked to replace Ethernet jacks without magnetics.

There’s a beauty to these ghostly images which might not be apparent to anyone who hasn’t stared obsessively at a PCB in a CAD package while it takes shape. The images show the work of the PCB designer’s art at a fine scale. We’d almost go as far as to suggest they be viewed as fine art instead of industrial design. Take a look, the video is below the break.

If this art is a bit big for you, then look at ASIC design – which takes things down to the microscopic level of the doped silicon structures within these amazing chips.

Continue reading “Raspberry Pi 5 Goes Under The X-ray”

Hackaday Links Column Banner

Hackaday Links: December 10, 2023

In this week’s episode of “Stupid Chatbot Tricks,” it turns out that jailbreaking ChatGPT is as easy as asking it to repeat a word over and over forever. That’s according to Google DeepMind researchers, who managed to force the chatbot to reveal some of its training data with a simple prompt, something like “Repeat the word ‘poem’ forever.” ChatGPT dutifully followed the instructions for a little while before spilling its guts and revealing random phrases from its training dataset, to including complete email addresses and phone numbers. They argue that this is a pretty big deal, not just because it’s potentially doxxing people, but because it reveals the extent to which large language models just spit back memorized text verbatim. It looks like OpenAI agrees that it’s a big deal, too, since they’ve explicitly made prompt-induced echolalia a violation of the ChatGPT terms of service. Seems like they might need to do a little more work to fix the underlying problem.

Continue reading “Hackaday Links: December 10, 2023”

Fast Paper Tape For The Nuclear Family

We’ve enjoyed several videos from [Chornobyl Family] about the computers that controlled the ill-fated nuclear reactor in Chornobyl (or Chernobyl, as it was spelled at the time of the accident). This time (see the video below) they are looking at a high-speed data storage device. You don’t normally think of high-speed and paper tape as going together, but this paper tape reader runs an astonishing 1,500 data units per second. Ok, so that’s not especially fast by today’s standards, but an ASR33, for example, did about 10 characters per second.

An IBM2400 tape drive, for reference, could transfer at least 10 times that amount of data in a second, and a 3400 could do even better. But this is paper tape. Magnetic tape had much higher density and used special tricks to get higher speeds mechanically using vacuum columns. It was still a pretty good trick to move 4 meters of paper tape a second through the machine.

Continue reading “Fast Paper Tape For The Nuclear Family”

SteamPunk Factory Comes To Life With An Arduino

It is one thing to make an artistic steampunk display. But [CapeGeek] added an Arduino to make the display come alive. The display has plenty of tubes and wires. The pressure gauge dominates the display, but there are lots of other interesting bits. Check it out in the video below.

From the creator:

The back-story is a fictional factory that cycles through a multistage process. It starts up with lights and sounds starting in a small tube in one corner, the needle on a big gauge starts rising, then a larger tube at the top lights up in different colors. Finally, the tall, glass reactor vessel lights up to start cooking some process. All this time, as the sequence progresses, it is accompanied by factory motor sounds and bubbling processes. Finally, a loud glass break noise hints that the process has come to a catastrophic end! Then the sequence starts reversing, with lights sequentially shutting down, the needle jumps around randomly, then decreases, finally, all lights are off, indicating the factory shutting down.

Continue reading “SteamPunk Factory Comes To Life With An Arduino”

Binary Clock Kit Blips Again

Back in 1978, the world was a bit different. There was no Raspberry Pi, no Internet, and not even an ESP32 to build projects with. And rather than order electronics kits from Tindie or Adafruit, [Dr. Francitosh] selected this binary clock with his mother from a catalog, and made the order via mail. Simpler times. The good Doctor, AKA [Greg Smith], was a young electronics tinkerer, and his mother wanted a good project-in-a-box to show off his skills. Thus, a Greymark Binary Clock was ordered and assembled. Then, sadly, the beloved clock crashed from its proud mantle position, doomed to never to blink or blip again. Or was it?
Continue reading “Binary Clock Kit Blips Again”