Думаю как эмулировать дисковые операции.
Если не реализовывать эмуляцию стандартного контроллера НГМД со всеми его регистрами и т.п., а сделать нестандартный контроллер, реализовав только стандартные вызовы:
Код:
160000 Автоматическая загрузка
160002 Загрузка с выбранного привода
160004 Чтение-запись по номеру блока
160006 Чтение-запись по номеру сектора
160010 Инициализация рабочей области драйвера
160012 Форматирование дорожки
Чем это грозит?
Не будет работать софт, который лезет к регистрам контроллера напрямую. Но такого софта, по идее, очень мало.
В модулях на ESP8266 устанавливают флэш от 1 до 4 МБайт. 512 кБайт отводится под прошивку. Итого остается от 0.5 до 3.5 МБайт под файлловую систему. Есть несколько вариантов эмуляции диска:
1. Загружать образы дискет по WiFi в файловую систему с подключением этих образов в эмуляторе.
2. Сразу сделать во флэш от одного 40-дорожечного до четырех (A B C D) 80-дорожечных дисков БК (в зависимости от размера флэш) с загрузкой в эти диски файлов по WiFi.
3. Сразу сделать во флэш один диск БК нестандартного размера (от 0.5 до 3 МБайт, нестандартное число дорожек или секторов на дорожке) с загрузкой в этот диск файлов по WiFi.
С третьим вариантом интересно как поведет себя софт БК в такой ситуации?