anchor.diff:    ;; if none of the sprites are in our bounding box or if none are opaque.
     (let ((sprites (get-visible-sprites ppu))
           (oam (ppu-oam ppu)))
  -    (loop for i across sprites when i
  +    (loop for i in sprites when i
          do (let* ((sprite (get-sprite ppu i))
                    (tile (tiles sprite ppu))
                    (pattern-color nil))
  
positive.code:                            (get-bg-pixel ppu x)))
                 (sprite-color (when (show-sprites ppu)
                                 (get-sprite-pixel ppu x bg-color)))
                 (color (cond ((and bg-color sprite-color)
                               (on-top bg-color sprite-color))
                              (bg-color bg-color)
                              (sprite-color sprite-color)
                              (t bd-color))))
            ;(put-pixel x (ppu-scanline ppu) color)
            (sdl:with-pixel (pixels (sdl:fp *screen*))
              (sdl:write-pixel pixels x (ppu-scanline ppu) color)))))))
  
negative.code:             (when (and (zerop i) opaque-p)
                (set-sprite-zero-hit ppu 1))
              (let ((tile-color (logior (ash (palette sprite) 2) pattern-color)))
                (return (list (get-color ppu (+ #x3f00 tile-color))
                              (priority sprite))))))))
  
  ;;;; Core
  
  