--- qemu/roms/SLOF/board-qemu/slof/vio-hvterm.fs 2018/04/24 18:59:08 1.1.1.1 +++ qemu/roms/SLOF/board-qemu/slof/vio-hvterm.fs 2018/04/24 19:44:48 1.1.1.2 @@ -15,18 +15,27 @@ : open true ; : close ; -: write ( adr len -- actual ) tuck type ; +: write ( adr len -- actual ) + tuck + 0 ?DO + dup c@ my-unit SWAP hv-putchar + 1 + + LOOP + drop +; : read ( adr len -- actual ) 0= IF drop 0 EXIT THEN - hvterm-key? 0= IF 0 swap c! -2 EXIT THEN - hvterm-key swap c! 1 + my-unit hv-haschar 0= IF 0 swap c! -2 EXIT THEN + my-unit hv-getchar swap c! 1 ; : setup-alias " hvterm" find-alias 0= IF " hvterm" get-node node>path set-alias - ELSE THEN + ELSE + drop + THEN ; setup-alias