public Parser(PIC _pic)
 {
     this.pic = _pic;
     this.registerFileMap = pic.getRegisterFileMap();
     this.programMemory = pic.getProgramMemory();
     this.operationStack = pic.getOperationStack();
     this.programCounter = pic.getProgramCounter();
 }
        public ListingForm(string _pathToFile, PIC.PIC _pic)
        {
            InitializeComponent();

            programView = new GUI.ProgramView(_pathToFile);

            foreach(string item in programView.source) {
                dataGridView1.Rows.Add(item);
            }

            _pic.nextInstructionEvent += onNextInstructionExecution;
            Disposed += delegate { _pic.nextInstructionEvent -= onNextInstructionExecution;  };

            programMemory = _pic.getProgramMemory();

            numberOfLinesDisplayed = dataGridView1.Height / dataGridView1.RowTemplate.Height;
        }