Compare commits

..

1 Commits

1 changed files with 14 additions and 12 deletions

View File

@ -86,13 +86,12 @@ int 0x21
cmp byte [input], 0x0
jz shell
;Set SI at the command
;Check for a current drive change command
;Set SI at input
mov si, input
;Ignore leading spaces
call ignoreleading
;Check for a current drive change command
;Check
cmp byte [si + 0x1], ":"
jne extract
cmp byte [si + 0x2], 0x0
@ -102,8 +101,11 @@ je changecurdrive
;Extract the specification of the program file
extract:
;Set DI at program
;Set SI at input and DI at program
mov si, input
mov di, program
;Ignore leading spaces
call ignoreleading
;Initialise program with spaces
mov cx, 0xe
mov al, 0x20
@ -153,13 +155,6 @@ call ignoreleading
;Execute the program
jmp 0x3000
;Print a command error message and return to the shell
cmderror:
mov si, cmderrormsg
mov ah, 0x2
int 0x21
jmp shell
;Change the current drive
;Get the BIOS equipment list
changecurdrive:
@ -194,10 +189,17 @@ mov [curdrive], dl
call setcurdriveletter
jmp shell
;Print a command error message and return to the shell
cmderror:
mov si, cmderrormsg
mov ah, 0x2
int 0x21
jmp shell
;Welcome message
welcomemsg db 0xd, 0xa, "Welcome to EttinOS!", 0xd, 0xa, 0x0
;Drive stuff
;Drive
curdrive db 0x0
driveletters db "AaBbCcDd"