I don't think there's much that have to be changed in the GEMUS scripts for WinVICE, CCS64 and Hoxs64.
The most important things (new game controller settings in CCS64's C64.CFG and a modified script for WinVICE-SC, that has its own section in VICE.INI) are already applied in the scripts that .mad. posted here.
I've made a few improvements to these scripts:
- Hoxs64
- Removed support for T64 files. That's not really an improvement, but support for T64 files would need a custom Hoxs64 program folder, including binaries from the Star Commander.
- WinVICE and CCS64
- Added support for some global key=value pairs, a new cool feature in the GameBase 1.3 frontend.
You can set the behaviour of WinVICE and CCS64 by pressing F2 and set some predefined values. Things you can change are enabling/disabling fullscreen, CRT emulation and sound output, set the size of the window when run in windowed mode and activate 1 or 2 USB gamepads instead of using a keyset to emulate joysticks.
To make it easy for the end user, you could put a text file named GEMUS.INI in the database folder, containing something like this:Code: Select all
[global]
;Use the key=value pairs in this file
;to change the default behaviour of
;WinVICE and CCS64.
;Remove the ";" at the beginning of the
;line and change the value to YES, 1, ON
;or TRUE to enable the function, or
;change it to NO, 0, OFF or FALSE to
;disable it
;Set fullscreen or windowed mode
;Fullscreen=no
;Enable or disable CRT Emulation
;CrtEmu=yes
;Enable or disable sound output
;Sound=no
;Set the size of the window (1, 2 or 3)
;WindowSize=1
;Enable or disable a USB game controller
;instead of a keyset for player 1 and
;player 2
;RealJoystick1=no
;RealJoystick2=no
Note that the settings for joystick emulation in the CCS64 script will not work with all versions before 3.8.
To support older CCS64 versions, a seperate script has to be created (CCS64-OLD.TXT) that is identical to CCS64.TXT, except the values in the Game Controls section. The CONTROLPORTxMODE values should be changed according to this table:
Code: Select all
CCS64 3.8 Old CCS64 versions
-------------------------------
16 2
17 3
19 5
20 6
All versions of CCS64 in GEMUS.DAT, except v3.8 should point to CCS64-OLD.TXT instead of CCS64.TXT.
Here are the scripts that should work with WinVICE, WinVICE-SC, CCS64 and Hoxs64:
WinVICE.txt:
Code: Select all
;********************************
;* WinVICE Default GEMUS Script *
;* (c) The GB64 Team *
;* 8 August 2007 *
;********************************
;
; PLEASE SET YOUR EMULATOR PROPERTIES AS FOLLOWS:
;
; Emulator File: X64.EXE
; Associated Script File (1): vice.ini
; Use Short Filenames: YES
; File Types: D64;T64;G64;G41;TAP;CRT;P00;PRG;LNX
; (Compressed File Types: GZ;Z;BZ2;ZIP;TAR;TZG;ZOO)
;
; This script was written for WinVICE C64 v1.16,
; but may work with other Windows C64 versions too.
;
; Emulator Website: http://www.viceteam.org
;
; If you have a disk game that comes on multiple disks
; and works with multiple drives, you can set a
; GEMUS key=value pair to auto insert all the disks into
; VICE's drives. Simply press F2 (in the main GB window)
; and enter: maxdrives=x
; where x is either 2, 3 or 4
;
; If VICE requires True Drive Emulation, but CCS64 does not,
; use the key=value pair: vtde=yes
; If VICE does not require True Drive Emulation, but CCS64 does,
; use the key=value pair: vtde=no
;
; To enable the REU (RAM Expansion Unit),
; use the key=value pair: reu=x
; where x is 128,256,512,1024,2048,4086,8192 or 16384
If GameType CONTAINS(d64||t64||g64||g41||tap||crt||p00||prg||lnx)
;option to start in fullscreen mode
If Key_fullscreen CONTAINS(yes||1||on||true)
Set_INI_Value(1||c64||FullscreenEnabled||1)
ElseIf Key_fullscreen CONTAINS(no||0||off|false)
Set_INI_Value(1||c64||FullscreenEnabled||0)
End If
;option to set the window size
If Key_windowsize CONTAINS(1)
Set_INI_Value(1||c64||VICIIDoubleSize||0)
ElseIf Key_windowsize CONTAINS(2||3)
Set_INI_Value(1||c64||VICIIDoubleSize||1)
End If
;option to enable/disable emulation of a CRT monitor
If Key_crtemu CONTAINS(yes||1||on||true)
Set_INI_Value(1||c64||PALEmulation||1)
ElseIf Key_crtemu CONTAINS(no||0||off||false)
Set_INI_Value(1||c64||PALEmulation||0)
End If
;option to enable/disable sound output
If Key_sound CONTAINS(yes||1||on||true)
Set_INI_Value(1||c64||Sound||1)
ElseIf Key_sound CONTAINS(no||0||off|false)
Set_INI_Value(1||c64||Sound||0)
End If
;option to turn on/off Warp Mode (speed increase) at startup
;Set_INI_Value(1||C64||WarpMode||1)
;option to start in fullscreen mode (no border=640x400, border=600x800 or larger)
;Set_INI_Value(1||C64||FullscreenEnabled||1)
;Set_INI_Value(1||C64||FullscreenWidth||640)
;Set_INI_Value(1||C64||FullscreenHeight||400)
;Set_INI_Value(1||C64||FullscreenBitdepth||32)
;VICII settings for Color Enhancer v0.8 (but may work with other versions too)
;website: http://perso.wanadoo.fr/ck/C64/filter/C64Filter.html
;the Color Enhancer Filter replaces the default Scale2x filter
;with a 32-bit color depth smoothing/dithering filter algorithm.
;Set_INI_Value(1||C64||VICIIDoubleSize||1)
;Set_INI_Value(1||C64||VICIIScale2x||1)
;set paths to file location for possible image swaps
Set_INI_Value(1||C64||InitialDiskDir||"%gamepath%")
Set_INI_Value(1||C64||InitialTapeDir||"%gamepath%")
Set_INI_Value(1||C64||InitialCartDir||"%gamepath%")
Set_INI_Value(1||C64||InitialAutostartDir||"%gamepath%")
Set_INI_Value(1||C64||InitialDefaultDir||"%gamepath%")
Set_INI_Value(1||C64||InitialSnapshotDir||"%gamepath%")
Set_INI_Value(1||C64||FSDevice8Dir||"%gamepath%")
Set_INI_Value(1||C64||Drive9Type||0)
Set_INI_Value(1||C64||Drive10Type||0)
Set_INI_Value(1||C64||Drive11Type||0)
;set to extend tracks on access
Set_INI_Value(1||C64||Drive8ExtendImagePolicy||2)
Set_INI_Value(1||C64||Drive9ExtendImagePolicy||2)
Set_INI_Value(1||C64||Drive10ExtendImagePolicy||2)
Set_INI_Value(1||C64||Drive11ExtendImagePolicy||2)
;autostart or 'manual load' the game image
If GameType CONTAINS(crt)
;autostart the cart image
Add_CLP( -cartcrt %gamepathfile%)
Else
;insert multiple disks into drives 9, 10 and 11?
If GameType CONTAINS(d64||g64||g41)
If Key_maxdrives CONTAINS(2||3||4)
If NumGameFiles > 1
Add_CLP2( -9 "%gamepathfile(1)%")
Set_INI_Value(1||C64||FSDevice9Dir||"%gamepath%")
Set_INI_Value(1||C64||Drive9Type||1541)
End If
End If
If Key_maxdrives CONTAINS(3||4)
If NumGameFiles > 2
Add_CLP2( -10 "%gamepathfile(2)%")
Set_INI_Value(1||C64||FSDevice10Dir||"%gamepath%")
Set_INI_Value(1||C64||Drive10Type||1541)
End If
End If
If Key_maxdrives CONTAINS(4)
If NumGameFiles > 3
Add_CLP2( -11 "%gamepathfile(3)%")
Set_INI_Value(1||C64||FSDevice11Dir||"%gamepath%")
Set_INI_Value(1||C64||Drive11Type||1541)
End If
End If
End If
;autostart or 'manual load' the game image
If ImageName CONTAINS(*)
If VersionComment CONTAINS(*load manually*)
Add_CLP2( -autoload "%gamepathfile%:%c64imagename%")
If Key_keybuf CONTAINS(*)
Add_CLP2( -keybuf %keybuf_value%)
End If
Else
Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")
End If
Else
If VersionComment CONTAINS(*load manually*)
Add_CLP2( -autoload "%gamepathfile%)
Else
Add_CLP2( -autostart "%gamepathfile%")
End If
End If
End If
;do we want a PAL or NTSC setup?
If PalNTSC = NTSC
Add_CLP( -ntsc)
Else
Add_CLP( -pal)
End If
;true drive emulation (vtde=yes is for VICE only, not CCS64)
;set GEMUS key "vtde" to overrule database TrueDriveEmu settings
If Key_vtde CONTAINS(yes||on||true||1)
Add_CLP( -truedrive)
ElseIf Key_vtde CONTAINS(no||no*||off|false||0)
Add_CLP( +truedrive)
ElseIf TrueDriveEmu = YES
Add_CLP( -truedrive)
Else
Add_CLP( +truedrive)
End If
;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=Keset A, 3=Keyset B, 4+ are for real joysticks/pads
;
;Replace * with <DISABLED> to disable the automatic settings for the JoyPorts
;Use k=v pair REALJOYSTICK1 and REALJOYSTICK2 to activate a USB game controller
;for player 1 and player 2
If %gamefile% CONTAINS(*)
If Control = JoyPort2
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 4)
Else
Add_CLP( -joydev2 3)
End If
If NumPlayers > 1
If Key_realjoystick2 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 5)
Else
Add_CLP( -joydev1 2)
End If
Else
Add_CLP( -joydev1 0)
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 3)
End If
If NumPlayers > 1
If Key_realjoystick2 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 5)
Else
Add_CLP( -joydev2 2)
End If
Else
Add_CLP( -joydev2 0)
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
;REU (Ram Expansion Unit) = 128,256,512,1024,2048,4086,8192 or 16384 kB
If Key_reu CONTAINS(*)
;enable REU and set to reu value
If Key_reu CONTAINS(128||256||512||1024||2048||4096||8192||16384)
Set_INI_Value(1||C64||REUsize||%reu_value%)
Set_INI_Value(1||C64||REU||1)
ElseIf Key_reu CONTAINS(no||no*||off||false||0)
;disable REU if set to off
Set_INI_Value(1||C64||REU||0)
Else
;set to 512 kB for all other REU values (on, yes, 500, etc.)
Set_INI_Value(1||C64||REUsize||512)
Set_INI_Value(1||C64||REU||1)
End If
Else
;disable REU
Set_INI_Value(1||C64||REU||0)
End If
;unsupported game controls
If Control = LightPen
Show_Message(This emulator does not have LightPen emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = KoalaPad
Show_Message(This emulator does not have KoalaPad emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = LightGun
Show_Message(This emulator does not have LightGun emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = PaddlePort1
Show_Message(This emulator does not have Paddle emulation.%crlfx2%Mouse Port1 setting may allow partial control via the mouse.%crlfx2%This game may still be uncontrollable/unplayable.)
ElseIf Control = PaddlePort2
Show_Message(This emulator does not have Paddle emulation.%crlfx2%Mouse Port2 setting may allow partial control via the mouse.%crlfx2%This game may still be uncontrollable/unplayable.)
End If
;give the user a warning message?
If VersionComment CONTAINS(*use C64S*||*use CCS*||*use real C64*)
Show_Message(This game may not work properly with this emulator.%crlfx2%See Version Comment for more info.)
End If
If VersionComment CONTAINS(*not 100%*||*not working*||*doesn't work*)
Show_Message(This game may not work properly.)
End If
If VersionComment CONTAINS(*PET Emulator*)
Show_Message(Use PET Emulator to run this game.)
End If
If VersionComment CONTAINS(*ATTN:*||*NOTE:*||*ATTN!:*||*NOTE!:*)
;point out that critical info is in the version comment
Show_Message(Read this game's Version Comments for very important information/instructions.)
End If
If VersionComment CONTAINS(*VIC-20*||*VIC20*)
If VersionComment CONTAINS(*emulator*)
Show_Message(Use VIC-20 column Emulator to run this game properly.)
End If
End If
;show message for the user
If Key_msg CONTAINS(*)
Show_Message(%msg_value%)
End If
;run the emulator
Run_Emulator()
Else
;invalid game file type
Show_Message(GAME_NOT_SUPPORTED%crlfx2%Supported types: D64, T64, G64/G41, TAP, CRT, P00, PRG, LNX)
End If
WinVICE-SC.txt:
Code: Select all
;********************************
;* WinVICE Default GEMUS Script *
;* (c) The GB64 Team *
;* 8 August 2007 *
;********************************
;
; PLEASE SET YOUR EMULATOR PROPERTIES AS FOLLOWS:
;
; Emulator File: X64.EXE
; Associated Script File (1): vice.ini
; Use Short Filenames: YES
; File Types: D64;T64;G64;G41;TAP;CRT;P00;PRG;LNX
; (Compressed File Types: GZ;Z;BZ2;ZIP;TAR;TZG;ZOO)
;
; This script was written for WinVICE C64 v1.16,
; but may work with other Windows C64 versions too.
;
; Emulator Website: http://www.viceteam.org
;
; If you have a disk game that comes on multiple disks
; and works with multiple drives, you can set a
; GEMUS key=value pair to auto insert all the disks into
; VICE's drives. Simply press F2 (in the main GB window)
; and enter: maxdrives=x
; where x is either 2, 3 or 4
;
; If VICE requires True Drive Emulation, but CCS64 does not,
; use the key=value pair: vtde=yes
; If VICE does not require True Drive Emulation, but CCS64 does,
; use the key=value pair: vtde=no
;
; To enable the REU (RAM Expansion Unit),
; use the key=value pair: reu=x
; where x is 128,256,512,1024,2048,4086,8192 or 16384
If GameType CONTAINS(d64||t64||g64||g41||tap||crt||p00||prg||lnx)
;option to start in fulscreen mode
If Key_fullscreen CONTAINS(yes||1||on||true)
Set_INI_Value(1||C64SC||FullscreenEnabled||1)
ElseIf Key_fullscreen CONTAINS(no||0||off|false)
Set_INI_Value(1||C64SC||FullscreenEnabled||0)
End If
;option to set the window size
If Key_windowsize CONTAINS(1)
Set_INI_Value(1||C64SC||VICIIDoubleSize||0)
ElseIf Key_windowsize CONTAINS(2||3)
Set_INI_Value(1||C64SC||VICIIDoubleSize||1)
End If
;option to enable/disable emulation of a CRT monitor
If Key_crtemu CONTAINS(yes||1||on||true)
Set_INI_Value(1||C64SC||PALEmulation||1)
ElseIf Key_crtemu CONTAINS(no||0||off||false)
Set_INI_Value(1||C64SC||PALEmulation||0)
End If
;option to enable/disable sound output
If Key_sound CONTAINS(yes||1||on||true)
Set_INI_Value(1||C64SC||Sound||1)
ElseIf Key_sound CONTAINS(no||0||off|false)
Set_INI_Value(1||C64SC||Sound||0)
End If
;option to turn on/off Warp Mode (speed increase) at startup
;Set_INI_Value(1||C64SC||WarpMode||1)
;option to start in fullscreen mode (no border=640x400, border=600x800 or larger)
;Set_INI_Value(1||C64SC||FullscreenEnabled||1)
;Set_INI_Value(1||C64SC||FullscreenWidth||640)
;Set_INI_Value(1||C64SC||FullscreenHeight||400)
;Set_INI_Value(1||C64SC||FullscreenBitdepth||32)
;VICII settings for Color Enhancer v0.8 (but may work with other versions too)
;website: http://perso.wanadoo.fr/ck/C64/filter/C64Filter.html
;the Color Enhancer Filter replaces the default Scale2x filter
;with a 32-bit color depth smoothing/dithering filter algorithm.
;Set_INI_Value(1||C64SC||VICIIDoubleSize||1)
;Set_INI_Value(1||C64SC||VICIIScale2x||1)
;set paths to file location for possible image swaps
Set_INI_Value(1||C64SC||InitialDiskDir||"%gamepath%")
Set_INI_Value(1||C64SC||InitialTapeDir||"%gamepath%")
Set_INI_Value(1||C64SC||InitialCartDir||"%gamepath%")
Set_INI_Value(1||C64SC||InitialAutostartDir||"%gamepath%")
Set_INI_Value(1||C64SC||InitialDefaultDir||"%gamepath%")
Set_INI_Value(1||C64SC||InitialSnapshotDir||"%gamepath%")
Set_INI_Value(1||C64SC||FSDevice8Dir||"%gamepath%")
Set_INI_Value(1||C64SC||Drive9Type||0)
Set_INI_Value(1||C64SC||Drive10Type||0)
Set_INI_Value(1||C64SC||Drive11Type||0)
;set to extend tracks on access
Set_INI_Value(1||C64SC||Drive8ExtendImagePolicy||2)
Set_INI_Value(1||C64SC||Drive9ExtendImagePolicy||2)
Set_INI_Value(1||C64SC||Drive10ExtendImagePolicy||2)
Set_INI_Value(1||C64SC||Drive11ExtendImagePolicy||2)
;autostart or 'manual load' the game image
If GameType CONTAINS(crt)
;autostart the cart image
Add_CLP( -cartcrt %gamepathfile%)
Else
;insert multiple disks into drives 9, 10 and 11?
If GameType CONTAINS(d64||g64||g41)
If Key_maxdrives CONTAINS(2||3||4)
If NumGameFiles > 1
Add_CLP2( -9 "%gamepathfile(1)%")
Set_INI_Value(1||C64SC||FSDevice9Dir||"%gamepath%")
Set_INI_Value(1||C64SC||Drive9Type||1541)
End If
End If
If Key_maxdrives CONTAINS(3||4)
If NumGameFiles > 2
Add_CLP2( -10 "%gamepathfile(2)%")
Set_INI_Value(1||C64SC||FSDevice10Dir||"%gamepath%")
Set_INI_Value(1||C64SC||Drive10Type||1541)
End If
End If
If Key_maxdrives CONTAINS(4)
If NumGameFiles > 3
Add_CLP2( -11 "%gamepathfile(3)%")
Set_INI_Value(1||C64SC||FSDevice11Dir||"%gamepath%")
Set_INI_Value(1||C64SC||Drive11Type||1541)
End If
End If
End If
;autostart or 'manual load' the game image
If ImageName CONTAINS(*)
If VersionComment CONTAINS(*load manually*)
Add_CLP2( -autoload "%gamepathfile%:%c64imagename%")
If Key_keybuf CONTAINS(*)
Add_CLP2( -keybuf %keybuf_value%)
End If
Else
Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")
End If
Else
If VersionComment CONTAINS(*load manually*)
Add_CLP2( -autoload "%gamepathfile%)
Else
Add_CLP2( -autostart "%gamepathfile%")
End If
End If
End If
;do we want a PAL or NTSC setup?
If PalNTSC = NTSC
Add_CLP( -ntsc)
Else
Add_CLP( -pal)
End If
;true drive emulation (vtde=yes is for VICE only, not CCS64)
;set GEMUS key "vtde" to overrule database TrueDriveEmu settings
If Key_vtde CONTAINS(yes||on||true||1)
Add_CLP( -truedrive)
ElseIf Key_vtde CONTAINS(no||no*||off|false||0)
Add_CLP( +truedrive)
ElseIf TrueDriveEmu = YES
Add_CLP( -truedrive)
Else
Add_CLP( +truedrive)
End If
;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=Keset A, 3=Keyset B, 4+ are for real joysticks/pads
;
;Replace * with <DISABLED> to disable the automatic settings for the JoyPorts
;Use k=v pair REALJOYSTICK1 and REALJOYSTICK2 to activate a USB game controller
;for player 1 and player 2
If %gamefile% CONTAINS(*)
If Control = JoyPort2
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 4)
Else
Add_CLP( -joydev2 3)
End If
If NumPlayers > 1
If Key_realjoystick2 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 5)
Else
Add_CLP( -joydev1 2)
End If
Else
Add_CLP( -joydev1 0)
End If
Set_INI_Value(1||C64SC||Mouse||0)
ElseIf Control = JoyPort1
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Add_CLP( -joydev1 4)
Else
Add_CLP( -joydev1 3)
End If
If NumPlayers > 1
If Key_realjoystick2 CONTAINS(yes||1||on||true)
Add_CLP( -joydev2 5)
Else
Add_CLP( -joydev2 2)
End If
Else
Add_CLP( -joydev2 0)
End If
Set_INI_Value(1||C64SC||Mouse||0)
ElseIf Control = Mouse
;1351 Mouse emulation (the Port cannot be changed or determined via the GUI)
Set_INI_Value(1||C64SC||Mouse||1)
Set_INI_Value(1||C64SC||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||C64SC||Mouse||1)
Set_INI_Value(1||C64SC||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||C64SC||Mouse||1)
Set_INI_Value(1||C64SC||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||C64SC||Mouse||0)
End If
End If
;REU (Ram Expansion Unit) = 128,256,512,1024,2048,4086,8192 or 16384 kB
If Key_reu CONTAINS(*)
;enable REU and set to reu value
If Key_reu CONTAINS(128||256||512||1024||2048||4096||8192||16384)
Set_INI_Value(1||C64SC||REUsize||%reu_value%)
Set_INI_Value(1||C64SC||REU||1)
ElseIf Key_reu CONTAINS(no||no*||off||false||0)
;disable REU if set to off
Set_INI_Value(1||C64SC||REU||0)
Else
;set to 512 kB for all other REU values (on, yes, 500, etc.)
Set_INI_Value(1||C64SC||REUsize||512)
Set_INI_Value(1||C64SC||REU||1)
End If
Else
;disable REU
Set_INI_Value(1||C64SC||REU||0)
End If
;unsupported game controls
If Control = LightPen
Show_Message(This emulator does not have LightPen emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = KoalaPad
Show_Message(This emulator does not have KoalaPad emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = LightGun
Show_Message(This emulator does not have LightGun emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = PaddlePort1
Show_Message(This emulator does not have Paddle emulation.%crlfx2%Mouse Port1 setting may allow partial control via the mouse.%crlfx2%This game may still be uncontrollable/unplayable.)
ElseIf Control = PaddlePort2
Show_Message(This emulator does not have Paddle emulation.%crlfx2%Mouse Port2 setting may allow partial control via the mouse.%crlfx2%This game may still be uncontrollable/unplayable.)
End If
;give the user a warning message?
If VersionComment CONTAINS(*use C64S*||*use CCS*||*use real C64*)
Show_Message(This game may not work properly with this emulator.%crlfx2%See Version Comment for more info.)
End If
If VersionComment CONTAINS(*not 100%*||*not working*||*doesn't work*)
Show_Message(This game may not work properly.)
End If
If VersionComment CONTAINS(*PET Emulator*)
Show_Message(Use PET Emulator to run this game.)
End If
If VersionComment CONTAINS(*ATTN:*||*NOTE:*||*ATTN!:*||*NOTE!:*)
;point out that critical info is in the version comment
Show_Message(Read this game's Version Comments for very important information/instructions.)
End If
If VersionComment CONTAINS(*VIC-20*||*VIC20*)
If VersionComment CONTAINS(*emulator*)
Show_Message(Use VIC-20 column Emulator to run this game properly.)
End If
End If
;show message for the user
If Key_msg CONTAINS(*)
Show_Message(%msg_value%)
End If
;run the emulator
Run_Emulator()
Else
;invalid game file type
Show_Message(GAME_NOT_SUPPORTED%crlfx2%Supported types: D64, T64, G64/G41, TAP, CRT, P00, PRG, LNX)
End If
CCS64.txt:
Code: Select all
;******************************
;* CCS64 v3.8 GEMUS Script *
;* (c) The GB64 Team *
;* 26 January 2011 *
;******************************
;
; PLEASE SET YOUR EMULATOR PROPERTIES AS FOLLOWS:
;
; Emulator File: CCS64.EXE (DOS Version)
; CCS.EXE (DirectX Version)
; Associated Script File (1): C64.CFG
; Use Short Filenames: YES
; File Types: D64;T64;PRG;P00;P01;G64;G41;CRT;TAP
;
; This script was written for CCS64 v3.8,
; and may not work with other versions.
;
; Emulator Website: http://www.ccs64.com
;
; To enable the REU (RAM Expansion Unit),
; use the key=value pair: reu=x
; where x is 128,256,512,1024,2048,4086,8192 or 16384
If GameType CONTAINS(t64||prg||p00||p01||d64||g64||g41||crt||tap)
;Screen mode (and window mode) options
;Some video modes may not be supported and may look different dependent on used emulator
;Option to start in a preset screen mode. Some video modes may not be supported.
;CCS64 v2: 0=windowed, 10=600x800.
;CCS64 v3: 0=Window, 1=Window 2X, 3=Window 3X, 12=320x200x16, 13=320x240x16, 14=400x300x16.
;Set_CFG_Value(1||$SCREENMODE||0)
;option to start in fulscreen mode
If Key_windowsize CONTAINS(1)
Set_CFG_Value(1||$SCREENMODE||0)
ElseIf Key_windowsize CONTAINS(2)
Set_CFG_Value(1||$SCREENMODE||1)
ElseIf Key_windowsize CONTAINS(3)
Set_CFG_Value(1||$SCREENMODE||2)
End If
If Key_fullscreen CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$SCREENMODE||22)
End If
;option to enable/disable emulation of a CRT monitor
If Key_crtemu CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$SCREENFILTER||1)
ElseIf Key_crtemu CONTAINS(no||0||off||false)
Set_CFG_Value(1||$SCREENFILTER||0)
End If
;Option to start in windowed mode. Not all video modes are supported,
;The window is not floating (it is fixed in the upper-left corner)
;This option is only valid for the DirectX emu versions
Add_CLP( -window)
;set the HardSID ID (5 is the default ID)
;This option is only valid for the emu versions supporting HardSID
;Add_CLP( -hardsid 5)
;option to enable/disable sound output
If Key_sound CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$SOUNDENABLE||YES)
ElseIf Key_sound CONTAINS(no||0||off|false)
Set_CFG_Value(1||$SOUNDENABLE||NO)
End If
;Option to use max emulator speed during disk load (not always reliable)
;Set_CFG_Value(1||$MAX1541SPEED||1)
;set disk save mode (0=never, 1=ask, 2=continuously)
Set_CFG_Value(1||$DISKSAVEMODE||2)
;do we want a PAL or NTSC setup?
If PalNTSC = NTSC
;1=NTSC (65x263), 2=NTSC (65x262)
Set_CFG_Value(1||$SYSTEMMODE||1)
Else
;0=PAL (63x312)
Set_CFG_Value(1||$SYSTEMMODE||0)
End If
;load the selected game image
Add_CLP( %gamepathfile%)
If GameType CONTAINS(d64||t64)
Add_CLP(,%imageindex%)
;true drive emulation?
If TrueDriveEmu = NO
Add_CLP( -fastload)
Else
Add_CLP( -normalload)
End If
End If
;set the game path for the emulator
Set_CFG_Value(1||$LOADPATH||%gamepath%)
;check for 'manual load' verison comments
If VersionComment CONTAINS(*load manually*)
Add_CLP( -manualrun)
Else
;autorun the loaded image
Add_CLP( -autorun)
End If
;option to set screenshot size settings to 320x200 with no C64 border (GBC style)
;Set_CFG_Value(1||$SCREENSHOTSTARTX||128)
;Set_CFG_Value(1||$SCREENSHOTSTOPX||448)
;Set_CFG_Value(1||$SCREENSHOTSTARTY||51)
;Set_CFG_Value(1||$SCREENSHOTSTOPY||251)
;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.
;
;PORTx: 0=None, 1=Joystick, 2=Mouse C1531, 3=Paddles
;MODE for PORTx=1: 0-15=PC Gameport 1-16 16=Key-Set 1,
; 17=Key-Set 2, 18=Key-Set 3, 19=Adapter Port 1, 20=Adapter Port 2
;
;MODE for PORTx=2: 0=PC Mouse, 1=PC Gameport 1, 2=PC Gameport 2,
; 3=Key-Set 1, 4=Key-Set 2, 5=Key-Set 3
;
;MODE for PORTx=3: 0=PC Mouse+PC Mouse, ..., 80=PC Mouse+Key-Set 3,
; 48=PC Mouse+Key-Set 1, 64=PC Mouse+Key-Set 2
;
;Replace * with <DISABLED> to disable the automatic settings for the JoyPorts
If %gamefile% CONTAINS(*)
If Control = JoyPort2
;default for JoyPort2 is PORT2=Key-Set 2 (and PORT1=Key-Set 1)
Set_CFG_Value(1||$CONTROLPORT2||1)
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$CONTROLPORT2MODE||19)
Else
Set_CFG_Value(1||$CONTROLPORT2MODE||17)
End If
If NumPlayers > 1
Set_CFG_Value(1||$CONTROLPORT1||1)
If Key_realjoystick2 CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$CONTROLPORT1MODE||20)
Else
Set_CFG_Value(1||$CONTROLPORT1MODE||16)
End If
Else
Set_CFG_Value(1||$CONTROLPORT1||0)
Set_CFG_Value(1||$CONTROLPORT1MODE||0)
End If
ElseIf Control = JoyPort1
;default for JoyPort1 is PORT1=Key-Set 2 (and PORT2=Key-Set 1)
Set_CFG_Value(1||$CONTROLPORT1||1)
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$CONTROLPORT1MODE||19)
Else
Set_CFG_Value(1||$CONTROLPORT1MODE||16)
End If
If NumPlayers > 1
Set_CFG_Value(1||$CONTROLPORT2||1)
If Key_realjoystick1 CONTAINS(yes||1||on||true)
Set_CFG_Value(1||$CONTROLPORT2MODE||20)
Else
Set_CFG_Value(1||$CONTROLPORT2MODE||17)
End If
Else
Set_CFG_Value(1||$CONTROLPORT2||0)
Set_CFG_Value(1||$CONTROLPORT2MODE||0)
End If
ElseIf Control = Mouse
;C1531 Mouse in PORT1
Set_CFG_Value(1||$CONTROLPORT1||2)
Set_CFG_Value(1||$CONTROLPORT1MODE||0)
Set_CFG_Value(1||$CONTROLPORT2||0)
Set_CFG_Value(1||$CONTROLPORT2MODE||0)
ElseIf Control = PaddlePort1
;PaddlePort1 is typically for 1P or 2P (Simultaneous) games
;default is player 1 uses PC Mouse, player 2 uses Key-Set 2
Set_CFG_Value(1||$CONTROLPORT1||3)
Set_CFG_Value(1||$CONTROLPORT1MODE||64)
Set_CFG_Value(1||$CONTROLPORT2||0)
Set_CFG_Value(1||$CONTROLPORT2MODE||0)
ElseIf Control = PaddlePort2
;PaddlePort2 is typically for 2P (Alternating) or 1P PORT2 games
;default is both players 1 and 2 use the PC Mouse
Set_CFG_Value(1||$CONTROLPORT1||0)
Set_CFG_Value(1||$CONTROLPORT1MODE||0)
Set_CFG_Value(1||$CONTROLPORT2||3)
Set_CFG_Value(1||$CONTROLPORT2MODE||0)
Else
;clear the ports if not one of the above controls
Set_CFG_Value(1||$CONTROLPORT1||0)
Set_CFG_Value(1||$CONTROLPORT1MODE||0)
Set_CFG_Value(1||$CONTROLPORT2||0)
Set_CFG_Value(1||$CONTROLPORT2MODE||0)
End If
End If
;REU (Ram Expansion Unit) = 128,256,512,1024,2048,4086,8192 or 16384 kB
If Key_reu CONTAINS(*)
;enable REU and set to reu value
Set_CFG_Value(1||$REUENABLE||YES)
;set REU to reu value in number of 64kB units
If Key_reu CONTAINS(128)
Set_CFG_Value(1||$REUSIZE||2)
ElseIf Key_reu CONTAINS(256)
Set_CFG_Value(1||$REUSIZE||4)
ElseIf Key_reu CONTAINS(512)
Set_CFG_Value(1||$REUSIZE||8)
ElseIf Key_reu CONTAINS(1024)
Set_CFG_Value(1||$REUSIZE||16)
ElseIf Key_reu CONTAINS(2048)
Set_CFG_Value(1||$REUSIZE||32)
ElseIf Key_reu CONTAINS(4096)
Set_CFG_Value(1||$REUSIZE||64)
ElseIf Key_reu CONTAINS(8192)
Set_CFG_Value(1||$REUSIZE||128)
ElseIf Key_reu CONTAINS(16384)
Set_CFG_Value(1||$REUSIZE||256)
ElseIf Key_reu CONTAINS(no||no*||off||false||0)
;disable REU if set to off
Set_CFG_Value(1||$REUENABLE||NO)
Else
;default to 512 kB for all other REU values (on, yes, 500, etc.)
Set_CFG_Value(1||$REUSIZE||8)
End If
Else
;disable REU
Set_CFG_Value(1||$REUENABLE||NO)
End If
;unsupported game controls
If Control = LightPen
Show_Message(This emulator does not have LightPen emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = KoalaPad
Show_Message(This emulator does not have KoalaPad emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = LightGun
Show_Message(This emulator does not have LightGun emulation.%crlfx2%This game may be uncontrollable/unplayable.)
End If
;give the user a warning message?
If VersionComment CONTAINS(*use VICE*||*use C64S*||*use CCS v1*||*use real C64*)
Show_Message(This game may not work properly with this emulator.%crlfx2%See Version Comment for more info.)
End If
If VersionComment CONTAINS(*not 100%*||*not working*||doesn't work*)
Show_Message(This game may not work properly.)
End If
If VersionComment CONTAINS(*load manually*)
Show_Message(You must load this game manually within the emulator.%crlfx2%Game file: %gamepathfile%)
End If
If VersionComment CONTAINS(*PET Emulator*)
Show_Message(Use PET Emulator to run this game.)
End If
If VersionComment CONTAINS(*ATTN:*||*NOTE:*||*ATTN!:*||*NOTE!:*)
;point out that critical info is in the version comment
Show_Message(Read this game's Version Comments for very important information/instructions.)
End If
If VersionComment CONTAINS(*VIC-20*||*VIC20*)
If VersionComment CONTAINS(*emulator*)
Show_Message(Use VIC-20 column Emulator to run this game properly.)
End If
End If
;run DirectX or DOS emulator
Run_Emulator()
;Run_Emulator(DOSCLOSE)
Else
;invalid game file type
Show_Message(GAME_NOT_SUPPORTED%crlfx2%Supported types: D64, T64, G64/G41, TAP, CRT, P00, P01, PRG)
End If
Hoxs64.txt:
Code: Select all
;***********************
;* Hoxs64 GEMUS Script *
;* (c) The GB64 Team *
;* Autoload by K.C. *
;* 7th December 2009 *
;***********************
;
; PLEASE SET YOUR EMULATOR PROPERTIES AS FOLLOWS:
;
; Emulator File: HOXS64.EXE
; Use Short Filenames: YES
; File Types: D64;PRG;TAP;P00
;
; This script was written for Hoxs64 C64 Emulator v1.0.7.2,
; but will work with other versions too.
;
; Emulator Website: http://www.hoxs64.net
;
; "Auto Load" from the menu will work for most D64 and TAP images,
; since the first file is usually the desired file and
; "Auto Load" only works for the first file.
;
If GameType CONTAINS(d64||tap||p00||prg)
;emulator settings are stored in the Windows Registry under HKEY_CURRENT_USER\Software\Hoxs64
Add_CLP( -autoload %gamepathfile%)
If Key_hoxsnum CONTAINS(*)
Add_CLP( %hoxsnum_value%)
Else
Add_CLP( 0)
End If
;no command line parameters or autoloading features are available
End If
;There is no Keyboard Joystick (JoyKey) emulation: PC Joysticks are required.
;unsupported game controls
If Control = Mouse
Show_Message(This emulator does not have Mouse emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = Lightpen
Show_Message(This emulator does not have LightPen emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = KoalaPad
Show_Message(This emulator does not have KoalaPad emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = LightGun
Show_Message(This emulator does not have LightGun emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = PaddlePort1
Show_Message(This emulator does not have Paddle emulation.%crlfx2%This game may be uncontrollable/unplayable.)
ElseIf Control = PaddlePort2
Show_Message(This emulator does not have Paddle emulation.%crlfx2%This game may be uncontrollable/unplayable.)
End If
;give the user a warning message?
If VersionComment CONTAINS(*use C64S*||*use VICE*||*use CCS*||*use real C64*)
Show_Message(This game may not work properly with this emulator.%crlfx2%See Version Comment for more info.)
End If
If VersionComment CONTAINS(*not 100%*||*not working*||doesn't work*)
Show_Message(This game may not work properly.)
End If
If VersionComment CONTAINS(*PET Emulator*)
Show_Message(Use PET Emulator to run this game.)
End If
If VersionComment CONTAINS(*ATTN:*||*NOTE:*||*ATTN!:*||*NOTE!:*)
;point out that critical info is in the version comment
Show_Message(Read this game's Version Comments for very important information/instructions.)
End If
If VersionComment CONTAINS(*VIC-20*||*VIC20*)
If VersionComment CONTAINS(*emulator*)
Show_Message(Use VIC-20 column Emulator to run this game properly.)
End If
End If
;run the emulator
Run_Emulator()