Beispiel #1
0
 private bool ForceAddScrollPlmData()
 {
     if (ActivePlm.PlmID == Plm.ScrollID && ActivePlm.MyScrollPlmData == null)
     {
         ScrollPlmData newData = new ScrollPlmData();
         newData.MyPlms.Add(ActivePlm);
         ScrollPlmDatas.Add(newData);
         ActivePlm.MyScrollPlmData = null;
         ChangesMade = true;
         return(true);
     }
     return(false);
 }
Beispiel #2
0
        // Read all scroll plm datas from ROM.
        private void ReadScrollPlmDatas(Rom rom)
        {
            List <int> addressesPC = new List <int> ();

            foreach (PlmSet p in PlmSets)
            {
                int plmCount = p.PlmCount;
                for (int i = 0; i < plmCount; i++)
                {
                    int address = Tools.LRtoPC(p.Plms [i].ScrollDataPtr);
                    if (address != 0) // Skip non-scroll PLMs
                    {
                        addressesPC.Add(address);
                    }
                }
            }
            Tools.RemoveDuplicates(addressesPC);
            ScrollPlmDatas.Clear();
            for (int n = 0; n < addressesPC.Count; n++)
            {
                ScrollPlmDatas.Add(new ScrollPlmData());
                ScrollPlmDatas [n].ReadFromROM(rom, addressesPC [n]);
            }
        }