Mac: Wait for metal command buffer to finish before presenting drawable

This commit is contained in:
Michael Buckley 2022-10-30 20:02:11 -07:00
parent ae12429a0d
commit a2ebe3f09f
3 changed files with 32 additions and 5 deletions

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="19529" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21225" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="19529"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21225"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>

View File

@ -3369,6 +3369,31 @@ void QuitWithFatalError ( NSString *message)
- (void)setCPUOverclockMode:(int)mode
{
Settings.OverclockMode = mode;
switch (mode)
{
default:
case 0:
Settings.OneClockCycle = 6;
Settings.OneSlowClockCycle = 8;
Settings.TwoClockCycles = 12;
break;
case 1:
Settings.OneClockCycle = 6;
Settings.OneSlowClockCycle = 6;
Settings.TwoClockCycles = 12;
break;
case 2:
Settings.OneClockCycle = 4;
Settings.OneSlowClockCycle = 6;
Settings.TwoClockCycles = 8;
break;
case 3:
Settings.OneClockCycle = 3;
Settings.OneSlowClockCycle = 4;
Settings.TwoClockCycles = 6;
break;
}
}
- (void)setApplySpecificGameHacks:(BOOL)flag

View File

@ -369,10 +369,12 @@ static void S9xPutImageMetal (int width, int height, uint16 *buffer16)
[renderEncoder endEncoding];
[commandBuffer presentDrawable:drawable];
}
[commandBuffer commit];
[commandBuffer commit];
[commandBuffer waitUntilCompleted];
[drawable present];
}
}
void S9xTextMode (void)