DOS 6.22 Coding Agent (.claude/agents/dos-coding.md): - 18 documented compatibility rules - Validation checklist for all DOS batch files - Known working constructs reference - Error message troubleshooting guide Batch file fixes for DOS 6.22 compatibility: - CTONW.BAT v3.2: Removed %DATE%/%TIME%, square brackets - ATESYNC.BAT v1.1: Removed square brackets, ERRORLEVEL checks - CHECKUPD.BAT v1.4: Removed CALL :label subroutines, square brackets - UPDATE.BAT v2.4: Removed square brackets, fixed NUL directory checks - DOSTEST.BAT v1.2: Removed 2>NUL, square brackets, NUL checks Key DOS 6.22 incompatibilities fixed: - CALL :label (Windows NT+ only) - %DATE% and %TIME% variables (don't exist) - Square brackets in ECHO (cause errors) - 2>NUL stderr redirect (not supported) - IF NOT EXIST path\NUL (unreliable) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
83 lines
2.9 KiB
Batchfile
83 lines
2.9 KiB
Batchfile
@ECHO OFF
|
|
REM Computer to Network - Upload local test results to network
|
|
REM Version: 3.2 - DOS 6.22 compatible
|
|
REM Last modified: 2026-01-21
|
|
|
|
REM Verify MACHINE variable is set
|
|
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
|
|
|
REM Verify T: drive
|
|
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
|
|
|
REM Verify machine folder exists
|
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
|
|
|
|
ECHO ........................................
|
|
ECHO Archiving datalog files to network...
|
|
ECHO CTONW.BAT v3.2 > C:\ATE\CTONW.LOG
|
|
ECHO Machine: %MACHINE% >> C:\ATE\CTONW.LOG
|
|
ECHO Copying from C:\ATE\ to T:\%MACHINE%\LOGS\ >> C:\ATE\CTONW.LOG
|
|
|
|
REM Check for ATE directory
|
|
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
|
|
|
|
REM Ensure target LOGS directories exist
|
|
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
|
|
|
|
IF EXIST C:\ATE\5BLOG\*.DAT COPY C:\ATE\5BLOG\*.DAT T:\%MACHINE%\LOGS\5BLOG
|
|
IF EXIST C:\ATE\7BLOG\*.DAT COPY C:\ATE\7BLOG\*.DAT T:\%MACHINE%\LOGS\7BLOG
|
|
IF EXIST C:\ATE\7BLOG\*.SHT COPY C:\ATE\7BLOG\*.SHT T:\%MACHINE%\LOGS\7BLOG
|
|
IF EXIST C:\ATE\8BLOG\*.DAT COPY C:\ATE\8BLOG\*.DAT T:\%MACHINE%\LOGS\8BLOG
|
|
IF EXIST C:\ATE\DSCLOG\*.DAT COPY C:\ATE\DSCLOG\*.DAT T:\%MACHINE%\LOGS\DSCLOG
|
|
IF EXIST C:\ATE\HVLOG\*.DAT COPY C:\ATE\HVLOG\*.DAT T:\%MACHINE%\LOGS\HVLOG
|
|
IF EXIST C:\ATE\PWRLOG\*.DAT COPY C:\ATE\PWRLOG\*.DAT T:\%MACHINE%\LOGS\PWRLOG
|
|
IF EXIST C:\ATE\SCTLOG\*.DAT COPY C:\ATE\SCTLOG\*.DAT T:\%MACHINE%\LOGS\SCTLOG
|
|
IF EXIST C:\ATE\VASLOG\*.DAT COPY C:\ATE\VASLOG\*.DAT T:\%MACHINE%\LOGS\VASLOG
|
|
|
|
ECHO Archiving work-order report files to network...
|
|
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
|
|
IF EXIST C:\Reports\*.TXT COPY C:\Reports\*.TXT T:\%MACHINE%\Reports
|
|
|
|
ECHO Archiving log file to network...
|
|
IF EXIST C:\ATE\*.LOG COPY C:\ATE\*.LOG T:\%MACHINE%
|
|
|
|
ECHO Network archiving of datalog files done!
|
|
ECHO ........................................
|
|
GOTO END
|
|
|
|
:SKIP_ATE
|
|
ECHO No C:\ATE directory - skipping
|
|
GOTO END
|
|
|
|
:NO_MACHINE
|
|
ECHO ........................................
|
|
ECHO ERROR: MACHINE variable not set
|
|
ECHO Run DEPLOY.BAT or ATESYNC first
|
|
ECHO ........................................
|
|
PAUSE
|
|
GOTO END
|
|
|
|
:NO_DRIVE
|
|
ECHO ERROR: T: drive not available
|
|
ECHO Run C:\STARTNET.BAT first
|
|
PAUSE
|
|
GOTO END
|
|
|
|
:NO_FOLDER
|
|
ECHO ........................................
|
|
ECHO ERROR: Machine folder T:\%MACHINE% not found
|
|
ECHO Run ATESYNC to create it first
|
|
ECHO ........................................
|
|
PAUSE
|
|
GOTO END
|
|
|
|
:END
|