Cool

Here's what I've found :
1. ocx dependenciesClicking on the "Advanced" tab of the gui, I receive script errors (339), saying I need some .ocx files my (virtualized) Windows XP didn't have :
tabctl32.ocx
comctl32.ocx
... I added them manually in Windows/System32 and got no more errors.
Maybe there's a way to install these files with the PearPC VBGui (mind the distribution rights) ?
If you can't provide/install these files with your project, you may still provide some link to a site that offers them for download :
-
http://www.ocxdump.com/download-ocx-fil ... nload.html-
http://www.ocxdump.com/download-ocx-fil ... nload.html2. dangerous pathI installed your program with default path (C:\PearPC VBGUI)
As I know PearPC can be puzzled with "exotic" characters in pathes, I suggest you to avoid the space in your default path installation.
Consider using an underscore : "C:\PearPC_VBGUI".
Same thing with the virtual machine's name :
I created a machine named "PearPC test".
It runs OK if I launch it from PearPC VBGui's main window.
I was very excited to see your program can create a clean shortcut on my desktop.
...But disappointed as PearPC wasn't launching from it...
As I noticed, the shortcut's launching a batch file, calling
- Code: Select all
ppc.exe PearPC test.cfg
Problem : ppc.exe doesn't "see" the config file because it contains a space character.
Solution : force ppc.exe to mind the space by adding quotation marks :
- Code: Select all
ppc.exe "PearPC test.cfg"
... And all should be well
3. home sweet homeI noticed your program has created its binary configuration file (PearPC VBGUIVFG.ppc) and PearPC's log (output.log) in drive C's root folder.
I really don't like programs that create files in reserved places. You surely can have them created in program's folder
4. Size doesn't matterYou had a very good idea adding download buttons to get 3Gib and 6Gib blank HD imagefiles, but...
As you rely on an external server, and as it could be unreachable (downtime/file deleted/no internet access),
you may directly provide these files with your program. As they're compressed, it will only add ~6 kib to you package.
I don't know you coding/scripting skills, but consider, as an alternative, coding a little tool that is able to create any sized blank hd imagefile.
5. tabsThis one is only cosmetic :
I really appreciate your efforts to add controls for the extra parameters I suggested

Maybe you can do even better, reorganizing the parameters in specific tabs.
Here's some kind of "plan" you may follow to get a nearly-perfect interface :
[Main window]

- PearPC VBGui interface idea : main window
- PearPC_VBGui_main.png (11.99 KiB) Viewed 12588 times
[Config window that appears when clicking on the "config" button]

- PearPC VBGui interface idea : config window
- PearPC_VBGui_config.png (14.35 KiB) Viewed 12588 times
... The images speak for themselves (sorry I didn't take time to create them pretty)

To complete my plan, here's what should be found in specific tabs :
First tab : Boot
fieldtype: select prom_bootmethod = "auto" or "select" or "force"
(only active if prom_bootmethod = "force")
fieldtype: file prom_loadfile = "path\somefile.bin"
(only active if prom_bootmethod = "force")
fieldtype: text prom_env_bootpath = "diskx:x"
fieldtype: select prom_env_machargs = "-s" or "-c" or "-v"
tab 2 : Hotkeys
fieldtype: text key_compose_dialog = "F11"
fieldtype: text key_toggle_mouse_grab = "Right-Alt+Ctrl"
fieldtype: text key_toggle_full_screen = "F12"
tab 3 : Video
fieldtype: file prom_driver_graphic = "path/video.x"
fieldtype: checkbox ppc_start_full_screen = "0" or "1"
fieldtype: slider AND text redraw_interval_msec = "200" ## Must be >=10 AND <=500
the ppc_start_resolution parameter should be exploded :
"WidthxHeightxBitDepth@redraw_interval_msec"fieldtype: text width = "x"
fieldtype: text height = "y"
fieldtype: radio BitDepth = "15" or "32"
fieldtype: slider AND text redraw_interval_msec = "z" ## Must be >=10 AND <=500, default = 60
tab 4 : Disks
fieldtype: checkbox pci_ide0_master_installed = "1" or "0"
(only active if pci_ide0_master_installed = "1")
fieldtype: select pci_ide0_master_type = "hd" or "cdrom" or "nativecdrom"
(only active if pci_ide0_master_installed = "1")
fieldtype: file pci_ide0_master_image = "path/somefile.xxx"
fieldtype: checkbox pci_ide0_slave_installed = "1" or "0"
(only active if pci_ide0_slave_installed = "1")
fieldtype: select pci_ide0_slave_type = "hd" or "cdrom" or "nativecdrom"
(only active if pci_ide0_slave_installed = "1")
fieldtype: file pci_ide0_slave_image = "path/somefile.xxx"
tab 5 : Network
fieldtype: checkbox pci_3c90x_installed = "0" or "1"
(only active if pci_3c90x_installed = "1")
fieldtype: text pci_3c90x_mac = "de:ad:ca:fe:12:34"
fieldtype: checkbox pci_rtl8139_installed = "0" or "1"
(only active if pci_rtl8139_installed = "1")
fieldtype: text pci_rtl8139_mac = "de:ad:ca:fe:12:35"
tab 6 : CPU
fieldtype: radio or select or even text (for advanced pvr testing) cpu_pvr = "0x00088302" (G3) or "0x000c0201" (G4)
tab 7 : Memory
fieldtype: file nvram_file = "path/nvramfile"
fieldtype: text page_table_pa = "104857600" or "0x00300000" or blank (default)
fieldtype: select and/or slider and text memory_size = "0x8000000"
Here are the usual values :
0x4000000 ## 64 MiB
0x8000000 ## 128 MiB
0x10000000 ## 256 MiB
0x18000000 ## 384 MiB
0x20000000 ## 512 MiB
0x40000000 ## 1024 MiB
0x60000000 ## 1536 MiB
0x80000000 ## 2048 MiBtab 8 : USB
fieldtype: checkbox pci_usb_installed = "0" or "1"
...
Mmm... I may appear as a bugger, I know
