padlo pytanie o indeksowanie plikow i danych w pliku w xBiosie.
indeksowac mozemy pliki na dysku. mozemy na raz "otworzyc" wszystkie interesujace nas pliki. pozytek jest taki, ze "otwarcie pliku zindeksowanego" nie wiaze sie z przeszukiwaniem katalogu, plik otwierany jest natychmiast bez wzgledu na to w jakim katalogu sie znajduje.. mozemy to zrobic za pomoca funkcji xBIOS_OPEN_FILE i przechowac uchwyt do pliku ze zmiennych xDAUX2 (xBIOS+$3fd), xDAUX1 (xBIOS+$3fe). w dowolnym momncie mozemy otworzyc ten plik funkcja xBIOS_OPEN_DEFAULT_FILE zapisujac uchwyt do zmiennej xFILE xBIOS+$3ee. funkcje OPEN_FILE mozna zastapic xBIOS_FIND_FILE i pobrac uchwyt bezposrednio z bufora (oszczedzi czasu)
indeksowanie danych w pliku. gdy mamy polaczone dane w jeden duzy plik i chcemy miec do nich natychmiastowy dostep mozemy zrobic tak: otwieramy plik, przesuwamy sie do interesujacego nas punktu gdzie rozpoczynaja sie dane (to nie musi byc poczatek bloku w pliku binarnym) po czym pobieramy uchwyt ze zmiennych xDAUX2 i xDAUX1 oraz offset ze zmiennej xBUFFERO. jesli w ktoryms momencie dzialania programu chcemy miec dostep do tych danych wykonujemy xBIOS_OPEN_DEFAULT_FILE i zapisujemy ofset do xBUFFERO. ta operacja jest natychmiastowa - nie ma przeszukiwania katalogu albo odczytu pliku od poczatku. mozna z takich indeksowanych punktow w pliku wykonywac takze Binary_load uwzgledniajac naglowki pliku binarnego... gdyby ktos chcial :-)
generalnie indeksowanie plikow lub danych w pliku wiaze sie z jednorazowym odczytaniem calego pliku, pozniej dostep do dowolnego miejsca w pliku jest natychmiastowy (zapis 3 bajtow uchwytu), pozniej juz nie ma operacji otwierania pliku lub przeszukiwania katalogu.
indeksowanie w xB jest odporne na relokacje bufora, biblioteki czy zmiane gestosci dyskietki...