Plan jest taki, żeby atari8fs składało się z:
- modułu kernela obsługującego tablicę partycji APT i udostępniającego w systemie partycje Atari z CF/SD/MMC/HDD,
- filesystemów ataridosfs i spartadosfs obsługujących konkretne FSy Atari,
- filesystemów atrfs, dcmfs, xfdfs, profs (zacząłem od najpopularniejszego) montujących obrazy dysków dostępnych w plikach o wymienionych formatach w takiej postaci, jak będzie ją udostępniał kernel obsługujący APT.
Tak więc atrfs służy tylko do udostępnienia obrazu dyskietki zapisanej w formacie .ATR, jako ciągłego pliku (może nie powinien to być FS - liczę na jakieś sugestie) i udostępnia w strukturze stat informację o parametrach "nośnika". Sam ataridosfs (a w przyszłości również spartadosfs) ma korzystać z gołego ciągłego pliku. Najlepiej gdyby działało to tak, jak montuje się obrazy .img (loop), ale póki co nie wiem jak to działa i muszę się naumieć.
Te FSy można by zaimplementować jako moduły kernela, ale wybrałem FUSE bo gdyby ktoś w przyszłości napisał jego implementację dla windowsa (+ obsługę APT), to mogłoby to działać też i tam.
Edit: Może się okazać, że FUSE nie było dobrym pomysłem dlatego kod jest napisany w C, żeby można było łatwiej go wsadzić do modułu kernela.
Edit 2: Potem można by też zdefiniować reguły dla udeva do automatycznego montowania zasobów z Atari z nośników wymiennych - wtedy user nie musiałby już kompletnie nic robić z linii poleceń.