mirror of
https://github.com/jfdelnero/HxCFloppyEmulator.git
synced 2026-07-28 04:06:36 +00:00
WIP : write protect state propagation.
This commit is contained in:
@@ -116,6 +116,8 @@ typedef struct app_data
|
||||
int32_t interface_mode;
|
||||
int32_t double_step;
|
||||
|
||||
int32_t write_protect;
|
||||
|
||||
int32_t fill_value;
|
||||
|
||||
int32_t min_nb_of_tracks;
|
||||
@@ -490,6 +492,9 @@ static void XMLCALL charhandler(void *data, const char *s, int len)
|
||||
case FILESIZE:
|
||||
ad->file_size = atoi(buffer);
|
||||
break;
|
||||
case WRITE_PROTECT:
|
||||
ad->write_protect = atoi(buffer);
|
||||
break;
|
||||
/* case TRACKSIZE:
|
||||
ad->track_size = atoi(buffer);
|
||||
break;*/
|
||||
@@ -850,8 +855,12 @@ static void XMLCALL end(void *data, const char *el)
|
||||
case LAYOUT:
|
||||
generateDisk(ad,ad->image_data,ad->buffer_size);
|
||||
ad->floppy = hxcfe_getFloppy (ad->fb);
|
||||
|
||||
if(ad->interface_mode>=0)
|
||||
hxcfe_floppySetInterfaceMode(ad->floppycontext,ad->floppy,ad->interface_mode);
|
||||
|
||||
if(ad->write_protect)
|
||||
hxcfe_floppySetFlags(ad->floppycontext, ad->floppy, HXCFE_FLOPPY_WRPROTECTED_FLAG );
|
||||
break;
|
||||
|
||||
case TRACK:
|
||||
|
||||
@@ -15,6 +15,7 @@ enum
|
||||
FILEEXT,
|
||||
FILESIZE,
|
||||
INTERFACE_MODE,
|
||||
WRITE_PROTECT,
|
||||
DOUBLE_STEP,
|
||||
LAYOUT,
|
||||
NUMBEROFTRACK,
|
||||
@@ -72,6 +73,7 @@ keyword keyword_list[]=
|
||||
{"prefered_file_extension", FILEEXT, DISK_LAYOUT},
|
||||
{"file_size", FILESIZE, DISK_LAYOUT},
|
||||
{"interface_mode", INTERFACE_MODE, DISK_LAYOUT},
|
||||
{"write_protected", WRITE_PROTECT, DISK_LAYOUT},
|
||||
{"double_step", DOUBLE_STEP, DISK_LAYOUT},
|
||||
{"layout", LAYOUT, DISK_LAYOUT},
|
||||
{"min_number_of_tracks", MINNUMBEROFTRACKS, LAYOUT},
|
||||
|
||||
Reference in New Issue
Block a user