Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[7.0RC2] Adding a boot floppy disk makes the config to be renamed #1564

Closed
jman-schief opened this issue Dec 31, 2024 · 6 comments
Closed

[7.0RC2] Adding a boot floppy disk makes the config to be renamed #1564

jman-schief opened this issue Dec 31, 2024 · 6 comments
Assignees
Labels

Comments

@jman-schief
Copy link

jman-schief commented Dec 31, 2024

Describe the bug
If I load a configuration and then add a floppy to boot the Amiga, my configuration is renamed according to the floppy disk used

To Reproduce
Steps to reproduce the behavior:

  1. Start Amiberry, click on Configurations, load a custom config

  2. Click on Floppy Drives, add a floppy in DF0: (es. a Workbench 3.1 disk)

  3. Go back to Configurations, the configuration name is now changed to something (e.g. "Workbench3.1 Workbench"), the new name is not saved

Expected behavior
I'd like my configurations to not be renamed under any circumstances (I didn't test other conditions that could rename automatically a configuration)

Screenshots
none

Desktop (please complete the following information):

  • OS: Debian/trixie

  • Version: Amiberry 7.0 RC2

Additional context
none

@giantclambake
Copy link

giantclambake commented Jan 1, 2025

Confirmed, but it's actually a little bit more nuanced...

  • Launch amiberry, GUI -> Configurations panel --> select/load AmigaTestKit.uae //configured to boot AmigaTestKit.adf

ex

  • Goto Floppy panel -> Eject or merely replace AmigaTestKit.adf in DF0: with Galaga500.adf

  • Go back to Configurations panel....

ex1

Note: Name: has changed to that of image in DF0: ...but... Description: is unchanged

  • Click on Start --> emulation boots the Galaga500.adf file ....

Seeing the description field unchanged, gave me pause to consider if the currently loaded config.uae is being honored...

  • Launch amiberry, GUI -> Configurations panel --> select/load A2000.uae //HDD setup, no image in DF0:
  • Goto Floppy panel -> select/load Galaga500.adf into DF0:
  • Go back to Configurations panel --> Name: has changed to that of image in DF0:
  • Click on Start --> emulation has a GURU trying to boot Galaga500.adf //this is settings in A2000.uae no doubt, likely sus
  • LMB to ack GURU, emulation now boots the Galaga500.adf file successfully

So it seems the currently loaded config.uae is being honored, just the Name: field in Configurations panel is being changed... this seems a bit hinky at first glance ...ie; if a config.uae file is loaded, the name of that config in the GUI should not change, if you load a (different) floppy disk image. Note this happens with config.uae files associated with whdload files as well...

the new name is not saved

That could only happen if you click on the Save button in the Configurations panel...

This all said ...somehow this comes across to me as procedural in essence --- once user has arrived at a configuration they wish to save, there shouldn't really be any need (or want) to change that configuration wrt loading DF0: ....ie; as exampled above -- the config.uae file AmigaTestKit.uae is meant to boot AmigaTestKit.adf .... it would never make sense to change the image loaded into DF0: to anything else....(and in the A2000 case, one would insert floppy image after the HDD boot is complete)

@jman-schief
Copy link
Author

@giantclambake thanks for the additional context.

once user has arrived at a configuration they wish to save, there shouldn't really be any need (or want) to change that configuration wrt loading DF0:

We probably see Amiberry configs in a slightly different way. For me they represent the physical Amiga I have right now in front of me i.e. CPU, RAM, hard drive (and exp. cards). Floppies are not part of my fixed config and can change all the time as I load different software.

@giantclambake
Copy link

We probably see Amiberry configs in a slightly different way. For me they represent the physical Amiga I have right now in front of me i.e. CPU, RAM, hard drive (and exp. cards). Floppies are not part of my fixed config and can change all the time as I load different software.

Thanks for explaining ~ it was how I suspected you viewed things (given what you were doing =)

The way I see it, when amiberry is installed with all required kickstart roms, and you start a 'bare' emulation (ie; the command amiberry -G ), amiberry will start as an A500 with no floppy disk installed. This is figuratively the Amiga you have in front of you, and is akin to turning on a physical A500 with no disk in the drive.

Similarly, if you insert a (bootable, A500 compatible) floppy image into DF0: inside amiberry and start the emulation, it behaves the same as if you stick a floppy disk in an A500 and turn on the power --- this is the base builtin amiberry config...ie; a basic OCS A500 with 512k chip and 512k slow ram.

Not all A500 compatible floppy disk (images) will work on this emulated A500 base config ~ for example, some require ECS or full ECS chipset, some require 1Mb chipram (some require that + 512k), and some require 512k chip (no slowram). For these titles to work in amiberry, you either have to access the GUI to make required changes, every time you find a floppy image like this, or, create a config.uae file for such a disk, to change 'the Amiga in front of you' automatically. With a real A500, this is like having a rom switcher board, ram switch...and the ability to swap out the physical chipset on the fly.. 8)

As this is so, the logic is such that you do not need a config.uae file, for a floppy image that runs correctly with the builtin base A500 config amiberry uses. That being said, there will be many floppy images that do require changes to the base A500 config, to get them to work, and as the need to do that is 'quite likely', this is why amiberry fills out the Name: field in the Configurations panel, with the name of the currently loaded floppy image in DF0: ... it saves the user time/effort when it comes to creating such config.uae files, by auto-filling the filename...

The A2000 config.uae I mention above, is a good case in example -- when I load that config into amiberry, it is no longer a basic A500 as explained above, but instead a bigbox A2000 machine 'in front of me', with bootable HDD setup. I can start that emulation to Workbench boot, and load floppy images (F12 to use GUI), and they appear in the emulation as they should ....however...

... if I load the A2000 config, and then go to the Floppy drives and load a (bootable, A500 compatible) image into DF0: and start the emulation, amiberry does what the real hardware would do...ie; boot from the floppy disk (unless you grab early kickstart menu and tell it to boot from DH0: instead)....and likely crash & burn because you didn't do what you had to do in real life...ie; grab early kickstart, disable expansions etc, before booting the floppy.... TBH, it made me chuckle when the test above threw a Guru. because that's exactly what my real A2000 would've done in the same circumstances ;)

I never noticed it was changing the Name: field doing this test in the past, as it works as expected (and I didn't recheck Configurations panel before Start)....in practice, you don't see it ;)

The only real way to change the base amiberry 'Amiga model' to be something other than basic A500, is to create a default.uae config file, which defines what Amiga 'in front of you' gets emulated, when you use the amiberry -G command. You can define any Amiga model/configuration, and save the setup as default.uae, and amiberry will always use that, instead of the built defaults...

....however, this can often interfere with the whdbooter process (and of course compatibility with floppy disk images), and is special case usage...ie; amiberry -G effectively boots an A1200 machine....AmiKit uses this approach - default.uae is the actual uae config file used by the emulator, to run the AmiKit Workbench environment.

The way I see it, any floppy disk image, can be run on any Amiga machine makeup, using a config.uae file. If you're using a Workbench environment...ie; ClassicWB, Pimiga, others... you have to start amiberry first, to let it become (emulate) the Amiga machine in front of you...ie; 68040/JIT/AGA/FASTRAM/RTG/CD/MIDI...(with the Disk Swapper pretending to be a real small gotek drive =) Notice there, I called it an (emulated) Amiga machine, not a specific model..

Once this 'machine' is up and running, normal practice is to use F12 to bring up the amiberry GUI, and either use the Floppy drives or Disk Swapper panels to load floppy images, and then Resume the emulation.

Of course, it shouldn't change the Name: field in Configurations when loading a floppy image, I agree, but your usage context I hadn't really considered before, so thanks for sharing =)

HNY!

@giantclambake
Copy link

@midwan .... did you know it did this?...from above..

Click on Start --> emulation has a GURU trying to boot Galaga500.adf //this is settings in A2000.uae no doubt, likely sus
LMB to ack GURU, emulation now boots the Galaga500.adf file successfully

...that didn't jive with my walkman, so I retested ....ie; how did it recover?....I noticed the cursor color changed from orange (ks2.x) to white (ks1.3) ....after the Guru reboot. It was, as explained, something to do with the A2000.uae config being loaded (ks2.x), and Galaga500.adf being in DF0: before hitting Start. This instigates the Guru crash (Galaga unhappy with machine setup), but after LMB and reset, amiberry loads base/default config, and not last_used/loaded config (A2000.uae), and hence the switch of rom image (and machine type, all expansions are gone, it's reverted to base config)...

...that's either a bug, or a fallback feature...lol....

HNY!

@midwan midwan self-assigned this Jan 2, 2025
@midwan midwan added the bug label Jan 2, 2025
@midwan
Copy link
Collaborator

midwan commented Jan 2, 2025

This is a bug, probably created with the recent changes to auto-detect inserted media and set the last active config name to those. I'll get it fixed with priority.

@midwan midwan closed this as completed in cf5e541 Jan 4, 2025
@midwan
Copy link
Collaborator

midwan commented Jan 4, 2025

Fixed now.
The logic will check if a config file was loaded, and if so, will not set the config name based on inserted media from the GUI.
Note: this is only for operations done from the GUI - I haven't checked command line related functionality.

If no config file was loaded earlier, then the logic remains the same - media inserted will automatically set the Config Name value, to make it easier to save a config.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants