65 |
|
const int GAD_CDROM_UNIT = 0x0305; |
66 |
|
const int GAD_BOOTDRIVER = 0x0306; |
67 |
|
const int GAD_NOCDROM = 0x0307; |
68 |
+ |
const int GAD_EXTFS = 0x0308; |
69 |
|
|
70 |
|
const int GAD_VOLUME_READONLY = 0x0310; // "Add/Edit Volume" window |
71 |
|
const int GAD_VOLUME_TYPE = 0x0311; |
143 |
|
* Locale hook - returns string for given ID |
144 |
|
*/ |
145 |
|
|
146 |
< |
static __saveds __regargs const char *locale_hook_func(struct Hook *hook /*a0*/, void *id /*a1*/, struct LayoutHandle *h /*a2*/) |
146 |
> |
static __saveds __attribute__((regparm(3))) const char *locale_hook_func(struct Hook *hook /*a0*/, void *id /*a1*/, struct LayoutHandle *h /*a2*/) |
147 |
|
{ |
148 |
|
return GetString((uint32)id); |
149 |
|
} |
525 |
|
*/ |
526 |
|
|
527 |
|
static struct List disk_list; |
528 |
< |
static char cdrom_name[256]; |
528 |
> |
static char cdrom_name[256], extfs_name[256]; |
529 |
|
static ULONG cdrom_unit, cdrom_flags, cdrom_start, cdrom_size, cdrom_bsize; |
530 |
|
static BYTE bootdriver_num, nocdrom; |
531 |
|
|
560 |
|
} |
561 |
|
|
562 |
|
nocdrom = PrefsFindBool("nocdrom"); |
563 |
+ |
|
564 |
+ |
extfs_name[0] = 0; |
565 |
+ |
str = PrefsFindString("extfs"); |
566 |
+ |
if (str) |
567 |
+ |
strncpy(extfs_name, str, sizeof(extfs_name) - 1); |
568 |
|
} |
569 |
|
|
570 |
|
// Ghost/unghost "Edit" and "Remove" buttons |
956 |
|
PrefsRemoveItem("cdrom"); |
957 |
|
|
958 |
|
PrefsReplaceBool("nocdrom", nocdrom); |
959 |
+ |
|
960 |
+ |
if (strlen(extfs_name)) |
961 |
+ |
PrefsReplaceString("extfs", extfs_name); |
962 |
|
} |
963 |
|
|
964 |
|
// Create "Volumes" pane |
974 |
|
VGROUP; |
975 |
|
LT_New(h, LA_Type, LISTVIEW_KIND, |
976 |
|
LA_ID, GAD_DISK_LIST, |
977 |
+ |
LA_Chars, 20, |
978 |
|
GTLV_Labels, (ULONG)&disk_list, |
979 |
|
LALV_Lines, 6, |
980 |
|
LALV_Link, (ULONG)NIL_LINK, |
1042 |
|
TAG_END |
1043 |
|
); |
1044 |
|
ENDGROUP; |
1045 |
+ |
VGROUP; |
1046 |
+ |
LT_New(h, LA_Type, STRING_KIND, |
1047 |
+ |
LA_LabelID, STR_EXTFS_CTRL, |
1048 |
+ |
LA_ID, GAD_EXTFS, |
1049 |
+ |
LA_Chars, 20, |
1050 |
+ |
LA_STRPTR, (ULONG)extfs_name, |
1051 |
+ |
GTST_MaxChars, sizeof(extfs_name) - 1, |
1052 |
+ |
TAG_END |
1053 |
+ |
); |
1054 |
+ |
ENDGROUP; |
1055 |
|
ENDGROUP; |
1056 |
|
} |
1057 |
|
|
1087 |
|
|
1088 |
|
if (strlen(scsi_dev[i])) { |
1089 |
|
char str[256]; |
1090 |
< |
sprintf("%s/%ld", scsi_dev[i], scsi_unit[i]); |
1090 |
> |
sprintf(str, "%s/%ld", scsi_dev[i], scsi_unit[i]); |
1091 |
|
PrefsReplaceString(prefs_name, str); |
1092 |
|
} else |
1093 |
|
PrefsRemoveItem(prefs_name); |