Commit Graph

528 Commits

Author SHA1 Message Date
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
Riley Testut
f560c95cc2 Updates PauseViewController navigation bar styling for iOS 13 2019-10-10 19:23:57 -07:00
Riley Testut
4aa7a100e3 Adds ability to delete controller skins 2019-10-10 12:13:48 -07:00
Riley Testut
d7ed26c372 Fixes incorrect controller view sizing when changing skins 2019-10-10 01:21:28 -07:00
Riley Testut
5574f8668a Asynchronously loads images when viewing controller skins 2019-10-10 00:29:14 -07:00
Riley Testut
a6b9a4567c Opts-out of dark mode (for now) 2019-10-10 00:27:00 -07:00
Riley Testut
465c7280aa Allows importing controller skins from document browser 2019-10-10 00:25:44 -07:00
Riley Testut
5c574f5ea3 Starts syncing after dismissing Settings with gesture 2019-10-03 16:05:35 -07:00
Riley Testut
2c05e1b70f Adds option to disable haptic feedback for touch inputs 2019-09-30 17:31:13 -07:00
Riley Testut
ef64a15e37 Adds ability to reset controller mappings to default mapping 2019-09-30 17:27:06 -07:00
Riley Testut
1703244da8 Explicitly starts syncing when dismissing SettingsViewController via Done button 2019-09-30 16:41:36 -07:00
Riley Testut
bb600d1e98 Automatically presents keyboard in GamesDatabaseBrowserViewController 2019-09-30 16:29:20 -07:00
Riley Testut
ce1ff171ce Fixes GamesViewController remaining visible when loading save states 2019-09-30 16:07:12 -07:00
Riley Testut
5337636f43 Opens Patreon page in-app when AltStore not installed 2019-09-30 15:32:24 -07:00
Riley Testut
0c6f28e70a Updates bundle version to 13 2019-09-30 15:23:34 -07:00
Riley Testut
ac156ab220 Updates version number to 1.0 2019-09-25 03:49:41 -07:00
Riley Testut
9412bf0df8 Adds Credits + Licenses + AltStore Patreon deep link 2019-09-25 03:46:27 -07:00
Riley Testut
86fd55b17a Limits N64 Fast Forwarding to devices with A9 or better 2019-09-21 17:58:39 -07:00
Riley Testut
6b494e1113 Fixes dismissing document browser on background thread 2019-09-19 13:32:06 -07:00
Riley Testut
eaae38481e Uses NSSecureUnarchiveFromData for transformable properties 2019-09-19 13:30:49 -07:00
Riley Testut
1e350e1369 Automatically resolves GameCollection + GameControllerInputMapping conflicts 2019-09-19 13:29:51 -07:00
Riley Testut
962d45e4f9 Removes temporary database backup on launch 2019-09-18 14:56:12 -07:00
Riley Testut
08c61ad66b Improves error message when Dropbox prevents downloading games due to copyright 2019-09-18 12:39:36 -07:00
Riley Testut
adffbc03a2 Updates version to 0.9 and build to 11 2019-09-15 18:57:15 -07:00
Riley Testut
ebf3fc6c27 Adds support for building Delta Lite (and Delta Lite beta)
Limits Delta Lite to NES games, and Delta Lite beta to NES and GBC games.
2019-09-15 18:57:15 -07:00
Riley Testut
34a1c78199 Fixes issue importing games that previously failed to import 2019-09-14 14:33:23 -07:00
Riley Testut
aa05e57afc Limits DS support to beta builds 2019-09-12 15:25:13 -07:00
Riley Testut
6f0137339a Removes Sync button from Games screen 2019-09-06 19:04:17 -07:00
Riley Testut
31d306e95f Adds “No Connected Controllers” cell when there are no game controllers 2019-09-06 18:58:43 -07:00
Riley Testut
7cf89e32f7 Prevents being refreshed by AltStore when in foreground 2019-09-06 17:26:40 -07:00
Riley Testut
a09a875c92 Renames DS short name to “DS (Beta)” 2019-08-14 19:04:15 -07:00
Riley Testut
3189c502c5 Fixes images not prefetching in AppIconShortcutsViewController 2019-08-07 16:55:44 -07:00
Riley Testut
e91b6bcd6b Uses constant bundleID for Fabric regardless of actual bundleID
AltStore resigns apps with unique bundle identifiers per-user, so we temporarily swizzle Bundle.infoDictionary to return a constant bundle identifier for Fabric so they can all be grouped together.
2019-08-07 16:51:00 -07:00
Riley Testut
b63853d7ce Renames “Sustain Buttons” to “Hold Buttons” 2019-08-07 14:49:12 -07:00
Riley Testut
ef57d882b3 Resets sustained inputs when changing games 2019-08-07 14:42:08 -07:00
Riley Testut
f5f09f22d4 Adds support for copying and opening deep link URLs 2019-08-07 13:27:53 -07:00
Riley Testut
5282265fd5 Fixes deep links not working when current game is paused 2019-08-07 13:15:59 -07:00
Riley Testut
3ac77f5707 Displays message when there are are games but no app icon shortcuts 2019-08-07 13:04:06 -07:00
Riley Testut
7a257bc9ca Presents confirmation alert when signing out of Delta Sync 2019-08-07 12:46:56 -07:00
Riley Testut
6e6c7a68bd Adds AppIconShortcutsViewController placeholder message 2019-08-07 12:46:20 -07:00
Riley Testut
2a81710d07 Adds support for DS games 2019-08-05 23:03:08 -07:00
Riley Testut
cb2caa7ef1 Replaces screen edge gesture hack with preferredScreenEdgesDeferringSystemGestures
We want priority over system gestures when tapping near edges of screen. Previously, we needed to access the private screen edge gesture recognizer, but now we can use preferredScreenEdgesDeferringSystemGestures.
2019-08-05 22:58:59 -07:00
Riley Testut
42e37517b1 Updates bundle version to 10 2019-08-02 12:05:07 -07:00
Riley Testut
0e47662353 Updates version number to 0.8.2 2019-08-02 12:04:37 -07:00
Riley Testut
67ab6887b4 Fixes crash when opening Delta with non-Dropbox URL scheme 2019-08-02 12:03:35 -07:00
Riley Testut
8113c4888d Limits controller customization screen to portrait orientation 2019-07-14 17:41:18 -07:00
Riley Testut
877cf88806 Fixes pause menu buttons obscured by notch 2019-07-14 17:29:05 -07:00
Riley Testut
283453b387 Fixes checking UIView.window on background thread 2019-06-21 14:11:21 -07:00
Riley Testut
1b75cdf65f Removes iCloud entitlement 2019-06-21 12:07:39 -07:00
Riley Testut
0046bfaf46 Adds support for N64 games 2019-06-21 12:07:30 -07:00
Riley Testut
9b28d42814 Updates input + video logic to support revised DeltaCore API
- Continuous inputs
- OpenGLES-based rendering
- Thumbsticks in controller skins
2019-04-30 15:42:30 -07:00
Riley Testut
da0ec57856 Improves reliability when previewing games/save states 2019-04-30 15:34:22 -07:00
Riley Testut
7da6a5d8a5 Fixes issue where cheats don’t wrap onto next line correctly 2019-04-30 15:10:07 -07:00
Riley Testut
9cfcf67c72 Renames “Inputs” to “Controllers” in Settings 2019-03-26 11:17:42 -07:00
Riley Testut
3ecee031be Compares hashes before marking game saves as updated 2019-03-26 00:55:52 -07:00