2005-08-06, 07:54 AM
While playing with my newly built PVR system and tweaking the ATI Catalyst Control Center settings, I got the idea of trying to write a GB-PVR plugin that would automatically set the overscan mode of a Radeon graphics adapter before and after playing a recorded video. I skimmed through the ATI CCC SDK, and at first it looked like it'd be an easy bit of code. Here's the quick test VB.net sample I tried:
(Ignore the spaces being inserted on longer lines, it's something the forum is doing on its own)
It does run, but so.GetOverscanSupported() returns false no matter what I try (including running it on a system with TV-Out). I'm guessing that the new instances I create have no actual relationship to the settings in use on the graphics adapter itself. However, looking through the SDK, I can't figure out any other way to obtain an instance of that object...I can't find anything that returns a "ScreenOverscan" object.
Does anyone have any tips for this newbie?
(Ignore the spaces being inserted on longer lines, it's something the forum is doing on its own)
Code:
Imports ATI.ACE.CLI.Aspect.DeviceTV2
Imports ATI.ACE.CLI.Aspect.DeviceTV2.Graphics
Module Main
Sub Main()
Dim so As New ATI.ACE.CLI.Aspect.DeviceTV2.Graphics.Shared.ScreenOverscan
If so.GetOverscanSupported() Then
MsgBox("Overscan supported, currently: " & so.GetOverscanCurrent().ToString())
Dim aspect As ATI.ACE.CLI.Foundation.
Dim tv As New ATI.ACE.CLI.Aspect.DeviceTV2.Graphics.Shared.SDeviceTV2(
Select Case so.GetOverscanCurrent()
Case [Shared].TV2SCANTYPE.Underscan
If Not so.Set(ATI.ACE.CLI.Aspect.DeviceTV2.Graphics.Shared.TV2SCANTYPE.Middlescan) Then
MsgBox("Unable to set scan mode")
End If
Case [Shared].TV2SCANTYPE.Middlescan
If Not so.Set(ATI.ACE.CLI.Aspect.DeviceTV2.Graphics.Shared.TV2SCANTYPE.Overscan) Then
MsgBox("Unable to set scan mode")
End If
Case [Shared].TV2SCANTYPE.Overscan
If Not so.Set(ATI.ACE.CLI.Aspect.DeviceTV2.Graphics.Shared.TV2SCANTYPE.Underscan) Then
MsgBox("Unable to set scan mode")
End If
End Select
Else
MsgBox("Overscan not supported")
End If
End Sub
End Module
It does run, but so.GetOverscanSupported() returns false no matter what I try (including running it on a system with TV-Out). I'm guessing that the new instances I create have no actual relationship to the settings in use on the graphics adapter itself. However, looking through the SDK, I can't figure out any other way to obtain an instance of that object...I can't find anything that returns a "ScreenOverscan" object.
Does anyone have any tips for this newbie?
XP SP2 + Latest Hotfixes, GBPVR v0.98.8, AMD Sempron 2500+, Abit VA-20, 512MB PC3200 RAM, Gigabyte Radeon 9250 128 MB VIVO AGP, ATI TV Wonder Elite PCI w/ Remote Wonder Plus, Creative Audigy 2 Value, 2x Seagate ATA/100 7200.7 IDE
---
Officer, have you ever heard of "Snow Crash"...?