In order to edit this wiki, you must register and verify your account.

Release 1.6.0: Difference between revisions

From Cemu Wiki
Jump to:navigation Jump to:search
(Changelog add for 1.6.0)
 
(Added link to changelog)
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Changelog==
==Changelog==
New texture cache/manager<br />
{{#ev:youtube|XSOrQUo3s20|450|inline|[https://youtu.be/XSOrQUo3s20 Preview]|frame}}
Huge compatibility improvements<br />
<pre>
Graphic improvements<br />
CPU: Added instructions ADDCO, DIVWUO DIVWO, CRAND and CRANDC to interpreter
Audio improvements<br />
CPU: Added instructions LFDU, STFDU, BLRL and SLW. to recompiler
Many all-around changes and bugfixes<br />
CPU: Fixed rounding error in FCTIWZ and PSQ_ST recompiler instruction
CPU: Improved detection of function end address for recompiler. Added special handling for shared function bodies
CPU: Fixed recompiler generating invalid code for conditional branch instructions with link flag set
CPU: New option 'emulateSinglePrecision' for game profiles. If enabled, recompiler will round results to single-precision after single-precision instructions.


SAVE: Added API SAVEGetStatOtherNormalApplicationVariationAsync()


CPU: Added instructions ADDCO, DIVWUO DIVWO, CRAND and CRANDC to interpreter<br />
coreinit: New API FSSetPosFileAsync(), FSGetPosFileAsync(), FSIsEof(), FSIsEofAsync(), OSGetAvailPhysAddrRange(), OSAllocVirtAddr(), OSMapMemory(), OSUnmapMemory(), MEMAdjustExpHeap(), MEMFreeToBlockHeap()
CPU: Added instructions LFDU, STFDU, BLRL and SLW. to recompiler<br />
coreinit: Implemented MPQueue API
CPU: Fixed rounding error in FCTIWZ and PSQ_ST recompiler instruction<br />
coreinit: Improved implementation of OSGetMemBound()
CPU: Improved detection of function end address for recompiler. Added special handling for shared function bodies<br />
coreinit: Fixed OSSleepTicks using wrong timer source
CPU: Fixed recompiler generating invalid code for conditional branch instructions with link flag set<br />
coreinit: Fixed return value of OSWaitSemaphore() when thread does not return immediately
CPU: New option 'emulateSinglePrecision' for game profiles. If enabled, recompiler will round results to single-precision after single-precision instructions.<br />
coreinit: Improved handling of thread joining and detached state


SAVE: Added API SAVEGetStatOtherNormalApplicationVariationAsync()<br />
VPAD: Improved implementation of VPADGetTPCalibratedPointEx()


coreinit: New API FSSetPosFileAsync(), FSGetPosFileAsync(), FSIsEof(), FSIsEofAsync(), OSGetAvailPhysAddrRange(), OSAllocVirtAddr(), OSMapMemory(), OSUnmapMemory(), MEMAdjustExpHeap(), MEMFreeToBlockHeap()<br />
AX: New API AXSetVoiceLoopOffset(), AXSetVoiceEndOffset(), AXSetVoiceSamplesAddr()
coreinit: Implemented MPQueue API<br />
AX: Fixed handling of upsample stage when used before final mix callback
coreinit: Improved implementation of OSGetMemBound()<br />
coreinit: Fixed OSSleepTicks using wrong timer source<br />
coreinit: Fixed return value of OSWaitSemaphore() when thread does not return immediately<br />
coreinit: Improved handling of thread joining and detached state<br />


VPAD: Improved implementation of VPADGetTPCalibratedPointEx()<br />
DMAE: New API DMAESemaphore()


AX: New API AXSetVoiceLoopOffset(), AXSetVoiceEndOffset(), AXSetVoiceSamplesAddr()<br />
GX2: New texture cache implementation
AX: Fixed handling of upsample stage when used before final mix callback<br />
GX2: Improved coalescing of textures of different formats with overlapping memory ranges
GX2: Fixed a bug that caused the wrong texture to be used in a draw call right after a new texture was created
GX2: Fixed a bug where any stencil clear operation would be ignored
GX2: Added handling for SRGB when the surface is also accessed as non-SRGB
GX2: Fixed a special case in vertex/geometry shader where imports would be optimized away if the only way to access them was via indexed gpr access
GX2: Added support for tilemode 32 in GX2CalcSurfaceSizeAndAlignment()
GX2: Added support for compressed texture formats to tiling aperature
GX2: GX2CopySurface() can now properly handle mip levels
GX2: Implemented GX2CopySurfaceEx(), GX2ResolveAAColorBuffer() and GX2RDestroySurfaceEx()
GX2: Implemented MIN_INT and SETNE shader instructions
GX2: Fixed a bug in R16_UNORM texture format decoder
GX2: Added proper support for mip levels to tiling aperature
GX2: Corrected handling of 8 bit formats in tiling aperature
</pre>


DMAE: New API DMAESemaphore()<br />
[http://cemu.info/changelog/cemu_1_6_0.txt]
 
[[Category:Changelog|1.6.0]]
GX2: New texture cache implementation<br />
GX2: Improved coalescing of textures of different formats with overlapping memory ranges<br />
GX2: Fixed a bug that caused the wrong texture to be used in a draw call right after a new texture was created<br />
GX2: Fixed a bug where any stencil clear operation would be ignored<br />
GX2: Added handling for SRGB when the surface is also accessed as non-SRGB<br />
GX2: Fixed a special case in vertex/geometry shader where imports would be optimized away if the only way to access them was via indexed gpr access<br />
GX2: Added support for tilemode 32 in GX2CalcSurfaceSizeAndAlignment()<br />
GX2: Added support for compressed texture formats to tiling aperature<br />
GX2: GX2CopySurface() can now properly handle mip levels<br />
GX2: Implemented GX2CopySurfaceEx(), GX2ResolveAAColorBuffer() and GX2RDestroySurfaceEx()<br />
GX2: Implemented MIN_INT and SETNE shader instructions<br />
GX2: Fixed a bug in R16_UNORM texture format decoder<br />
GX2: Added proper support for mip levels to tiling aperature<br />
GX2: Corrected handling of 8 bit formats in tiling aperature

Revision as of 06:45, 19 July 2017

Changelog

Preview
CPU: Added instructions ADDCO, DIVWUO DIVWO, CRAND and CRANDC to interpreter 	
CPU: Added instructions LFDU, STFDU, BLRL and SLW. to recompiler 	
CPU: Fixed rounding error in FCTIWZ and PSQ_ST recompiler instruction 	
CPU: Improved detection of function end address for recompiler. Added special handling for shared function bodies 	
CPU: Fixed recompiler generating invalid code for conditional branch instructions with link flag set 	
CPU: New option 'emulateSinglePrecision' for game profiles. If enabled, recompiler will round results to single-precision after single-precision instructions. 	

SAVE: Added API SAVEGetStatOtherNormalApplicationVariationAsync() 	

coreinit: New API FSSetPosFileAsync(), FSGetPosFileAsync(), FSIsEof(), FSIsEofAsync(), OSGetAvailPhysAddrRange(), OSAllocVirtAddr(), OSMapMemory(), OSUnmapMemory(), MEMAdjustExpHeap(), MEMFreeToBlockHeap() 	
coreinit: Implemented MPQueue API 	
coreinit: Improved implementation of OSGetMemBound() 	
coreinit: Fixed OSSleepTicks using wrong timer source 	
coreinit: Fixed return value of OSWaitSemaphore() when thread does not return immediately 	
coreinit: Improved handling of thread joining and detached state 	

VPAD: Improved implementation of VPADGetTPCalibratedPointEx() 	

AX: New API AXSetVoiceLoopOffset(), AXSetVoiceEndOffset(), AXSetVoiceSamplesAddr() 	
AX: Fixed handling of upsample stage when used before final mix callback 	

DMAE: New API DMAESemaphore() 	

GX2: New texture cache implementation 	
GX2: Improved coalescing of textures of different formats with overlapping memory ranges 	
GX2: Fixed a bug that caused the wrong texture to be used in a draw call right after a new texture was created 	
GX2: Fixed a bug where any stencil clear operation would be ignored 	
GX2: Added handling for SRGB when the surface is also accessed as non-SRGB 	
GX2: Fixed a special case in vertex/geometry shader where imports would be optimized away if the only way to access them was via indexed gpr access 	
GX2: Added support for tilemode 32 in GX2CalcSurfaceSizeAndAlignment() 	
GX2: Added support for compressed texture formats to tiling aperature 	
GX2: GX2CopySurface() can now properly handle mip levels 	
GX2: Implemented GX2CopySurfaceEx(), GX2ResolveAAColorBuffer() and GX2RDestroySurfaceEx() 	
GX2: Implemented MIN_INT and SETNE shader instructions 	
GX2: Fixed a bug in R16_UNORM texture format decoder 	
GX2: Added proper support for mip levels to tiling aperature 	
GX2: Corrected handling of 8 bit formats in tiling aperature

[1]