phosphor(6) XScreenSaver manual phosphor(6)

NAME


phosphor - simulates an old terminal with long-sustain phosphor

SYNOPSIS


phosphor [--display host:display.screen] [--window] [--root]
[--window-id number][--install] [--visual visual] [--font font]
[--scale int] [--ticks int] [--delay usecs] [--program command]
[--meta] [--esc] [--bs] [--del] [--fps]

DESCRIPTION


The phosphor program draws text on the screen in a very large
pixelated font that looks like an old low resolution dumb tty. The
pixels flare and fade out as if the phosphor was very long-sustain.
It is also a fully functional vt100 terminal emulator.

OPTIONS


phosphor accepts the following options:

--window
Draw on a newly-created window. This is the default.

--root Draw on the root window.

--window-id number
Draw on the specified window.

--install
Install a private colormap for the window.

--visual visual
Specify which visual to use. Legal values are the name of a
visual class, or the id number (decimal or hex) of a specific
visual.

--font font-name
The X font to use. Phosphor can take any font and scale it
up to pixelate it. The default is fixed.

--scale int
How much to scale the font up: in other words, the size in
real pixels of the simulated pixels. Default 6.

--ticks int
The number of colors to use when fading to black. Default
20.

--delay usecs
The speed of the terminal: how long to wait between drawing
each character. Default 50000, or about 1/20th second.

--pty Launch the sub-program under a PTY, so that it can address
the screen directly. This is the default.

--pipe Launch the sub-program at the end of a pipe: do not let it
address the screen directly.

--program sh-command
The command to run to generate the text to display. This
option may be any string acceptable to /bin/sh. The program
will be run at the end of a pty or pipe, and any characters
that it prints to stdout will be printed on phosphor's
window. The characters will be printed artificially slowly,
as per the --delay option above. If the program exits, it
will be launched again after 5 seconds.

For example:

phosphor --program 'ping 8.8.8.8'
phosphor --program 'ps -e'
phosphor --program 'od -txC -w6 /dev/random'
phosphor --program 'cat /dev/random'
phosphor --scale 2 --program 'top'
phosphor --scale 4 --program 'mtr www.kernel.org'
phosphor --scale 4 --program 'emacs -nw -q -f life'
phosphor --scale 4 --program 'emacs -nw -q --eval "(hanoi 5)"'

If you have the festival(1) text-to-speech system installed,
you can have it read the screen as phosphor prints it:

phosphor --program \
'xscreensaver-text | tee /dev/stderr | festival --tts'

You can also use phosphor as a lo-fi replacement for the
xterm(1) and gnome-terminal(1) terminal emulators:

phosphor -delay 0 -program $SHELL


--esc When the user types a key with the Alt or Meta keys held
down, send an ESC character first. This is the default.

--meta When Meta or Alt are held down, set the high bit on the
character instead.

--del Swap Backspace and Delete. This is the default.

--bs Do not swap Backspace and Delete.

--fps Display the current frame rate and CPU load.

TERMINAL EMULATION


By default, phosphor allocates a pseudo-tty for the sub-process to
run under. This has the desirable side effect that the program will
be able to use ioctl(2) to fetch information about terminal
parameters and window size, which many programs (such as top(1)) need
to run properly. phosphor will also set the environment variable TERM
to vt100 in the child process.

Any characters typed on the phosphor window will be passed along to
the sub-process. (Note that this only works when running in "window"
mode, not when running in --root mode under xscreensaver.)

ENVIRONMENT


DISPLAY to get the default host and display number.

XENVIRONMENT
to get the name of a resource file that overrides the global
resources stored in the RESOURCE_MANAGER property.

XSCREENSAVER_WINDOW
The window ID to use with --root.

TERM to inform the sub-process of the type of terminal emulation.

SEE ALSO


xscreensaver(1), xscreensaver-text(6), fortune(1), apple2(6),
starwars(6), fontglide(6), ljlatest(6), dadadodo(1), webcollage(6),
driftnet(1) EtherPEG, EtherPeek, console_codes(4).

COPYRIGHT


Copyright (C) 1999 by Jamie Zawinski. Permission to use, copy,
modify, distribute, and sell this software and its documentation for
any purpose is hereby granted without fee, provided that the above
copyright notice appear in all copies and that both that copyright
notice and this permission notice appear in supporting documentation.
No representations are made about the suitability of this software
for any purpose. It is provided "as is" without express or implied
warranty.

AUTHOR


Jamie Zawinski <jwz@jwz.org>, 27-Apr-99. Pty and vt100 emulation by
Fredrik Tolf <fredrik@dolda2000.com>.

X Version 11 6.09 (07-Jun-2024) phosphor(6)

tribblix@gmail.com :: GitHub :: Privacy