From 9212909e24252ed723884c29a9c7e68018897bd7 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Fri, 14 Oct 2022 13:53:46 -0700 Subject: Add Fibonacci program (which doesn't work yet) --- main.cpp | 4 +++- programs/fib.pal | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 programs/fib.pal diff --git a/main.cpp b/main.cpp index b6c136c..63dcb50 100644 --- a/main.cpp +++ b/main.cpp @@ -9,9 +9,11 @@ #include "isa/checker.h" extern std::uint8_t _binary_count_bin_start[]; +extern std::uint8_t _binary_fib_bin_start[]; static const std::map programs = { - { "count", _binary_count_bin_start } + { "count", _binary_count_bin_start }, + { "fib", _binary_fib_bin_start }, }; int load_program(checker &checker, const std::uint8_t *program) { diff --git a/programs/fib.pal b/programs/fib.pal new file mode 100644 index 0000000..4d3fb1b --- /dev/null +++ b/programs/fib.pal @@ -0,0 +1,19 @@ +/ vim: set sw=8 noexpandtab : + +*200 + +LOOP, CLA + TAD N + TAD NPLUS1 + DCA NPLUS2 + TAD NPLUS1 + DCA N + TAD NPLUS2 + DCA NPLUS1 + JMP LOOP + +*300 + +N, 0 +NPLUS1, 1 +NPLUS2, 0 -- cgit v1.2.3