SHORTIES\ISEXAMPL.BAT  ·  BAT  ·  3.6 KB  ·  1989-09-05  ·  from PCPlus_Issue-39_Dec-1989-FluxEngine-360kB
ECHO OFF
REM ****** It's vital to remember that IF ERRORLEVEL tests are "n or above"
REM ****** thus the test "IF ERRORLEVEL 0" will pass 0, 1, etc.
:START
CLS
ECHO This batch file demonstrates the use of IS.COM
PAUSE
IS ANSI
CLS
echo Ansi test:
IF ERRORLEVEL 3 GOTO COLWITH
IF ERRORLEVEL 2 GOTO COLWOUT
IF ERRORLEVEL 1 GOTO MONWITH
IF ERRORLEVEL 0 GOTO MONWOUT
:COLWOUT
ECHO BATCH SAYS: COLOUR WITHOUT ANSI.SYS
GOTO ANFIN
:COLWITH
ECHO BATCH SAYS: COLOUR WITH ANSI.SYS
GOTO ANFIN
:MONWOUT
ECHO BATCH SAYS: MONO WITHOUT ANSI.SYS
GOTO ANFIN
:MONWITH
ECHO BATCH SAYS: MONO WITH ANSI.SYS
:ANFIN
REM *
IS EGA > NUL
IF ERRORLEVEL 1 ECHO BATCH SAYS: Screen is EGA/VGA
REM *
ECHO Maths test:
IS MATHS > NUL
IF ERRORLEVEL 1 ECHO BATCH SAYS: Maths chip found.
IF NOT ERRORLEVEL 1 ECHO BATCH SAYS: No maths chip found.
REM *
ECHO Turbo test:
IS TURBO > NUL
IF ERRORLEVEL 1 ECHO BATCH SAYS: In turbo mode
IF NOT ERRORLEVEL 1 ECHO BATCH SAYS: NOT turbo
REM *
ECHO Test if the PC is an AT
IS AT > NUL
IF ERRORLEVEL 1 ECHO BATCH SAYS: Yes - AT
IF NOT ERRORLEVEL 1 ECHO BATCH SAYS: NOT an AT
REM *
ECHO Printer test
IS PRINTER > NUL
IF ERRORLEVEL 1 GOTO YPR
IF ERRORLEVEL 0 GOTO NPR
:YPR
ECHO BATCH SAYS: Your printer is ONLINE
IS > PRN
GOTO PREND
:NPR
ECHO BATCH SAYS: Your printer is OFFLINE
:PREND
REM *
ECHO Floppy test, drive A:
IS A: > NUL
IF ERRORLEVEL 1 ECHO BATCH SAYS You have a floppy in A:
IF NOT ERRORLEVEL 1 ECHO BATCH SAYS You dont have a floppy in A:
REM *
ECHO Version test
IS VERSION > NUL
IF ERRORLEVEL 4 GOTO VFOUR
IF ERRORLEVEL 3 GOTO VTHREE
IF ERRORLEVEL 2 GOTO VTWO
:VFOUR
ECHO BATCH SAYS: You have DOS version 4
GOTO FINISH
:VTHREE
ECHO BATCH SAYS: You have DOS version 3
GOTO FINDOS
:VTWO
ECHO BATCH SAYS: You have DOS version 2
:FINDOS
REM *
ECHO Memory size.
IS MEMSIZE > NUL
IF ERRORLEVEL 25 ECHO BATCH SAYS: You have at least 256k
IF ERRORLEVEL 51 ECHO BATCH SAYS: You have at least 512k
IF ERRORLEVEL 64 ECHO BATCH SAYS: You have 640k
PAUSE
REM ****** We have to do IF NOT 1 here, as the test is "0 or above"
CLS
:KLOOP
ECHO Please tap the space-bar to stop this loop...
IS KEY > NUL
IF NOT ERRORLEVEL 1 GOTO KLOOP
ECHO Thank you.
REM *
IS DRIVES > NUL
IF ERRORLEVEL 3 GOTO UGOTH
IF ERRORLEVEL 2 GOTO TWIN
ECHO You have a single floppy machine.
GOTO CURD
:TWIN
ECHO You have a twin-floppy machine.
GOTO CURD
:UGOTH
ECHO You have a hard disk machine.
GOTO CURD
:CURD
REM *
ECHO The current drive is
IS CURRENT > NUL
IF ERRORLEVEL 3 GOTO DRC
IF ERRORLEVEL 2 GOTO DRB
IF ERRORLEVEL 1 GOTO DRA
ECHO Its not A, B or C:
GOTO HTEST
:DRC
ECHO drive C:
GOTO HTEST
:DRB
ECHO drive B:
GOTO HTEST
:DRA
ECHO drive A:
REM *
:HTEST
IS HARD > NUL
IF ERRORLEVEL 1 ECHO It's a HARD drive.
IF NOT ERRORLEVEL 1 ECHO It's a floppy.
IS MOUSE > NUL
IF ERRORLEVEL 1 GOTO YMOUSE
ECHO You dont have a mouse installed.
GOTO NOMOUSE
:YMOUSE
ECHO You have a mouse installed. Press a mouse button to continue...
IS BUTTON > NUL
IF ERRORLEVEL 2 ECHO You pressed the RIGHT button.
IF NOT ERRORLEVEL 2 ECHO You pressed the LEFT button.
:NOMOUSE
REM *
IS NETWORK > NUL
IF ERRORLEVEL 1 ECHO We are networked.
IF NOT ERRORLEVEL 1 ECHO We are not networked.
REM *
:RLOOP
PAUSE
CLS
ECHO IS REPLY test.
ECHO.
ECHO 1 to list syntax
ECHO 2 to list help
ECHO 3 to run the tests again
ECHO 4 test IS RANDOM (errlev 0-3)
ECHO 5 to quit
ECHO.
IS REPLY
IF ERRORLEVEL 5 GOTO QUIT
IF ERRORLEVEL 4 GOTO GUESS
IF ERRORLEVEL 3 GOTO START
IF ERRORLEVEL 2 GOTO LHELP
CLS
IS
GOTO RLOOP
:LHELP
CLS
IS HELP
GOTO RLOOP
:GUESS
IS RANDOM
ECHO.
GOTO RLOOP
:QUIT