annotate docs/shellplus/shellplus2.2a.doc @ 1911:679597bc4254

added makefile
author boisy
date Wed, 09 Nov 2005 00:26:14 +0000
parents 054c318eda02
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1871
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
1 This archive should contain:
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
2 SCF.IPC ----------->Patchfile to create new SCF with Kevin Darling's keyboard
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
3 editing, Bill Nobel's buffer pre-fill call, and some
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
4 general optomizations by yours truly
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
5 SHELL ------------->Version 2.2a of Shellplus with command history (shell is
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
6 so different in it's current state than the Tandy/
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
7 Microware original, I see no sense in making it an IPC
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
8 file... someone correct me if I am wrong)
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
9 SHELLPLUS2.2A.DOCS->This documentation file
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
10
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
11 NOTE: YOU HAVE TO USE THE IPATCH UTILITY TO MAKE A NEW SCF FOR THIS VERSION
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
12 OF SHELLPLUS TO WORK. IT REQUIRES THE STOCK SCF AND THE IPATCH UTILILITY,
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
13 AVAILABLE ELSEWHERE.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
14
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
15 Ident of original SCF to patch:
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
16
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
17 Header for: SCF
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
18 Module size: $05E3 #1507
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
19 Module CRC: $F946CA (Good)
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
20 Hdr parity: $0E
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
21 Edition: $0D #13
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
22 Ty/La At/Rv: $D1 $81
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
23 File Man mod, 6809 obj, re-en, R/O
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
24
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
25 Ident of new SCF you should end up with:
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
26
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
27 Header for: SCF
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
28 Module size: $06E5 #1765
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
29 Module CRC: $E551FB (Good)
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
30 Hdr parity: $0B
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
31 Edition: $11 #17
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
32 Ty/La At/Rv: $D1 $81
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
33 File Man mod, 6809 obj, re-en, R/O
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
34
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
35 In 1992 or 1993, a version of ShellPlus (V2.2) had a limited release that
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
36 contained command history (being able to scroll forwards or backwards through
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
37 that last few lines that have been typed in the shell. It used Bill Nobel's
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
38 modified SCF (which includes Kevin Darling's line editing patches as well) &
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
39 worked by temporarily modifying the ABORT & INTERRUPT keyboard signals to be
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
40 up & down arrows. (It then used the signals generated by the 2 arrow keys to
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
41 go forward or backwards through the command history buffer, even if you were
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
42 in the middle of typing a line.) Once you hit <ENTER>, it switched the signals
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
43 back to normal, and then processed the line (thus, if you were running a
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
44 program, you could still <CTRL>-<C> or <E> out of it). One small problem it
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
45 had, though, was that if you DID break out of a program, when it came back to
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
46 the shell it still had the <CTRL>-<C> or <E> sitting in the keyboard buffer.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
47 Since the first thing ShellPlus V2.2 did was reset those keys, the real
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
48 <CTRL>-<C> / <E> sitting in the buffer got printed as an illegal OS-9
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
49 character ('.'), so you always had a period sitting as the first character on
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
50 your new shell prompt line.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
51 I went in and attempted to fix this just after I got this version of
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
52 ShellPlus, and did so with partial success. I eliminated the period, but
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
53 caused a new bug that if you forking sub-shells and using <CTRL>-<C>/<E> at 2
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
54 or more levels down a Fork chain (ex. doing a '$dir' from BASIC09 ends up
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
55 being 2 levels deep), it crashed all shells running on the machine. So, this
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
56 version wasn't released.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
57 Just recently I finally figured out how to fix it, and did. To
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
58 differentiate between the two versions, mine is called ShellPlus V2.2a.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
59 While it could have been done without it, this version requires a new SCF,
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
60 that has an extra option added onto Bill Nobel's keyboard buffer filling
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
61 SetStat call. If the high bit of Y is set, a carriage return will NOT be
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
62 appended automatically to the keyboard buffer. This SCF also contains some
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
63 minor speed optomizations in other parts of the code as well, so even if you
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
64 don't use Shell+, it should be worth your while.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
65 NOTE!!!!!
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
66 There was a small bug in the original buffer filling call- it didn't bother
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
67 to check the size of the buffer you specified in Y before it tried to copy
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
68 it... a large value would crash the machine. Since Shell+ V2.2A REQUIRES the
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
69 new high-bit Y version of SCF's buffer filling call, it will CRASH an old SCF
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
70 machine as soon as you try to abort (with <CTRL>-<E>, <CTRL>-<C> or <BREAK>)
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
71 any program you run from the shell. MAKE SURE YOU INSTALL THE NEW SCF BEFORE
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
72 INSTALLING SHELLPLUS V2.2A!
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
73 Shell+ V2.2A also fixes some bugs in Shell+2.1/2.2:
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
74 1) It opens Directories (for CHD/CHX/CD/CX) in READ mode instead of UPDATE
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
75 (according to the manual, these will be slightly faster) since none of those
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
76 shell commands write to the directories.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
77 2) The ^ option (for setting priority just for the command line you are
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
78 typing) now works. The original should have worked, but for some reason
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
79 didn't. I think it had something to do with trying to change the priority of
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
80 a module just after it was forked; maybe it hadn't been 'fully' forked by the
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
81 time the priority was to change. I modified Shell+ to set itself to the new
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
82 priority, fork the process, and then immediately set itself back to normal.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
83 3) If a ShellSub module was linked (see ShellPlus V2.1 docs), it didn't
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
84 unlink it properly, due to to statements being backwards in the original
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
85 source. This has now been fixed.
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
86
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
87 For those of you running NitrOS9, the new version 1.20 upgrade will include
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
88 this shell, and has an even more extensively optomized SCF (see NitrOS9 docs
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
89 for details)
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
90
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
91 -L. Curtis Boyle, Aug. 20, 1994-
054c318eda02 Added for future incorporation into NitrOS-9 Manual
boisy
parents:
diff changeset
92