Commit Graph

221 Commits

Author SHA1 Message Date
Jukka Heinonen
abbcf41325 Use correct linear pointer when accessing BIOS data area. 2003-09-30 00:22:12 +00:00
Michael Stefaniuc
0bfdc5554c Silence the FIXME produced by an install check of MVSOUND.SYS. 2003-09-22 19:33:07 +00:00
Michael Stefaniuc
11346f94d1 Silence the FIXME's produced by a check for a dos32 extender. 2003-09-22 19:32:51 +00:00
Jukka Heinonen
23503179dc When entering protected mode, V86 flag must be clear. 2003-09-22 19:32:03 +00:00
Alexandre Julliard
9eb1d2c7fa Moved I/O port handling to dlls/winedos. 2003-09-17 22:45:46 +00:00
Alexandre Julliard
add0c5850b Use WOWCallback16Ex to switch to vm86 mode so that we can setup a
proper exception handler and handle instruction emulation.
2003-09-17 20:23:33 +00:00
Alexandre Julliard
e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Sylvain Petreolle
f20026e7eb Changed some functions to reset CFLAG on success.
Added some traces.
2003-09-03 00:09:29 +00:00
Michael Stefaniuc
8a4f2adace int33 21h is identical to int33 00h. 2003-09-02 00:58:42 +00:00
Jukka Heinonen
7fb4957873 Make DOS process exit using ExitProcess instead of ExitThread.
Make calling DOS exit functions from DPMI either return to StartPM or
print error message if not allowed by DPMI specification.
2003-09-02 00:52:36 +00:00
Jukka Heinonen
0a1fa89f33 Add support for specific EOI PIC command. 2003-09-01 23:55:53 +00:00
Jukka Heinonen
ec42ea4dfb Workaround implemented for passing faked mickeys to mouse callback
routine.
2003-08-29 22:13:27 +00:00
Jukka Heinonen
f68017b851 Allow application to use VGA window that overlaps framebuffer only
partially.
2003-08-29 22:13:11 +00:00
Alexandre Julliard
7df1b9e03a Start using the exported TEB structure from winternl.h where
possible.
2003-08-28 19:57:35 +00:00
Alexandre Julliard
bf97962a51 Avoid including stackframe.h if it's not needed. 2003-08-27 02:52:17 +00:00
Jukka Heinonen
be3b2569c7 Make all users of DOSVM_Enter explicitly set V86 flag.
Fix mouse relay stack usage in protected mode.
Raw mode switch now handles interrupt flag correctly.
2003-08-25 01:01:01 +00:00
Alexandre Julliard
d631f30945 Fixed copy/paste error in WOWCallback16Ex call (spotted by Dmitry
Timoshkov).
2003-08-25 00:54:24 +00:00
Jukka Heinonen
9adb6f2e3f Replace some magic numbers with symbols.
Add sanity checks so that VGA window cannot be used to access memory
outside framebuffer.
2003-08-25 00:53:35 +00:00
Alexandre Julliard
3a5b7cf105 Extended WOWCallback16Ex to support register functions too. This
allows simplifying the wine_call_to_16 assembly code by moving part of
it to C code, and getting rid of the extra kernel exports.
2003-08-23 23:30:51 +00:00
Jukka Heinonen
fbbe6a43aa Make FPU emulation use CS:IP when determining location of calling
software interrupt.
2003-08-20 18:17:39 +00:00
Jukka Heinonen
37925eaf7b Remove unnecessary __wine_call_from_16_regs call frame management code
from raw mode switch handler.
2003-08-20 18:17:23 +00:00
Jukka Heinonen
32e929c0da When forcing call to DOS relay from protected mode, make sure that
relay sees original stack and code pointers. Make it possible for DOS
relay to modify code and stack pointers.
2003-08-19 00:59:23 +00:00
Alexandre Julliard
ef94e40cc1 Added missing \n in TRACE calls. 2003-08-18 20:04:27 +00:00
Jukka Heinonen
215a0d6f3e Fix CPU flag handling when internal interrupts are branched to. 2003-08-18 19:52:28 +00:00
Alexandre Julliard
19b6a49845 Allocate DebugInfo field for all critical sections (based on a patch
by Alex Pasadyn).
Get rid of the Wine-specific CRITICAL_SECTION_INIT macro.
2003-08-12 23:50:54 +00:00
Patrik Stridvall
ba78aac406 Fixed some issues found by winapi_check. 2003-08-08 21:07:23 +00:00
Jukka Heinonen
02c67f3114 Make int1a BIOS ticks be equal to BIOS segment ticks.
Fix bugs in int1a subfunctions.
2003-07-15 20:50:34 +00:00
Jukka Heinonen
4ef7ba7247 Real mode context should always have V86 flag turned on.
Entering protected mode uses simpler and more robust virtual interrupt
flag check.
Mouse events are now received in graphics modes.
Improved tracing output of int33 handler.
2003-07-08 21:11:52 +00:00
Marcus Meissner
39d1b9c0e5 DPMI exceptions only happen on i386. 2003-07-03 18:08:04 +00:00
Jukka Heinonen
2a3ce4c425 Start processing asynchronous DOS events in DPMI mode. 2003-07-01 03:37:41 +00:00
Dmitry Timoshkov
4e1ef0c114 For all DLLs with defined DllMain and which do not require
DLL_THREAD_ATTACH/DLL_THREAD_DETACH notifications, call
DisableThreadLibraryCalls() in order to slightly improve performance
on thread creation/exiting.
2003-06-30 20:53:48 +00:00
Alexandre Julliard
2b72be546c Replace calls to WaitForMultipleObjects with a 0 count by calls to
SleepEx.
2003-06-30 02:10:19 +00:00
Jukka Heinonen
36001fe660 Make timer IRQ handler regular builtin interrupt handler instead of
using an assembler stub.
2003-06-30 02:03:48 +00:00
Gerald Pfeifer
e7724ffc65 Enable all of DllMain(), even if if not MZ_SUPPORTED. 2003-06-27 19:41:10 +00:00
Sylvain Petreolle
1ce760568c Display the interrupt number in hexadecimal. 2003-06-27 19:40:29 +00:00
Gerald Pfeifer
018e3cc67b Expose part of DOSVM_SendQueuedEvents() also for platforms without
MZ_SUPPORTED.
2003-06-24 02:24:54 +00:00
Francois Gouget
17c035b684 O_RDONLY==0 but it's cleaner to pass it to DRIVE_OpenDevice() anyway. 2003-06-23 19:50:16 +00:00
Jukka Heinonen
76f93fb6bc Add IRQ acknowledge handler for internal IRQs.
Change DPMI asynchronous event handling.
Always use alternate stack in DPMI relays and check for pending events
after original stack has been restored.
2003-06-23 03:35:51 +00:00
Jukka Heinonen
75e87b4457 Add int31 VIF manipulation functions.
Fix asynchronous event locking.
Make asynchronous event handling support DPMI.
2003-06-20 21:27:49 +00:00
Jukka Heinonen
e827269a99 Migrate create/open file functions to winedos.
Some fixes based on patch by Ferenc Wagner.
2003-06-16 01:18:01 +00:00
Jukka Heinonen
0b79a6e7c3 Make DOSVM_Wait work in protected mode.
Replace SHOULD_PEND macro with a function.
2003-06-16 01:17:30 +00:00
Sylvain Petreolle
918d8f3e20 Trace which real mode interrupt is emulated. 2003-06-13 23:17:34 +00:00
Jukka Heinonen
4cbc69a223 Move get current directory and set current directory int21
subfunctions into winedos. Fix quite a few bugs in the implementation
of these functions.
2003-06-13 18:05:18 +00:00
Jukka Heinonen
b2844d2c3a Split timer code into separate source file.
Stop using SIGALRM for timers.
2003-06-13 16:28:49 +00:00
Jukka Heinonen
7731c8e33e Pending timer interrupts no longer deadlock DOSVM_Wait.
Restored interrupt priorities to correct values.
2003-06-06 18:09:14 +00:00
Jukka Heinonen
f07dfff17b Migrate most int21 ioctl routines to winedos.
Migrate int21 set drive routine to winedos.
2003-06-04 20:17:52 +00:00
Jukka Heinonen
3da6ff753e Added some long filename functions. 2003-05-20 17:49:04 +00:00
Jukka Heinonen
c646408568 Move get current drive int21 function to winedos.
Fix spelling mistakes.
Add some drive handling helper routines.
2003-05-19 21:40:05 +00:00
Alexandre Julliard
a098c82aac Moved vxd support to winedos. 2003-05-15 23:25:49 +00:00
Alexandre Julliard
3b4143aea0 Thomas Mertes <thomas.mertes_at_gmx.at>
Implement file control block (FCB) functions:
  INT21_OpenFileUsingFCB [0x0f],
  INT21_CloseFileUsingFCB [0x10],
  INT21_SequenialReadFromFCB [0x14],
  INT21_SequenialWriteToFCB [0x15],
  INT21_ReadRandomRecordFromFCB [0x21],
  INT21_WriteRandomRecordToFCB [0x22],
  INT21_RandomBlockReadFromFCB [0x27],
  INT21_RandomBlockWriteToFCB [0x28].
2003-05-15 22:54:43 +00:00