public void initMask(string maskValue, MaskType maskType)
        {
            if (maskValue != null)
            {
                if (maskType == MaskType.Selection)
                {
                    backupUseMask = mReader.UseSelectionMask;

                    for (int i = define.MIN_SELECTION_MASK; i < define.MAX_SELECTION_MASK; i++)
                    {
                        if (!mReader.UsedSelectionMask(i))
                        {
                            break;
                        }

                        AsSelectMaskParam maskParam = mReader.GetSelectionMask(i);
                        backupSelectMasks.Add(maskParam);
                    }
                }
                AsSelectMaskParam param = new AsSelectMaskParam(0, MaskTargetType.L, MaskActionType.Ab, MemoryBank.Epc, 32, maskValue.Substring(4), true);
                mReader.SetSelectionMask(0, param);
                mReader.UseSelectionMask = SelectFlag.Sl;

                for (int i = 1; i < define.MAX_SELECTION_MASK; i++)
                {
                    mReader.SetMaskUsed(i, false);
                }
            }
        }
Exemplo n.º 2
0
 public override void ViewDidLoad()
 {
     base.ViewDidLoad();
     appDelegate           = (AppDelegate)UIApplication.SharedApplication.Delegate;
     pickerView.DataSource = new MyPickerViewDataSource(this);
     pickerView.Delegate   = new MyPickerViewDelegate(this);
     for (int i = 0; i < appDelegate.DATA_BIT.Length; i++)
     {
         string offset = appDelegate.DATA_BIT[i];
         pickerData.Add(offset + " bit");
     }
     if (selectMaskParam != null)
     {
         setTarget((int)selectMaskParam.Target);
         setAction((int)selectMaskParam.Action);
         setBank((int)selectMaskParam.Bank);
         int Offset = Array.IndexOf(appDelegate.DATA_BIT, selectMaskParam.Offset.ToString());
         setOffset(Offset);
         setMask(selectMaskParam.Mask);
         int Length = Array.IndexOf(appDelegate.DATA_BIT, selectMaskParam.Length.ToString());
         setLength(Length);
     }
     else
     {
         selectMaskParam = new AsSelectMaskParam();
         setTarget((int)MaskTargetType.L);
         setAction((int)MaskActionType.Ab);
         setBank((int)MemoryBank.Epc);
         setOffset(1);
         setLength(1);
     }
 }
            public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
            {
                SelectionMaskTableViewCell cell      = (SelectionMaskTableViewCell)tableView.DequeueReusableCell("SelectionMaskCell", indexPath);
                AsSelectMaskParam          maskParam = currentViewContorller.maskData.GetItem <AsSelectMaskParam>((uint)indexPath.Row);

                if (maskParam != null && cell != null)
                {
                    cell.targetLabel.Text = currentViewContorller.appDelegate.DATA_TARGET[(int)maskParam.Target];
                    cell.actionLabel.Text = AsMaskActionType.ToString(maskParam.Action, maskParam.Target);
                    cell.bankLabel.Text   = currentViewContorller.appDelegate.DATA_BANK[(int)maskParam.Bank];
                    cell.offsetLabel.Text = ((uint)maskParam.Offset).ToString() + "bit";
                    cell.lengthLabel.Text = ((uint)maskParam.Length).ToString() + "bit";
                    cell.maskLabel.Text   = maskParam.Mask;
                }

                return(cell);
            }
        public void exitMask()
        {
            mReader.UseSelectionMask = backupUseMask;

            for (int i = define.MIN_SELECTION_MASK; i < define.MAX_SELECTION_MASK; i++)
            {
                if ((int)backupSelectMasks.Count < i + 1)
                {
                    mReader.RemoveSelectionMask(i);
                    break;
                }

                AsSelectMaskParam param = backupSelectMasks.GetItem <AsSelectMaskParam>((nuint)i);

                if (param == null)
                {
                    break;
                }
                mReader.SetSelectionMask(i, param);
            }
            backupSelectMasks.RemoveAllObjects();
        }