Changeset 107 for Deliverables/D4.1
 Timestamp:
 Sep 22, 2010, 3:52:58 PM (11 years ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

Deliverables/D4.1/ASMInterpret.ml
r106 r107 781 781 function 782 782 `BIT addr > 783 (match addr with 784 (false,r1,r2,r3),n1 > 785 let addr = (int_of_vect (mk_byte7 r1 r2 r3 n1)) in 783 let n1, n2 = from_byte addr in 784 (match from_nibble n1 with 785 (false,r1,r2,r3) > 786 let addr = (int_of_vect (mk_byte7 r1 r2 r3 n2)) in 786 787 let addr' = vect_of_int ((addr / 8) + 32) `Seven in 787 788 let n_bit = set_bit (Byte7Map.find addr' status.low_internal_ram) (addr mod 8) v in … … 790 791  Some n_bit' > 791 792 { status with low_internal_ram = Byte7Map.add addr' n_bit' status.low_internal_ram }) 792  (true,r1,r2,r3) ,n1>793  (true,r1,r2,r3) > 793 794 (*CSC: SFR access, TO BE IMPLEMENTED *) 794 795 (* assert false for now. Try to understand what DEC really does *) … … 947 948 let xor_val = get_arg_8 status (`DIRECT d) ^ get_arg_8 status ag in 948 949 set_arg8 status xor_val `A 950  `CLR `A > set_arg8 status (zero `Eight) `A 951  `CLR `C > set_arg1 status false `C 952  `CLR ((`BIT b) as a) > set_arg1 status false a 949 953 (* 950  CLR `A > set_arg8 status951 ((false,false,false,false),(false,false,false,false)) `A952  CLR `C >953 set_arg1 status false `C954  CLR ((`BIT b) as a) >955 set_arg1 status false a956 954  CPL `A > 957 955 let acc_val = get_arg_8 status `A in
Note: See TracChangeset
for help on using the changeset viewer.