Adds basic printf() (currently only support '%%')
This commit is contained in:
@@ -5,6 +5,7 @@ extern exit
|
||||
; console.asm
|
||||
extern print
|
||||
extern puts
|
||||
extern printf
|
||||
; string.asm
|
||||
extern strlen
|
||||
extern strcpy
|
||||
@@ -14,6 +15,7 @@ extern strcat
|
||||
section .rodata
|
||||
TEST_print equ 1
|
||||
TEST_puts equ 1
|
||||
TEST_printf equ 1
|
||||
TEST_strlen equ 1
|
||||
TEST_strcpy equ 1
|
||||
TEST_strcat equ 1
|
||||
@@ -30,6 +32,11 @@ section .rodata
|
||||
; puts()
|
||||
msgPuts db "TEST puts()",EOS
|
||||
|
||||
; printf()
|
||||
msgPrintf db "TEST printf()",NL,EOS
|
||||
printf1 db TAB,"printf(",DQUO,"He%ll%o there%%%%%!%s%!%\n",DQUO,"): ",NL,TAB,TAB,EOS
|
||||
printf1Str db "He%ll%o there%%%%%!%s%!%",NL,EOS
|
||||
|
||||
; strlen()
|
||||
strlenStr1 db "Hello",EOS
|
||||
strlenStr2 db "Hello, world!",NL,EOS
|
||||
@@ -75,6 +82,20 @@ _start:
|
||||
call puts
|
||||
%endif
|
||||
|
||||
;---
|
||||
;--- printf()
|
||||
;---
|
||||
%if TEST_printf
|
||||
lea rdi, [rel msgPrintf]
|
||||
call printf
|
||||
|
||||
; TEST 1
|
||||
lea rdi, [rel printf1]
|
||||
call print
|
||||
lea rdi, [rel printf1Str]
|
||||
call printf
|
||||
%endif
|
||||
|
||||
;---
|
||||
;--- strlen()
|
||||
;---
|
||||
|
Reference in New Issue
Block a user