Commit Graph

904 Commits (e076526898f0caf43118fd240789faafa19b69af)

Author SHA1 Message Date
Connor McLaughlin 149cbf6457 GPU/HW: Properly implement too-large polygon culling
Replaces triangle strips with triangle lists, which has the added bonus
of not requiring flushing as many batches.

Fixes missing geometry in Vagrant Story.
5 years ago
Connor McLaughlin bbe54df3a8 GPU/HW: Split rectangles on texture page boundaries
Fixes the sky in Ape Escape's menu screen, FF7 menu borders, probably
others.
5 years ago
Connor McLaughlin bd542831a8 GPU: Fix incorrect bit check in DrawMode::IsUsingPalette()
Fixes Sony Computer Entertainment fade in the NTSC-J BIOS.
5 years ago
Connor McLaughlin 0f7365117b SDLControllerInterface: Add missing include 5 years ago
Connor McLaughlin 961bc09979 SDL: Fix crashes on starting emulation 5 years ago
Connor McLaughlin 208928b6dc Qt: Fix load state menu not refreshing after save 5 years ago
Connor McLaughlin 1e0e802fa4 HostInterface: Add a helper to display a 'Loading Screen' during long startup 5 years ago
Connor McLaughlin 9ddb3a8c7a SDL: Use controller interface from frontend-common 5 years ago
Connor McLaughlin 6456c5d63d Qt: Don't resume when booting without game code 5 years ago
Connor McLaughlin dcc9da3f5e HostInterface: Don't try to resume system without game code 5 years ago
Connor McLaughlin 06f4d72631 FrontendCommon: Use SDL_InitSubSystem() for lazy initialization 5 years ago
Connor McLaughlin 78a6666439 SDLAudioStream: Don't allow format to change 5 years ago
Connor McLaughlin e48e6141c8 Qt: Set display window size on context create not constructor
The size isn't known at construction time.
5 years ago
Connor McLaughlin cd2f6d1f68 HostInterface: Only display error when loading resume state if boot anyway flag isn't set 5 years ago
Connor McLaughlin 6d945439eb Qt: Fix possible crash/race when startup fails 5 years ago
Connor McLaughlin 59cf799491 Qt: Implement controller interface/binding 5 years ago
Connor McLaughlin 6a1206dde7 Frontends: Add option for "Increase Timer Resolution" 5 years ago
Connor McLaughlin e01cf0dccb Frontends: Implement auto save on exit/resume 5 years ago
Connor McLaughlin e738b87a25 HostInterface: Add helpers for resume save state 5 years ago
Connor McLaughlin 5f3be68028 HostInterface: Notify host when controller types change 5 years ago
Connor McLaughlin b0c846388e SDL: Only save settings when changes have been made 5 years ago
Connor McLaughlin 37d765e8d7 HostInterface: Support switching audio backends 5 years ago
Connor McLaughlin 6a0c15b649 HostInterface: Move timer resolution increase to base class 5 years ago
Connor McLaughlin 1e009133ae Rename 'Default' audio backend to 'SDL' 5 years ago
Connor McLaughlin d17f0a3923 Qt: Implement disc change in QtHostInterface 5 years ago
Connor McLaughlin e5740a5632 Qt: Pass QStrings by reference in HostInterface 5 years ago
Connor McLaughlin fd8ed08307 Move more logic from frontend to base HostInterface 5 years ago
Connor McLaughlin f0578bb932 HostInterface: Make helper methods const 5 years ago
Connor McLaughlin 153eded978 Qt: Use a single column in hotkey binding list 5 years ago
Connor McLaughlin 5c303705ac Qt: Use scroll area for hotkey binding list 5 years ago
Connor McLaughlin 1ce1e016ae Qt: Implement save state menus 5 years ago
Connor McLaughlin 97ea851097 Qt: Narrowing warning fix 5 years ago
Connor McLaughlin 7290e5cad0 HostInterface: Add per-slot save state helper functions 5 years ago
Connor McLaughlin 9148581213 GPU: Narrowing warning fix 5 years ago
Connor McLaughlin 3bafdf88d4 SDL: Fix uninitialized mapping variables 5 years ago
Connor McLaughlin 745c2785b2 Move shared frontend code from SDL to a seperate project 5 years ago
Connor McLaughlin 24bebf7f59 SDL: Add emulation speed slider 5 years ago
Connor McLaughlin fd2ca2927e Common/FileSystem: Fix recursive directory creation 5 years ago
Connor McLaughlin befa2a27d8 HostInterface: Fix crash in SetUserDirectory 5 years ago
Connor McLaughlin b605a84f7d HostInterface: Set user directory for Linux/macOS, portable.txt support 5 years ago
Connor McLaughlin f5482cb3b6 Don't require OpenGL compatibility profile 5 years ago
Connor McLaughlin 1c17d5495e CMake: Attempting to around SDL2 issues on macOS 5 years ago
Connor McLaughlin 65b5013da0 Qt: Work around indirect include of glext.h by QOpenGLContext on macOS
Hacky, but aside from not using glad I'm not sure what else to do.
5 years ago
Connor McLaughlin 15e49b9f61 Core/TimingEvent: Add missing <string> include 5 years ago
Connor McLaughlin f0910dc948 Common/FileSystem: Include fix 5 years ago
Connor McLaughlin f805764fea Common/FileSystem: More OSX fixes.. 5 years ago
Connor McLaughlin 2ac8f7a6ac Common/FileSystem: uint32 -> u32 5 years ago
Connor McLaughlin 244302557f SDL: Add missing <cmath> include to sdl_host_interface.cpp 5 years ago
Connor McLaughlin 8eba4b379c Settings: Default to D3D11 renderer on Windows
This point it's less buggy and slightly more performant.
5 years ago
Connor McLaughlin 4681f9d744 Common/FileSystem: Don't include malloc.h on macOS 5 years ago
Connor McLaughlin 33f3ab4d86 Common/FIFOQueue: Use posix_memalign instead of memalign 5 years ago
Connor McLaughlin 23c8a5588d Add macOS to some Linux/Android-only-isms 5 years ago
Connor McLaughlin 5aba89091e HostInterface: Fix possible crash in BIOS loading 5 years ago
Connor McLaughlin d7f8884291 Qt: Fix compilation under clang-9
Fixes #23.
5 years ago
Connor McLaughlin c008a5d523 Display: Fix bleeding from adjacent VRAM columns with linear filtering 5 years ago
Connor McLaughlin 5c7ef65a34 HostInterface: Non-standard speeds are <100% too 5 years ago
Connor McLaughlin b8210ecbe3 GPU: Use correct texture page size in overlap tracking 5 years ago
Connor McLaughlin 278aa86d14 SPU: Refactor ADSR/implement exponential mode 5 years ago
Connor McLaughlin e098c83342 HostInterface: Disable vsync/audio sync when running at not-100% speed 5 years ago
Connor McLaughlin 70fe43a3ec System: Implement variable emulation speed 5 years ago
Connor McLaughlin a81a0c0f21 Qt: Add normalized float values to SettingWidgetBinder 5 years ago
Connor McLaughlin 9ac7b002e2 GPU/HW: Improve dirty rectangle tracking
Fixes title screen of Activision Classics and performance regression
from Vagrant Story motion blur fix.
5 years ago
Connor McLaughlin 2bf6912f39 Qt: Simplify emulation thread loop 5 years ago
Connor McLaughlin c820ddba79 HostInterface: Move throttle and perf stats to System class 5 years ago
Connor McLaughlin 895cefec60 Qt: Fix core trying to use core OpenGL shaders on OpenGL ES 5 years ago
Connor McLaughlin 1e45c9c4e1 GPU: Fix incorrect overwrite of set mask bit from draw mode
Fixes motion blur in Vagrant Story.
5 years ago
Connor McLaughlin 287ab93cdc GPU: Fix texture bit15 not propogating when blending enabled 5 years ago
Connor McLaughlin ac5af4658d GPU: Mask bit check should use existing colour not new colour 5 years ago
Connor McLaughlin a36fe8bfe6 GPU: Keep drawing area invalidated after invalidating shadow VRAM copy
Partially fixes the motion blur in Vagrant Story.
5 years ago
Connor McLaughlin d1c8775996 Common/Rectangle: Compile fix when using operator= 5 years ago
Connor McLaughlin 7e862cd63e GPU: Texture bit should be ignored when drawing lines
Fixes line flickering in Vagrant Story.
5 years ago
Stenzek 8d9ce82281 Qt: Slightly rework desktop/GLES context creation 5 years ago
Stenzek 8654778298 Qt: OpenGL display window crash fix 5 years ago
Stenzek e4e15f234b Qt: Fix up debug CPU mode switch menu 5 years ago
Stenzek 057263bda3 HostInterface: Track changes to CPU mode in ApplySettings() 5 years ago
Stenzek c26b9bc54c System: UpdateCPUExecutionMode -> SetCPUExecutionMode 5 years ago
Stenzek 93f85535eb Qt: Handle creation of ES contexts even when it wasn't specified 5 years ago
Stenzek edb6d7c97e Qt: Add debug settings to menu 5 years ago
Stenzek 733ab1bca0 Settings: Store debug settings to ini 5 years ago
Stenzek 6718f0442c Qt: Support QActions in SettingsWidgetBinder 5 years ago
Connor McLaughlin 52fd070d3b Build: Compile tinyxml2 as static library instead of dll 5 years ago
Connor McLaughlin ec55ab7f5e Build: Rename duckstation to duckstation-sdl 5 years ago
Connor McLaughlin 5957df5b5c Update SDL2 to 2.0.10 5 years ago
Connor McLaughlin 4eadc07629 Common/StringUtil: Fix more incorrect usage of va_list 5 years ago
Connor McLaughlin 899a8e0f03 Qt: Add "Use Debug Device" to GPU settings 5 years ago
Connor McLaughlin 96be414e3e Qt: Populate console region drop-down dynamically 5 years ago
Connor McLaughlin b11a7a106f Common/Log: Fix corrupted output/UB with va_copy
Fixes crashes on GCC9+ (#9), maybe others.
5 years ago
Connor McLaughlin c72d86cf1b Qt: Hook up CPU execution mode setting 5 years ago
Connor McLaughlin e11c7190b5 Linux build fix 5 years ago
Connor McLaughlin 070e6c32d6 Frontends: Add .chd files to open filter 5 years ago
Connor McLaughlin c1c82eb3f3 Common/CDImage: Support CHD format 5 years ago
Connor McLaughlin 18d5086e4c Common/CDImage: Changes to support CHD interfaces 5 years ago
Connor McLaughlin 0b7abf244e Timers: Fix sync mode 3 inverted condition 5 years ago
Connor McLaughlin 88936463d7 GPU: Toggle vblank timer gate for full frame
Regression from event system. Fixes Ridge Racer.
5 years ago
Connor McLaughlin 288b680e07 FileSystem: Add ReplaceExtension() helper 5 years ago
Connor McLaughlin 6624df1e8c Qt: Add CPU settings/emulation speed to console settings 5 years ago
Connor McLaughlin 5272ecd572 Qt: Support binding settings to QSliders 5 years ago
Connor McLaughlin 4c59d8a9ea Linux build fix 5 years ago
Connor McLaughlin 1b9609ef61 Implement event-based scheduler instead of lock-step components 5 years ago
Connor McLaughlin 624888e131 HostInterface: Default BIOS path to bios subdirectory 5 years ago
Connor McLaughlin faf2308695 Settings: Move set defaults to HostInterface so it can use user paths 5 years ago
Connor McLaughlin b5e73a0be4 HostInterface: Add helper methods for getting paths to save states/memcards 5 years ago
Connor McLaughlin a83cad5872 GPU/D3D11: Use shader bytecode cache 5 years ago
Connor McLaughlin 82da9a4505 D3D11: Add a shader bytecode cache class 5 years ago
Connor McLaughlin 2276975d62 Qt: Implement GitHub Repository/Issue Tracker links 5 years ago
Connor McLaughlin 1ed187fd57 Qt: Add hotkey for increasing/decreasing resolution scale 5 years ago
Connor McLaughlin 40799d0f77 HostInterface: Move ModifyResolutionScale() to base class 5 years ago
Connor McLaughlin 8148486a9f Qt: Add hotkey to toggle software rendering 5 years ago
Connor McLaughlin 4a3478b360 HostInterface: Add function to switch between sw/hw rendering 5 years ago
Connor McLaughlin f2231d6669 HostInterface: Move setting update logic to base class 5 years ago
Connor McLaughlin 82563d94f4 HostInterface: Fix offset OSD messages in Qt frontend 5 years ago
Connor McLaughlin 687772c4da HostDisplay: Move some derived class fields to base class 5 years ago
Connor McLaughlin 736d85b0f3 Qt: Implement display linear filtering 5 years ago
Connor McLaughlin abf48b6cc2 Qt: Update GPU settings when enhancements are changed 5 years ago
Connor McLaughlin f05f5aeb2b Qt: Implement browse button for BIOS path 5 years ago
Connor McLaughlin 2694181811 Qt: Hook up HostInterface::Report{Error,Message} 5 years ago
Connor McLaughlin 19cd91a684 Qt: Fix crash on exit when boot fails 5 years ago
Connor McLaughlin 78f984c412 Qt: Add automatic download of redump disc database for game list 5 years ago
Connor McLaughlin b937275073 Qt: Link with and copy Qt5Network library 5 years ago
Connor McLaughlin 65ae85eb7b Qt: Skeleton for audio settings 5 years ago
Connor McLaughlin c5faa36f43 GameList: Add function to query whether database exists 5 years ago
Connor McLaughlin f6fee86f1c HostInterface: Create user directories on startup 5 years ago
Connor McLaughlin b4c06fdcc6 GameList: Auto set cache/database path from user directory 5 years ago
Connor McLaughlin feb48899c3 Qt: Don't double-create game list 5 years ago
Connor McLaughlin 77b282862f HostInterface: Move running title info to System 5 years ago
Connor McLaughlin b3db3a1cc0 HostInterface: Share settings between SDL and Qt frontends 5 years ago
Connor McLaughlin 2c3a0a6af9 HostInterface: Change working directory to user directory at startup 5 years ago
Connor McLaughlin 53428cb55b HostInterface: Add user directory helpers 5 years ago
Connor McLaughlin 7afb79aee6 Common: Add FileSystem::{Get,Set}WorkingDirectory functions 5 years ago
Connor McLaughlin de4e45a433 Common: Add a function to get the path to the running program 5 years ago
Connor McLaughlin 9456dc5d9b Qt: Power off system correctly when exiting 5 years ago
Connor McLaughlin 069bdd471c Qt: Stub saving resume state when powering off 5 years ago
Connor McLaughlin 0200b9ffc1 Qt: Hook up 'Add Game List Directory' function 5 years ago
Connor McLaughlin 98eb71aa3f Qt: Fix extra margins in pad settings panel 5 years ago
Connor McLaughlin 1cdd4e01fb Qt: Reorder settings categories 5 years ago
Connor McLaughlin 8d4d8e44e4 HostInterface: Saving state message should be OSD not error 5 years ago
Connor McLaughlin 0a5f7fcd75 System: Update running game when media changes from save state 5 years ago
Connor McLaughlin f2d5ce74df Qt: Fix bug where render window is not focused leaving fullscreen 5 years ago
Connor McLaughlin 20b60e0f01 Qt: Update window title/save states from running title 5 years ago
Connor McLaughlin 82b4229f1b GameList: Move entry to global scope so it can be forward declared 5 years ago
Connor McLaughlin 183928b0f6 Qt: Skeleton of load/save state menus 5 years ago
Connor McLaughlin 1998aa96a4 Qt: Simplify Change Disc menu logic 5 years ago
Connor McLaughlin 69841d0a09 Qt: Move quick CPU/GPU switch to Debug menu 5 years ago
Connor McLaughlin 6737b3ec44 Qt: Drop Settings accessor from HostInterface
This should only be accessed on the emulation thread.
5 years ago
Connor McLaughlin d343743768 Qt: Safer GPU renderer switching 5 years ago
Connor McLaughlin c5282b99e1 Qt: Thread-safe QSettings access and updating 5 years ago
Connor McLaughlin 9562cbea56 Frontends: Add frame time performance counters 5 years ago
Connor McLaughlin 67710ca184 Qt: Add a signal when the game list selection is changed 5 years ago
Connor McLaughlin 99af858562 Qt/GameList: Fix incorrect game booting when sorted 5 years ago
Connor McLaughlin bfef42f4cb GPU: Fix possible driver crash on oversized update/fill 5 years ago