Jonathan Campbell
4e93e049db
pull mainline script... except my copy of git doesn't like. oh well.
2015-01-25 20:45:47 -08:00
Jonathan Campbell
d250831bbe
change default DSP busy write time to 1000ns (1us). I'm starting to
...
wonder if certain early demos are having problems keeping single-cycle
going because our delay is too long...
2015-01-25 00:52:07 -08:00
Jonathan Campbell
5ec6c54341
VS2008 changed a .suo, whatever
2015-01-22 00:33:04 -08:00
Jonathan Campbell
5ee436a321
oops, var scope fixes for VS2008
DOSBox-X-win32-5ee436a321785d455355f9d25aa4e9fc98b90500
2015-01-22 00:19:12 -08:00
Jonathan Campbell
2d9a67e96a
expand scaler max width to 1920, to make 1920x1080 modes work
2015-01-21 02:50:26 -08:00
Jonathan Campbell
652f302628
add HDTV resolutions to modelist as well as 720x480.
2015-01-21 02:39:30 -08:00
Jonathan Campbell
623f5b0bd7
move int10 mode flags into header
2015-01-21 02:14:05 -08:00
Jonathan Campbell
0e7aa38586
add configuration option to disable/enable low-resolution VESA modes.
...
this option can be used to test what DOS games and demos will do on SVGA
hardware that offers SVGA graphics modes (640x400x256 and above) but not
the low resolution modes (320x200x16/24/32bpp).
2015-01-21 02:10:00 -08:00
Jonathan Campbell
f93b8e2bb4
ok, NOw the comment is complete
2015-01-19 02:25:10 -08:00
Jonathan Campbell
b6a6f5f12c
add commentary explaining why the code enables A20 on Windows 3.1 INIT,
...
and a more recent discovery that Windows 3.1 Standard mode (for 286)
uses a different callout that this code is not prepared to handle, and
how to work around it.
2015-01-19 02:23:44 -08:00
Jonathan Campbell
cb3bdf0671
It turns out Windows 3.1 so far has never set the A20 gate on until
...
later in startup, but that it happened to work because the default
setting is a20=fast (remap the first 64KB at the 1MB mark to fake A20).
When you set a20=mask, the initial assumption that A20 is on causes
Windows to crash because A20 is off.
This hack adds an option (on by default) that switches on the A20 line
in response to the INIT broadcast message that Windows 3.1/9x emits at
startup, which then allows Windows 3.1 to boot properly with a20=mask.
2015-01-19 01:46:29 -08:00
Jonathan Campbell
e19e63d48d
XMS: A20 local enable/disable refcounting, instead of blind
...
enable/disable like original code. This makes LOCAL ENABLE/LOCAL DISABLE
act in accordance with the XMS 3.0 specification. Also noted: Windows
3.1 does not boot properly when a20=mask because at some point it
assumes A20 is enabled when it is not (prior to it's calls to enable
A20), thus: crash.
2015-01-19 01:35:54 -08:00
Jonathan Campbell
785bfd6805
whoops, all help text for FDC should only assign to the first instance
2015-01-18 21:38:50 -08:00
Jonathan Campbell
cd27b7bfb4
add configuration option: if set, VGA emulation will not trigger DOSBox
...
resize if value written to Horizontal Display End register of the CRTC
is smaller than the current value. This prevents rapid resizing events
when running DoWhackaDo. This also helps DOSBox to properly display the
entire active region where the VGA resize delay hack would often cut off
the rightmost 16-32 pixels of the demo's animation.
2015-01-18 18:59:25 -08:00
Jonathan Campbell
96ccf6cbc4
move options into Control object. move argv parsing to subroutine.
2015-01-18 18:28:45 -08:00
Jonathan Campbell
4491cce008
option for ISA memory hole at 512KB
2015-01-18 17:41:32 -08:00
Jonathan Campbell
1e3b141298
when limiting DOS memory also unmap that RAM
2015-01-18 17:31:09 -08:00
Jonathan Campbell
b9dac6d8fb
add option to limit DOS conventional memory
2015-01-18 17:22:16 -08:00
Jonathan Campbell
88bb074c19
NE2000: future plans
2015-01-18 14:41:45 -08:00
Jonathan Campbell
a5563f4caa
reminder to self
2015-01-18 13:58:50 -08:00
Jonathan Campbell
026cc70fb2
print help and version to STDERR not STDOUT
2015-01-18 13:45:23 -08:00
Jonathan Campbell
7b90ef167a
CMOS date forced host option converted
2015-01-18 13:44:22 -08:00
Jonathan Campbell
071cab3299
convert remaining argv switches to new getopt code
2015-01-18 13:41:21 -08:00
Jonathan Campbell
5e331025c6
accept -disable-numlock-check and -disable_numlock_check as same option,
...
for compat. with mainline DOSBox
2015-01-18 13:32:11 -08:00
Jonathan Campbell
52b217caf8
numlock check
2015-01-18 13:30:27 -08:00
Jonathan Campbell
800dacb916
userconf, conf, savedir options
2015-01-18 13:26:31 -08:00
Jonathan Campbell
e082494d98
more getopt parsing loop code.
2015-01-18 02:23:31 -08:00
Jonathan Campbell
88b1b44cb4
new "getopt" style parsing (but as a "get argv" type loop).
2015-01-18 02:16:32 -08:00
Jonathan Campbell
a945c8ca57
start to lean towards passing a param list to this command line utility
...
function, terminating the array with NULL instead of "".
2015-01-18 01:10:26 -08:00
Jonathan Campbell
01536c38fc
process --help and --version BEFORE full initialization
2015-01-18 00:04:45 -08:00
Jonathan Campbell
11f95ec0e6
remove try block in main(), it's time to unwrap the layers of C++
...
exception handling to help cleanup the code.
2015-01-17 23:45:57 -08:00
Jonathan Campbell
1596f3c8d4
same debug option for EMS memory.
2015-01-17 22:49:48 -08:00
Jonathan Campbell
8f83cc514a
correct help text
2015-01-17 22:12:42 -08:00
Jonathan Campbell
a7a97727c1
debug option: if enabled, XMS memory allocation will always zero the
...
region first (same as INT 21h memory allocation).
2015-01-17 22:09:55 -08:00
Jonathan Campbell
369eea9f41
debug/helper option: add new option that, if set, zeroes memory blocks
...
returned by INT 21h prior to returning the block to the application.
This option is intended for DOS games or demos that may have problems
with uninitialized variables in the DATA or STACK segments. At the very
least, it helps prevent the vectorball part of Second Reality from
crashing.
2015-01-17 03:35:57 -08:00
Jonathan Campbell
197baf127a
turn DOS CON alternate behavior into user-configurable switch, with
...
explanation.
2015-01-16 00:16:09 -08:00
Jonathan Campbell
678e1cf427
dosbox scandisk-friendly CON hack: check readcache to be consistent with
...
the rest of the emulation.
2015-01-16 00:07:19 -08:00
Jonathan Campbell
e8d3794045
oops, fix FDC DMA range check
2015-01-15 23:50:56 -08:00
Jonathan Campbell
a54b78d459
FDC emulation: register as ISA PnP BIOS device if enabled in dosbox.conf
...
IDE emulation: if we restrict ourself to 0x3F6-0x3F6 to make room for
floppy controller, then indicate so in the PnP BIOS device entry.
2015-01-15 23:44:32 -08:00
Jonathan Campbell
654b5f986d
fdc head stepping, some tracking
2015-01-10 03:00:34 -08:00
Jonathan Campbell
3265fb8ebd
FDC emulation: "instant mode" now has meaning, and affects the
...
seek/calibrate commands. if instant mode is set, the head is instantly
moved, else, delays are used to simulate motor stepping delays.
2015-01-10 02:42:15 -08:00
Jonathan Campbell
93e6586e90
suggested switch consolidation in VGA scanline check.
2015-01-10 01:21:13 -08:00
Jonathan Campbell
9e21731799
reminder to self about future changes to GUS emulation
2014-12-28 23:31:27 -08:00
Jonathan Campbell
5e9a21a2bd
some cleanup with help from truth5678
2014-12-28 22:23:36 -08:00
Jonathan Campbell
a2f1d9c376
code mistake fix: assign zero axis position to both virtual joysticks,
...
not just the first. [truth5678]
2014-12-28 01:24:01 -08:00
Jonathan Campbell
c8114cb9e0
FDC: always set IRQ pending even if IRQ masked off. watch IRQ enable to
...
activate IRQ if pending but was masked. reset ST0 register on FDC reset.
2014-12-26 22:02:21 -08:00
Jonathan Campbell
a471fda2d0
bugfix: FDC Sense Interrupt command needs to clear IRQ if pending, and
...
return error code if no IRQ pending. This fixes Norton Backup causing
Windows 3.1 to hang in an endless loop hitting the FDC controller with
"Sense Interrupt Status" commands when you click "Add device".
2014-12-26 21:19:03 -08:00
Jonathan Campbell
a2ebd029ea
whoah, big mistake. floppy controllers use DMA channel 2, not 1!
2014-12-24 12:52:34 -08:00
Jonathan Campbell
8b7a53743e
more
DOSBox-X-win32-8b7a53743e4a11a10def6bc9a5975a5f1c35e165
2014-12-23 03:02:24 -08:00
Jonathan Campbell
15844c1cde
change std::min to MIN() macro. additional fixes to compile with VS2008
...
again.
2014-12-23 02:49:17 -08:00