From 23cf78b5ab32aecabed3b0e47def916da657d847 Mon Sep 17 00:00:00 2001 From: ksherlock Date: Sat, 21 Nov 2009 01:46:19 +0000 Subject: [PATCH] git-svn-id: https://profuse.googlecode.com/svn/branches/v2@69 aa027e90-d47c-11dd-86d7-074df07e0730 --- version2.txt | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 version2.txt diff --git a/version2.txt b/version2.txt new file mode 100644 index 0000000..6e948d2 --- /dev/null +++ b/version2.txt @@ -0,0 +1,32 @@ +Version 2 Goals + +Version 2 is a more or less complete rewrite with the following goals: + +- better code modularity (disk image code should be usable for dos, pascal, cpm, stand alone utlities, etc) + +- better c++ coding + + +- sdk (shrinkit) support +- nibblized disk image support +- raw device support + + +- write support. + +Other utilites: +- fsck - verify and fix image integrity +- newfs - create a new disk image + + +inodes: + +Unix (and fuse) expect every file to have an inode, a unique integer file identifier. ProDOS does not use inodes (or anything like them). + +v1 used the file entry address as an inode, reloading the file entry every time. + +Since file entries are stored in the parent directory, moving a file changes the address, so this won't work with write support. + +(A file may be moved or deleted while it's open without affecting open references to it.) + +To handle inodes, perhaps I should use the key pointer (which would require a hash to convert it back to the entry) or generate one on the fly and maintain it until necessary \ No newline at end of file