Пример #1
0
 public void LoadStream(byte[] b)
 {
     byte[] col_byte = new byte[2];
     foreach (var k in labelsToMemOffsets.Keys)
     {
         int offset = labelsToMemOffsets[k][0];
         col_byte[0] = b[offset];
         col_byte[1] = b[offset + 1];
         Color col = PaletteHelper.ByteToColor(col_byte);
         labelsToColors[k] = col;
     }
 }
Пример #2
0
        public void LoadColFormat(string s)
        {
            s = s.Trim();
            var v = s.Split(new string[] { System.Environment.NewLine, "\r\n", "\r", "\n" }, StringSplitOptions.None);

            foreach (var line in v)
            {
                var s1    = line.Split(':');
                var label = s1[0];
                var c     = PaletteHelper.RGBFormatToColor(s1[1]);
                this.SetColor(label, c);
            }
        }
Пример #3
0
        public byte[] PatchBlankaSuperStream04(byte[] b)
        {
            string patch = "0000 1801 7807 6806 5805 4804 3803 2802 0800 5805 4804 2802 0800 0800 4804 2802 0000 1601 4604 4604 3603 2600 0600 0600 0600 3603 2602 0600 0600 0600 2602 0600";

            PaletteHelper.patch_memory(b, 0x40864, patch);
            PaletteHelper.patch_memory(b, 0x40904, patch);
            PaletteHelper.patch_memory(b, 0x409A4, patch);
            PaletteHelper.patch_memory(b, 0x40A44, patch);
            PaletteHelper.patch_memory(b, 0x40AE4, patch);
            PaletteHelper.patch_memory(b, 0x40B84, patch);
            PaletteHelper.patch_memory(b, 0x40C24, patch);
            PaletteHelper.patch_memory(b, 0x40CC4, patch);
            PaletteHelper.patch_memory(b, 0x40D64, patch);
            return(b);
        }
Пример #4
0
        public byte[] PatchHondaSuperStream04(byte[] b)
        {
            string patch = "8B08 7B07";

            PaletteHelper.patch_memory(b, 0x401DC, patch);
            PaletteHelper.patch_memory(b, 0x4027E, patch);
            PaletteHelper.patch_memory(b, 0x40320, patch);
            PaletteHelper.patch_memory(b, 0x403C2, patch);
            PaletteHelper.patch_memory(b, 0x40464, patch);
            PaletteHelper.patch_memory(b, 0x40506, patch);
            PaletteHelper.patch_memory(b, 0x405A8, patch);
            PaletteHelper.patch_memory(b, 0x4064A, patch);
            PaletteHelper.patch_memory(b, 0x406EC, patch);
            PaletteHelper.patch_memory(b, 0x4078E, patch);
            return(b);
        }
Пример #5
0
 public byte[] PatchCammySuperStream04(byte[] b)
 {
     PaletteHelper.patch_memory(b, 0x448B0, "6606");
     PaletteHelper.patch_memory(b, 0x44952, "6606");
     PaletteHelper.patch_memory(b, 0x449F4, "6606");
     PaletteHelper.patch_memory(b, 0x44A96, "6606");
     PaletteHelper.patch_memory(b, 0x44B38, "6606");
     PaletteHelper.patch_memory(b, 0x44BDA, "6606");
     PaletteHelper.patch_memory(b, 0x44C7C, "6606");
     PaletteHelper.patch_memory(b, 0x44BDA, "6606");
     PaletteHelper.patch_memory(b, 0x44D1E, "6606");
     PaletteHelper.patch_memory(b, 0x44BDA, "6606");
     PaletteHelper.patch_memory(b, 0x44DC0, "6606");
     PaletteHelper.patch_memory(b, 0x44E62, "6606");
     return(b);
 }
Пример #6
0
        // function that takes byte stream, dictionary, and list of labels
        // outputs an array of colors for those labels
        public static Color[] ColorsFromLabelsAndStream(byte[] b,
                                                        Dictionary <string, List <int> > offsets, List <string> labels)
        {
            List <Color> colors = new List <Color>();

            foreach (string label in labels)
            {
                int    position = offsets[label][0];
                byte[] colbyte  = new byte[2];
                colbyte[0] = b[position];
                colbyte[1] = b[position + 1];
                Color col = PaletteHelper.ByteToColor(colbyte);
                colors.Add(col);
            }
            return(colors.ToArray());
        }
Пример #7
0
        public byte[] ToByteStream()
        {
            byte[] b = new byte[streamLength];

            foreach (var k in defaultColorOffsets)
            {
                byte[] c = PaletteHelper.ColorToByte(k.c);
                b[k.position]     = c[0];
                b[k.position + 1] = c[1];
            }

            foreach (var k in labelsToMemOffsets.Keys)
            {
                Color  col = this.GetColor(k);
                byte[] c   = PaletteHelper.ColorToByte(col);
                foreach (int offset in labelsToMemOffsets[k])
                {
                    b[offset]     = c[0];
                    b[offset + 1] = c[1];
                }
            }

            return(b);
        }
Пример #8
0
 public void SetRemapColorArray(Color[] colors)
 {
     remapTable = PaletteHelper.GenerateColorMap(baseColors, colors);
 }