 
 (defn opcode-1NNN
   "Jump to address NNN."
-  [state nnn]
-  (-> state
-      (write-pc nnn)))
+  [state NNN]
+  (-> state
+      (write-pc NNN)))
 
 (defn opcode-2NNN
   "Call subroutine at nnn."
-  [{:keys [pc sp stack] :as state} nnn]
+  [{:keys [pc sp stack] :as state} NNN]
   (-> state
       (write-stack sp pc)
       (write-sp (inc pc))
-      (write-pc nnn)))
+      (write-pc NNN)))
 
 (defn opcode-3XNN
   "Skip next instruction if VX = NN."
-  [{:keys [v] :as state} x nn]
-  (let [Vx (nth v x)]
-    (-> state
-        (write-pc (if (= Vx nn) 4 2)))))
+  [{:keys [v] :as state} X NN]
+  (let [Vx (nth v X)]
+    (-> state
+        (write-pc (if (= Vx NN) 4 2)))))
 
 (defn opcode-4XNN
   "Skip next instruction if VX != NN."
-  [{:keys [v] :as state} x nn]
-  (let [Vx (nth v x)]
-    (-> state
-        (write-pc (if-not (= Vx nn) 4 2)))))
+  [{:keys [v] :as state} X NN]
+  (let [Vx (nth v X)]
+    (-> state
+        (write-pc (if-not (= Vx NN) 4 2)))))
 
 (defn opcode-5XY0
   "Skip next instruction if Vx = Vy."


(defn opcode-FX07
  "Set Vx = delay timer value."
  [{:keys [v dt] :as state} x]
  (-> state
      (write-v x dt)
      (write-pc 2)))

;; TODO: Fx0A

(defn opcode-FX15
  "Set delay timer = Vx."
  [{:keys [v] :as state} x]
  (let [Vx (nth v x)]
    (-> state
        (write-dt Vx)
        (write-pc 2))))

   (int (/ (mod val 100) 10))
   (int (mod val 10))])

(defn- VxVy [V X Y]
  [(nth V X) (nth V Y)])

(defn- write-pc
  [state pc]
