diff clojure/com/aurellem/run/adv_choreo.clj @ 569:3fcc395b76ef

added code to save rows and columns to RAM.
author Robert McIntyre <rlm@mit.edu>
date Sat, 01 Sep 2012 03:18:55 -0500
parents d2d41ecc88e0
children a6dcb6236fbc
line wrap: on
line diff
     1.1 --- a/clojure/com/aurellem/run/adv_choreo.clj	Sat Sep 01 03:15:13 2012 -0500
     1.2 +++ b/clojure/com/aurellem/run/adv_choreo.clj	Sat Sep 01 03:18:55 2012 -0500
     1.3 @@ -204,7 +204,12 @@
     1.4                  ])
     1.5                clear-screen
     1.6                (flatten
     1.7 -               [0 0 0])
     1.8 +               [;; save all registers
     1.9 +                0xC5 0xD5 0xE5 0xF5
    1.10 +
    1.11 +                ;; restore all registers
    1.12 +                0xF1 0xE1 0xD1 0xC1
    1.13 +                ])
    1.14  
    1.15                init (replace
    1.16                      {:clear-screen-length (count clear-screen)} init*)
    1.17 @@ -222,9 +227,11 @@
    1.18            ;; Reset HL to initial value
    1.19            0x21
    1.20            (reverse (disect-bytes-2 data-start))
    1.21 +          0x78 0x22 ;; BC -> save glyphs-rendered
    1.22 +          0x79 0x22 ;;
    1.23  
    1.24 -          0x78 0x22 ;; B -> save glyphs-rendered
    1.25 -          0x79 0x22 ;; 
    1.26 +          0x7A 0x22 ;; D -> rows 
    1.27 +          0x7B 0x22 ;; E -> columns
    1.28            ])
    1.29           
    1.30          stack-cleanup