'===========================================================================
' Subject: ULTIMATE TEXT VIEWER Date: Year of 1994
' Author: The ABC Programmer Code: QB, QBasic, PDS
' Keys: ULTIMATE,TEXT,VIEWER Packet: TEXT.ABC
'===========================================================================
'==========================================================
' The Ultimate TEXT Viewer Programmed by William Yu (1994)
' Use within a commercial product is strictly prohibited
' Modify as you wish, includes a file directory listing
'==========================================================
DECLARE SUB HELP1 ()
DECLARE SUB HELP2 ()
DECLARE SUB HELP3 ()
'$DYNAMIC
DEFINT A-Z
CONST FALSE = 0
CONST TRUE = NOT FALSE
FPC = FALSE
YC = 1
CLS : LOCATE , , 0
SHELL "DIR /AD/O > Drive.LST"
OPEN "Drive.LST" FOR INPUT AS #1
DO
LINE INPUT #1, CurrentDrive$
LOOP UNTIL INSTR(1, CurrentDrive$, ":\")
CLOSE 1
KILL "DRIVE.LST"
Y = LEN(CurrentDrive$)
CurDir$ = MID$(CurrentDrive$, 15, Y)
CurDrive$ = MID$(CurrentDrive$, 15, 2)
DefaultDir$ = MID$(CurrentDrive$, 15, Y)
Escape = FALSE
'File$ = COMMAND$ 'For QB/PDS
START:
CAP = FALSE: YC = 1
ON ERROR GOTO ERRORHANDLE
OPEN File$ FOR INPUT AS #1
REDIM Seeks&(1 TO 16000) 'Use 32767 /ah for QB and to compile (BC)
CurSeek& = 1
Numlines = 0
COLOR 0, 1
FOR J = 1 TO 25
LOCATE J, 1: PRINT STRING$(80, 0)
NEXT J
COLOR 15, 4: LOCATE 25, 1: PRINT " The Ultimate Text Viewer Version 0.02 FREEWARE"; : COLOR 7, 4: PRINT " <"; : COLOR 11: PRINT "1"; : COLOR 10: PRINT "2"; : COLOR 3: PRINT "3"; : COLOR 12: PRINT "4"; : COLOR 13: PRINT "5"; : COLOR 14: PRINT "6"; : COLOR 7: PRINT "7"; : COLOR 15: PRINT "8"; : COLOR 9: PRINT "9"; : COLOR 7: PRINT ">"; : COLOR 10: PRINT " Color Change "
COLOR 0, 1: LOCATE 24, 1: PRINT STRING$(80, 0)
LOCATE 1, 1: COLOR 15, 3: PRINT " F"; : COLOR 0: PRINT "ILE "; : COLOR 15: PRINT "C"; : COLOR 0: PRINT "APTURE "; : COLOR 15: PRINT "H"; : COLOR 0: PRINT "ELP! "
DO UNTIL EOF(1)
LINE INPUT #1, Text$
Numlines = Numlines + 1
Seeks&(Numlines) = CurSeek& ' Save starting position
CurSeek& = CurSeek& + LEN(Text$) + 2 ' Next position - 2 is
LOCATE 1, 60: COLOR 14, 3: PRINT Numlines
V$ = INKEY$
IF V$ = CHR$(27) THEN EXIT DO
LOOP ' for C/R & LF
LOCATE 1, 1
CurCol = 1 ' Current Column
SeekEl = 1 ' Current line
Escape = FALSE
COLOR 7, 1: X = 7
DO
GOSUB LoadAndDisplay
GOSUB KeyProcess
LOOP UNTIL Escape
CLOSE
LOCATE 25, 1: COLOR 7, 0: PRINT STRING$(80, 0): LOCATE 24, 1: COLOR 7, 0: PRINT "Thanks for Using The Ultimate Text Viewer Version 0.02 FREEWARE Copy! (c) 1994": GOTO QUIT
LoadAndDisplay:
SEEK #1, Seeks&(SeekEl)
FOR I = 2 TO 24
IF NOT EOF(1) THEN LINE INPUT #1, Text$ ELSE Text$ = ""
COLOR X, YC
Strg$ = SPACE$(80)
IF LEN(Text$) < CurCol THEN Text$ = Text$ + SPACE$(CurCol - LEN(Text$))
LSET Strg$ = MID$(Text$, CurCol)
IF NOT EOF(1) AND INSTR(1, Strg$, "") THEN LINE INPUT #1, Text$: Strg$ = SPACE$(80): LSET Strg$ = MID$(Text$, CurCol)
IF CAP = TRUE AND I = 2 THEN LOCATE I, 1, 0: COLOR 15, 4: PRINT Strg$: COLOR 7, 0: GOTO CF
LOCATE I, 1, 0: PRINT Strg$;
CF:
IF CAP = TRUE THEN LOCATE 1, 45: COLOR 1, 3: PRINT PS; : COLOR 0, 3: PRINT CHR$(26); : COLOR 1, 3: PRINT SeekEl
LOCATE 1, 60: COLOR 14, 3: PRINT Numlines; : COLOR 10: PRINT ":"; : COLOR 4: PRINT SeekEl; : COLOR 10: PRINT ":"; : COLOR 15: PRINT CurCol
COLOR X, YC
NEXT I
RETURN
KeyProcess:
DO
Ky$ = INKEY$
LOOP UNTIL LEN(Ky$) 'Wait for a keypress
IF LEN(Ky$) = 1 THEN 'Create a key code
KeyCode = ASC(Ky$) 'Regular character key
ELSE 'Extended key
KeyCode = -ASC(RIGHT$(Ky$, 1))
END IF
SELECT CASE KeyCode
CASE 27
Escape = TRUE ' ESC
CASE -72 ' Up Arrow
SeekEl = SeekEl - 1
IF SeekEl < 1 THEN SeekEl = 1: GOTO KeyProcess
CASE -80 ' Dn Arrow
SeekEl = SeekEl + 1
IF SeekEl > Numlines THEN SeekEl = SeekEl - 1: GOTO KeyProcess
CASE -77 ' Right Arrow
CurCol = CurCol + 1
CASE -75 ' Left Arrow
CurCol = CurCol - 1
IF CurCol < 1 THEN CurCol = 1: GOTO KeyProcess
CASE -73 ' Page Up
SeekEl = SeekEl - 23
IF SeekEl < 1 THEN SeekEl = 1
CASE -81, 13, 32 ' Page Dn
SeekEl = SeekEl + 23
IF SeekEl > Numlines THEN
SeekEl = Numlines - 23: GOTO KeyProcess
END IF
CASE -71 ' Home
LOCATE 1, 70: COLOR 15, 3: PRINT " "
SeekEl = 1
CASE -79 ' End
SeekEl = Numlines - 23
IF SeekEl < 1 THEN SeekEl = 1: GOTO KeyProcess
CASE 49
X = 11
CASE 50
X = 10
CASE 51
X = 3
CASE 52
X = 12
CASE 53
X = 13
CASE 54
X = 14
CASE 55
X = 7
CASE 56
X = 15
CASE 57
X = 9
CASE 70
GOSUB FKEY
CASE 102
GOSUB FKEY
CASE 67
GOSUB CAPTURE
CASE 99
GOSUB CAPTURE
CASE 72
GOSUB HELP
CASE 104
GOSUB HELP
CASE -59
CALL HELP2
CASE -60
TextFile$ = "TXT"
GOTO LISTFILES
CASE -61
TextFile$ = "*"
GOTO LISTFILES
CASE -62
FPC = TRUE: PCOPY 0, 1: GOTO PRINTER
CASE -63
PCOPY 0, 1: GOSUB CAPON
CASE -64
PCOPY 0, 1: GOSUB CAPOFF
CASE -65
PCOPY 0, 1: GOSUB SAVECAP
CASE -66
PCOPY 0, 1: GOSUB DOSSHELL
CASE ELSE
GOTO KeyProcess
END SELECT
RETURN
FKEY:
FPC = FALSE
PCOPY 0, 1
FOR R = 3 TO 11
LOCATE R, 4: COLOR 0, 0: PRINT STRING$(21, 0)
NEXT R
LOCATE 1, 3: COLOR 15, 4: PRINT " F"; : COLOR 10, 4: PRINT "ILE "
LOCATE 2, 2: COLOR 0, 3: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 3, 2: PRINT CHR$(179); : COLOR 15, 0: PRINT " O"; : COLOR 7, 0: PRINT "pen Text File... "; : COLOR 0, 3: PRINT CHR$(179)
LOCATE 4, 2: PRINT CHR$(179); : COLOR 15, 3: PRINT " L"; : COLOR 0: PRINT "ist All Files "; CHR$(179)
LOCATE 5, 2: PRINT CHR$(195); STRING$(19, 196); CHR$(180)
LOCATE 6, 2: PRINT CHR$(179); : COLOR 15, 3: PRINT " P"; : COLOR 0: PRINT "rint Entire File "; CHR$(179)
LOCATE 7, 2: PRINT CHR$(179); : COLOR 15, 3: PRINT " D"; : COLOR 0: PRINT "OS Shell... "; CHR$(179)
LOCATE 8, 2: PRINT CHR$(195); STRING$(19, 196); CHR$(180)
LOCATE 9, 2: PRINT CHR$(179); : COLOR 0, 3: PRINT " E"; : COLOR 15, 3: PRINT "x"; : COLOR 0, 3: PRINT "it "; CHR$(179)
LOCATE 10, 2: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
ROW = 3
FKEYSEL:
V$ = INKEY$
IF UCASE$(V$) = "X" THEN LOCATE 25, 1: COLOR 7, 0: PRINT STRING$(80, 0): LOCATE 24, 1: COLOR 7, 0: PRINT "Thanks for Using The Ultimate Text Viewer Version 0.02 FREEWARE Copy! (c) 1994": GOTO QUIT
IF UCASE$(V$) = "P" THEN GOTO PRINTER
IF UCASE$(V$) = "O" THEN TextFile$ = "TXT": GOTO LISTFILES
IF UCASE$(V$) = "L" THEN TextFile$ = "*": GOTO LISTFILES
IF UCASE$(V$) = "D" THEN GOTO DOSSHELL
IF V$ = CHR$(0) + "P" THEN ROW = ROW + 1: GOSUB DOWN
IF V$ = CHR$(0) + "H" THEN ROW = ROW - 1: GOSUB UP
IF V$ = CHR$(0) + "M" THEN PCOPY 1, 0: GOTO CAPTURE
IF V$ = CHR$(0) + "K" THEN PCOPY 1, 0: GOTO HELP
IF V$ = CHR$(13) THEN GOTO ENTER
IF V$ = CHR$(0) + ";" THEN CALL HELP2 'F1
IF V$ = CHR$(0) + "<" THEN TextFile$ = "TXT": GOTO LISTFILES 'F2
IF V$ = CHR$(0) + "=" THEN TextFile$ = "*": GOTO LISTFILES'F3
IF V$ = CHR$(0) + ">" THEN GOSUB PRINTER 'F4
IF V$ = CHR$(0) + "?" THEN GOTO CAPON 'F5
IF V$ = CHR$(0) + "@" THEN GOTO CAPOFF 'F6
IF V$ = CHR$(0) + "A" THEN GOTO SAVECAP 'F7
IF V$ = CHR$(0) + "B" THEN GOTO DOSSHELL 'F8
IF V$ = CHR$(27) THEN PCOPY 1, 0: RETURN
GOTO FKEYSEL
DOWN:
IF ROW = 8 THEN ROW = 3
IF ROW = 3 THEN LOCATE ROW, 3: COLOR 15, 0: PRINT " O"; : COLOR 7, 0: PRINT "pen Text File... ": LOCATE 9, 3: COLOR 0, 3: PRINT " E"; : COLOR 15, 3: PRINT "x"; : COLOR 0, 3: PRINT "it "
IF ROW = 4 THEN LOCATE ROW, 3: COLOR 15, 0: PRINT " L"; : COLOR 7, 0: PRINT "ist All Files ": LOCATE 3, 3: COLOR 15, 3: PRINT " O"; : COLOR 0, 3: PRINT "pen Text File... "
IF ROW = 5 THEN LOCATE 6, 3: COLOR 15, 0: PRINT " P"; : COLOR 7, 0: PRINT "rint Entire File ": LOCATE 4, 3: COLOR 15, 3: PRINT " L"; : COLOR 0, 3: PRINT "ist All Files "
IF ROW = 6 THEN LOCATE 7, 3: COLOR 15, 0: PRINT " D"; : COLOR 7, 0: PRINT "OS Shell... ": LOCATE 6, 3: COLOR 15, 3: PRINT " P"; : COLOR 0, 3: PRINT "rint Entire File "
IF ROW = 7 THEN LOCATE 9, 3: COLOR 7, 0: PRINT " E"; : COLOR 15, 0: PRINT "x"; : COLOR 7, 0: PRINT "it ": LOCATE 7, 3: COLOR 15, 3: PRINT " D"; : COLOR 0, 3: PRINT "OS Shell... "
RETURN
UP:
IF ROW = 2 THEN ROW = 7
IF ROW = 7 THEN LOCATE 3, 3: COLOR 15, 3: PRINT " O"; : COLOR 0, 3: PRINT "pen Text File... ": LOCATE 9, 3: COLOR 7, 0: PRINT " E"; : COLOR 15, 0: PRINT "x"; : COLOR 7, 0: PRINT "it "
IF ROW = 3 THEN LOCATE 4, 3: COLOR 15, 3: PRINT " L"; : COLOR 0, 3: PRINT "ist All Files ": LOCATE 3, 3: COLOR 15, 0: PRINT " O"; : COLOR 7, 0: PRINT "pen Text File... "
IF ROW = 4 THEN LOCATE 6, 3: COLOR 15, 3: PRINT " P"; : COLOR 0, 3: PRINT "rint Entire File ": LOCATE 4, 3: COLOR 15, 0: PRINT " L"; : COLOR 7, 0: PRINT "ist All Files "
IF ROW = 5 THEN LOCATE 7, 3: COLOR 15, 3: PRINT " D"; : COLOR 0, 3: PRINT "OS Shell... ": LOCATE 6, 3: COLOR 15, 0: PRINT " P"; : COLOR 7, 0: PRINT "rint Entire File "
IF ROW = 6 THEN LOCATE 9, 3: COLOR 0, 3: PRINT " E"; : COLOR 15, 3: PRINT "x"; : COLOR 0, 3: PRINT "it ": LOCATE 7, 3: COLOR 15, 0: PRINT " D"; : COLOR 7, 0: PRINT "OS Shell... "
RETURN
ENTER:
IF ROW = 7 THEN LOCATE 25, 1: COLOR 7, 0: PRINT STRING$(80, 0): LOCATE 24, 1: COLOR 7, 0: PRINT "Thanks for Using The Ultimate Text Viewer Version 0.02 FREEWARE Copy! (c) 1994": GOTO QUIT
IF ROW = 6 THEN GOTO DOSSHELL
IF ROW = 5 THEN GOTO PRINTER
IF ROW = 4 THEN TextFile$ = "*": GOTO LISTFILES
IF ROW = 3 THEN TextFile$ = "TXT": GOTO LISTFILES
LISTFILES:
PCOPY 1, 0
SHELL "DIR /AD/O > Drive.LST"
'=============================
' Current Drive / Path
'=============================
DosCmd$ = "DIR *." + TextFile$ + " /B /ON > DIR.LST"
SHELL DosCmd$
LOCATE 2, 4: COLOR 12, 0: PRINT CHR$(218); STRING$(72, 196); CHR$(191)
LOCATE 3, 4: PRINT CHR$(179); STRING$(72, 0); CHR$(179)
LOCATE 4, 4: PRINT CHR$(192); STRING$(72, 196); CHR$(217)
LOCATE 3, 6: COLOR 10: PRINT CurDir$ + "\*."; TextFile$
LOCATE 6, 10: COLOR 11: PRINT CHR$(218); STRING$(20, 196); CHR$(191)
FOR J = 7 TO 16
LOCATE J, 10: PRINT CHR$(179); STRING$(20, 0); CHR$(179)
NEXT J
LOCATE 17, 10: PRINT CHR$(192); STRING$(20, 196); CHR$(217)
FOR J = 7 TO 18
LOCATE J, 32: COLOR 7, 8: PRINT STRING$(2, 176)
IF J = 18 THEN LOCATE J, 12: PRINT STRING$(20, 176)
NEXT J
LOCATE 6, 36: COLOR 11: PRINT CHR$(218); STRING$(12, 196); CHR$(191)
FOR J = 7 TO 16
LOCATE J, 36: PRINT CHR$(179); STRING$(12, 0); CHR$(179)
NEXT J
LOCATE 17, 36: PRINT CHR$(192); STRING$(12, 196); CHR$(217)
FOR J = 7 TO 18
LOCATE J, 50: COLOR 7, 8: PRINT STRING$(2, 176)
IF J = 18 THEN LOCATE J, 38: PRINT STRING$(12, 176)
NEXT J
LOCATE 6, 54: COLOR 11: PRINT CHR$(218); STRING$(9, 196); CHR$(191)
FOR J = 7 TO 14
LOCATE J, 54: PRINT CHR$(179); STRING$(9, 0); CHR$(179)
NEXT J
LOCATE 15, 54: PRINT CHR$(192); STRING$(9, 196); CHR$(217)
FOR J = 7 TO 16
LOCATE J, 65: COLOR 7, 8: PRINT STRING$(2, 176)
IF J = 16 THEN LOCATE J, 56: PRINT STRING$(9, 176)
NEXT J
LOCATE 7, 57: COLOR 7: PRINT "[-A-]"
LOCATE 8, 57: PRINT "[-B-]"
LOCATE 9, 57: PRINT "[-C-]"
LOCATE 10, 57: PRINT "[-D-]"
LOCATE 11, 57: PRINT "[-E-]"
LOCATE 12, 57: PRINT "[-F-]"
LOCATE 13, 57: PRINT "[-G-]"
LOCATE 14, 57: PRINT "[-H-]"
TEXTPICK:
CLOSE 1
REDIM DirNames$(100)
I = 0
OPEN "DRIVE.LST" FOR INPUT AS #1
DO
INPUT #1, X$
IF INSTR(1, X$, "
") THEN
I = I + 1
DirNames$(I) = LEFT$(X$, 8)
END IF
LOOP WHILE NOT (EOF(1))
GR = I
I = 1
J = 7
DO
LOCATE J, 38: COLOR 7, 0: PRINT DirNames$(I)
IF I = GR THEN EXIT DO
I = I + 1
J = J + 1
LOOP UNTIL J = 17
CLOSE
FOR J = 7 TO 16
COLOR 15, 0
LOCATE J, 12: PRINT STRING$(17, 0)
NEXT J
FileNum = 0
File = 7
I = 7
N = 1
OPEN "DIR.LST" FOR INPUT AS #1
DO WHILE NOT EOF(1)
LINE INPUT #1, FileName$
FileNum = FileNum + 1
LOOP
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
DO WHILE NOT EOF(1)
LINE INPUT #1, FileName$
COLOR 7
LOCATE File, 14: PRINT FileName$
File = File + 1
IF File = 17 THEN EXIT DO
LOOP
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
'=============================================
' Select Text to View
'=============================================
IF EOF(1) THEN LOCATE 7, 13: COLOR 14, 0: PRINT "No File(s) Found": GOTO DIRECTORY
LINE INPUT #1, FileName$
I = 7
LOCATE I, 12: COLOR 15, 1: PRINT " " + FileName$ + " "
SELECTFILE:
V$ = INKEY$
IF V$ = CHR$(0) + "P" THEN GOSUB SELDOWN
IF V$ = CHR$(0) + "H" THEN GOSUB SELUP
IF V$ = CHR$(0) + "M" THEN COLOR 7, 0: LOCATE I, 12: PRINT " " + FileName$ + " ": GOTO DIRECTORY
IF V$ = CHR$(13) THEN GOTO SELENTER
IF V$ = CHR$(27) THEN File$ = "": CLOSE : KILL "DRIVE.LST": KILL "DIR.LST": GOTO START
GOTO SELECTFILE
SELDOWN:
IF EOF(1) THEN RETURN
COLOR 7, 0: GOSUB SELMAIN
LINE INPUT #1, FileName$
N = N + 1
I = I + 1
COLOR 15, 1
GOSUB SELMAIN
RETURN
SELUP:
IF N = 1 THEN RETURN
COLOR 7, 0: GOSUB SELMAIN
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
NU = 1
DO
LINE INPUT #1, FileName$
NU = NU + 1
LOOP UNTIL NU = N
N = N - 1: I = I - 1
COLOR 15, 1
GOSUB SELMAIN
RETURN
SELMAIN:
IF I = 17 THEN I = 16: GOSUB DISPLAYDOWN
IF I = 6 THEN I = 7: GOSUB DISPLAYUP: RETURN
IF I = 7 THEN LOCATE I, 12: PRINT " ": LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 8 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 9 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 10 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 11 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 12 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 13 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 14 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 15 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
IF I = 16 THEN LOCATE I, 12: PRINT " " + FileName$ + " "
RETURN
DISPLAYDOWN:
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
NL = 10
DO
LINE INPUT #1, FileName$
NL = NL + 1
LOOP UNTIL NL = N
FOR J = 7 TO 16
LINE INPUT #1, FileName$
COLOR 7, 0
LOCATE J, 14: PRINT " "
LOCATE J, 14: PRINT FileName$
NEXT J
COLOR 15, 1
RETURN
DISPLAYUP:
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
FOR H = 1 TO N
LINE INPUT #1, FileName$
NEXT H
LOCATE 7, 14: PRINT " "
COLOR 15, 1
GOSUB SELMAIN
FOR J = 8 TO 16
LINE INPUT #1, FileName$
COLOR 7, 0
LOCATE J, 14: PRINT " "
LOCATE J, 14: PRINT FileName$
NEXT J
CLOSE 1
OPEN "DIR.LST" FOR INPUT AS #1
FOR H = 1 TO N
LINE INPUT #1, FileName$
NEXT H
RETURN
SELENTER:
PCOPY 1, 0
CLOSE
KILL "DRIVE.LST"
KILL "DIR.LST"
File$ = FileName$
GOTO START
'===============================================
' Select Directories
'===============================================
DIRECTORY:
CLOSE 1
REDIM DirNames$(75)
I = 0
OPEN "DRIVE.LST" FOR INPUT AS #1
DO
INPUT #1, X$
IF INSTR(1, X$, "") THEN
I = I + 1
DirNames$(I) = LEFT$(X$, 8)
END IF
LOOP WHILE NOT (EOF(1))
GR = I
I = 1
J = 7
DO
LOCATE J, 38: COLOR 7, 0: PRINT DirNames$(I)
IF I = GR THEN EXIT DO
I = I + 1
J = J + 1
LOOP UNTIL J = 17
I = 1: C = 7
LOCATE C, 38: COLOR 15, 4: PRINT DirNames$(1)
DIRSEL:
V$ = INKEY$
IF V$ = CHR$(0) + "P" THEN GOSUB DIRDOWN
IF V$ = CHR$(0) + "H" THEN GOSUB DIRUP
IF V$ = CHR$(0) + "K" THEN GOTO TEXTPICK
IF V$ = CHR$(0) + "M" THEN GOTO DRIVE
IF V$ = CHR$(13) THEN GOTO DIRENTER
IF V$ = CHR$(27) THEN File$ = "": CLOSE : KILL "DRIVE.LST": KILL "DIR.LST": GOTO START
GOTO DIRSEL
DIRDOWN:
IF GR = I THEN RETURN
COLOR 7, 0
GOSUB DIRMAIN
C = C + 1: I = I + 1
COLOR 15, 4
GOSUB DIRMAIN
RETURN
DIRUP:
IF I = 1 THEN RETURN
COLOR 7, 0
GOSUB DIRMAIN
C = C - 1: I = I - 1
COLOR 15, 4
GOSUB DIRMAIN
RETURN
DIRMAIN:
IF C = 17 THEN C = 16: GOSUB DIRDISDOWN
IF C = 6 THEN C = 7: GOSUB DIRDISUP
LOCATE C, 38: PRINT DirNames$(I)
RETURN
DIRDISDOWN:
I = I - 10
FOR J = 7 TO 16
I = I + 1
COLOR 7, 0
LOCATE J, 38: PRINT DirNames$(I)
NEXT J
COLOR 15, 4
RETURN
DIRDISUP:
I = I - 1
FOR J = 7 TO 16
I = I + 1
COLOR 7, 0
LOCATE J, 38: PRINT DirNames$(I)
NEXT J
I = I - 9
COLOR 15, 4
RETURN
DIRENTER:
CLOSE
KILL "DRIVE.LST"
KILL "DIR.LST"
IF LEFT$(DirNames$(I), 2) = ". " THEN DirNames$(I) = MID$(CurrentDrive$, 15, 3)
DosCmd$ = "CD " + DirNames$(I)
SHELL DosCmd$
DIRENTER2:
SHELL "DIR /AD /O> DRIVE.LST"
DosCmd$ = "DIR *." + TextFile$ + " /B /ON > DIR.LST"
SHELL DosCmd$
OPEN "Drive.LST" FOR INPUT AS #1
DO
LINE INPUT #1, CurrentDrive$
LOOP UNTIL INSTR(1, CurrentDrive$, ":\")
CLOSE 1
Y = LEN(CurrentDrive$)
CurDir$ = MID$(CurrentDrive$, 15, Y)
LOCATE 3, 6: COLOR 15, 0: PRINT STRING$(71, 0)
IF RIGHT$(CurDir$, 1) = "\" THEN
LOCATE 3, 6: COLOR 10, 0: PRINT CurDir$ + "*." + TextFile$
ELSE
LOCATE 3, 6: COLOR 10, 0: PRINT CurDir$ + "\*." + TextFile$
END IF
FOR J = 7 TO 16
COLOR 15, 0
LOCATE J, 37: PRINT STRING$(11, 0)
NEXT J
FOR J = 7 TO 16
COLOR 15, 0
LOCATE J, 12: PRINT STRING$(17, 0)
NEXT J
GOTO TEXTPICK
'==================================
' Drive Switching
'==================================
DRIVE:
CLOSE 1
REDIM DirNames$(75)
I = 0
OPEN "DRIVE.LST" FOR INPUT AS #1
DO
INPUT #1, X$
IF INSTR(1, X$, "") THEN
I = I + 1
DirNames$(I) = LEFT$(X$, 8)
END IF
LOOP WHILE NOT (EOF(1))
GR = I
I = 1
J = 7
DO
LOCATE J, 38: COLOR 7, 0: PRINT DirNames$(I)
IF I = GR THEN EXIT DO
I = I + 1
J = J + 1
LOOP UNTIL J = 17
CLOSE
I = 7
LOCATE I, 56: COLOR 15, 5: PRINT " [-A-] "
DRIVESEL:
V$ = INKEY$
IF V$ = CHR$(0) + "K" THEN COLOR 7, 0: GOSUB DRIVEMAIN: GOTO DIRECTORY
IF V$ = CHR$(27) THEN File$ = "": CLOSE : KILL "DRIVE.LST": KILL "DIR.LST": GOTO START
IF V$ = CHR$(0) + "P" THEN GOSUB DRIVEDOWN
IF V$ = CHR$(0) + "H" THEN GOSUB DRIVEUP
IF V$ = CHR$(13) THEN GOTO DRIVEENTER
GOTO DRIVESEL
DRIVEDOWN:
COLOR 7, 0
GOSUB DRIVEMAIN
I = I + 1
COLOR 15, 5
GOSUB DRIVEMAIN
RETURN
DRIVEUP:
COLOR 7, 0
GOSUB DRIVEMAIN
I = I - 1
COLOR 15, 5
GOSUB DRIVEMAIN
RETURN
DRIVEMAIN:
IF I = 15 THEN I = 7
IF I = 6 THEN I = 14
IF I = 7 THEN LOCATE I, 56: PRINT " [-A-] "
IF I = 8 THEN LOCATE I, 56: PRINT " [-B-] "
IF I = 9 THEN LOCATE I, 56: PRINT " [-C-] "
IF I = 10 THEN LOCATE I, 56: PRINT " [-D-] "
IF I = 11 THEN LOCATE I, 56: PRINT " [-E-] "
IF I = 12 THEN LOCATE I, 56: PRINT " [-F-] "
IF I = 13 THEN LOCATE I, 56: PRINT " [-G-] "
IF I = 14 THEN LOCATE I, 56: PRINT " [-H-] "
RETURN
DRIVEENTER:
COLOR 7, 0: GOSUB DRIVEMAIN
KILL "DRIVE.LST"
KILL "DIR.LST"
IF I = 7 THEN SHELL "A:"
IF I = 8 THEN SHELL "B:"
IF I = 9 THEN SHELL "C:"
IF I = 10 THEN SHELL "D:"
IF I = 11 THEN SHELL "E:"
IF I = 12 THEN SHELL "F:"
IF I = 13 THEN SHELL "G:"
IF I = 14 THEN SHELL "H:"
GOTO DIRENTER2
'==================================================
' Restore Current Drive/Path
'==================================================
QUIT:
COLOR 7, 0
SHELL CurDrive$
DosCmd$ = "CD " + DefaultDir$
SHELL DosCmd$
END
DOSSHELL:
PCOPY 1, 0: COLOR 7, 0: CLS : SHELL "ECHO Type 'EXIT' to Return to The Ultimate Text Viewer": SHELL: PCOPY 1, 0: LOCATE 1, 1: COLOR 15, 3: PRINT " F"; : COLOR 0: PRINT "ILE "; : COLOR 15: PRINT "C"; : COLOR 0: PRINT "APTURE "; : COLOR 15: PRINT "H"; : COLOR 0: PRINT "ELP! ": GOTO FKEY
PRINTER:
OPEN "LPT1:BIN" FOR OUTPUT AS #2
PP = SeekEl
CLOSE #1
OPEN File$ FOR INPUT AS #1
FOR Y = 10 TO 12
LOCATE Y, 30: COLOR 0, 0: PRINT STRING$(31, 0)
NEXT Y
LOCATE 9, 28: COLOR 14, 4: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 10, 28: PRINT CHR$(179); : COLOR 15: PRINT " Press to Abort! "; : COLOR 14: PRINT CHR$(179)
LOCATE 11, 28: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
DO UNTIL EOF(1)
V$ = INKEY$
IF V$ = CHR$(27) THEN EXIT DO
LINE INPUT #1, Text$
LPRINT Text$
LOOP
CLOSE
OPEN File$ FOR INPUT AS #1
DO
LINE INPUT #1, Text$
LOOP UNTIL PP = SeekEl
PNEXT:
IF FPC = TRUE THEN RETURN ELSE GOTO FKEY
CAPTURE:
PCOPY 0, 1
LOCATE 1, 12: COLOR 15, 4: PRINT " C"; : COLOR 10: PRINT "APTURE "
FOR R = 3 TO 8
LOCATE R, 13: COLOR 0, 0: PRINT STRING$(15, 0)
NEXT R
LOCATE 2, 11: COLOR 0, 3: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 3, 11: PRINT CHR$(179); : COLOR 7, 0: PRINT " T"; : COLOR 7, 0: PRINT "urn "; : COLOR 15, 0: PRINT "O"; : COLOR 7, 0: PRINT "n... "; : COLOR 0, 3: PRINT CHR$(179)
LOCATE 4, 11: PRINT CHR$(179); : COLOR 0: PRINT " Turn O"; : COLOR 15, 3: PRINT "f"; : COLOR 0: PRINT "f "; CHR$(179)
LOCATE 5, 11: PRINT CHR$(195); STRING$(13, 196); CHR$(180)
LOCATE 6, 11: PRINT CHR$(179); : COLOR 15, 3: PRINT " S"; : COLOR 0: PRINT "ave As... "; CHR$(179)
LOCATE 7, 11: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
ROW = 3
CAPTUREKEY:
V$ = INKEY$
IF V$ = CHR$(27) THEN PCOPY 1, 0: RETURN
IF V$ = CHR$(13) THEN GOTO CAPENTER
IF UCASE$(V$) = "O" THEN GOTO CAPON
IF UCASE$(V$) = "F" THEN GOTO CAPOFF
IF UCASE$(V$) = "S" THEN GOTO SAVECAP
IF V$ = CHR$(0) + "P" THEN ROW = ROW + 1: GOSUB CAPDOWN
IF V$ = CHR$(0) + "H" THEN ROW = ROW - 1: GOSUB CAPUP
IF V$ = CHR$(0) + "K" THEN PCOPY 1, 0: GOTO FKEY
IF V$ = CHR$(0) + "M" THEN PCOPY 1, 0: GOTO HELP
IF V$ = CHR$(0) + ";" THEN CALL HELP2 'F1
IF V$ = CHR$(0) + "<" THEN TextFile$ = "TXT": GOTO LISTFILES'F2
IF V$ = CHR$(0) + "=" THEN TextFile$ = "*": GOTO LISTFILES'F3
IF V$ = CHR$(0) + ">" THEN GOTO PRINTER 'F4
IF V$ = CHR$(0) + "?" THEN GOTO CAPON 'F5
IF V$ = CHR$(0) + "@" THEN GOTO CAPOFF 'F6
IF V$ = CHR$(0) + "A" THEN GOTO SAVECAP 'F7
IF V$ = CHR$(0) + "B" THEN GOTO DOSSHELL 'F8
GOTO CAPTUREKEY
CAPDOWN:
IF ROW = 6 THEN ROW = 3
IF ROW = 3 THEN LOCATE 3, 12: COLOR 7, 0: PRINT " Turn "; : COLOR 15, 0: PRINT "O"; : COLOR 7, 0: PRINT "n... ": LOCATE 6, 12: COLOR 15, 3: PRINT " S"; : COLOR 0, 3: PRINT "ave As... "
IF ROW = 4 THEN LOCATE 4, 12: COLOR 7, 0: PRINT " Turn O"; : COLOR 15, 0: PRINT "f"; : COLOR 7, 0: PRINT "f ": LOCATE 3, 12: COLOR 0, 3: PRINT " Turn "; : COLOR 15, 3: PRINT "O"; : COLOR 0: PRINT "n... "
IF ROW = 5 THEN LOCATE 6, 12: COLOR 15, 0: PRINT " S"; : COLOR 7, 0: PRINT "ave As... ": LOCATE 4, 12: COLOR 0, 3: PRINT " Turn O"; : COLOR 15, 3: PRINT "f"; : COLOR 0, 3: PRINT "f "
RETURN
CAPUP:
IF ROW = 2 THEN ROW = 5
IF ROW = 3 THEN LOCATE 3, 12: COLOR 7, 0: PRINT " Turn "; : COLOR 15, 0: PRINT "O"; : COLOR 7, 0: PRINT "n... ": LOCATE 4, 12: COLOR 0, 3: PRINT " Turn O"; : COLOR 15, 3: PRINT "f"; : COLOR 0, 3: PRINT "f "
IF ROW = 4 THEN LOCATE 4, 12: COLOR 7, 0: PRINT " Turn O"; : COLOR 15, 0: PRINT "f"; : COLOR 7, 0: PRINT "f ": LOCATE 6, 12: COLOR 15, 3: PRINT " S"; : COLOR 0, 3: PRINT "ave As... "
IF ROW = 5 THEN LOCATE 6, 12: COLOR 15, 0: PRINT " S"; : COLOR 7, 0: PRINT "ave As... ": LOCATE 3, 12: COLOR 0, 3: PRINT " Turn "; : COLOR 15, 3: PRINT "O"; : COLOR 0, 3: PRINT "n... "
RETURN
CAPENTER:
IF ROW = 3 THEN GOTO CAPON
IF ROW = 4 THEN GOTO CAPOFF
IF ROW = 5 THEN GOTO SAVECAP
CAPON:
PS = SeekEl
PCOPY 1, 0
LOCATE 1, 36: COLOR 10, 3: PRINT "Capture:"; : COLOR 1: PRINT PS; : COLOR 0, 3: PRINT CHR$(26); SeekEl
CAP = TRUE
RETURN
CAPOFF:
PCOPY 1, 0
LOCATE 1, 36: COLOR 3, 3: PRINT " "
CAP = FALSE
RETURN
SAVECAP:
IF CAP = FALSE THEN PCOPY 1, 0: RETURN
IF PS > SeekEl THEN PCOPY 1, 0: RETURN
CLOSE #1
OPEN File$ FOR INPUT AS #1
PS2 = PS
DO
IF PS = 1 THEN EXIT DO
LINE INPUT #1, SAVEDTEXT$
PS = PS - 1
LOOP UNTIL PS = 1
FOR V = 11 TO 13
LOCATE V, 4: COLOR 0, 0: PRINT STRING$(76, 0)
NEXT V
COLOR 10, 2
LOCATE 10, 2: PRINT "Ú"; STRING$(74, 196); "¿"
LOCATE 11, 2: PRINT CHR$(179); STRING$(74, 0); CHR$(179)
LOCATE 12, 2: PRINT "À"; STRING$(74, 196); "Ù"
LOCATE 11, 4: COLOR 14, 2: PRINT "Save As: "; : COLOR 15, 2: LINE INPUT ""; FILNAM$
IF FILNAM$ = "" THEN PCOPY 1, 0: PS = PS2: RETURN
OPEN FILNAM$ FOR APPEND AS #2
PS2 = PS2 - 1
FOR Y = 10 TO 12
LOCATE Y, 30: COLOR 7, 8: PRINT STRING$(31, 176)
NEXT Y
LOCATE 9, 28: COLOR 14, 4: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 10, 28: PRINT CHR$(179); : COLOR 15: PRINT " Press to STOP! "; : COLOR 14: PRINT CHR$(179)
LOCATE 11, 28: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
DO
IF EOF(1) THEN EXIT DO
V$ = INKEY$
IF V$ = CHR$(27) THEN EXIT DO
LINE INPUT #1, SAVEDTEXT$
PRINT #2, SAVEDTEXT$
PS2 = PS2 + 1
LOOP UNTIL PS2 = SeekEl
PS = PS2
CLOSE #2
PCOPY 1, 0
RETURN
HELP:
PCOPY 0, 1
LOCATE 1, 24: COLOR 15, 4: PRINT " H"; : COLOR 10: PRINT "ELP! "
FOR V = 3 TO 8
LOCATE V, 25: COLOR 0, 0: PRINT STRING$(18, 0)
NEXT V
LOCATE 2, 23: COLOR 0, 3: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 3, 23: PRINT CHR$(179); : COLOR 15, 0: PRINT " G"; : COLOR 7, 0: PRINT "eneral Help "; : COLOR 0, 3: PRINT CHR$(179)
LOCATE 4, 23: PRINT CHR$(179); : COLOR 15, 3: PRINT " C"; : COLOR 0: PRINT "ommand Keys "; CHR$(179)
LOCATE 5, 23: PRINT CHR$(195); STRING$(16, 196); CHR$(180)
LOCATE 6, 23: PRINT CHR$(179); : COLOR 0, 3: PRINT " Capturing "; : COLOR 15, 3: PRINT "T"; : COLOR 0, 3: PRINT "ext "; CHR$(179)
LOCATE 7, 23: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
ROW = 3
HELPKEY:
V$ = INKEY$
IF V$ = CHR$(27) THEN PCOPY 1, 0: RETURN
IF V$ = CHR$(0) + "P" THEN ROW = ROW + 1: GOSUB HELPDOWN
IF V$ = CHR$(0) + "H" THEN ROW = ROW - 1: GOSUB HELPUP
IF V$ = CHR$(0) + "M" THEN PCOPY 1, 0: GOTO FKEY
IF V$ = CHR$(0) + "K" THEN PCOPY 1, 0: GOTO CAPTURE
IF UCASE$(V$) = "G" THEN CALL HELP1
IF UCASE$(V$) = "C" THEN CALL HELP2
IF UCASE$(V$) = "T" THEN CALL HELP3
IF V$ = CHR$(13) THEN GOSUB HELPENTER
IF V$ = CHR$(0) + ";" THEN CALL HELP2 'F1
IF V$ = CHR$(0) + "<" THEN TextFile$ = "TXT": GOTO LISTFILES'F2
IF V$ = CHR$(0) + "=" THEN TextFile$ = "*": GOTO LISTFILES'F3
IF V$ = CHR$(0) + ">" THEN GOTO PRINTER 'F4
IF V$ = CHR$(0) + "?" THEN GOTO CAPON 'F5
IF V$ = CHR$(0) + "@" THEN GOTO CAPOFF 'F6
IF V$ = CHR$(0) + "A" THEN GOTO SAVECAP 'F7
IF V$ = CHR$(0) + "B" THEN GOTO DOSSHELL 'F8
GOTO HELPKEY
HELPDOWN:
IF ROW = 6 THEN ROW = 3
IF ROW = 3 THEN LOCATE 3, 24: COLOR 15, 0: PRINT " G"; : COLOR 7, 0: PRINT "eneral Help ": LOCATE 6, 24: COLOR 0, 3: PRINT " Capturing "; : COLOR 15, 3: PRINT "T"; : COLOR 0, 3: PRINT "ext "
IF ROW = 4 THEN LOCATE 4, 24: COLOR 15, 0: PRINT " C"; : COLOR 7, 0: PRINT "ommand Keys ": LOCATE 3, 24: COLOR 15, 3: PRINT " G"; : COLOR 0, 3: PRINT "eneral Help "
IF ROW = 5 THEN LOCATE 6, 24: COLOR 7, 0: PRINT " Capturing "; : COLOR 15, 0: PRINT "T"; : COLOR 7, 0: PRINT "ext ": LOCATE 4, 24: COLOR 15, 3: PRINT " C"; : COLOR 0, 3: PRINT "ommand Keys "
RETURN
HELPUP:
IF ROW = 2 THEN ROW = 5
IF ROW = 3 THEN LOCATE 3, 24: COLOR 15, 0: PRINT " G"; : COLOR 7, 0: PRINT "eneral Help ": LOCATE 4, 24: COLOR 15, 3: PRINT " C"; : COLOR 0, 3: PRINT "ommand Keys "
IF ROW = 4 THEN LOCATE 4, 24: COLOR 15, 0: PRINT " C"; : COLOR 7, 0: PRINT "ommand Keys ": LOCATE 6, 24: COLOR 0, 3: PRINT " Capturing "; : COLOR 15, 3: PRINT "T"; : COLOR 0, 3: PRINT "ext "
IF ROW = 5 THEN LOCATE 6, 24: COLOR 7, 0: PRINT " Capturing "; : COLOR 15, 0: PRINT "T"; : COLOR 7, 0: PRINT "ext ": LOCATE 3, 24: COLOR 15, 3: PRINT " G"; : COLOR 0, 3: PRINT "eneral Help "
RETURN
HELPENTER:
IF ROW = 3 THEN CALL HELP1
IF ROW = 4 THEN CALL HELP2
IF ROW = 5 THEN CALL HELP3
RETURN
ERRORHANDLE:
IF ERR = 53 OR ERR = 52 THEN
COLOR 0, 1
FOR O = 1 TO 25
LOCATE O, 1: PRINT STRING$(80, 0)
NEXT O
COLOR 15, 4: LOCATE 25, 1: PRINT " The Ultimate Text Viewer Version 0.02 FREEWARE"; : COLOR 7, 4: PRINT " <"; : COLOR 11: PRINT "1"; : COLOR 10: PRINT "2"; : COLOR 3: PRINT "3"; : COLOR 12: PRINT "4"; : COLOR 13: PRINT "5"; : COLOR 14: PRINT "6"; : COLOR 7: PRINT "7"; : COLOR 15: PRINT "8"; : COLOR 9: PRINT "9"; : COLOR 7: PRINT ">"; : COLOR 10: PRINT " Color Change "
COLOR 0, 1: LOCATE 24, 1: PRINT STRING$(80, 0)
LOCATE 1, 1: COLOR 15, 3: PRINT " F"; : COLOR 0: PRINT "ILE "; : COLOR 15: PRINT "C"; : COLOR 0: PRINT "APTURE "; : COLOR 15: PRINT "H"; : COLOR 0: PRINT "ELP! "
LOCATE 4, 1: COLOR 7, 1
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ±Û±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛÛÛÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ"
PRINT " "
PRINT " ±ÛÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛ ±ÛÛÛÛÛÛ ±ÛÛÛ ±ÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛ ±ÛÛ ±ÛÛ ±ÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ"
PRINT " ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ±Û±ÛÛ ±ÛÛ ±ÛÛ ±ÛÛ"
PRINT " ±ÛÛÛÛÛ ±ÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛÛÛÛÛÛ ±ÛÛ ±ÛÛÛ"
PRINT
PRINT " Programmed by William Yu (c) 1994 UTV Version 0.02"
RESUME FKEY
END IF
IF ERR = 25 THEN
LOCATE 10, 20
FOR Y = 10 TO 13
LOCATE Y, 30: COLOR 0, 0: PRINT STRING$(31, 0)
NEXT Y
LOCATE 9, 28: COLOR 14, 4: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 10, 28: PRINT CHR$(179); : COLOR 15: PRINT " No Printer Port Detected! "; : COLOR 14: PRINT CHR$(179)
LOCATE 11, 28: PRINT CHR$(179); : COLOR 15: PRINT " PLEASE TURN YOUR PRINTER ON "; : COLOR 14: PRINT CHR$(179)
LOCATE 12, 28: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
WHILE INKEY$ = "": WEND: PCOPY 1, 0
LOCATE 1, 1: COLOR 15, 3: PRINT " F"; : COLOR 0: PRINT "ILE "
RESUME PNEXT
END IF
PCOPY 1, 0
RESUME FKEY
REM $STATIC
SUB HELP1
PCOPY 0, 2
LOCATE 3, 3: COLOR 10, 2: PRINT CHR$(218); STRING$(72, 196); CHR$(191)
FOR O = 4 TO 21
LOCATE O, 3: COLOR 10, 2: PRINT CHR$(179); STRING$(72, 0); CHR$(179)
NEXT O
LOCATE 22, 3: PRINT CHR$(192); STRING$(72, 196); CHR$(217)
COLOR 7, 8: LOCATE 23, 5: PRINT STRING$(74, 176)
FOR O = 4 TO 22
LOCATE O, 77: PRINT STRING$(2, 176)
NEXT O
LOCATE 3, 34: COLOR 15, 2: PRINT "GENERAL HELP"
LOCATE 4, 5: COLOR 0, 2: PRINT "Starting up The Ultimate Text Viewer with command line:"
LOCATE 5, 8: COLOR 15, 2: PRINT "UTV <[Drive:Path]FileName.Ext> Example: "; : COLOR 14: PRINT "UTV UTV.TXT"
LOCATE 6, 5: COLOR 0: PRINT "Starting up The Ultimate Text Viewer Without the Command Line:"
LOCATE 7, 8: COLOR 15: PRINT "If you happen to run the program without a command line you will be"
LOCATE 8, 8: PRINT "able to select a file using the FILE command and selecting"
LOCATE 9, 10: COLOR 14: PRINT "Open a Text File "; : COLOR 10: PRINT "(*.TXT will be displayed)"
LOCATE 10, 10: COLOR 14: PRINT "List all Files "; : COLOR 10: PRINT "(*.* in current directory will be displayed)"
LOCATE 11, 5: COLOR 0: PRINT "Error Control:"
LOCATE 12, 8: COLOR 15: PRINT "When selecting a file, there are many different drives from which"
LOCATE 13, 8: PRINT "you can choose from, please don't select a drive you know does not"
LOCATE 14, 8: PRINT "function or don't have."
LOCATE 21, 28: COLOR 11: PRINT "Press any key to continue..."
WHILE INKEY$ = "": WEND
PCOPY 2, 0
END SUB
SUB HELP2
PCOPY 0, 2
LOCATE 3, 3: COLOR 10, 2: PRINT CHR$(218); STRING$(72, 196); CHR$(191)
FOR O = 4 TO 21
LOCATE O, 3: COLOR 10, 2: PRINT CHR$(179); STRING$(72, 0); CHR$(179)
NEXT O
LOCATE 22, 3: PRINT CHR$(192); STRING$(72, 196); CHR$(217)
COLOR 7, 8: LOCATE 23, 5: PRINT STRING$(74, 176)
FOR O = 4 TO 22
LOCATE O, 77: PRINT STRING$(2, 176)
NEXT O
LOCATE 3, 27: COLOR 15, 2: PRINT "COMMAND KEYS/SHORT CUT KEYS"
LOCATE 4, 5: COLOR 0: PRINT "Scrolling Text & Menu Commands:"
LOCATE 5, 8: COLOR 15: PRINT CHR$(24); CHR$(25); : COLOR 14: PRINT " Up/Down "; : COLOR 15: PRINT CHR$(27); CHR$(26); : COLOR 14: PRINT " Left/Right "; : COLOR 15: PRINT " PGDN/PGDN "; : COLOR 14: PRINT "Up a Page/Down a Page"; : COLOR 15: PRINT " ESC"; : COLOR 14: PRINT " Exits"
LOCATE 6, 8: COLOR 15: PRINT "F"; : COLOR 14: PRINT " - FILE COMMAND"; : COLOR 11: PRINT " Open New Text File for Viewing/Printing/DOS Shell"
LOCATE 7, 8: COLOR 15: PRINT "C"; : COLOR 14: PRINT " - CAPTURE TEXT"; : COLOR 11: PRINT " Capture Certain Lines of text and saving it as..."
LOCATE 8, 8: COLOR 15: PRINT "H"; : COLOR 14: PRINT " - HELP ON UTV "; : COLOR 11: PRINT " This screen right here"
LOCATE 9, 8: COLOR 15: PRINT "1 to 9 produces a color change to the current TEXT"
LOCATE 10, 8: COLOR 11: PRINT "1 = Light Cyan 2 = Green 3 = Cyan 4 = Red 5 = Magenta 6 = Yellow"
LOCATE 11, 8: PRINT "7 = Grey (Default Color) 8 = White 9 = Blue"
LOCATE 12, 5: COLOR 0: PRINT "Short Cut Keys:"
LOCATE 13, 8: COLOR 15: PRINT "F1 "; : COLOR 14: PRINT "= Displays all the Command Keys (This Help Screen)"
LOCATE 14, 8: COLOR 15: PRINT "F2 "; : COLOR 14: PRINT "= Open a Text File"
LOCATE 15, 8: COLOR 15: PRINT "F3 "; : COLOR 14: PRINT "= List All Files"
LOCATE 16, 8: COLOR 15: PRINT "F4 "; : COLOR 14: PRINT "= Print Entire Text"
LOCATE 17, 8: COLOR 15: PRINT "F5 "; : COLOR 14: PRINT "= Turn Capture ON"
LOCATE 18, 8: COLOR 15: PRINT "F6 "; : COLOR 14: PRINT "= Turn Capture OFF"
LOCATE 19, 8: COLOR 15: PRINT "F7 "; : COLOR 14: PRINT "= Save Captured Text As..."
LOCATE 20, 8: COLOR 15: PRINT "F8 "; : COLOR 14: PRINT "= DOS Shell"
LOCATE 21, 27: COLOR 4, 2: PRINT "Press any key to continue..."
WHILE INKEY$ = "": WEND
PCOPY 2, 0
END SUB
SUB HELP3
PCOPY 0, 2
LOCATE 3, 3: COLOR 10, 2: PRINT CHR$(218); STRING$(72, 196); CHR$(191)
FOR O = 4 TO 21
LOCATE O, 3: COLOR 10, 2: PRINT CHR$(179); STRING$(72, 0); CHR$(179)
NEXT O
LOCATE 22, 3: PRINT CHR$(192); STRING$(72, 196); CHR$(217)
COLOR 7, 8: LOCATE 23, 5: PRINT STRING$(74, 176)
FOR O = 4 TO 22
LOCATE O, 77: PRINT STRING$(2, 176)
NEXT O
LOCATE 3, 32: COLOR 15, 2: PRINT "CAPTURING TEXT"
LOCATE 4, 5: COLOR 0: PRINT "Commands for Capturing Text:"
LOCATE 5, 8: COLOR 15: PRINT "Capturing Text is quite simple, F5 to turn capture ON or you could"
LOCATE 6, 8: PRINT "type 'C' and select Turn On"
LOCATE 7, 8: PRINT "After you have turned Capture ON, a red line should appear below the"
LOCATE 8, 8: PRINT "menu commands. That is the first line that will be captured."
LOCATE 9, 8: PRINT "You will see a"; : COLOR 14: PRINT " Capturing 10 "; CHR$(26); " 10"; : COLOR 15: PRINT " on the top line. (Example only)"
LOCATE 10, 8: COLOR 11: PRINT "First line to be captured"; : COLOR 12: PRINT CHR$(24); CHR$(24); " "; CHR$(24); CHR$(24); : COLOR 11: PRINT "this is the last line to be captured"
LOCATE 11, 8: COLOR 15: PRINT "Scroll down to capture the desired amount of lines."
LOCATE 12, 8: COLOR 14: PRINT "*** Each time a line is scrolled past the red line, it is captured."
LOCATE 13, 8: COLOR 15: PRINT "You may turn Capture off anytime by pressing F6 or selecting it from"
LOCATE 14, 8: PRINT "the CAPTURE Commands. You should SAVE your Captured Text before you"
LOCATE 15, 8: PRINT "do that by pressing F7 or selecting SAVE AS from the CAPTURE Command"
LOCATE 16, 5: COLOR 0: PRINT "Error Control:"
LOCATE 17, 8: COLOR 15: PRINT "Capture 100 "; CHR$(26); " 20 will NOT save, the first number has to be lower."
LOCATE 18, 8: PRINT "When you save the captured text as a filename that already exists,"
LOCATE 19, 8: PRINT "it will APPEND (Add the captured text) 'til end of file."
LOCATE 21, 27: COLOR 11: PRINT "Press any key to continue..."
WHILE INKEY$ = "": WEND
PCOPY 2, 0
END SUB