示例#1
0
        internal BaseCommand InitializeCommand(BinaryReader bReader, Stream stream, uint commandSize, CpuTypes cpuType)
        {
            _binaryReader = bReader;

            _stream = stream;

            CommandSize = commandSize;

            _cpuTypes = cpuType;

            return(LoadCommand());
        }
示例#2
0
        private void AssignDataAtModification(S7PlcConnectionDefinition connection)
        {
            S7CpuTypeConverter converter = new S7CpuTypeConverter();

            SelectedCPUtype = CpuTypes.Single(x => x.CPUtype == converter.GetS7TypeEnum(connection.CPUtype));

            ConnectionName      = connection.ConnectionName;
            FirstOctet          = connection.FirstOctet.ToString();
            SecondOctet         = connection.SecondOctet.ToString();
            ThirdOctet          = connection.ThirdOctet.ToString();
            FourthOctet         = connection.FourthOctet.ToString();
            Rack                = connection.Rack.ToString();
            Slot                = connection.Slot.ToString();
            ConnectionActivated = connection.ConnectionActivated;

            _logger.Info($"Data for modifying existing S7 connection assigned. Connection Name: {connection.ConnectionName}, connection ID: {connection.PLCconnectionID}.");
        }
示例#3
0
文件: Cpu.cs 项目: viert/vm68k
 static public void SetCPUType(CpuTypes type)
 {
     m68k_set_cpu_type((int)type);
     currentCpuType = (uint)type;
 }
示例#4
0
        private static List <BaseCommand> ParseCommands(BinaryReader bReader, Stream stream, int commandCount, CpuTypes cpuType)
        {
            var commands = new List <BaseCommand>();

            var availableCommands = BaseCommand.AssemblyCommands;

            for (var x = 0; x < commandCount; x++)
            {
                var commandTypeInt = bReader.ReadUInt32();

                if (!Enum.IsDefined(typeof(CommandTypes), commandTypeInt))
                {
                    // TODO: Error Handling

                    continue;
                }

                var commandType = (CommandTypes)commandTypeInt;

                var commandSize = bReader.ReadUInt32();

                var command = availableCommands.FirstOrDefault(a => a.CommandTypes.Contains(commandType));

                if (command == null)
                {
                    // TODO: Error handling

                    continue;
                }

                commands.Add(command.InitializeCommand(bReader, stream, commandSize, cpuType));
            }

            return(commands);
        }
示例#5
0
 internal static bool IsCpu64bit(this CpuTypes cpuType) =>
 cpuType == CpuTypes.ARM64 || cpuType == CpuTypes.PowerPC64 || cpuType == CpuTypes.x64;