Over the last few years, we’ve seen projects and products slowly move from 8-bit microcontrollers to more powerful ARM microcontrollers. The reason for this is simple — if you want to do more stuff, like an Internet-connected toaster, you need more bits, more Flash, and more processing power. This doesn’t mean 8-bit microcontrollers are dead, though. Eight bit micros are still going strong, and this week Microchip announced their latest family of 8-bit microcontrollers.
The PIC16F15386 family of microcontrollers is Microchip’s latest addition to their portfolio of 8-bit chips. This family of microcontrollers is Microchip’s ‘everything and the kitchen sink’ 8-bit offering. Other families of PICs have included features such as a complementary waveform generator, numerically controlled oscillator, a configurable logic controller, power saving functionality and the extreme low power features, but never before in one piece of silicon.
This feature-packed 8-bit includes a few new tricks not seen before in previous Microchip offerings. Of note are power management features (IDLE and DOZE modes), and a Device Information Area on the chip that contains factory-calibrated data (ADC voltage calibration and a fixed voltage reference) and an ID unique to each individual chip.
As you would expect from a new family of PICs, the 16F15386 is compatible with the MPLAB Xpress IDE and the MPLAB Code Configurator, a graphical programming environment. The products in the family range from 8-pin packages (including DIP!) with 3.5kB of program Flash to 48-pin QFPs with 28kB of program Flash. The goal for Microchip is to provide a wide offering, allowing designers to expand their builds without having to change microcontroller families.
All of these chips can be sampled now, although the lower pin count devices won’t be available through normal means until next month.
The Apple II was the machine that many say launched Apple as a company. As with many popular computers of the 1980s, the Apple II maintains a steady following to this day who continue to develop new hardware and software to keep the platform alive.
[deater] had scored an Uthernet II Ethernet interface for his Apple IIe, based off the venerable W5100 chipset. He decided to have some fun and wrote a webserver for the Apple II in BASIC. The program sets up the Ethernet card with a series of PEEKs and POKEs, and then listens out for incoming packets before responding with the requisite data loaded from floppy disk.
The server can deal with HTML, text, and even JPEG and PNG images. It’s even compliant with RFC 2324. It does suffer from some limitations however — the disk format used can only hold 140 kB, it can only serve an 8kB file at a time, and due to using a lot of string manipulation in the code, is painstakingly slow.
Before you get too excited, the machine is running on a local network only, so you can’t check it out from here. However, [deater] has kindly released the source code if you wish to run it for yourself.
If you’re thirsty for more 8-bit action, check out this Apple II playing animated GIFs.
In the early 1980s when the 8-bit microcomputer boom was well under way, [Alan Faulds] was a student, and an owner of a Sinclair ZX81. He had ambitions to use it, in his words, “to control the world“, but since the Sinclair lacked an I/O port he was thwarted. He bought an expander board and a couple of I/O card PCBs from the British electronic supplier Maplin in the days when they were a mail order parts stockist rather than a chain of stores chasing Radio Shack’s vacated retail position.
Sadly for [Alan], he didn’t have the cash to buy all the parts to populate the boards, then the pressures of a final year at university intervened, and he never built those Maplin kits. They sat forgotten in their padded envelope for over three decades until a chance conversation with a friend reminded him of his unfinished student project. He sought it out, and set about recreating the board.
The ZX81 had a single port: a PCB edge connector at its rear that exposed all the Z80 processor’s lines. It was notorious for unreliability, as the tiniest vibration when a peripheral was connected would crash the machine. Maplin’s expansion system featured a backplane with a series of edge connector sockets, and cards with bare PCB edge connectors. Back in the 1980s it was easy to find edge connectors of the right size with the appropriate key installed, but not these days. [Alan] had to make one himself for his build.
The I/O card with its 8255 and brace of 74 series chips was a double-sided affair with vias made through the use of little snap-off hand-soldered pins. [Alan] put his ICs in sockets, a sensible choice given that when he powered it up he found he’d put a couple of the 74 chips in the wrong positions. With that error rectified the board worked exactly as it should, giving the little ZX three I/O ports, albeit with one of them a buffered output.
We haven’t featured the little Sinclair micro as often as we should have here at Hackaday, it seems to have been overshadowed by its ZX Spectrum successor. We did show you a VGA ZX81 emulated on an mbed though, and a rather neat color video hack for its Brazilian cousin.
[Tez] has acquired and resurrected a piece of New Zealand computing history, the Poly-1. To anyone who went to school in 1980s Britain, the Poly-1 appears to be a cooler, mirror universe version of Acorn’s BBC Micro. Like the humble Beeb, the Poly-1 was designed primarily for educational use. It also used a related, but superior, microprocessor (the Motorola 6809).
However while the legacy of Acorn lives on in the ARM architecture, only a few thousand Poly-1s were ever sold and it appears to have been largely forgotten.
The Poly-1’s demise was likely in part due to its high price tag — around $5,000 USD — its lack of support within New Zealand, and the difficulty that the small New Zealand company had breaking into international markets: issues which eventually killed off many similar 1980s computer companies in the UK, Japan and elsewhere.
But it’s still fascinating to look back, not just in nostalgia, but in admiration of the intrepid 1980s hackers who created these beautiful machines and the dream of a world that might have been.
As hackers and makers we are surrounded by accessible computing in an astonishing diversity. From tiny microcontrollers to multi-processor powerhouses, they have become the universal tool of our art. If you consider their architecture though you come to a surprising realisation. It is rare these days to interface directly to a microprocessor bus. Microcontrollers and systems-on-chip have all the functions that were once separate peripherals integrated into their packages, and though larger machines such as your laptop or server have their processor bus exposed you will never touch them as they head into your motherboard’s chipset.
A few decades ago this was definitely not the case. A typical 8-bit microprocessor of the 1970s had an 8-bit data bus, a 16-bit address bus, and a couple of request lines to indicate whether it wanted to talk to memory or an I/O port. Every peripheral you connected to it had to have some logic to decode its address and select it when you wanted to use it, and all shared the processor’s bus. This was how those of us whose first computers were the 8-bit machines of the late 1970s and early 1980s learned the craft of computer hardware, and in a world of Arduino and Raspberry Pi this now seems a lost art.
The subject of today’s review then provides a rare opportunity for the curious hardware hacker to get to grips with a traditional microprocessor bus. The RC2014 is a modular 8-bit computer in which daughter cards containing RAM, ROM, serial interface, clock, and Z80 processor are ranged on a backplane board, allowing complete understanding of and access to the workings of each part of the system. It comes with a ROM BASIC, and interfaces to a host computer through a serial port. There is also an ever-expanding range of further peripheral cards, including ones for digital I/O, LED matrixes, blinkenlights, a Raspberry Pi Zero for use as a VDU, and a small keyboard.
Continue reading “Review: The RC2014 Z80 Computer”
After a certain age, computers start to show signs that they might need to be replaced or upgraded. After even more time, it starts getting hard to find parts to replace the failing components. And, as the sands slip through the hourglass, the standards used to design and build the computer start going obsolete. That’s the situation that [Drygol] found himself in when he was asked to build a SD-card hard drive for an Atari.
The 8-bit Atari in question was a fixture of home computing in the 80s. In fact, if you weren’t on the Commodore train, it’s likely that your computer of choice was an Atari. For the nostalgic among us, a new hard drive for these pieces of history is a great way to relive some of the past. Working off of information from the SIO2SD Wiki page, [Drygol] used the toner transfer method to build a PCB, 3D printed a case, and got to work on his decades-old computer.
Resurrecting old hardware is a great way to get into retrocomputing. Old protocols and standards are worth investigating because they’re from a time where programmers had to make every bit count, and there are some gems of genius hidden everywhere. Whether you’re reworking SIO from an old Atari, or building a disk emulator for an Apple ][, there are lots of options.
If you’ve read through the comments on Hackaday, you’ve doubtless felt the fires of one of our classic flame-wars. Any project done with a 32-bit chip could have been done on something smaller and cheaper, if only the developer weren’t so lazy. And any project that’s squeezes the last cycles of performance out of an 8-bit processor could have been done faster and more appropriately with a 32-bit chip.
Of course, the reality for any given project is between these two comic-book extremes. There’s a range of capabilities in both camps. (And of course, there are 16-bit chips…) The 32-bit chips tend to have richer peripherals and run at higher speeds — anything you can do with an 8-bitter can be done with its fancier cousin. Conversely, comparatively few microcontroller applications outgrow even the cheapest 8-bitters out there. So, which to choose, and when?
Eight Bits are Great Bits
The case that [Mike] makes for an 8-bit microcontroller is that it’s masterable because it’s a limited playground. It’s a lot easier to get through the whole toolchain because it’s a lot shorter. In terms of debugging, there’s (often) a lot less that can go wrong, letting you learn the easy debugging lessons first before moving on to the truly devilish. You can understand the hardware peripherals because they’re limited.
And then there’s the datasheets. The datasheet for a chip like the Atmel ATMega168 is not something you’d want to print out, at around 660 pages long. But it’s complete. [Mike] contrasts with the STM32F405 which has a datasheet that’s only 200 pages long, but that’s just going over the functions in principle. To actually get down to the registers, you need to look at the programming manual, which is 1,731 pages long. (And that doesn’t even cover the various support libraries that you might want to use, which add even more to the documentation burden.) The point is, simpler is simpler. And if you’re getting started, simpler is better.
Continue reading “Mike Szczys Ends 8-Bit vs 32-Bit Holy War!”