WSKEYS Version 0.0 - Re-Program The IBM-Compatible's Keypad Keys To Make WordStar/86 Behave More Like A DOS Editing Program Freeware from Kirk Lawrence A PERSONAL NOTE FROM THE AUTHOR ON THE PHILOSOPHY BEHIND "WSKEYS:" I've never liked WordStar. I find it extremely cumbersome, and totally non- intuitive. While I understand the historical necessity for those awkward WordStar "CTRL+" combinations, that necessity is pretty much obviated by today's IBM-dominated world. Keyboards now have many "extra" keys to which functions can be assigned, and accessed with a single keypress. But awkward as it is, WordStar/86 is one of the very few full-screen editors ever produced for the CP/M-86 operating system. (The line-oriented "editor" ED.CMD, which Digital Research supplied with CP/M-86, is an embarrassment, and is virtually unusable.) So if I want to edit text under CP/M-86, I'm pretty much stuck with using WordStar/86...whether I like it or not! Here's where WSKEYS comes in. WSKEYS forces WordStar/86 to become less obtuse, and to behave more like a conventional DOS-style editor. WSKEYS re-programs the IBM-compatible's numeric keypad keys, and assigns many of WordStar/86's cumbersome "CTRL+" combinations to individual keys on the keypad. This forces WordStar/86 to accept most of the standard DOS-style editing conventions in regard to cursor movement: the up-arrow key moves WordStar/86's cursor up a line; the down-arrow key moves the cursor down a line; the HOME key moves the cursor to the beginning of a line; the END key moves the cursor to the end of a line, etc., etc. This makes WordStar/86 much more intuitive to those of us who are used to editing under DOS. Admittedly, WSKEYS isn't a perfect answer. Some compromises had to be made. For instance, the BACKSPACE key in WordStar/86 remains non-destructive (a major annoyance!). WordStar/86, in its native mode, does provide a destructive backspace from the DEL key...but that's not the function a DOS user expects from that key. WSKEYS therefore re-programs the DEL key to behave as it would in a DOS-style editor (delete the character at the cursor, and pull the remaining text left). In order to provide a destructive backspace, WSKEYS assigns that function to the LEFT-ARROW key. The result of this is that the functions of the BACKSPACE and LEFT ARROW keys are reversed from what a DOS user would normally expect: the BACKSPACE key moves the cursor non-destructively to the left, while the LEFT ARROW results in a destructive backspace. This will take some getting-used-to, I realize...but I opted for this solu- tion because re-programming the actual BACKSPACE key would cause that key to not operate properly under CP/M-86, once you'd exited WordStar/86. No, WSKEYS isn't a perfect answer...but overall, it makes using WordStar/86 much less cumbersome, and certainly more intuitive for those of us who are used to DOS-style editors. You might disagree with some of the key assign- ments. That's fine. Feel free to alter them to suit your preferences. The source code is included, so you can do just that. I run WSKEYS from my "power-on command line," so that the keypad keys are automatically re-programmed each time I boot CP/M-86...but you can run it manually from the command line, as well. NOTE: WSKEYS makes no provision for restoring the default CP/M-86 keypad key assignments. I haven't found this to be a problem, since I don't have any software which actually makes use of those default key assignments. However, if you wish to restore the "normal" CP/M-86 keypad functions after running WSKEYS, simply re-boot the computer. Running WSKEYS re-programs the keypad keys for WordStar/86 as follows: KEYPAD KEY | A S S I G N E D F U N C T I O N | WS Equivalent ------------|------------------------------------------|--------------- UP Arrow | Moves cursor up one line. | ^E DOWN Arrow | Moves cursor down one line. | ^X LEFT Arrow | Destructive backspace. | DEL RIGHT Arrow | Moves cursor right one character. | ^D *PGUP | Moves the screen text down one page. | ^R *PGDN | Moves the screen text up one page. | ^C HOME | Moves cursor to beginning of the line. | ^QS END | Moves cursor to end of the line. | ^QD DEL | Deletes character at cursor, and pulls | ^G | the remaining text left. | INS | Toggles INSERT/OVERWRITE mode. | ^V * = Note that this function is reversed from what you'd normally expect from WordStar, because that's the way a DOS editor usually works. "WordStar" and "WordStar/86" are registered trademarks of MicroPro Corp. "Digital Research" is a registered trademark of Novell, Inc. "IBM" is a registered trademark of International Business Machines. WSKEYS.CMD is free. As is always the case with "freeware," there are NO guarantees whatsoever. If you use the program, you do so entirely at your own risk and peril. Your use of WSKEYS.CMD shall be prima facie evidence under law that you understand and accept these terms and conditions.