Menu

#90 Supplant boot.b file on Beta 128

v1.2.2
closed
nobody
5
2018-06-04
2016-04-17
No

windale request for Beta 128 from [bugs:#331]: auto-boot games without a boot.B file as Unreal Speccy Portable does.

Unreal Speccy Portable checks for a boot.B file in firsts sectors. If not found, send two keystrokes (Enter). That only makes sense on Pentagon machines with the reset service rom (gluck), the first Enter show a list of files and the latter selects the first file.

Related

Bugs: #331
Bugs: #358

Discussion

<< < 1 2 (Page 2 of 2)
  • Sergio Baldoví

    Sergio Baldoví - 2016-08-14

    Thanks, Fred.

    It does raise two thoughts for other tasks someone could take on in the future:
    1- I think it would be worth having a setting for which machine you want to default to for TR-DOS images

    Should be easy, but doesn't solve the problem of images that run fine on Pentagon or Scorpion/128k machines. Currently if a TR-DOS capable machine is selected, it's respected.

    2- The disk image handling code probably belongs in libspectrum, along with the file system handling code.

    Agree. I hope Gergely will try it someday.

    Any thoughts about clearing the sound buffer when there isn't any machine reset?

     
    • Fredrick Meunier

      Should be easy, but doesn't solve the problem of images that run fine on Pentagon or Scorpion/128k machines. Currently if a TR-DOS capable machine is selected, it's respected.

      I was thinking today whether an (optional I guess) prompt for what machine is wanted would be a better option - I'm not sure that there is an ideal solution to the mess of different machines being able to handle the same media, we don't worry about tapes in the same way though they can be used by all machines and may be incompatible with a subset, we just let you insert them.

      Any thoughts about clearing the sound buffer when there isn't any machine reset?

      Looks to me like it is the AY registers still being populated (i.e. like what you get when you reset a real Spectrum 128k while it is playing music - if the registers hold values you get noise until you send them new values or power on/off the machine for a hard reset).

      If I try to follow the described steps and look at the AY state, I can see that it is still populated from the old run:

      (lldb) p machine_current->ay
      (ayinfo) $1 = {
        current_register = 12
        registers = {
          [0] = '?'
          [1] = '\x06'
          [2] = '\x96'
          [3] = '\0'
          [4] = '?'
          [5] = '\x01'
          [6] = '\0'
          [7] = '\x18'
          [8] = '\v'
          [9] = '\a'
          [10] = '\0'
          [11] = '\0'
          [12] = '\0'
          [13] = '\0'
          [14] = '\0'
          [15] = '\0'
        }
      }
      

      It's probably made worse as we don't have an autoload snapshot for beta like we do for tape, so the AY registers are not reset by loading the state from a snap.

      I'm tempted to say we should try resetting the machine if autoload is turned on in the peripherals/disk/beta.c ui_drive_autoload() function.

       
      • Sergio Baldoví

        Sergio Baldoví - 2016-08-14

        I was thinking today whether an (optional I guess) prompt for what machine is wanted would be a better option

        From my point of view, that would be intrusive and I might need a 'trial and error' round to guess the response.

        I'm not sure that there is an ideal solution to the mess of different machines being able to handle the same media, we don't worry about tapes in the same way though they can be used by all machines and may be incompatible with a subset, we just let you insert them.

        That's why I feel no hurry to amend it.

        It's probably made worse as we don't have an autoload snapshot for beta like we do for tape, so the AY registers are not reset by loading the state from a snap.
        I'm tempted to say we should try resetting the machine if autoload is turned on in the peripherals/disk/beta.c ui_drive_autoload() function.

        That might work. Thank you.

         
  • windale

    windale - 2016-08-13

    Thanks for finally adding this. I tried Bogdan's Android version of this patch and seems to work OK apart from the sound glitch. Did you manage to stop the whining sound when changing from one game to the next ?

     
  • windale

    windale - 2016-08-14

    Are there actually any SCL/TRD games/demos that come on multiple Disks/Sides ? Why doesn't it do a system reset before loading when using 'File - Open' or drag and drop, just like it does with Tapes ? And if you need to change disk/tape without resetting then use the Media menu.

     

    Last edit: windale 2016-08-14
    • Sergio Baldoví

      Sergio Baldoví - 2016-08-14

      Are there actually any SCL/TRD games/demos that come on multiple Disks/Sides ?

      I'm not well versed in the TRD world, but "Three Sister's Story 16c" for Pentagon 1024 have disk 1 with program and data files and disk 2 with data files.

      Why doesn't it do a system reset before loading when using 'File - Open' or drag and drop, just like it does with Tapes ? And if you need to change disk/tape without resetting then use the Media menu.

      That's a good solution. Thank you.

       
  • Sergio Baldoví

    Sergio Baldoví - 2016-08-16
    • labels: --> beta128, TR-DOS
    • status: open --> pending
     
  • Sergio Baldoví

    Sergio Baldoví - 2016-08-16

    Thanks all. Committed in [r5746]. The sound issue will be tracked in [bugs:#358].

     

    Related

    Bugs: #358
    Commit: [r5746]

  • Fredrick Meunier

    • Group: future --> v1.2.2
     
  • Fredrick Meunier

    • status: pending --> accepted
     
  • Fredrick Meunier

    • status: accepted --> closed
     
<< < 1 2 (Page 2 of 2)

Log in to post a comment.