Change the instruction in the interrupt handlers to "INC SP" twice
instead of one "ADD SP, 2". It's shorter and supported by soft386 already.
svn path=/branches/ntvdm/; revision=60397
Implement the LES and LDS instructions.
Add optional support for BOPs (NTVDM-specific).
Fix prefix handling in some functions.
[NTVDM]
Enable BOPs for Soft386 (when NEW_EMULATOR is defined).
Fix the calling convention issue (softx86 uses cdecl, soft386 uses stdcall).
svn path=/branches/ntvdm/; revision=60395
Start implementing a new emulator library to provide 386/486 emulation support to NTVDM
and perhaps other components aswell.
svn path=/branches/ntvdm/; revision=59752
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
Synchronize with trunk again for SetConsolePalette.
Implement VGA palettes for graphics mode and DAC register access.
svn path=/branches/ntvdm/; revision=59713
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
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
- 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
Synchronize with trunk again to fix important bugs in the build system.
Implement register control functions which should be exported (Adapted from a patch by Hermes Belusca-Maito).
The actual export is temporarily disabled because a bug in the build system compiles ntvdm as a DLL instead of an EXE.
svn path=/branches/ntvdm/; revision=59684
- Enable TESTING by default until the correct way to load ntvdm is found.
- Calculate the character height instead of hardcoding in the BDA.
svn path=/branches/ntvdm/; revision=59678
- Fix usage of the console framebuffer mutex (used only with graphics screen buffers).
- Do not check for text/graphics mode when updating each scan line, in VgaUpdateFramebuffer.
svn path=/branches/ntvdm/; revision=59673
- Check return value of VgaEnterGraphicsMode (because CreateConsoleScreenBuffer can fail), and create VgaEnterTextMode and VgaLeaveTextMode helpers.
- Don't declare variables inside loops.
svn path=/branches/ntvdm/; revision=59668