Mercurial > vba-clojure
view clojure/com/aurellem/run/choreo.clj @ 540:7f8030812ac2
allow path back to bootstrap program from image-kernel.
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Mon, 25 Jun 2012 15:08:52 -0500 |
parents | a64485223afa |
children |
line wrap: on
line source
1 (ns com.aurellem.run.choreo2 (:use (com.aurellem.gb saves gb-driver util constants3 items vbm characters money4 rlm-assembly))5 (:use (com.aurellem.run util music title save-corruption6 bootstrap-0 bootstrap-1 image7 ram-display))8 (:require clojure.string)9 (:import [com.aurellem.gb.gb_driver SaveState])10 (:import java.io.File))14 ;; take over game15 ;; [X] silence noise16 ;; [ ] run picture program to display pinkie pie mark17 ;; [ ] play pony song20 (defn-memo silence-noise21 ([] (silence-noise (launch-main-bootstrap-program)))22 ([script]23 (->> script24 (write-RAM 0xFF1A [0 0 0]))))26 (def program-target 0xC000)28 (defn-memo write-pony-music-data29 ([] (write-pony-music-data (silence-noise)))30 ([script]31 (let [bytes (midi-bytes pony-csv)]32 (->> script33 (write-RAM (:address (:voice-1 bytes))34 (:data (:voice-1 bytes)))35 (write-RAM (:address (:voice-2 bytes))36 (:data (:voice-2 bytes)))37 (write-RAM (:address (:noise bytes))38 (:data (:noise bytes)))39 (write-RAM (:address (:kernel bytes))40 (:data (:kernel bytes)))))))42 (defn-memo write-image-display-program43 ([] (write-image-display-program (write-pony-music-data)))44 ([script]