home *** CD-ROM | disk | FTP | other *** search
-
-
- OpenScreen Version 1
-
- Created by Ray Lambert in 1990
-
-
- Overview.
-
- OpenScreen is a utility program which allows you to create additional
- Workbench-compatible screens. You may use OpenScreen to create nearly any
- type of screen possible using combinations of command line options, and then
- (using the accompanying program CLIanywhere) open CLIs on it, load an extra
- copy of Workbench, etc. You may create as many screens as you like,
- providing that your system has the memory to accomodate them. Combinations
- of OpenScreen and CLIanywhere can even be utilized from your
- Startup-Sequence to produce the same set of extra screens every time you
- boot.
-
-
-
- Usage.
-
- OpenScreen does not run from Workbench (with an icon) however it can be
- run in just about any other way (directly from the CLI, in scripts, etc.).
- OpenScreen defaults to creating an exact duplicate of your Workbench screen,
- however you can change almost all attributes of the screen it creates by
- using the correct command line options. Below is a list of the command line
- options (switches) that OpenScreen understands. (Remember, OpenScreen
- starts with the definition of your Workbench screen, and the following
- switches _modify_ that definition).
-
- All switches are introduced with the dash ('-') character, which is
- followed by a single, _case_sensitive_ letter which identifies the option.
- In many cases the option letter must then be directly followed by a
- parameter with no intervening spaces. The parameter is either numeric or
- string data. In the following list, a dollar sign ('$') denotes string data
- (a name for example) and a hash sign ('#') denotes numeric data. If neither
- of these characters are present no parameter is required for the option (any
- extra text will be ignored). If a parameter must contain space characters
- (for example, your screen title), the whole switch must be enclosed in
- double quotes. For example, if you wanted to name your screen, "My Screen",
- you would use the following switch on the command line (WITH the quotes):
-
- "-tMy Screen"
-
- List of switches:
-
- -t$ define screen Title text
- -w# define screen Width
- -h# define screen Height
- -d# define screen Depth
- -c#,#,... set screen Colors (see below for detailed description)
- -e# set screen initial top Edge
- -1# set screen pen 1 (DetailPen)
- -2# set screen pen 2 (BlockPen)
- -H turn HIRES on
- -L turn HIRES off (Lowres)
- -I turn Interlace on
- -N turn interlace off (No interlace)
- -B open this screen Behind all others
-
- All numeric data is in decimal EXCEPT the "-c" (set screen Colors)
- option, which requires numeric data in HEXADECIMAL format. A 'hex' screen
- color value consists of three characters as such: "RGB", where "R" is the
- color's RED component, "G" is GREEN and "B" is BLUE. Each color component
- can have a value of 0 through 15. In hexadecimal notation, the numerals 0
- through 9 are equal to 0 through 9, and the letters A through F are equal to
- 10 through 15. (Leading zeros may be left off). To define a color whose
- components are: RED=5, GREEN=14, and BULE=9, you would use the value: 5E9.
- The "-c" option takes a list of color values, each seperated by a comma.
- The first value in the list is for color 0, the second for color 1, etc.
- Any value may be omitted and the cooresponding Workbench default will be
- substituted. For example, if you wanted to duplicate your Workbench screen,
- and only change color 2 (so you can easily distinguish the two screens at a
- glance) you could use the following switch:
-
- -c,,5E9,
-
- This would cause your default Workbench color values for colors 0, 1 and 3
- to be used, and color 2 would become 5E9.
-
- Some people may be able to create colors directly using this method,
- however some will not. To help you in determining the proper values for
- your desired colors, you may use the program called "palette" which is found
- on your Workbench distribution diskette in the "Tools" directory. This
- program is a standard palette editor that allows you to change the palette
- on your Workbench screen and others. This program has two special features
- which make it particularily useful. The first is that it displays the
- hexadecimal value of the color it is currently editing in its window,
- allowing you to experiment with colors and then get their values to feed to
- OpenScreen. The second helpful feature is that "palette" always opens
- itself on the topmost screen in the system, allowing you to edit that
- screens colors. Thus, you can easily edit your new screen's colors using
- "palette" even _after_ you've created the screen. The only drawback to
- editing your colors in this manner is that you would have to edit those
- colors _everytime_ you create the screen with OpenScreen. This makes the
- color option in OpenScreen quite useful.
-
- If you forget these switches you can get help by typing:
-
- SetScreen ?
-
-
-
- Warnings.
-
- OpenScreen actually does something that, under normal circumstances, is
- considered quite nasty. It opens a new custom screen, sets its screen type
- to WBENCHSCREEN, and the EXITS, leaving the new screen stranded! Normally
- if a program did this it would be grounds to have the programmer lynched!
- However, in this case, the whole purpose is to provide a new screen which
- acts as an extra Workbench screen -- this makes it okay. There is no need
- for a program to sit around in memory to manage the screen, because
- Intuition does that for us! So rather than use unneccessary resources,
- OpenScreen terminates itself after creation of the new screen is complete.
- The only drawback to this approach is that the screen CANNOT be closed by
- normal means. I'm not sure how neccessary this would be anyway because
- Workbench screens are usually meant to be permanent. Those of you who use
- utilities such as "GOMF" or "Xoper" can remove the screens that OpenScreen
- creates using those utilities -- otherwise, there is no way to remove them.
- Also, if you specify a title for your new screen, OpenScreen allocates
- memory for that title which never gets free'd. Although this is only a
- small amount of memory, the practice is not normally considered to be
- 'okay'. (BTW, please note that under normal circumstances I NEVER do nasty
- things like this! _Really_, I don't!)
-
-
-
- Legal stuff.
-
- OpenScreen is public domain and is part of the CLIanywhere package and I
- would very much like the whole package to be kept together as one if it is
- distributed anywhere.
-
-
-
- Get to know me!
-
- If you have any questions, suggestions, flames, propositions, etc., I
- can be reached at the following places:
-
- People/Link: Analog*Kid (log on often)
-
- BIX: AnalogKid (log on sparsely)
-
- U.S. Snail: Ray Lambert
- PO Box 1253
- Westport, Massachusetts 02790
-
- Phone: (508) 677-9217
-