Homebrewing, as the name suggests, is the designing and building of computers, from the ground up, or sometimes from kits. Some homebrew systems have gone on to be the basis of commercial designs. Most early microcomputers were available for construction with levels of commercial component support varying by cost, or as published designs only, usually with a range of options in construction.
[wiki="Image:TVT_Prototype.jpg"]|thumb|right|alt=Early Microcomputers|Early micro systems were often home brew to one degree or another. Included here is the homebrew prototype for the TVT-1 (lower middle) and the COSMAC Elf project (lower left.)[/wiki]
Some vintage computer enthusiasts consider homebrewing to be an important aspect of the vintage computing hobby, giving new enthusiasts an opportunity to experience more fully what the early years of hobby computing were like. There are several different approaches to this end. Some are exact replicas of older systems, and some are newer designs based on the principals of vintage computing, while others combine the two, with old and new features in the same package. One such example is offered by IMSAI, a modern, updated, yet backward-compatible version and replica of the original IMSAI 8080, one of the most popular early personal systems. Several Apple 1 replicas and kits have been sold in limited quantities in recent years, by different builders, such as the "Replica 1", from Briel Computers.
Current projects that use old technology in a new designs are the Z80-based [wiki]N8VEM[/wiki] and [wiki]MAG-85[/wiki], based on the 8085 processor. The N8VEM, designed by Andrew Lynch, is the base of a full-featured system capable of running CP/M, and which is easily expandable. The MAG-85, designed by Mark Graybill, is intended as a limited system, akin to the microprocessor trainers and development systems of the 1970s and 1980s.
[h="2"]Traditional Homebrew Systems[/h]
Another approach for many enthusiasts is to design their own systems from scratch, using design principles such as those presented in Steve Ciarcia's "Build Your Own Z-80 Computer". Or, constructing new computers original project designs such as the [wiki]COSMAC Elf[/wiki] or the reference designs presented in manufacturer's hardware manuals for microprocessors.
[h="2"]Value of Home Brew Construction[/h]
Aside from its value as a form of historical re-enactment, building from scratch teaches the builder new lessons about the operation and maintenance of computer systems. The purpose and operation of individual circuit components must be understood. Troubleshooting techniques must be employed that cannot make basic assumptions about the design or construction of the system, requiring a deeper insight into the circuit, its operation, and the details of its assembly.
Homebrewing may be the only technique for obtaining some systems for use. Certain vintage systems are practically unobtainable, or prohibitively expensive to the hobbyist. Or, a system based on an unusual chipset or architecture may be desired, such as a system based on the 16032 processor or a system built around the SS-50 bus.
A homebrew system may be the best approach for integrating desired feature sets. For example integrating a classic processor with modern memories, storage systems, or support processors may be best achived through a clean sheet design rather than through interfaces to older hardware.
[h="2"]Usage of the Term Homebrew[/h]
The term "homebrew" or home-built varies in usage. In its strictest form, it refers constructing a system of one's own design using only general purpose or self-made components. Looser uses of the term include the use of established designs and prefabricated design-specific components such as printed circuit boards and preprogrammed memories and logic. In general it can be applied to any construction of a computer system at the sub-board level. A system assembled from prefabricated boards is not considered to be homebrew, unless extensive modification or repurposing of those boards for the construction of a unique system has been performed.
===Homebrew Design Principles===
The HoneyPi Project — A Home-brew Computer with Attitude
The HoneyPi Project — A Home-brew Computer with Attitude
This was the title to an article that I wrote for Resurrection, the journal of the Computer Conservation Society here in the UK, back in 2012. That organisation specialises in conserving vintage British computers, so my attempt to create a replica of a Honeywell 200, an American machine, was strictly speaking in no way a British computer conservation project. Nevertheless they found the article interesting enough to publish, which was kind of them.
Having read the definition here of a homebrew project I still think that my description of the HoneyPi Project is as close as one can get. The main memory unit, which I have just completed, is virtually a conservation project, certainly a reconstruction, as it uses original circuit boards for their original purposes and I have only changed the backplane wiring because I wanted to construct the unit in half the space with half the memory capacity of the original ... and didn't have the schematics for the original backplane anyway. In a few cases I didn't have enough boards of some types and had to make replicas, which use PCB's manufactured as nearly identical to the originals as possible apart from some economy in the gold-plated edge connectors and my HoneyPi logo included in the etching to avoid any deception. Even these boards have original components stripped from other unwanted 1960's boards on them as far as possible, the remainder being modern equivalents.
When it comes to the rest of the machine, that will certainly emulate an H200 and be constructed using stock Honeywell components from the 1960's, although many were actually manufactured in the early 1970's to the 1960's design. However, those components are early ICs while the H200 was transistorised, but another machine in the 200 series in production during the 1960's, the 125 I think, came in both transistorised and IC versions during that era. Hence I have described my planned machine as a pastiche, a machine functionally identical to the H200 in all respects including its operating speed, which Honeywell themselves could have constructed from their stock components before 1970 had they chosen to do so.
Hopefully I will eventually get an original H200 control panel for the machine that has been promised to me and put that back into operation, which will add to the confusion.
So, with so much of the detailed design of the internal functions concocted by me to make the best possible use of the available vintage ICs in my stockpile, but the actual functions being virtually the same as in the original, how can one best describe this project and the end result? I think that it will certainly be a very interesting curiosity if there really are no working H200's left on the planet, which seems likely.
Certainly I agree that a major aspect of such a project is to tackle the original problems facing those past designers using just the resources at their disposal to get an idea of what they achieved, but the economic factors are unavoidably different now. They could manufacture as many components as they needed while my stock is strictly limited, but my stock is free while they were designing down to a working cost in order to make a profit. Hence our solutions to the same problems are bound to be different. It is certainly a way to get a feel for the issues faced in that era though. Even my bench power supplies are mainly 1960's technology, although when I discovered just how much power that memory unit was consuming I did sneak in a couple of modern switch mode PSU's to boost the supply, but I don't intend them to be included in the final machine, just in the temporary bench supplies.
So, what's the verdict here? Was my title to that article apposite?
The MOS Technology 6502 was one of the most popular processors of the 8-bit era. It found a home in legendary computers like the Commodore 64, Acorn Electron, BBC Micro, and Apple II. Even the NES had a custom implementation of the 6502. Because the 6502 is so well documented, it is possible for today’s enthusiasts to use it in their own homebrew computers. To enhance their DIY 6502 computer, rehsd used an Arduino to add USB mouse support.
This homebrew computer is a Ben Eater design, which rehsd modified and created a PCB to streamline. It operates like most computers from the late ’70s and early ’80s. Computers back then didn’t support USB mice — the USB standard wouldn’t even exist until 1996. Joysticks were common, but graphical user interfaces and the mice to support them were not. So rehsd had to find a way to get a USB mouse talking to his 6502 processor. They settled on an Arduino Mega as an adapter.
The mouse connects to the Arduino through a USB host shield, which lets the board read data coming from standard USB devices. The Arduino runs a sketch that polls the mouse data and then sends that data to the 6502 through the VIA (Versatile Interface Adapter). It first triggers interrupts on the VIA and then writes the mouse data to the VIA ports. Code written in assembly runs on the 6502 and reads the mouse data after the interrupts. To demonstrate the mouse, rehsd wrote a simple drawing program that would have been a hit in 1978.