floppy: remove the intermediate allocator

This commit is contained in:
Olivier Galibert 2022-03-25 21:34:24 +01:00
parent 33bdc1469b
commit 40033c809a
266 changed files with 352 additions and 378 deletions

View File

@ -97,7 +97,7 @@ void adam_fdc_device::adam_fdc_mem(address_map &map)
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void adam_fdc_device::floppy_formats(format_registration &fr)

View File

@ -26,7 +26,7 @@ DEFINE_DEVICE_TYPE(COMPIS_FDC, compis_fdc_device, "compis_fdc", "Compis FDC")
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
WRITE_LINE_MEMBER( compis_fdc_device::fdc_irq )

View File

@ -121,7 +121,7 @@ static void beta_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_betav2_device::floppy_formats(format_registration &fr)

View File

@ -63,7 +63,7 @@ static void beta_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_beta128_device::floppy_formats(format_registration &fr)

View File

@ -83,7 +83,7 @@ static void flpone_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_flpone_device::floppy_formats(format_registration &fr)

View File

@ -227,7 +227,7 @@ static void plusd_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_plusd_device::floppy_formats(format_registration &fr)

View File

@ -105,7 +105,7 @@ static void swiftdisc_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_swiftdisc_device::floppy_formats(format_registration &fr)

View File

@ -72,7 +72,7 @@ static void speccydos_floppies(device_slot_interface &device)
}
//-------------------------------------------------
// floppy_format_type floppy_formats
// floppy_formats
//-------------------------------------------------
void spectrum_speccydos_device::floppy_formats(format_registration &fr)

View File

@ -183,9 +183,9 @@ void format_registration::add_pc_formats()
add(FLOPPY_IPF_FORMAT);
}
void format_registration::add(floppy_format_type format)
void format_registration::add(const floppy_image_format_t &format)
{
m_formats.push_back(format);
m_formats.push_back(&format);
}
void format_registration::add(const fs::manager_t &fs)
@ -286,8 +286,6 @@ floppy_image_device::floppy_image_device(const machine_config &mconfig, device_t
floppy_image_device::~floppy_image_device()
{
for(floppy_image_format_t *format : fif_list)
delete format;
}
void floppy_image_device::setup_load_cb(load_cb cb)
@ -320,12 +318,12 @@ void floppy_image_device::setup_led_cb(led_cb cb)
cur_led_cb = cb;
}
void floppy_image_device::fs_enum::add(floppy_format_type type, u32 image_size, const char *name, const char *description)
void floppy_image_device::fs_enum::add(const floppy_image_format_t &type, u32 image_size, const char *name, const char *description)
{
if(m_manager->can_format())
m_fid->m_create_fs.emplace_back(fs_info(m_manager, type, image_size, name, description));
m_fid->m_create_fs.emplace_back(fs_info(m_manager, &type, image_size, name, description));
if(m_manager->can_read())
m_fid->m_io_fs.emplace_back(fs_info(m_manager, type, image_size, name, description));
m_fid->m_io_fs.emplace_back(fs_info(m_manager, &type, image_size, name, description));
}
void floppy_image_device::fs_enum::add_raw(const char *name, u32 key, const char *description)
@ -340,14 +338,10 @@ void floppy_image_device::register_formats()
format_registration_cb(fr);
extension_list[0] = '\0';
fif_list.clear();
for(floppy_format_type fft : fr.m_formats)
fif_list = std::move(fr.m_formats);
for(const floppy_image_format_t *fif : fif_list)
{
// allocate a new format
floppy_image_format_t *fif = fft();
fif_list.push_back(fif);
add_format(fif->name(), fif->description(), fif->extensions(), "");
image_specify_extension( extension_list, 256, fif->extensions() );
}
@ -365,12 +359,12 @@ void floppy_image_device::set_formats(std::function<void (format_registration &f
format_registration_cb = formats;
}
const std::vector<floppy_image_format_t *> &floppy_image_device::get_formats() const
const std::vector<const floppy_image_format_t *> &floppy_image_device::get_formats() const
{
return fif_list;
}
floppy_image_format_t *floppy_image_device::get_load_format() const
const floppy_image_format_t *floppy_image_device::get_load_format() const
{
return input_format;
}
@ -385,7 +379,7 @@ void floppy_image_device::set_rpm(float _rpm)
angular_speed = rpm/60.0*2e8;
}
void floppy_image_device::setup_write(floppy_image_format_t *_output_format)
void floppy_image_device::setup_write(const floppy_image_format_t *_output_format)
{
output_format = _output_format;
if(image)
@ -539,7 +533,7 @@ void floppy_image_device::device_timer(emu_timer &timer, device_timer_id id, int
index_resync();
}
floppy_image_format_t *floppy_image_device::identify(std::string filename)
const floppy_image_format_t *floppy_image_device::identify(std::string filename)
{
util::core_file::ptr fd;
std::string revised_path;
@ -556,8 +550,8 @@ floppy_image_format_t *floppy_image_device::identify(std::string filename)
}
int best = 0;
floppy_image_format_t *best_format = nullptr;
for(floppy_image_format_t *format : fif_list) {
const floppy_image_format_t *best_format = nullptr;
for(const floppy_image_format_t *format : fif_list) {
int score = format->identify(*io, form_factor, variants);
if(score > best) {
best = score;
@ -604,8 +598,8 @@ image_init_result floppy_image_device::call_load()
}
int best = 0;
floppy_image_format_t *best_format = nullptr;
for (floppy_image_format_t *format : fif_list) {
const floppy_image_format_t *best_format = nullptr;
for (const floppy_image_format_t *format : fif_list) {
int score = format->identify(*io, form_factor, variants);
if(score > best) {
best = score;
@ -810,7 +804,7 @@ image_init_result floppy_image_device::call_create(int format_type, util::option
output_format = nullptr;
// search for a suitable format based on the extension
for(floppy_image_format_t *i : fif_list)
for(const floppy_image_format_t *i : fif_list)
{
// only consider formats that actually support saving
if(!i->supports_save())
@ -843,10 +837,8 @@ void floppy_image_device::init_fs(const fs_info *fs, const fs::meta_data &meta)
auto cfs = fs->m_manager->mount(blockdev);
cfs->format(meta);
auto source_format = fs->m_type();
auto io = util::ram_read(img.data(), img.size(), 0xff);
source_format->load(*io, floppy_image::FF_UNKNOWN, variants, image.get());
delete source_format;
fs->m_type->load(*io, floppy_image::FF_UNKNOWN, variants, image.get());
} else {
fs::unformatted_image::format(fs->m_key, image.get());
}

View File

@ -26,14 +26,14 @@ class format_registration {
public:
format_registration();
void add(floppy_format_type format);
void add(const floppy_image_format_t &format);
void add(const fs::manager_t &fs);
void add_fm_containers();
void add_mfm_containers();
void add_pc_formats();
std::vector<floppy_format_type> m_formats;
std::vector<const floppy_image_format_t *> m_formats;
std::vector<const fs::manager_t *> m_fs;
};
@ -50,13 +50,13 @@ public:
struct fs_info {
const fs::manager_t *m_manager;
floppy_format_type m_type;
const floppy_image_format_t *m_type;
u32 m_image_size;
const char *m_name;
u32 m_key;
const char *m_description;
fs_info(const fs::manager_t *manager, floppy_format_type type, u32 image_size, const char *name, const char *description) :
fs_info(const fs::manager_t *manager, const floppy_image_format_t *type, u32 image_size, const char *name, const char *description) :
m_manager(manager),
m_type(type),
m_image_size(image_size),
@ -79,11 +79,11 @@ public:
virtual ~floppy_image_device();
void set_formats(std::function<void (format_registration &fr)> formats);
const std::vector<floppy_image_format_t *> &get_formats() const;
const std::vector<const floppy_image_format_t *> &get_formats() const;
const std::vector<fs_info> &get_create_fs() const { return m_create_fs; }
const std::vector<fs_info> &get_io_fs() const { return m_io_fs; }
floppy_image_format_t *get_load_format() const;
floppy_image_format_t *identify(std::string filename);
const floppy_image_format_t *get_load_format() const;
const floppy_image_format_t *identify(std::string filename);
void set_rpm(float rpm);
void init_fs(const fs_info *fs, const fs::meta_data &meta);
@ -101,7 +101,7 @@ public:
virtual const char *file_extensions() const noexcept override { return extension_list; }
virtual const char *image_type_name() const noexcept override { return "floppydisk"; }
virtual const char *image_brief_type_name() const noexcept override { return "flop"; }
void setup_write(floppy_image_format_t *output_format);
void setup_write(const floppy_image_format_t *output_format);
void setup_load_cb(load_cb cb);
void setup_unload_cb(unload_cb cb);
@ -161,7 +161,7 @@ protected:
fs_enum(floppy_image_device *fid) : fs::manager_t::floppy_enumerator(), m_fid(fid) {}
virtual void add(floppy_format_type type, u32 image_size, const char *name, const char *description) override;
virtual void add(const floppy_image_format_t &type, u32 image_size, const char *name, const char *description) override;
virtual void add_raw(const char *name, u32 key, const char *description) override;
};
@ -183,12 +183,12 @@ protected:
void init_floppy_load(bool write_supported);
std::function<void (format_registration &fr)> format_registration_cb;
floppy_image_format_t *input_format;
floppy_image_format_t *output_format;
const floppy_image_format_t *input_format;
const floppy_image_format_t *output_format;
std::vector<uint32_t> variants;
std::unique_ptr<floppy_image> image;
char extension_list[256];
std::vector<floppy_image_format_t *> fif_list;
std::vector<const floppy_image_format_t *> fif_list;
std::vector<fs_info> m_create_fs, m_io_fs;
std::vector<const fs::manager_t *> m_fs_managers;
emu_timer *index_timer;

View File

@ -231,7 +231,7 @@ SELECT FORMAT MENU
// ctor
//-------------------------------------------------
menu_select_format::menu_select_format(mame_ui_manager &mui, render_container &container, const std::vector<floppy_image_format_t *> &formats, int ext_match, floppy_image_format_t **result)
menu_select_format::menu_select_format(mame_ui_manager &mui, render_container &container, const std::vector<const floppy_image_format_t *> &formats, int ext_match, const floppy_image_format_t **result)
: menu(mui, container)
{
m_formats = formats;
@ -258,11 +258,11 @@ void menu_select_format::populate(float &customtop, float &custombottom)
item_append(_("Select image format"), FLAG_DISABLE, nullptr);
for (unsigned int i = 0; i != m_formats.size(); i++)
{
floppy_image_format_t *fmt = m_formats[i];
const floppy_image_format_t *fmt = m_formats[i];
if (i && i == m_ext_match)
item_append(menu_item_type::SEPARATOR);
item_append(fmt->description(), fmt->name(), 0, fmt);
item_append(fmt->description(), fmt->name(), 0, const_cast<floppy_image_format_t *>(fmt));
}
}

View File

@ -67,7 +67,7 @@ class menu_select_format : public menu
{
public:
menu_select_format(mame_ui_manager &mui, render_container &container,
const std::vector<floppy_image_format_t *> &formats, int ext_match, floppy_image_format_t **result);
const std::vector<const floppy_image_format_t *> &formats, int ext_match, const floppy_image_format_t **result);
virtual ~menu_select_format() override;
private:
@ -75,9 +75,9 @@ private:
virtual void handle(event const *ev) override;
// internal state
std::vector<floppy_image_format_t *> m_formats;
int m_ext_match;
floppy_image_format_t * *m_result;
std::vector<const floppy_image_format_t *> m_formats;
int m_ext_match;
const floppy_image_format_t * *m_result;
};
// ======================> menu_select_floppy_init

View File

@ -98,15 +98,15 @@ void menu_control_floppy_image::menu_activated()
{
switch (m_state) {
case DO_CREATE: {
std::vector<floppy_image_format_t *> format_array;
for(floppy_image_format_t *i : fd.get_formats()) {
std::vector<const floppy_image_format_t *> format_array;
for(const floppy_image_format_t *i : fd.get_formats()) {
if(!i->supports_save())
continue;
if (i->extension_matches(m_current_file.c_str()))
format_array.push_back(i);
}
int ext_match = format_array.size();
for(floppy_image_format_t *i : fd.get_formats()) {
for(const floppy_image_format_t *i : fd.get_formats()) {
if(!i->supports_save())
continue;
if (!i->extension_matches(m_current_file.c_str()))

View File

@ -33,7 +33,7 @@ private:
enum { SELECT_FORMAT = LAST_ID, SELECT_MEDIA, SELECT_INIT, SELECT_RW };
floppy_image_device &fd;
floppy_image_format_t *input_format, *output_format;
const floppy_image_format_t *input_format, *output_format;
const floppy_image_device::fs_info *create_fs;
std::string input_filename, output_filename;

View File

@ -38,4 +38,4 @@ const _2d_format::format _2d_format::formats[] =
{}
};
const floppy_format_type FLOPPY_2D_FORMAT = &floppy_image_format_creator<_2d_format>;
const _2d_format FLOPPY_2D_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_2D_FORMAT;
extern const _2d_format FLOPPY_2D_FORMAT;
#endif // MAME_FORMATS_2D_DSK_H

View File

@ -42,4 +42,4 @@ const a5105_format::format a5105_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_A5105_FORMAT = &floppy_image_format_creator<a5105_format>;
const a5105_format FLOPPY_A5105_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_A5105_FORMAT;
extern const a5105_format FLOPPY_A5105_FORMAT;
#endif // MAME_FORMATS_A5105_DSK_H

View File

@ -57,7 +57,7 @@ const abc1600_format::format abc1600_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_ABC1600_FORMAT = &floppy_image_format_creator<abc1600_format>;
const abc1600_format FLOPPY_ABC1600_FORMAT;
int abc1600_format::get_image_offset(const format &f, int head, int track) const
{

View File

@ -30,6 +30,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ABC1600_FORMAT;
extern const abc1600_format FLOPPY_ABC1600_FORMAT;
#endif // MAME_FORMATS_ABC1600_DSK_H

View File

@ -139,7 +139,7 @@ const abc800_format::format abc800_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_ABC800_FORMAT = &floppy_image_format_creator<abc800_format>;
const abc800_format FLOPPY_ABC800_FORMAT;
void abc800_format::build_sector_description(const format &f, uint8_t *sectdata, desc_s *sectors, int track, int head) const
{

View File

@ -30,6 +30,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ABC800_FORMAT;
extern const abc800_format FLOPPY_ABC800_FORMAT;
#endif // MAME_FORMATS_ABC800_DSK_H

View File

@ -57,4 +57,4 @@ const abc_fd2_format::format abc_fd2_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_ABC_FD2_FORMAT = &floppy_image_format_creator<abc_fd2_format>;
const abc_fd2_format FLOPPY_ABC_FD2_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ABC_FD2_FORMAT;
extern const abc_fd2_format FLOPPY_ABC_FD2_FORMAT;
#endif // MAME_FORMATS_ABCFD2_DSK_H

View File

@ -756,10 +756,10 @@ bool opus_ddcpm_format::save(util::random_read_write &io, const std::vector<uint
}
const floppy_format_type FLOPPY_ACORN_SSD_FORMAT = &floppy_image_format_creator<acorn_ssd_format>;
const floppy_format_type FLOPPY_ACORN_DSD_FORMAT = &floppy_image_format_creator<acorn_dsd_format>;
const floppy_format_type FLOPPY_ACORN_DOS_FORMAT = &floppy_image_format_creator<acorn_dos_format>;
const floppy_format_type FLOPPY_ACORN_ADFS_OLD_FORMAT = &floppy_image_format_creator<acorn_adfs_old_format>;
const floppy_format_type FLOPPY_ACORN_ADFS_NEW_FORMAT = &floppy_image_format_creator<acorn_adfs_new_format>;
const floppy_format_type FLOPPY_OPUS_DDOS_FORMAT = &floppy_image_format_creator<opus_ddos_format>;
const floppy_format_type FLOPPY_OPUS_DDCPM_FORMAT = &floppy_image_format_creator<opus_ddcpm_format>;
const acorn_ssd_format FLOPPY_ACORN_SSD_FORMAT;
const acorn_dsd_format FLOPPY_ACORN_DSD_FORMAT;
const acorn_dos_format FLOPPY_ACORN_DOS_FORMAT;
const acorn_adfs_old_format FLOPPY_ACORN_ADFS_OLD_FORMAT;
const acorn_adfs_new_format FLOPPY_ACORN_ADFS_NEW_FORMAT;
const opus_ddos_format FLOPPY_OPUS_DDOS_FORMAT;
const opus_ddcpm_format FLOPPY_OPUS_DDCPM_FORMAT;

View File

@ -127,12 +127,12 @@ public:
};
extern const floppy_format_type FLOPPY_ACORN_SSD_FORMAT;
extern const floppy_format_type FLOPPY_ACORN_DSD_FORMAT;
extern const floppy_format_type FLOPPY_ACORN_DOS_FORMAT;
extern const floppy_format_type FLOPPY_ACORN_ADFS_OLD_FORMAT;
extern const floppy_format_type FLOPPY_ACORN_ADFS_NEW_FORMAT;
extern const floppy_format_type FLOPPY_OPUS_DDOS_FORMAT;
extern const floppy_format_type FLOPPY_OPUS_DDCPM_FORMAT;
extern const acorn_ssd_format FLOPPY_ACORN_SSD_FORMAT;
extern const acorn_dsd_format FLOPPY_ACORN_DSD_FORMAT;
extern const acorn_dos_format FLOPPY_ACORN_DOS_FORMAT;
extern const acorn_adfs_old_format FLOPPY_ACORN_ADFS_OLD_FORMAT;
extern const acorn_adfs_new_format FLOPPY_ACORN_ADFS_NEW_FORMAT;
extern const opus_ddos_format FLOPPY_OPUS_DDOS_FORMAT;
extern const opus_ddcpm_format FLOPPY_OPUS_DDCPM_FORMAT;
#endif // MAME_FORMATS_ACORN_DSK_H

View File

@ -65,4 +65,4 @@ const adam_format::format adam_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_ADAM_FORMAT = &floppy_image_format_creator<adam_format>;
const adam_format FLOPPY_ADAM_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ADAM_FORMAT;
extern const adam_format FLOPPY_ADAM_FORMAT;
#endif // MAME_FORMATS_ADAM_DSK_H

View File

@ -58,4 +58,4 @@ const afs_format::format afs_format::formats[] =
};
const floppy_format_type FLOPPY_AFS_FORMAT = &floppy_image_format_creator<afs_format>;
const afs_format FLOPPY_AFS_FORMAT;

View File

@ -31,6 +31,6 @@ private:
};
extern const floppy_format_type FLOPPY_AFS_FORMAT;
extern const afs_format FLOPPY_AFS_FORMAT;
#endif // MAME_FORMATS_AFS_DSK_H

View File

@ -133,4 +133,4 @@ bool aim_format::load(util::random_read &io, uint32_t form_factor, const std::ve
}
const floppy_format_type FLOPPY_AIM_FORMAT = &floppy_image_format_creator<aim_format>;
const aim_format FLOPPY_AIM_FORMAT;

View File

@ -30,6 +30,6 @@ public:
virtual bool supports_save() const override { return false; }
};
extern const floppy_format_type FLOPPY_AIM_FORMAT;
extern const aim_format FLOPPY_AIM_FORMAT;
#endif // MAME_FORMATS_AIM_DSK_H

View File

@ -17,7 +17,7 @@ struct mame_formats_enumerator {
virtual void category(const char *name) = 0;
virtual void add(const cassette_image::Format *const *formats) = 0;
virtual void add(floppy_format_type format) = 0;
virtual void add(const floppy_image_format_t &format) = 0;
virtual void add(const fs::manager_t &fs) = 0;
};

View File

@ -159,4 +159,4 @@ bool adf_format::save(util::random_read_write &io, const std::vector<uint32_t> &
return true;
}
const floppy_format_type FLOPPY_ADF_FORMAT = &floppy_image_format_creator<adf_format>;
const adf_format FLOPPY_ADF_FORMAT;

View File

@ -33,6 +33,6 @@ private:
static uint32_t checksum(const std::vector<bool> &bitsteam, uint32_t pos, int long_count);
};
extern const floppy_format_type FLOPPY_ADF_FORMAT;
extern const adf_format FLOPPY_ADF_FORMAT;
#endif // MAME_FORMATS_AMI_DSK_H

View File

@ -925,8 +925,8 @@ bool a2_16sect_format::save(util::random_read_write &io, const std::vector<uint3
return true;
}
const floppy_format_type FLOPPY_A216S_DOS_FORMAT = &floppy_image_format_creator<a2_16sect_dos_format>;
const floppy_format_type FLOPPY_A216S_PRODOS_FORMAT = &floppy_image_format_creator<a2_16sect_prodos_format>;
const a2_16sect_dos_format FLOPPY_A216S_DOS_FORMAT;
const a2_16sect_prodos_format FLOPPY_A216S_PRODOS_FORMAT;
/* RWTS18 format
* Developed by Roland Gustafsson (http://www.acts.org/roland/index.html)
for Br0derbund Software around 1986
@ -1434,7 +1434,7 @@ bool a2_rwts18_format::save(util::random_read_write &io, const std::vector<uint3
return true;
}
const floppy_format_type FLOPPY_RWTS18_FORMAT = &floppy_image_format_creator<a2_rwts18_format>;
const a2_rwts18_format FLOPPY_RWTS18_FORMAT;
a2_edd_format::a2_edd_format() : floppy_image_format_t()
{
@ -1557,7 +1557,7 @@ bool a2_edd_format::load(util::random_read &io, uint32_t form_factor, const std:
return true;
}
const floppy_format_type FLOPPY_EDD_FORMAT = &floppy_image_format_creator<a2_edd_format>;
const a2_edd_format FLOPPY_EDD_FORMAT;
a2_woz_format::a2_woz_format() : floppy_image_format_t()
@ -1850,7 +1850,7 @@ uint32_t a2_woz_format::crc32r(const uint8_t *data, uint32_t size)
}
const floppy_format_type FLOPPY_WOZ_FORMAT = &floppy_image_format_creator<a2_woz_format>;
const a2_woz_format FLOPPY_WOZ_FORMAT;
a2_nib_format::a2_nib_format() : floppy_image_format_t()
@ -2026,4 +2026,4 @@ bool a2_nib_format::load(util::random_read &io, uint32_t form_factor, const std:
}
const floppy_format_type FLOPPY_NIB_FORMAT = &floppy_image_format_creator<a2_nib_format>;
const a2_nib_format FLOPPY_NIB_FORMAT;

View File

@ -72,8 +72,8 @@ public:
virtual const char *extensions() const override;
};
extern const floppy_format_type FLOPPY_A216S_DOS_FORMAT;
extern const floppy_format_type FLOPPY_A216S_PRODOS_FORMAT;
extern const a2_16sect_dos_format FLOPPY_A216S_DOS_FORMAT;
extern const a2_16sect_prodos_format FLOPPY_A216S_PRODOS_FORMAT;
class a2_rwts18_format : public floppy_image_format_t
{
@ -95,7 +95,7 @@ private:
static uint8_t gb(const std::vector<bool> &buf, int &pos, int &wrap);
};
extern const floppy_format_type FLOPPY_RWTS18_FORMAT;
extern const a2_rwts18_format FLOPPY_RWTS18_FORMAT;
class a2_edd_format : public floppy_image_format_t
@ -115,7 +115,7 @@ private:
static uint8_t pick(const uint8_t *data, int pos);
};
extern const floppy_format_type FLOPPY_EDD_FORMAT;
extern const a2_edd_format FLOPPY_EDD_FORMAT;
class a2_woz_format : public floppy_image_format_t
{
@ -144,7 +144,7 @@ private:
static uint32_t find_tag(const std::vector<uint8_t> &data, uint32_t tag);
};
extern const floppy_format_type FLOPPY_WOZ_FORMAT;
extern const a2_woz_format FLOPPY_WOZ_FORMAT;
class a2_nib_format : public floppy_image_format_t
@ -170,6 +170,6 @@ private:
static std::vector<uint32_t> generate_levels_from_nibbles(const std::vector<uint8_t>& nibbles);
};
extern const floppy_format_type FLOPPY_NIB_FORMAT;
extern const a2_nib_format FLOPPY_NIB_FORMAT;
#endif // MAME_FORMATS_AP2_DSK_H

View File

@ -1414,7 +1414,7 @@ bool dc42_format::save(util::random_read_write &io, const std::vector<uint32_t>
return true;
}
const floppy_format_type FLOPPY_DC42_FORMAT = &floppy_image_format_creator<dc42_format>;
const dc42_format FLOPPY_DC42_FORMAT;
apple_gcr_format::apple_gcr_format() : floppy_image_format_t()
@ -1523,7 +1523,7 @@ bool apple_gcr_format::save(util::random_read_write &io, const std::vector<uint3
return true;
}
const floppy_format_type FLOPPY_APPLE_GCR_FORMAT = &floppy_image_format_creator<apple_gcr_format>;
const apple_gcr_format FLOPPY_APPLE_GCR_FORMAT;
// .2MG format
apple_2mg_format::apple_2mg_format() : floppy_image_format_t()
@ -1648,4 +1648,4 @@ bool apple_2mg_format::save(util::random_read_write &io, const std::vector<uint3
return true;
}
const floppy_format_type FLOPPY_APPLE_2MG_FORMAT = &floppy_image_format_creator<apple_2mg_format>;
const apple_2mg_format FLOPPY_APPLE_2MG_FORMAT;

View File

@ -43,7 +43,7 @@ private:
static void update_chk(const uint8_t *data, int size, uint32_t &chk);
};
extern const floppy_format_type FLOPPY_DC42_FORMAT;
extern const dc42_format FLOPPY_DC42_FORMAT;
class apple_gcr_format : public floppy_image_format_t
{
@ -60,7 +60,7 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_APPLE_GCR_FORMAT;
extern const apple_gcr_format FLOPPY_APPLE_GCR_FORMAT;
class apple_2mg_format : public floppy_image_format_t
{
@ -77,6 +77,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_APPLE_2MG_FORMAT;
extern const apple_2mg_format FLOPPY_APPLE_2MG_FORMAT;
#endif // MAME_FORMATS_AP_DSK35_H

View File

@ -210,4 +210,4 @@ bool apd_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_APD_FORMAT = &floppy_image_format_creator<apd_format>;
const apd_format FLOPPY_APD_FORMAT;

View File

@ -28,6 +28,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_APD_FORMAT;
extern const apd_format FLOPPY_APD_FORMAT;
#endif // MAME_FORMATS_APD_DSK_H

View File

@ -45,4 +45,4 @@ const apollo_format::format apollo_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_APOLLO_FORMAT = &floppy_image_format_creator<apollo_format>;
const apollo_format FLOPPY_APOLLO_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_APOLLO_FORMAT;
extern const apollo_format FLOPPY_APOLLO_FORMAT;
#endif // MAME_FORMATS_APOLLO_DSK_H

View File

@ -38,4 +38,4 @@ const applix_format::format applix_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_APPLIX_FORMAT = &floppy_image_format_creator<applix_format>;
const applix_format FLOPPY_APPLIX_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_APPLIX_FORMAT;
extern const applix_format FLOPPY_APPLIX_FORMAT;
#endif // MAME_FORMATS_APPLIX_DSK_H

View File

@ -153,4 +153,4 @@ bool apridisk_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_APRIDISK_FORMAT = &floppy_image_format_creator<apridisk_format>;
const apridisk_format FLOPPY_APRIDISK_FORMAT;

View File

@ -50,6 +50,6 @@ private:
static const int MAX_SECTORS = 2880; // enough for a hd disk image
};
extern const floppy_format_type FLOPPY_APRIDISK_FORMAT;
extern const apridisk_format FLOPPY_APRIDISK_FORMAT;
#endif // MAME_FORMATS_APRIDISK_H

View File

@ -38,4 +38,4 @@ const asst128_format::format asst128_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_ASST128_FORMAT = &floppy_image_format_creator<asst128_format>;
const asst128_format FLOPPY_ASST128_FORMAT;

View File

@ -26,6 +26,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ASST128_FORMAT;
extern const asst128_format FLOPPY_ASST128_FORMAT;
#endif // MAME_FORMATS_ASST128_DSK_H

View File

@ -30,4 +30,4 @@ const atom_format::format atom_format::formats[] =
{}
};
const floppy_format_type FLOPPY_ATOM_FORMAT = &floppy_image_format_creator<atom_format>;
const atom_format FLOPPY_ATOM_FORMAT;

View File

@ -21,6 +21,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_ATOM_FORMAT;
extern const atom_format FLOPPY_ATOM_FORMAT;
#endif // MAME_FORMATS_ATOM_DSK_H

View File

@ -55,4 +55,4 @@ const bw12_format::format bw12_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_BW12_FORMAT = &floppy_image_format_creator<bw12_format>;
const bw12_format FLOPPY_BW12_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_BW12_FORMAT;
extern const bw12_format FLOPPY_BW12_FORMAT;
#endif // MAME_FORMATS_BW12_DSK_H

View File

@ -41,4 +41,4 @@ const bw2_format::format bw2_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_BW2_FORMAT = &floppy_image_format_creator<bw2_format>;
const bw2_format FLOPPY_BW2_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_BW2_FORMAT;
extern const bw2_format FLOPPY_BW2_FORMAT;
#endif // MAME_FORMATS_BW2_DSK_H

View File

@ -96,4 +96,4 @@ void c3040_format::fix_end_gap(floppy_image_format_t::desc_e* desc, int remainin
desc[20].p1 >>= remaining_size & 0x01;
}
const floppy_format_type FLOPPY_C3040_FORMAT = &floppy_image_format_creator<c3040_format>;
const c3040_format FLOPPY_C3040_FORMAT;

View File

@ -34,6 +34,6 @@ protected:
static const int c3040_sectors_per_track[];
};
extern const floppy_format_type FLOPPY_C3040_FORMAT;
extern const c3040_format FLOPPY_C3040_FORMAT;
#endif // MAME_FORMATS_C3040_DSK_H

View File

@ -86,4 +86,4 @@ void c4040_format::fix_end_gap(floppy_image_format_t::desc_e* desc, int remainin
desc[20].p1 >>= remaining_size & 0x01;
}
const floppy_format_type FLOPPY_C4040_FORMAT = &floppy_image_format_creator<c4040_format>;
const c4040_format FLOPPY_C4040_FORMAT;

View File

@ -32,6 +32,6 @@ protected:
static const int c4040_gap2[];
};
extern const floppy_format_type FLOPPY_C4040_FORMAT;
extern const c4040_format FLOPPY_C4040_FORMAT;
#endif // MAME_FORMATS_C4040_DSK_H

View File

@ -66,4 +66,4 @@ const c8280_format::format c8280_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_C8280_FORMAT = &floppy_image_format_creator<c8280_format>;
const c8280_format FLOPPY_C8280_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_C8280_FORMAT;
extern const c8280_format FLOPPY_C8280_FORMAT;
#endif // MAME_FORMATS_C8280_DSK_H

View File

@ -52,4 +52,4 @@ const camplynx_format::format camplynx_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_CAMPLYNX_FORMAT = &floppy_image_format_creator<camplynx_format>;
const camplynx_format FLOPPY_CAMPLYNX_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_CAMPLYNX_FORMAT;
extern const camplynx_format FLOPPY_CAMPLYNX_FORMAT;
#endif // MAME_FORMATS_CAMPLYNX_DSK_H

View File

@ -156,4 +156,4 @@ bool ccvf_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_CCVF_FORMAT = &floppy_image_format_creator<ccvf_format>;
const ccvf_format FLOPPY_CCVF_FORMAT;

View File

@ -51,6 +51,6 @@ protected:
static const format file_formats[];
};
extern const floppy_format_type FLOPPY_CCVF_FORMAT;
extern const ccvf_format FLOPPY_CCVF_FORMAT;
#endif // MAME_FORMATS_CCVF_DSK_H

View File

@ -53,4 +53,4 @@ const cd90_640_format::format cd90_640_format::formats[] =
{}
};
const floppy_format_type FLOPPY_CD90_640_FORMAT = &floppy_image_format_creator<cd90_640_format>;
const cd90_640_format FLOPPY_CD90_640_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_CD90_640_FORMAT;
extern const cd90_640_format FLOPPY_CD90_640_FORMAT;
#endif // MAME_FORMATS_CD90_640_DSK_H

View File

@ -76,4 +76,4 @@ const cgenie_format::format cgenie_format::formats[] =
{}
};
const floppy_format_type FLOPPY_CGENIE_FORMAT = &floppy_image_format_creator<cgenie_format>;
const cgenie_format FLOPPY_CGENIE_FORMAT;

View File

@ -31,6 +31,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_CGENIE_FORMAT;
extern const cgenie_format FLOPPY_CGENIE_FORMAT;
#endif // MAME_FORMATS_CGENIE_DSK_H

View File

@ -42,4 +42,4 @@ const coco_rawdsk_format::format coco_rawdsk_format::formats[] =
};
const floppy_format_type FLOPPY_COCO_RAWDSK_FORMAT = &floppy_image_format_creator<coco_rawdsk_format>;
const coco_rawdsk_format FLOPPY_COCO_RAWDSK_FORMAT;

View File

@ -28,6 +28,6 @@ private:
};
extern const floppy_format_type FLOPPY_COCO_RAWDSK_FORMAT;
extern const coco_rawdsk_format FLOPPY_COCO_RAWDSK_FORMAT;
#endif // MAME_FORMATS_COCO_RAWDSK_H

View File

@ -74,4 +74,4 @@ const comx35_format::format comx35_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_COMX35_FORMAT = &floppy_image_format_creator<comx35_format>;
const comx35_format FLOPPY_COMX35_FORMAT;

View File

@ -27,6 +27,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_COMX35_FORMAT;
extern const comx35_format FLOPPY_COMX35_FORMAT;
#endif // MAME_FORMATS_COMX35_DSK_H

View File

@ -154,4 +154,4 @@ bool cc525dsdd_format::save(util::random_read_write &io, const std::vector<uint3
return true;
}
const floppy_format_type FLOPPY_CONCEPT_525DSDD_FORMAT = &floppy_image_format_creator<cc525dsdd_format>;
const cc525dsdd_format FLOPPY_CONCEPT_525DSDD_FORMAT;

View File

@ -32,6 +32,6 @@ private:
static void find_size(util::random_read &io, uint8_t &track_count, uint8_t &head_count, uint8_t &sector_count);
};
extern const floppy_format_type FLOPPY_CONCEPT_525DSDD_FORMAT;
extern const cc525dsdd_format FLOPPY_CONCEPT_525DSDD_FORMAT;
#endif // MAME_FORMATS_CONCEPT_DSK_H

View File

@ -128,4 +128,4 @@ bool mgt_format::save(util::random_read_write &io, const std::vector<uint32_t> &
return true;
}
const floppy_format_type FLOPPY_MGT_FORMAT = &floppy_image_format_creator<mgt_format>;
const mgt_format FLOPPY_MGT_FORMAT;

View File

@ -31,6 +31,6 @@ public:
static const floppy_image_format_t::desc_e desc_10[];
};
extern const floppy_format_type FLOPPY_MGT_FORMAT;
extern const mgt_format FLOPPY_MGT_FORMAT;
#endif // MAME_FORMATS_COUPEDSK_H

View File

@ -54,4 +54,4 @@ const cpis_format::format cpis_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_CPIS_FORMAT = &floppy_image_format_creator<cpis_format>;
const cpis_format FLOPPY_CPIS_FORMAT;

View File

@ -26,6 +26,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_CPIS_FORMAT;
extern const cpis_format FLOPPY_CPIS_FORMAT;
#endif // MAME_FORMATS_CPIS_DSK_H

View File

@ -376,4 +376,4 @@ bool cqm_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_CQM_FORMAT = &floppy_image_format_creator<cqm_format>;
const cqm_format FLOPPY_CQM_FORMAT;

View File

@ -29,6 +29,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_CQM_FORMAT;
extern const cqm_format FLOPPY_CQM_FORMAT;
#endif // MAME_FORMATS_CQM_DSK_H

View File

@ -325,4 +325,4 @@ void d64_format::extract_sectors(floppy_image *image, const format &f, desc_s *s
}
}
const floppy_format_type FLOPPY_D64_FORMAT = &floppy_image_format_creator<d64_format>;
const d64_format FLOPPY_D64_FORMAT;

View File

@ -82,6 +82,6 @@ protected:
static const int speed_zone[];
};
extern const floppy_format_type FLOPPY_D64_FORMAT;
extern const d64_format FLOPPY_D64_FORMAT;
#endif // MAME_FORMATS_D64_DSK_H

View File

@ -36,4 +36,4 @@ const d71_format::format d71_format::formats[] = {
{}
};
const floppy_format_type FLOPPY_D71_FORMAT = &floppy_image_format_creator<d71_format>;
const d71_format FLOPPY_D71_FORMAT;

View File

@ -27,6 +27,6 @@ protected:
static const format formats[];
};
extern const floppy_format_type FLOPPY_D71_FORMAT;
extern const d71_format FLOPPY_D71_FORMAT;
#endif // MAME_FORMATS_D71_DSK_H

View File

@ -132,4 +132,4 @@ void d80_format::fix_end_gap(floppy_image_format_t::desc_e* desc, int remaining_
desc[20].p1 >>= remaining_size & 0x01;
}
const floppy_format_type FLOPPY_D80_FORMAT = &floppy_image_format_creator<d80_format>;
const d80_format FLOPPY_D80_FORMAT;

View File

@ -41,6 +41,6 @@ protected:
static const int d80_sectors_per_track[];
};
extern const floppy_format_type FLOPPY_D80_FORMAT;
extern const d80_format FLOPPY_D80_FORMAT;
#endif // MAME_FORMATS_D80_DSK_H

View File

@ -159,4 +159,4 @@ floppy_image_format_t::desc_e* d81_format::get_desc_mfm(const format &f, int &cu
return desc;
}
const floppy_format_type FLOPPY_D81_FORMAT = &floppy_image_format_creator<d81_format>;
const d81_format FLOPPY_D81_FORMAT;

View File

@ -29,6 +29,6 @@ private:
static const format formats[];
};
extern const floppy_format_type FLOPPY_D81_FORMAT;
extern const d81_format FLOPPY_D81_FORMAT;
#endif // MAME_FORMATS_D81_DSK_H

View File

@ -36,4 +36,4 @@ const d82_format::format d82_format::file_formats[] = {
{}
};
const floppy_format_type FLOPPY_D82_FORMAT = &floppy_image_format_creator<d82_format>;
const d82_format FLOPPY_D82_FORMAT;

View File

@ -27,6 +27,6 @@ protected:
static const format file_formats[];
};
extern const floppy_format_type FLOPPY_D82_FORMAT;
extern const d82_format FLOPPY_D82_FORMAT;
#endif // MAME_FORMATS_D82_DSK_H

View File

@ -547,4 +547,4 @@ bool d88_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_D88_FORMAT = &floppy_image_format_creator<d88_format>;
const d88_format FLOPPY_D88_FORMAT;

View File

@ -29,6 +29,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_D88_FORMAT;
extern const d88_format FLOPPY_D88_FORMAT;
#endif // MAME_FORMATS_D88_DSK_H

View File

@ -305,4 +305,4 @@ bool dcp_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_DCP_FORMAT = &floppy_image_format_creator<dcp_format>;
const dcp_format FLOPPY_DCP_FORMAT;

View File

@ -29,6 +29,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_DCP_FORMAT;
extern const dcp_format FLOPPY_DCP_FORMAT;
#endif // MAME_FORMATS_DCP_DSK_H

View File

@ -239,4 +239,4 @@ bool dfi_format::load(util::random_read &io, uint32_t form_factor, const std::ve
return true;
}
const floppy_format_type FLOPPY_DFI_FORMAT = &floppy_image_format_creator<dfi_format>;
const dfi_format FLOPPY_DFI_FORMAT;

View File

@ -21,6 +21,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_DFI_FORMAT;
extern const dfi_format FLOPPY_DFI_FORMAT;
#endif // MAME_FORMATS_DFI_DSK_H

View File

@ -131,4 +131,4 @@ bool dim_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_DIM_FORMAT = &floppy_image_format_creator<dim_format>;
const dim_format FLOPPY_DIM_FORMAT;

View File

@ -30,6 +30,6 @@ public:
virtual bool supports_save() const override;
};
extern const floppy_format_type FLOPPY_DIM_FORMAT;
extern const dim_format FLOPPY_DIM_FORMAT;
#endif // MAME_FORMATS_DIM_DSK_H

View File

@ -98,4 +98,4 @@ bool dip_format::supports_save() const
return false;
}
const floppy_format_type FLOPPY_DIP_FORMAT = &floppy_image_format_creator<dip_format>;
const dip_format FLOPPY_DIP_FORMAT;

Some files were not shown because too many files have changed in this diff Show More