From 5c2f7c61cec900dc4f05d492704c26c2f438f7e3 Mon Sep 17 00:00:00 2001 From: Adam Shamblin Date: Sun, 15 May 2022 10:50:30 -0600 Subject: [PATCH] Getting started, terminal handling, etc. --- Makefile | 5 +++++ README.md | 12 ++++++++++++ terminal.fs | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 Makefile create mode 100644 README.md create mode 100644 terminal.fs diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..984cd26 --- /dev/null +++ b/Makefile @@ -0,0 +1,5 @@ +connect: + picocom -b 115200 /dev/ttyUSB0 \ + --imap lfcrlf,crcrlf \ + --omap delbs,crlf \ + --send-cmd "ascii-xfr -s -l200" diff --git a/README.md b/README.md new file mode 100644 index 0000000..345e8c2 --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +--- +title: ForthDeck +keywords: +- projects +- forth +- hardware +- microcontrollers +- rp2040 +--- +# ForthDeck + + diff --git a/terminal.fs b/terminal.fs new file mode 100644 index 0000000..6275df4 --- /dev/null +++ b/terminal.fs @@ -0,0 +1,37 @@ +: ESC[ ( -- ) 27 emit 91 emit ; + +: erase ( n -- ) + 0 ?DO $08 emit LOOP ; + +: countdown ( n -- ) + cr ." Counting... " + 0 ?DO I . 2 ERASE LOOP ; + +\ Foreground colors +: [black] ( -- ) ESC[ ." 30m " ; +: [red] ( -- ) ESC[ ." 31m " ; +: [green] ( -- ) ESC[ ." 32m " ; +: [yellow] ( -- ) ESC[ ." 33m " ; +: [blue] ( -- ) ESC[ ." 34m " ; +: [magenta] ( -- ) ESC[ ." 35m " ; +: [cyan] ( -- ) ESC[ ." 36m " ; + +\ Background colors +: [black/bg] ( -- ) ESC[ ." 40m " ; +: [red/bg] ( -- ) ESC[ ." 41m " ; +: [green/bg] ( -- ) ESC[ ." 42m " ; +: [yellow/bg] ( -- ) ESC[ ." 43m " ; +: [blue/bg] ( -- ) ESC[ ." 44m " ; +: [magenta/bg] ( -- ) ESC[ ." 45m " ; +: [cyan/bg] ( -- ) ESC[ ." 46m " ; + +\ Attributes +: [bold] ( -- ) ESC[ ." 1m " ; +: [dim] ( -- ) ESC[ ." 2m " ; +: [smso] ( -- ) ESC[ ." 3m " ; +: [underline] ( -- ) ESC[ ." 4m " ; +: [blink] ( -- ) ESC[ ." 5m " ; +: [reverse] ( -- ) ESC[ ." 7m " ; + +\ Reset to default colors +: [reset] ( -- ) ESC[ ." 0m " ; -- 2.39.5