This project is mirrored from https://***** Pull mirroring updated .
  1. 06 Apr, 2019 3 commits
  2. 04 Apr, 2019 3 commits
  3. 03 Apr, 2019 2 commits
  4. 01 Apr, 2019 4 commits
  5. 28 Mar, 2019 2 commits
    • Rafael Kitover's avatar
      installdeps: centos: do not install wx 2.8 · 6ec46678
      Rafael Kitover authored
      Do not install the wxGTK-devel package on centos, as the wxGTK3-devel
      package does come with a wxrc named wxrc-3.0.
      This is a followup on 2097b5aa
      Signed-off-by: default avatarRafael Kitover <>
    • Rafael Kitover's avatar
      wx 2.8 compat fixes, centos support, cmake fixes · 2097b5aa
      Rafael Kitover authored
      Add support for RHEL/centos to installdeps. There is no SFML package.
      Add some string compatibility stuff so that everything builds on wx 2.8
      unicode builds.
      TODO: add travis slaves for 2.8, with and without unicode
      Disable the game frame spacer code on 2.8 because it does not work (the
      frame does not expand.)
      cmake improvements:
      - set ENABLE_LTO=OFF for Debug builds by default
      - set ENABLE_LINK=OFF if SFML cannot be found and continue
      - use better logic for finding wx utilities wx-config and wxrc
      Signed-off-by: default avatarRafael Kitover <>
      Closes #395
      Closes #297
  6. 27 Mar, 2019 1 commit
    • Rafael Kitover's avatar
      cmake: refactor, better clang support · b69fced7
      Rafael Kitover authored
      Do some reformatting towards the more modern cmake style.
      Clean up some code.
      Support linking to gcc compiled wxWidgets by setting
      `-D__GXX_ABI_VERSION=` appropriately for clang.
      Use the new method of calling `FindwxWidgets.cmake`, the old method
      causes some problems now.
      Set all necessary policies in both cmake files.
      Signed-off-by: default avatarRafael Kitover <>
  7. 26 Mar, 2019 3 commits
  8. 23 Mar, 2019 1 commit
    • Rafael Kitover's avatar
      cmake: fix syntax error in Win32Deps.cmake · 23fe13d8
      Rafael Kitover authored
      In a construct such as:
      if($ENV{FOO} MATCHES bar)
      if the environment variable is not set, the if statement becomes a
      syntax error because there is nothing being compared.
      Fix this by quoting the environment variable like so:
      if("$ENV{FOO}" MATCHES bar)
      Signed-off-by: default avatarRafael Kitover <>
  9. 22 Mar, 2019 2 commits
    • Rafael Kitover's avatar
      reset Xorg screensaver on joy events · 59e9c690
      Rafael Kitover authored
      Use the libXss Xorg screensaver extension library to call
      `XResetScreenSaver()` on joystick events to inhibit screen blanking when
      for whatever reason the joystick driver or DE (xboxdrv and KDE in this
      case) does not do this.
      Signed-off-by: default avatarRafael Kitover <>
    • Rafael Kitover's avatar
      fix game panel size on wxGTK #325 · a0283ead
      Rafael Kitover authored
      On wxWidgets 3.1.2, which is what vcpkg uses (and we use vcpkg for
      Visual Studio) the wxEXPAND flag for the game area in the sizer throws
      an XRC error dialog, removing the flag works correctly on Windows, but
      not on wxGTK.
      As a workaround, do not use the wxEXPAND flag on Windows.
      TODO: with max zoom set, the game area is not centered vertically in
      Signed-off-by: default avatarRafael Kitover <>
  10. 21 Mar, 2019 1 commit
    • Rafael Kitover's avatar
      auto deps for visual studio, take 1 · f1ecd7c3
      Rafael Kitover authored
      Use vcpkg to build deps when Visual Studio on Windows is detected, this
      only happens on first build, but does take a while because things like
      wxWidgets need to be built. Building from the developer command line is
      also supported.
      I considered making a pre-built tarball available, but the resulting
      files are just too big for this to be practical.
      Make the necessary cmake code changes for this to work and to use the
      vcpkg packages, which work just like on linux or have other cmake glue
      code available.
      To do this, we make vcpkg a submodule, use git to checkout all
      submodules, then just build and use the `vcpkg.exe`. Then we set the
      CMAKE_TOOLCHAIN_FILE to the vcpkg toolchain and also include it
      directly, why this is necessary I don't know, without it it doesn't work
      in the IDE but does on the command line.
      All of this requires no vcpkg integration with either the user or the
      project. A user-wide `ENV{VCPKG_ROOT}` is also supported.
      Fix the dynamic arrays in the GBA core, MSVC follows the C++ standard on
      this and gcc does not.
      TODO: add the necessary gcc flags to make this an error in cmake.
      Use `wxArrayString` instead of `std::vector<wxString>` in
      `src/wx/strutils.cpp` which is used in options parsing. This was
      necessary because of a bizarre linker error with wxWidgets when using
      Visual Studio:
      In `src/wx/panel.cpp` make sure the unimplemented D3D renderer code does
      not get compiled if it's actually `OFF`.
      Also fix the new spacer code for the drawing panel to not combine
      `wxEXPAND` with `wxALIGN_CENTER`, which is an error on wxWidgets 3.1.2,
      which is what vcpkg uses. The drawing panel seems to be automatically
      stretched to the max size automatically anyway.
      TODO: if all of this works, we'll need an Appveyor set up for visual
      Signed-off-by: default avatarRafael Kitover <>
  11. 20 Mar, 2019 1 commit
  12. 19 Mar, 2019 1 commit
  13. 18 Mar, 2019 1 commit
    • Edênis Freindorfer Azevedo's avatar
      XDG followup work #94 · a1f0c34a
      Edênis Freindorfer Azevedo authored
      * Apply save order for save states and batteries.
      The order for save state/battery:
      1. StateDir / BatteryDir;
      2. The path of the current loaded game;
      3. XDG Base Dir fallback.
      * Use XDG Base Dir fallback to save screenshots and recordings.
      * Apply search order for all dirs except recording (not implemented yet) of SDL port.
      The order for battery/save state/screenshot is:
      1. StateDir/BatteryDir/ScreenshotDir;
      2. The path of the current loaded game;
      3. XDG Base Dir (or equivalent) fallback.
      * Refactor code.
      * Fix freeing and setting pointer to NULL of SDL port.
  14. 16 Mar, 2019 2 commits
  15. 15 Mar, 2019 1 commit
  16. 14 Mar, 2019 2 commits
  17. 13 Mar, 2019 1 commit
  18. 12 Mar, 2019 1 commit
  19. 11 Mar, 2019 1 commit
  20. 09 Mar, 2019 5 commits
  21. 07 Mar, 2019 2 commits
    • Rafael Kitover's avatar
      rpi plugins fix + paths enhancements #94 · 530af140
      Rafael Kitover authored
      Store the full relative path to found `.rpi` plugins, relative to the
      standard Plugins directory, as specified by wxWidgets.
      This fixes the problem of plugins being in a subdirectory while only the
      basename was stored, making the plugins unusable.
      This is done by using `wxFileName::GetFullPath()` instead of
      `wxFileName::GetFullName()` with a relative filename instance.
      Make a `GetPluginsDir()` method on the app class to simplify getting
      this directory, and for possible future overrides.
      Also make some minor, functionally equivalent changes to
      `get_config_path()` in `wxvbam.cpp`:
      - use the new `GetPluginsDir()` method for the plugins directory when
        building the config file search path
      - print the XdgConfigDir on all platforms, since the function works on
        all platforms
      - make a `add_nonstandard_path` macro which duplicates the `add_path`
        macro for wxWidgets standard paths but for any arbitrary string path
      - use `wxFileName` methods to make the XDG config directory path instead
        of string concatenation
      Signed-off-by: default avatarRafael Kitover <>
    • Rafael Kitover's avatar
      define S_ISDIR for win32 #94 · 6a98f3c2
      Rafael Kitover authored
      Followup on #383.
      Signed-off-by: default avatarRafael Kitover <>