diff options
Diffstat (limited to 'trunk/src/lib/formats/ami_dsk.h')
-rw-r--r-- | trunk/src/lib/formats/ami_dsk.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/trunk/src/lib/formats/ami_dsk.h b/trunk/src/lib/formats/ami_dsk.h new file mode 100644 index 00000000000..ff2713f3945 --- /dev/null +++ b/trunk/src/lib/formats/ami_dsk.h @@ -0,0 +1,35 @@ +/********************************************************************* + + formats/ami_dsk.h + + Amiga disk images + +*********************************************************************/ + +#ifndef AMI_DSK_H_ +#define AMI_DSK_H_ + +#include "flopimg.h" + +class adf_format : public floppy_image_format_t +{ +public: + adf_format(); + + virtual int identify(io_generic *io, UINT32 form_factor); + virtual bool load(io_generic *io, UINT32 form_factor, floppy_image *image); + virtual bool save(io_generic *io, floppy_image *image); + + virtual const char *name() const; + virtual const char *description() const; + virtual const char *extensions() const; + virtual bool supports_save() const; + +private: + static UINT32 g32(const UINT8 *trackbuf, int track_size, int pos); + static UINT32 checksum(const UINT8 *trackbuf, int track_size, int pos, int long_count); +}; + +extern const floppy_format_type FLOPPY_ADF_FORMAT; + +#endif /*AMI_DSK_H_*/ |