Hands up if you’ve ever used a machine running CP/M. That’s likely these days to only produce an answer from owners of retrocomputers. What was once one of the premier microcomputer operating systems is now an esoteric OS, a piece of abandonware released as open source by the successor company of its developer.
In the 1970s you’d have seen CP/M on a high-end office wordprocessor, and in the 1980s some of the better-specified home computers could run it. And now? Aside from those retrocomputers, how about running CP/M on an ESP8266? From multi-thousand-dollar business system to two-dollar module in four decades, that’s technological progress.
[Matseng] has CP/M 2.2 running in a Z80 emulator on an ESP8266. It gives CP/M 64K of RAM, a generous collection of fifteen 250K floppy drives, and a serial port for communication. Unfortunately it doesn’t have space for the ESP’s party piece: wireless networking, but he’s working on that one too. If you don’t mind only 36K of RAM and one less floppy, that is. All the code can be found on a GitHub repository, so if you fancy a 1970s business desktop computer the size of a postage stamp, you can have a go too.
There’s something gloriously barmy about running a 1970s OS on a two-dollar microcontroller, but if you have to ask why then maybe you just don’t understand. You don’t have to have an ESP8266 though, if you want you can run a bare-metal CP/M on a Raspberry Pi.
When our new computer overlord arrives it’ll likely give orders using an electromagnetic speaker (or more likely, by texting instead of talking). But for a merely artificial human being, shouldn’t we use an artificial mouth with vocal cords
chords, nasal cavity, tongue, teeth and lips? Work on such a thing is scarce these days, but [Martin Riches] developed a delightful one called MotorMouth between 1996 and 1999.
It’s delightful for its use of a Z80 processor and assembly language, things many of us remember fondly, as well as its transparent side panel, allowing us to see the workings in action. As you’ll see and hear in the video below, it works quite well given the extreme difficulty of the task.
Continue reading “MotorMouth For Future Artificial Humans”
We’ve seen a lot of retro builds around the Z80. Not many are as neatly done or as well-documented as [dekeNukem’s] FAP80 project. Before you rush to the comments to make the obvious joke, we’ll tell you that everyone has already made up their own variation of the same joke. We’ll also tell you the name is a cross between an old design from [Steve Ciarcia] called the ZAP80 and a reference to the FPGA used in this device.
[dekeNukem] says his goal was to create a Z80 computer without all the baggage of using period-correct support chips. You can argue about the relative merits of that approach versus a more purist build, but the FAP80 has a 5 slot backplane, VGA output, a PS/2 keyboard port and more. You can see one of many videos showing the machine below.
Continue reading “The Impressive Z80 Computer With The Unfortunate Name”
The Intel 8085 microprocessor was introduced 40 years back, and along with its contemporaries — the Z80 and the 6502 — is pretty much a dinosaur in terms of microprocessor history. But that doesn’t stop it from still being included in the syllabus for computer engineering students in many parts of the world. The reason why a 40 year old microprocessor is still covered in computer architecture text books instead of computer history is a bit convoluted. But there’s a whole industry that thrives on the requirements of college laboratories and students requiring “8085 Microprocessor Training Kits”. [TisteAndii] just finished college in Nigeria, where these kits are not locally built and need to be imported, usually costing well over a 100 dollars.
Which is why his final year project was a low cost Intel 8085 Microprocessor Trainer. It’s a minimalist design with some basic read/write memory, program execution and register inspection, with no provision for single stepping or interrupts yet. The monitor program isn’t loaded in an EEPROM. Instead, a PIC18 is used and connected to the 8085 address, data and control pins. This makes it easier to write a monitor program in C instead of assembly. And allows use of a 1.8″ LCD with SPI interface instead of the more usual 7-segment displays used for these kind of kits. [TisteAndii] built a 6×4 keyboard for input, but couldn’t solve debounce issues and finally settled on a 5×4 membrane keypad.
Being a rookie, he ended up with a major flaw in his board layout — he missed connecting the SRAM and the PPI devices to the data bus. A bunch of jumper links seemed to solve the issue, but it wasn’t perfect. This, and a few other problems gave him a lot of grief, but towards the end, it all worked, almost. Most importantly, his BoM cost of about $35 makes it significantly cheaper compared to the commercial units available in Nigeria.
While some hackers may consider this a trivial project, it solves a local problem and we hope the next iteration of the design improves the kit and makes it more accessible.
At the end of the 1970s, the 8-bit home computer market had been under way for several years. Companies like Apple and Commodore had produced machines that retain a cult following to this day, and there was plenty for the computer enthusiast to get to grips with. As always though with a new technology, the trouble was that an Apple II or a Commodore Pet wasn’t cheap. If you didn’t have much cash, or you were a young person with uncomprehending or impoverished parents, they were out of reach. You could build a computer from a kit if you were brave or technically competent enough, but otherwise you were out of luck.
As you might imagine, the manufacturers understood that there was an untapped market for cheaper hardware, so as we entered the new decade a range of budget machines that appeared to satisfy that demand. Gone were internal expansion slots, dedicated monitors and mass storage, for cheap keyboards, domestic TV monitors, and home cassette recorders. 1980s teenagers would have computers of their own, their parents safe in the knowledge they were educational while the kids themselves were more interested in the games. Continue reading “A Thoroughly Modern Sinclair ZX80”
Sure, you’d like to get in on all the retrocomputing action you read about on Hackaday. But that takes a lot of money to buy vintage hardware, right? Sure, you can build your own, but who has time for a big major project? [Just4Fun] has a Hackaday.io project that disproves those two myths and gives you no more excuses. His retrocomputer? A 4MHz Z80 that can run BASIC with 64K of RAM, all built on a breadboard with 4 ICs. The cost? About $4.
Of course, that’s with some power shopping on eBay and assuming you have the usual stuff like breadboards, wire, small components, and a power supply. While it will gall the anti-Arduino crowd, [Just4Fun] uses an Arduino (well, an ATmega32A with the Arduino bootloader) to stand in for a host of Z80 peripheral devices. You can see a video of the device below, and there are more on the Hackaday.io project page.
Continue reading “Retrocomputing for $4 with a Z80”
Retrocomputing is an enjoyable and educational pursuit and — of course — there are a variety of emulators that can let you use and program a slew of old computers. However, there’s something attractive about avoiding booting a modern operating system and then emulating an older system on top of it. Part of it is just aesthetics, and of course the real retrocomputing happens on retro hardware. However, as a practical matter, retrocomptuters break, and with emulation, you’d assume that CPU cycles spent on the host operating system (and other programs running in the background) will take away from the target retrocomputer.
If you want to try booting a “bare metal” Z80 emulator with CP/M on a Raspberry Pi, you can try EMUZ80 RPI. The files reside on an SD card and the Pi directly boots it, avoiding any Linux OS (like Raspian). It’s available for the Raspberry Pi Model B, A+, and the Raspberry Pi 2 Model B. Unlike the significant boot times of the standard Linux distros on the earliest models of Pi, you can boot into CP/M in just five seconds. Just like the old days.
The secret to this development is an open source system known as Ultibo, a framework based on Open Pascal which allows you to create bare metal applications for the Raspberry Pi. The choice of Free Pascal will delight some and annoy others, depending on your predilections. Ultibo is still very much in active development, but the most common functions are already there; you can write to the framebuffer, read USB keyboards, and write to a serial port. That’s all you really need to make your own emulator or write your own Doom clone. You can see a video about Ultibo (the first of a series) below.
Continue reading “Raspberry Pi Boots CP/M”