Buenas!
1) Debes utilizar las etiquetas para insertar código.
2) ¿Por qué motivo posteas un Batch-Script en el subforo de C++?, sabes perfectamente que este no es el lugar permitido, ya que te has paseado por la sección de Scripting.
Lee las normas del foro...
Saludos!
EDITO:No he examinado a fondo el código, ya que con la cita y sin etiquetas geshi... dificulta la lectura.
1) Haces demasiada repetición de código, los strings que repites deberías almacenarlos en una variable, y utilizarla.
2) De hecho, las 20 o 30 repeticiones que haces de estas instrucciones:
ECHO PRESIONE ENTER PARA REGRESAR AL MENU
pause >nul
goto :menu
Las puedes simplificar poniéndolas en un único método, y llamarlo en una sola instrucción.
2) El backslash en Windows se escribe "\", no "/", está considerado una mala práctica de programación.
3) Las condicionales de "If %choice%==" puedes simplificarlo en una sola instrucción dinámica, utilizando el comando CHOICE.exe (Goto :%ErrorLevel%), aunque para ello primero deberás modificar el nombre de las etiquetas de los métodos, por índices númericos (:1, :2, etc...).
4) En lugar de escribir rutas absolutas que apunten hacia archivos del sistema, lo correcto es utilizar las variables de entorno (%SystemRoot%\System32\...)
EDITO:5) La instrucción que usas para simular el efecto Matrix, usando una linea de miles de caracteres, es simplemente lo más horrible que he visto, pero no por la técnica en sí, sino por que dificulta la lectura del código tener que desplazarse horizontalmente para leer la linea... no es nada productivo, horrible.
Al menos podrias haber hecho una especie de indentación utilizando varias repeticiones del comando Echo, te sugiero que edites el código que has posteado arriba para mejorar ese detalle por que de verdad es muy agobiante ver instrucciones tan largas en un código...
Busca el modo de reemplazar esa instrucción apra hacer lo mismo en menos lineas, como por ejemplo así:
:matrix
color 2
ECHO PRESIONE ENTER PARA REGRESAR AL MENU