altos/lisp: Make hanoi example output a bit prettier
[fw/altos] / src / test / hanoi.lisp
index b84b8174737c56d928d0b790f140f31ab6e087da..387e696ae55de1df681ce3ff0bc1bac8ed66e92b 100644 (file)
@@ -32,9 +32,7 @@
 
 ; Here's the pieces to display
 
-(setq stack '("*" "**" "***" "****" "*****" "******" "*******"))
-
-(setq top (+ (length stack) 3))
+(setq stack '("     *     " "    ***    " "   *****   " "  *******  " " ********* " "***********"))
 
 ;
 ; Here's all of the stacks of pieces
               )
         )
        (t (progn
-            (display-string x y "          ")
+            (display-string x y "                    ")
             (display-stack x (1+ y) (1- clear) stack)
             )
           )
        )
   )
 
-; This should probably be included in the rom image...
-
-(defun length (list)
-  (cond (list (1+ (length (cdr list))))
-       (0)
-       )
-  )
-
 ; Position of the top of the stack on the screen
 ; Shorter stacks start further down the screen
 
 
 (defun reset-stacks ()
   (setq stacks (list stack nil nil))
+  (setq top (+ (length stack) 3))
   (length stack)
   )
 
        )
   )
 
-(defun nth (list n)
-  (cond ((= n 0) (car list))
-       ((nth (cdr list) (1- n)))
-       )
-  )
-
 ; Replace a stack in the list of stacks
 ; with a new value