diff --git a/.Floppies/A2OSX.MAKE.po b/.Floppies/A2OSX.MAKE.po index a870eedd..a914e133 100644 Binary files a/.Floppies/A2OSX.MAKE.po and b/.Floppies/A2OSX.MAKE.po differ diff --git a/.Floppies/BLANK140.dsk b/.Floppies/BLANK140.dsk new file mode 100644 index 00000000..432b232f Binary files /dev/null and b/.Floppies/BLANK140.dsk differ diff --git a/.Floppies/BLANK32MB.po b/.Floppies/BLANK32MB.po new file mode 100644 index 00000000..3e384a6f Binary files /dev/null and b/.Floppies/BLANK32MB.po differ diff --git a/.Floppies/BLANK800.po b/.Floppies/BLANK800.po new file mode 100644 index 00000000..8442f91d Binary files /dev/null and b/.Floppies/BLANK800.po differ diff --git a/.Floppies/PK-A2OSX.dsk b/.Floppies/PK-A2OSX.dsk index 57c53c08..ad39e88e 100644 Binary files a/.Floppies/PK-A2OSX.dsk and b/.Floppies/PK-A2OSX.dsk differ diff --git a/LICENSE b/LICENSE index d159169d..e07bbd1b 100644 --- a/LICENSE +++ b/LICENSE @@ -1,3 +1,6 @@ +NEW + PREFIX +AUTO 4,1 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 @@ -337,3 +340,6 @@ proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. + +MAN +TEXT /MAKE/LICENSE diff --git a/MAKE/BUILD b/MAKE/BUILD new file mode 100644 index 00000000..857cf8a6 --- /dev/null +++ b/MAKE/BUILD @@ -0,0 +1,7 @@ +NEW + PREFIX +AUTO 4,1 +PREFIX B1216 +-a2osx.system +MAN +TEXT /MAKE/BUILD diff --git a/MAKE/EMPTYFS b/MAKE/EMPTYFS new file mode 100644 index 00000000..7538b533 --- /dev/null +++ b/MAKE/EMPTYFS @@ -0,0 +1,43 @@ +NEW + PREFIX +AUTO 4,1 +#!/BIN/SH +# +# This script creates the empty dirs to hold A2osX +# +Echo "\f\n\n\n Enter directory to create new A2osX file system in" +echo -N "\n\n Directory: " +READ fsdir +echo "\n\n Creating file system in ${fsdir}" +md ${fsdir} +md ${fsdir}/bin +md ${fsdir}/bin/atk +md ${fsdir}/bin/dev +md ${fsdir}/drv +md ${fsdir}/drv/gui +md ${fsdir}/etc +md ${fsdir}/home +md ${fsdir}/inc +md ${fsdir}/lib +md ${fsdir}/lib/gui +md ${fsdir}/root +md ${fsdir}/sbin +md ${fsdir}/sbin/gui +md ${fsdir}/srv +md ${fsdir}/sys +md ${fsdir}/sys/atk +md ${fsdir}/tmp +md ${fsdir}/usr +md ${fsdir}/usr/src +md ${fsdir}/usr/src/bin +md ${fsdir}/usr/src/drv +md ${fsdir}/usr/src/lib +md ${fsdir}/usr/src/sbin +md ${fsdir}/usr/src/sys +md ${fsdir}/usr/share +md ${fsdir}/usr/share/tests +md ${fsdir}/usr/share/make +md ${fsdir}/var +md ${fsdir}/var/log +MAN +TEXT /MAKE/USR/SHARE/MAKE/CREATEFS diff --git a/MAKE/RELEASE b/MAKE/RELEASE new file mode 100644 index 00000000..10e676a6 --- /dev/null +++ b/MAKE/RELEASE @@ -0,0 +1,7 @@ +NEW + PREFIX +AUTO 4,1 +PREFIX B1079 +-a2osx.system +MAN +TEXT /MAKE/RELEASE diff --git a/MAKE/STABLE b/MAKE/STABLE new file mode 100644 index 00000000..3e3d0104 --- /dev/null +++ b/MAKE/STABLE @@ -0,0 +1,7 @@ +NEW + PREFIX +AUTO 4,1 +PREFIX B1179 +-a2osx.system +MAN +TEXT /MAKE/STABLE diff --git a/Notes for Developers.md b/Notes for Developers.md new file mode 100644 index 00000000..52f143a7 --- /dev/null +++ b/Notes for Developers.md @@ -0,0 +1,22 @@ +Notes for Developers + + + +Use Notepad++ which you can download from.... + +THere is a userDefinedLang.xlm file in the .Tools dir that you will want to copy to Notepad... then when editing ASM files (.S) you can change your language to S-C MASM 65C02 and notepad++ will do the proper highlighting. + +Documentation for A2osX is written in standard Github Markdown language. There are many editors you can use to read/make these files. THis includes Atom??? and our favorite MarkdownPad 2. Note though to use this edititor you need + +Use MarkdownPad 2 Pro to edit Github Markdown files such as this one. Note to fully use its features you need a pro license and you need to enable the Github markdown preview options. If you have a GH account you will immediately get a login error because GH and Windows TLS settings are mismatched. YOu should read this article: +https://stackoverflow.com/questions/33761919/tls-1-2-in-net-framework-4-0/44153734#44153734 + +Basically you are going to have to use regedit to create the following keys: + +| Registry Entry | Items | +| ----------- | ------------------- | +| [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] | "SchUseStrongCrypto"=dword:00000001 | +| [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319] | "SchUseStrongCrypto"=dword:00000001| +| [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2] | | +| [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client] | "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001 | +| [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server] | "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001 | diff --git a/TESTS/ARGTEST b/TESTS/ARGTEST index 63752305..5d425eee 100644 --- a/TESTS/ARGTEST +++ b/TESTS/ARGTEST @@ -1,26 +1,17 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 #!/BIN/SHELL -#This is a test of passing args -#Echo $0 should be name of script -echo PWD is $PWD -ECHO 0 Parm is $0 -ECHO 1 Parm is $1 -ECHO 2 Parm is $2 -ECHO 3 Parm is $3 -ECHO 4 Parm is $4 -ECHO 5 Parm is $5 -ECHO 6 Parm is $6 -ECHO 7 Parm is $7 -ECHO 8 Parm is $8 -ECHO 9 Parm is $9 -ECHO Parm Countis $# -Echo All Parms is $* -echo Process ID is $$ -echo Process Parent ID is $@ -echo Process Child ID is $! -Echo Done -FI +# +# This is a test of passing args +# This script calls ARGTEST2 passing a known set +# of arguments which ARGTEST2 checks to verify +# arg passing works. +# +# Note that $$ is passed which is this process id +# and can be checked in ARGTEST2 to compare with +# parent process id, this will validate both are working. +# +ARGTEST2 A 1 B 2 C 3 Hello $$ 82 Tenth MAN -TEXT USR/SHARE/TESTS/ARGTEST +TEXT /MAKE/USR/SHARE/TESTS/ARGTEST diff --git a/TESTS/ARGTEST2 b/TESTS/ARGTEST2 new file mode 100644 index 00000000..d090871d --- /dev/null +++ b/TESTS/ARGTEST2 @@ -0,0 +1,235 @@ +NEW + PREFIX +AUTO 4,1 +#!/BIN/SHELL +# +# This is a test of passing args +# This script is called by ARGTEST passing a known set +# of arguments which this script checks to verify +# arg passing works. +# +# The args passed are: +# +# A 1 B 2 C 3 Hello $$ 82 Tenth +# +# Note that $$ is passed which is this process id +# of the calling script that can be compared with this +# scripts parent process id; validating both are working. +# +# We first need to check if this script is being called +# by BUILDTEST or if it is being run interactively. +# +IF [ -F ${ROOT}TMP/BUILDTEST ] + ELSE +SET B = 0 +FI +# +# $0 should be name of script +# +SET T = $T + 1 +IF [ $0 = "ARGTEST2" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 0 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 0 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 0 Failed - $0" >> ${Log} + FI +echo "\nARGTEST Arg 0 Failed\n" +FI +# +# $1 should be 'A' +# +SET T = $T + 1 +IF [ $1 = "A" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 1 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 1 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 1 Failed - $1" >> ${Log} + FI +echo "\nARGTEST Arg 1 Failed\n" +FI +# +# $2 should be '1' +# +SET T = $T + 1 +IF [ $2 -EQ 1 ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 2 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 2 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 2 Failed - $2" >> ${Log} + FI +echo "\nARGTEST Arg 2 Failed\n" +FI +# +# $3 should be 'B' +# +SET T = $T + 1 +IF [ $3 = "B" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 3 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 3 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 3 Failed - $3" >> ${Log} + FI +echo "\nARGTEST Arg 3 Failed\n" +FI +# +# $4 should be '2' +# +SET T = $T + 1 +IF [ $4 -EQ 2 ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 4 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 4 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 4 Failed - $4" >> ${Log} + FI +echo "\nARGTEST Arg 4 Failed\n" +FI +# +# $5 should be 'C' +# +SET T = $T + 1 +IF [ $5 = "C" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 5 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 5 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 5 Failed - $5" >> ${Log} + FI +echo "\nARGTEST Arg 5 Failed\n" +FI +# +# $6 should be '3' +# +SET T = $T + 1 +IF [ $6 -EQ 3 ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 6 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 6 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 6 Failed - $6" >> ${Log} + FI +echo "\nARGTEST Arg 6 Failed\n" +FI +# +# $7 should be 'Hello' +# +SET T = $T + 1 +IF [ $7 = "Hello" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 7 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 7 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 7 Failed - $7" >> ${Log} + FI +echo "\nARGTEST Arg 7 Failed\n" +FI +# +# $8 should be the process id of the parent +# +SET T = $T + 1 +IF [ $8 -EQ $@ ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 8 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 8 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 8 Failed - $8 vs $@" >> ${Log} + FI +echo "\nARGTEST Arg 8 Failed\n" +FI +# +# $9 should be '82' +# +SET T = $T + 1 +IF [ $2 -EQ 82 ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg 9 Passed" >> ${Log} + FI + echo "\nARGTEST Arg 9 Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg 9 Failed - $9" >> ${Log} + FI +echo "\nARGTEST Arg 9 Failed\n" +FI +# +# $# should be '10' +# +SET T = $T + 1 +IF [ $# -EQ 10 ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg Count Passed" >> ${Log} + FI + echo "\nARGTEST Arg Count Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg Count Failed - $#" >> ${Log} + FI +echo "\nARGTEST Arg Count Failed\n" +FI +# +# $* should be 'A 1 B 2 C 3 Hello $$ 82 Tenth' +# +SET T = $T + 1 +IF [ $* = "A 1 B 2 C 3 Hello $$ 82 Tenth" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "ARGTEST Arg ALL Passed" >> ${Log} + FI + echo "\nARGTEST Arg ALL Passed\n" +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "ARGTEST Arg ALL Failed - $*" >> ${Log} + FI +echo "\nARGTEST Arg ALL Failed\n" +FI +ECHO "\nArg Tests Done +IF [ $B -GT 0 ] + echo "Arg Tests Complete" >> ${Log} +FI +MAN +TEXT /MAKE/USR/SHARE/TESTS/ARGTEST2 diff --git a/TESTS/BADSCRIPT b/TESTS/BADSCRIPT index ace421d3..7e3adea1 100644 --- a/TESTS/BADSCRIPT +++ b/TESTS/BADSCRIPT @@ -1,8 +1,11 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 +# +# This is a scipt file used by the BADSHTEST script +# ECHO THIS IS A BAD SCRIPT -ECHO IT HAS NO BIN SHELL AT TOP LINE -ECHO SO IT SHOULD ERROR +ECHO IT HAS NO BIN/SHELL BIN/SH OR BIN/CSH ON THE TOP LINE +ECHO SO IT SHOULD GIVE AN ERROR IF YOU TRY TO RUN IT MAN -TEXT USR/SHARE/TESTS/BADSCRIPT +TEXT /MAKE/USR/SHARE/TESTS/BADSCRIPT diff --git a/TESTS/BADSHTEST b/TESTS/BADSHTEST index cd014007..024415a1 100644 --- a/TESTS/BADSHTEST +++ b/TESTS/BADSHTEST @@ -1,5 +1,5 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 #!/BIN/SHELL # @@ -7,6 +7,14 @@ AUTO 4,1 # (with error) an invalid shell script. It should return error # F6/246. This script calls BADSCRIPT and checks for that code. # +# We first need to check if this script is being called +# by BUILDTEST or if it is being run interactively. +# +IF [ -F ${ROOT}TMP/BUILDTEST ] + ELSE +SET B = 0 +FI +# echo "\n\nThis test will generate an error" echo "between the lines. This is expected." echo "---------------------------------------" @@ -17,15 +25,17 @@ echo "---------------------------------------" IF [ $R -EQ 246 ] IF [ $B -GT 0 ] SET P = $P + 1 + echo "I am at AAAAAAA Pass with Log" echo "BADSHTEST Passed" >> ${Log} FI echo "\nBADSHTEST Passed\n" ELSE IF [ $B -GT 0 ] SET F = $F + 1 - echo "BADSHTEST Failed" >> ${Log} + echo "I am at BBBBBBB Fail with Log" + echo "BADSHTEST Failed - $R" >> ${Log} FI -echo "\nBADSHTEST Failed\n" +echo "\nBADSHTEST Failed - $R\n" FI MAN -TEXT USR/SHARE/TESTS/BADSHTEST +TEXT /MAKE/USR/SHARE/TESTS/BADSHTEST diff --git a/TESTS/BUILDTEST b/TESTS/BUILDTEST index b8f540bb..9aea6edd 100644 --- a/TESTS/BUILDTEST +++ b/TESTS/BUILDTEST @@ -1,5 +1,5 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 #!/BIN/SHELL # @@ -59,6 +59,7 @@ SET F = 0 # . BADSHTEST . ECHOTEST +. ARGTEST # # End of Tests # @@ -74,4 +75,4 @@ echo " Tests Passed: ${P}" >> ${Log} echo " Tests Failed: ${F}" >> ${Log} echo "----------------------------------------" >> ${Log} MAN -TEXT USR/SHARE/TESTS/BUILDTEST +TEXT /MAKE/USR/SHARE/TESTS/BUILDTEST diff --git a/TESTS/CATFILE1 b/TESTS/CATFILE1 new file mode 100644 index 00000000..73af047b --- /dev/null +++ b/TESTS/CATFILE1 @@ -0,0 +1,13 @@ +NEW + PREFIX +AUTO 4,1 +This is Cat File 1 +------------------ + + + + +------------------ +This is Line 8 +MAN +TEXT /MAKE/USR/SHARE/TESTS/CATFILE1 diff --git a/TESTS/CATFILE2 b/TESTS/CATFILE2 new file mode 100644 index 00000000..20b9d140 --- /dev/null +++ b/TESTS/CATFILE2 @@ -0,0 +1,6 @@ +NEW + PREFIX +AUTO 4,1 +abcdefghijklm0 +MAN +TEXT /MAKE/USR/SHARE/TESTS/CATFILE2 diff --git a/TESTS/CATTEST b/TESTS/CATTEST index ad5cf05d..6570a36b 100644 --- a/TESTS/CATTEST +++ b/TESTS/CATTEST @@ -1,6 +1,79 @@ +NEW + PREFIX +AUTO 4,1 #!/BIN/SHELL -ECHO \fBeginning Cat Test -CAT -S /pka2osx/tests/MORETESTFILE -Echo -Echo \nEnd of Cat Test -Echo \n\n This Test Needs to be EDITED to remove Full Path in File Name \ No newline at end of file +# +# We first need to check if this script is being called +# by BUILDTEST or if it is being run interactively. +# +IF [ -F ${ROOT}TMP/BUILDTEST ] + ELSE +SET B = 0 +FI +# +ECHO "\f\n\n Cat Test" +echo "\nThis script will perform tests of the CAT command" +echo "\nThe first cats a file with line numbers at the left.\n" +READ -P "Press Return to start test" Z +SET T = $T + 1 +echo \n +CAT -N CATFILE1 +echo \n +read -P "Did you see 8 numbered lines: " Z +IF [ $Z = "y" ] + SET Z = "Y" +FI +IF [ $Z = "Y" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "CAT -N Passed" >> ${Log} + FI +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "CAT -N Failed" >> ${Log} + FI +FI +ECHO "\nThis next test CATs the same file but removes" +ECHO "the duplicate empty lines\n" +READ -P "Press Return to start test" Z +echo \n +SET T = $T + 1 +CAT -S CATFILE1 +echo \n +read -P "Did you just 4 lines: " Z +IF [ $Z = "y" ] + SET Z = "Y" +FI +IF [ $Z = "Y" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "CAT -S Passed" >> ${Log} + FI +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "CAT -S Failed" >> ${Log} + FI +FI +SET T = $T + 1 +CAT -A CATFILE2 +echo \n +read -P "Was the CAT display correct: " Z +IF [ $Z = "y" ] + SET Z = "Y" +FI +IF [ $Z = "Y" ] + IF [ $B -GT 0 ] + SET P = $P + 1 + echo "CAT -A Passed" >> ${Log} + FI +ELSE + IF [ $B -GT 0 ] + SET F = $F + 1 + echo "CAT -A Failed" >> ${Log} + FI +FI +Echo "\nEnd of Cat Test" +MAN +TEXT /MAKE/USR/SHARE/TESTS/CATTEST diff --git a/TESTS/CDTEST b/TESTS/CDTEST index f618d45e..2b8527b8 100644 --- a/TESTS/CDTEST +++ b/TESTS/CDTEST @@ -1,3 +1,6 @@ +NEW + PREFIX +AUTO 4,1 #!/bin/shell # # test CD command gives errors back @@ -9,4 +12,6 @@ echo "return code was $?" CD ... echo "return code was $?" CD aaa -echo "return code was $?" \ No newline at end of file +echo "return code was $?" +MAN +TEXT /MAKE/USR/SHARE/TESTS/CDTEST diff --git a/TESTS/ECHOTEST b/TESTS/ECHOTEST index 6efe4255..a3a1b951 100644 --- a/TESTS/ECHOTEST +++ b/TESTS/ECHOTEST @@ -1,5 +1,5 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 #!/BIN/SHELL Echo "\n\nThis Script will perform a series of tests on the ECHO command" @@ -158,4 +158,4 @@ IF [ $B -GT 0 ] FI SET Z = MAN -TEXT USR/SHARE/TESTS/ECHOTEST +TEXT /MAKE/USR/SHARE/TESTS/ECHOTEST diff --git a/TESTS/ENVTEST b/TESTS/ENVTEST index 7e21bff2..e523879a 100644 --- a/TESTS/ENVTEST +++ b/TESTS/ENVTEST @@ -1,5 +1,5 @@ NEW - PREFIX /A2OSX.BUILD + PREFIX AUTO 4,1 #!/BIN/SHELL #SET -X @@ -48,4 +48,4 @@ SET F = ${C} Echo "F is ${F}" ECHO END ENV TEST MAN -TEXT USR/SHARE/TESTS/ENVTEST +TEXT /MAKE/USR/SHARE/TESTS/ENVTEST diff --git a/TESTS/MORETESTFILE b/TESTS/MORETESTFILE index 4ff6bfca..0d566a96 100644 --- a/TESTS/MORETESTFILE +++ b/TESTS/MORETESTFILE @@ -1,4 +1,7 @@ -#!/BIN/SHELL +NEW + PREFIX +AUTO 4,1 +#!/BIN/SH echo This is for the more test @@ -37,3 +40,5 @@ echo hi ECHO Last Line of file. +MAN +TEXT /MAKE/USR/SHARE/TESTS/MORETESTFILE diff --git a/TESTS/READTEST b/TESTS/READTEST index 371ec982..5918e28a 100644 --- a/TESTS/READTEST +++ b/TESTS/READTEST @@ -1,6 +1,11 @@ -#!/BIN/SHELL +NEW + PREFIX +AUTO 4,1 +#!/BIN/SH ECHO Read Test ECHO "Current Value of TVar is ${TVar}" READ -P "Enter your name: " TVar Echo "New TVar is ${TVar} " Echo "End Test" +MAN +TEXT /MAKE/USR/SHARE/TESTS/READTEST