Add file descriptor constants
This commit is contained in:
@ -1,6 +1,9 @@
|
||||
extern EOS
|
||||
extern NL
|
||||
extern NR_write
|
||||
extern FD_stdin
|
||||
extern FD_stdout
|
||||
extern FS_stderr
|
||||
extern strlen
|
||||
extern itoa
|
||||
|
||||
@ -64,7 +67,7 @@ print:
|
||||
mov rdx, rax
|
||||
mov rax, NR_write
|
||||
mov rsi, rdi
|
||||
mov rdi, 1
|
||||
mov rdi, FD_stdout
|
||||
syscall
|
||||
ret
|
||||
;----- puts (char* string) -----;
|
||||
@ -74,7 +77,7 @@ puts:
|
||||
call print
|
||||
mov rdi, r10
|
||||
mov rax, NR_write
|
||||
mov rdi, 1
|
||||
mov rdi, FD_stdout
|
||||
mov rsi, bNL
|
||||
mov rdx, 1
|
||||
syscall
|
||||
@ -244,7 +247,7 @@ printf:
|
||||
push r8
|
||||
push r9
|
||||
mov rax, NR_write
|
||||
mov rdi, 1
|
||||
mov rdi, FD_stdout
|
||||
lea rsi, [rel printfBuff]
|
||||
mov rdx, r14
|
||||
mov byte [r11], 0x0
|
||||
@ -267,7 +270,7 @@ printf:
|
||||
.finish:
|
||||
mov byte [r11], 0x0
|
||||
mov rax, NR_write
|
||||
mov rdi, 1
|
||||
mov rdi, FD_stdout
|
||||
lea rsi, [rel printfBuff]
|
||||
mov rdx, r14
|
||||
add r13, r14
|
||||
|
@ -4,6 +4,10 @@ section .rodata
|
||||
global NR_open
|
||||
global NR_close
|
||||
global NR_exit
|
||||
|
||||
global FD_stdin
|
||||
global FD_stdout
|
||||
global FD_stderr
|
||||
|
||||
global EOS
|
||||
global NL
|
||||
@ -15,6 +19,11 @@ section .rodata
|
||||
NR_close equ 3
|
||||
NR_exit equ 60
|
||||
|
||||
;file descriptors
|
||||
FD_stdin equ 0
|
||||
FD_stdout equ 1
|
||||
FD_stderr equ 2
|
||||
|
||||
;ascii
|
||||
EOS equ 0x0
|
||||
NL equ 0xA
|
||||
|
@ -1,3 +1,4 @@
|
||||
extern FD_stderr
|
||||
extern NR_read
|
||||
extern NR_write
|
||||
extern NR_open
|
||||
@ -80,8 +81,8 @@ fclose:
|
||||
; writes a string to opened file
|
||||
; return value: amount of written characters on success, below 0 otherwise (neg errno)
|
||||
fwrite:
|
||||
cmp rdi, 3
|
||||
jl .ebadf
|
||||
cmp rdi, FD_stderr
|
||||
jle .ebadf
|
||||
|
||||
mov r9, rdi
|
||||
mov rdi, rsi
|
||||
|
Reference in New Issue
Block a user