Chip Letter Links No.11: NEC V20, Psion, Richard Feynman, Xmas Trees
Great links, reading and images for 18 December 2022
Hi everyone and thanks for subscribing. This is one of a regular series of posts with links, images and articles of interest, inspired by Adam Tooze’s excellent Chartbook. Incidentally Adam Tooze recently shared his early computing experiences: writing Basic on a TRS80.
Each edition starts with a beautiful die image. This week we have an Intel Bloomfield / Gainestown courtesy of Martijn Boer.
If you’re enjoying the newsletter then the biggest thing you can do to help it continue and grow is to share with others who might enjoy. Many thanks again!
Chip Wars
First of all, congratulations to Chris Miller on winning the Financial Times Business Book of the Year for ‘Chip War’. It’s a great book and not only if you’re interested in the geopolitics of semiconductors. Most of the book is an expansive laying out of the history of the global semiconductor industry. Miller gave a really good talk which was captured on YouTube earlier this year.
I had a look in more detail at the book soon after its publication in October:
Chip of the Week: NEC V20
A new regular feature: ‘Chip of the Week’. A short look at an interesting semiconductor from the past. This week the NEC V20.
In the mid 1980s the IBM PC, and with it Intel’s microprocessors, were starting to dominate. So it was natural that competitors would emerge with clones.
The NEC V20 is fascinating for a number of reasons. It was in and code compatible with the 8088 but was significantly faster. It extended the 8086 instruction set. It also offered a mode that allowed the V20 to emulate an 8080 or even to mix 8080 and 8086 code together. From Wikipedia:
The V20 offered a mode that emulated an Intel 8080 CPU. A
BRKEM
instruction is issued to start 8080 emulation. … To end, aRETEM
instruction is issued in 8080 code. One feature not often employed … enables x86 code … to be mixed in with 8080 code.
Intel sued NEC a number of times, including in 1984 when they alleged that NEC had copied their microcode. Intel lost, in part, on the grounds that a copyright notice had not been included on the dies of some of the 8086’s clones.
The V20 had a number of successors that added new features. The V30 was pin compatible with the 8086. The V33 extended the addressable memory size to 16MB from 1MB and had performance that matched Intel’s 80286 (but wasn't code compatible with the 80286).
8088 Based Personal Digital Assistants
I used to own a Psion Series 3a (1993) which was powered by the NEC V30. It was a surprisingly capable little machine that packed a fully keyboard into a pocket sized device.
Psion started out as a company making software for the early British home computers, most notably the ZX Spectrum but then switched to making pocket computers. The Series 5 would use an Arm CPU and the software for that machine would become the basis for the (now abandoned) Symbian mobile phone operating system used by Nokia and others.
There is an almost parallel story around another early 1990s PDA. Palm Computing started out making software for another machine: the Tandy Zoomer. Bryan Lunduke had a great post recently it which he outlines the full story..
It’s amazing that a pocket sized machine with a (stylus based) touch screen could be workable as early as 1992.
Book of the Week: Feynman Lectures on Computation
Richard Feynman is famous for many things: his work on quantum electrodynamics, Feynman diagrams, his teaching, playing the bongos even.
Lesser known is his interest in and teaching on the topic of computation. He spent this last six years working on computation and was a corporate fellow at Thinking Machines Corporation.
His book ‘Feynman Lectures on Computation’ (non-affiliate link) provides an engrossing overview of the physical basis of computing with a surprisingly wide remit. Drawn together from a number of different lecture series that Feynman gave in the 1980s it includes sections on Turing Machines, Information Theory and even Quantum Mechanical Computers.
We can also watch Feynman lecture on Computer Science in this video from 1985. Not the full range of the book but fascinating nonetheless.
Bare Metal Computing
If like me you’ve always been intrigued by the notion of ‘bare metal’ computing (i.e. computing without an operating system) but have struggled to find resources then this GitHub repository might be useful.
It focuses on an STM32 Microcontroller (Arm Cortex M4 based) but takes you through in a readable but comprehensive way (the README is 62 pages long so it’s really a short book on the topic).
Doom on an Xmas Tree Bauble
It’s that time of the year so what else should we do but create Xmas tree ornaments that - can play Doom!
You’ll want to know the hardware. From the page with technical details.
All in all, I went for an ESP32C3. It's a RiscV-based SoC that runs at 160MHz, so a fluid Doom experience shouldn't be an issue. It has 400K of SRAM as well, so the GBA version of Doom should fit nicely, with room to spare for other things.
That’s it for this week. There will be no Chip Letter until after 25 December. Thanks so much for reading and hope you have a fun, happy and safe Xmas.
Photo Credits
NEC V20
By Konstantin Lanzet - CPU collection Konstantin Lanzet, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=6188071
NEC V30 Die Shot
By Pauli Rautakorpi - Own work, CC BY 3.0, https://commons.wikimedia.org/w/index.php?curid=29962446
I loved how so many companies tried different things like emulating an 8088 with the V20s. Commodore had their 128 which also included a Z80 capable of running C/PM. Sometimes it seems like we’ve lost that spirit of experimentation... at least on the hardware side of things.
Thanks for the STM programming book link! MCU/embedded programming has been on my todo list for some time after mostly immersed in the x86 platform.
Have you seen MS-DOS demos aka "demoscene"? This is essentially bare metal programming on x86 with low level direct GPU programming before there were even such things as GPUs with the programmer having to implement his own rendering engine, translating 3D primitives to 2D primitves to VESA calls, bit blitting, etc and real time sound sythesis and/or with sampling. Later demos made use of the MIDI wavetable sound cards, which are now obsolete due to how powerful CPU software based synthesis has become. Heck, one could do bare metal assembly in DOS with the debug command. Back in the day there were a variety contests that also had interesting constraints such as size constraints e.g. 4k, 64k. Some interesting really tiny ones are even done in real-mode.