kategoria: AMOS
[#1] synchronizacja?
takie pytanie. zalozmy ze leci sobie jakis skroll czy cokolwiek innego z muzyka w tle. jak zrobic, aby w pewnym momencie, zalozmy przy zmiania tempa czy uderzeniu werbla cos sie wydarzylo, dajmy na to blysnal ekran czy cos sie pojawilo dodatkowego na ekrani. moze bardziej obrazowo, na przykladzie dem. dajmy na to ze obracam jakis obiekt w petli i chcialbym zeby ekran blyskal co jakis czas w momentach, ktore wybiore
nie wiem czy wyrazam sie jasno...
[#2] Re: synchronizacja?

@aszu, post #1

Najprostszy sposob to uzyc VBI jako licznika i co okreslona/potrzebna wartosc wywolywac efekt jaki sie chce. Druga opcja jest zmodyfikowanie playera, tak zeby np. do zmiany tempa muzyki, dodac kod, ktory ustawia flage, ktora jest sprawdzana przez np VBI. Ja uzywalem pierwszej opcji, bo mniej roboty.
[#3] Re: synchronizacja?

@aszu, post #1

ja w swoim pierwszym demku zrobiłem podobnie jak opsiuje kolega w poście wyżej.
tzn w przerwaniu mam zmienną timeLine którą co przerwanie (1/50 sekundy) zwiększam o 1.
w pętli głównej dema sprawdzam określone wartości tej zmiennej. np 2 sekunda trwania dema to wartość 100, itd.... wtedy reaguje np zmianą copperlisty, albo właśnie błyśnięciem ekranu.

[edit]
wątek widzę że jest o amosie a ja demko robiłem z asm, ale wydaje mi się że powinno się w amosie zrobić obsługę przerwań IRQ, albo coś na ich kształt.

Ostatnia aktualizacja: 17.12.2015 11:30:54 przez retronav
[#4] Re: synchronizacja?

@retronav, post #3

Można też w samym module (jeśli to .MOD) użyć komendy, która jest transparentna dla playera, np. 8xy. I potem parsując ją w kodzie przypisywać różne akcje wystąpieniom różnych wartości.

A przynajmniej wydaje mi się, że tam można ;)
W paru modułach widziałem taki patent.
[#5] Re: synchronizacja?

@AceMan, post #4

spodziewam się że tak moze być, tylko pojawia się pytanie programistyczne, a mianowicie jak to "parsować" / wyłapywać?
czy są jakieś "hook'i" albo inne handlery do takich komend?
nie wyobrażam sobię samodzielne pianie analizatora składni .mod'a
[#6] Re: synchronizacja?

@retronav, post #5

Ja zawsze wyobrażałem sobie to w ten sposób, że używa się efektu Protrackera by uzyskać synchronizację. Potrzeba tylko lekko zmodyfikować kod replayera (dodać obsługę tegoż efektu np. w postaci ustawiania zmiennej globalnej) i go zasemblować. Źródłówki do replayera są w archiwum z Protrackerem.
[#7] Re: synchronizacja?

@retronav, post #3

dzieki wszystkim za pomoc. domyslalem sie, ze w asmie robi sie takie rzeczy na przerwaniach a co do amosa to nie do konca wiedzialem czy dziala to tak samo. czy ktos z amosowych specjalistow moze mi podpowiedziec jak to zrobic w amosie? dajmy na to ze mam animacje jakas w petli do loop, jakiej koemndy uzywalbym i w ktorym miejscu ja umiescic? na poczatku petli?
[#8] Re: synchronizacja?

@aszu, post #1

Może ci się przydać amosowa funkcja TIMER.Podaje ona czas jaki upłynął od włączenia komputera lub od wyzerowania tej funkcji.Czas jest obliczany co 1/50 sekundy.zatem TIMER=500 równa się 10 sekundom.Stąd już krok do zaprogramowania efektów za pomocą IF THEN ELSE.

Lub też możesz użyć komendy VUMETER(x).Funkcja podaje wartość natężenia dźwięku w zadanym kanale.Gdzie X jest kanałem w zakresie od 0 do 3.

Ostatnia aktualizacja: 17.12.2015 17:05:15 przez Stoopi

Ostatnia aktualizacja: 17.12.2015 17:09:14 przez Stoopi
[#9] Re: synchronizacja?

@Stoopi, post #8

dzieki bardzo. bede kombinowal
[#10] Re: synchronizacja?

@aszu, post #7

Zainteresuj się procedurą every. Co do synchronizacji z instrumentami trzeba wspomóc się dodatkowym rozszerzeniem np. p61. Wtedy jest dostępna funkcja p61signal, która zwraca wartość x z E8x. No i zyskujesz kompatybilność z protrackerem.
[#11] Re: synchronizacja?

@cholok, post #10

Co do synchronizacji z instrumentami trzeba wspomóc się dodatkowym rozszerzeniem np. p61. Wtedy jest dostępna funkcja p61signal, która zwraca wartość x z E8x. No i zyskujesz kompatybilność z protrackerem.


O to to to.
[#12] Re: synchronizacja?

@AceMan, post #11

o to to to ....

@Aceman
Ty się naucz tego używać bo sie nam przyda do następnego demka ;)
jeśli to jest zwykła procedura grajka P61 to ja chyba będę umiał to używać szeroki uśmiech
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem