Do you remember the simpler times when you had a DOS command line, a handful of commands, and you talked to the hardware through a few BIOS and DOS interrupts? Okay, maybe it was a little limited, but nostalgia doesn’t care. Now [mcuhacker] is working on bringing some of those memories back by getting a PC-XT emulator running on an ESP8266.
For the x86 CPU emulator, he ported Fake86 which is written in C, and created an Arduino IDE environment for it. The MS-DOS 3.3 bootdisk image is stored in flash and is accessed as the A: drive. There’s no keyboard yet but he has 640×200 CGA working with 80×25 characters on a 3.5″ TFT display with the help of a low pass filter circuit. In the video below he shows it booting to the point where it asks for the date.
The Apple 1 was one of the three big hobbyist computers that burst onto the scene in 1977. Unlike the PET 2001 and the TRS-80, only a couple hundred Apple 1s were ever produced, and with only a handful in existence today, you’ll have to fork out some serious money to get a Wozniak original for yourself.
The Apple 1 experience is easily emulated, of course, but this ESP8266 emulates the Apple 1 on hard mode. Dubbed the Espple by its creator [Hrvoje Cavrak], it emulates the 6502-based original in all its 1-MHz glory, while providing 20-kB of RAM, a considerable upgrade over the 4-kB standard. The complete original character set is provided for that old-timey feel, and there’s a BASIC interpreter ready to go. The kicker here, though, is that the emulator is completely wireless. You telnet into the 8266 rather than connecting a keyboard directly, and video is transmitted over-the-air using a GPIO pin as a 60-MHz PAL transmitter. A short length of wire is all you need to transmit to an analog PAL TV on channel 4; the video below shows a little BASIC code running and a low-res version of Woz himself.
Learning assembly is very important if you want to get a grasp of how a computer truly works under the hood. VisUAL is a very capable ARM emulator for those interested in learning the ARM assembly.
In addition to supporting a large subset of ARM instructions, the CPU is emulated via a series of elaborate and instructive animations that help visualise the flow of data to/from registers, any changes made to flags, and any branches taken. It also packs very useful animations to help grasp some of the more tricky instruction such as shifts and stack manipulations.
As it is was designed specifically to be used as teaching tool at Imperial College London, the GUI is very friendly, all the syntax errors are highlighted, and an example of the correct syntax is also shown.
You can also do the usual things you would expect from any emulator, such as single step through execution, set breakpoints, and view data in different bases. It even warns you of any possible infinite loops!
That being said, lugging such an extravagant GUI comes at a price; programs that consume a few hundred thousand cycles hog far too much RAM should be run in the supported headless mode.
The Raspberry Pi is possibly the world’s most popular emulation platform these days. While it was never intended to serve this purpose, the fact remains that a small, compact computer with flexible I/O is ideally suited to it. We’ve featured a multitude of builds over the years using a Pi in a mobile form factor to take games on the go. [Michael]’s build, however, offers a lot more than a few Nintendo ROMs and some buttons from eBay. It’s a tour de force in enclosure design.
The build starts with the electronics. In 2017 it’s no longer necessary to cobble together five different accessory boards to handle the controls, battery charging, and display. Boards like Kite’s Super All In One exist, handling everything necessary for a handheld game console. With this as a starting point, he then set out to recreate Nintendo’s classic Game Boy, with a few tweaks to form and function.
It’s a textbook example of smart planning, design, and execution. We are taken through the process of creating the initial CAD drawings, then combining 3D printed parts with wood and carbon fibre for a look that is more akin to a high-end piece of hi-fi gear than anything related to gaming. The attention to detail is superb and the write-up makes it look easy, while [Michael] shares tips on how to safely cut carbon fibre to make your own buttons.
Name any retrocomputer — Apple II, Sinclair, even TRS-80s — and you’ll find a community that’s deeply committed to keeping it alive and kicking. It’s hard to say which platform has the most rabid fans, but we’d guess Commodore is right up there, and the Amiga aficionados seem particularly devoted. Which is where this Amiga PS/2 mouse port comes from.
The Amiga was a machine that was so far ahead of its time that people just didn’t get it. It was a true multimedia machine before multimedia was even a thing, capable of sound and graphics that hold up pretty well to this day. From the looks of [jtsiomb]’s workstation, he’s still putting his Amiga to good use, albeit with an inconvenient amount of cable-swapping each time he needs to use it. The remedy this, [jtsiomb] put together an emulator that translates scancodes from an external PS/2 keyboard into Amiga keyboard signals. Embedded inside the Amiga case where it can intercept the internal keyboard connector, the emulator is an ATmega168 that does a brute-force translation by way of lookup tables. A switch on the back allows him to choose the internal keyboard or his PS/2 keyboard via a KVM switch.
If you ask someone old enough to have been a computer user in the 16-bit era what machine they had, you’ll receive a variety of answers mentioning Commodore, Atari, Apple, or even PC brands. If your informant lay in the Commodore camp though, you’ll probably have an impassioned tale about their Amiga, its capabilities, and how it was a clearly superior platform whose potential was wasted. The Amiga was for a while one of the most capable commonly available computers, and became something of a cult within its own lifetime despite the truly dismal performance of the various companies that owned it. Today it retains one of the most active retro computer scenes, has an active software community, and even sees new hardware appearing.
For Amiga enthusiasts without the eye-watering sums required to secure one of the new Amiga-compatible machines with a PowerPC or similar at its heart, the only option to relive the glory beside finding an original machine is to run an emulator. [Marco Chiapetta] takes us through this process using a Raspberry Pi, and produces an Amiga that’s close enough to the real thing to satisfy most misty-eyed enthusiasts.
He starts with a cutesy Amiga-themed Raspberry Pi case that while it’s not essential for the build, makes an entirely appropriate statement about his new machine, We’re taken through the set-up of the Amibian emulator distro, then locating a set of Amiga ROMs. Fortunately that last step is easier than you might think, even without trawling for an illicit copy.
The result is an Amiga. OK, it’s not an Amiga, but without the classic Commodore logo is it any more not an Amiga than some of the other non-branded Amiga-compatible boards out there? Less talking, more classic gaming!
[PJ Evans] had a ruined game cartridge lying around, just waiting for a project. As Activision’s F-14 Tomcat game for the Atari 2600 console, it seemed ripe for use as a project enclosure of some sort. When he came across a couple of 9-pin D-sub joystick ports, he had an idea. He realized his Rasperry Pi Zero could fit inside the cartridge. Add a power button, TV color selector, difficulty switch, as well as select and reset buttons, and you have an emulator.
[PJ]’s Pi Zero had more than enough GPIO pins to accommodate all of those buttons and switches plus a bunch more for the joysticks. Why not put the emulator inside a game cartridge? In terms of software [PJ] looked into Adafruit’s Retro Gaming with Raspberry Pi resource, which has tons of suggestions for setting up game emulators. He decided on the RetroPie operating system to help him map out all of the pins, with Stella doing the actual Atari 2600 emulation.