예제 #1
0
        public CRET(Gameboy parent, byte opcode) : base(parent)
        {
            cFlagSet = (opcode & 0b1000) > 0;
            cFlag    = (opcode & 0b10000) > 0 ? Flag.Carry : Flag.Zero;

            Cycles = 20;

            Disassembly = "ret " + (cFlagSet ? "" : "n") + OpcodeUtils.FlagToString(cFlag);
        }
예제 #2
0
파일: CCALL.cs 프로젝트: Hacktix/ChromaBoy
        public CCALL(Gameboy parent, byte opcode) : base(parent)
        {
            cFlagSet = (opcode & 0b1000) > 0;
            cFlag    = (opcode & 0b10000) > 0 ? Flag.Carry : Flag.Zero;

            Length = 3;
            Cycles = 24;

            Disassembly = "call " + (cFlagSet ? "" : "n") + OpcodeUtils.FlagToString(cFlag) + ", $" + (parent.Memory[parent.PC + 1] + (parent.Memory[parent.PC + 2] << 8)).ToString("X1");
        }
예제 #3
0
파일: CJR.cs 프로젝트: Hacktix/ChromaBoy
        public CJR(Gameboy parent, byte opcode) : base(parent)
        {
            cFlagSet = (opcode & 0b1000) > 0;
            cFlag    = (opcode & 0b10000) > 0 ? Flag.Carry : Flag.Zero;

            Length = 2;
            Cycles = 12;

            Disassembly = "jr " + (cFlagSet ? "" : "n") + OpcodeUtils.FlagToString(cFlag) + ", $" + (parent.PC + (sbyte)parent.Memory[parent.PC + 1] + 2).ToString("X4");
        }