Page 1 of 1

WinVICE and the lost settings on exit!

Posted: Fri Mar 25, 2016 12:31 am
by minamoto kobayashi
Hello forum!
Since I recently moved the Gamebase with all the emus from PC to NAS, I was forced to modify all the inis and all the paths.
But some strange behaviours happened here and there after moving databases.
One for all: the C64 package with VICE emulator.
Often the games needs to have the hardware drive emulation "ON" to start correctly (for example, the last 100% working version of Quo Vadis). If I set the option ON and try to save the VICE configuration, all the other configs are saved but not the drive emulation option. Also the "save configs before exit" option do not work: when I start the VICE again, the option is unchecked.

The same problem happens with the joystick config: I need to have the joystick port 2 with the option "numeric pad+right ctrl" selected, but when I exit WinVICE, the config is lost.
Anyone can help me for both these issues, please?

Re: WinVICE and the lost settings on exit!

Posted: Fri Mar 25, 2016 7:45 am
by .mad.
minamoto kobayashi wrote: game needs to have the Drive Emulation "ON" to start correctly.
The GameBase script will override most settings in the VICE.INI.
For games that need TDE ON (Quo Vadis) it needs to be switched on and saved in the GameBase frontend.

Select the Version TAB on Quo Vadis.
right click on True Drive Emul: No and change it to Yes.
The same problem happens with the joystick config: I need to have the joystick port 2 with the option "numeric pad+right ctrl" selected, but when I exit WinVICE, the config is lost.
Anyone can help me for both these issues, please?
edit the vice script and change the -joydev# 3 to -joydev# 1

If Control = JoyPort2
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 4)
Else
Add_CLP( -joydev2 1)
End If

and do the same for Port 1

ElseIf Control = JoyPort1
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 4)
Else
Add_CLP( -joydev1 1)
End If

Posted: Fri Mar 25, 2016 7:47 pm
by minamoto kobayashi
Hello Mad, thanks one more time! 8)

The joystick part does not work for me :cry:

Here is how I modified the script:



;set the game controls
;These settings are designed to automatically set the controls for player 1
;to the same controller, regardless of which PORT the game uses for player 1.
;
;0=None, 1=Numpad + RCtrl, 2=Keyset A, 3=Keyset B, 4+ are for real joysticks/pads
;
;Replace * with <DISABLED> to disable the automatic settings for the JoyPorts
If %gamefile% CONTAINS(*)
If Control = JoyPort2
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 4)
Else
Add_CLP( -joydev2 1)
End If
Set_INI_Value(1||C64||Mouse||0)
ElseIf Control = JoyPort1
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 4)
Else
Add_CLP( -joydev1 1)
End If
Set_INI_Value(1||C64||Mouse||0)
ElseIf Control = Mouse
;1351 Mouse emulation (the Port cannot be changed or determined via the GUI)
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||1)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
ElseIf Control = PaddlePort1
;Mouse PORT1 setting may give partial PaddlePort1 control
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||1)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
ElseIf Control = PaddlePort2
;Mouse PORT2 setting may give partial PaddlePort2 control
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||2)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
Else
;Disable Joysticks and Mouse
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
Set_INI_Value(1||C64||Mouse||0)
End If

.. any mod to add?

Posted: Fri Mar 25, 2016 11:41 pm
by minamoto kobayashi
Ok I solved the issue grabbing the needed part from an old script:

-------------

;set the game controls
;These settings are designed to automatically set the controls for player 1
;to the same controller, regardless of which PORT the game uses for player 1.
;
;0=None, 1=Numpad + RCtrl, 2=Keyset A, 3=Keyset B, 4+ are for real joysticks/pads
;
;Replace * with <DISABLED> to disable the automatic settings for the JoyPorts
If %gamefile% CONTAINS(*)
If Control = JoyPort2
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 4)
Else
Add_CLP( -joydev2 1)
End If
Set_INI_Value(1||C64||Mouse||0)
ElseIf Control = JoyPort1
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 4)
Else
Add_CLP( -joydev1 1)
End If
Set_INI_Value(1||C64||Mouse||0)
ElseIf Control = Mouse
;1351 Mouse emulation (the Port cannot be changed or determined via the GUI)
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||1)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
ElseIf Control = PaddlePort1
;Mouse PORT1 setting may give partial PaddlePort1 control
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||1)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
ElseIf Control = PaddlePort2
;Mouse PORT2 setting may give partial PaddlePort2 control
Set_INI_Value(1||C64||Mouse||1)
Set_INI_Value(1||C64||Mouseport||2)
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
Else
;Disable Joysticks and Mouse
Add_CLP( -joydev1 0)
Add_CLP( -joydev2 0)
Set_INI_Value(1||C64||Mouse||0)
End If
End If

----------------