Updates DeltaCore + system cores
This commit is contained in:
parent
3813d42037
commit
d0ed98ba6b
@ -1 +1 @@
|
|||||||
Subproject commit 99da200c440a8dad93d9b92314f91b933b659bf8
|
Subproject commit 9492085ec6cbcd665df3347b843f5cce09c1b466
|
||||||
@ -1 +1 @@
|
|||||||
Subproject commit ae5ab38dbe6a5fc995f4f3a8cb7075dad3f8f6d5
|
Subproject commit 4eedbd481457e3c236d1f3ffab3ba2f49c6d18df
|
||||||
@ -1 +1 @@
|
|||||||
Subproject commit e49d318e2e18034b2bccea34047800956298de4a
|
Subproject commit bdc95aeb5e7f50263c34187cbe38ddddb4a2576e
|
||||||
@ -85,6 +85,7 @@
|
|||||||
BF9F4FD01AAD7B87004C9500 /* DeltaCore.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = BF9F4FCE1AAD7B87004C9500 /* DeltaCore.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
BF9F4FD01AAD7B87004C9500 /* DeltaCore.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = BF9F4FCE1AAD7B87004C9500 /* DeltaCore.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
BFA0D1271D3AE1F600565894 /* GameViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF63BDE91D389EEB00FCB040 /* GameViewController.swift */; };
|
BFA0D1271D3AE1F600565894 /* GameViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF63BDE91D389EEB00FCB040 /* GameViewController.swift */; };
|
||||||
BFAA1FED1B8AA4FA00495943 /* Settings.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFAA1FEC1B8AA4FA00495943 /* Settings.swift */; };
|
BFAA1FED1B8AA4FA00495943 /* Settings.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFAA1FEC1B8AA4FA00495943 /* Settings.swift */; };
|
||||||
|
BFBAB2E31EB685A2004E0B0E /* DeltaCoreProtocol+Delta.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFBAB2E21EB685A2004E0B0E /* DeltaCoreProtocol+Delta.swift */; };
|
||||||
BFC314771E0C8CFC0056E3A8 /* GameType+Delta.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */; };
|
BFC314771E0C8CFC0056E3A8 /* GameType+Delta.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */; };
|
||||||
BFC9B7391CEFCD34008629BB /* CheatsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFC9B7381CEFCD34008629BB /* CheatsViewController.swift */; };
|
BFC9B7391CEFCD34008629BB /* CheatsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFC9B7381CEFCD34008629BB /* CheatsViewController.swift */; };
|
||||||
BFCEA67E1D56FF640061A534 /* UIViewControllerContextTransitioning+Conveniences.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFCEA67D1D56FF640061A534 /* UIViewControllerContextTransitioning+Conveniences.swift */; };
|
BFCEA67E1D56FF640061A534 /* UIViewControllerContextTransitioning+Conveniences.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFCEA67D1D56FF640061A534 /* UIViewControllerContextTransitioning+Conveniences.swift */; };
|
||||||
@ -192,6 +193,7 @@
|
|||||||
BF99A5961DC2F9C400468E9E /* ControllerSkinTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ControllerSkinTableViewCell.swift; path = "Controller Skins/ControllerSkinTableViewCell.swift"; sourceTree = "<group>"; };
|
BF99A5961DC2F9C400468E9E /* ControllerSkinTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ControllerSkinTableViewCell.swift; path = "Controller Skins/ControllerSkinTableViewCell.swift"; sourceTree = "<group>"; };
|
||||||
BF9F4FCE1AAD7B87004C9500 /* DeltaCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = DeltaCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
BF9F4FCE1AAD7B87004C9500 /* DeltaCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = DeltaCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
BFAA1FEC1B8AA4FA00495943 /* Settings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Settings.swift; sourceTree = "<group>"; };
|
BFAA1FEC1B8AA4FA00495943 /* Settings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Settings.swift; sourceTree = "<group>"; };
|
||||||
|
BFBAB2E21EB685A2004E0B0E /* DeltaCoreProtocol+Delta.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "DeltaCoreProtocol+Delta.swift"; sourceTree = "<group>"; };
|
||||||
BFC134E01AAD82460087AD7B /* SNESDeltaCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SNESDeltaCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
BFC134E01AAD82460087AD7B /* SNESDeltaCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SNESDeltaCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "GameType+Delta.swift"; sourceTree = "<group>"; };
|
BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "GameType+Delta.swift"; sourceTree = "<group>"; };
|
||||||
BFC9B7381CEFCD34008629BB /* CheatsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CheatsViewController.swift; path = "Pause Menu/Cheats/CheatsViewController.swift"; sourceTree = "<group>"; };
|
BFC9B7381CEFCD34008629BB /* CheatsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CheatsViewController.swift; path = "Pause Menu/Cheats/CheatsViewController.swift"; sourceTree = "<group>"; };
|
||||||
@ -245,6 +247,7 @@
|
|||||||
BF5942911E09BD1A0051894B /* NSManagedObject+Conveniences.swift */,
|
BF5942911E09BD1A0051894B /* NSManagedObject+Conveniences.swift */,
|
||||||
BF5942921E09BD1A0051894B /* NSManagedObjectContext+Conveniences.swift */,
|
BF5942921E09BD1A0051894B /* NSManagedObjectContext+Conveniences.swift */,
|
||||||
BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */,
|
BFC314761E0C8CFC0056E3A8 /* GameType+Delta.swift */,
|
||||||
|
BFBAB2E21EB685A2004E0B0E /* DeltaCoreProtocol+Delta.swift */,
|
||||||
BF18B61E1E2985F900F70067 /* UIAlertController+Importing.swift */,
|
BF18B61E1E2985F900F70067 /* UIAlertController+Importing.swift */,
|
||||||
);
|
);
|
||||||
path = Extensions;
|
path = Extensions;
|
||||||
@ -721,6 +724,7 @@
|
|||||||
files = (
|
files = (
|
||||||
BF59426A1E09BBD00051894B /* GridCollectionViewCell.swift in Sources */,
|
BF59426A1E09BBD00051894B /* GridCollectionViewCell.swift in Sources */,
|
||||||
BF59427C1E09BC830051894B /* Cheat.swift in Sources */,
|
BF59427C1E09BC830051894B /* Cheat.swift in Sources */,
|
||||||
|
BFBAB2E31EB685A2004E0B0E /* DeltaCoreProtocol+Delta.swift in Sources */,
|
||||||
BF3540081C5DAFAD00C1184C /* PauseTransitionCoordinator.swift in Sources */,
|
BF3540081C5DAFAD00C1184C /* PauseTransitionCoordinator.swift in Sources */,
|
||||||
BF59427E1E09BC830051894B /* Game.swift in Sources */,
|
BF59427E1E09BC830051894B /* Game.swift in Sources */,
|
||||||
BFAA1FED1B8AA4FA00495943 /* Settings.swift in Sources */,
|
BFAA1FED1B8AA4FA00495943 /* Settings.swift in Sources */,
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<Scheme
|
<Scheme
|
||||||
LastUpgradeVersion = "0820"
|
LastUpgradeVersion = "0830"
|
||||||
version = "1.3">
|
version = "1.3">
|
||||||
<BuildAction
|
<BuildAction
|
||||||
parallelizeBuildables = "NO"
|
parallelizeBuildables = "NO"
|
||||||
|
|||||||
@ -153,10 +153,12 @@ extension GameViewController
|
|||||||
{
|
{
|
||||||
super.viewDidLoad()
|
super.viewDidLoad()
|
||||||
|
|
||||||
|
let gameViewContainerView = self.gameView.superview!
|
||||||
|
|
||||||
self.sustainButtonsContentView = UIView(frame: CGRect(x: 0, y: 0, width: self.gameView.bounds.width, height: self.gameView.bounds.height))
|
self.sustainButtonsContentView = UIView(frame: CGRect(x: 0, y: 0, width: self.gameView.bounds.width, height: self.gameView.bounds.height))
|
||||||
self.sustainButtonsContentView.translatesAutoresizingMaskIntoConstraints = false
|
self.sustainButtonsContentView.translatesAutoresizingMaskIntoConstraints = false
|
||||||
self.sustainButtonsContentView.isHidden = true
|
self.sustainButtonsContentView.isHidden = true
|
||||||
self.view.insertSubview(self.sustainButtonsContentView, aboveSubview: self.gameView)
|
self.view.insertSubview(self.sustainButtonsContentView, aboveSubview: gameViewContainerView)
|
||||||
|
|
||||||
let blurEffect = UIBlurEffect(style: .dark)
|
let blurEffect = UIBlurEffect(style: .dark)
|
||||||
let vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect)
|
let vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect)
|
||||||
@ -182,10 +184,10 @@ extension GameViewController
|
|||||||
vibrancyView.contentView.addSubview(self.sustainButtonsBackgroundView)
|
vibrancyView.contentView.addSubview(self.sustainButtonsBackgroundView)
|
||||||
|
|
||||||
// Auto Layout
|
// Auto Layout
|
||||||
self.sustainButtonsContentView.leadingAnchor.constraint(equalTo: self.gameView.leadingAnchor).isActive = true
|
self.sustainButtonsContentView.leadingAnchor.constraint(equalTo: gameViewContainerView.leadingAnchor).isActive = true
|
||||||
self.sustainButtonsContentView.trailingAnchor.constraint(equalTo: self.gameView.trailingAnchor).isActive = true
|
self.sustainButtonsContentView.trailingAnchor.constraint(equalTo: gameViewContainerView.trailingAnchor).isActive = true
|
||||||
self.sustainButtonsContentView.topAnchor.constraint(equalTo: self.gameView.topAnchor).isActive = true
|
self.sustainButtonsContentView.topAnchor.constraint(equalTo: gameViewContainerView.topAnchor).isActive = true
|
||||||
self.sustainButtonsContentView.bottomAnchor.constraint(equalTo: self.gameView.bottomAnchor).isActive = true
|
self.sustainButtonsContentView.bottomAnchor.constraint(equalTo: gameViewContainerView.bottomAnchor).isActive = true
|
||||||
|
|
||||||
self.updateControllerSkin()
|
self.updateControllerSkin()
|
||||||
self.updateControllers()
|
self.updateControllers()
|
||||||
@ -238,10 +240,10 @@ extension GameViewController
|
|||||||
pauseViewController.saveStatesViewControllerDelegate = self
|
pauseViewController.saveStatesViewControllerDelegate = self
|
||||||
pauseViewController.cheatsViewControllerDelegate = self
|
pauseViewController.cheatsViewControllerDelegate = self
|
||||||
|
|
||||||
pauseViewController.fastForwardItem?.selected = (self.emulatorCore?.rate != self.emulatorCore?.configuration.supportedRates.lowerBound)
|
pauseViewController.fastForwardItem?.selected = (self.emulatorCore?.rate != self.emulatorCore?.deltaCore.supportedRates.lowerBound)
|
||||||
pauseViewController.fastForwardItem?.action = { [unowned self] item in
|
pauseViewController.fastForwardItem?.action = { [unowned self] item in
|
||||||
guard let emulatorCore = self.emulatorCore else { return }
|
guard let emulatorCore = self.emulatorCore else { return }
|
||||||
emulatorCore.rate = item.selected ? emulatorCore.configuration.supportedRates.upperBound : emulatorCore.configuration.supportedRates.lowerBound
|
emulatorCore.rate = item.selected ? emulatorCore.deltaCore.supportedRates.upperBound : emulatorCore.deltaCore.supportedRates.lowerBound
|
||||||
}
|
}
|
||||||
|
|
||||||
pauseViewController.sustainButtonsItem?.selected = (self.sustainedInputs[ObjectIdentifier(gameController)]?.count ?? 0) > 0
|
pauseViewController.sustainButtonsItem?.selected = (self.sustainedInputs[ObjectIdentifier(gameController)]?.count ?? 0) > 0
|
||||||
|
|||||||
21
Delta/Extensions/DeltaCoreProtocol+Delta.swift
Normal file
21
Delta/Extensions/DeltaCoreProtocol+Delta.swift
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
//
|
||||||
|
// DeltaCoreProtocol+Delta.swift
|
||||||
|
// Delta
|
||||||
|
//
|
||||||
|
// Created by Riley Testut on 4/30/17.
|
||||||
|
// Copyright © 2017 Riley Testut. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
import DeltaCore
|
||||||
|
import GBADeltaCore
|
||||||
|
|
||||||
|
extension DeltaCoreProtocol
|
||||||
|
{
|
||||||
|
var supportedRates: ClosedRange<Double> {
|
||||||
|
switch self.gameType
|
||||||
|
{
|
||||||
|
case GameType.gba: return 1...3
|
||||||
|
default: return 1...4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -33,7 +33,7 @@ class EditCheatViewController: UITableViewController
|
|||||||
var game: Game! {
|
var game: Game! {
|
||||||
didSet {
|
didSet {
|
||||||
let deltaCore = Delta.core(for: self.game.type)!
|
let deltaCore = Delta.core(for: self.game.type)!
|
||||||
self.supportedCheatFormats = deltaCore.emulatorConfiguration.supportedCheatFormats
|
self.supportedCheatFormats = deltaCore.supportedCheatFormats.sorted() { $0.name < $1.name }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -241,7 +241,7 @@ private extension SaveStatesViewController
|
|||||||
|
|
||||||
let deltaCore = Delta.core(for: self.game.type)!
|
let deltaCore = Delta.core(for: self.game.type)!
|
||||||
|
|
||||||
let dimensions = deltaCore.emulatorConfiguration.videoBufferInfo.outputDimensions
|
let dimensions = deltaCore.videoFormat.dimensions
|
||||||
cell.maximumImageSize = CGSize(width: self.prototypeCellWidthConstraint.constant, height: (self.prototypeCellWidthConstraint.constant / dimensions.width) * dimensions.height)
|
cell.maximumImageSize = CGSize(width: self.prototypeCellWidthConstraint.constant, height: (self.prototypeCellWidthConstraint.constant / dimensions.width) * dimensions.height)
|
||||||
|
|
||||||
cell.textLabel.font = UIFont.preferredFont(forTextStyle: .subheadline)
|
cell.textLabel.font = UIFont.preferredFont(forTextStyle: .subheadline)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user