Ejemplo n.º 1
0
 /// <summary>
 /// Load BAM data from disk image
 /// </summary>
 /// <param name="disk">Disk image to read</param>
 public override void Load(BaseDisk disk)
 {
     LoadHeader(disk, 39, 0);
     SectorsMap.Clear();
     loadPartialBAM(disk, BAMtrack, 0);
     loadPartialBAM(disk, BAMtrack, 3);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Load BAM data from disk image
        /// </summary>
        /// <param name="disk">Disk image to read</param>
        public override void Load(BaseDisk disk)
        {
            LoadHeader(disk, 18, 0);

            const int tracks = 35;

            byte[] data = disk.GetSector(18, 0);
            DoubleSide = (data[3] == 0x80);

            byte[] table = new byte[tracks * 4];
            Array.Copy(data, 4, table, 0, tracks * 4);
            SectorsMap.Clear();
            loadMap(table, 4);

            for (int j = 0; j < tracks; j++)
            {
                table[j * 4] = data[0xDD + j];
            }
            data = disk.GetSector(53, 0);
            for (int j = 0; j < tracks; j++)
            {
                Array.Copy(data, j * 3, table, j * 4, 3);
            }
            loadMap(table, 4);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Loads BAM data from disk image
        /// </summary>
        /// <param name="disk">Disk image to read</param>
        public override void Load(BaseDisk disk)
        {
            LoadHeader(disk, 18, 0);

            byte[] data = disk.GetSector(18, 0);

            byte[] table = new byte[totalTracks * 4];
            Array.Copy(data, 4, table, 0, totalTracks * 4);
            SectorsMap.Clear();
            loadMap(table, 4);
        }
Ejemplo n.º 4
0
        public SectMap Map(SectMap map)
        {
            SectMap mapped = new SectMap();

            foreach (var item in map)
            {
                var newSect = Int32.Parse(item.Key);
                var newPosi = item.Value;
                mapped.Add(SectorsMap.ContainsKey(newSect) ? SectorsMap[newSect].ToString() : newSect.ToString(),
                           PositionsMap.ContainsKey(newPosi) ? PositionsMap[newPosi] : newPosi);
            }
            return(mapped);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Load BAM data from disk image
        /// </summary>
        /// <param name="disk">Disk image to read</param>
        public override void Load(BaseDisk disk)
        {
            LoadHeader(disk, 40, 0);

            const int tracks = 40;

            byte[] table = new byte[tracks * 6];
            byte[] data  = disk.GetSector(40, 1);
            Array.Copy(data, 0x10, table, 0, tracks * 6);
            SectorsMap.Clear();
            loadMap(table, 6);
            data = disk.GetSector(40, 2);
            Array.Copy(data, 0x10, table, 0, tracks * 6);
            loadMap(table, 6);
        }