Commit Graph

482 Commits

Author SHA1 Message Date
Riley Testut
52a68e28dd Switches to UIScene-based app lifecycle 2022-07-25 17:24:57 -05:00
Riley Testut
7b1db2614f Fixes ControllerInputsViewController’s system picker UI 2022-05-31 18:03:26 -07:00
Riley Testut
973238e1a4 Disables AltJIT by default
melonDS save states created with JIT enabled cannot be loaded later without JIT, which made it very easy to accidentally replace a save state with one that could only be loaded when JIT is available.

We plan to remove AltJIT eventually for this reason, but for now we’ll just disable it by default.
2022-05-31 17:59:01 -07:00
Riley Testut
7c934cebe1 Merge branch 'ipad' into develop
# Conflicts:
#	Delta.xcodeproj/project.pbxproj
2022-05-31 17:51:31 -07:00
Riley Testut
fce4fc1bec [iPad] Temporarily disables split view support 2022-05-16 14:54:42 -07:00
Riley Testut
977f3d8005 Fixes previous game controller remaining selected when changing controller 2022-05-09 16:44:29 -07:00
Riley Testut
edab6ea432 Fixes sharing games + exporting save files
* Makes temporary copy instead of symbolic link when exporting game
* Sanitizes game name before exporting game
* Fixes prematurely deleting temporary game
* Exported save file names now match exported game names
2022-04-28 18:13:25 -07:00
Riley Testut
9e437797d9 Improves CopyDeepLinkActivity
* Uses SF Symbol instead of bundled image
* Actually calls activityDidFinish(_:)
2022-04-28 16:57:06 -07:00
Riley Testut
25afda3b60 Replaces UIAlertController with UIMenu for importing games 2022-04-28 16:54:18 -07:00
Riley Testut
836297718b [iPad] Fixes game context menu actions 2022-04-28 16:38:14 -07:00
Riley Testut
da8415f4aa Improves SaveStatesViewController UI on iPad 2022-04-28 16:15:48 -07:00
Riley Testut
68c1b05313 Improves GameCollectionViewController UI on iPad 2022-04-28 15:47:05 -07:00
Riley Testut
2a4dbabae5 Fixes crash when presenting ImportController on iPad 2022-04-28 12:49:16 -07:00
Riley Testut
aafe673811 Fixes invisible navigation bar + toolbar on iPadOS 15 2022-04-27 17:57:55 -07:00
Riley Testut
adccf8fca5 Fixes ControllerInputsViewController UI on iPad 2022-04-27 16:15:09 -07:00
Riley Testut
fd0427d2ad Fixes BIOSError compilation error when compiling with Xcode 13
Xcode 12 and older incorrectly let us declare BIOSError.incorrectSize as @available(iOS 13), but Swift doesn't support @available for enum cases with associated values. Xcode 13 now properly enforces this restriction, so we instead mark the enum itself as @available(iOS 13).
2022-04-19 14:20:40 -07:00
Riley Testut
394030ad43 Ensures melonDS is preferred DS core for release versions 2021-12-02 13:36:37 -08:00
Riley Testut
17e1bf710b Dynamically maps outdated artwork URLs to correct URLs 2021-12-02 13:12:07 -08:00
Riley Testut
baf895939d Updates OpenVGDB to latest version
Fixes broken OpenVGDB cover art URLs due to host moving from gamefaqs1.cbsistatic.com to gamefaqs.gamespot.com.
2021-12-02 13:12:01 -08:00
Riley Testut
2705849cf2 Ensures melonDS is preferred DS core for release versions 2021-11-17 11:43:00 -08:00
Riley Testut
11041ef1e9 Dynamically maps outdated artwork URLs to correct URLs 2021-11-16 16:31:58 -08:00
Riley Testut
08e870c94c Updates OpenVGDB to latest version
Fixes broken OpenVGDB cover art URLs due to host moving from gamefaqs1.cbsistatic.com to gamefaqs.gamespot.com.
2021-11-16 16:27:09 -08:00
Riley Testut
9492f3165e Hides AltJIT setting on unsupported devices 2021-11-16 15:04:19 -08:00
Riley Testut
f14bb0f890 Supports AltJIT
Automatically enables JIT for MelonDS core when on the same WiFi as AltServer.
2021-11-16 14:39:48 -08:00
Riley Testut
829d127269 Fixes BIOSError compilation error when compiling with Xcode 13
Xcode 12 and older incorrectly let us declare BIOSError.incorrectSize as @available(iOS 13), but Swift doesn't support @available for enum cases with associated values. Xcode 13 now properly enforces this restriction, so we instead mark the enum itself as @available(iOS 13).
2021-08-09 16:55:19 -07:00
Riley Testut
eafabb7f43 Enables melonDS core for public versions 2021-03-11 14:39:31 -06:00
Riley Testut
de315eacf5 Updates Licenses screen to include melonDS and Genesis Plus GX 2021-03-11 14:39:30 -06:00
Riley Testut
9f58aac350 Removes “(Beta)” from DS’s short name 2021-03-11 12:21:35 -06:00
Riley Testut
931a16c544 Hides Genesis skin credit for public versions 2021-03-10 14:33:57 -06:00
Riley Testut
8f7e7280f9 Removes support for 128KB DS firmwares
128KB DS firmwares come from DSi/3DS and aren’t bootable, so we consider them unsupported.
2021-03-10 14:32:09 -06:00
Riley Testut
8888b72d29 Limits DSi support to beta versions 2021-03-10 14:27:56 -06:00
Riley Testut
6cfca53dc8 Fixes game artwork not updating immediately when changed 2021-03-10 14:19:26 -06:00
Riley Testut
1bfe030dd9 Deletes temporary image file after changing artwork 2021-03-10 14:16:02 -06:00
Riley Testut
98ed657f8a Improves support for transparent and/or rotated custom artwork 2021-03-10 14:14:14 -06:00
Riley Testut
58921cfb7f Fixes legacy plist format for GBA Game and Delta Skin UTIs 2021-02-24 13:25:07 -06:00
Riley Testut
dae3164d53 Credits Chris Rittenhouse (@litritt_z) for Genesis skin 2021-02-24 13:19:21 -06:00
Riley Testut
bb6fbfea37 Replaces placeholder DS Home Screen image 2021-02-24 13:02:21 -06:00
Riley Testut
edb2af4dd5 Compares DSi BIOS files against unsupported files
DSi BIOS files can have various hashes, so rather than compare them against an expected hash, we now compare them against unsupported hashes and throw an error if it matches one.
2021-02-18 17:16:44 -06:00
Riley Testut
7c3b67fbfb Adds “Import Controller Skin” button to ControllerSkinsViewController 2021-02-18 14:07:39 -06:00
Riley Testut
bf2461fae1 Enables syncing DS(i) BIOS files
Excludes DSi NAND for now, since it is ~240MB and Harmony can’t selectively download files (yet).
2021-02-18 13:45:49 -06:00
Riley Testut
3f70300afb Fixes incorrectly previewing DS home screen instead of DSi home screen 2021-02-12 13:18:55 -06:00
Riley Testut
2c52821e72 Fixes treating DS & DSi Home Screens as the same game 2021-02-12 13:14:33 -06:00
Riley Testut
4ed4b8ba06 Fixes misaligned ControllerInputsViewController callout views on iOS 14.5 2021-02-12 13:03:47 -06:00
Riley Testut
c3c6fb32cc Fixes ControllerInputsViewController DS layout
Presents ControllerInputsViewController full screen so DS portrait skin is not distorted.
2021-02-12 13:01:58 -06:00
Riley Testut
46cb7db897 Disables cheats for Genesis games 2021-02-10 12:29:40 -06:00
Riley Testut
a29e4e61eb Emulates Sega Genesis games 2021-02-09 17:31:42 -06:00
Riley Testut
c67b72068a Adds missing imports 2021-02-09 12:26:16 -06:00
Riley Testut
c97611482e Fixes crash when previewing DS games without BIOS files 2021-01-19 14:41:55 -06:00
Riley Testut
f81f6cbf3d Hides DS “Home Screen” until BIOS files have been imported 2021-01-19 14:31:16 -06:00
Riley Testut
a079e68713 Changes default DS core from DeSmuME to melonDS 2021-01-19 14:20:00 -06:00
Riley Testut
66cfc272c1 Lowers MelonDSDeltaCore non-JIT maximum Fast Forward speed to 1.5x
Without JIT, the processor throttles very quickly at 2x. 1.5x allows at least a couple minutes before throttling kicks in.
2021-01-19 14:13:53 -06:00
Riley Testut
1871f69aca Disables JIT on iOS 14.4
JIT no longer works on iOS 14.4 beta 2, so disable for now until it (hopefully) works again.
2021-01-19 13:04:27 -06:00
Riley Testut
7034b1dd8a Fixes missing Fast Forward option for MelonDSDeltaCore 2021-01-19 12:49:55 -06:00
Riley Testut
3e0a983048 Validates melonDS BIOS files
Compares file sizes and MD5 hashes (when relevant) to ensure BIOS files are correct.
2021-01-19 12:44:54 -06:00
Riley Testut
1b874ce9c1 Displays preview save state image even if context menu previews are disabled 2021-01-13 14:41:27 -06:00
Riley Testut
0ad0e752f8 Lowers N64DeltaCore maximum Fast Forward speed to 1.5x for some older devices 2021-01-13 14:41:03 -06:00
Riley Testut
d0823b1acb Raises MelonDSDeltaCore maximum Fast Forward speed to 3x 2021-01-11 14:14:02 -06:00
Riley Testut
0d5e7e97cc Adds “Context Menu Previews” setting
Controls whether Delta previews games and save states when using context menus. Enabled by default.
2021-01-04 14:30:56 -06:00
Riley Testut
58346140a8 Unhides “Home Screen Shortcuts” setting on devices without 3D Touch
All devices on iOS 13 or later support either 3D Touch or Haptic Touch, which means all devices now support home screen shortcuts.
2021-01-04 14:20:25 -06:00
Riley Testut
cb77be106a Renames “App Icon Shortcuts” setting to “Home Screen Shortcuts” 2021-01-04 14:19:42 -06:00
Riley Testut
ced5d6099e Fixes crash when customizing app icon shortcuts 2021-01-04 14:01:05 -06:00
Riley Testut
c7329136ac Supports touch inputs when external controller is connected 2020-12-10 15:34:16 -06:00
Riley Testut
ffb6d7b02a Merge branch 'melonDS_0.9' into develop
# Conflicts:
#	Delta/Base.lproj/Settings.storyboard
2020-11-24 13:24:46 -06:00
Riley Testut
64df7b97ab Supports MelonDS JIT 2020-11-24 13:11:02 -06:00
Riley Testut
a1f80e74b5 Emulates DS microphone 2020-11-24 13:08:38 -06:00
Riley Testut
358accbcb7 Adds DSi support
Requires DSi BIOS files.
2020-11-24 13:06:29 -06:00
Eric Lewis
15cab0bca8 feat: support iOS 13+ dark mode 2020-11-06 11:45:25 -05:00
Riley Testut
b85230b0ff Improves sync error messages when a game is missing or can’t be synced 2020-06-12 13:00:44 -07:00
Riley Testut
5c9332e61e Fixes importing games + controller skins from Files
Exposing Documents directory in Files app requires us to support opening files in place (despite LSSupportsOpeningDocumentsInPlace set to NO in Info.plist), so we now coordinate access to any external file URL
2020-04-28 14:44:06 -07:00
Riley Testut
75869c06fd Fixes overwriting save file when previewing games 2020-04-27 13:13:34 -07:00
Riley Testut
e11e4437c5 Adds coreID to SaveState’s Harmony metadata for backwards compatibility 2020-04-27 13:03:28 -07:00
Riley Testut
f0d245ef8d Fixes always using melonDS core even if DeSmuME core is selected 2020-04-27 13:01:09 -07:00
Riley Testut
610697be5d Updates Harmony to add future backwards compatibility
Harmony will now persist properties from future model versions and later upload them, allowing for basic backwards compatibility.
2020-04-27 12:25:55 -07:00
Riley Testut
a9a2819b19 Adds Export Save File option to game context menu 2020-04-24 13:25:01 -07:00
Riley Testut
0e8c9fbc5c Exposes Documents directory in Files app 2020-04-23 18:02:02 -07:00
Riley Testut
0b6567d98f Fixes incorrect game name color after quitting emulation 2020-04-23 17:25:09 -07:00
Riley Testut
01320b4dec Adds SaveState.coreIdentifier to filter out save states from other cores
Prevents DeSmuME save states from appearing while using melonDS core and vice versa.
2020-04-23 17:24:04 -07:00
Riley Testut
77da71cd62 Adds “Home Screen” DS game to boot into DS main menu 2020-04-23 17:18:59 -07:00
Riley Testut
6f336a82a5 Adds DS settings UI to import melonDS BIOS + switch DS cores 2020-04-23 17:16:44 -07:00
Riley Testut
35fe306c12 Switches to melonDS-based core for DS games 2020-04-23 16:52:29 -07:00
Riley Testut
427ec9da73 Fixes incorrect cheat code formatting 2020-04-23 16:19:05 -07:00
Riley Testut
9dc823f25c Fixes missing GameType declarations with Xcode 11.4 2020-03-18 13:17:44 -07:00
Riley Testut
4ba2fa8d21 Adds support for new Nintendo DS controller skin 2020-02-11 16:34:57 -08:00
Riley Testut
8b5ac435a6 Fixes assigning non-X controller skins to games on X-devices 2020-02-11 16:32:20 -08:00
Riley Testut
89db6b0d3a Migrates from Core Data model v4 to v5 2020-02-11 15:59:47 -08:00
Riley Testut
59beb243c0 Adds Save State and Fast Forward controller skin actions 2020-02-07 16:01:49 -08:00
Riley Testut
0373b757f7 Adds ability to assign controller skins per game 2020-02-07 15:57:11 -08:00
Riley Testut
cd7e9652ab Replaces peek & pop with context menus on iOS 13+ 2020-02-06 14:37:21 -08:00
Riley Testut
6cca0f244f Replaces frameworks with static libraries
As of iOS 13.3.1, apps installed with free developer accounts that contain embedded frameworks fail to launch. To work around this, we now link all dependencies via Cocoapods as static libraries.
2020-02-03 19:28:23 -08:00
Riley Testut
a0f60de926 Dynamically maps old album artwork URLs to new ones 2019-12-11 16:11:25 -08:00
Riley Testut
763e410ce9 Fixes broken OpenVGDB cover art URLs
Host moved from http://img.gamefaqs.net to https://gamefaqs1.cbsistatic.com
2019-12-10 12:30:33 -08:00
Riley Testut
346c794244 Updates bundle version to 15 2019-10-14 19:00:05 -07:00
Riley Testut
63a8dfd5b9 Adds button to change save states sort order 2019-10-14 18:55:47 -07:00
Riley Testut
bcfbb7d7a0 Presents UIImagePickerController full screen
Workaround for iOS 13 interactive dismissal bug
2019-10-14 17:24:46 -07:00
Riley Testut
f47f515f90 Fixes incorrect SaveStatesCollectionHeaderView text color on iOS 13 2019-10-14 17:04:39 -07:00
Riley Testut
da00488a55 Fixes cheats not wrapping in CheatTextView on iOS 13 2019-10-14 16:54:23 -07:00
Riley Testut
6501b6523b Presents UIDocumentBrowserViewController full screen
Workaround for iOS 13 interactive dismissal bug
2019-10-14 16:35:38 -07:00
Riley Testut
e965309e5c Updates app version to 1.1 and bundle version to 14 2019-10-11 15:43:01 -07:00
Riley Testut
63c932561e Fixes incorrect GamesStoryboardSegue animation on iOS 13
The additional toolbars to extend the edges beyond the navigation controller's bounds weren't positioned correctly on iOS 13.
2019-10-10 19:26:13 -07:00
Riley Testut
6afff591ff Updates GamesViewController navigation bar styling for iOS 13 2019-10-10 19:24:44 -07:00