Subject: CVS commit: pkgsrc/emulators/jgenesis
From: pin
Date: 2024-12-26 18:48:11
Message id: 20241226174811.B7428FC1D@cvs.NetBSD.org

Log Message:
emulators/jgenesis: update to 0.8.3

New Features

    (Genesis / Sega CD / 32X) Added an audio setting to select 1 of 4 different \ 
audio low-pass filters, with cutoff frequencies ranging from about 15000 Hz \ 
(comparable to the existing filter) to about 5000 Hz (produces a very soft \ 
sound)
    (Genesis / Sega CD / 32X) Added a video setting to enable/disable individual \ 
graphics layers
    (Sega CD) Added an audio enhancement setting to apply linear interpolation \ 
or cubic Hermite interpolation to PCM sound chip channels; this significantly \ 
reduces audio noise and audio aliasing in games that play music or voice acting \ 
through the PCM chip (e.g. Lunar: Eternal Blue all the time, Sonic CD in past \ 
stages, basically every FMV game for cutscene audio)
    (GB) Added an option to use a custom 4-color palette, with a color picker UI \ 
for configuring the custom palette colors
    Added a new hotkey that completely exits the application (#140)
        The previous "quit" hotkey (which only closed the currently \ 
running game) has been renamed to "power off"

Improvements

    (32X) PWM chip audio output resampling now uses cubic interpolation rather \ 
than a filter that assumed a source frequency of 22 KHz; this should improve \ 
audio quality in games that use PWM sample rates other than 22 KHz (e.g. After \ 
Burner Complete and Space Harrier)
    Input mappings that use modifier keys (Shift / Ctrl / Alt) no longer \ 
distinguish between Left and Right versions of the modifier, e.g. Left Shift and \ 
Right Shift are now both treated as simply "Shift" for input mapping \ 
purposes (#139)
    Redesigned most of the audio low-pass filters to explicitly target a cutoff \ 
frequency of about 15000 Hz with a stopband edge frequency of about 20000 Hz, \ 
which should further reduce resampling-related audio aliasing
        For performance reasons, NES and GB/GBC instead target a cutoff \ 
frequency of roughly 10000 Hz with a less steep attenuation slope past the \ 
cutoff frequency
    Implemented a performance optimization in how audio low-pass filters are \ 
applied when running on CPUs that support x86_64 AVX and FMA instructions (which \ 
is almost every x86_64 CPU made in the last 10 years; AVX2 is not needed)
    (SMS / Game Gear / Genesis) Improved video memory viewer UI so that it's now \ 
possible to view CRAM and VRAM simultaneously, as well as current VDP settings \ 
(captured once per frame at the beginning of VBlank)
    Display scale factor / DPI is now taken into account when determining \ 
initial emulator window size in windowed mode
    GUI: The GUI window is now repainted immediately when a directory scan \ 
finishes, rather than requiring mouse movement or a keyboard input to trigger \ 
the repaint

Fixes

    (32X) Fixed the 68000 incorrectly being allowed to change the PWM timer \ 
interrupt interval via $A15130 writes; this fixes Primal Rage having horribly \ 
broken sound effects
    Fixed an input configuration bug that made it effectively impossible to \ 
correctly configure any gamepad where SDL reads digital buttons as analog axes, \ 
such as the 8BitDo M30 with its C and R buttons (#135)
    Fixed some minor bugs in the common audio resampling code related to how \ 
low-pass filters are applied
    CLI: For options that only accept a fixed set of possible values, the list \ 
of possible values in the help text is now auto-generated at compile time; this \ 
fixes at least one case where an option's help text listed a possible value that \ 
does not exist, and another case where an option's help text omitted a valid \ 
possible value

Files:
RevisionActionfile
1.7modifypkgsrc/emulators/jgenesis/Makefile
1.6modifypkgsrc/emulators/jgenesis/cargo-depends.mk
1.6modifypkgsrc/emulators/jgenesis/distinfo