Por que estou recebendo "Echo está ligado" ao tentar imprimir uma variável em lote

Eu tring para extrair um simples arquivo de lote de scripts:

echo %1
set var = %1
echo %var%

Quando eu estou executando no XP, ele está me dando saída esperada, mas quando eu estou executando no Vista ou no Windows 7, estou recebendo "Echo está ligado" ao tentar imprimir (eco) valor.

Abaixo está a saída do programa:

G:\2012>abc.bat 1

G:\2012>echo 1
1

G:\2012>set var = 1

G:\2012>echo
ECHO is on.

G:\2012>