|
Screen Saver |
|
Jacko (14:46 23/2/2005) Loris (16:55 23/2/2005) monkeyson2 (17:12 23/2/2005) john (19:35 23/2/2005) Loris (11:39 24/2/2005) adrianl (13:09 24/2/2005) ksattic (21:39 24/2/2005) Loris (11:16 25/2/2005) john (17:33 25/2/2005) ksattic (18:19 25/2/2005) john (01:33 26/2/2005) monkeyson2 (11:52 24/2/2005) Jacko (07:27 24/2/2005)
|
|
David Jackson |
Message #62379, posted by Jacko at 14:46, 23/2/2005 |
Member
Posts: 84
|
Does anyone know how to disable screensavers before launching a program? |
|
[ Log in to reply ] |
|
Tony Haines |
Message #62392, posted by Loris at 16:55, 23/2/2005, in reply to message #62379 |
Ha ha, me mine, mwahahahaha
Posts: 1025
|
IIRC there is an SYS call to turn it off. Some non-interactive demos use it. |
|
[ Log in to reply ] |
|
Phil Mellor |
Message #62393, posted by monkeyson2 at 17:12, 23/2/2005, in reply to message #62392 |
Please don't let them make me be a monkey butler
Posts: 12380
|
http://www.drobe.co.uk/show_manual.php?manual=/sh-cgi?manual=OS%26page=ScreenBlanker_Control
SYS "ScreenBlanker_Control",4 TO old_delay% SYS "ScreenBlanker_Control",3,0 : REM set delay - 0 to disable REM do stuff here.... REM ... SYS "ScreenBlanker_Control",3,old_delay%: REM restore old delay. |
|
[ Log in to reply ] |
|
John D |
Message #62404, posted by john at 19:35, 23/2/2005, in reply to message #62393 |
Member
Posts: 261
|
They should add a way to do it properly really. That's a bit of a hack
Reasons I can think of off hand would be... someone could update it in between, doesn't support multi level locking, even the assumption that delay can be stored in one register and written back could be avoided. |
|
[ Log in to reply ] |
|
David Jackson |
Message #62410, posted by Jacko at 07:27, 24/2/2005, in reply to message #62393 |
Member
Posts: 84
|
Cheers - I'll give it a go later |
|
[ Log in to reply ] |
|
Tony Haines |
Message #62416, posted by Loris at 11:39, 24/2/2005, in reply to message #62404 |
Ha ha, me mine, mwahahahaha
Posts: 1025
|
In what way is it a hack? Its a documented call to a module - what more do you want?
Unless you are planning on jaffing around with it in interrupts... I don't think its the sort of thing you'd need to worry about someone else changing it after you and then mis-restoring it after you've reset it!
The cases I can think of for turning off the screen blanker are: Screensavers - should only have one at once Non-interactive demos - likely to singletask A wrapper for demos which forgot to do it, like Jacko wants. |
|
[ Log in to reply ] |
|
Phil Mellor |
Message #62417, posted by monkeyson2 at 11:52, 24/2/2005, in reply to message #62404 |
Please don't let them make me be a monkey butler
Posts: 12380
|
Reasons I can think of off hand would be... someone could update it in between, doesn't support multi level locking, even the assumption that delay can be stored in one register and written back could be avoided. A bit like Hourglass_On, Off and Smash? |
|
[ Log in to reply ] |
|
Adrian Lees |
Message #62419, posted by adrianl at 13:09, 24/2/2005, in reply to message #62416 |
Member
Posts: 1637
|
The cases I can think of for turning off the screen blanker are: Screensavers - should only have one at once Non-interactive demos - likely to singletask A wrapper for demos which forgot to do it, like Jacko wants. DVD players.
Adrian *who is reminded of the need for this code 5 minutes after starting to watch a movie* |
|
[ Log in to reply ] |
|
Simon Wilson |
Message #62475, posted by ksattic at 21:39, 24/2/2005, in reply to message #62419 |
Finally, an avatar!
Posts: 1291
|
The StrongHelp manual seems to be a little incorrect.
After calling the ScreenBlanker_Control SWI with R0=4 (get delay), the internal time is supposed to be in R0, and the time in centi-seconds in R1. The internal time appears to be in centi-seconds, and R1 is actually populated with the time in seconds.
PCITV now has ScreenBlanker control. |
|
[ Log in to reply ] |
|
Tony Haines |
Message #62494, posted by Loris at 11:16, 25/2/2005, in reply to message #62475 |
Ha ha, me mine, mwahahahaha
Posts: 1025
|
Now you mention it I seem to remember finding that, documentation not matching function. I think a demo by Alain Brobecker is the definitive guide. |
|
[ Log in to reply ] |
|
John D |
Message #62510, posted by john at 17:33, 25/2/2005, in reply to message #62416 |
Member
Posts: 261
|
In what way is it a hack? Its a documented call to a module - what more do you want? I want a documeented call to do what I want, not one to do something else that I can also use to give the effect I want (most of the time) :P
In other words he's calling "set screenblanker delay time" (twice) when he actually means "suspend screenblanking" and "resume screenblanking".
If those calls were supplied by the screenblanker module then the cases I gave as examples could be handled correctly by the module (as it would know your actual intention)
I suppose it's just adding some abstraction, but abstraction is cool :) |
|
[ Log in to reply ] |
|
Simon Wilson |
Message #62512, posted by ksattic at 18:19, 25/2/2005, in reply to message #62510 |
Finally, an avatar!
Posts: 1291
|
When PCITV is told to go full-screen, it temporarily disables blanking. When it is running in a window, is it better to disable screen blanking or to shut off the TV image when the blanker kicks in? If people aren't using DPMS, the TV image continues to show even though the screen is blanked.
If it's better to shut off the TV image, how do you detect when the blanker has kicked in? |
|
[ Log in to reply ] |
|
John D |
Message #62521, posted by john at 01:33, 26/2/2005, in reply to message #62512 |
Member
Posts: 261
|
There's a service call, 0x7a 0x7b for screen balnked and resotred |
|
[ Log in to reply ] |
|
|