X-Git-Url: https://git.rrq.au/?a=blobdiff_plain;f=stdio.asm;h=7cf148dfca09e287db5bd7675efa64cd66524041;hb=86231a519d2f4966c99091d4aa532b2c4e05b1fa;hp=f94b0cca194c707463e267dabecac247a7fb772f;hpb=ce86ed5b6ba71fe9f33774a41429e5f96e991be6;p=rrq%2Frrqforth.git diff --git a/stdio.asm b/stdio.asm index f94b0cc..7cf148d 100644 --- a/stdio.asm +++ b/stdio.asm @@ -164,3 +164,34 @@ p_read_word_nomore: pop rax popr rsi next + + WORD p_tell,'TELL',fasm + ;; ( chars* n -- ) + ;; Write n bytes from chars* to stdout + pushr rsi + pop rbx + pop rax + push 1 + push rax + push rbx + DOFORTH sys_write + pop rax + popr rsi + next + +p_emit_buffer: dq 0 + + WORD p_emit,'EMIT',fasm + ;; ( c -- ) + ;; Write byte to stdout + pushr rsi + pop rax + mov [p_emit_buffer],al + push 1 + push p_emit_buffer + push 1 + DOFORTH sys_write + pop rax + popr rsi + next +