fixed bcd + fsm