Esempio n. 1
0
        void Update()
        {
            store.Clear();
            if (data == null)
            {
                return;
            }

            try {
                var rcs   = data.Rom.RomChecksumming;
                var ilist = rcs.ReadTableRecords();
                for (int i = 0; i < ilist.Count; i++)
                {
                    var item      = ilist [i];
                    int sum       = rcs.CalcChecksumValue(item);
                    int iconIndex = item.Checksum == sum ? 1 : 0;
                    store.AppendValues(i, item.StartAddress, item.EndAddress, item.BlockSize, item.Checksum, pixbufs [iconIndex], sum);
                }

                labelCVN8.Markup = "<tt>" + RomChecksumming.CVN8Str(rcs.CalcCVN8()) + "</tt>";
                // pre-select for copy & paste
                labelCVN8.SelectRegion(0, -1);
            } catch (Exception ex) {
                Console.Error.WriteLine(ex);
                labelCVN8.Markup = "<b>Checksumming error.</b>";
            }
        }
Esempio n. 2
0
        public void SetRom(Subaru.File.Rom rom)
        {
            if (rom == null)
            {
                return;
            }

            rcs = rom.RomChecksumming;
            var ilist = rcs.ReadTableRecords();

            for (int i = 0; i < ilist.Count; i++)
            {
                var item      = ilist[i];
                int sum       = rcs.CalcChecksumValue(item);
                int iconIndex = item.Checksum == sum ? 1 : 0;
                store.AppendValues(i, item.StartAddress, item.EndAddress, item.Checksum, pixbufs[iconIndex], sum);
            }

            labelCVN8.Text = RomChecksumming.CVN8Str(rcs.CalcCVN8());
        }