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
- Don't leak console input/output handles when opening them in BiosInitialize.
- Deinitialize the emulator in the reverse order it was initialized.
- Simplify VgaGetVideoBaseAddress and VgaGetVideoLimitAddress and use the former one in VgaTranslate[Read-Write]Address.
- Use only unicode Win32 APIs where it's needed.
svn path=/branches/ntvdm/; revision=59659
Implement Video Graphics Array (VGA) support.
Replace the old BIOS video code with new code that uses the VGA.
svn path=/branches/ntvdm/; revision=59648
Modify the flags on the stack instead of the flags register directly.
The flags register is restored during IRET so changing it directly does nothing.
svn path=/branches/ntvdm/; revision=59566
Remove the old "INT 0xFF" hack and instead use an invalid opcode sequence for emulator operations.
Fix the flags register update bug.
svn path=/branches/ntvdm/; revision=59565
Add a compile-time option (not default) to run ntvdm manually with the target executable as a parameter.
Fix screen clearing bug.
Rewrite several INT 10h functions to work for all video pages.
svn path=/branches/ntvdm/; revision=59497
Implement the IOCTL command in VDM DOS.
Rewrite the BIOS video pages support to use only one console buffer (not yet complete).
Fix the BIOS video mode table and several bugs in video functions.
svn path=/branches/ntvdm/; revision=59460