Example #1
0
        public int ReadWord(WordAddress address)
        {
            var high = ReadByte(address.AddressOfHighByte());
            var low  = ReadByte(address.AddressOfLowByte());

            return(256 * high + low);
        }
Example #2
0
        public static string DisplayBytes(Story story, ZStringAddress address)
        {
            var decoded = new StringBuilder();

            int isEnd;
            var currentAddress = new WordAddress(address.Value);

            do
            {
                var word = story.ReadWord(currentAddress);
                isEnd = word.FetchBits(BitNumber.Fifteen, BitSize.One);
                var zChar1 = word.FetchBits(BitNumber.Fourteen, BitSize.Five);
                var zChar2 = word.FetchBits(BitNumber.Nine, BitSize.Five);
                var zChar3 = word.FetchBits(BitNumber.Four, BitSize.Five);

                decoded.AppendFormat(
                    "{0:x2} {1} {2:x2} {3} {4:x2} {5} ",
                    zChar1,
                    _alphabetTable[zChar1],
                    zChar2,
                    _alphabetTable[zChar2],
                    zChar3,
                    _alphabetTable[zChar3]);

                currentAddress = currentAddress.Increment();
            } while (isEnd != 1);

            return(decoded.ToString());
        }
Example #3
0
 public void SetWordAddress(int wordAddress)
 {
     if (wordAddress > -1)
     {
         WordAddress = wordAddress;
     }
     WordAddressStr = WordAddress.ToString().PadLeft(4, '0');
 }
Example #4
0
        public Story WriteWord(WordAddress address, int value)
        {
            var high = (value << 8) & 0xFF;
            var low  = value & 0xFF;

            return(WriteByte(address.AddressOfHighByte(), (byte)high)
                   .WriteByte(address.AddressOfLowByte(), (byte)low));
        }
Example #5
0
        public ZStringAddress GetAbbreviationZStringAddress(Abbreviation a)
        {
            var baseAddress         = WordAddress.FromAbbreviationTableBase(GetAbbreviationsTableBase());
            var abbreviationAddress = baseAddress.IncrementBy(a.Value);
            var wordAddress         = new WordZStringAddress(ReadWord(abbreviationAddress));

            return(wordAddress.DecodeWordAddress());
        }
Example #6
0
 public void SetAddressStr()
 {
     WordAddressStr = WordAddress.ToString().PadLeft(4, '0');
     BitAddressStr  = BitAddress.ToString().PadLeft(2, '0');
 }
Example #7
0
        public AbbreviationTableBase GetAbbreviationsTableBase()
        {
            var offset = new WordAddress(24);

            return(new AbbreviationTableBase(ReadWord(offset)));
        }