User Tag List

Результаты опроса: Нужно ли расширение TR-DOS-ов?

Голосовавшие
25. Вы ещё не участвовали в этом опросе
  • Да. Нужно было еще 20 лет назад.

    15 60.00%
  • Нет. 640К хватит всем и н****т.

    5 20.00%
  • Все равно. Я пользуюсь резиновой женщиной.

    2 8.00%
  • Я креветко.

    3 12.00%
Показано с 1 по 10 из 50

Тема: Расширяем TR-DOS

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

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

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    Question Расширяем TR-DOS

    Конечно SD карты и FAT-ы это модно стильно молодежно
    но софтварной поддержки у оно мало и много уже не будет...

    при этом остается туевая хуча старой софтвари которая про эти ваши fat-ы и не слышала
    так же, иногда, как и про выбор дисковода...

    но так как 640 килобайт хватит всем
    когда хочешь закинуть например каких нибудь .mod-ов
    их влазит всего штуки 3...
    что вощем то не фонтан
    а патчить старые софтвари под фаты и сд карты есное дело никто никогда уже не будет...


    и если 640К может и прибито? железно к *****му вг93
    но оно не прибито к формату диска и к вызовам $3D13


    так что в новый год с новыми концепиями



    собственно что мы имеем для адресации положения на диске сейчас

    используемые номера дорожек 0...159 (для архаичных дисков еще и 79, 39)
    используемые номера секторов 0...15

    чего хватит всем 160 дорожек * 16 секторов = 2560 секторов = 655 360 байт

    максимальный размер файла
    256 байт * 255 секторов = 65280 байт


    максимальная вместимость диска в файлах может быть
    65280 байт * 128 файлов = 8 355 840 байт
    что в 12 раз больше чем "хватит всем"

    а максимально можно адресовать вообще
    256 дорожек * 256 секторов = 65536 секторов = 16 777 216 байт


    и не сложно догадаться
    что можно монтерывать увеличенный трд образ прямо с карты
    и то что какое то количество старых софтварей смогут с ним работать
    (например мои трдос-ные поделки должны будут свободно оно переваривать)

    кроме того системный сектор вполне содержит описание формата диска



    ну и собственно требуется стандартизация расширенных trd образов


    сейчас уже есть 4 варианта
    40 * 16 = 640 = 163 840
    80 * 16 = 1280 = 327 680
    80 * 16 = 1280 = 327 680
    160 * 16 = 2560 = 655 360
    (4096 системная дорожка)

    и описывается оно 8-м сектором 0-й дорожки
    +227 тип диска:
    $16 10110 - 80-дорожечный двухсторонний,
    $17 10111 - 40-дорожечный двухсторонний,
    $18 11000 - 80-дорожечный односторонний,
    $19 11001 - 40-дорожечный односторонний.
    и
    +231 - 16 - Количество секторов на дорожке

    идем дальше

    +225 номер первого свободного сектора
    +226 номер первой свободной дорожки
    тоже позволяют адресовать все 16М диска


    +229...230 количество свободных секторов.
    $09F0 - 80 track, 2 side (160-1)*16 (1 системный)
    $04F0 - 40 track, 2 side (80-1)*16
    $04F0 - 80 track, 1 side (80-1)*16
    $0270 - 40 track, 1 side (40-1)*16

    тоже позволяет адресовать все 16М
    $FF00 - (256-1)*256




    варианты расширения

    вариант 1
    256 * 16 = 4096 = 1 048 576 байт
    без потери совместимости при прямом щелкании номером дорожки после каждых 16 секторов
    которые могут ВНЕЗАПНО быть при попытках читать по секторно
    и таким может даже получится обдурить некоторые сильно умные софтвари которые щелкают напрямую вг-шкой
    (если получится запилить перехваты обращения к ней)
    но это всего лишь на 393 216 байт больше чем обычное "хватит всем"


    бесполезные варианты с изменением размера дорожки
    вариант 2
    256 * 32 = 8192 = 2 097 152 байт
    вариант 3
    256 * 64 = 16384 = 4 194 304 байт




    вариант 4
    256 * 128 = 32768 = 8 388 608 байт (32768 системная дорожка)

    под файлы
    255 * 128 = 32640 = 8 355 840 что ровно 128 файлов по 65280 байт
    что нам и нужно

    но если какая либо софтварь захочет гадить на якобы дополнительные сектора
    например 160-й то
    161 * 128 = 20608 = 5 275 648 то это вполне может быть 80-й по счету полезный файл...


    вариант 5
    менее рациональный по занимаемому месту

    256 * 256 = 65536 = 16 777 216 байт (65536 системная дорожка)

    под файлы
    255 * 256 = 65280 = 16 711 680 (могло бы влезть ровно 256 если бы их можно было поместить в каталоге)
    из которых половина 8 290 304 останется незадействованной

    так же 256 секторов невозможно прямо указать в +231 8-го сектора
    но можно использовать логичное для такого случая $00

    из преимуществ такого варианта
    при попытке писать в дальние сектора
    161 * 256 = 41216 = 10 551 296
    записываемое уже находятся за пределами максимального количества файлов (160-й)
    и любая софтварь может срать туда сколько влезет



    еще логичные варианты расширения по принципу уплотнения (как бы это могло быть на самом деле)

    40 * 16 = 640 = 163 840
    80 * 16 = 1280 = 327 680
    160 * 16 = 2560 = 655 360

    40 * 32 = 1280 = 327 680
    80 * 32 = 2560 = 655 360
    160 * 32 = 5120 = 1 310 720

    40 * 64 = 2560 = 655 360
    80 * 64 = 5120 = 1 310 720
    160 * 64 = 10240 = 2 621 440

    40 * 128 5120 = 1 310 720
    80 * 128 = 10240 = 2 621 440
    160 * 128 = 20480 = 5 242 880 (маловато будет)

    40 * 256 = 10240 = 2 621 440
    80 * 256 = 20480 = 5 242 880
    160 * 256 = 40960 = 10 485 760

    юзабельный только последний вариант
    да и выглядят все кроме 256 секторного не очень привлекательно...



    ну и тут собственно вопрос какие варианты нужны? (как по мне 1-й и 5-й остальные фтопку)

    нужно ли их описывать в +231 +227 чтоб ВСЁ было правильно

    или вообще не трогать их для большей совместимости
    и определять тип образа чисто по его размеру
    а то мало ли может какая софтварь проверяет наличие там 16
    хотя запускать дискдокторы, там где высокая вероятность такой проверки, на таком образе никакого смысла и так нет

    так же для типа диска по +227 не прослеживается логика в обозначении
    $16 (1011 0) - 80-дорожечный двухсторонний,
    $17 (1011 1) - 40-дорожечный двухсторонний,
    $18 (1100 0) - 80-дорожечный односторонний,
    $19 (1100 1) - 40-дорожечный односторонний.
    и не есно как логично сгенерировать новые номера для 256 дорожечных


    конечно реализовать подобное будет не так просто как хотелось бы
    и наверное будет оно только для достаточно расширенных клонов

    как вариант для начала думаю запилить набор трдосных вызовов $3D13 который будет загружаться в кеш


    у кого какие соображения по этому поводу?
    Последний раз редактировалось NEO SPECTRUMAN; 20.12.2020 в 05:16.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

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

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

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

Похожие темы

  1. Ответов: 8
    Последнее: 22.02.2017, 18:33
  2. HR-DOS в чем отличия от TR-DOS?
    от Vladimir_S в разделе Оси
    Ответов: 25
    Последнее: 18.03.2013, 14:11
  3. PseudoTR-DOS для NEMO IDE без реального TR-DOS %)
    от fan в разделе Внешние накопители
    Ответов: 14
    Последнее: 15.01.2010, 16:01
  4. расширяем возможности ОСи)))
    от Sayman в разделе Оси
    Ответов: 0
    Последнее: 28.10.2008, 08:35
  5. NK-DOS (вариант MS-DOS под TR-DOS)
    от Nomy Graphics в разделе Оси
    Ответов: 30
    Последнее: 03.09.2007, 16:59

Метки этой темы

Ваши права

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