Oprogramowanie PC

NVC - narzędzie do organizacji plików na karcie pamięci dla SIO2SD

Praca z dużą ilością plików może sprawiać problemy nawet na szybkim PC-cie. Zazwyczaj pomagamy sobie tworząc sensowną strukturę katalogów. Podobny problem mamy, kiedy naszą kolekcję gier, dem i programów na ATARI chcemy umieścić na karcie pamięci, a następnie za pomocą przycisków SIO2SD (lub za pomocą konfiguratora) odszukać dany tytuł. Zwłaszcza, jeśli nasza kolekcja ma ich ponad 12 tysiecy (mniej więcej tyle plików znajduje się w archiwum gier, które można ściągnąć ze strony http://www.atarionline.pl). Do tego dochodzi jeszcze brak sortowania alfabetycznego (pliki pokazywane są w SIO2SD w tej kolejności, w jakiej były kopiowane na kartę pamięci).

Od wersji oprogramowania 3.0, konfigurator SIO2SD ma już bardzo użyteczną funkcję wyszukiwania plików. Dzięki niej znając nazwę gry (lub jej cześć), wprowadzamy maskę i przeszukujemy choćby i całą kartę pamięci. Niezależnie od tego czy korzystamy z wyszukiwania czy nie, w dalszym ciągu sensowne jest uporządkowanie plików w podkatalogach. NVC może wykonać za nas taką pracę.

O programie

NVC to skrót od “Next Valid Character” (następna możliwa litera). Pod tą nazwą kryje się użyteczna funkcja dostępna w większości samochodowych systemów nawigacyjnych. Wprowadzając adres, korzystamy z wyświetlanej klawiatury, na której dostępne są tylko te litery, które w danym momencie mają sens. Jeśli wybieramy się do Krakowa, to po wprowadzeniu pierwszej literki “K”, nie będzie już ona dostępna przy wprowadzaniu drugiej litery, bo nie ma miasta zaczynającego się na “KK”. Bedzie natomiast “A”, bo są Katowice, będzie “R”, bo jest Kraków, itd.

Podobna zasada przyświeca również programowi NVC. Jego zadanie to skopiowanie plików na kartę pamięci i równoczesne utworzenie odpowiedniej struktury katalogów. Strukturę tą najlepiej zilustrować przykładem:

Kopiując plik “MOON PATROL (V1).XEX” program utworzy domyślnie katalogi “M/MO/MOO”, a następnie skopiuje go do katalogu “MOO”. Głębokość zagnieżdżania (czy wystarczą katalogi “M/MO”, czy też może lepiej “M/MO/MOO/MOON”, itd.) można dowolnie dostosować.

nvc structure nvc structure

Jeśli karta pamięci jest pusta (znajduje się na niej tylko katalog “ATARI”) i kopiujemy na nią za pomocą NVC całą naszą kolekcję plików, to otrzymamy dodatkowo bonusy:

  • NVC skopiuje pliki w kolejności alfabetycznej, tak więc SIO2SD wyświetli je również alfabetycznie.
  • NVC sporządzi listę wszystkich skopiowanych elementów (w pliku content.txt, utworzonym na karcie pamięci).

Program możemy też wykorzystać do odszukania plików, które nam się gdzieś zawieruszyły. Wystarczy podać w ustawieniach literę dysku, na którym znajdują się pliki, a NVC sam je odnajdzie i skopiuje je do katalogu docelowego.

VIDEO pokazujące ładowanie gry “Draconus” z karty pamięci przygotowanej za pomocą programu NVC:

Obsługa SIO2SD za pomocą przycisków

Obsługa SIO2SD za pomocą konfiguratora

Pobieranie

NVC

NVC napisany jest w języku JAVA. Do jego uruchomienia potrzebna jest więc wirtualna maszyna Javy.

Program nie wymaga instalacji. Po rozpakowaniu NVC.zip otrzymamy pliki:

  • nvc.jar - właściwy program
  • nvc.txt - krótki opis w języku angielskim
  • nvc.bat - przykładowy skrypt startujący z lini poleceń NVC pod Windows-ami (wymaga dostosowania)
  • nvc.sh - przykładowy skrypt startujący z lini poleceń NVC pod Linux-em (wymaga dostosowania)

Obsługa NVC

NVC uruchamiamy klikając dwa razy na pliku nvc.jar. Po uruchomieniu na ekranie powinno pojawić się nowe okno:

nvc nvc

Jeśli program uruchamiamy po raz pierwszy, w oknie pojawią się ustawienia domyślne. Przy kolejnym uruchomieniu NVC wyświetli swoje ostatnie ustawienia.

Opis ustawień:

  • Input directory (katalog źródłowy) - skąd kopiujemy - może to być dowolny katalog na dysku lub nawet cały dysk (np.C:)
  • Output directory (katalog docelowy) - dokąd kopiujemy - powinien to być katalog “ATARI” na karcie pamięci
  • Max output directory structure depth (głębokość zagnieźdźania katalogów) - ta wartość ma wpływ na liczbę podkatalogów utworzonych w scieżce docelowej dla kopiowanego pliku. Im większa wartość, tym bardziej ograniczamy liczbę plików znajdujących się w ostatnim z podkatalogów, ale i nasza ścieżka, po której dochodzimy do plików jest dłuższa. Domyślna wartość to 3. Dla większych kolekcji można wypróbować większe wartości, a dla małych kolekcji powinna wystarczyć wartość 2.
  • Force directory creation at the specified depth (wymuszenie tworzenia podkatalogów) - domyślna wartość: wyłączone. Jeśli w naszej kolekcji gier mamy plik, którego początek nazwy jest unikalny (nie ma innego pliku, którego nazwa zaczynałaby się tak samo), to nie musimy tworzyć dla niego kolejnych podkatalogów. SIO2SD nie sortuje bowiem plików i nie wyświetla katalogów przed plikami. Tą opcję warto włączyć jedynie, jeśli nasz docelowy katalog nie jest przeznaczony dla SIO2SD (na przykład chcemy uporządkować pliki do pracy z programem AspeQt, lub z emulatorem Atari800).
  • Suffix list (lista rozszerzeń plików) - kopiowane będą jedynie pliki, których rozszerzenia są zgodne ze znajdującymi się na tej liście rozszerzeniami (wielkość liter nie ma znaczenia)

Po kliknięciu na “Start” NVC przeszukuje katalog “Input directory” i wszystkie jego podkatalogi. W trakcie przeszukiwania program zapamiętuje sobie pliki zgodne z podanym wzorcem (“Suffix list”) i buduje z nich listę plików do skopiowania. Lista ta jest następnie sortowana alfabetycznie i rozpoczyna się kopiowanie:

nvc nvc

Kopiując pliki do katalogu “Output directory” NVC automatycznie tworzy podkatalogi zgodnie z ustawieniami “Max output directory structure depth” i “Force directory creation at the specified depth”. Jeśli w przeszukiwanych podkatalogach NVC napotka pliki o identycznej nazwie to zostanie porównana ich zawartość. Jeśli pliki są identyczne, w katalogu docelowym pojawi się tylko jeden plik. Jeśli pliki pomimo tej samej nazwy mają różną zawartość, to wszystkie pojawią się w katalogu docelowym, a nazwa każdego następnego zostanie uzupełniona o dodatek “NVCVERX”, gdzie X, to kolejny numer pliku.

Obsługa NVC z lini poleceń

NVC można też alternatywnie uruchomić z lini poleceń.

    java -jar nvc.jar -i INPUT -o OUTPUT [-f -l LEVEL] suffix1 [suffix2 ... suffixn]
     -f        : wymuszenie tworzenia podkatalogów, domyślnie: wyłączone
     -i INPUT  : katalog źródłowy
     -l DEPTH  : głębokość zagnieźdźania katalogów, domyślnie: 3
     -o OUTPUT : katalog docelowy
     suffix    : rozszerzenie pliku

Przykłady:

    java -jar nvc.jar

alternatywa do podwójnego kliknięcia na nvc.jar (przydatne, jeśli podwójne kliknięcie na nvc.jar nie działa w twoim środowisku Javy)

    java -jar nvc.jar -i input_dir -o output_dir -n 0 -l 2 atr

wyszukaj w katalogu “input_dir” i wszystkich jego podkatalogach pliki z rozszerzeniem “atr” i skopiuj je do katalogu “output_dir”, tworząc maksymalnie dwa poziomy podkatalogów

    java -jar nvc.jar -i C:\ -o d:\ATARI -f -n 100 -l 1 atr xfd xex

wyszukaj na dysku “C” pliki z rozszerzeniami “atr”, “xfd” i “xex” i skopiuj je na dysk “D” do katalogu “ATARI”, tworząc dokładnie trzy poziomy podkatalogów

Uwagi

  • kopiowanie plików może trochę potrwać (pasek postępu pokazuje zaawansowanie pracy w procentach)
  • nie ma sensu podanie tego samego katalogu jako katalog źródłowy i docelowy - w efekcie otrzymamy jeszcze większy bałagan, bo pliki źródłowe nie są kasowane
  • katalog docelowy “ATARI” na karcie pamięci nie musi być całkiem pusty - jeśli utworzymy w nim podkatalogi przed uruchomieniem NVC, wtedy SIO2SD wyświetli je na samej górze (natomiast wszystkie katalogi utworzone później pojawią się na dole listy)
  • są pliki (na przykład zestawy gier), które nie pasują za bardzo do struktury katalogów tworzonej przez NVC - takie pliki najlepiej ręcznie skopiować na kartę pamięci umieszczając je w jednym katalogu (na przykład “ZESTAWY”)
  • kod źródłówy programu znajduje się w pliku nvc.jar

DriveSort - narzędzie do sortowania plików i katalogów

!DriveSort sortuje alfabetycznie pliki i katalogi na kartach pamięci sformatowanych w systemie plików FAT. Więcej informacji na stronie projektu

Pobieranie

DriveSort (wersja dla Windows)