Esempio n. 1
0
        protected override void SetBoxMetadata(int box)
        {
            var bdata = GetBoxOffset(box);

            // Set box count
            int count = 0;

            for (int s = 0; s < BoxSlotCount; s++)
            {
                var rel = bdata + (SIZE_STORED * s);
                if (Data[rel] != 0) // Species present
                {
                    count++;
                }
            }

            var boxOfs = bdata - ListHeaderSizeBox;

            if (Data[boxOfs] == 0)
            {
                Data[boxOfs]     = 1;
                Data[boxOfs + 1] = (byte)count;
                Data[boxOfs + 4] = StringConverter12.G1TerminatorCode;
                StringConverter12.SetString(Data.AsSpan(boxOfs + 0x10, 4), "1234".AsSpan(), 4, Japanese, StringConverterOption.None);
            }
            else
            {
                Data[boxOfs + 1] = (byte)count;
            }
        }
Esempio n. 2
0
 private int SetString(ReadOnlySpan <char> value, Span <byte> destBuffer, int maxLength, StringConverterOption option = StringConverterOption.None)
 {
     if (Korean)
     {
         return(StringConverter2KOR.SetString(destBuffer, value, maxLength, option));
     }
     return(StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option));
 }
Esempio n. 3
0
 public override void SetMessage(string line1, string line2)
 {
     if (US)
     {
         StringConverter12.SetString(Data.AsSpan(0x11, 0x10), line2.AsSpan(), 0x10, false, StringConverterOption.Clear50);
         bool hasLine2 = Data[0x11] != StringConverter12.G1TerminatorCode;
         var  padChar  = !hasLine2 ? StringConverterOption.Clear50 : StringConverterOption.Clear7F; // space
         StringConverter12.SetString(Data.AsSpan(0, 0x10), line1.AsSpan(), 0x10, false, padChar);
         Data[0x10] = 0x4E;
     }
 }
Esempio n. 4
0
 public sealed override int SetString(Span <byte> destBuffer, ReadOnlySpan <char> value, int maxLength, StringConverterOption option)
 {
     return(StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option));
 }