SFDN Packer
From Atariki
Wersja z dnia 00:12, 12 sty 2019 Seban (Dyskusja | wkład) (przeniesienie info o intro do varia.) ← Previous diff |
Aktualna wersja Mono (Dyskusja | wkład) (→Zastosowanie - typo) |
||
Linia 11: | Linia 11: | ||
== Zastosowanie == | == Zastosowanie == | ||
- | Program został wykorzystany w kilu produkcjach grupy Slight, m.in. w [[Overmind]], [[Sexy_Six]] oraz kilku produkcjach eksperymentalnych produkcjach autorskich, np. w demie [http://a8.fandal.cz/detail.php?files_id=304 Digital Trash] użyto go aby skompresować próbki dźwiękowe. | + | Program został wykorzystany w kilku produkcjach grupy Slight, m.in. w [[Overmind]], [[Sexy_Six]] oraz kilku eksperymentalnych produkcjach autorskich, np. w demie [http://a8.fandal.cz/detail.php?files_id=304 Digital Trash] użyto go aby skompresować próbki dźwiękowe. |
Program [http://www.serious-dial.atari.pl/DC/instrukcja/A14.html INT-Graph View] potrafił odczytać pliki programu InterPainter w formacie [[INP]], które zostały spakowane SFDN packerem i zapisane jako pliki z rozszerzeniem INS. | Program [http://www.serious-dial.atari.pl/DC/instrukcja/A14.html INT-Graph View] potrafił odczytać pliki programu InterPainter w formacie [[INP]], które zostały spakowane SFDN packerem i zapisane jako pliki z rozszerzeniem INS. |
Aktualna wersja
Shannon-Fano Differential Nybble Packer - program służący do kompresji danych napisany przez Sebana w 1994 roku. W zamyśle był to program przeznaczony do kompresji cyfrowych próbek dźwiękowych, tzw. "sampli" o rozdzielczości 4-bit. W praktyce okazało się że całkiem dobrze radzi sobie z również kompresją obrazków w trybie Graphics 9, Graphics 10,Graphics 11, HIP, TIP, RIP (wszystkie te tryby graficzne są zorganizowane w pamięci komputera tak że, pojedynczy piksel obrazu opisany jest 4 bitami danych, w więc podobnie jak w przypadku sampli), w czasie użytkowania i eksperymentów z programem okazało się także, że program potrafi poradzić sobie nieźle z kompresją niektórych czcionek (tzw. fontami), a także z niewielką ilością obrazków w trybie Graphics 8
Technikalia
Program stosuje autorski algorytm, dynamicznie dopasowujący się do wejściowego strumienia danych. Początkowo program dzieli strumień na porcje o wielkości 4 bitów, tzw. "nibble", koduje je różnicowo, a następnie zlicza ilości wystąpień każdej z 4-bitowych sekwencji różnicowych, po czym na końcowym etapie kompresji, koduje strumień wyjściowych danych w taki sposób, aby najczęściej występującym 4-bitowym sekwencjom przydzielić jak najkrótsze słowa kodowe, wygenerowane na podstawie bitowego kodu prefiksowego Shannon-Fano.
Ponieważ program jest przeznaczony dla nieco bardziej zaawansowanych użytkowników, z poziomu programu można dokonać zapisu programu dekompresującego spakowane dane. Możliwe jest zapisanie dekompresora zarówno w wersji źródłowej (opcja "Save src", wtedy do kompilacji wymagane jest użycie assemblera QA), lub w wersji skompilowanej pod podany przez użytkownika adres (opcja Compile).
Varia
Założeniem przy projektowaniu SFDN Packera było również to, aby posiadał on wygodny i intuicyjny interfejs użytkownika. Podczas ładowania programu, można nacisnąć klawisz HELP, wtedy zostanie uruchomione krótkie intro wraz z instrukcją w języku angielskim. Program został dołączony do magazynu dyskowego Barymag wydawanego przez grupę Slight. Tam również program zostało krótko opisane zastosowanie i użycie programu, tym razem w języku polskim. Artykuł można również przeczytać w internetowym archiwum magazynu Barymag: SFDN Packer.
Zastosowanie
Program został wykorzystany w kilku produkcjach grupy Slight, m.in. w Overmind, Sexy_Six oraz kilku eksperymentalnych produkcjach autorskich, np. w demie Digital Trash użyto go aby skompresować próbki dźwiękowe.
Program INT-Graph View potrafił odczytać pliki programu InterPainter w formacie INP, które zostały spakowane SFDN packerem i zapisane jako pliki z rozszerzeniem INS.
Licencja
Program został udostępniony na licencji shareware wraz z pierwszą edycją magazynu dyskowego Barymag. Obecnie program ma status Abandonware i może być dowolnie używany i rozpowszechniany.
Linki
wersja 1.01 SDFN Packer: sfdn_packer_v1.01.xex.zip