| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
HOCD.Monad
Synopsis
- data OCDT m a
 - runOCDT :: Monad m => Socket -> OCDT m a -> m (Either OCDError a)
 - class (MonadIO m, MonadError OCDError m) => MonadOCD m where
 - halt :: MonadOCD m => m ByteString
 - halt' :: MonadOCD m => m ()
 - reset :: MonadOCD m => m ()
 - resetHalt :: MonadOCD m => m ()
 - resetHaltInit :: MonadOCD m => m ()
 - resume :: MonadOCD m => m ()
 - resumeAt :: MonadOCD m => MemAddress -> m ()
 - step :: MonadOCD m => m ()
 - stepTo :: MonadOCD m => MemAddress -> m ()
 - readMem :: forall a m. (MonadOCD m, FiniteBits a, Integral a) => MemAddress -> m a
 - readMem32 :: MonadOCD m => MemAddress -> m Word32
 - readMemCount :: forall a m. (MonadOCD m, FiniteBits a, Integral a) => MemAddress -> Int -> m [a]
 - writeMem :: forall a m. (MonadOCD m, FiniteBits a, PrintfArg a, Integral a) => MemAddress -> [a] -> m ()
 - writeMem32 :: MonadOCD m => MemAddress -> [Word32] -> m ()
 - registers :: MonadOCD m => m (Map RegisterName RegisterInfo)
 - readReg :: forall a m. (MonadOCD m, FiniteBits a, Integral a) => RegisterName -> m a
 - writeReg :: forall a m. (MonadOCD m, FiniteBits a, Integral a, PrintfArg a) => RegisterName -> a -> m ()
 - version :: MonadOCD m => m ByteString
 - raw :: MonadOCD m => ByteString -> m ByteString
 
Documentation
Instances
class (MonadIO m, MonadError OCDError m) => MonadOCD m where Source #
Minimal complete definition
Nothing
Methods
halt :: MonadOCD m => m ByteString Source #
Halt target
resetHaltInit :: MonadOCD m => m () Source #
Reset target, halt execution and execute reset-init script
resumeAt :: MonadOCD m => MemAddress -> m () Source #
Resume execution at MemAddress
stepTo :: MonadOCD m => MemAddress -> m () Source #
Single-step target to code position
 at MemAddress
Arguments
| :: forall a m. (MonadOCD m, FiniteBits a, Integral a) | |
| => MemAddress | Memory address to read from  | 
| -> m a | 
Read single memory segment from MemAddress
 Segment size depends on Word type.
Arguments
| :: MonadOCD m | |
| => MemAddress | Memory address to read from  | 
| -> m Word32 | 
Shorthand for reading Word32 sized segment
Arguments
| :: forall a m. (MonadOCD m, FiniteBits a, Integral a) | |
| => MemAddress | Memory address to read from  | 
| -> Int | Count  | 
| -> m [a] | 
Read multiple memory segments from MemAddress
 according to count argument. Segment size depends
 on Word type.
Arguments
| :: forall a m. (MonadOCD m, FiniteBits a, PrintfArg a, Integral a) | |
| => MemAddress | Memory address to write to  | 
| -> [a] | Data to write  | 
| -> m () | 
Write multiple memory segments to MemAddress
Arguments
| :: MonadOCD m | |
| => MemAddress | Memory address to write to  | 
| -> [Word32] | Data to write  | 
| -> m () | 
Shorthand for writing Word32 sized segment
registers :: MonadOCD m => m (Map RegisterName RegisterInfo) Source #
Arguments
| :: forall a m. (MonadOCD m, FiniteBits a, Integral a) | |
| => RegisterName | Name of the register to query  | 
| -> m a | 
Read a CPU register
Arguments
| :: forall a m. (MonadOCD m, FiniteBits a, Integral a, PrintfArg a) | |
| => RegisterName | Name of the register to write to  | 
| -> a | Value to write  | 
| -> m () | 
Write a CPU register
version :: MonadOCD m => m ByteString Source #
Query OpenOCD version
raw :: MonadOCD m => ByteString -> m ByteString Source #
Send raw OpenOCD command Escape hatch for commands that are not part defined as part of hocd api