diff --git a/src/Mima/State.hs b/src/Mima/State.hs index 755feb4..f67d5b2 100644 --- a/src/Mima/State.hs +++ b/src/Mima/State.hs @@ -33,7 +33,10 @@ addressRange (MimaMemory m) = in [minBound..maxAddr] wordsToMemory :: [MimaWord] -> MimaMemory -wordsToMemory = MimaMemory . Map.fromAscList . zip [minBound..] +wordsToMemory = MimaMemory + . Map.filter (/= zeroBits) + . Map.fromAscList + . zip [minBound..] memoryToWords :: MimaMemory -> [MimaWord] memoryToWords mem = map (\addr -> readAt addr mem) $ addressRange mem