@@ -528,7 +528,12 @@ def test_simulator_action_increment(
528528 exc_simulator .registers [30 ].value = regs [0 ]
529529 exc_simulator .registers [31 ].value = regs [1 ]
530530 for expect_value in expected :
531- regs = exc_simulator .getValues (FX_READ_REG , 30 , reg_count )
531+ if celltype != CellType .BITS :
532+ regs = exc_simulator .getValues (FX_READ_REG , 30 , reg_count )
533+ else :
534+ reg_bits = exc_simulator .getValues (FX_READ_BIT , 30 * 16 , 16 )
535+ reg_value = sum ([ bit * 2 ** i for i , bit in enumerate (reg_bits )])
536+ regs = [reg_value ]
532537 if reg_count == 1 :
533538 assert expect_value == regs [0 ], f"type({ celltype } )"
534539 else :
@@ -563,7 +568,12 @@ def test_simulator_action_random(self, celltype, minval, maxval):
563568 is_int = celltype != CellType .FLOAT32
564569 reg_count = 1 if celltype in (CellType .BITS , CellType .UINT16 ) else 2
565570 for _i in range (100 ):
566- regs = exc_simulator .getValues (FX_READ_REG , 30 , reg_count )
571+ if celltype != CellType .BITS :
572+ regs = exc_simulator .getValues (FX_READ_REG , 30 , reg_count )
573+ else :
574+ reg_bits = exc_simulator .getValues (FX_READ_BIT , 30 * 16 , 16 )
575+ reg_value = sum ([ bit * 2 ** i for i , bit in enumerate (reg_bits )])
576+ regs = [reg_value ]
567577 if reg_count == 1 :
568578 new_value = regs [0 ]
569579 else :
0 commit comments