@ECHO OFF REM One-time deployment script for DOS Update System REM Installs automatic update system on DOS 6.22 machines REM Usage: T:\COMMON\ProdSW\DEPLOY.BAT machine-name REM Example: T:\COMMON\ProdSW\DEPLOY.BAT TS-4R REM Version: 2.0 - Simplified deployment REM Last modified: 2026-01-19 CLS REM Check machine name parameter provided IF "%1"=="" GOTO NO_MACHINE_NAME REM Save machine name to variable SET MACHINE=%1 ECHO ============================================================== ECHO DOS Update System - Deployment ECHO ============================================================== ECHO Machine: %MACHINE% ECHO ============================================================== ECHO. ECHO Installing automatic update system... ECHO. ECHO Files to install: ECHO - AUTOEXEC.BAT (startup configuration) ECHO - NWTOC.BAT (download updates) ECHO - CTONW.BAT (upload test data) ECHO - UPDATE.BAT (full backup) ECHO - CHECKUPD.BAT (check updates) ECHO - STAGE.BAT (system file updates) ECHO - REBOOT.BAT (apply staged updates) ECHO. PAUSE ECHO. REM Create C:\BAT directory ECHO [1/3] Creating C:\BAT directory... IF NOT EXIST C:\BAT\*.* MD C:\BAT IF NOT EXIST C:\BAT\*.* GOTO BAT_DIR_ERROR ECHO [OK] C:\BAT directory ready ECHO. REM Copy batch files from network to local machine ECHO [2/3] Copying batch files to C:\BAT... XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] NWTOC.BAT XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] CTONW.BAT XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] UPDATE.BAT XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] CHECKUPD.BAT XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] STAGE.BAT XCOPY T:\COMMON\ProdSW\REBOOT.BAT C:\BAT\ /Y IF ERRORLEVEL 4 GOTO COPY_ERROR ECHO [OK] REBOOT.BAT ECHO [OK] All batch files installed ECHO. REM Install AUTOEXEC.BAT with machine name ECHO [3/3] Installing AUTOEXEC.BAT... REM Copy template and modify machine name COPY T:\COMMON\ProdSW\AUTOEXEC.BAT C:\AUTOEXEC.TMP /Y >NUL IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR REM Create new AUTOEXEC with correct machine name REM Filter out existing SET MACHINE line and rebuild with new one ECHO @ECHO OFF > C:\AUTOEXEC.BAT TYPE C:\AUTOEXEC.TMP | FIND /V "@ECHO OFF" | FIND /V "SET MACHINE=" > C:\AUTOEXEC.TM1 ECHO REM Dataforth Test Machine Startup - DOS 6.22 >> C:\AUTOEXEC.BAT ECHO REM Automatically runs after CONFIG.SYS during boot >> C:\AUTOEXEC.BAT ECHO REM Version: 3.0 - Auto-update system integrated >> C:\AUTOEXEC.BAT ECHO REM Last modified: 2026-01-19 >> C:\AUTOEXEC.BAT ECHO. >> C:\AUTOEXEC.BAT ECHO REM Set machine identity (configured by DEPLOY.BAT) >> C:\AUTOEXEC.BAT ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT ECHO. >> C:\AUTOEXEC.BAT REM Filter out header comment lines using temp files (DOS 6.22 compatible) TYPE C:\AUTOEXEC.TM1 | FIND /V "REM Dataforth" > C:\AUTOEXEC.TM2 TYPE C:\AUTOEXEC.TM2 | FIND /V "REM Automatically" > C:\AUTOEXEC.TM3 TYPE C:\AUTOEXEC.TM3 | FIND /V "REM Version:" > C:\AUTOEXEC.TM4 TYPE C:\AUTOEXEC.TM4 | FIND /V "REM Last modified" > C:\AUTOEXEC.TM5 TYPE C:\AUTOEXEC.TM5 | FIND /V "REM Set machine identity" >> C:\AUTOEXEC.BAT REM Clean up temp files DEL C:\AUTOEXEC.TMP DEL C:\AUTOEXEC.TM1 DEL C:\AUTOEXEC.TM2 DEL C:\AUTOEXEC.TM3 DEL C:\AUTOEXEC.TM4 DEL C:\AUTOEXEC.TM5 ECHO [OK] AUTOEXEC.BAT installed with MACHINE=%MACHINE% ECHO. REM Create machine folder on network for backups IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE% IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_FOLDER_WARNING ECHO [OK] Network backup folder created: T:\%MACHINE% ECHO. GOTO DEPLOYMENT_COMPLETE :MACHINE_FOLDER_WARNING ECHO [WARNING] Could not create T:\%MACHINE% folder ECHO Backups will not work until this folder exists ECHO. :DEPLOYMENT_COMPLETE CLS ECHO ============================================================== ECHO Deployment Complete! ECHO ============================================================== ECHO. ECHO Machine: %MACHINE% ECHO. ECHO The automatic update system is now installed. ECHO. ECHO What happens on next reboot: ECHO 1. Network client starts (C:\STARTNET.BAT) ECHO 2. Software updates download automatically (NWTOC) ECHO 3. Test data uploads automatically (CTONW) ECHO 4. System ready for testing ECHO. ECHO ============================================================== ECHO REBOOT NOW ECHO ============================================================== ECHO. ECHO Press Ctrl+Alt+Del to reboot ECHO. ECHO After reboot, the system will be fully operational. ECHO. PAUSE GOTO END :NO_MACHINE_NAME ECHO. ECHO [ERROR] Machine name not provided ECHO. ECHO Usage: DEPLOY.BAT machine-name ECHO Example: DEPLOY.BAT TS-4R ECHO. ECHO Machine name must match network folder (T:\machine-name\) ECHO. PAUSE GOTO END :BAT_DIR_ERROR ECHO. ECHO [ERROR] Could not create C:\BAT directory ECHO Insufficient permissions or disk full ECHO. PAUSE GOTO END :COPY_ERROR ECHO. ECHO [ERROR] Failed to copy files from network ECHO. ECHO Check: T: drive accessible, C: drive has space ECHO. PAUSE GOTO END :AUTOEXEC_ERROR ECHO. ECHO [ERROR] Could not copy AUTOEXEC.BAT template ECHO. ECHO Verify T:\COMMON\ProdSW\AUTOEXEC.BAT exists ECHO. PAUSE GOTO END :END REM Clean up environment variable SET MACHINE=