Mike Becky

Tag Archive for ‘Gaming’

Apple’s New Rule for Emulators on iOS ➝

From Apple’s App Review Guidelines:

Additionally, retro game console emulator apps can offer to download games. You are responsible for all such software offered in your app, including ensuring that such software complies with these Guidelines and all applicable laws.

When I first saw the email announcing this change last night, I saw the word “emulators” and may have jumped to conclusions about what this would mean.

I suppose it’s still possible that emulators like RetroArch and PPSSPP would be allowed, but it seems like the rule could imply that this is just for retro game collections that allow for downloading of more games within the app. More like Sega releasing a Sonic the Hedgehog collection that utilizes emulation or a game developer that wants their homebrew NES game available on iOS.

I suspect someone will test the rule and see exactly where the line is drawn, but I get the feeling we’ll still need sideloading to have what we think of as “emulation” on iOS.

➝ Source: developer.apple.com

Action Button as Game Launcher

Game Launcher shortcut with Minecraft and Steam Link

Since receiving my iPhone 15 Pro this past fall, I have been racking my brain trying to figure out how to make the Action Button feel useful to me.

Up until recently, I’ve felt like it was a massive step backward when compared to the simple silence switch that the iPhone has featured since the original launched in 2007. The switch was nice because you could interact with it by feel. If you’re at a movie theater or some other live event and needed to make sure your phone wouldn’t randomly make noises, disturbing everyone else, you could check the switch with your iPhone still in your pocket.

This isn’t something that has ever worked for me with the Action Button. With it set to toggle Silent Mode, my experience usually goes something like this:

  • Press the Action Button.
  • Feel the haptic feedback.
  • Try and remember what that specific haptic feedback means.
  • Probably press the Action Button another one or two times so that you can feel the difference between the two types of haptic feedback.
  • Ultimately take your iPhone out of your pocket to make sure it’s set the way you wanted.

Despite my discovery of a useful Action Button shortcut, I still think that the above situation is such a mess that I’d rather just have the silencer switch back. But even if Apple decides to bring back the switch, I’m stuck with the Action Button for at least another year-and-a-half. I might as well make the most of it.

Game Launcher Example Shortcut

I’m now using the Action Button as a dedicated game launcher. But it doesn’t just display a menu, listing the games (and emulators) on my device, and launch the one I select. Instead, it always opens the game or emulator that I most recently played and I have the option to display a menu to launch something else.

I’m accomplishing this with Toolbox Pro, which offers Global Variable actions. Each time I launch a game or emulator using this shortcut, the name of that application will be saved to a Global Variable and the next time I run my game launcher, it will automatically launch the game saved in that variable.

As for the menu to launch something else, that will only display if I want it to. I’m accomplishing this by checking the device’s volume at the beginning of the shortcut and then checking it again two seconds after the Global Variable app is launched. If the volume is different upon that second check, the menu will display.

The way it works in practice is, I press the Action Button, the most recent game opens. If I’d like to play something else, I have a two second window to press either of the two volume buttons. If I do, I’ll get a menu that lists the other games and emulators on my device and I can choose one to launch.

Then, the next time I run the shortcut by pressing the Action Button, the most recently launched game/emulator will open first.

This setup does require you to update the shortcut whenever you add or remove a game from your device and the shortcut itself is going to be unique to you and the collection of games you play. But I’ve put together an example shortcut showing how it works, that you can adapt to your setup.

The example shortcut is just setup to open Minecraft and Steam Link because those are the only games that I have on my device that aren’t sideloaded through AltStore. But again, the method that I’m using can be adapted to launch any number of games on your device. You’ll just need to update the If action that checks the Global Variables and opens the initial app, as well as the Menu action that displays a list of and launches the other games.

I’m hoping the example shortcut will do the trick, but if you decide to set this up for yourself and run into any trouble, feel free to reach out and I’d be happy to help with all that I can.

Emulation on iPhone

iPhone Running PPSSPP with Razer Kishi V2

Last year I wrote an about retro gaming on iOS. I’ve had a lot of fun playing games on the platform, especially through emulation. Much of what I wrote last year is still applicable today, but I thought I’d revisit the topic with a focus on the state of emulation on iOS and all of the software and accessories you’ll need to get started.

Controllers

You can get by with some games using the touch screen controls — turn-based RPGs like Pokémon come to mind — but if you’re interested in playing anything else, you’ll want to get some kind of controller. Apple has done a great job of adding support for controllers in iOS, you can use Sony’s DualSense Controller, for example — Apple even sells it on their site. I’m a huge fan of 8BitDo controllers and would highly recommend their Pro 2 controller.

These traditional controllers are all well and good if you’re going to be connecting your iPhone to a television to play games. Although, I wouldn’t recommend it unless you have an iPhone with a USB-C port. Lightning devices have notoriously bad latency in their HDMI output.

If you want to play on the iPhone’s display, though, you’ll want a controller that attaches to the device itself. This gives you a gaming experience that’s more in-line with a dedicated gaming handheld.

There are plenty of options on the market, but I think there are three clear front-runners in the space.

GameSir G8 Galileo — This controller is USB-C only, so if you’re using an iPhone with a Lightning port, it’s not going to be an option for you. I’ve also not used this one myself, however, everything I’ve seen and read has been overwhelmingly positive. Russ from Retro Game Corps mentioned in his review that, going forward, whenever anyone asks for a recommendation in this category, the GameSir G8 Galileo will be his first pick.

Razer Kishi V2 — This is available for Lightning and USB-C devices, it has the least flex of any of the controllers I’ve used — it fits on my iPhone 15 Pro like a glove and the expanding portion in the middle doesn’t bow inward toward the back of the device. It’s very close to being my favorite of the controllers I’ve tried. But I hate that the controller’s start/select/share/menu buttons aren’t symmetrical. It’s also a huge bummer that the USB-C version isn’t fully supported on iOS. The Razer Nexus app doesn’t recognize the controller and you can’t use its additional buttons on the platform at all. Hopefully a future software update will change that, but I’m not holding my breath.

Backbone One — Also available for Lightning and USB-C devices, but all of its functionality is supported on both Android and iOS. There is a bit of flex in the controller during use and the expanding portion bows in toward the back of your device, but it feels really good in the hand. I love how all of the buttons feel on the Backbone, they have a much softer press than the Razer Kishi V2 and all of the additional buttons are symmetrical. The Backbone app requires a subscription, which I’m not fond of, but it’s not something you have to use. And compared to the Razer Kishi V2 that doesn’t even work with the app on the iPhone 15, it’s a clear win for the Backbone. It’s also worth noting that there is a PlayStation edition of the controller and an official carrying case available to match both versions.

AltStore

Apple, being the restrictive little platform vendor that they are, doesn’t allow emulators on the App Store. In order to install them on your device, you’ll have to utilize sideloading. AltStore is the best method for installing and managing sideloaded applications on iOS.

You’ll want to follow the official guide for the latest installation process, but essentially, you install AltServer on your computer, use it to install AltStore on your iOS device, and you’re ready to start loading emulators on your iPhone.

You will need to login using your Apple ID throughout the process. This is used to sign the applications so they can run on your device. If you have a free Apple ID, you’ll be limited to just three signed apps at a time and they will only be useable for a week before you’ll need to re-sign them.

If you have a paid Apple Developer account, though, the limit on the number of apps is lifted and the apps will last a full year before they have to be re-signed. You can definitely get by with a free account — I’d recommend your three apps be AltStore, RetroArch, and either Limon or PPSPP — but if you want a larger assortment of systems available at all times, it may be worth considering a paid developer account.

If you choose to stick with a free Apple Developer account, you’ll be happy to know that AltStore itself is completely free to use. You can choose to subscribe to the project’s Patreon for access to beta versions of the app, but it’s not necessary unless you want to be on the bleeding edge.

Currently, the biggest feature available exclusively in the beta is the ability to add third-party sources. It’s a neat feature, for sure, but I haven’t found many sources that feel essential. Almost all of them are poorly maintained with outdated versions of apps. Because of this, I’m not sure if the Patreon is worth subscribing to just for access to the beta.

Recommended Emulators

There are a fair number of emulators available for iOS. Not nearly as many as Android or other platforms, though. Primarily because of Apple’s limitations on the App Store. But just about all of the systems you could ever want are covered.

RetroArch, Crash Team Racing for PlayStation, PPSSPP, and New Super Mario Bros. 2 for Nintendo 3DS

The following are a list of the emulators that I’m currently using and the ones that I would recommend others use as well. They’ll get you home consoles through the fifth generation and every handheld console up to and including the PlayStation Portable and Nintendo 3DS.

RetroArch — The Swiss Army knife of emulators, which will handle the bulk of the systems available. It’s a little finicky to setup — I tend to refer to Retro Game Corps’s excellent starter guide. But once it’s configured to your liking, it offers an excellent experience for PlayStation, Nintendo 64, Nintendo DS, Super Nintendo, Sega Genesis, Nintendo Entertainment System, and more.

PPSSPP — This is the best option for emulating PlayStation Portable games on iOS. RetroArch has a core that supports PSP games — based on PPSSPP — but the performance just isn’t up to par with the standalone release.

Limon — It’s still in the early days for this Nintendo 3DS emulator — there isn’t currently a way to exit a game, for example, you have to force quit the app instead. There’s definitely limited compatibility with games, but I’ve been using it to run New Super Mario Bros. 2 and it’s been great.

Other Emulators

This is by no means an exhaustive list of the remaining emulators on iOS, but they’re the ones that I’ve tried myself. I don’t recommend the first three primarily because they require the use of just-in-time compilation (JIT). This is a method for executing code that allows for more performance, but it isn’t available by default on iOS.

In order to use JIT, you have to enable it with a tool on another device — AltServer has this built in. Since the release of iOS 17, though, I haven’t been able to get JIT working at all. So unless you have better luck than I or you have an iOS device that you haven’t updated to iOS 17 yet, you’ll likely have to wait for a more robust method for enabling JIT.

DolphiniOS — An excellent release of Dolphin specifically for iOS that supports GameCube and Wii emulation. When I was able to get JIT working on my iPhone 13 Pro, it was a fantastic experience. I played many hours of Mario Kart Wii and Tony Hawk’s Underground on it. I only ran into a single game that didn’t run well — Tony Hawk’s American Wasteland — but I could probably get it to a reasonable frame rate with a bit of tweaking. If the JIT situation changes in iOS 17, DolphiniOS will be the first thing I install.

Flycast — A Dreamcast emulator available for iOS. I never ran into any compatibility issues with the games I’ve played on it. It’s a shame that there isn’t an option to run it without JIT enabled. There are plenty of low powered Android handhelds that are capable of emulating Dreamcast at the top end and the iPhone 15 Pro is significantly more powerful than those devices. I don’t know, maybe the current iPhone wouldn’t be capable of emulating Dreamcast games without JIT, but it wouldn’t surprise me if the iPhone released in a few years was able to. And in the meantime, there could be some RPGs or what have you that would be playable at lower frame rates.

Play! — A PlayStation 2 emulator with pretty pitiful compatibility. I haven’t had much luck with games I’ve tried in this emulator. The only one that seemed to run flawlessly was Spider-Man: Friend or Foe, which isn’t a particularly good game, but you could also just run the PSP version in PPSSPP instead.

The remaining emulators all work well, but have overlap with the systems supported by RetroArch:

Provenance — An all-in-one emulator akin to RetroArch. I prefer RetroArch’s interface over Provenance, though, especially if you have a large library of ROMs.

Delta — It emulates Nintendo systems and has excellent skins for touch screen controls, but RetroArch is able to emulate everything Delta supports.

MAME4iOS — An arcade emulator that I’ve spent very little time with. I’m generally not too interested in emulating arcade games, though, and the few I have enjoyed run just fine in RetroArch.

Emulation Frontend

This is the only piece of the puzzle that there isn’t a solution for on iOS. On Android you have apps like Daijisho and on PC you have apps like Launchbox. I’m not aware of anything like this on iOS at all.

The best I’ve been able to come up with is a shortcut that uses the Choose From Menu action to list each of the emulators I have installed and then opens the one I select using the Open App action.

You could just save that shortcut to your Home Screen and tap on it whenever you’d like to play a game, but if you chose a controller that has a companion app that can be launched using a button on the controller, there is an option for a more seamless experience.

If you’re using the Backbone controller, for example, you could setup an automation in the Shortcuts app that automatically runs the shortcut whenever the Backbone app is launched. Now when you want to play a game, you can attach the controller to your device, press the Backbone button, and select one of your emulators from the shortcut’s menu.

If you’ve come up with a better solution for this, though, I would absolutely love to hear about it. Feel free to reach out to me with the details.

How to Transfer Data Between Nintendo Switch microSD Cards on macOS ➝

I used this method to upgrade the microSD card in my Switch and it worked like a charm. I will note, though, you’ll want to transfer your screenshots and videos to the device’s storage and delete them from the microSD card first. Otherwise you’ll run into trouble when trying to take save screenshots and video to the new microSD card.

➝ Source: flynsarmy.com

Retro Gaming on iOS

Backbone and iPhone 13 Pro, playing New Super Mario Bros. Wii I’m Dolphin

I’ve been on the search for the perfect retro gaming handheld for the past couple of years. I’ve modded a PlayStation Portable, used flash cartridges in my old Nintendo DS, and have purchased the Retroid Pocket 2+, and Retroid Pocket 3.

None of these ever felt like the right setup for me, though. I had a lot of fun playing games on them and setting them up, but in the end I just had yet-another device to maintain. It always felt a bit too cumbersome. And it didn’t help that none of the devices I tried were particularly comfortable to use.

I also own a Switch. But, not only does that miss the mark on all of the points above, it’s also not that great at playing retro games, which was my primary goal. I’ve had a ton of fun playing The Legend of Zelda: Breath of the Wild, Super Mario Maker 2, and others, but the retro games on Switch require a subscription or the stand-alone purchase of remakes that are, more often than not, far worse than the original.

Backbone

Rather than introduce a new device into my life with its own operating system and battery life to manage, I’m now using the Backbone with my existing iPhone 13 Pro. It’s one of those retractable controllers that you can place your device in to turn it into a gaming handheld.

I had never had much interest in these products because I hadn’t heard good things about them. They all seemed to be poorly made by fly-by-night companies. And although there isn’t much history to go on with Backbone, they have partnered with Sony for a PlayStation edition, which is what I decided to go for.

The hardware feels quite good. It’s obviously not as sturdy as an actual gaming handheld due to the nature of the form factor, but I don’t expect it to break anytime soon. The buttons and thumb sticks are all as responsive as you’d hope and they feel great to use.

I wish there was an option to have the directional pad positioned above the left analog stick. That would match the layout of Sony’s DualShock controllers and would be far better for the types of games I tend to play. But that layout doesn’t seem to exist among the competition either.

Backbone App

The Backbone has a dedicated screenshot/screen recording button, which is quite handy. And there’s a Backbone button as well that, when pressed, takes you right into Backbone’s launcher app. I can’t say the launcher app is great, by any means. Especially when compared to the launcher options on Android. But it’s serviceable.

The Backbone app showcases popular games from the App Store, Xbox game streaming, PS Remote Play, it has screenshot and screen recording section, and more. But, for me, the app is basically just a way to quickly launch games using the controller.

Within the section that displays your games there are also games and apps that Backbone is promoting. I wish there was a way to remove those more consistently — I’ve been able to remove some, but no luck with others. Luckily they’re generally out of my way since games are sorted by most-recently played.

App Store

In terms of what I’ve actually been playing on it, there’s been a lot of Minecraft. The game suffers from the same problems I have with titles like The Sims in that it’s a lot more fun at the beginning when you’re first collecting resources and building your base. But I think my current world is the one I’ve spent the most time in.

I’m not actively playing as frequently in recent weeks, but I have some ideas for projects that I still haven’t done in and around my base, so I expect I’ll be picking it up again more regularly in the not-too-distant future.

Submerged Glass Base Project in Minecraft

I’ve also had a blast streaming games through Steam Link. I have a Windows machine in my office that I essentially only interact with over VNC through Screens and with Steam Link. I’ve replayed Half-Life 2 recently and have a number of other Steam games in my backlog that I want to play soon, too — Celeste, Hogwarts Legacy, and Cuphead to name a few.

AltStore

Games from Steam and the App Store are fine and dandy, but the real stars of the show are made possible with AltStore, which makes it easy to install apps from outside of the App Store. You basically install a piece of software on a Mac or PC, enter your Apple ID credentials, and the AltStore app will install on your device.

AltStore has a number of apps that you can install right from within the Browse tab — Flycast, UTM, Provenance, and more — but you can also sideload any .ipa file from the My Apps tab. I’ve installed Dolphin and RetroArch. This gives me access to emulating the following systems:

  • Game Boy Advance
  • Game Boy Color
  • Game Boy
  • Nintendo 64
  • Nintendo DS
  • Nintendo Entertainment System
  • Super Nintendo
  • Sega 32X
  • Sega Game Gear
  • Sega Master System
  • Sega Genesis
  • Sega CD
  • Sega Saturn
  • PlayStation Portable
  • PlayStation
  • GameCube
  • Nintendo Wii

Everything runs surprisingly well. I’ve only come across a small number of games on PSP, Wii, and GameCube that were unplayable — either because of performance issues or incompatibilities with the emulator. In the case of PSP, I could install the stand-alone PPSSPP emulator to improve compatibility, but I prefer RetroArch’s interface.

Speaking of interface — launching sideloaded apps is one thing the Backbone app isn’t capable of. However, as a workaround, I’ve installed the PlayStation App and setup an automation in Shortcuts that triggers every time the PlayStation App is opened. It simply displays a menu listing my sideloaded apps — Dolphin and RetroArch — and launches the one I choose.

With this setup I can open the PlayStation App from within the Backbone app and then select the emulator I’d like to use. It’s not as slick as the emulation-focused launchers available on Android — my current favorite is Daijishō — but it gets the job done.

Moving back to the emulators themselves, there is a bit of a caveat with Dolphin. It requires JIT — just-in-time compilation — which allows the games to emulate at full speed. Without it, the experience would be abysmal. But in order to enable JIT, you need to be on the same network as a JIT enabling server. This is, conveniently, built-in to the AltServer software that AltStore interfaces with, but means that playing games in Dolphin while out and about is a no-go.

It’s an inconvenience for sure, but the vast majority of my gaming is done while at home and in other cases I can always just play something in RetroArch. Hopefully this will change when sideloading is officially offered in the future, but for now the workaround is rarely a hindrance in my use.

RetroArch on iOS

With these emulators I’ve been playing New Super Mario Bros. Wii, Tony Hawk’s Underground, The Lion King, and Super Mario World. And that’s just what I’ve had in my regular rotation, I’ve added about 50GB of ROMs between the two emulators, which will keep me busy for quite some time.

I’m very happy with my current setup. I can emulate roughly the same number of systems as I could on my Retroid devices, but because of the increased performance of the iPhone there’s likely a much larger number of games that are actually playable. And all of them run on a device that I already bring with me everywhere I go.

No need to maintain a separate device with its own software updates and battery life. All I need is the Backbone controller and my iPhone for access to modern mobile games on iOS, PC games through Steam Link, and a collection of the best games from the seventh generation of consoles and earlier.

Christmas Gift Guide

It’s been several years since I’ve published a gift guide on Initial Charge. But I thought it was a great time to bring it back. I’ve maintained a private wishlist site where my family and I post links to things that we want and we can all view each others’ lists. The site isn’t just for gift giving, though — I also use it throughout the year to keep a running list of things I want to purchase for myself.

I happen to have a number of items that I’m pretty excited about acquiring, though. So you can think of this as a gift guide for people who happen to share my interests.

Retroid Pocket 3+ — an excellent retro emulation handheld. I already own the Retroid Pocket 2+ and the 3, but the 3+ includes a pretty decent performance boost over the 3. It’s far from perfect, but the more powerful internals allow it to better emulate PlayStation 2, GameCube, Wii, and Nintendo 3DS games.

8bitdo Pro 2 — I love 8bitdo’s controllers and this seems like the one to get right now. I’d mostly pair it with my Retroid handheld for playing on a television, but I’d also use it with my Apple TV, MacBook Air, and Nintendo Switch.

Apple TV 4K, Wi-Fi + Ethernet — I’ve purchased every Apple TV iteration since the first generation. This one would go in the living room and the old one would be moved to the bedroom. The old bedroom one would likely get handed down to my in-laws.

20TB WD Red Pro — These are priced at $330 at the time of this writing, which is an unbelievable deal. The 8TB drives I’m currently using for media storage are nearing their capacity, if I’m going to upgrade, I’d want to go a lot bigger and this capacity offers the best price per terabyte from my preferred hard drive manufacturer.

CyberPower 1500VA UPS — My current uninterruptible power supply is maxed out in terms of power outlets. This model only adds two, but that should give me enough room for the new hardware I’m planning to add.

ThunderBay Flex 8 — This is a bit expensive, but the ThunderBay 6 I’m currently using will eventually reach capacity and I’ll have to move to something with more bays. The ThunderBay 8 only offers two more, but it also has a PCIe slot, which can be used for additional storage or accessories.

2012 Mac Mini, Quad Core — You can pick these up from OWC or eBay for under $200 at this point. I would install Ubuntu and run it as an Umbrel. And for the price, they offer pretty decent performance in a chassis that matches the rest of my server hardware.

Anker 40W, 521, Nano Pro — This is the charger I have in my laptop bag and I love it. I’d like another one to keep in the living room for more flexibility in our charging setup — we’re just using Apple’s 18W USB-C power adapter at the moment.

Ledger Nano X — I still dabble in cryptocurrencies and would like a hardware wallet for more secure storage, rather than keeping everything on an exchange. From what I’ve researched, this is the best option on the market.

Google Ending Stadia ➝

In the little bit that I’ve been looking at game streaming services recently, Stadia never seemed to be high on the recommendations lists.

➝ Source: blog.google

RetroAchievements ➝

A nifty web service that adds achievements to retro games played on supported emulators. I created an account a couple of days ago and added it to RetroArch on my Retroid Pocket 2+. Now whenever I play a compatible game, I can earn achievements and contribute to leaderboards automatically.

➝ Source: retroachievements.org