PDA

Просмотр полной версии : ISDOS на SD-CARD



kasper
01.09.2015, 20:06
Здравствуйте! Интересно, кто-нибуть писал драйвер для работы ISDOS с SDCARD (на z-controller)?

Максагор
19.10.2015, 03:42
Здравствуйте! Интересно, кто-нибуть писал драйвер для работы ISDOS с SDCARD (на z-controller)?

Делал наметки, но до реализации дело ПОКА не дошло по одной единственной причине: если сделать драйвер "тупо" по образцу драйвера винта, то получим несовместимую с другими "большими" компами карточку, все пространство которой на низком уровне разбито на 16Мб-разделы iS-DOS. А так как вся прелесть карточки в переносимости программ посредством нее между компами, то это "некомильфо". Есть иной подход - в прописанной по дефолту на карточке FAT32 записывать IMG-образы разделов iS-DOS - т.е. файлы-образы, размером от минимума до максимальных 16Мб, внутри которых проинициализирована файловая система iS-DOS. Такие файлы-образы сможет "открывать" FAR, и копировать с/на них файлы. А со стороны спека драйвер надо будет научить в FAT32 искать эти образы на карточке и подмонтироваться к ним, дабы дальше работать с ними как с логическими разделами (именно так уже сделана прямая работа с CD-ROM). Но это уже сложнее и пока работ отложена в очередь.

kasper
19.10.2015, 18:38
А где можно посмотреть исходники образца драйвера? По которому можно сделать свой под Z-Controller? Я все перерыл, нигде нет описания, как самому написать драйвер блочного устройства. Может плохо смотрел?

James DiGreze
20.10.2015, 04:57
Исходники мне не попадались, но описание драйвера блочного устройства шло вместе с ассемблером, посмотри в каталог DOC\APPENDIX.

AmoNik
12.11.2016, 15:07
в прописанной по дефолту на карточке FAT32 записывать IMG-образы разделов iS-DOS - т.е. файлы-образы, размером от минимума до максимальных 16Мб, внутри которых проинициализирована файловая система iS-DOS. Такие файлы-образы сможет "открывать" FAR, и копировать с/на них файлы. А со стороны спека драйвер надо будет научить в FAT32 искать эти образы на карточке и подмонтироваться к ним, дабы дальше работать с ними как с логическими разделами

Драйвер то зачем для этого курочить? Внешний утиль пусть ищет файлы IMG на разделах FAT32 и прописывает их координаты в драйвер.
Если сам файл при этом дефрагментирован, то драйверу вообще нет дела до файловой системы - он будет просто читать/писать последовательно сектора уже внутри файла IMG

Максагор
14.11.2016, 01:19
Драйвер то зачем для этого курочить? Внешний утиль пусть ищет файлы IMG на разделах FAT32 и прописывает их координаты в драйвер.
Если сам файл при этом дефрагментирован, то драйверу вообще нет дела до файловой системы - он будет просто читать/писать последовательно сектора уже внутри файла IMG

С одной стороны, можно и так. Именно таким образом в TASiS сейчас работает драйвер для CD-ROM. Так можно сделать драйвер для винта, где образы исдоса будут лежать в FAT-системе. Но для CD-карточки это слишком примитивный и рискованный метод. То, что годится для "несъемного" винта или "Read-Only" CD-ROM не годится для съемной карточки - представь себе, что драйвер уже настроен на конкретный файл, а мы эту карточку достаем, этот файл стираем (или перемещаем в другую часть диска), а на пустое место пишем что-то другое. Драйвер, обращаясь только к физическому уровню, будет писать уже, получается не в файл, а в случайные сектора на карточке, портя информацию. И потом, даже если это не учитывать - если файл не непрерывный, то персональная настройка на файл позволит настроиться и на таблицу его расположения в FAT-системе. Нет, внешний утиль должен передавать драйверу именно имя файла и путь к нему в каталогах, а дальше дровина вычисляет его начальные физические координаты и расположение на карте устройства.