[Offer] New 'General' GUI (Beta)

Anything not about Mac emulation.

Moderators: Cat_7, Ronald P. Regensburg

User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

The release 0.4.1 is almost done, but I have a doubt: I want to place icons in the Virtual Machine List, but I don't know if do I place generic icons or to customize them by the system of the VM, I'll show a picture:

The generic icons are generic. I've used the app icon as an example, since I could place the Aqua icon as the generic icon. An example:

Image

These are with specific icons (Just like VirtualBox), but it's supposed that the user can change the icon if they decide to, let's say upgrade the system (For example that Mac OS 7.6 to 8.1)

Image

I'd like to add both so that the user can choose from the Options menu if they want to use generic icons or specific icons, but I'm not sure about what to do. Any suggestions?
Hill radio station first attempt: Failure. Retrying...
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by adespoton »

Both look good to me; you could go even further and indicate which processor is being indicated, or allow people to paste their own images/select from a panel of images.

A neat trick would be to screenshot the emulator window and use that... but I'm not quite sure how you'd do this as you're not in control of the emulator processes. So allowing a user to select from a list or paste an image in might work better, and provide the generic icon by default.

For vMac the generic icon could be a Mac Plus, for Basilisk II it could be a Mac Quadra, for SheepShaver it could be a Bondi iMac, and the current generic icon works for QEMU and PearPC.
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Well, I've had some trouble :???: , I have a disaster in GitHub since 0.3.1 and what was going to be 0.5.1 has got delayed :sad: , so let's mean that the 0.4.1 was a total fail and that never existed :wink: .

I have some doubts about the making of this GUI, one (And I feel the most important) is, Do I make the app portable or installable? I guess I could do both, but first I feel it should be portable, as the emulators in general.

I need to know this because there are two ways to save settings for the VM:

1. Using an external file that will be saved in a Machine Folder (Just like VirtualPC)

2. In a config file, where all the program settings (Including the Machines ones) will be saved, so always that you create a new Mac, the settings will get into this config file.

There is a third way, but it's basically the second, but in a separate file, so when a new machine is made, this is saved in a separated file where all the machines "are saved"

The config file is in the same directory as the GUI and emulator
Hill radio station first attempt: Failure. Retrying...
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by adespoton »

It's a bit more complicated, but I'd recommend multiple files: one GUI config file that sets all the values for the GUI, and separate config files for each of the virtual machine instances that are referenced in the GUI config file.
User avatar
i886
Space Cadet
Posts: 8
Joined: Thu Mar 22, 2018 9:29 am

Re: [Offer] New 'General' GUI (Beta)

Post by i886 »

There is an error message when I press "Next >" :
Image
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Have you checked the source code or did you just download the executable? :roll: Please reply which did you download, so I can provide you the new executable if you need it

The error is a source code error, and means that it's being used a value of some type different to other. I extremely recommend you to use the source code meanwhile I complete the application.
Then I will release an executable, of course :wink:

The old releases like 0.2.x and before doesn't get updates, it's just the advance I made in VB6, and I'm programming in 2005 NET, I reccomend you to check the last version (Which is 0.2.2 in NET with some improvements, but technically is 0.3.1).

I'm in the making of 0.5.1, which is beta too, of course, and I recommend too to use the 0.5.1 as soon as I release it, I sure you the assistants will work (Both, I hope), and it will have compatibility with emulators, so you can launch them with the config you specify. :mrgreen:
Hill radio station first attempt: Failure. Retrying...
User avatar
i886
Space Cadet
Posts: 8
Joined: Thu Mar 22, 2018 9:29 am

Re: [Offer] New 'General' GUI (Beta)

Post by i886 »

I just downloaded the executable... !
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

i886 wrote:I just downloaded the executable... !
Here is the executble I'm working on (Take a preview :wink: )

Link: http://www.mediafire.com/file/d5a2u9eb3 ... _0.5.1.rar

Of course it will have errors, it's a beta, so expect things not working :wink:
Hill radio station first attempt: Failure. Retrying...
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

I am sorry for this development gap, I have been busy with other things. I'm getting to school soon so I think I'm going to make passive development. The last release I'm releasing for now is the 0.5.2 (Skipping 0.5.1 as I did provide an executable of 0.5.1 earlier and I modified the original 0.5.1 source enough to not be 0.5.1)

Another thing to mention is that I will only release another beta around 0.7.2 and 0.9.1 (I'm planning this beta until late July - mid August) so expect another gap for a while.
Hill radio station first attempt: Failure. Retrying...
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Hill radio station first attempt: Failure. Retrying...
User avatar
TheMacGuy
Student Driver
Posts: 14
Joined: Fri Aug 17, 2018 7:15 pm

Re: [Offer] New 'General' GUI (Beta)

Post by TheMacGuy »

This program does not work very well. Please fix the errors.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: [Offer] New 'General' GUI (Beta)

Post by Ronald P. Regensburg »

TheMacGuy wrote:This program does not work very well. Please fix the errors.
If you would have read this thread, you would have known that this is a rather ambitious project, still in (early) beta, that may or may not eventually result in a truly "general" GUI. At this stage, demanding fixing errors does not seem a very helpful contribution.
User avatar
TheMacGuy
Student Driver
Posts: 14
Joined: Fri Aug 17, 2018 7:15 pm

Re: [Offer] New 'General' GUI (Beta)

Post by TheMacGuy »

Ronald P. Regensburg wrote:
TheMacGuy wrote:This program does not work very well. Please fix the errors.
If you would have read this thread, you would have known that this is a rather ambitious project, still in (early) beta, that may or may not eventually result in a truly "general" GUI. At this stage, demanding fixing errors does not seem a very helpful contribution.
Thanks, Ronald P. Regensburg. :smile:
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Thanks for checking this out. Actually I haven't updated the source code in a while. The code that is in my computer actually creates and runs SheepShaver, but it cannot edit the prefs file, I'm working on it now. In a short time I'll post the new program when it will be able to read and write SheepShaver configurations. Also I need to write a guide about how to use it. (In case someone doesn't reads it, I'll merge it into the program into the Help section).
Also in case you are interested in following the "little" advances that I make on this, check it out at GitHub: https://github.com/SistemaRayoXP/VirtualMac
Check into the "releases" section
Hill radio station first attempt: Failure. Retrying...
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

I've done things here and there. The 0.5.2 source code provided up is now superseeded to 0.4.3 as there are no real advances into it. I'm releasing now 0.5.1 which now lets to create and launch a SheepShaver VM. To do this SheepShaver must be in the same folder as the program (In a next release you will be able to specify where SheepShhaver is). Also the prefs are broken since it's not that easy to mrege all prefs editor in one single app, so for now you only can boot a machine with a disk with a preinstalled version of MacOS.

Note
The way this app launches SheepShaver deletes the prefs file in the folder SheepShaver is located. Save your prefs file in a safe place since any file that was before will be deleted by a dummy/useless prefs file

I am not responsible if you lose your prefs file because you didn't bother to read

Source: https://github.com/SistemaRayoXP/Virtua ... /tag/0.5.1
Executable: http://www.mediafire.com/file/b5w4d1rz2 ... 200.5.1.7z
Hill radio station first attempt: Failure. Retrying...
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Hello, here I am again.

This time I want to ask about the Basilisk II config file. I am creating GUI elements for every config line (unlike the included GUI which only contains most used options, but not all). I've been basing the "config-line detector" in the GitHub document available here. This file actually has more lines than those I initially thought that existed, and I've added the multiplatform ones which I was missing. But right now, in the config file there are some lines which don't appear to be documented there. Specifically:

Code: Select all

etherpermanentaddress
ethermulticastmode
routerenabled
ftp_port:list
portfile0
portfile1
If you could help me telling me what these lines do exactly, or at least a little description of what do they do, it would be greatly appreciated

Also, I wanted to include help inside the emulator, and there's no better help than the one in the guides here, so I think I could include a browser control that opens https://emaculation.com/doku, so when the user needs help the help form will redirect to the guides, where they can get updated info always that they need it.
Hill radio station first attempt: Failure. Retrying...
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Sorry for my ignorance, I was being too lazy to check the source code to see what those lines do exactly.

So:

Code: Select all

etherpermanentaddress
^This one makes permanent the Network Address (MAC) of the emulated card.
Valid values are Boolean("true"/"false")

Code: Select all

ethermulticastmode
^This one sets how to multicast packets
Valid values are Integers of 32 bits(Not sure what goes here)

Code: Select all

routerenabled
^This one enables (or disables) the Router module of Basilisk
Valid values are Boolean("true"/"false")

Code: Select all

ftp_port:list
^This one sets the open ports for FTP (Only used if the ether mode is set to router)
Valid values are String([Port1Number],[Port2Number][...])

Code: Select all

portfile0
^This one sets the output file for the Serial Port01 (Only used if selected to redirect port to file)
Valid values are String([Path to file])

Code: Select all

portfile1
^This one sets the output file for the Serial Port 1 (Only used if selected to redirect port to file)
Valid values are String([Path to file])

Also found even more lines to detect:

Code: Select all

etherguid
^This one uses the given GUID of the Ethernet device to use (It's like selecting manually the Ethernet device to connect to)
Valid values are String([GUID])

Code: Select all

scsiX
^This one "links" a physical SCSI device directly to MacOS. The X is replaced with numbers from 0 to 6, so you can connect 7 SCSI devices to MacOS
Valid values are String(["Vendor"]["Model"])

Code: Select all

redir
^This one defines a port to be forwarded from the host to the client.
Valid values are String([udp/tcp]:[port in host to be forwarded]:[IP of the Mac]:[port forwarded in the cleint])

Code: Select all

jitblacklist
^This one blacklists opcodes from translation
Valid values are String([Don't know what goes here, I'm guessing CPU instructions?])
Hill radio station first attempt: Failure. Retrying...
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: [Offer] New 'General' GUI (Beta)

Post by Cat_7 »

Some of these are no longer used in more recent Basilisk builds.
For example, the etherguid was only used in the Basilisk builds for Windows. Such as the 142 build. You could set the etherguid of a tap device to use for networking.

Best,
Cat_7
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by adespoton »

^This one sets how to multicast packets
Valid values are Integers of 32 bits(Not sure what goes here)
This should actually be the Integer representation of a 32-bit bytemask I believe. That way, you can set the mask for the multicast address that all LAN multicast packets will need to use.

There's virtually no situation these days in which you'd actually want to do this.
User avatar
SistemaRayoXP
Tinkerer
Posts: 82
Joined: Fri Oct 13, 2017 4:34 pm
Location: Mexico
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by SistemaRayoXP »

Thanks for the info, Cat_7 and adespoton.

I want to apologize with i886 for the Smilie in my post (I didn't understood what it meant, I thought it was wearing glasses and reading or so, sorry)

I want to thank you so far for helping me with feedback and info with this weird little project I had. I really appreciate your feedback.

I've had several troubles while making this, mainly due to lack of time (I spend most of the time on school and homework). Also, I'm translating the app to other languages, so if anyone wants to help me with translating several strings, or suggesting an improvement over the current ones, it would be really appreciated.

Now I need some info about QEMU and its switches (as you may have already guessed, only the qemu-system-ppc ones). I can't found any kind of info on the net well documented. Many of what I found is outdated by now, deprecated or incomplete. If you could tell where to direct my search scope, it would be great.

Thanks so far to the very nice E-Maculation community :mrgreen:
Hill radio station first attempt: Failure. Retrying...
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: [Offer] New 'General' GUI (Beta)

Post by Cat_7 »

Hi,

Qemu is documented extensively:
https://qemu.weilnetz.de/doc/qemu-doc.html#Introduction
While much of that info might not apply to qemu-system-ppc, many other parts do.
I wonder if anyone would really know everything there is to know about qemu, we certainly do not ;-)

If you want to create a GUI for Qemu, make sure that you include an option to manually edit the command line that will be executed so changes to qemu options can still be used. My suggestion would be to start small: invocation of machine model, cpu, memory, disks and boot order, basic networking, display. Then add stuff when you notice an omission.

Best,
Cat_7
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: [Offer] New 'General' GUI (Beta)

Post by adespoton »

Something I'd recommend as well is to have an editable options mapping list (also used for localization) so that anyone can add new options and have them show up in the UI. This also allows you to comment out options if you want to simplify the UI.
Post Reply