ECHO OFF
ECHO CVT 2.0 Public Domain by Unique Software
IF "%1==" GOTO Help
IF "%2==" GOTO Help
IF "%3==" GOTO Help

md _!_
cd _!_

:extract_files
FOR %%d IN (ZOO zoo) DO IF "%2=="%%d ZOO -EXTRACT ..\%1.ZOO
FOR %%d IN (DWC dwc) DO IF "%2=="%%d DWC E ..\%1.DWC
FOR %%d IN (PAK pak) DO IF "%2=="%%d PAK E ..\%1.PAK
FOR %%d IN (PKARC pkarc PKXARC pkxarc) DO IF "%2=="%%d PKXARC ..\%1.ARC
FOR %%d IN (PKPAK pkpak PKUNPAK pkunpak) DO IF "%2=="%%d PKUNPAK ..\%1.ARC
FOR %%d IN (ARC arc) DO IF "%2=="%%d ARC -E ..\%1.ARC
FOR %%d IN (ARCE arce ARCA arca) DO IF "%2=="%%d ARCE ..\%1.ARC
FOR %%d IN (PKZIP PKUNZIP ZIP pkzip pkunzip zip) DO IF "%2=="%%d PKUNZIP ..\%1.ZIP

IF ERRORLEVEL==1 cd ..
IF ERRORLEVEL==1 rd _!_
IF ERRORLEVEL==1 GOTO Help

IF NOT "%4==" GOTO Nodel
:delete file section
FOR %%d IN (ZOO zoo) DO IF "%2=="%%d DEL ..\%1.ZOO
FOR %%d IN (DWC dwc) DO IF "%2=="%%d DEL ..\%1.DWC
FOR %%d IN (PAK pak) DO IF "%2=="%%d DEL ..\%1.PAK
FOR %%d IN (PKZIP PKUNZIP ZIP pkzip pkunzip zip) DO IF "%2=="%%d DEL ..\%1.ZIP
FOR %%d IN (PKARC pkarc PKXARC pkxarc ARC arce) DO IF "%2=="%%d DEL ..\%1.ARC
FOR %%d IN (PKPAK pkpak PKUNPAK pkunpak ARCE arc) DO IF "%2=="%%d DEL ..\%1.ARC
FOR %%d IN (ARCA arca) DO IF "%2=="%%d DEL ..\%1.ARC

:Nodel
:rearchive file section
FOR %%d IN (ZOO zoo) DO IF "%3=="%%d ZOO -MOVE %1.ZOO *.*
FOR %%d IN (DWC dwc) DO IF "%3=="%%d DWC MZ %1.DWC *.*
FOR %%d IN (PAK pak) DO IF "%3=="%%d PAK M %1.PAK *.*
FOR %%d IN (PKARC pkarc PKXARC pkxarc) DO IF "%3=="%%d PKARC -M %1.ARC *.*
FOR %%d IN (PKPAK pkpak PKUNPAK pkunpak) DO IF "%3=="%%d PKPAK -M %1.ARC *.*
FOR %%d IN (ARC arc) DO IF "%3=="%%d ARC -M %1.ARC *.*
FOR %%d IN (ARCE arce ARCA arca) DO IF "%3=="%%d ARCA -M %1.ARC *.*
FOR %%d IN (PKZIP PKUNZIP ZIP pkzip pkunzip zip) DO IF "%3=="%%d PKZIP -M %1.ZIP *.*

:wrap_up
copy %1.* ..
del %1.*
cd ..
rd _!_
ECHO Conversion complete...
if not "%4==" ECHO     (old file retained)
GOTO Quit

:Help
ECHO USAGE 
ECHO CVT  filespec(no extension)  from_format  to_format  ?(any char=keep old)
ECHO from / to_formats :
ECHO    ARC(E/A), PK(X)ARC, DWC, PK(UN)PAK, PK(UN)ZIP, ZOO, PAK
ECHO examples:
ECHO CVT FILEDATA ARC PAK 
ECHO    (convert FILEDATA.ARC to FILEDATA.PAK)
ECHO CVT NEWDATA ZIP ZOO X
ECHO    (convert NEWDATA.ZIP to NEWDATA.ZOO - don't delete NEWDATA.ZIP)
ECHO CVT LIB03 DWC ARC X
ECHO    (convert LIB03.DWC to LIB03.ARC - don't delete LIB03.DWC)

:Quit

