This project is mirrored from https://github.com/libretro/libretro-lutro.git. Pull mirroring updated .
  1. 24 Apr, 2021 1 commit
  2. 20 Apr, 2021 1 commit
    • Jake Stine's avatar
      fix a number of issues with error handling (#194) · 7b5bd3d5
      Jake Stine authored
      - fix issue where (null) is printed on errors (#87)
       - fix several issues where lua stack was not correctly managed
       - fix a bug in keyboard keystate init
       - optimize some cases of lua stack management
       - Add custom atpanic() handler (we can expand on this later)
      7b5bd3d5
  3. 19 Apr, 2021 1 commit
    • Jake Stine's avatar
      audio: remove native pointer dependency on Source (#193) · 29ae5cbf
      Jake Stine authored
      * Added new build types: Debug, Tool, and Player.
      
       Debug is -O0 compiled with all assertions enabled.
       Tool is -O1 compiled with debug assertions disabled entirely.
       Player is -O3 compiled with tool assertions disabled, and all ignorable assertions demoted to log-only.
      
      Implementation of ignorable asserts is still partial, but as it stands this change is OK to go live (can add features later). On the todo list:
        - add popup to allow content creator to ignore the assert
        - add lua stacktrace information when lua context seems relevant
      
      * GHActions updated to be aware of new player and tool build configs
      
      * makefile: allow changing config from CLI without having to make clean
      
      Also force rebuild of vcxproj target since dep checking is currently insufficient. it should be checking dirs of all globbed source file includes for modifications, but it's not. and this is a really fast step, no point in not running it for now
      
      * Added lutro_errorf and lutro_alertf for logging errors and popup alerts, respectively.
      
       - Cleans up macros and keeps assertions clearly in the domain of Debug and Tooling builds.
       - removed play_assert and friends, which were both confusing terminology and not practical in design
      
      * audio: remove native pointer dependency on Source
      
      We can't store pointers to lua userdata in C. Lua may move the pointers at any time. So instead we must dereference the lua_ref to obtain the pointer at the point it is used, for example while mixing.
      
      Fixes a problem where the engine can crash after some amount of time, depending wildly on game behaviors and memory usage. In many cases no crash may ever occur. I have a test locally (still WIP) that verifies this problem/fix.
      29ae5cbf
  4. 12 Apr, 2021 1 commit
    • Jake Stine's avatar
      Add new build types: Debug, Tool, and Player (#188) · a5ab4d4d
      Jake Stine authored
      * Added new build types: Debug, Tool, and Player.
      
       Debug is -O0 compiled with all assertions enabled.
       Tool is -O1 compiled with debug assertions disabled entirely.
       Player is -O3 compiled with tool assertions disabled, and all ignorable assertions demoted to log-only.
      
      Implementation of ignorable asserts is still partial, but as it stands this change is OK to go live (can add features later). On the todo list:
        - add popup to allow content creator to ignore the assert
        - add lua stacktrace information when lua context seems relevant
      
      * GHActions updated to be aware of new player and tool build configs
      
      * makefile: allow changing config from CLI without having to make clean
      
      Also force rebuild of vcxproj target since dep checking is currently insufficient. it should be checking dirs of all globbed source file includes for modifications, but it's not. and this is a really fast step, no point in not running it for now
      
      * Added lutro_errorf and lutro_alertf for logging errors and popup alerts, respectively.
      
       - Cleans up macros and keeps assertions clearly in the domain of Debug and Tooling builds.
       - removed play_assert and friends, which were both confusing terminology and not practical in design
      a5ab4d4d
  5. 23 Mar, 2021 3 commits
    • RobLoach's avatar
      76911c31
    • Jake Stine's avatar
      audio: add support for static sources, add lua_ref logic to playing sounds (#173) · b6a32d4d
      Jake Stine authored
      * audio: Overhauled. New Mixer, new decoders, and added proper support for soundData as a static source.
      
       - avoids cutting sounds before they finish playing
       - cleans up memory for sources
       - even closes file handles!!
      
      * Rename ogg vorbis decoder functions to decOgg_* to match with decWav_ API
      
      * audio: fix WAVE audio corruption at end of sample
      
      Main issue is that some RIFF WAV files have additional non-audio chunks at the end of the file, for meta data. We were mixing this into the audio buffer, causing noise.
      b6a32d4d
    • Jake Stine's avatar
      microsoft visual studio projects added, adds 'make vcxproj' to Makefile (#178) · dd01fd70
      Jake Stine authored
      
      
      * microsoft visual studio projects added, adds 'make vcxproj' to Makefile
      
      Steps to build Lutro on Windows using Visual Studio:
       - make vcxproj  (requires MSYS2 or make installed for Git BASH)
       - load lutro.sln
      
      You can do these in either order, but the project will fail to load without running make.
      
      Rationale:
       - Provides access to Visual Studio debugging symbols and MSVC debugger.
       - (full stop: this alone was worth all this effort for me)
      
      * Make all the primary target, and fix vorbis build
      Co-authored-by: RobLoach's avatarRob Loach <robloach@gmail.com>
      dd01fd70
  6. 10 Mar, 2021 1 commit
  7. 21 Feb, 2021 1 commit
  8. 04 Jan, 2021 1 commit
  9. 06 Jun, 2020 1 commit
  10. 04 Jan, 2020 1 commit
  11. 21 Aug, 2018 1 commit
    • orbea's avatar
      Init physfs. · 30d2c8f2
      orbea authored
      Fixes a segfault when closing content.
      30d2c8f2
  12. 17 Dec, 2017 1 commit
  13. 17 Sep, 2017 1 commit
  14. 30 Jun, 2017 1 commit
  15. 05 Sep, 2016 3 commits
  16. 04 Aug, 2016 1 commit
  17. 20 Jul, 2016 1 commit
  18. 13 Jul, 2016 1 commit
  19. 25 Jun, 2016 1 commit
  20. 23 Jun, 2016 3 commits
  21. 14 Jun, 2016 1 commit
  22. 23 May, 2016 1 commit
  23. 22 May, 2016 1 commit
  24. 10 May, 2016 1 commit
  25. 09 May, 2016 1 commit
  26. 06 May, 2016 1 commit
  27. 20 Apr, 2016 2 commits
  28. 16 Apr, 2016 1 commit
  29. 13 Jan, 2016 1 commit
  30. 10 Dec, 2015 2 commits
  31. 11 Nov, 2015 1 commit
    • Higor Eurípedes's avatar
      (audio) Fixes and improvements · d8972128
      Higor Eurípedes authored
      - Fixes segfault by implementing thread safe audio.
      - Makes the audio code a little more valgrind friendly by reusing
        allocated memory in mixer_render()
      - Fix a memory/fd leak.
      d8972128
  32. 04 Sep, 2015 1 commit