Introducing Unijoysticle 2 A500

Unijoysticle 2 A500 is a device that enables Bluetooth gamepads and mice on the Commodore Amiga. It is similar in functionality to the Unijoysticle 2+, but with some additional features tailored for the Amiga, like: Fits in the Amiga 500 / 1200 joystick port without additional cables New buttons: “mode” button: To easily cycle betweenContinue reading “Introducing Unijoysticle 2 A500”

Introducing Unijoysticle 2+

For those not familiar with Unijoysticle 2, it is a device that allows you to use modern Bluetooth gamepads like Sony DualSense or Nintendo Switch controllers (to name just a few) on old computers like the Commodore 64 or Amiga. What’s new in version 2+: Case friendly: lower profile, LEDs & buttons are close theContinue reading “Introducing Unijoysticle 2+”

Bluepad32 support for Arduino and CircuitPython

It is now possible to use Bluetooth gamepads both in Arduino and CircuitPython projects. This means that you can use your PlayStation (PS3, PS4, PS5), Nintendo (Wii, Wii U, Switch) and Xbox One S gamepads in your electronics project: control a robot, home-automation, video games, etc… everything controlled from your favorite gamepad. The catch isContinue reading “Bluepad32 support for Arduino and CircuitPython”

Bluepad32: Gamepad support for ESP32

I’m happy to announce the release of Bluepad32: gamepad support for the ESP32. Bluepad32 is a firmware that runs in the ESP32 microcontroller. It supports all the modern Bluetooth gamepads like Sony (PS5, PS4, PS3), Microsoft (Xbox One S) and Nintendo (Switch, Wii) gamepads. Who is this for? This is for: …tinkers / makers /Continue reading “Bluepad32: Gamepad support for ESP32”

Unijoysticle 2: modern bluetooth gamepads for retro computers

Announcing Unijoysticle 2: Use modern Bluetooth controllers (gamepads, mice, smart TV remote controllers) in retro computers like the Commodore 64/128, Atari ST, Amiga and more. For further info go here: https://retro.moe/unijoysticle2  

64K RAM Ought to be Enough: a demo for the PCjr

Updated 2018–10–08 A demo for the IBM PCjr by Pungas de Villa Martelli. It was presented at Flashparty 2018 and won the Demo category. Requirements An IBM PCjr with at least 64k RAM. Download Source code: https://gitlab.com/ricardoquesada/pcjr-flashparty–2018 Binary:pvm-64ko.zip (does not run on emulators) Technical description The demo is divided in the boot loader and demo 3Continue reading “64K RAM Ought to be Enough: a demo for the PCjr”

Performance of the 8088 on PC, PCjr and Tandy 1000

It’s well-known that you should measure the performance of your code, and not rely only on the opcode’s “cycle counts”. But how fast is an IBM PC 5150 compared to a PCjr ? or to a Tandy 1000? or how fast is the Tandy 1000 HX in fast mode (7.16Mhz) compared to the slow modeContinue reading “Performance of the 8088 on PC, PCjr and Tandy 1000”

IBM PCjr: Zero-day Data-destroy vulnerability

IBM PCjr zero-day data-destroy vulnerability (AKA: Joykill). Description: This vulnerability allows local and remote attackers to destroy the contents of the floppy diskette. User interaction is required to exploit this vulnerability. The issue results from the lack of proper validation when starting the manufacturing system test. Exploit (local):

IBM PCjr BIOS dump

The IBM PCjr BIOS is very well documented in the IBM PCjr Technical Reference manual (a must read for every PCjr developer). The only problem is that navigating that code is not easy. It has all the problems from scanned books: the fonts don’t look good no hyper-links and difficult to search So I dumped theContinue reading “IBM PCjr BIOS dump”