User Tag List

Показано с 1 по 10 из 472

Тема: Орион-ПРО. Софтверные дела

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Так я сначала залез, а потом ответил тебе. В одной из процедур номер кластера сдвигается влево на 7. В результате в HL ноль.

    Номер записи это не только свойство файла. Номер кластера не сразу пересчитывается в номер дорожки и номер записи на дорожке. Сначала находится номер записи файловой системы, потом он делится на количество записей на дорожке SPT. Частное будет номером дорожки, остаток - номером сектора (т.е. записи). SPT не обязательно должно быть степенью двойки. Например для нашего диска 5 секторов по 1024 байт SPT равно 40 (или 80, в зависимости от того, где биос будет учитывать номер стороны).
    Зачем группа сдвигается на семь? В какой именно процедуре (вот в исходнике во вложении этого поста можно сориентироваться)? Значит, аффторы там накосячили с разрядностью переменной которую двигают, она должна быть 24-разрядная, а не 16 разрядная. Чтобы не улетали значащие биты.
    Я DPB формирую (в fdisk) по описаниям от CP/M 2.2, которые встречал и в русских и в английских источниках (примерно одно и то же везде пишут), где прямым текстом пишут, что для групп(кластера) размером в 16кб BSH,BLM,EXM должны быть таким-то. Вот должны и все тут.

    Если не затруднит, распиши как я пишу, типо на пальцах: такая-то переменная DBP, такое-то значение, потому что в коде оно так. Потому что из того что я читал не следует ограничение на файловую систему ни в 8М ни 32М. И согласно тем описаниям, ошибки в DPB я не нахожу.

    По "номеру записи" я тебя тупо не понял. Т.к. в описаниях CP/M record - это относится к файлу (та самая текущая позиция по которой читается 128-байтная запись из файла), все что к диску относится - это что угодно другое (группа, сектор, дорожка,...).

    Что имеется в виду под "номер записи файловой системы"? Группа (кластер), номер которых указывается в FCB-шках в позициях FCB+16...FCB+31? Других логических единиц хранения на диске вроде нету у CP/M. Дорожки и сектора это уже физические (они передаются в BIOS как параметры).
    Последний раз редактировалось Error404; 02.08.2016 в 13:39.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Дела паяльные.
    от Sayman в разделе Для начинающих
    Ответов: 24
    Последнее: 09.10.2009, 20:14
  2. валаются без дела разобранные спектрумы
    от Damein Alpha в разделе Барахолка (архив)
    Ответов: 17
    Последнее: 17.09.2009, 10:15
  3. Дела мышиные...
    от Producer в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 22.01.2005, 02:59

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •