[Martin Malý] has put together a sweet little 8085-based single board computer called OMEN. He needed a simple one for educational purposes, and judging by the schematic we think he’s succeeded.
Now in its fourth iteration, it has a 32K EEPROM, 32K of memory, one serial and three parallel ports. In the ROM he’s put Tiny BASIC and Dave Dunfield’s MON85 Serial Monitor with Roman Borik’s improvements. His early demos include the obligatory blinking LED, playing 8-bit music to a speaker, and also a 7-segment LED display with a hexadecimal keyboard. There is also a system connector which allows you to connect a keyboard, a display, and other peripherals. Of course, you can connect serially at up to 115200 baud, making it very easy to compile some assembly on a PC and use the monitor to paste the hex into the board’s memory and run it. Or you can just jump into the Tiny BASIC interpreter and have some nostalgic fun. He demos all this in the video below.
He’s given enough detail for you to make your own and he also has the boards available in kit form on Tindie for a very reasonable price. With some minimal soldering skills, you can be back in the ’80s in no time.
Continue reading “OMEN Alpha: A DIY 8085-Based Computer”
Collecting old CPUs and firing them up again is all the rage these days, but how do you know if they will work? For many of these ICs, which ceased production decades ago, sorting the good stuff from the defective and counterfeit is a minefield.
Testing old chips is a challenge in itself. Even if you can find the right motherboard, the slim chances of escaping the effect of time on the components (in particular, capacitor and EEPROM degradation) make a reliable test setup hard to come by.
Enter [Samuel], and the Universal Chip Analyzer (UCA). Using an FPGA to emulate the motherboard, it means the experience of testing an IC takes just a matter of seconds. Why an FPGA? Microcontrollers are simply too slow to get a full speed interface to the CPU, even one from the ’80s.
So, how does it actually test? Synthesized inside the FPGA is everything the CPU needs from the motherboard to make it tick, including ROM, RAM, bus controllers, clock generation and interrupt handling. Many testing frequencies are supported (which is helpful for spotting fakes), and if connected to a computer via USB, the UCA can check power consumption, and even benchmark the chip. We can’t begin to detail the amount of thought that’s gone into the design here, from auto-detecting data bus width to the sheer amount of models supported, but you can read more technical details here.
The Mojo v3 FPGA development board was chosen as the heart of the project, featuring an ATmega32U4 and Xilinx Spartan 6 FPGA. The wily among you will have already spotted a problem – the voltage levels used by early CPUs vary greatly (as high as 15V for an Intel 4004). [Samuel]’s ingenious solution to keep the cost down is a shield for each IC family – each with its own voltage converter.
Continue reading “Universal Chip Analyzer: Test Old CPUs In Seconds”
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.
If you have been building electronic hardware for several decades, do you still have any projects from your distant past? Do they work? An audio amplifier perhaps, or a bench power supply.
[Just4Fun] made a rather special computer in the 1980s, and it definitely still works. Describing it as “An 8085 single board computer with an EPROM emulator” though, does not convey just how special it is. This is not the modern sense of a single board computer with an SoC and a few support components. Instead it is a full system in the manner of the day in which processor, memory and peripherals are all separate components surrounded by 74 series glue logic. The whole system is wire-wrapped on a piece of perfboard and mounted very neatly in a rack. The EPROM emulator is a separate unit in a console case with hexadecimal keyboard and 7-segment display.
As the video below the break of an LED flashing demo shows, the EPROM emulator allows 8085 machine code to be entered byte by byte instead of having to be burned into a real EPROM.
[Just4Fun] leaves us with plans to replace the period EPROM emulator with a modern alternative, an EEPROM on a PCB designed to fit in the original bank of EPROM sockets. In this he suggests he might fit a bootloader and a BASIC interpreter, something entirely possible back in the day with conventional EPROMs, but probably not as cheaply.
Continue reading “Hack An 8085 Like It’s 1985”
Hardware design enthusiasts should already be salivating just looking at this image. But [Ken Shirriff’s] write-up on how the 8085 processor’s registers were designed will put you in silicon reverse-engineering heaven. He manages to get to the bottom of the tricks the designers used to make register access as efficient as possible, like routing some through the ALU on their path elsewhere.
We’re certainly not experts in studying dies like the one seen above. Luckily [Ken] does a great job of zooming in on important parts, then dissecting how they work by representing the silicone image as a functional flow chart. One of the parts which we found most interesting is the WZ temporary registers. These are a set of internal registers that are not accessible to the programmer. They’re only used internally by the chip. They act as temporary storage for multiple operand functions, and also hold register addresses for a handful of instructions (JMP, CALL, RST, etc.).
If you’re more interested in how images of these chips are attained you should do some searching on Hackaday. Just last week we featured one such project in a links post.
This is a microscopic photograph of an 8085 processor die. [Ken Shirriff] uses the image in his explanation of how the ALU works. It is only capable of five basic operations: ADD, OR, XOR, AND, and SHIFT-RIGHT. [Ken] mentions that the lack of SHIFT-LEFT is made up for by adding the number to itself which has the effect of multiplying a number by two; the same mathematical function performed by a shift operation.
His post details the gate arrangement for each ALU operation. This is clear and easy to follow, and was based on reverse engineering work already done by a team who meticulously decapped and photographed the dies.
Not long ago this explanation would have been voodoo to us. But we worked our way through The Elements of Computing Systems text-book by following the online Nand to Tetris course. It really demystifies the inner working of a chip like the 8085.
Now if you really want to understand this ALU you’ll build it for yourself inside of Minecraft.