программирование fdd

Тема в разделе "WASM.OS.DEVEL", создана пользователем abcd008, 13 ноя 2010.

  1. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    спасибо. я пока нашел только ecma-125. а вот iso только платные. может у тебя есть ссылка.
    я пока почитаю то, что нашел.
    но а ты сам разобрался как gap вычисляют. я смотрел формат дорожки их три iso и еще два.
    и во всех документациях gap называется по разному. у одних gpl1 и gpl2 у других gap3 и gap3f.
    но в описании формате дорожки они все уже имеют стандартную длинны.
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    > я пока нашел только ecma-125. а вот iso только платные. может у тебя есть ссылка.
    я пока почитаю то, что нашел.

    это одно и тоже :)
     
  3. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    baldr
    почему ты пишешь что на дорожке 12500байт если в ecma написано что 9216
    там вообще все значения написаны для 80 дорожек и 18 секторов на них.
    а как паресчитать нету или а не понял
     
  4. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    скачал еще ecma-100 та може самое только про 9 секторов на трек.
    эти доки не про физический формат дискеты а про конкретный тип формата.
     
  5. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    скачал ecma-99 там уже есть gap для секторов в 256 512 и 1024 байта.
    на откуда они их берут опять же не написано. и я не вижу зависимости между gap для разных размеров сектора.

    я бы не мучился и взял таблицу их linux но там только для 512. еслибы я знал зависимость лдя разного размера сектора
    и разного количества секторов на треке, то и плясал бы от таблицы. но я не понимаю откуда они берут именно такие значения.
     
  6. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    интересно а почему у intel 82077 в спецификации совсем другой формат трека?
     
  7. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    нашел интересную литературу http://www.studfiles.ru/dir/cat32/subj1166/file11308/view123921/page7.html
     
  8. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    помогите пожалуйста, разобраться. очень очень надо.


    я разбираю исходник linux floppy.c. и не могу понять.
    там в таблице gap для форматирования равен 0, а чтения 0x1c.
    но откуда они берут 1с если при форматировании 0?

    и еще что делает этот код:
    /* determine interleave */
    il = 1;
    if (_floppy->fmt_gap < 0x22)
    il++;

    /* initialize field */
    for (count = 0; count < F_SECT_PER_TRACK; ++count) {
    here[count].track = format_req.track;
    here[count].head = format_req.head;
    here[count].sect = 0;
    here[count].size = F_SIZECODE;
    }
    /* place logical sectors */
    for (count = 1; count <= F_SECT_PER_TRACK; ++count) {
    here[n].sect = count;
    n = (n + il) % F_SECT_PER_TRACK;
    if (here[n].sect) { /* sector busy, find next free sector */
    ++n;
    if (n >= F_SECT_PER_TRACK) {
    n -= F_SECT_PER_TRACK;
    while (here[n].sect)
    ++n;
    }
    }
    }

    посмотрите полный исходник в linux
     
  9. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    abcd008
    Спецификацию лень глядеть, а наизусть не помню. Но, может, просто не тот формат дорожки смотрите? Флопы использовали разные методы кодирования, посему и форматы были разные, ну а контроллеры для совместимости вынуждены были поддерживать и то, и другое (во всяком случае, древние контроллеры; более-менее современные, надо полагать, поддерживают лишь то, что нужно для обычных ПКшных флопов).
     
  10. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    в последней спецификации контроллера fdc у intel описаны два формата дорожки.
    но на практике используется только один. я просто понять не могу откуда берется gap если при форматировании он 0.
    может конечно контроллер использует стандартный gap(помоему 22 байта) и ему его хватает?
     
  11. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    и как вообще linux форматирует диск на 24 сектора на дорожку.
    если по документации на дорожку влазит 12500 байт, а 24*(512+поля сектора)=13776.
    что намного больше.