sidecartridge / atarist-sidecart-raspberry-pico

AtariST cartridge emulator based on Raspberry Pi Pico and RP2040
GNU General Public License v3.0
53 stars 4 forks source link

Create an Empty Floppy Disk in Read/Write Floppy Emulation #48

Closed diegoparrilla closed 10 months ago

diegoparrilla commented 10 months ago

Description

Currently, users looking to copy content to a floppy disk image are required to work with pre-existing images in the /floppies folder. This approach is not only inconvenient but also prone to errors, especially when managing multiple images or ensuring data integrity.

To streamline this process and enhance user experience, we propose the introduction of a feature that allows the creation of new, empty floppy disk images directly within the system. This feature will be integrated into the existing workflow, offering an efficient and user-friendly way to generate new .ST image files without the need to rely on external tools or pre-existing images.

User Workflow

Upon selecting the option to create a new empty floppy disk image, the system will guide the user through a simple, interactive process:

  1. Prompt for New Floppy Image Name: The user will be asked to provide a unique name for the new floppy disk image. This name will be used to identify the image file within the /floppies directory.

  2. Select Number of Sides: The user can specify the number of sides for the floppy disk. This choice determines the disk's storage capacity and is critical for ensuring compatibility with the intended use case.

  3. Choose Number of Sectors: The user will choose the number of sectors per track. This decision impacts the total storage capacity of the floppy disk and should be made based on the specific requirements of the content to be copied.

Post-Creation Actions

Once the user completes the above steps, the system will execute the following:

Conclusion

This new feature will significantly improve the flexibility and efficiency of the floppy emulation process. By enabling users to create bespoke, empty floppy disk images on demand, it eliminates the dependency on pre-existing images and reduces the potential for errors. This enhancement will be particularly beneficial for users regularly dealing with a variety of content and requiring custom storage solutions.

diegoparrilla commented 10 months ago

Hatari code is GPL, we are GPL. So...

https://github.com/hatari/hatari/blob/master/src/createBlankImage.c

RetroTechN00b commented 10 months ago

Very interesting feature. I was about to ask for it, but you are simply too fast ;-)

When mounting the new empty ST image, it would be helpful to be able to mount it as drive B:. At the same time mounting a different ST image as drive A: would be helpful.

The use case I have in mind for this scenario is my 520ST without physical floppy. I would like to mount a productivity program from the ST image emulated in drive A: (read only), while the newly created ST image emulated in drive B: (read write) can be used to store the data created. Makes sense?

diegoparrilla commented 10 months ago

Yes, it make sense. I have created this enhancement that will have to be developed first (not particularly complex): https://github.com/diegoparrilla/atarist-sidecart-raspberry-pico/issues/51