atarionline.pl
atarionline.pl Atari
Login:
Hasło:
Zapamiętaj mnie
Translate to RSS RSS
Przeglądarka plików P z 2025-06-06 23:50 (13)
Pan Malarz ATASCII z 2025-06-05 11:07 (12)
Narodowe Muzeum Techniki z 2025-05-31 02:41 (14)
Nowa gra "Super Star Trek" z 2025-05-20 08:26 (23)
Nowe starocia w Bibliotece Atarowca z 2025-05-15 15:17 (5)
Autorzy się spowiadają! z 2025-05-11 17:08 (6)
Światowa premiera gry "Luckyman" z 2025-05-09 21:29 (4)
Spotkanie z autorem gry "Luckyman" z 2025-05-07 18:13 (8)
Trzy tygodnie w raju z Januszem Dąbrowskim! z 2025-05-05 19:14 (29)
Grawitacja 2025 – wyniki i filmiki z 2025-04-30 09:08 (10)
Narodziny! z 2025-04-20 12:46 (13)
Projekt emulatora Apple II z 2025-04-12 00:08 (16)
Obudowa monitora XL z 2025-04-04 13:28 (16)
Sztuka opowieści w grach RPG na Atari z 2025-04-02 13:41 (3)
Zamiana klawiatur Atari - C64! z 2025-04-01 14:37 (18)
K.W.A.S. #36 w Krakowie! z 2025-03-23 22:31 (14)
BIT BOAT - Festiwal Gier Dawnych i Niezależnych z 2025-03-20 09:10 (3)
Monitor XCL10 z 2025-02-23 19:13 (39)
Ogłoszenie wyników FujiCup i Atari Homebrew Awards z 2025-02-22 11:47 (4)
Głosowanie na najlepsze gry w konkursie FujiCup 2024 z 2025-02-19 21:33 (5)
«« nowszestarsze »»

Pomocnik/Helper
Gry/Games

Katalog gier (konwencja Kaz)
Aktualizacja: 2025-06-05
Liczba katalogów: 8657, liczba plików: 38823
Zmian katalogów: 6, zmian plików: 18

0-9 A B C D
E F G H I
J K L M N
O P Q R S
T U V W X
Y Z inne
zipCałość 2990 MB

Katalog gier (konwencja TOSEC)
Aktualizacja: 2021-07-11

Opisy gier
"Old Towers" (Atari ST) opisał Misza (19)
Submarine Commander opisał Kaz (36)
Frogs opisał Xeen (0)
Choplifter! opisał Urborg (0)
Joust opisał Urborg (16)
Commando opisał Urborg (35)
Mario Bros opisał Urborg (13)
Xenophobe opisał Urborg (36)
Robbo Forever opisał tbxx (16)
Kolony 2106 opisał tbxx (3)
Archon II: Adept opisał Urborg/TDC (9)
Spitfire Ace/Hellcat Ace opisał Farscape (8)
Wyspa opisał Kaz (9)
Archon opisał Urborg/TDC (16)
The Last Starfighter opisał TDC (30)
Dwie Wieże opisał Muffy (19)
Basil The Great Mouse Detective opisał Charlie Cherry (125)
Inny Świat opisał Charlie Cherry (17)
Inspektor opisał Charlie Cherry (19)
Grand Prix Simulator opisał Charlie Cherry (16)
«« nowszestarsze »»

Wewnętrzne/Internals



   Nowinki tworzone dzięki CuteNews
SFX-Engine w MAD Pascalu
Chciałem się z Wami podzielić krótkim samouczkiem nt. Jak skorzystać z SFX-Engine w MAD Pascalu.
Mam nadzieję, że okaże się pomocny w początkach z tym silnikiem.

Zacznijmy więc



  • Wejdź na stronę repozytorium SFX-Engine i ściągnij plik ZIP, klikając w przycisk CODE a później Download ZIP (jak na poniższym obrazku)


  • Paczkę rozpakuj, gdzieś na swoim dysku.

  • Katalog `sfx_engine` należy skopiować do katalogu swojego projektu.

    Przykładowa struktura katalogu projektu, może wyglądać tak:
    + /Projekt
    |
    +- /sfx_engine
    | | sfx_engine.conf.inc
    |
    +- /music
    | | {pliki wygenerowane przez smm-conv}
    |
    +-- main.pas


  • W głównym pliku programu `main.pas` zadeklaruj ścieżkę dostępu do biblioteki `sfx_engine` i `music` oraz utwórz deklarację biblioteki w sekcji `uses`, np.

    {$librarypath './sfx_engine/'}
    {$librarypath './music/'}

    uses SFX_API, atari;

  • Plik `sfx_engine.conf.inc` należy skasować smile, gdyż będzie wykorzystany plik, wygenerowany przez program `smm-conv`


Wykorzystanie programu `smm-conv`


  • Przed użyciem, należy skompilować program, ale z racji świąt, mam dla Was mały prezent.

  • Skopiuj ściągnięty plik do katalogu `/music`

  • Załóżmy, że nasz plik z muzyką nazywa się `music.smm` i jest on umieszczony w katalogu `/music` projektu.

  • Uruchom `cmd.exe` i przejdź do katalogu `/music` projektu

  • W linii komend wpisz:
    smm-conv music.smm music.asm -reduce:all -reindex:all
    -MC -MR -Ao:0x7000 -Aa:0

    Znaczenie parametrów:
    • `music.smm` - nazwa pliku źródłowego (nasza muzyczka)
    • `music.asm` - nazwa pliku wyjściowego - dane w assemblerze
    • '-reduce:all` - wyłącza z pliku wyjściowego nieużywane definicje SFXów oraz TABów (opcja `all`)
    • `-reindex:all` - układa kolejno indeksy definicji SFXów oraz TABów
    • `-MC` - generuje plik konfiguracyjny dla SFX_API `sfx_engine.conf.inc`
    • `-MR` - generuje plik z definicją zasobów dla MAD Pascala `resource.rc`
    • `-Ao:0x7000` - określa adres dla generowanych danych w assemblerze
    • `-Aa:0` - powoduje wyłączenie buforowania audio (rejestrów **POKEY**) w pliku konfiguracyjnym `sfx_engine.conf.inc`

    Po więcej szczegółów nt. konwertera odsyłam do pliku README.md programu SMM-CONV.

  • Uruchomienie powyższej komendy, spowoduje wygenerowanie następujących plików w katalogu `/music`
    +- /music
    | music.asm
    | resource.rc
    | sfx_engine.conf.inc

  • WAŻNE Należy dodać ścieżkę w wygenerowanym pliku `music/resource.rc`, gdyż kompilator MAD Pascal odwołuje się względem położenia pliku głównego `main.pas`, nie zaś położenia pliku zasobu który jest dodany do programu.
    SFX_ORG rcasm 'music/music.asm';

  • W pliku głównym projektu dodać należy jeszcze wczytanie pliku zasobu muzyki.
    {$librarypath './sfx_engine/'}
    {$librarypath './music/'}

    uses SFX_API, atari;

    {$r "music/resource.rc"}

  • UWAGA! W przypadku rozdzielenia danych za pomocą przełącznika `-Ad:` (w konwerterze `smm-conv`) należy, wczytanie pliku zasobu `{$r "music/resource.rc"}` umieścić na samym początku programu, przed wywołaniem innych zasobów.

  • W programie głównym `main.pas` dodaj jeszcze następujące linie:

    Begin
    SFX_StartVBL();
    SFX_PlaySong(0);
    repeat until ch<>255; ch:=255;
    SFX_End();
    End.

    • `SFX_StartVBL` inicjuje silnik SFX, podpinając go pod przerwanie VBLANK
    • `SFX_PlaySong(0)` uruchamia odtwarzanie muzyczki od wiersza 0
    • `SFX_End()` kończy działanie silnika SFX

  • Skompiluj plik `main.pas` - jak to zrobić najwygodniej? Odsyłam do dokumentu Bocianu MAD Pascal i Geany

  • Uruchom XEXa w swoim ulubionym emulatorze lub na prawdziwym komputerze




I to tyle - można się cieszyć muzyką z programu SFX Music Maker (aka SFX-Tracker) w swoim projekcie :)

Powyższy przykład w całości znajduje się na GitHubie

2021-12-24 11:20 by PeBe
komentarzy: 1
Kaz @2021-12-24 14:34:11
O! Niezłe. Tego brakowało dla nieobeznanych z tematem. Dzięki Paweł.
nickname
e-mail / website (opcjonalnie)

Aktualne tematy
Nowy cartridge - SubCart (13)
ostatni: 16-06-2025 10:33, Peri Noid
Silly Venture 2025SE - 25-lecie i... (73)
ostatni: 16-06-2025 02:53, wieczor
Pytanie o goscia z L.K. Avalon (8)
ostatni: 16-06-2025 00:39, CORIelectroni
Szukam gry (53)
ostatni: 15-06-2025 22:53, CORIelectroni
Space Harrier na SIDE3 (74)
ostatni: 15-06-2025 22:18, CharlieChaplin
Greaseweazle ;) (2)
ostatni: 15-06-2025 20:55, iSiek
Emulatorowanie przenośne. (160)
ostatni: 15-06-2025 09:27, Wolfen
Gry w GR 7. (43)
ostatni: 14-06-2025 21:59, Adam
Zasilanie starych urządzeń. (1)
ostatni: 14-06-2025 17:31, jhusak
Najmniejsze na świecie Atari 8-bi... (191)
ostatni: 14-06-2025 00:53, thewasp
Time Wizard - gra na ABBUC Softwa... (343)
ostatni: 13-06-2025 22:01, amarok
Pojedynek szachowy Atari 2600 vs ... (5)
ostatni: 13-06-2025 18:32, tebe
Nowa gra "Wee Ninja" (22)
ostatni: 13-06-2025 17:01, gienekp
Doom na lampce i nie tylko (13)
ostatni: 13-06-2025 07:21, gienekp
Komptometr w PTODT (4)
ostatni: 12-06-2025 21:15, Peri Noid

Kategorie Forum Atarum

Administratorzy: Adam, Cyprian, Jhusak, Kaz
Użytkowników: 2928
Ostatnio zarejestrowany: SophieGr2CamerongD@y
Postów ostatniej doby: 14

Spotkania i zloty/Meetings & Parties

Najbliższe imprezy
link do naszych spotkań online, zapraszamy do odwiedzenia kanału zoom również przez kod QR:

KWAS

Kalendarz AOL


Społeczność/Community


Rozmawiali
Wywiad z Mariuszem Jaroszem i Kaz (14)
Wywiad Dracona z Mr. Bacardim i Kaz (16)
Tomasz Dajczak i Kaz (22)
Lech Bąk i "Świat Młodych" i Kaz (26)
Michał "Mike" Jaskuła i Kaz (30)
F#READY i Dracon (22)
Daniel „Arctus” Kowalski i Dracon (25)
KATOD i TDC (15)
Mariusz Wojcieszek i "Adam" (17)
Romuald Bacza i Ramos (16)
Śledzenie Amentesa i Larek (9)
Leszek Łuciów i Charlie Cherry (17)
TO JUŻ ZA TOBĄ: rozmowa z Bobem Pape i cpt. Misumaru Tenchi (39)
Rob Jaeger i Emu (53)
Jacek "Tabu" Grad i Dracon (0)
Alexander "Koma" Schön i Kaz (0)
Maciej Ślifirczyk i Charlie Cherry (0)
Jarek "Odyniec1" Wyszyński i Kaz (0)
Marek Bojarski i Kaz (0)
Olgierd Niemyjski i Ramos (0)
«« nowszestarsze »»

Stragan
Nowe, pojemniejsze RAM-Carty oferuje Kaz (21)
"mouSTer" czyli myszka ST oferuje Kaz (30)
Atari USBJoy Adapter oferuje Jakub Husak (0)
Programy: Kolony 2106 oferuje Kaz (7)
Sprzęt: rozszerzenia oferuje Lotharek (239)
Gadżety: naklejki, pocztówki oferuje Sikor (11)
Sprzęt: cartridge RAM-CART oferuje Zenon (7)
Miejsce na drobne ogłoszenia kupna/sprzedaży oferuje Kaz (58)
Sprzęt: interfejs SIO2IDE oferuje Piguła (0)
Sprzęt: interfejs SIO2SD oferuje Piguła (73)

Użytki/Utils
Sprzęt/Hardware

Wynalazki
Podwójna pamięć na cartridgu napisał Zenon (7)
Zmiana barw i klawiszy napisał Kaczor (21)
Odtwarzacz MP3 jako magnetofon Atari napisał Zaxon (23)
ArTARI napisał Larek (10)
SIO2SD 1010 napisał Lotharek (10)
Atari 2600 w telewizorze napisał Kaz (9)
Sam zrobiłem wtyczkę SIO napisał Szary (14)
SIOki w praktyce napisał Sikor (12)
Obudowy SIO2SD napisał Kaz (14)
Moje SIO2SD napisał Rocky (8)
Atari, LCD i tuner TV napisał Rocky (14)
Atari Allacha napisał Nosty (14)
Electron wymiata! napisał Kaz (7)
Atari w joysticku napisał Kaz (13)
«« nowszestarsze »»