funes-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Nes.Bus.Monad

Documentation

newtype Bus r a Source #

Constructors

MkBus 

Fields

Instances

Instances details
MonadState BusState (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

get :: Bus r BusState Source #

set :: BusState -> Bus r () Source #

MemoryInterface () (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

readByte :: Addr -> () -> Bus r Byte Source #

readAddr :: Addr -> () -> Bus r Addr Source #

writeByte :: Byte -> Addr -> () -> Bus r () Source #

writeAddr :: Addr -> Addr -> () -> Bus r () Source #

MonadFail (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

fail :: String -> Bus r a #

MonadIO (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

liftIO :: IO a -> Bus r a #

Applicative (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

pure :: a -> Bus r a #

(<*>) :: Bus r (a -> b) -> Bus r a -> Bus r b #

liftA2 :: (a -> b -> c) -> Bus r a -> Bus r b -> Bus r c #

(*>) :: Bus r a -> Bus r b -> Bus r b #

(<*) :: Bus r a -> Bus r b -> Bus r a #

Functor (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

fmap :: (a -> b) -> Bus r a -> Bus r b #

(<$) :: a -> Bus r b -> Bus r a #

Monad (Bus r) Source # 
Instance details

Defined in Nes.Bus.Monad

Methods

(>>=) :: Bus r a -> (a -> Bus r b) -> Bus r b #

(>>) :: Bus r a -> Bus r b -> Bus r b #

return :: a -> Bus r a #

runBus :: BusState -> Bus (a, BusState) a -> IO (a, BusState) Source #

tick :: Int -> Bus r () Source #

liftPPU :: PPU (a, PPUState) a -> Bus r a Source #