Commit graph

62911 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 96c972db0b [NTVDM]: Fix the return code of 2 functions.
svn path=/trunk/; revision=68591
2015-08-01 21:40:58 +00:00
Eric Kohl 785ea69bd4 [PARPORT]
Remove DPRINTs from PdoWrite.
CORE-9942 #resolve

svn path=/trunk/; revision=68590
2015-08-01 19:41:24 +00:00
Hermès Bélusca-Maïto 768e35e84d [NTVDM]: Use the while() construct for looping into doubly-linked lists where we can remove items from it in the middle of the loop code.
svn path=/trunk/; revision=68589
2015-08-01 18:56:44 +00:00
Eric Kohl 9d780c6b0b [PARPORT]
- Add support for IRP_MJ_READ.
- IRP_MJ_READ and IRP_MJ_WRITE return STATUS_NOT_SUPPORTED for FDO devices.

svn path=/trunk/; revision=68588
2015-08-01 18:02:45 +00:00
Hermès Bélusca-Maïto 5c15cde76e [MSPAINT_NEW]
Fix build on MSVC by rewriting the code in *STANDARD* C++ !! (and not into some strange idiom called "GCC-C++"). I suggest also to write a proper class for dynamically-allocated (resource) strings instead of either having the static arrays of hardcoded sizes, or being tempted to use non-standard constructs as the one I just saw.
(and btw, instead of defining a new "SIZEOF()" macro, there is one which already exists in the PSDK called "ARRAYSIZE()" which just does the correct job).

svn path=/trunk/; revision=68587
2015-08-01 17:30:17 +00:00
Hermès Bélusca-Maïto 2d44138c21 [NTVDM]
EMS:
- Introduce (and use) helpers for checking validity of EMS handles.
- Do not hardcode the EMS page frame segment, but instead allow it to be changed (for now, it is still set to a default value; in the future, via some configuration file or via the registry). This is done by acquiring a UMB block (see after).

XMS:
- Implement functions 0x01 "Request HMA" and 0x02 "Release HMA".
- Fix the return value of functions 0x04 "Global disable A20" and 0x08 "Query free Extended Memory"; simplify code of function 0x0B "Move EMB".
- Halfplement function 0x0F "Reallocate Extended Memory Block" in the simple case of size reduction (size expansion is left to the programmer as an exercise :PP )
- Rewrite the UMB provider support (functions 0x10, 0x11, 0x12) by calling the Upper Memory Area manager helpers (see after) (this is closer to reality: UMBs are either provided by XMS driver itself, or by an EMS driver which hooks into the XMS driver chain -- as it is done with MS' himem+EMM386; sometimes all that stuff is contained inside one driver only --) instead of calling back into DOS. This is the DOS which calls XMS for getting the UMB blocks and initializing them! (and not the other way around as it was done in r68001!).

NTVDM:
- Introduce an "Upper Memory Area manager" which maintains a list of areas of upper memory (>= A000:0000 and <= FFFF:000F) that can be used as RAM blocks. It is intended to work closely with the NTVDM memory manager and be used by XMS for getting possible free UMBs, and by VDDs for implementing the VDDInclude/ExcludeMem APIs (which adds/remove blocks in/from the UMB pool; those are unaccessible to DOS if those APIs are called after NTVDM have been started, but are accessible by XMS).

DOS:
- Add a helper function for detecting early DOS arena corruptions (for debugging purposes only).
- Make the DOS memory manager really UMB-compatible. This means:
  * not hardcoding the start of the UMB chain;
  * getting all the available UMB blocks from XMS and initializing them, marking the reserved blocks as read-only (with a correct header; reserved blocks are eg. VGA memory area, ROM blocks...).

There is room for improvements obviously (see the FIXMEs in the code). Used documentation is mentioned in comments in the code.

This commit should fix quite some apps, as well as it fixes corruptions of loaded ROMs in upper memory: that's how I came into working on fixing the UMB support. In other words, during those two last weeks, I was like in: http://i.imgur.com/zoWpqEB.gifv

CORE-9969 #resolve

svn path=/trunk/; revision=68586
2015-08-01 17:07:07 +00:00
Hermès Bélusca-Maïto 4d6da0ec7a [NTVDM]
- Remove some hardcoded values.
- Reshuffle again DOS initialization to better reflect how it is done in the real world (see "Advanced MS-DOS Programming" by Ray Duncan, Chapter 2 "MS-DOS in Operation"): split DOS data stuff into DOS BIOS data, and DOS kernel data areas.

In preparation for an upcoming commit.

svn path=/trunk/; revision=68585
2015-08-01 12:41:22 +00:00
Benedikt Freisen 88adae5ab6 [MSPAINT_NEW]
- use optimal buffer size to load null terminated strings using LoadString
- add printing-related menu entries and dialogs (no printing functionality yet)

svn path=/trunk/; revision=68584
2015-07-31 17:33:21 +00:00
James Tabor 2ce4504816 [NtGdi]
- Fix locking.

svn path=/trunk/; revision=68583
2015-07-31 06:55:22 +00:00
James Tabor 6fe69964e1 [Win32SS]
- Start ordering functions into separate files.

svn path=/trunk/; revision=68582
2015-07-30 07:49:09 +00:00
Aleksandar Andrejevic bfb9c92b07 [NTVDM]
- Combine free blocks after resizing.
- Fix the LastParagraph value in the PSP.


svn path=/trunk/; revision=68581
2015-07-29 02:03:48 +00:00
David Quintana 0dfcc314e5 [EXPLORER]
* Rework the WIN7_COMPAT_MODE into actually just disabling the incompatible functions, and introduce WIN7_DEBUG_MODE which does the rest of the "hacks" I used to ease development.

svn path=/trunk/; revision=68580
2015-07-29 01:29:29 +00:00
Eric Kohl 184bf48b97 [PARPORT]
Reduce the minimum I/O-Range size for parallel ports to 4. This fixes port detection on VMware.
Found by Colin Finck.

svn path=/trunk/; revision=68579
2015-07-26 19:30:21 +00:00
Thomas Faber e6d1e20049 [ROSAUTOTEST]
- When directly submitting the results to the web service, make sure to URL-encode the test log, or & signs will terminate the log and make Testman see the test as crashed (and have all other kinds of possible consequences)

svn path=/trunk/; revision=68578
2015-07-26 10:02:03 +00:00
Thomas Faber 0436f08597 [WS2_32_APITEST]
- Apparently doesntexist.reactos.org... exists

svn path=/trunk/; revision=68577
2015-07-26 09:26:29 +00:00
Thomas Faber 5ae53d1709 [USER32_WINETEST]
- Skip test_paintingloop instead of test_paint_messages? Grml
ROSTESTS-18

svn path=/trunk/; revision=68576
2015-07-26 09:11:08 +00:00
Thomas Faber 1a5b34df4a [USER32_WINETEST]
- Skip user32:msg_paint test_paint_messages if running on Windows in non-interactive mode. This should allow WHS-Testbot to get a bit further
ROSTESTS-185
ONLINE-441 ROSTESTS-184

svn path=/trunk/; revision=68575
2015-07-26 08:41:13 +00:00
Thomas Faber 10d23d4e83 [KMTESTS:RTL]
- Fix build
CORE-9947

svn path=/trunk/; revision=68574
2015-07-26 08:05:07 +00:00
Thomas Faber 92fefd09ba [PSDK]
- Add support for intsafe signed Add functions
- Guard signed math in ENABLE_INTSAFE_SIGNED_FUNCTIONS
CORE-9947 #resolve

svn path=/trunk/; revision=68573
2015-07-26 08:03:02 +00:00
Thomas Faber b6c1dfa714 [PSDK]
- intsafe: use the correct type to check overflow in DEFINE_SAFE_ADD
CORE-9946 #resolve

svn path=/trunk/; revision=68572
2015-07-26 07:48:24 +00:00
Eric Kohl d03a382228 [NTOSKRNL]
NtQuerySystemInformation:
- Windows Vista and later: Check the information class before probing the buffer.
- Pre-Vista Windows: Check the information class after probing the buffer.
- Pre-Vista Windows: Fixed the aligment check for invalid information classes.
- Pre-Vista Windows: The SystemFlagsInformation and SystemKernelDebuggerInformation classes return no required length in case of an error.
This fixes all ntdll_apitest:NtSystemInformation fails.


svn path=/trunk/; revision=68571
2015-07-25 11:53:16 +00:00
Eric Kohl 4a1740bc9e [NTOSKRNL]
Revert r68346.
CORE-9933 #resolve

svn path=/trunk/; revision=68570
2015-07-25 10:21:18 +00:00
Eric Kohl 403459d8f4 [DIKPART]
Implement the RESCAN command.

svn path=/trunk/; revision=68569
2015-07-24 20:02:56 +00:00
James Tabor 937fab0c67 [User32]
- Fix check menu item and preserve the calling ID. See CORE-9884.

svn path=/trunk/; revision=68568
2015-07-24 10:16:53 +00:00
Benedikt Freisen e97072ac60 [MSPAINT_NEW] move hDrawingDC and mirror/rotate stuff to ImageModel
svn path=/trunk/; revision=68566
2015-07-23 13:52:02 +00:00
Benedikt Freisen e49e629215 [MSPAINT_NEW]
- move bitmap and DC initialization to ImageModel
- remove unused global variables
- remove copy-pasta bug from SelectionModel::DrawSelection

svn path=/trunk/; revision=68565
2015-07-23 13:11:54 +00:00
Amine Khaldi 9a5944f03d [README.WINE] Mark some modules as synced with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68564
2015-07-23 13:08:39 +00:00
Benedikt Freisen 6fd38c7880 [MSPAINT_NEW] initialize ImageModel member variables
svn path=/trunk/; revision=68563
2015-07-23 07:48:32 +00:00
Eric Kohl 4317118d34 [MSGINA]
Show shutdown dialog at the logon screen if the user wants to shutdown. Patch by Jared Smudde.
CORE-9919 #resolve #comment Thanks a lot!

svn path=/trunk/; revision=68562
2015-07-22 20:28:51 +00:00
Amine Khaldi 33f303a420 [DBGHELP] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68561
2015-07-22 19:50:35 +00:00
Amine Khaldi afdc6b377b [WININET_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68560
2015-07-22 19:43:32 +00:00
Amine Khaldi fa6c5cde14 [WININET] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68559
2015-07-22 19:43:18 +00:00
Amine Khaldi 9e1c2a00b9 [WINHTTP_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68558
2015-07-22 19:39:37 +00:00
Amine Khaldi 4f5f0ecab5 [WINHTTP] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68557
2015-07-22 19:39:23 +00:00
Amine Khaldi d173b48397 [COMDLG32_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68556
2015-07-22 19:35:36 +00:00
Amine Khaldi 8d686fb686 [COMDLG32] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68555
2015-07-22 19:35:34 +00:00
Amine Khaldi 44aca5e627 [COMCTL32_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68554
2015-07-22 19:30:52 +00:00
Amine Khaldi 3b13364f05 [COMCTL32] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68553
2015-07-22 19:30:27 +00:00
David Quintana 300237adee [CONFIGURE.CMD]
Add a case for VSSolution generation with VS14. It DOES NOT WORK with the cmake version we use currently, but it's better to have the error rather than generating ninja files without warning.

svn path=/trunk/; revision=68551
2015-07-22 13:58:05 +00:00
Amine Khaldi c033464790 [XMLLITE_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68548
2015-07-22 00:49:37 +00:00
Amine Khaldi f740d443f7 [XMLLITE] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68547
2015-07-22 00:49:19 +00:00
Amine Khaldi 88ef075b78 [WSHOM_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68546
2015-07-22 00:47:52 +00:00
Amine Khaldi ac8ca6838d [WSHOM.OCX] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68545
2015-07-22 00:47:35 +00:00
Amine Khaldi 40ac828ca5 [WINDOWSCODECS_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68544
2015-07-22 00:45:50 +00:00
Amine Khaldi 9fdfcff1b4 [WINDOWSCODECS] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68543
2015-07-22 00:45:26 +00:00
Amine Khaldi b8cba24681 [WBEMPROX_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68542
2015-07-22 00:43:56 +00:00
Amine Khaldi 50574c92e8 [WBEMPROX] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68541
2015-07-22 00:43:39 +00:00
Amine Khaldi f033047d9a [WBEMDISP] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68540
2015-07-22 00:41:30 +00:00
Amine Khaldi cd5337a343 [VERSION_WINETEST] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68539
2015-07-22 00:40:49 +00:00
Amine Khaldi 71ab52b724 [VERSION] Sync with Wine Staging 1.7.47. CORE-9924
svn path=/trunk/; revision=68538
2015-07-22 00:40:38 +00:00