Commit Graph

1562 Commits

Author SHA1 Message Date
Volker Ruppert
bc60caaccc - added vvfat floppy support (1.44 MB media only / currently not working with
plugins enabled)
- added special characters (0xe5 <-> 0x05) conversion in short filename
2011-01-11 20:14:21 +00:00
Volker Ruppert
3520b9b154 - handle file attribute changes (system, hidden and read-only)
- some work on FAT12 (required for floppy support)
- moved write support code from close() to new method commit_changes()
2011-01-10 21:15:05 +00:00
Volker Ruppert
2bb3d74f70 - fixed handling of modified files if the first cluster has been changed
- handle deletes only after parsing the new directory tree
- show file attributes bits that have been modified
2011-01-09 19:20:11 +00:00
Volker Ruppert
129ce92871 - check mappings for delete request in reverse order to avoid removing non-empty
directories
- some other small changes
2011-01-09 09:19:05 +00:00
Volker Ruppert
e5122a3ccd - experimental real write added (commit changes on exit). When Bochs is shutting
down and the vvfat image has been modied, the user is asked if the vvfat
  directory should also be modified. Currently not handled: remove non-empty
  directories, system-reserved clusters and file attributes.
- some small related changes
2011-01-09 00:36:42 +00:00
Volker Ruppert
6d7900c8a5 - redolog_t: store current image position in variable and update it after
successful reads and writes (required for vvfat write support)
- added multiple sector read / write support to the undoable and volatile disk
  image mode (required for USB MSD)
2011-01-07 18:35:34 +00:00
Volker Ruppert
2511bf45a8 - always place the 'dot entries' on top of a subdirectory (for some host
file systems this position is not mandatory)
- some small code cleanups
- disabled currently unused code
2011-01-04 18:39:51 +00:00
Volker Ruppert
5dba54c861 - added support for boot sector file without MBR file. Now all cases are handled
correctly: MBR + bootsector, MBR only, boot sector only and none of the files.
2011-01-03 19:03:08 +00:00
Volker Ruppert
3ef57e9f7e - fixed some format warnings in the devices code 2011-01-02 16:51:08 +00:00
Volker Ruppert
e34a9da72c - improved FAT32 support (should be okay now)
- implemented reading boot sector from file
- VVFAT TODO: apply file and directory changes on exit
2011-01-02 14:44:20 +00:00
Volker Ruppert
747f2ba541 - experimental FAT32 support (works in most cases)
- volatile write support using the hdimage redolog_t class
  (TODO: apply directory and file changes on exit)
- updated makefile dependencies
2011-01-01 19:14:25 +00:00
Volker Ruppert
6d0b6c69b9 - implemented reading MBR from file (TODO: read boot sector)
- value of 'sectors_per_fat' must be 32 bit (for FAT32)
- some other small fixes
2010-12-31 15:39:27 +00:00
Volker Ruppert
a9a6bbfe22 - added support for reserved sectors between bootsector and FAT containing a copy
of the bootsector and the "FS info sector" (required for FAT32)
- implemented a more accurate way to calculate the number of clusters and the
  corresponding FAT size
- some other small fixes
2010-12-30 12:30:58 +00:00
Volker Ruppert
c521ec6ba1 - fixed MBR and boot sector values 2010-12-28 22:31:40 +00:00
Volker Ruppert
d45c98a267 - fixed crash caused by uninitialized value (found with MSVC)
- fixed cylinder overflow check
2010-12-27 22:37:36 +00:00
Volker Ruppert
52e4917f52 use C/H/S values from image for the CMOS setup 2010-12-27 18:37:25 +00:00
Volker Ruppert
a8ced63e31 - more fixes for configurable disk geometry
- check the root entries limit of FAT16
- some work on the FAT32 support (not yet complete)
- report volume creation date and time
- some other small fixes
2010-12-26 23:13:29 +00:00
Volker Ruppert
ba41f4cbff - set cluster size depending on disk size (FAT32 support not complete)
- several fixes related to configurable geometry (some more tests required)
- skip MBR and boot sector image files when reading directory (still unused)
- support overriding cylinder value with 0 in the command line
- don't return failure value when reading unused sectors
- increment buffer pointer when reading more than one sector
2010-12-24 20:47:22 +00:00
Volker Ruppert
341c764e1f - added initial 'virtual VFAT' image support (shadows a local directory)
* ported the read part of the Qemu vvfat block driver
  * added win32 specific directory functions (required for MSVC)
  * TODO: write support, FAT32 support, read MBR and boot sector from file
2010-12-23 16:17:12 +00:00
Volker Ruppert
1e3f3ee0c0 - added new hdimage method get_capabilities() that can return special flags
- HDIMAGE_HAS_GEOMETRY flag added to vmware3 & vmware4 modes (these modes use
  the CHS values from image file)
- harddrv: renamed pointer to hdimage object
2010-12-21 21:47:41 +00:00
Volker Ruppert
99eb027531 - modified usb_common plugin implementation to make Windows DLL plugins compile
* added new "pseudo device" for the USB device control (init, send message)
  * moved register_state() call from the hubs to the common device init code
- fixed unresolved symbols in usb_msd code
2010-12-14 21:20:37 +00:00
Volker Ruppert
29c8824bab - added support for HD image modes in usb_msd (TODO: specify journal file)
- siminterface: added helper method hdimage_get_mode()
- moved hdimage related stuff from harddrv.cc to the hdimage code
- changed hdimage related names
2010-12-10 17:02:18 +00:00
Volker Ruppert
c214fffa5e - created a separate plugin that contains the USB devices, the devices init
code and the generic USB stuff. Up to now, in plugin mode each host controller
  staticly links all this stuff with the plugin library. So it existed twice and
  e.g. it wasn't possible to create a unique serial number for disks/cdroms
  connected to different HCs. Some other sanity checks could be added now, too.
- Added a register mechanism for the USB device init function in the main
  devices code.
- TODO: Some other device plugins could be fixed the same way: network devices
        (sharing ethernet modules), harddrive & usb_msd (sharing hdimage and
        cdrom)
2010-12-06 18:51:13 +00:00
Volker Ruppert
cd7b703a5b - init() method added to the USB device class
- new USB device class method get_info() for improved device connect BX_INFOs
- USB printer: output file creation failure now causes BX_ERROR and disconnect
  instead of BX_PANIC (similar to usb_msd)
- removed obsolete include statements
2010-12-05 13:09:41 +00:00
Volker Ruppert
45148b3eb7 - fixed compiler warning and big endian issue in "send buffer" command code 2010-11-26 15:42:41 +00:00
Volker Ruppert
cdfedaa9bc - data type SOCKET doesn't exist on non-win32 platforms 2010-11-23 20:26:37 +00:00
Stanislav Shwartsman
9aa503cb9d fixed warnings for win64 compilation 2010-11-23 14:59:36 +00:00
Volker Ruppert
50d9fa3e9a - added support for VGA graphics mode with 400 lines (partial fix for SF bug #2948724) 2010-11-22 22:11:30 +00:00
Volker Ruppert
21d53ee619 - setting the ISR transmit complete bit doesn't depend on the corresponding IMR bit 2010-11-21 16:21:41 +00:00
Volker Ruppert
a41ab5ccf9 - attempt to fix win64 compilation (Win 95/98/ME specific floppy access method
not required on this platform)
2010-11-20 12:37:00 +00:00
Stanislav Shwartsman
85250931dd fix typo 2010-11-13 13:06:00 +00:00
Stanislav Shwartsman
e5bb07e366 a few more steps towards win64 compilation under windows 2010-11-13 13:00:26 +00:00
Stanislav Shwartsman
c7dba3525a Fixed warnings (patch from mailing list) 2010-08-15 19:57:50 +00:00
Volker Ruppert
8b46dcfc0b - added parameter to control the floppy media write protection. This is based on
the SF patch #1539417, but rewritten from scratch (patch too old). Differences
  to the original version:
  * internal parameter name "readonly"
  * update parameter if floppy image is readonly
  * wxWidgets support
  * documentation updates
  * no specific toolbar buttons
2010-07-03 05:34:27 +00:00
Volker Ruppert
e801f4a256 - removed floppy method get_media_status() (floppy media change handler already
updates the parameter)
2010-06-18 17:23:50 +00:00
Volker Ruppert
0a4c91815d - small fixes in the DHCP code (SF patch #2862322) 2010-05-22 10:15:58 +00:00
Volker Ruppert
fd477dac71 - ignore single mode command 0x02 (386BSD writes it, but works with it ignored) 2010-05-18 17:48:48 +00:00
Volker Ruppert
cdb7e0eb96 - fixed usage of variable 'apic_id_mask' for compatibility with win32 plugin target 2010-05-15 09:23:50 +00:00
Stanislav Shwartsman
35f8e91cad APIC ID mask cleanup 2010-05-14 12:10:00 +00:00
Stanislav Shwartsman
6ac1bdcbdf apic_dest_t as datatype 2010-03-27 09:56:30 +00:00
Stanislav Shwartsman
23927343d5 convert apic id to 32-bit -> pilot before x2apic merge
no functional change supposed to be seen yet
2010-03-26 13:00:14 +00:00
Stanislav Shwartsman
65a78f9887 dos2unix 2010-03-06 21:41:26 +00:00
Stanislav Shwartsman
9124f00645 Fixed format 2010-03-02 07:07:57 +00:00
Stanislav Shwartsman
e3a13a7a55 Make XAPIC runtime option as well 2010-02-28 14:52:17 +00:00
Stanislav Shwartsman
5df864b1f1 Move param_names.h into bochs root folder 2010-02-26 14:18:19 +00:00
Stanislav Shwartsman
55ee809cf7 fix warning 2010-02-08 14:53:31 +00:00
Volker Ruppert
5457fa4458 - fixed register_state() for the USB printer device (no need to save/restore the
file name since it is present in the config tree as a part of the device name)
2010-01-02 16:54:40 +00:00
Stanislav Shwartsman
153d43520d change copyright to bochs project 2009-12-04 19:50:29 +00:00
Stanislav Shwartsman
373377ff6c fix fname size 2009-12-04 17:54:22 +00:00
Stanislav Shwartsman
b2f6bffd8d updates for USB printer 2009-12-04 17:50:10 +00:00