Commit Graph

162 Commits

Author SHA1 Message Date
Alexandre Julliard 1b85b6cab7 krnl386: Use RtlCaptureContext and NtSetContextThread to implement register functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-25 12:04:46 +02:00
Alexandre Julliard c5a35d898f krnl386: Explicitly fetch the service argument in VxDCall.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-25 11:51:18 +02:00
Alexandre Julliard 5b71091b43 krnl386: Mark function that are only called from assembly as hidden.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-25 11:50:51 +02:00
Alexandre Julliard f91b4bd410 krnl386: Add a simple wrapper for CommonUnimpStub instead of saving/restoring all registers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Alexandre Julliard 92d5ce3c76 krnl386: Simplify a couple of register functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Zebediah Figura 6de3c8f1a8 krnl386.exe16: Fail int 21, 4e if the volume label is an empty string.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-21 15:00:03 +02:00
Huw Davies eec602fecb krnl386.exe16: Fix mask values.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-17 13:19:26 +01:00
Sebastian Lackner 59103375b9 krnl386.exe16: Ignore access denied error when flushing file.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-13 19:39:22 +01:00
André Hentschel de97d2c8e7 krnl386.exe16: Fix AllocSLCallback spec file entry.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-23 13:15:45 +01:00
André Hentschel c005d89441 krnl386.exe16: Fix some spec file entries.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 10:32:24 +01:00
Bruno Jesus 01ecb5834b krnl386.exe16: Honour segment prefix override for outs[bwd] instruction.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-22 14:59:04 +01:00
Nikolay Sivov ccce887eb2 krnl386: Fix its vs it's typo.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:20 -05:00
Sebastian Lackner 414c73feab krnl386.exe16: Do not reassign default handles after they got closed.
Based on a patch by Michael Müller.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 19:28:10 +09:00
Michael Müller d8599db40a krnl386.exe16: Emulate 'mov Eb, Gb' instruction on x86 processor architecture.
Similar to the implementation in ntoskrnl.exe.

Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-06 00:31:22 +09:00
Bruno Jesus 90eb14a6c4 krnl386.exe16: Skip invalid entries in GetPrivateProfileString16.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-02 12:57:56 +09:00
Gerald Pfeifer 99b83bf385 krnl386.exe16: Avoid shift overflows in DMA_ioport_out.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-30 23:16:51 +09:00
Jacek Caban 413ad29ef9 krnl386.exe: Pass SYNCHRONIZE flag to NtCreateFile.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-30 21:02:01 +09:00
Alexandre Julliard 5767c63ae0 krnl386.exe: Remove some redundant shifts.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-26 23:03:39 +09:00
Alex Henrie 005de9e94c krnl386.exe16: Fix dialog size computation.
This partially reverts commit a5bf67ef9b,
"kernel: Constify some formal parameters."

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-25 15:25:36 +09:00
Michael Müller 33aa59abea krnl386.exe16: Increase buffer size in GetTempDrive. 2015-08-19 20:19:57 +09:00
André Hentschel da88dac293 krnl386.exe16: Remove unused initializers (Clang). 2015-07-22 07:24:17 +02:00
Alexandre Julliard 3a2e7d1a3d krnl386.exe: Release the Win16 lock when loading a 32-bit dll. 2015-05-29 15:03:06 +09:00
Sebastian Lackner 5f069c1601 krnl386.exe16: Do not omit mandatory argument for VirtualProtect. 2015-05-04 20:07:56 +09:00
Erich E. Hoover bc68b30d20 krnl386: Invalid console handles should translate into real handles when creating a new process. 2015-04-24 14:31:08 +09:00
Francois Gouget 40d213a297 krnl386.exe16: Mark internal symbols with hidden visibility. 2015-03-19 14:06:28 +09:00
Francois Gouget a4e38fab7c krnl386.exe16: Fix the _lread16() documentation. 2015-03-16 15:06:21 +09:00
Francois Gouget bc68822c09 krnl386.exe16: Remove unneeded NONAMELESSXXX directives. 2015-03-13 00:28:20 +09:00
Sebastian Lackner 8035f90f3b krnl386.exe16: Fix incorrect interpretation of SIB byte when parsing x86 opcode. 2014-11-07 14:05:15 +09:00
André Hentschel 8cad71cd5e krnl386: Fix typo in a comment. 2014-06-19 13:14:07 +02:00
Alexandre Julliard 699daa7749 krnl386: Properly handle failure to set a 16-bit LDT entry. 2014-06-18 18:34:50 +02:00
Frédéric Delanoy 03cec9d886 krnl386.exe16: Use BOOL type where appropriate. 2014-03-13 20:21:59 +01:00
Alexandre Julliard 5e7416e5c8 makefiles: Get rid of the MAKE_DLL_RULES variable. 2014-01-02 12:08:18 +01:00
Alexandre Julliard b192879597 makefiles: Automatically output appropriate target flags. 2014-01-01 21:44:38 +01:00
Frédéric Delanoy 5605db6b94 krnl386.exe16: Use BOOL type where appropriate. 2013-12-17 08:43:08 +01:00
Frédéric Delanoy 8a10493e6b krnl386.exe16: Use BOOL type where appropriate. 2013-12-12 19:21:35 +01:00
Frédéric Delanoy aaa0c692f1 krnl386.exe16: Use BOOL type where appropriate. 2013-12-11 13:02:22 +01:00
Frédéric Delanoy f24a5bc824 krnl386.exe16: Make VGA_[Set/Get]Mode return TRUE on success. 2013-12-11 13:00:34 +01:00
Frédéric Delanoy fdc6ae93ce krnl386.exe16: Fix signature of DOSVM_Int16ReadChar. 2013-12-10 13:01:22 +01:00
Alexandre Julliard 752b0e02ea makefiles: Move the import library rules to the global Make.rules file. 2013-10-09 11:25:36 +02:00
Michael Stefaniuc 2a39cb377a dlls: Replace the remaining CONSTs. 2013-09-25 11:49:20 +02:00
Alexandre Julliard fa0a73963f krnl386: Don't attempt direct I/O port access on Android. 2013-07-30 14:43:34 +02:00
Alexandre Julliard 3d8d9f2e51 krnl386: Create a new console for DOS binaries. 2013-06-27 13:39:08 +02:00
Andrew Talbot 08254df316 krnl386.exe16: Constify a variable. 2013-04-01 14:42:57 +02:00
Michael Stefaniuc 68c447d87e krnl386.exe16: Let C look like C. 2013-02-07 12:03:42 +01:00
Alexandre Julliard ac5319630d krnl386.exe: Retrieve the page size from ntdll. 2013-01-08 16:35:31 +01:00
Andrew Talbot 10fb1eac9c krnl386.exe16: Indentation fix. 2012-12-15 16:35:04 +01:00
Michael Stefaniuc a5c621d40e krnl386.exe16: Use FIELD_OFFSET for the size of structs with varlength arrays. 2012-11-16 16:17:28 +01:00
Christian Costa a42d4c4b95 krnl386.exe: Display FIXME instead of ERR for instructions that are not well implemented. 2012-10-25 16:52:04 +02:00
Christian Costa 2a43bb2261 krnl386.exe: If we use operands order of AT&T asm syntax, we'd better use % for registers as in winedbg and GNU assembler to avoid confusion. 2012-10-23 13:29:22 +02:00
Christian Costa 338dedef02 krnl386.exe: Implement INT 33h function 15h. 2012-10-17 14:06:13 +02:00
Michael Stefaniuc dfa57c6e97 krnl386.exe16: Avoid TRUE:FALSE conditional expressions. 2012-08-13 11:49:59 +02:00
Marcus Meissner aa58bcfec9 krnl386.exe16: Do not truncate the strcmp result (Coverity). 2012-07-09 10:10:16 -04:00
Oleksij Rempel fa3038c6bd krnl386.exe: Fix drive spec in get_media_id call. 2012-05-30 14:41:34 +02:00
Oleksij Rempel 3a8eae3191 krnl386: Set 11-bit for fixed drive. 2012-05-25 13:44:52 +02:00
Oleksij Rempel 75555c3011 krnl386: Set remote bit for cdrom. 2012-05-25 13:44:44 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Francois Gouget 95577f3368 krnl386.exe16: Avoid hardcoding the Unicode string literal lengths. 2011-12-16 17:40:39 +01:00
Frédéric Delanoy ebf4ae03b5 krnl386.exe16: Avoid hardcoding array lengths. 2011-11-22 10:53:54 +01:00
Michael Stefaniuc 2ce0957e21 krnl386.exe16: Don't open code CONTAINING_RECORD(). 2011-09-26 12:14:48 +02:00
Francois Gouget f01888da59 krnl386.exe16: Add parentheses to clarify the precedence between '&' and '&&'. 2011-09-12 11:00:53 +02:00
Andrew Talbot f0a7bc1308 krnl386.exe16: Constify some variables. 2011-09-12 10:07:13 +02:00
Andrew Talbot daa5f4bf15 krnl386.exe16: Constify a variable. 2011-08-23 16:53:52 +02:00
Frédéric Delanoy b5a33dab88 dlls: Assorted spelling fixes. 2011-08-02 20:47:51 +02:00
Frédéric Delanoy ca70492ab3 krnl386.exe16: Remove dead initialization (Clang). 2011-07-06 11:24:25 +02:00
Marcus Meissner 5574b64ede krnl386.exe16: pSeg might be NULL (Coverity). 2011-06-27 13:28:42 -05:00
Marcus Meissner 428e0312b7 krnl386.exe16: Fixed if that always succeeds (Coverity). 2011-05-11 17:49:58 +02:00
Marcus Meissner bb6c1f06af krnl386.exe16: Fixed get selector bit logic (Coverity). 2011-05-10 18:53:16 +02:00
Andrew Nguyen 43f283c085 krnl386.exe: Fix size calculation in GetSystemDirectory16. 2011-04-18 12:37:14 +02:00
Gerald Pfeifer 309a8c8d48 wine: Use { } instead of ; for an empty basic block. 2011-04-18 12:08:14 +02:00
Marcus Meissner a9c5c3d6c9 krnl386.exe16: Added missing break to dma code (Coverity). 2011-03-28 17:12:02 +02:00
Alexandre Julliard 5ce81a9dc2 krnl386: Fetch version from the PEB to avoid potentially using GetVersionEx before it's initialized. 2010-12-15 13:17:41 +01:00
Alexandre Julliard 173957d294 krnl386.exe: Propagate DOS startup errors up to winevdm. 2010-11-11 18:12:21 +01:00
André Hentschel ac816c2a82 krnl386: Mention DOSBox. 2010-11-11 16:08:11 +01:00
Alexandre Julliard c1f7b45751 krnl386.exe: Use the correct pointer for RemoveVectoredExceptionHandler. 2010-11-10 20:56:13 +01:00
Henri Verbeet c4c091d4b7 krnl386.exe: Return the default value if the section wasn't found in GetPrivateProfileString16().
Using GetPrivateProfileStringA() for removing trailing spaces etc. This
restores behaviour from before 86c6021c71.
2010-11-04 12:14:27 +01:00
Alexandre Julliard 1b2604384b krnl386.exe: Avoid using the CONTEXT86 type. 2010-10-20 18:37:09 +02:00
Alexandre Julliard 88be48ebeb makefiles: Use the -m16 option with 16-bit resources for consistency. 2010-09-29 20:15:57 +02:00
Alexandre Julliard 18bb9da5bc krnl386.exe: Get rid of the useless config.sys parser. 2010-09-21 20:16:15 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Alexandre Julliard 5b6a24cc7c krnl386.exe: Remove 16 suffix on Get/SetProcessDword since there's no 32-bit version. 2010-09-16 10:03:26 -05:00
Andrew Nguyen 4e49518a38 krnl386.exe: Fix last error check for DOS compatibility hack. 2010-07-30 14:59:41 +02:00
Alexandre Julliard f195c1eb5a winegcc: Don't import winecrt0 by default when building with -nodefaultlibs. 2010-07-26 12:46:00 +02:00
André Hentschel 4291823ff2 krnl386.exe16: Add an error code. 2010-07-23 11:39:13 +02:00
Alexandre Julliard f9253bbb45 makefiles: Specify -nodefaultlibs when building low-level dlls. 2010-07-21 17:38:18 +02:00
Andrew Nguyen be5d66f5d8 krnl386.exe: Fix a potential leak and NULL dereference in DPMI_xrealloc. 2010-07-19 14:38:17 +02:00
Andrew Nguyen ea7bcc6c3f krnl386.exe: Use the correct format specifier for size traces. 2010-07-19 14:38:17 +02:00
Alexandre Julliard 2286267aad krnl386.exe: Ignore non-resident name table if value is invalid.
Watcom C++ apparently screws this up.
2010-06-30 21:05:03 +02:00
André Hentschel 8f0a0c23fa krnl386.exe16: Update a comment. 2010-06-22 11:47:40 +02:00
Alexandre Julliard 86e2494f9b krnl386: Defined the SMapLS/UnMapLS_IP_EBP functions explicitly to make life easier for winapi_check. 2010-06-14 14:14:15 +02:00
Alexandre Julliard a8c4edc8dc krnl386: Load gdi.exe and user.exe also when initializing universal thunks. 2010-06-08 12:46:28 +02:00
Alexandre Julliard 2f614e6081 krnl386.exe: Call the 32-bit string functions that contain exception handlers. 2010-05-18 18:42:08 +02:00
Detlef Riekenberg 69326aa246 kernel32: Move a 16 bit related comment to krnl386. 2010-05-14 18:03:03 +02:00
Morten Rønne ffc9397664 krnl386.exe: Fix VGA video mode 17. 2010-03-29 12:19:19 +02:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Alexandre Julliard 60f364068a krnl386.exe: Preload gdi and user when thunks are being used. 2010-03-13 17:25:49 +01:00
Alexandre Julliard f8a89aa083 krnl386.exe: Don't try to free again an already freed global block. 2010-03-03 11:52:59 +01:00
Alexandre Julliard 00ac7074df kernel32: Move shared heap creation to krnl386 and load it by default on Win9x versions. 2010-03-01 11:34:34 +01:00
Alexandre Julliard f3696e489b krnl386.exe: Add an explicit name check to allow importing user.exe and gdi.exe even if not loaded already. 2010-02-23 13:30:52 +01:00
Alexandre Julliard 76e5c01209 kernel: Only start the BIOS timer if there is an actual access to selector 0x40. 2010-02-01 12:58:29 +01:00
Alexandre Julliard 3b67ad9bd4 ntdll: Fix the NtCreateEvent prototype.
It takes an event type, not a manual reset flag.
2010-01-18 20:34:54 +01:00