FASM でゼロからブートローダーを作成し始めました。基本的な入力をしただけです。しかし、私は何かをする方法がわかりません。
これは私のコードです:
start:
mov ax, 07C0h
add ax, 288
mov ss, ax
mov sp, 4096
mov ax, 07C0h
mov ds, ax
mov si, text_string
call print_string
jmp read ; infinite loop of reading!
text_string db '<HammerOS> : Booted up!', 13, 10, 0
read:
mov ah,0h ;get character from keyboard
int 16h ;and store it in AL
mov ah,0eh ;Display a character in AL
int 10h ;aka, echo it
jmp read
have_read_txt:
mov si, AL
call print_string
print_string:
mov ah, 0Eh
.repeat:
lodsb
cmp al, 0
je .done
int 10h
jmp .repeat
.done:
ret
times 510-($-$$) db 0
dw 0xAA55
コンソールで入力を受け付けますが、Enterキーを押すと、入力内容を確認したいので、それに基づいて何かをしたいです。
また、カーソルを次の行に移動させたい。Enter キーを押すと、テキストが同じ行に上書きされます。