log in | register | forums
Show:
Go:
Forums
Username:

Password:

User accounts
Register new account
Forgot password
Forum stats
List of members
Search the forums

Advanced search
Recent discussions
- Elsear brings super-fast Networking to Risc PC/A7000/A7000+ (News:)
- Latest hardware upgrade from RISCOSbits (News:)
- RISCOSbits releases a new laptop solution (News:4)
- Announcing the TIB 2024 Advent Calendar (News:2)
- RISC OS London Show Report 2024 (News:1)
- Code GCC produces that makes you cry #12684 (Prog:39)
- Rougol November 2024 meeting on monday (News:)
- Drag'n'Drop 14i1 edition reviewed (News:)
- WROCC November 2024 talk o...ay - Andrew Rawnsley (ROD) (News:2)
- October 2024 News Summary (News:3)
Latest postings RSS Feeds
RSS 2.0 | 1.0 | 0.9
Atom 0.3
Misc RDF | CDF
 
View on Mastodon
@www.iconbar.com@rss-parrot.net
Site Search
 
Article archives
Acorn Arcade forums: Programming: Screen Saver
 
  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
madbanHa 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
monkeyson2Please 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
madbanHa 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
monkeyson2Please 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
ksattic
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
madbanHa 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
ksattic
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 ]
 

Acorn Arcade forums: Programming: Screen Saver