The Pentium Processor’s Innovative (and Complicated) Method Of Multiplying By Three, Fast

[Ken Shirriff] has been sharing a really low-level look at Intel’s Pentium (1993) processor. The Pentium’s architecture was highly innovative in many ways, and one of [Ken]’s most recent discoveries is that it contains a complex circuit — containing around 9,000 transistors — whose sole purpose is to multiply specifically by three. Why does such an apparently simple operation require such a complex circuit? And why this particular operation, and not something else?

Let’s back up a little to put this all into context. One of the feathers in the Pentium’s cap was its Floating Point Unit (FPU) which was capable of much faster floating point operations than any of its predecessors. [Ken] dove into reverse-engineering the FPU earlier this year and a close-up look at the Pentium’s silicon die shows that the FPU occupies a significant chunk of it. Of the FPU, nearly half is dedicated to performing multiplications and a comparatively small but quite significant section of that is specifically for multiplying a number by three. [Ken] calls it the x3 circuit.

The “x3 circuit”, a nontrivial portion of the Pentium processor, is dedicated to multiplying a number by exactly three and contains more transistors than an entire Z80 microprocessor.

Why does the multiplier section of the FPU in the Pentium processor have such specialized (and complex) functionality for such an apparently simple operation? It comes down to how the Pentium multiplies numbers.

Multiplying two 64-bit numbers is done in base-8 (octal), which ultimately requires fewer operations than doing so in base-2 (binary). Instead of handling each bit separately (as in binary multiplication), three bits of the multiplier get handled at a time, requiring fewer shifts and additions overall. But the downside is that multiplying by three must be handled as a special case.

[Ken] gives an excellent explanation of exactly how all that works (which is also an explanation of the radix-8 Booth’s algorithm) but it boils down to this: there are numerous shortcuts for multiplying numbers (multiplying by two is the same as shifting left by 1 bit, for example) but multiplying by three is the only one that doesn’t have a tidy shortcut. In addition, because the result of multiplying by three is involved in numerous other shortcuts (x5 is really x8 minus x3 for example) it must also be done very quickly to avoid dragging down those other operations. Straightforward binary multiplication is too slow. Hence the reason for giving it so much dedicated attention.

[Ken] goes into considerable detail on how exactly this is done, and it involves carry lookaheads as a key element to saving time. He also points out that this specific piece of functionality used more transistors than an entire Z80 microprocessor. And if that is not a wild enough idea for you, then how about the fact that the Z80 has a new OS available?

Tearing Down A Vintage Word Processor

There was a time when the line between typewriters and word processing software was a bit fuzzy. [Poking Technology] found a Xerox 6040 which can’t decide what it is. It looks like a typewriter but has a monitor and a floppy drive, along with some extra buttons. You can watch him tear it down in the video below.

The old device uses a daisywheel type element, which, back then, was state of the art. A wheel had many spokes with letters and the printer would spin the wheel and then strike the plastic spoke.

Continue reading “Tearing Down A Vintage Word Processor”

Run Xbox 360 Games On Your PC With XenonRecomp

Inspired by the N64: Recompiled project, XenonRecomp does something similar, except for the PowerPC-equipped Microsoft Xbox 360 game console. Based around the triple-core IBM CPU codenamed ‘Xenon‘, the Xbox 360 was released in 2005 and generally quite successful over its lifespan despite its Red Ring of Death issues. Although the current Xbox Series X supports running a number of Xbox 360 games, this is done via emulation and only 632 games out of 2,155 are supported.

This is where XenonRecomp not only promises turning the games into native (x86) software, but also allowing for a range of graphical improvements. Best of all, it allows for Xbox 360 games to be preserved instead of linked to an obsolete console. That said, much like with N64Recomp, it’s not a simple matter of running a tool over the PPC binary. You’re expected to have in-depth systems knowledge, with the tools in XenonRecomp assisting with the decompilation (into C++) and the recompilation into x86 binaries, but support for PPC instructions, VMX (vector instructions) and aspects like jump table conversion and (currently missing) MMIO support are likely to present an enterprising developer with hours of fun to implement and debug when issues arise.

Continue reading “Run Xbox 360 Games On Your PC With XenonRecomp”

The Future We Never Got, Running A Future We Got

If you’re familiar with Java here in 2025, the programming language you know is a world away from what Sun Microsystems planned for it in the mid-1990s. Back then it was key to a bright coffee-themed future of write-once-run-anywhere software, and aside from your web browser using it to run applications, your computer would be a diskless workstation running Java bytecode natively on the silicon.

What we got was slow and disappointing Java applets in web pages, and a line of cut-down SPARC-based JavaStations which did nothing to change the world. [FatSquirrel] has one of these machines, and a quarter century later, has it running NetBSD. It’s an interesting journey both into 1990s tech, and some modern-day networking tricks to make it happen.

These machines suffer as might be expected, from exhausted memory backup batteries. Fortunately once the serial port has been figured out they drop you into an OpenBoot prompt, which, in common with Apple machines in the ’90s, gives you a Forth interpreter. There’s enough info online to load the NVRAM with a config, and the machine stuttered into life. To do anything useful takes a network with RARP and NFS to serve an IP address and disk image respectively, which a modern Linux machine is quite happy to do. The resulting NetBSD machine maybe isn’t as useful as it could be, but at risk of angering any Java enthusiasts, perhaps it’s more useful than the original JavaOS.

We remember the promise of a Java-based future too, and tasted the bitter disappointment of stuttering Java applets in our web pages. However, given that so much of what we use now quietly runs Java in the background without our noticing it, perhaps the shade of Sun Microsystems had the last laugh after all. This isn’t the first ’90s machine that’s been taught new tricks here, some of them have received Java for the first time.

Speaking Computers From The 1970s

Talking computers are nothing these days. But in the old days, a computer that could speak was quite the novelty. Many computers from the 1970s and 1980s used an AY-3-8910 chip and [InazumaDenki] has been playing with one of these venerable chips. You can see (and hear) the results in the video below.

The chip uses PCM, and there are different ways to store and play sounds. The video shows how different they are and even looks at the output on the oscilloscope. The chip has three voices and was produced by General Instruments, the company that initially made PIC microcontrollers. It found its way into many classic arcade games, home computers, and games like Intellivision, Vectrex, the MSX, and ZX Spectrum. Soundcards for the TRS-80 Color Computer and the Apple II used these chips. The Atari ST used a variant from Yamaha, the YM2149F.

There’s some code for an ATmega, and the video says it is part one, so we expect to see more videos on this chip soon.

General instruments had other speech chips, and some of them are still around in emulated form. In fact, you can emulate the AY-3-8910 with little more than a Raspberry Pi.

Continue reading “Speaking Computers From The 1970s”

Copying Commodore Data Tapes, 40 Years Late

Unless you handle the backups for a large corporation, bank, or government entity, you likely haven’t stored much data to tape recently. But magnetic storage used to be fairly mainstream back in the 1980s for all kinds of computer programs. Plenty of computers used standard cassette tapes for this too but you couldn’t just copy them with standard audio equipment. You’d need something like this 1560 datasette from [Jan].

The core problem with using Hi-Fi equipment to copy tapes storing data instead of audio is that data tapes need to be much more precise in order to avoid losses that might not be noticeable in an audio recording. In the 80s computer companies like Commodore built tape drives specifically for their computers, so [Jan]’s project uses two of these 1530 drives to build this “1560” datasette. (No working 1530 hardware was harmed in this build.) An inverter circuit in one tape deck is used to provide the signal to write the data to the other tape, reliably copying data from these data tapes in a way Hi-Fi never could.

[Jan] does lament not having something like this back in the 80s when the Commodore was in its heyday, but there’s still a dedicated retrocomputing scene for these machines that will get plenty of use out of projects like this. If you need to go the other direction in time, there are also interfaces that allow data tapes from old Commodores to be read by modern computers with USB.

Continue reading “Copying Commodore Data Tapes, 40 Years Late”

LCD Stackup Repair: Not For The Faint Of Heart

Coming straight to the point: [Ron Hinton] is significantly braver than we are. Or maybe he was just in a worse situation. His historic Acer K385s laptop suffered what we learned is called vinegar syndrome, which is a breakdown in the polarizers that make the LCD work. So he bit the bullet and decided to open up the LCD stack and replace what he could.

Nothing says “no user serviceable parts inside” quite like those foil-and-glue sealed packages, but that didn’t stop [Ron]. Razor blades, patience, and an eye ever watchful for the connectors that are seemingly everywhere, and absolutely critical, got the screen disassembled. Installation of the new polarizers was similarly fiddly.

In the end, it looks like the showstopper to getting a perfect result is that technology has moved on, and these older screens apparently used a phase correction layer between the polarizers, which might be difficult to source these days. (Anyone have more detail on that? We looked around and came up empty.)

This laptop may not be in the pantheon of holy-grail retrocomputers, but that’s exactly what makes it a good candidate for practicing such tricky repair work, and the result is a readable LCD screen on an otherwise broken old laptop, so that counts as a win in our book.

If you want to see an even more adventurous repair effort that ended in glorious failure, check out [Jan Mrázek]’s hack where he tries to convert a color LCD screen to monochrome, inclusive of scraping off the liquid crystals! You learn a lot by taking things apart, of course, but you learn even more by building it up from first principles. If you haven’t seen [Ben Krasnow]’s series on a completely DIY LCD screen, ITO-sputtering and all, then you’ve got some quality video time ahead of you.