Commit graph

54267 commits

Author SHA1 Message Date
Aleksandar Andrejevic 05b8a9a86c [NTVDM]
Use the correct values for AC registers.


svn path=/branches/ntvdm/; revision=59734
2013-08-14 12:25:43 +00:00
Aleksey Bragin 0fd6b43313 [WIN32K]
- Do not use a internal section object structure type, it's just not necessary and win32k should not ever need to access its fields directly.

svn path=/trunk/; revision=59733
2013-08-14 11:02:08 +00:00
Alex Ionescu 7347dd9801 [SACDRV]: fix a bug in ChannelReferenceToOneByIndexwithLock and ChanMgrCreateChannel.
[SACDRV]: implement SacTranslateUnicodeToUtf8.
[NTOSKRNL]: implement HadlessCmdPutData.
EMS bringup is now functional:
"
Computer is booting, SAC started and initialized.\n\nUse the \"ch -?\" command for information about using channels.\nUse the \"?\" command for general help.

             SAC>%0
"


svn path=/trunk/; revision=59732
2013-08-14 04:20:17 +00:00
Amine Khaldi cf0c04f897 [SAL]
* Add _Ret_writes_maybenull_z_ annotation.

svn path=/trunk/; revision=59731
2013-08-13 21:21:08 +00:00
Hermès Bélusca-Maïto 738d02adf2 [NTVDM]
Simplify the code

svn path=/branches/ntvdm/; revision=59730
2013-08-13 20:15:24 +00:00
Aleksandar Andrejevic 0c3e20ab89 [NTVDM]
Fix bug with VGA DAC register access.


svn path=/branches/ntvdm/; revision=59729
2013-08-13 19:00:02 +00:00
Aleksandar Andrejevic 409b1ee254 [NTVDM]
Fix VGA register constants.


svn path=/branches/ntvdm/; revision=59728
2013-08-13 18:41:35 +00:00
Amine Khaldi 83b94585d4 [PSDK]
* Update oleauto.h.

svn path=/trunk/; revision=59727
2013-08-13 18:23:10 +00:00
Amine Khaldi f33e61c6a5 [PSDK]
* Annotate commctrl.h.

svn path=/trunk/; revision=59726
2013-08-13 18:09:50 +00:00
Aleksandar Andrejevic a88f650367 [SOFTX86]
Fix carry/overflow flag computation for ADD instructions.


svn path=/branches/ntvdm/; revision=59725
2013-08-13 17:06:15 +00:00
Hermès Bélusca-Maïto e387f7f1cd [NTVDM]
- Add new BIOS video modes (obtained from DosBox with the help of Aleksander)
- Remove an unneeded comment.

svn path=/branches/ntvdm/; revision=59724
2013-08-13 16:49:54 +00:00
Amine Khaldi 209b522093 [KERNEL32]
* Include winspool.h only where it's needed.

svn path=/trunk/; revision=59723
2013-08-13 15:27:13 +00:00
Amine Khaldi 81462f65ed [PSDK]
* Annotate shlwapi.h.

svn path=/trunk/; revision=59722
2013-08-13 15:12:04 +00:00
Aleksandar Andrejevic 6646ea182c [NTVDM]
Use RGB() macro instead of defining the hexadecimal values manually, which were incorrect.


svn path=/branches/ntvdm/; revision=59721
2013-08-13 11:57:10 +00:00
Hermès Bélusca-Maïto 8a6a428ccc [NTVDM]
- Simplify code (flags resetting)
- Fix console palette initialization (use version 3) and palette change.

svn path=/branches/ntvdm/; revision=59720
2013-08-13 11:09:10 +00:00
Hermès Bélusca-Maïto 53fa8a9cdd Formatting fix only.
svn path=/branches/ntvdm/; revision=59719
2013-08-13 11:06:02 +00:00
Alex Ionescu 7e5cd96267 [NTOSKRNL]: Add and fix more glue code for EMS/Headless support. The SAC driver is at least correctly able to initialize now when /redirect is enabled.
[SACMSG]: SAC wants the message tables as Unicode, but the CMakeList has an obscure comment that Unicode MC needs "testing". Well, I'll be the first to test it and confirm it works -- implement a UNICODE_SOURCE_REALLY to get Unicode-mc.
[SACMSG]: Add a few more constants.
[SACDRV]: Implement InitializeMachineInformation.
[SACDRV]: Fix countless bugs. Now the entire driver initializes up to UTF8EncodeAndSend, which is unimplemented. We're almost there!

svn path=/trunk/; revision=59718
2013-08-13 03:18:03 +00:00
Alex Ionescu 1f8570be62 [NTOSKRNL]: RtlGetVersion in the kernel does not fail, does not return a CSD version, and should not be returning negative build numbers. Fix it so that it works as it should (and anyone that relied on correct build numbers will no longer fail).
svn path=/trunk/; revision=59717
2013-08-13 03:14:22 +00:00
Alex Ionescu f762bc3a74 [USETUP]: Add an entry in freeldr.ini for EMS testing.
[HIVESYS]: Fix double-addition of "nmidebug". One of those should have been "sacdrv".
[FREELDR]: Fix bugs in WinLdrSetupEms which caused an invalid HEADLESS_LOADER_BLOCK to be created.
[FERELDR]: Move WinLdrSetupEms in LoadWindowsCommon, so that setupldr can use EMS too.

svn path=/trunk/; revision=59716
2013-08-13 03:11:02 +00:00
Amine Khaldi 8bbf3b5415 [PSDK]
* Annotate shlobj.h.

svn path=/trunk/; revision=59715
2013-08-12 22:19:46 +00:00
Amine Khaldi 11a9057ed5 [PSDK]
* Update shlwapi.h.
* Remove IUnknown_AtomicRelease() from shlwapi_undoc.h.

svn path=/trunk/; revision=59714
2013-08-12 22:08:17 +00:00
Aleksandar Andrejevic 5a7a26d750 [NTVDM]
Synchronize with trunk again for SetConsolePalette.
Implement VGA palettes for graphics mode and DAC register access.


svn path=/branches/ntvdm/; revision=59713
2013-08-12 19:31:54 +00:00
Hermès Bélusca-Maïto c746456035 Forgot this file (fixes all the builds).
svn path=/trunk/; revision=59712
2013-08-12 16:15:44 +00:00
Hermès Bélusca-Maïto 38c812cfc9 [KERNEL32][CONSRV]
Half-plement SetConsolePalette.

svn path=/trunk/; revision=59711
2013-08-12 16:12:58 +00:00
Amine Khaldi d802ba093a [PSDK]
* Annotate vfw.h.

svn path=/trunk/; revision=59710
2013-08-12 11:52:50 +00:00
Cameron Gutman abf6e4f969 [TCPIP]
- Disable object logging now that all the deadlocks, leaks, double-frees, and use-after-frees visible in our test suite are fixed in TCP/IP

svn path=/trunk/; revision=59709
2013-08-12 06:46:06 +00:00
Cameron Gutman a88dd96b21 [IP]
- Fix a nasty bug preventing any of the non-default interface's NCEs from being selected
- Fix a bug preventing loopback NCEs from being found (fixes hang in ws2_32:sock winetest)

svn path=/trunk/; revision=59708
2013-08-12 06:00:06 +00:00
Cameron Gutman 84da0d7111 [LWIP]
- Indicate the graceful close before calling the FIN event handler

svn path=/trunk/; revision=59707
2013-08-12 04:58:22 +00:00
Cameron Gutman fbc6d8b085 [LWIP]
- Ensure that the connection failure gets delivered if the socket is not yet ready to receive or has shutdown receive

svn path=/trunk/; revision=59706
2013-08-12 04:08:20 +00:00
Cameron Gutman 578fec3cac [TCPIP]
- Add logging of address files and connections (on temporarily for testing changes)
[LWIP]
- Drastically simplify the closing state machine
- All connection objects (and as a result address files too) are now getting properly reaped now
- Tested with Firefox and Abyss Web Server

svn path=/trunk/; revision=59705
2013-08-12 03:09:28 +00:00
Cameron Gutman 4ed049cc7b [CMAKE]
- Define i386 on x86 MSVC builds
- Probably fixes the infamous MSVC networking issues caused by tcpip.h assuming it was a big-endian platform and never byte-swapping anything
[TCPIP][LAN]
- Fix byteswapping on AMD64 and ARM builds too

svn path=/trunk/; revision=59704
2013-08-12 01:12:25 +00:00
Cameron Gutman 60666eecd3 [TCPIP]
- Use common macro for htons
- Fail compilation if an unrecognized architecture is found (testing)

svn path=/trunk/; revision=59703
2013-08-12 00:45:04 +00:00
Cameron Gutman 975aee1a7c [SETUPAPI]
- SetupDiRegisterDeviceInfo shouldn't fail if a device instance already exists
- MSDN documentation for this function states: "If [SPRDI_FIND_DUPS] is not specified, the device instance is registered regardless of whether a device instance already exists for it."

svn path=/trunk/; revision=59702
2013-08-11 21:19:35 +00:00
Aleksandar Andrejevic f86c0161e0 [NTVDM]
Fix bug in DosChangeDirectory.


svn path=/branches/ntvdm/; revision=59701
2013-08-11 21:07:09 +00:00
Aleksandar Andrejevic 5921c465db [NTVDM]
Keep a list of current directories for all drives.
Implement functions that change the default drive and current directory.


svn path=/branches/ntvdm/; revision=59700
2013-08-11 20:54:07 +00:00
Cameron Gutman c673f80b25 [UMPNPMGR]
- Handle the CM_CREATE_DEVNODE_GENERATE_ID flag
[SETUPAPI]
- Use the correct ID (the newly generated instance ID) when creating the device info if the DICD_GENERATE_ID flag was passed in

svn path=/trunk/; revision=59699
2013-08-11 19:57:47 +00:00
Cameron Gutman fb58b492f6 [SETUPAPI]
- Pass the CM_CREATE_DEVINST_GENERATE_ID flag to CM_Create_DevInst_ExW if DICD_GENERATE_ID was used
- Currently unimplemented in umpnpmgr

svn path=/trunk/; revision=59698
2013-08-11 17:49:17 +00:00
Hermès Bélusca-Maïto 4df1a905ab [KERNEL32]
Fix the prototype of the undocumented function SetConsolePalette (see http://comments.gmane.org/gmane.comp.lang.harbour.devel/27844 and d79a1b7b81 for a usage example); tested by Mysoft a.k.a. Grégory Macario Harbs.
Needed for modifying VGA palettes for NTVDM.

svn path=/trunk/; revision=59697
2013-08-11 17:06:19 +00:00
Amine Khaldi 73319cc61a [PSDK]
* Annotate mmsystem.h.

svn path=/trunk/; revision=59696
2013-08-11 14:40:52 +00:00
Amine Khaldi f8eed81826 [PSDK]
* Remove redundant GetUserDefaultUILanguage() declaration.

svn path=/trunk/; revision=59695
2013-08-10 23:31:33 +00:00
Amine Khaldi ce6bf0b38e [CRT]
* Annotate tchar_s.h.

svn path=/trunk/; revision=59694
2013-08-10 22:07:04 +00:00
Aleksandar Andrejevic b60ee76f22 [NTVDM]
Use DOS_CMDLINE_LENGTH instead of MAX_PATH.
Fix bug in DosInitializePsp which allowed writing past the end of the Program Segment Prefix (PSP).


svn path=/branches/ntvdm/; revision=59693
2013-08-10 21:41:20 +00:00
Amine Khaldi 487e85ab96 [CRT/INTRIN_X86]
* Fix __ll_rshift() and __ull_rshift(). Thanks to Filip Navara for his help with the issue.
* Properly mark int64part as unsigned __int6 in _byteswap_uint64().
* Add missing prototypes.

svn path=/trunk/; revision=59692
2013-08-10 21:17:38 +00:00
Hermès Bélusca-Maïto 2288b2c576 [NTVDM]
- Use up to 256 parameters for programs (as suggested by the parsing while loop), but don't hardcode this values in many other places.
- The passed command line to ntvdm should be as long as MAX_PATH.

svn path=/branches/ntvdm/; revision=59691
2013-08-10 20:50:37 +00:00
Aleksandar Andrejevic b34e5646dd [NTVDM]
Optimize screen clearing by implementing it as a helper function in vga.c.


svn path=/branches/ntvdm/; revision=59690
2013-08-10 19:30:14 +00:00
Eric Kohl ff78b2da31 [NETAPI32]
Reimplement NetUserModalsGet and add NetUserModalsSet stub.

svn path=/trunk/; revision=59689
2013-08-10 19:24:03 +00:00
Aleksandar Andrejevic acf127fe24 [NTVDM]
Clear the screen when switching video modes.


svn path=/branches/ntvdm/; revision=59688
2013-08-10 19:24:00 +00:00
Aleksandar Andrejevic 7b2978c43f Synchronize with trunk to fix spec2def issue.
[NTVDM]
Implement write modes and latch register for VGA.


svn path=/branches/ntvdm/; revision=59687
2013-08-10 17:06:04 +00:00
Hermès Bélusca-Maïto c6b4ad3605 [SPEC2DEF]
In GCC builds, LD sucks, and therefore, use NAME instead of LIBRARY to prevent that GNU crap from marking executables as dlls just because they export stuff, which is needed by both ntoskrnl and ntvdm.
Tested and approved by Aleksandar Aandrejevic a.k.a. [TheFlash], gigaherz and Amine Khaldi.
See:
http://msdn.microsoft.com/en-us/library/28d6s79h.aspx - "Module-Definition (.Def) Files"
http://msdn.microsoft.com/en-us/library/30fw19zw.aspx - For a description of the LIBRARY keyword
http://msdn.microsoft.com/en-us/library/03b3wfkt.aspx - For a description of the NAME keyword
http://sourceware.org/binutils/docs-2.16/binutils/def-file-format.html - "The format of the dlltool .def file" (GCC)
for more information.

svn path=/trunk/; revision=59686
2013-08-10 15:00:50 +00:00
Eric Kohl 206be3cc65 [SAMSRV]
Initialize default domain ForceLogoff time.

svn path=/trunk/; revision=59685
2013-08-10 12:53:29 +00:00