Mike Becky

Tag Archive for ‘iPhone’

The Magic Is Gone

I remember around ten years ago, whenever I was near an Apple Store, I just had to go. If I was visiting family in Pittsburgh, I had to visit the Apple Store. If I was around Syracuse, if I was in Philadelphia, wherever. If there was an Apple Store nearby, I had to take the time to visit, even if just for a little bit.

From my earliest days with Apple products, in 2004, I’ve always been 2-3 hours from the nearest Apple Store.

But the products felt so cool during that era. The idea of having a half an hour or so with the entire lineup was too much to pass up.

I’d check out every MacBook they offered and chat with my wife (then girlfriend) about which one struck the right balance for my needs. I’d check out the Mac Mini, each iMac, and the Mac Pro and have an internal debate about which one I’d buy if money was no object. Even after leaving the store, I’d spend the rest of the day thinking about my dream setup.

I’d check out the latest iPods, iPads, iPhone, and browse through all of the accessories. Sometimes I’d leave with something — a new pair of headphones, a power adapter, or the like — and sometimes I’d leave completely empty handed.

Today, though, I can’t remember the last time I even went to an Apple Store. It was probably before 2020 and it was more than likely because I actually needed to go there for something. The last time I made a point to go to the Apple Store just to browse was probably a year or two prior.

The magic of Apple’s retail stores is gone.

Part of that is because Apple products are a bit more accessible in my area now. I can go to my local Target or Walmart and toy around with the Apple Watch, iPhone, and iPads on display. If I want to check out a new Mac, the local Best Buy carries a good portion of those.

But even more so, Apple’s products aren’t really exciting to me anymore. Most of what they release is a relatively minor iteration over the previous version. Sometimes with, what feels like, downgrades compared to the previous model. I’m looking at you, Action Button.

“But what about the Vision Pro”, you’re invariably asking? Well, that product isn’t appealing to me in the slightest. I have no interest in augmented or virtual reality. I consider it to be more akin to 3D television or motion controls in games. Neither of those will necessarily go away entirely — they will rise and fall in popularity over time, but they’ll never be the predominant medium or even a major player.

Maybe I’ll eat my words, but I don’t expect the Vision Pro or any other AR/VR computing product to ever be much more than a novelty device.

Outside of the lack of excitement for Apple’s new products, though, there are obviously other factors that have an impact.

I’m at a different part of my life now than I was ten years ago. My wife and I have started a family, I have a great job, and with that comes a bit more disposable income and a lot less free time. I can often just buy products that I would have, previously, had to save for.

And the lack of time means that I’m unable to obsess over all of the little details of an announcement. Or read through every line of the product pages and press releases. All of the things that built excitement for actually getting my hands on the products.

All of this isn’t a bad thing, of course. There are the clear benefits of spending time with family instead of caring so much about the products of a former computer company.

I think the lack of excitement in folks like me represents an opportunity for another company to build something truly neat. To get people excited and start making waves in the consumer electronics industry.

Valve’s Steam Deck and the recent explosion of retro emulation handhelds from Retroid, Anbernic, and others immediately comes to mind. There’s a lot to be excited about in that market.

But I’m hoping for something bigger. Something that will give me the same feeling I got from Apple in the late 2000s. The type of feeling that will have me going out of my way to spend a few minutes with a new product in a retail store.

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.

Apple Versus the World ➝

Chris Hannah:

I’m no longer a die-hard Apple fan, so I’m not going to get overly caught up on any of the arguments for or against them. But there’s a reason people talk about Apple’s “walled garden”. And rightly or wrongly, it seems that more and more people are starting to want to tear down the wall.

Ten years ago I felt like Apple could do no wrong. And feel like I wasn’t too far off on that. They had an incredible run, releasing some of my favorite products of all time.

But today, it feels like they make more poor decisions than good ones. I’m sort-of stuck, though, because of the services lock-in and a small number of third-party apps that there aren’t any good options for on other platforms.

I’ll continue to dabble with Linux, though, and consider whether Android is a viable option. And maybe one day I’ll feel like it’s time to make the switch away from Apple.

➝ Source: chrishannah.me

High-Level iOS Emulator touchHLE Aims to Preserve Old iOS Gaming Apps ➝

Alfonso Maruccia, writing for TechSpot:

There’s a new iOS emulator in town, and it wants to bring 32-bit gaming apps back into a working state on modern machines and operating systems. touchHLE is specifically designed to run games “from the early days of iOS,” with a focus on iPhone/iPod touch apps for iPhone OS 2.x. In its current state, however, the emulator doesn’t even support touch controls, at least not yet.

Born as a “full-time passion project” by a single developer in December 2022, touchHLE is radically different from traditional low-level emulators (like QEMU) as it is based on a “high-level emulator” design: the program’s simulated CPU only runs the code from an app binary and some needed iOS libraries. touchHLE takes the place of iOS, the developers explain, providing its own implementations of the system framework components like Foundation, UIKit, OpenGL ES, OpenAL, etc.

It’s a real shame that there are so many apps and games that would otherwise be completely lost to time without access to emulation. I wish Apple and other platform makers would build things with software preservation in mind.

Wouldn’t it be nice if Apple built a “Classic” mode that was built in to iOS that emulated older versions of the operating system for the purposes of running older software?

You can still see many of these applications and games if you’ve purchased on your account by navigating to Account > Purchased within the App Store. But unless you have an old device laying around, there’s no official way to install and run them.

(Via Michael Tsai.)

➝ Source: techspot.com

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.

Assistive Access

Assistive Access in iOS 17

I only just discovered this new feature in iOS 17. Assistive Access gives you a simplified, focused interface with access to only the apps and features you choose to enable. It was designed for people with cognitive disabilities, but there are plenty of other uses.

I’m thinking it could be an excellent way to setup an iPhone for a child. You could configure it so they only have access to Messages and the ability to make calls, for example. With no way to use other applications without first entering an Assistive Access-specific passcode.

Last night I set it up on my iPhone to only have access to Camera, Day One, Home, Photos, Things, and Messages — only listing my wife as a contact I’m able to send messages to. The idea being that I could enter Assistive Access when I wanted to spend less time on my device and be more present with the family. I’d still have access to the most crucial features, like taking photos and videos, but everything else would be hidden.

I do have a few gripes with the feature for my use case, though.

Some applications are built with Assistive Access in mind. Those applications offer an entirely different user interface than what you get from the app in the traditional iOS Home Screen experience. I wish that there was an option to just use the non-Assistive Access version of each app.

Of the apps I’m using, Camera, Photos, and Messages all use an alternative interface in Assistive Access. They’re mostly fine, but I really wish I could disable it in the Camera app. You don’t have the option to zoom, you can’t switch lenses, you can’t take photos in portrait mode, etc. — there’s a whole host of features that I wish I had access to that aren’t available. I’ve considered installing Halide or another third-party camera app for the additional features, but I generally find them difficult to use when compared to Apple’s Camera app.

The other complaint I have with Assistive Access is the giant “Back” button displayed along the bottom when you’re inside of an application. I’m sure it’s great for some users of the feature, but I would like to see an option to display something a bit more elegant — maybe show an old school iPhone home button instead?

Lastly, it doesn’t seem that there is a way to use Bluetooth or AirPlay speakers at all while in Assistive Access. It may sound like that would defeat the purpose, but I often have music playing on a Bluetooth speaker when the family is on the back deck or I play music over AirPlay to the HomePod in the kitchen. It would be rad if you could choose within Assistive Access’ settings whether that is available or not.

Ive seen others using a dumb or light phone for this type of use case. But whenever I’ve looked into that as an option the limitations were a bit more than I would prefer. There was always something that I need that these devices just couldn’t do or it would be too cumbersome to setup and use.

Using Assistive Access on the iPhone I already have seems like the perfect solution. I don’t have to buy an additional device and I have much more control over what I do and don’t have access to.

Home Screens to Begin 2024

Last year I published my home screens at the beginning of January and declared that it will be an annual tradition. Following up that this year with my home screens below.

It’s worth noting that I had a dedicated gaming handheld last year, but that is no longer the case. Instead I’m using my iPhone as my gaming handheld, paired with the Backbone one to play games in Steam Link, PPSSPP, and RetroArch.

iPhone 15 Pro Home Screen

iPhone 15 Pro

iPad Pro Home Screen 2024

iPad Pro, 11-inch

Ubuntu 22.04 Virtual Machine

13-inch MacBook Air with M2

This is actually a screenshot of a virtual machine running Ubuntu 22.04. The MacBook is primarily a work machine and I had previously setup a separate user account on it for personal stuff. This year I decided to move that to a virtual machine instead, which makes it easier to switch back and forth for quick breaks throughout my work day.

Apple TV 4K Home Screen

Apple TV 4K

Apple Watch Faces

Apple Watch Series 5