]> Joshua Wise's Git repositories - fpgaboy.git/blobdiff - core/insn_alu_a.v
fixed daa for no half carry, top carry, decimal carry on MSD, no decimal carry on LSD
[fpgaboy.git] / core / insn_alu_a.v
index 80d317dc6b999216baa41d669296ce0b659c71e9..580643884bf36fcda66d94d1e28e0dfa030b6d06 100644 (file)
@@ -38,7 +38,7 @@
                `INSN_alu_DAA: begin
                        if (`_F[6]) begin                               
                                if (`_F[4]) begin
-                                       if(`_A[3:0] >= 4'h6 && `_A[7:4] >= 4'h6 && `F[5]) begin
+                                       if(`_A[3:0] >= 4'h6 && `_A[7:4] >= 4'h6 && `_F[5]) begin
                                                `_A <= `_A + 8'h9A;
                                                `_F <= {((`_A + 8'h9A) == 8'b0), `_F[6:0]};
                                        end
@@ -63,7 +63,7 @@
                                                `_A <= `_A + 8'h66;
                                                `_F <= {((`_A + 8'h66) == 8'b0), `_F[6:0]};
                                        end
-                                       else if (`_A[3:0] > 4'b9) begin
+                                       else if (`_A[3:0] > 4'h9) begin
                                                `_A <= `_A + 8'h66;
                                                `_F <= {((`_A + 8'h66) == 8'b0), `_F[6:0]};
                                        end
@@ -96,8 +96,8 @@
                                                end
                                                else begin
                                                        if (`_A[7:4] > 4'h9) begin
-                                                               `_A <= `_A + 8'h66;
-                                                               `_F <= {((`_A + 8'h66) == 8'b0), `_F[6:5], 1'b1, `_F[3:0]};
+                                                               `_A <= `_A + 8'h60;
+                                                               `_F <= {((`_A + 8'h60) == 8'b0), `_F[6:5], 1'b1, `_F[3:0]};
                                                        end
                                                        else begin
                                                                `_F <= {(`_A == 8'b0), `_F[6:0]};
This page took 0.023232 seconds and 4 git commands to generate.