因此,我开始学习汇编,并正在用FASM编写一个简单的操作系统。我有一个灰色的顶部栏和一个光标的蓝色屏幕,但不能让文本出现在一行上。在第一行,我希望它说“文件系统”,然后在其他行我想要其他的东西。我把这里的代码:如何将文本添加到用汇编编写的操作系统
mov ax, 9ch
mov ss, ax
mov sp, 4096d
mov ax, 7c0h
mov ds, ax
;----------------
;this sets blue to background
mov ah, 09h
mov cx, 1000h
mov al, 20h
mov bl, 17h
int 10h
;end of blue
;start of gray top
mov ah, 09h
mov cx, 80d
mov al, 20h
mov bl, 87h
int 10h
;end of gray
;top bar
;end of top bar
;define mouse
mov ah, 01h
mov cx, 07h
int 10h
mov bl, 5h
mov cl, 5h
_mouser:
mov ah, 02h
mov dl, bl
mov dh, cl
int 10h
mov ah, 00h
int 16h
cmp al, 77h
je _up
cmp al, 73h
je _down
cmp al, 61h
je _left
cmp al, 64h
je _right
cmp al, 20h
je _click
jmp _mouser
_click:
mov ah, 0eh
mov al, 0b2h
int 10h
jmp _mouser
_up:
cmp cl, 0h
je _mouser
sub cl, 1h
jmp _mouser
_down:
cmp cl, 24d
je _mouser
add cl, 1h
jmp _mouser
_left:
cmp bl, 0h
je _mouser
sub bl, 1h
jmp _mouser
_right:
cmp bl, 79d
je _mouser
add bl, 1h
jmp _mouser
;----------------
times 510-($-$$) db 0
dw 0xAA55
我曾尝试
mov ah, eoh
mov al, 'F'
int 10h
问题是,只能使单个字符的字符串。
'mov啊,0eh; mov al,'F'; int 10h'应该更好。 – Jester
是的,我知道这使得一个字符,但我需要一个字符串 –
去花一些时间阅读维基在http://osdev.org –