black screen on resume from hibernate (1 Viewer)

STSC

Portal Pro
December 4, 2004
139
0
Germany
dman_lfc
I took a look at your bug description.
I'm pretty sure that you can't change the system default settings, that the screen doesn't stay black after resume. But the issue is that you can't get back from standby when MP is running and you also can't start MP by the taskscheduler as long as the screen stays black on resume.
 

Pingus

Portal Member
February 2, 2005
42
0
Denmark
AllenConquest said:
It also does the same using the new PVRScheduler, so it seems anything that resumes MP causes the same problem.

Just an idea to test:

I also have black screen when S1 functions are enabled in BIOS, when I enable the S3 more advanced functions the MP comes out from the standby with picture, sound and everything ... seems like mu Pundit-R hardware does a VGA reset using S3 resume functions, have anyone of you tried this ?
 

STSC

Portal Pro
December 4, 2004
139
0
Germany
But how can I do a vga reset in VB .NET/C#??

I figured out a very interesting thing.
I tried to call the screensaver on resume and then the monitor switched on, but it showed an out of range error.
So the issue is really that the vga card won't be initialised as long as you don't move you mouse :x
 
V

Vic

Guest
Have you tried moving the mouse from code? I know there's a Win32 api call that can do it.

About VGA reset...I have an option to "Repost Video on S3 resume" in my Asus motherboard. I believe I tested it without success, but I will try it again to see if it solves the problem.
 

Pingus

Portal Member
February 2, 2005
42
0
Denmark
Vic said:
Have you tried moving the mouse from code? I know there's a Win32 api call that can do it.

About VGA reset...I have an option to "Repost Video on S3 resume" in my Asus motherboard. I believe I tested it without success, but I will try it again to see if it solves the problem.

Thats the option I use with success!
 

STSC

Portal Pro
December 4, 2004
139
0
Germany
Yes this is what I did try, but the monitor doesn't wake up:

Code:
Public Structure POINTAPI
  Dim x As Integer
  Dim y As Integer
End Structure

Private Declare Function GetCursorPos Lib "user32" (ByRef lpPoint As POINTAPI) As Integer
Private Declare Function SetCursorPos Lib "user32" (ByVal X As Integer, ByVal Y As Integer) As Integer

Dim Pt As New POINTAPI

GetCursorPos(Pt)
SetCursorPos(Pt.x + 1, Pt.y + 1)

And also this:

Code:
Cursor.Position = New Point(x, y)

And this:

Code:
   <System.Runtime.InteropServices.DllImport("user32.DLL")> _
Private Shared Function SendMessage( _
    ByVal hWnd As Integer, ByVal wMsg As Integer, _
        ByVal wParam As Integer, ByVal lParam As Integer _
    ) As Integer
    End Function
    <System.Runtime.InteropServices.DllImport("user32.dll")> _
    Private Shared Function GetForegroundWindow() As System.IntPtr
    End Function
    <STAThread()> _
    Private Sub MonitorOn()

        Const MONITOR_ON As Integer = -1
        Const MONITOR_OFF As Integer = 2
        Const WM_SYSCOMMAND As Integer = 274
        Const SC_MONITORPOWER As Integer = 61808
        Const HWND_TOPMOST As Integer = -1
        System.Threading.Thread.Sleep(5000)

        SendMessage(GetForegroundWindow, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON)
 

ezeew

Portal Member
May 15, 2005
5
0
Germany
On my system, MP definitely does not come back after standby or hibernate with power-scheduler.

Is this bug related to MP, the plugin, the OS or maybe the BIOS ?

Is there a workaround without using keyboard, mouse or the power key ? :)

Leaving the system on all the time is not a good solution, I think.
 

STSC

Portal Pro
December 4, 2004
139
0
Germany
The PVR Scheduler can solve this issue in the meantime. It closes MP before Standby and starts it again on resume.

The important thing on resume is that the monitor gets turned on to initialise the graphic card again, otherwise the cpu usage of MP would rise to 100%
 

Users who are viewing this thread

Top Bottom