Witajcie, mam mały problem.
Uczę się programowania diód na klawiaturze w asm (nie pytać po co) i napotkałam pewien problem. Otóż to nie mogę otworzyć pliku /dev/console, więc zastąpiłam deskryptor wartością 1. Jednakże program nie działa. Napisałam taki krótki kod http://pastebin.com/wuPYy2jc który ma za zadanie wyświetlać wartość stanu diód. Nie działa. I właśnie stąd przypuszczenia, że coś się psuje zaraz po "otwarciu" pliku. Z konwersją nie ma problemów (wyświetlałoby się cokolwiek, bajty też). Ogólnie program przeszedł przez nasm i linker. Co mogę robić źle?
0
0
Wszystko jest dobrze, ale
- Dodaj do wartosci, którą odczytałeś '0' (nie zawsze widać znaki poniżej wartosci 32)
...
mov al,[diody]
add al,'0'
mov [diody],al
mov eax, 4
mov ebx, 1
mov ecx, diody
mov edx, 1
int 80h
...
- W zależności gdzie uruchamiasz ten program.
W konsoli typu gnome-terminal, wybacz ale ten sposób nie zadziała, masz tam urządzenie na przykład pts (sprawdz ps'em).
Potrzebujesz konsoli tty. Czyli możesz przełączyć się do trybu tekstowego i wtedy testować ([Ctrl+Alt+F1..6], w zależności od systemu,konfiguracji itd ).