VICE 3.6 has been released

You need an actual VIC.

Moderator: Moderators

Post Reply
groepaz
Vic 20 Scientist
Posts: 1187
Joined: Wed Aug 25, 2010 5:30 pm

VICE 3.6 has been released

Post by groepaz »

Code: Select all

* Changes in Vice 3.6
=====================

We welcome to the team:

- June Tate-Gans who added the dual screen mode (for x128) to the SDL UI.

- Pablo Roldan aka durandal, who contributed improvements and fixes to the
  RS-232 emulation.


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

- Warp mode status will no longer be saved in config files.

- Increased autostart reliability.

- Changing host audio settings no longer resets the emulated sound chip.

- Added hardware flow control to the userport RS-232 emulation.

- Added selection of control lines behaviour for userport RS-232 emulation.

- Fixes to ACIA hardware flow control, DCD and DSR lines behaviour, register
  reset values.

- (Re-)added tun/tap support for Ethernet emulation, including support for
  "capabilites", so it can work without root/Administrator rights

- "Device Traps" and "True Drive Emulation" can now be selected per 
   drive/device.

- Various fixes related to keyboard mappings. For details please read
  https://sourceforge.net/p/vice-emu/mailman/message/37380515/

- Fixed problems related to Caps-Lock and Shift-Lock emulation

- Added support for piping printer output and RS232 I/O through an external
  executable on Windows.

- Fliplist (.vfl) support tweaked to be compatible with devices like sd2iec,
  pi1541 and Turbo Chameleon. Fliplists in the old format can still be loaded,
  newly created ones will always use the new format (see manual).

- Removed pointless "dither" column from palette files and -format.

- Some improvements in the 1520 plotter emulation.

- Extend images directly from 35 to 40 and then 42 tracks, as other sizes are 
  not used anywhere else in the world

- More realistic implementation of tape wobble.

- Fixed p64 wraparound.

- Added option to write out the raw data produced by reSID (for debugging).

- Made 48kHz the default for sound output, since that is what most modern stuff
  uses natively.

- Log the random seed and added a commandline option to set a seed, useful to
  reproduce things that depend on randomness.

- At exit log all resources with non default values, and a reconstructed
  commandline, which should make it easier for people that are reporting bugs.

- when mounting Dxx GCR images, add a reasonable skew per track to make the
  disk layout a bit more realistic

- Remove tearing in screenshots.


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

- Remove linking to vice libraries for petcat and cartconv.

- All targets can now be built separately (e.g. 'make x64sc').

- Fixed building on cygwin.

- removed support for building with embedded ROMs

- Made the new 8580 filter implementation the default for configure.


** Joystick fixes
-----------------

- New Superpad64 emulation.

- New spaceballs joystick adapter emulation.

- New MultiJoy joystick adapter emulation.

- New Inception joystick adapter emulation.

- New Microflyte analog joystick emulation.

- New userport SNES pad (Petscii) emulation.

- New Trapthem joyport SNES pad emulation.

- New Protopad emulation.

- New plus4 Synergy 3-port joystick adapter emulation.

- Extended Ninja joyport SNES pad adapter to 3 ports.

- All SNES pad buttons are supported now.

- Joystick adapters with more than 1 port are always mapped to the extra
  joysticks from now on.

- Joystick adapters with only 1 port are mapped to the port they are attached
  to.

- SIDcard joystick of the plus4 is now always mapped to extra joystick #4.

- New autofire button support.

- New virtual I/O simulation device for the joyport, allows pins to be changed
  by the user from the monitor.


** Userport fixes
-----------------

- Only one userport device can be attached to the userport at a time from now
  on.

- New virtual I/O simulation device for the userport, allows pins to be changed
  by the user from the monitor.


** Tapeport fixes
-----------------

- Only one tapeport device can be attached at a time from now on.


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

- Added REX Ramfloppy loading & saving of the RAM contents.

- Added support for "Hucky's EPROM Cartridge", implemented as a variant of the
  RGCD cartridge.

- Added "Turtle Graphics II" cartridge emulation.

- Added "IEEE Flash 64" cartridge emulation.

- Added "Freeze Frame MK2" cartridge emulation.

- Super Snapshot V5 fixes.

- WarpSpeed emulation matches the behaviour of the real hardware better.

- Renamed "H.E.R.O. Bootleg" cartridge type to "Drean".

- Fixed REU floating bus behaviour (256KiB REU).

- Removed GEORam sizes smaller than 512KiB - Those never existed.


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

- Added VDC interlaced rendering support

- Added Interlaced Sync mode to VDC (Interlaced Sync and Video was already
  implemented) Both modes now work with the new interlace-aware renderers.

- VDC memory mirroring behaviour improved.

- VDC busy flag behaviour improved.

- Fixed 2Mhz mode unconnected memory space reads.

- Added missing SDL symbolic keymap for US keyboard


** VIC20 fixes
-------------

- Added VIC interlaced rendering support

- Added support for .crt files

- Added support for screenshots in native vic20 format

- Added "VIC-1001" model

- Don’t update VIC potx / poty registers more often than every 512 cycles.


** Plus4 fixes
-------------

- Added "jacint1 1MB Cartridge" emulation

- Added "c264 magic cart" emulation

- Added "Plus4 multi cart" emulation

- Added support for .crt files


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

- New datasette #2 emulation.

- Added support for .t64 files

- Monitor IO dump for CRTC improved with internal register dump, interlace
  status and layout fixes

- Overhaul PET CB2 sound output sample generation.


** CBM2 fixes
-------------

- Fixed datasette emulation (only with .tap files right now)


** VSID fixes
-------------

- Fixed various issues with threading.

- Implemented proper STOP of playback.


** C1541 fixes
--------------

- Add `bpoke` command: directly write one or more byte into a block.

- Make the `chain` command accept a '[@unit:]filename' argument.

- Make the `extract` command detect circular track/sector links.


** cartconv fixes
-----------------

- Added support for the new extended CRT V2 format, which now supports all
  other CBM computers (see manual for details).

- Added support for C128, VIC20 and Plus4 cartridges.


** petcat fixes
-----------------

- correctly align (5 digit) line numbers.

- Added support for Mega65 BASIC


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

- Make the `device` command switch to computer when not given an argument.

- Add `warp [on|off|toggle]` command.

- Fix not being able to delete the final character on a line with DEL.

- Drive CPU emulation now catches up to main CPU automatically.

- Snapshots autostarted from monitor will immediately update the screen
  (interlaced screens not fully supported).

- Fixed various user input performance and consistency problems.

- 'chis' command now prints a 12 digit cycle counter.

- 'chis' command now works for drives

- Fixed execution order of multiple -moncommands arguments.

- Fixed single-stepping on "secondary" CPU (eg Z80 in x128).

- Fixed Z80 disasssembler, all opcodes are supported now.

- Make the CPU bank the default, not RAM.

- In x64sc, fixed reading 0/1 when CPU bank is active.

- Fixed display of multicolor sprites.

- Fixed assembling indirect absolute JMP with zero page argument.


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

- New SDL2 dual window support (VDC in x128).

- New automatic SDL2 host joystick hot-plug rescan.

- New SDL2 rescan host joysticks menu item.

- Removed unneeded items from some SDL menus.

- New D67 image creation menu items.

- Fixed relative paths in the SDL file/directory selection dialog.

- New host joystick axis mapping support for emulated paddles and analog 
  joysticks.

- Mapping of host joysticks menu now shows what the pins are already mapped to.

- Add application icons to SDL1.2 binaries.

- Fixed display corruption and OpenGL detection on some machines


** GTK3 fixes
-------------

- Added bicubic rendering, which improves the look of a resized window with the
  CRT filter enabled.

- Remove sandbox mode.

- Fixed statusbar recording status widget display issues.

- Fixed C128 function ROM settings.

- Add setting colors of the monitor.

- Add 'Cartridge -> Default cartridge' to settings. This allows the user to
  see the current default cartridge, unset it and set another cartridge as
  default.

- Fix 'extend image' dialog.

- Fix display of joystick names with non-ASCII glyphs.

- Improve widgets setting file paths: use the directory of a file's path in
  dialogs as the default directory.

- Media recording dialog: remember previously used audio/video codecs when
  starting a new recording.

- Fix VSID not allowing .MUS files to be added to the playlist.

- Allow unlimited host controllers for joysticks

- Fix resetting of scroll position in RAM reset pattern view.

- Fix loading 'vice.ini' inside a Windows bindist: load from the root directory,
  not the bin/ subdirectory.

- Fix toggling pause mode when taking a quick screenshot.

- Fix various layout issues in the settings.

- Add 'Add current image to fliplist' and 'Clear fliplist' items to drive widget
  popup menu.

- Remove userport joystick swapping.

- Add swapping of controlport joysticks' emulated devices.

- Add saving/restoring the 'fullscreen decorations' state.

- Add joystick autofire settings.

- Simplify userport devices settings.

- Simplify tapeport devices settings.

- Use checkboxes in menus for toggleable items.

- Add 64x64 pixels icons.

- Fix tape autostart via a tape's 'directory'.

- Status bar: overhaul layout, add small row with LEDs for Pause/Warp.

- Status bar: add support for dual-drive units.

- Status bar: add support for two datasettes.

- Status bar: fix directory popup menus to display the correct directory for
              dual-drive units and to autostart the correct file.

- Status bar: display main/drive CPU JAMs in the messages row, rather than in
              the CPU/FPS widget, properly remove JAM messages on reset of
              affected device.

- Add customizable keyboard shortcuts ('hotkeys'). Those who were missing the
  old WinVICE hotkeys can use gtk3-winvice-legacy.vhk

- Immediately apply color changes of the monitor.
Downloads via https://vice-emu.sourceforge.io

Have fun!
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
User avatar
mingle
Vic 20 Dabbler
Posts: 91
Joined: Sun Sep 25, 2016 2:38 am
Location: Melbourne, Australia

Re: VICE 3.6 has been released

Post by mingle »

Okay, but I had a bit of a silly question about later versions of VICE, specifically WinVICE...

Up until v3.2, it used to work well and the UI was Windows 'system-compliant' I guess you'd call it - using a 'standard' Windows interface for all menus, gadgets, drop-downs, etc.

However after that the entire UI seemed to have changed - for the worse. It became laggy, none of the menus, file-requesters, etc. were as you'd expect a normal Windows UI to be. I suspect something to do with the fact that WinVICE was now called WinVICEGTK3...

I just find the newer versions very frustratingly uncomfortable to use, so much so that I still use 3.2.

I'm I the odd one out here?

Cheers,

Mike.
groepaz
Vic 20 Scientist
Posts: 1187
Joined: Wed Aug 25, 2010 5:30 pm

Re: VICE 3.6 has been released

Post by groepaz »

Did you actually try this new release? The problems you describe are long gone, and generally it runs better and smoother than it ever did.
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
User avatar
chysn
Vic 20 Scientist
Posts: 1205
Joined: Tue Oct 22, 2019 12:36 pm
Website: http://www.beigemaze.com
Location: Michigan, USA
Occupation: Software Dev Manager

Re: VICE 3.6 has been released

Post by chysn »

Thanks a million for your important work!

I won't have the opportunity to try it for a few days, but I'm looking forward to it.
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5

WIP: MIDIcast BASIC extension

he/him/his
User avatar
thegg
Vic 20 Amateur
Posts: 69
Joined: Mon Aug 30, 2021 4:49 am
Location: England
Occupation: retired

Re: VICE 3.6 has been released

Post by thegg »

Many thanks to the whole team for all your excellent work. Looking forward to trying this update.

For my part, I think the UI on the Windows version is fine.

Best wishes for the upcoming year
Dave
User avatar
AndyH
Vic 20 Afficionado
Posts: 364
Joined: Thu Jun 17, 2004 5:51 am
Website: https://www.hewco.uk
Location: UK
Occupation: Developer

Re: VICE 3.6 has been released

Post by AndyH »

Yea, one of the earlier versions was dog slow, I can't remember if it was the GTK or SDL one, but the latest are fine. The GTK interface is really nice and everything is well thought out and easy to find, but I still use the older version because it has the debugger with the UI and that makes a world of difference. Real shame that feature never made it across to the newer vice.
--
AndyH
HEWCO | Vic 20 blog
User avatar
mingle
Vic 20 Dabbler
Posts: 91
Joined: Sun Sep 25, 2016 2:38 am
Location: Melbourne, Australia

Re: VICE 3.6 has been released

Post by mingle »

I've tried both the SDL and GTK versions and have major gripes with both! :-)

The SDL UI is crap - I know, back in the day, the 'CCS64-like' interface was a novelty, but with the massive menu-structure on current version of VICE, this just doesn't work.

The GTK UI is non-native to Windows (doesn't follow the layout and operational functionality of the system menus, requesters and gadgets) and is also quite sluggish (on my machine). What was the reason for the change to GTK? I'm sure there was some logic behind the change?

Anyway, enough of my complaining, I'll stick to WinVICE 3.2 for the moment, since it seems to work pretty much perfectly for all the games and programs I used.

Cheers,

Mike.
User avatar
Mayhem
High Bidder
Posts: 3027
Joined: Mon May 24, 2004 7:03 am
Website: http://www.mayhem64.co.uk
Location: London

Re: VICE 3.6 has been released

Post by Mayhem »

Yeah same reason I’ve stayed back at 3.1, newer UI I don’t like
Lie with passion and be forever damned...
groepaz
Vic 20 Scientist
Posts: 1187
Joined: Wed Aug 25, 2010 5:30 pm

Re: VICE 3.6 has been released

Post by groepaz »

What was the reason for the change to GTK? I'm sure there was some logic behind the change?
Maintaining different UIs for each OS just is too much work. We kept asking around for people to help with it, and after more than 5 years of noone stepping up we had to ditch the native UIs in favour of a portable one.
IMHO preferring the menu mess straight from hell that is WinVICE over the nice and clean central config dialog is mostly stockholm syndrome though :)
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: VICE 3.6 has been released

Post by srowe »

I've given 3.6 a quick spin and it seems good (although I'm not sure the status bar changes are an improvement). I find that the CTRL and C= keys are now swapped around. Was that intentional or should I file a bug?

Edit: there seems to be a Symbolic/Positional option on the host keyboard, switching to Positional fixes this.
groepaz
Vic 20 Scientist
Posts: 1187
Joined: Wed Aug 25, 2010 5:30 pm

Re: VICE 3.6 has been released

Post by groepaz »

In positional keymaps the key at the bottom left (most often control) is CBM. In symbolic keymaps control maps to control. so yes, that is intentionally :)
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
Post Reply