summaryrefslogtreecommitdiffstats
path: root/bin/G-FSUAE/G-FS-UAE/.src/FMain.class
diff options
context:
space:
mode:
Diffstat (limited to 'bin/G-FSUAE/G-FS-UAE/.src/FMain.class')
-rw-r--r--bin/G-FSUAE/G-FS-UAE/.src/FMain.class663
1 files changed, 663 insertions, 0 deletions
diff --git a/bin/G-FSUAE/G-FS-UAE/.src/FMain.class b/bin/G-FSUAE/G-FS-UAE/.src/FMain.class
new file mode 100644
index 0000000..dc5e5b0
--- /dev/null
+++ b/bin/G-FSUAE/G-FS-UAE/.src/FMain.class
@@ -0,0 +1,663 @@
+' Gambas class file
+
+Private processo As Process
+Private pFSUAE As Process
+Private server As Process
+onoff As Integer
+Public inShader As String
+
+Public Sub _new()
+
+End
+
+Public Sub Form_Open()
+Me.Center
+setting.rSetting
+Try popola_config
+Try popola_shader
+If Exist(User.Home &/ ".gfsuae/") Then
+ Else
+Try Shell ("mkdir " & User.Home & "/.gfsuae")
+
+Endif
+End
+
+Public Sub Button2_Click()
+Dim tconf As String
+
+scrivi.sConfig
+Dialog.Title = "Choose a Name for FS-UAE Configuration file"
+Dialog.Filter = ["*.config", ".config file"]
+Dialog.Path = textbox1.text
+
+If Dialog.SaveFile() Then Return
+ File.Save(Dialog.Path & ".config", scrivi.valori)
+ popola_config
+ Catch
+ Message.Info(Error.Text)
+
+End
+
+Public Sub Button4_Click()
+
+ Dialog.title = "Choose a default Configurations directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox1.text = Dialog.Path
+ popola_config
+
+End
+
+Public Sub Button5_Click()
+
+ Dialog.title = "Choose a default Controllers directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox2.text = Dialog.Path
+End
+
+Public Sub Button6_Click()
+
+ Dialog.title = "Choose a default Flash Memory directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox3.text = Dialog.Path
+
+End
+
+Public Sub Button7_Click()
+
+ Dialog.title = "Choose a default Floppy Overlays directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox4.text = Dialog.Path
+
+End
+
+Public Sub Button8_Click()
+
+ Dialog.title = "Choose a default Kickstarts directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox5.text = Dialog.Path
+
+End
+
+Public Sub Button10_Click()
+
+Dialog.title = "Choose a default Save States directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox7.text = Dialog.Path
+
+End
+
+Public Sub Button11_Click()
+
+ Dialog.title = "Choose a Amiga 500/600 kickstart"
+ Dialog.Filter = ["*.rom;*.zip", "kickstart files"]
+ Dialog.Path = textbox5.text
+ If Dialog.OpenFile() Then Return
+ textbox8.text = Dialog.Path
+
+End
+
+Public Sub Button12_Click()
+
+ Dialog.title = "Choose a Amiga 1200 or up kickstart"
+ Dialog.Filter = ["*.rom;*.zip", "kickstart files"]
+ Dialog.Path = textbox5.text
+ If Dialog.OpenFile() Then Return
+ textbox9.text = Dialog.Path
+
+End
+
+Public Sub Button13_Click()
+
+ Dialog.title = "Choose a CD32 rom"
+ Dialog.Filter = ["*.rom;*.zip", "CD32 rom"]
+ Dialog.Path = textbox5.text
+ If Dialog.OpenFile() Then Return
+ textbox10.text = Dialog.Path
+
+End
+
+Public Sub Button23_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox20.text = Dialog.Path
+
+End
+
+Public Sub Button19_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox16.text = Dialog.Path
+
+End
+
+Public Sub Button20_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox17.text = Dialog.Path
+
+End
+
+Public Sub Button21_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox18.text = Dialog.Path
+
+End
+
+Public Sub Button18_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga swap disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox15.text = Dialog.Path
+
+End
+
+Public Sub Button14_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga swap disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox11.text = Dialog.Path
+
+End
+
+Public Sub Button15_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga swap disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox12.text = Dialog.Path
+
+End
+
+Public Sub Button16_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga swap disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox13.text = Dialog.Path
+
+End
+
+Public Sub Button17_Click()
+
+ Dialog.title = "Choose a adf/adz/dms/ipf/zip Amiga swap disk image"
+ Dialog.Filter = ["*.adf;*.adz;*.dms;*.ipf;*.zip", "Amiga disk image"]
+ Dialog.Path = textbox21.text
+ If Dialog.OpenFile() Then Return
+ textbox14.text = Dialog.Path
+
+End
+
+Public Sub Button24_Click()
+ popola_config
+ Dialog.title = "Choose FS-UAE configuration file to load"
+ Dialog.Filter = ["*.config", ".config file", "*.fs-uae", ".fs-uae file"]
+ Dialog.path = textbox1.text
+ If Dialog.OpenFile() Then Return
+ combobox5.text = Dialog.Path
+
+ leggi.leggi_conf
+
+End
+
+Public Sub Button1_Click()
+
+onoff = 0
+start_emu
+
+End
+
+Public Sub Button3_Click()
+
+ Try embEmbedder.Discard
+ Try processo.Kill
+ Try server.kill
+
+End
+
+Public Sub Button9_Click()
+
+ Dialog.title = "Choose a default Shaders directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox33.text = Dialog.Path
+ combobox10.clear
+ popola_shader
+
+End
+
+Public Sub RadioButton4_Click()
+
+ If RadioButton4.value = True Then ComboBox1.text = "A1200"
+
+End
+
+Public Sub RadioButton3_Click()
+
+ If RadioButton3.value = True Then ComboBox1.text = "A500"
+
+End
+
+Public Sub Button22_Click()
+
+ textbox20.Clear
+
+End
+
+Public Sub Button25_Click()
+
+ textbox16.Clear
+
+End
+
+Public Sub Button26_Click()
+
+ textbox17.Clear
+
+End
+
+Public Sub Button27_Click()
+
+ textbox18.Clear
+
+End
+
+Public Sub Button28_Click()
+
+ textbox15.Clear
+
+End
+
+Public Sub Button29_Click()
+
+ textbox11.Clear
+
+End
+
+Public Sub Button30_Click()
+
+ textbox12.Clear
+
+End
+
+Public Sub Button31_Click()
+
+ textbox13.Clear
+
+End
+
+Public Sub Button32_Click()
+
+ textbox14.Clear
+
+End
+
+Public Sub Button33_Click()
+
+ Dialog.title = "Choose a hdf Amiga Hard Disk Image"
+ Dialog.Filter = ["*.hdf;*.zip", "Amiga Hard Disk Image"]
+ If Dialog.OpenFile() Then Return
+ textbox6.text = Dialog.Path
+
+End
+
+Public Sub Button35_Click()
+
+ Dialog.title = "Choose a hdf Amiga Hard Disk Image"
+ Dialog.Filter = ["*.hdf;*.zip", "Amiga Hard Disk Image"]
+ If Dialog.OpenFile() Then Return
+ textbox19.text = Dialog.Path
+
+End
+
+Public Sub Button34_Click()
+
+ textbox6.clear
+
+End
+
+Public Sub Button36_Click()
+
+ textbox19.clear
+
+End
+
+Public Sub Button37_Click()
+
+ Dialog.title = "Mount Folder as drives"
+ If Dialog.SelectDirectory() Then Return
+ textbox6.text = Dialog.Path
+
+End
+
+Public Sub Button38_Click()
+
+ Dialog.title = "Mount Folder as drives"
+ If Dialog.SelectDirectory() Then Return
+ textbox19.text = Dialog.Path
+
+End
+
+Public Sub Button40_Click()
+
+ Dialog.title = "Mount Folder as drives"
+ If Dialog.SelectDirectory() Then Return
+ textbox22.text = Dialog.Path
+
+End
+
+Public Sub Button39_Click()
+
+ Dialog.title = "Choose a hdf Amiga Hard Disk Image"
+ Dialog.Filter = ["*.hdf;*.zip", "Amiga Hard Disk Image"]
+ If Dialog.OpenFile() Then Return
+ textbox22.text = Dialog.Path
+
+End
+
+Public Sub Button41_Click()
+
+ textbox22.clear
+
+End
+
+Public Sub Form_Close()
+
+ Try embEmbedder.Discard
+ setting.wSetting
+
+End
+
+Public Sub Slider4_Change()
+
+ label6.text = "Floppy Drive Sound " & Slider4.value
+
+End
+
+Public Sub Slider3_Change()
+
+ label21.text = "Dark " & slider3.value
+
+End
+
+Public Sub Slider2_Change()
+
+ label22.text = "Light " & Slider2.value
+
+End
+
+Public Sub Slider1_Change()
+
+ frame3.text = "Emulation Accurancy " & Slider1.value
+
+End
+
+Public Sub Button42_Click()
+
+ Dialog.title = "Choose Amiga CD32/CDTV Image"
+ Dialog.Filter = ["*.cue;*.iso", "CUE/ISO Image"]
+ If Dialog.OpenFile() Then Return
+ textbox23.text = Dialog.Path
+
+End
+
+Public Sub Button45_Click()
+
+ Dialog.title = "Choose Amiga CD32/CDTV Image"
+ Dialog.Filter = ["*.cue;*.iso", "CUE/ISO Image"]
+ If Dialog.OpenFile() Then Return
+ textbox24.text = Dialog.Path
+
+End
+
+Public Sub Button43_Click()
+
+ 'If Exist(User.Home &/ ".gfsuae/fs-uae-netplay-server.py") Then
+ 'Else
+ Try Copy "fs-uae-netplay-server.py" To User.Home &/ ".gfsuae/fs-uae-netplay-server.py"
+ 'Endif
+
+ server = Exec ["python", User.Home &/ ".gfsuae/fs-uae-netplay-server.py", "--port=" & textbox25.text, "--player=" & combobox4.text]
+
+ If server.state = 1 Then
+ frame15.text = "Server ON"
+ Button48.enabled = True
+ End If
+End
+
+Public Sub start_emu()
+Dim fileConf, fuscreen, net, cuspar, videof, textf, fsmode, xwin, ywin, xfus, yfus, vsmode, other_emb, shaders, scX, scY, alX, alY, translations As String
+scrivi.sConfig
+
+
+ Try embEmbedder.Discard
+ Try processo.Kill
+ Try server.kill
+ Wait
+
+File.Save(User.Home &/ ".gfsuae/test.config", scrivi.valori)
+fileconf = User.Home &/ ".gfsuae/test.config"
+
+ If CheckBox1.value = True Then
+ fuscreen = " --fullscreen=1"
+ Else
+ Fuscreen = " --fullscreen=0"
+ Endif
+
+ videof = " --video-format=" & combobox6.text
+ textf = " --texture-format=" & combobox7.text
+ fsmode = " --fullscreen-mode=" & combobox8.text
+ xwin = " --window-width=" & textbox29.Text
+ ywin = " --window-height=" & textbox30.Text
+ xfus = " --fullscreen-width=" & textbox31.Text
+ yfus = " --fullscreen-height=" & textbox32.Text
+ vsmode = " --video-sync-method=" & combobox9.text
+ cuspar = " " & textbox28.text
+
+ If onoff = 1 Then
+ net = " --netplay-server=" & textbox27.text & " --netplay-tag=" & textbox26.text & " --netplay-port=" & textbox25.text
+ Else If onoff = 0 Then
+ net = ""
+ Endif
+
+ If CheckBox1.value = False And checkbox12.value = True Then
+ xwin = " --window-width=500"
+ ywin = " --window-height=450"
+ other_emb = " --grab-input=0"
+ Endif
+
+ scX = " --scale-x=" & (spinbox1.value / 10)
+ scY = " --scale-y=" & (spinbox2.value / 10)
+ alX = " --align-x=" & (spinbox3.value / 10)
+ alY = " --align-y=" & (spinbox4.value / 10)
+
+ If checkbox13.value = True Then
+ translations = " --localization=0"
+ Else
+ translations = " --localization=1"
+ Endif
+
+ If fileconf <> "" Then
+ processo = Shell "fs-uae " &/ fileconf & videof & textf & fsmode & xwin & ywin & xfus & yfus & vsmode & other_emb & scX & scY & alX & alY & translations & " --bsdsocket-library=1" & cuspar & net & " --end-config"
+ Else If fileconf = "" Then
+ Message.Warning("You must make and select a file .config to load FS-UAE", "Ok")
+ End If
+
+ If CheckBox1.value = False And checkbox12.value = True Then
+ Wait 1
+ inside
+ End If
+End
+
+Public Sub Button46_Click()
+If textbox27.text <> "" Then
+ onoff = 1
+ start_emu
+Else
+ Message.Warning("You must set a ip adress or host name in Net Play tab", "Ok")
+ TabStrip1.index = 5
+ textbox27.SetFocus
+End If
+End
+
+Public Sub Button48_Click()
+
+ Try server.kill
+ If server.state = 2 Then
+ frame15.text = "Server OFF"
+ Button48.enabled = False
+ End If
+
+End
+
+Public Sub Slider5_Change()
+
+ label23.text = "Floppy speed " & Slider5.value
+
+End
+
+Public Sub popola_config()
+Dim lFile As String
+Dim ifile As Integer
+
+combobox5.Clear
+
+For Each lFile In Dir(textbox1.text, "*.config")
+ combobox5.add(textbox1.text & "/" & lfile, ifile)
+Next
+
+For Each lFile In Dir(textbox1.text, "*.fs-uae")
+ combobox5.add(textbox1.text & "/" & lfile, ifile)
+Next
+End
+
+Public Sub popola_shader()
+
+Dim lFile As String
+Dim ifile As Integer
+
+combobox10.add("None")
+
+If textbox33.text <> "" Then
+ inShader = textbox33.text
+ Else
+ inShader = "/usr/share/fs-uae/shaders/"
+Endif
+
+For Each lFile In Dir(inShader, "*.shader")
+ combobox10.add(Replace(lfile, ".shader", ""), ifile + 1)
+Next
+
+End
+
+
+Public Sub Button49_Click()
+
+ Dialog.title = "Choose a default Adf/Ipf directory"
+ If Dialog.SelectDirectory() Then Return
+ textbox21.text = Dialog.Path
+
+End
+
+Public Sub ComboBox5_Click()
+leggi.leggi_conf
+leggi.leggi_conf
+End
+
+Public Sub Button44_Click()
+
+ textbox23.clear
+
+End
+
+Public Sub Button47_Click()
+
+ textbox24.clear
+
+End
+
+Public Sub Slider6_Change()
+
+ label30.text = "Picasso 96 RAM " & Slider6.value
+
+End
+
+Public Sub inside()
+
+ Dim aHandle As Integer[]
+ Dim iHandle As Integer
+ Dim dWindow As DesktopWindow
+ Dim a As Integer
+
+ For Each dWindow In Desktop.Windows
+ If dWindow.name Like "Amiga*" Then
+ a = dWindow.Id
+ Endif
+
+ Next
+
+ TabStrip1.index = 8
+ Try embEmbedder.Embed(a)
+
+ If Error Then Message.Warning(Error.Text)
+
+End
+
+Public Sub embEmbedder_Error()
+
+ Message.Error(("Embed error"))
+
+End
+
+
+Public Sub CheckBox1_Click()
+
+ If CheckBox1.value = True Then
+ checkbox12.Enabled = False
+ Else
+ checkbox12.Enabled = True
+ End If
+
+End
+
+Public Sub ComboBox10_Change()
+
+ If combobox10.text <> "None" Then CheckBox3.value = False
+
+End
+
+
+Public Sub Button50_Click()
+ combobox10.clear
+ popola_shader
+
+End
+
+Public Sub Button51_Click()
+ Dim controlla As Boolean
+ Try Copy "fs-uae-gamepad-config.py" To User.Home &/ ".gfsuae/fs-uae-gamepad-config.py"
+ Exec ["python", User.Home &/ ".gfsuae/fs-uae-gamepad-config.py"] To controlla
+ Wait
+
+ If controlla = True And Exist(User.Home &/ "Documents/FS-UAE/Controllers") Then
+ textbox2.text = User.Home &/ "Documents/FS-UAE/Controllers"
+ Endif
+
+End