summaryrefslogtreecommitdiff
path: root/sanctuary.fs
diff options
context:
space:
mode:
Diffstat (limited to 'sanctuary.fs')
-rw-r--r--sanctuary.fs26
1 files changed, 26 insertions, 0 deletions
diff --git a/sanctuary.fs b/sanctuary.fs
index 0199296..08a1c15 100644
--- a/sanctuary.fs
+++ b/sanctuary.fs
@@ -180,6 +180,32 @@ variable hld
: close-file sys-close ;
: read-file >r swap r> sys-read >errno ;
: write-file >r swap r> sys-write >errno ;
+
+-2 constant init-source
+-1 constant string-source
+init-source value source-id
+
+8192 constant /buffer
+create base-buffer /buffer allot \ stdin input buffer
+variable latest-input-buffer
+
+\ format: LINK LINEBUF-PTR >IN USED FD [BUFFER (8152B)]
+: buf>line cell+ ;
+: buf>in 2 cells + ;
+: buf>used 3 cells + ;
+: buf>fd 4 cells + ;
+: buf>buf 5 cells + ;
+
+4096 constant /linebuf
+create base-linebuffer /linebuf allot
+\ format >IN USED
+: linebuf>used cell+ ;
+: linebuf>buf 2 cells + ;
+
+base-linebuffer base-buffer buf>in !
+base-buffer latest-input-buffer !
+
+: accept ;
\ }}}
bye