Beispiel #1
0
            public void Fetch(uint addr)
            {
                ramAddr = addr;

                Word0 = sbus.ReadDoubleWord(ramAddr);
                Word1 = sbus.ReadDoubleWord(ramAddr + 4);

                Used   = (Word1 & 1u << 31) != 0;
                Wrap   = (Word1 & 1u << 30) != 0;
                Last   = (Word1 & 1u << 15) != 0;
                Length = (ushort)(Word1 & 0x3FFFu);
            }
Beispiel #2
0
            public void Fetch(uint addr)
            {
                ramAddr = addr;
                Word0   = sbus.ReadDoubleWord(addr);
                Word1   = sbus.ReadDoubleWord(addr + 4);

                BufferAddress = Word0 & (~(0x03u));
                Wrap          = ((Word0 & (1u << 1)) != 0) ? true : false;
                Ownership     = ((Word0 & (1u << 0)) != 0) ? true : false;
                StartOfFrame  = ((Word1 & (1u << 14)) != 0) ? true : false;
                EndOfFrame    = ((Word1 & (1u << 15)) != 0) ? true : false;
                Length        = (ushort)(Word1 & 0x1FFF);
            }
Beispiel #3
0
            public void Fetch(uint address)
            {
                ramAddress = address;

                word0 = sbus.ReadDoubleWord(ramAddress);
                word1 = sbus.ReadDoubleWord(ramAddress + 4);

                word0 = (uint)System.Net.IPAddress.HostToNetworkOrder((int)word0);
                word1 = (uint)System.Net.IPAddress.HostToNetworkOrder((int)word1);

                AttemptLimitError = (word0 & (1u << 15)) != 0;
                UnderrunError     = (word0 & (1u << 14)) != 0;
                InterruptEnable   = (word0 & (1u << 13)) != 0;
                Wrap   = (word0 & (1u << 12)) != 0;
                Enable = (word0 & (1u << 11)) != 0;
                Length = word0 & 0x7ffu;

                PacketAddress = word1 & ~(0x03u);
            }
Beispiel #4
0
            public void Fetch(uint address)
            {
                ramAddress = address;
                word0      = sbus.ReadDoubleWord(ramAddress);
                word1      = sbus.ReadDoubleWord(ramAddress + 4);

                word0 = (uint)System.Net.IPAddress.HostToNetworkOrder((int)word0);
                word1 = (uint)System.Net.IPAddress.HostToNetworkOrder((int)word1);

                MulticastAddress = (word0 & (1u << 26)) != 0;
                LengthError      = (word0 & (1u << 18)) != 0;
                OverrunError     = (word0 & (1u << 17)) != 0;
                CRCError         = (word0 & (1u << 16)) != 0;
                FrameTooLong     = (word0 & (1u << 15)) != 0;
                AlignmentError   = (word0 & (1u << 14)) != 0;
                InterruptEnable  = (word0 & (1u << 13)) != 0;
                Wrap             = (word0 & (1u << 12)) != 0;
                Enable           = (word0 & (1u << 11)) != 0;
                Length           = word0 & (0x7ffu);

                PacketAddress = word1 & ~(0x03u);
            }