Пример #1
0
        private void DumpbtnClick(object sender, EventArgs e)
        {
            if (sfd.ShowDialog() != DialogResult.OK)
            {
                return;
            }
            SetLogState(sfd.FileName);
            bw.DoWork += BwRead;
            SetButtonState(false);
            var args = new BwArgs {
                Filename = sfd.FileName,
                Pages    =
                    ((ComboBoxItem)sizebox.Items[sizebox.SelectedIndex]).Value
            };

            if (rawmode.Checked)
            {
                args.Mode = (int)BwArgs.Modes.Raw;
            }
            else if (glitchmode.Checked)
            {
                args.Mode = (int)BwArgs.Modes.Glitch;
            }
            if (!long.TryParse(startblockoutbox.Text, NumberStyles.HexNumber, null, out args.StartBlock))
            {
                args.StartBlock = 0;
            }
            if (!long.TryParse(blockcountbox.Text, NumberStyles.HexNumber, null, out args.BlockCount))
            {
                args.BlockCount = 0;
            }
            bw.RunWorkerAsync(args);
            sfd.FileName = Path.GetFileName(sfd.FileName);
        }
Пример #2
0
        static XNANDSettings BwFixArgs(ref BwArgs args, ref XNAND worker)
        {
            var nandopt = XNAND.GetSettings();

            if (nandopt == null)
            {
                return(null);
            }
            if (args.BlockCount > nandopt.SizeBlocks - 1)
            {
                args.BlockCount = 0;
            }
            if (args.BlockCount == 0 || args.StartBlock + args.BlockCount > nandopt.SizeBlocks - 1)
            {
                args.BlockCount = nandopt.SizeBlocks - args.StartBlock;
            }
            if (args.Pages == 0)
            {
                args.Pages = nandopt.PagesInBlock * nandopt.SizeBlocks;
            }
            return(nandopt);
        }
Пример #3
0
        private void ErasebtnClick(object sender, EventArgs e)
        {
            if (MessageBox.Show(Resources.AreYouSureErase, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
            {
                return;
            }
            SetLogState("erase.log");
            bw.DoWork += BwErase;
            SetButtonState(false);
            var args = new BwArgs
            {
                Pages = ((ComboBoxItem)sizebox.Items[sizebox.SelectedIndex]).Value
            };

            if (!long.TryParse(startblockoutbox.Text, NumberStyles.HexNumber, null, out args.StartBlock))
            {
                args.StartBlock = 0;
            }
            if (!long.TryParse(blockcountbox.Text, NumberStyles.HexNumber, null, out args.BlockCount))
            {
                args.BlockCount = 0;
            }
            bw.RunWorkerAsync(args);
        }
Пример #4
0
 private void ErasebtnClick(object sender, EventArgs e)
 {
     if (MessageBox.Show(Resources.AreYouSureErase, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
         return;
     SetLogState("erase.log");
     bw.DoWork += BwErase;
     SetButtonState(false);
     var args = new BwArgs
     {
         Pages = ((ComboBoxItem)sizebox.Items[sizebox.SelectedIndex]).Value
     };
     if (!long.TryParse(startblockoutbox.Text, NumberStyles.HexNumber, null, out args.StartBlock))
         args.StartBlock = 0;
     if (!long.TryParse(blockcountbox.Text, NumberStyles.HexNumber, null, out args.BlockCount))
         args.BlockCount = 0;
     bw.RunWorkerAsync(args);
 }
Пример #5
0
 private void DumpbtnClick(object sender, EventArgs e)
 {
     if (sfd.ShowDialog() != DialogResult.OK)
         return;
     SetLogState(sfd.FileName);
     bw.DoWork += BwRead;
     SetButtonState(false);
     var args = new BwArgs {
                               Filename = sfd.FileName,
                               Pages =
                                   ((ComboBoxItem) sizebox.Items[sizebox.SelectedIndex]).Value
                           };
     if (rawmode.Checked)
         args.Mode = (int)BwArgs.Modes.Raw;
     else if (glitchmode.Checked)
         args.Mode = (int)BwArgs.Modes.Glitch;
     if (!long.TryParse(startblockoutbox.Text, NumberStyles.HexNumber, null, out args.StartBlock))
         args.StartBlock = 0;
     if (!long.TryParse(blockcountbox.Text, NumberStyles.HexNumber, null, out args.BlockCount))
         args.BlockCount = 0;
     bw.RunWorkerAsync(args);
     sfd.FileName = Path.GetFileName(sfd.FileName);
 }
Пример #6
0
 static XNANDSettings BwFixArgs(ref BwArgs args, ref XNAND worker)
 {
     var nandopt = XNAND.GetSettings();
     if (nandopt == null)
         return null;
     if (args.BlockCount > nandopt.SizeBlocks - 1)
         args.BlockCount = 0;
     if (args.BlockCount == 0 || args.StartBlock + args.BlockCount > nandopt.SizeBlocks - 1)
         args.BlockCount = nandopt.SizeBlocks - args.StartBlock;
     if (args.Pages == 0)
         args.Pages = nandopt.PagesInBlock * nandopt.SizeBlocks;
     return nandopt;
 }