├── GLideN64
├── .gitignore
├── .gitrepo
├── .travis.yml
├── LICENSE
├── README.md
├── appveyor.yml
├── ini
│ ├── GLideN64.custom.ini
│ └── GLideN64.ini
├── licenses
│ ├── GLSL-FXAA
│ │ └── LICENSE.md
│ ├── GlideHQ
│ │ └── gpl-2.0.txt
│ ├── Glow
│ │ └── LICENSE
│ ├── gles2n64
│ │ └── LICENSE
│ └── readerwriterqueue
│ │ └── LICENSE.md
├── projects
│ ├── cmake
│ │ └── Readme.txt
│ └── msvc
│ │ ├── GLideN64.sln
│ │ ├── GLideN64.vcxproj
│ │ ├── GLideN64.vcxproj.filters
│ │ ├── GLideNUI.pro
│ │ ├── GLideNUI.vcxproj
│ │ ├── GLideNUI.vcxproj.filters
│ │ ├── lib
│ │ ├── dbg
│ │ │ ├── freetype253MT_D.lib
│ │ │ ├── libpngd.lib
│ │ │ └── zlibd.lib
│ │ ├── msvc12
│ │ │ ├── dbg
│ │ │ │ ├── freetype253MT_D.lib
│ │ │ │ ├── libpngd.lib
│ │ │ │ └── zlibd.lib
│ │ │ └── rel
│ │ │ │ ├── freetype253MT.lib
│ │ │ │ ├── libpng.lib
│ │ │ │ └── zlib.lib
│ │ ├── rel
│ │ │ ├── freetype253MT.lib
│ │ │ ├── libpng.lib
│ │ │ └── zlib.lib
│ │ └── x64
│ │ │ ├── dbg
│ │ │ ├── freetype253MT_D.lib
│ │ │ ├── libpngd.lib
│ │ │ └── zlibd.lib
│ │ │ └── rel
│ │ │ ├── freetype253MT.lib
│ │ │ ├── libpng.lib
│ │ │ └── zlib.lib
│ │ ├── libGLideNHQ.vcxproj
│ │ ├── libGLideNHQ.vcxproj.filters
│ │ ├── osal.vcxproj
│ │ └── osal.vcxproj.filters
├── src
│ ├── 3DMath.cpp
│ ├── 3DMath.h
│ ├── BufferCopy
│ │ ├── ColorBufferToRDRAM.cpp
│ │ ├── ColorBufferToRDRAM.h
│ │ ├── ColorBufferToRDRAMStub.h
│ │ ├── DepthBufferToRDRAM.cpp
│ │ ├── DepthBufferToRDRAM.h
│ │ ├── RDRAMtoColorBuffer.cpp
│ │ ├── RDRAMtoColorBuffer.h
│ │ └── WriteToRDRAM.h
│ ├── CMakeLists.txt
│ ├── CRC.h
│ ├── CRC32.cpp
│ ├── CRC32_ARMV8.cpp
│ ├── CRC_OPT.cpp
│ ├── Combiner.cpp
│ ├── Combiner.h
│ ├── CombinerKey.cpp
│ ├── CombinerKey.h
│ ├── CommonPluginAPI.cpp
│ ├── Config.cpp
│ ├── Config.h
│ ├── DebugDump.cpp
│ ├── DebugDump.h
│ ├── Debugger.cpp
│ ├── Debugger.h
│ ├── DepthBuffer.cpp
│ ├── DepthBuffer.h
│ ├── DepthBufferRender
│ │ ├── ClipPolygon.cpp
│ │ ├── ClipPolygon.h
│ │ ├── DepthBufferRender.cpp
│ │ └── DepthBufferRender.h
│ ├── DisplayLoadProgress.cpp
│ ├── DisplayLoadProgress.h
│ ├── DisplayWindow.cpp
│ ├── DisplayWindow.h
│ ├── FrameBuffer.cpp
│ ├── FrameBuffer.h
│ ├── FrameBufferEmulationIssues.txt
│ ├── FrameBufferInfo.cpp
│ ├── FrameBufferInfo.h
│ ├── FrameBufferInfoAPI.h
│ ├── GBI.cpp
│ ├── GBI.h
│ ├── GLideN64.cpp
│ ├── GLideN64.h
│ ├── GLideNHQ
│ │ ├── CMakeLists.txt
│ │ ├── Ext_TxFilter.cpp
│ │ ├── Ext_TxFilter.h
│ │ ├── GlideHQ.rc
│ │ ├── README.txt
│ │ ├── TextureFilters.cpp
│ │ ├── TextureFilters.h
│ │ ├── TextureFilters_2xsai.cpp
│ │ ├── TextureFilters_2xsai.h
│ │ ├── TextureFilters_hq2x.cpp
│ │ ├── TextureFilters_hq2x.h
│ │ ├── TextureFilters_hq4x.cpp
│ │ ├── TextureFilters_hq4x.h
│ │ ├── TextureFilters_lq2x.h
│ │ ├── TextureFilters_xbrz.cpp
│ │ ├── TextureFilters_xbrz.h
│ │ ├── TxCache.cpp
│ │ ├── TxCache.h
│ │ ├── TxDbg.cpp
│ │ ├── TxDbg.h
│ │ ├── TxFilter.cpp
│ │ ├── TxFilter.h
│ │ ├── TxFilterExport.cpp
│ │ ├── TxHiResCache.cpp
│ │ ├── TxHiResCache.h
│ │ ├── TxImage.cpp
│ │ ├── TxImage.h
│ │ ├── TxInternal.h
│ │ ├── TxQuantize.cpp
│ │ ├── TxQuantize.h
│ │ ├── TxReSample.cpp
│ │ ├── TxReSample.h
│ │ ├── TxTexCache.cpp
│ │ ├── TxTexCache.h
│ │ ├── TxUtil.cpp
│ │ ├── TxUtil.h
│ │ ├── bldno.cpp
│ │ ├── bldno.h
│ │ ├── gpl-2.0.txt
│ │ ├── inc
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ ├── pnglibconf.h
│ │ │ ├── pngstruct.h
│ │ │ ├── zconf.h
│ │ │ └── zlib.h
│ │ ├── lib
│ │ │ ├── libdxtn.a
│ │ │ ├── libpng.a
│ │ │ └── libz.a
│ │ ├── test
│ │ │ ├── CMakeLists.txt
│ │ │ ├── Makefile.gcc
│ │ │ ├── Makefile.vc8
│ │ │ └── test.cpp
│ │ ├── txWidestringWrapper.cpp
│ │ └── txWidestringWrapper.h
│ ├── GLideNUI
│ │ ├── AboutDialog.cpp
│ │ ├── AboutDialog.h
│ │ ├── AboutDialog.ui
│ │ ├── BottomLeft.ico
│ │ ├── BottomRight.ico
│ │ ├── ConfigDialog.cpp
│ │ ├── ConfigDialog.h
│ │ ├── Down.ico
│ │ ├── FullscreenResolutions.h
│ │ ├── GLideNUI.cpp
│ │ ├── GLideNUI.h
│ │ ├── GLideNUI.pro
│ │ ├── Icon-Original.ico
│ │ ├── Icon.ico
│ │ ├── Info.ico
│ │ ├── Left.ico
│ │ ├── Right.ico
│ │ ├── ScreenShot.cpp
│ │ ├── Settings.cpp
│ │ ├── Settings.h
│ │ ├── TopLeft.ico
│ │ ├── TopRight.ico
│ │ ├── Up.ico
│ │ ├── Warning.ico
│ │ ├── configDialog.ui
│ │ ├── fullscreenresolutions_windows.cpp
│ │ └── icon.qrc
│ ├── Graphics
│ │ ├── ColorBufferReader.cpp
│ │ ├── ColorBufferReader.h
│ │ ├── CombinerProgram.cpp
│ │ ├── CombinerProgram.h
│ │ ├── Context.cpp
│ │ ├── Context.h
│ │ ├── ContextImpl.h
│ │ ├── FramebufferTextureFormats.h
│ │ ├── ObjectHandle.cpp
│ │ ├── ObjectHandle.h
│ │ ├── OpenGLContext
│ │ │ ├── GLFunctions.cpp
│ │ │ ├── GLFunctions.h
│ │ │ ├── GLSL
│ │ │ │ ├── glsl_CombinerInputs.cpp
│ │ │ │ ├── glsl_CombinerInputs.h
│ │ │ │ ├── glsl_CombinerProgramBuilder.cpp
│ │ │ │ ├── glsl_CombinerProgramBuilder.h
│ │ │ │ ├── glsl_CombinerProgramImpl.cpp
│ │ │ │ ├── glsl_CombinerProgramImpl.h
│ │ │ │ ├── glsl_CombinerProgramUniformFactory.cpp
│ │ │ │ ├── glsl_CombinerProgramUniformFactory.h
│ │ │ │ ├── glsl_FXAA.cpp
│ │ │ │ ├── glsl_FXAA.h
│ │ │ │ ├── glsl_ShaderPart.h
│ │ │ │ ├── glsl_ShaderStorage.cpp
│ │ │ │ ├── glsl_ShaderStorage.h
│ │ │ │ ├── glsl_SpecialShadersFactory.cpp
│ │ │ │ ├── glsl_SpecialShadersFactory.h
│ │ │ │ ├── glsl_Utils.cpp
│ │ │ │ └── glsl_Utils.h
│ │ │ ├── GraphicBuffer
│ │ │ │ ├── GraphicBufferWrapper.cpp
│ │ │ │ ├── GraphicBufferWrapper.h
│ │ │ │ ├── PrivateApi
│ │ │ │ │ ├── GraphicBuffer.cpp
│ │ │ │ │ ├── GraphicBuffer.h
│ │ │ │ │ ├── gralloc.h
│ │ │ │ │ ├── libhardware.cpp
│ │ │ │ │ └── libhardware.h
│ │ │ │ └── PublicApi
│ │ │ │ │ ├── android_hardware_buffer_compat.cpp
│ │ │ │ │ ├── android_hardware_buffer_compat.h
│ │ │ │ │ ├── check.h
│ │ │ │ │ └── dcheck.h
│ │ │ ├── ThreadedOpenGl
│ │ │ │ ├── BlockingQueue.h
│ │ │ │ ├── RingBufferPool.cpp
│ │ │ │ ├── RingBufferPool.h
│ │ │ │ ├── atomicops.h
│ │ │ │ ├── opengl_Command.cpp
│ │ │ │ ├── opengl_Command.h
│ │ │ │ ├── opengl_ObjectPool.cpp
│ │ │ │ ├── opengl_ObjectPool.h
│ │ │ │ ├── opengl_WrappedFunctions.cpp
│ │ │ │ ├── opengl_WrappedFunctions.h
│ │ │ │ ├── opengl_Wrapper.cpp
│ │ │ │ ├── opengl_Wrapper.h
│ │ │ │ └── readerwriterqueue.h
│ │ │ ├── mupen64plus
│ │ │ │ └── mupen64plus_DisplayWindow.cpp
│ │ │ ├── opengl_Attributes.cpp
│ │ │ ├── opengl_Attributes.h
│ │ │ ├── opengl_BufferManipulationObjectFactory.cpp
│ │ │ ├── opengl_BufferManipulationObjectFactory.h
│ │ │ ├── opengl_BufferedDrawer.cpp
│ │ │ ├── opengl_BufferedDrawer.h
│ │ │ ├── opengl_CachedFunctions.cpp
│ │ │ ├── opengl_CachedFunctions.h
│ │ │ ├── opengl_ColorBufferReaderWithBufferStorage.cpp
│ │ │ ├── opengl_ColorBufferReaderWithBufferStorage.h
│ │ │ ├── opengl_ColorBufferReaderWithEGLImage.cpp
│ │ │ ├── opengl_ColorBufferReaderWithEGLImage.h
│ │ │ ├── opengl_ColorBufferReaderWithPixelBuffer.cpp
│ │ │ ├── opengl_ColorBufferReaderWithPixelBuffer.h
│ │ │ ├── opengl_ColorBufferReaderWithReadPixels.cpp
│ │ │ ├── opengl_ColorBufferReaderWithReadPixels.h
│ │ │ ├── opengl_ContextImpl.cpp
│ │ │ ├── opengl_ContextImpl.h
│ │ │ ├── opengl_GLInfo.cpp
│ │ │ ├── opengl_GLInfo.h
│ │ │ ├── opengl_GraphicsDrawer.h
│ │ │ ├── opengl_Parameters.cpp
│ │ │ ├── opengl_TextureManipulationObjectFactory.cpp
│ │ │ ├── opengl_TextureManipulationObjectFactory.h
│ │ │ ├── opengl_UnbufferedDrawer.cpp
│ │ │ ├── opengl_UnbufferedDrawer.h
│ │ │ ├── opengl_Utils.cpp
│ │ │ ├── opengl_Utils.h
│ │ │ └── windows
│ │ │ │ ├── WindowsWGL.cpp
│ │ │ │ ├── WindowsWGL.h
│ │ │ │ └── windows_DisplayWindow.cpp
│ │ ├── Parameter.h
│ │ ├── Parameters.h
│ │ ├── PixelBuffer.h
│ │ └── ShaderProgram.h
│ ├── GraphicsDrawer.cpp
│ ├── GraphicsDrawer.h
│ ├── Keys.cpp
│ ├── Keys.h
│ ├── Log.cpp
│ ├── Log.h
│ ├── Log_android.cpp
│ ├── Log_ios.mm
│ ├── MemoryStatus.h
│ ├── MupenPlusPluginAPI.cpp
│ ├── N64.cpp
│ ├── N64.h
│ ├── Neon
│ │ ├── 3DMathNeon.cpp
│ │ ├── CRC_OPT_NEON.cpp
│ │ ├── RSP_LoadMatrixNeon.cpp
│ │ └── gSPNeon.cpp
│ ├── NoiseTexture.cpp
│ ├── NoiseTexture.h
│ ├── PaletteTexture.cpp
│ ├── PaletteTexture.h
│ ├── Performance.cpp
│ ├── Performance.h
│ ├── Platform.h
│ ├── PluginAPI.h
│ ├── PostProcessor.cpp
│ ├── PostProcessor.h
│ ├── RDP.cpp
│ ├── RDP.h
│ ├── RSP.cpp
│ ├── RSP.h
│ ├── RSP_LoadMatrix.cpp
│ ├── RSP_LoadMatrixX86.cpp
│ ├── SoftwareRender.cpp
│ ├── SoftwareRender.h
│ ├── TexrectDrawer.cpp
│ ├── TexrectDrawer.h
│ ├── TextDrawer.cpp
│ ├── TextDrawer.h
│ ├── TextDrawerStub.cpp
│ ├── TextureFilterHandler.cpp
│ ├── TextureFilterHandler.h
│ ├── Textures.cpp
│ ├── Textures.h
│ ├── TxFilterStub.cpp
│ ├── Types.h
│ ├── VI.cpp
│ ├── VI.h
│ ├── ZilmarGFX_1_3.h
│ ├── ZilmarPluginAPI.cpp
│ ├── ZlutTexture.cpp
│ ├── ZlutTexture.h
│ ├── common
│ │ └── CommonAPIImpl_common.cpp
│ ├── convert.cpp
│ ├── convert.h
│ ├── gDP.cpp
│ ├── gDP.h
│ ├── gSP.cpp
│ ├── gSP.h
│ ├── getRevision.bat
│ ├── getRevision.sh
│ ├── inc
│ │ ├── GL
│ │ │ ├── glcorearb.h
│ │ │ ├── glext.h
│ │ │ ├── glxext.h
│ │ │ └── wglext.h
│ │ ├── callbacks.h
│ │ ├── config.h
│ │ ├── debugger.h
│ │ ├── freetype
│ │ │ └── include
│ │ │ │ ├── config
│ │ │ │ ├── ftconfig.h
│ │ │ │ ├── ftheader.h
│ │ │ │ ├── ftmodule.h
│ │ │ │ ├── ftoption.h
│ │ │ │ └── ftstdlib.h
│ │ │ │ ├── freetype.h
│ │ │ │ ├── ft2build.h
│ │ │ │ ├── ftadvanc.h
│ │ │ │ ├── ftautoh.h
│ │ │ │ ├── ftbbox.h
│ │ │ │ ├── ftbdf.h
│ │ │ │ ├── ftbitmap.h
│ │ │ │ ├── ftbzip2.h
│ │ │ │ ├── ftcache.h
│ │ │ │ ├── ftcffdrv.h
│ │ │ │ ├── ftchapters.h
│ │ │ │ ├── ftcid.h
│ │ │ │ ├── fterrdef.h
│ │ │ │ ├── fterrors.h
│ │ │ │ ├── ftgasp.h
│ │ │ │ ├── ftglyph.h
│ │ │ │ ├── ftgxval.h
│ │ │ │ ├── ftgzip.h
│ │ │ │ ├── ftimage.h
│ │ │ │ ├── ftincrem.h
│ │ │ │ ├── ftlcdfil.h
│ │ │ │ ├── ftlist.h
│ │ │ │ ├── ftlzw.h
│ │ │ │ ├── ftmac.h
│ │ │ │ ├── ftmm.h
│ │ │ │ ├── ftmodapi.h
│ │ │ │ ├── ftmoderr.h
│ │ │ │ ├── ftotval.h
│ │ │ │ ├── ftoutln.h
│ │ │ │ ├── ftpfr.h
│ │ │ │ ├── ftrender.h
│ │ │ │ ├── ftsizes.h
│ │ │ │ ├── ftsnames.h
│ │ │ │ ├── ftstroke.h
│ │ │ │ ├── ftsynth.h
│ │ │ │ ├── ftsystem.h
│ │ │ │ ├── fttrigon.h
│ │ │ │ ├── ftttdrv.h
│ │ │ │ ├── fttypes.h
│ │ │ │ ├── ftwinfnt.h
│ │ │ │ ├── ftxf86.h
│ │ │ │ ├── internal
│ │ │ │ ├── autohint.h
│ │ │ │ ├── ftcalc.h
│ │ │ │ ├── ftdebug.h
│ │ │ │ ├── ftdriver.h
│ │ │ │ ├── ftgloadr.h
│ │ │ │ ├── ftmemory.h
│ │ │ │ ├── ftobjs.h
│ │ │ │ ├── ftpic.h
│ │ │ │ ├── ftrfork.h
│ │ │ │ ├── ftserv.h
│ │ │ │ ├── ftstream.h
│ │ │ │ ├── fttrace.h
│ │ │ │ ├── ftvalid.h
│ │ │ │ ├── internal.h
│ │ │ │ ├── psaux.h
│ │ │ │ ├── pshints.h
│ │ │ │ ├── services
│ │ │ │ │ ├── svbdf.h
│ │ │ │ │ ├── svcid.h
│ │ │ │ │ ├── svgldict.h
│ │ │ │ │ ├── svgxval.h
│ │ │ │ │ ├── svkern.h
│ │ │ │ │ ├── svmm.h
│ │ │ │ │ ├── svotval.h
│ │ │ │ │ ├── svpfr.h
│ │ │ │ │ ├── svpostnm.h
│ │ │ │ │ ├── svprop.h
│ │ │ │ │ ├── svpscmap.h
│ │ │ │ │ ├── svpsinfo.h
│ │ │ │ │ ├── svsfnt.h
│ │ │ │ │ ├── svttcmap.h
│ │ │ │ │ ├── svtteng.h
│ │ │ │ │ ├── svttglyf.h
│ │ │ │ │ ├── svwinfnt.h
│ │ │ │ │ └── svxf86nm.h
│ │ │ │ ├── sfnt.h
│ │ │ │ ├── t1types.h
│ │ │ │ └── tttypes.h
│ │ │ │ ├── t1tables.h
│ │ │ │ ├── ttnameid.h
│ │ │ │ ├── tttables.h
│ │ │ │ ├── tttags.h
│ │ │ │ └── ttunpat.h
│ │ ├── m64p_common.h
│ │ ├── m64p_config.h
│ │ ├── m64p_debugger.h
│ │ ├── m64p_frontend.h
│ │ ├── m64p_plugin.h
│ │ ├── m64p_types.h
│ │ └── m64p_vidext.h
│ ├── iob.cpp
│ ├── mupenplus
│ │ ├── CommonAPIImpl_mupenplus.cpp
│ │ ├── Config_mupenplus.cpp
│ │ ├── GLideN64_mupenplus.h
│ │ ├── MemoryStatus_mupenplus.cpp
│ │ ├── MupenPlusAPIImpl.cpp
│ │ └── video_api_export.ver
│ ├── osal
│ │ ├── CMakeLists.txt
│ │ ├── osal_files.h
│ │ ├── osal_files_ios.mm
│ │ ├── osal_files_unix.c
│ │ └── osal_files_win32.c
│ ├── sdl2_compat.h
│ ├── uCodes
│ │ ├── F3D.cpp
│ │ ├── F3D.h
│ │ ├── F3DAM.cpp
│ │ ├── F3DAM.h
│ │ ├── F3DBETA.cpp
│ │ ├── F3DBETA.h
│ │ ├── F3DDKR.cpp
│ │ ├── F3DDKR.h
│ │ ├── F3DEX.cpp
│ │ ├── F3DEX.h
│ │ ├── F3DEX2.cpp
│ │ ├── F3DEX2.h
│ │ ├── F3DEX2ACCLAIM.cpp
│ │ ├── F3DEX2ACCLAIM.h
│ │ ├── F3DEX2CBFD.cpp
│ │ ├── F3DEX2CBFD.h
│ │ ├── F3DFLX2.cpp
│ │ ├── F3DFLX2.h
│ │ ├── F3DGOLDEN.cpp
│ │ ├── F3DGOLDEN.h
│ │ ├── F3DPD.cpp
│ │ ├── F3DPD.h
│ │ ├── F3DSETA.cpp
│ │ ├── F3DSETA.h
│ │ ├── F3DTEXA.cpp
│ │ ├── F3DTEXA.h
│ │ ├── F3DZEX2.cpp
│ │ ├── F3DZEX2.h
│ │ ├── F5Indi_Naboo.cpp
│ │ ├── F5Indi_Naboo.h
│ │ ├── F5Rogue.cpp
│ │ ├── F5Rogue.h
│ │ ├── L3D.cpp
│ │ ├── L3D.h
│ │ ├── L3DEX.cpp
│ │ ├── L3DEX.h
│ │ ├── L3DEX2.cpp
│ │ ├── L3DEX2.h
│ │ ├── S2DEX.cpp
│ │ ├── S2DEX.h
│ │ ├── S2DEX2.cpp
│ │ ├── S2DEX2.h
│ │ ├── T3DUX.cpp
│ │ ├── T3DUX.h
│ │ ├── Turbo3D.cpp
│ │ ├── Turbo3D.h
│ │ ├── ZSort.cpp
│ │ ├── ZSort.h
│ │ ├── ZSortBOSS.cpp
│ │ └── ZSortBOSS.h
│ ├── windows
│ │ ├── CommonAPIImpl_windows.cpp
│ │ ├── Config_windows.cpp
│ │ ├── GLideN64_windows.cpp
│ │ ├── GLideN64_windows.h
│ │ ├── MemoryStatus_windows.cpp
│ │ └── ZilmarAPIImpl_windows.cpp
│ ├── winlnxdefs.h
│ ├── wst.h
│ └── xxHash
│ │ ├── xxhash.c
│ │ └── xxhash.h
└── translations
│ ├── gliden64_de.ts
│ ├── gliden64_es.ts
│ ├── gliden64_fr.ts
│ ├── gliden64_it.ts
│ ├── gliden64_ja.ts
│ ├── gliden64_pl.ts
│ └── gliden64_pt_BR.ts
├── Makefile
├── Makefile.common
├── README.md
├── custom
├── GLideN64
│ ├── CRC.cpp
│ ├── GLideN64.custom.ini.h
│ ├── GLideN64_libretro.h
│ ├── inc
│ │ └── ARB_buffer_storage.h
│ └── mupenplus
│ │ ├── CommonAPIImpl_mupenplus.cpp
│ │ ├── Config_mupenplus.cpp
│ │ ├── GLideN64_mupenplus.h
│ │ └── OpenGL_mupenplus.cpp
├── android
│ ├── arm
│ │ └── libpng.a
│ ├── arm64
│ │ └── libpng.a
│ ├── include
│ │ ├── GLES3
│ │ │ └── gl31.h
│ │ ├── cutils
│ │ │ ├── android_reboot.h
│ │ │ ├── aref.h
│ │ │ ├── ashmem.h
│ │ │ ├── atomic.h
│ │ │ ├── bitops.h
│ │ │ ├── compiler.h
│ │ │ ├── config_utils.h
│ │ │ ├── debugger.h
│ │ │ ├── fs.h
│ │ │ ├── hashmap.h
│ │ │ ├── iosched_policy.h
│ │ │ ├── jstring.h
│ │ │ ├── klog.h
│ │ │ ├── list.h
│ │ │ ├── log.h
│ │ │ ├── memory.h
│ │ │ ├── misc.h
│ │ │ ├── multiuser.h
│ │ │ ├── native_handle.h
│ │ │ ├── open_memstream.h
│ │ │ ├── partition_utils.h
│ │ │ ├── process_name.h
│ │ │ ├── properties.h
│ │ │ ├── qtaguid.h
│ │ │ ├── record_stream.h
│ │ │ ├── sched_policy.h
│ │ │ ├── sockets.h
│ │ │ ├── str_parms.h
│ │ │ ├── threads.h
│ │ │ ├── trace.h
│ │ │ └── uevent.h
│ │ ├── hardware
│ │ │ ├── activity_recognition.h
│ │ │ ├── audio.h
│ │ │ ├── audio_alsaops.h
│ │ │ ├── audio_effect.h
│ │ │ ├── audio_policy.h
│ │ │ ├── bluetooth.h
│ │ │ ├── boot_control.h
│ │ │ ├── bt_av.h
│ │ │ ├── bt_common_types.h
│ │ │ ├── bt_gatt.h
│ │ │ ├── bt_gatt_client.h
│ │ │ ├── bt_gatt_server.h
│ │ │ ├── bt_gatt_types.h
│ │ │ ├── bt_hf.h
│ │ │ ├── bt_hf_client.h
│ │ │ ├── bt_hh.h
│ │ │ ├── bt_hl.h
│ │ │ ├── bt_mce.h
│ │ │ ├── bt_pan.h
│ │ │ ├── bt_rc.h
│ │ │ ├── bt_sdp.h
│ │ │ ├── bt_sock.h
│ │ │ ├── camera.h
│ │ │ ├── camera2.h
│ │ │ ├── camera3.h
│ │ │ ├── camera_common.h
│ │ │ ├── consumerir.h
│ │ │ ├── fb.h
│ │ │ ├── fingerprint.h
│ │ │ ├── fused_location.h
│ │ │ ├── gatekeeper.h
│ │ │ ├── gps.h
│ │ │ ├── gralloc.h
│ │ │ ├── hardware.h
│ │ │ ├── hdmi_cec.h
│ │ │ ├── hw_auth_token.h
│ │ │ ├── hwcomposer.h
│ │ │ ├── hwcomposer_defs.h
│ │ │ ├── input.h
│ │ │ ├── keymaster0.h
│ │ │ ├── keymaster1.h
│ │ │ ├── keymaster2.h
│ │ │ ├── keymaster_common.h
│ │ │ ├── keymaster_defs.h
│ │ │ ├── lights.h
│ │ │ ├── local_time_hal.h
│ │ │ ├── memtrack.h
│ │ │ ├── nfc.h
│ │ │ ├── nfc_tag.h
│ │ │ ├── nvram.h
│ │ │ ├── nvram_defs.h
│ │ │ ├── power.h
│ │ │ ├── qemu_pipe.h
│ │ │ ├── qemud.h
│ │ │ ├── radio.h
│ │ │ ├── sensors.h
│ │ │ ├── sound_trigger.h
│ │ │ ├── tv_input.h
│ │ │ └── vibrator.h
│ │ ├── log
│ │ │ ├── event_tag_map.h
│ │ │ ├── log.h
│ │ │ ├── log_read.h
│ │ │ ├── logd.h
│ │ │ ├── logger.h
│ │ │ ├── logprint.h
│ │ │ └── uio.h
│ │ ├── system
│ │ │ ├── camera.h
│ │ │ ├── graphics.h
│ │ │ ├── radio.h
│ │ │ ├── thread_defs.h
│ │ │ └── window.h
│ │ ├── ui
│ │ │ ├── ANativeObjectBase.h
│ │ │ ├── DisplayInfo.h
│ │ │ ├── DisplayStatInfo.h
│ │ │ ├── Fence.h
│ │ │ ├── FrameStats.h
│ │ │ ├── FramebufferNativeWindow.h
│ │ │ ├── GraphicBuffer.h
│ │ │ ├── GraphicBufferAllocator.h
│ │ │ ├── GraphicBufferMapper.h
│ │ │ ├── PixelFormat.h
│ │ │ ├── Point.h
│ │ │ ├── Rect.h
│ │ │ ├── Region.h
│ │ │ ├── TMatHelpers.h
│ │ │ ├── TVecHelpers.h
│ │ │ ├── UiConfig.h
│ │ │ ├── mat4.h
│ │ │ ├── vec2.h
│ │ │ ├── vec3.h
│ │ │ └── vec4.h
│ │ └── utils
│ │ │ ├── AndroidThreads.h
│ │ │ ├── Atomic.h
│ │ │ ├── BitSet.h
│ │ │ ├── BlobCache.h
│ │ │ ├── ByteOrder.h
│ │ │ ├── CallStack.h
│ │ │ ├── Compat.h
│ │ │ ├── Condition.h
│ │ │ ├── Debug.h
│ │ │ ├── Endian.h
│ │ │ ├── Errors.h
│ │ │ ├── FileMap.h
│ │ │ ├── Flattenable.h
│ │ │ ├── Functor.h
│ │ │ ├── JenkinsHash.h
│ │ │ ├── KeyedVector.h
│ │ │ ├── LinearTransform.h
│ │ │ ├── List.h
│ │ │ ├── Log.h
│ │ │ ├── Looper.h
│ │ │ ├── LruCache.h
│ │ │ ├── Mutex.h
│ │ │ ├── NativeHandle.h
│ │ │ ├── Printer.h
│ │ │ ├── ProcessCallStack.h
│ │ │ ├── PropertyMap.h
│ │ │ ├── RWLock.h
│ │ │ ├── RefBase.h
│ │ │ ├── Singleton.h
│ │ │ ├── SortedVector.h
│ │ │ ├── StopWatch.h
│ │ │ ├── String16.h
│ │ │ ├── String8.h
│ │ │ ├── StrongPointer.h
│ │ │ ├── SystemClock.h
│ │ │ ├── Thread.h
│ │ │ ├── ThreadDefs.h
│ │ │ ├── Timers.h
│ │ │ ├── Tokenizer.h
│ │ │ ├── Trace.h
│ │ │ ├── TypeHelpers.h
│ │ │ ├── Unicode.h
│ │ │ ├── Vector.h
│ │ │ ├── VectorImpl.h
│ │ │ ├── misc.h
│ │ │ └── threads.h
│ ├── x86
│ │ └── libpng.a
│ └── x86_64
│ │ └── libpng.a
├── libretro_externs.h
├── mman-win32
│ ├── mman.c
│ └── sys
│ │ └── mman.h
├── mupen64plus-core
│ ├── api
│ │ ├── config.c
│ │ ├── frontend_libretro.c
│ │ ├── msvc_compat.h
│ │ └── vidext_libretro.c
│ ├── main
│ │ └── mupen64plus.ini.h
│ └── plugin
│ │ ├── audio_libretro
│ │ ├── audio_backend_libretro.c
│ │ └── audio_plugin.h
│ │ ├── emulate_game_controller_via_input_plugin.h
│ │ └── emulate_game_controller_via_libretro.c
├── mupen64plus-rsp-cxd4
│ └── module.c
└── osal
│ ├── osal_files.h
│ ├── osal_files_unix.c
│ └── osal_files_win32.c
├── libretro-common
├── .gitignore
├── .gitrepo
├── audio
│ ├── audio_mix.c
│ ├── audio_mixer.c
│ ├── conversion
│ │ ├── float_to_s16.c
│ │ ├── float_to_s16_neon.S
│ │ ├── float_to_s16_neon.c
│ │ ├── s16_to_float.c
│ │ ├── s16_to_float_neon.S
│ │ └── s16_to_float_neon.c
│ ├── dsp_filter.c
│ ├── dsp_filters
│ │ ├── BassBoost.dsp
│ │ ├── ChipTuneEnhance.dsp
│ │ ├── Chorus.dsp
│ │ ├── Crystalizer.dsp
│ │ ├── EQ.dsp
│ │ ├── Echo.dsp
│ │ ├── EchoReverb.dsp
│ │ ├── HighShelfDampen.dsp
│ │ ├── IIR.dsp
│ │ ├── LowPassCPS.dsp
│ │ ├── Makefile
│ │ ├── Mono.dsp
│ │ ├── Panning.dsp
│ │ ├── Phaser.dsp
│ │ ├── Reverb.dsp
│ │ ├── Tremolo.dsp
│ │ ├── Vibrato.dsp
│ │ ├── WahWah.dsp
│ │ ├── chorus.c
│ │ ├── configure
│ │ ├── crystalizer.c
│ │ ├── echo.c
│ │ ├── eq.c
│ │ ├── fft
│ │ │ ├── fft.c
│ │ │ └── fft.h
│ │ ├── iir.c
│ │ ├── link.T
│ │ ├── panning.c
│ │ ├── phaser.c
│ │ ├── reverb.c
│ │ ├── tremolo.c
│ │ ├── vibrato.c
│ │ └── wahwah.c
│ └── resampler
│ │ ├── audio_resampler.c
│ │ └── drivers
│ │ ├── nearest_resampler.c
│ │ ├── null_resampler.c
│ │ ├── sinc_resampler.c
│ │ └── sinc_resampler_neon.S
├── cdrom
│ └── cdrom.c
├── compat
│ ├── compat_fnmatch.c
│ ├── compat_getopt.c
│ ├── compat_ifaddrs.c
│ ├── compat_posix_string.c
│ ├── compat_snprintf.c
│ ├── compat_strcasestr.c
│ ├── compat_strl.c
│ ├── compat_vscprintf.c
│ └── fopen_utf8.c
├── crt
│ ├── include
│ │ └── string.h
│ └── string.c
├── dynamic
│ └── dylib.c
├── encodings
│ ├── encoding_base64.c
│ ├── encoding_crc32.c
│ └── encoding_utf.c
├── features
│ └── features_cpu.c
├── file
│ ├── archive_file.c
│ ├── archive_file_7z.c
│ ├── archive_file_zlib.c
│ ├── config_file.c
│ ├── config_file_userdata.c
│ ├── file_path.c
│ ├── nbio
│ │ ├── nbio_intf.c
│ │ ├── nbio_linux.c
│ │ ├── nbio_orbis.c
│ │ ├── nbio_stdio.c
│ │ ├── nbio_unixmmap.c
│ │ └── nbio_windowsmmap.c
│ └── retro_dirent.c
├── formats
│ ├── bmp
│ │ ├── rbmp.c
│ │ └── rbmp_encode.c
│ ├── image_texture.c
│ ├── image_transfer.c
│ ├── jpeg
│ │ └── rjpeg.c
│ ├── json
│ │ ├── jsonsax.c
│ │ └── jsonsax_full.c
│ ├── libchdr
│ │ ├── libchdr_bitstream.c
│ │ ├── libchdr_cdrom.c
│ │ ├── libchdr_chd.c
│ │ ├── libchdr_flac.c
│ │ ├── libchdr_flac_codec.c
│ │ ├── libchdr_huffman.c
│ │ ├── libchdr_lzma.c
│ │ └── libchdr_zlib.c
│ ├── png
│ │ ├── rpng.c
│ │ ├── rpng_encode.c
│ │ └── rpng_internal.h
│ ├── tga
│ │ └── rtga.c
│ ├── wav
│ │ └── rwav.c
│ └── xml
│ │ ├── rxml.c
│ │ └── test
│ │ ├── Makefile
│ │ └── rxml_test.c
├── gfx
│ ├── gl_capabilities.c
│ └── scaler
│ │ ├── pixconv.c
│ │ ├── scaler.c
│ │ ├── scaler_filter.c
│ │ └── scaler_int.c
├── glsm
│ └── glsm.c
├── glsym
│ ├── README.md
│ ├── glgen.py
│ ├── glsym_es2.c
│ ├── glsym_es3.c
│ ├── glsym_gl.c
│ ├── rglgen.c
│ ├── rglgen.py
│ └── xglgen.py
├── hash
│ └── rhash.c
├── include
│ ├── array
│ │ └── dynarray.h
│ ├── audio
│ │ ├── audio_mix.h
│ │ ├── audio_mixer.h
│ │ ├── audio_resampler.h
│ │ ├── conversion
│ │ │ ├── float_to_s16.h
│ │ │ └── s16_to_float.h
│ │ └── dsp_filter.h
│ ├── boolean.h
│ ├── cdrom
│ │ └── cdrom.h
│ ├── clamping.h
│ ├── compat
│ │ ├── apple_compat.h
│ │ ├── fnmatch.h
│ │ ├── fopen_utf8.h
│ │ ├── getopt.h
│ │ ├── ifaddrs.h
│ │ ├── intrinsics.h
│ │ ├── msvc.h
│ │ ├── msvc
│ │ │ └── stdint.h
│ │ ├── posix_string.h
│ │ ├── strcasestr.h
│ │ ├── strl.h
│ │ ├── zconf.h
│ │ ├── zconf.h.in
│ │ ├── zlib.h
│ │ ├── zlib
│ │ │ ├── zconf.h
│ │ │ ├── zconf.h.in
│ │ │ ├── zlib.h
│ │ │ └── zutil.h
│ │ └── zutil.h
│ ├── dynamic
│ │ └── dylib.h
│ ├── encodings
│ │ ├── base64.h
│ │ ├── crc32.h
│ │ ├── utf.h
│ │ └── win32.h
│ ├── fastcpy.h
│ ├── features
│ │ └── features_cpu.h
│ ├── file
│ │ ├── archive_file.h
│ │ ├── config_file.h
│ │ ├── config_file_userdata.h
│ │ ├── file_path.h
│ │ └── nbio.h
│ ├── filters.h
│ ├── formats
│ │ ├── image.h
│ │ ├── jsonsax.h
│ │ ├── jsonsax_full.h
│ │ ├── rbmp.h
│ │ ├── rjpeg.h
│ │ ├── rpng.h
│ │ ├── rtga.h
│ │ ├── rwav.h
│ │ └── rxml.h
│ ├── gfx
│ │ ├── gl_capabilities.h
│ │ ├── math
│ │ │ ├── matrix_3x3.h
│ │ │ ├── matrix_4x4.h
│ │ │ ├── vector_2.h
│ │ │ ├── vector_3.h
│ │ │ └── vector_4.h
│ │ ├── scaler
│ │ │ ├── filter.h
│ │ │ ├── pixconv.h
│ │ │ ├── scaler.h
│ │ │ └── scaler_int.h
│ │ └── video_frame.h
│ ├── glsm
│ │ ├── glsm.h
│ │ ├── glsm_caps.h
│ │ ├── glsm_state_ctl.h
│ │ └── glsmsym.h
│ ├── glsym
│ │ ├── glsym.h
│ │ ├── glsym_es2.h
│ │ ├── glsym_es3.h
│ │ ├── glsym_gl.h
│ │ ├── rglgen.h
│ │ ├── rglgen_headers.h
│ │ └── switch
│ │ │ ├── nx_gl.h
│ │ │ └── nx_glsym.h
│ ├── libchdr
│ │ ├── bitstream.h
│ │ ├── cdrom.h
│ │ ├── chd.h
│ │ ├── coretypes.h
│ │ ├── flac.h
│ │ ├── huffman.h
│ │ ├── libchdr_zlib.h
│ │ ├── lzma.h
│ │ └── minmax.h
│ ├── libco.h
│ ├── libretro.h
│ ├── libretro_d3d.h
│ ├── libretro_dspfilter.h
│ ├── libretro_gskit_ps2.h
│ ├── libretro_vulkan.h
│ ├── lists
│ │ ├── dir_list.h
│ │ ├── file_list.h
│ │ └── string_list.h
│ ├── math
│ │ ├── complex.h
│ │ ├── float_minmax.h
│ │ └── fxp.h
│ ├── media
│ │ └── media_detect_cd.h
│ ├── memalign.h
│ ├── memmap.h
│ ├── net
│ │ ├── net_compat.h
│ │ ├── net_http.h
│ │ ├── net_http_parse.h
│ │ ├── net_ifinfo.h
│ │ ├── net_natt.h
│ │ ├── net_socket.h
│ │ └── net_socket_ssl.h
│ ├── queues
│ │ ├── fifo_queue.h
│ │ ├── message_queue.h
│ │ └── task_queue.h
│ ├── retro_assert.h
│ ├── retro_common.h
│ ├── retro_common_api.h
│ ├── retro_dirent.h
│ ├── retro_endianness.h
│ ├── retro_environment.h
│ ├── retro_inline.h
│ ├── retro_math.h
│ ├── retro_miscellaneous.h
│ ├── retro_stat.h
│ ├── retro_timers.h
│ ├── rhash.h
│ ├── rthreads
│ │ ├── async_job.h
│ │ └── rthreads.h
│ ├── streams
│ │ ├── chd_stream.h
│ │ ├── file_stream.h
│ │ ├── file_stream_transforms.h
│ │ ├── interface_stream.h
│ │ ├── memory_stream.h
│ │ ├── stdin_stream.h
│ │ └── trans_stream.h
│ ├── string
│ │ └── stdstring.h
│ ├── utils
│ │ └── md5.h
│ ├── vfs
│ │ ├── vfs.h
│ │ ├── vfs_implementation.h
│ │ └── vfs_implementation_cdrom.h
│ └── vulkan
│ │ ├── vk_icd.h
│ │ ├── vk_layer.h
│ │ ├── vk_platform.h
│ │ ├── vk_sdk_platform.h
│ │ ├── vulkan.h
│ │ ├── vulkan_intel.h
│ │ └── vulkan_symbol_wrapper.h
├── libco
│ ├── aarch64.c
│ ├── amd64.c
│ ├── armeabi.c
│ ├── fiber.c
│ ├── genode.cpp
│ ├── libco.c
│ ├── ppc.c
│ ├── psp2.c
│ ├── scefiber.c
│ ├── sjlj.c
│ ├── ucontext.c
│ └── x86.c
├── lists
│ ├── dir_list.c
│ ├── file_list.c
│ ├── string_list.c
│ └── vector_list.c
├── media
│ └── media_detect_cd.c
├── memmap
│ ├── memalign.c
│ └── memmap.c
├── net
│ ├── net_compat.c
│ ├── net_http.c
│ ├── net_http_parse.c
│ ├── net_ifinfo.c
│ ├── net_natt.c
│ ├── net_socket.c
│ └── net_socket_ssl.c
├── queues
│ ├── fifo_queue.c
│ ├── message_queue.c
│ └── task_queue.c
├── rthreads
│ ├── ctr_pthread.h
│ ├── gx_pthread.h
│ ├── psp_pthread.h
│ ├── rthreads.c
│ ├── wiiu_pthread.h
│ └── xenon_sdl_threads.c
├── samples
│ ├── core_options
│ │ ├── README.md
│ │ ├── example_default
│ │ │ └── libretro_core_options.h
│ │ ├── example_hide_option
│ │ │ └── libretro_core_options.h
│ │ └── example_translation
│ │ │ └── libretro_core_options.h
│ ├── file
│ │ └── nbio
│ │ │ ├── Makefile
│ │ │ └── nbio_test.c
│ ├── formats
│ │ └── png
│ │ │ ├── Makefile
│ │ │ └── rpng_test.c
│ ├── net
│ │ ├── Makefile
│ │ ├── http_test
│ │ ├── net_http_test.c
│ │ ├── net_ifinfo
│ │ ├── net_ifinfo_test.c
│ │ └── udp-test.c
│ └── utils
│ │ └── Makefile
├── streams
│ ├── chd_stream.c
│ ├── file_stream.c
│ ├── file_stream_transforms.c
│ ├── interface_stream.c
│ ├── memory_stream.c
│ ├── stdin_stream.c
│ ├── trans_stream.c
│ ├── trans_stream_pipe.c
│ └── trans_stream_zlib.c
├── string
│ └── stdstring.c
├── utils
│ ├── crc32.c
│ ├── djb2.c
│ ├── md5.c
│ ├── sha1.c
│ └── sha1_main.c
├── vfs
│ ├── vfs_implementation.c
│ ├── vfs_implementation_cdrom.c
│ └── vfs_implementation_uwp.cpp
└── vulkan
│ └── vulkan_symbol_wrapper.c
├── libretro
├── jni
│ ├── Android.mk
│ └── Application.mk
├── libretro.c
├── libretro_memory.h
├── libretro_perf.h
├── libretro_private.h
└── link.T
├── mupen64plus-core
├── .gitattributes
├── .gitignore
├── .gitrepo
├── .travis.yml
├── CREDITS
├── INSTALL
├── LICENSES
├── README
├── README.md
├── RELEASE
├── appveyor.yml
├── data
│ ├── font.ttf
│ ├── mupen64plus.ini
│ └── mupencheat.txt
├── doc
│ ├── emuwiki-api-doc
│ │ ├── Home.mediawiki
│ │ ├── Mupen64Plus-Core-Parameters.mediawiki
│ │ ├── Mupen64Plus-Plugin-Parameters.mediawiki
│ │ ├── Mupen64Plus-v2.0-API-Versioning.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-API-v1.0.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-Basic.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-Config.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-Debugger.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-Front-End.mediawiki
│ │ ├── Mupen64Plus-v2.0-Core-Video-Extension.mediawiki
│ │ ├── Mupen64Plus-v2.0-Design-Proposal-3.mediawiki
│ │ ├── Mupen64Plus-v2.0-Plugin-API.mediawiki
│ │ └── Mupen64Plus-v2.0-headers.mediawiki
│ ├── font-license
│ ├── gpl-license
│ ├── lgpl-license
│ └── new_dynarec.mediawiki
├── projects
│ ├── VisualStudio2013
│ │ ├── mupen64plus-core.vcxproj
│ │ └── mupen64plus-core.vcxproj.filters
│ └── unix
│ │ └── Makefile
├── src
│ ├── api
│ │ ├── api_export.ver
│ │ ├── callbacks.c
│ │ ├── callbacks.h
│ │ ├── common.c
│ │ ├── config.c
│ │ ├── config.h
│ │ ├── debugger.c
│ │ ├── debugger.h
│ │ ├── frontend.c
│ │ ├── m64p_common.h
│ │ ├── m64p_config.h
│ │ ├── m64p_debugger.h
│ │ ├── m64p_frontend.h
│ │ ├── m64p_plugin.h
│ │ ├── m64p_types.h
│ │ ├── m64p_vidext.h
│ │ ├── vidext.c
│ │ ├── vidext.h
│ │ └── vidext_sdl2_compat.h
│ ├── asm_defines
│ │ └── asm_defines.c
│ ├── backends
│ │ ├── api
│ │ │ ├── audio_out_backend.h
│ │ │ ├── clock_backend.h
│ │ │ ├── controller_input_backend.h
│ │ │ ├── joybus.h
│ │ │ ├── rumble_backend.h
│ │ │ ├── storage_backend.h
│ │ │ ├── video_capture_backend.c
│ │ │ └── video_capture_backend.h
│ │ ├── clock_ctime_plus_delta.c
│ │ ├── clock_ctime_plus_delta.h
│ │ ├── dummy_video_capture.c
│ │ ├── file_storage.c
│ │ ├── file_storage.h
│ │ ├── opencv_video_capture.cpp
│ │ └── plugins_compat
│ │ │ ├── audio_plugin_compat.c
│ │ │ ├── input_plugin_compat.c
│ │ │ └── plugins_compat.h
│ ├── debugger
│ │ ├── dbg_breakpoints.c
│ │ ├── dbg_breakpoints.h
│ │ ├── dbg_debugger.c
│ │ ├── dbg_debugger.h
│ │ ├── dbg_decoder.c
│ │ ├── dbg_decoder.h
│ │ ├── dbg_decoder_local.h
│ │ ├── dbg_memory.c
│ │ └── dbg_memory.h
│ ├── device
│ │ ├── cart
│ │ │ ├── af_rtc.c
│ │ │ ├── af_rtc.h
│ │ │ ├── cart.c
│ │ │ ├── cart.h
│ │ │ ├── cart_rom.c
│ │ │ ├── cart_rom.h
│ │ │ ├── eeprom.c
│ │ │ ├── eeprom.h
│ │ │ ├── flashram.c
│ │ │ ├── flashram.h
│ │ │ ├── sram.c
│ │ │ └── sram.h
│ │ ├── controllers
│ │ │ ├── game_controller.c
│ │ │ ├── game_controller.h
│ │ │ └── paks
│ │ │ │ ├── biopak.c
│ │ │ │ ├── biopak.h
│ │ │ │ ├── mempak.c
│ │ │ │ ├── mempak.h
│ │ │ │ ├── rumblepak.c
│ │ │ │ ├── rumblepak.h
│ │ │ │ ├── transferpak.c
│ │ │ │ └── transferpak.h
│ │ ├── dd
│ │ │ ├── dd_controller.c
│ │ │ └── dd_controller.h
│ │ ├── device.c
│ │ ├── device.h
│ │ ├── gb
│ │ │ ├── gb_cart.c
│ │ │ ├── gb_cart.h
│ │ │ ├── m64282fp.c
│ │ │ ├── m64282fp.h
│ │ │ ├── mbc3_rtc.c
│ │ │ └── mbc3_rtc.h
│ │ ├── memory
│ │ │ ├── memory.c
│ │ │ └── memory.h
│ │ ├── pif
│ │ │ ├── bootrom_hle.c
│ │ │ ├── bootrom_hle.h
│ │ │ ├── cic.c
│ │ │ ├── cic.h
│ │ │ ├── n64_cic_nus_6105.c
│ │ │ ├── n64_cic_nus_6105.h
│ │ │ ├── pif.c
│ │ │ └── pif.h
│ │ ├── r4300
│ │ │ ├── cached_interp.c
│ │ │ ├── cached_interp.h
│ │ │ ├── cp0.c
│ │ │ ├── cp0.h
│ │ │ ├── cp1.c
│ │ │ ├── cp1.h
│ │ │ ├── fpu.h
│ │ │ ├── idec.c
│ │ │ ├── idec.h
│ │ │ ├── instr_counters.c
│ │ │ ├── instr_counters.h
│ │ │ ├── interrupt.c
│ │ │ ├── interrupt.h
│ │ │ ├── mips_instructions.def
│ │ │ ├── new_dynarec
│ │ │ │ ├── arm
│ │ │ │ │ ├── arm_cpu_features.c
│ │ │ │ │ ├── arm_cpu_features.h
│ │ │ │ │ ├── asm_defines_gas.h
│ │ │ │ │ ├── asm_defines_nasm.h
│ │ │ │ │ ├── assem_arm.c
│ │ │ │ │ ├── assem_arm.h
│ │ │ │ │ └── linkage_arm.S
│ │ │ │ ├── arm64
│ │ │ │ │ ├── asm_defines_gas.h
│ │ │ │ │ ├── asm_defines_nasm.h
│ │ │ │ │ ├── assem_arm64.c
│ │ │ │ │ ├── assem_arm64.h
│ │ │ │ │ └── linkage_arm64.S
│ │ │ │ ├── new_dynarec.c
│ │ │ │ ├── new_dynarec.h
│ │ │ │ ├── recomp_dbg.c
│ │ │ │ ├── x64
│ │ │ │ │ ├── assem_x64.c
│ │ │ │ │ ├── assem_x64.h
│ │ │ │ │ └── linkage_x64.asm
│ │ │ │ └── x86
│ │ │ │ │ ├── assem_x86.c
│ │ │ │ │ ├── assem_x86.h
│ │ │ │ │ └── linkage_x86.asm
│ │ │ ├── opcodes.md
│ │ │ ├── pure_interp.c
│ │ │ ├── pure_interp.h
│ │ │ ├── r4300_core.c
│ │ │ ├── r4300_core.h
│ │ │ ├── recomp.c
│ │ │ ├── recomp.h
│ │ │ ├── recomp_types.h
│ │ │ ├── tlb.c
│ │ │ ├── tlb.h
│ │ │ ├── x86
│ │ │ │ ├── assemble.c
│ │ │ │ ├── assemble.h
│ │ │ │ ├── assemble_struct.h
│ │ │ │ ├── dyna_start.asm
│ │ │ │ ├── dynarec.c
│ │ │ │ ├── interpret.h
│ │ │ │ ├── regcache.c
│ │ │ │ └── regcache.h
│ │ │ └── x86_64
│ │ │ │ ├── assemble.c
│ │ │ │ ├── assemble.h
│ │ │ │ ├── assemble_struct.h
│ │ │ │ ├── dyna_start.asm
│ │ │ │ ├── dynarec.c
│ │ │ │ ├── interpret.h
│ │ │ │ ├── regcache.c
│ │ │ │ └── regcache.h
│ │ ├── rcp
│ │ │ ├── ai
│ │ │ │ ├── ai_controller.c
│ │ │ │ └── ai_controller.h
│ │ │ ├── mi
│ │ │ │ ├── mi_controller.c
│ │ │ │ └── mi_controller.h
│ │ │ ├── pi
│ │ │ │ ├── pi_controller.c
│ │ │ │ └── pi_controller.h
│ │ │ ├── rdp
│ │ │ │ ├── fb.c
│ │ │ │ ├── fb.h
│ │ │ │ ├── rdp_core.c
│ │ │ │ └── rdp_core.h
│ │ │ ├── ri
│ │ │ │ ├── ri_controller.c
│ │ │ │ └── ri_controller.h
│ │ │ ├── rsp
│ │ │ │ ├── rsp_core.c
│ │ │ │ └── rsp_core.h
│ │ │ ├── si
│ │ │ │ ├── si_controller.c
│ │ │ │ └── si_controller.h
│ │ │ └── vi
│ │ │ │ ├── vi_controller.c
│ │ │ │ └── vi_controller.h
│ │ └── rdram
│ │ │ ├── rdram.c
│ │ │ └── rdram.h
│ ├── main
│ │ ├── cheat.c
│ │ ├── cheat.h
│ │ ├── eventloop.c
│ │ ├── eventloop.h
│ │ ├── lirc.c
│ │ ├── lirc.h
│ │ ├── list.h
│ │ ├── main.c
│ │ ├── main.h
│ │ ├── profile.c
│ │ ├── profile.h
│ │ ├── rom.c
│ │ ├── rom.h
│ │ ├── savestates.c
│ │ ├── savestates.h
│ │ ├── screenshot.c
│ │ ├── screenshot.h
│ │ ├── sdl_key_converter.c
│ │ ├── sdl_key_converter.h
│ │ ├── util.c
│ │ ├── util.h
│ │ ├── version.h
│ │ ├── workqueue.c
│ │ └── workqueue.h
│ ├── osal
│ │ ├── dynamiclib.h
│ │ ├── dynamiclib_unix.c
│ │ ├── dynamiclib_win32.c
│ │ ├── files.h
│ │ ├── files_macos.c
│ │ ├── files_unix.c
│ │ ├── files_win32.c
│ │ └── preproc.h
│ ├── osd
│ │ ├── oglft_c.cpp
│ │ ├── oglft_c.h
│ │ ├── osd.c
│ │ └── osd.h
│ └── plugin
│ │ ├── dummy_audio.c
│ │ ├── dummy_audio.h
│ │ ├── dummy_input.c
│ │ ├── dummy_input.h
│ │ ├── dummy_rsp.c
│ │ ├── dummy_rsp.h
│ │ ├── dummy_video.c
│ │ ├── dummy_video.h
│ │ ├── plugin.c
│ │ └── plugin.h
├── subprojects
│ ├── md5
│ │ ├── md5.c
│ │ └── md5.h
│ ├── minizip
│ │ ├── crypt.h
│ │ ├── ioapi.c
│ │ ├── ioapi.h
│ │ ├── unzip.c
│ │ ├── unzip.h
│ │ ├── zip.c
│ │ └── zip.h
│ ├── oglft
│ │ ├── OGLFT.cpp
│ │ └── OGLFT.h
│ └── xxhash
│ │ ├── xxhash.c
│ │ └── xxhash.h
└── tools
│ ├── build_bundle_bin.sh
│ ├── build_bundle_src.sh
│ ├── build_modules_src.sh
│ ├── cheat_code_convert.py
│ ├── gen_asm_defines.awk
│ ├── gen_sdl_key_converter.c
│ ├── install_binary_bundle.sh
│ ├── joymodel.c
│ ├── joymodel.png
│ ├── m64p_helper_scripts.tar.gz
│ ├── osx_build_bundle.sh
│ ├── osx_build_instructions.txt
│ ├── profiling.txt
│ ├── r4300prof.c
│ ├── regtests
│ ├── daily-tests.cfg
│ └── regression-video.py
│ ├── savestate_convert.c
│ ├── savestate_convert.txt
│ └── uninstall_binary_bundle.sh
├── mupen64plus-rsp-cxd4
├── COPYING
├── README.md
├── config.h
├── module.c
├── module.h
├── my_types.h
├── rsp.c
├── rsp.h
├── rsp_dump.cpp
├── rsp_dump.h
├── sse2neon
│ └── SSE2NEON.h
├── su.c
├── su.h
└── vu
│ ├── add.c
│ ├── add.h
│ ├── divide.c
│ ├── divide.h
│ ├── logical.c
│ ├── logical.h
│ ├── multiply.c
│ ├── multiply.h
│ ├── pack.h
│ ├── select.c
│ ├── select.h
│ ├── vu.c
│ └── vu.h
├── mupen64plus-rsp-hle
├── .gitattributes
├── .gitignore
├── .gitrepo
├── .travis.yml
├── INSTALL
├── LICENSES
├── RELEASE
├── projects
│ ├── VisualStudio2013
│ │ └── mupen64plus-rsp-hle.vcxproj
│ └── unix
│ │ └── Makefile
└── src
│ ├── alist.c
│ ├── alist.h
│ ├── alist_audio.c
│ ├── alist_naudio.c
│ ├── alist_nead.c
│ ├── arithmetics.h
│ ├── audio.c
│ ├── audio.h
│ ├── cicx105.c
│ ├── common.h
│ ├── hle.c
│ ├── hle.h
│ ├── hle_external.h
│ ├── hle_internal.h
│ ├── jpeg.c
│ ├── memory.c
│ ├── memory.h
│ ├── mp3.c
│ ├── musyx.c
│ ├── osal_dynamiclib.h
│ ├── osal_dynamiclib_unix.c
│ ├── osal_dynamiclib_win32.c
│ ├── plugin.c
│ ├── re2.c
│ ├── rsp_api_export.ver
│ └── ucodes.h
├── mupen64plus-rsp-paraLLEl
├── .clang-format
├── .gitignore
├── .gitrepo
├── CMakeLists.txt
├── CREDITS.txt
├── arch
│ └── x86_64
│ │ └── rsp
│ │ ├── clamp.h
│ │ ├── rsp_core.cpp
│ │ ├── rsp_impl.h
│ │ ├── rsp_para.h
│ │ ├── vabs.h
│ │ ├── vadd.h
│ │ ├── vaddc.h
│ │ ├── vand.h
│ │ ├── vch.h
│ │ ├── vcl.h
│ │ ├── vcmp.h
│ │ ├── vcr.h
│ │ ├── vdivh.h
│ │ ├── vmac.h
│ │ ├── vmov.h
│ │ ├── vmrg.h
│ │ ├── vmudh.h
│ │ ├── vmul.h
│ │ ├── vmulh.h
│ │ ├── vmull.h
│ │ ├── vmulm.h
│ │ ├── vmuln.h
│ │ ├── vor.h
│ │ ├── vrcpsq.h
│ │ ├── vrsq.h
│ │ ├── vsub.h
│ │ ├── vsubc.h
│ │ └── vxor.h
├── cpu_state.hpp
├── debug-toolchain
│ ├── Makefile
│ ├── Makefile.mips
│ ├── add.s
│ ├── addi.s
│ ├── and.s
│ ├── andi.s
│ ├── beq-impossible-delay-slot-both-taken.s
│ ├── beq-impossible-delay-slot-first-taken.s
│ ├── beq-impossible-delay-slot-second-taken.s
│ ├── bgez.s
│ ├── bgezal.s
│ ├── bgtz.s
│ ├── blez.s
│ ├── bltz.s
│ ├── bltzal.s
│ ├── bne.s
│ ├── cop0.s
│ ├── cop2-basic.s
│ ├── cop2-ls.s
│ ├── cop2-vector.s
│ ├── delay-slot-before-break.s
│ ├── delay-slot-before-new-block-illegal.s
│ ├── delay-slot-before-new-block-not-taken.s
│ ├── delay-slot-before-new-block.s
│ ├── j.s
│ ├── jal-into-indirect-delay-slot.s
│ ├── jal.s
│ ├── jr.s
│ ├── lb.s
│ ├── lbu.s
│ ├── lh-unaligned.s
│ ├── lh.s
│ ├── lhu-unaligned.s
│ ├── lhu.s
│ ├── lui.s
│ ├── lw-unaligned-in-branch-delay.s
│ ├── lw-unaligned.s
│ ├── lw.s
│ ├── main.c
│ ├── nor.s
│ ├── or.s
│ ├── ori.s
│ ├── rsp-mips.h
│ ├── rsp-mips.ld
│ ├── rsp-mips.s
│ ├── sb.s
│ ├── sh-unaligned.s
│ ├── sh.s
│ ├── sll.s
│ ├── sllv.s
│ ├── slt.s
│ ├── slti.s
│ ├── sltiu.s
│ ├── sltu.s
│ ├── sra.s
│ ├── srav.s
│ ├── srl.s
│ ├── srlv.s
│ ├── start.s
│ ├── sub.s
│ ├── sw-unaligned.s
│ ├── sw.s
│ ├── unconditional-delay-slot-before-break.s
│ ├── xor.s
│ └── xori.s
├── debug_jit.cpp
├── debug_jit.hpp
├── format_all.sh
├── lightning
│ ├── .gitattributes
│ ├── .gitignore
│ ├── .gitrepo
│ ├── AUTHORS
│ ├── COPYING
│ ├── COPYING.DOC
│ ├── COPYING.LESSER
│ ├── ChangeLog
│ ├── Makefile.am
│ ├── NEWS
│ ├── README
│ ├── THANKS
│ ├── TODO
│ ├── check
│ │ ├── 3to2.ok
│ │ ├── 3to2.tst
│ │ ├── Makefile.am
│ │ ├── add.ok
│ │ ├── add.tst
│ │ ├── align.ok
│ │ ├── align.tst
│ │ ├── all.tst
│ │ ├── allocai.ok
│ │ ├── allocai.tst
│ │ ├── allocar.ok
│ │ ├── allocar.tst
│ │ ├── alu.inc
│ │ ├── alu_add.ok
│ │ ├── alu_add.tst
│ │ ├── alu_and.ok
│ │ ├── alu_and.tst
│ │ ├── alu_com.ok
│ │ ├── alu_com.tst
│ │ ├── alu_div.ok
│ │ ├── alu_div.tst
│ │ ├── alu_lsh.ok
│ │ ├── alu_lsh.tst
│ │ ├── alu_mul.ok
│ │ ├── alu_mul.tst
│ │ ├── alu_neg.ok
│ │ ├── alu_neg.tst
│ │ ├── alu_or.ok
│ │ ├── alu_or.tst
│ │ ├── alu_rem.ok
│ │ ├── alu_rem.tst
│ │ ├── alu_rsb.ok
│ │ ├── alu_rsb.tst
│ │ ├── alu_rsh.ok
│ │ ├── alu_rsh.tst
│ │ ├── alu_sub.ok
│ │ ├── alu_sub.tst
│ │ ├── alu_xor.ok
│ │ ├── alu_xor.tst
│ │ ├── alux_add.ok
│ │ ├── alux_add.tst
│ │ ├── alux_sub.ok
│ │ ├── alux_sub.tst
│ │ ├── bp.ok
│ │ ├── bp.tst
│ │ ├── branch.ok
│ │ ├── branch.tst
│ │ ├── call.ok
│ │ ├── call.tst
│ │ ├── carg.c
│ │ ├── carry.ok
│ │ ├── carry.tst
│ │ ├── ccall.c
│ │ ├── check.arm.sh
│ │ ├── check.arm.swf.sh
│ │ ├── check.arm4.swf.sh
│ │ ├── check.nodata.sh
│ │ ├── check.sh
│ │ ├── check.swf.sh
│ │ ├── check.x87.nodata.sh
│ │ ├── check.x87.sh
│ │ ├── clobber.ok
│ │ ├── clobber.tst
│ │ ├── ctramp.c
│ │ ├── cva_list.c
│ │ ├── cvt.ok
│ │ ├── cvt.tst
│ │ ├── divi.ok
│ │ ├── divi.tst
│ │ ├── fib.ok
│ │ ├── fib.tst
│ │ ├── float.ok
│ │ ├── float.tst
│ │ ├── fop_abs.ok
│ │ ├── fop_abs.tst
│ │ ├── fop_sqrt.ok
│ │ ├── fop_sqrt.tst
│ │ ├── hton.ok
│ │ ├── hton.tst
│ │ ├── jmpr.ok
│ │ ├── jmpr.tst
│ │ ├── ldst.inc
│ │ ├── ldsti.ok
│ │ ├── ldsti.tst
│ │ ├── ldstr-c.ok
│ │ ├── ldstr-c.tst
│ │ ├── ldstr.ok
│ │ ├── ldstr.tst
│ │ ├── ldstxi-c.ok
│ │ ├── ldstxi-c.tst
│ │ ├── ldstxi.ok
│ │ ├── ldstxi.tst
│ │ ├── ldstxr-c.ok
│ │ ├── ldstxr-c.tst
│ │ ├── ldstxr.ok
│ │ ├── ldstxr.tst
│ │ ├── lightning.c
│ │ ├── nodata.c
│ │ ├── put.ok
│ │ ├── put.tst
│ │ ├── qalu.inc
│ │ ├── qalu_div.ok
│ │ ├── qalu_div.tst
│ │ ├── qalu_mul.ok
│ │ ├── qalu_mul.tst
│ │ ├── range.ok
│ │ ├── range.tst
│ │ ├── ranger.ok
│ │ ├── ranger.tst
│ │ ├── ret.ok
│ │ ├── ret.tst
│ │ ├── rpn.ok
│ │ ├── rpn.tst
│ │ ├── run-test
│ │ ├── self.c
│ │ ├── setcode.c
│ │ ├── stack.ok
│ │ ├── stack.tst
│ │ ├── tramp.ok
│ │ ├── tramp.tst
│ │ ├── va_list.ok
│ │ ├── va_list.tst
│ │ ├── varargs.ok
│ │ └── varargs.tst
│ ├── configure.ac
│ ├── doc
│ │ ├── .cvsignore
│ │ ├── .gitignore
│ │ ├── Makefile.am
│ │ ├── body.texi
│ │ ├── fact.c
│ │ ├── ifib.c
│ │ ├── incr.c
│ │ ├── lightning.texi
│ │ ├── printf.c
│ │ ├── rfib.c
│ │ ├── rpn.c
│ │ └── version.texi
│ ├── include
│ │ ├── Makefile.am
│ │ ├── lightning.h
│ │ ├── lightning.h.in
│ │ └── lightning
│ │ │ ├── Makefile.am
│ │ │ ├── jit_aarch64.h
│ │ │ ├── jit_alpha.h
│ │ │ ├── jit_arm.h
│ │ │ ├── jit_hppa.h
│ │ │ ├── jit_ia64.h
│ │ │ ├── jit_mips.h
│ │ │ ├── jit_ppc.h
│ │ │ ├── jit_private.h
│ │ │ ├── jit_riscv.h
│ │ │ ├── jit_s390.h
│ │ │ ├── jit_sparc.h
│ │ │ └── jit_x86.h
│ ├── lib
│ │ ├── Makefile.am
│ │ ├── jit_aarch64-cpu.c
│ │ ├── jit_aarch64-fpu.c
│ │ ├── jit_aarch64-sz.c
│ │ ├── jit_aarch64.c
│ │ ├── jit_alpha-cpu.c
│ │ ├── jit_alpha-fpu.c
│ │ ├── jit_alpha-sz.c
│ │ ├── jit_alpha.c
│ │ ├── jit_arm-cpu.c
│ │ ├── jit_arm-swf.c
│ │ ├── jit_arm-sz.c
│ │ ├── jit_arm-vfp.c
│ │ ├── jit_arm.c
│ │ ├── jit_disasm.c
│ │ ├── jit_hppa-cpu.c
│ │ ├── jit_hppa-fpu.c
│ │ ├── jit_hppa-sz.c
│ │ ├── jit_hppa.c
│ │ ├── jit_ia64-cpu.c
│ │ ├── jit_ia64-fpu.c
│ │ ├── jit_ia64-sz.c
│ │ ├── jit_ia64.c
│ │ ├── jit_memory.c
│ │ ├── jit_mips-cpu.c
│ │ ├── jit_mips-fpu.c
│ │ ├── jit_mips-sz.c
│ │ ├── jit_mips.c
│ │ ├── jit_names.c
│ │ ├── jit_note.c
│ │ ├── jit_ppc-cpu.c
│ │ ├── jit_ppc-fpu.c
│ │ ├── jit_ppc-sz.c
│ │ ├── jit_ppc.c
│ │ ├── jit_print.c
│ │ ├── jit_rewind.c
│ │ ├── jit_riscv-cpu.c
│ │ ├── jit_riscv-fpu.c
│ │ ├── jit_riscv-sz.c
│ │ ├── jit_riscv.c
│ │ ├── jit_s390-cpu.c
│ │ ├── jit_s390-fpu.c
│ │ ├── jit_s390-sz.c
│ │ ├── jit_s390.c
│ │ ├── jit_size.c
│ │ ├── jit_sparc-cpu.c
│ │ ├── jit_sparc-fpu.c
│ │ ├── jit_sparc-sz.c
│ │ ├── jit_sparc.c
│ │ ├── jit_x86-cpu.c
│ │ ├── jit_x86-sse.c
│ │ ├── jit_x86-sz.c
│ │ ├── jit_x86-x87.c
│ │ ├── jit_x86.c
│ │ └── lightning.c
│ ├── lightning.pc.in
│ ├── m4
│ │ └── .gitkeep
│ └── size.c
├── llvm_jit.cpp
├── llvm_jit.hpp
├── main.cpp
├── parallel.cpp
├── rsp.cpp
├── rsp.hpp
├── rsp
│ ├── cp0.cpp
│ ├── cp2.cpp
│ ├── ls.cpp
│ ├── pipeline.h
│ ├── reciprocal.cpp
│ ├── reciprocal.h
│ ├── registers.md
│ └── vfunctions.cpp
├── rsp_1.1.h
├── rsp_disasm.cpp
├── rsp_disasm.hpp
├── rsp_jit.cpp
├── rsp_jit.hpp
├── rsp_op.hpp
├── state.hpp
└── win32
│ └── mman
│ └── sys
│ ├── .gitignore
│ ├── .gitrepo
│ ├── .vs
│ └── mman
│ │ └── v14
│ │ └── .suo
│ ├── CMakeLists.txt
│ ├── Makefile
│ ├── README.md
│ ├── UpgradeLog.htm
│ ├── configure
│ ├── mman-win32.pro
│ ├── mman.c
│ ├── mman.h
│ ├── mman.sln
│ ├── mman.vcxproj
│ ├── mman.vcxproj.filters
│ ├── mman.vcxproj.user
│ └── test.c
├── mupen64plus-video-angrylion
├── Gfx #1.3.h
├── common.h
├── interface.c
├── msg.h
├── n64video.c
├── n64video.h
├── n64video
│ ├── rdp.c
│ ├── rdp
│ │ ├── blender.c
│ │ ├── combiner.c
│ │ ├── coverage.c
│ │ ├── dither.c
│ │ ├── fbuffer.c
│ │ ├── rasterizer.c
│ │ ├── rdp.c
│ │ ├── rdram.c
│ │ ├── tcoord.c
│ │ ├── tex.c
│ │ ├── tmem.c
│ │ └── zbuffer.c
│ ├── vi.c
│ └── vi
│ │ ├── divot.c
│ │ ├── fetch.c
│ │ ├── gamma.c
│ │ ├── lerp.c
│ │ ├── restore.c
│ │ ├── vi.c
│ │ └── video.c
├── parallel_al.cpp
├── parallel_al.h
├── plugin.c
├── plugin.h
├── rdp.h
├── vdac.h
└── version.h.in
├── mupen64plus-video-paraLLEl
├── .clang-format
├── CREDITS.txt
├── Gfx #1.3.h
├── format_all.sh
├── parallel.cpp
├── parallel.h
├── rdp.cpp
├── rdp.hpp
├── rdp
│ ├── .clang-format
│ ├── Makefile
│ ├── common.hpp
│ ├── format_all.sh
│ ├── frontend.cpp
│ ├── frontend.hpp
│ ├── glsl
│ │ ├── Makefile
│ │ ├── blender.h
│ │ ├── blit.16.inc
│ │ ├── blit.32.inc
│ │ ├── blit.8.inc
│ │ ├── blit.comp
│ │ ├── buffers.h
│ │ ├── clip.h
│ │ ├── combiner.comp
│ │ ├── combiner.h
│ │ ├── combiner.inc
│ │ ├── coverage.h
│ │ ├── depth.h
│ │ ├── flags.h
│ │ ├── noise.h
│ │ ├── rasterizer.h
│ │ ├── rdp.16.noz.inc
│ │ ├── rdp.16.z.inc
│ │ ├── rdp.32.noz.inc
│ │ ├── rdp.32.z.inc
│ │ ├── rdp.8.noz.inc
│ │ ├── rdp.8.z.inc
│ │ ├── rdp.color.depth.alias.16.inc
│ │ ├── rdp.comp
│ │ ├── structs.h
│ │ ├── texture.comp
│ │ ├── texture.inc
│ │ ├── textures.h
│ │ ├── tmem.comp
│ │ ├── tmem.i8.inc
│ │ ├── tmem.ia16.inc
│ │ ├── tmem.ia8.inc
│ │ ├── tmem.rgba16.inc
│ │ ├── tmem.rgba32.inc
│ │ ├── util.h
│ │ ├── varying.comp
│ │ └── varying.inc
│ ├── main.cpp
│ ├── rdp.cpp
│ ├── rdp.hpp
│ ├── rdp_dump.cpp
│ ├── rdp_dump.hpp
│ ├── stb
│ │ ├── stb_image.h
│ │ └── stb_image_write.h
│ ├── tests
│ │ ├── cycle1_triangle
│ │ │ └── dump.rdp
│ │ ├── fill_triangle
│ │ │ ├── dump.rdp
│ │ │ └── reference.png
│ │ └── texture_triangle_32bpp
│ │ │ ├── dump.rdp
│ │ │ └── reference.png
│ ├── tmem.cpp
│ ├── tmem.hpp
│ ├── vulkan.cpp
│ ├── vulkan.hpp
│ ├── vulkan_symbol_wrapper.cpp
│ ├── vulkan_symbol_wrapper.h
│ ├── vulkan_util.cpp
│ └── vulkan_util.hpp
├── rdp_dump.c
├── rdp_dump.h
├── vi.cpp
└── z64.h
└── xxHash
├── xxhash.c
└── xxhash.h
/GLideN64/.gitignore:
--------------------------------------------------------------------------------
1 | backup/
2 | Debug*/
3 | Release*/
4 | build*/
5 | Roms/
6 | *.ncb
7 | *.suo
8 | *.sdf
9 | *.user
10 | src/Revision.h
11 | /projects/msvc/.vs
12 | /projects/msvc/GLideN64.VC.VC.opendb
13 | /projects/msvc/GLideN64.VC.db
14 | /projects/msvc/GeneratedFiles
15 | .vs
16 | .vscode/ipch/*
17 |
--------------------------------------------------------------------------------
/GLideN64/.gitrepo:
--------------------------------------------------------------------------------
1 | ; DO NOT EDIT (unless you know what you are doing)
2 | ;
3 | ; This subdirectory is a git "subrepo", and this file is maintained by the
4 | ; git-subrepo command. See https://github.com/git-commands/git-subrepo#readme
5 | ;
6 | [subrepo]
7 | remote = git@github.com:libretro/GLideN64.git
8 | branch = develop
9 | commit = 05908492340e59363030fe7dcd4a04c3b91eec1a
10 | parent = c5335f7c0b56c2c7fcb2d0768ce9970aa097931d
11 | method = rebase
12 | cmdver = 0.4.0
13 |
--------------------------------------------------------------------------------
/GLideN64/README.md:
--------------------------------------------------------------------------------
1 | GLideN64
2 | ========
3 |
4 | A new generation, open-source graphics plugin for N64 emulators.
5 |
6 | Windows latest build status for master branch:
7 | [](https://ci.appveyor.com/project/gonetz/gliden64/branch/master)
8 |
9 | Linux and MacOsX latest build status for master branch:
10 | [](https://travis-ci.org/gonetz/GLideN64)
11 |
12 | To get Continuous Integration (CI) builds for mupen64plus and zilmar-spec emulators for Windows: click the build status icon, then select "Artifacts".
13 | You will get a zip containing both builds. Choose the between the 32-bit and 64-bit version depending on your emulator version.
14 | If you want to download an earlier build, go to "History" and select the build you want.
15 |
16 | CI builds have the latest features and fixes, and are generally stable, but may introduce bugs and have incomplete translations.
17 |
--------------------------------------------------------------------------------
/GLideN64/ini/GLideN64.ini:
--------------------------------------------------------------------------------
1 | [General]
2 | version=7
3 |
4 | [video]
5 | fullscreenWidth=640
6 | fullscreenHeight=480
7 | windowedWidth=640
8 | windowedHeight=480
9 | fullscreenRefresh=60
10 | multisampling=0
11 |
12 | [texture]
13 | maxAnisotropy=0
14 | bilinearMode=1
15 | maxBytes=524288000
16 | screenShotFormat=0
17 |
18 | [generalEmulation]
19 | enableFog=1
20 | enableNoise=1
21 | enableLOD=1
22 | enableHWLighting=0
23 | enableCustomSettings=1
24 |
25 | [frameBufferEmulation]
26 | enable=1
27 | copyToRDRAM=2
28 | copyDepthToRDRAM=0
29 | copyFromRDRAM=0
30 | detectCFB=0
31 | N64DepthCompare=0
32 | aspect=1
33 |
34 | [textureFilter]
35 | txFilterMode=0
36 | txEnhancementMode=0
37 | txFilterIgnoreBG=0
38 | txCacheSize=104857600
39 | txHiresEnable=0
40 | txHiresFullAlphaChannel=0
41 | txHresAltCRC=0
42 | txDump=0
43 | txForce16bpp=0
44 | txCacheCompression=1
45 | txSaveCache=1
46 |
47 | [font]
48 | name=arial.ttf
49 | size=18
50 | color=@Variant(\0\0\0\x43\x1\xff\xff\xb5\xb5\xe6\xe6\x1d\x1d\0\0)
51 |
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/GLideNUI.pro:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------
2 | #
3 | # Project created by QtCreator 2015-01-26T21:59:49
4 | #
5 | #-------------------------------------------------
6 |
7 | QT += core gui
8 | QTPLUGIN += qico
9 |
10 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
11 |
12 | TARGET = GLideNUI
13 | TEMPLATE = lib
14 | CONFIG += staticlib
15 | CONFIG += c++11
16 |
17 | VPATH += ./../../src/GLideNUI/
18 | SOURCES += \
19 | ConfigDialog.cpp \
20 | GLideNUI.cpp \
21 | FullscreenResolutions_windows.cpp \
22 | Settings.cpp \
23 | ScreenShot.cpp \
24 | AboutDialog.cpp
25 |
26 | HEADERS += \
27 | ConfigDialog.h \
28 | GLideNUI.h \
29 | FullscreenResolutions.h \
30 | Settings.h \
31 | AboutDialog.h
32 |
33 | RESOURCES += \
34 | icon.qrc
35 |
36 | FORMS += \
37 | configDialog.ui \
38 | AboutDialog.ui
39 |
40 | TRANSLATIONS = gliden64_fr.ts \
41 | gliden64_de.ts \
42 | gliden64_it.ts \
43 | gliden64_es.ts \
44 | gliden64_pl.ts \
45 | gliden64_pt_BR.ts \
46 | gliden64_ja.ts
47 |
48 | DISTFILES +=
49 |
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/dbg/freetype253MT_D.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/dbg/freetype253MT_D.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/dbg/libpngd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/dbg/libpngd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/dbg/zlibd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/dbg/zlibd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/dbg/freetype253MT_D.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/dbg/freetype253MT_D.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/dbg/libpngd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/dbg/libpngd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/dbg/zlibd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/dbg/zlibd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/rel/freetype253MT.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/rel/freetype253MT.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/rel/libpng.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/rel/libpng.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/msvc12/rel/zlib.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/msvc12/rel/zlib.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/rel/freetype253MT.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/rel/freetype253MT.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/rel/libpng.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/rel/libpng.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/rel/zlib.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/rel/zlib.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/dbg/freetype253MT_D.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/dbg/freetype253MT_D.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/dbg/libpngd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/dbg/libpngd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/dbg/zlibd.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/dbg/zlibd.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/rel/freetype253MT.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/rel/freetype253MT.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/rel/libpng.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/rel/libpng.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/lib/x64/rel/zlib.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/projects/msvc/lib/x64/rel/zlib.lib
--------------------------------------------------------------------------------
/GLideN64/projects/msvc/osal.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 |
14 |
15 | Header Files
16 |
17 |
18 |
19 |
20 | Source Files
21 |
22 |
23 |
--------------------------------------------------------------------------------
/GLideN64/src/BufferCopy/ColorBufferToRDRAMStub.h:
--------------------------------------------------------------------------------
1 | #include "ColorBufferToRDRAM.h"
2 |
3 | class ColorBufferToRDRAMStub : public ColorBufferToRDRAM
4 | {
5 | public:
6 | ColorBufferToRDRAMStub() : ColorBufferToRDRAM() {}
7 | ~ColorBufferToRDRAMStub() {};
8 |
9 | private:
10 | void _init() override {}
11 | void _initBuffers() override {}
12 | void _destroyBuffers(void) override {}
13 | bool _readPixels(GLint _x0, GLint _y0, GLsizei _width, GLsizei _height, u32 _size, bool _sync) override {}
14 | void _cleanUp() override {}
15 | };
16 |
--------------------------------------------------------------------------------
/GLideN64/src/BufferCopy/DepthBufferToRDRAM.h:
--------------------------------------------------------------------------------
1 | #ifndef DepthBufferToRDRAM_H
2 | #define DepthBufferToRDRAM_H
3 |
4 | #include
5 | #include
6 |
7 | namespace graphics {
8 | class PixelReadBuffer;
9 | }
10 |
11 | struct CachedTexture;
12 | struct FrameBuffer;
13 |
14 | class DepthBufferToRDRAM
15 | {
16 | public:
17 | void init();
18 | void destroy();
19 |
20 | bool copyToRDRAM(u32 _address);
21 | bool copyChunkToRDRAM(u32 _startAddress);
22 |
23 | static DepthBufferToRDRAM & get();
24 |
25 | private:
26 | DepthBufferToRDRAM();
27 | ~DepthBufferToRDRAM();
28 |
29 | bool _prepareCopy(u32& _startAddress, bool _copyChunk);
30 | bool _copy(u32 _startAddress, u32 _endAddress);
31 |
32 | // Convert pixel from video memory to N64 depth buffer format.
33 | static u16 _FloatToUInt16(f32 _z);
34 |
35 | graphics::ObjectHandle m_FBO;
36 | std::unique_ptr m_pbuf;
37 | u32 m_frameCount;
38 | CachedTexture * m_pColorTexture;
39 | CachedTexture * m_pDepthTexture;
40 | FrameBuffer * m_pCurFrameBuffer;
41 | };
42 |
43 | #endif // DepthBufferToRDRAM_H
44 |
--------------------------------------------------------------------------------
/GLideN64/src/CRC.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include "Types.h"
3 |
4 | void CRC_Init();
5 |
6 | u32 CRC_Calculate_Strict( u32 crc, const void *buffer, u32 count );
7 | u32 CRC_Calculate( u32 crc, const void *buffer, u32 count );
8 | u32 CRC_CalculatePalette( u32 crc, const void *buffer, u32 count );
9 |
--------------------------------------------------------------------------------
/GLideN64/src/CombinerKey.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 | #include "gDP.h"
4 |
5 | class CombinerKey {
6 | public:
7 | CombinerKey() {
8 | m_key.mux = 0;
9 | }
10 | explicit CombinerKey(u64 _mux, bool _setModeBits = true);
11 | CombinerKey(const CombinerKey & _other);
12 |
13 | void operator=(u64 _mux);
14 | void operator=(const CombinerKey & _other);
15 |
16 | bool operator==(const CombinerKey & _other) const;
17 | bool operator<(const CombinerKey & _other) const;
18 |
19 | bool isRectKey() const;
20 |
21 | u32 getCycleType() const;
22 |
23 | u32 getBilerp() const;
24 |
25 | u64 getMux() const { return m_key.mux; }
26 |
27 | void read(std::istream & _is);
28 |
29 | static const CombinerKey & getEmpty();
30 |
31 | private:
32 | gDPCombine m_key;
33 | };
34 |
--------------------------------------------------------------------------------
/GLideN64/src/DepthBufferRender/ClipPolygon.h:
--------------------------------------------------------------------------------
1 | #ifndef CLIP_POLYGON_H
2 | #define CLIP_POLYGON_H
3 |
4 | #define VISIBLE 0
5 | #define LEFT 1
6 | #define RIGHT 2
7 | #define TOP 4
8 | #define BOT 8
9 |
10 | struct vertexclip
11 | {
12 | float x,y,z;
13 | int visible;
14 | };
15 |
16 | /*
17 | * vbp is a pointer to a vertex array. The first 3 vertices in that
18 | * array is our source vertices. The rest of the array will be used
19 | * to hold new vertices created during clipping.
20 | *
21 | * you can then access the new vertices using the *final variable
22 | *
23 | * function returns the number of vertices in the resulting polygon
24 | */
25 | int ClipPolygon(vertexclip *** final, vertexclip * vbp, int numVertices);
26 |
27 | #endif // CLIP_POLYGON_H
28 |
--------------------------------------------------------------------------------
/GLideN64/src/DepthBufferRender/DepthBufferRender.h:
--------------------------------------------------------------------------------
1 | //****************************************************************
2 | //
3 | // Software rendering to N64 depth buffer
4 | // Created by Gonetz, Dec 2004
5 | //
6 | //****************************************************************
7 |
8 | #ifndef DEPTH_BUFFER_RENDER_H
9 | #define DEPTH_BUFFER_RENDER_H
10 |
11 | struct vertexi
12 | {
13 | int x, y; // Screen position in 16:16 bit fixed point
14 | int z; // z value in 16:16 bit fixed point
15 | };
16 |
17 | void Rasterize(vertexi * vtx, int vertices, int dzdx);
18 |
19 | #endif //DEPTH_BUFFER_RENDER_H
20 |
--------------------------------------------------------------------------------
/GLideN64/src/DisplayLoadProgress.h:
--------------------------------------------------------------------------------
1 | #ifndef DISPLAYLOADPROGRESS_H
2 | #define DISPLAYLOADPROGRESS_H
3 |
4 | void displayLoadProgress(const wchar_t *format, ...);
5 |
6 | #endif // DISPLAYLOADPROGRESS_H
7 |
--------------------------------------------------------------------------------
/GLideN64/src/FrameBufferEmulationIssues.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/FrameBufferEmulationIssues.txt
--------------------------------------------------------------------------------
/GLideN64/src/GLideN64.cpp:
--------------------------------------------------------------------------------
1 | char pluginName[] = "GLideN64";
2 | wchar_t pluginNameW[] = L"GLideN64";
3 | void (*CheckInterrupts)( void );
4 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideN64.h:
--------------------------------------------------------------------------------
1 | #ifndef GLIDEN64_H
2 | #define GLIDEN64_H
3 |
4 | extern char pluginName[];
5 | extern wchar_t pluginNameW[];
6 | extern void (*CheckInterrupts)( void );
7 |
8 | #endif // GLIDEN64_H
9 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/TextureFilters_xbrz.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNHQ/TextureFilters_xbrz.cpp
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/bldno.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 |
5 | int main (void)
6 | {
7 | struct tm locTime;
8 | time_t sysTime;
9 | char *build;
10 |
11 | time(&sysTime);
12 | locTime = *localtime(&sysTime);
13 |
14 | if ((build = getenv("BUILD_NUMBER")) != NULL) {
15 | printf("#define BUILD_NUMBER %s\n", build);
16 | printf("#define BUILD_NUMBER_STR \"%s\"\n", build);
17 | } else {
18 | unsigned short magic;
19 | magic = (locTime.tm_yday << 7) |
20 | (locTime.tm_hour << 2) |
21 | (locTime.tm_min / 15);
22 | printf("#define BUILD_NUMBER %d\n", magic);
23 | printf("#define BUILD_NUMBER_STR \"%d\"\n", magic);
24 | }
25 |
26 | return 0;
27 | }
28 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/bldno.h:
--------------------------------------------------------------------------------
1 | #define BUILD_NUMBER 13480
2 | #define BUILD_NUMBER_STR "13480"
3 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/lib/libdxtn.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNHQ/lib/libdxtn.a
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/lib/libpng.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNHQ/lib/libpng.a
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/lib/libz.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNHQ/lib/libz.a
--------------------------------------------------------------------------------
/GLideN64/src/GLideNHQ/test/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 2.6)
2 |
3 | project( test_hq )
4 |
5 | # Build type
6 |
7 | if( NOT CMAKE_BUILD_TYPE)
8 | set( CMAKE_BUILD_TYPE Release)
9 | endif( NOT CMAKE_BUILD_TYPE)
10 |
11 | if( CMAKE_BUILD_TYPE STREQUAL "Debug")
12 | set( CMAKE_BUILD_TYPE Debug)
13 | set( DEBUG_BUILD TRUE)
14 | add_definitions(
15 | -DDEBUG
16 | )
17 | endif( CMAKE_BUILD_TYPE STREQUAL "Debug")
18 |
19 | add_definitions(
20 | -DGHQCHK=1
21 | -DTXFILTER_DLL=1
22 | )
23 |
24 | if(WIN32)
25 | add_definitions(
26 | -DWIN32
27 | -DOS_WINDOWS
28 | )
29 | endif(WIN32)
30 |
31 | #SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_CPP11_COMPILE_FLAGS}" )
32 |
33 | add_executable( test_hq test.cpp ../Ext_TxFilter.cpp )
34 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/AboutDialog.cpp:
--------------------------------------------------------------------------------
1 | #include "AboutDialog.h"
2 | #include "ui_AboutDialog.h"
3 | #include
4 | #include
5 |
6 | AboutDialog::AboutDialog(QWidget *parent, Qt::WindowFlags f) :
7 | QDialog(parent, f),
8 | ui(new Ui::AboutDialog)
9 | {
10 | ui->setupUi(this);
11 | }
12 |
13 | AboutDialog::~AboutDialog()
14 | {
15 | delete ui;
16 | }
17 |
18 | void AboutDialog::_init()
19 | {
20 | ui->buttonBox->button(QDialogButtonBox::Close)->setText(tr("Close"));
21 | }
22 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/AboutDialog.h:
--------------------------------------------------------------------------------
1 | #ifndef ABOUTDIALOG_H
2 | #define ABOUTDIALOG_H
3 |
4 | #include
5 |
6 | namespace Ui {
7 | class AboutDialog;
8 | }
9 |
10 | class AboutDialog : public QDialog
11 | {
12 | Q_OBJECT
13 |
14 | public:
15 | explicit AboutDialog(QWidget *parent = Q_NULLPTR, Qt::WindowFlags f = Qt::WindowFlags());
16 | ~AboutDialog();
17 |
18 | private:
19 | void _init();
20 | Ui::AboutDialog *ui;
21 | };
22 |
23 | #endif // ABOUTDIALOG_H
24 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/BottomLeft.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/BottomLeft.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/BottomRight.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/BottomRight.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Down.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Down.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/FullscreenResolutions.h:
--------------------------------------------------------------------------------
1 | #ifndef FULLSCREENRESOLUTIONS_H
2 | #define FULLSCREENRESOLUTIONS_H
3 |
4 | #include "ConfigDialog.h"
5 |
6 | void fillFullscreenResolutionsList(QStringList & _listResolutions, int & _resolutionIdx, QStringList & _listRefreshRates, int & _rateIdx);
7 |
8 | void fillFullscreenRefreshRateList(int _resolutionIdx, QStringList & _listRefreshRates, int & _rateIdx);
9 |
10 | void getFullscreenResolutions(int _idx, unsigned int & _width, unsigned int & _height);
11 | void getFullscreenRefreshRate(int _idx, unsigned int & _rate);
12 |
13 | #endif // FULLSCREENRESOLUTIONS_H
14 |
15 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/GLideNUI.h:
--------------------------------------------------------------------------------
1 | #ifndef GLIDENUII_H
2 | #define GLIDENUII_H
3 |
4 | #if defined(__cplusplus)
5 | extern "C" {
6 | #endif
7 |
8 | #ifdef OS_WINDOWS
9 | #define EXPORT __declspec(dllexport)
10 | #define CALL __cdecl
11 | #else
12 | #define EXPORT __attribute__((visibility("default")))
13 | #define CALL
14 | #endif
15 |
16 | EXPORT bool CALL RunConfig(const wchar_t * _strFileName, const char * _romName);
17 | EXPORT int CALL RunAbout(const wchar_t * _strFileName);
18 | EXPORT void CALL LoadConfig(const wchar_t * _strFileName);
19 | EXPORT void CALL LoadCustomRomSettings(const wchar_t * _strFileName, const char * _romName);
20 | EXPORT void CALL SaveScreenshot(const wchar_t * _folder, const char * _name, int _width, int _height, const unsigned char * _data);
21 |
22 | #if defined(__cplusplus)
23 | }
24 | #endif
25 |
26 | #endif // GLIDENUII_H
27 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/GLideNUI.pro:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------
2 | #
3 | # Project created by QtCreator 2015-01-26T21:59:49
4 | #
5 | #-------------------------------------------------
6 |
7 | QT += core gui
8 | QTPLUGIN += qico
9 |
10 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
11 |
12 | TARGET = GLideNUI
13 | TEMPLATE = lib
14 | CONFIG += staticlib
15 | CONFIG += c++11
16 |
17 | SOURCES += \
18 | ConfigDialog.cpp \
19 | GLideNUI.cpp \
20 | FullscreenResolutions_windows.cpp \
21 | Settings.cpp \
22 | ScreenShot.cpp \
23 | AboutDialog.cpp
24 |
25 | HEADERS += \
26 | ConfigDialog.h \
27 | GLideNUI.h \
28 | FullscreenResolutions.h \
29 | Settings.h \
30 | AboutDialog.h
31 |
32 | RESOURCES += \
33 | icon.qrc
34 |
35 | FORMS += \
36 | configDialog.ui \
37 | AboutDialog.ui
38 |
39 | TRANSLATIONS = gliden64_fr.ts \
40 | gliden64_de.ts \
41 | gliden64_it.ts \
42 | gliden64_es.ts \
43 | gliden64_pl.ts \
44 | gliden64_pt_BR.ts \
45 | gliden64_ja.ts
46 |
47 | DISTFILES +=
48 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Icon-Original.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Icon-Original.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Icon.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Info.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Info.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Left.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Left.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Right.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Right.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Settings.h:
--------------------------------------------------------------------------------
1 | #ifndef SETTINGS_H
2 | #define SETTINGS_H
3 |
4 | void loadSettings(const QString & _strIniFolder);
5 | void writeSettings(const QString & _strIniFolder);
6 | void loadCustomRomSettings(const QString & _strIniFolder, const char * _strRomName);
7 | void saveCustomRomSettings(const QString & _strIniFolder, const char * _strRomName);
8 | QString getTranslationFile();
9 | QStringList getProfiles(const QString & _strIniFolder);
10 | QString getCurrentProfile(const QString & _strIniFolder);
11 | void changeProfile(const QString & _strIniFolder, const QString & _strProfile);
12 | void addProfile(const QString & _strIniFolder, const QString & _strProfile);
13 | void removeProfile(const QString & _strIniFolder, const QString & _strProfile);
14 |
15 | #endif // SETTINGS_H
16 |
17 |
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/TopLeft.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/TopLeft.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/TopRight.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/TopRight.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Up.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Up.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/Warning.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/libretro/paraLLeXT/41567a669252e7af3dcaf75616dc83ec0a11847f/GLideN64/src/GLideNUI/Warning.ico
--------------------------------------------------------------------------------
/GLideN64/src/GLideNUI/icon.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | Icon.ico
4 | Warning.ico
5 | Info.ico
6 | Up.ico
7 | Right.ico
8 | Down.ico
9 | Left.ico
10 | TopLeft.ico
11 | TopRight.ico
12 | BottomRight.ico
13 | BottomLeft.ico
14 |
15 |
16 |
--------------------------------------------------------------------------------
/GLideN64/src/Graphics/CombinerProgram.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include "CombinerProgram.h"
3 | #include
4 |
5 | namespace graphics {
6 |
7 | u32 CombinerProgram::getShaderCombinerOptionsBits()
8 | {
9 | // WARNING: Shader Storage format version must be increased after any change in this function.
10 | std::vector vecOptions;
11 | vecOptions.push_back(config.video.multisampling > 0 ? 1 : 0);
12 | vecOptions.push_back(config.texture.bilinearMode);
13 | vecOptions.push_back(config.texture.enableHalosRemoval);
14 | vecOptions.push_back(config.generalEmulation.enableHWLighting);
15 | vecOptions.push_back(config.generalEmulation.enableNoise);
16 | vecOptions.push_back(config.generalEmulation.enableLOD);
17 | vecOptions.push_back(config.frameBufferEmulation.N64DepthCompare);
18 | vecOptions.push_back(config.generalEmulation.enableLegacyBlending);
19 | vecOptions.push_back(config.generalEmulation.enableFragmentDepthWrite);
20 | u32 optionsSet = 0;
21 | for (u32 i = 0; i < vecOptions.size(); ++i)
22 | optionsSet |= vecOptions[i] << i;
23 | return optionsSet;
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/GLideN64/src/Graphics/CombinerProgram.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include