home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
forth
/
compiler
/
fpc
/
doc
/
fpcnotes.txt
< prev
next >
Wrap
Text File
|
1991-04-23
|
67KB
|
1,338 lines
FPCNOTES.TXT This file documents changes in F-PC, Version 2.25 => 3.55
°Whats-New
SUMMARY of some new things (item number):
DELETED WORDS: XFDOS (26), TYPESEG (83) <EXEC> (122)
NEW WORDS: FPATH FPATH+ .FPATH (4), DELIMITER (5), MCROWS (9),
CLOSEALL (11), { } (19) (20), VIEWFROM (34), TONE (54),
+PLACE (107), 14 more words (83), FPCVER# (109),
LEAVEPROMPTON LEAVEPROMPTOFF (111),
OTHER.CHECK MLOAD (115), <EMMEXEC> FPC>EMM (122),
UBETWEEN -SKIP (127),
BLINKON, BLINKOFF, BLINK!, PAL!, BORDER@ and BORDER! (131),
LISTSET (135)
NEW FEATURES: Hypertext (24) (31) (36) (42) (43)
Mouse (25) (40) (41) (129)
Pull-down stack (15)
Rotate thru files (44) (45) (46) (47)
Scroll PgUp, PgDn (51)
Escape sequences in ." (57)
Help in editor (16) (23) (33)
Visual vocabulary stack (86)
Load marked lines from editor (115)
New memory management (116)
Bug fixes in multi-tasking (119)
Expanded memory support (122)
Swap to EMM, DISK support for Shell (124)
Watch point support in debugger (132)
1. Fixed bug in SEQDOWN.
2. *** Increased maximum nest of file loads from 4 to 7.
3. Discarded this change.
4. *** Added multi directory search to OPEN. F-PC now has a path list
like DOS. The pathlist is set by a configuration file that is
loaded automatically at F-PC execution time. The words to do
this wonderful stuff are as follows:
FPATH <path-string> <enter> \ sets the Forth PATH
FPATH+ <path-string> <enter> \ adds more to the Forth PATH
.FPATH <enter> \ displays the Forth PATH
The words $FILE, $FLOAD, FILE and FLOAD now search the Forth
PATH while trying to open and or load the file specified.
The search order is controled by the order path specs are placed
in the path string. In the following example:
FPATH E:\FPC\SRC;E:\FPC\HLP;E:\FPC\TOOLS <enter>
Here the E:\FPC\SRC directory is searched before the E:\FPC\HLP
directory which in turn is searched before the E:\FPC\TOOLS
directory. The Forth PATH may be up to 132 characters long.
5. Added a word DELIMITER, which is a VALUE that holds the
delimiter character used by LINEREAD as the end of a line to be
read. DELIMITER defaults to $0A, a linefeed. It is useful at
times to be able to read lines from a file that does not
contain linefeeds, but only carriage returns. Changing
DELIMITER to $0D will allow this. Also useful for "ASCIIZ" files
delimited by a zero -- change DELIMITER to $0.
6. The print menu bug has been fixed; it caused the cursor to
disappear after re-directing printing to a file.
7. Fixed an undocumented bug in SEDSHELL.SEQ. For some reason
unknown to me I had changed version 2.25 so it could not
recover ram while editing, when it wanted to spawn a DOS shell.
Thus it was not possible to perform any but the most trivial
DOS operations when spawning a shell from the editor. This has
been fixed. The editor recovers all of the ram it can while
leaving enough room in memory for the file currently being
edited, then spawns the DOS shell. The space is recovered when
the shell terminates.
8. Fixed a bug in the assembler that was found by Bill Muench. It
seems there was code in the assembler to allow a register
indirect operation without having to specify the index value if
the offset was 0. Unfortunately the way the assembler was
checking for the stack depth change, didn't work, and you
always had to specify the index for the assembler to work. The
usless code to test the stack depth has been removed. The
local label array which defaults to a size of 32 labels, has
been modified to allow adjusting the number of local labels at
runtime. Normally you would not need to do this, but it seems
Robert Smith needed HUNDREDS OF LABELS for some reason. If you
create a new array of B/LLAB times the number of labels you
need bytes, and plug the address of the array into the VALUE
LLAB[], then change the VALUE MAX-LLABS to the new maximum, you
can use however many local labels you might need.
9. Added a VALUE to VIDEO.SEQ called MCROWS. If you have problems
with your cursor disappearing on an EGA or other video card,
you can change the value of MCROWS in the F-PC.CFG file to a
smaller number, and thus get your cursor to re-appear. MCROWS
stands for "Maximum Cursor ROWS", and is used at boot time to
limit the number of cursor rows used when changing the cursor
size in the word BIG-CURSOR.
10. Changed the default for headerless words to FALSE. F-PC will
normally be shipped with all headers present; the EXTEND.BAT
word will extend the system will all headers present. The
EXTENDA.BAT file has been deleted, and has been replaced with
EXTENDH.BAT for headerless extension. I and several people I
have talked to have run into problems because many words in
F-PC 2.25 were headerless, so the default now is to have the
headerless mechanism present, but turned off.
11. Added CLOSEALL, to make it easy to close all open files. Also
modified the too many files open message to suggest using
CLOSEALL to remedy the problem. Also modified SEQDOWN to clip
the VALUE SEQHANDLE to be within the valid range of the handle
stack. Some programs may change SEQHANDLE to point to some
other handle; this protects us from crashing if this has been
done and not restored.
12. Fixed minor bug in >VIEWFILE, that was preventing view from
working on the names of files in the FILES directory. Also
adjusted 1FILE and FILES_SET so they use HERE+1000 rather than
HERE+500, so they would not conflict spacewise with WORDS.
Added a new utility called ID, that works like WORDS, but
displays the first line of the source file for each matching
word. The line is preceeded by the word name so you can easily
sort the file in the editor.
13. *** ****** BUG FIX, for possible SERIOUS error condition!! ******
In the routine that writes edited text to disk, there is a
routine called FLUSHWRITE. This word is supposed to return a
boolean flag FALSE if the write was successful, but in the
release version of F-PC, it would only return a flag if there
was text that needed to be written. If the amount of text to be
written happened to have been divisible by the write buffer
size, then FLUSHWRITE would not have had any text to write, and
would not have returned a flag, causing unpredictable results.
Usually a crash back to DOS, but sometimes a system HANG.
FORTUNATELY the data being edited was secure, having already
been written to disk and the file closed, and the bug would
ONLY show it self in one (1) out of a thousand edits, since the
write buffer size was 1k. FIXED This bug was also affecting
the Z editor.
14. Fixed bug in LINEEDITOR: it was pulling in text from the right
when you press backspace even when in OVERTYPE mode mode. It
should have simply been erasing the character to the left of
the cursor and left the line length alone.
15. Added Window type Pulldown stack: try pressing BOTH SHIFT KEYS
together when there is something on the stack. See the source
in the file WINSTACK.SEQ.
16. Added Word HELP within the editor: position the cursor on a
word while editing a file, and press Alt-H. A HELP and VIEW
window will pop up, giving you information about the word the
cursor is positoned on. You can use the arrow keys and PgUp,
PgDn to move through the source file. Pressing Enter copies the
top visible source file line to the Cut/Copy/Paste file and
moves down to the next source line. Alt-V can then be used to
insert the lines that were copied back into the file you are
editing. ESC returns to the edit. VERY HANDY at those times
when you know what word to use, but can't remember how it is
used exactly.
17. *** Corrected the sensitivity of F-PC to think a file terminated
with a ^Z was an error. It now scans the file end on loading
for ^Z's, and changes them to blanks. Also if any line of a
file is not terminated with a CRLF, F-PC won't just stuff two
blanks at the line end anyway.
18. Screen wouldn't clear in SLOW mode. Fixed by adding a BIOS call
to clear the screen when DARK was used in SLOW mode rather than
using the fill memory routine in both SLOW and FAST.
19. Added Glen Haydon's { } tool to F-PC, allowing a file to
contain comments with imbeded source rather than the other way
around. See the file BRACES.SEQ for more information.
20. Adjusted the file load mechanism so the contents of the deferred
word RUN is saved before and restored after the load of a file.
This allows Glen's { } tool to not terminate a file with { and
still function properly.
21. *** 03/27/89 ** THIS CHANGE REVERSED IN 102 **
Changed the name of F-PC to F-TZ to make Dr. Ting happy. He
thinks there will be confusion if I send out any versions of
F-PC that are not exactly version 2.25.
22. Removed the user tools from the system disk. From now on these
will be an extra item available on a seperate disk.
23. Modified word help in the editor. It now consists of three
commands, Alt-E, Alt-B, and Alt-H, used as follows:
Alt-E Nest and EDIT the file containing the word
under the cursor.
Alt-B Nest and BROWSE the file containing the word
under the cursor. No changes can be made.
Alt-H Nest and BROWSE the file containing the HELP
for the word under the cursor. No changes can
be made.
These EDITOR commands are complemented with new commands at the
FORTH command level:
REPAIR <name> Starts Editing the file containing
E <name> <name>.
BROWSE <name> Starts browsing/viewing a file
VIEW <name> containing <name>.
B <name>
V <name>
HELP <name> Starts browsing the help file for
H <name> <name>.
When in BROWSE mode, no changes can be made to the file, but
you can still copy sections out to the TEMP.SEQ file for
insertion into the file you were editing.
The above commands used in the editor actually save the
current edit context, and nest into a new edit. A "+1" to "+5"
will appear in the upper right hand corner of the screen to
help you remember how deeply you are nested. When you quit an
edit, you will pop back one level to the previous file you were
editing, with the cursor in the same place where you left off.
Changes to a file are automatically saved when you nest edits.
24. *** In line with the previous changes, I have added a sort of Hyper
text mechanism. Thanks to George Hawkins for the inspiration for
this feature. A word \HYPER has been added that is used to start a
hyper text file. Within the file is ordinary text, as well as a
marker to signify a destination for a hyper text link. The marker
is then placed at the source where you want a branch to occur.
While this may not be a clear explanation, you can look at the
editor help file for a good example of how these linkages work.
Just press F1 whenever you are using the SED editor.
These linkages can be setup in any file, and are made available
when the hyper text file is compiled on F-PC. Now you don't have
to be concerned about space, as only the markers take up room in
the dictionary, and then only for the header and NOOP CFA. All
hyper words are placed in the HYPER| vocabulary which is always
searched first when a browse (Alt-B) command is performed.
25. *** 04/10/89
Completed first pass a mouse support for F-PC. The mouse can now be
used for many things. At the Forth command level, you can use the
mouse and left button to position the cursor on the current command
line being edited. The right button is the same as ESC, and
enables and disables the menubar. When the menu is enabled, you
can use the left button to pull down menus like any other program
with pull down menus and mouse support (press and drag).
The mouse is also available while in the editor for cursor
position adjustments, etc.
Mouse support costs about 3k of memory, and is optional. If you
don't want mouse support, just don't load the files MOUSE.SEQ, and
MOUSEY.SEQ.
You can add mouse support to your programs by writing a button
driver. Look at the file MOUSEY.SEQ for some examples of button
drivers. A button driver is required for each "MODE" in your
program, typically involving a test for where the mouse is on the
screen, and then the performance of a function. The mouse button
can also return keystrokes as if they were typed on the keyboard.
26. 04/11/89
Deleted the word XFDOS from KERNEL2.SEQ. It was only used by
MEMSET, which has been replaced with the code word SETBLOCK which
was being loaded at extend time, but has been moved into
KERNEL2.SEQ. For those of you using XFDOS, you will have to copy
the XFDOS definition out of your existing systems kernel file and
load the code definition on top of F-PC.
27. Un-wound several CODE words that were calling sections of other
CODE words. This costs a few more bytes, but facilitates testing I
am doing.
28. Modified Meta Compiler to allow local labels to work. It seems the
new local label mechanism was not compatible with the meta
compiler, and has thus been modified to make it compatible. This
also resulted in some small changes to PASM.SEQ.
29. 04/12/89
Found and stomped on an insidious bug in %FIND. The instruction
sequence:
MOV PRIOR # 0
should read
MOV PRIOR # 0 WORD
Under VERY RARE conditions (i.e. a vocabulary on a 256 byte
boundry), %FIND would not be able to find words in a particular
vocabulary. This cost me a WHOLE DAY to find. This bug is also in
all earlier versions of F-PC.
30. *** 04/13/89
Corrected another condition that has been present since the
beginning of my sequential file editor design. Horizontal
scrolling is now being done a single character at a time rather
than the half screen scroll I used to use. The half screen scroll
was intended to minimize whole screen re-displays, but since I can
re-display the entire screen 10 times a second on an XT class
machine, there is no real reason for the half screen scroll. This
new way of scrolling is much better. Mouse support has also been
added for horizontal scrolling. Keyboard support for horizontal
scrolling is done with SHIFT SPACE to scroll RIGHT, and ALT SPACE
to scroll LEFT. This is as yet not documented any other place.
31. 04/18/89
I have reworked the hypertext mechanism to remove the link
destinations from the dictionary. I got up to about 80 links, and
they were consuming about 2k of dictionary space. Since I want to
be able to handle many more (hundreds of) links, the dictionary
overhead seemed excessive. I moved the links into a file called
HYPER.NDX, which is compiled by the batch file MAKINDEX.BAT. The
index file consists of link names followed by line number offset
into the target file. The filenames are included in the same
file, as the first line of a group of links for that file. The
filename is flagged by a graphic character 249 as the first
character in the line. As you would expect there is an increase
in the time required to find a link when the word being found is
in the index file. The tests I have done indicate I can find a
single link in a 1000 link file in less than 1/2 second on an 8
MHz AT. On an XT class machine or from floppy, it will take
longer.
32. I have finally standardized on one way of using the variable
LOADLINE. It used to be used to hold either a line number, or the
offset into a file, depending on where it was being used. This
caused some problems, and has been changed. LOADLINE always
contains the line number of the most recent line read from
LINEREAD, or the line number of the most recent edit line when you
leave the editor.
33. *** The meanings of some of the F83 words have been modified. The
Editor/Browser provides two basic modes, Edit-Change, and
View-N0-Change. A number of the familear F83 words can be used to
invoke either the editor or the browser depending on the word used.
Here is a list of words and their function:
VIEW <name> Enter browser on definition <name>.
Aliases for VIEW are: BROWSE V B L
ED <name> Enter the editor on definition <name>.
Alias for ED is: E
HELP <name> Enter browser on help for <name>.
Alias for HELP is: H
n1 EDIT Enter editor on current file at line n1.
n1 LIST Enter browser on current file at line n1.
The F10 key can be used to leave any of the above browse or edit
modes.
34. 04/18/89 Evening
Added VIEWFROM and an alias VF to allow viewing very large files
from a specified starting line number. It is used in the form:
OPEN FPCGLOS.TXT A very large file
300 VIEWFROM <enter>
Skips the first 300 lines of the file and starts reading at line
300. This is useful for examining very large files.
You should of course be carful not to switch to edit mode and
change such a file lest it get written back to the original file
on disk. You can use Alt-W to write the read portion of the file
out to a new filename.
35. 04/22/89
Adjusted KERNEL4.SEQ to save and restore the status of the CONTROL
BREAK flag on entry and exit. F-PC was setting the flag, and
leaving it set when you leave Forth, which of course could confuse
some other programs.
36. *** Adjusted COLD so it won't crash if you execute it again from the
keyboard. Its initialization is only done once, after which it
performs BOOT then QUIT.
37. *** 04/24/89
Much thanks to Robert Berkey, who has lately been working with
F-PC. He gave me a multi-page list of small bug fixes, cleanups
and optimizations, most of which I have installed. Here is a list
of the effected areas:
Adjusted decompiler SEE to handle the following words
properly:
['] IS CASE OF ENDOF ENDCASE
Changed name of 2+! to D+!.
Added save and restore of BP and SI to BIOS level INT's.
Added CODE optimizations to the following words:
0< 0= 0<> 0> = <> U< U> ?DUP *D
WITHIN BETWEEN DUP>R ?BRANCH -TRAILING
OVER 2DUP 3DUP 2OVER PICK
Added the following new CODE words:
PLUCK RPICK DOENDOF DOENDCASE
VFIND was added to make it easy to search a particular
vocabulary for a word.
Adjusted (KEY) so it can return a null ^@ character.
Fixed bug in FLOOK and all words that use FALLOF.
Fixed bug in printer typing. If you simply typed
"1 PRINTING !" F-PC would seem to go crazy and print
a lot of junk to the printer. This was caused by the
command line editor. It now switches to the old
version of expect if it detects the printer being
turned on.
Again thanks to Bob for the above modifications. They have been
individually installed and tested.
38. 04/26/89
I discovered that KEY? is somewhat slower now that mouse support
has been added. This resulted in a slower search in the editor
because I was checking the keyboard on every line searched. I have
changed it to only check the keyboard once every 128 lines are
searched. This seems to speed the search up to normal again.
39. I discovered that when you were entering a string to do a search
while in the editor, you could press Alt-O and the file selection
box would popup just as if you were at the Forth command level.
This is clearly a bug, and in fact caused the editor to crash back
to Forth when I canceled the selection. The problem stems from
the table of functions assigned to function keys when you are
using the line editor. I resolved the problem by duplicating the
line editor's function key table, and installing the menu alternate
keys only in the table being used by XEXPECT.
40. 04/27/89
Added mouse MARK to the editor. If you position the mouse at an
upper line, press the left button and drag the mouse down, lines
will be shown in reverse video indicating they are marked for a
subsequent cut or copy operation with Alt-X or Alt-C.
41. 04/29/89
Added page up and down to the screen mouse support.
Minor cleanup in the file PRINTING.SEQ adjusted the CUT command to
properly cut all of the lines specified even if it's the last line
in the file. Several other minor fixes associated with this in the
file SEDITOR.SEQ. It is now not possible to write a zero length
file, you will always get at least two characters even if you
delete all of the lines in the file. It seems you used to be able
to delete all lines in a file, causing WRITE.FILE to try to write a
negative size file which translated to an infinitely large file.
FIXED
Added mouse support to the browse prompt box that is shown when you
try to switch to browse mode from edit mode and changes have been
made. (ESC-A-B)
42. 05/01/89 version 3.x12
Added a new menu to the SED editor, called HYPER. It contains all
of the hypertext link and unlink words. It also contains the two
new commands to create source and destination hyper links Alt-F3
for a source link, and Alt-F5 for a destination link. Press ESC-Y
to see the hYper menu.
43. If you print a file while in browse mode, hypertext destination
links will not be printed. They will be blanked as they are shown
on the screen.
44. *** Evening
Added the ability in SED to toggle between the top two files on the
file stack. This is done with Alt-F1. Not as fast as editing two
files in memory since you have to reload a file when you switch,
but it is very convenient and reasonably fast.
45. 05/02/89 morning before work
Enhanced the above mechanism, to rotate through whatever files
have been opened. Again you use Alt-F1, which works very well. I
now also want to add a file pick mechanism to allow selection of
one of the files already opened from a list in a window.
46. Add the file pick mechanism mentioned above, called Flip as
Shift-F1. It pops up a window and allows you to select any one of
the files in the file stack, which is then brought to the top. The
FILE menu has been adjusted to take into account the flip
mechanism: you now can leave all edits with a single command
rather than unlinking to level one first.
47. *** 05/04/89
Robert Smith has completed going through the source and help files
for KERNEL1.SEQ and KERNEL2.SEQ. He has added to and corrected the
comments. Thank you BOB!
Adjusted the decompiler so it will scroll the upper portion of the
screen when it is used by the debugger to keep the area of the
definition visible on the screen. This was VERY difficult to do
and in fact is not yet perfected. It is however functional, and
useful.
The rotate through open files command Alt-F1 now has an oposite
function to rotate backwards through the list. The key combination
is Shift-Alt-F1.
48. *** 05/10/89
Generalized the following list of VALUE operators:
!> =: @> SAVE> SAVE!> RESTORE>
These operators now are smart about their use on USER variables
and deferred words. They will work properly when used on either
normal variables values and deferred words, or their USER
equivalents.
49. *** Went through and documented SAVEREST.SEQ, SAVEREST.HLP,
EQUCOLON.SEQ, EQUCOLON.HLP, KERNEL4.SEQ and KERNEL4.HLP.
50. LARGE SCREEN INFORMATION
I have experimented with the CornerStone full-page display, and it
has some interesting peculiarities. To get it to work with F-PC
in FAST mode, you will have to include the following commands in
your F-PC.CFG file:
$B001 =: VIDEO-SEG
7 =: VMODE-VAR
>MONO
FAST
The video bios for the CornerStone monitor is not well behaved. As
you can see it does not use a standard start of screen address.
51. 05/14/89
Made a very small but useful change to the editor user interface:
the Control PgUp and Control PgDn keys now scroll the screen up
and down respectively like Control W and Control Z. They were
the same as Control Home and Control End which was a useless
duplication.
52. *** 05/17/89 ** THIS CHANGE REVERSED IN Nr. 103 **
Modified DOENDCASE this date to perform a DROP so it does not have
to be done manually. This requires you change ALL of your uses of
this CASE statment to delete the DROPs you now have before ENDCASE,
or YOUR CODE WON'T WORK.
Also installed a warning into ENDCASE for the next few releases to
help make this obvious to the user.
This change to ENDCASE resulted in changes to several files
including the PASM.SEQ file.
53. 05/19/89
Fixed a bug in $>EXT : it was always assuming a three (3) character
extension string was being passed, and if a shorter string was
passed, a garbage character would be appended to the handle.
3
54. *** 05/23/89
Added TONE for sound generation. Made BEEP a deferred word, and
defined NEWBEEP to use TONE to do BEEP. The value BEEPFREQ
controls the frequency of BEEP, and value BEEPDURATION sets the
duration of BEEP in tenths of a second.
TONE takes frequency and duration and can be used to generate all
of the various beeps a PC is expected to generate.
55. Minor cleanup in XEXPECT: it now reacts more as expected when you
use up and down arrow to step through the line list. Also
increased the line stac047epth to twelve (12) lines from six (6).
56. 05/24/89
Fixed bug in PREPEND.PATH. It was removing the specified drive
designator, and was not restoring it under all conditions.
Fixed bug in LINEEDITOR. Some variables were being used on each
invocation, and were preventing LINEDITOR from being re-enterant.
LINEEDITOR is still not re-entrant, but it can be nested if you
clear out its buffer on exit from the nested edit. For my
purposes this is adequate.
57. *** Added another feature! ." now recognizes imbeded escape
sequences. The leadin is "\" as in "C". The functions available
are:
0 Normal display attributes
1 to 8 Attributes 1 through 8
:xx Delay xx tenths of a second
< Save the current cursor position (nonest)
> Restore the previous cursor position (nonest)
@xxyy Move cursor to xx,yy
B Beep the speaker
D Dark (clear screen)
N Newline (CRLF)
R Select Reverse video
Sxx Display xx spaces
T Perform a Tab
\ Display a \ character
` Display a " character
| Display a linefeed character
See the file PERTYPE.SEQ for additional information.
58. *** 05/26/89
modified the way MARK works in the editor. Selecting F3-MARK now
enters a mode where you may move the cursor up and down to select
lines and those lines selected will be shown in reverse video.
Pressing F3 again ends the mark operation, leaving the selected
lines in reverse video until a CUT or COPY operation is done, or F3
is pressed again to clear the mark. This seems much more intuitive
than the way it worked before. Top status line changes to tell you
you are in MARK mode after the first F3 press.
59. 05/27/89
Corrected OK bug per George Hawkins, It should be doing a test for
?FILEOPEN before actually trying to load. It does now. Thank you
George!
60. Implemented MANY of Mike Sperl's kernel enhancements. Many clock
cycles were saved in several places. Thank you!
61. Thank you! Tim Smith for the bug fix in TURNKEY. It may not be the
only bug, but you have to fix them as you find them.
62. *** Fixed limitation in SPACES. It was limited to outputing 132 spaces
before quiting; that limitation has been increased to 32767
spaces. Thank you Zafar Essak!
63. 05/30/89
Re-organized things a bit: moved EDITSET.SEQ to the end of the
editor load, so it can be used to set all of the editor keys.
Removed the FNSET and CTLSET operations from SEDWHELP, HELPLINK,
and HTYPE and moved them into EDITSET where they belong.
EDITSET is now up to date and can be examined to see ALL of the
editor commands.
64. 05/31/89
Added listing capability to the assembler. The HEX addresses and
generated code are displayed at the left of the listed output. The
words to control generation of the listing file are:
/LISTING Enable listing output
/NOLISTING Disable listing output
The listing normally goes to the display, but can be redirected to
the printer with "PRINT", or to the browser with ">B".
65. Adjusted copyline (F5) in the editor to bump the end marked line if
the start markline is equal to the end line. This keeps at least
one marked line visible as long as a mark is set.
66. *** Robert Smith updated the KERNEL3.HLP documentation file. Thank you
Bob.
67. Adjusted all places that were changing the deferred word RUN. They
now save and restore its function rather than just setting it back
to <RUN>.
68. Version 3.X18 06/01/89
0u
69. 06/01/89
Fixed a bug in the LINEDELETE function in the editor. It was
setting the current displayed file length to "2" when you deleted
the last line. This was not correct, but was cosmetic, not
affecting the actual file length.
70. Adjusted >BROWSE to preserve the current BASE and use DECIMAL when
displaying the status box number.
71. Minor optimization in %FIND.
72. Adjusted editor so the values LAST.TEXTLINE and LAST.TEXTCOL are
set only at program startup, and not at editor space allocation
time. This will allow any manual window size adjustments to remain
as they are set, and not switch to full screen after a DOS
command.
73. 06/02/89
Added \TYPE to PERTYPE to allow typing interpreted strings from
CODE space.
74. 06/05/89
Added two new functions to the editor. The normal Control-O open
file function has been extended to allow Shift-Control-O, which
will copy the word under the cursor into the open file buffer
allowing you to easily open the filename under the cursor. The
search function has been enhanced with the addition of Control-F6,
which copies the word under the cursor to the search buffer before
prompting for a string to search for, allowing you to easily search
for another occurance of the word under the cursor.
75. 06/06/89
For those of you that NEED LOTS OF MEMORY, I have added a new file
to ZIMMER.ZIP. It's called EMMHEADS.SEQ, and it will setup F-PC
to use expanded memory for its HEADS. This frees up about 64k of
NORMAL RAM for other things. It is even smart enough to only use
expanded memory for heads if there is expanded memory available.
So far I have not put this in the KERNEL, aren't you glad? It does
cost about 2k in .EXE file size.
76. 06/09/89
Corrected a small bug in TAB expand: it now saves the contents of
the search buffer before setting the search string to a TAB
character. The search buffer is later restored after tab expansion
is complete.
77. 06/16/89
Corrected a bug in %USAVE>. It was not saving the USER variable
properly.
78. 06/19/89
Corrected a bug in COMP. It was restoring ES on the wrong side of
a conditional, such that if you ever passed null length compare
string to COMP, it would set ES to JUNK from the stack, most
likely resulting in a CRASH!! It is amazing I never ran into a
problem with this, but at least it is now fixed.
79. 06/26/89
Corrected a bug in the assembler, The long forward branch L$ and
L$: were being resolved with a "!", rather than a store to the
target code space. This was preventing my new target compiler
from resolving the initialization branch properly. Added T! to the
list of assembler deferred target words, and modified the L$: to
resolve with T!. Modified the target compiler to set "T!" to
"!-T".
80. 06/28/89
Kept running into the problem where information going to the
printer also shows up on the screen. The reason this happens is
that (TYPE) was coded that way. I say was, because it is no longer
coded that way. Cleaned up (TYPE), so it tests PRINTING, and
either calls PRNTYPE, or CONTYPE for printer, and console. This
change will no doubt bother some people, but it is much cleaner to
have print control output to one or the other, and not both. This
is especially true when you start trying to use printing with an
application which has a screen oriented user interface, and still
needs to do printing.
82. 06/29/89
Added ARRAY and AT? to F-PC. While building my new target compiler
I needed a defining word to make arrays, so the target compiler
could be setup to only include an array if it was used. So I added
ARRAY to the target compiler. Then I realized I would need ARRAY
in Forth so I could debug the programs written for the target
compiler; thus the addition. Ditto for AT?.
83. 07/05/89
Added MANY changes from Robert Berkey, including but not limited to
the following words:
&> GOTO JOIN ?DROP COUNTL +XSEG MORE?
VIDEO-TYPEL QTYPEL $.L $.R DU< SAVECURSOR
RESTCURSOR
Restructured the type words somewhat. The low level type word used
to use a variable called TYPESEG to control where typing occured
from. This caused TYPESEG to be saved and restored in several places
to prevent it being set wrong in one place versus another. Overall
this was a crude way to control typing. Bob adjusted things
somewhat so the low level word was a long type "TYPEL". The TYPE
word ALWAYS types from the CODE SEGMENT, and if you need to type
from some other segment, you use TYPEL or QTYPEL. Overall this is
much better than what I had before, and the code is cleaner to
boot.
Bob has also made a number of changes to the debugger, many of
which I liked very much. But when I tried to integrate his debugger
with my system, I ran into many problems due to other changes he
had made that I did not want to include. SOOO.. after looking at
the debugger code, I decided to update it with Bob's features and a
few more along with a much needed cleanup. The debugger now deals
well with deferred words, does words etc. and you can even unnest
above where you entered the debugger. Added is the ability to
debug through EXECUTE, PERFORM, and the EXEC: structure. Overall
after the cleanup, I think the debugger actually got smaller.
84. 07/06/89
Modified F-PC so all file opens are done READ-ONLY. This allows
examination of read only files in the editor. Since writes are
always done with HCREATE which makes the file ready for writing,
there is no problem with this unless you plan to append to a file in
which case you need to use READ-WRITE before the open to allow
writing to an existing file. The words added are READ-ONLY,
WRITE-ONLY, and READ-WRITE.
85. 07/06/89
Modified the software floating point to be compatible with the
3.X22 version of F-PC. Since %NUMBER has been moved into assembly,
I needed to make the lower level number handlers for HEX, '(tick),
and ^(control) deferred so they could be changed by floating point
in a way that was compatible. Relatively minor mods to SFLOAT3.SEQ
to make it work.
86. 07/08/89
Added Robert Berkey's visual vocabulary stack order to the status
bar. The vocabulary order is now displayed at the top right of the
screen, just below the normal status line in a vertical column.
CURRENT is shown on line one with attribute three, and the CONTEXT
list is shown below it in attribute one, down to ROOT. Very
useful! thank you Robert.
87. 07/12/89
Modified the line editor to use a trailing attribute called
">EDATTRIB" when displaying the portion of the edit line after the
text currently being edited. The purpose of this is to allow you
to see how much text is really in the buffer, and where it ends.
The >EDATTRIB is currently set to >ATTRIB3 while in the editor,
and >NORM while at the command line.
88. 07/12/89
Added a control to the change 84. The word DEF-RWMODE now allows
you to specify what the default read/write mode will be for file
open operations. It is used as follows:
READ-WRITE DEF-RWMODE or READ-ONLY DEF-RWMODE
F-PC still defaults to using READ-ONLY. If you need READ-WRITE,
you will need to use the above command.
89. 07/12/89 Version change to 3.X23
90. 07/17/89
Modified the editor so that it opens READ ONLY files in BROWSE
mode.
91. 07/17/89
Modified editor so F10 doesn't simply drop you out of the editor
when you are only nested one level. It pops up the OPEN box, to
give you the opportunity to open another file. If you then press
ESC, you will leave the editor. This is a significant change in
that many people will HATE it because it is a change, but when you
get used to it, it will help prevent accidental exits. The change
was also carried over to the Z editor.
92. 08/11/89
I'm back from vacation, had a wonderful time. We went to Magic
Mountain, and several other colorful places. Didn't make a single
change while I was away. Amazing!
93. 08/11/89
Fixed left margin printing default so it is not reset each time
you open and edit a file.
94. 08/15/89
Adjusted CTLSET and FNSET so that they don't abort if the word
they are trying to install in a function table is not defined.
They simply display a warning message stating the problem and
continue. This allows some functions to be removed from the
compile list (saving space) without having to change EDITSET.SEQ.
95. 08/15/89 **** Major version change 3.30 ****
Removed the experimental warning message from the system: am
preparing for the next major release of F-PC!!
96. 08/19/89
Fixed a bug reported by Mike Mayo. I had the value WITHPATH set
to TRUE, which caused filenames to be saved in the FILES
vocabulary with their full paths included. He was working in a
three level nested directory that caused the filename with path
to extend to 35 characters. This caused F-PC to truncate his
filename to 3 characters (sort of a MOD function). No warning was
given, and VIEW would not work. It is also likely head space was
damaged by the long name, since >NAME after that would not work
reliabily. This bug was fixed by doing two things:
1. Setting WITHPATH to OFF. Don't need path anyway since
we have FPATH to help us find files.
2. Adding a warning to "HEADER to prevent creation of names
longer than 31 characters.
97. 08/25/89
Fixed a bug reported by Mike Mayo. The word (FNUMBER?) in the
software floating point package was not returning a double number
zero when a number conversion failed. This caused problems in the
editor when trying to browse words that had been indexed with the
NEWZ editor's index compiler. Fixed (FNUMBER?) so it returns a
FALSE flag, and a double number zero on number conversion failure,
and modified the editor to use NUMBER? rather than %NUMBER for its
browse line number conversion.
98. 09/01/89
Added a new feature to the debugger at the request of Mike Mayo.
"Skip To" Allows you to visually select a place further forward in
a definition while in the debugger, and have the word you are
debugging continue at high speed until the place you selected is
reached. Debugging then continues with the single stepper. Skip To
is enabled with "S" in the debugger, then you use "+" and "-" to
step forward or backward through the definition. Press ESC to
cancel skip, or Enter to accept the skip.
99. 09/05/89
Finally fixed the bug in the file selection box that was
preventing the selection of a file with no extension. It used to
try to create a new file: now it will let you pick such a file.
100. 09/07/89
Generalized the color control a bit, and added a new word
COLORSET. It causes the current screen colors to become the
default screen colors as "NORMVAL". In other words it allow you to
set your screen color preferences so they will be maintained if
you do an FSAVE. Try the following:
LTGRAY >BG BLUE >FG COLORSET <Enter>
If you now save the system, you will have blue letters on a
light gray background until you change it again.
101. 09/13/89 **** Version 3.33 ****
Added -SCAN to the file SCAN.SEQ. I needed this word in the target
compiler, and so I thought I would add it to the F-PC ystem as
well.
102. 09/21/89 **** FPC Version 3.34 ****
Renamed all occurances of F-TZ and FTZ to F-PC and FPC.
102.1 09/22/89
Bug fix in FPATH+. Mike Mayo found you could not put FPATH+ on a
line with other commands: it would gobble up the entire line
following FPATH+. FIXED
103. 09/26/89 **** FPC Version 3.35 ****
Modified ENDCASE back to be the same as FPC 2.25. This per the
request of the FPC working group. ENDCASE no longer does the
DROP automatically.
Adjusted the LIST size up about 8k, so about 34k of COLON
definition space is available in the un-installed F-PC.EXE file.
104. 10/16/89 **** FPC Version 3.36 ****
Have been working on the glossary. It is not completely up to
date, but it is getting there.
105. 10/22/89 **** FPC Version 3.50 ****
Official release version.
106. 05/25/90 **** FPC Version 3.51 ****
Started a minor update, to incorporate most if not all of the
known bug fixes to FPC 3.50.
Added HCRITICA.SEQ from Mike Christopher, to make DOS return a
FAIL condition if a critical error occurs. This prevents the
user from issuing an Abort, when we have not unhooked the
interrupt vectors we hooked in during startup.
The bug fixes repaired include the VIEW fix by Robert Patten,
all of the bugs listed with repairs in FPC350.BUG, and all of
the locations in FPC that were using the LOOPNZ assembly word.
These include UPPER, ?UPPERCASE, SEXE and LARGEST.
107. 07/02/90
Adjusted the max line number allowed while editing a file to be
increased by 50 percent, to allow files with very short lines
to be edited.
Modified PRINTING.SEQ to update the status line while printing,
every 8 lines, so the user will be able to tell how much of the
print process has been done so far.
Added +PLACE a nice compliment to PLACE, it appends a string to
an exsiting counted string in memory.
Made some adjustments to the file load mechanism. I have seen
some re-occuring problems with the file load words, that would
cause them to return from a nested load to the wrong place in a
file. I hope I have solved these problems.
Fixed a bug in the editor in <RED>. It was supposed to save and
restore TYPEL, but it was restoring TYPE instead. FIXED
108. 07/03/90 **** FPC Version 3.52 ****
Fixed the Alt-W bug. The SED or Z editors could trash your
files if you did an Alt-W when nested down two or more levels.
This has been fixed. All I had to do was turn off the NEWFL
flag when backing out a level.
109. 07/05/90 **** FPC Version 3.53 ****
Added FPCVER#, a constant that return the current version
scaled by 100 of F-PC, it currently returns 353. Can be used to
adjust programs for version compatibility. Also added a file
350COMPAT.SEQ to make F-PC 3.50 compatible with the current
release. This file contains the additional words added to F-PC,
not any of the bug fixes.
110. 07/06/90
After reading Peter Midnights FORML paper again, I have added a
key to the editor "Alt-8" that toggles on and off a display of
the name of the function to be executed for each editor key
pressed while editing. The function name is shown in the upper
left corner for 4 tenths of a second. This doesn't add all the
functionality Peter implimented, but it does make it possible
to explore how the editor works if you are so inclined.
111. 07/13/90
Added an option, LEAVEPROMPTON and LEAVEPROMPTOFF allow you to
specify if you want to be asked for a file to edit on leaving
the editor. The default is NO. This is a change from all
previous versions where the default was YES.
Also added Robert Berkey's favorite function to the menus. When
Bob fixed the view bug, he also add a special editor command to
show where a word you have the cursor on was loaded from. That
is show the place where the FLOAD occured that caused this word
to be loaded. the command isn Ctrl-F9. It has been added to the
"hYper" menu.
112. 07/25/90 **** FPC Version 3.54 ****
Added the top F2 and bottom F4 of screen functions to the EDIT
menu. Also added top middle Alt-F2 and bottom middle Alt-F4
screen functions to SED as well as to the EDIT menu. Changed
Page up and down so they no longer automatically move the
cursor to line 6 when they are performed. After having it like
that for a year, I can't take it any more. SED now leaves the
cursor on whatever line it was on before doing a page up or
down (unless you hit the beginning or end of the file).
113. 07/30/90
Fixed some spelling bugs in WORDS. USER-DEFERED, DEFERED and
USER-VARIABLE were spelled wrong. Also added COLON.* to work
along with :.* in listing colon definitions.
Also fixed the longtime bug that converted 'a' as 'A' when
entered in interpret state. I added the suggested SKIP'C' that
was shown in the FPC350.BUG file, but I coded it in assembly so
performance wouldn't be effected.
114. 11/05/90 **** FPC Version 3.5401 ****
Fixed a bug in WFL.SEQ, seems it would return the <a1> anyway
under the conditions where the user pressed Enter on a list of no
files. FIXED
Modified FPCVER# to be a DOUBLE NUMBER of five digits. .FPCVER#
then discards the lowest two digits and displays the highest
three digits as X.XX. You can get the read version number by
typing "FPCVER# D."
115. 11/10/90 **** FPC Version 3.5402 *****
Someone submitted a file called MLOAD.SEQ. It was such a neat
idea that I had to include it in the system. MLOAD allows you
to edit a file, mark some lines you want to load (using F3),
leave the editor, and then press F9 to load the marked lines.
This is VERY convenient for debugging. Space cost, is about
150 bytes.
116. 02/06/91 **** FPC Version 3.5500 *****
Reworked FPC to use a new memory management mechanism. This version
introduces the POINTER concept. A pointer is a word that returns a
physical memory paragraph number (16bits) to the user when
executed, after allocating the needed memory if it hasn't already
been allocated. If a pointer fails to allocate the desired memory,
then a zero (0) is returned indicating an out of memory condition.
Pointers are defined as follows:
<double_number_size_in_bytes> POINTER <pointer_name>
1024. (a double number, note the ".") POINTER XYZ
A small data structure is created to hold the pointer information.
No space is actually allocated for the pointer until it is first
used.
memory allocated with pointers is appended to the memory FPC
already uses in a "heap". Another word "UNPOINTER>" can be used to
release the memory allocated to a pointer. It is sued as follows:
: release_XYZ ( -- )
UNPOINTER> XYZ ;
UNPOINTER> can only be used in a definition. If you need to release
a pointer interactively, use the sequence:
' XYZ %UNPOINTER <enter>
Not pretty I admit, but normally this operation is done only while
in a program.
Several words have been added to FPC, to support the new memory
management system, here is a list:
#PARS holds the number of paragraphs currently allocated.
PHEAD Variable that points to the head of the pointer
list.
UD16/ Unsigned double number divide by 16.
DPARAGRAPH Convert the double number to a number of
paragraphs.
SIZEOF!> Set the size in double bytes of the POINTER
following. Exmpl: <double_num> SIZEOF!> XYZ
0POINTERS System word that clears out all pointers. Don't
ever use this word in any of your programs.
CMOVE-PARS
CMOVE-PARS> Move paragraphs of memory. See their source for
the syntax of how they are used.
MAXBLOCK Returns the maximum number of paragrahs that can be
allocated without getting an allocation error.
All of FPC and TCOM have been modified to work with this new memory
management system. I recommend you use it as well, rather than the
old ALLOC and DEALLOC.
Also added .VERSION to display the whole version number including
the least digits.
117. 02/12/91 ***** Version 3.5501 *****
Installed the code from POSTHEX.SEQ into KERNEL2.SEQ. This effects
"%NUMBER". Now you can use sufixes of H to specify, Hex or B to
specify Binary. This is in addition to a $ prefix meaning HEX, and
'letter' meaning ascii, and ^letter meaning CONTROL. Has no effect
on your ability to define word names, but if you define a word that
fits into any of the above catagories, then it will be a function
rather than a number!
Also added expanded memory support into the kernel. This is in
preparation for later enhancements that I hope will move most of
F-PC out of memory into expanded memory when performing a shell to
DOS.
Also added ".MEM" which tells you how your F-PC memory is being
used along with the names of the pointers using the memory. The
last line of .MEM tells how much DOS memory is still available.
118. 02/13/91
Installed a new editor status line from John Peters. Editor status
line now shows current and max values for line, column, page and
lines. Very nice, thank you John.
Added SELECT to the ZIMMER.ZIP file. SELECT.SEQ is an onscreen
menu system. Provides automatic handling of many menu functions,
and gives the user a good interface at the same time. TRY IT!
Added LASERJET.SEQ as a loaded part of F-PC. So F-PC now supports
either the IBM ProPrinter, or the HP LaserJet/DeskJet family of
printers.
119. 02/20/91
Enhanced .MEM to display the status of expanded memory as well as
normal DOS type REAL memory.
Fixed some bugs in MULTASK.SEQ, that was preventing the
multi-tasking data structure from being relocatable. This was
preventing any application that used multi-tasking from running
properly unless it was reloaded into exactly the same memory space
as it was first created. This was NOT GOOD. It is now fixed,
although there was a small performance penalty due to a runtime
conversion from absolute to relative and back again on each task
switch.
120. 02/25/91 ***** Version 3.5502 *****
121. 02/27/91
A new command 'S' under the Alt-O menu in the editor, allows
editing of files containing TABs. SED will expand the tabs on the
display, and only expand the tabs in the file of those lines you
change.
Fixed SED so you can now edit .BAK file. When you select such a
file, SED switches into NOBACKUP mode, and allows the file to be
edited. If you make changes and save the file, then the changes are
saved into the .BAK file. The NOBACKUP mode has also been
adjusted to not bother .BAK and .$$$ files when you are editing the
primary source file. This is incase you are editing a primary file,
and a >BAK file together, and making changes to one, then other or
both.
122. 02/28/91
Added a command to the editor, "Ctrl-\" that displays the current
memory usage in the computer.
F-PC now moves itself into EXPANDED memory when you shell out to
DOS if there is enough expanded memory available. If there isn't,
then is just shells out, and leaves itself in memory. The Expanded
memory allocated is only allocated while you are shelling out, and
is then deallocated upon return to F-PC. The file EMMEXEC.SEQ and
a modified version of EXEC.SEQ make this all possible.
123. 03/04/91
Fixed a minor bug in ".FILES". It had an escape sequence in it to
print 8 spaces followed by a dash ( \s8- ), unfortunately the \s
escape sequence needs two digits following it, not one so 80 spaces
were being displayed not 8. Corrected as ( \s08- ) to display 8
spaces followed by a "-".
While I'm at it, I might as well document the list of escape
sequences available in "dot quotes":
This utility allows the creation of special ." strings that contain
imbedded escape sequences to select various display operations.
The leading character is "\", followed by:
0 Normal display attributes
1 to 8 Attributes 1 through 8
:xx Delay xx tenths of a second
< Save the current cursor position (not nestable)
> Restore the previous cursor position (not nestable)
@xxyy Move cursor to xx,yy
B Beep the speaker
D Dark (clear screen)
N Newline (CRLF)
R Select Reverse video
Sxx Display xx spaces
T Perform a Tab
\ Display a \ character
` Display a " character
| Display a linefeed character
The performance of this version of ." will be somewhat slower than
a normal TYPE, as the string must be scanned for the "\" escape
character.
124. 03/05/91
Fixed the bug? in /STRING that was preventing it from extending the
length of a string when fed a negative number.
Added a variable USE-EMM, and words EMMON and EMMOFF to set it.
The state of USE-EMM set to FALSE, will cause the word EMM-PRESENT?
to return a false even if Expanded Memory is present. EMMON is the
default state of USE-EMM (TRUE).
Added variable USE-DISK, and words DISKON and DISKOFF to set it.
The state of USE-DISK set to FALSE, will cause F-PC NOT to flush
itself to DISK when no Expanded memory is available. Setting it to
DISKON will make F-PC flush itself to disk whenever a SYS command
is performed. Currently a file "FPCIMAGE.$$$" in the handle
EXTHNDL is being created to hold the F-PC image during the shell.
DISKOFF is the default state of USE-DISK (FALSE). EXTHNDL can be
filled with any "DRIVE:\PATH\FILENAME.EXT", to cause the FPC image
to be written to any ramdisk or drive desired. the default name
will be used if no other file is specified. Expanded memory is
given preference over disk even if DISKON is used, so type EMMOFF
and DISKON to force F-PC to save its image to disk. On a real disk
drive, this can take several seconds both for the save, and later
for the recover. This facility is primarily useful for those
people that don't have expanded memory, but do have EXTENDED Memory
that can be changed into a ramdisk. For maximum performance, don't
let F-PC save its image anywhere, use EMMOFF and DISKOFF (default).
Note, a disk full error on image save will still cause F-PC to
perform the shell to DOS, but F-PC will not save itself to disk.
Also note that F-PC deletes the FPCIMAGE.$$$ file after the shell
is performed and lastly, FPCIMAGE.$$$ can be almost as large as
your computers memory (greater than 500k), so be sure you have a
lot of memory on you EXTHNDL file drive before using DISKON, or
you will use time and gain no benefit.
125. 03/06/91
Added "SWAPFILE" which is followed by a name, and sets the disk
swapfile drive and name. DISKON is also performed, to cause F-PC to
swap to disk when a shell is performed.
Added ">HANDLE to take an a1,n1 string rather than a counted string
and move it into the specified handle.
126. 03/07/91
Added words to ZIMMER.ZIP to control blinking background colors,
and to read and set the border colors. *** MOVED INTO F-PC ***
127. 03/13/91 ***** Version 3.5503 *****
Added UBETWEEN and -SKIP to F-PC.
128. 03/15/91
Added DOBORDER to <REEDIT> in SEDIT2.SEQ, to assure that a border
would be shown even if the user types commands while the editor is
loading the current file.
129. 03/30/91
Integrated the new mouse driver from Mike Christopher. there is
now a cursor for the mouse, and another one for F-PC.
130. 04/05/91
Located and removed all references to things like "1 -1 d+" which
were used to shorted an address and length on the stack. Changed
all of these occurances to the equivelant "1 /string" which doesn't
have the carry problem from the count to the address if an
underflow occurs.
131. 04/08/91
Moved the file BLINKER.SEQ from the TOOLS directory, into the SRC
directory, and now load it as a normal part of F-PC. This adds the
words BLINKON, BLINKOFF, BLINK!, PAL!, BORDER@ and BORDER!.
132. 04/10/91 ***** Version 3.5504 *****
Fixed a bug in DOBORDER, that was keeping it from displaying the
corner symbol at the upper right of the screen.
At the recomendation of Jerry Boutelle, I have added watch point
support to the debugger. This allows a 16 byte area ofCODE memory
to be monitored between each step of the debugger. It can be very
handy for watching HERE. The "W" command in the debugger, brings up
a watch set command line, so you can type in an address that will
be watched. If you type a word that returns an address, then that
address will be watched. If you want to watch a word that doesn't
return an address, enter it as " 'WORD " (without the "s ), and the
CFA will be the watch address.
133. 04/12/91
Added for Mike Mayo, a new variable, and three instructions to
WORD. The variable is called ">IN_WORD", and it is set by WORD to
be the line offset in TIB of the most recent word parsed out with
WORD. For example is you did a WORD on the first word in this
line, then >IN_WORD would contain an 8. This is useful for
building index files, that want to know exactly where in the source
file a particular word came from. The performance penalty is
insignificant.
134. 04/23/91 ***** Version 3.5505 *****
Added LISTSET to the F-PC dictionary, it allows the user to adjust
the amount of dictionary space desired, as the number of paragraphs
of free space F-PC should retain on the next startup. The value
#LISTSEGS is adjusted, and the memory image is resaved to the same
name as the currently executing file.
Correction to the mouse driver, it seems Mike Christopher modified
the OLD MOUSE.SEQ file, not the current one, so when I included his
new file, it had the OLD mouse bug in it. Fixed so the mouse
doesn't show up unless you move the mouse the first time.
Changed the file COLOR.SEQ, to allow the user to more easily modify
the colros F-PC uses. F-PC now uses an array called COLORS, which
contains eight sets of background and forground colors for
">ATTRIB1" through ">ATTRIB8". The new words BG@, BG!, FG@ and FG!
allow setting the colors in the array to control the colors F-PC
will use. See the file COLOR.SEQ for more details.