carlosefr,

My first mac was an iMac 20" bought in September 2008. It's 16 years old and hasn't been powered on in 8 years but still looks new.

So, why not give it new life as a dedicated emulator machine? 🕹

It has a 2.66 GHz Core 2 Duo (64-bit) and 4 GB of RAM, which should be good.

The 320 GB HDD was OK, but better transplant the 250 GB SSD upgrade out of my first macbook.

When I first booted Ubuntu LTS off an USB stick, I was suprised how smooth it ran. Plus, it supported all the hardware! 😮

1/3 🧵

The iMac showing its innards, but stil with the LCD panel attached (the disk drive is behind it, so it had to be dissassembled next). It has never been opened, so it was pretty dusty, and it smelled of old rags.

carlosefr,

I decided to go with Ubuntu Server 22.04 LTS as a base — supported until 2032 — and loosely follow this script to install RetroPie and boot straight into it:

https://github.com/MizterB/RetroPie-Setup-Ubuntu

I have a pair of Xbox 360 gamepads but, although they show in "lsusb" when cabled, I still had to buy a wireless receiver for them to work. 🎮

I then spent a bunch of time customizing small things, like using an Apple IR remote to control the volume — as there will be no keyboard attached under normal use. 🔍

2/3 🧵

A clone Xbox 360 wireless receiver for the gamepads, neatly strapped to the iMac's stand on the back. There's also an old USB 2.0 hub strapped on the other side of the stand. Neither is visible from the front of the machine, which is nice.

carlosefr,

And here it is, my 16 year old iMac 20" inside one of the closet compartments in my home office. You have to play while standing, just like in the arcades of yore. 🤗

This setup works really well for the games I want to play on it — arcade and home console stuff up to the late 1990's. It barely goes above 30% of one CPU core on anything. The CRT shaders I selected work plenty smooth. 🪶🧈

The screen is very good even by today's standards. 🖥

3/3 🧵

#retrogaming #apple #retropie #arcade

There are some advanced shaders that simulate all kinds of CRT quirks, but those run rather slow on the iMac's ATI 2600HD graphics card. Fortunately, I'm a simple person and I just wanted decent scanline simulation. And those run with no noticeable performance hit.

carlosefr,

The arcade version of Arkanoid is hard as it is, but with a joystick/gamepad is next to impossible to play. 🕹️ 💢

Originally it used a rotary controller (spinner). On an emulator, you can play it with a mouse... but that just doesn't feel right. And, with my setup, not very practical. 🖱️ 🤷‍♂️

So, I decided to build my own spinner controller. I think it turned out quite nice...

1/2 🧵

#retrogaming #maker #hardware #electronics #arduino #emulation #arkanoid

My homemade spinner controller in it's final form. It's a black box with an arcade "fire" button (works as the mouse button) and a continuous rotation knob (controls the mouse's horizontal axis). In this photo there's also a (firmware controlled) blue LED visible on the front side, which indicates the device is connected. The top face has the arkanoid logo and some decorations on a blue background, printed on slighly glossy photographic paper.
The arcade version of Arkanoid running on my 2008 iMac. Yes, the iMac's screen is annoyingly reflective.

carlosefr,

Inside is an ATmega32U4 with builtin USB, posing as a mouse. 🖱️

The user inputs are a smooth 24-pulse/rotation encoder (as seen for volume control in amplifiers) and a button.

The encoder moves the mouse horizontally in fixed steps (adjustable with the small pot). ↔️

The two DIP switches inhibit mouse events (while testing) and set the axis of movement (maybe useful in the future). ⚙️

It also works great with Tempest. 😀

2/2 🧵

#retrogaming #maker #hardware #electronics #arduino #emulation

Once assembled into a circuit board, I switched to a smaller Pro Micro clone. I also dropped the external pull-down resistors and used the ATmega's internal pull-ups instead. The slightly ugly blobs of hot glue are meant to provide strain relief (some of the wires broke off from the tiny connectors while I was building it).
Atari Tempest (1981) arcade cabinets also used a spinner controller.

carlosefr,

I figured that another button would be needed for some games I want to play, and upgraded my custom spinner controller. And why not add a jack for an optional foot pedal?

I can't play the piano to save my life, so the M-Audio pedal I had lying around had been unused forever. It's just a push-button inside.

Code and things now on GitHub: https://github.com/carlosefr/spinner-mouse

So far only APB (1987) really benefits from the pedal, but it's worth it. 🚔

#retrogaming #maker #hardware #electronics #arduino

Atari's "APB: All Points Bulletin" from 1987. You play the role of "Officer Bob" on his first days on the job, driving around blazing your siren at litterbugs and chasing criminals. It's not very fun to play if you have to accelerate and operate the siren with one hand while you drive with the other. The original arcade cabinet used a foot pedal for acceleration, and that makes all the difference.

carlosefr,

Found another game where I can put my custom pedal controller to use: Namco's "Assault" (1988).

With a gamepad, Assault is a two-stick affair, each controlling one of the tank's tracks (to go right you push the left stick; to go left you push the right stick). It's very frustrating. I keep getting confused from having to take my right thumb off the stick to fire. 😕

Using the pedal to fire is much nicer. Driving is still awkward, but I blame my lack of skill.

#retrogaming #arcade #emulation

Another screenshot of Namco's "Assault" (1988). When you drive over a lift zone, the tank jumps high into the air (actually, the background moves away from you) and you can see more of the playfield and shoot enemies from afar.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • DreamBathrooms
  • everett
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • rosin
  • GTA5RPClips
  • Durango
  • Youngstown
  • slotface
  • khanakhh
  • kavyap
  • ngwrru68w68
  • tacticalgear
  • JUstTest
  • osvaldo12
  • tester
  • cubers
  • cisconetworking
  • mdbf
  • ethstaker
  • modclub
  • Leos
  • anitta
  • normalnudes
  • megavids
  • provamag3
  • lostlight
  • All magazines