VOGONS

Common searches


First post, by enemyenemyenemy

User metadata
Rank Newbie
Rank
Newbie

i`m learning assembler and i have to check wrong input, but i have no idea how to do it properly
```
@echo off
cls

:: Variables to store the current background and text colors
set BG_COLOR=40
set TXT_COLOR=37

:RESTART
cls
echo [2;3f Press B - blue background
echo [3;3f Press D - birch background
echo [4;3f Press R - red background
echo [5;3f Press W - white text
echo [6;3f Press G - green text
echo [7;3f Press P - pink text
echo [9;3f Press E - exit

choice /C:BDRWGPEJ /N [11;3f Choose command:

IF ERRORLEVEL 8 GOTO WRONG_INPUT
IF ERRORLEVEL 7 GOTO EXIT
IF ERRORLEVEL 6 GOTO PINK_TEXT
IF ERRORLEVEL 5 GOTO GREEN_TEXT
IF ERRORLEVEL 4 GOTO WHITE_TEXT
IF ERRORLEVEL 3 GOTO RED_BG
IF ERRORLEVEL 2 GOTO BIRCH_BG
IF ERRORLEVEL 1 GOTO BLUE_BG

:: === Changing the background (text color remains unchanged) ===
:BLUE_BG
set BG_COLOR=44
GOTO APPLY_COLOR

:BIRCH_BG
set BG_COLOR=46
GOTO APPLY_COLOR

:RED_BG
set BG_COLOR=41
GOTO APPLY_COLOR

:: === Changing the text color (background remains unchanged) ===
:WHITE_TEXT
set TXT_COLOR=37
GOTO APPLY_COLOR

:GREEN_TEXT
set TXT_COLOR=32
GOTO APPLY_COLOR

:PINK_TEXT
set TXT_COLOR=35
GOTO APPLY_COLOR

:: === Applying the current text and background color ===
:APPLY_COLOR
echo [%TXT_COLOR%;%BG_COLOR%m
GOTO RECTANGLE

:RECTANGLE
echo [14;10f ННННННННННННННННННННННННННННННННННННННННННН
echo [15;10f є є
echo [16;10f є ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ є
echo [17;10f є ЫЫЫЫЫЫЫЫЫЫЫHEXЫЫЫЫЫЫЫЫЫЫЫ є
echo [18;10f є ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ є
echo [19;10f є ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ є
echo [20;10f є є
echo [21;10f ННННННННННННННННННННННННННННННННННННННННННН
echo [37m
echo [40m

PAUSE
GOTO RESTART

:WRONG_INPUT
cls
echo [14;10f Error, try: B, D, R, W, G, P, E
PAUSE
GOTO RESTART

:EXIT
cls
exit
```