Bug in restoring VBE state in ACPIDAEMON.EXE
file daemon\screen.c, routine "RestoreVideo":
the buffer type on the VBE call to restore state should be "INPUT_BUFFER" and not "OUTPUT_BUFFER".
That will also render obsolete the attempt to set the memory attributes of pBuffer via DosSetMem:
intcrf.pB[0].bBufferType = INPUT_BUFFER; <---- change here !!!!
intcrf.pB[1].bBufferType = BUFFER_NONE;
intcrf.pB[0].bSelCRF = 8;
intcrf.pB[0].bOffCRF = 1;
intcrf.pB[0].pAddress = pBuffer;
intcrf.pB[0].ulSize = StateSize;
intcrf.aCRF.reg_eax = 0x4f04;
intcrf.aCRF.reg_edx = 0x02; // restore state
intcrf.aCRF.reg_ecx = ApmCfg.VBESave;
intcrf.ulBIOSIntNo = 0x10;
rc = DosSysCtl(INT10_MINIVDM_CALL, &intcrf);
Change History
(4)
Milestone: |
Release version 3.17 → eCS 2.x
|
Version: |
3.16 → 3.17
|
Component: |
ACPI.PSD → ACPIDAEMON.EXE
|
Resolution: |
→ fixed
|
Status: |
new → closed
|
Milestone eCS 2.x deleted