apple2 — Apple ][ display emulator
Synopsis
apple2 [-display host:display.screen] [-foreground color] [-background color] [-window] [-root] [-mono] [-install] [-visual visual] [-program command to run] [-basic] [-slideshow] [-text] [-meta] [-esc] [-bs] [-del] [-fast] [-fps]Description
The apple2 program simulates an original Apple ][ Plus computer in all its 1979 glory. It also reproduces the appearance of display on a color television set of the period.There are 3 modes: basic, slideshow, and text. Normally it chooses a mode randomly, but you can override with the -basic, -slideshow, or -text options.
In basic mode a simulated user types in a Basic program and runs it.
In slideshow mode it chooses a number of images from the image source you configured into XScreenSaver and displays them within the limitations of the Apple ][ display hardware. With only 6 available colors, you can only make out the general shape of the pictures.
In text mode it displays the output of a command or the contents of a file or URL (via the default xscreensaver-text(1) program, which can be overridden with -program).
In text mode, it is also a fully functional (if anachronistic) vt100 terminal emulator.
Options
apple2 accepts the following options:- -window
- Draw on a newly-created window. This is the default.
- -root
- Draw on the root window.
- -mono
- If on a color display, pretend we're on a monochrome display.
- -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.
- -basic
- Choose basic mode
- -slideshow
- Choose slideshow mode
- -text
- Choose text mode
- -program sh-command
-
In text mode, 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 pipe, and any characters that it prints to
stdout will be printed on the Apple ][ display. If the program
exits, it will be launched again after 3 seconds. Default:
xscreensaver-text(1).
In text mode, apple2 emulates a vt100 terminal running on a 40x24 uppercase-only screen.
For example:
apple2 -text \ -program 'cat /usr/src/linux*/README | fold -sw40' apple2 -text -program 'ping apple.com' apple2 -text -program 'ps -e' apple2 -text -program 'od -txCz -w7 /dev/urandom' apple2 -text -program 'cat /dev/random' apple2 -text -fast -program 'xemacs -nw -q -f life' apple2 -text -fast \ -program 'xemacs -nw -q --eval "(hanoi 5)"'
You can also use apple2 as an extremely lo-fi replacement for the xterm(1) and gnome-terminal(1) terminal emulators:
apple2 -text -fast -program tcsh
- -pty
- In -text mode, launch the sub-program under a pty so that it can address the screen directly. This is the default.
- -pipe
- In -text mode, launch the sub-program at the end of a pipe: do not let it address the screen directly.
- -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.
- -fast
- Normally, characters are printed at the speed of an original Apple][ computer; however, when using this program as a terminal emulator, the novelty of those 300 baud characters might wear off. You can use the -fast option to speed things up a bit.
- -fps
- Display the current frame rate and CPU load.
Terminal emulation
By default, apple2 allocates a pseudo-tty for the -text-mode 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. apple2 will also set the environment variable TERM to vt100 in the child process.Any characters typed on the apple2 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.
- TERM
- to inform the sub-process of the type of terminal emulation.
X resources
Notable X resources supported include the following which correspond to standard TV controls: analogTVTint, analogTVColor, analogTVBrightness, and analogTVContrast which correspond to standard TV controls. They range from 0 to 100,except for tint which is an angle between -180 and +180.Trademarks
Apple ][ and Applesoft are trademarks of Apple Computer.