GEMUS Script : Add Poke via key=value ?

Discuss GameBase, the Universal Emulator Frontend!

Moderator: Jimbo

User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

GEMUS Script : Add Poke via key=value ?

Sat Nov 22, 2014 7:35 pm

Hi K.C. , .mad. & Co

Some VIC-20 Games needs a Poke (or more Pokes) before loading the program...

Example 1 :
poke8192,0:poke44,32

Example 2 :
poke44,28:poke7168,0:new

What is the correct GEMUS-Script , to add "pokes" as key=value ?

;check if a Poke is needed to start
If Key_poke CONTAINS(*)

and now ?
:oops:
It seems Emulator VICE has no commandline for pokes (like for sys -> -keybuf)

so, maybe via "Run_Emulator_Send_Keys" ?

any idea ?

So, if no solution will be found, i will use XPadder to do the Job....
look here :
https://www.youtube.com/watch?v=xibJrHE ... e=youtu.be
(watch it in 720P HD)
User avatar
.mad.
Highly Commended Member
Highly Commended Member
Location: Lancashire
Posts: 1598
Joined: Sun Jun 19, 2005 3:30 pm

Sun Nov 23, 2014 11:28 am

yes it can be done via send keys.
i did a script update for my version of Mayhems excellent Gamebase, to solve the very same problem.

This works for CARTs and PRG (inserted into RAM).
you will need to add LOAD"",1 {enter} if it's needed for TAP files.

same goes for pokes, just change "sys" for "poke"

Code: Select all

If Key_sys CONTAINS(*)
Add_CLP( -autoload "%gamepathfile%")
Run_Emulator_Send_Keys([1]sys%sys_value%{ENTER}||50)
Else
Add_CLP( -autostart "%gamepathfile%")
run_emulator()
end If


gemus
sys=4096

this is the full version of the script.
just a small warning.
some things might be broken for use in your version.
i changed all the cart files to .CRT (deleted the duplicate PRG) and put them all in the extras.

Code: Select all

;******************************
;* WinVICE 2.4.5 GEMUS Script *
;*      (c) The GB Team       *
;*     4th January 2014       *
;******************************

;--------------------------------------------------------------------
; Start of script.
;--------------------------------------------------------------------

Set_INI_Value(1||VIC20||InitialTapeDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialDiskDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialCartDir||"%gbgamepath%\0\")

   ;Do we want a PAL or NTSC setup?
   If PalNTSC = NTSC
      Add_CLP( -ntsc)
      ;Set_INI_Value(1||VIC20||MachineVideoStandard||-2)
   Else
      Add_CLP( -pal)
      ;Set_INI_Value(1||VIC20||MachineVideoStandard||-1)
   End If

; Set emulator default values.
Set_INI_Value(1||VIC20||DriveTrueEmulation||0)
Set_INI_Value(1||VIC20||AutostartPrgMode||0)
Set_INI_Value(1||VIC20||AutostartWarp||0)
Set_INI_Value(1||VIC20||VICFilter||0)

; Joystick / Keyboard Control
; Start with Keyboard Only - Disable all Control Port devices.
Set_INI_Value(1||VIC20||JoyDevice1||0)
Set_INI_Value(1||VIC20||Lightpen||0)
Set_INI_Value(1||VIC20||LightpenType||0)
Set_INI_Value(1||VIC20||Mouse||0)

Set_INI_Value(1||VIC20||KeymapIndex||1)
Set_INI_Value(1||VIC20||KeySetEnable||1)

If Control = Mouse
Set_INI_Value(1||VIC20||Mouse||1)

ElseIf Control = LightPen
Set_INI_Value(1||VIC20||Lightpen||1)

;0=Pen Button Up, 1=Pen Button Left ,2=Datel Pen ,3=Magnum Light Phaser, 4=Stack Light Rifel
Set_INI_Value(1||VIC20||LightpenType||0)

ElseIf Control = LightGun
Set_INI_Value(1||VIC20||Lightpen||1)
Set_INI_Value(1||VIC20||LightpenType||3)

;Use USB Joystick PC#0
; Joystick MUST be attached to enable this option.
ElseIf Control = JoyPort1

   If Key_realjoystick CONTAINS(yes)
   Set_INI_Value(1||VIC20||JoyDevice1||4)
   Else
     ; Use Keyset NUMPAD + Right Control as default.
     ; No Joystick=0 , NUMPAD=1, Keyset A=2, Keyset B=3, PC#0 (USB)=4
   Set_INI_Value(1||VIC20||JoyDevice1||1)
   End If

ElseIf Control = JoyPort2
; Same function as Control = Port 1.
   If Key_realjoystick CONTAINS(yes)
   Set_INI_Value(1||VIC20||JoyDevice1||4)
   Else
     ; Use Keyset NUMPAD + Right Control as default.
     ; No Joystick=0 , NUMPAD=1, Keyset A=2, Keyset B=3, PC#0 (USB)=4
   Set_INI_Value(1||VIC20||JoyDevice1||1)
   End If

;Paddles are switched on using Mouse command.
ElseIf Control = PaddlePort2
Set_INI_Value(1||VIC20||Mouse||1)
ElseIf Control = PaddlePort1
Set_INI_Value(1||VIC20||Mouse||1)

Else
End If

;Set_INI_Value(1||VIC20||JoyOpposite||0)

; Keyset A - Customise your own keys.
;Set_INI_Value(1||VIC20||KeySet1NorthWest||0)
;Set_INI_Value(1||VIC20||KeySet1North||0)
;Set_INI_Value(1||VIC20||KeySet1NorthEast||0)
;Set_INI_Value(1||VIC20||KeySet1East||0)
;Set_INI_Value(1||VIC20||KeySet1SouthEast||0)
;Set_INI_Value(1||VIC20||KeySet1South||0)
;Set_INI_Value(1||VIC20||KeySet1SouthWest||0)
;Set_INI_Value(1||VIC20||KeySet1West||0)
;Set_INI_Value(1||VIC20||KeySet1Fire||0)

; Keyset B - Customise your own keys.
;Set_INI_Value(1||VIC20||KeySet2NorthWest||0)
;Set_INI_Value(1||VIC20||KeySet2North||0)
;Set_INI_Value(1||VIC20||KeySet2NorthEast||0)
;Set_INI_Value(1||VIC20||KeySet2East||0)
;Set_INI_Value(1||VIC20||KeySet2SouthEast||0)
;Set_INI_Value(1||VIC20||KeySet2South||0)
;Set_INI_Value(1||VIC20||KeySet2SouthWest||0)
;Set_INI_Value(1||VIC20||KeySet2West||0)
;Set_INI_Value(1||VIC20||KeySet2Fire||0)

;***************************************************************
;VIC20 only has 1 Control port as standard.
;Extra joysticks can only be used by attaching special adapters.
; TankAtak needs OEM joy adapater for 2 players.
;***************************************************************

;Set_INI_Value(1||VIC20||ExtraJoy||0)
;Set_INI_Value(1||VIC20||ExtraJoyType||0)

;Set_INI_Value(1||VIC20||JoyDevice2||0)
;Set_INI_Value(1||VIC20||JoyDevice3||0)
;Set_INI_Value(1||VIC20||JoyDevice4||0)

;Set_INI_Value(1||VIC20||JoyFire1Button||0)
;Set_INI_Value(1||VIC20||JoyFire2Button||0)
;Set_INI_Value(1||VIC20||JoyFire3Button||0)
;Set_INI_Value(1||VIC20||JoyFire4Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire1Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire1Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire1Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire2Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire2Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire2Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire3Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire3Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire3Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire4Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire4Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire4Button||0)

;--------------------------------------------------------------------
; Memory configuration.

;Set_INI_Value(1||VIC20||RAMBlock0||0)
;Set_INI_Value(1||VIC20||RAMBlock1||0)
;Set_INI_Value(1||VIC20||RAMBlock2||0)
;Set_INI_Value(1||VIC20||RAMBlock3||0)
;Set_INI_Value(1||VIC20||RAMBlock5||0)

;set through the key=value pair:
; memory=x
; where x is: none,all,3k,8k,16k,24k,"0,1,2,3,5" or "04,20,40,60,A0"

	If Key_memory CONTAINS(*)
		Add_CLP( -memory %memory_value%)
	Else
		Add_CLP( -memory none)
	End If
;--------------------------------------------------------------------

If GameType CONTAINS(prg)
;use prg run mode.
Set_INI_Value(1||VIC20||AutostartPrgMode||1)

If Key_sys CONTAINS(*)
Add_CLP( -autoload "%gamepathfile%")
Run_Emulator_Send_Keys([1]sys%sys_value%{ENTER}||50)
Else
Add_CLP( -autostart "%gamepathfile%")
run_emulator()
end If
End If

;--------------------------------------------------------------------

If GameType CONTAINS(crt||rom)

; AE Cart boots with corrupt screen with RAM 00 at 0000.
; must use these VICE RAM settings, or enter monitor and type - G A027.

; Default is 64, possible settings (0||1||2||4||8||16||32||64||128||256||512||1024)
Set_INI_Value(1||VIC20||RAMInitValueInvert||64)

; Default is 0,  possible settings (0||1||2||4||8||16||32||64||128||256||512||1024)
Set_INI_Value(1||VIC20||RAMInitPatternInvert||0)

If key_RAM CONTAINS (255)
Set_INI_Value(1||VIC20||RAMInitStartValue||255)
Else
Set_INI_Value(1||VIC20||RAMInitStartValue||0)
End If

;1=Generic 2=Mega-Cart 3=Final Expansion 4=Vic Flash Plugin
Set_INI_Value(1||VIC20||CartridgeType||1)

;Reset on Cartridge Change
If Key_cartreset CONTAINS (off)
Set_INI_Value(1||VIC20||CartridgeReset||0)
else
Set_INI_Value(1||VIC20||CartridgeReset||-1)
end if

;Set_INI_Value(1||VIC20||CartridgeFile||)

;Set_INI_Value(1||VIC20||GenericCartridgeFile2000||)
;Set_INI_Value(1||VIC20||GenericCartridgeFile4000||)
;Set_INI_Value(1||VIC20||GenericCartridgeFile6000||"C:\GBGame\0\AE-6000.crt")
;Set_INI_Value(1||VIC20||GenericCartridgeFileA000||"C:\GBGame\0\AE-a000.crt")
;Set_INI_Value(1||VIC20||GenericCartridgeFileB000||)

;Set_INI_Value(1||VIC20||FinalExpansionWriteBack||0)
;Set_INI_Value(1||VIC20||VicFlashPluginWriteBack||0)
;Set_INI_Value(1||VIC20||MegaCartNvRAMfilename||"")
;Set_INI_Value(1||VIC20||MegaCartNvRAMWriteBack||0)

		If Key_cart CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart_value%*.*)
		End If

		If Key_cart2 CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart2_value%*.*)
		End If
If Key_sys CONTAINS(*)
Run_Emulator_Send_Keys([1]sys%sys_value%{ENTER}||50)

Else If key_megacart CONTAINS (yes)
Add_CLP ( -cartmega %gamepath%\mega-cart.rom -mcnvramwriteback -mcnvramfile %gamepath%\mega-cart.nv)
Run_Emulator()
Else

Run_Emulator()

End if
End if

;--------------------------------------------------------------------

If GameType CONTAINS(t64||tap)

Set_INI_Value(1||VIC20||DatasetteResetWithCPU||1)

;------------------------------
;Fine-tune Datasette settings.
;------------------------------
If key_delay CONTAINS(1000||2000||5000||10000||20000||50000)
Set_INI_Value(1||VIC20||DatasetteZeroGapDelay||%delay_value%)
else
Set_INI_Value(1||VIC20||DatasetteZeroGapDelay||20000)
End if

;Caves of Annod=1, Shark Attack=2
If Key_cycles CONTAINS(0||1||2||3||4||5||6||7)
Set_INI_Value(1||VIC20||DatasetteSpeedTuning||%cycles_value%)
else
Set_INI_Value(1||VIC20||DatasetteSpeedTuning||1)
end if
;------------------------------


;No commandline options for loading tapes with ,1,1. Only BASIC load available.

 	If ImageName CONTAINS (*)
   	; Load the TAPE Image (T64) with Filename stored in GameBase.
   	Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")
   	End If
	
	If key_load CONTAINS(manual)
	 Show_Message(You must load the TAPE manually. Example Load"",1,1)
	 ; Attach Tape Image in default Cassette Deck (1) and run emulator. Disable auto loading.
	 Clear_CLP()
	 Add_CLP2( -1 "%gamepathfile%")
	 
	 Else
	 ; Load the first file on the Tape image.
	 ;Default Attach TAPE and load
	 Add_CLP2( -autostart "%gamepathfile%")
	End If

if key_tape CONTAINS(detach)
;Jogger controls do not work without a tape at the STOP position.
;If using a T64 file the image needs to be removed.
;Open WinVICE menu and detach T64/Tape file.
Run_Emulator_Send_Keys([4]%{f}h||50)

else
Run_emulator()
end if
End if

;--------------------------------------------------------------------

If GameType CONTAINS(d64||g64||g41)

Set_INI_Value(1||VIC20||DriveTrueEmulation||1)
;Set_INI_Value(1||VIC20||DriveSoundEmulation||0)

;Set_INI_Value(1||VIC20||Drive8Type||1541)
;Set_INI_Value(1||VIC20||AttachDevice8Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice8||1)
;Set_INI_Value(1||VIC20||Drive8ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive8IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive8RAM2000||0)
;Set_INI_Value(1||VIC20||Drive8RAM4000||0)
;Set_INI_Value(1||VIC20||Drive8RAM6000||0)
;Set_INI_Value(1||VIC20||Drive8RAM8000||0)
;Set_INI_Value(1||VIC20||Drive8RAMA000||0)

Set_INI_Value(1||VIC20||Drive9Type||0)
;Set_INI_Value(1||VIC20||AttachDevice9Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice9||0)
;Set_INI_Value(1||VIC20||Drive9ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive9IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive9RAM2000||0)
;Set_INI_Value(1||VIC20||Drive9RAM4000||0)
;Set_INI_Value(1||VIC20||Drive9RAM6000||0)
;Set_INI_Value(1||VIC20||Drive9RAM8000||0)
;Set_INI_Value(1||VIC20||Drive9RAMA000||0)

Set_INI_Value(1||VIC20||Drive10Type||0)
;Set_INI_Value(1||VIC20||AttachDevice10Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice10||0)
;Set_INI_Value(1||VIC20||Drive10ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive10IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive10RAM2000||0)
;Set_INI_Value(1||VIC20||Drive10RAM4000||0)
;Set_INI_Value(1||VIC20||Drive10RAM6000||0)
;Set_INI_Value(1||VIC20||Drive10RAM8000||0)
;Set_INI_Value(1||VIC20||Drive10RAMA000||0)

Set_INI_Value(1||VIC20||Drive11Type||0)
;Set_INI_Value(1||VIC20||AttachDevice11Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice11||0)
;Set_INI_Value(1||VIC20||Drive11ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive11IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive11RAM2000||0)
;Set_INI_Value(1||VIC20||Drive11RAM4000||0)
;Set_INI_Value(1||VIC20||Drive11RAM6000||0)
;Set_INI_Value(1||VIC20||Drive11RAM8000||0)
;Set_INI_Value(1||VIC20||Drive11RAMA000||0)

      ; -autorun    autoloads prg file, but you will need to type RUN [return] manually.
      ; -autostart  autoloads and runs the file.
      
	If ImageName CONTAINS (*)
	;Default setting. Boot disk with ImageName
	Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")

; ***** Boot all other disks with a wildcard, if no internal file can be set on the image (G64) *****
	Else
	Add_CLP2( -autostart "%gamepathfile%")
	End If
; ***************************************************************************************************	
	
		If Key_load CONTAINS(wildcard)
		; Auto boot disk with LOAD"*",8,1
		Clear_CLP()
		Add_CLP2( -autostart "%gamepathfile%")

		ElseIf Key_load CONTAINS(basic)
		; Auto boot Disk with LOAD"*",8
		Clear_CLP()
		Add_CLP2( -autostart "%gamepathfile%" -basicload)

		ElseIf key_load CONTAINS(manual)
		Show_Message(You must load the game on the disk manually. LOAD"$",8 and type LIST for directory)
		; Just attach disk in default drive 8 and run emulator. Disable auto loading.
		Clear_CLP()
		Add_CLP2( -8 "%gamepathfile%")
		End If
Run_emulator()
End If
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Sun Nov 23, 2014 11:39 am

thanks .mad. !!!
I will test it this evening 8)
GB done: Philips VG 5000, Sord-M5, Acorn Atom, Enterprise v1.00
User avatar
Mayhem
GB64 Team
Contact:
Location: Londonish
Posts: 783
Joined: Mon Sep 08, 2003 7:44 am

Sun Nov 23, 2014 4:10 pm

I generally got around it by using versions of games that didn't need the POKEs prior to being run.

I take it I can use that version of the script without issue in GB20 then .Mad.?
Lie with passion and be forever damned...
User avatar
.mad.
Highly Commended Member
Highly Commended Member
Location: Lancashire
Posts: 1598
Joined: Sun Jun 19, 2005 3:30 pm

Sun Nov 23, 2014 5:18 pm

Mayhem wrote: I take it I can use that version of the script without issue in GB20 then .Mad.?
I thought i already sent this to you a while ago with the updated cropped screens and games?.

But yes, feel free to use and update it as you wish.
i do not hold any personal attachment to scripts. :wink:
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Sun Nov 23, 2014 9:10 pm

unfortunately it don't work with my beta-gamebase....
i put this into my "old" script :
but i always get a VICE-Error : "extra arguments on command-line

Code: Select all

Else
				If Key_poke CONTAINS(*)
					Add_CLP( -autoload "%gamepathfile%")
					Run_Emulator_Send_Keys([1]poke%poke_value%{ENTER}||50)
				Else
					Add_CLP( -autostart "%gamepathfile%")
					Run_Emulator()
				End If
this is my key=value pairs for the game Mini-Pac :
memory=8k
JSPROFILE=VIC20-Mini-Pac
poke=poke8192,0:poke44,32

(using winvice v2.4)
Last edited by Vicman on Sun Nov 23, 2014 9:13 pm, edited 1 time in total.
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Sun Nov 23, 2014 9:12 pm

here is my script : whats wrong ?

Code: Select all

;************************
;* WinVICE GEMUS Script *
;*   (c) The GB Team    *
;*   16 December 2009   *
;************************
;
; PLEASE SET YOUR EMULATOR PROPERTIES AS FOLLOWS:
;
; Emulator File: XVIC.EXE
; Associated File (1): vice.ini
; Use Short Filenames: YES
; File Types:  D64;T64;G64;G41;TAP;CRT;P00;PRG
;
; This script was written for WinVICE v2.2 but
; may work with other versions too.
;
; Memory configuration is set through the key=value pair:
; memory=x
; where x is: none,all,3k,8k,16k,24k,"0,1,2,3,5" or "04,20,40,60,A0"
; as specified in the VICE manual section 7.2.2.2
; (Note: the Memory Expansion field can not be used by GEMUS)
;
; If the program requires a SYS call to start, then use:
; sys=x
; where x is the starting address as entered from BASIC
; and it will be displayed in a REM statement in the emulator
;
; Multipart cartridges must have the memory locations in the file names.
; The cartridge memory locations are set in the key=value pairs
; cart=A
; cart2=B
; where A and B are 2000,4000,6000,a000 or b000 (or 20,40,60,a0 or b0).
; Single carts may need to have a cart=A value set..

;K=V pair USEJOYSTICK must be set to YES to activate it.
;-------------------------------------------------------

Kill_Process(xpadder.exe)
Kill_Process(JoyToKey.exe)
Wait(1000)


If Key_usejoystick CONTAINS(*)
	If Key_usejoystick CONTAINS(yes||1||on||true)
		If Control = LightPen
			Run_Program(%dbpath%\Xpadder\Xpadder.exe||"%dbpath%\XPadder\Profiles\%jsprofile_value%"||nowait)
		ElseIf Control = KoalaPad
			Run_Program(%dbpath%\Joy2Key\JoyToKey.exe||"%jsprofile_value%"||nowait)
		End If
	End If
ElseIf Key_usejoystick EXCLUDES(no||0||off|false)
	Show_Message(%usejoystick_value% is not a valid value for k=v pair USEJOYSTICK.%crlfx2%Valid values are: yes, 1, on, true, no, 0, off and false.)
End If



If GameType CONTAINS(d64||t64||g64||g41||tap||crt||prg)

	;set paths to file location for possible image swaps
	Set_INI_Value(1||VIC20||InitialDiskDir||%gamepath%)
	Set_INI_Value(1||VIC20||InitialTapeDir||%gamepath%)
	Set_INI_Value(1||VIC20||InitialCartDir||%gamepath%)
	Set_INI_Value(1||VIC20||InitialAutostartDir||%gamepath%)

	;autostart or 'manual load' the game image
	If Key_cart CONTAINS(*)
		If Key_cart CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart_value%*.*)
		End If

		If Key_cart2 CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart2_value%*.*)
		End If


		;autostart or 'manual load' the game image (with SYS call messages)
		If VersionComment CONTAINS(*load manually*)
			;check if a SYS call is needed to start
			If Key_sys CONTAINS(*)
				Add_CLP( -keybuf "REM LOAD MANUALLY THEN START WITH SYS%sys_value%%crlf%")
			Else
				Add_CLP( -keybuf "REM LOAD MANUALLY THEN SOFT RESET TO START%crlf%")
			End If
		Else
			;check if a SYS call is needed to start
			If Key_sys CONTAINS(*)
				Add_CLP( -keybuf "SYS%sys_value%%crlf%")
			End If
		End If

	Else

		;autostart or 'manual load' the game image (with SYS call messages)
		If ImageName CONTAINS(*)
			If VersionComment CONTAINS(*load manually*)
				;check if a SYS call is needed to start
				If Key_sys CONTAINS(*)
					Add_CLP( -keybuf "REM LOAD MANUALLY THENSTART WITH SYS%sys_value%%crlf%")
					Add_CLP2( -autoload "%gamepathfile%:%c64imagename%")
				Else
					Add_CLP( -keybuf "REM YOU MUST LOAD AND START MANUALLY%crlf%")
					Add_CLP2( -autoload "%gamepathfile%:%c64imagename%")
				End If
			Else
				If Key_poke CONTAINS(*)
					Add_CLP( -autoload "%gamepathfile%")
					Run_Emulator_Send_Keys([1]poke%poke_value%{ENTER}||50)
				Else
					Add_CLP( -autostart "%gamepathfile%")
					Run_Emulator()
				End If


				;check if a SYS call is needed to start
				If Key_sys CONTAINS(*)
					Add_CLP( -keybuf "%crlfx2%%crlfx2%SYS%sys_value% PRESS ENTER‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘%crlf%")
					Add_CLP2( -autoload "%gamepathfile%:%c64imagename%")
				Else
					Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")
				End If
			End If
		Else
			If VersionComment CONTAINS(*load manually*)
				;check if a SYS call is needed to start
				If Key_sys CONTAINS(*)
					Add_CLP( -keybuf "REM LOAD MANUALLY THENSTART WITH SYS%sys_value%crlf%")
					Add_CLP2( -autoload "%gamepathfile%)
				Else
					Add_CLP( -keybuf "REM YOU MUST LOAD AND START MANUALLY%crlf%")
					Add_CLP2( -autoload "%gamepathfile%)
				End If
			Else
				;check if a SYS call is needed to start
				If Key_sys CONTAINS(*)
					Add_CLP( -keybuf "%crlf%%crlfx2%%crlfx2%%crlfx2%SYS%sys_value% PRESS ENTER‘‘‘‘‘‘‘‘‘‘‘‘‘%crlf%")
					Add_CLP2( -autoload "%gamepathfile%")
				Else
					Add_CLP2( -autostart "%gamepathfile%")
				End If
			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

	;settings for expanded memory
	If Key_memory CONTAINS(*)
		Add_CLP( -memory %memory_value%)
	Else
		Add_CLP( -memory none)
	End If

	;set the game controls
	;0=None, 1=Numpad + RCtrl, 2=Keyset A, 3=Keyset B, 4+ are for real joysticks/pads;
	If %gamefile% CONTAINS(*)
		If Control = JoyPort2
			;Add_CLP( -joydev2 2)
			If NumPlayers > 1
				Add_CLP( -joydev1 3)
			Else
				Add_CLP( -joydev1 0)
			End If
		ElseIf Control = JoyPort1
			;Add_CLP( -joydev1 2)
			If NumPlayers > 1
				;Add_CLP( -joydev2 3)
			Else
				;Add_CLP( -joydev2 0)
			End If
		Else
			Add_CLP( -joydev1 4)
			;Add_CLP( -joydev2 0)
		End If
	End If

	;unsupported game controls
	If Control = PaddlePort1
		Show_Message(Use Vice 2.2 onwards for paddle emulation.%crlfx2%Press Alt Q to enable paddle control with the mouse.)
	ElseIf Control = PaddlePort2
		Show_Message(Use Vice 2.2 onwards for paddle emulation.%crlfx2%Press Alt Q to enable paddle control with the mouse.)
	End If

	;give the user a warning message?
	If VersionComment CONTAINS(*use real Vic20*)
		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

	;run the emulator
	Run_Emulator()

Else

	;invalid game file type
	Show_Message(GAME_NOT_SUPPORTED%crlfx2%Supported types: D64, T64, G64/G41, TAP, CRT, PRG, P00)

End If
User avatar
Mayhem
GB64 Team
Contact:
Location: Londonish
Posts: 783
Joined: Mon Sep 08, 2003 7:44 am

Mon Nov 24, 2014 10:49 am

.mad. wrote:I thought i already sent this to you a while ago with the updated cropped screens and games?.
Ah okay, sorry, I've been busy in general, and I've wanted to re-organise the entire GB20 better first before getting on with adding new stuff. So all the archives are renamed with their entry codes for example, so it's obvious which ZIP is for what game! And probably likewise for the TAPs and screenshots. Probably leave the packaging scans as standard filenames, because many games can share the same scan.
Lie with passion and be forever damned...
User avatar
.mad.
Highly Commended Member
Highly Commended Member
Location: Lancashire
Posts: 1598
Joined: Sun Jun 19, 2005 3:30 pm

Mon Nov 24, 2014 5:53 pm

Vicman wrote:here is my script : whats wrong ?
you are not using my script. :)
all the keybuf nonsense.

you added an extra "else" before the start of POKE bit.

also maybe missing an "end if" after run emulator.

Code: Select all

Run_Emulator_Send_Keys([1]poke%poke_value%{ENTER}||50) 
will just need this in GEMUS
poke=8192,0 (not) poke=poke8192,0

the sendkeys is typing "poke" then the %poke_value%

you will need this for your way...

Code: Select all

Run_Emulator_Send_Keys([1]%poke_value%{ENTER}[1]run{ENTER}||50)
GEMUS
poke=poke8192,0:poke44,32

-------
if you send me the mini-pac game, i may have a better solution.
Last edited by .mad. on Mon Nov 24, 2014 6:09 pm, edited 2 times in total.
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Mon Nov 24, 2014 6:01 pm

Hi .mad. ,
thanks for that. I will test it again.

And of course i will use your updated / improved Script.
But for any reason i didn't worked with my gamebase.
I'll try it again. And if i run in any issues, i'll call you back :wink:
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Mon Nov 24, 2014 8:11 pm

ok .mad. ,
i use your script with WinVICE-2.4-x64 :

- my cartridge roms (*.crt) don't work
example : Game Agressor
My GEMUS is : cart=a0

Vice error : Argument 'e:\gbgame\0\*a0*.* not valid for option -cartA
error parsing command-line options, bailing out.

any idea ?
User avatar
.mad.
Highly Commended Member
Highly Commended Member
Location: Lancashire
Posts: 1598
Joined: Sun Jun 19, 2005 3:30 pm

Mon Nov 24, 2014 8:46 pm

Works perfectly for me.

could be the gbgame rezip path setting.

your old script settings to use the game path.

Set_INI_Value(1||VIC20||InitialDiskDir||%gamepath%)
Set_INI_Value(1||VIC20||InitialTapeDir||%gamepath%)
Set_INI_Value(1||VIC20||InitialCartDir||%gamepath%)
Set_INI_Value(1||VIC20||InitialAutostartDir||%gamepath%)

my script settings to use the default GBGame rezip Path.
C:\GBGame\0

Set_INI_Value(1||VIC20||InitialTapeDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialDiskDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialCartDir||"%gbgamepath%\0\")

Also the new script will only load carts if it has a the file extension .CRT.
.PRG is no longer supported.

check filename located in .zip
.\GameBase\Vic20_v03\Extras\Cart\Aggressor.zip\Aggressor (NTSC)-a000.crt

Did the poke work?
still waiting for Mini Pacman...
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Tue Nov 25, 2014 10:27 am

Hi .mad. ,
Here you can get Mini-Pac
It's typed-in by Kweepa from Denial

I still have no luck with the script....
I have my Gamebase on E:\
And the gbgame folder also on E:\
If i start i.e. Agressor, it will be unzipped in folder E:\GBGame\0
(i see the unpacked file there....)
But WinVice don't start, and i get Vice-error-messages... :evil:

EDIT:
ok, it seems , it was the emulator WinVice-2.4-x64 i used.....
For any reason it don't work with the script......(crt files)
Please test your script with this emulator (if you can use the x64...)
User avatar
.mad.
Highly Commended Member
Highly Commended Member
Location: Lancashire
Posts: 1598
Joined: Sun Jun 19, 2005 3:30 pm

Tue Nov 25, 2014 3:32 pm

sorry only got a 32bit x86 system here.

i would suggest it's something stored in the vice.ini.
try deleting it.

does the "vice.ini" save as a different file name when run on x64 ?
"vice64.ini" for example.

when viewed in a text editor. Does it have the same header name... [VIC20]

[VIC20]
LogFileName=""
Directory="$$"

or have something like this...

[VIC20_64]
LogFileName=""
Directory="$$"

if so change all the [VIC20] in the script to [VIC20_64] or whatever it is.

i really do not know. :?


mini-pac works directly without any pokes for me.
just use memory=3k.


the poke bit is working for PRG only in this script.

Code: Select all

;************************************
;* WinVICE 2.4.5 (x86) GEMUS Script *
;*         (c) The GB Team          *
;*        25th November 2014        *
;************************************

;--------------------------------------------------------------------
; Start of script.
;--------------------------------------------------------------------

Set_INI_Value(1||VIC20||InitialTapeDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialDiskDir||"%gbgamepath%\0\")
Set_INI_Value(1||VIC20||InitialCartDir||"%gbgamepath%\0\")

   ;Do we want a PAL or NTSC setup?
   If PalNTSC = NTSC
      Add_CLP( -ntsc)
      ;Set_INI_Value(1||VIC20||MachineVideoStandard||-2)
   Else
      Add_CLP( -pal)
      ;Set_INI_Value(1||VIC20||MachineVideoStandard||-1)
   End If

; Set emulator default values.
Set_INI_Value(1||VIC20||DriveTrueEmulation||0)
Set_INI_Value(1||VIC20||AutostartPrgMode||0)
Set_INI_Value(1||VIC20||AutostartWarp||0)
Set_INI_Value(1||VIC20||VICFilter||0)

; Joystick / Keyboard Control
; Start with Keyboard Only - Disable all Control Port devices.
Set_INI_Value(1||VIC20||JoyDevice1||0)
Set_INI_Value(1||VIC20||Lightpen||0)
Set_INI_Value(1||VIC20||LightpenType||0)
Set_INI_Value(1||VIC20||Mouse||0)

Set_INI_Value(1||VIC20||KeymapIndex||1)
Set_INI_Value(1||VIC20||KeySetEnable||1)

If Control = Mouse
Set_INI_Value(1||VIC20||Mouse||1)

ElseIf Control = LightPen
Set_INI_Value(1||VIC20||Lightpen||1)

;0=Pen Button Up, 1=Pen Button Left ,2=Datel Pen ,3=Magnum Light Phaser, 4=Stack Light Rifel
Set_INI_Value(1||VIC20||LightpenType||0)

ElseIf Control = LightGun
Set_INI_Value(1||VIC20||Lightpen||1)
Set_INI_Value(1||VIC20||LightpenType||3)

;Use USB Joystick PC#0
; Joystick MUST be attached to enable this option.
ElseIf Control = JoyPort1

   If Key_realjoystick CONTAINS(yes)
   Set_INI_Value(1||VIC20||JoyDevice1||4)
   Else
     ; Use Keyset NUMPAD + Right Control as default.
     ; No Joystick=0 , NUMPAD=1, Keyset A=2, Keyset B=3, PC#0 (USB)=4
   Set_INI_Value(1||VIC20||JoyDevice1||1)
   End If

ElseIf Control = JoyPort2
; Same function as Control = Port 1.
   If Key_realjoystick CONTAINS(yes)
   Set_INI_Value(1||VIC20||JoyDevice1||4)
   Else
     ; Use Keyset NUMPAD + Right Control as default.
     ; No Joystick=0 , NUMPAD=1, Keyset A=2, Keyset B=3, PC#0 (USB)=4
   Set_INI_Value(1||VIC20||JoyDevice1||1)
   End If

;Paddles are switched on using Mouse command.
ElseIf Control = PaddlePort2
Set_INI_Value(1||VIC20||Mouse||1)
ElseIf Control = PaddlePort1
Set_INI_Value(1||VIC20||Mouse||1)

Else
End If

;Set_INI_Value(1||VIC20||JoyOpposite||0)

; Keyset A - Customise your own keys.
;Set_INI_Value(1||VIC20||KeySet1NorthWest||0)
;Set_INI_Value(1||VIC20||KeySet1North||0)
;Set_INI_Value(1||VIC20||KeySet1NorthEast||0)
;Set_INI_Value(1||VIC20||KeySet1East||0)
;Set_INI_Value(1||VIC20||KeySet1SouthEast||0)
;Set_INI_Value(1||VIC20||KeySet1South||0)
;Set_INI_Value(1||VIC20||KeySet1SouthWest||0)
;Set_INI_Value(1||VIC20||KeySet1West||0)
;Set_INI_Value(1||VIC20||KeySet1Fire||0)

; Keyset B - Customise your own keys.
;Set_INI_Value(1||VIC20||KeySet2NorthWest||0)
;Set_INI_Value(1||VIC20||KeySet2North||0)
;Set_INI_Value(1||VIC20||KeySet2NorthEast||0)
;Set_INI_Value(1||VIC20||KeySet2East||0)
;Set_INI_Value(1||VIC20||KeySet2SouthEast||0)
;Set_INI_Value(1||VIC20||KeySet2South||0)
;Set_INI_Value(1||VIC20||KeySet2SouthWest||0)
;Set_INI_Value(1||VIC20||KeySet2West||0)
;Set_INI_Value(1||VIC20||KeySet2Fire||0)

;****************************************************************
; VIC20 only has 1 Control port as standard.
; Extra joysticks can only be used by attaching special adapters.
; TankAtak needs OEM joy adapater for 2 players.
;****************************************************************

;Set_INI_Value(1||VIC20||ExtraJoy||0)
;Set_INI_Value(1||VIC20||ExtraJoyType||0)

;Set_INI_Value(1||VIC20||JoyDevice2||0)
;Set_INI_Value(1||VIC20||JoyDevice3||0)
;Set_INI_Value(1||VIC20||JoyDevice4||0)

;Set_INI_Value(1||VIC20||JoyFire1Button||0)
;Set_INI_Value(1||VIC20||JoyFire2Button||0)
;Set_INI_Value(1||VIC20||JoyFire3Button||0)
;Set_INI_Value(1||VIC20||JoyFire4Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire1Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire1Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire1Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire2Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire2Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire2Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire3Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire3Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire3Button||0)

;Set_INI_Value(1||VIC20||JoyAutofire4Speed||16)
;Set_INI_Value(1||VIC20||JoyAutofire4Axis||0)
;Set_INI_Value(1||VIC20||JoyAutofire4Button||0)

;--------------------------------------------------------------------
; Memory configuration.
; Set through the key=value pair:
; memory=x
; where x is: none,all,3k,8k,16k,24k,"0,1,2,3,5" or "04,20,40,60,A0"

	If Key_memory CONTAINS(*)
		Add_CLP( -memory %memory_value%)
	Else
		Add_CLP( -memory none)
	End If
;--------------------------------------------------------------------

If GameType CONTAINS(prg)
;use prg run mode.
Set_INI_Value(1||VIC20||AutostartPrgMode||1)

;**************************************************
; If a program requires a system call to start it.
; GEMUS... SYS=4096 (not sys=sys4096)
;**************************************************
If Key_sys CONTAINS(*)
Add_CLP( -autoload "%gamepathfile%")
Run_Emulator_Send_Keys([2]sys%sys_value%{ENTER}||50)

;**************************************************************************
; If a program requires a POKE before running.
; GEMUS... POKE=poke8192,0;poke44,32
; "poke" must be in lowercase and use semicolon (not colon) between pokes.
;***********:**************************************************************
ElseIf Key_poke CONTAINS(*)
Add_CLP( -autoload "%gamepathfile%")
Run_Emulator_Send_Keys([2]%poke_value%{ENTER}[1]run{ENTER}||50)

Else
Add_CLP( -autostart "%gamepathfile%")
Run_Emulator()
End If
End If

;--------------------------------------------------------------------

If GameType CONTAINS(crt||rom)

; Default is 64, possible settings (0||1||2||4||8||16||32||64||128||256||512||1024)
Set_INI_Value(1||VIC20||RAMInitValueInvert||64)

; Default is 0,  possible settings (0||1||2||4||8||16||32||64||128||256||512||1024)
Set_INI_Value(1||VIC20||RAMInitPatternInvert||0)

;********************************************************************
; AE & Draw Poker Carts do not work with the default RAM 00 at 0000.
; GEMUS... RAM=255 to get them working.
;********************************************************************

If key_RAM CONTAINS (255)
Set_INI_Value(1||VIC20||RAMInitStartValue||255)
Else
Set_INI_Value(1||VIC20||RAMInitStartValue||0)
End If

;1=Generic 2=Mega-Cart 3=Final Expansion 4=Vic Flash Plugin
Set_INI_Value(1||VIC20||CartridgeType||1)

;Reset on Cartridge Change
If Key_cartreset CONTAINS (off)
Set_INI_Value(1||VIC20||CartridgeReset||0)
else
Set_INI_Value(1||VIC20||CartridgeReset||-1)
end if

		If Key_cart CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart_value%*.*)
		ElseIf Key_cart CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart_value%*.*)
		End If

		If Key_cart2 CONTAINS(*20*)
			Add_CLP( -cart2 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*40*)
			Add_CLP( -cart4 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*60*)
			Add_CLP( -cart6 %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*a0*)
			Add_CLP( -cartA %gamepath%\*%cart2_value%*.*)
		ElseIf Key_cart2 CONTAINS(*b0*)
			Add_CLP( -cartB %gamepath%\*%cart2_value%*.*)
		End If
If Key_sys CONTAINS(*)
Run_Emulator_Send_Keys([1]sys%sys_value%{ENTER}||50)

Else If key_megacart CONTAINS (yes)
Add_CLP ( -cartmega %gamepath%\mega-cart.rom -mcnvramwriteback -mcnvramfile %gamepath%\mega-cart.nv)
Run_Emulator()
Else

Run_Emulator()

End if
End if

;--------------------------------------------------------------------

If GameType CONTAINS(t64||tap)

Set_INI_Value(1||VIC20||DatasetteResetWithCPU||1)

;------------------------------
;Fine-tune Datasette settings.
;------------------------------
If key_delay CONTAINS(1000||2000||5000||10000||20000||50000)
Set_INI_Value(1||VIC20||DatasetteZeroGapDelay||%delay_value%)
else
Set_INI_Value(1||VIC20||DatasetteZeroGapDelay||20000)
End if

; Caves of Annod CYCLES=1 / Shark Attack CYCLES=2
If Key_cycles CONTAINS(0||1||2||3||4||5||6||7)
Set_INI_Value(1||VIC20||DatasetteSpeedTuning||%cycles_value%)
else
Set_INI_Value(1||VIC20||DatasetteSpeedTuning||1)
end if
;------------------------------


;No commandline options for loading tapes with ,1,1. Only BASIC load available.

 	If ImageName CONTAINS (*)
   	; Load the TAPE Image (T64) with Filename stored in GameBase.
   	Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")
   	End If
	
	If key_load CONTAINS(manual)
	 Show_Message(You must load the TAPE manually. Example Load"",1,1)
	 ; Attach Tape Image in default Cassette Deck (1) and run emulator. Disable auto loading.
	 Clear_CLP()
	 Add_CLP2( -1 "%gamepathfile%")
	 
	 Else
	 ; Load the first file on the Tape image.
	 ;Default Attach TAPE and load
	 Add_CLP2( -autostart "%gamepathfile%")
	End If

if key_tape CONTAINS(detach)
;Jogger controls do not work without a tape at the STOP position.
;If using a T64 file the image needs to be removed.
;Open WinVICE menu and detach T64/Tape file.
Run_Emulator_Send_Keys([4]%{f}h||50)

else
Run_emulator()
end if
End if

;--------------------------------------------------------------------

If GameType CONTAINS(d64||g64||g41)

Set_INI_Value(1||VIC20||DriveTrueEmulation||1)
;Set_INI_Value(1||VIC20||DriveSoundEmulation||0)

;Set_INI_Value(1||VIC20||Drive8Type||1541)
;Set_INI_Value(1||VIC20||AttachDevice8Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice8||1)
;Set_INI_Value(1||VIC20||Drive8ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive8IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive8RAM2000||0)
;Set_INI_Value(1||VIC20||Drive8RAM4000||0)
;Set_INI_Value(1||VIC20||Drive8RAM6000||0)
;Set_INI_Value(1||VIC20||Drive8RAM8000||0)
;Set_INI_Value(1||VIC20||Drive8RAMA000||0)

Set_INI_Value(1||VIC20||Drive9Type||0)
;Set_INI_Value(1||VIC20||AttachDevice9Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice9||0)
;Set_INI_Value(1||VIC20||Drive9ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive9IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive9RAM2000||0)
;Set_INI_Value(1||VIC20||Drive9RAM4000||0)
;Set_INI_Value(1||VIC20||Drive9RAM6000||0)
;Set_INI_Value(1||VIC20||Drive9RAM8000||0)
;Set_INI_Value(1||VIC20||Drive9RAMA000||0)

Set_INI_Value(1||VIC20||Drive10Type||0)
;Set_INI_Value(1||VIC20||AttachDevice10Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice10||0)
;Set_INI_Value(1||VIC20||Drive10ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive10IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive10RAM2000||0)
;Set_INI_Value(1||VIC20||Drive10RAM4000||0)
;Set_INI_Value(1||VIC20||Drive10RAM6000||0)
;Set_INI_Value(1||VIC20||Drive10RAM8000||0)
;Set_INI_Value(1||VIC20||Drive10RAMA000||0)

Set_INI_Value(1||VIC20||Drive11Type||0)
;Set_INI_Value(1||VIC20||AttachDevice11Readonly||0)
;Set_INI_Value(1||VIC20||FileSystemDevice11||0)
;Set_INI_Value(1||VIC20||Drive11ExtendImagePolicy||0)
;Set_INI_Value(1||VIC20||Drive11IdleMethod||0)
;Set_INI_Value(1||VIC20||Drive11RAM2000||0)
;Set_INI_Value(1||VIC20||Drive11RAM4000||0)
;Set_INI_Value(1||VIC20||Drive11RAM6000||0)
;Set_INI_Value(1||VIC20||Drive11RAM8000||0)
;Set_INI_Value(1||VIC20||Drive11RAMA000||0)

      ; -autorun    autoloads prg file, but you will need to type RUN [return] manually.
      ; -autostart  autoloads and runs the file.
      
	If ImageName CONTAINS (*)
	;Default setting. Boot disk with ImageName
	Add_CLP2( -autostart "%gamepathfile%:%c64imagename%")

; ***** Boot all other disks with a wildcard, if no internal file can be set on the image (G64) *****
	Else
	Add_CLP2( -autostart "%gamepathfile%")
	End If
; ***************************************************************************************************	
	
		If Key_load CONTAINS(wildcard)
		; Auto boot disk with LOAD"*",8,1
		Clear_CLP()
		Add_CLP2( -autostart "%gamepathfile%")

		ElseIf Key_load CONTAINS(basic)
		; Auto boot Disk with LOAD"*",8
		Clear_CLP()
		Add_CLP2( -autostart "%gamepathfile%" -basicload)

		ElseIf key_load CONTAINS(manual)
		Show_Message(You must load the game on the disk manually. LOAD"$",8 and type LIST for directory)
		; Just attach disk in default drive 8 and run emulator. Disable auto loading.
		Clear_CLP()
		Add_CLP2( -8 "%gamepathfile%")
		End If
Run_emulator()
End If
User avatar
Vicman
Cool Member
Cool Member
Location: Germany
Posts: 285
Joined: Mon May 12, 2008 7:51 pm

Tue Nov 25, 2014 7:33 pm

.mad. wrote: does the "vice.ini" save as a different file name when run on x64 ?
"vice64.ini" for example.
when viewed in a text editor. Does it have the same header name... [VIC20]
Filename & Header is the same as in other Vice versions
mini-pac works directly without any pokes for me.
just use memory=3k.
3k gives me an "out of memory" error....
8k an "out of data" error

btw.
Your script seems to work fine on my WinVICE-2.4.6-x86-r27951 8)
Which Vice Version do you use ?

Think, i don't need theVice x64-Emu. (maybe i had made some wrong settings, but doesn't matter anymore)

Return to “The GameBase Frontend”

Who is online

Users browsing this forum: No registered users and 1 guest