'===========================================================================
' Subject: DOS-EMU SCREEN SAVER               Date: 05-18-98 (18:45)       
'  Author: Nitin Reddy                        Code: QB, QBasic, PDS        
'  Origin: reddy@emirates.net.ae            Packet: MISC.ABC
'===========================================================================
' Screen saver which simulates someone typing dos commands.
'
DECLARE SUB Rest (s#)
DECLARE SUB press (Cmd$)
DECLARE SUB Typing (text$, Time#, Snd#)
DECLARE SUB Halt (t#)
DECLARE SUB Center (row, text$)
DIM SHARED dir AS STRING
DIM SHARED Resting AS LONG
CLS
Center 12, "Press F10 to quit"
Center 23, "Please Wait..."
SLEEP 2
CLS
SHELL "CD>Tmpdir.dat"
OPEN "Tmpdir.dat" FOR INPUT AS #1
LINE INPUT #1, dir
CLOSE
dir = dir + ">"
ON KEY(10) GOSUB quit
KEY(10) ON
DO
SLEEP 1
Typing "dir", 1000, 0
press "dir"
SLEEP 1
Typing "cls", 1000, 0
press "cls"
SLEEP 1
SLEEP 1
Typing "dir c:\dos\", 1000, 0
press "dir c:\dos\"
SLEEP 1
Typing "dir/w", 1000, 0
press "dir/w"
SLEEP 1
Typing "dir c:\", 1000, 0
press "dir c:\"
SLEEP 1
Typing "dir/ad/w", 1000, 0
press "dir/ad/w"
SLEEP 1
Typing "type c:\autoexec.bat", 1000, 0
press "type c:\autoexec.bat"
SLEEP 1
LOOP

quit:
SYSTEM

SUB Center (row, text$)
LOCATE row, 41 - LEN(text$) / 2
PRINT text$;
END SUB

SUB Halt (t#)
FOR Resting = 0 TO 1000 * t#: NEXT Resting
END SUB

SUB press (Cmd$)
'PRINT dir; Cmd$
SHELL Cmd$
END SUB

SUB Rest (s#)
FOR i% = 0 TO 1000 * s#
NEXT i%
END SUB

SUB Typing (text$, Time#, Snd#)
IF text$ = "" THEN EXIT SUB
RANDOMIZE TIMER
Typr = INT(RND * 10)
PRINT dir;

FOR Letter% = 1 TO LEN(text$)
IF Typr = 4 THEN Halt 300
Lettr$ = MID$(text$, Letter%, 1)
Halt Time#
IF Snd# = 1 THEN SOUND 32700, 1
PRINT Lettr$;
NEXT Letter%
Halt 2000
PRINT CHR$(13);

END SUB
