retroclash-lib-0.1.2.1: Code shared across the code samples in the book "Retrocomputing with Clash"
Safe HaskellNone
LanguageHaskell2010

RetroClash.Video

Documentation

maskStart :: forall k n dom. (KnownNat n, KnownNat k) => HiddenClockResetEnable dom => Signal dom (Maybe (Index (k + n))) -> Signal dom (Maybe (Index n)) Source #

maskEnd :: forall k n dom. (KnownNat n, KnownNat k) => HiddenClockResetEnable dom => Signal dom (Maybe (Index (n + k))) -> Signal dom (Maybe (Index n)) Source #

maskSides :: (KnownNat n, KnownNat m, KnownNat k) => HiddenClockResetEnable dom => SNat k -> Signal dom (Maybe (Index ((k + n) + m))) -> Signal dom (Maybe (Index n)) Source #

center :: forall n n0 k m dom. (KnownNat n, KnownNat n0, KnownNat k, KnownNat m) => (k ~ ((n0 - n) `Div` 2), n0 ~ ((k + n) + m)) => HiddenClockResetEnable dom => Signal dom (Maybe (Index n0)) -> Signal dom (Maybe (Index n)) Source #

scale :: forall n k dom. (KnownNat n, KnownNat k, 1 <= k) => HiddenClockResetEnable dom => SNat k -> Signal dom (Maybe (Index (n * k))) -> (Signal dom (Maybe (Index n)), Signal dom (Maybe (Index k))) Source #

withBorder :: (BitPack a, BitPack a', BitSize a' ~ BitSize a) => a -> (x -> y -> a') -> Maybe x -> Maybe y -> a Source #