Do not rely on the internal format for console handles. Instead, use a more reliable way, by checking for success when calling a simple console function acting on in/out console handles.
svn path=/branches/ntvdm/; revision=59746
Make the BIOS Data Area accessible to other parts of ntvdm.
Properly redirect read/write access to the console to the keyboard and VGA systems, respectively.
svn path=/branches/ntvdm/; revision=59741
- 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
[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
[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
[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
Synchronize with trunk again for SetConsolePalette.
Implement VGA palettes for graphics mode and DAC register access.
svn path=/branches/ntvdm/; revision=59713
- 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
- 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
- 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
- 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
- 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
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
- 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
- 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
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