- Avoid printing an unterminated string in registry test. Powered by DPH.
- Add a ROS hack to avoid a buffer overflow when one of our DPRINTs is returned by WaitForDebugEvent (e.g. when using DPH)
svn path=/trunk/; revision=67382
When the VGA memory map is A0000-BFFFF, mirror the bottom 64 KB into the top.
This should take care of all VGA addressing problems.
svn path=/trunk/; revision=67377
* Turn the files into .CPP, to ease future changes. All the code remains class-free for now, with one exception.
* Adapt the download progress dialog implementation to ATL/C++, which is a best match for COM classes.
* Add an ATL CModule class to the process, necessary for
CORE-9593
svn path=/trunk/; revision=67376
Store the return address in INT 22h as a far pointer.
The amount of memory stored in the Env variable is EnvSize, not sizeof(Env)
since Env is a pointer.
svn path=/trunk/; revision=67369
In DosCreateProcess, allocate space for the environment block dynamically and expand
it if needed, just like we do in CommandThreadProc.
In GetNextVDMCommand, remove the check that checks whether VDMState is one of
VDM_NOT_LOADED, VDM_NOT_READY or VDM_READY - that check makes no sense whatsoever,
since those aren't input values for that structure field. Their bit masks do correspond
to valid input fields, but even then the check makes no sense.
svn path=/trunk/; revision=67363
- Report A20 line status in the PS/2 controller output port.
- Properly implement XMS functions 3 and 5 (Global Enable/Disable A20 line), 4 and 6 (Local Enable/Disable A20 line) and 7 (Get A20 line status) using flag+counter and PS/2 I/O calls.
- Fix XMS driver version report.
svn path=/trunk/; revision=67361
- Halfplement BasepGetComputerNameFromNtPath() which allows querying the computer name given a handle & an NT path
- Implement BasepNotifyTrackingService() which issues a FileTrackingInformation on file move
svn path=/trunk/; revision=67355
Implement the XMS functions AH = 03h and AH = 04h (global enable/disable A20).
Make the GetHandleRecord function in the EMS driver inline.
CORE-8277 #comment Please retest.
svn path=/trunk/; revision=67352
- Fix copy-paste error in the initialization of DriverHeader.
- Use BOP_... syntax for BOP #define names (to comply with the rest of the code).
svn path=/trunk/; revision=67351
- Move the EMS code from the BIOS to the DOS driver where it belongs.
- Expand the DOS device API with a new function, DosCreateDeviceEx, which
will allow 32-bit DOS driver to reserve private memory.
- For each DOS device, create an entry in guest memory so that 16-bit code
can call 32-bit DOS drivers directly.
- Implement an XMS driver stub that uses the above.
- Arch, that's not how the DOS driver strategy routine works, you need to
give it the request in ES:BX which it will store somewhere, and then call
the interrupt routine.
svn path=/trunk/; revision=67339
- Implement BasepOpenFileForMove() used by PrivMoveFileIdentityW(), with its Windows bugs
- Implement PrivMoveFileIdentityW()
Not sure yet why Windows implementation exposes a sharing violation during our API test. Our absence of sharing violation looks more legit...
To be investigated.
svn path=/trunk/; revision=67335