1 Ostatnio edytowany przez mkm (2019-03-18 13:43:35)

Chcę podpiąć muzyczkę w rmt pod mój kod i znowu się trochę pogubiłem;)
Analizuje przykład _rmt_player_demo.asm ze przykladów Mads i mam pare wątpliwości.

Rozumiem, że muszę zaincludować rmt_relocator.mac, rmt_player.a65, music.feat. Odpalic makro relokatora podając plik z muzyczką. Ustawić wymienione stałe konfiguracyjne, odpalić init... no i właśnie w tym przykładzie play (jsr RASTERMUSICTRACKER+3) jest odpalane w pętli głównej a intuicja mi mowi ze pewnie takie wywolanie powinno byc raczej w vbl, nie? (tak przynajmniej bylo gdy kodowalem na ST i Falcona).

Czy adres w MODUL    equ $1000 musi taki być czy można/trzba go zmienić?
Czy player nakłada jakieś ograniczenia na mój kod?

Maciek
--------
Atari 65XE + Ultimate 1MB + Stereo + SIO2SD | Atari 520STE + 4MB + UltraSatan | Atari Falcon 030 + CT60e + 14MB ST + 256MB TT + 68882  + CF + Netusbee | Amiga 500 + 1MB + Gotek | Amiga 600 + 2MB Chip + 8MB Fast + CF

2

1. zapisujesz muzykę w trackerze rmt z odpowiednim adresem wywolania
2. kopiujesz dane dla playera z okna trackera rmt i wklejasz do pliku rmt_feat
3. ustawiasz w playerze adresy dla zmiennych na stronie zerowej, adres playera (z dokladnoscia co do strony) ustawiasz adres muzyczki i dolaczasz muzyczke
4. w swoim programie najpierw wywolujesz jsr rastermusictracker z adresem muzyczki i numerem patternu a potem raz na ramke,(lub kilka razy, w zaleznosci ile razy na ramke gra muzyczka) wywolujesz procedure jsr rastermusictracker+3

3

ad.1 rmt_relocator.mac  załatwia sprawę adresu wywołania, nie trzeba używać RMT do tego celu

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

4 Ostatnio edytowany przez mkm (2019-03-18 16:05:09)

Dzięki! Wydaje się działać:) Kolejny krok dla mnie do przodu hehe.

Co do strony zerowej to miałes gorgh na myśli:

;* RMT ZeroPage addresses
    org 203
p_tis
p_instrstable    org *+2
p_trackslbstable    org *+2
p_trackshbstable    org *+2
p_song            org *+2
ns                org *+2
nr                org *+2
nt                org *+2
reg1            org *+1
reg2            org *+1
reg3            org *+1
tmp                org *+1

Rozumiem, że nie muszę tego zmieniać jeśli pasuje mi by mieć te adresy od 203 w góre dla playera. W załaczniku mój przykład - może się komuś przyda (gdybyście zauważyli że robię coś głupiego to krzyczcie bym nie szerzył złych praktym jakiś przez niewiedzę hehe)

Post's attachments

msx_test.asm 1.7 kb, liczba pobrań: 3 (od 2019-03-18) 

Tylko zalogowani mogą pobierać załączniki.
Maciek
--------
Atari 65XE + Ultimate 1MB + Stereo + SIO2SD | Atari 520STE + 4MB + UltraSatan | Atari Falcon 030 + CT60e + 14MB ST + 256MB TT + 68882  + CF + Netusbee | Amiga 500 + 1MB + Gotek | Amiga 600 + 2MB Chip + 8MB Fast + CF