Compare commits
2 Commits
59def426da
...
fa1b26ef10
| Author | SHA1 | Date | |
|---|---|---|---|
| fa1b26ef10 | |||
| 2120df695e |
@@ -54,12 +54,14 @@ uint8_t getc() {
|
|||||||
|
|
||||||
void putc(uint8_t c) {
|
void putc(uint8_t c) {
|
||||||
asm volatile (
|
asm volatile (
|
||||||
|
"push %%bp \n\t"
|
||||||
"movb %0, %%al \n\t"
|
"movb %0, %%al \n\t"
|
||||||
"movb $0x0e, %%ah \n\t"
|
"movb $0x0e, %%ah \n\t"
|
||||||
"movb $0, %%bh \n\t"
|
"movb $0, %%bh \n\t"
|
||||||
"int $0x10 \n\t"
|
"int $0x10 \n\t"
|
||||||
|
"pop %%bp \n\t"
|
||||||
:: "r" (c)
|
:: "r" (c)
|
||||||
: "ax", "bh", "cc", "bp"
|
: "ax", "bh", "cc"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,11 +14,11 @@ mov es, dx ; es = 0
|
|||||||
mov bx, 0xf000 ; store the read sector there
|
mov bx, 0xf000 ; store the read sector there
|
||||||
mov ax, 0x0201 ; read, 1 sector
|
mov ax, 0x0201 ; read, 1 sector
|
||||||
|
|
||||||
; params: head, cylinder, sector, out
|
; params: cylinder, head, sector, out
|
||||||
mov si, [bp+14]
|
mov si, [bp+14]
|
||||||
mov dh, [si]
|
|
||||||
mov si, [bp+12]
|
|
||||||
mov ch, [si]
|
mov ch, [si]
|
||||||
|
mov si, [bp+12]
|
||||||
|
mov dh, [si]
|
||||||
mov si, [bp+10]
|
mov si, [bp+10]
|
||||||
mov cl, [si]
|
mov cl, [si]
|
||||||
|
|
||||||
|
|||||||
@@ -14,11 +14,11 @@ mov es, dx ; es = 0
|
|||||||
mov bx, 0xf000 ; store the read sector there
|
mov bx, 0xf000 ; store the read sector there
|
||||||
mov ax, 0x0301 ; write, 1 sector
|
mov ax, 0x0301 ; write, 1 sector
|
||||||
|
|
||||||
; params: head, cylinder, sector, out
|
; params: cylinder, head, sector, out
|
||||||
mov si, [bp+14]
|
mov si, [bp+14]
|
||||||
mov dh, [si]
|
|
||||||
mov si, [bp+12]
|
|
||||||
mov ch, [si]
|
mov ch, [si]
|
||||||
|
mov si, [bp+12]
|
||||||
|
mov dh, [si]
|
||||||
mov si, [bp+10]
|
mov si, [bp+10]
|
||||||
mov cl, [si]
|
mov cl, [si]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user