Meta’s Ray-Ban Display Glasses And The New Glassholes

It’s becoming somewhat of a running gag that any device or object will be made ‘smart’ these days, whether it’s a phone, TV, refrigerator, home thermostat, headphones or glasses. This generally means somehow cramming a computer, display, camera and other components into the unsuspecting device, with the overarching goal of somehow making it more useful to the user and not impacting its basic functionality.

Although smart phones and smart TVs have been readily embraced, smart glasses have always been a bit of a tough sell. Part of the problem here is of course that most people do not generally wear glasses, between people whose vision does not require correction and those who wear e.g. contact lenses. This means that the market for smart glasses isn’t immediately obvious. Does it target people who wear glasses anyway, people who wear sunglasses a lot, or will this basically move a smart phone’s functionality to your face?

Smart glasses also raise many privacy concerns, as their cameras and microphones may be recording at any given time, which can be unnerving to people. When Google launched their Google Glass smart glasses, this led to the coining of the term ‘glasshole‘ for people who refuse to follow perceived proper smart glasses etiquette.

Continue reading “Meta’s Ray-Ban Display Glasses And The New Glassholes”

Computer Has One Instruction, Many Transistors

There’s always some debate around what style of architecture is best for certain computing applications, with some on the RISC side citing performance per watt and some on the CISC side citing performance per line of code. But when looking at instruction sets it’s actually possible to eliminate every instruction except one and still have a working, Turing-complete computer. This instruction is called subleq or “subtract and branch if less-than or equal to zero“. [Michael] has built a computer that does this out of discrete components from scratch.

We’ll save a lot of the details of the computer science for [Michael] or others to explain, but at its core this is a computer running with a 1 kHz clock with around 700 transistors total. Since the goal of a single-instruction computer like this is simplicity, the tradeoff is that many more instructions need to be executed for equivalent operations. For this computer it takes six clock cycles to execute one instruction, for a total of about 170 instructions per second. [Michael] also created an assembler for this computer, so with an LCD screen connected and mapped to memory he can write and execute a simple “hello world” program just like any other computer.

[Michael] does note that since he was building this from Logisim directly he doesn’t have a circuit schematic, but due to some intermittent wiring issues might have something in the future if he decides to make PCBs for this instead of using wire on a cardboard substrate. There’s plenty of other information on his GitHub page though. It’s a unique project that gets to the core of what’s truly needed for a working computer. There are a few programming languages out there that are built on a similar idea.

Continue reading “Computer Has One Instruction, Many Transistors”

Photo of Microtronic 2090

The Microtronic Phoenix Computer System

A team of hackers, [Jason T. Jacques], [Decle], and [Michael A. Wessel], have collaborated to deliver the Microtronic Phoenix Computer System.

In 1981 the Busch 2090 Microtronic Computer System was released. It had a 4-bit Texas Instruments TMS1600 microcontroller, ran at 500 kHz, and had 576 bytes of RAM and 4,096 bytes of ROM. The Microtronic Phoenix computer system is a Microtronic emulator. It can run the original firmware from 1981.

Between them the team members developed the firmware ROM dumping technology, created a TMS1xxx disassembler and emulator, prototyped the hardware, developed an Arduino-based re-implementation of the Microtronic, designed the PCB, and integrated the software.

Unlike previous hardware emulators, the Phoenix emulator is the first emulator that is not only a re-implementation of the Microtronic, but actually runs the original TMS1600 firmware. This wasn’t possible until the team could successfully dump the original ROM, an activity that proved challenging, but they got there in the end! If you’re interested in the gory technical details those are here: Disassembling the Microtronic 2090, and here: Microtronic Firmware ROM Archaeology. Continue reading “The Microtronic Phoenix Computer System”

A Breadboard Computer In Three Chips

Building a computer on a breadboard is a seminal project for many builders, but it can become complicated quite quickly, not to mention that all the parts needed for a computer are being placed on a medium which often lends itself to loose wires and other hardware bugs. [3DSage] has a working breadboard computer that is as simple as it can possibly be, putting it together piece by piece to show exactly what’s needed to get a computer which can count, access memory, and even perform basic mathematical operations.

The first step for any computer is to build a clock, and in this case it’s being provided by a 555 timer which is configured to provide an adjustable time standard and which steps through the clock pulses when a button is pressed. The next piece is a four-bit counter and a memory chip, which lets the computer read and write data. A set of DIP switches allows a user to write data to memory, and by using the last three bits of the data as opcodes, the computer can reset, halt, and jump to various points in a simple program.

Although these three chips make it possible to perform basic programming, [3DSage] takes this a bit further in his video by demonstrating some other simple programs, such as one which can play music or behave as an alarm clock. He also shows how to use a fourth chip in the form of a binary adder to perform some basic math, and then packages it all into a retro-styled computer kit. Of course you can take these principles and build them out as far as they will go, like this full 8-bit computer built on a breadboard or even this breadboard computer that hosts a 486.

Continue reading “A Breadboard Computer In Three Chips”

Analog Optical Computer For Inference And Combinatorial Optimization

Although computers are overwhelmingly digital today, there’s a good point to be made that analog computers are the more efficient approach for specific applications. The authors behind a recent paper in Nature are arguing that inference – essential for LLMs – can be done significantly more efficiently using an analog optical computer (AOC).

As the authors describe it, the function of this AOC is to perform a fixed-point search using only optical and analog electronic components. The optics handle the matrix-vector multiplications, while the analog components handle the non-linear operations, subtractions and annealing. This is performed in 20 ns cycles until noise has been reduced to an acceptable level, considering the analog nature of the computer. A big advantage here is that no analog-digital conversions are required as with other (digital) hybrid systems.

So far a small-scale AOC has been constructed for tasks like image classification and non-linear regression tasks, with the authors claiming the AOC being over a hundred times more efficient than current GPU-derived vector processors.

Scott holding the demo board which has a 7-segment display and keyboard attached

4-bit Single Board Computer Based On The Intel 4004 Microprocessor

[Scott Baker] is at it again and this time he has built a 4-bit single board computer based on the Intel 4004 microprocessor.

In the board design [Scott] covers the CPU (both the Intel 4004 and 4040 are supported), and its support chips: the 4201A clock-generator, its crystal, and the 4289 Standard Memory Interface. The 4289 irons out the 4-bit interface for use with 8-bit ROMs. Included is a ATF22V10 PLD for miscellaneous logic, a 74HCT138 for chip-select, and a bunch of inverters for TTL compatibility (the 4004 itself uses 15 V logic with +5 V Vss and -10 V Vdd).

[Scott] goes on to discuss the power supply, ROM and page mapper, the serial interface, the RC2014 bus interface, RAM, and the multimodule interface. Then comes the implementation, a very tidy custom PCB populated with a bunch of integrated circuits, some passive components, a handful of LEDs, and a few I/O ports. [Scott] credits Jim Loo’s Intel 4004 SBC project as the genesis of his own build.

If you’re interested in seeing this board put to work check out the video embedded below. If you’d like to know more about the 4004 be sure to check out Supersize Your Intel 4004 By Over 10 Times, The 4004 Upgrade You’ve Been Waiting For, and Calculating Pi On The 4004 CPU, Intel’s First Microprocessor.

Continue reading “4-bit Single Board Computer Based On The Intel 4004 Microprocessor”

A photo of two magnetic bubble memories installed in a circuit board

Scott Baker’s Magnetic Bubble Memory Mega-Post

Over on his blog our hacker [Scott Baker] has a Magnetic Bubble Memory Mega-Post.

If you haven’t heard of magnetic bubble memory before it’s basically obsolete nonvolatile memory. Since the 1970s when it was introduced this type of memory has been outperformed in every dimension including durability, reliability, price, density, performance, and so on. For any given application of bubble memory you will be able to find an alternative technology which is better in many ways. Except if you want some old tech to geek out over, in that case magnetic bubble memory is for you!

Continue reading “Scott Baker’s Magnetic Bubble Memory Mega-Post”