Page 1 of 1

scrsaver -- screen saver

Posted: Tue Mar 12, 2019 1:03 am
by dunkaist
Hi folks,

We already have three topics on screen savers, here is one more.

I explained details in the commit message:
dunkaist wrote:Add scrsaver: new screen saver program.

Our default screen saver, ss, requires animations to run as its threads.
Therefore you can't set your favorite demo app as screen saver without
embedding it into ss. Vice versa, you can't run embedded animations as
standalone demos. Moreover, ss is a multi-thread app with configuration
window invoked by clicking both mouse buttons at the top right screen
corner (really?).

Scrsaver is a tiny single-thread program, configured via plain text
file, /sys/settings/system.ini. It has no window and runs a separate
executable as screen saver. This is done via primitive protocol:
* Config file specifies program to run;
* '@ss' parameter is passed to the program;
* program launches '/sys/@ss' at exit if '@ss' param is passed.

See /programs/demos/spiral for working example.
I also included fix for screen saver by Nasarus, which was lost between r1745 and r1747.
Any objections to make it default?

Re: scrsaver -- screen saver

Posted: Wed May 15, 2019 11:41 am
by Leency
Hello,

This topic was in browser bookmarks for a long time because I wanted to test it.
Now I have finally checked and it works well. Great idea.

But for me Spiral demo is a bit too colored and may be annoying. Maybe better to rebuild old @ss into a demo and use it?

Also I can write a configuration UI for @ss.

Re: scrsaver -- screen saver

Posted: Wed May 15, 2019 8:41 pm
by dunkaist
Leency wrote:This topic was in browser bookmarks for a long time because I wanted to test it.
Now I have finally checked and it works well. Great idea.
Thank you, I have many pinned tabs for exactly same reason too.
Leency wrote:But for me Spiral demo is a bit too colored and may be annoying. Maybe better to rebuild old @ss into a demo and use it?
As I described in the commit message, it isn't straightforward with @ss to make a standalone demo into a screensaver and vice versa. It shouldn't be too hard to extract ASSM screensaver (or LINES?) from @ss if we decide that there is no better screen saver candidate among existing demos. Such demo shouldn't burn the CPU and eat memory of course.
Leency wrote:Also I can write a configuration UI for @ss.
Do you prefer a separate application or another tab in existing configurator?

Re: scrsaver -- screen saver

Posted: Thu May 16, 2019 12:21 am
by Leency
dunkaist wrote:Do you prefer a separate application or another tab in existing configurator?
What configurator do you mean? I can add a tab in Appearance app.
SYSPANE -> APPEARANCE (ISO must be attached)

Re: scrsaver -- screen saver

Posted: Thu May 16, 2019 2:19 am
by dunkaist
I meant Appearance, right. I didn't know it's ISO only.

btw, Appearance crashes after selecting 'bat' skin.

Re: scrsaver -- screen saver

Posted: Mon May 27, 2019 8:19 pm
by Leency
dunkaist wrote:btw, Appearance crashes after selecting 'bat' skin.
Already fixed.

Re: scrsaver -- screen saver

Posted: Mon Jun 03, 2019 3:13 pm
by Leency
Screensaver starts on K6-2/500AFX: draws an image and then crashes with the notice "Unsupported instruction."

Re: scrsaver -- screen saver

Posted: Tue Jun 04, 2019 4:18 am
by dunkaist
Fixed in r7665. FCOMIP instruction is too new for K6-2/500AFX and disassembler in our debugger.

Another task for those who doesn't know where to start: update mtdbg to disassemble fcomip instruction properly.

Re: scrsaver -- screen saver

Posted: Tue Dec 21, 2021 1:48 am
by Leency
#9449: /sys/3d/crownscr (Crown screensaver) is now also supported.

Re: scrsaver -- screen saver

Posted: Wed Dec 29, 2021 3:50 pm
by Leency
Added screensaver tab into Appearance app.