¿Como que si presionas la tecla "H" el errorlevel que te manda es 104?
El errorlevel, en el comando Choice, va del 1 al X aumentando de valor progresívamente,
por ejemplo en este comando, si elijes la letra "H", el errorlevel será 8, no 104 (que es el número decimal de la letra)
Choice /C ABCDEFGH
Lee la ayuda del comando:
NOTA:
La variable de entorno ERRORLEVEL está establecida como el índice de la
clave que se seleccionó en el conjunto de opciones. La primera opción
devuelve un valor de 1, la segunda un valor de 2 y así sucesivamente.
Si el usuario presiona una clave que no sea una opción válida, la
herramienta emite un sonido de advertencia. Si la herramienta detecta una
condición de error, devuelve un valor ERRORLEVEL de 255. Si el usuario
presiona CTRL+PAUSA o CTRL+C, la herramienta devuelve un valor
ERRORLEVEL 0. Cuando el usuario usa parámetros ERRORLEVEL en un
programa por lotes, los enumera en orden decreciente.
De todas formas si quieres pasar el %ERRORLEVEL% decimal a ASCII, aquí tienes:
Saludos.