Commit graph

55214 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto fcbe98e6b6 [SOFTX86]
Remove the now-unneeded headers. Bye-bye SoftX86 !

svn path=/branches/ntvdm/; revision=60758
2013-10-26 21:26:28 +00:00
Aleksandar Andrejevic e954b0db71 [SOFTX86]
Remove softx86, as it is no longer used by anything.


svn path=/branches/ntvdm/; revision=60757
2013-10-26 20:53:33 +00:00
Aleksandar Andrejevic 0981b0859f [NTVDM]
Remove softx86 support, and use only fast486, since it is now
sufficiently functional.


svn path=/branches/ntvdm/; revision=60755
2013-10-26 20:48:31 +00:00
Aleksandar Andrejevic 68de967fb2 [NTVDM]
Fix the "Read Buffered Input" command and implement "Get STDIN Status".


svn path=/branches/ntvdm/; revision=60753
2013-10-26 18:01:40 +00:00
Aleksandar Andrejevic dfd1c031d6 [FAST486]
Implement the CLTS instruction.


svn path=/branches/ntvdm/; revision=60752
2013-10-26 17:33:10 +00:00
Aleksandar Andrejevic 1525a235a2 [FAST486]
Implement the MOV instruction for control and debug registers.
Remove definitions for non-existant registers CR1, CR4, CR5, CR6 and CR7.
The standard 80486 doesn't have a CR4 register (although some implementations
of the 80486 had large page support and CR4, it was not reliable).
As for the debug registers, DR4 is the same as DR6, and DR5 is the same as DR7.


svn path=/branches/ntvdm/; revision=60747
2013-10-26 00:56:11 +00:00
Aleksandar Andrejevic 87f5903d48 [FAST486]
Implement extended opcode groups 0xB9 (UD2) and 0xBA (BT/BTS/BTR/BTC).


svn path=/branches/ntvdm/; revision=60745
2013-10-25 18:15:24 +00:00
Aleksandar Andrejevic 01d5a36cf5 [NTVDM]
Remove the code that performs waiting in 32-bit mode since that blocks the emulator
and prevents interrupts from working.
Implement a 16-bit waiting system in the interrupt handlers.
Fix the PS/2 interrupt code.


svn path=/branches/ntvdm/; revision=60739
2013-10-24 01:01:49 +00:00
Aleksandar Andrejevic 5eb7c07bb8 Sync with trunk for console graphics palettes.
svn path=/branches/ntvdm/; revision=60735
2013-10-23 00:26:50 +00:00
Hermès Bélusca-Maïto dd2d4349e2 [CONSRV]:
Fix console palette setting. For that, we create a console framebuffer on which we draw the different active screen buffers (be they text or graphics), we can change the palette associated to this framebuffer and then we draw the framebuffer on screen.
Console palettes now work !!!!!! @ [TheFlash]

Part 2/2

svn path=/trunk/; revision=60734
2013-10-23 00:12:17 +00:00
Thomas Faber 8efecdcf15 [EXPLORER]
- Remove no longer needed special casing for __MINGW32__. Patch by Ivan Rodionov.
CORE-7335 #resolve #comment Thanks! Committed in r60733.

svn path=/trunk/; revision=60733
2013-10-22 19:51:25 +00:00
Thomas Faber 053591f6b4 [SHELL32_WINETEST]
- Add tests for SHCreateShellFolderView[Ex]. Already applied upstream.
CORE-7334

svn path=/trunk/; revision=60732
2013-10-22 19:09:45 +00:00
Thomas Faber 508dc39a87 [SHELL32]
- Import SHCreateShellFolderView implementation and fixes for -Ex from Wine
CORE-7334 #resolve

svn path=/trunk/; revision=60731
2013-10-22 19:01:07 +00:00
Eric Kohl 9a3424b618 [SAMSRV]
Create and set a security descriptor for new group account objects.

svn path=/trunk/; revision=60730
2013-10-21 20:16:56 +00:00
Eric Kohl ab4c296d0f [SAMSRV]
Create and set a security descriptor for new alias account objects.

svn path=/trunk/; revision=60729
2013-10-21 18:53:26 +00:00
Eric Kohl 89f9c12117 [SAMSRV]
- SampSetupCreateUserAccount, SamrCreateUserInDomain and SamrCreateUser2InDomain: Set the PrivateData attribute.
- SamrGetAliasMembership: Remove a superfluous call to SampRegCloseKey.
- SampQueryUserAll and SampSetUserAll: Disable access to the SecDesc attribute as long as it is not set upon user account creation.

svn path=/trunk/; revision=60728
2013-10-21 10:25:21 +00:00
Eric Kohl e64f2a9675 [INCLUDE]
- sam.idl: Rename GROUP_ATTRIBUTE_INFORMATION to SAMPR_GROUP_ATTRIBUTE_INFORMATION in order to avoid confilcts with new types in ntsam.h.
- ntsam.h: Add missing group specific structures.

svn path=/trunk/; revision=60727
2013-10-21 09:13:14 +00:00
Hermès Bélusca-Maïto 92bd19337b [CONSRV][WIN32K]
- Fix console palette setting; introduce the ConsoleMakePalettePublic control code for NtUserConsoleControl API which
  is called by the SetConsolePalette to make the given palette handle public (indeed, the caller to SetConsoleHandle
  gives to this API a GDI palette handle which is aimed at being used by another process, i.e. by CSRSS.EXE; in normal
  operation this is impossible unless saying to GDI that the handle is meant to be public; that's what it's done there).

  Thanks to Aleksander and David (who provided tests) and Timo (see revision 60725) for having helped me in understanding
  what happened exactly there.

- Remove now-unneeded DPRINT1s and the hacked palette that was introduced in revision 60629/60641.

Part 1/2

svn path=/trunk/; revision=60726
2013-10-20 22:35:15 +00:00
Timo Kreuzer 9625b9b820 [WIN32K]
Add GreSetObjectOwnerEx, allowing to set the owner of not-owned objects by passing GDIOBJFLAG_IGNOREPID as 3rd parameter. Use with care :) Dedicated to Alexander and Hermès.

svn path=/trunk/; revision=60725
2013-10-20 19:46:28 +00:00
Aleksandar Andrejevic ba466dbba3 [NTVDM]
Implement the "Get Default Drive" DOS command.


svn path=/branches/ntvdm/; revision=60724
2013-10-20 15:01:28 +00:00
Hermès Bélusca-Maïto 56df983f97 Fix the fix.
svn path=/trunk/; revision=60723
2013-10-20 13:54:16 +00:00
Hermès Bélusca-Maïto 9d3f488a57 [USETUP]: Fix spanish translations, suggestions by Mario Rugiero and Julio Carchi
CORE-7516 #resolve #comment Suggestions committed in revision r60722. Thanks :)

svn path=/trunk/; revision=60722
2013-10-20 13:51:18 +00:00
Aleksey Bragin 41537ba703 [NTOS]
- Correctly compute addresses of MI_VAD_BITMAP and MI_WORKING_SET_LIST. In trunk's MM it went unnoticed because nothing really cares about these two structs.

svn path=/trunk/; revision=60721
2013-10-20 09:41:54 +00:00
James Tabor 746f5c09a7 - Fix ATI test and go.
svn path=/trunk/; revision=60720
2013-10-20 05:36:36 +00:00
James Tabor 533fa53c13 - Fix build.
svn path=/trunk/; revision=60719
2013-10-20 05:31:48 +00:00
James Tabor d700b033fc [Win32k]
- The (ATI) patch CORE-6551. Please oh please use this jira core issue for all bug reports and regressions.
- Major rewrite to input message queue. It is now attachable between threads. After all the hubbub the only thing we pass are all the SetActive/Foreground/Parent/Window wine msg and win tests. But not the message sequence tests.
- Pass all but one foreground API User32 ATI test when the message patch is installed. But w/o it, pass all but 8'ish.
- Tested XP osk (On-Screen Keyboard) with CMD, it works but is quirky. Need to look into set to top window issues.
- AHK issues work long as ATI is used and when it is not the some AHK tests fail. That was why all the hot key changes had been committed before. Still looking into this.
- Please test everything and post to the appropriate jira issue reports. I do not have a lot of time anymore to focus hard on many issues, it will take months to do so with just one.

svn path=/trunk/; revision=60718
2013-10-20 05:16:52 +00:00
Aleksandar Andrejevic 67b093f38c [FAST486]
Create a macro SWAP (swaps two variables) to shorten the code.
Implement the BSWAP instruction.


svn path=/branches/ntvdm/; revision=60717
2013-10-20 00:55:31 +00:00
Aleksandar Andrejevic a93095e678 [FAST486]
Implement BT, BTS, BTR and BTC.


svn path=/branches/ntvdm/; revision=60716
2013-10-20 00:25:41 +00:00
Aleksandar Andrejevic 1a968e6f61 [FAST486]
Fix more prefix handling.
Create the macros TOGGLE_ADSIZE and TOGGLE_OPSIZE to shorten the code.


svn path=/branches/ntvdm/; revision=60715
2013-10-19 23:43:53 +00:00
Aleksandar Andrejevic 97c51f53c4 [FAST486]
Fix prefix handling.
Create a macro NO_LOCK_PREFIX to shorten the code.


svn path=/branches/ntvdm/; revision=60714
2013-10-19 23:03:40 +00:00
James Tabor ccfd05479b - Remove a mislaid artifact.
svn path=/trunk/; revision=60713
2013-10-19 19:08:41 +00:00
Aleksandar Andrejevic 75a0ca07a1 [FAST486]
Implement CMPXCHG.


svn path=/branches/ntvdm/; revision=60712
2013-10-19 18:56:58 +00:00
Aleksandar Andrejevic a98544e517 [FAST486]
Implement PUSH/POP FS/GS.


svn path=/branches/ntvdm/; revision=60711
2013-10-19 18:36:04 +00:00
Aleksandar Andrejevic ca7d21eff4 [FAST486]
The 80486 doesn't have any time stamp counter (TSC) at all.


svn path=/branches/ntvdm/; revision=60710
2013-10-19 18:28:27 +00:00
Timo Kreuzer 4385bb351d [NTOSKRNL]
Rewrite NtCallbackReturn in C

svn path=/trunk/; revision=60709
2013-10-19 18:04:15 +00:00
Aleksandar Andrejevic d3bc33ee5d [FAST486]
And add those newly implemented opcodes into the table...


svn path=/branches/ntvdm/; revision=60708
2013-10-19 18:00:19 +00:00
Thomas Faber 3440678be4 [NTDLL_APITEST]
- Add test for Rtl MemoryStream functions. Patch by David Quintana.
CORE-7492

svn path=/trunk/; revision=60707
2013-10-19 17:59:29 +00:00
Aleksandar Andrejevic 7105c52d86 [FAST486]
Implement SETO, SETNO, SETC, SETNC, SETZ, SETNZ, SETBE, SETNBE, SETS, SETNS, SETP
SETNP, SETL, SETNL, SETLE and SETNLE.


svn path=/branches/ntvdm/; revision=60706
2013-10-19 17:57:26 +00:00
Thomas Faber fec54daadd [RTL]
- Implement Rtl MemoryStream functions. Patch by David Quintana.
CORE-7492

svn path=/trunk/; revision=60705
2013-10-19 17:48:27 +00:00
Aleksandar Andrejevic 2583e4f51e [FAST486]
Remove TODOs for instructions that don't exist on the 80486.


svn path=/branches/ntvdm/; revision=60704
2013-10-19 17:29:44 +00:00
Hermès Bélusca-Maïto 51040fc61e Bye bye Soft386, welcome Fast486, courtesy Aleksandar Andrejevic.
[NTVDM]: Define by default NEW_EMULATOR, i.e. use Fast486 instead of softx86.

svn path=/branches/ntvdm/; revision=60703
2013-10-19 16:55:51 +00:00
Timo Kreuzer fc553a6968 [NTOSKRNL] Fix a typo I introduced in TRAP_DEBUG only code, spotted by Thomas
svn path=/trunk/; revision=60702
2013-10-19 11:40:00 +00:00
Timo Kreuzer 6697ef7a17 [NTOSKRNL]
- Introduce a new and faster way to return to kernel mode from traps by using a ret 8 instruction instead of an iret.
- Make use of KiUserTrap where appropriate
- Remove some pointless toplevel volatile

svn path=/trunk/; revision=60701
2013-10-19 11:33:34 +00:00
Benedikt Freisen 76e1afdbda [PAINT]
* Fix number typo introduced in revision 59955

svn path=/trunk/; revision=60700
2013-10-19 10:57:06 +00:00
Aleksandar Andrejevic 9b02129308 [SOFT386]
Implement extended conditional jumps.


svn path=/branches/ntvdm/; revision=60699
2013-10-19 00:35:06 +00:00
Aleksandar Andrejevic 2095b2a844 [SOFT386]
Number the opcodes in the TODO list.


svn path=/branches/ntvdm/; revision=60698
2013-10-19 00:19:57 +00:00
Aleksandar Andrejevic 2462a558df [NTVDM]
Add a hack to fix screen updates while waiting for a keypress.


svn path=/branches/ntvdm/; revision=60697
2013-10-19 00:04:11 +00:00
Aleksandar Andrejevic 0e8be812b0 [SOFT386]
Implement the hardware interrupt system.
Modify Soft386Interrupt to assume hardware interrupts, because
software interrupts from outside the emulator may cause race conditions.


svn path=/branches/ntvdm/; revision=60696
2013-10-18 22:50:00 +00:00
Aleksandar Andrejevic 3041ad0330 [SOFT386]
Fix previous fix.


svn path=/branches/ntvdm/; revision=60695
2013-10-18 22:01:35 +00:00
Aleksandar Andrejevic fb5036618e [SOFT386]
Fix typecasts to make sure the value is sign-extended.


svn path=/branches/ntvdm/; revision=60694
2013-10-18 21:45:10 +00:00