# Changelog

All notable changes to this project will be documented in this file.

## [2.1.1]
### Added
    - HOD4 Boss battle targets should be fine now.
    - Discord Bot.
    - Zink support in appimage (fixes Zink in the Steam Deck).
    - Change the Mesa version on the fly to fix ID games rendering issues in the appimage. 
### Fixed
    - A typo in the command to load custom gamecontrollerdb (--controllerdb) to match the guide.
    - Disable SDL input when EvDev is selected.
    - A fix to make the Maximize window button show.
### Missing from las changelog
    - Harley network link support (up to 4 players)
    - R-Tuned network link support (up to 4 players)
    - Hummer network link support (up to 4 players)
    - 2 Spicy network link support (up to 2 players)
    - Sega Race TV network link support (up to 4 players)
    - ID4 and ID5 network link support  (up to 2 players)

## [2.1.0]
### Added
    - Rambo DVP-0078 (China version) support.
    - ID5 DVP-0070C support.
    - AxA games added.
    - An option to set a percentage to reduce the travel in ID games steering wheel.
    - An option to change the language in ID5 EXP (DVP-0084 and DVP-0084A) to Chinese.
    - An option to change the way the Guns are shown in Rambo.
    - New controls guide in pdf format inside docs folder.
    - Change the Outrun Testmode font to a built in font that scales with the resolution set.
    - An option in lindberg elf to specify a comunity built game controller database.
    - An option in lindberg elf to generate a default controls.ini.
    - An option to in lindberg elf generate a default lindbergh.ini file.
    - SDL controls configuration using logical names.
    - SDL input remade with separate configuration file.
    - Option to make Primeval Hunt test mode load as a single screen.
    - Blitting to support stretching with fullscreen on the fly. (F11 to switch from / to fullscreen).
    - Bobby's birthday checking!
    - Prevent the created windows to resize/maximize in LGJ games and PH (Cause issues).
### Code changes
    - config file format changed to ini (TOML format).
    - Removed X11 completely and only SDL is used to create windows and handle controls.
    - Cleaned the shader patches files.
    - Moved all the network related code to a new file.
    - Moved all the shader caching to a new file.
    - Refactored config.c to make it more readable.
    - Cleaned the code, fixed all the variables, functions and file names to use the same naming convention.
    - Cleaned unnecessary global variables in resolution.c
    - Replaced stb_image with SDL_image.
    - Switched to SDL3
    - Version in github now matches the version in the changelog.
    - FPS target to float.
    - Clear window background when the game is loading to prevent ghosting in SDL
### Fixed
    - a bug in config.c where MJ4_ENABLED_ALL_THE_TIME was using the wrong variable.
    - Fixed a bug in Let's Go Jungle Special Resolution Patch.
    - Fixed a bug that prevented the loader to start when the current folder contained spaces and lindbergh.so was there.
    
## [2.0.12]
### Added
    - AppImage support.
### Fixed
    - 2Spicy error in the scaling code, again.
    
## [2.0.11]
### Added
    - Resolution patches for 2Spicy and HOD-Ex
    - Code clean up.
### Fixed
    - 2Spicy error in the scaling code.

## [2.0.10]
### Added
    - Config option to specify a path for the library libCg.so required for some shader compilation.
    - Improved folder patching for recompiled shaders (2Spicy, Rambo, Harly and HOD-EX).
    - Cleaned a bit of lindbergh elf.

## [2.0.9]
    - lindbergh elf mostly redone to make the loader work as a stand alone mode (read guide.md).

## [2.0.8]
### Added
    - Changed preprocessor for avoiding multiple inclusions to #pragma once and clean some includes.
### Fixed
    - Test mode in HOD4 SP now stretches.

## [2.0.7]
### Added
    - Option -g | --gamepath to lindbergh to point to games in a different folder.
    - lindbergh elf searches for lindbergh.so in common library folders ("/usr/lib/i386-linux-gnu", "/usr/lib32", etc).
    - Improved Distro detection function to inform that the Distro is not based on Debian.
    
## [2.0.6]
### Fixed
    - Reverted (Fixed LGJ, VT3 and ID4/ID5 JVS passthrough).
    - Outrun 2 High Scores.
    
## [2.0.5]
### Fixed
    - Fixed LGJ, VT3 and ID4/ID5 JVS passthrough.
    
## [2.0.4] 
### Added
    - Boost render res option for Rambo, LGJ, HOD4, HOD-EX, ID4/ID5, 2Spicy and Harley.
    - Flatpak build as a bundle. (For installation, read the guide in docs folder.)
    - Add COINS with evdev for player 2.
    - Merged code that adds support for COINS with evdev.
    - Makefile, lindbergh.c and shader_patches.c changes to support Flatpak.
    - "--zink" option in lindbergh elf to run the games using Zink.
    - "--nvidia" option in lindbergh elf to force the secondary nVidia GPU in laptops.
    - Click and drag in PH touchscreen.
    - Hide custom crosshair cursor in PH when not needed.
    - Custom mouse cursors working with X11, GLX and Glut.
    - Custom mouse cursor in Primeval Hunt TouchScreen.
    - TouchScreen emulation fro Primeval Hunt
    - Display a warning if the distro you are running is not based on Debian.
    - Cleaned up most of the code changing Ifs to Switch and sorting Alphabetically.
    - Let's go Jungle and Let's go Jungle Special resolution patches.
    
## [2.0.3] 2025-02-02
### Added
    - Display a warning when loading an Elf that is not clean.
    - Added to the lib folder, common libraries that are usually missing.
### Fixed
    - Missing patch in HOD-EX.
    - Alows to run a game that does not support Card reader if option enabled in conf file.

## [2.0.2] 2025-01-27
### Added
    - InitialD 5 SBRY added.
    - HOD4 SP CPU Frequency fix.
### Fixed
    - Fixed a bug when a game uses GLUT and the conf was set to NO_SDL 1
    - Fixed a bug in Let's go Jungle when GPU was nVidia and Mesa was set as shader patches.
    - Exclude resolution patches when the resolution is the game's original resolution.
    - Reload with Right mouse click for Rambo and 2Spicy with SDL.

### [2.0.1] 2025-01-23
### Added
    - HOD4 Custom crosshair.
    - HOD4 CPU frequency fix  (Configurable via config file).
    - HOD4 New resolution patch that fixes Boss battle and scales from 1280x768 instead of the lower resolution.
    - Built in Logos and fonts (no more nee to use Lucida/SEGA_KakuGothic-DB-Roman_12 and logo.tga).
    - Outrun 2 Easy network config from the conf file (can set your IP address in the config file and the loader will set it in the eeprom for you).
    - Card Emulation for VT3 and R-tuned.
    - All the now games work inside an SDL window now,  unless it is disabled in the conf file.

## [2.0] - 2024-12-24
### Initial Release
- First official public release.
- Features of the loader:
    - Dynamic shader modification allowing games to work on Intel, nVidia and AMD
    - 5.1 Surround Sound Support
    - Dynamic resolution patching allowing most games to scale properly in HD
    - Original cabinet support with pass through of JVS and FFB
    - Network play
    - Both simple X11 and advanced evdev input system allowing for ready-to-play keyboard and mouse support or mapping of any controller