|
[Bochs-cvs] CVS: bochs/gui siminterface.cc,1.94,1.94.6.1 siminterface.h,1.99,1.99.6.1
From: Christophe Bothamy <cbothamy@us...> - 2003-03-26 01:52
|
Update of /cvsroot/bochs/bochs/gui
In directory sc8-pr-cvs1:/tmp/cvs-serv29637/gui
Modified Files:
Tag: BRANCH_HARDDISK_MODES
siminterface.cc siminterface.h
Log Message:
- Initial commit of patch.harddisk-modes in its dedicated branch :
This patch adds multiple disk "modes" support to Bochs.
It includes Justin SB's sparse disk support, and Sharvil
Nanavati's vmware3 support, as well as legacy modes
(flat, concat, external (EXTERNAL_DISK_SIMULATOR),
dll (DLL_HD_SUPPORT)), and proposed additional modes
(undoable, growable, volatile, z-undoable, z-volatile)
(see http://cbothamy.free.fr/projects/bochs/disk%20modes%20changes.txt)
This patch removes the old and now unneeded '--enable-split-hd'
and adds a '--enable-compressed-hd' to the ./configure options
Compressed modes will be use zlib.
This patch adds a new "mode" option to the ataX-xxxx directive
of the configuration file.
This way, it is possible to use one disk mode for each
of the ata devices.
Done :
- inclusion of sparse disk image support
- inclusion of vmware3 image support
- handle new "mode" option in main.cc
- handle new "mode" option in text config interface
- update .bochsrc with new option
- handle modes in harddrive.cc
- update iodev/Makefile.in
- update bximage to create sparse disks
- update bximage to create growable disks
- implement redolog class
- implement additionnal mode growable
- implement additionnal mode undoable
- implement additionnal mode volatile
- implement additionnal mode z-undowable (_VERY_ slow)
- implement additionnal mode z-volatile (_VERY_ slow)
- check for mkstemp on win32/configure. Provide a replacement
- check for zlib.h in ./configure
- fail nicely when compiling when --enable-compressed-hd and no zlib.h
- check availability of zlib for win32
Still to do :
- update bximage to convert/commit various modes
- implement additionnal mode compressed
- implement additionnal mode split
- update bximage to create split disks
- add command line switches to bximage
- handle new "mode" option in wxwindow config interface
- update user doc (see misc.txt)
- update developer doc
Index: siminterface.cc
===================================================================
RCS file: /cvsroot/bochs/bochs/gui/siminterface.cc,v
retrieving revision 1.94
retrieving revision 1.94.6.1
diff -u -d -r1.94 -r1.94.6.1
--- siminterface.cc 6 Feb 2003 23:16:55 -0000 1.94
+++ siminterface.cc 26 Mar 2003 01:51:35 -0000 1.94.6.1
@@ -442,14 +442,17 @@
char *floppy_status_names[] = { "ejected", "inserted", NULL };
int n_floppy_status_names = 2;
-char *floppy_bootdisk_names[] = { "floppy", "hard","cdrom", NULL };
+char *floppy_bootdisk_names[] = { "floppy", "disk","cdrom", NULL };
int n_floppy_bootdisk_names = 3;
char *loader_os_names[] = { "none", "linux", "nullkernel", NULL };
int n_loader_os_names = 3;
char *keyboard_type_names[] = { "xt", "at", "mf", NULL };
int n_keyboard_type_names = 3;
-char *atadevice_type_names[] = { "hard disk", "cdrom", NULL };
+
+char *atadevice_type_names[] = { "disk", "cdrom", NULL };
int n_atadevice_type_names = 2;
+char *atadevice_mode_names[] = { "flat", "concat", "external", "dll", "sparse", "vmware3", "split", "undoable", "growable", "volatile", "z-undoable", "z-volatile", NULL };
+int n_atadevice_mode_names = 12;
char *atadevice_status_names[] = { "ejected", "inserted", NULL };
int n_atadevice_status_names = 2;
char *atadevice_biosdetect_names[] = { "none", "auto", "cmos", NULL };
Index: siminterface.h
===================================================================
RCS file: /cvsroot/bochs/bochs/gui/siminterface.h,v
retrieving revision 1.99
retrieving revision 1.99.6.1
diff -u -d -r1.99 -r1.99.6.1
--- siminterface.h 6 Feb 2003 23:16:54 -0000 1.99
+++ siminterface.h 26 Mar 2003 01:51:36 -0000 1.99.6.1
@@ -199,6 +199,14 @@
BXP_ATA2_SLAVE_TYPE,
BXP_ATA3_MASTER_TYPE,
BXP_ATA3_SLAVE_TYPE,
+ BXP_ATA0_MASTER_MODE,
+ BXP_ATA0_SLAVE_MODE,
+ BXP_ATA1_MASTER_MODE,
+ BXP_ATA1_SLAVE_MODE,
+ BXP_ATA2_MASTER_MODE,
+ BXP_ATA2_SLAVE_MODE,
+ BXP_ATA3_MASTER_MODE,
+ BXP_ATA3_SLAVE_MODE,
BXP_ATA0_MASTER_PATH,
BXP_ATA0_SLAVE_PATH,
BXP_ATA1_MASTER_PATH,
@@ -1117,6 +1125,20 @@
#define BX_ATA_TRANSLATION_AUTO 4
#define BX_ATA_TRANSLATION_LAST 4
+#define BX_ATA_MODE_FLAT 0
+#define BX_ATA_MODE_CONCAT 1
+#define BX_ATA_MODE_EXTDISKSIM 2
+#define BX_ATA_MODE_DLL_HD 3
+#define BX_ATA_MODE_SPARSE 4
+#define BX_ATA_MODE_VMWARE3 5
+#define BX_ATA_MODE_SPLIT 6
+#define BX_ATA_MODE_UNDOABLE 7
+#define BX_ATA_MODE_GROWABLE 8
+#define BX_ATA_MODE_VOLATILE 9
+#define BX_ATA_MODE_Z_UNDOABLE 10
+#define BX_ATA_MODE_Z_VOLATILE 11
+#define BX_ATA_MODE_LAST 11
+
BOCHSAPI extern char *bochs_start_names[];
BOCHSAPI extern int n_bochs_start_names;
BOCHSAPI extern char *floppy_type_names[];
@@ -1132,6 +1154,8 @@
BOCHSAPI extern int n_keyboard_type_names;
BOCHSAPI extern char *atadevice_type_names[];
BOCHSAPI extern int n_atadevice_type_names;
+BOCHSAPI extern char *atadevice_mode_names[];
+BOCHSAPI extern int n_atadevice_mode_names;
BOCHSAPI extern char *atadevice_status_names[];
BOCHSAPI extern int n_atadevice_status_names;
BOCHSAPI extern char *atadevice_biosdetect_names[];
@@ -1150,6 +1174,7 @@
bx_list_c *Omenu;
bx_param_bool_c *Opresent;
bx_param_enum_c *Otype;
+ bx_param_enum_c *Omode;
bx_param_string_c *Opath;
bx_param_num_c *Ocylinders;
bx_param_num_c *Oheads;
|
| Thread | Author | Date |
|---|---|---|
| [Bochs-cvs] CVS: bochs/gui siminterface.cc,1.94,1.94.6.1 siminterface.h,1.99,1.99.6.1 | Christophe Bothamy <cbothamy@us...> |