rlm@225: (ns com.aurellem.gb.text-speed rlm@225: (:use (com.aurellem.gb gb-driver util characters)) rlm@225: (:import [com.aurellem.gb.gb_driver SaveState])) rlm@225: rlm@225: (def text-speed-address 0xD354) rlm@225: rlm@225: (def text-speed->code rlm@225: {:slow 69 rlm@225: :mid 67 rlm@225: :fast 65 rlm@225: :ultra 64 rlm@225: }) rlm@225: rlm@225: (def code->text-speed rlm@225: (zipmap (vals text-speed->code) rlm@225: (keys text-speed->code))) rlm@225: rlm@225: (defn read-text-speed rlm@225: ([^SaveState state] rlm@225: (code->text-speed (aget (memory state) rlm@225: text-speed-address))) rlm@225: ([] (read-text-speed @current-state))) rlm@225: rlm@225: (defn set-text-speed rlm@225: ([^SaveState state new-speed] rlm@225: (set-memory rlm@225: state rlm@225: text-speed-address rlm@225: (text-speed->code new-speed new-speed))) rlm@225: ([new-speed] (set-text-speed @current-state new-speed)))