Wieloplatformowa aplikacja pokazu slajdów.
Celem projektu Lavender jest stworzenie prostego, konfigurowalnego programu pokazu slajdów dla systemów MS-DOS i Windows (95, NT 4.0 lub nowszych), napisanego głównie w języku C.
Ten projekt został dwa razy wdrożony publicznie jako element pakietu promocyjnego VII, VIII i IX edycji wydarzenia kulturalnego Twilightmeet.
Aplikacja wyświetla slajdy złożone z tekstu i grafik zawartych w archiwum ZIP dołączonym do pliku wykonywalnego lub dostarczonym jako oddzielny plik.
Cechy aplikacji (wersja 0.6.5)
- kompilacja dla systemów DOS (z opcjonalną obsługą XMS) i Windows (x86, x64, Arm, Arm64 oraz Itanium) oraz diagnostyczna dla systemu Linux
- tekstowy format pliku scenariusza
- tryb graficzny: monochromatyczny CGA 640x200 w systemie DOS, 16-kolorowy EGA 640x350 w systemie DOS z użyciem ładowalnego sterownika, 24-bitowy RGB w systemie Windows i Linux z rozmiarem treści dostosowywanym przez użytkownika, obsługa wysokiego DPI i trybu pełnoekranowego w systemie Windows
- opóźnienia wyświetlania (animacje): dokładność do milisekundy
- wyświetlanie tekstu (z obsługą podzakresu UTF-8): w systemie DOS wspiera czeskie, hiszpańskie i polskie znaki diakrytyczne oraz znaki specjalne 0x00-0x1F i 0x7F strony kodowej 437
- wyświetlanie map bitowych: monochromatyczne i 16-kolorowe mapy bitowe niezależne od urządzenia systemu Windows (BMP), mapy bitowe niezależne od urządzenia systemu Windows (BMP) w formacie XRGB8888 w systemach Windows i Linux
- rysowanie i wypełnianie prostokątów: 16 kolorów w systemach Windows i Linux oraz DOS w trybie EGA, odwzorowanie na 5 monochromatycznych deseni w systemie DOS w trybie CGA
- odtwarzanie muzyki w formacie MIDI Type 0 oraz własnym formacie mono: głośnik systemowy (z symulacją trzech głosów), Yamaha OPL2, Roland MPU-401 UART w systemie DOS z obsługą ładowalnych sterowników, Windows MME API, FluidSynth w systemie Linux
- zagnieżdżanie scenariuszy: tekst jawny lub zaszyfrowany (obsługiwane algorytmy: XOR, DES i TDES), klucz deszyfrujący przechowywany lokalnie, wpisywany ręcznie lub pozyskiwany zdalnie (z wykorzystaniem kodu żądania i potwierdzenia, kodu QR i potwierdzenia lub poprzez protokół HTTP)
- nawigowanie z użyciem naciśnięć klawiszy i przycisków myszy
- obsługa wielu języków (angielski, czeski, polski)
- konfigurowalna i lokalizowalna aplikacja autoodtwarzania do sprawdzania zależności czasu wykonania programu Lavender
Funkcje przewidziane na kolejne wydanie
- wybór funkcji na etapie kompilacji oparty o Kconfig
- grafika wysokiej rozdzielczości
- natywna kompilacja dla systemu macOS
- natywna kompilacja dla systemu Windows AXP, PowerPC oraz MIPS