Prompt
This commit is contained in:
parent
2b301c62ec
commit
137effd1c1
33
edlin.asm
33
edlin.asm
|
@ -15,6 +15,7 @@ psp_fcb_1 equ 0x005c
|
||||||
; Syscall defines
|
; Syscall defines
|
||||||
sys_print_char equ 2
|
sys_print_char equ 2
|
||||||
sys_print_string equ 9
|
sys_print_string equ 9
|
||||||
|
sys_read_line equ 0xa
|
||||||
sys_open_file equ 0xf
|
sys_open_file equ 0xf
|
||||||
sys_delete_file equ 0x13
|
sys_delete_file equ 0x13
|
||||||
sys_create_file equ 0x16
|
sys_create_file equ 0x16
|
||||||
|
@ -204,7 +205,7 @@ __0240:
|
||||||
|
|
||||||
mov byte [di], 0x1a ; ^Z
|
mov byte [di], 0x1a ; ^Z
|
||||||
mov [__0a9a], di
|
mov [__0a9a], di
|
||||||
mov byte [__0a9c], 0x80 ; magic
|
mov byte [input_buffer.size], input_buffer.bufend - input_buffer.bufstart
|
||||||
mov byte [__0c1e], 0xff ; magic
|
mov byte [__0c1e], 0xff ; magic
|
||||||
mov byte [__0d48], 0x0a ; magic
|
mov byte [__0d48], 0x0a ; magic
|
||||||
mov word [__0a92], disk_transfer_area
|
mov word [__0a92], disk_transfer_area
|
||||||
|
@ -216,15 +217,19 @@ __0240:
|
||||||
call __0370
|
call __0370
|
||||||
|
|
||||||
__0273:
|
__0273:
|
||||||
db 0xBC, 0x48, 0x0D ; 0273 mov sp,0xd48
|
mov sp, stack.end
|
||||||
db 0xB8, 0x23, 0x25 ; 0276 mov ax,0x2523
|
mov ax, sys_set_interrupt * 0x100 + int_ctrl_break
|
||||||
db 0xBA, 0x2D, 0x09 ; 0279 mov dx,0x92d
|
mov dx, ctrl_break_handler
|
||||||
db 0xCD, 0x21 ; 027C int 0x21
|
int 0x21
|
||||||
db 0xB0, 0x2A ; 027E mov al,0x2a
|
|
||||||
db 0xE8, 0xA1, 0x06 ; 0280 call 0x924
|
print_prompt:
|
||||||
db 0xBA, 0x9C, 0x0A ; 0283 mov dx,0xa9c
|
mov al, '*'
|
||||||
db 0xB4, 0x0A ; 0286 mov ah,0xa
|
call print_char
|
||||||
db 0xCD, 0x21 ; 0288 int 0x21
|
|
||||||
|
mov dx, input_buffer
|
||||||
|
mov ah, sys_read_line
|
||||||
|
int 0x21
|
||||||
|
|
||||||
db 0xB0, 0x0A ; 028A mov al,0xa
|
db 0xB0, 0x0A ; 028A mov al,0xa
|
||||||
db 0xE8, 0x95, 0x06 ; 028C call 0x924
|
db 0xE8, 0x95, 0x06 ; 028C call 0x924
|
||||||
db 0xC7, 0x06, 0x82, 0x0A, 0x00, 0x00 ; 028F mov word [0xa82],0x0
|
db 0xC7, 0x06, 0x82, 0x0A, 0x00, 0x00 ; 028F mov word [0xa82],0x0
|
||||||
|
@ -1038,9 +1043,13 @@ __0a98: resw 1
|
||||||
|
|
||||||
__0a9a: resw 1
|
__0a9a: resw 1
|
||||||
|
|
||||||
__0a9c: resb 1
|
input_buffer:
|
||||||
|
.size: resb 1 ; 0a9c
|
||||||
|
.fill: resb 1; 0a9d
|
||||||
|
.bufstart: resb 128 ; 0a9e
|
||||||
|
.bufend: ; 0b1e
|
||||||
|
|
||||||
resb 385
|
resb 256
|
||||||
|
|
||||||
__0c1e: resb 1
|
__0c1e: resb 1
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue