VICE - Windows  VICE - Ubuntu  VICE (Source)

What's New:

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

- From now on VICE will write its version into the config file and show a
warning message when using a config file from a different version.

- The binary monitor interface is stable now. Examples of projects using it:

- https://github.com/GeorgRottensteiner/C64Studio
- https://github.com/MihaMarkic/vice-bridge-net
- https://github.com/Sakrac/IceBroLite
- https://github.com/empathicqubit/vscode-cc65-debugger
- https://github.com/rolandshacks/vs64

- Added Debian packages of development builds of the SDL2 and Gtk3 UIs and the
headless build (amd64 only).

You can find bleeding edge development builds on github:

https://github.com/VICE-Team/svn-mirror/releases

Whenever you stumble about a bug, please try with the latest development build
first - perhaps we already fixed it :)

- Removed all kernal patching and load different ROM files instead. This is
easier to handle and more logical anyway :)

- Renamed all included ROM files to use a more elaborate naming scheme, for
example as in "kernal-901227-01.bin".

Unfortunately not all included files could be identified yet - if you have
related ROM dumps around yourself, please take your time to compare against
the following, and let us know if you can identify one of these files:

- C128 ROMs: kernalfi, kernalfr, kernalit, kernalno
- Printer ROMs: mps801.bin, mps803.bin, nl10.bin
- PET ROMs: chargen.de

(Wanted in all cases is what the markings on the actual chip read)

- CRT emulation improvements:
- uses measured (different) color coordinates for odd/even lines when possible
- added option for U-only delay line (1084 style)

- More realistic handling of the case when two paddles are selected at the same
time.

- Keyboard handling was rewritten / fixed
- The case when two host keys are mapped to different CBM keys with different
modifiers is handled differently (correctly) now, so some old keymap(s) may
expose detail errors as a result - please report them!
- Fixed Shiftlock/Capslock mapping
- All extra keys that are not in the regular matrix are handled in generic
code now.
- used by C128 40/80 and CAPS keys, Restore
- extra keys can operate in "non locking" mode

- More realistic behaviour of the virtual drive
- always return 'files scratched' (instead of 'file not found'), even if the
file does not exist

- More realistic behaviour when mounting images:
- When attaching a d64 image to a 1571 drive, create an 'unformatted' image for
the second side.
- Create empty tracks for non existing tracks also when mounting gcr images

- SID fixes:
- use a few more bits for better accuracy when calculating the 8580 filter
DAC values.
- fix filter ringing/self oscillating with 6581 and 8580

- CIA fixes:
- Improved the CIA shift register.
- Fix the case when pb changes value after changing the control bits for
pb/pb7 output. Fixes the turn disk space detection of the 'Love' demo.

- Add SPT (Stupid Pet Tricks) userport joystick adapter emulation.

- Fixed use of SO_REUSEPORT on server sockets - this allowed multiple VICE
instances to bind to the same port, with an indeterminant one receiving each
incoming connection. Now uses SO_REUSEADDR instead, which allows use of a
port that remains in the TIME_WAIT state after a previous process closed,
but does not allow use of a port that is still in active use.

- Add DragonFly BSD support.

- Remove Android support.

 

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

- Rename configure options: --enable-native-gtk3ui => --enable-gtk3ui
--enable-sdlui2 => --enable-sdl2ui
--enable-sdlui => --enable-sdl1ui
--enable-external-ffmpeg => --enable-ffmpeg

- Remove jpeg support (--enable-jpeg).

- Disable CatWeasel, SSI2001 and ParSID support by default.

- Enable CPU history by default.

- Add `make bindist` for headless builds on Windows/Msys2.

- Don't check for joystick support when configuring for a headless build.

- Add configure check for [n]pcap headers on Windows.

- Fix --with-sdlsound configuring for SDL2 even when SDL1 was explicitly
requested via --enable-sdl1ui.

- Fix single target builds.

- Fix installing Gtk3-specific files when not configured for Gtk3.

 

** C64 fixes
------------

- Use measured PAL color vectors (provided by Tobias)

- Fix autostarting and smart-attaching tapecart (.tcrt) images

- Fix cycle count stored into the cpu history (only x64sc)

- Cartridge fixes:
- Fix Pagefox RAM allocation
- Fixed "Super Explode V5" cap timing
- Added support for "Partner 64" cartridge
- Fix attaching non "Main Slot" cartridges via .crt file (IEEE488, Ramlink,
IEEE-Flash, MMC64, Magic Voice)
- Fix REU behaviour on triggering DMA by using a RMW instruction with
address $ff00 (only x64sc)

- Fixed and document C64 US and german keymaps.
- Added keymaps for UK keyboard (nicked from 'mad' on lemon)
- Added keymaps for Turkish keyboard (provided by erhan)
- Updated swedish keymaps (provided by Jaakko Luoto and Jari Hovatov)

- Added pictures of the C64 layout and keymap (symbolic+positional, DE+US) to
the docs.

** C128 fixes
-------------

- Added foundation of c128 cartridge system. Only attaching c128 exclusive
cartridges/crt files works right now.
- added support for "Partner 128" cartridge
- added support for "Magic Desk 128" cartridge
- added support for "GMod2 C128" cartridge
- added support for "Comal80 C128" cartridge
- added support for "Warpspeed 128" cartridge

- Add ram02 and ram03 in the monitor when 'full banks' mode is active.

- Fix filling of VDC ram from the monitor.

- Fix DMA bank.

- Fix autostart in C64 mode

- Fixed and document C128 US and german keymaps.

- Added pictures of the C128 layout and keymap (symbolic+positional, DE+US) to
the docs.

 

** VIC-20 fixes
---------------

- use measured PAL color vectors (provided by Tobias)

 

** PET fixes
------------

- Improved the sound output by reworking parts of the VIA, in particular as
related to the shift register and the CB2 output.
- Sound made by "manual" control of the CB2 output now works.
- Added an adjustable low-pass filter to the sound output, since different
speakers on real hardware behave quite different in how much they "muffle"
the sound.

- Fixed and document PET layout and US/DE keymaps.

- Added pictures of the PET layout and keymap (graphical+business,
symbolic+positional, DE+US) to the docs.

 

** VSID fixes (Gtk3 only)
-------------------------

- Properly update the mixer widget with the current SID model when playing
a (subt)tune.

- Add support for the `HVSC_BASE` environment variable: If the HVSC base
directory is left blank in the VSID settings the `HVSC_BASE` will be used
to determine the location of the High Voltage SID Collection files.

- Add customizable hotkeys.

- Add default hotkeys for subtunes #1-#30, Play, Pause, Stop, First,
Previous, Next, Last, FFWD, Loop.

- Display STIL view and Playlist on top of each other, not next to each other.

- Strip HVSC base dir from playlist 'Path' column.

- Add playlist loading/saving (in M3U format).

- Add autoplaying the next subtune when the current subtune has finished
playing (requires HVSC).

- Add autplaying the next SID in the playlist when all subtunes of a SID have
played.

- Fix missing display of the 'NAME' STIL field.

 

** Monitor fixes
----------------

- Fix && and || in cond_expr in the monitor. Previously, both && and &, and ||
and |, did the same thing: a logical and/or. Now the && and || do the logical
operation.

 

** SDL fixes
------------

- Correct colors on big endian platforms.

- Add clearing of joystick mappings.

- Add showing of joystick mappings for menu actions.

- Fix setting of tde and virual device traps for xcbm2 and xcbm5x0.

- Add CMD HD size elements.

- Add PET ROM selection elements.

- Add SuperPET CPU selection.

 

** Gtk3 fixes
-------------

- Remove unused -gtkbackend command line option: we no longer support
software rendering, so the only option left is accelerated rendering.

- Improved statusbar layout.

- Various layout fixes in the settings dialog.

- More meaningful sliders for CRT settings.

- Add -${CHIP}showstatusbar/+${CHIP}showstatusbar command line options to show
or hide the status bar.

- Add -${CHIP}fullscreen/+${CHIP}fullscreen to enable or disable fullscreen
mode.

- Hotkeys can be assigned to actions that do not have a corresponding menu
item.

- Properly show custom hotkeys in popup menus.

- Make saving custom hotkeys work.

- Correct colors on big endian platforms.

- Fixed CBM directory displayer in statusbar popup and file selection dialog.

- Installed a crazy, but ugly, hack to create the initial window at its final
size, so the window manager will not place it off screen when the emulator
was started with -default

 

** Windows fixes
----------------

- Fix monitor Ctrl+C/V and other Ctrl+.. combinations (Gtk3).
- Fix issues with numpad
- Fix page up/page down keys
- Fix Alt-Gr in the Monitor
- Fixed MIDI device list / select

 

** MacOS fixes
--------------

- Fix issues with numpad
- Fixed MIDI device dialog
- Fixed resize performance when emu fps > host display Hz

** Linux fixes
--------------

- Fixed MIDI device dialog

 

** Haiku fixes
--------------

- Fix `make bindist`.