Opened 10 years ago

Closed 9 years ago

Last modified 7 years ago

#479 closed defect (fixed)

Bug in restoring VBE state in ACPIDAEMON.EXE

Reported by: Lars Erdmann Owned by: eco
Priority: major Milestone:
Component: Daemon Version: 3.17
Keywords: Cc:

Description

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)

comment:1 Changed 10 years ago by Lars Erdmann

Milestone: Release version 3.17eCS 2.x
Version: 3.163.17

comment:2 Changed 10 years ago by Lars Erdmann

Component: ACPI.PSDACPIDAEMON.EXE

comment:3 Changed 9 years ago by Lars Erdmann

Resolution: fixed
Status: newclosed

comment:4 Changed 7 years ago by David Azarewicz

Milestone: eCS 2.x

Milestone eCS 2.x deleted

Note: See TracTickets for help on using tickets.