home *** CD-ROM | disk | FTP | other *** search
INI File | 1995-10-10 | 32.2 KB | 509 lines |
- [This file is README]
-
- This is the 10 Oct 1995 version of the PC screen text editor AAEMACS written by
- A.Appleyard, E28d, Materials Science, UMIST, Manchester 1, England (email:
- A.APPLEYARD@FS2.MT.UMIST.AC.UK) as .EXE binary and for compiling by Gnu C++. It
- needs an 80386-based IBM-compatible PC or PS/2. For information on Gnu C++,
- contact Mr.Delorie (DJ@CTRON.COM). The files EMACS.EXE and FINDMODE.EXE each
- include a copy of the Gnu C++ loader BIN\GO32.EXE, so matter including these
- .EXE files should not change hands in exchange for money, only free.
- -------------------------------------------------------------------------------
- AAEMACS (and other Gnu C programs) will not run if the PC is in V86 mode with no
- way to get back to real mode: thus it not run if EMM386 with the NOEMS option
- has been called in that PC since it was booted last. If on being called, AAEMACS
- dies part way through saying that it can't read file INFO.DAT, try inserting the
- line EMM386 ON in your C:\AUTOEXEC.BAT and rebooting.
- -------------------------------------------------------------------------------
- Disclaimer: This software is distributed <without any warranty>; without even
- the implied warranty of <merchantability> or <fitness for a particular purpose>.
- In particular, I am not responsible for the consequences of other people
- altering a copy of the source form and then recompiling and running the result.
- --------------------------------------------------------------------------------
- If you want to try to port AAEMACS to other C++ compilers, I <<<CAN'T>>>
- guarantee the results! In particular, be wary wherever I have put a comment
- starting with `/****'.
- -------------------------------------------------------------------------------
- AAEMACS includes these files:-
- -- information files:-
- MACROS.HLP information file about format of AAEMACS macro files
- README this file
- WISHLIST things that I may get around to doing
- EXAMPLES examples
- HISTORY list of past alterations and corrections
- -- files needed to run AAEMACS:-
- DICT dictionary for spelling checker
- EMACS.EXE AAEMACS assembled and ready for running
- EMACS.ICO Windows icon (a diver with a blowtorch)
- FINDMODE.CC Gnu C program to find current and possible screen modes
- FINDMODE.EXE ditto, compiled
- HELP one line of information for each bound key
- HELP.BIG longer information for all user subroutines and bound keys
- INFO.DAT some information about your PC that AAEMACS needs
- -- files needed to compile AAEMACS:-
- ASSEMBLE.BAT to link AAEMACS together after compiling its parts
- COMPILAL.BAT to compile all parts of AAEMACS (I don't use MAKE)
- DISPLAY.CC Emacs source: subroutines to display file on screen
- EM.CC Emacs source: lots of little subroutines
- EM.H Emacs source: matter #include'd by all parts
- KEYF.CC Emacs source: subroutines which are bound to keys
- CC.CC Emacs source: more subroutines which are bound to keys
- MACROS.CC Emacs source: re macros
- MAIN.CC Emacs source: main() and obey()
- -------------------------------------------------------------------------------
- [To install AAEMACS]
- As AAEMACS was compiled by Gnu C++, your PC must be in REAL mode. So, AAEMACS
- may not run if e.g. \CONFIG.SYS contains a line `device=\dos\himem.sys' to
- reserve areas of store and reset mode for Windows.
- Create a directory to keep AAEMACS on. CHDIR to that directory.
- Copy the "files needed to run AAEMACS" onto that directory.
- In your \AUTOEXEC.BAT file insert this line (`AAEMACS' must be UPPERCASE):-
- SET AAEMACS=C:\AM
- (with C:\AM replaced by drive & name of the directory where you put AAEMACS)
-
- Alter your copy of file INFO.DAT according to peculiarities of your PC thus:-
- Lines 1 to end: one line for each alt and special key code (i.e. codes that the
- interrupt `AH=7, AL=0, int 21hex' returns first 0 then a value for) that your
- keyboard can read. (There is a list below of what these codes return on my PC:
- check this list with your own keyboard's specifications in its manual):-
- chars 1 to 3: decimal value returned by key
- chars 5 to 19: name to refer to key by. (Letters & digits only, letter first)
- chars 21 to 24: short code for this key (|=shift, ^=ctrl, *=alt, !=special)
-
- If you want/need to recompile AAEMACS yourself:-
- Copy also the "files needed to compile AAEMACS" onto your directory for AAEMACS.
- In line 2 of your copy of ASSEMBLE.BAT, replace `c:\gcc\bin\go32.exe' by the
- full filename with drive and directory of your copy of Gnu C's file GO32.EXE .
- Type COMPILAL
- This creates the object files CC.O DISPLAY.O EM.O KEYF.O MAIN.O MACROS.O
- Type ASSEMBLE
- This links the object files, creating binary file EMACS.EXE (I don't use MAKE)
- -------------------------------------------------------------------------------
- [Calling AAEMACS]
- (Replace C:\AM\EMACS by whatever is needed to call your copy of EMACS.EXE)
- To edit file xxx, type C:\AM\EMACS xxx
- If xxx is omitted, AAEMACS shows a menu of all files in the current directory.
- If xxx is a directory, AAEMACS shows a menu of all files in that directory.
- -------------------------------------------------------------------------------
- [Setting up a quick way to call AAEMACS]
- On your system macro directory create a file \DOS\EM.BAT containing this line:-
- %AAEMACS%\EMACS %1 %2 %3 %4 %5 %6 %7 %8
- (And set AAEMACS in your AUTOEXEC.BAT as above.) Then:-
- Typing EM will enter AAEMACS with menu of files in current directory.
- Typing EM xxx will enter AAEMACS to edit the file xxx.
- -------------------------------------------------------------------------------
- (Typing a printable key by itself always inserts or overlays that character.)
- Short information about each keybinding is in file HELP .
- Full information about each subroutine and keybinding is in file HELP.BIG .
- Typing ctrl-_ gets help according to what key you type next:-
- ? this information
- a all lines in file HELP which contain a specified string
- d help about use of special keys in directory menus
- i help about use of special keys in incremental search
- L explanation of symbols used in help information
- l menu to call any one subroutine or get long help about it
- m help about magic characters
- o help about allowed operator uses in macros
- r help about the replace commands
- s help about use of alt- and special keys when inputting a string argument
- (Any other keysequence gets one-line help about that keysequence)
- One-line help output overwrites the mode line. The next keystroke is treated as
- a normal AAEMACS command and also refreshes the mode line.
- Other help output overwrites the screen display. Afterwards: ctrl-_ gets more
- help, any other character merely exits from `help'
- -------------------------------------------------------------------------------
- Effect of alt- and special keys in incremental search:-
- insert look again for this same string
- delete cancel effect of typing last displayed character
- alt_end abort search
- pagedown exit from search
- alt_ret look for CR stored as byte (not as bit) in AAEMACS's line image
- ret or ctrl-J or ctrl-M look for end-of-line
- (NB. The incremental search string can't be > 64 chars long)
- -------------------------------------------------------------------------------
- Effect of replies to `shall I replace here?' in replace:-
- space yes and look for the next replacing or left mouse button
- N or n no and look for the next replacing or middle or right mouse button
- . yes and exit
- alt_end no and exit
- end no and exit and leave the cursor here
- -------------------------------------------------------------------------------
- Special keys as used when inputting string arguments:-
- printing & control chars & space & newline go into the string argument
- alt-B then keysequence bound to buffer, inserts that buffer's name
- alt-C inserts the current buffer's name
- alt-K then keysequence: inserts that keysequence's name
- alt-R in 2nd arg of replace commands, insert 1st arg just entered
- alt-Y insert last kill
- delete delete this character (at end of string, previous character)
- alt_delete delete previous character
- left-arrow go left one character
- right-arrow go right one character
- home go to start of string
- end go to end of string. If first keystroke, do not lose old string
- alt_end abort the command that asked for this string argument
- ctrl_tab menu to input a character
- F1 change char from normal (cyan) to magic (yellow) or vice-versa
- F2 ditto but previous character (usually the character just typed)
- F3 start or stop typing chars as magic
- F4 get menu of these options
- pagedown accept string as it is
- alt_ret put a ctrl-M (CR) (carriage-return) into the string as a byte
- ret or ctrlJ or ctrlM put a ctrl-J (LF) (end-of-line) into the string
- -------------------------------------------------------------------------------
- Effect of alt- and special keys in directory-menus:-
- up-arrow move pointer up one entry in menu
- down-arrow move pointer down one entry in menu
- pageup move pointer up a screenful in menu
- pagedown move pointer down a screenful in menu
- insert choose new file (you will be asked for its name)
- ctrlinsert create new directory (you will be asked for its name)
- delete delete this PC file or directory (if directory, must be empty)
- home go to parent directory
- alt-K copy this directory to kill ring (with alt-O & with ctrl-X ctrl-F)
- ctrl_K copy this file's full pathname into a kill
- alt-R rename file (not buffer)
- alt-del drop this file's buffer, if it has one
- ctrl-N sort by name
- ctrl-S sort by size
- ctrl-D sort by date
- ctrl-X don't sort
- alt_end abort
- return choose this file or left mouse button
- F1 get submenu of these commands or right mouse button
- -------------------------------------------------------------------------------
- Effect of magic characters (which show as bright yellow) in searching:-
- . any one character except LF
- , any one letter or number or _
- space one or more spaces and/or tabs (Note how magic space is shown)
- tab one or more spaces and/or tabs and/or LF's
- | separates alternatives
- [ ] start & end of a set of alternatives
- # any one character not a letter or number or `_'
- \ beginning or end of file
- / LF or beginning or end of file
- { } set start & end of `string found' (default = all matched chars)
- lowercase letter uppercase or lowercase of that letter
- = the rest of the current line (not any LF at its end)
- Magic search is quicker if the first character in the search string is not magic
- -------------------------------------------------------------------------------
- Note: When AAEMACS writes a buffer to an existing file, it overwrites the file
- at once. It does not `create a new file, then delete the old file'. Therefore:-
- (a) IMPORTANT: Breaking in (e.g. by typing ctrl-C) during writing a file loses
- both old and new forms of the file. Always keep backup copies of files!
- (b) Unlike in some emacses, there does not have to be enough spare disk space
- for the old and new forms of the file to exist at the same time. But if the
- new version is longer than the old version and thus overfills the disk, you
- have lost the old version and not got all the new version. Keep backups!
- (c) The file's directory's entries stay in the same order.
- (d) AAEMACS does not automatically save old versions of files.
- But you should separately keep your own security copies of files anyway,
- in case your computer goes wrong or gets a virus or whatever.
-
- AAEMACS uses colours thus:-
- white ordinary buffer display
- red mostly for fault remarks
- magenta background matter just yanked or moved; matter just found by search
- cyan information; matter being input that a subroutine wanted
- yellow magic chars in matter being input that a subr wanted
- orange menus etc that overlay the screen display
- red arrowheads (in fold-long-lines mode) here this line is folded
- (ascii 17 & 16) (otherwise) here this line goes off the screen
-
- When replying (in cyan) to a subroutine question:-
- At the start the reply buffer contains whatever was in it before (perhaps with
- trailing spaces: beware: typing `end' key will show where any trailing spaces
- finish); and this matter becomes the reply if the reply is terminated at once.
- The reply buffer is emptied when the first key is pressed as part of the current
- reply, unless that key is `end'. Magic characters show as bright yellow.
- If a filename is wanted, inputting an empty reply gets a menu of the buffers
- (when in that menu, the delete key removes an unwanted buffer (not its file)),
- and inputting an `=' by itself means "the buffer that the cursor is in".
- For more information, type ctrl-_ then `s' in AAEMACS
- Attempt to access a directory as if it was a file, gets a menu of all the
- files in that directory. In that menu, at the left ends of the lines, `o' means
- that that file has a buffer, and `*' that that file has a buffer which has been
- changed since last time it was read or written. It does not show buffers that
- have no file of the same name.
- -------------------------------------------------------------------------------
- [MODES]
- The subroutine `modemenu' (bound to altM) can select between these modes:-
- -tab: shown as one char / obeyed (tab positions every 8 chars) / both
- -going off end of line: goes to next line / appends spaces to line
- -typed char: inserted / overlays, cursor moves / overlays, cursor stays still
- -auto newline on typing long text lines?: yes / no
- -in search, ignore case of letters?: yes / no
- -line too long for screen: show the columns round the cursor / fold long lines
- -skip nonword chars after skipping word?: forwards / backwards / neither / both
- Each buffer's modes are stored separately.
- -------------------------------------------------------------------------------
- [CARRIAGE-RETURN AND LINEFEED (CR and LF) (ctrl-M and ctrl-J)]
- These complications are because: the usual end-of-line key (RET) returns CR
- not LF; PCs store text end-of-line as CR LF; most people want to treat CR LF as
- one entity `end of line' and not to see either shown visibly at each line end.
- (But ctrl-RET returns LF.)
- Lines are assumed to end in LF or CR LF. This CR and LF are not in AAEMACS's
- line images as characters; absence of this CR is shown by setting a bit. On my
- PC CR shows as a single music note, and LF as a slab with a circle on. (Double
- music note is ctrl-N.) In text on the screen the LF is only shown if the line's
- `no CR' bit is set. Else the final CR is shown in these cases:-
- if the line ends in space or tab or ascii-0 or ascii-255, to show them;
- if the line is empty, to show trailing empty lines;
- if the end-of-line is the beginning or end of a coloured section of text;
- if the line ends in another CR;
- sometimes if the line has just been edited.
- If both CR and LF are displayed, that CR is in AAEMACS as a character and that
- line has a `no CR' bit. This arises from separate CR and LF coming together.
- In cyan replies typed to questions asked by keystroke subroutines, end-of-line
- is shown as LF, which in ordinary searching matches any end-of-line and ignores
- the `no CR' bit.
- `ctrlQ ctrlM' or `ctrlQ ret' inserts ctrlM (CR) by itself.
- `ctrlQ ctrlL' inserts LF without CR (i.e. new line with the `no CR' bit set).
- `alt J' sets the `CR' bit at all ends-of-lines in the region.
- `esc J' clears the `CR' bit at all ends-of-lines in the region.
- AAEMACS displays the end of a file as if there was an extra end-of-line there;
- but AAEMACS search commands will not find that extra end-of-line.
- AAEMACS does not supply a missing CR or LF at end of file on writing to file.
- Note that (at least with PC Gnu C) the C `\n' == 10 (LF) and not 13 (CR).
- Search runs quicker if the first character in the search string is LF
- -------------------------------------------------------------------------------
- [SPELLCHECKER]
- AAEMACS has a spelling checker. Its dictionary file is directly readable; I am
- not responsible for the results of any attempt at editing it yourself. Words
- found during scanning can be written to a space called the appendix, which is
- also used for work checking. It is controlled by the subroutines `checkspelling'
- (bound to alt-I), `getappendix', `putappendix', `emptyappendix', which see in
- HELP.BIG . Its dictionary is made more compact by noting how to form derivatives
- from each root word rather than storing every derivative separately. To merge
- `putappendix''s output into an (already sorted) dictionary, use `mergefile'.
- -------------------------------------------------------------------------------
- [MOUSE]
- AAEMACS uses the mouse, if the PC's mouse driver has already been loaded.
- Pressing the mouse buttons, releasing the mouse buttons, and moving the mouse,
- are treated logically as 7 extra keyboard special keys. Note:-
- (1) Some mouse drivers ignore the middle mouse button.
- (2) Some mouse drivers think that the right button of a 2-button mouse is the
- middle button.
- (3) In all predefined AAEMACS mouse commands the middle button does the same
- as the right button.
- (4) In AAEMACS a double-click is two clicks: there is no time limit.
- (5) Warning: some mouse drivers misbehave in screen text modes other than the
- usual 80*25 characters. This fault is in the PC's mouse driver, not in AAEMACS.
- If abort-to-DOS occurs in the mouse driver in AAEMACS, it leaves the PC's stack
- funny, and you must reboot to clear the condition.
- AAEMACS uses the mouse in:-
- - As a command in ordinary mode:-
- - Right button (or middle button) gets the green menu of commands.
- - Left button gets various special commands: see below.
- - Combination commands such as `esc rightbutton' are possible.
- - Directory menu: left button selects a menu entry; right button gets a cyan
- submenu (in it, left button selects, right button backs out) of the main
- directory menu's special commands.
- Mousing here will only go to the first 2048 entries in each directory.
- - Menu of buffers: left button selects; right button asks for a filename which
- is not in the list.
- - The green menu of commands: left button selects, right button backs out;
- ctrl-underline, or ctrl-leftbutton, or clicking left and another button
- at once, gets help for that command (unless mouse is on a submenu!) (any key
- or button or moving the mouse returns to menu); left button means the same
- as Return when the green menu asks for a called command's numeric argument.
- - The menu of the 256 PC characters: left button selects, right button exits
- without selecting.
- - `Literal character' (bound to ctrl-Q): right button gets menu of characters.
- - Asking for a file name: any button as first keystroke gets directory menu.
- - The menu of buffer modes: left button or Return rotates each line.
- - Asking for a string: moving the mouse moves the cursor; if it was wanting a
- filename, left button before you type anything gets a menu of filenames.
- - In yes/no questions: moves cursor;
- left button = whichever alternative the cursor is on, right button = NO.
-
- Clicking the left button in ordinary mode gets into `mousing mode', in which:-
- (1) `m' appears at the right end of the info line.
- (2) The mouse can only reach the first 2048 characters in each line.
- (3) The mouse can't move more than 1024 lines up or down without a key or
- button being pressed.
- (4) Moving the mouse about moves the cursor.
- (5) Clicking the left button exits to ordinary mode.
- (6) On dragging the left button, releasing it sets that buffer's mark 1 (top
- of stack of marks) to where the cursor was when the left button was
- pressed, and that buffer's mark 2 to where the cursor is now. From mark 1
- to mark 2 is the `mousing region'. Dragging is treated as clicking here if
- the left button is released at the same character where it was pressed.
- (7) Clicking the right button gets into a small menu where:-
- - The mousing region shows magenta.
- - `M' moves the mousing region to where the cursor is.
- - `C' copies the mousing region to where the cursor is.
- - `D' deletes the mousing region.
- - `E' exits from the small menu and does nothing.
- - Clicking the right button again gets the green menu of commands.
- (8) Mouse operations may not be recorded properly by "record a macro".
- (9) When moving the mouse, the cursor will not necessarily be exactly at the
- mouse if the mouse is off the end of a line, or within spaces used to
- represent a tabulate character, or on a red arrowhead showing that a line
- is split. All key and button operations put the mouse at the cursor.
- -------------------------------------------------------------------------------
- [Miscellaneous]
- AAEMACS now has a menu of subroutines, called by alt=
- Please tell me if you get any red fault remarks starting with "BUG:".
- Do <<NOT>> type ctrl-C ahead, as this will cause irretrievable breakin.
- Sorry, but this is a feature of Gnu C that I can't do anything about.
- AAEMACS can store macros on files (macrofiles).
- All 256 characters display as that PC character, e.g. ctrl-A as a smileface.
- (At least on my PC) ascii-0 and ascii-255 display as space: beware.
- (Typing ctrl-Q ctrl-tab gets a menu of all the PC printing characters.)
- In the mode line at the bottom of each buffer window: a `*' at the left end
- means that that buffer has been altered since it was last written to its file; a
- video-reverse (magenta background) block at the right end (only in the current
- buffer's window) means that AAEMACS is waiting for you to press a key.
- The effect of pressing a key sequence which is bound to a buffer:-
- arg>0, or no arg: the current window switches to the key's buffer.
- arg=0: a copy of the key's buffer is inserted at the cursor.
- arg<0: current window is split between its current buffer and the key's buffer.
- Two windows can't display the same buffer.
- (This much reduces the thickets of extra programming that bugs can lurk in.)
- `Esc letter' is not necessarily treated the same as alt-letter; but an unbound
- keysequence with `esc letter' is treated as the corresponding alt-letter.
- Uppercase and lowercase are treated the same when typing a key with alt or
- ctrl or after keystrokes such as `esc' and `ctrlX' to complete a key sequence.
- Kill after kill with nothing between, appends to the same kill ring member.
- (But not successive calls of a macro which contains only a kill.)
- The kill ring holds 16 members.
- Incomplete key sequences show in magenta at the bottom of the current window.
- Each buffer's mark stack can hold up to 16 marks.
- Mark 999 = where the cursor was before the last command call, so, after acci-
- dentally pressing `end', `esc 999 ctrlX ctrlX' goes back where you were before.
- The first line and the first character in a line are the 1st, not the 0th.
- AAEMACS uses Gnu C's virtual store paging, so it can edit very big files.
- ALT with the numbers above QWERTYUIOP input an argument as stated in HELP etc.
- ALT with the right keypad numbers send the character (but not ascii-0) whose
- ascii value is entered modulo 256 as decimal thus, e.g. ALT-2 ALT-6 is treated
- as ctrl-B ctrl-F if ALT is released between the 2 and the 6, else as ctrl-Z.
- This is a PC DOS feature and not part of AAEMACS.
- A buffer's name is the full form (with drive & directory) of its file's name.
- A buffer whose name is not a legal PC filename, has no file.
- End of sentence is `.' or `!' or `?' with EOL or space or tab after.
- A line empty or starting with space or tab is treated as start of paragraph.
- The keystrokes `esc' and `ctrl-X' start 2-keystroke sequences.
- The subroutines in macrofiles can only take strings and numbers as arguments.
- In `ctrlX =' output, e.g. `17(24)' means `this line has 17 characters which
- are here displayed as 24 characters due to obeying tabs.'.
- AAEMACS does not stop reading on finding ctrl-Z in a file that it is reading.
- The file is read as binary; then ctrl-J (LF) is treated as end-of-line, and one
- final ctrl-M (CR) (if present) in each line is treated specially as above.
- The right end character of the mode line of the current window counterchanges
- its colors when AAEMACS is waiting for the user to type a character.
- The subroutine cccmode goes into or out of a mode where the character at the
- cursor is counterchanged, as laptops' cursors are sometimes hard to see.
- When inputting a numeric argument with esc or alt and digits:-
- Do not use alt with the right keypad digits, for the reason stated hereinabove.
- The first `digit' can be the minus: that specifies negative argument.
- esc minus or alt-minus with no digits means -1, not error as with some emacses;
- also e.g. `esc minus 2' or `alt-minus alt-2' produces -2 correctly even though
- a cyan `-1' appears before typing the `2'.
- If DOS says "Abort, Retry, Fail?" when AAEMACS tries to access a floppy or a
- nonexistent drive, if you can't correct the fault, press `F', not `A'. AAEMACS
- will continue; ctrl-L will repair any remaining damage to the screen display.
- When recording a macro:
- Commands that cause failure messages are not recorded.
- Incremental search is recorded as ordinary search.
- If EMACS.EXE fails with "can't open file c:\gcctemp\----" or similar, call
- the DOS command `MAKEDIR C:\GCCTEMP' (or whatever) and call EMACS.EXE again.
- The file EM.INF may be some help in understanding the source form.
- In search-and-replace, and in calling a macro N times, ctrl-alt-shift (using
- the left shift key) pressed all at once terminates repetition.
- FINDMODE.EXE:-
- If called with no argument, says what screen modes your computer is in.
- If called with no argument, lists what screen modes your computer has (in hex)
- If called with a hexadecimal number as argument, sets the screen to that mode
- if possible.
- -------------------------------------------------------------------------------
- [Codes returned by my PC's keyboard for the alt and special keys]
- hex dec key hex dec key hex dec key
- 0x01 1 alt esc 0x03 3 ctrl 2 0x0e 14* alt bksp
- 0x0f 15 shift tab 0x10 16* alt q 0x11 17* alt w
- 0x12 18* alt e 0x13 19* alt r 0x14 20* alt t
- 0x15 21* alt y 0x16 22* alt u 0x17 23* alt i
- 0x18 24* alt o 0x19 25* alt p 0x1a 26 alt [
- 0x1b 27 alt ] 0x1c 28 alt ret 0x1e 30* alt a
- 0x1f 31* alt s 0x20 32* alt d 0x21 33* alt f
- 0x22 34* alt g 0x23 35* alt h 0x24 36* alt j
- 0x25 37* alt k 0x26 38* alt l 0x27 39 alt ;
- 0x28 40 alt ' 0x29 41 alt ` 0x2b 43 alt #
- 0x2c 44* alt z 0x2d 45* alt x 0x2e 46* alt c
- 0x2f 47* alt v 0x30 48* alt b 0x31 49* alt n
- 0x32 50* alt m 0x33 51 alt , 0x34 52 alt .
- 0x35 53 alt / 0x37 55 alt pad * 0x3b 59 f1
- 0x3c 60 f2 0x3d 61 f3 0x3e 62 f4
- 0x3f 63 f5 0x40 64 f6 0x41 65 f7
- 0x42 66 f8 0x43 67 f9 0x44 68 f10
- 0x47 71* home 0x48 72* uparrow 0x49 73* page-up
- 0x4a 74 alt pad - 0x4b 75* leftarrow 0x4c 76 pad5
- 0x4d 77* rightarrow 0x4e 78 alt pad + 0x4f 79* end
- 0x50 80* downarrow 0x51 81* page-down 0x52 82* insert
- 0x53 83* delete 0x54 84 shift f1 0x55 85 shift f2
- 0x56 86 shift f3 0x57 87 shift f4 0x58 88 shift f5
- 0x59 89 shift f6 0x5a 90 shift f7 0x5b 91 shift f8
- 0x5c 92 shift f9 0x5d 93 shift f10 0x5e 94 ctrl f1
- 0x5f 95 ctrl f2 0x60 96 ctrl f3 0x61 97 ctrl f4
- 0x62 98 ctrl f5 0x63 99 ctrl f6 0x64 100 ctrl f7
- 0x65 101 ctrl f8 0x66 102 ctrl f9 0x67 103 ctrl f10
- 0x68 104 alt f1 0x69 105 alt f2 0x6a 106 alt f3
- 0x6b 107 alt f4 0x6c 108 alt f5 0x6d 109 alt f6
- 0x6e 110 alt f7 0x6f 111 alt f8 0x70 112 alt f9
- 0x71 113 alt f10 0x73 115 ctrl leftarrow 0x74 116 ctrl rightarrow
- 0x75 117 ctrl end 0x76 118 ctrl page-down 0x77 119 ctrl home
- 0x78 120* alt 1 0x79 121* alt 2 0x7a 122* alt 3
- 0x7b 123* alt 4 0x7c 124* alt 5 0x7d 125* alt 6
- 0x7e 126* alt 7 0x7f 127* alt 8 0x80 128* alt 9
- 0x81 129* alt 0 0x82 130 alt - 0x83 131 alt =
- 0x84 132 ctrl page-up 0x85 133 f11 0x86 134 f12
- 0x87 135 shift f11 0x88 136 shift f12 0x89 137 ctrl f11
- 0x8a 138 ctrl f12 0x8b 139 alt f11 0x8c 140 alt f12
- 0x8d 141 ctrl uparrow 0x8e 142 ctrl pad - 0x8f 143 ctrl pad5
- 0x90 144 ctrl pad + 0x91 145 ctrl downarrow 0x92 146 ctrl insert
- 0x93 147 ctrl delete 0x94 148 ctrl tab 0x95 149 ctrl pad /
- 0x96 150 ctrl pad * 0x97 151* alt home 0x98 152* alt uparrow
- 0x99 153 alt page-up 0x9b 155* alt leftarrow 0x9d 157* alt rightarrow
- 0x9f 159* alt end 0xa0 160* alt downarrow 0xa1 161 alt page-down
- 0xa2 162* alt insert 0xa3 163* alt delete 0xa4 164 alt pad /
- 0xa5 165 alt tab
- Those marked `*' are bound to subroutines as AAEMACS default. Your PC must
- accept them, and must return the same input codes for them as in this list.
- `Pad' means the right keypad. `Pad5' means the key in the middle of the right
- keypad which in numlock mode produces `5'.
- --------------------------------------------------------------------------------
- If you must alter the source form, do not auto-coerce a `subr*' to a `val'
- with Gnu C, as the result's `val.n' will be not `_subr' but `_buffer'. This is
- probably due to a stray gremlin in Gnu C. Use the function `kf()' to convert a
- `subr*' to a `val'.
- --------------------------------------------------------------------------------
- [Windows]
- AAEMACS can now run under Windows.
- (0) File EMACS.ICO is an icon (a diver using a blowtorch).
- (1) If a Novell net access program has been activated in that PC since it was
- booted last, when calling AAEMACS (or other Gnu C programs) from Windows:-
- (a) The `call DOS from AAEMACS' option does not work.
- (b) On entry AAEMACS will always ask you where its home directory is.
- The cause is likeliest a bug in Gnu C, or clashing PC interrupts somewhere.
- (2) Windows always intercepts the Alt-Return keypress: it switches the AAEMACS
- Windows task between full-screen mode and in-a-window mode.
- (3) Windows always intercepts the Alt-Tab keypress: it reduces the AAEMACS
- task to an icon on the `desktop' (= `minimizes' it) and goes back to Windows. Or
- the reverse, if the AAEMACS task was minimized before. See your Windows manual.
- (4) If you run AAEMACS in a window (rather than in full-screen mode), Windows
- intercepts and obeys all mouse events, and AAEMACS ignores them.
- (5) To set up a Windows icon position for AAEMACS:-
- (a) In the desired window, duplicate one of the existing icons by dragging
- it with the mouse while holding the Control key down. Keep the copy selected.
- (b) In the top left corner of the Program Manager window, click `File'.
- (c) In the resulting new window, click `Properties'.
- (d) In the resulting `Program Item Properties' window:-
- click `Description' and change it to `AAEMACS',
- click `Command Line' and change it to the full pathname of your copy of
- file EMACS.EXE,
- click `Working Directory' and change it to your hard disk's root
- directory,
- click `Change Icon'.
- (e) In the resulting `Change Icon' window, click the `File name' line and
- change it to the full pathname of your copy of file EMACS.ICO,
- (f) Click `OK' in each of these new windows in turn, newest first.
-