X-Git-Url: http://git.joshuawise.com/fpgaboy.git/blobdiff_plain/77ab69d7bb0902e6ebf0994159ed2205f8413e34..b057a5d6e6db6db06ae33703ca72cd235eec91d6:/core/insn_incdec16.v diff --git a/core/insn_incdec16.v b/core/insn_incdec16.v new file mode 100644 index 0000000..95e0d38 --- /dev/null +++ b/core/insn_incdec16.v @@ -0,0 +1,31 @@ +`ifdef EXECUTE + `INSN_INCDEC16: begin + case (cycle) + 0: case (opcode[5:4]) + `INSN_reg16_BC: {tmp,tmp2} <= `_BC; + `INSN_reg16_DE: {tmp,tmp2} <= `_DE; + `INSN_reg16_HL: {tmp,tmp2} <= `_HL; + `INSN_reg16_SP: {tmp,tmp2} <= `_SP; + endcase + 1: begin + `EXEC_INC_PC + `EXEC_NEWCYCLE + end + endcase + end +`endif + +`ifdef WRITEBACK + `INSN_INCDEC16: begin + case (cycle) + 0: {tmp,tmp2} <= {tmp,tmp2} + + (opcode[3] ? 16'hFFFF : 16'h0001); + 1: case (opcode[5:4]) + `INSN_reg16_BC: `_BC <= {tmp,tmp2}; + `INSN_reg16_DE: `_DE <= {tmp,tmp2}; + `INSN_reg16_HL: `_HL <= {tmp,tmp2}; + `INSN_reg16_SP: `_SP <= {tmp,tmp2}; + endcase + endcase + end +`endif