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
[NTOSKRNL]: Commit an old patch of mine that sets up the right frontend code in IoAssignResources. All it does is add some error checking before calling the old halfplemented backend.
svn path=/trunk/; revision=59653
[TXTSETUP]: Add sacdrv.sys to the list of setup drivers.
[CMAKELISTS]: Add sac/sacdrv/sacmsg to the build.
[SACMSG]: Update some messages to give them identifiers.
[SACDRV]: Reformat almost the entire driver to ReactOS standards.
[SACDRV]: Implement about 50% of the driver, including most of the Channel Manager, Command Manager and Raw Channel Support. Comment and cleanup all of the old code that was there before. This is WIP -- it will only activate if you attempt to enable EMS. EMS/SAC support should be very helpful for Thorium Core/ARM port.
svn path=/trunk/; revision=59649