Пример #1
0
        public PXI(uint InterruptBitPosition)
        {
            this.SendFIFO         = new Queue <uint>(16);
            this.RecvFIFO         = new Queue <uint>(16);
            this.ConfigBuffer     = new FMemBuffer(8);
            this.InterruptBitMask = (uint)(1 << (int)InterruptBitPosition);

            this.RemoteByte      = 0;
            this.SyncIRQEnable   = false;
            this.FIFOEnable      = false;
            this.FIFOError       = false;
            this.SendEmptyIRQ    = false;
            this.RecvNotEmptyIRQ = false;

            this.Endpoint = null;
        }
Пример #2
0
        public ROM(string Path, string Name)
        {
            byte[] FileData = File.ReadAllBytes(Path);

            if ((FileData.Length % 16) != 0)
            {
                throw new Exception("ROM file size should always be a multiple of 16.");
            }

            this.Buffer = new FMemBuffer((uint)FileData.Length);
            for (uint Index = 0; Index < FileData.Length; Index++)
            {
                this.Buffer.WriteByte(Index, FileData[Index]);
            }

            this.DevName = Name;
        }
Пример #3
0
 public OTP()
 {
     this.OTPRegisters = new FMemBuffer(0x108);
 }
Пример #4
0
 public RAM(uint Size, string Name)
 {
     this.Buffer  = new FMemBuffer(Size);
     this.DevName = Name;
 }