1
0
Fork 0
Commit graph

4179 commits

Author SHA1 Message Date
Sjoerd van der Berg
53666d5f27 Extra DIR sorting options patch by Saga Musix
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4255
2019-09-08 12:25:41 +00:00
Peter Veenstra
25e01bd042 Fix bug 512, reported by philipp. (checking wrong variable to see if malloc was a success)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4254
2019-09-02 16:50:30 +00:00
Peter Veenstra
05f15ac4c0 Correct a little bug that caused graphics corruption in win95 with s3 driver. (jmarsh)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4252
2019-06-30 11:31:09 +00:00
Peter Veenstra
4ffc75be3c Add wrapping here as well.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4251
2019-06-27 09:12:41 +00:00
Sjoerd van der Berg
e48149278e Changes to allow for mingw i686 to compile a new zmbv.dll
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4247
2019-06-25 20:44:00 +00:00
Peter Veenstra
0abb573167 Implement simple access control for reading and writing files that are accessable from within DOSBox. Overlay not yet tested, hence not part of this commit.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4245
2019-06-25 17:53:05 +00:00
Peter Veenstra
551ee5b2fd drive => i_drive
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4242
2019-06-25 14:51:25 +00:00
Peter Veenstra
ad88f982c0 Add some size checks when accessing Drives[], mostly needed when DOS_DRIVES is not set to 26, make size parsing not go outside the target array.
Let's not try to assign a drive in the switchlist to a too high number.
Don't access imagelist for drives >D when unmounting. 


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4239
2019-06-25 06:12:13 +00:00
Peter Veenstra
e90de61263 Create fopen_wrapper so we can filter out specific directories, which DOS games should have no access to
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4238
2019-06-24 20:09:59 +00:00
Peter Veenstra
46babe5666 End of environment is a bit shorter. Very old code, lets see what breaks.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4235
2019-06-20 09:22:17 +00:00
Peter Veenstra
f74067c2b0 Use size_t when dealing with strings and strlen. (Alexandre)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4232
2019-06-19 08:11:01 +00:00
Peter Veenstra
747190b04e Add check for realpath
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4230
2019-06-13 17:53:10 +00:00
Peter Veenstra
ffdcc16af5 Always clear drawing area. Should fix certain linux instalations that use triple buffering
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4229
2019-06-02 19:40:59 +00:00
Peter Veenstra
ee236a7e5a Init texture with zeroes. Should fix the red border with pixel_buffer and nvidia cards on Mac OS X and Linux.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4228
2019-05-26 09:07:07 +00:00
Peter Veenstra
5888c05dd1 Add some missing va_ends. Reported by jmarsh
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4227
2019-05-23 12:51:10 +00:00
Peter Veenstra
fa8b4c5d00 Move all stack alignment operations into one place and some optimalisations (thanks jmarsh)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4226
2019-05-20 19:10:56 +00:00
Peter Veenstra
e723355b92 Silence a warning
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4225
2019-05-06 10:27:11 +00:00
Peter Veenstra
b326adff06 Remove c++ 11 isms
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4224
2019-05-06 10:23:11 +00:00
Peter Veenstra
dfce234cfb Fix unitialized access to some isoDrive fields. Pause audio before switching. Use right subunit with multiple CDs on one driveletter. (krcroft, jmarsh and qbix)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4223
2019-05-06 08:37:53 +00:00
Peter Veenstra
2aaa951fd4 Rewrite pop_ev so it can trigger pagefaults again. Fixes win3.11. (jmarsh)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4219
2019-04-26 14:06:11 +00:00
ripsaw8080
701663b574 Use a more compatible offset for DOS redirected interrupt vector. Works around a null pointer bug in the notes dropdown list of Jack the Ripper.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4218
2019-04-23 09:50:56 +00:00
Peter Veenstra
1d01c8d151 Add experimental code to have overlay only directories. Add ability to remove directories and create them while in overlay mode.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4217
2019-04-22 14:57:24 +00:00
Peter Veenstra
f8dd3db095 Add functionality to add overlay directories to drive_cache.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4216
2019-04-22 14:21:53 +00:00
ripsaw8080
139456b2d0 Make effect of I/O delay more consistent as cycles run out. Prevents flickering in NBA Jam Tournament Edition at higher cycles, and also improves automatic speed limiting in Quake.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4215
2019-04-20 22:59:42 +00:00
ripsaw8080
911cc38865 Add logic in mouse driver to ignore button events that are out of sequence. Fixes International Rugby Challenge when clicking to lock the mouse.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4214
2019-04-20 22:50:31 +00:00
ripsaw8080
bbea47d541 Let dynamic core recompile interrupt instructions in non-debug builds. Can help software with many INTs, such as compiled BASIC, run faster.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4213
2019-04-20 22:43:36 +00:00
Peter Veenstra
bec0e79890 Don't remove bytes from autoexec.bat when changing settings from autoexec.bat, but replace them instead. This way the location stays valid.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4212
2019-04-20 13:55:35 +00:00
Peter Veenstra
eb26b9a58e Change first_shell to be DOS_Shell instead of Program. Makes future manipulations easier.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4211
2019-04-20 13:48:55 +00:00
Peter Veenstra
8a156f17d8 fix limit check
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4210
2019-04-20 11:49:59 +00:00
Peter Veenstra
6b0f8d6833 Strip leading = from value. Can happen if you execute "irq =5".
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4209
2019-04-19 19:28:55 +00:00
Peter Veenstra
5c8e9264d1 stop storing raw modrm value, as it isn't used any more. Should save an instruction on each get_modrm call.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4208
2019-04-19 17:07:26 +00:00
Peter Veenstra
ea4dd721b5 use decoded modrm instead of raw value. so we don't need to store it.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4207
2019-04-19 17:05:47 +00:00
Peter Veenstra
dc6a76d354 Store whether generated code is 16 or 32 bit, so this information can be used when checking for self modifying code. Some code is identical except for being 32 or 16 bit. Fixes some hard to reproduce problems (with small codeblocks). Thanks jmarsh!
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4206
2019-04-19 12:16:14 +00:00
Peter Veenstra
ee2d3e73ce Unify unmounting code. Fix unmounting of complex drives where parts were left and file pointers were kept open. (thanks jmarsh)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4205
2019-04-11 15:48:04 +00:00
ripsaw8080
8688dc9702 Add IBM signature in EGA video BIOS for compatibility. Fixes EGA detection in 221 B Baker Street. Also include trailing space in signature in case it is checked with word values.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4204
2019-04-08 21:13:00 +00:00
Peter Veenstra
c03a6f497c We use the old style headers in other places and use the functions/types without std::
Should help compilation on FreeBSD.

Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4203
2019-04-06 17:02:40 +00:00
Peter Veenstra
111fa1d45b Check lengths before adding C style strings together. Fixes #498
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4202
2019-04-03 10:31:52 +00:00
ripsaw8080
3978e05909 Improve prefetch and simple cores to not switch to normal core on trap execution. Fixes the demo version of Prehistorik 2 and similar cases that use the trap flag and prefetch tricks. Thanks NewRisingSun.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4201
2019-04-01 22:06:11 +00:00
Peter Veenstra
687e3cf058 Ensure room before adding environment variable using set. Noted when running a subshell under NC.
Bug left: we don't have a lot of environment space in that case (not the 160 minimum).


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4200
2019-04-01 16:50:49 +00:00
Peter Veenstra
4a1ef4d3d7 Refine stack overflow and underflow for the fpu a bit.
Overflow is still treated as Exit.
Underflow is ignored in release mode as it happens every now and then and doesn't seem to cause issues if ignored, thus restoring 0.74 behaviour.



Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4199
2019-04-01 14:32:18 +00:00
Peter Veenstra
c9c97f13af Correct bug related to signedness (M-HT).
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4198
2019-03-31 18:06:27 +00:00
Peter Veenstra
94113a7362 Change multi_remain to repeat last parsed value for non-string types if the next value is empty and of the same type as the last.
Use this to add an optional parameter to sensitivity which controls the y axis. When optional parameter is missing, x and y axis have the same value.
Change limits on sensitivity to allow for negative values so the Mouse Y-axis can be inversed. Similar to patch #276.


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4197
2019-03-29 20:47:57 +00:00
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
Peter Veenstra
d137ec5c0d Fix up DOS_Drive_Cache::GetShortName, used by overlay drive.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4195
2019-03-21 15:56:15 +00:00
Peter Veenstra
8d1c5b31e1 fix loading of configfiles specified with -conf but present in the userdir with -userconf present.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4194
2019-02-28 13:14:21 +00:00
Peter Veenstra
a3635e22af Repair double slash in configfile location on Macs. Add some protection against a NULL dirp.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4193
2019-02-28 13:03:22 +00:00
ripsaw8080
7f7e5f34ac Ignore unrequested data in intelligent mode; fixes Roland sound in Krusty's Fun House.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4192
2019-02-21 14:53:31 +00:00
ripsaw8080
45f28b12bd Only standard 3-byte mouse data packets are supported, so return an error for other packet sizes. MS Mouse driver versions 9.X and later use 1-byte packets for some obscure reason, and now they won't load instead of messing up.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4191
2019-02-04 15:27:26 +00:00
ripsaw8080
88bc1944e8 Reset followed by switch to UART mode should take some time; fixes MPU detection in F29 Retaliator and Hover Force. Also minimize reset delay, which helps with MPU detection at higher cycles in games that prefer less delay, such as Bureau 13.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4190
2019-02-04 15:18:49 +00:00
ripsaw8080
4d35f0ef27 Correct relative track length in subchannel data for CD-ROM images; fixes speech audio cutting off too soon in Casino Tournament of Champions.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4189
2019-02-04 15:16:55 +00:00