1
0
Fork 0
dosbox-staging/src/dos
Peter Veenstra 202bfa1155 New Drive type: overlay.
When active, this drive redirects new and changed files to a different location.
The files in the overlay and normal drive are merged on startup and kept up to date when the game changes something. 
Files in the overlay are priotizedi, if they exists, above the normal files. 
The drive will switch to an overlayed version of the file on the first write! (Not when opening the file in write-mode).
The overlay is capable of creating missing directories.

With the help of DBOVERLAY files, the drive keeps track of files that are present in the normal directory but deleted by the game. 
All changes are preserved between sessions. 

Current design principles/limitations/requirements:
1) All directories that can be used for saving, must exist already in the base before mounting. (they will be created by DOSBox if missing in the overlay)
2) All filenames inside the overlay directories are UPPERCASE and conform to the 8.3 standard except for the special DBOVERLAY files.
3) To keep point 1 valid at all times, support for creating/renaming/removing directories has been disabled.

Thanks for the help GOG.


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4196
2019-03-25 13:49:25 +00:00
..
cdrom.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
cdrom.h Update year and address of FSF 2019-01-25 14:09:58 +00:00
cdrom_aspi_win32.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
cdrom_image.cpp Correct relative track length in subchannel data for CD-ROM images; fixes speech audio cutting off too soon in Casino Tournament of Champions. 2019-02-04 15:16:55 +00:00
cdrom_ioctl_linux.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
cdrom_ioctl_os2.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
cdrom_ioctl_win32.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dev_con.h Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos.cpp Acknowledge mouse interrupt before entering user routine; fixes sound stutter during mouse movement in Eye of the Beholder III and Casino Tournament of Champions. Clear button counters in the mouse driver reset function; prevents unintended skipping of intro in MechWarrior and others. 2019-02-04 15:15:58 +00:00
dos_classes.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_codepages.h Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_devices.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_execute.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_files.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_ioctl.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_keyboard_layout.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_keyboard_layout_data.h Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_memory.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_misc.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_mscdex.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
dos_programs.cpp New Drive type: overlay. 2019-03-25 13:49:25 +00:00
dos_tables.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
drive_cache.cpp Fix up DOS_Drive_Cache::GetShortName, used by overlay drive. 2019-03-21 15:56:15 +00:00
drive_fat.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
drive_iso.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
drive_local.cpp Do it for both read-only modi 2019-01-25 14:34:47 +00:00
drive_overlay.cpp New Drive type: overlay. 2019-03-25 13:49:25 +00:00
drive_virtual.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
drives.cpp Update year and address of FSF 2019-01-25 14:09:58 +00:00
drives.h New Drive type: overlay. 2019-03-25 13:49:25 +00:00
Makefile.am New Drive type: overlay. 2019-03-25 13:49:25 +00:00
scsidefs.h year/info update for some other files as well 2011-04-26 15:00:36 +00:00
wnaspi32.h Win32 files for cdrom aspi and ioctl 2003-03-06 13:35:14 +00:00