Subject: CVS commit: pkgsrc/emulators/vice
From: Olaf Seibert
Date: 2021-01-01 13:46:04
Message id: 20210101124604.38226FA9D@cvs.NetBSD.org

Log Message:
emulators/vice: update to 3.5

The changes in the NEWS file for this version are more than 450 lines,
but here is a small part:

* Upgrading
===========

If you run into trouble please try removing any VICE configuration files
left over from previous installs.
(vice.ini / .vicerc / vice2.cfg / vice-sdl.ini depending on platform)

Before reporting bugs, always try with a clean config: Run the emulator
with the "-default" command line argument or use "restore default \ 
config"
in the UI).

* Changes in Vice 3.5
=====================

This release completes the transition to the new GTK3 based GUI and fixes a
bunch of long standing issues (see below).

** general
----------

- Remove explicit support for OS/2, AmigaOS. These platforms should be able to
  use the SDL port.
- VICE used to store its ROMs, keymaps etc into $PREFIX/lib[64]/vice, which
  isn't correct. Now VICE installs its data into $PREFIX/share/vice, which
  makes a lot more sense. The documentation location has changed as well, now
  the documentation is installed in $PREFIX/share/doc/vice.
  On Windows, the binaries and DLLs have been moved into /bin, according to the
  requirements of GTK/GDK.
- Emulator timing is now directly driven by the host system audio device.
  If sound emulation is disabled, timing is synchronized with the host clock.
  As part of this change, the choice of sound synchronization method has been
  removed.
- Emulation now occurs in blocks of time directly related to the sound fragment
  size. Previously, emulation of an entire frame happened as quickly as possible
  and then the host system would sleep until it is time to emulate the next
  entire frame. This means that user input is now visible to the emulated
  software with lower latency than before.
- Audio latency is much lower on all platforms, and new lower latency defaults
  have been set. Users are encouraged to try using smaller fragment sizes and
  experiment with finding the lowest stable buffer size on their system.
- Support for changing the emulator timing to target generating a specific number
  of video frames per second. Useful for smooth PAL scrolling on a 50Hz CRT, and
  also fun for playing games at 60fps to match a typical LCD screen refresh.
- The default behaviour on CPU JAM was changed to "continue" to better \ 
match
  the behaviour of the real machines. Additionally a "CPU JAM" message will
  be displayed in the status bar.
- A "quit emulator" option was added to the CPU JAM dialog
- The CPU JAM dialog now shows the number of the device whose CPU has crashed.
- Proper support for dual drives has been added
- Relative file support on the filesystem device
- Autostarting works from any drive (select the drive in the attach disk dialog)
- Added support for 2nd and 3rd joystick button (potx/poty), currently only via
  keyboard and via unix joystick driver.
- Added mapping for the THEC64 joystick
- New LT.Kernal emulation
- New CMD-HD emulation
- New CMD RAM-Link emulation
- New D9090/60 emulation
- New icons for the applications.
- We now use proper binary prefixes for memory sizes.
  Welcome in the 21st century!
- Recalculate the palette parameters when the videochip type changes, now we can
  actually see the subtle color differences :)
- Emulate a switch present on some compatible datasettes (not the Commodore
  ones). Turning the switch on makes the sound recorded on the tape audible.
- Fixed/improved "native" screenshots. It will now work with all \ 
videochips and
  always generate "best effort" results.
- The emulators will look for the config file at an alternative location first,
  before looking at the system wide location.
  - for windows that is the location of the .exe files
  - for Linux that is ~/.vicerc
- Fixed lightgun/pen emulation
  - use poty instead of potx for trigger for magnum lightphaser and inkwell
    lightpen
  - tweak lightphaser offset against a bunch of games
- Handling of settings and resources was improved a bit:
  - always reset resources to default before loading a settings file
  - new "-addconfig" option (or "load additional settings") \ 
loads additional
    resources from a file without resetting to defaults before. this can be used
    to keep custom setups separate from the regular settings.
- Fixed sysfile search path order.
  The order now is $HOME/.local -> path-of-binary -> VICE_DATADIR
- Fixed a bug in .tap file handling that caused some .tap files to not work in
  the preview widget(s)
- A bunch of files have been removed from the source tree because they didn't
  really belong there and/or contained outdated info:
  - hardware-sids.txt, the old info is now at
    https://vice-emu.pokefinder.org/index.php/Hardware_SID_Status
  - SDL-support.txt, the old info is now at
    https://vice-emu.pokefinder.org/index.php/SDL_Status
  - ffmpeg-support.txt, the old info is now at
    https://vice-emu.pokefinder.org/index.php/FFMPEG_Status
- Another bunch of files were removed because their content was hopelessly
  outdated and/or could be moved to other files:
  - removed ancient CHANGELOG files. Read NEWS for the recent changes. Refer to
    the SVN log for the gory details.
  - moved contents from FEEDBACK to README

** build system
---------------

Many changes and simplifications were made in the build system, to make
it more reproducible and match the expected standard behaviour:

etc etc.

Files:
RevisionActionfile
1.153modifypkgsrc/emulators/vice/Makefile
1.29modifypkgsrc/emulators/vice/PLIST
1.49modifypkgsrc/emulators/vice/distinfo
1.14modifypkgsrc/emulators/vice/options.mk
1.5modifypkgsrc/emulators/vice/patches/patch-configure
1.1addpkgsrc/emulators/vice/patches/patch-src_arch_gtk3_data_unix_Makefile.in