Commit graph

18 commits

Author SHA1 Message Date
Aleksandar Andrejevic f1a3c93e07 [FAST486][NTVDM]
Get rid of Fast486Interrupt, since it's not used anywhere. Also we can now remove
workarounds for all of the bugs that it caused.
Implement the "single-instruction interrupt delay" for instructions that load the
stack segment only.


svn path=/trunk/; revision=65061
2014-10-28 00:33:03 +00:00
Hermès Bélusca-Maïto 8d73d7c58a [NTVDM]
- Move almost all the DOS command launch thread into dem.c,
- Rework the code so that now, when we want to either load our BIOS32 or a custom one, we start their execution at F000:FFF0 as it should be,
- For modularity purposes (ie. to be able one day to load real OSes in our ntvdm), implement INT 19h (bootstrap loader) so that it calls a (temporary) dos bootsector loader that writes some bootstrap code at 0000:7c00, then the INT 19h runs this code, that has as an effect to load our DOS32 (for a real OS, the MBR code goes to 0000:7c00 and is then run).

svn path=/trunk/; revision=64521
2014-10-04 13:36:17 +00:00
Hermès Bélusca-Maïto b0555a5004 [NTVDM]
- Add the possibility to dump the VM memory either in text or binary mode.
- Initialize the VM memory to 0xFF to track potential memory misuses (diagnostics purposes). Things may crash, or not!

svn path=/trunk/; revision=64367
2014-09-28 16:27:30 +00:00
Hermès Bélusca-Maïto 0c86291749 [NTVDM]
- Move the mouse driver to DOS since it's our 32bit version of mouse.com, in some sense,
- Temporarily disable the mouse user callbacks because currently they went called in a parallel thread than the CPU one, that caused CPU corruption,
- In the same way we currently trigger IRQ1 interrupts, we do the same for IRQ12,
- Make the console input pump more modular (and mouse presence detection code is WIP),
- Put keyboard code into a dedicated file (as done for the mouse),
- Adapt the existing PS/2 emulation code to support two PS/2 ports controlled by 1 controller. Please note that some documentations precise that the response byte (answer to a PS/2 controller command) is written directly to the PS/2 output port.

svn path=/trunk/; revision=64168
2014-09-16 00:51:15 +00:00
Hermès Bélusca-Maïto fe68098da9 [NTVDM]
- Add DPRINTs to the DumpMemory function.
- Use a VgaSetActiveScreenBuffer function to change active screen buffers: it calls the SetConsoleActiveScreenBuffer API but also recreates the VDM console menus, because on windows custom console menus are per-screen-buffer, and not per-console, so that if you set menus when one screen buffer is activated, and if you change it, then your menus become unuseful because for this new active screenbuffer, they are not set. It's completely ridiculous but we need to live with that (on ReactOS we still don't have this behaviour).

svn path=/trunk/; revision=64137
2014-09-14 00:43:43 +00:00
Aleksandar Andrejevic a3fe90d0d0 [NTVDM]
Properly repeat the GetNextVDMCommand request. Using "continue" there will not work
if the application has been started by a double click, since in that case AcceptCommands
is FALSE.


svn path=/trunk/; revision=63379
2014-05-19 22:40:36 +00:00
Hermès Bélusca-Maïto ad69b4a3c0 [NTVDM]
Add a memory dump facility.

svn path=/trunk/; revision=63342
2014-05-17 23:49:35 +00:00
Aleksandar Andrejevic 22679f9a7c [NTVDM][KERNEL32][BASESRV]
Modify BaseSrvFillCommandInfo to always return the correct lengths of the parameters.
In BaseSrvGetNextVDMCommand, check if BaseSrvFillCommandInfo failed.
In CommandThreadProc, expand the size of the environment if necessary.
Add a useful DPRINT1 in BiosKbdBufferPush.
Finish implementing BaseCreateVDMEnvironment.
In GetNextVDMCommand, return the correct lengths of parameters if BaseSrvGetNextVDMCommand
failed.


svn path=/trunk/; revision=63337
2014-05-17 22:26:37 +00:00
Hermès Bélusca-Maïto cdfa735cd1 [NTVDM]
- Continue to work on VGA attach/detach from console;
- Stick more #if(n)def STANDALONE to portions of code that are useful (or not) in standalone (i.e. not in OS-integrated) mode;
- Isolate the Dos***File functions in a new source file;
- Get rid of STACK_COUNTER, STACK_VAR_A and STACK_VAR_B since we now use 32-->16 bit callbacks (and therefore adjust the callback/INT32 trampoline stubs accordingly).

svn path=/trunk/; revision=63238
2014-05-11 19:25:09 +00:00
Aleksandar Andrejevic c32b8d2f39 [BRANCHES]
Merge the NTVDM branch back to trunk. New/changed components are: ntvdm, fast486, basesrv,
ntdll, kernel32 and csrsrv.


svn path=/trunk/; revision=63177
2014-05-06 17:06:47 +00:00
Hermès Bélusca-Maïto 4f0b8d3db0 Create a branch for Aleksandar Andrejevic for his work on NTVDM. See http://jira.reactos.org/browse/CORE-7250 for more details.
svn path=/branches/ntvdm/; revision=59241
2013-06-16 22:01:41 +00:00
Hermès Bélusca-Maïto d0fa874320 Remove the unneeded $Id$ blabla from the source code. (Part 2/N)
svn path=/trunk/; revision=58500
2013-03-14 21:04:13 +00:00
Hermès Bélusca-Maïto 0823512b4a - Remove ALL the unneeded "author date id revision" svn properties.
- Remove the erroneous svn:eol-syle or svn:eol-stlye properties (and replace them by svn:eol-style)

svn path=/trunk/; revision=58489
2013-03-13 23:50:08 +00:00
Amine Khaldi 2bd930547c * Slap *some* sense into our header inclusions.
* This significantly shrinks the dependency tracking data and the compiled objects size, which speeds up the whole build process (especially the incremental builds) accelerating the daily development as a result.
* No intended code changes, ~27% smaller build. Enjoy ;)

svn path=/trunk/; revision=58214
2013-01-24 23:00:42 +00:00
Amine Khaldi 42b02afa60 * Include NDK headers on-demand.
svn path=/trunk/; revision=53284
2011-08-17 14:04:33 +00:00
Gregor Schneider b423af097f [NTVDM] Load resource strings in Unicode when printing them in Unicode
svn path=/trunk/; revision=46963
2010-04-20 18:59:58 +00:00
Stefan Ginsberg ef394b196f - Less STDCALL, more WINAPI/NTAPI/APIENTRY
svn path=/trunk/; revision=37752
2008-11-29 22:48:58 +00:00
Maarten Bosma 3b262b2b94 Moved ntvdm
svn path=/trunk/; revision=21065
2006-02-17 12:24:29 +00:00
Renamed from reactos/subsys/ntvdm/ntvdm.c (Browse further)