atarionline.pl VQ Tracker - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorilmenit
      • CommentTime5 Feb 2026 14:56 zmieniony
       
      Hej,

      Nie wszyscy czytają AtariAge, więc wrzucę też tutaj. Przygotowałem nowy release VQ Tracker, czyli Music Tracker grający sample na 3 kanałach:
      ->link<-

      Projekt jest na etapie eksperymentalnym, zawiera błędy i w wielu przypadkach może jeszcze nie działać poprawnie ;-)

      Tracker pozwala na komponowanie muzyki przy użyciu sampli WAV (i kilku innych formatów), które są konwertowane do skompresowanego formatu odtwarzalnego na standardowym sprzęcie Atari. Starałem się, aby proces pracy był jak najprostszy:
      1. Importujesz sample WAV jako instrumenty.
      2. Konwertujesz je do formatu Atari.
      3. Komponujesz patterny w znajomym interfejsie trackera.
      4. Klikasz „Build”, aby wygenerować samodzielny plik XEX.

      Jakość sampli można kontrolować za pomocą parametru Vector Size (domyślnie 8, mniejsze wartości oznaczają lepszą jakość) oraz częstotliwości próbkowania (Sample Rate).

      Odtwarzacz działa na standardowym Atari 64 KB i nie wymaga żadnych dodatkowych rozszerzeń sprzętowych. Wykorzystuje tryb volume-only układu POKEY do odtwarzania sampli na trzech niezależnych kanałach ze zmienną wysokością dźwięku (pitch).

      Podejście techniczne:
      Głównym wyzwaniem przy odtwarzaniu sampli na Atari jest zmieszczenie użytecznych danych audio w ograniczonej pamięci RAM przy zachowaniu akceptowalnej jakości. Projekt wykorzystuje kompresję Vector Quantization (VQ), aby uzyskać znaczny stopień upakowania danych przy użyciu książki kodowej (codebook) współdzielonej przez wszystkie sample. Z tego powodu im więcej użytych sampli i im są one dłuższe, tym gorsza staje się ich jakość.

      Silnik odtwarzacza działa w całości wewnątrz procedury obsługi przerwań (IRQ), wyzwalanych przez timery POKEY-a. Każdy kanał utrzymuje własną pozycję w strumieniu danych, akumulator wysokości dźwięku oraz stan odtwarzania. System wspiera:
      - 3 jednoczesne kanały z niezależną kontrolą wysokości dźwięku.
      - 36 nut w zakresie 3 oktaw (C-1 do B-3).
      - Zmienną częstotliwość próbkowania (zazwyczaj efektywne 5-8 kHz na wyjściu).
      - Opcjonalną kontrolę głośności na kanał (wymaga jednak dodatkowych cykli procesora).
      - Sekwencjonowanie oparte na patternach i układzie utworów (songline).
      • 2:
         
        CommentAuthorKaz
      • CommentTime5 Feb 2026 16:34
       
      Ooo! Bombastico. Można się pobawić jak w czasach CMC - samo narzędzie już dostarcza pewnej sobody twórczej :)
      • 3: CommentAuthorilmenit
      • CommentTime5 Feb 2026 16:44
       
      Bug - do dodania sampli trzeba użyć teraz "Add Folder", "Add" indywidualnych sampli jest do poprawy. Fix w drodze.
      • 4: CommentAuthor0xF
      • CommentTime5 Feb 2026 19:16
       
      Wszystko w 64 KB, bez obsługi rozszerzeń pamięci?
      Odtwarzanie przy wyłączonym ekranie?
      • 5: CommentAuthorilmenit
      • CommentTime5 Feb 2026 20:22
       
      Tak, aktualnie w 64KB, ekran jest opcjonalnie wyłączany, podobnie jak obsługa klawiatury na stop/reset.
      • 6:
         
        CommentAuthoryerzmyey
      • CommentTime6 Feb 2026 12:07 zmieniony
       
      czesc

      1) postuluje zmiane klawiszologii - od czasow ScreamTrackera przyjelo sie, ze F5 to jest PLAY SONG, a F6 to PLAY PATTERN.

      2) A czemu to ma tylko 3 kanaly, a nie 4?

      3) Czy mozna spodziewac sie konwertera ze spectrumowskiego formatu SampleTracker 2.0? (Rozumiem, ze z 2.1 sie nie uda, bo tu jest za malo oktaw).

      4) Tu sa komendy glosnosci, czy jest w ogole bez tego?

      Bardzo chwalebna inicjatywa anyway. :)
      • 7:
         
        CommentAuthoryerzmyey
      • CommentTime6 Feb 2026 12:22
       
      ...nieeee, add folder tez nie dziala; czekam na update.
      • 8: CommentAuthorilmenit
      • CommentTime6 Feb 2026 16:16
       
      3 kanaly, bo 4 uzywa pokey do generowania przerwania. W przyszlosci do dodania czwarty, ale bedzie wymagalo cycle perfect synchronizacji grania, aby uzyskac oczekiwany playback rate. Pytanie tez, czy wystarczy CPU do obslugi 4 kanalow.
      • 9: CommentAuthortebe
      • CommentTime6 Feb 2026 19:58
       
      no ale IRQ generuje AUDF, a AUDC jest do wykorzystania, to co blokuje IRQ to AUDCTL

      tutaj przykład gry samplem IRQ, AUDF4/AUDC4 by Chriss Hutt (Sheddy)
      ->link<-

      p.s.
      w grze 'Block Attack' wymagane jest STEREO, pierwszy POKEY generuje IRQ do zmian kolorów, odgrywa efekty dźwiękowe na 3 kanałach, drugi POKEY gra właściwą muzykę na 4 kanałach

      do sampli potrzebne są tylko AUDC, AUDF mogą generować IRQ i nie zabierają kanału
      • 10: CommentAuthorilmenit
      • CommentTime6 Feb 2026 20:30
       
      ok, ciekawe, nie wiedziałem, myślałem, że przy generacji przerwań AUDF nie jest do wykorzystania AUDC. No to będą 4 kanały :-)
      • 11: CommentAuthortebe
      • CommentTime6 Feb 2026 21:43
       
      a import MOD-ów będzie ?
      • 12: CommentAuthortebe
      • CommentTime6 Feb 2026 21:54 zmieniony
       
      MODPLAY2(6502, IRQ, 4 kanały sampli)
      ->link<-

      MODPLAY5 (65816-Rapidus, IRQ, 4 kanały sampli 6bit)
      ->link<-

      tak, można odtwarzać sample 6bit, Drac030 -> D2D
      ->link<-
      • 13:
         
        CommentAuthoryerzmyey
      • CommentTime8 Feb 2026 23:53
       
      a importu z SampleTrackera pewnie nie bedzie?
      (xxl zna ten format).
      • 14: CommentAuthorilmenit
      • CommentTime9 Feb 2026 01:37
       
      SampleTracker? Nie znam. A pan xxl już zmienił swoje nawyki odnośnie zachowania w stosunku do innych, czy wciąż warto go ignorować?
      • 15:
         
        CommentAuthorjhusak
      • CommentTime9 Feb 2026 09:42 zmieniony
       
      @ilmenit - wielu z nas jest ekscentrykami z zaburzeniami poznawczymi, co nie przeszkadza nam być świetnymi specjalistami. Przykłady: tebe, xxl. ALE oni robią tak dużo (ostatnio xxl mniej widać, może pracuje nad jakimś dużym projektem), że warto uprzedzenia wsadzić w kieszeń i nie sugerować się opinią innych (ekscentryków), tylko współpracować :)
      • 16: CommentAuthorsolo/ng
      • CommentTime10 Feb 2026 10:44 zmieniony
       
      @ilmenit:
      ->link<-

      brakuje chyba przywrocenia przerwan (na altirra to przejdzie, na real atarkach crash sie robi) po tym pierwszym inicie

      001: $2000 $2033: $0034
      002: $02E2 $02E3: $0002
      INI $2000
      003: $2000 $3370: $1371
      004: $02E0 $02E1: $0002
      RUN $205A


      ->

      ; Done copying - leave RAM enabled (PORTB Bit 0 = 0)

      cli
      lda #$c0
      sta nmien
      rts
      • 17: CommentAuthorilmenit
      • CommentTime10 Feb 2026 11:14
       
      O, dzięki! Poprawię.
      • 18: CommentAuthorsolo/ng
      • CommentTime10 Feb 2026 18:25
       
      chlopaki testneli (zrobilem im xex'a z szybkim w/w fixem) i dziala na real atari, jak cos;)
      • 19: CommentAuthorilmenit
      • CommentTime10 Feb 2026 18:46
       
      Wkrótce nowa wersja
      • 20: CommentAuthorilmenit
      • CommentTime12 Feb 2026 22:45 zmieniony
       
      Beta3 opublikowana:
      ->link<-

      Co nowego:

      4-kanałowe odtwarzanie polifoniczne: Rozszerzono obsługę z 3 do 4 niezależnych kanałów sampli. Wykorzystywane są teraz wszystkie cztery rejestry audio układu POKEY (AUDC1–AUDC4).

      Import modułów Amigi (.MOD): Możliwość importu 4-kanałowych plików .MOD (format ProTracker) z automatyczną konwersją patternów, instrumentów, aranżacji utworu oraz ustawień tempa. Sample z modułów są resamplowane do częstotliwości układu POKEY, a ich base_note jest ustawiana na C-3 (zgodnie z konwencją strojenia MOD). Po zaimportowaniu automatycznie uruchamiany jest optymalizator, który przydziela tryby RAW/VQ. Import z MOD jest "stratny" - VQ Tracker nie ma wszystkich funkcji jak nakładanie efektów na sample czy zapętlenia.

      Wbudowany edytor sampli: Prosty edytor pozwalający na przycinanie sampli, zmianę oktawy czy nakładanie efektów. Edycja jest „niedestrukcyjna”, a lista zastosowanych komend jest kopiowana podczas klonowania instrumentu, co ułatwia tworzenie wielu wariantów tego samego brzmienia.

      Mieszane kodowanie sampli (VQ + RAW): Instrumenty mogą teraz niezależnie korzystać z kompresji VQ (kwantyzacja wektorowa) lub RAW (nieskompresowany, 4-bitowy PCM). VQ zapewnia kompresję (8:1 przy vec_size=8), wykorzystując wspólny codebook (tablicę kodów) o 256 wpisach. Tryb RAW zużywa więcej pamięci, ale obciąża procesor w mniejszym stopniu – nie wymaga odczytu z codebooka. Player wybiera odpowiednią procedurę obsługi dla każdego kanału w momencie wyzwolenia nuty, używając samomodyfikującego się kodu, co eliminuje narzut wydajnościowy podczas odtwarzania.

      Przycisk OPTIMIZE: Analizuje wszystkie instrumenty i aranżację utworu, aby zarekomendować tryb VQ lub RAW dla każdego instrumentu. Optymalizator symuluje odtwarzanie wiersz po wierszu, aby znaleźć momenty szczytowego obciążenia procesora, a następnie przełącza krótkie lub obciążające procesor instrumenty na tryb RAW, jeśli pozwala na to pamięć. Po optymalizacji przy nazwach instrumentów pojawiają się wskaźniki V (VQ) i R (RAW).

      Konfigurowalny limit pamięci: Budżet pamięci na dane sampli jest teraz regulowany (domyślnie 35 KB). Przycisk OPTIMIZE oraz proces budowania pliku wynikowego (BUILD) respektują ten limit, decydując, jak zmieścić instrumenty w 64 KB pamięci RAM Atari.

      Sprzężony tryb wprowadzania nut: Nowe ustawienie (domyślnie włączone) kontrolujące zachowanie przy wprowadzaniu nuty w zajętej komórce. Może ono nadpisywać instrument i głośność (styl FastTracker 2) lub je zachowywać (styl edycji znany z Renoise). Opcja dostępna w panelu Settings.

      Klonowanie instrumentu: Wykonuje głęboką kopię wybranego instrumentu (dane audio, łańcuch efektów, ustawienia) do nowego slotu na końcu listy instrumentów.

      Usunięto player optymalizowany pod rozmiar: Tracker od teraz zawsze korzysta z procedury obsługi przerwań (IRQ) zoptymalizowanej pod kątem szybkości działania. Na optymalizację pod rozmiar nie wystarcza CPU podczas grania.

      Uproszczone menu: Usunięto pozycje „Import vq_converter...” oraz „Export .ASM...”. Przepływ pracy (workflow) w trackerze wygląda teraz następująco: komponowanie → konwersja → budowanie (.xex).

      Natywne okna wyboru plików i folderów: Usunięto brzydkie i nieintuicyjne autorskie selektory plików. Aplikacja korzysta teraz z systemowych okien dialogowych.
    1.  
      no i fajnie że znowu koder określa ile ma miec dany utwór..a juz miałem wstać i zrobic jakiegoś moduła... a dlaczego nie na 1 MB sie pytam ?..koderzy do piekła..AI po was idzie !
      • 22: CommentAuthorilmenit
      • CommentTime13 Feb 2026 06:08
       
      Będzie będzie, ale nie chciałem odkładać release w nieskończoność.
    2.  
      a to "przeprasiam" !! to może jeszcze jakis export do jednej "ścieżki" szalony pomysł ale może by sie dało ?? no ale na 1Mb to bedzie petarda!Tank ju!!
      • 24: CommentAuthorilmenit
      • CommentTime13 Feb 2026 07:19
       
      Najpierw lepsza obsługa pamięci, potem lepsza emulacja Pokeya, bo teraz co jest grane w trackerze dość się różni od tego co w .xex
      • 25: CommentAuthortatqoo
      • CommentTime13 Feb 2026 09:03
       
      Pattern edytor tylko na pół ekranu w pionie za to nazwy instrumentów na pół ekranu w poziomie????
      Dodatkowo tradycyjna sugestia dla każdego trackera - ustawianie koloru wyświetlania instrumentu w patternie.
      • 26:
         
        CommentAuthoryerzmyey
      • CommentTime13 Feb 2026 09:06
       
      Czy udalo sie zamienic miejscami funkcje klawiszy F5 i F6?
      • 27: CommentAuthorilmenit
      • CommentTime13 Feb 2026 09:23
       
      "play_song": "F5",
      "play_pattern": "F6",
      Jest możliwość redefiniowania keyboard.json
      • 28: CommentAuthorilmenit
      • CommentTime13 Feb 2026 09:24 zmieniony
       
      "Pattern edytor tylko na pół ekranu w pionie za to nazwy instrumentów na pół ekranu w poziomie????
      Dodatkowo tradycyjna sugestia dla każdego trackera - ustawianie koloru wyświetlania instrumentu w patternie."

      Narysujcie jak ma być layout, zrobi się :) Sekcja instrumentów ma zmienną szerokość, bo nie miało sensu dawać zmienną szerokość dla patternów, a nazwy instrumentów potencjalnie mogą być dłuższe. Jak komuś przeszkadza, może zwężyć okno ;)
      • 29:
         
        CommentAuthoryerzmyey
      • CommentTime13 Feb 2026 12:16
       
      b. dziekuje, sciagam to sobie.
      • 30:
         
        CommentAuthoryerzmyey
      • CommentTime13 Feb 2026 12:32
       
      hm, nie importuje mi tych sampli z zestawu.
      zastyga mrugajac klawiszem "CONVERT". jest to na Windows 10.
      • 31: CommentAuthortatqoo
      • CommentTime13 Feb 2026 13:16
       
      Pattern edytor na całą wysokość ekranu od góry do dołu. Fajnie by też było, gdyby był jakiś dedykowany layout dla ultra-wide monitorów w miarę jak funkcjonalność będzie się rozrastać.
      • 32: CommentAuthorilmenit
      • CommentTime13 Feb 2026 14:09 zmieniony
       
      yerzmyey - pobierz nową wersję, nie starą, screenshoty wrzuciłeś z Beta2
      • 33:
         
        CommentAuthoryerzmyey
      • CommentTime13 Feb 2026 23:24 zmieniony
       
      szyt, stad wzialem linka https://github.com/ilmenit/vq-tracker/releases/tag/Beta2

      moze cos sie powalilo; jutro poszukam.
      thx.
      • 34: CommentAuthorilmenit
      • CommentTime13 Feb 2026 23:35
       
      Za jakiś czas Beta4 z kilkoma ciekawymi dodatkami
      • 35: CommentAuthorilmenit
      • CommentTime14 Feb 2026 16:00 zmieniony
       
      POKEY VQ Tracker Beta 4:
      Do pobrania tutaj: ->link<-

      Nowa beta gotowa do pobrania. Główny temat tego wydania: doprowadzenie importu plików MOD do stanu używalności w bardziej zaawansowanych utworach oraz wsparcie dla rozszerzonej pamięci RAM.

      Przy okazji wsparcie dodatkowej pamięci stawia pytanie – czy potrzebujemy tak złożonego playera jak obecnie, czy może lepiej przejść na streaming skompresowanego strumienia LZSS/LZSA?

      Obsługa bankowania pamięci (128 KB – 1 MB)
      Mamy obsługę przechowywania sampli w przełączanych bankach. Sample rezydują w 16-kilobajtowych oknach pod adresem $4000–$7FFF, a ich przełączanie odbywa się bezpośrednio w procedurze obsługi przerwania IRQ. Jeśli sampel przekracza 16 KB, automatycznie zajmuje kolejne banki. Działa detekcja RAM-u, generowanie wielosegmentowych plików XEX oraz optymalizacja uwzględniająca bankowanie.

      Obsługiwane konfiguracje: 64 KB (bez bankowania), 128 KB (130XE), 320 KB, 576 KB (Rambo/Compy), 1088 KB (rozszerzenia 1 MB).

      Kreator importu MOD:
      Mamy teraz wizard, który jeszcze przed zatwierdzeniem powie, czy utwór MOD zmieści się w pamięci.
      Wybierasz docelową maszynę (od 64 KB do 1 MB), a kreator na bieżąco pokazuje zużycie RAM-u. Możesz włączyć lub wyłączyć kontrolę głośności oraz zdecydować, co zrobić z zapętlonymi instrumentami (player nie wspiera pętli, więc muszą one zostać "rozwinięte" – unrolled). Deduplikacja patternów odbywa się automatycznie. Wizard oferuje też opcję przycięcia utworu, sugerując liczbę pozycji, która pozwoli zmieścić się w limicie.

      Zdarzenia Volume (V--):
      Nowy typ zdarzenia, który zmienia głośność kanału bez ponownego wyzwalania nuty (retrigger). Importer MOD generuje je automatycznie z efektów volume slide i set-volume. Można je też wpisywać ręcznie: wystarczy nacisnąć tyldę (~) w kolumnie nuty lub po prostu wpisać wartość głośności w pustym wierszu – V-- wstawi się samo.

      Ulepszenia playera IRQ:
      Kod playera IRQ został zoptymalizowany: zużycie CPU spadło o około 20%.

      Nowy układ interfejsu:
      Edytor patternów zajmuje teraz pełną wysokość ekranu po lewej stronie. Ustawienia trafiły do menu i są zapisywane lokalnie jako preferencje użytkownika, a nie wewnątrz pliku z utworem.

      Inne zmiany:
      Palety kolorów komórek – możesz niezależnie kolorować kolumny nut, instrumentów i głośności. Dostępne są 4 wielokolorowe palety (Chromatic, Pastel, Neon, Warm) po 16 kolorów każda oraz palety jednolite (White, Green, Amber, Cyan, Blue, Pink). Nuty otrzymują 12 kolorów chromatycznych, instrumenty używają koloru wynikającego z numeru (mod 16), a głośność jest mapowana na skali 0–15. Konfiguracja w Editor → Settings.

      Ustawienia edytora (tryb hex, follow cursor, oktawa, step, palety) są teraz prywatne – zapisywane lokalnie, a nie w plikach .pvq. Otwarcie czyjegoś projektu nie zmieni Twoich przyzwyczajeń.

      Efekt Sustain w edytorze sampli – zaznacz fragment i zapętl go z funkcją crossfade. Idealne do wydłużania krótkich loopów.

      Konfigurowalny adres startowy ($0800–$3F00). Im niższy, tym więcej miejsca na dane.

      Opcja "Used Samples" – funkcje CONVERT/OPTIMIZE pomijają instrumenty, które nie są użyte w utworze.

      Eksport instrumentów z edytora sampli – zawsze do WAV, a dodatkowo do FLAC/OGG/MP3, jeśli w systemie dostępny jest ffmpeg.

      Diagnostyka przepełnienia – przy braku miejsca tracker pokaże teraz szczegółowy podział rozmiaru na poszczególne pliki.

      Wskaźnik efektów [E] na liście instrumentów – kliknij, aby otworzyć edytor sampli.

      Postęp CONVERT w czasie rzeczywistym (wcześniej interfejs zamrażał się do końca operacji).

      Poprawki błędów:

      Funkcja OPTIMIZE działała na nieprzetworzonych danych, całkowicie ignorując efekty Sustain/Trim. Przez to 15-sekundowy sampel z sustainem był analizowany jako 0,5 sekundy.

      Błąd "Double-sustain" przy zapisie/odczycie .pvq: import nakładał sustain na audio I jednocześnie zapisywał go w łańcuchu efektów, co powodowało podwójne wydłużenie sampla po ponownym wczytaniu.

      Parametry song.speed i song.volume_control nie były zapisywane w plikach .pvq.

      Otwarcie pliku .pvq nadpisywało lokalne ustawienia trybu hex, follow, oktawy i kroku danymi z projektu. Teraz preferencje pozostają bez zmian.

      Konfikt rejestru cienia bankowania z PORTB podczas ciepłego restartu (warm reset).

      Pełny changelog znajduje się w paczce z programem.

      To wciąż wersja beta o charakterze eksperymentalnym. Format projektu .pvq jest już stabilny – utwory zapisane teraz będą działać w przyszłych wersjach. Czekamy na feedback, szczególnie od osób testujących soft na prawdziwym sprzęcie z rozszerzeniem RAM.

      Player nadal korzysta z przybliżonej symulacji układu Pokey. Na liście "to-do" mamy implementację emulacji na poziomie Altirry bezpośrednio w edytorze. Pamiętajcie też, że nie wszystkie właściwości importowanych MOD-ów są zachowane, a sample przy niskim próbkowaniu będą brzmieć inaczej niż na Amidze czy współczesnym PC.
      • 36: CommentAuthortebe
      • CommentTime14 Feb 2026 19:20
       
      Przy okazji wsparcie dodatkowej pamięci stawia pytanie – czy potrzebujemy tak złożonego playera jak obecnie, czy może lepiej przejść na streaming skompresowanego strumienia LZSS/LZSA?

      w RMT obecnie bardzo popularne, bo muzycy z czułością uszu nietoperza słyszą różnicę kiedy standardowy player wprowadza opóźnienia

      Mamy obsługę przechowywania sampli w przełączanych bankach.

      czy takie przełączanie banków nie kosztuje zbyt dużo mocy CPU? jeśli nie ma REPT-a to jest w sumie prościej niż w prawilnym playerze MOD-ów

      w playerach MOD-ów sample były ograniczone do 16K z myślą o umieszczeniu na końcu banku $7FFF, test końca sampla odbywa się wtedy przez BPL, BMI na starszym bajcie adresu
      • 37: CommentAuthorilmenit
      • CommentTime14 Feb 2026 20:04
       
      Zastanawiałem się nad tym, ale po testach wielu MODów z ->link<- zobaczyłem, że wiele sampli ma nad 16KB. Dodatkowo takie przełączanie jest tańsze niż wsparcie zapętlenia w samplach, a zwykle wystarczy unroll x3-x4 a wtedy sample już na 100% idzie nad bank.
      • 38: CommentAuthortebe
      • CommentTime14 Feb 2026 22:35
       
      chyba powinien być test dostępności odpowiedniej liczby banków pamięci, bo ładuje do pamięci 600K mimo dostępnych 320k
      • 39: CommentAuthorilmenit
      • CommentTime15 Feb 2026 06:43
       
      Poprawię, ale wciąż się zastanawiam, czy to "gra warta świeczki". Zamiast bawić się w skomplikowaną implementację trackera, przy pamięci rozszerzonej lepiej wyeksportować WAV z OpenMPT i grać dekompresując go w locie na rejetry Pokeya, jak to robi teraz RMT. Muzycy będą zadowoleni, że jakość lepsza. Mogą używać dowolnego trackera, a nie tylko trackera - tak można grać dowlny kawałek muzyczny.
      • 40: CommentAuthorilmenit
      • CommentTime16 Feb 2026 16:58 zmieniony
       
      "no i fajnie że znowu koder określa ile ma miec dany utwór..a juz miałem wstać i zrobic jakiegoś moduła... a dlaczego nie na 1 MB sie pytam ?..koderzy do piekła..AI po was idzie !"
      " to może jeszcze jakis export do jednej "ścieżki" szalony pomysł ale może by sie dało ?? no ale na 1Mb to bedzie petarda!Tank ju!!"


      Sprawdziłem i zastanawiam się, czy naprawdę warto kontynuować pracę nad tym projektem, jeżeli użytkownicy wymagają obsługi pamięci rozszerzonej, zamiast playera na stock Atari. Dlaczego?

      Przy pamięci rozszerzonej, takiej jak 1 MB (albo 320KB z mniejszym playback rate), nie potrzebujemy dedykowanego trackera dla Atari. Możemy pisać bezpośrednio do rejestrów POKEY ze skompresowanego strumienia. Oznacza to, że nie potrzebujemy żadnego nowego trackera muzycznego – użytkownicy mogą korzystać z czegokolwiek, co generuje pliki mp3 lub wav (OpenMPT, FL Studio, Ableton, a nawet muzyka pobrana z YouTube).

      Zmontowałem prosty konwerter, który przyjmuje jako dane wejściowe formaty WAV, MP3, FLAC, OGG/Vorbis, AIFF lub formaty trackerowe (MOD, XM, S3M, IT), o ile zainstalowany jest ffmpeg (lub dostępny .exe w folderze projektu):
      ->link<-

      Oferuje odtwarzanie muzyki bezpośrednio z banków pamięci w formacie RAW, z bezstratną kompresją LZ lub kompresją VQ (Vector Quantization). Można by to dalej rozbudować o odtwarzanie oddzielnych ścieżek na osobnych kanałach (OpenMPT lub inne trackery potrafią generować pliki wav dla każdego kanału z osobna), ale myślę, że na ten moment moja praca nad tworzeniem muzyki i dźwięku jest zakończona i czas przejść do innych projektów (po poprawie obsługi banków pamięci).
      • 41: CommentAuthortebe
      • CommentTime16 Feb 2026 17:24
       
      w folderze projektu 'pokey-stream-player' nie ma żadnego exe-ka, oprócz plików LICENSE i README.md
      • 42: CommentAuthorilmenit
      • CommentTime16 Feb 2026 18:13 zmieniony
       
      ah, sorry, zapomniałem zrobić pusza po komicie. Już jest.
      • 43: CommentAuthortebe
      • CommentTime16 Feb 2026 19:10 zmieniony
       
      w dobie cartów 4MB ograniczanie zapisu do 1MB może być ograniczeniem

      testowałem kompresję BADAPPLE (7MB), wyszło 1.7MB ale zapisał tylko 1MB

      w końcy są Rapidusy, niebawem Antonie, może pozwolić na więcej z komunikatem odpowiednim

      p.s.
      dlaczego nie można mieć pliku ASM i XEX jednocześnie ?
      • 44: CommentAuthorpajero
      • CommentTime16 Feb 2026 19:18 zmieniony
       
      16MB albo na Marii 32MB

      Inne: w pliku project.json kolejne patterny mogły by mieć zaszyte swoje numery, rozumiem, że kolejnemu oddawany jest następny numer ?

      {
      "patterns": [
      29,
      30,
      49,
      50
      ],
      "speed": 5
      }
      ],
      "patterns": [
      {
      "length": 64,
      "rows": TU BRAKUJE NR [ - czyli to pattern nr 0 itd ?????????
      {
      "n": 25,
      "i": 2,
      "v": 15
      },
      • 45: CommentAuthorilmenit
      • CommentTime16 Feb 2026 20:00 zmieniony
       
      @tebe - jak zrobić w MADS najlepiej wczytywanie .xex do banków z detekcją poprawnie gdzie wczytać, pod i ponad 1MB?
      Razem .xex i asm - nie ma, bo to robione "na szybko". Ja nawet nie wiem, że są rozszerzenia nad 1MB ;) Jak to się ustawia potem przez PORTB?
      Jest jakiś "standardowy kod" jak pracować poprawnie z tymi wszystkim współczesnymi cudami? Mono kiedyś pisał o ile pamiętam, że nie ma, bo rozszerzenia nie są ze sobą kompatybilne i jak się zrobi kod dla jednego, to nie działa na innym, ale może ktoś już to rozwiązał i są jakieś przykłady jak to robić "prawilnie"?
      Btw, ustaw kompresję straną na "vq" (domyślna jest bezstratna lz) - powinno się zmieścić do 1MB. Vector size możesz dać na 4, to kompresja 4:1, czyli powinno wejść a ma dość dobrą jakość. Jak nie, to może być domyślny vector size 8 (czyli kompresja 8:1), albo zmniejsz Rate z default 8000KHz.

      @pajero - tak, rows to kolejne wiersze, liczone od 0.
      16MB? 32MB? Tam już można by wrzucać całe utwory w RAW, albo spakowaną połówkę Audio CD.
      • 46: CommentAuthortebe
      • CommentTime16 Feb 2026 21:52
       
      Obsługa rozszerzenia pamięci RAM

      ->link<-
      • 47:
         
        CommentAuthorjhusak
      • CommentTime16 Feb 2026 22:48 zmieniony
       
      Ach, czekam na siłę, aby to przetestować... Niestety ostatnio dopadła mnie praca i ni ma czasu panie, ni ma czasu. Ajak jest czas to nie ma siły.
      • 48: CommentAuthorsolo/ng
      • CommentTime16 Feb 2026 23:06 zmieniony
       
      "16MB albo na Marii 32MB"

      ja juz mam to w glowie zapelnione na full (co ciekawe, nie dzwiękiem kek) ;-)

      @ilmenit
      pchaj projekt wg. swojego flow z ew. malym feedbackiem i juz:]
      bo zapodam pytanie co z obsluga covoxa!; )
      • 49: CommentAuthortebe
      • CommentTime17 Feb 2026 00:04
       
      odwróć "kota ogonem" i przejdź na sample 256 bajtowe i stwórz nowego Soft Synth-a
      • 50:
         
        CommentAuthorpirx
      • CommentTime17 Feb 2026 03:15
       
      to by była petarda jakby był obraz i trochę wolnego procka na jakiś kursor do gierek logicznych