예제 #1
0
파일: CPU.cs 프로젝트: LesCol/Chip8
        private bool CALL(ushort instruction)
        {
            Stack.Push(InstructionPointer);
            InstructionPointer = ParserFunctions.GetAddress(instruction);

            return(false);
        }
예제 #2
0
파일: CPU.cs 프로젝트: LesCol/Chip8
        private bool JPV(ushort instruction)
        {
            byte   offset  = Register[0];
            ushort address = ParserFunctions.GetAddress(instruction);

            ushort ipaddress = (ushort)(offset + address);

            InstructionPointer = ipaddress;
            return(true);
        }
예제 #3
0
파일: CPU.cs 프로젝트: LesCol/Chip8
 private bool SYS(ushort instruction)
 {
     if (ParserFunctions.GetAddress(instruction) == 0xee)
     {
         return(RET());
     }
     if (ParserFunctions.GetAddress(instruction) == 0x00)
     {
         return(true);
     }
     if (ParserFunctions.GetAddress(instruction) == 0xe0)
     {
         display.Screen.Initialize();
     }
     return(false);
 }
예제 #4
0
파일: CPU.cs 프로젝트: LesCol/Chip8
        private bool JP(ushort instruction)
        {
            InstructionPointer = ParserFunctions.GetAddress(instruction);

            return(false);
        }
예제 #5
0
파일: CPU.cs 프로젝트: LesCol/Chip8
 private bool LDI(ushort instruction)
 {
     AddressRegister = ParserFunctions.GetAddress(instruction);
     return(false);
 }