este post es para informarles que el sistema de archivos de solocodigos esta casi listo,
ya tengo la rutina para escribir y leer archivos en disco, lo que falta ahora es crear rutinas que asocien un nombre a esos bloques de datos para que se pueda acceder de otra forma que no sea "leer el archivo que empieza en el slot x".
informo que el sistema de archivos es algo asi:
( informo que la terminologia la invente yo para ponerle nombres a las cosas que se me ocurrian )
bloque: un bloque es una unidad de 1K en la cual esta dividido el diskette, de esa forma no me preocupo por los sectores pistas y cabezas del diskette. ( es una abstraccion )
tabla de archivos: es un array de 1024 words que contiene "slots"
slot: un slot es una posicion de la tabla de archivos que contiene un apuntador a otro slot, 0xFFFF si es el ultimo slot de un archivo y 0xFFFE si el slot esta libre.
si un archivo comienza en el slot 1, el primer bloque de datos de ese archivo esta en el bloque 1 + 16 en el diskette ( el + 16 es porque en el primer bloque esta el bootloader , del 2 al 14 estan reservados para el SO y en el 15 esta el directorio raiz ).ahora bien el valor contenido en el slot 1 nos dice si el archivo contiene solo un bloque ( entonces tendria el valor 0xFFFF ), si el slot esta libre ( en todo caso no habria archivo o estaria vacio ), o si el archivo tiene mas bloques en el caso de que el siguiente bloque este en la posicion 5 +16 el valor del slot 1 sera 5.
hay un directorio raiz que es apuntado por el slot cero de la tabla de archivos, este directorio es el unico por el momento. dentro del directorio raiz hay "estructuras"
de la forma ( Nombre (32 bytes) , numeroSlot (2 bytes) ) que asocian un nombre a un numero de slot en la tabla de archivos.
es medio parecido al funcionamiento de FAT pero no lo digan muy alto que FAT esta patentado
, aparte no me hiba a poner a investigar como era fat asi que lo diseñe yo, esto fue lo mas simple que se me ocurrio.
Bueno solo les queria comentar eso por si les interesaba