sync: Auto-sync from Mikes-MacBook-Air.local at 2026-01-22 19:10:48

Synced files:
- DOS batch files updated (ATESYNC, CTONWTXT, DEPLOY, NWTOC, etc.)
- New debug batch files (ATESYNCD, CTONWD, NWTOCD, DIAGBK)
- Removed obsolete debug files (ATESYNC-DEBUG, CTONW-DEBUG, NWTOC-DEBUG)
- New deployment scripts (deploy-to-nas.sh, validate-dos.sh)
- DOS coding agent documentation updated

Machine: Mikes-MacBook-Air.local
Timestamp: 2026-01-22 19:10:48

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-22 19:10:59 -07:00
parent 33bd99eb4e
commit 63ab144c8f
23 changed files with 3111 additions and 2869 deletions

View File

@@ -1,87 +1,87 @@
@ECHO OFF
REM ATESYNC.BAT - ATE Sync Orchestrator (ARCHBAT equivalent)
REM Version: 1.1 - DOS 6.22 compatible
REM Last modified: 2026-01-21
REM
REM Called from AUTOEXEC.BAT after network is up
REM Usage: ATESYNC TS-27
REM or: ATESYNC (uses MACHINE environment variable)
REM Get machine name from parameter or environment
IF NOT "%1"=="" SET MACHINE=%1
IF "%MACHINE%"=="" GOTO NO_MACHINE
REM Verify T: drive is available
IF NOT EXIST T:\*.* GOTO NO_DRIVE
REM Verify machine folder exists on network
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
:START_SYNC
ECHO.
ECHO ************************************************************
ECHO ATESYNC: %MACHINE%
ECHO ************************************************************
ECHO.
REM Step 1: Upload test results FIRST (before downloading updates)
ECHO Sending test results to network...
CALL CTONW.BAT
ECHO.
REM Step 2: Download software updates
ECHO Getting updates from network...
CALL NWTOC.BAT
ECHO.
ECHO ************************************************************
ECHO ATESYNC Complete: %MACHINE%
ECHO ************************************************************
ECHO.
GOTO END
:CREATE_MACHINE
ECHO Creating machine folder T:\%MACHINE%
MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
MD T:\%MACHINE%\LOGS
MD T:\%MACHINE%\LOGS\5BLOG
MD T:\%MACHINE%\LOGS\7BLOG
MD T:\%MACHINE%\LOGS\8BLOG
MD T:\%MACHINE%\LOGS\DSCLOG
MD T:\%MACHINE%\LOGS\HVLOG
MD T:\%MACHINE%\LOGS\PWRLOG
MD T:\%MACHINE%\LOGS\SCTLOG
MD T:\%MACHINE%\LOGS\VASLOG
MD T:\%MACHINE%\ProdSW
MD T:\%MACHINE%\Reports
ECHO Machine folder created
GOTO START_SYNC
:NO_MACHINE
ECHO.
ECHO ************************************************************
ECHO ERROR: MACHINE not set
ECHO.
ECHO Usage: ATESYNC TS-27
ECHO or: SET MACHINE=TS-27
ECHO ATESYNC
ECHO ************************************************************
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO ERROR: T: drive not available
ECHO Run STARTNET.BAT first
PAUSE
GOTO END
:MACHINE_ERROR
ECHO.
ECHO ERROR: Could not create T:\%MACHINE%
ECHO Check network permissions
PAUSE
GOTO END
:END
@ECHO OFF
REM ATESYNC.BAT - ATE Sync Orchestrator (ARCHBAT equivalent)
REM Version: 1.1 - DOS 6.22 compatible
REM Last modified: 2026-01-21
REM
REM Called from AUTOEXEC.BAT after network is up
REM Usage: ATESYNC TS-27
REM or: ATESYNC (uses MACHINE environment variable)
REM Get machine name from parameter or environment
IF NOT "%1"=="" SET MACHINE=%1
IF "%MACHINE%"=="" GOTO NO_MACHINE
REM Verify T: drive is available
IF NOT EXIST T:\*.* GOTO NO_DRIVE
REM Verify machine folder exists on network
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
:START_SYNC
ECHO.
ECHO ************************************************************
ECHO ATESYNC: %MACHINE%
ECHO ************************************************************
ECHO.
REM Step 1: Upload test results FIRST (before downloading updates)
ECHO Sending test results to network...
CALL CTONW.BAT
ECHO.
REM Step 2: Download software updates
ECHO Getting updates from network...
CALL NWTOC.BAT
ECHO.
ECHO ************************************************************
ECHO ATESYNC Complete: %MACHINE%
ECHO ************************************************************
ECHO.
GOTO END
:CREATE_MACHINE
ECHO Creating machine folder T:\%MACHINE%
MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
MD T:\%MACHINE%\LOGS
MD T:\%MACHINE%\LOGS\5BLOG
MD T:\%MACHINE%\LOGS\7BLOG
MD T:\%MACHINE%\LOGS\8BLOG
MD T:\%MACHINE%\LOGS\DSCLOG
MD T:\%MACHINE%\LOGS\HVLOG
MD T:\%MACHINE%\LOGS\PWRLOG
MD T:\%MACHINE%\LOGS\SCTLOG
MD T:\%MACHINE%\LOGS\VASLOG
MD T:\%MACHINE%\ProdSW
MD T:\%MACHINE%\Reports
ECHO Machine folder created
GOTO START_SYNC
:NO_MACHINE
ECHO.
ECHO ************************************************************
ECHO ERROR: MACHINE not set
ECHO.
ECHO Usage: ATESYNC TS-27
ECHO or: SET MACHINE=TS-27
ECHO ATESYNC
ECHO ************************************************************
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO ERROR: T: drive not available
ECHO Run STARTNET.BAT first
PAUSE
GOTO END
:MACHINE_ERROR
ECHO.
ECHO ERROR: Could not create T:\%MACHINE%
ECHO Check network permissions
PAUSE
GOTO END
:END

View File

@@ -1,129 +1,130 @@
@ECHO OFF
REM ATESYNC-DEBUG.BAT - ATE Sync with diagnostic pauses
REM Version: 1.0 - Debug version for recording boot process
REM Last modified: 2026-01-21
REM
REM This version pauses at each step for video recording
IF NOT "%1"=="" SET MACHINE=%1
IF "%MACHINE%"=="" GOTO NO_MACHINE
ECHO.
ECHO ==============================================================
ECHO DEBUG MODE: ATESYNC
ECHO ==============================================================
ECHO.
ECHO STEP 0: Machine name set
ECHO MACHINE = %MACHINE%
ECHO.
ECHO Press any key to continue to Step 1...
PAUSE
REM Verify T: drive
ECHO.
ECHO ==============================================================
ECHO STEP 1: Checking T: drive
ECHO ==============================================================
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive is accessible
ECHO.
ECHO Press any key to continue to Step 2...
PAUSE
REM Check machine folder
ECHO.
ECHO ==============================================================
ECHO STEP 2: Checking machine folder T:\%MACHINE%
ECHO ==============================================================
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
ECHO Machine folder exists
ECHO.
ECHO Press any key to continue to Step 3...
PAUSE
GOTO START_SYNC
:CREATE_MACHINE
ECHO Machine folder not found - creating...
MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
MD T:\%MACHINE%\LOGS
MD T:\%MACHINE%\LOGS\5BLOG
MD T:\%MACHINE%\LOGS\7BLOG
MD T:\%MACHINE%\LOGS\8BLOG
MD T:\%MACHINE%\LOGS\DSCLOG
MD T:\%MACHINE%\LOGS\HVLOG
MD T:\%MACHINE%\LOGS\PWRLOG
MD T:\%MACHINE%\LOGS\SCTLOG
MD T:\%MACHINE%\LOGS\VASLOG
MD T:\%MACHINE%\ProdSW
MD T:\%MACHINE%\Reports
ECHO Machine folder structure created
ECHO.
ECHO Press any key to continue to Step 3...
PAUSE
:START_SYNC
ECHO.
ECHO ==============================================================
ECHO STEP 3: Starting CTONW (Upload test results)
ECHO ==============================================================
ECHO About to call: CTONW-DEBUG.BAT
ECHO.
ECHO Press any key to run CTONW-DEBUG...
PAUSE
CALL CTONW-DEBUG.BAT
ECHO.
ECHO CTONW-DEBUG completed
ECHO.
ECHO Press any key to continue to Step 4...
PAUSE
ECHO.
ECHO ==============================================================
ECHO STEP 4: Starting NWTOC (Download updates)
ECHO ==============================================================
ECHO About to call: NWTOC-DEBUG.BAT
ECHO.
ECHO Press any key to run NWTOC-DEBUG...
PAUSE
CALL NWTOC-DEBUG.BAT
ECHO.
ECHO NWTOC-DEBUG completed
ECHO.
ECHO Press any key to finish...
PAUSE
ECHO.
ECHO ==============================================================
ECHO ATESYNC-DEBUG Complete: %MACHINE%
ECHO ==============================================================
ECHO.
GOTO END
:NO_MACHINE
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 0: MACHINE not set
ECHO ==============================================================
ECHO.
ECHO Usage: ATESYNC-DEBUG TS-27
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 1: T: drive not available
ECHO ==============================================================
PAUSE
GOTO END
:MACHINE_ERROR
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 2: Could not create machine folder
ECHO ==============================================================
PAUSE
GOTO END
:END
@ECHO OFF
REM ATESYNCD.BAT - ATE Sync with diagnostic pauses (8.3 name)
REM Version: 1.1 - Debug version for recording boot process
REM Last modified: 2026-01-21
REM
REM This version pauses at each step for video recording
REM Usage: ATESYNCD TS-3R
IF NOT "%1"=="" SET MACHINE=%1
IF "%MACHINE%"=="" GOTO NO_MACHINE
ECHO.
ECHO ==============================================================
ECHO DEBUG MODE: ATESYNCD
ECHO ==============================================================
ECHO.
ECHO STEP 0: Machine name set
ECHO MACHINE = %MACHINE%
ECHO.
ECHO Press any key to continue to Step 1...
PAUSE
REM Verify T: drive
ECHO.
ECHO ==============================================================
ECHO STEP 1: Checking T: drive
ECHO ==============================================================
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive is accessible
ECHO.
ECHO Press any key to continue to Step 2...
PAUSE
REM Check machine folder
ECHO.
ECHO ==============================================================
ECHO STEP 2: Checking machine folder T:\%MACHINE%
ECHO ==============================================================
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
ECHO Machine folder exists
ECHO.
ECHO Press any key to continue to Step 3...
PAUSE
GOTO START_SYNC
:CREATE_MACHINE
ECHO Machine folder not found - creating...
MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
MD T:\%MACHINE%\LOGS
MD T:\%MACHINE%\LOGS\5BLOG
MD T:\%MACHINE%\LOGS\7BLOG
MD T:\%MACHINE%\LOGS\8BLOG
MD T:\%MACHINE%\LOGS\DSCLOG
MD T:\%MACHINE%\LOGS\HVLOG
MD T:\%MACHINE%\LOGS\PWRLOG
MD T:\%MACHINE%\LOGS\SCTLOG
MD T:\%MACHINE%\LOGS\VASLOG
MD T:\%MACHINE%\ProdSW
MD T:\%MACHINE%\Reports
ECHO Machine folder structure created
ECHO.
ECHO Press any key to continue to Step 3...
PAUSE
:START_SYNC
ECHO.
ECHO ==============================================================
ECHO STEP 3: Starting CTONWD (Upload test results)
ECHO ==============================================================
ECHO About to call: CTONWD.BAT
ECHO.
ECHO Press any key to run CTONWD...
PAUSE
CALL CTONWD.BAT
ECHO.
ECHO CTONWD completed
ECHO.
ECHO Press any key to continue to Step 4...
PAUSE
ECHO.
ECHO ==============================================================
ECHO STEP 4: Starting NWTOCD (Download updates)
ECHO ==============================================================
ECHO About to call: NWTOCD.BAT
ECHO.
ECHO Press any key to run NWTOCD...
PAUSE
CALL NWTOCD.BAT
ECHO.
ECHO NWTOCD completed
ECHO.
ECHO Press any key to finish...
PAUSE
ECHO.
ECHO ==============================================================
ECHO ATESYNCD Complete: %MACHINE%
ECHO ==============================================================
ECHO.
GOTO END
:NO_MACHINE
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 0: MACHINE not set
ECHO ==============================================================
ECHO.
ECHO Usage: ATESYNCD TS-3R
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 1: T: drive not available
ECHO ==============================================================
PAUSE
GOTO END
:MACHINE_ERROR
ECHO.
ECHO ==============================================================
ECHO ERROR at STEP 2: Could not create machine folder
ECHO ==============================================================
PAUSE
GOTO END
:END

View File

@@ -1,81 +1,81 @@
@ECHO OFF
REM Dataforth Test Machine Startup - DOS 6.22
REM Automatically runs after CONFIG.SYS during boot
REM Version: 3.0 - Auto-update system integrated
REM Last modified: 2026-01-19
REM Set machine identity (configured by DEPLOY.BAT)
SET MACHINE=TS-4R
REM Set DOS search path for executables
SET PATH=C:\DOS;C:\NET;C:\BAT;C:\BATCH;C:\
REM Set command prompt to show current directory
PROMPT $P$G
REM Set temporary file directory
SET TEMP=C:\TEMP
SET TMP=C:\TEMP
CLS
ECHO.
ECHO ==============================================================
ECHO Dataforth Test Machine: %MACHINE%
ECHO DOS 6.22 with Automatic Update System
ECHO ==============================================================
ECHO.
REM Create required directories if they don't exist
IF NOT EXIST C:\TEMP\*.* MD C:\TEMP
IF NOT EXIST C:\BAT\*.* MD C:\BAT
IF NOT EXIST C:\BATCH\*.* MD C:\BATCH
ECHO Starting network client...
ECHO.
REM Start network client and map T: and X: drives
IF EXIST C:\STARTNET.BAT CALL C:\STARTNET.BAT
REM Verify T: drive is accessible
IF NOT EXIST T:\*.* GOTO NET_FAILED
ECHO [OK] Network started
ECHO.
ECHO Network Drives:
ECHO T: = \\D2TESTNAS\test
ECHO X: = \\D2TESTNAS\datasheets
ECHO.
REM Download latest software updates from network
ECHO Checking for software updates...
IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT
REM Upload test data to network for database import
ECHO Uploading test data to network...
IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT
ECHO.
ECHO ==============================================================
ECHO System Ready
ECHO ==============================================================
ECHO.
ECHO Available Commands:
ECHO UPDATE - Full system backup to T:\%MACHINE%\BACKUP
ECHO CHECKUPD - Check for available updates
ECHO CTONW - Manual upload to network
ECHO NWTOC - Manual download from network
ECHO.
GOTO END
:NET_FAILED
ECHO [ERROR] Network drive mapping failed
ECHO T: drive not accessible
ECHO.
ECHO To start network manually:
ECHO C:\STARTNET.BAT
ECHO.
ECHO Updates and backups will not work until network is available.
ECHO.
PAUSE
:END
@ECHO OFF
REM Dataforth Test Machine Startup - DOS 6.22
REM Automatically runs after CONFIG.SYS during boot
REM Version: 3.0 - Auto-update system integrated
REM Last modified: 2026-01-19
REM Set machine identity (configured by DEPLOY.BAT)
SET MACHINE=TS-4R
REM Set DOS search path for executables
SET PATH=C:\DOS;C:\NET;C:\BAT;C:\BATCH;C:\
REM Set command prompt to show current directory
PROMPT $P$G
REM Set temporary file directory
SET TEMP=C:\TEMP
SET TMP=C:\TEMP
CLS
ECHO.
ECHO ==============================================================
ECHO Dataforth Test Machine: %MACHINE%
ECHO DOS 6.22 with Automatic Update System
ECHO ==============================================================
ECHO.
REM Create required directories if they don't exist
IF NOT EXIST C:\TEMP\*.* MD C:\TEMP
IF NOT EXIST C:\BAT\*.* MD C:\BAT
IF NOT EXIST C:\BATCH\*.* MD C:\BATCH
ECHO Starting network client...
ECHO.
REM Start network client and map T: and X: drives
IF EXIST C:\STARTNET.BAT CALL C:\STARTNET.BAT
REM Verify T: drive is accessible
IF NOT EXIST T:\*.* GOTO NET_FAILED
ECHO (OK) Network started
ECHO.
ECHO Network Drives:
ECHO T: = \\D2TESTNAS\test
ECHO X: = \\D2TESTNAS\datasheets
ECHO.
REM Download latest software updates from network
ECHO Checking for software updates...
IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT
REM Upload test data to network for database import
ECHO Uploading test data to network...
IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT
ECHO.
ECHO ==============================================================
ECHO System Ready
ECHO ==============================================================
ECHO.
ECHO Available Commands:
ECHO UPDATE - Full system backup to T:\%MACHINE%\BACKUP
ECHO CHECKUPD - Check for available updates
ECHO CTONW - Manual upload to network
ECHO NWTOC - Manual download from network
ECHO.
GOTO END
:NET_FAILED
ECHO ERROR: Network drive mapping failed
ECHO T: drive not accessible
ECHO.
ECHO To start network manually:
ECHO C:\STARTNET.BAT
ECHO.
ECHO Updates and backups will not work until network is available.
ECHO.
PAUSE
:END

View File

@@ -1,135 +1,135 @@
@ECHO OFF
REM CTONW-DEBUG.BAT - Upload with diagnostic pauses
REM Version: 1.0 - Debug version for recording
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DEBUG: CTONW - Computer to Network Upload
ECHO ==============================================================
ECHO.
IF "%MACHINE%"=="" GOTO NO_MACHINE
ECHO CTONW Step 0: Verifying prerequisites
ECHO MACHINE = %MACHINE%
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive OK
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
ECHO T:\%MACHINE% OK
ECHO.
PAUSE
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
ECHO.
ECHO CTONW Step 1: Creating LOGS directories on T:\%MACHINE%\LOGS
IF NOT EXIST T:\%MACHINE%\LOGS\*.* MD T:\%MACHINE%\LOGS
IF NOT EXIST T:\%MACHINE%\LOGS\5BLOG\*.* MD T:\%MACHINE%\LOGS\5BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\7BLOG\*.* MD T:\%MACHINE%\LOGS\7BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\8BLOG\*.* MD T:\%MACHINE%\LOGS\8BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\DSCLOG\*.* MD T:\%MACHINE%\LOGS\DSCLOG
IF NOT EXIST T:\%MACHINE%\LOGS\HVLOG\*.* MD T:\%MACHINE%\LOGS\HVLOG
IF NOT EXIST T:\%MACHINE%\LOGS\PWRLOG\*.* MD T:\%MACHINE%\LOGS\PWRLOG
IF NOT EXIST T:\%MACHINE%\LOGS\SCTLOG\*.* MD T:\%MACHINE%\LOGS\SCTLOG
IF NOT EXIST T:\%MACHINE%\LOGS\VASLOG\*.* MD T:\%MACHINE%\LOGS\VASLOG
ECHO Directories ready
PAUSE
ECHO.
ECHO CTONW Step 2: Uploading 5BLOG
IF EXIST C:\ATE\5BLOG\*.DAT ECHO Found files in C:\ATE\5BLOG
IF EXIST C:\ATE\5BLOG\*.DAT COPY C:\ATE\5BLOG\*.DAT T:\%MACHINE%\LOGS\5BLOG
IF NOT EXIST C:\ATE\5BLOG\*.DAT ECHO No files in C:\ATE\5BLOG
PAUSE
ECHO.
ECHO CTONW Step 3: Uploading 7BLOG
IF EXIST C:\ATE\7BLOG\*.DAT ECHO Found DAT files in C:\ATE\7BLOG
IF EXIST C:\ATE\7BLOG\*.DAT COPY C:\ATE\7BLOG\*.DAT T:\%MACHINE%\LOGS\7BLOG
IF EXIST C:\ATE\7BLOG\*.SHT ECHO Found SHT files in C:\ATE\7BLOG
IF EXIST C:\ATE\7BLOG\*.SHT COPY C:\ATE\7BLOG\*.SHT T:\%MACHINE%\LOGS\7BLOG
IF NOT EXIST C:\ATE\7BLOG\*.* ECHO No files in C:\ATE\7BLOG
PAUSE
ECHO.
ECHO CTONW Step 4: Uploading 8BLOG
IF EXIST C:\ATE\8BLOG\*.DAT ECHO Found files in C:\ATE\8BLOG
IF EXIST C:\ATE\8BLOG\*.DAT COPY C:\ATE\8BLOG\*.DAT T:\%MACHINE%\LOGS\8BLOG
IF NOT EXIST C:\ATE\8BLOG\*.DAT ECHO No files in C:\ATE\8BLOG
PAUSE
ECHO.
ECHO CTONW Step 5: Uploading DSCLOG
IF EXIST C:\ATE\DSCLOG\*.DAT ECHO Found files in C:\ATE\DSCLOG
IF EXIST C:\ATE\DSCLOG\*.DAT COPY C:\ATE\DSCLOG\*.DAT T:\%MACHINE%\LOGS\DSCLOG
IF NOT EXIST C:\ATE\DSCLOG\*.DAT ECHO No files in C:\ATE\DSCLOG
PAUSE
ECHO.
ECHO CTONW Step 6: Uploading HVLOG
IF EXIST C:\ATE\HVLOG\*.DAT ECHO Found files in C:\ATE\HVLOG
IF EXIST C:\ATE\HVLOG\*.DAT COPY C:\ATE\HVLOG\*.DAT T:\%MACHINE%\LOGS\HVLOG
IF NOT EXIST C:\ATE\HVLOG\*.DAT ECHO No files in C:\ATE\HVLOG
PAUSE
ECHO.
ECHO CTONW Step 7: Uploading PWRLOG
IF EXIST C:\ATE\PWRLOG\*.DAT ECHO Found files in C:\ATE\PWRLOG
IF EXIST C:\ATE\PWRLOG\*.DAT COPY C:\ATE\PWRLOG\*.DAT T:\%MACHINE%\LOGS\PWRLOG
IF NOT EXIST C:\ATE\PWRLOG\*.DAT ECHO No files in C:\ATE\PWRLOG
PAUSE
ECHO.
ECHO CTONW Step 8: Uploading SCTLOG
IF EXIST C:\ATE\SCTLOG\*.DAT ECHO Found files in C:\ATE\SCTLOG
IF EXIST C:\ATE\SCTLOG\*.DAT COPY C:\ATE\SCTLOG\*.DAT T:\%MACHINE%\LOGS\SCTLOG
IF NOT EXIST C:\ATE\SCTLOG\*.DAT ECHO No files in C:\ATE\SCTLOG
PAUSE
ECHO.
ECHO CTONW Step 9: Uploading VASLOG
IF EXIST C:\ATE\VASLOG\*.DAT ECHO Found files in C:\ATE\VASLOG
IF EXIST C:\ATE\VASLOG\*.DAT COPY C:\ATE\VASLOG\*.DAT T:\%MACHINE%\LOGS\VASLOG
IF NOT EXIST C:\ATE\VASLOG\*.DAT ECHO No files in C:\ATE\VASLOG
PAUSE
ECHO.
ECHO CTONW Step 10: Uploading Reports
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
IF EXIST C:\Reports\*.TXT ECHO Found TXT files in C:\Reports
IF EXIST C:\Reports\*.TXT COPY C:\Reports\*.TXT T:\%MACHINE%\Reports
IF NOT EXIST C:\Reports\*.TXT ECHO No TXT files in C:\Reports
PAUSE
ECHO.
ECHO ==============================================================
ECHO CTONW-DEBUG Complete
ECHO ==============================================================
GOTO END
:SKIP_ATE
ECHO.
ECHO CTONW: No C:\ATE directory found - skipping upload
PAUSE
GOTO END
:NO_MACHINE
ECHO.
ECHO CTONW ERROR: MACHINE variable not set
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO CTONW ERROR: T: drive not available
PAUSE
GOTO END
:NO_FOLDER
ECHO.
ECHO CTONW ERROR: T:\%MACHINE% folder not found
PAUSE
GOTO END
:END
@ECHO OFF
REM CTONWD.BAT - Upload with diagnostic pauses (8.3 name)
REM Version: 1.1 - Debug version for recording
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DEBUG: CTONW - Computer to Network Upload
ECHO ==============================================================
ECHO.
IF "%MACHINE%"=="" GOTO NO_MACHINE
ECHO CTONW Step 0: Verifying prerequisites
ECHO MACHINE = %MACHINE%
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive OK
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
ECHO T:\%MACHINE% OK
ECHO.
PAUSE
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
ECHO.
ECHO CTONW Step 1: Creating LOGS directories on T:\%MACHINE%\LOGS
IF NOT EXIST T:\%MACHINE%\LOGS\*.* MD T:\%MACHINE%\LOGS
IF NOT EXIST T:\%MACHINE%\LOGS\5BLOG\*.* MD T:\%MACHINE%\LOGS\5BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\7BLOG\*.* MD T:\%MACHINE%\LOGS\7BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\8BLOG\*.* MD T:\%MACHINE%\LOGS\8BLOG
IF NOT EXIST T:\%MACHINE%\LOGS\DSCLOG\*.* MD T:\%MACHINE%\LOGS\DSCLOG
IF NOT EXIST T:\%MACHINE%\LOGS\HVLOG\*.* MD T:\%MACHINE%\LOGS\HVLOG
IF NOT EXIST T:\%MACHINE%\LOGS\PWRLOG\*.* MD T:\%MACHINE%\LOGS\PWRLOG
IF NOT EXIST T:\%MACHINE%\LOGS\SCTLOG\*.* MD T:\%MACHINE%\LOGS\SCTLOG
IF NOT EXIST T:\%MACHINE%\LOGS\VASLOG\*.* MD T:\%MACHINE%\LOGS\VASLOG
ECHO Directories ready
PAUSE
ECHO.
ECHO CTONW Step 2: Uploading 5BLOG
IF EXIST C:\ATE\5BLOG\*.DAT ECHO Found files in C:\ATE\5BLOG
IF EXIST C:\ATE\5BLOG\*.DAT COPY C:\ATE\5BLOG\*.DAT T:\%MACHINE%\LOGS\5BLOG
IF NOT EXIST C:\ATE\5BLOG\*.DAT ECHO No files in C:\ATE\5BLOG
PAUSE
ECHO.
ECHO CTONW Step 3: Uploading 7BLOG
IF EXIST C:\ATE\7BLOG\*.DAT ECHO Found DAT files in C:\ATE\7BLOG
IF EXIST C:\ATE\7BLOG\*.DAT COPY C:\ATE\7BLOG\*.DAT T:\%MACHINE%\LOGS\7BLOG
IF EXIST C:\ATE\7BLOG\*.SHT ECHO Found SHT files in C:\ATE\7BLOG
IF EXIST C:\ATE\7BLOG\*.SHT COPY C:\ATE\7BLOG\*.SHT T:\%MACHINE%\LOGS\7BLOG
IF NOT EXIST C:\ATE\7BLOG\*.* ECHO No files in C:\ATE\7BLOG
PAUSE
ECHO.
ECHO CTONW Step 4: Uploading 8BLOG
IF EXIST C:\ATE\8BLOG\*.DAT ECHO Found files in C:\ATE\8BLOG
IF EXIST C:\ATE\8BLOG\*.DAT COPY C:\ATE\8BLOG\*.DAT T:\%MACHINE%\LOGS\8BLOG
IF NOT EXIST C:\ATE\8BLOG\*.DAT ECHO No files in C:\ATE\8BLOG
PAUSE
ECHO.
ECHO CTONW Step 5: Uploading DSCLOG
IF EXIST C:\ATE\DSCLOG\*.DAT ECHO Found files in C:\ATE\DSCLOG
IF EXIST C:\ATE\DSCLOG\*.DAT COPY C:\ATE\DSCLOG\*.DAT T:\%MACHINE%\LOGS\DSCLOG
IF NOT EXIST C:\ATE\DSCLOG\*.DAT ECHO No files in C:\ATE\DSCLOG
PAUSE
ECHO.
ECHO CTONW Step 6: Uploading HVLOG
IF EXIST C:\ATE\HVLOG\*.DAT ECHO Found files in C:\ATE\HVLOG
IF EXIST C:\ATE\HVLOG\*.DAT COPY C:\ATE\HVLOG\*.DAT T:\%MACHINE%\LOGS\HVLOG
IF NOT EXIST C:\ATE\HVLOG\*.DAT ECHO No files in C:\ATE\HVLOG
PAUSE
ECHO.
ECHO CTONW Step 7: Uploading PWRLOG
IF EXIST C:\ATE\PWRLOG\*.DAT ECHO Found files in C:\ATE\PWRLOG
IF EXIST C:\ATE\PWRLOG\*.DAT COPY C:\ATE\PWRLOG\*.DAT T:\%MACHINE%\LOGS\PWRLOG
IF NOT EXIST C:\ATE\PWRLOG\*.DAT ECHO No files in C:\ATE\PWRLOG
PAUSE
ECHO.
ECHO CTONW Step 8: Uploading SCTLOG
IF EXIST C:\ATE\SCTLOG\*.DAT ECHO Found files in C:\ATE\SCTLOG
IF EXIST C:\ATE\SCTLOG\*.DAT COPY C:\ATE\SCTLOG\*.DAT T:\%MACHINE%\LOGS\SCTLOG
IF NOT EXIST C:\ATE\SCTLOG\*.DAT ECHO No files in C:\ATE\SCTLOG
PAUSE
ECHO.
ECHO CTONW Step 9: Uploading VASLOG
IF EXIST C:\ATE\VASLOG\*.DAT ECHO Found files in C:\ATE\VASLOG
IF EXIST C:\ATE\VASLOG\*.DAT COPY C:\ATE\VASLOG\*.DAT T:\%MACHINE%\LOGS\VASLOG
IF NOT EXIST C:\ATE\VASLOG\*.DAT ECHO No files in C:\ATE\VASLOG
PAUSE
ECHO.
ECHO CTONW Step 10: Uploading Reports
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
IF EXIST C:\Reports\*.TXT ECHO Found TXT files in C:\Reports
IF EXIST C:\Reports\*.TXT COPY C:\Reports\*.TXT T:\%MACHINE%\Reports
IF NOT EXIST C:\Reports\*.TXT ECHO No TXT files in C:\Reports
PAUSE
ECHO.
ECHO ==============================================================
ECHO CTONW-DEBUG Complete
ECHO ==============================================================
GOTO END
:SKIP_ATE
ECHO.
ECHO CTONW: No C:\ATE directory found - skipping upload
PAUSE
GOTO END
:NO_MACHINE
ECHO.
ECHO CTONW ERROR: MACHINE variable not set
PAUSE
GOTO END
:NO_DRIVE
ECHO.
ECHO CTONW ERROR: T: drive not available
PAUSE
GOTO END
:NO_FOLDER
ECHO.
ECHO CTONW ERROR: T:\%MACHINE% folder not found
PAUSE
GOTO END
:END

View File

@@ -1,34 +1,34 @@
@ECHO OFF
REM PWR: 2013-02-06
ECHO .....................................................
ECHO Archiving text datasheet files to %2 on network...
ECHO CtoNWtxt.bat > C:\ATE\CtoNWtxt.log
ECHO 2013-02-06 Version >> C:\ATE\CtoNWtxt.log
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
ECHO Important! This log file is from the previous >> C:\ATE\CtoNWtxt.log
ECHO operation since C to Network >> C:\ATE\CtoNWtxt.log
ECHO archiving is before text file >> C:\ATE\CtoNWtxt.log
ECHO archiving! >> C:\ATE\CtoNWtxt.log
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
ECHO Copying from C:\STAGE\*.txt to %2 >> C:\ATE\CtoNWtxt.log
IF EXIST C:\STAGE\*.txt GOTO FILEXFER
REM IF ERRORLEVEL=1 ECHO No files were found to transfer
ECHO No files were found to transfer
ECHO No files were found to transfer >> C:\ATE\CtoNWtxt.log
GOTO END
:FILEXFER
IF NOT EXIST %2\serve.sys GOTO NODIR
copy C:\STAGE\*.txt %2 >> C:\ATE\CtoNWtxt.log
IF ERRORLEVEL=0 ECHO Copy Completed normally
DEL C:\STAGE\*.txt >> C:\ATE\CtoNWtxt.log
ECHO Network archiving of text datasheet files to %2 done!
ECHO .....................................................
GOTO END
:NODIR
ECHO %2\serve.sys not found. >> C:\ATE\CtoNWtxt.log
ECHO %2\serve.sys not found. Check Network connection.
:END
ECHO Network archiving of text datasheet files to %2 done!
ECHO .....................................................
@ECHO OFF
REM PWR: 2013-02-06
ECHO .....................................................
ECHO Archiving text datasheet files to %2 on network...
ECHO CtoNWtxt.bat > C:\ATE\CtoNWtxt.log
ECHO 2013-02-06 Version >> C:\ATE\CtoNWtxt.log
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
ECHO Important! This log file is from the previous >> C:\ATE\CtoNWtxt.log
ECHO operation since C to Network >> C:\ATE\CtoNWtxt.log
ECHO archiving is before text file >> C:\ATE\CtoNWtxt.log
ECHO archiving! >> C:\ATE\CtoNWtxt.log
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
ECHO Copying from C:\STAGE\*.txt to %2 >> C:\ATE\CtoNWtxt.log
IF EXIST C:\STAGE\*.txt GOTO FILEXFER
REM IF ERRORLEVEL=1 ECHO No files were found to transfer
ECHO No files were found to transfer
ECHO No files were found to transfer >> C:\ATE\CtoNWtxt.log
GOTO END
:FILEXFER
IF NOT EXIST %2\serve.sys GOTO NODIR
copy C:\STAGE\*.txt %2 >> C:\ATE\CtoNWtxt.log
IF ERRORLEVEL=0 ECHO Copy Completed normally
DEL C:\STAGE\*.txt >> C:\ATE\CtoNWtxt.log
ECHO Network archiving of text datasheet files to %2 done!
ECHO .....................................................
GOTO END
:NODIR
ECHO %2\serve.sys not found. >> C:\ATE\CtoNWtxt.log
ECHO %2\serve.sys not found. Check Network connection.
:END
ECHO Network archiving of text datasheet files to %2 done!
ECHO .....................................................

View File

@@ -26,7 +26,7 @@ REM Create directories (ignore errors with >NUL)
MD C:\BAT >NUL
MD T:\%MACHINE% >NUL
ECHO [1/2] Copying batch files to C:\BAT...
ECHO (1/2) Copying batch files to C:\BAT...
COPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT >NUL
COPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT >NUL
COPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT >NUL
@@ -36,7 +36,7 @@ COPY T:\COMMON\ProdSW\REBOOT.BAT C:\BAT >NUL
ECHO Batch files installed
ECHO.
ECHO [2/2] Installing AUTOEXEC.BAT...
ECHO (2/2) Installing AUTOEXEC.BAT...
REM Create AUTOEXEC.BAT with machine name
ECHO @ECHO OFF > C:\AUTOEXEC.BAT
ECHO REM Dataforth Test Machine - DOS 6.22 >> C:\AUTOEXEC.BAT
@@ -56,7 +56,7 @@ ECHO IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT >> C:\AUTOEXEC.BAT
ECHO IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT >> C:\AUTOEXEC.BAT
ECHO GOTO READY >> C:\AUTOEXEC.BAT
ECHO :NONET >> C:\AUTOEXEC.BAT
ECHO ECHO [ERROR] Network not available >> C:\AUTOEXEC.BAT
ECHO ECHO ERROR: Network not available >> C:\AUTOEXEC.BAT
ECHO :READY >> C:\AUTOEXEC.BAT
ECHO ECHO. >> C:\AUTOEXEC.BAT
ECHO ECHO System Ready >> C:\AUTOEXEC.BAT
@@ -75,7 +75,7 @@ GOTO END
:NO_MACHINE
ECHO.
ECHO [ERROR] Machine name not provided
ECHO ERROR: Machine name not provided
ECHO.
ECHO Usage: DEPLOY.BAT machine-name
ECHO Example: DEPLOY.BAT TS-4R

View File

@@ -1,345 +1,345 @@
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO [STEP 1/5] Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO [OK] T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO [ERROR] T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO [STEP 2/5] Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO [OK] All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO [ERROR] Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO [STEP 3/5] Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO [OK] Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO [OK] Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO [ERROR] Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO [ERROR] Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO [STEP 4/5] Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
) ELSE (
ECHO [WARNING] No existing AUTOEXEC.BAT found
)
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] CHECKUPD.BAT
ECHO.
ECHO [OK] All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO [ERROR] Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO [ERROR] Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO [ERROR] Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
)
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO [ERROR] Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO Step 1 of 5: Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO (OK) T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO Step 2 of 5: Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO (OK) All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO ERROR: Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO Step 3 of 5: Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO (OK) Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO (OK) Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO ERROR: Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO ERROR: Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO Step 4 of 5: Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
) ELSE (
ECHO WARNING: No existing AUTOEXEC.BAT found
)
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) CHECKUPD.BAT
ECHO.
ECHO (OK) All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO ERROR: Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO ERROR: Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO ERROR: Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
)
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO ERROR: Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=

View File

@@ -1,351 +1,351 @@
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO [STEP 1/5] Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO [OK] T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO [ERROR] T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO [STEP 2/5] Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO [OK] All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO [ERROR] Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO [STEP 3/5] Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO [OK] Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO [OK] Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO [ERROR] Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO [ERROR] Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO [STEP 4/5] Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
GOTO AUTOEXEC_BACKUP_DONE
:NO_AUTOEXEC_BACKUP
ECHO [WARNING] No existing AUTOEXEC.BAT found
:AUTOEXEC_BACKUP_DONE
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] CHECKUPD.BAT
ECHO.
ECHO [OK] All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO [ERROR] Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO [ERROR] Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO [ERROR] Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
:ADD_MACHINE_VAR
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO [ERROR] Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO Step 1 of 5: Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO (OK) T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO Step 2 of 5: Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO (OK) All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO ERROR: Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO Step 3 of 5: Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO (OK) Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO (OK) Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO ERROR: Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO ERROR: Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO Step 4 of 5: Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
GOTO AUTOEXEC_BACKUP_DONE
:NO_AUTOEXEC_BACKUP
ECHO WARNING: No existing AUTOEXEC.BAT found
:AUTOEXEC_BACKUP_DONE
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) CHECKUPD.BAT
ECHO.
ECHO (OK) All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO ERROR: Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO ERROR: Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO ERROR: Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
:ADD_MACHINE_VAR
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO ERROR: Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=

View File

@@ -1,351 +1,351 @@
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO [STEP 1/5] Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO [OK] T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO [ERROR] T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO [STEP 2/5] Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO [OK] All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO [ERROR] Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO [STEP 3/5] Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO [OK] Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO [OK] Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO [ERROR] Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO [ERROR] Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO [STEP 4/5] Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
GOTO AUTOEXEC_BACKUP_DONE
:NO_AUTOEXEC_BACKUP
ECHO [WARNING] No existing AUTOEXEC.BAT found
:AUTOEXEC_BACKUP_DONE
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] CHECKUPD.BAT
ECHO.
ECHO [OK] All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO [ERROR] Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO [ERROR] Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO [ERROR] Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
:ADD_MACHINE_VAR
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO [ERROR] Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO Step 1 of 5: Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO (OK) T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO Step 2 of 5: Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO (OK) All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO ERROR: Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO Step 3 of 5: Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO (OK) Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO (OK) Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO ERROR: Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO ERROR: Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO Step 4 of 5: Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
GOTO AUTOEXEC_BACKUP_DONE
:NO_AUTOEXEC_BACKUP
ECHO WARNING: No existing AUTOEXEC.BAT found
:AUTOEXEC_BACKUP_DONE
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) CHECKUPD.BAT
ECHO.
ECHO (OK) All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO ERROR: Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO ERROR: Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO ERROR: Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
:ADD_MACHINE_VAR
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO ERROR: Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=

View File

@@ -1,345 +1,345 @@
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO [STEP 1/5] Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO [OK] T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO [ERROR] T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO [STEP 2/5] Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO [OK] All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO [ERROR] Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO [STEP 3/5] Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO [OK] Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO [OK] Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO [ERROR] Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO [ERROR] Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO [STEP 4/5] Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
) ELSE (
ECHO [WARNING] No existing AUTOEXEC.BAT found
)
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO [OK] CHECKUPD.BAT
ECHO.
ECHO [OK] All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO [ERROR] Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO [ERROR] Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO [ERROR] Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
)
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO [ERROR] Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=
@ECHO OFF
REM DEPLOY.BAT - One-time deployment script for DOS Update System
REM
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
REM
REM What this does:
REM 1. Backs up current AUTOEXEC.BAT
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
REM 4. Copies update batch files to C:\BAT\
REM 5. Runs initial NWTOC to download all updates
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
CLS
ECHO ==============================================================
ECHO DOS Update System - One-Time Deployment
ECHO ==============================================================
ECHO.
ECHO This script will install the new update system on this machine.
ECHO.
ECHO What will be installed:
ECHO - NWTOC.BAT (Download updates from network)
ECHO - CTONW.BAT (Upload changes to network)
ECHO - UPDATE.BAT (Full system backup)
ECHO - STAGE.BAT (System file staging)
ECHO - REBOOT.BAT (Apply updates on reboot)
ECHO - CHECKUPD.BAT (Check for updates)
ECHO.
PAUSE Press any key to continue...
ECHO.
REM ==================================================================
REM STEP 1: Verify T: drive is accessible
REM ==================================================================
ECHO Step 1 of 5: Checking network drive...
ECHO.
T: 2>NUL
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
C:
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
ECHO (OK) T: drive is accessible
ECHO T: = \\D2TESTNAS\test
ECHO.
GOTO CHECK_DEPLOY_FILES
:NO_T_DRIVE
C:
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run network startup first:
ECHO C:\NET\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
ECHO Then run DEPLOY.BAT again.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 2: Verify deployment files exist on network
REM ==================================================================
:CHECK_DEPLOY_FILES
ECHO Step 2 of 5: Verifying deployment files...
ECHO.
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
ECHO (OK) All deployment files found on network
ECHO Location: T:\COMMON\ProdSW\
ECHO.
GOTO GET_MACHINE_NAME
:MISSING_FILES
ECHO ERROR: Deployment files not found on network
ECHO.
ECHO Expected location: T:\COMMON\ProdSW\
ECHO.
ECHO Files needed:
ECHO - NWTOC.BAT
ECHO - CTONW.BAT
ECHO - UPDATE.BAT
ECHO - STAGE.BAT
ECHO - CHECKUPD.BAT
ECHO.
ECHO Contact system administrator.
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 3: Get machine name from user
REM ==================================================================
:GET_MACHINE_NAME
ECHO Step 3 of 5: Configure machine name...
ECHO.
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
ECHO.
ECHO Machine name must match the folder on T: drive.
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
ECHO.
SET /P MACHINE=Machine name:
REM Validate machine name was entered
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
ECHO.
ECHO (OK) Machine name: %MACHINE%
ECHO.
REM Verify machine folder exists on network
ECHO Checking for T:\%MACHINE%\ folder...
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
ECHO (OK) Machine folder ready: T:\%MACHINE%\
ECHO.
GOTO BACKUP_AUTOEXEC
:MACHINE_NAME_EMPTY
ECHO.
ECHO ERROR: Machine name cannot be empty
ECHO.
GOTO GET_MACHINE_NAME
:MACHINE_FOLDER_ERROR
ECHO.
ECHO ERROR: Could not create machine folder on network
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Network connection is stable
ECHO - Permissions to create directories
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
REM ==================================================================
:BACKUP_AUTOEXEC
ECHO Step 4 of 5: Installing update system files...
ECHO.
REM Backup current AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
ECHO Backing up AUTOEXEC.BAT...
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
) ELSE (
ECHO WARNING: No existing AUTOEXEC.BAT found
)
ECHO.
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
ECHO Copying update system files to C:\BAT\...
REM Copy batch files from network to local machine
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\STAGE.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) STAGE.BAT
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
IF ERRORLEVEL 4 GOTO COPY_ERROR
ECHO (OK) CHECKUPD.BAT
ECHO.
ECHO (OK) All update system files installed
ECHO.
GOTO UPDATE_AUTOEXEC
:BACKUP_ERROR
ECHO.
ECHO ERROR: Could not backup AUTOEXEC.BAT
ECHO.
ECHO Continue anyway? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO END
ECHO.
GOTO UPDATE_AUTOEXEC
:BAT_DIR_ERROR
ECHO.
ECHO ERROR: Could not create C:\BAT directory
ECHO.
PAUSE Press any key to exit...
GOTO END
:COPY_ERROR
ECHO.
ECHO ERROR: Failed to copy files from network
ECHO.
ECHO Check:
ECHO - T: drive is accessible
ECHO - C: drive has free space
ECHO - No file locks on C:\BAT\
ECHO.
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
REM ==================================================================
:UPDATE_AUTOEXEC
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
ECHO.
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
IF EXIST C:\AUTOEXEC.BAT (
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
)
REM Append MACHINE variable to AUTOEXEC.BAT
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
ECHO.
GOTO DEPLOYMENT_COMPLETE
:MACHINE_EXISTS
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
ECHO.
ECHO Current AUTOEXEC.BAT contains:
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
ECHO.
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
CHOICE /C:YN /N
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
ECHO.
ECHO Manual edit required:
ECHO 1. Edit C:\AUTOEXEC.BAT
ECHO 2. Find line: SET MACHINE=...
ECHO 3. Change to: SET MACHINE=%MACHINE%
ECHO 4. Save and reboot
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
:AUTOEXEC_ERROR
ECHO.
ECHO ERROR: Could not update AUTOEXEC.BAT
ECHO.
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
ECHO SET MACHINE=%MACHINE%
ECHO.
PAUSE Press any key to continue...
GOTO DEPLOYMENT_COMPLETE
REM ==================================================================
REM DEPLOYMENT COMPLETE
REM ==================================================================
:DEPLOYMENT_COMPLETE
CLS
ECHO ==============================================================
ECHO Deployment Complete!
ECHO ==============================================================
ECHO.
ECHO The DOS Update System has been installed on this machine.
ECHO.
ECHO Machine name: %MACHINE%
ECHO Backup location: T:\%MACHINE%\BACKUP\
ECHO Update location: T:\COMMON\ProdSW\
ECHO.
ECHO ==============================================================
ECHO Available Commands:
ECHO ==============================================================
ECHO.
ECHO NWTOC - Download updates from network
ECHO CTONW - Upload local changes to network
ECHO UPDATE - Backup entire C: drive to network
ECHO CHECKUPD - Check for available updates
ECHO.
ECHO ==============================================================
ECHO Next Steps:
ECHO ==============================================================
ECHO.
ECHO 1. REBOOT this machine to activate MACHINE variable
ECHO Press Ctrl+Alt+Del to reboot
ECHO.
ECHO 2. After reboot, run NWTOC to download all updates:
ECHO C:\BAT\NWTOC
ECHO.
ECHO 3. Create initial backup:
ECHO C:\BAT\UPDATE
ECHO.
ECHO ==============================================================
ECHO.
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
ECHO.
REM Create deployment log
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
PAUSE Press any key to exit...
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET MACHINE=

View File

@@ -0,0 +1,29 @@
@ECHO OFF
REM DIAGBK.BAT - Diagnostic Backup
REM Version: 1.1 - Simplified for DOS 6.22
ECHO.
ECHO Diagnostic Backup
ECHO.
MD T:\%MACHINE%\DIAG
MD T:\%MACHINE%\DIAG\BAT
ECHO Copying AUTOEXEC.BAT
COPY C:\AUTOEXEC.BAT T:\%MACHINE%\DIAG
ECHO Copying CONFIG.SYS
COPY C:\CONFIG.SYS T:\%MACHINE%\DIAG
ECHO Copying STARTNET.BAT
COPY C:\STARTNET.BAT T:\%MACHINE%\DIAG
ECHO Copying C:\BAT files
COPY C:\BAT\*.* T:\%MACHINE%\DIAG\BAT
ECHO Copying C:\BATCH files
COPY C:\BATCH\*.* T:\%MACHINE%\DIAG\BAT
ECHO.
ECHO Done - files in T:\%MACHINE%\DIAG
ECHO.

View File

@@ -1,167 +1,167 @@
@ECHO OFF
REM DOSTEST.BAT - Test DOS batch file deployment
REM Run this on the DOS machine after deploying new files
REM Version: 1.2 - DOS 6.22 compatible (removed brackets, 2>NUL, NUL checks)
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DOS 6.22 Configuration Test Script
ECHO ==============================================================
ECHO.
REM ==================================================================
REM TEST 1: Check MACHINE variable
REM ==================================================================
ECHO (TEST 1) Checking MACHINE variable...
IF "%MACHINE%"=="" GOTO TEST1_FAIL
ECHO OK: MACHINE=%MACHINE%
GOTO TEST2
:TEST1_FAIL
ECHO FAIL: MACHINE variable not set
ECHO Fix: Add "SET MACHINE=TS-4R" to C:\AUTOEXEC.BAT
ECHO.
PAUSE
GOTO TEST2
REM ==================================================================
REM TEST 2: Check required files exist
REM ==================================================================
:TEST2
ECHO.
ECHO (TEST 2) Checking required files...
IF NOT EXIST C:\AUTOEXEC.BAT ECHO FAIL: C:\AUTOEXEC.BAT missing
IF EXIST C:\AUTOEXEC.BAT ECHO OK: C:\AUTOEXEC.BAT exists
IF NOT EXIST C:\STARTNET.BAT ECHO FAIL: C:\STARTNET.BAT missing
IF EXIST C:\STARTNET.BAT ECHO OK: C:\STARTNET.BAT exists
IF NOT EXIST C:\BAT\*.* ECHO WARN: C:\BAT directory missing - run MD C:\BAT
IF EXIST C:\BAT\*.* ECHO OK: C:\BAT directory exists
REM ==================================================================
REM TEST 3: Check PATH variable
REM ==================================================================
ECHO.
ECHO (TEST 3) Checking PATH...
ECHO PATH=%PATH%
REM ==================================================================
REM TEST 4: Check T: drive
REM ==================================================================
ECHO.
ECHO (TEST 4) Checking T: drive...
IF NOT EXIST T:\*.* GOTO TEST4_FAIL
ECHO OK: T: drive accessible
GOTO TEST5
:TEST4_FAIL
ECHO FAIL: T: drive not accessible
ECHO Fix: Run C:\STARTNET.BAT to map network drives
GOTO TEST5
REM ==================================================================
REM TEST 5: Check X: drive
REM ==================================================================
:TEST5
ECHO.
ECHO (TEST 5) Checking X: drive...
IF NOT EXIST X:\*.* GOTO TEST5_FAIL
ECHO OK: X: drive accessible
GOTO TEST6
:TEST5_FAIL
ECHO FAIL: X: drive not accessible
ECHO Fix: Run C:\STARTNET.BAT to map network drives
GOTO TEST6
REM ==================================================================
REM TEST 6: Check if backup directory can be created
REM ==================================================================
:TEST6
ECHO.
ECHO (TEST 6) Checking backup directory creation...
IF "%MACHINE%"=="" GOTO TEST6_SKIP
REM Only test if T: is available
IF NOT EXIST T:\*.* GOTO TEST6_SKIP
REM Try to create machine directory
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO TEST6_FAIL
REM Try to create test subdirectory
IF NOT EXIST T:\%MACHINE%\TEST\*.* MD T:\%MACHINE%\TEST
IF NOT EXIST T:\%MACHINE%\TEST\*.* GOTO TEST6_FAIL
ECHO OK: Can create T:\%MACHINE%\TEST
ECHO OK: Backup directory structure works
REM Clean up test directory
RD T:\%MACHINE%\TEST
GOTO SUMMARY
:TEST6_FAIL
ECHO FAIL: Cannot create directory on T: drive
ECHO Check: T: drive is writable
GOTO SUMMARY
:TEST6_SKIP
ECHO SKIP: Cannot test (T: unavailable or MACHINE not set)
GOTO SUMMARY
REM ==================================================================
REM SUMMARY
REM ==================================================================
:SUMMARY
ECHO.
ECHO ==============================================================
ECHO Test Summary
ECHO ==============================================================
ECHO.
IF "%MACHINE%"=="" GOTO SUMMARY_FAIL
IF NOT EXIST C:\BAT\*.* GOTO SUMMARY_FAIL
IF NOT EXIST T:\*.* GOTO SUMMARY_FAIL
ECHO OK: All critical tests passed
ECHO.
ECHO Configuration appears correct.
ECHO.
ECHO Next step: Run UPDATE to test backup
ECHO C:\>UPDATE
ECHO.
GOTO END
:SUMMARY_FAIL
ECHO FAIL: One or more tests failed
ECHO.
ECHO Please fix the failed tests before running UPDATE
ECHO.
ECHO Common fixes:
ECHO 1. Reboot machine (load AUTOEXEC.BAT changes)
ECHO 2. Run C:\STARTNET.BAT (map network drives)
ECHO 3. Check network cable is connected
ECHO 4. Create C:\BAT directory: MD C:\BAT
ECHO.
:END
ECHO ==============================================================
ECHO.
PAUSE
@ECHO OFF
REM DOSTEST.BAT - Test DOS batch file deployment
REM Run this on the DOS machine after deploying new files
REM Version: 1.2 - DOS 6.22 compatible (removed brackets, 2>NUL, NUL checks)
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DOS 6.22 Configuration Test Script
ECHO ==============================================================
ECHO.
REM ==================================================================
REM TEST 1: Check MACHINE variable
REM ==================================================================
ECHO (TEST 1) Checking MACHINE variable...
IF "%MACHINE%"=="" GOTO TEST1_FAIL
ECHO OK: MACHINE=%MACHINE%
GOTO TEST2
:TEST1_FAIL
ECHO FAIL: MACHINE variable not set
ECHO Fix: Add "SET MACHINE=TS-4R" to C:\AUTOEXEC.BAT
ECHO.
PAUSE
GOTO TEST2
REM ==================================================================
REM TEST 2: Check required files exist
REM ==================================================================
:TEST2
ECHO.
ECHO (TEST 2) Checking required files...
IF NOT EXIST C:\AUTOEXEC.BAT ECHO FAIL: C:\AUTOEXEC.BAT missing
IF EXIST C:\AUTOEXEC.BAT ECHO OK: C:\AUTOEXEC.BAT exists
IF NOT EXIST C:\STARTNET.BAT ECHO FAIL: C:\STARTNET.BAT missing
IF EXIST C:\STARTNET.BAT ECHO OK: C:\STARTNET.BAT exists
IF NOT EXIST C:\BAT\*.* ECHO WARN: C:\BAT directory missing - run MD C:\BAT
IF EXIST C:\BAT\*.* ECHO OK: C:\BAT directory exists
REM ==================================================================
REM TEST 3: Check PATH variable
REM ==================================================================
ECHO.
ECHO (TEST 3) Checking PATH...
ECHO PATH=%PATH%
REM ==================================================================
REM TEST 4: Check T: drive
REM ==================================================================
ECHO.
ECHO (TEST 4) Checking T: drive...
IF NOT EXIST T:\*.* GOTO TEST4_FAIL
ECHO OK: T: drive accessible
GOTO TEST5
:TEST4_FAIL
ECHO FAIL: T: drive not accessible
ECHO Fix: Run C:\STARTNET.BAT to map network drives
GOTO TEST5
REM ==================================================================
REM TEST 5: Check X: drive
REM ==================================================================
:TEST5
ECHO.
ECHO (TEST 5) Checking X: drive...
IF NOT EXIST X:\*.* GOTO TEST5_FAIL
ECHO OK: X: drive accessible
GOTO TEST6
:TEST5_FAIL
ECHO FAIL: X: drive not accessible
ECHO Fix: Run C:\STARTNET.BAT to map network drives
GOTO TEST6
REM ==================================================================
REM TEST 6: Check if backup directory can be created
REM ==================================================================
:TEST6
ECHO.
ECHO (TEST 6) Checking backup directory creation...
IF "%MACHINE%"=="" GOTO TEST6_SKIP
REM Only test if T: is available
IF NOT EXIST T:\*.* GOTO TEST6_SKIP
REM Try to create machine directory
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
IF NOT EXIST T:\%MACHINE%\*.* GOTO TEST6_FAIL
REM Try to create test subdirectory
IF NOT EXIST T:\%MACHINE%\TEST\*.* MD T:\%MACHINE%\TEST
IF NOT EXIST T:\%MACHINE%\TEST\*.* GOTO TEST6_FAIL
ECHO OK: Can create T:\%MACHINE%\TEST
ECHO OK: Backup directory structure works
REM Clean up test directory
RD T:\%MACHINE%\TEST
GOTO SUMMARY
:TEST6_FAIL
ECHO FAIL: Cannot create directory on T: drive
ECHO Check: T: drive is writable
GOTO SUMMARY
:TEST6_SKIP
ECHO SKIP: Cannot test (T: unavailable or MACHINE not set)
GOTO SUMMARY
REM ==================================================================
REM SUMMARY
REM ==================================================================
:SUMMARY
ECHO.
ECHO ==============================================================
ECHO Test Summary
ECHO ==============================================================
ECHO.
IF "%MACHINE%"=="" GOTO SUMMARY_FAIL
IF NOT EXIST C:\BAT\*.* GOTO SUMMARY_FAIL
IF NOT EXIST T:\*.* GOTO SUMMARY_FAIL
ECHO OK: All critical tests passed
ECHO.
ECHO Configuration appears correct.
ECHO.
ECHO Next step: Run UPDATE to test backup
ECHO C:\>UPDATE
ECHO.
GOTO END
:SUMMARY_FAIL
ECHO FAIL: One or more tests failed
ECHO.
ECHO Please fix the failed tests before running UPDATE
ECHO.
ECHO Common fixes:
ECHO 1. Reboot machine (load AUTOEXEC.BAT changes)
ECHO 2. Run C:\STARTNET.BAT (map network drives)
ECHO 3. Check network cable is connected
ECHO 4. Create C:\BAT directory: MD C:\BAT
ECHO.
:END
ECHO ==============================================================
ECHO.
PAUSE

View File

@@ -29,12 +29,12 @@ IF NOT EXIST C:\NET\*.* MD C:\NET
REM Check for COMMON updates
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
ECHO [1/3] Copying batch files to C:\BAT...
ECHO (1/3) Copying batch files to C:\BAT...
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
ECHO Done
ECHO.
ECHO [2/3] Copying ATE data folders to C:\ATE...
ECHO (2/3) Copying ATE data folders to C:\ATE...
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
@@ -49,14 +49,14 @@ ECHO.
REM Check for network client updates
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
ECHO [3/3] Copying network files to C:\NET...
ECHO (3/3) Copying network files to C:\NET...
COPY T:\COMMON\NET\*.* C:\NET
ECHO Done
ECHO.
GOTO DONE
:SKIP_NET
ECHO [3/3] No network updates
ECHO (3/3) No network updates
ECHO.
:DONE
@@ -67,12 +67,12 @@ ECHO.
GOTO END
:NO_COMMON
ECHO [ERROR] T:\COMMON\ProdSW not found
ECHO ERROR: T:\COMMON\ProdSW not found
PAUSE
GOTO END
:NO_DRIVE
ECHO [ERROR] T: drive not available
ECHO ERROR: T: drive not available
ECHO Run C:\STARTNET.BAT first
PAUSE
GOTO END

View File

@@ -1,133 +1,133 @@
@ECHO OFF
REM NWTOC-DEBUG.BAT - Download with diagnostic pauses
REM Version: 1.0 - Debug version for recording
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DEBUG: NWTOC - Network to Computer Download
ECHO ==============================================================
ECHO.
ECHO NWTOC Step 0: Verifying prerequisites
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive OK
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
ECHO T:\COMMON\ProdSW OK
ECHO.
PAUSE
ECHO.
ECHO NWTOC Step 1: Creating local directories
IF NOT EXIST C:\BAT\*.* MD C:\BAT
ECHO C:\BAT ready
IF NOT EXIST C:\ATE\*.* MD C:\ATE
ECHO C:\ATE ready
IF NOT EXIST C:\ATE\5BDATA\*.* MD C:\ATE\5BDATA
IF NOT EXIST C:\ATE\7BDATA\*.* MD C:\ATE\7BDATA
IF NOT EXIST C:\ATE\8BDATA\*.* MD C:\ATE\8BDATA
IF NOT EXIST C:\ATE\DSCDATA\*.* MD C:\ATE\DSCDATA
IF NOT EXIST C:\ATE\HVDATA\*.* MD C:\ATE\HVDATA
IF NOT EXIST C:\ATE\PWRDATA\*.* MD C:\ATE\PWRDATA
IF NOT EXIST C:\ATE\RMSDATA\*.* MD C:\ATE\RMSDATA
IF NOT EXIST C:\ATE\SCTDATA\*.* MD C:\ATE\SCTDATA
ECHO C:\ATE subfolders ready
IF NOT EXIST C:\NET\*.* MD C:\NET
ECHO C:\NET ready
PAUSE
ECHO.
ECHO NWTOC Step 2: Downloading batch files to C:\BAT
IF EXIST T:\COMMON\ProdSW\*.BAT ECHO Found BAT files in T:\COMMON\ProdSW
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
PAUSE
ECHO.
ECHO NWTOC Step 3: Downloading 5BDATA
IF EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO Found files in T:\Ate\ProdSW\5BDATA
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
IF NOT EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO No files in T:\Ate\ProdSW\5BDATA
PAUSE
ECHO.
ECHO NWTOC Step 4: Downloading 7BDATA
IF EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO Found files in T:\Ate\ProdSW\7BDATA
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
IF NOT EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO No files in T:\Ate\ProdSW\7BDATA
PAUSE
ECHO.
ECHO NWTOC Step 5: Downloading 8BDATA
IF EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO Found files in T:\Ate\ProdSW\8BDATA
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
IF NOT EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO No files in T:\Ate\ProdSW\8BDATA
PAUSE
ECHO.
ECHO NWTOC Step 6: Downloading DSCDATA
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO Found files in T:\Ate\ProdSW\DSCDATA
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* COPY T:\Ate\ProdSW\DSCDATA\*.* C:\ATE\DSCDATA
IF NOT EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO No files in T:\Ate\ProdSW\DSCDATA
PAUSE
ECHO.
ECHO NWTOC Step 7: Downloading HVDATA
IF EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO Found files in T:\Ate\ProdSW\HVDATA
IF EXIST T:\Ate\ProdSW\HVDATA\*.* COPY T:\Ate\ProdSW\HVDATA\*.* C:\ATE\HVDATA
IF NOT EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO No files in T:\Ate\ProdSW\HVDATA
PAUSE
ECHO.
ECHO NWTOC Step 8: Downloading PWRDATA
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO Found files in T:\Ate\ProdSW\PWRDATA
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* COPY T:\Ate\ProdSW\PWRDATA\*.* C:\ATE\PWRDATA
IF NOT EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO No files in T:\Ate\ProdSW\PWRDATA
PAUSE
ECHO.
ECHO NWTOC Step 9: Downloading RMSDATA
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO Found files in T:\Ate\ProdSW\RMSDATA
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* COPY T:\Ate\ProdSW\RMSDATA\*.* C:\ATE\RMSDATA
IF NOT EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO No files in T:\Ate\ProdSW\RMSDATA
PAUSE
ECHO.
ECHO NWTOC Step 10: Downloading SCTDATA
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO Found files in T:\Ate\ProdSW\SCTDATA
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* COPY T:\Ate\ProdSW\SCTDATA\*.* C:\ATE\SCTDATA
IF NOT EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO No files in T:\Ate\ProdSW\SCTDATA
PAUSE
ECHO.
ECHO NWTOC Step 11: Checking for network client updates
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
ECHO Found files in T:\COMMON\NET
COPY T:\COMMON\NET\*.* C:\NET
ECHO Network files copied
PAUSE
GOTO DONE
:SKIP_NET
ECHO No network updates in T:\COMMON\NET
PAUSE
:DONE
ECHO.
ECHO ==============================================================
ECHO NWTOC-DEBUG Complete
ECHO ==============================================================
GOTO END
:NO_DRIVE
ECHO.
ECHO NWTOC ERROR: T: drive not available
PAUSE
GOTO END
:NO_COMMON
ECHO.
ECHO NWTOC ERROR: T:\COMMON\ProdSW not found
PAUSE
GOTO END
:END
@ECHO OFF
REM NWTOCD.BAT - Download with diagnostic pauses (8.3 name)
REM Version: 1.1 - Debug version for recording
REM Last modified: 2026-01-21
ECHO.
ECHO ==============================================================
ECHO DEBUG: NWTOC - Network to Computer Download
ECHO ==============================================================
ECHO.
ECHO NWTOC Step 0: Verifying prerequisites
IF NOT EXIST T:\*.* GOTO NO_DRIVE
ECHO T: drive OK
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
ECHO T:\COMMON\ProdSW OK
ECHO.
PAUSE
ECHO.
ECHO NWTOC Step 1: Creating local directories
IF NOT EXIST C:\BAT\*.* MD C:\BAT
ECHO C:\BAT ready
IF NOT EXIST C:\ATE\*.* MD C:\ATE
ECHO C:\ATE ready
IF NOT EXIST C:\ATE\5BDATA\*.* MD C:\ATE\5BDATA
IF NOT EXIST C:\ATE\7BDATA\*.* MD C:\ATE\7BDATA
IF NOT EXIST C:\ATE\8BDATA\*.* MD C:\ATE\8BDATA
IF NOT EXIST C:\ATE\DSCDATA\*.* MD C:\ATE\DSCDATA
IF NOT EXIST C:\ATE\HVDATA\*.* MD C:\ATE\HVDATA
IF NOT EXIST C:\ATE\PWRDATA\*.* MD C:\ATE\PWRDATA
IF NOT EXIST C:\ATE\RMSDATA\*.* MD C:\ATE\RMSDATA
IF NOT EXIST C:\ATE\SCTDATA\*.* MD C:\ATE\SCTDATA
ECHO C:\ATE subfolders ready
IF NOT EXIST C:\NET\*.* MD C:\NET
ECHO C:\NET ready
PAUSE
ECHO.
ECHO NWTOC Step 2: Downloading batch files to C:\BAT
IF EXIST T:\COMMON\ProdSW\*.BAT ECHO Found BAT files in T:\COMMON\ProdSW
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
PAUSE
ECHO.
ECHO NWTOC Step 3: Downloading 5BDATA
IF EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO Found files in T:\Ate\ProdSW\5BDATA
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
IF NOT EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO No files in T:\Ate\ProdSW\5BDATA
PAUSE
ECHO.
ECHO NWTOC Step 4: Downloading 7BDATA
IF EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO Found files in T:\Ate\ProdSW\7BDATA
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
IF NOT EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO No files in T:\Ate\ProdSW\7BDATA
PAUSE
ECHO.
ECHO NWTOC Step 5: Downloading 8BDATA
IF EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO Found files in T:\Ate\ProdSW\8BDATA
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
IF NOT EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO No files in T:\Ate\ProdSW\8BDATA
PAUSE
ECHO.
ECHO NWTOC Step 6: Downloading DSCDATA
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO Found files in T:\Ate\ProdSW\DSCDATA
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* COPY T:\Ate\ProdSW\DSCDATA\*.* C:\ATE\DSCDATA
IF NOT EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO No files in T:\Ate\ProdSW\DSCDATA
PAUSE
ECHO.
ECHO NWTOC Step 7: Downloading HVDATA
IF EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO Found files in T:\Ate\ProdSW\HVDATA
IF EXIST T:\Ate\ProdSW\HVDATA\*.* COPY T:\Ate\ProdSW\HVDATA\*.* C:\ATE\HVDATA
IF NOT EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO No files in T:\Ate\ProdSW\HVDATA
PAUSE
ECHO.
ECHO NWTOC Step 8: Downloading PWRDATA
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO Found files in T:\Ate\ProdSW\PWRDATA
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* COPY T:\Ate\ProdSW\PWRDATA\*.* C:\ATE\PWRDATA
IF NOT EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO No files in T:\Ate\ProdSW\PWRDATA
PAUSE
ECHO.
ECHO NWTOC Step 9: Downloading RMSDATA
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO Found files in T:\Ate\ProdSW\RMSDATA
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* COPY T:\Ate\ProdSW\RMSDATA\*.* C:\ATE\RMSDATA
IF NOT EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO No files in T:\Ate\ProdSW\RMSDATA
PAUSE
ECHO.
ECHO NWTOC Step 10: Downloading SCTDATA
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO Found files in T:\Ate\ProdSW\SCTDATA
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* COPY T:\Ate\ProdSW\SCTDATA\*.* C:\ATE\SCTDATA
IF NOT EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO No files in T:\Ate\ProdSW\SCTDATA
PAUSE
ECHO.
ECHO NWTOC Step 11: Checking for network client updates
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
ECHO Found files in T:\COMMON\NET
COPY T:\COMMON\NET\*.* C:\NET
ECHO Network files copied
PAUSE
GOTO DONE
:SKIP_NET
ECHO No network updates in T:\COMMON\NET
PAUSE
:DONE
ECHO.
ECHO ==============================================================
ECHO NWTOC-DEBUG Complete
ECHO ==============================================================
GOTO END
:NO_DRIVE
ECHO.
ECHO NWTOC ERROR: T: drive not available
PAUSE
GOTO END
:NO_COMMON
ECHO.
ECHO NWTOC ERROR: T:\COMMON\ProdSW not found
PAUSE
GOTO END
:END

View File

@@ -1,166 +1,166 @@
@ECHO OFF
REM REBOOT.BAT - Manual system file update script
REM
REM NOTE: This file is normally AUTO-GENERATED by STAGE.BAT
REM This standalone version is for manual testing/recovery only
REM
REM Usage: REBOOT
REM
REM Applies staged system file updates:
REM C:\AUTOEXEC.NEW ??? C:\AUTOEXEC.BAT
REM C:\CONFIG.NEW ??? C:\CONFIG.SYS
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
ECHO.
ECHO ==============================================================
ECHO Manual System File Update
ECHO ==============================================================
ECHO.
REM ==================================================================
REM Check if staged files exist
REM ==================================================================
SET HASAUTO=0
SET HASCONF=0
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
IF EXIST C:\CONFIG.NEW SET HASCONF=1
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
REM ==================================================================
REM Warn user
REM ==================================================================
ECHO [WARNING] This will replace your current system files:
ECHO.
IF "%HASAUTO%"=="1" ECHO C:\AUTOEXEC.BAT will be replaced by C:\AUTOEXEC.NEW
IF "%HASCONF%"=="1" ECHO C:\CONFIG.SYS will be replaced by C:\CONFIG.NEW
ECHO.
ECHO Backups will be saved as .SAV files.
ECHO.
ECHO Press Ctrl+C to cancel, or
PAUSE
ECHO.
REM ==================================================================
REM Backup current files
REM ==================================================================
ECHO Creating backups...
IF EXIST C:\AUTOEXEC.BAT COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF EXIST C:\AUTOEXEC.BAT IF NOT ERRORLEVEL 1 ECHO [OK] C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO [OK] C:\CONFIG.SYS ??? C:\CONFIG.SAV
ECHO.
REM ==================================================================
REM Apply updates
REM ==================================================================
ECHO Applying updates...
REM Apply AUTOEXEC.NEW
IF "%HASAUTO%"=="1" COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT >NUL
IF "%HASAUTO%"=="1" IF NOT ERRORLEVEL 1 ECHO [OK] AUTOEXEC.BAT updated
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 ECHO [ERROR] AUTOEXEC.BAT update failed
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
REM Apply CONFIG.NEW
IF "%HASCONF%"=="1" COPY C:\CONFIG.NEW C:\CONFIG.SYS >NUL
IF "%HASCONF%"=="1" IF NOT ERRORLEVEL 1 ECHO [OK] CONFIG.SYS updated
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 ECHO [ERROR] CONFIG.SYS update failed
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
ECHO.
REM ==================================================================
REM Clean up staging files
REM ==================================================================
ECHO Cleaning up staging files...
IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW
IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW
ECHO [OK] Staging files deleted
ECHO.
REM ==================================================================
REM Success
REM ==================================================================
ECHO ==============================================================
ECHO System Files Updated Successfully
ECHO ==============================================================
ECHO.
ECHO Updated files:
IF "%HASAUTO%"=="1" ECHO - C:\AUTOEXEC.BAT
IF "%HASCONF%"=="1" ECHO - C:\CONFIG.SYS
ECHO.
ECHO Backup files saved:
ECHO - C:\AUTOEXEC.SAV (previous AUTOEXEC.BAT)
ECHO - C:\CONFIG.SAV (previous CONFIG.SYS)
ECHO.
ECHO To activate changes:
ECHO Reboot the computer (Ctrl+Alt+Del)
ECHO.
ECHO To rollback changes:
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS
ECHO Then reboot
ECHO.
ECHO ==============================================================
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NO_UPDATES
ECHO [WARNING] No staged update files found
ECHO.
ECHO Expected files:
ECHO C:\AUTOEXEC.NEW (not found)
ECHO C:\CONFIG.NEW (not found)
ECHO.
ECHO Run NWTOC to download updates from network, then:
ECHO CALL C:\BAT\STAGE.BAT
ECHO.
PAUSE
GOTO END
:UPDATE_ERROR
ECHO.
ECHO [ERROR] Update failed
ECHO.
ECHO Your system may be in an inconsistent state.
ECHO.
ECHO Recovery steps:
ECHO 1. COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO 2. COPY C:\CONFIG.SAV C:\CONFIG.SYS
ECHO 3. Reboot (Ctrl+Alt+Del)
ECHO.
ECHO If system won't boot:
ECHO 1. Boot from DOS floppy
ECHO 2. Copy .SAV files back to .BAT and .SYS
ECHO 3. Remove floppy and reboot
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
SET HASAUTO=
SET HASCONF=
@ECHO OFF
REM REBOOT.BAT - Manual system file update script
REM
REM NOTE: This file is normally AUTO-GENERATED by STAGE.BAT
REM This standalone version is for manual testing/recovery only
REM
REM Usage: REBOOT
REM
REM Applies staged system file updates:
REM C:\AUTOEXEC.NEW ??? C:\AUTOEXEC.BAT
REM C:\CONFIG.NEW ??? C:\CONFIG.SYS
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
ECHO.
ECHO ==============================================================
ECHO Manual System File Update
ECHO ==============================================================
ECHO.
REM ==================================================================
REM Check if staged files exist
REM ==================================================================
SET HASAUTO=0
SET HASCONF=0
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
IF EXIST C:\CONFIG.NEW SET HASCONF=1
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
REM ==================================================================
REM Warn user
REM ==================================================================
ECHO WARNING: This will replace your current system files:
ECHO.
IF "%HASAUTO%"=="1" ECHO C:\AUTOEXEC.BAT will be replaced by C:\AUTOEXEC.NEW
IF "%HASCONF%"=="1" ECHO C:\CONFIG.SYS will be replaced by C:\CONFIG.NEW
ECHO.
ECHO Backups will be saved as .SAV files.
ECHO.
ECHO Press Ctrl+C to cancel, or
PAUSE
ECHO.
REM ==================================================================
REM Backup current files
REM ==================================================================
ECHO Creating backups...
IF EXIST C:\AUTOEXEC.BAT COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF EXIST C:\AUTOEXEC.BAT IF NOT ERRORLEVEL 1 ECHO (OK) C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO (OK) C:\CONFIG.SYS ??? C:\CONFIG.SAV
ECHO.
REM ==================================================================
REM Apply updates
REM ==================================================================
ECHO Applying updates...
REM Apply AUTOEXEC.NEW
IF "%HASAUTO%"=="1" COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT >NUL
IF "%HASAUTO%"=="1" IF NOT ERRORLEVEL 1 ECHO (OK) AUTOEXEC.BAT updated
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 ECHO ERROR: AUTOEXEC.BAT update failed
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
REM Apply CONFIG.NEW
IF "%HASCONF%"=="1" COPY C:\CONFIG.NEW C:\CONFIG.SYS >NUL
IF "%HASCONF%"=="1" IF NOT ERRORLEVEL 1 ECHO (OK) CONFIG.SYS updated
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 ECHO ERROR: CONFIG.SYS update failed
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
ECHO.
REM ==================================================================
REM Clean up staging files
REM ==================================================================
ECHO Cleaning up staging files...
IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW
IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW
ECHO (OK) Staging files deleted
ECHO.
REM ==================================================================
REM Success
REM ==================================================================
ECHO ==============================================================
ECHO System Files Updated Successfully
ECHO ==============================================================
ECHO.
ECHO Updated files:
IF "%HASAUTO%"=="1" ECHO - C:\AUTOEXEC.BAT
IF "%HASCONF%"=="1" ECHO - C:\CONFIG.SYS
ECHO.
ECHO Backup files saved:
ECHO - C:\AUTOEXEC.SAV (previous AUTOEXEC.BAT)
ECHO - C:\CONFIG.SAV (previous CONFIG.SYS)
ECHO.
ECHO To activate changes:
ECHO Reboot the computer (Ctrl+Alt+Del)
ECHO.
ECHO To rollback changes:
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS
ECHO Then reboot
ECHO.
ECHO ==============================================================
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NO_UPDATES
ECHO WARNING: No staged update files found
ECHO.
ECHO Expected files:
ECHO C:\AUTOEXEC.NEW (not found)
ECHO C:\CONFIG.NEW (not found)
ECHO.
ECHO Run NWTOC to download updates from network, then:
ECHO CALL C:\BAT\STAGE.BAT
ECHO.
PAUSE
GOTO END
:UPDATE_ERROR
ECHO.
ECHO ERROR: Update failed
ECHO.
ECHO Your system may be in an inconsistent state.
ECHO.
ECHO Recovery steps:
ECHO 1. COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO 2. COPY C:\CONFIG.SAV C:\CONFIG.SYS
ECHO 3. Reboot (Ctrl+Alt+Del)
ECHO.
ECHO If system won't boot:
ECHO 1. Boot from DOS floppy
ECHO 2. Copy .SAV files back to .BAT and .SYS
ECHO 3. Remove floppy and reboot
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
SET HASAUTO=
SET HASCONF=

View File

@@ -1,245 +1,245 @@
@ECHO OFF
REM STAGE.BAT - Stage system files for update after reboot
REM Called by NWTOC.BAT when AUTOEXEC.NEW or CONFIG.NEW are detected
REM
REM This script:
REM 1. Verifies staged files exist (C:\AUTOEXEC.NEW, C:\CONFIG.NEW)
REM 2. Backs up current AUTOEXEC.BAT to C:\AUTOEXEC.SAV
REM 3. Creates REBOOT.BAT to apply changes after reboot
REM 4. Modifies AUTOEXEC.BAT to call REBOOT.BAT once on next boot
REM 5. Instructs user to reboot
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
REM ==================================================================
REM STEP 1: Verify staged files exist
REM ==================================================================
SET HASAUTO=0
SET HASCONF=0
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
IF EXIST C:\CONFIG.NEW SET HASCONF=1
REM Check if any updates need staging
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
ECHO.
ECHO ==============================================================
ECHO Staging System File Updates
ECHO ==============================================================
IF "%HASAUTO%"=="1" ECHO [STAGED] C:\AUTOEXEC.NEW ??? Will replace AUTOEXEC.BAT
IF "%HASCONF%"=="1" ECHO [STAGED] C:\CONFIG.NEW ??? Will replace CONFIG.SYS
ECHO ==============================================================
ECHO.
REM ==================================================================
REM STEP 2: Backup current AUTOEXEC.BAT
REM ==================================================================
ECHO [1/3] Backing up current system files...
REM Check if AUTOEXEC.BAT exists
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC
REM Create backup
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO [OK] C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
REM Also backup CONFIG.SYS if it exists
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO [OK] C:\CONFIG.SYS ??? C:\CONFIG.SAV
ECHO.
REM ==================================================================
REM STEP 3: Create REBOOT.BAT
REM ==================================================================
ECHO [2/3] Creating reboot update script...
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
REM Create REBOOT.BAT - this runs once after reboot
ECHO @ECHO OFF > C:\BAT\REBOOT.BAT
ECHO REM REBOOT.BAT - Apply staged system updates (AUTO-GENERATED) >> C:\BAT\REBOOT.BAT
ECHO REM This file is automatically deleted after running >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO Applying System Updates >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
REM Apply AUTOEXEC.NEW if it exists
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW ECHO [1/2] Updating AUTOEXEC.BAT... >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT ^>NUL >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF NOT ERRORLEVEL 1 ECHO [OK] AUTOEXEC.BAT updated >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF ERRORLEVEL 1 ECHO [ERROR] AUTOEXEC.BAT update failed >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
REM Apply CONFIG.NEW if it exists
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW ECHO [2/2] Updating CONFIG.SYS... >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW COPY C:\CONFIG.NEW C:\CONFIG.SYS ^>NUL >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF NOT ERRORLEVEL 1 ECHO [OK] CONFIG.SYS updated >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF ERRORLEVEL 1 ECHO [ERROR] CONFIG.SYS update failed >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
REM Delete REBOOT.BAT after running
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO System Updates Applied >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO Rollback files available: >> C:\BAT\REBOOT.BAT
ECHO ECHO C:\AUTOEXEC.SAV - Previous AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
ECHO ECHO C:\CONFIG.SAV - Previous CONFIG.SYS >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO To rollback, run: >> C:\BAT\REBOOT.BAT
ECHO ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
ECHO ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO PAUSE Press any key to continue boot... >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
ECHO REM Delete this script >> C:\BAT\REBOOT.BAT
ECHO DEL C:\BAT\REBOOT.BAT >> C:\BAT\REBOOT.BAT
IF NOT EXIST C:\BAT\REBOOT.BAT GOTO CREATE_ERROR
ECHO [OK] C:\BAT\REBOOT.BAT created
ECHO.
REM ==================================================================
REM STEP 4: Modify AUTOEXEC.BAT to call REBOOT.BAT once
REM ==================================================================
ECHO [3/3] Modifying AUTOEXEC.BAT for one-time reboot update...
REM Create temporary file with REBOOT.BAT call at the top
ECHO @ECHO OFF > C:\AUTOEXEC.TMP
ECHO REM One-time system update on next reboot >> C:\AUTOEXEC.TMP
ECHO IF EXIST C:\BAT\REBOOT.BAT CALL C:\BAT\REBOOT.BAT >> C:\AUTOEXEC.TMP
ECHO. >> C:\AUTOEXEC.TMP
REM Append current AUTOEXEC.BAT contents (skip first @ECHO OFF line)
REM DOS 6.22: Use TYPE and redirect (simple copy preserves all lines)
TYPE C:\AUTOEXEC.BAT >> C:\AUTOEXEC.TMP
REM Replace AUTOEXEC.BAT with modified version
COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL
IF ERRORLEVEL 1 GOTO MODIFY_ERROR
REM Clean up temporary file
DEL C:\AUTOEXEC.TMP
ECHO [OK] AUTOEXEC.BAT modified to run update on next boot
ECHO.
REM ==================================================================
REM STEP 5: Instruct user to reboot
REM ==================================================================
ECHO ==============================================================
ECHO REBOOT REQUIRED
ECHO ==============================================================
ECHO.
ECHO System files have been staged for update.
ECHO.
ECHO On next boot, AUTOEXEC.BAT will automatically:
ECHO 1. Apply AUTOEXEC.NEW and/or CONFIG.NEW
ECHO 2. Delete staging files
ECHO 3. Continue normal boot
ECHO.
ECHO To apply updates now:
ECHO 1. Press Ctrl+Alt+Del to reboot
ECHO 2. Or type: EXIT and reboot from DOS prompt
ECHO.
ECHO To cancel update:
ECHO 1. Delete C:\AUTOEXEC.NEW
ECHO 2. Delete C:\CONFIG.NEW
ECHO 3. Delete C:\BAT\REBOOT.BAT
ECHO 4. Restore C:\AUTOEXEC.BAT from C:\AUTOEXEC.SAV
ECHO.
ECHO ==============================================================
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NO_UPDATES
ECHO.
ECHO [WARNING] No staged update files found
ECHO.
ECHO Expected files:
ECHO C:\AUTOEXEC.NEW (not found)
ECHO C:\CONFIG.NEW (not found)
ECHO.
ECHO Run NWTOC to download updates from network.
ECHO.
PAUSE
GOTO END
:NO_AUTOEXEC
ECHO.
ECHO [ERROR] C:\AUTOEXEC.BAT not found
ECHO.
ECHO Cannot stage updates without existing AUTOEXEC.BAT
ECHO.
PAUSE
GOTO END
:BACKUP_ERROR
ECHO.
ECHO [ERROR] Failed to create backup
ECHO.
ECHO Could not copy C:\AUTOEXEC.BAT to C:\AUTOEXEC.SAV
ECHO.
ECHO Check:
ECHO - Sufficient disk space on C:
ECHO - C: drive is not write-protected
ECHO.
PAUSE
GOTO END
:CREATE_ERROR
ECHO.
ECHO [ERROR] Failed to create C:\BAT\REBOOT.BAT
ECHO.
ECHO Check:
ECHO - C:\BAT directory exists
ECHO - Sufficient disk space on C:
ECHO - C: drive is not write-protected
ECHO.
PAUSE
GOTO END
:MODIFY_ERROR
ECHO.
ECHO [ERROR] Failed to modify AUTOEXEC.BAT
ECHO.
ECHO AUTOEXEC.BAT may be corrupted!
ECHO.
ECHO Recovery:
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET HASAUTO=
SET HASCONF=
@ECHO OFF
REM STAGE.BAT - Stage system files for update after reboot
REM Called by NWTOC.BAT when AUTOEXEC.NEW or CONFIG.NEW are detected
REM
REM This script:
REM 1. Verifies staged files exist (C:\AUTOEXEC.NEW, C:\CONFIG.NEW)
REM 2. Backs up current AUTOEXEC.BAT to C:\AUTOEXEC.SAV
REM 3. Creates REBOOT.BAT to apply changes after reboot
REM 4. Modifies AUTOEXEC.BAT to call REBOOT.BAT once on next boot
REM 5. Instructs user to reboot
REM
REM Version: 1.0 - DOS 6.22 compatible
REM Last modified: 2026-01-19
REM ==================================================================
REM STEP 1: Verify staged files exist
REM ==================================================================
SET HASAUTO=0
SET HASCONF=0
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
IF EXIST C:\CONFIG.NEW SET HASCONF=1
REM Check if any updates need staging
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
ECHO.
ECHO ==============================================================
ECHO Staging System File Updates
ECHO ==============================================================
IF "%HASAUTO%"=="1" ECHO (STAGED) C:\AUTOEXEC.NEW ??? Will replace AUTOEXEC.BAT
IF "%HASCONF%"=="1" ECHO (STAGED) C:\CONFIG.NEW ??? Will replace CONFIG.SYS
ECHO ==============================================================
ECHO.
REM ==================================================================
REM STEP 2: Backup current AUTOEXEC.BAT
REM ==================================================================
ECHO (1/3) Backing up current system files...
REM Check if AUTOEXEC.BAT exists
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC
REM Create backup
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
ECHO (OK) C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
REM Also backup CONFIG.SYS if it exists
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO (OK) C:\CONFIG.SYS ??? C:\CONFIG.SAV
ECHO.
REM ==================================================================
REM STEP 3: Create REBOOT.BAT
REM ==================================================================
ECHO (2/3) Creating reboot update script...
REM Create C:\BAT directory if it doesn't exist
IF NOT EXIST C:\BAT\NUL MD C:\BAT
REM Create REBOOT.BAT - this runs once after reboot
ECHO @ECHO OFF > C:\BAT\REBOOT.BAT
ECHO REM REBOOT.BAT - Apply staged system updates (AUTO-GENERATED) >> C:\BAT\REBOOT.BAT
ECHO REM This file is automatically deleted after running >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO Applying System Updates >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
REM Apply AUTOEXEC.NEW if it exists
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW ECHO (1/2) Updating AUTOEXEC.BAT... >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT ^>NUL >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF NOT ERRORLEVEL 1 ECHO (OK) AUTOEXEC.BAT updated >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF ERRORLEVEL 1 ECHO ERROR: AUTOEXEC.BAT update failed >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW >> C:\BAT\REBOOT.BAT
IF "%HASAUTO%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
REM Apply CONFIG.NEW if it exists
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW ECHO (2/2) Updating CONFIG.SYS... >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW COPY C:\CONFIG.NEW C:\CONFIG.SYS ^>NUL >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF NOT ERRORLEVEL 1 ECHO (OK) CONFIG.SYS updated >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF ERRORLEVEL 1 ECHO ERROR: CONFIG.SYS update failed >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW >> C:\BAT\REBOOT.BAT
IF "%HASCONF%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
REM Delete REBOOT.BAT after running
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO System Updates Applied >> C:\BAT\REBOOT.BAT
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO Rollback files available: >> C:\BAT\REBOOT.BAT
ECHO ECHO C:\AUTOEXEC.SAV - Previous AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
ECHO ECHO C:\CONFIG.SAV - Previous CONFIG.SYS >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO ECHO To rollback, run: >> C:\BAT\REBOOT.BAT
ECHO ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
ECHO ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS >> C:\BAT\REBOOT.BAT
ECHO ECHO. >> C:\BAT\REBOOT.BAT
ECHO PAUSE Press any key to continue boot... >> C:\BAT\REBOOT.BAT
ECHO. >> C:\BAT\REBOOT.BAT
ECHO REM Delete this script >> C:\BAT\REBOOT.BAT
ECHO DEL C:\BAT\REBOOT.BAT >> C:\BAT\REBOOT.BAT
IF NOT EXIST C:\BAT\REBOOT.BAT GOTO CREATE_ERROR
ECHO (OK) C:\BAT\REBOOT.BAT created
ECHO.
REM ==================================================================
REM STEP 4: Modify AUTOEXEC.BAT to call REBOOT.BAT once
REM ==================================================================
ECHO (3/3) Modifying AUTOEXEC.BAT for one-time reboot update...
REM Create temporary file with REBOOT.BAT call at the top
ECHO @ECHO OFF > C:\AUTOEXEC.TMP
ECHO REM One-time system update on next reboot >> C:\AUTOEXEC.TMP
ECHO IF EXIST C:\BAT\REBOOT.BAT CALL C:\BAT\REBOOT.BAT >> C:\AUTOEXEC.TMP
ECHO. >> C:\AUTOEXEC.TMP
REM Append current AUTOEXEC.BAT contents (skip first @ECHO OFF line)
REM DOS 6.22: Use TYPE and redirect (simple copy preserves all lines)
TYPE C:\AUTOEXEC.BAT >> C:\AUTOEXEC.TMP
REM Replace AUTOEXEC.BAT with modified version
COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL
IF ERRORLEVEL 1 GOTO MODIFY_ERROR
REM Clean up temporary file
DEL C:\AUTOEXEC.TMP
ECHO (OK) AUTOEXEC.BAT modified to run update on next boot
ECHO.
REM ==================================================================
REM STEP 5: Instruct user to reboot
REM ==================================================================
ECHO ==============================================================
ECHO REBOOT REQUIRED
ECHO ==============================================================
ECHO.
ECHO System files have been staged for update.
ECHO.
ECHO On next boot, AUTOEXEC.BAT will automatically:
ECHO 1. Apply AUTOEXEC.NEW and/or CONFIG.NEW
ECHO 2. Delete staging files
ECHO 3. Continue normal boot
ECHO.
ECHO To apply updates now:
ECHO 1. Press Ctrl+Alt+Del to reboot
ECHO 2. Or type: EXIT and reboot from DOS prompt
ECHO.
ECHO To cancel update:
ECHO 1. Delete C:\AUTOEXEC.NEW
ECHO 2. Delete C:\CONFIG.NEW
ECHO 3. Delete C:\BAT\REBOOT.BAT
ECHO 4. Restore C:\AUTOEXEC.BAT from C:\AUTOEXEC.SAV
ECHO.
ECHO ==============================================================
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NO_UPDATES
ECHO.
ECHO WARNING: No staged update files found
ECHO.
ECHO Expected files:
ECHO C:\AUTOEXEC.NEW (not found)
ECHO C:\CONFIG.NEW (not found)
ECHO.
ECHO Run NWTOC to download updates from network.
ECHO.
PAUSE
GOTO END
:NO_AUTOEXEC
ECHO.
ECHO ERROR: C:\AUTOEXEC.BAT not found
ECHO.
ECHO Cannot stage updates without existing AUTOEXEC.BAT
ECHO.
PAUSE
GOTO END
:BACKUP_ERROR
ECHO.
ECHO ERROR: Failed to create backup
ECHO.
ECHO Could not copy C:\AUTOEXEC.BAT to C:\AUTOEXEC.SAV
ECHO.
ECHO Check:
ECHO - Sufficient disk space on C:
ECHO - C: drive is not write-protected
ECHO.
PAUSE
GOTO END
:CREATE_ERROR
ECHO.
ECHO ERROR: Failed to create C:\BAT\REBOOT.BAT
ECHO.
ECHO Check:
ECHO - C:\BAT directory exists
ECHO - Sufficient disk space on C:
ECHO - C: drive is not write-protected
ECHO.
PAUSE
GOTO END
:MODIFY_ERROR
ECHO.
ECHO ERROR: Failed to modify AUTOEXEC.BAT
ECHO.
ECHO AUTOEXEC.BAT may be corrupted!
ECHO.
ECHO Recovery:
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables
SET HASAUTO=
SET HASCONF=

View File

@@ -1,75 +1,75 @@
@ECHO OFF
REM STARTNET.BAT - Start Microsoft Network Client and map drives
REM Called from AUTOEXEC.BAT
REM
REM Version: 2.0
REM Last modified: 2026-01-19
REM ==================================================================
REM STEP 1: Start network client
REM ==================================================================
REM Load network protocols and drivers
REM This starts the Microsoft Network Client that was loaded via CONFIG.SYS
NET START
REM Check if NET START succeeded
IF ERRORLEVEL 1 GOTO NET_START_FAILED
ECHO [OK] Network client started
REM ==================================================================
REM STEP 2: Map network drives
REM ==================================================================
REM Map T: to test share (SMB1 compatible)
REM /YES = Don't prompt for confirmation
NET USE T: \\D2TESTNAS\test /YES
IF ERRORLEVEL 1 GOTO T_DRIVE_FAILED
ECHO [OK] T: mapped to \\D2TESTNAS\test
REM Map X: to datasheets share
NET USE X: \\D2TESTNAS\datasheets /YES
IF ERRORLEVEL 1 GOTO X_DRIVE_FAILED
ECHO [OK] X: mapped to \\D2TESTNAS\datasheets
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NET_START_FAILED
ECHO [ERROR] Network client failed to start
ECHO.
ECHO Check:
ECHO - Network cable is connected
ECHO - CONFIG.SYS has correct network drivers
ECHO - PROTOCOL.INI is configured correctly
ECHO.
GOTO END
:T_DRIVE_FAILED
ECHO [ERROR] Failed to map T: drive
ECHO.
ECHO Check:
ECHO - Server \\D2TESTNAS is online
ECHO - Share \\D2TESTNAS\test exists
ECHO - Network connectivity to 172.16.3.0/24 network
ECHO - SMB1 protocol enabled on NAS
ECHO.
GOTO END
:X_DRIVE_FAILED
ECHO [ERROR] Failed to map X: drive
ECHO.
ECHO Check:
ECHO - Server \\D2TESTNAS is online
ECHO - Share \\D2TESTNAS\datasheets exists
ECHO.
GOTO END
:END
REM Return to AUTOEXEC.BAT
@ECHO OFF
REM STARTNET.BAT - Start Microsoft Network Client and map drives
REM Called from AUTOEXEC.BAT
REM
REM Version: 2.0
REM Last modified: 2026-01-19
REM ==================================================================
REM STEP 1: Start network client
REM ==================================================================
REM Load network protocols and drivers
REM This starts the Microsoft Network Client that was loaded via CONFIG.SYS
NET START
REM Check if NET START succeeded
IF ERRORLEVEL 1 GOTO NET_START_FAILED
ECHO (OK) Network client started
REM ==================================================================
REM STEP 2: Map network drives
REM ==================================================================
REM Map T: to test share (SMB1 compatible)
REM /YES = Don't prompt for confirmation
NET USE T: \\D2TESTNAS\test /YES
IF ERRORLEVEL 1 GOTO T_DRIVE_FAILED
ECHO (OK) T: mapped to \\D2TESTNAS\test
REM Map X: to datasheets share
NET USE X: \\D2TESTNAS\datasheets /YES
IF ERRORLEVEL 1 GOTO X_DRIVE_FAILED
ECHO (OK) X: mapped to \\D2TESTNAS\datasheets
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:NET_START_FAILED
ECHO ERROR: Network client failed to start
ECHO.
ECHO Check:
ECHO - Network cable is connected
ECHO - CONFIG.SYS has correct network drivers
ECHO - PROTOCOL.INI is configured correctly
ECHO.
GOTO END
:T_DRIVE_FAILED
ECHO ERROR: Failed to map T: drive
ECHO.
ECHO Check:
ECHO - Server \\D2TESTNAS is online
ECHO - Share \\D2TESTNAS\test exists
ECHO - Network connectivity to 172.16.3.0/24 network
ECHO - SMB1 protocol enabled on NAS
ECHO.
GOTO END
:X_DRIVE_FAILED
ECHO ERROR: Failed to map X: drive
ECHO.
ECHO Check:
ECHO - Server \\D2TESTNAS is online
ECHO - Share \\D2TESTNAS\datasheets exists
ECHO.
GOTO END
:END
REM Return to AUTOEXEC.BAT

View File

@@ -1,5 +1,5 @@
@ECHO OFF
REM Quick test to run updated NWTOC from network
REM Run this on TS-4R to get latest version
ECHO Running updated NWTOC from T:\COMMON\ProdSW...
CALL T:\COMMON\ProdSW\NWTOC.BAT
@ECHO OFF
REM Quick test to run updated NWTOC from network
REM Run this on TS-4R to get latest version
ECHO Running updated NWTOC from T:\COMMON\ProdSW...
CALL T:\COMMON\ProdSW\NWTOC.BAT

View File

@@ -18,7 +18,7 @@ IF NOT "%MACHINE%"=="" GOTO USE_ENV
:NO_MACHINE
ECHO.
ECHO [ERROR] Machine name not specified
ECHO ERROR: Machine name not specified
ECHO.
ECHO Usage: UPDATE machine-name
ECHO Example: UPDATE TS-4R
@@ -47,12 +47,12 @@ ECHO Checking network drive T:...
REM DOS 6.22: Direct file test is most reliable
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
ECHO [OK] T: drive accessible
ECHO (OK) T: drive accessible
GOTO START_BACKUP
:NO_T_DRIVE
ECHO.
ECHO [ERROR] T: drive not available
ECHO ERROR: T: drive not available
ECHO.
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
@@ -87,7 +87,7 @@ IF NOT EXIST T:\%MACHINE%\BACKUP\NUL MD T:\%MACHINE%\BACKUP
REM Check if backup directory was created successfully
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
ECHO [OK] Backup directory ready
ECHO (OK) Backup directory ready
ECHO.
REM ==================================================================
@@ -124,7 +124,7 @@ IF ERRORLEVEL 2 GOTO USER_ABORT
IF ERRORLEVEL 1 GOTO NO_FILES
ECHO.
ECHO [OK] Backup completed successfully
ECHO (OK) Backup completed successfully
ECHO.
ECHO Files backed up to: T:\%MACHINE%\BACKUP
GOTO END
@@ -135,7 +135,7 @@ REM ==================================================================
:BACKUP_DIR_ERROR
ECHO.
ECHO [ERROR] Could not create backup directory
ECHO ERROR: Could not create backup directory
ECHO Target: T:\%MACHINE%\BACKUP
ECHO.
ECHO Check:
@@ -148,7 +148,7 @@ GOTO END
:DISK_ERROR
ECHO.
ECHO [ERROR] Disk write error
ECHO ERROR: Disk write error
ECHO.
ECHO Possible causes:
ECHO - Target drive is full
@@ -160,7 +160,7 @@ GOTO END
:INIT_ERROR
ECHO.
ECHO [ERROR] Backup initialization failed
ECHO ERROR: Backup initialization failed
ECHO.
ECHO Possible causes:
ECHO - Insufficient memory
@@ -172,7 +172,7 @@ GOTO END
:USER_ABORT
ECHO.
ECHO [WARNING] Backup terminated by user (Ctrl+C)
ECHO WARNING: Backup terminated by user (Ctrl+C)
ECHO.
ECHO Backup may be incomplete!
ECHO.
@@ -181,7 +181,7 @@ GOTO END
:NO_FILES
ECHO.
ECHO [WARNING] No files found to copy
ECHO WARNING: No files found to copy
ECHO.
ECHO This may indicate:
ECHO - All files are already up to date (/D option)

View File

@@ -1,199 +1,199 @@
@ECHO OFF
REM UPDATE.BAT - Backup Dataforth test machine to network storage
REM Usage: UPDATE [machine-name]
REM Example: UPDATE TS-4R
REM
REM If machine-name not provided, uses MACHINE environment variable
REM from AUTOEXEC.BAT
REM
REM Version: 2.4 - DOS 6.22 compatible (removed brackets, fixed NUL checks)
REM Last modified: 2026-01-21
REM ==================================================================
REM STEP 1: Determine machine name
REM ==================================================================
IF NOT "%1"=="" GOTO USE_PARAM
IF NOT "%MACHINE%"=="" GOTO USE_ENV
:NO_MACHINE
ECHO.
ECHO ERROR: Machine name not specified
ECHO.
ECHO Usage: UPDATE machine-name
ECHO Example: UPDATE TS-4R
ECHO.
ECHO Or set MACHINE variable in AUTOEXEC.BAT:
ECHO SET MACHINE=TS-4R
ECHO.
PAUSE
GOTO END
:USE_PARAM
SET MACHINE=%1
GOTO CHECK_DRIVE
:USE_ENV
REM Machine name from environment variable
GOTO CHECK_DRIVE
REM ==================================================================
REM STEP 2: Verify T: drive is accessible
REM ==================================================================
:CHECK_DRIVE
ECHO Checking network drive T:...
REM DOS 6.22: Direct file test is most reliable
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
ECHO OK: T: drive accessible
GOTO START_BACKUP
:NO_T_DRIVE
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run STARTNET.BAT to map network drives:
ECHO C:\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM STEP 3: Create backup directory structure
REM ==================================================================
:START_BACKUP
ECHO.
ECHO ==============================================================
ECHO Backup: Machine %MACHINE%
ECHO ==============================================================
ECHO Source: C:\
ECHO Target: T:\%MACHINE%\BACKUP
ECHO.
REM Create machine directory if it doesn't exist
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
REM Create backup directory
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* MD T:\%MACHINE%\BACKUP
REM Check if backup directory was created successfully
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
ECHO OK: Backup directory ready
ECHO.
REM ==================================================================
REM STEP 4: Perform backup
REM ==================================================================
ECHO Starting backup...
ECHO This may take several minutes depending on file count.
ECHO.
REM XCOPY options for DOS 6.22:
REM /S = Copy subdirectories (except empty ones)
REM /E = Copy subdirectories (including empty ones)
REM /Y = Suppress prompts (auto-overwrite)
REM /H = Copy hidden and system files
REM /K = Copy attributes
REM /C = Continue on errors
REM
REM NOTE: /D flag removed - requires date parameter in DOS 6.22 (/D:mm-dd-yy)
REM NOTE: /Q flag not available in DOS 6.22 (added in later Windows versions)
XCOPY C:\*.* T:\%MACHINE%\BACKUP /S /E /Y /H /K /C
REM Check XCOPY error level
REM 0 = Files copied OK
REM 1 = No files found to copy
REM 2 = User terminated (Ctrl+C)
REM 4 = Initialization error (insufficient memory, invalid path, etc)
REM 5 = Disk write error
IF ERRORLEVEL 5 GOTO DISK_ERROR
IF ERRORLEVEL 4 GOTO INIT_ERROR
IF ERRORLEVEL 2 GOTO USER_ABORT
IF ERRORLEVEL 1 GOTO NO_FILES
ECHO.
ECHO OK: Backup completed successfully
ECHO.
ECHO Files backed up to: T:\%MACHINE%\BACKUP
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:BACKUP_DIR_ERROR
ECHO.
ECHO ERROR: Could not create backup directory
ECHO Target: T:\%MACHINE%\BACKUP
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Sufficient disk space on T:
ECHO - Network connection is stable
ECHO.
PAUSE
GOTO END
:DISK_ERROR
ECHO.
ECHO ERROR: Disk write error
ECHO.
ECHO Possible causes:
ECHO - Target drive is full
ECHO - Network connection lost
ECHO - Permission denied
ECHO.
PAUSE
GOTO END
:INIT_ERROR
ECHO.
ECHO ERROR: Backup initialization failed
ECHO.
ECHO Possible causes:
ECHO - Insufficient memory
ECHO - Invalid path
ECHO - Target drive not accessible
ECHO.
PAUSE
GOTO END
:USER_ABORT
ECHO.
ECHO WARNING: Backup terminated by user (Ctrl+C)
ECHO.
ECHO Backup may be incomplete!
ECHO.
PAUSE
GOTO END
:NO_FILES
ECHO.
ECHO WARNING: No files found to copy
ECHO.
ECHO This may indicate:
ECHO - All files are already up to date (/D option)
ECHO - Source drive is empty
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables (DOS has limited space)
SET OLDDRV=
@ECHO OFF
REM UPDATE.BAT - Backup Dataforth test machine to network storage
REM Usage: UPDATE [machine-name]
REM Example: UPDATE TS-4R
REM
REM If machine-name not provided, uses MACHINE environment variable
REM from AUTOEXEC.BAT
REM
REM Version: 2.4 - DOS 6.22 compatible (removed brackets, fixed NUL checks)
REM Last modified: 2026-01-21
REM ==================================================================
REM STEP 1: Determine machine name
REM ==================================================================
IF NOT "%1"=="" GOTO USE_PARAM
IF NOT "%MACHINE%"=="" GOTO USE_ENV
:NO_MACHINE
ECHO.
ECHO ERROR: Machine name not specified
ECHO.
ECHO Usage: UPDATE machine-name
ECHO Example: UPDATE TS-4R
ECHO.
ECHO Or set MACHINE variable in AUTOEXEC.BAT:
ECHO SET MACHINE=TS-4R
ECHO.
PAUSE
GOTO END
:USE_PARAM
SET MACHINE=%1
GOTO CHECK_DRIVE
:USE_ENV
REM Machine name from environment variable
GOTO CHECK_DRIVE
REM ==================================================================
REM STEP 2: Verify T: drive is accessible
REM ==================================================================
:CHECK_DRIVE
ECHO Checking network drive T:...
REM DOS 6.22: Direct file test is most reliable
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
ECHO OK: T: drive accessible
GOTO START_BACKUP
:NO_T_DRIVE
ECHO.
ECHO ERROR: T: drive not available
ECHO.
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
ECHO.
ECHO Run STARTNET.BAT to map network drives:
ECHO C:\STARTNET.BAT
ECHO.
ECHO Or map manually:
ECHO NET USE T: \\D2TESTNAS\test /YES
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM STEP 3: Create backup directory structure
REM ==================================================================
:START_BACKUP
ECHO.
ECHO ==============================================================
ECHO Backup: Machine %MACHINE%
ECHO ==============================================================
ECHO Source: C:\
ECHO Target: T:\%MACHINE%\BACKUP
ECHO.
REM Create machine directory if it doesn't exist
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
REM Create backup directory
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* MD T:\%MACHINE%\BACKUP
REM Check if backup directory was created successfully
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
ECHO OK: Backup directory ready
ECHO.
REM ==================================================================
REM STEP 4: Perform backup
REM ==================================================================
ECHO Starting backup...
ECHO This may take several minutes depending on file count.
ECHO.
REM XCOPY options for DOS 6.22:
REM /S = Copy subdirectories (except empty ones)
REM /E = Copy subdirectories (including empty ones)
REM /Y = Suppress prompts (auto-overwrite)
REM /H = Copy hidden and system files
REM /K = Copy attributes
REM /C = Continue on errors
REM
REM NOTE: /D flag removed - requires date parameter in DOS 6.22 (/D:mm-dd-yy)
REM NOTE: /Q flag not available in DOS 6.22 (added in later Windows versions)
XCOPY C:\*.* T:\%MACHINE%\BACKUP /S /E /Y /H /K /C
REM Check XCOPY error level
REM 0 = Files copied OK
REM 1 = No files found to copy
REM 2 = User terminated (Ctrl+C)
REM 4 = Initialization error (insufficient memory, invalid path, etc)
REM 5 = Disk write error
IF ERRORLEVEL 5 GOTO DISK_ERROR
IF ERRORLEVEL 4 GOTO INIT_ERROR
IF ERRORLEVEL 2 GOTO USER_ABORT
IF ERRORLEVEL 1 GOTO NO_FILES
ECHO.
ECHO OK: Backup completed successfully
ECHO.
ECHO Files backed up to: T:\%MACHINE%\BACKUP
GOTO END
REM ==================================================================
REM ERROR HANDLERS
REM ==================================================================
:BACKUP_DIR_ERROR
ECHO.
ECHO ERROR: Could not create backup directory
ECHO Target: T:\%MACHINE%\BACKUP
ECHO.
ECHO Check:
ECHO - T: drive is writable
ECHO - Sufficient disk space on T:
ECHO - Network connection is stable
ECHO.
PAUSE
GOTO END
:DISK_ERROR
ECHO.
ECHO ERROR: Disk write error
ECHO.
ECHO Possible causes:
ECHO - Target drive is full
ECHO - Network connection lost
ECHO - Permission denied
ECHO.
PAUSE
GOTO END
:INIT_ERROR
ECHO.
ECHO ERROR: Backup initialization failed
ECHO.
ECHO Possible causes:
ECHO - Insufficient memory
ECHO - Invalid path
ECHO - Target drive not accessible
ECHO.
PAUSE
GOTO END
:USER_ABORT
ECHO.
ECHO WARNING: Backup terminated by user (Ctrl+C)
ECHO.
ECHO Backup may be incomplete!
ECHO.
PAUSE
GOTO END
:NO_FILES
ECHO.
ECHO WARNING: No files found to copy
ECHO.
ECHO This may indicate:
ECHO - All files are already up to date (/D option)
ECHO - Source drive is empty
ECHO.
PAUSE
GOTO END
REM ==================================================================
REM CLEANUP AND EXIT
REM ==================================================================
:END
REM Clean up environment variables (DOS has limited space)
SET OLDDRV=

View File

@@ -0,0 +1,32 @@
#!/bin/bash
# deploy-to-nas.sh - Deploy batch files to NAS with validation
# Always validates and fixes before deploying
set -e
echo "======================================"
echo "DOS Batch File Deployment"
echo "======================================"
echo ""
# Step 1: Validate and fix
echo "Step 1: Validating and fixing batch files..."
./validate-dos.sh --fix
# Step 2: Re-validate (should have no trailing space issues)
echo ""
echo "Step 2: Re-validating..."
./validate-dos.sh 2>&1 | grep -v "WARNING" | tail -5
# Step 3: Deploy to NAS
echo ""
echo "Step 3: Deploying to NAS..."
scp *.BAT root@192.168.0.9:/data/test/COMMON/ProdSW/
echo ""
echo "======================================"
echo "Deployment complete!"
echo "======================================"
echo ""
echo "Files deployed to T:\\COMMON\\ProdSW"
echo "Run NWTOC on DOS machine to download updates"

View File

@@ -0,0 +1,106 @@
#!/bin/bash
# validate-dos.sh - Validate batch files for DOS 6.22 compatibility
# Run before deploying to DOS machines
ERRORS=0
echo "DOS 6.22 Batch File Validator"
echo "=============================="
echo ""
for file in *.BAT; do
[ -f "$file" ] || continue
echo "Checking: $file"
# Rule 1: No CALL :label
if grep -qE "CALL\s+:" "$file" 2>/dev/null; then
echo " ERROR: CALL :label subroutine found (Rule 1)"
ERRORS=$((ERRORS+1))
fi
# Rule 2: No %DATE% or %TIME%
if grep -qE "%DATE%|%TIME%" "$file" 2>/dev/null; then
echo " ERROR: %DATE% or %TIME% found (Rule 2)"
ERRORS=$((ERRORS+1))
fi
# Rule 3: No square brackets in ECHO
if grep -qE "ECHO.*\[" "$file" 2>/dev/null; then
# Exclude REM lines
if grep -vE "^REM" "$file" | grep -qE "ECHO.*\[" 2>/dev/null; then
echo " ERROR: Square brackets in ECHO (Rule 3)"
ERRORS=$((ERRORS+1))
fi
fi
# Rule 6: No 2>NUL
if grep -qE "2>NUL|2> *NUL" "$file" 2>/dev/null; then
echo " ERROR: 2>NUL stderr redirect found (Rule 6)"
ERRORS=$((ERRORS+1))
fi
# Rule 8: No :EOF
if grep -qE "GOTO\s+:?EOF" "$file" 2>/dev/null; then
echo " ERROR: :EOF label reference found (Rule 8)"
ERRORS=$((ERRORS+1))
fi
# Rule 15: No SETLOCAL/ENDLOCAL
if grep -qiE "SETLOCAL|ENDLOCAL" "$file" 2>/dev/null; then
echo " ERROR: SETLOCAL/ENDLOCAL found (Rule 15)"
ERRORS=$((ERRORS+1))
fi
# Rule 19: Check for LF-only line endings (no CR)
if file "$file" | grep -qv "CRLF"; then
if file "$file" | grep -q "ASCII"; then
echo " WARNING: May have Unix line endings (Rule 19)"
fi
fi
# Rule 20: Trailing spaces in SET statements
if grep -qE "^SET [A-Za-z_]+=[^ ]* +$" "$file" 2>/dev/null; then
echo " ERROR: Trailing space in SET statement (Rule 20)"
grep -nE "^SET [A-Za-z_]+=[^ ]* +$" "$file" | sed 's/^/ Line /'
ERRORS=$((ERRORS+1))
fi
# Rule 20: Any trailing whitespace
if grep -qE " +$" "$file" 2>/dev/null; then
TRAILING=$(grep -cE " +$" "$file")
echo " WARNING: $TRAILING lines have trailing whitespace (Rule 20)"
fi
# Check filename is 8.3
BASENAME=$(basename "$file" .BAT)
if [ ${#BASENAME} -gt 8 ]; then
echo " ERROR: Filename exceeds 8 characters (Rule 14)"
ERRORS=$((ERRORS+1))
fi
done
echo ""
echo "=============================="
if [ $ERRORS -eq 0 ]; then
echo "All checks passed!"
else
echo "Found $ERRORS error(s)"
fi
echo ""
# Auto-fix option
if [ "$1" = "--fix" ]; then
echo "Applying fixes..."
for file in *.BAT; do
[ -f "$file" ] || continue
# Strip trailing whitespace
sed -i '' 's/[[:space:]]*$//' "$file"
# Convert to DOS line endings
perl -pi -e 's/\r?\n/\r\n/g' "$file"
echo " Fixed: $file"
done
echo "Done. Re-run without --fix to verify."
fi
exit $ERRORS