осеписцам - фасмовцам :)

Тема в разделе "WASM.ASSEMBLER", создана пользователем shoo, 11 авг 2005.

  1. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    зацените бессонную ночь ;)



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

    [​IMG] _710631536__boot_fat.5.zip
     
  2. doctor_Ice

    doctor_Ice New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2005
    Сообщения:
    845
    Адрес:
    Russia
    прикольно. и полезно.
     
  3. VaStaNi

    VaStaNi Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    203
    Адрес:
    Ukraine
    Очень хорошо для штамповки под CD-ROM. А вот, когда выспишься добавишь возможность в корне иметь свою директорию? ;)

    Это к тому, что у меня существует, например, унифицированный подход и однозначность в загрузке, плюс различение версий "оси" по расширению каталога.

    Выглядит так.

    A:\ATOMOS.000\xxx.xxx или C:\ATOMOS.000\xxx.xxx

    xxxxx.001\xxx.xxx

    xxxxx.002\xxx.xxx

    .........

    Загрузчик может грузить ближайший в корне каталог от начала, таким образом можно селектировать... ну пусть не версии УЖЕ оси, а её билдов, черновиков, смотреть поведение, различия...

    Плюс еще тут и в том, что если используется мультибут на машине, то вообще песня выбора без мороки с бутами, постоянными образами.

    Короче пожелание добавить в корне папочку, хотябы без вложений, для "полной цивилизации диска", а то ведь все в корень сливать негуманно как то :)
     
  4. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    :) не... не добавлю ;) я ведь просто игрался :) но эта идейка у меня давно сидела. хотя добавить можно, но это нужно с начала разобраться - мож, там и не сложно вообще. с другой стороны в таком образе легко менять некоторые параметры, типа, уменьшить число входов в корневом каталоге, за счет чего увеличить пространство, а можно и... много чего - развивать есть куда. просто у меня нет опыта в разработке таких вещей, чтобы обещать это сделать, тем более быстро :)
     
  5. VaStaNi

    VaStaNi Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    203
    Адрес:
    Ukraine
    Ничего сложного вообщем то нет и кто писал или пишет для железа, рыл и роет структуры FATа, штудирует диски, тот и сам добавит, просто "игра" перейдет в действительную полезняшку для OCдевщиков, особенно начинающих, наверное. Да и потом это некая почва пытливым, кто начитавшись доки, сам с помощью этого "шаблона", так сказать виртуально создает образы дисков самым наглядным образом, видит, что, где и куда... Хард-медицина, под новым углом зрения! :)

    От имени ОСдева, большое спасибо, за новизну! >;)

    Успехов!
     
  6. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    гы :) всегда рад оказаться полезным ;)
     
  7. NoName

    NoName New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2004
    Сообщения:
    1.229
    Интересная штуковина. Пока пользовался только MagicISO.
     
  8. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    так, с бугами разобрался, теперь не только выглядит, но и под впс читается. (ох уж и зараза эта фат12!)

    [​IMG] 756067665__boot_fat.8.zip
     
  9. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Вот пара загрузочных секторов, которые ищут файл с заданным именем в корневых каталогах всех FAT32 дисков. В начале проверяются устройства на первом(1F0) канале, затем на втором(170). Cначала master потом slave. Логические диски просматриваются в том порядке, в котором они описаны в таблице разделов. Если запись ссылается на расширенный раздел, то вначале обрабатываются все диски, находящиеся в нём.



    boot16 перемещается в первые 4К памяти и может загрузить образ до 636К размером. Возможен его запуск из ДОСа(прерывания только нужно сразу же запретить).



    boot никуда не перемещается, но работает в защищенном режиме, поэтому может загрузить файл любого размера.





    [​IMG] 1367406962__pmboot32.zip
     
  10. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Исправил пару багов.

    При передаче управления в eax адрес процедуры read_cluster, а в ebx номер первого кластера корневого каталога. Для запуска скопировать kernel.bin(выводит первые 125 имён из корневого каталога) в корневой каталог любого FAT32 диска, а bootpm.bin добавить в boot.ini.
     
  11. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
  12. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Теперь загрузочный сектор поддерживает поиск файла в каталоге первого уровня. Читает информацию с винта через порты. На больших винтах, в случае если искомый файл не будет обнаружен в первых 128Гб, скорее всего повиснет. Если кто желает посмотреть как он работает, распакуйте содержимое в каталог \bootdemo на любой FAT32 диск, и добавьте ссылку на файл boot.bin в boot.ini. Boot.bin должен найти файл kernel.bin а он должен вывести содержимое каталога, из которого его загрузили.

    (вся работа производится в защищенном режиме)



    PS: принимаются предложения по оптимизации 8)

    [​IMG] _276003418__bootdemo.zip
     
  13. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    fasm может не только создавать образы дискет, но так же извлекать из них файлы:

    unpack.bat e disk.img

    [​IMG] 1189450881__unpack.bat