예제 #1
0
파일: test_z80.py 프로젝트: da-raf/z80
 def test_subtraction_overflow_flag_2(self):
     res = util.subtract8_check_overflow(util.make_8bit_twos_comp(-10),
                                         util.make_8bit_twos_comp(10),
                                         self.registers)
     self.assertEqual(util.get_8bit_twos_comp(res), -20)
     self.assertFalse(self.registers.condition.PV)
     self.assertTrue(self.registers.condition.S)
예제 #2
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_addition_overflow3_flag(self):
     res = util.add8(util.make_8bit_twos_comp(-10), util.make_8bit_twos_comp(-10),
               self.registers)
     self.assertEqual(util.get_8bit_twos_comp(res), util.get_8bit_twos_comp(-20))
     print util.get_8bit_twos_comp(res)
     self.assertFalse(self.registers.condition.PV)
     self.assertTrue(self.registers.condition.S)
예제 #3
0
파일: test_z80.py 프로젝트: da-raf/z80
 def test_addition_overflow2_flag(self):
     res = util.add8(util.make_8bit_twos_comp(-10),
                     util.make_8bit_twos_comp(10), self.registers)
     print(util.get_8bit_twos_comp(res))
     self.assertEqual(util.get_8bit_twos_comp(res), 0)
     self.assertFalse(self.registers.condition.PV)
     self.assertFalse(self.registers.condition.S)
예제 #4
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_twos_comp(self):
     self.assertEqual(util.get_8bit_twos_comp(0b100), 4)
     self.assertEqual(util.get_8bit_twos_comp(0b11100011), -29)
     self.assertEqual(util.make_8bit_twos_comp(-29),0b11100011) 
     self.assertEqual(util.make_8bit_twos_comp(25),0b00011001) 
예제 #5
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_subtraction_overflow_flag_5(self):
     res = util.subtract8_check_overflow(util.make_8bit_twos_comp(100), util.make_8bit_twos_comp(-100),
               self.registers)
     self.assertTrue(self.registers.condition.PV)
예제 #6
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_subtraction_overflow_flag_3(self):
     res = util.subtract8_check_overflow(util.make_8bit_twos_comp(-10), util.make_8bit_twos_comp(-10),
               self.registers)
     self.assertEqual(util.get_8bit_twos_comp(res), 0)
     self.assertFalse(self.registers.condition.PV)
예제 #7
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_addition_overflow5_flag(self):
     res = util.add8(util.make_8bit_twos_comp(100), util.make_8bit_twos_comp(100),
               self.registers)
     self.assertTrue(self.registers.condition.PV)
예제 #8
0
파일: test_z80.py 프로젝트: cburbridge/z80
 def test_addition_overflow1_flag(self):
     res = util.add8(util.make_8bit_twos_comp(10), util.make_8bit_twos_comp(10),
               self.registers)
     self.assertEqual(util.get_8bit_twos_comp(res), 20)
     self.assertFalse(self.registers.condition.PV)
예제 #9
0
파일: test_z80.py 프로젝트: da-raf/z80
 def test_twos_comp(self):
     self.assertEqual(util.get_8bit_twos_comp(0b100), 4)
     self.assertEqual(util.get_8bit_twos_comp(0b11100011), -29)
     self.assertEqual(util.make_8bit_twos_comp(-29), 0b11100011)
     self.assertEqual(util.make_8bit_twos_comp(25), 0b00011001)
예제 #10
0
파일: test_z80.py 프로젝트: da-raf/z80
 def test_subtraction_overflow_flag_5(self):
     res = util.subtract8_check_overflow(util.make_8bit_twos_comp(100),
                                         util.make_8bit_twos_comp(-100),
                                         self.registers)
     self.assertTrue(self.registers.condition.PV)
예제 #11
0
파일: test_z80.py 프로젝트: da-raf/z80
 def test_addition_overflow5_flag(self):
     res = util.add8(util.make_8bit_twos_comp(100),
                     util.make_8bit_twos_comp(100), self.registers)
     self.assertTrue(self.registers.condition.PV)