Модуль для работы с образами дискет (FAT12)

Модуль для работы с образами дискет (FAT12)

Модуль для работы с образами дискет (FAT12)

Программа писалась для упрощения процесса написания своей операционной системы. Кроме того один из нее модулей стал частью ее самой.

Программа состоит из модуля mdirend.cpp (который является своим аналогом модуля dirent.h). Все функции модуля работают через функцию чтения «псевдо-сектора», благодаря чему, модуль легко переделывается для работы с реальными дискетами.

Список функций mdirent.cpp:

Функция Описание Аналог функции
m_DIR* m_opendir(Byte *path); открыть каталог (Byte* — это char*, уже не помню зачем я его так) opendir()
void m_closedir(m_DIR* d); закрыть каталог closedir()
DirectoryEntry* m_readdir(m_DIR* d, DirectoryEntry* curent_direntry); читать содержимое каталога. readdir()
m_FILE* m_fopen(char *ipath); открыть файл fopen()
void m_fclose(m_FILE * fp); закрыть файл fclose()
int m_fread(char* where, int isize, int count, m_FILE* f); читать блок из файла fread()
int m_fwrite(char* where, int isize, int count, m_FILE* f); писать блок в файл. frite()

Главный файл рограммы реализует лишь более дружественный интерфейс доступа к этим функциям:

  1.  
  2. Использование: fat12.exe options filename
  3.  
  4. filename - Имя файла образа дискеты.
  5. options - Один из следующих параметров:
  6.  
  7. -r Вывести подсказку на русском языке (то, что вы сейчас видите).
  8. -b Вывести информацию, хранящуюся в BOOT секторе.
  9. -v Вывести список всех файлов.
  10. -l Вывести список всех файлов корневого каталога.
  11. -x Рекурсивно извлечь все файлы.
  12.  
  13. Использование: fat12.exe options filename param1
  14.  
  15. -l Вывести список файлов из каталога <param1>.
  16. -e Извлечь файл <param1> без сохранения путей.
  17. -x Извлечь файл <param1> (или каталог со всем его содержимым).
  18. -d Удалить файл <param1>.
  19. -a Добавить файл <praram1> в образ диска.
  20.  
  21. Использование: fat12.exe options filename param1 param2
  22.  
  23. -md Создать каталог <param2> в каталоге <param1>

Download this code: cline.txt

Кроме того, в архиве есть файл far.ini, который позволяет подключить эту программу к Far
Manager
. (см. рисунок). Делается это с помощью плагина MultiArc. Для подключения необходимо скопировать содержимое far.ini в файл «C:\Program Files\Far\Plugins\MultiArc\Formats\custom.ini».

far.gif

В программе нету функций добавления файлов в образ диска, если вы реализуете их, то пришлите плиз.

Скачать все в одном архиве (zip, 50Kb)

Комментарии