Example #1
0
void legacy_floppy_image_device::device_config_complete()
{
	image_device_format **formatptr;
	image_device_format *format;
	formatptr = &m_formatlist;
	int cnt = 0;

	m_extension_list[0] = '\0';
	const struct FloppyFormat *floppy_options = ((floppy_interface*)static_config())->formats;
	for (int i = 0; floppy_options[i].construct; i++)
	{
		// only add if creatable
		if (floppy_options[i].param_guidelines) {
			// allocate a new format
			format = global_alloc_clear(image_device_format);

			// populate it
			format->m_index       = cnt;
			format->m_name        = floppy_options[i].name;
			format->m_description = floppy_options[i].description;
			format->m_extensions  = floppy_options[i].extensions;
			format->m_optspec     = floppy_options[i].param_guidelines;

			// and append it to the list
			*formatptr = format;
			formatptr = &format->m_next;
			cnt++;
		}
		image_specify_extension( m_extension_list, 256, floppy_options[i].extensions );
	}

	// set brief and instance name
	update_names();
}
Example #2
0
void floppy_image_device::set_formats(const floppy_format_type *formats)
{
	image_device_format **formatptr;
	image_device_format *format;
	formatptr = &m_formatlist;
	extension_list[0] = '\0';
	fif_list = 0;
	for(int cnt=0; formats[cnt]; cnt++)
	{
		// allocate a new format
		floppy_image_format_t *fif = formats[cnt]();
		if(!fif_list)
			fif_list = fif;
		else
			fif_list->append(fif);

		format = global_alloc_clear(image_device_format);
		format->m_index       = cnt;
		format->m_name        = fif->name();
		format->m_description = fif->description();
		format->m_extensions  = fif->extensions();
		format->m_optspec     = "";

		image_specify_extension( extension_list, 256, fif->extensions() );
		// and append it to the list
		*formatptr = format;
		formatptr = &format->m_next;
	}

	// set brief and instance name
	update_names();
}
Example #3
0
void cassette_image_device::device_config_complete()
{
	m_extension_list[0] = '\0';
	for (int i = 0; m_formats[i]; i++ )
		image_specify_extension( m_extension_list, 256, m_formats[i]->extensions );

	// set brief and instance name
	update_names();
}
Example #4
0
void legacy_floppy_image_device::device_config_complete()
{
	m_extension_list[0] = '\0';
	const struct FloppyFormat *floppy_options = m_config->formats;
	for (int i = 0; floppy_options[i].construct; i++)
	{
		// only add if creatable
		if (floppy_options[i].param_guidelines) {
			// allocate a new format and append it to the list
			m_formatlist.push_back(std::make_unique<image_device_format>(floppy_options[i].name, floppy_options[i].description, floppy_options[i].extensions, floppy_options[i].param_guidelines));
		}
		image_specify_extension( m_extension_list, 256, floppy_options[i].extensions );
	}

	// set brief and instance name
	update_names();
}
Example #5
0
void floppy_image_device::set_formats(const floppy_format_type *formats)
{
	extension_list[0] = '\0';
	fif_list = NULL;
	for(int cnt=0; formats[cnt]; cnt++)
	{
		// allocate a new format
		floppy_image_format_t *fif = formats[cnt]();
		if(!fif_list)
			fif_list = fif;
		else
			fif_list->append(fif);

		m_formatlist.append(*global_alloc(image_device_format(fif->name(), fif->description(), fif->extensions(), "")));

		image_specify_extension( extension_list, 256, fif->extensions() );
	}

	// set brief and instance name
	update_names();
}
Example #6
0
void cassette_image_device::device_config_complete()
{
	// inherit a copy of the static data
	const cassette_interface *intf = reinterpret_cast<const cassette_interface *>(static_config());
	if (intf != NULL)
		*static_cast<cassette_interface *>(this) = *intf;

	// or initialize to defaults if none provided
	else
	{
		memset(&m_formats, 0, sizeof(m_formats));
		memset(&m_create_opts, 0, sizeof(m_create_opts));
		memset(&m_default_state, 0, sizeof(m_default_state));
		memset(&m_interface, 0, sizeof(m_interface));
		memset(&m_device_displayinfo, 0, sizeof(m_device_displayinfo));
	}

	m_extension_list[0] = '\0';
	for (int i = 0; m_formats[i]; i++ )
		image_specify_extension( m_extension_list, 256, m_formats[i]->extensions );

	// set brief and instance name
	update_names();
}