summaryrefslogtreecommitdiffstats
path: root/qemu/roms/openbios/forth/bootstrap/builtin.fs
blob: 03f5fde1f000bfaef9ea49aaeba9bb485cfd5c7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
\ tag: initialize builtin functionality
\ 
\ Copyright (C) 2003 Stefan Reinauer
\ 
\ See the file "COPYING" for further information about
\ the copyright and warranty status of this work.
\ 

 

: init-builtin-terminal  ( -- )

  \ define key, key? and emit
  ['] (key) ['] key (to)
  ['] (key?) ['] key? (to)
  ['] (emit) ['] emit (to)

  \ 2 bytes band guard on each side
  100 #ib !
  #ib @ dup             ( -- ibs ibs )
  cell+ alloc-mem       ( -- ibs addr )
  dup -rot              ( -- addr ibs addr )

  /w + ['] ib (to)      \ assign input buffer
  0 fill                \ erase tib
  0 ['] source-id (to)  \ builtin terminal has id 0

  ;