Menu

#365 Minimal snapshot support for DISCiPLE

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

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

While .z80 snapshots have some basic support for saving DISCiPLE information libspectrum does not currently support it and no other format does at this point, so this should just cause Fuse to correctly flag the information loss on saving the snapshot.

It should be simple to define a SZX block for DISCiPLE 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. The patch doesn't separately support the disciple inhibit flag in z80 snapshots (we only handle it as far as it is embedded in the control register). We don't seem to have support in Fuse for the separate tracking of ROM paging that is implied by the .z80 format rom pageable field. It may be nice to resolve this prior to defining the SZX block.

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

    Crisis happened to summarise the inhibit behaviour on WoS:

    Disciple is invoked /inhibited with an OUT command. its in the manual www.worldofspectrum.org/pub/sinclair/hardware-info/DISCiPLEInterface_UserManual.pdf
    3. Press the Inhibit Button once, so that it is locked in; this gives you the capability of switching off the Disciple's operating system. To actually turn off the system, enter OUT 31,0. You can now no longer use your disk drive (although the Disciple's printer and joystick ports remain active), but you will probably be able to use your peripheral. If now, for example, you entered CAT 1 with Interface 1 and a Microdrive attached behind the Disciple, you would display the Microdrive's directory, not the Disciple's.
    4. When you wish to use the Disciple's disk drive again, you can either press the Inhibit Button again (so that it is no longer latched in), or you can enter OUT 31,16. You can then continue to use the Disciple in the normal way. So, if you have loaded a program from Microdrive into the computer, you could now save it to disk, with either the SAVE command, or with the Snapshot Button. (Programmer's note: You can use OUT 31,0 and OUT 31,16 in your programs to turn the Disciple's DOS on and off. See List 1 in Appendix A.)

     

    Last edit: Fredrick Meunier 2016-05-07
  • Fredrick Meunier

    Add disciple inhibit button setting to snapshot structure and set it to 1 in all situations as we effectively emulate it as always depressed.

    I'll create a feature request for adding inhibit button and disciple_inhibited functionality to be addressed post-1.2 (unless someone gets in quick!).

     
  • Fredrick Meunier

    Added request in [feature-requests:#96] .

     

    Related

    Feature Requests: #96


    Last edit: Fredrick Meunier 2016-05-08
  • Fredrick Meunier

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

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

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.