Menu

#250 Statusbar shows current machine

closed-accepted
nobody
None
5
2011-04-18
2011-03-13
No

I think it would be useful to identify the currently emulated machine in a visible area, specially after loading a snapshot.

The attached patch identify the machine in the status bar.

Any comments or suggestions?

Discussion

  • Sergio Baldoví

    Sergio Baldoví - 2011-03-13
     
  • Fredrick Meunier

    I can see that some would like it (though I don't think I'd use it myself), it does raise the question of all the other peripherals and mass storage etc. that can be part of the machine definition and which doesn't seem to be present in very successful emulators (e.g. VMWare doesn't try to tell you about the virtual machine config in the status bar). It probably would be nice to have some kind of notification when the machine or its configuration changes on a snapshot load though (we do that for joysticks at least).

     
  • Sergio Baldoví

    Sergio Baldoví - 2011-03-15

    >I can see that some would like it (though I don't think I'd use it myself),

    Just wanted to launch an open discussion. I'd actually prefer a short description like Spectaculator (e.g. +2A instead of Spectrum +2A).

    >it does raise the question of all the other peripherals and mass storage etc. that can be part of the machine definition and which doesn't seem to be present in very successful emulators (e.g. VMWare doesn't try to tell you about the virtual machine config in the status bar)

    Not exactly the same. In VMWare you know what machine is starting, however, a snapshot load is like a Kinder Egg, specially in games. Althought can be guessed through menus, the machine name could be informative.

    > It probably would be nice to have some kind of notification when the machine or its configuration changes on a snapshot load though (we do that for joysticks at least).

    Preferably in a non intrusive way, bearing tour mode in mind. What kind of message/action (about joysticks) are you thinking?

     
  • Fredrick Meunier

    >> it does raise the question of all the other peripherals and mass
    >> storage etc. that can be part of the machine definition and which
    >> doesn't seem to be present in very successful emulators (e.g.
    >> VMWare doesn't try to tell you about the virtual machine config
    >> in the status bar)
    >
    > Not exactly the same. In VMWare you know what machine is
    > starting, however, a snapshot load is like a Kinder Egg, specially
    > in games. Althought can be guessed through menus, the machine
    > name could be informative.

    A snapshot is more like a VMWare Appliance IMO <http://www.vmware.com/appliances/>, it's just that with emulators your are more likely to download stuff from the internet. I feel that it would be better to allow users to configure a few machine images they can select from on startup rather than the forest of options and apply on preferences save type model we have now. I think the most confusing thing when loading random snaps is when it changes your default config.

    >> It probably would be nice to have some kind of notification when the
    >> machine or its configuration changes on a snapshot load though (we do
    >> that for joysticks at least).
    >
    > Preferably in a non intrusive way, bearing tour mode in mind. What kind of
    > message/action (about joysticks) are you thinking?

    Joysticks are already done, when the snapshot being loaded has a different joystick emulation setting that Fuse you get a prompt asking if you want to change the config to match (i.e. I setup Fuse to emulate the Kempston joystick as my USB joystick, I load a snap with cursor joystick configured for use in game and Fuse asks me if I want to change my USB joystick configuration to match, otherwise I may not have the correct configuration to continue playing a snapshotted game).

    So here I am thinking about the case where we load a snap with a different machine than the one in our preferences, the preference is changed if I
    have auto-save settings turned on and I was thinking that it would be nice to explicitly be made aware that the configuration is being changed. But I am now leaning back towards the thought of having explicit machine configurations to choose from on startup being the better option. i.e. we don't switch saved preferences based on loading a snap, we just consider snaps to be self-contained serialised virtual machines and we have a little UI for users to configure up some machines to fit their preferences/ship with a few ready to go that are shown on startup. If we did this, I think that knowing which machine is currently configured wouldn't repay the cost in a more cluttered interface - but that is just my opinion!

    With respect to the situation right now where we don't do any of that, I can see some benefit in having the machine model information visible so I am probably inclined to commit the patch unless anyone has any other thoughts or objections.

     
  • Fredrick Meunier

    One specific comment on the patch - you don't need to add the new ui_statusbar_update_machine() function to handle this, uidisplay_init() is called on each machine reset and the machine information can be handled there.

     
  • Fredrick Meunier

    And by "reset" I mean "select"

     
  • Sergio Baldoví

    Sergio Baldoví - 2011-03-21

    > I feel that it would be better to allow users to configure a few machine images they can select from on startup rather than the forest of options and apply on preferences save type model we have now.

    Sounds nice to me. Some options in virtual machines (e.g., Start Machine, Power Off Machine, Save State) are quite usable and fairly automatic (i.e., don't deal with paths or filenames).

    But I'm not sure about the parts of a machine image:
    - Snapshot as serialised virtual machine image. Would it be possible to modify machine settings? i.e., attach a peripheral without the need for a new profile. On the other hand, this could solve some issues with DivIDE:
    http://www.worldofspectrum.org/forums/showpost.php?p=508654&postcount=20
    - Snapshot as saved state. Well, currently that's his main use. It would be nice to have some save-and-exit/resume or save/restore functionality with less user hassle.
    - Fuse settings that not fit in snapshots (e.g., speed, joystick buttons mapping, graphics filter, debugger, etc), customizable per instance (granularity) or applicable to all machines (comfort)?

    > Joysticks are already done, when the snapshot being loaded has a different joystick emulation setting that Fuse you get a prompt asking if you want to change the config to match

    Found as --joystick-prompt option, not enabled by default. Thanks to point this.

    > uidisplay_init() is called on each machine reset and the machine information can be handled there.

    Right. Uploaded a simpler patch. Feel free to modify it.

     
  • Sergio Baldoví

    Sergio Baldoví - 2011-03-21
     
  • Fredrick Meunier

    • status: open --> open-accepted
     
  • Fredrick Meunier

    Thanks, committed in revision 4341.

     
  • Fredrick Meunier

    > - Snapshot as serialised virtual machine image. Would it be possible
    > to modify machine settings? i.e., attach a peripheral without the
    > need for a new profile.

    In my opinion peripherals would be part of the machine definition and would be fixed for the profile.

    > - Fuse settings that not fit in snapshots (e.g., speed, joystick
    > buttons mapping, graphics filter, debugger, etc), customizable per
    > instance (granularity) or applicable to all machines (comfort)?

    I imagine most non-hardware definition preferences remaining as preferences (i.e. speed being a setting, joystick button mapping being saved as part of the profile but being mutable, graphics filter being a setting etc.) but I'm sure there are wrinkles I haven't considered.

     
  • Fredrick Meunier

    • status: open-accepted --> pending-accepted
     
  • SourceForge Robot

    • status: pending-accepted --> closed-accepted
     
  • SourceForge Robot

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.