Menu

#364 Minimal snapshot support for Didaktik 80

v1.2
closed-accepted
nobody
None
5
2022-11-06
2016-05-05
No

The attached (untested but compiles) patch adds minimal snapshot support for Didaktik 80 to libspectrum and uses it in Fuse.

No current snapshot formats support saving Didaktik 80 information but this should cause Fuse to correctly flag the information loss on saving the snapshot.

It should be simple to define a SZX block for Didaktik 80 based on this structure and add support for it but I don't think that the release needs to be blocked for that support to be added.

I'd appreciate any comments or testing and I hope to add this patch by the weekend.

2 Attachments

Related

Wiki: Fuse 1.2 Release Plan

Discussion

  • Fredrick Meunier

    Correct RAM destination when loading from snapshot.

     
  • Sergio Baldoví

    Sergio Baldoví - 2016-05-08

    Maybe out of scope of this minimal suport, but I miss a ROM type getter/setter, e.g.,

    #define  ZXSTD80RT_MDOS1_1991    0
    #define  ZXSTD80RT_MDOS1_1992    1
    #define  ZXSTD80RT_MDOS2_1993    2
    #define  ZXSTD80RT_CUSTOM    3
    

    assuming:

    • MDOS1 = WD2797
    • MDOS2 = GM82C765B

    Fuse currently supports MDOS1. Not sure if it is worth the distinction between 1991 and 1992 versions (probably not).

    +D also has a ROM type field, but Fuse doesn't take advantge of it.

     
  • Fredrick Meunier

    Thanks for raising this.

    I deliberately left out the ROM version flagging from the +D snapshot support as we don't have a definitive agreement from emulator to emulator about what each of those versions means. I think we should probably just be always writing peripheral ROM contents to snapshot files to eliminate the uncertainty.

    As the MDOS 2 Didaktik uses a completely different controller I would have expected that we would treat it as an independant interface for snapshots - though I am remided that we don't save any UPD registers for +3 snapshots and I can't recall why. It could be we just followed Spectaculator's lead on the SZX contents at the time.

     
  • Sergio Baldoví

    Sergio Baldoví - 2016-05-11

    You're probably right. There is no need to define the full API right now, though. The 'active' property is enough to trigger the warning for loss of information, so the API could be extended at later point.

     
  • Fredrick Meunier

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

    • status: pending-accepted --> closed-accepted
     
  • Arki55

    Arki55 - 2022-11-06

    Hi.

    I might be late to this party. Only recently started using FUSE , after I finally read all my 5.25 D40 floppies.
    THis minimal support - disclaimer about some data not being written - is actually confusing. I tried to use multiple snapshot formats, and was puzzled by that that all of them were throwing this message. It was only after reading this page I realized it was due to the 2KB RAM in D40.

    But IMHO that does not matter at all. It is used internally only by D40 and contains info about the disk currently contained. Saving this RAM with a snapshot would need to bind it with D40 HW + disk contained in it.

    It needs improvement. All active RAM blocks emulated should be labelled/registered and then named when saving a snapshot. TO know what info exactly was left out.

     

    Last edit: Arki55 2022-11-06

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.