def latchregister(m, incoming, outgoing, settrue, name=None):
reg = Signal.like(incoming, name=name) # make reg same as input. reset OK.
def latchregister(m, incoming, outgoing, settrue, name=None):
reg = Signal.like(incoming, name=name) # make reg same as input. reset OK.
m.d.sync += reg.eq(incoming) # latch input into register
m.d.comb += outgoing.eq(incoming) # return input (combinatorial)
with m.Else():
m.d.sync += reg.eq(incoming) # latch input into register
m.d.comb += outgoing.eq(incoming) # return input (combinatorial)
with m.Else():