LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!) Power Keys DM+ - User Manual SUMMARY OF FEATURES The Power Key : Since normally when you press the "A" key you simply wish to type the letter "A", it is necessary to signal Power Keys that "this time I want the macro expansion associated with III.DAD.091734Bu' +MAIN.MANUAL>=yH 7*HELLO.TEXT)P%/ADVANCED.MANUAL`7H ;-LIMITS.MANUAL +H sOTHER.MANUALSH H  >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@Lthe a-key". This is accomplished by pressing the key in conjunction with a previously defined "Power Key" which the program can identify as having been pressed. In Power Keys DM+ you can select either the OPEN-APPLE (OA) or CLOSED-APPLE (CA) k  !"#$%&'()*+,-./0123456789:;<=>?@ABCDwer Key needed !! Thus, if you typically use the AK numbers for your numeric entries you might define a macro for the NK-1 key to include your full name and address, including carriage returns, and every time you wish to type your address yof these for the supermacros. Normally you would only use one of these for entering numbers so Power Keys DM+ allows you to define the 1,2,3 keys on either the NK or AK as macros of up to 64 characters which are executed by a single keypress - no Poup to 64 characters which are executed by a SINGLE KEYSTROKE. Since the Apple /// keyboard offers you two sets of numeric (0-9) keys, the 'Numeric Keypad (NK) set and the 'Alpha Keyboard' (AK) set, Power Keys allows you to use one or the other you might sometimes wish to generate a longer macro expansion and perhaps even avoid the 'double-keying' associated with the Power Key. We have included in Power Keys DM+ a "SUPERMACRO" facility which allows you to define up to 3 macros of another causing up to 8 macros to be executed with a single keystroke. See the section on ADVANCED FEATURES for details of this. The 1-2-3 Keys : Although 16 characters is usually more than enough for word or short phrase macro expansions, r closed-apple type codes within a macro which may be functionally important in the program that you are running. Since the open-apple and closed-apple attributes are, in fact, what identify a macro itself, you can also cause one macro to "CHAIN" tond lowercase letters (e.g. A-Z and a-z) the macro expander does not check for case so the macro for [A] is the same as that for [a]. Macro expansions can also include so-called 'character attributes' allowing you to imbed specialized open-apple o might be required to type by your application. Most common of these is the 'carriage return' but all codes from cntl-@ to cntl-z (ascii 00 to 26) can be imbedded in a macro expansion. Rather than worry about different macro expansions for uppercase ao generate longer macros (e.g. set up [A],[B],[C] to expand to your three line address) or you may employ the advanced feature allowing 'chaining' toether of macros. Macro expansions can include specialized so-called "control characters" which younsions for these 64 characters are limited to 16 characters. This does not really limit your possible macro expansions (any more than the 26 letters of the alphabet limit the English language), since you can simply use two, three or more keys tkeys as well as many others typable from the keyboard. Specifically keys sending the ASCII codes 32 to 96 can have macro expansions. In some of these cases (e.g. '!,@,#,$,etc) you may need to press [shift-n] to obtain the macro expansion. Macro expaxpansion. In this manual the notation [n] means "key-n pressed together with the current Power Key". The Macros The set of characters which can be Macro Sources for Power Keys is quite extensive and includes all the alphabetic and numeric ey as the Power Key. The ability to switch between Power Keys is important since some Apple /// programs use one or the other of these keys to signal some special code to the application and would be interfered with by the substitution of the macro eou need only press that "1" key !! The Special Codes : Power Keys DM+ makes it very easy to enter a new MACRO DEFINITION at any time and to change an existing definition, but there are times when the special usage of a key like the key makes it difficult to use it in a macro definition or when certain functions such as the distinction between a definition for the [1] macro and the [1] supermacro must be made. Power Keys DM+ keeps track of two 'special codes' which faracter specifying which change to execute (CA,CC,CN,CO,CP). Pressing the Goto Module Key "G" will await a second character specifying which MODULE is to be activated. Pressing the X key will exit command mode and restore the screen. LOAD A KEY this point pressing any of the single command keys (L,S,M,K,P or H) will either execute the command or cause display of another appropriate command prompt. No carriage return is necessary. Pressing the change key "C" will await a second chether with the TAB key will put you in Power Keys command mode and display the prompt : PKY Enter Command > Note that some applications (e.g. Basic) will require that you press the RETURN key before recognizing the [tab] entry. At nge CARRIAGE RETURN character CN Change NUMERIC 123 mode CO Change OPTION character CP Change POWER Key Gn Goto Power Keys Module "n" Command Detail ENTER POWER KEYS COMMAND MODE - the [tab] command Pressing the POWER KEY tog keymap from disk S SAVE a keymap to disk M display current key MAP K change KEY macros X eXit command mode H display Help screen listing commands and module commands available CA Change AT-CURSOR character CC Chag Power Keys Modules incorporated into the system. A simple "X" exit command places you right back in your original program where you left off. Power Keys DM+ COMMAND SUMMARY Command Summary [tab] Enters Power Keys Command Mode L LOAD a Command Level. At this level all your keystrokes are passed to the Power Keys Command Processor which interprets and executes your selection of help, define, load, save, show map and change commands. Additional commands are available for activatin.KBD. The Power Keys Command Mode : Since many of the features of Power Keys DM+ require that you temporarily stop what you're doing and start 'talking' to Power Keys, the program implements a simple double-key code which puts you in Power Keysfor your word processor. Power Keys DM+ will automatically load a keymap file named DEFAULT.KBD from the Power Keys Directory at boot time if one exists. You may substitute your own keymap for the one supplied by simply (S)aving it as DEFAULT but even if you re-boot each new application you will still find it useful to maintain multiple keymaps for your variety of uses of an application - you could have 'Business Correspondence', 'Personal Letter' and even 'Accounts Overdue' maps preadsheet, Word Processor, Accounting and Programming tasks, Power Keys DM+ allows you to SAVE a keymap in a small disk file and to LOAD a new keymap at any time. If you use an application switcher program such as Catalyst this can be very handy, pecial codes is collectively referred to as the KEYMAP. The keymap can be viewed and altered at ANY TIME while you are working with any application. The Keymap Files : Since you will probably wish to use entirely different keymaps for your SPower Keys DM+ keeps track of these special codes as well as the current Power Key (either OA or CA) and the current Numeric 1-2-3 mode (AK or NK) and displays them as part of the keymap. The Keymap : The entire set of macro expansions and sacilitate this. One is the "OPTION CHARACTER" which is used to identify special functions and the other is the "CR CHARACTER" which is a substitute, printable character which will be transformed into a Carriage Return code when the macro is expanded. MAP FROM DISK- the "L" command Summary : The LOAD command will allow you to load an entirely new KEYMAP from disk; allowing you to maintain any number of separate keymaps for your separate applications. After pressing the "L" key you will receive the prompt: PKY Enter Filename for KEYMAP LOAD > At this point you should type in the filename of the keymap file that you wish to load. This file will automatically be searched for on the Default Power Keys Boot directory that yo point will clear the Error Message and return you to Command Mode. Examples : PKY Enter Filename for KEYMAP SAVE > <.d1/write.kbd> will save the current keymap to a file named WRITE.KBD on .D1 PKY Enter Filename for KEYMAP SAVE > disk full) you will see the message PKY : File I/O ERROR Code [nn] where nn denotes the specific error number. These error numbers are described elsewhere in this manual but most typically involve typos in the filename. Pressing any key at thisinstall time (e.g. .D1/PKY/filename). If you wish to save a keymap file to other than that directory you must specify the full pathname of the file, e.g. .PROFILE/TEMP/TEST.KBD. If the save is unsuccessful for some reason (e.g. Enter Filename for KEYMAP SAVE > At this point you should type in the filename of the filename under which you wish to save the current keymap. This file will automatically be created on the Default Power Keys Boot directory that you specified at Summary : The SAVE command will allow you to save an entirely new or altered KEYMAP to disk; allowing you to maintain any number of separate keymaps for your separate applications. After pressing the "S" key you will receive the prompt: PKY File named NULL.KBD is provided on the distribution disk as an easy way of 'clearing' an entire keymap. Loading this Keymap File will set all macro definitions (except our ubiquitous " " and "!") to null. SAVE A KEYMAP TO DISK- the "S" command haracters (e.g. Option, Power Key, Numeric mode, and At-Cursor characters). Since these may well differ from one of your applications to another we recommend that you do a 'display Map' command after a load. The special Keymap directory .D1/WORK PKY Enter Filename for Keymap LOAD > will load the keymap file named LETTER.KBD from the Power Keys directory Notes : The Keymap file includes definitions of the various special codes and ccters enclosed in brackets <> must be typed by the user. The notation means press the return key. Examples : PKY Enter Filename for KEYMAP LOAD > <.d1/work/write.kbd> will load the keymap file named WRITE.KBD from the rror numbers are described elsewhere in this manual but most typically involve non-existent files and/or typos in the filename. Pressing any key at this point will clear the Error Message and return you to Command Mode. note: In all examples chara. Otherwise you may view the loaded map by entering the "M" command. If the load is unsuccessful for some reason (e.g. file does not exist) you will see the message PKY File I/O ERROR Code [nn] where nn denotes the specific error number. These eft and right arrow keys and re-typing. After you have entered the file name press the RETURN key and Power Keys will attempt to find and load the file. If the load is successful and you are in 'display keyMAP' mode the loaded keymap will be displayedBD is automatically loaded at Power Keys Boot time from the Default Power Keys Boot directory. You may cause any Keymap to become the default map loaded at next boot time by saving it as DEFAULT.KBD. You may edit typos in your entry by using the leu specified at install time (e.g. .D1/PKY/filename). If you wish to load a keymap file from other than that directory you must specify the full pathname of the file, e.g. .PROFILE/TEMP/TEST.KBD. A keymap named DEFAULT.K will save the current keymap to a file named WORK.KBD on the Power Keys Default Subdirectory. Notes : Keymap files currently require 1308 bytes on disk. This figure may change slightly in future versions. Remember, if you do not specify a full pathname including device (e.g. .D1) for the filename Power Keys will attempt to save the file to the CURRENT POWER KEYS DEFAULT-BOOT DIRECTORY THAT YOU SET UP AT INSTALL TIME. Since standards are useful when workingiate Change commands. The above line indicates that a). The current OPTION character is the "\" character b). The current carriage-return character is the "|" c). The current supermacro 1-2-3 characters are on the Numeric Keypad in the address supermacro will be replaced with actual carriage-returns when the macro is executed. 3). The last part of the display shows the current special codes. Specifics on the use of these are described in the detail for the approprhname where we are storing our Power Keys files and pressing 1 on the numeric keypad will type our full company name and address : D A DataSystems 3792 Windover Dr Hamburg NY 14075 Note that the Carriage Returns codes ("|") imbeddedded e "Apple /// ". Remember that [n] means pressing key-n together with the Power Key. 2). The current supermacros for the 1-2-3 keys are listed on three rows. Thus, under this keymap, pressing 2 on the numeric keypad will type the long disk pat of this display will be described later but lets summarize. 1). The current macros for each character are displayed in 16 rows of 4 columns each. Thus, under this keymap, pressing [M] will type the word "macro " and pressing [A] will typY 14075| 2 .profile/pky/work/docs/ 3 Sample Keymap for Power Keys Documentation Option [\] CR char [|] 123 Mode [NK] Power Key [CA] At-Cursor [@] ---------------------------------------------------------------------------- Some of the details upermacro T the U V W widgets X Y you Z [ \ ] ^ _ 1 D A DataSystems|3792 Windover Drive|Hamburg N E endline F for G H I J July 4, 1985 K keymap L #!xx!yy! M macro N O optional P Q R return S s 6 Source Window 7 Basic GTO 8 Data Window 9 Disk Window : ; < less than = > greater than ? @ A Apple /// B C Cut & Paste D delimiter ' ( .LM ) .RM * CJ||.FJ| + in addition , - . / 0 The Retriever 1 Power Cat 2 Power Print 3 Basic XT 4 Basic Utils 5 Basic XRF keymap the following (except the ---- bars) is displayed : --------------------------------------------------------------------------- Power Keys ! SAMPLE.KBD " # $ % & M" command will save the current console display and replace it with a display of the current keymap. After displaying the keymap the command level prompt will re-appear. Example: If we enter the "M" command while working with our SAMPLE.KBDp name c. use the "3" supermacro to save notes about the keyboard DISPLAY CURRENT KEY MAP - the "M" command Summary: The Display MAP command provides you with a means of viewing the current macro assignments and special codes. Entering the " with such inflexible beasts as computers we recommend the following for your keymap files : a. add the suffix .KBD to meaningfully named keymap files e.g. BASIC.KBD VISICALC.KBD LETTERS.KBD ACCTG.KBD b. use the "!" macro to save the keyma d). The current Power Key is the Closed-Apple key e). The current at-cursor character is the "@" Notes: Any change to the keymap (e.g. Load, change macro, change special code) while you are in Map Display mode will cause a re-display of the altered map. Although we will describe specific suggestions for use of macros in a later section, lets take a minute to note some of the specifics that we are using with this map. Keep in mind that your own keymaps will certainly differ an [B] = 'course of human' [C] = ' events' Entering PKY Redef > \1,[A][B][C] will load the [1] supermacro with the phrase 'When in the course of human events' This can be especially handy if you wish to slightly alter a mac and left-arrow CODES may be imbedded in a macro by keying open-apple-right/left-arrow. Key macros themselves will be executed when typing in a redefinition. Thus is you have the following settings : [A] = 'When in the ' tually be any character that you will use to separate the macro definition from the macro character, you may prefer to use a space or a dash. This definition may be edited using the right and left-arrow keys and overtyping to correct. Right k,mmmm Where k is the key for which the macro is to be defined followed by a comma and then mmmm, the character sequence which is to comprise the macro followed by pressing . Note that the delimiting comma may acill receive a prompt to enter your redefinition : PKY Redef > After entering your macro definition you will be re-prompted for another. THIS PROCESS IS EXITED BY SIMPLY PRESSING RETURN. The format of a macro redefinition entry is as follows : The ability to define and change keyboard macros is the heart of the Power Keys program. Using this function you can create unique keymaps to be saved for later use and alter keymaps in use 'on the fly'. After entering the "K" command you w, "the" and "for" here). Frankly most of us have developed the 'muscle memory' to key these words very quickly and it requires equally lengthy use of the macros for them to become second nature. CHANGE KEY MACROS - the "K" command Summary: never remember it (and have not purchased SHowTime !!). Also a handy way to keep track of the last time you used or changed a keymap. g). Notice that we don't really use too many macro definitions for commonly used words (but we did select "you"' and 'yy' block markers; but all the imbedded control character would drive your printer crazy as you printed this manual !) f). Storing the date mnemonically is handy even if you do not actually need to type it frequently if you are like me and canific AppleWriter Load sequence that is used to copy text from one place to another in a document which we always forget ! (Actually we usually use a longer version of this one in the numeric-3 macro which additionally continues on to erase the 'xxhed to. e). The ")", "(", "*", and "L" keys are defined with macros containing commands that we frequently use in our word processor (AppleWriter) defining Left Margin, Right Margin, and 'bracket' Center Line commands. The "L" key is a specis set to "Notice that". c). We have defined the numeric keys 0-9 with macros containing the names of the ten Tools Times Three programs. d). Notice also that the ">", "<", "+" macros are somewhat meaningfully related to the keys they are matct we load the most frequently used macro "Power Keys " into the space-bar since thats a very easy double stroke on the keyboard. In addition we tend to redefine the "." macro 'on the fly' since that also is an easy reach. (Right at this minute it d that keymaps may be changed at any time within any application !! a). Notice that we make an effort to use mnemonic key-macro pairs, that is we tend to match the first letter of the macro to the key employed wherever possible. b). Notice tharo definition since you need only key it in for its own definition then edit with the arrow keys (imbedded carriage-returns will interfere with this though). If you wish to include a carriage return in a macro simply key in the current 'CR' code (e.g. "|"). If you wish to imbed a 'control-character' simply type the code (e.g. control-Z, see also the section on "attributes" in the ADVANCED FEATURES part of this manual). Standard macros are limited to 16 and the 1-2-3 supermacros to 64 characters current setting. If you are currently showing the Keymap on the screen entering this command will automatically cause a re-show including the modified code. CHANGE NUMERIC 123 MODE - the "CN" command Summary: The default source of the SINGLg another "CP" command will 'toggle' back to the CA. Example: PKY Enter Command > will change the Power Key from OA to CA or CA to OA depending upon which is in use at the time of the command. Use the "M" 'display keyMAP' command to view thethe "CP" command to 'toggle' the Power Key to the Open-Apple key instead. This command does not require that you enter some value for the new Power Key. If the current Power Key is CA then the "CP" command will immediately change it to the OA. EnterinHANGE POWER KEY -the "CP" command Summary: Although the default Power Key is the Closed-Apple (CA) key, you may find that your application defines special keyboard combinations using that key for its own special purposes, in that case you can use > to appear. Simply type the character you wish to use as the option character. The default value is the backslash "\" character. Example: PKY Enter new Option Char > <|> will cause the vertical bar "|" character to function as the OPTION CHAR. Crn you to your original application screen exactly as it appeared before entering command level with the [tab]. CHANGE OPTION CHARACTER - the "CO" command Summary: This command will cause the prompt : PKY Enter new Option Char ED FEATURES part of this manual. Entering simply a character then a comma will set the macro for the key to NULL - e.g. no macro generated. EXIT COMMAND MODE - the "X" command This command will erase the command line, restore the screen and retud will be echoed to the display and in the keymap using the special Apple /// control character set. Thus you may imbed special codes for printer control, tabs, or whatever you need in the definition. See the section on 'attributes' in the ADVANCilarly they are not checked when you 'execute' the macro so [a] and [A] will both execute the "A" key macro, if any. Upper and Lower case ARE SIGNIFICANT in the macro definition. Control characters can be directly entered in the macro definition an you may use either the numeric keypad or alpha keypad 1-2-3 keys for your supermacros. Altering this selection is accomplished with the Change Numeric "CN" command. Upper and Lower case ARE NOT checked for the character to be redefined. Simg 1 on the numeric keypad will type the phrase "supermacro more than 16 chars " Notes: Note that the supermacro does NOT require pressing the 1-2-3 key in conjunction with the Power Key. These are singe stroke macros. Note also that After entering this definition pressing [1] will type "CAT .D1" followed by a return. PKY : Enter Redef > <\1,supermacro more than 16 chars > will cause the "1" key supermacro to be set. After entering this definition pressinple /// > will cause the "A" key macro to be set to "Apple /// ". After entering this definition pressing [A] or [a] will type "Apple /// ". PKY Redef > <1,CAT .D1|> will cause the "1" key macro to be set to "CAT .D1 ".. If you type in a macro longer than these limits it will be truncated. The three supermacros for the 1-2-3 keys must be defined with a PRECEDING OPTION CHARACTER as : \k,rrrrrrrrrrrrrrrrrrr Examples: PKY Redef > will alter the source of 1-2-3 supermacros. If the default (NK) was in effect this command will change to the Alpha Keyboard (AK) 1-2-3 keys located above the "Q,W,Eed via an additional option which you may enter in the "K" command line. After entering "K" as you normally would you will receive the prompt PKY Redef > In order to define the macro from the current contents of your application screen, frin a keymap and use of the keymap Save function allows effectively infinite, if a bit unwieldy, capacity. Now you can move data between ANY /// applications. DEFINE MACRO FROM SCREEN - option to the "K" command Summary: This facility is providing/loading the keymap will retain all the "cut" data. Although the 16 character macro limit (facilitated by the 1-2-3 supermacros) is a bit constraining (this is not a MacIntosh...yet) the overall data saving capability is over 1200 characters simply executing the macro !!! For Catalyst owners this is a snap since moving from one application to another does not require a reboot. For non-catalyst users who must re-boot the new application the simple additional step of saving/rebooters the ability to define a macro directly from screen data. This means you can use this enhanced macro definition facility to "CUT" ANY screen data, from ANY application, save it in the keymap, then "PASTE" it into an entirely new application by to move data to any application via a previously defined keyboard macro, we felt that the logical extension of this facility would be to allow that macro definition to be taken directly from the screen. Thus Cut & Paste /// additionally off now 'type' with the "|" character showing. CUT & PASTE /// - Summary Cut & Paste /// adds a number of features to Power Keys which offer some dramatically powerful and different capabilities to the main module. Given Power Keys abilityedef ><| | | | |> which might be handy for typing a table or somesuch. Notes: Do note that if you construct a keymap using one CR-CHAR such as the "|" in many macros, then change to another CR-CHAR such as "^", all the earlier macros willcter in a macro in which case you will have to change the CR-CHAR for that keymap. Example: PKY Enter new CR CHAR code > <}> will reset the endline character to the right brace "}"; allowing a macro definition such as the following : PKY R(CR-CHAR) which will not itself be actually 'typed' when the macro is executed, instead the macro expander will 'type' a code. This CR-CHAR is normally the "|" vertical bar. Naturally you might possibly wish to imbed the vertical bar charatry of a new macro definition must be ended by pressing the key we must employ some alternative method of entering a into a macro definition. Power Keys DM+ employs a Special Code called the "Carriage-Return" character the 64 character supermacro associated with that key. If you are currently showing the Keymap on the screen entering this command will automatically cause a re-show including the modified code. CHANGE CR CHARACTER - "CC" Summary: Since the enstroke power-key macros as well as single-stroke supermacros. Thus, pressing [1] (from either NK or AK) will execute the 16 character macro, if any, associated with the 1-key while pressing "1" on the current supermacro keypad will execute " on the keyboard. Supermacros currently in effect will remain un-altered. ALL that is changed is the specific key which executes them. Notes: Keep in mind that the 1,2,3 keys are serving "double duty" since they can also be defined as double-om the location of the cursor, you must enter a sequence as follows : \k,@nn where \ is an optional preceding OPTION CHARacter identifying a supermacro to be loaded, k is the key to hold the macro (the macro source), @ is the current At-Cursor character and nn is an optional character count from 1-16 or 1-64. This sequence will cause the k-key to be loaded with a macro containing the nn characters located at the current position of the cursor in your application. Example: If you moveFHIJKLct' your Apple /// keyboard to your printer. This can be useful, for instance, for dashing off an envelope right in the middle of your spreadsheeting. Main Prompt : PKY TYPE> Enter PRINTER device name : .PRINTER Pressing < Module Name : TypeRite Name Code : TYPE Memory Usage: 03 Command to Enter Module : GW mnemonic : type(W)riter Module Description : TypeRite is a Power Keys module which allows you to temporarily 'connet' time this could get unwieldy for the large and growing (17+) number of modules available and, additionally, many of the modules are not really required to be in memory at all times. ModuLoad allows you to maintain a separate list of 'dynamicallModule Name : ModuLoad Name Code : LOAD Memory Usage: 04 (plus bucket) Command to Enter Module : GM mnemonic : (M)odule load Module Description : Although Power Keys typically loads additional modules into memory at 'boo simply load the [A] macro with the value "@15.95 per box" in response to this prompt will become the new code used to signal the "Redefine from cursor" option of Cut & Paste /// . Example: PKY Enter new At-Cursor Code > <#> will -Cursor Code > <#> will set the "#" character as the At-Cursor code. Given this change the sequence to define the x-macro from the cursor will be... PKY Redef > x,# and the definition PKY Redef > A,@15.95 per box willllowing prompt to appear PKY Enter new At-Cursor Code > Whatever character you type in response to this prompt will become the new code used to signal the "Redefine from cursor" option of Cut & Paste /// . Example: PKY Enter new At the a-macro with the next 15 characters from the current cursor location. By changing the At-Cursor code you may include the "@" character, or any character, as the first character of a normal macro. Typing "CA" at the command level will cause the fommary: A problem arises if you wish to define a simple keyboard macro which begins with the "@" character, e.g. [a] - "@15.95 per box" using the sequence PKY Redef > A,@15.95 per box Power Keys would interpret this as a command to loadthe appropriate shreadsheet locations with simple macro keystrokes !! Notes : Simply entering K,@ will cause the macro to be loaded with the maximum allowable number of characters (16 or 64). CHANGE AT-CURSOR CHARACTER - the "CA" command Suicular part number. This is the "PASTE". If you have moved to your spreadsheet program (if you're not running Catalyst, save the keymap now loaded with part numbers, then re-load in the new program), you can now transfer the saved part numbers to ata located at the cursor in that 'part number' field. This is the "CUT". Repeating for a variety of records, or a variety of data for that particular record, you can load up to the 67 macros available. Subsequently keying the [1] will type that part to your 'part number' field in your DataBase program, enter Power Keys command mode with the [tab] command and enter the "K" Key macro change command the following : PKY Redef > <1,@10> will load the 1 macro with the 10 characters of dreturn> will send output to the device named .Printer in your system. Type any other device name (e.g. .SERIAL) to send the TypeRite output there. If you change this device name you will find it presents as the default the nexmpt : PKY CALC >> Function : Once you have entered QuikCalc you may exit at any time by pressing control-X or control-Q. The former will 'load' the current number displayed into the = (equal) key macro of Power Keys. Thus when you return to yourMOPQRSTUVWXYZ[\]^}~f manipulating very large numeric quantities. Special functions include memory store and recall, fastadd and backup/undo keys, trigonometric and logarithmic functions and automatic loading of final result into a power key 'Macro' key. Main ProModule Name : QUIKCALC Name Code : CALC Memory Usage: 21 Command to Enter Module : GK mnemonic : (K)alc Module Description : Quikcalc is a full function calculator with 19 digit precision and the capability oplacing your printer into boldface-italic mode at the front of a set of lines to be typed. ter though and may be expanded if your printer is set up appropriately. CONTROL CHARACTERS - You may enter control characters in the type line and they will be sent to your printer. Thus you might imbed the special setup codes for tandard Power Keys I/O ERROR reports for device specification in error or not found. Notes : TABS - TypeRite will not expand key pressed into some fixed number of spaces. The code (ascii 9) will be sent to your prinoning text. This guide looks like the following : vvvvvvvvv+vvvvvvvvv+vvvvvvvvv+vvvvvvvvv+vvvvvvvvv+vvvvvvvvv+vvvvv This guide will reappear every 18 lines typed. Error Reports : Se printed on the printer until you press . You may QUIT typewriter mode and return to Power Keys by typing Q at the beginning of a line. The spacing guide-line is 'notched' every 10 spaces to assist you in positiust instruct TypeRite to add it at the end of each line by answering "Y"es to this prompt. At this point you are put into 'typewriter' mode. You may enter a line at a time pressing at the end of each line. The line will NOT b TypeRite will transmit your typed line to the printer followed by a carriage-return . Some printers will automatically do a linefeed when the is received. If your printed will NOT add the you mt time you enter TypeRite or any other Power Keys module requesting an output device name. Thus you can accept .SERIAL or .EPSON then by simply pressing . Next Prompt : PKY TYPE> Add Linefeeds (Y/N) ? application from Power Keys you can type the result number into your program, if you wish, by simply pressing the powerkey-= combination. You may use QuikCalc pretty much like a standard calculator... keying in numbers and operations such as +-/*. To calculate 37 times 19 you would key 37*19= At this point the result 703 would be displayed, if you now exit QuikCalc by pressing Control-X then exit Power Keys by pressing X you will be back where you left off in 3EZ Pieces or Wordmantissa times ten raised to the exponent power... thus : 1.234 E17 represents 123,400,000,000,000,000. You may type in numbers in scientific notation as well. Just remember to use capital 'E' (shift-E) in entering the number since of 10^15 and 10^-15 will be displayed in so-called scientific notation or "E-format" with the full 19 digits of accuracy. In this notation a number is displayed as two parts, an exponent and a mantissa which together represent a value of on format which is accurate to 19 digits. Numbers between plus or minus .000000000000001 (10^-15) and 1,000,000,000,000,000 (10^15) will be displayed to 15 digits of accuracy. (without the commas). Very large and very small numbers outside the rangverflow or dividing by zero, is detected. Errors in entering numbers (such as typing a letter accidentally) will usually simply beep and ignore the character typed. Notes : NUMBERS Numbers are displayed and maintained internally in a triple precisi may be preceded by a minus '-' sign may include 'E' for scientific notation format Error Reports : The result display will show an asterisk '*' and a beep will sound when an error condition, such as numeric o value cntl-s store result in memory cntl-x exit to Power Keys & store result in = macro cntl-z zero/clear result when entering numbers they : ians % percent of cntl-b backup to previous result cntl-c clear entry cntl-q exit without macro update cntl-r recall memory e e^x s sin(x) c cos(x) t tan(x) " enters the constant PI d convert degrees to rad ^ raise to power add (Fastadd) = display result l lnx natural log of x L log10(x) base 10 log d immediately above the QuikCalc result display for ease of reference. Other Commands : Functions + add - subtract / divide * multiply DS are typed by pressing certain letter keys alone. These are usually mnemonics of the first letter of the function name and are always lowercase excepting the two different logarithm functions available. A summary of these commands will be displayessing a letter key together with the Control key on the keyboard. This is indicated in this manual by cntl-n or ^n for the Control-N combination. Note that upper/lower case is not important in the control commands. The EXTRA FUNCTION COMMANZ command. Aside from entering numbers and standard operations QuikCalc will understand a set of additional commands for controlling the calculator and for additional operations on numbers. The CALCULATOR CONTROL COMMANDS are all typed by pre Juggler or whatever main program you are running. If you now press 'open-apple-=' the number 703. will be typed by Power Keys. QuikCalc will always display the currently accumulated result on the screen unless you explicitly clear it with the ^e lowercase 'e' will calculate the exponentiation function e^x. Exponent values can range from -9625 to +9625. When entering positive exponents do not enter the '+' sign. MACRO QuikCalc will store the most recently displayed value in the = key macro of Power Keys if you exit with a ^X control command. Use ^Quit if you wish to preserve some value loaded into the = macro already. This number will be truncated, if necessary, to 16 characters length maximum of standard Power Keys Power Keys DM+ Advanced Features & Various Technical Notes I. Imbedding Character Attributes in a Macro II. 'Chaining' macros together III. Memory Management and Fragmentation I. Im LOGARITHMIC FUNCTIONS watch out for CASE... L gets base-10 log 100L ===> 2 l gets natural (base-e) log 100l ===> 4.60517018598809 e gets exponentiation (e^x) 3e ===> 20.0855369231 the desired sum of 123 and 456 calculated and displayed. TRIG FUNCTIONS s sine lower case only for these three command c cosine functions of angles expressed as radians t tangent AR ENTRY If you miskey a number use the ^Clear Entry command to allow re-entry of the number. This will also preserve any pending function you may have typed. So if you type 123+459^c456= the mis-typed 459 will be cleared and calculated prior to the ^B command. To calculate 37 times a series of numbers you could type 37*100= ==>> 3700. ^b*110= ==>> 4070. (37 times 110) ^b^123= ==>> 4551. (37 times 123) CLEsales tax here in tax-happy NY). BACKUP The ^Backup command will allow you to recover from the occasional mistyped function command or simply to ease calculations such as repetitive constants. It will return the subtotal to the last value. You need not press the '=' key to get a running result total. Thus long strings of numbers may be summed easily. Typing 10.9519.9599.9599.95%8= will sum the four numbers then calculate 8% of the total (e.g. rs in these could cause all sorts of ruckus. When you leave QuikCalc the old values of the 1-2-3 supermacros will be restored. FASTADD Pressing the or keys at the end of a number will act just like pressing the plus '+' keye as in 5+7=^s111+222*^r NUMERIC KEYPAD Either numeric or alpha keypad numbers may be entered. QuikCalc also turns off the Power Keys 'supermacros' associated with the 1-2-3 keys while you are calculating since long strings of charactekey after typing that recalled number. Thus, to multiply the sum of two numbers (lets say 5 and 7) times the sum of two others (say 111 and 222), expressed by the equation (5+7)*(111+222) you can use the memory for temporary storage separate memory. This value may immediately be recalled and entered by simply pressing the ^Recall memory command. Note that the ^Recall command will recall the stored number and immediately do the relevant calculation as if you had pressed the '=' Z command or you may simply start typing a new number. MEMORY QuikCalc will maintain a single separate 'memory' containing a number that you specify with the ^Store memory command. This command will Save the currently displayed result number in th and re-displayed when you re-enter QuikCalc. You may accept this number for use in a continuing chain of calculations by pressing an appropriate operation key (e.g. + to add it another). You may clear it explicitly to zero with the ^Macros. The Macro will NOT be loaded if the result is an E-format number (since these can range up to 30-odd characters long). EARLIER TOTALS PRESERVED The final result of a previous QuikCalc entry will be preserved (as will memory contents)bedding CHARACTER ATTRIBUTES in a Macro: Every time you press a key on the Apple /// keyboard, the machine keeps track of one byte of information identifying the Ascii value of the character-key pressed and ANOTHER byte of information which k_abcdefghijklmnopqrstuvwxyz{om 32-63 and 96-127... all of which have printable ascii equivalents. Use the ascii table listed below or a hardcopy that you have at hand, or better yet, use the AsciTbl Power Keys Module available from us. Most likely you will typically use associated with the attributes that you wish to set for character c and then use the character whose asci value is that total for the ATTRIBUTE INDICATOR a. Since the Keyboard On value 32 is always added in the ascii values of a will range frng table : Special Key 64 Keyboard On 32 (always set) Closed Apple 16 Open Apple 8 Alpha Lock 4 Control Key 2 Shift Key 1 add up the total of the numbers value identifies attributes to be set c is the character for which the attribute specified by a is to apply Let look at some specifics then set up some examples. The values of "a", the ATTRIBUTE INDICATOR are derived as follows: Given the followi attributes but saves significantly overall on the majority of characters for which no special attribute settings are required. The format is as follows: \ac where \ is the current OPTION CHARACTER a is a character whose asciin characters only if specified. If the special form is not there the basic "keyboard on, key pressed" attributes are passed out to the console buffer. This approach requires 3 bytes overall for those characters for which we wish to define st be useless "keyboard on, any key pressed" values. In Power Keys DM+ we have implemented a SPECIAL FORMAT which may be imbedded right in the text of the macro itself which will cause special attribute values to be associated with certaitively DOUBLE the size of the space required for Power Keys DM+ macro storage. Since this space must be allocated in the .CONSOLE driver that driver would end up roughly 1500 bytes larger; and lets face it, most of the attributes would ju Pieces) it would be nice if Power Keys would allow you to imbed the extra information identifying attributes in a macro. A problem with this, however, is that storing an extra attribute byte with each character byte in the macro would effec as well as the , , , and arrow keys. Insofar as many applications programs look for character attributes for identifying special functions (such as the open-apple-A 'Arrange-Sort' function in 3EZ ffectively utilize a large number of "function keys" by employing Open/Closed-Apple or Control keys paired with regular alpha keys. The Special Key attribute also allows special recognition for certain keys comprising the entire "Numeric Keypad" set-Apple pressed d. Open-Apple pressed e. Alpha Lock status f. Control Key pressed g. Shift Key pressed h. Any Key pressed Although two of these (b and h) are usually neutral, others allow applications programs to eeeps track of a set of 8 special character "attributes" which may indicate additional information about the key pressed or about combinations of keys pressed. These attributes are : a. Special Key pressed b. Keyboard On c. Closedonly a very small subset of the possible attribute combinations available which we list in the following. (No application that we know of specifically checks the shift or alpha-lock status in establishing upper and lower case, for intance). attribute(s) desired Attribute Indicator numeric value character open-apple 40 ( closed-apple 48 0 f the power of the entire Power Keys Macro system. You may have thought of it by now... if open-apple/closed-apple n causes the execution of macro-n then what happens if a power keys macro itself contains an attributed character which would 62 3E > 078 4E N 094 5E ^ 110 6E n 126 7E ~ 047 2F / 063 3F ? 079 4F O 095 5F _ 111 6F o 127 7F II. Chaining Macros : This whole notion of imbedding attribute values in macros leads to one very significant expansion o 4A J 090 5A Z 106 6A j 122 7A z 043 2B + 059 3B ; 075 4B K 091 5B [ 107 6B k 123 7B { 044 2C , 060 3C < 076 4C L 092 5C \ 108 6C l 124 7C | 045 2D - 061 3D = 077 4D M 093 5D ] 109 6D m 125 7D } 046 2E . 06 V 102 66 f 118 76 v 039 27 ' 055 37 7 071 47 G 087 57 W 103 67 g 119 77 w 040 28 ( 056 38 8 072 48 H 088 58 X 104 68 h 120 78 x 041 29 ) 057 39 9 073 49 I 089 59 Y 105 69 i 121 79 y 042 2A * 058 3A : 074b 114 72 r 035 23 # 051 33 3 067 43 C 083 53 S 099 63 c 115 73 s 036 24 $ 052 34 4 068 44 D 084 54 T 100 64 d 116 74 t 037 25 % 053 35 5 069 45 E 085 55 U 101 65 e 117 75 u 038 26 & 054 36 6 070 46 F 086 5 ddd xx c ddd xx c ddd xx c ddd xx c ddd xx c ddd xx c 032 20 048 30 0 064 40 @ 080 50 P 096 60 ` 112 70 p 033 21 ! 049 31 1 065 41 A 081 51 Q 097 61 a 113 71 q 034 22 " 050 32 2 066 42 B 082 52 R 098 62 ntrol-A which will be displayed when entering as the single character equivalent in the current font for the correct ascii 01 value. ASCII TABLE format is ddd-xx-c (decimal value, hex value, character value) value and the correct character value in order to create an attributed macro character. Thus to completely specify the control-A code it is not sufficient to enter the control signifier (\") followed by "A", you must follow it with a cope is ascii'27, etc). Obviously this leads to simpler macro constructs. Other applications will insist on specification of attributes for these keys and others such as even (special). Remember also that you must set up the attributeMany applications will be perfectly happy without complete attribute specifications for control-characters, escape, tab, etcetera; functioning correctly off of the ascii value of the character alone (e.g. control-A is ascii 01, escad include in macros the special functions triggered by the console control-numeric keypad 5-9 keypresses. Loading all correct character and attribute values for these will still not function correctly due to some fairly technical problems. he single character typed when the key is pressed in entering the macro. Remember, has the 'special key' attribute so we add 64+32+16+8=120=ascii "x". Notes : Unfortunately we are, as yet, unable to truly mimic an A macro which is to 'type' the sequence "ABCDEF" would be defined as ABC\(XDEF. A macro to contain "" (exit to Catalyst menu) would be defined as \x where represents t special char 96 ` control-key 34 " control-open-apple 42 * open-apple,closed-apple 56 8 Examples : be expected to cause another macro's execution? Won't the expansion of the new macro continue as well. Well, it turned out to be a little more complex than that but that is effectively what we have implented in Power Keys DM+. With one limitation, noted below, you may imbed an attribute for a character which is the current Power Key in another macro and upon expanding the original macro and encountering the new one Power Keys will continue with the expansion of the new macro. Thus in or where, in fact, it resides in the machine, some will, under idiosyncratic circumstances, not 'find' that memory. Thus you will appear to give up 18K plus the 10K fragment in this example, or a total of 28K for Power Keys. (Business Basic so-called 'FRAGMENTED MEMORY'. The problem arises only with certain Programs running and only, sometimes, under certain circumstances. Although most applications will manage to take advantage of any and all free memory, regardless of fragmentatioank then Power Keys will load itself compactly into that bank. If there are, for instance, only 10K bytes free in the Drivers Bank then Power Keys will skip that space and load into the top 18K of the next lower bank - leaving that 10K as sorks out to 72 pages or 18K of memory for Power Keys. Power Keys loads itself and all modules right below the device drivers in memory, requiring that all Modules reside in the same 32K bank. If there are more than 18K bytes free in the drivers bspecifies how many PAGES of memory are needed - a page is 256 bytes or 1/4K. You selected an appropriate value for this when you installed Power Keys. We will assume, for the examples of this discussion, that you have specified "48" which w Keys DM+ pre-allocates a certain amount of memory for its own use at boot time. The amount of memory which Power Keys DM+ will set aside is specified by the value contained in the .CONSOLE Device Control Block (DCB) in byte 01. This value he following discussion is, necessarily, a bit technical and need only be reviewed if you are frankly curious or if it appears that your Power Keys installation is taking up more system memory than you can willingly or comfortably spare. Power links should thus usually be the last three characters of a macro. DO NOT bother experimenting with "snake biting tail"; e.g. macro chaining to itself. The system will hang and have to be re-booted. III. MEMORY MANAGEMENT & FRAGMENTATION ** Tink') in each macro. Power Keys' macro chaining is strictly one directional. A chain link imbedded in the middle of macro-[A] causing macro-[B] to execute will NOT return and finish the expansion of the rest of the macro-[A] after the link. Chain 28 is the effective limit of the chain. Note that the attribute prefix and actual char (e.g. "\(A" in the above) all count toward the 16 character limit on standard macros; so in chaining you can only store 13 characters (plus the 3 character chain 'lover 128 characters which is the limit of the built in 'type-ahead buffer' of the CONSOLE. When this buffer is full the CONSOLE beeps and ignores characters typed. With your super-fast Power Keys typist this easily happens with very long macros so 1eys macros. Similar chaining in a keymap using the closed-apple Power Key can be obtained using the \0 attribute identifier. Notes : As things stand right now you cannot 'chain' supermacros together. Very few applications will allow chaining up ase "These are the times that try men's souls" to be typed... neat huh ?! This occurs because the \( prefix identifies the next character (the "B" and "C") as having the open-apple attribute and both open-apple-B and open-apple-C are Power Kf the [A] macro is set to "These are the \(B" and the [B] macro is set to "times that try\(C" and the [C] macro is set to "men's souls" and if the Power Key is the open-apple key then pressing the [A] macro (open-apple-A) will cause the phreems to be an example of this where it computes 'free memory' by checking memory from the bottom up until it finds some that is allocated to something else. But if you load one of Basic's so-called "Invokable Modules" to run with a program, it will place it in the first free memory found at the TOP, in this case the 'fragment' and not appear to cost you any working memory). The exact 'occupancy map' of the top bank(s) of memory is entirely a function of the specific Program (SOS.INTERP) yo" (quote char) will key in the number pi to 19 digits maintained as a constant by QuikCalc. square-root The square root of a number is just the number raised to the one-half power. So use the ^ power function of Q more intuitive to type 180d then (s)in to get the sine of 180 degrees. % Does a 'percent of' calculation. Thus eight percent of twenty- three would be keyed as 8%23= and show the result 1.84. we have included this function to convert a number representing degrees into equivalent radians. Note that this is not entirely mnemonic since its really a (r)ad function. It just seems u 3.42122953628967. Use ^Backup to recall your previous subtotal. OTHER FUNCTIONS d Since the sin/cos/tan functions expect to operate on angles expressed in radians (where 360 degrees equals 2pi radians) 876 E precedes exponent of scientific notation number. If you want to enter the very small number 1.23 E-4567 but accidentally type 1.23e... QuikCalc will stop there and calculate e raised to the 1.23 power and show yo0 WELCOME! WAP /// SIG Public Domain Library Disk Category/Number: DA Datasystems/3DAD-09 Disk Format: Not Self-Booting This is another of Daryl Anderson /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// SIG, Washington Apple Pi 12022 Parklawn Drive Rockville, MD. 20852 (301)-984-030f a memory fragment is being skipped at load time. The ascii value of this character, less 32 (decimal) indicates the number of pages of memory being skipped over (e.g. "I" indicates 73-32 = 41 pages or 10.25K skipped. d over (e.g. "I" indicates ight also consider re-ordering the drivers; keeping mind that the .CONSOLE must remain first on the list. We have added some code to the Power Keys startup program which will display a character next to the "P O W E R K E Y S L O A D" message i done so at installation); but also consider whether you are carrying unnecessary Drivers in your bootup SOS.DRIVER file. Removal of unused drivers like .GRAFIX or .AUDIO might dramatically alter your total system memory occupancy also. You mbut might actually save 18K depending upon the specific program you are booting up. If you think you are running into fragmentation problems you should consider optimising the DCB-Memory Request byte in the .CONSOLE (if you have not alreadyver bank might very comfortably load a complete Power Keys system with all modules but DiskMgr but will fragment that 16K if you are running the default setup of 18K (72 pages). Removing the 14 pages set aside for DiskMgr will only appear to save 3.5K a 32K bank and thus may itself leave 'fragments' scattered. (Thats why simple re-ordering of drivers in a SOS.DRIVER file may sometimes cure a cranky boot disk on a memory tight system). Thus you can see that a system with 16K free in the driu are booting and of the specific Device Drivers configured into your boot disk. In fact a very similar loading process is performed on the individual drivers of your SOS.DRIVERS by SOS at boot time; it will not split an individual driver across uikCalc 2^.5= will show the square-root of 2 or 1.41421356237309 inverse 1/n is just n raised to the -1 power. Use n^-1=. Module Name : FileScan Name Code : SCAN Memory Usage: 03 Command to Enter Module : GV mnemonic : (V)iew File Module Description : FileScan is a module that allows you to page through a text file, similar to the MS-DOw 'binary' data at the beginning and some imbedded non-ascii characters. In general you can always page through this and view the meaningful ASCII TEXT included in the file. If you are technically inclined and would like the ability to view the ratly that of the program (e.g. word-processor) which created them. Some word-processors do not insert at the end of lines (e.g. AppleWriter), so words will be arbitrarily split at the 80th column. Pascal 'Text' files (PasTxt) contain racreen for the new 'page', conveniently highlighting the changing location. Not all "standard" ascii files are so standard after all. The approach of FileScan will allow useful viewing of virtually any such file but the format may not match exaclt in display of the standard Power Keys I/O ERROR message. Notes : You must enter the full pathname of the file, e.g. .D2/LETTERS/JONES.0521. The 22 line display format will result leave the bottom line from the previous 'page' at the top of the st. When the file has been completely viewed pressing any key will return you to the main Power Keys prompt. Error Reports : Request for the viewing of a non-existent file, and generally incorrect specification of the file name, will resuhere. Lines longer than 80 columns will be split at the 80th column and continued on the next line. Pressing ANY KEY will cause display of the next 22 lines. Pressing the key will abort the display and return you to the main Power Keys promp these clown's default password... Other Commands : A page of 22 lines of ascii data will be displayed. Characters outside of the range of printable ascii characters will be displayed as a dot ('.'). Lines ending with will be ended tand show only the ascii text data in them we used it to scan through the various files on his system disk looking for a suspiciously password-like string of characters. Sure enough, the first one we hit (the name of a famous clown !) turned out to be installed it and started up, only to be presented with a request for his password ? The manual said to call the company about this, which he did. You guessed it... the company was long gone. He contacted us. Since FileScan will view non-ascii files rather than exit the program to pull up your word processor and view the letter you can use FileScan to page through it. A real case :: a gentleman bought a nice Apple /// accounting package at a 'firesale' for $900 off list. He brought it home,ii file data as described below. Main Prompt : PKY SCAN > Enter name of file to scan : Typical Uses : If you're running your Visicalc or General Ledger program and a customer calls regarding your letter to him of last week...S and UNIX 'more' utility. FileScan will display the file 22 lines at a time. Pressing any key shows the next 20-line 'page'. Pressing aborts the display and returns to Power Keys. In addition FileScan will allow limited viewing of non-ascw binary data of a file you should consider the FileDump module. Module Name : QuikCrpt Name Code : CRPT Memory Usage: 07 Command to Enter Module : GE mnemonic : (E)ncrypt file Module Description : QuikCrpt is a Power Keys module which will Encrypt or Encode an Apple /// file for purord with only control characters will, however, usually give you an ascii-only encryption. This might be necessary if you plan to transmit the file via certain telecomm networks and protocols). other to avoid this problem. ASCII NOT PRESERVED - The encryption process will typically NOT translate an ascii-only text file into another ascii file... thus don't expect to be able to view your encrypted files with a word-processor. (Using a keywACE ON DISK FOR XLATED FILE - Remember, you will be creating a second, modified, copy of the original file. Thus you must have room on the specified disk volume(s) for two files. On floppy systems we recommend xlating from one drive/volume to anain control characters. If the translation is a DEcryption be sure to use the exact keyword that was used to ENcrypt the file originally. You may now optionally DELETE the original file leaving only the final translated version. Notes : SP that this filename should have appended some recognizable suffix (such as .X or .CRPT) identifying it as encrypted. When prompted enter a translation keyword which will be used to uniquely encrypt/decrypt the file. This keyword may conthe name of the file to be encrypted when prompted, full pathname please (e.g. .D2/DATA/MYFILE) unless you want the default Power Keys Boot Directory. Next enter a pathname for the translated file. If this translation is an ENcryption we suggestu require a usable version of the file again you translate (decrypt) FILE.B to FILE.A using KEYWORDX again. Graphically... FILE.A ===> key XYZ ===> FILE.B encryption FILE.B ===> key XYZ ===> FILE.A decryption Usage : Enter tt distinguishable - so we refer to them both as 'translations'. Thus FILE.A is translated (encrypted) to FILE.B using KEYWORDX. At this point FILE.A is deleted and FILE.B remains as the single encrypted version of the file. At a later time when yoersible. This means that if FILE.B is the encrypted version of FILE.A using keyword XYZ then FILE.A will be the encrypted version of FILE.B using that same keyword. The encryption and decryption processes perform exactly the same function and are nouring the process), it creates another file which is a copy of it with the encryption process applied. Once the process is completed you may optionally delete the original file. The encryption/decryption process is fully 'mirror image' revrd (1-8 chars) : CRPT > Do you wish to DELETE original file (Y/N) ? Functional description : The encryption/decryption process does not modify your original file (too much risk of irreversible data loss if something does wrong dposes of data security and perform the reverse process at any later point. Main Prompt(s) : CRPT > File to Xlate FROM : CRPT > File to xlate TO : CRPT > Enter Keywo/LOCK.OUT.MANUALH ,3 /QUIK.MON.MANUAL$H H /FONTLOAD.MANUALH ,; /MODULOAD.MANUAL(H H AppleWriter "Press RETURN to continue" message after printing is complete) then continue with another sequence. We found that the and the rest of the characters had been forgotten. Well, we have added a number of attempts around these prom. A similar annoyance occurred if one wished to have a macro which typed a sequence of characters commanding a program (e.g. AppleWriter print), then after waiting a number of minutes continue with a or other character (e.g. the een ! The dropped or ignored We found that the old Power Keys, and unfortunately this new DM+ version, sometimes does not continue the typing of a macro which contained a character, this was especially so in the 3EZ Pieces prograo anticipate the Power Keys exit on those programs which require it to be pressed to enter Power Keys... so remember to avoid jumping into Power Keys just when your program flashes the message "Press RETURN to delete all files" on the scre your program 'see' a code but the entry and exit into Power Keys will mandate it. Although we have gone through hoops trying to beat this one we do not currently have a solution which works reliably and must thus simply remind you tl Power Keys functions. Upon exiting Power Keys with the "X" command you will find your application picks up right where you left off - at the completion of the "get a line request". Under some circumstances you may find it inconvenient to havby the [tab] command will not be processed until the "get a line of characters" request to the console is completed; e.g. until the key is pressed. Once is pressed you will enter Power Keys Command mode and be able to access al. As we note in the main documentation, some programs may be running at a given time in the "give me a line of characters please .console and let me know only when you get a " mode. In this circumstance the internal 'event' triggered to a standalone Power Keys system. The [tab]-return sequence Pressing [tab], that is open-apple or closed-apple-tab, is intended to cause you to enter Power Keys Command Mode where you can alter macros and keymaps and execute module functionsing' into .CONSOLE and the latter does not like the Catalyst compatability of our .CONSOLE. We are working on a Corvus compatible .CONSOLE but expect the addition of the QuikCalc module to add all the functionality of the CalendarPak program, and more, Power Keys DM+ A discussion of some program limitations. Compatability We understand that Power Keys DM+ will not function correctly with the CalendarPak program or with the Corvus Networks. The former does a good deal of its own 'hookblems in the DM+ version but none that manage either of these specific situations. We have added code to prevent applications from doing a "flush the buffer" command while a macro is being expanded but to no avail. At least in the case of AppleWriter we do know exactly what it is doing and can't really see any way around it... what this program is doing (and possibly something similar in 3EZ pieces) is to continuously "poll" the keyboard while it is printing, checking for the <nction is available "in the background." Command to Enter Module : GA mnemonic : (A)scii Other Commands : none Notes : The table will list the decimal values from 0-127 together with their 'hexadecimal' or base-16 equi Module Name : AsciTbl Name Code : ASCI Memory Usage: 02 Module Description : AsciTbl is a Power Keys module which allows you to display a table of the ASCII character set at the touch of a key. Like all other Power Keys modules the fud H s/NOTE.PAD.MANUAL gH s /QUIKDIAL.MANUAL5'H s/TYPERITE.MANUALGk H , /QUIKCALC.MANUALN'H ,+ /FILESCAN.MANUALC H ,. /QUIKCRPT.MANUAL H ,1 OTHER.MANUALSvH ' '/ASCI.TBL.MANUALH /SHOWTIME.MANUALH /QUIKSCRN.MANUAL H /QUIK.CAT.MANUALnH /PRINTMGR.MANUAL tH H /DISK.MGR.MANUAL order) you may be running into what we call 'memory fragmentation'. Suggestions for identifying and correcting this circumstance are contained in the ADVANCED FEATURES Manual (the file ADVANCED.MANUAL). We refer you te that document. hat the system appears to be taking up more than the 18K. This is not, in fact the case, but depending upon the very particular nature of your application boot disk (e.g. what SOS.INTERP and what specific Drivers are in SOS.DRIVER in which down to as litle as 8K of you have no modules but you might trade off the smallish 10K for ease of installation of future modules (which you can just add to the Power Keys subdirectory if the 18K is left in place). More troublesomely you may find tse without expanding their own code size much at all. You may find, however, that your Power Keys system appears to be eating up more memory than you would like. It is, in fact set to take a default of 18K at boot time; that can be adjusted s are 1K or smaller. To some extend the MAIN POWER.KEYS program has expanded beyond the original spec but that is largely because we have incorporated a large number of common routines in the main module which the other modules may then uer what life was like BP - Before Power Keys ! Memory Usage : Power Keys is designed with memory efficiency in mind and that compactness is reflected particularly in the sizes of the add-on modules... six of the eight currently available module We are experimenting a bit with the possibility of allowing you to imbed a pre-set delay of n-seconds or n-minutes into a macro and will report on this ASAP. Until such time we acknowledge the relative inconvenience but encourage you to remembescape> key press which will abort the printout. Any other character found is simply tossed out... so even a very long Power Keys macro will be tossed out well before printing is done since Power Keys 'types' its characters so very quickly.valents and the appropriate character whose ASCII code is the given number. The format is 8 columns of 16 increasing values. For ASCII codes less than 32, the so-called "control codes" or "control characters", AsciTbl will display the speci Module Name : QuikScrn Name Code : QSCR Memory Usage: 03 Module Description : QuikScrn allows you to send a copy of the current text screen of any program out to the printer or to a disk file for later viewing and/or editing. Additi|dition to ShowTime which has been suggested to us and which we do intend to look into is the possibility of including an "alarm clock" function which would allow you to set a time at which ShowTime would notify you via a repeating beep or somehing as 13:00. Pressing after the Date-Time is displayed will return you to the main Power Keys prompt. Pressing X at this point will e(X)it back to your original application. e most interesting aat "mm/dd/yy hh/mm/ss" where the first element represents the numeric Month, Day and Year and the second the Hour, Minute an Second. Note that the hour display is in '24-hour' format; e.g. 1:00 AM will show as 01 while 1:00 PM will be displayed Apple ///. If a clock is not installed, ShowTime will display the most recently entered values for Date & Time. Command to Enter Module : GT mnemonic : (T)ime Other Commands : none Notes : The Date-Time display is in the form function is available "in the background" allowing you to perform the Date-Time check at any time while running any other program or machine function. Correct functioning of ShowTime requires that you have a system clock installed in your Module Name : ShowTime Name Code : SHOT Memory Usage: 01 Module Description : ShowTime is a Power Keys module which allows you to display the current system date and time at the touch of a key. Like all other Power Keys modules the n altered character set. case, part of the standard ASCII set. AsciTbl may be used to view an altered character set. al character associated with the code in the current characer set. Limitations and Future Expansions : AsciTbl does not display ASCII codes for values 128-255 which are not, in any case, part of the standard ASCII set. AsciTbl may be used to view aonally you may cause only a single line or part of a line to be printed. Command to Enter Module : GP mnemonic : (P)rint screen Main Prompt : PKY QSCR> Enter Screen Copy destination --> Other Commands : (1) If yoModule Name : QuikCat Name Code : QCAT Memory Usage: 04 Module Description : QuikCat is a Power Keys module which will allow you to do a quick check on the contents of a specified diskette or disk subdirectory. QuikCat will show the Fout anything and everything you might need, from screen dumps on. Please be sure to read the manuals carefully. Because of space limits, this disk is not self-booting, nor does it contain our Menu.Maker program. Enjoy! ! 's wonderful set of Apple /// programs that were placed into the Public Domain in January, 1988. Power Keys DM+ is a "background" utility program much like Sidekick. It is designed to make your /// easier to use. Its many modules cover just abevice named .RS232. PKY : Enter Screen Copy Destination --> <.PRINTER@20> will copy 20 characters from the current application text screen to the device named .PRINTER. RK.SCRN on your .PRO dill copy the application text screen to a file named WORK.SCRN on your .PRO device in subdirectory SCREENS. PKY : Enter Screen Copy Destination --> <\.RS232> will copy the current text screen, usually a Power Keys keymap display, to the dr currently defined 'endline' character. PKY : Enter Screen Copy Destination --> <.PRINTER> will copy the application text screen to the device named .PRINTER. PKY : Enter Screen Copy Destination --> <.PRO/SCREENS/WORK.SCRN> wh that this sequence will cause double spacing. We are planning an enhancement which will allow the user to reset this option. Examples: Note that characters within the <> brackets are to be typed by you. The means press return or you by simple hitting . Limitations: QuikScrn will terminate each line with a (carriage-return, line feed) if printing to a device and with a single only if printing to a file. Some printers may be set up suc requires approximately 2000 bytes or 8 blocks on disk. Notice that the Default Copy Destination is initially set to .PRINTER but is thereafter loaded from your last device/file entry. Thus you can normally execute a second and all later screen dumpsor device specifications can result in a variety of FILE I/O ERROR reports. Notes : If you Copy successive Screens to a file they will be automatically APPENDED to the file, thus you can 'stack' many screens in a single file. Each screen Copy saved80 characters from the cursor, wrapping around the rightmost column if necessary. Error Reports : Entering the name of a device which does not exist (e.g. .D12) will result in an error [10] (device not found) error. Other incorrect file and/ of lines by ending your destination name with the sequence @nn where @ is the current At-Cursor code and nn is a number from 1-80 which states how many characters to copy. If the nn is left out QuikScrn will print the next u wish to print the current Power Keys screen (e.g. a keymap being displayed, Ascii Table, or the contents of a NotePad display) simply PRECEDE your destination name with the current OPTION character. (2) You may copy single text lines, and partsILENAME, FILETYPE and FILESIZE of the current contents of the directory. Command to Enter Module : GC mnemonic : (C)atalog Main Prompt : PKY QCAT> Catalog which Dir ? Other Commands : Simply hitting at the mainn program. Command to Enter Module : GS mnemonic : printer (S)etup Main Prompt(s) : PKY PMGR> Enter Printer Device Name : PKY PMGR> Enter Setup CODES : Other Commands : none Error Reports : Standard file and our printer to "condensed 8 lpi text" prior to a long listing or printout then reset it to 'headline' mode for another document, all without entering any formatting codes into the document itself which may, in any case, be impossible with the giveModule Name : PrintMgr Name Code : PMGR Memory Usage: 02 Module Description : PrintMgr is a Power Keys module which will allow you to send complex 'Setup Commands' to your Printer without having to exit your application. Thus you may set y the directory of your currently selected 'Prefix'. Let us know on this and also if you would like the listing to have a 'header' showing the volume name and/or a 'trailer' showing blocks free on volume. ting'. Naturally you may specifically request a catalog list of any of these nested files later. iles later. We have thought about adding an option of requesting "=" or some similar 'wildcard specification' which will automatically list return to the main PKY prompt. Limitations : QuikCat does not go traipsing down the subdirectory trail, that is it does not list the contents of subdirectories contained in the requested subdirectory or any further levels of 'nescan facilitate finding and searching through multiply nested subdirectories. QuikCat displays 16 entries at a time on the screen. Press to continue the listing of the next 16. At the completion of the list you must also press return tok is 1/2K bytes so filesize in k-bytes may be obtained by halving the block value. QuikCat highlights subdirectory entries which are themselves subdirectories with the capitalized filetype "SUBDIR" indented one space from the normal listing. This is not online you will receive an I/O ERROR [46] report (file not found). The error message will be cleared by pressing and you will be returned to the main PKY prompt Notes : QuikCat file sizes are displayed in BLOCKS. One bloc prompt will get you a listing of files on the current Power Keys default directory (e.g. .D1/PKY) allowing you to easily view your selection of Keymaps, NotePad files, etc. Error Reports : If the device/directory that you specify does not exist ordevice I/O errors Notes : PrintMgr initially offers a default printer device name .PRINTER. Pressing will accept this default. Entering anything else will automatically change the default setting for the next request which can then be accepted by the simple . PrintMgr requires the SETUP CODES to be listed in a quite particular format which is xx,yy,zz,.. where xx yy zz are hexadecimal codes which MUST be 2 digits e.g. 07 not 7 and MUST be separated by so CPI ----> E 1B,51 F 17 CPI & 8 LPI G 1B,51,1B,42 H UnderLine ON I 1B,58 J K L UnderLine OFF M 1B,59 N O P BoldFace ON Q 1B,21 R 6 6 LPI 7 1B,41 8 12 CPI ----> 9 1B,45 : 8 LPI ; 1B,42 < 13 CPI ----> = 1B,65 > Reset Printer ? 1B,63 @ 15 CPI ----> A 1B,71 B C D 17 & ' ( ) * + , - . / 0 9 CPI ----> 1 1B,63 2 FormFeed 3 0C 4 10 CPI ----> 5 1B,4E hunt them down for you. Examples : Our own PRINTER.KBD is shown below. Screen maps and dumps, naturally, courtesy of Power Keys QuikScrn module. ImageWriter ! PRINTER.KBD " # $ % e job under the current system and once you've build your PRINTER.KBD you'll probably never miss it. Let us know. If your printer lacks a listing of hexadecimal setup codes or if you have lost your chart of codes contact us and we will attempt to e advantage of the full power of the Power Keys 'System'. It would also be marvelous to have a huge set of tables of codes for hundreds of printers and let you somehow 'install' it once in your system. But lets face it - thats strictly a one-timns : Naturally we'd all prefer some sort of menu showing "Set 8 LPI" and a number of other 'English' commands which are selected with a numeric menu choice; but I'm not sure that the current form doesn't most powerfully and efficiently takequence macros since its that which causes the codes to be actually sent to the printer. You may well consider storing one or two of your regularly used setup sequences in your DEFAULT keyboard as well. Limitations and Future Expansio(L)oad this keymap and display it with the (M)ap show command. Then trigger PrintMgr with ZS and hit the appropriate macro key to send the sequence. For the time being we suggest that you avoid imbedding at the end of these setup sfor instance PRINTER.KBD) in which you can store all the hexadecimal setup codes. You can even use the extra room to store labels such as "ULTRACONDENSED" in the odd columns and the actual code-sequence macros in the even columns. You can then ndy typing slave which will be happy to remember those long sequences of codes which YOU can cause it to type with a single keystroke. It will even store and tabularize them in the form of a keymap. You need simply create a special keymap (named, er that "1B,51" puts my ImageWriter into 'ultra-condensed 17 cpi' mode... and then type and re-type it every time ? Ah... but you're making the mistake of the new Power Keys User (we still forget ourselves). You now have, at your command a hat printer code chart that came with your printer and you will notice that it gives values of the various setup codes in sequences of decimal and equivalent hexadecimal (and possibly character) values. Double gaaak - how am I supposed to remembme delimiter. The delimiter need not be a comma, a space or something notable like a backslash will do but the comma is the most functionally intuitive and we encourage you to use it. Gaaak you say, hexadecimal ? Well take a look at tha S T BoldFace OFF U 1B,22 V W X HeadLine ON Y 0E Z [ \ HeadLine OFF ] 0F ^ _ 1 note : 1 below does 80 stars, 2 does 80 dashes 2 1B,52,30,38,30,2A 3 1B,52,30,38,30,2D Option [\] CR char [|] 123 Mode [NK] Power Key [CA] At-Cursor [@] 1 note : 1 below does 80 stars, 2 does 80 dashes 2 1B,5MTD1 'formatter device' on your boot disk and you may elect to remove it if it exists to save driver and disk space. DiskMgr always gives the newly formatted floppy disk the volume name /MYDISK. Limitations and Future Expansions : Natu Specifying an existing file as the TO file will not cause a "Delete (Y/N)?" or similar message... the specified file will be automatically deleted and recreated with a copy of the FROM file. Notes : DiskMgr does NOT require that you have the .Ftory as the prefix and search locate the FROM or TO file on that directory Error Reports : Specification of non-existent devices for FROM or TO file or of a non-existent FROM file will result in FILE I/O ERROR reports.ompted with : DMGR> File to copy TO : at which point you should again enter the FULL pathname of the 'destination' file, e.g. .D2/COPY.OF.TEMP If you do not specify a full pathname DiskMgr will assume the Power Keys default subdirecDiskMgr Main prompt. If you select the (C)opy option you will be prompted with : DMGR> File to copy FROM : at which point you should enter the FULL PATHNAME of the file to be copied, e.g. .PROFILE/THREE.EZ/TEMPFILE You will then be prou will be prompted with : PKY DMGR> Format Diskette in .D1 as MYDISK (Y/N) ? Pressing "Y" at this point will immediately commence the formatting of the floppy in the built-in drive as volume /MYDISK. Pressing any other key will exit to the mpt : PKY DMGR> Select (F)ormat (C)opy or e(X)it : Other Commands : If you select the (F)ormat option the program will prompt you with : PKY DMGR> Insert diskette into BUILT-IN Drive then press ANY KEY After doing this and pressing a key yand having to exit to another program or another program function to setup a new floppy for the save. Command to Enter Module : GF mnemonic : (F)ormat (F)ile (C)opy Main ProModule Name : DiskMgr Name Code : DMGR Memory Usage: 14 Module Description : DiskMgr is a Power Keys module which allows you to COPY FILES and FORMAT floppy disks while running any other program. No more running out of disk space E 2,30,38,30,2A 3 1B,52,30,38,30,2D Option [\] CR char [|] 123 Moderally, the sky's the limit here since most of us have experience with more powerful file utilities ranging from the System Utilities to the built in functions of many applications. File DELETE and RENAME and subrirectory CREATE functions could be added and others ranging up to 'wildcard' batch copying are possible. Frankly DiskMgr is not intended to supplant the quite powerful and easy to use functionality of System Utilities, for instance, but to offer a handy 'just in case' option Insert Line ^X Delete Line Video Status : ^R Reverse Video ^N Normal Video Clear Commands : ^^ Clear Line e.g. cntl-shift-6 ^_ Clear Screen e.g. cntFT RIGHT ^B Beginning of Screen ^E End of Screen ^A Leftmost Column ^L Rightmost Column Insert-Delete : ^Q Insert Character ^W Delete Character ^Z Commands : Once you are in Edit-Mode the following editing commands are active : leave edit mode Cursor Movement : use the arrow keys for UP DOWN LEmpt for a filename under which the current NotePad contents are to be saved. Although naming conventions are wide open, we do suggest that you add a simple suffix to all your notepad files to clearly identify them (e.g. .NOT or .NTE). Otherd by pressing . Pressing any key then brings up the current notepad screen for viewing and alteration. Pressing "L" will prompt for a NotePad file to be loaded which may then be viewed or altered using Edit. Pressing "S" will proGN mnemonic : (N)otepad Main Prompt : PKY NOTE> Select e(X)it, (E)dit, (L)oad or (S)ave : Pressing "X" will return you to the main Power Keys prompt. Pressing "E" will present you with a reminder that Edit-Mode is exitef Daily Reminder schedules, Customer Lists, or simple Outlines. A set of simple editing commands facilitate scratchpad creation allowing line and character insert/delete, cursor movement and other functions. Command to Enter Module : le at the touch of a key while running other programs. Since NotePad also allows you to Save a scratchpad as a small disk file and later Load it or another, you have available an effectively infinite capacity for such notes; allowing creation oModule Name : NotePad Name Code : NOTE Memory Usage: 12 Module Description : NotePad is a Power Keys module which allows you to maintain 'scratchpad' work areas, containing up to 2000 characters of information, which are availabould want to carefully consider such an alternative. nt in the boot disk SOS.DRIVER file. We are strongly committed to keeping Power Keys and its modules fairly system independent in this respect (the Dialer module, for instance, is designed to work without an .RS232 driver in the boot system) and wfor those times when you just need the copy or the blank disk immediately. Formatting of alternative floppy drives (e.g. Microsci) might be accomplished but would almost certainly require that the .FMTDx driver for those drives be presel-shift-_ ^n means press the Control Key together with key-n Error Reports : Standard File and Device errors for (L)oad and (S)ave Notes : Inserts in Editing mode take place at the current cursor location and move the rest of the line or screen down or to the right. Deletes in Editing mode take place at the current cursor location (e.g. delete current character or line) and move the rest of the screen left or up. The Clear Line command does not alt Module Name : QuikDial Name Code : DIAL Memory Usage: 02 Module Description : QuikDial is a Power keys module which will allow modem owners to utilize the dialing capability of a modem connected to their system to facilitate dialing lso included is a sample 'blank' Daily Appointment notepad in the file named APPOINT.NTE. Typical usage for this would be to (L)oad APPOINT.NTE, (E)dit with your daily schedule, then (S)ave as a named file including the date, e.g. APPOINT.301.NTE. <--> Ascii format - let us know. Examples : The summary of NotePad editing commands is itself stored in a NotePad file named NOTEHLP.NTE which you can (L)oad and (E)dit/View for quick reference until the commands become second nature. Ay' file format. This does not allow 'import/export' of notepad files to and from your word processor - a feature which might be desirable. We are considering doing a simple pair of programs which would allow you to separately transform NotePadat we aren't trying to design a word-processor here; (F)ind/(R)eplace is a lot of gas for not much mileage when you've got only a single screen document. NotePad files are stored as screen images sized at a fairly compact 2K (4 blocks) in 'binar by certain 'control-codes' being more or less reserved by special keys like the arrow keys we could easily rearrange the commands if the set we selected proves unwieldy. Suggestions for additional commands are welcome, but do keep in mind ththe 'use current screen' command format (e.g. specify \.PRINTER as the printout destination). Limitations and Future Expansions : We would be happy to receive feedback on the Editing command set. Although the design is somewhat constrained PRINTING A NOTEPAD is not at all difficult if you own the QuikScrn module. Simply to the main Power Keys prompt (the notepad contents will remain displayed on the screen) and enter QuikScrn with the GP (P)rint command and use sociated with particular keys are fully available in edit mode and can be quite useful - you might, in fact, redesign the command set to your own selection of open-apple or closed-apple macros which themselves trigger the basic control commands. The clear commands are intended to be more difficult to access (e.g. control-shift-...) since they are irreversible. You are encouraged to use the Reverse/Normal video feature to highlight and organize your text display. The Power Keys MACROS asl) while others were thought to be more usefully positional (^A Leftmost and ^L Rightmost where the "A" and "L" keys are themselves at the far left and right).The insert/delete pairs are intended to allow one-handed use with the control key. er the position of any other lines. The Design of the 'Command Set' is intended to offer a fair degree of "intuitiveness" to the command set while maintaining simplicity. Some commands are mnemonic (^Beginning, ^End, ^Reverse, ^Norma telephone numbers from the keyboard and from phone numbers displayed on the screen of a program that is running. Simple functions allow immediate RE-DIAL of a number and more complex control of modem options. Although it is geared toward the so-calledally you can build simple tables of up to 32 or 64 phone numbers right into an appropriately named keymap which can be loaded and viewed, used, switched for another, etcetera. Building in 'dummy' entries into certain columns will allow you to stoir associated keymaps! Dialing MACROS Thus you can quite easily imbed your standard dialing 'prefix' (e.g. "ATDT") in a macro, or even more complex MCI and SPRINT dialing codes which will be typed at the QuikDial prompt with a single key. Additionto quote one of the more famous ex-governors of California). With Power Keys itself you have at hand a very powerful tool for handling complex 'typing' sequences easily and for organizing and saving those sequences - the macros and thehone number and dial that number with a few keystrokes. Sigh... you say ? Here I go typing twenty extra characters every time I want to ring up a pizza ?! Plus I've still got to look up every number anyways. Not at all. (There you go again... ly the "@" character) optionally followed by a number from 0 to 48 and the sequence will automatically be completed with the characters located at the current cursor position of your main program. This allows you to set the cursor on a customer pome of the more useful of these for the 'Hayes compatible' family are outlined below. You should refer to your modem manual for specifics and arcana. Additionally you may terminate any dialing sequence with a Power Keys AT-CURSOR code (usualssing return will cause it to be typed. Any additional command that your modem supports can be imbedded to cause additional functions such as 'pulse dialing', delays between groups of characters and turning the modem speaker on and off. S numeric values sent to the modem after this sequence will be 'dialed' using touchtone codes up to receipt of a . Thus to cause the number 555-1212 to be dialed the sequence ATDT555-1212 should be typed at the main prompt. Pre your specific modem to 'dial' a number must be imbedded in the "number" that you key in at the Main Prompt. For the family of 'Hayes compatible' modems the most important of these is the 'attention, dial touchtone' command which is ATDT. All trigger the Modem's dialing function. The sequence that you 'type' to be sent to the modem is not actually sent until you press and may thus be edited using the left and right arrow keys. All of the special commands necessary to causenot really a dialer at all but simply a small program that causes sequencess of text characters to be sent to the built-in RS232 port of the Apple ///. If that port is connected to a Modem those commands can be set up in such a manner that theypreviously 'dialed' sequence is automatically re-displayed when you re-enter QuikDial and this sequence can be re-dialed by simply pressing . Error Reports : Notes : QuikDial manages a lot of flexibility by its simplicity. It is 'Hayes Compatible' modem command formats, QuikDial is completely configurable for almost any other modem systems. Command to Enter Module : GD mnemonic : (D)ial Main Prompt : PKY DIAL> Enter # Other Commands : The re "Joe's Pizza" in the "H" macro with Joe's phone number right next to it in "I". This allows easy lookup. If you accidentally hit the [H] macro you can either backup with the arrow keys and hit the [I] or simply ignore it (since there are no 'triggering' AT codes in the name - this might be a problem with ATLAS Inc or somesuch but even that can be avoided by leaving the names as lower case which the 'Hayes Compatible' family will ignore. You might also eventually start using the advancis accomplished with the sequence : ATDT1-716-648-2462 (remember the dashes are ignored) With a SPRINT local number of 950-0777 and an access code of 12345 you could reach is with : ATDT950-0777,,,,12345,,716-648-2462 f you have a 1200 or 2400 baud only modem do contact us for a special modification but please test things first since all 1200 baud modems that we know of also accomodate a 300 baud mode. Examples : Dialing D A DataSystems touchtone with AT&T port of the Apple ///. It is not configured to communicate with extra Serial Cards. It sends its 'dialing' sequences at approximately 30 characters per second (300 baud) which matches the minimal configuration of almost all modems in use today. Ist useful. Consult your modem manual for more juicy options. QuikDial DOES NOT require an .RS232 driver configured into your SOS.DRIVER on the boot diskette. Limitations and Future Expansions : QuikDial directly addresses the built-in RS232 sequence which or an office muitlplexed system where you must wait before dialing some additional access code. This is a rather 'minimum' subset of the standard 'hayes' commands which you will probably find moisconnect. , Inserting a comma in the command sequence causes a 2 second delay before later codes are 'dialed' This can be very handy if you have an MCI or similar pre-dial will be broken off after that time. An alternative way to break off a dialing sequence is to simply hit the re-dial option while ringing which will cause the modem to d from being 'answered' by the modem's charming high- pitched squeal. ATS7=n Sets the modem to ring for n seconds (e.g. ATS7=10 will ring for 10 seconds). Thus the attempted call auto answer'. This may be pre-set on your system using hardware switches but should otherwise DEFINITELY be sent when you first turn the beast on since it will prevent persons calling you THE RINGING STARTS which will cause the modem to 'hang' up - you naturally, will have the reciever in hand at that point and can continue unassisted. ATS0=0 disables so-called ' modem's speaker, it can be annoying to hear your conversation 'echoed' there. An alternative with QuikDial and most Hayes compatible systems is simply hit the repeat command AFTERuseful alternative perhaps on some systems to the QuikDial repeat option ATM0 speaker off - although its useful to be able to hear the dialing (and ringing) taking place thru your p large directories into multiple maps named, for instance, PHONE.A2K and PHONE.L2Z. Summary of some useful 'Hayes Compatible' modem commands : ATDT dial touchtone ATDP dial pulse A/ repeat command, a ed "macro chaining" feature of Power Keys allowing you to hook the [H] and [I] macros together and allowing you to simply hit the [H] macro to dial the whole thing. You can store all of these codes in a keymap named PHONE.KBD or even split u And if you wanted to dial us from our number being displayed at the current cursor location of the screen of your OMNIS database you might enter : ATDT1-@12 Notice that pre-setting a key macro to an appropriate "at-cursor" sequence will allow you to step through a sequence of database of program-displayed phone numbers, dialing each with a single keystroke. A sample 'dialing keymap' follows : ATDT ! PHONE.KBD " # $ ed to confirm the password. Check it and remember it then type "Y" or "y" to confirm. The screen will be erased and a message will appear at the top :: LOCK > Enter PASSWORD to Resume : Whenever you return to the machine sie running. No spurious entries into your spreadsheet, no accidental D for Delete, nothing. Only that PASSWORD, re-entered exactly, will 'unlock' the machine. Main Prompt : PKY LOCK > Enter Locking Password : Other Commands : You will be promptd, confirm that password and then walk away from the machine. At this point LockOut takes over with a simple prompt requesting the viewer to re-enter the password to resume. NOTHING that is typed here will interfere with the main program you arur machine when you step away from it. With my own 4-year-old its still a nice touch and probably many adult-size situations could also benefit from it... sure beats threats, signs or locked rooms. LockOut allows you to specify a passworModule Name : LockOut Name Code : LOCK Memory Usage: 02 Command to Enter Module : GL mnemonic : (L)ockout Module Description : LockOut is a neat little idea, proposed by a /// user with a 3-year-old, for tamper-proofing yo 3 Option [\] CR char [|] 123 Mode [NK] Power Key [CA] At-Cursor [@] ] ^ _ 1 mci prefix AT555-1234,,,,56789, 2 L P TII Q 703-790-0410 R S T U V W X Y Z D A DataSystem [ 716-648-2462 \ A 313-662-7777 B C D ALF E 800-321-4668 F G H Utilco I 707-257-2420 J K L Blythe M 415-571-0222 N zine 3 916-485-6525 4 HSC 5 315-866-7125 6 Sun Data 7 800-821-3221 8 PCPI 9 619-485-8411 : Sun Data ; 801-752-7631 < SCRG = 800-635-8310 > CMC Systems ? 714-835-2462 @ Titan Tech % & ' ( ) * + , - . / 0 Legend Indust 1 313-674-0953 2 /// Magamply type your password and press . You may add a further level of security by turning off the screen with a control-keypad-5. The only problem with this is that someone might think the machine is off and turn off a master power line or somesuch. Error Reports : NONE. Failure to re-enter the correct password simply results in the prompt being re-displayed. Notes : Avoid entering control characters in a password. Passwords of 5-8 characters are recommended. X Repeat Command Line Continue Memory Dump Pressing the space bar during a memory dump will halt the display. Holding it down will scroll more slowly through the] < [address range] R Read Disk Block into memory [block num] < [address range] W Write Disk Block from mem [address] G JSR address [address] J JMP address Memory Store [byte] < [address range] S Search Memory for byte [address] < [address range] M Memory Move (range to addr) [address] < [address range] V Memory Verify [block num:= numeric value 0..FF or one byte string [byte list] ::= one or more bytes separated by blanks [block num] ::= numeric value 0.117 Commands : [address range] Memory Dump [address] : [byte list] yping 1900J and pressing then X Other Commands ::: System Monitor Command Syntax & Summary Syntax : [address] ::= numeric value 0.FFFF [address range] ::= [address] or [address].[address] [byte] :am data and code practically while it is running. Main Prompt : PKY Press Any Key to enter MONITOR... X to exit now Type "X" to return to the main Power Keys Prompt. Any other enters the monitor. Once in the monitor you may return to Power Keys by t to your running program is hindered or impossible. This one comes with a "Use at Your Own Risk" label. However, once you know your way around you will find a tremendous amount of debugging power at your fingertips as you alter and examine progrctioning of the Apple /// for safe use. Once in the system monitor you can alter SOS, Drivers, or your running program (or even QuikMon itself) and there are innumerable ways in which you can crash the system or alter things in such a way that re-entry (and even floppy disk) data and, additionally, to RETURN to your running application. QuikMon and the System Monitor allow VERY LOW-LEVEL access to the running machine environment and require a VERY HIGH-LEVEL familiarity with the inner funnitor. Normally you can access the monitor by pressing control-openapple-reset together, unfortunately you can never return to your application. QuikMon allows you to perform low-level Monitor commands to access and possibly alter memory Module Name : QuikMon Name Code : QMON Memory Usage: 08 Command to Enter Module : GZ mnemonic : (Z)ap Module Description : This module 'drops' you into the very lowest level of the Apple /// system software - the System Mo dump. Pressing any other key resumes the high-speed Dump display. Escape Commands : Escape commands may be used during input to move the cursor or control the display. Pressing the key enters escape-mode, pressing it again exits escape-mode. The cursor changes to a "+" plus sign to indicate that you are in escape-mode. While in escape mode pressing a a cursor key will move the cursor in the appropriate direction. Other commands are : L clear to end of line Module Name : FontLoad Name Code : FONT Memory Usage: 05 Command to Enter Module : GY mnemonic : none Module Description : The FontLoad module will dynamically load a new Screen Display Font from a fontfile on dilay the bottom half of the block. 1F00.1FFF to display the bottom half of the block. built-in drive by the following command : 2<1E00.1FFFR Now type 1E00.1EFF to display the first half of this block (roughly what the screen will hold). Escape-Cursor up to the 1 in 1E00 and retype 1F00.1FFF to disp on the same screen. Then we can alter date and just cursor up to the R command and cursor-right over it, change the R to W and correctly W the correct block. Examples : You may read the first directory block (number 2) from the diskette in the rom the wrong spot. Generally we use escape-cursor commands to avoid scrolling and keep the nn<1E00.1FFFR command on screen and overtype the 1E00.1EFF dump command for the first half of the block with 1F00.1FFF to see the second halfk read/write only apply to the built-in drive. Read only one block (512 bytes) at a time. You can really ruin things if you forget which disk block is in memory and (W)rite it to the wrong block... or if you mistype the addresses and write fy changing the contents of the BANK REGISTER appropriately (e.g. 76 for bank 6, 7C for bank 12 in a 512K machine). Power Keys will automatically restore the bank register to the correct value upon exiting with via 1900J. OTHER NOTES Bloc preserves pages 3, 1A and 1B and restores these, along with 1E and 1F and the bank and environment registers when you exit via 1900J. BANK REGISTERS, ETC. You may switch any valid 32K memory bank into the switchable range of memory (2000-9FFF) bfor doing Disk Block reads since, in principal, all the rest of memory may be dedicated to your running program, SOS, Power Keys or other un-touchables. You need somewhere to read the data in and re-write it from - hence this buffer. QuikMon also gups of other problems. Always type the X to exit Power Keys then re-enter to start another module. 512 BYTE WORK AREA Power Keys sets aside 512 bytes from 1E00-1FFF in non-switched memory for you to use for temporary buffer areas. Most useful s) as well. Notes : EXITING *** IMPORTANT *** For reasons that we have not been able to determine entering other Power Keys modules immediately from the Power Keys prompt displayed after leaving QMON with 1900J can cause system han that data into the monitor... thus escape-up-arrow to a displayed line of data then cursor right to a byte to be changed, overtype new data and press will effectively re-enter the unchanged data for the line and the changed byte( P clear to end of 'page' S home cursor and clear screen 4 set 40-column display 8 set 80-column display Moving the cursor right over data existing on the screen will 'type'sk and perform the functions necessary to 'install' it immediately in the console driver. Main Prompt : PKY FONT > Enter Name of Fontfile to Load : When prompted, enter the full pathname of the fontfile which contains the screen font ly still find it more convenient to change it to .D2/PKY, thus allowing all the Power Keys boot Modules as well as these Dynamic modules and miscellaneous Notepad and Keymap files to reside off of the boot disk(s) in your system. Use the Ss to .D1/PKY but could be modified by you when you first installed Power Keys. For most hard-disk owners this is almost always more conveniently changed to .PROFILE/PKY or something similar on the hard-disk. Floppy-based system owners will probab is quite easy to re-order or re-arrange your various modules into BOOT and DYNAMIC loading areas. Installation involves 3 steps. 1) You must create a directory named /DYNAMIC on your Power Keys BOOT DIRECTORY. Remember this latter defaultarch for the file whose complete pathname is .PROFILE/PKY/DYNAMIC/QUIKCALC. Installation : Since ModuLoad is doing things a bit differently from a standard module it does require a bit of 'installation'. Once the basic configuration is set up itd size unit of all Power Keys modules. ModuLoad will load the specified module from a subdirectory named /DYNAMIC on your Power Keys "Boot Directory". Thus, if your boot directory is .PROFILE/PKY and you request a load of QUIKCALC ModuLoad will se. At initial boot/load time space is reserved for this dynamic loading bucket by including a 'dummy' module named BUCKETnn immediately following MODULOAD. The nn in the BUCKET modules specify how much space they will reserve in PAGES, the standarhus ModuLoad will load the dynamic modules into a space in memory (which we refer to as a BUCKET) immediately following itself. Dynamically loading a new module automatically overwrites whatever module previously resided in the bucketside in the Power Keys /MODULES directory of your Power Keys boot directory - just like any other module. Since ModuLoad must always remain accessible for loading of new modules dynamically it cannot simply load those new modules in 'over' itself. Ty' loadable Modules which can be brought into memory be a few simple commands. Main Prompt : PKY LOAD > Enter Name of Module File to Load : Functional Description : ModuLoad must itself have been loaded at Power Keys boot time and thus must reS/STANDARD. eded fontfiles into that subdirectory. This will also save a few characters typing since Power Keys file-pathname specifications default to look on that boot directory. Thus you need only specify FONTS/STANDARD to load the fontfile .D2/PKY/FONT of disks we suggest that you create a subdirectory named /FONTS on your Power Keys Boot Directory and store all your fontfiles there. Thus, if your Power Keys Boot Directory is .D2/PKY you should create a subdirectory .D2/PKY/FONTS and copy all nethat you wish to load. If these are stored under a Power Keys Boot Directory area you may enter a partial pathname. Error Reports : Standard Power Keys FILE I/O ERROR reports. Notes : Rather than have your fonts scattered all over a numberystem Utilities program to create this directory. 2). Now copy the Module files which you wish to make dynamically loadable over to the /DYNAMIC subdirectory of your Power Keys Boot Directory. 3). Lastly you should copy MODULOAD followed by an appropriately sized BUCKETnn file onto your /MODULES subdirectory of the Power Keys Boot Directory making sure that the BUCKETnn file appears IMMEDIATELY AFTER MODULOAD. Remember to add the page sizes of the ModuLoad AND the Bucket modulelf when you first attempt to use it. Thus the installation of these in correct sequence is critical. But sometimes you may find that you have, for instance, the following modules in your /MODULES directory : QUIKSCRN DISKlc which is the largest. If you do not have QuikCalc or are loading it at boot from /MODULES either BUCKET08 or BUCKET16 will suffice. Module File ordering & displacement ::: ModuLoad MUST find a BUCKETnn file immediately following itsYNAMIC directory can contain any number of modules. The only limitation of this environment is that the BUCKETnn file must be large enough to handle any module in /DYNAMIC. Currently BUCKET24 will handle all modules including QuikCa Keys .CONSOLE setup includes a 'memory request byte' in the DCB which must be set to the page count required. This value is set to "48" on the distribution system which works out to 72 pages or 18K requested. Power Keys /Ding at boot time from /MODULES can only add up to 30K or 120 pages in total size, this count must include 32 pages for the PWR.KEYS main module and the appropriate amounts for ModuLoad and the Bucket if installed. The Power of ModuLoad. Power Keys /MODULES directory can only contain a maximum of 12 modules, with ModuLoad and its associated Bucket installed this will be reduced to 10 modules loading at boot time. In addition these modules load have mentioned these limits elsewhere in the main Power Keys documentation but reiterate and add to them here since most folks will only begin to encounter them once they start adding the larger number of modules typically associated with useloading at boot time from /MODULES. But you might wish to save some typing in loading them from /DYNAMIC by renaming, for instance, QUIKCALC to CALC or even C. Certainly you should rename the mmmm.231 type modules. POWER KEYS LIMITS : We older modules that you wish to install on /DYNAMIC You can rename Power Keys module files to any legal Apple /// filename as you desire. We have tended to standardize on a name of exactly 8 characters and suggest that you stick to it for modules ber in the name (e.g. NOTE.231 instead of NOTE.PAD). The numeric part of these names could be a real pain to remember. We've gone back to fully meaningful module names but you should note the following in general and specifically if you have ad a module whose name you can't remember. If you've got QuikCat you can do a quick catalog of /DYNAMIC and find out, but generally its useful to have meaningful module names. Earlier implementations of Power Keys modules included a version numour configuration for possible omission of or displacement of (see notes) the BUCKETnn file. In the latter case you should replace the bucket with a larger capacity one. Notes : Module Names : Obviously its going to be hard to dynamically loyou to the main Power Keys prompt. Two error codes are unique to Moduload, these are : I/O ERROR [D1] BUCKETnn file not found after MODULOAD I/O ERROR [D2] Bucket not large enough for the module In the former case you should check ye to calculate a total value for the Power Keys Memory Request byte. Error Reports : Attempts to load non-existent modules, typographical errors in keying in the module name and the like will all report a standard Power Keys I/O ERROR and return .MGR QUIKCALC but when you copy MODULOAD and BUCKET08 to /MODULES you end up with something like this : QUIKSCRN MODULOAD DISK.MGR QUIKCALC BUCKET08 Moduload will not function in this configuration and, in any case you would not want it to go on and blindly load your modules on top of some arbitrary portion of DISK.MGR which is unlucky enough to follow it. What Happened ? Well it turns our that when you delete any Apple /// file in a director /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// SIG, Washington Apple Pi 8227 Woodmont Ave. Bethesda, Md. 20814 (301) 654-806TD or access these FontLoad, NotePad and /KBD KeyMap files. BASIC PASCAL OMNIS ASM LETTERS nce Power Keys defaults to look /NOTES for files on the boot directory HELP we can specify simply FONTS/APPLE CALENDAR of NOTES/HELP or KBD/LETTERS to load T TYPERITE QUIKCRPT FONTLOAD LOCK.OUT /FONTS >>> Notice this arrangement of the APPLE various subsidiary Power Keys files ROMAN STANDARD Si >>> These modules can be loaded PRINTMGR by name by ModuLoad QUIKDIAL FILESCAN Loading any one will replace FILEDUMP whatever was in there previouslyNOTE.PAD MODULOAD BUCKET08 >>> This 2K bucket (8 pages) will QUIK.MON be where modules from /DYNAMIC QUIKCALC will be put by Moduload /DYNAMIC ASCI.TBL >>> Remember this must be first SHOWTIME >>> These modules will all QUIKSCRN be loaded at boot time QUIK.CAT and will always be available. DISK.MGR e useful when immediately and always available. Examples : Here is a sample directory listing of a heavily configured Power Keys system installed on a Profile hard disk with explanations attached. /PROFILE /PKY /MODULES PWR.KEYS d the previous notepad preserved. Of course you can simply Save the notepad file then load the new module and later reload NotePad and the notepad file. Frankly NotePad does not seem such a good candidate for Dynamic loading since it is so much mor Remember, new dynamic modules are loaded into the BUCKET right over whatever was there. If you had NOTE.PAD stored there (which keeps is notes in memory along with the module), loaded DISK.MGR then later re-loaded NOTE.PAD you would not fint to Do ? The simplest way around this is simply to copy all desired module files over, IN THE DESIRED ORDER, to a BRAND NEW subdirectory (try .D1/TEMP or somesuch) then delete and recreate the /MODULES directory and copy them back. Lost Notes ::: your new /DYNAMIC subdirectory and deleted the original. When you added MODULOAD and BUCKET08 to /MODULES you expected them to go nicely on to the end of the list but MODULOAD was dropped into the free slot previously occupied by QUIKDIAL. Whay SOS very efficiently re-uses the freed-up 'slot' in the directory for another new file added later on to the directory. In the above case you might have had your QUIKDIAL module stored in /MODULES right after QUIKSCRN but copied it over to 0 WELCOME! Public Domain Library Disk # 1033A/B Category: D.A. DataSystem Programs Disk Format: Non-Self Booting On both sides of this disk