From 67d25d837ac55f28a366c0a3b262e439a6e75fc3 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 19 Aug 2017 12:15:28 +0200 Subject: Add AmForth --- amforth-6.5/common/lib/hardware/power-save.frt | 36 ++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 amforth-6.5/common/lib/hardware/power-save.frt (limited to 'amforth-6.5/common/lib/hardware/power-save.frt') diff --git a/amforth-6.5/common/lib/hardware/power-save.frt b/amforth-6.5/common/lib/hardware/power-save.frt new file mode 100644 index 0000000..36e729f --- /dev/null +++ b/amforth-6.5/common/lib/hardware/power-save.frt @@ -0,0 +1,36 @@ + +\ fixme: currently the controller sleep too often +\ that breaks the poll based emit almost completely +\ either use the interrupt based emit or include an +\ empty timer task that wakes the controller up +\ +: idle + begin + $0 sleep \ save power, returns on interrupt + pause \ give cpu away + again +; + +$20 $20 0 task: idle-task + +: start-idle-task + idle-task tcb>tid + activate \ words after this line are run in new task + idle +; + +: starttasker + idle-task task-init \ create TCB in RAM + start-idle-task \ activate tasks job + + onlytask \ make cmd loop task-1 + idle-task tcb>tid alsotask \ start task-2 + multi \ activate multitasking +; +: run-turnkey + applturnkey + init + starttasker +; + +\ ' run-turnkey is turnkey \ make run-turnkey start on power up -- cgit v1.2.3