Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lightning+Lightrec updates and other optimizations #862

Draft
wants to merge 25 commits into
base: master
Choose a base branch
from

Commits on Sep 17, 2024

  1. Configuration menu
    Copy the full SHA
    e328824 View commit details
    Browse the repository at this point in the history
  2. lightrec: Adjust to lightrec API changes and HAVE_MMAP for lightning

    Fix bios freeze with lightrec, AssertIRQ must change lightrec's CAUSE too
    
    cleanup unused cop0 functions
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    05f51c2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    39f5b8a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3f7d110 View commit details
    Browse the repository at this point in the history
  5. Lightrec: enable codebuffer option, fix Windows, move/cleanup headers

    Codebuffer is much faster due to lightrec's 32-bit LUT optimization
    
    Moved lightning.h to lightning-actual.h and made lightning.h include lightning-actual.h and define HAVE_MMAP for lightning, instead of defining in the Makefile which applied it to other parts of beetle, causing issues on Windows in libretro-common/vfs
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    b801cba View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ba5d04a View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    778c1b6 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d34dea9 View commit details
    Browse the repository at this point in the history
  9. support MainRAM at 0x0, use INVALID_PTR instead of NULL

    This allows less code to be emitted by lightrec, but will only
    be used if root user enables it with sysctl -w vm.mmap_min_addr=0
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    8a86773 View commit details
    Browse the repository at this point in the history
  10. Remove "Cycle Timing Check" (execute_one) dynarec option, use new lig…

    …htrec api
    
    This was only useful for debugging, users don't benefit from it, the config
    will fallback to using the beetle interpreter if it was selected
    
    The lightrec execute_one function this option called was removed, for
    equivalent debugging pass current timestamp instead of next_event_ts to
    lightrec_execute
    
    Use lightrec cop2_notify for PGXP, update interpreter to new api
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    dd59b7e View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    9a38b02 View commit details
    Browse the repository at this point in the history
  12. git subrepo commit (merge) deps/lightning

    subrepo:
      subdir:   "deps/lightning"
      merged:   "edc57df2"
    upstream:
      origin:   "https://git.savannah.gnu.org/git/lightning.git"
      branch:   "master"
      commit:   "bfd695a9"
    git-subrepo:
      version:  "0.4.9"
      origin:   "https://github.com/ingydotnet/git-subrepo"
      commit:   "ea10886"
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    85f2354 View commit details
    Browse the repository at this point in the history
  13. git subrepo pull deps/lightrec

    subrepo:
      subdir:   "deps/lightrec"
      merged:   "ea20362c"
    upstream:
      origin:   "https://github.com/pcercuei/lightrec.git"
      branch:   "master"
      commit:   "ea20362c"
    git-subrepo:
      version:  "0.4.9"
      origin:   "https://github.com/ingydotnet/git-subrepo"
      commit:   "ea10886"
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    3bf5fa5 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    3541cf9 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    fd88631 View commit details
    Browse the repository at this point in the history
  16. Extraction of lightrec specific code to cpu_lightrec.cpp

    tweak lightrec startup and syncing stuff
    remove next_interpreter hack
    tweak setoptions, should be safer
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    59a2e9e View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    972b562 View commit details
    Browse the repository at this point in the history
  18. Add Dynarec SP GP hit RAM optimization option

    Disabled by default for max compatibility
    Enabling should generate faster code for most normal games that
    do not have sp and gp registers pointing outside of RAM
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    75d2a4b View commit details
    Browse the repository at this point in the history
  19. Fix GTE bugs due to uninitialized lightrec_regs

    This was broken by cpu.cpp and cpu_lightrec.cpp being split apart
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    7b88a39 View commit details
    Browse the repository at this point in the history
  20. Make cpu_lightrec friend class to cpu

    Add breakpoint handling to match interpreter
    Fix setting of options to lightrec
    ZachCook committed Sep 17, 2024
    Configuration menu
    Copy the full SHA
    472493e View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    98d42a5 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    b1e476e View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    2bf0f5e View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

  1. lightrec_init_mmap: Clean and rewrite io_base mmap code

    Replaces supported_io_bases array with min/inc/max_io_base
    Makes it easier to avoid ranges of address for different platforms
    Fix unmap of lightrec codebuffer
    ZachCook committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    272fb20 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a38d0ae View commit details
    Browse the repository at this point in the history