Oznámení
Sbalit
Aktuálně žádná oznámení.
Assembler - všeobecná logika
Sbalit
X
-
Vidím, že od tvých začátků hraní si v Pythonu jsi už celkem hodně někde jinde
- Poděkování 3
-
Vcera jsem doplnil efekt volume slide do dalsich 3 hudebnich kanalu. Ale primarne mam radost, ze se mi povedlo si uvolnit kompletne 1 adresovy reistr a to A4, ktery pouziju pro funkci cyklovani hrajiciho samplu, pokud se bude opakovat jen jeho mensi část.
Pro uvolneni registru A4 jsem pridal casovac pro to, ktery pattern se hraje. K adrese s potrebnymi daty je celkem snadny pristup a zaroven se s casovacem pro pattern pracuje v nizke frekvenci v ramci kodu. Na casovac jsem si vyhradil predposledni bajt v registru D4. V poslednim bajtu mam casovac pro odhrání 1 patternu (64 radku v trackeru) a v nejnizsich 2 bajtech mam casovac pro zpracovani konkretnich kanalů v kodu pomoci ktereho delam skoky na kod pro konkretni hudebni kanal, tedy zpracovava se vzdy pouze 1 kanal ze 4 v jedne programove smyčce a jsou v nem hodnoty 0 nebo 4,8 a 12.
Popsana cast kodu pro praci, ktery pattern V MODu se bude hrat jako dalsi, kdyz dohraje prave hrajici pattern.
V kodu mam v A1 pointer na prave hrajici MOD, ten si davam do pracoviho adresare A0 (pak mam pracovni adrsare jeste D0 a D1). Na 952. bajtu je prvni bajt ze 128 s informaci, kterym cislem patternu se zacina skladba hrat, pripocti k A0. Obsah vyse popsane D4 davam do pracovniho adresare D0. Swapem davam casovac pro hrajici pattern do nejnizsiho bajtu. AND je jedinou instrukci z upravy na kterou jsem zapomel a pak pridal. Vyssi bajt ze 2 bajtu musim nulovat, protoze ADD musi byt v rozsahu nejmene 2 bajtu (puvodne jsem pouzil rozsah 1 bajtu a po chybe pridal AND pred instrukci ADD). Nuluji D0. Cislo hrajiciho patternu do D0 pomoci (a0)+, a pokud se nehraje prave posledni pattern (nepresunul jsem 1 bajt o odnote 00 hexa), skoc na navesti songPosition. Navis casovac pro cislo hrajiciho patternu o 1 (vse potrebne jiz mame v D0 tedy muzeme). Delka 1 patternu ma 1024 bajtu. Vynasob cislo hrajicih patternu cislem 1024. Ale jeste 1 věc. Uplne prvni pattern nam v MODu hraje na 1084 bajtu. Pripocti k D0 jeste 1084 bajtu a v D0 mame prave spranou pozici hrajiciho patternu. Z adresy na A2 ctu data z patternu. Dej adresu zacatku hrajiciho modu z A1 do A2. Pripocti spravnou pozici nově hrajiciho patternu do A2 a jdeme na nove hrajici uplne prvni radek spravneho patternu
Po radku v kodu "bne songPosition":
Jdeme hrat skladbu MODu od začátku. Vynuluj bajt s casovacem pro cislo hrajiciho patternu. Dej do pomocneho registru A0 zacatek hraji skladby MODu. Pripocti 952 bajtu pro spravnou pozici informace, ktery pattern se hraje v MODu jako uplne prvni (nemusi to byt vzdy prvni pattern). Cislo hrajiciho patternu dej do pomocneho registru D0. Adresu pro stopovani hrajicich samplu v patternech vrat na zacatek (tohle jsem si pridal já). A pokracuje se dal v jiz popsanem kodu
- Poděkování 1
Vložit komentář:
-
Jen taková drobnost,
předpříprava pro praci s hlasitosti a zadani primych skoku i kdyz vyuziju minimum z tech moznych efektu a i to nebudou efekty zpracovány na takove urovni jakou ma nejaky tracker i tak prime skoky vuci stylu nudloveho kodu vnimam jako lepsi alternativu. Lepe jsem zpracoval praci s tempem, kdy jiz jsou pro tempo zpracovany data k tomu opravdu urcene. (nezpracovani v nejnizsim bajtu stavu F1 az FFh a i 00 jsem odchytil co ma jinou funkci ktera dosti mozna jen tak v MODu pouzita nebude a s tempem nema nic spolecneho, riskovat to nebudu a ten 1 BEQ (prT0) navic čert vem
Takový vtipný moment, kdyz jsem tam nemel k tem nevyuzitym navestim ty RTSka a mne to hralo blbě. Jsem si rikal, zkusim je tam radši dát...
EDIT:
Práce s hlasitostí dokončena. Čekalo mně 1 překvapení, kdy jsem v závěru v programu neměl chybu, ale prace s hlasitosti byla v jeji urovni vyrazne snizena. Po tom, co jsem dal do 1 hudebniho kanalu rucně a ne z MODu maximalni hlasitost hral kanal maximalni hlasitosti, pak jsem dopsany kod dal do poznamky a jiz mi zacala hrat spravna uroven hlasitosti i z MODu. To je ten případ ...a zkoušeli jste to vypnout a zapnout?
Jak bude cas pridam zacyklovani hrajiciho samplu v miste jinem nez je jeho zacatek a efekt volume slide, ktery ja osobne povazuji za nejzasadnejsi, pokud se nebudeme bavit o chiptune hudbe.
EDIT2 (12.listopad):
Zpracoval jsem prednastaveny parametr pro jemne doladeni tonu samplu (finetune), pro MOD je to v rozsahu -8 až +7.
Začal jsem se v tom štourat, až jsem to nakonec aplikoval
Nejvtipnější na tom byly rozcházející se hodnoty pro odečet od periody (výšky tónu), tedy hodnota A až F se zvyšuje a číslo odečtu se snižuje. Pomohla mi negace v bajtu hodnoty A až F a navýšení o 1.
Code:not.b D1 and.b #$0f, D1 addq #1,D1
Code:Offset Bytes Description ------ ----- ----------- 44 1 Lower four bits are the finetune value, stored as a signed four bit number. The upper four bits are not used, and should be set to zero. Value: Finetune: 0 0 1 +1 2 +2 3 +3 4 +4 5 +5 6 +6 7 +7 8 -8 9 -7 A -6 B -5 C -4 D -3 E -2 F -1
Naposledy upravil Lisiak; 12.11.2023, 10:48:44.
- Poděkování 1
Vložit komentář:
-
Dnes jsem dokončil práci s patterny, tedy již hraju skladbu v její celkovych 2 patternech. Z 1 kanalu jiz hraji 2 kanaly (všechny kanaly již naprogramovany jen postupne pridavam, jak se mi to libi v poslechu). V druhem pridanem kanalu se mi ne vzdy nacetl sampl do HW registru, tak jsem klasicky pridal zpomaleni pomoci casovace CIA mezi ukonceni DMA prenosu a nactenim samplu. CIA mam na hodnote zatim 10 hexa. Sample se ted jiz nacitaji zatim vsechny. Toto zpomaleni jsem pridal pro vsechny hudebni kanaly. CIA časovač s 10 hexa jsem dal do podprogramu. Skladba se na jeji konci v hrani vrati na zacatek. Dovolil jsem si zjednodusit tuhle funkci na podminku, kdy neni umozneno pouzit posledni mozny pattern co umoznuje format MOD, ale to je 128.pattern, tak mi to asi nijak nevadi. Jednoduse na te pozici testuji pomoci jiz pouziteho MOVE nulový bajt, který mi oznacuje poslední vyuzity pattern v skladbe.
Jak bude čas, zpracuji praci s hlasitostí, kterou doposud beru jen jako prednastavenou z formatu MOD, ale ne ze samotneho radku patternu.
Naposledy upravil Lisiak; 07.11.2023, 13:56:52.
- Poděkování 2
Vložit komentář:
-
Tak dnes jsem primárně dohledal 1 chybu, kvuli ktere mi MOD nehrál jak mel. Tou chybou bylo o 1 sampl posunute parametre pro delku samplu a prednastavenou hlasitost samplu. Tak jsem nejdříve hodnotu zpracovaneho samplu ponizil o 1 a ted jak jsem si k tomu sedl udeal drobnou upravu, ktera mne hned dodatecne napadla, jen jsem jiz na to nemel cas a to, ze jsem ponizil zaverecny skok na tyhle data. Ten skok se zadavat musi, tedy jsem jen snizil cislo pro dany skok a usetril tak 1 instrukci s odectem 1 o kterou jsem ponižoval hodnotu hrajiciho samplu, ktera je zadana primo v MODu a tedy tuhle hodnotu z programu ponizit jako ten primy skok v programu na data v MODu.
Pridal jsem v kodu data pro ztlumovani samplu a s kazdym radkem patternu z MODu se nacita i 1 bajt primo z programu ktery říká, jestli se ma nejaky sampl ztlumit aby nehrál. Tedy na 1 pattern pripada 64 bajtů. Tohle reseni je mozne jen kdyz vite, ktere skladby chcete hrat. Takhle se da jednoduse samotny format MODu rozsirovat o nejake dodatecne funkce, ale to ted nemam v planu a to ztlumovani samplu je nutnosti a zatim jednoduche a ucelne reseni. V tehle jednoduche skladbe je treba v 1 hudebnim kanalu v 1 patternu skladajiciho se ze 64 radku ztlumit dodatecne sampl na 2 mistech. Oproti starsi rutine hrajici muj format musim sampl ztlumovat o 1 radek v patternu drive, co znamena, ze tahle hudebni rutina hrajici format MOD je rychlesi, minimalne prozatim, ale i bude rychlejsi.
Ode dneška hraji 1 hudebni kanal v 1 patternu celkem verne (bez efektů), tak mam celkem radost. Ostatní příště
- Poděkování 2
Vložit komentář:
-
dotaz 2:
V odkaze " Bit Manipulation Instruction Execution Times"
Čo je myslené tým rozdelením dynamic a static?
Nejak som toto nedohladal.
Static tady znamená, že je číslo bitu pomocí osmi bitů obsaženo přímo v kódu instrukce (např. btst.l #3,d0).
Dynamic znamená, že je číslo bitu uloženo v operandu (např. btst.l d1,d0).
Kódování bitových instrukcí třeba zde
Naposledy upravil Defor; 31.10.2023, 17:24:48.
- Poděkování 2
Vložit komentář:
-
Autorem citovaného textu je ObiWanKen Přejít na původní příspěvekTak SWAP je isto rychlejsie ako MOVEM. To uz je na tebe ktory sposob si vyberies. Ja si orientacne pozeram cas tu:
https://oldwww.nvg.ntnu.no/amiga/MC6...000timing.HTML
EDIT:
dotaz 1:
V odkaze "Standard Instruction Execution Times"
nerozumiem poznamke:
** The base time of six clock periods is increased to eight
if the effective address mode is register direct or
immediate (effective address time should also be added)
Počet taktov v tabule je teda úplný, alebo sa tam ešte niečo pripočítáva?
dotaz 2:
V odkaze " Bit Manipulation Instruction Execution Times"
Čo je myslené tým rozdelením dynamic a static?
Nejak som toto nedohladal.
Autorem citovaného textu je sailor Přejít na původní příspěvek
řekla bych že je to takto:
- pokud <ea>= register direct, tj. An nebo Dn, místo 6 ticků je to 8, ale effective address time je v tomto případě =0
tj. ADD.L Ax,An ... ADD.L Dx,An .. ADD.L Ax,Dn a ADD.L Dx,Dn bude vždy =8.
- pokud <ea>= register indirect, například (An), je to takto:
ADD.L (Ax),Dn = 8 base + 4 ( délka výpočtu ea (An)) = 12
připočtená hodnota může být 0 až 10, podle té první tabulky - Effective Address Calculation Times
@ALL: Do hudebni rutiny jsem dnes pridal timer pro 1 pattern a zahral jej v zakladu. Jsou to takove useknute tony a sample. Kdyz pridam timer pro rychlost hrani skladby, melo by se to zlepsit, ale nevyresi se uplne vse a premyslim, že soubezne s radky patternu skladby budu spracovavat po 1 bajtu na 1 radek patternu data zvlast jiz v kodu. Bude tam pouze info o tom, kdy ztlumit sampl, pokud ho bude treba ztlumit. Pokud to pak budu mit vyladeny, mohl bych to vlozit primo do MODu, protoze ta informace by byla v casti, kam se zapisuje vyska tonu pro sampl a v ten moment tam budou vzdy same nuly, ale k tomuhle reseni se zatim nechystam.
Zatim mam v programu stale 4 promenne ve 2 datovych registrech, na kazdou promennou 2 bajty, v dalsim datovem registru 4 bajty dat z patternu MODu a 3 adresove registre so stalymi adresami na pattern, sample a dodatocne data k samplům. Pomocne promenne 3 datove a 1 adresovy registr.
Dnes mne vyškolila instrukce DBF, kde jsem predpokladal, ze po opusteni programove smycky mi necha v datovem registry nulu, ale ono nastava opet snizeni, tedy v ramci 2 bajtu tam bude hodnota FFFF hexa, pokud tedy chceme nastavit hodnotu rychlou instrukci ADDQ.w, musí se dát +1 vůči hodnotě kterou chceme nastavitNaposledy upravil Lisiak; 29.10.2023, 16:55:24.
- Poděkování 1
Vložit komentář:
-
Autorem citovaného textu je Defor Přejít na původní příspěvekJen jsem se na to podíval z rychlíku.
Myslím, že používání or.l a and.l na nastavování nebo mazání jednoho bitu v datovém registru je pomalejší než k tomu použít instrukce bset.l a bclr.l.
Tohle je fajn a již používám (použitý zatím BSET). I instrukci BCHG (překlopení bitu) jsem v minulosti programoval a tedy to dělal složitě
@ALL: V rámci programování nové hudební rutiny hrající MODy jsem se drobátko potrápil se správným načtením samplů z MODu, ale přesně tohle jsem předpokládal, že to nedám napoprvé. Nicméně dnes, jak jsem si sedl k programování se to již tváří rozumně a já si dle všeho zahrál první řádek z prvního patternu správně. Zaměřil jsem se teď hlavně na práci se samply a ostatní je poslechově zatím taky ok. Přidal jsem zatím přeci jen 1 datový register jako pomocnou proměnnou. Tedy registre pro pomocnou proměnnou v kódu jsou: D0, D1 a nově ted i D2. Pomocný adresový registr je zatím jeden a to A0.
- Poděkování 1
Vložit komentář:
-
Zatim mam netestovany kod, ale tak nejak bych jiz mel mit zpracovani samplu z MODu ok. Frekvence tonu (periody) taky. Jednotlive pointre na sample mam ulozeny v pameti za sebou, aby jsem k nim mel rychlý pristup. Technicky by mi vice vyhovovalo zpracovavat data z efektů drive nez ze samplu, ale musim nejdrive zpracovat sample, protoze v efektu muze byt zmena hlasitosti samplu a ta se musi zadat az po samotnem samplu kde je taky hodnota hlasitosti, ale prednastavena hodnota hlasitosti a ta bude pouzita, pokud se pri hrani noveho tonu nebude nastavovat hlasitost samplu ze samotneho efektu. A pokud se nebude nastavovat hlasitost z efektu, zustane nastavena hlasitost prednastavena z dat pro sampl. Kdyby jsem to udelal obracene, prepsal by jsem si nastavenou hlasitost z efektu prednastavenou hlasitosti ze samplu co by byla blbost. Tohle dodrzeni spravneho poradi zpracovani dat samplu a efektu mne stalo 1 SWAP (instrukci) navíc, protoze nejdrive potrebuji zpracovat vyssí 2 bajty z Longu (ze 4 bajtů) a pak nižší 2 bajty. Ale zustavam u pomocných promennych na 2 datovych registrech a nemusim načít třetí jak jsem psal ve vlákně o Chaos Guns. Chvili jsem si myslel, ze musim udelat tabulku pro frekvence tonu, ale nemusim, v MODu je vlastne kompletne hodnota cele periody, tak tohle by melo byt taky ok. Jak bude cas, pokusim se to roztocit (bez efektů v MODu) a jsem zvedav, kde vsude jsem nasekal po programove strance nejake hovadiny
První pointr na sampl (misto kde se sampl v MODu nachazi) mi zacina na druhe pozici v pameti (prvni pozice 4 bajtu je na 0), aby jsem v programu usetril 1 instrukci SUBQ.Naposledy upravil Lisiak; 23.10.2023, 16:29:39.
- Poděkování 1
Vložit komentář:
-
Section bss pouze alokuje paměť. Příklad:
Code:section bss MyBuffer ds.b 1000
Section data obsahuje data. Příklad:
Code:section data MyBuffer dc.b 10, 20, 30
Dají se použí i parametry bss_c (alokuje se v chip-ram) a data_c (data se načtou do chip-ram).
- Poděkování 1
Vložit komentář:
-
...zatim muj kod pro cteni MODu vypada takhle, je to vse rozpracovany. Nacteni baze pro 16 bitovy offset casem dam, pokud budu moci, ted to i tak z meho pohledu neni priorita. Data za navestim songs jsou jen pro ukazku, ty budu cist primo z MODu. U souboru je pripona ".S" zmenena na ".txt"
soubor:
playMod3_CDS.txt
vylistovany kod:
Code:;******************************** ;** playMod v1.5 by Lisiak/CDS ** ;******************************** SECTION musicRoutine, CODE_C ;establishing a code section moveq #0,d0 ;register for variables to 0 moveq #3,d2 ;4 music channel moveq #0,d3 ;for a jump of 4 bytes lea numberMod(pc),a0 ;pointer MODs to A0 move.l 0(a0,d0.w),a1 ;pointer playing Mod to A1 move.l a1,a2 ;pointer plaing MOD to A2 add #1084,a2 ;pointer 1.st pattern MOD to A2 move.b #31,d1 lea spmPointers(pc),a3 move.b 950(a1),d0 mulu.w #1024,d0 add.w #1084,d0 move.l d0,(a3)+ ; dbf d1, patternData ;play data from pattern move.l (a2)+,d4 ;channel 0-3, pattern data to D4 bne processCahnnel ;zero data in whole channel? dbf d2,patternData ;yes, process another channel processCahnnel move.w d4,d0 ;lower 4 bits SMP number in D0 rol.w #4,d0 ;lower 4 bits SMP to first 4 bits D0 move.w d4,d1 ;effect command bits in D1 and.w #$0fff,d1 ;only effect command bits in D1 ;in this version without efect command!!! swap d4 ;upper 4 bits SMP number & 12 bits period in- ;-lower 2 bytes D0 move.w d4,d1 ;upper 4 bits SMP number to D1 rol.w #8,d1 ;upper 4 bits SMP to upper 4 bits D1 and.b #$0f,d0 ;only lower 4 bits SMP in lower 4 bits D0 and.b #$f0,d1 ;only upper 4 bits SMP in upper 4 bits D1 or.b d1,d0 ;8 bits SMP number in D0 ; move.b d0,d0 ;zero flag in D0? = no playing SMP? beq processSmpEnd ;yes, skip sample setup = zero flag mulu #30,d0 ;for correct offset of sample number in MOD lea smpChannel(pc),a0 move.l 0(a0,d3.w),a0 jsr (a0) bra processSmpEnd smpCh0 ;channel 0 move.w 42(a1,d0.w),$dff0a4 ;sampleLenght to HW register move.b 45(a1,d0.w),$dff0a9 ;preset sampleVolume to HW register rts smpCh1 move.w 42(a1,d0.w),$dff0b4 ;same for channel 1 move.b 45(a1,d0.w),$dff0b9 rts smpCh2 move.w 42(a1,d0.w),$dff0c4 ;same for channel 2 move.b 45(a1,d0.w),$dff0c9 rts smpCh3 move.w 42(a1,d0.w),$dff0d4 ;same for channel 3 move.b 45(a1,d0.w),$dff0d9 rts processSmpEnd and.w #$0fff,d4 ;only 12 bit note period in D4 beq processPeriodEnd lea periodChannel(pc),a0 move.l 0(a0,d3.w),a0 jsr (a0) bra processPeriodEnd periodCh0 move.w d4,$dff0a6 ;note period to register - channel 0 rts periodCh1 move.w d4,$dff0b6 ;same for channel 1 rts periodCh2 move.w d4,$dff0c6 ;same for channel 2 rts periodCh3 move.w d4,$dff0d6 ;same for channel 3 rts processPeriodEnd addq #4,d3 dbf d2,patternData ;process next music channel move.b #$00,$bfde00 ;CIA primary timer, 2000=1/100 second move.b #$7f,$bfdd00 ; move.b #$00,$bfd400 ; move.b #$00,$bfd500 ; move.b #$09,$bfde00 ; primaryTimer ; btst.b #0,$bfdd00 ; beq primaryTimer ; spmPointers dc.l $00000000,$00000000,$00000000,$00000000,$00000000 ;smp 1-5 dc.l $00000000,$00000000,$00000000,$00000000,$00000000 ;smp 6-10 dc.l $00000000,$00000000,$00000000,$00000000,$00000000 ;smp 11-15 dc.l $00000000,$00000000,$00000000,$00000000,$00000000 ;smp 16-20 dc.l $00000000,$00000000,$00000000,$00000000,$00000000 ;smp 21-25 dc.l $00000000,$00000000,$00000000,$00000000,$00000000, $00000000 ;smp 26-31 smpChannel dc.l smpCh0, smpCh1, smpCh2, smpCh3 periodChannel dc.l periodCh0, periodCh1, periodCh2, periodCh3 numberMod dc.l $0, $3647c songs dc.l $00A05000, $00F02F91, $00A01F05, $00A03C10; 00 dc.l $00000000, $00000000, $00000000, $00000A10; 01 dc.l $00000000, $00000000, $00A01C20, $00000A10; 02 dc.l $00000000, $00000000, $00000000, $00000A10; 03 dc.l $00000000, $00000000, $00A01C08, $00000A10; 04 dc.l $00000000, $00000000, $00000000, $00000A10; 05 dc.l $00000000, $00000000, $00A01C14, $00000A10; 06 dc.l $00000000, $00000000, $00000000, $00000A10; 07 dc.l $00A06000, $00000000, $00A01000, $00000A10; 08 dc.l $00000000, $00000000, $00000000, $00000A10; 09 dc.l $00000000, $00000000, $00A01C10, $00000A10; 10 dc.l $00000000, $00000000, $00000000, $00000A10; 11 dc.l $00000000, $00000000, $00A01C08, $00000A10; 12 dc.l $00000000, $00000000, $00000000, $00000A10; 13 dc.l $00A07000, $00000000, $00A01000, $00000A10; 14 dc.l $00000000, $00000000, $00000000, $00000A10; 15 dc.l $00A05000, $00000000, $00A01C10, $00000A10; 16 dc.l $00000000, $00000000, $00000000, $00000A10; 17 dc.l $00A06000, $00000000, $00A01C08, $00000A10; 18 dc.l $00000000, $00000000, $00000000, $00000A10; 19 dc.l $00A05000, $00000000, $00A01000, $00000A10; 20 dc.l $00000000, $00000000, $00000000, $00000A10; 21 dc.l $00000000, $00000000, $00A01C10, $00000A10; 22 dc.l $00000000, $00000000, $00000000, $00000A10; 23 dc.l $00A06000, $00000000, $00A01C08, $00000A10; 24 dc.l $00000000, $00000000, $00000000, $00000A10; 25 dc.l $00000000, $00000000, $00A01000, $00000A10; 26 dc.l $00000000, $00000000, $00000000, $00000A10; 27 dc.l $00000000, $00000000, $00A01C08, $00000A10; 28 dc.l $00000000, $00000000, $00000000, $00000A10; 29 dc.l $00000000, $00000000, $00A01C18, $00000A10; 30 dc.l $00000000, $00000000, $00000000, $00000A10; 31 dc.l $00A05000, $00000000, $00A01000, $00000000; 32 dc.l $00000000, $00000000, $00000000, $00000000; 33 dc.l $00A05000, $00000000, $00A01C20, $00000000; 34 dc.l $00000000, $00000000, $00000000, $00000000; 35 dc.l $00000000, $00000000, $00A01C08, $00000000; 36 dc.l $00000000, $00000000, $00000000, $00000000; 37 dc.l $00A05000, $00000000, $00A01C14, $00000000; 38 dc.l $00000000, $00000000, $00000000, $00000000; 39 dc.l $00A06000, $00000000, $00A01000, $00000000; 40 dc.l $00000000, $00000000, $00000000, $00000000; 41 dc.l $00000000, $00000000, $00A01C10, $00000000; 42 dc.l $00000000, $00000000, $00000000, $00000000; 43 dc.l $00000000, $00000000, $00A01C08, $00000000; 44 dc.l $00000000, $00000000, $00000000, $00000000; 45 dc.l $00A07000, $00000000, $00A01000, $00000000; 46 dc.l $00000000, $00000000, $00000000, $00000000; 47 dc.l $00A05000, $00000000, $00A01C10, $00000000; 48 dc.l $00000000, $00000000, $00000000, $00000000; 49 dc.l $00A06000, $00000000, $00A01C08, $00000000; 50 dc.l $00000000, $00000000, $00000000, $00000000; 51 dc.l $00A05000, $00000000, $00A01000, $00000000; 52 dc.l $00000000, $00000000, $00000000, $00000000; 53 dc.l $00000000, $00000000, $00A01C10, $00000000; 54 dc.l $00000000, $00000000, $00000000, $00000000; 55 dc.l $00A06000, $00000000, $00A01C08, $00000000; 56 dc.l $00000000, $00000000, $00000000, $00000000; 57 dc.l $00000000, $00000000, $00A01000, $00000000; 58 dc.l $00000000, $00000000, $00000000, $00000000; 59 dc.l $00000000, $00000000, $00A01C08, $00000000; 60 dc.l $00000000, $00000000, $00000000, $00000000; 61 dc.l $00000000, $00000000, $00A01C18, $00000000; 62 dc.l $00000000, $00000000, $00000000, $00000000; 63 mods incbin "DH1:MOD T02X3/T02X3.MOD" incbin "DH1:MOD T02X3/T02X3.MOD"
- Poděkování 2
Vložit komentář:
-
Autorem citovaného textu je Defor Přejít na původní příspěvekJen jsem se na to podíval z rychlíku.
Tady je pár tipů. Ale nic důležitého.
Asi bych nepoužíval section code_c. Nutíš tím OS, aby načetlo kód do chip-ram, což je podle mne zbytečné. Použil bych section code pro program, section data_c pro data, která mají být v chip (copper a předpokládám že i samply), section bss_c pro bloky, které mají být v chip a section bss pro bloky, které můžou být kdekoliv.
Výhodou je, že celý program s daty neokupuje jeden souvislý blok a je tedy větší šance, že se pro něj najde volná paměť.
Zbytečně často používáš instrukce s celou 32bit adresou cíle. Např. move.b #$00,$bfde00 a podobné. Je lepší si dát bázovou adresu do adresového registru a pro cíl používat 16bit offset, např. move.b #number,offset(a5).
Pokud má jakákoliv instrukce za cíl datový registr, tak se automaticky nastavují stavové bity podle výsledku operace. Takže je zbytečné dělat po and.w #mask,d0 ještě tst.w d0. Už první instrukce nastaví stavové bity, takže např. beq.b .skip bude fungovat i bez tst.
Myslím, že používání or.l a and.l na nastavování nebo mazání jednoho bitu v datovém registru je pomalejší než k tomu použít instrukce bset.l a bclr.l.
- bloky jsou data? Nevím, jestli to mám vnímat rozdílně nebo ne.
- to s tím 16 bit offsetem na HW registre díky. Já si tam zvykl to dělat takhle, protože jsem ani neměl volný adresový registr, do kterého bych dal bázovou adresu. Ono celý ten kód je celkem divočina, kde byli datové a adresové registre celkem narvány.
- na instrukce bset.l a bclr.l. časem kouknu.
- nastavování stavových bitú u instrukcích na datové registre používám, jen jsem to asi všude neopravoval u starého kódu.
Ještě jednou díky.
- Poděkování 1
Vložit komentář:
-
Jen jsem se na to podíval z rychlíku.
Tady je pár tipů. Ale nic důležitého.
Asi bych nepoužíval section code_c. Nutíš tím OS, aby načetlo kód do chip-ram, což je podle mne zbytečné. Použil bych section code pro program, section data_c pro data, která mají být v chip (copper a předpokládám že i samply), section bss_c pro bloky, které mají být v chip a section bss pro bloky, které můžou být kdekoliv.
Výhodou je, že celý program s daty neokupuje jeden souvislý blok a je tedy větší šance, že se pro něj najde volná paměť.
Zbytečně často používáš instrukce s celou 32bit adresou cíle. Např. move.b #$00,$bfde00 a podobné. Je lepší si dát bázovou adresu do adresového registru a pro cíl používat 16bit offset, např. move.b #number,offset(a5).
Pokud má jakákoliv instrukce za cíl datový registr, tak se automaticky nastavují stavové bity podle výsledku operace. Takže je zbytečné dělat po and.w #mask,d0 ještě tst.w d0. Už první instrukce nastaví stavové bity, takže např. beq.b .skip bude fungovat i bez tst.
Myslím, že používání or.l a and.l na nastavování nebo mazání jednoho bitu v datovém registru je pomalejší než k tomu použít instrukce bset.l a bclr.l.
- Poděkování 3
Vložit komentář:
-
Zde je ten kód v souboru, kdyby se někdo chtěl podívat, mělo by to tam být bez chyb v zarovnání textu. Koncovnku .S jsem změnil na .TXT
mR1231p4 Free.txt
- Poděkování 1
Vložit komentář:
-
Jsem to původně chtěl dát na OC, to nepíšu z provokace, jen mně tam přednastavený barevný podklad CODE seděl o něco více, nicméně na OC je omezení na 32768 znaků a já mám 108475 znaků a tady to bere i tenhle počet znaků...
Primárně poznámky pro mne kvůli HW registrům, které si nepamatuji a nechci si ten kód otevírat v ASM-Pro, když nemusím...
Poslední verze kódu hudební rutiny hrající můj formát.
Smazaný kód pro zobrazování textu (možná ho ještě použiju).
Copper list a font ponechán.
Chybí tam sample pro použitou skladbu.
Hodně staršího kódu je tam v poznámkách.
Code:SECTION musicRoutine,CODE_C ;zalozeni kodove sekce musicRoutine ;by Lisiak ;PhotonWrapper *** MiniWrapper by Photon *** Start: move.l 4.w,a6 ;Exec library base address in a6 sub.l a4,a4 btst #0,297(a6) ;68000 CPU? beq.w .yes68k lea .GetVBR(PC),a5 ;else fetch vector base address to a4: jsr -30(a6) ;enter Supervisor mode *--- save view+coppers ---* .yes68k: ; lea .GfxLib(PC),a1 ;either way return to here and open lea GFXLIB(PC),a1 ;either way return to here and open jsr -408(a6) ;graphics library tst.l d0 ;if not OK, beq.w .quit ;exit program. move.l d0,a5 ;a5=gfxbase move.l a5,a6 move.l 34(a6),-(sp) sub.l a1,a1 ;blank screen to trigger screen switch ; sub.l a1,a1 ;nuluji A1, jinak to jde do Guru lea PLANE(pc),a3 ;zapis adresy pro 1 bitplane ; add.w #40,a3 LEA PLANES(PC),a2 ;zapis adresy 1 bitplanu pro Copper move.l a3,d2 ;a3 neumoznuje instrukci swap,pozijeme d0 add.w #40,d2 move.w d2,6(a2) ;zapis adresy 1 bitplanu do adresy pro reg SWAP D2 ;ister na 2 krat v PLANES $00E0,sem,$00E2, move.w d2,2(a2) ;sem. 6(a3)=o 6byte dal vuci pointeru ;dc.w 0 = dc.w 0000 SWAP D2 addq.l #8,a2 sub.w #40,d2 move.w d2,6(a2) SWAP D2 move.w d2,2(a2) ;30*(40byte)=30*(40*8bite) ;=30*(320=sirka obrazovky v LoRes) ;zacatek textu bude posunuty ;o 30 pixelu nize ;Musi byt pouzito MOVE.L a byt vynulovana ;D1 v ted nevyuzitych bitech-souvisi to s ;pozdejsi praci s bitplanem do ktereho ;musime pristupovat v rozsahu Long a ;pripocitavame k nemu prave hodnotu z D1 ;v navesti FOUNDCHAR: ADD.L D1,A3. Pokud ;pouzijeme pouze Word,program se za stavu ;kdy je spusten v Asm-Pro a spustime jej ;taky i u jiz zkompilovaneho EXE souboru ;ze zkompilovaneho EXE souboru spravne ;nespusti.Samostatne spustene EXE, kdyz ;neni program spusten i v Asm-Pro funguje ;spravne i s instrukci MOVE.W LEA COPLIST(PC),A2 ;zapis adresy pro nas program pro Copper MOVE.L A2,$DFF080 ;registr adresy pocatku programu pro Copper move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$00,$bfd400 ;2000=1/100 vteriny move.b #$70,$bfd500 move.b #$09,$bfde00 .zpomal222 btst.b #0,$bfdd00 beq .zpomal222 jsr -222(a6) ;on Amigas with graphics cards *--- save int+dma ---* lea $dff000,a6 bsr.w WaitEOF ;wait out the current frame ; bsr.s WaitEOF0 ;wait out the current frame move.l $1c(a6),-(sp) ;save intena+intreq move.w 2(a6),-(sp) ;and dma move.l $6c(a4),-(sp) ;and also the VB int vector for sport. bsr.w AllOff ;turn off all interrupts+DMA ; move.w #$8380,$dff096 *--- call demo ---* movem.l a4-a6,-(sp) bsr.w Demo ;call our demo \o/ movem.l (sp)+,a4-a6 *--- restore all ---* bsr.s WaitEOF ;wait out the demo's last frame bsr.w AllOff ;turn off all interrupts+DMA ;; bsr.s AllOff0 ;turn off all interrupts+DMA move.l (sp)+,$6c(a4) ;restore VB vector move.l 38(a5),$80(a6) ;and copper pointers move.l 50(a5),$84(a6) addq.w #1,d2 ;$7fff->$8000 = master enable bit or.w d2,(sp) move.w (sp)+,$96(a6) ;restore DMA or.w d2,(sp) move.w (sp)+,$9a(a6) ;restore interrupt mask or.w (sp)+,d2 bsr.s IntReqD2 ;restore interrupt requests move.l a5,a6 move.l (sp)+,a1 jsr -222(a6) ;restore OS screen *--- close lib+exit ---* move.l a6,a1 ;close graphics library move.l 4.w,a6 jsr -414(a6) .quit: moveq #0,d0 ;clear error return code to OS rts ;back to AmigaDOS/Workbench. .GetVBR: dc.w $4e7a,$c801 ;hex for "movec VBR,a4" rte ;return from Supervisor mode ;.GfxLib: ; dc.b "graphics.library",0,0 WaitEOF0: ;wait for end of frame bsr.s WaitBlitter move.w #$138,d0 rts WaitEOF: ;wait for end of frame bsr.s WaitBlitter move.w #$138,d0 WaitRaster: ;Wait for scanline d0. Trashes d1. .l: move.l 4(a6),d1 lsr.l #1,d1 lsr.w #7,d1 cmp.w d0,d1 bne.s .l ;wait until it matches (eq) rts ***** pridano,Textro nefungovalo s nulovanim bitu u DMACON a INTENA ***** AllOff0: * ; move.w #$7fff,d2 ;clear all bits * ; move.w #$7c7f,d2 ;clear all bits * move.w d2,$9c(a6) ;and INTREQ * move.w d2,$9c(a6) ;twice for A4000 compatibility * rts * ************************************************************************* AllOff: move.w #$7fff,d2 ;clear all bits ; move.w #$7c7f,d2 ;clear all bits move.w d2,$96(a6) ;in DMACON, ; move.w #$8380,$dff096 move.w #$7fff,d2 ;clear all bits move.w d2,$9a(a6) ;INTENA, IntReqD2: move.w d2,$9c(a6) ;and INTREQ move.w d2,$9c(a6) ;twice for A4000 compatibility rts WaitBlitter: ;wait until blitter is finished tst.w (a6) ;for compatibility with A1000 .loop: btst #6,2(a6) bne.s .loop rts ;PhotonWrapperEnd ****************************************** * CD music routine - Lisiak * ****************************************** ;;_LVOFreeMem = -210 ;;_LVOAllocMem = -198 ;_LVOForbid = -132 ;odstaveni multitaskingu ;_LVOPermit = -138 ;spusteni multitaskingu Demo ; ;musicRoutine by Lisiak START ; or.w #2,$bfe001 ;vypnuti filtru pro vysoky frekvence moveq.l #0,d1 moveq.l #0,d2 moveq.l #0,d3 ;arpeggio moveq.l #0,d4;vypnu bit pro vibrato,vynuluji casovas pro Textro ;TEXTRO casovac ; move #0,a1;-4-7.bit - pro vykresleni kazdeho radku pismena ;-0-3.bit - pocet radku na obrazovce sub.l a1,a1;-4-7.bit - pro vykresleni kazdeho radku pismena ;-0-3.bit - pocet radku na obrazovce ; move.l #$ff000000,a5 ; pozice pismena v radku=00 sub.l a5,a5 ; pozice pismena v radku=00 ; move.w #$0f00,a5 ; move.l #$ffff0000,a5 ;00ff0000 casovas pro hrajici pattern na hodnotu ; pred 0 = ff lea table6(pc),a6 moveq #0,d5 ;TEXTRO tenhle usek kodu jsem dal nahoru k hudebni rutine--------------------- INIT: move.w #$8380,$dff096 ;30*(40byte)=30*(40*8bite) ;=30*(320=sirka obrazovky v LoRes) ;zacatek textu bude posunuty ;o 30 pixelu nize ;Musi byt pouzito MOVE.L a byt vynulovana ;D1 v ted nevyuzitych bitech-souvisi to s ;pozdejsi praci s bitplanem do ktereho ;musime pristupovat v rozsahu Long a ;pripocitavame k nemu prave hodnotu z D1 ;v navesti FOUNDCHAR: ADD.L D1,A3. Pokud ;pouzijeme pouze Word,program se za stavu ;kdy je spusten v Asm-Pro a spustime jej ;taky i u jiz zkompilovaneho EXE souboru ;ze zkompilovaneho EXE souboru spravne ;nespusti.Samostatne spustene EXE, kdyz ;neni program spusten i v Asm-Pro funguje ;spravne i s instrukci MOVE.W ; lea TEXT(pc),a4 ;adresa na nas text ; move.w #$0f00,a5 ;TEXTRO konec------------------------------------------------------------------ move.w #0,d0 ;2 byte nuluji kvuli pozdejsi instrukci 0(a2,d0.w),a2 and.w #$ff,d5 ;ve hre se vzdy bude hrat prednastavena 1.melodie ;tedy nuluji 1 byte sub.l a4,a4 skladba ; move.l #$ffff0000,d2;#$00xx0000 xx pro casovac hrani patternu Vskladbe ; move.w a5,d2 ; #$00xx v A5 je xx hodnota pozice pismena v radku ; move.l d2,a5 ; v A5 spravne hodnoty pro hrani nove skladby ; move.b #0,d2 ;44332211 ; or.l #$04000000,d4 and.l #$fbffffff,d4 ;bit hrani skladby od zacatku = 0 move.w #$f,$dff096 ;lea music(pc),a0 ;adresu music do a0 lea skladby(pc),a0 ;adresu music do a0 ;; move.w (a0)+,d2 ;; move.b d2,d5 ; move.b d0,d5 ;vyreseno vyse v kodu pomoci and.w #$ff,d5 ; ror.w #8,d5 lea tableST(pc),a2 ; rol.b #2,d2 move.w d5,d0 lsr.w #8,d0 rol.b #2,d0 ; move.l 0(a2,d2.w),a2 move.l 0(a2,d0.w),a2 jsr (a2) bra zahrajSampl T00 move.l a5,d0 ;index 1.patternu ve skladbe do 2.byte A5 and.l #$00ff0000,d0 ;ten je v 1.skladbe 0, v dalsich skladbach- ;-bude vetsi sub.l d0,a5 ; lea skladba1(pc),a0 ;adresu music do a0 ;; move.l #C2,$dff0c4 ;; move.l #C2,$dff0c4 rts T01 ; move.l #C4,$dff0a0 ;sampl synth do 2.kanalu ; move.w #$12c8,$dff0a4 ;; move.l #BA,$dff0b0 ;sampl synth do 2.kanalu ; move.l #C6,$dff0b0 ;sampl synth do 2.kanalu ; move.w #$fa0,$dff0b4 ;; move.l #C5,$dff0d0 ;sampl kickTerminator (4.kanal) rts zahrajSampl ;**************************************** ;program ;docasneTextro ;**************************************** ;; or.w #$0f00,d1 ;DMA hraji vzdy vsechny ; and.w #$00ff,d1 ;DMA nehraji zadne ;(pokud hraje puvodni DMA tak to pokracuje) move.b #$ff,d4 ; nastavim casovac na FF btst #7,d3 beq sfxNe ; move.w #3,$dff096 ; bra txtIn1time bra docasneTextro sfxNe ; move.b #$ff,d4 ; nastavim casovac na FF or.w #$0f00,d1 ;zde nastacuji DMA Pauli na 1, protoze v prvni smycce ;hudebni rutiny se testuje, jestli se ma DMA hrat, ;a pokud by bylo DMA na 0, neprovedl by se ani prvni ;cyklus hudebni rutiny a kdyz se neprovede prvni cyklus, ;nezinicializuje se nikdy DMA na 1, cim zustane hudebni ;rutina po celou dobu ticho. Testovani DMA pro kazdy ;kanal je stara cast kodu, nemusel bych to jiz delat, ;zatim ponechavam and.l #$bfffffff,d3;vypnu bit pro vibrato. Vibrato jiz v D3 ;ponecham bit, co urcuje, jestli se bude obrazovka ;v textru mazat pomoci mezery, nebo pomoci napsani ;dalsiho textu and.l #$3f3f3f3f,d7 ;d7 smaz puvodni volume slide ; btst #7,d3 ; bne txtIn1time ;sfxNe move.w #0,d6 moveq #0,d0 ;potrebuji smazat 2.word(ztlumovani samplu v 1/4,1/2,3/4) ;a 1.word je pomocna promenna,pouzivam rychlejsi ;moveq a mazu vse ; move.b #0,d5 ;aby se nevykonal volume slide, kdyz neni aktivni. ;V 0.cyklu se efekt nevykonava (zacina az v 1/4 radku ;patternu) a casovac pro shodu je na 0. ; move.l (a0)+,d2 ;prepinani samplu ;tstFre ; btst #8,d1 ; beq tstFre2 ;ne? Vynech nestaveni frek. 1.kanalu move.b (a0)+,d2 ;hrani 1.tonu? ; bpl tony ;ano jdi sem ; cmp.b #$80,d2 ; bne tony ; rts ; move.b (a0)+,d2 ;hrani 1.tonu ;tony cmp.b #0,d2 bne zachoD4 and.b #$c0,d3 move.w #1,$dff096 ;;; bra zmeDma1 zachoD4 ; cmp.b #$41,d2 cmp.b #$3d,d2 ;; bne vybFre1 bne ctiFre1 zmeDma1 ; and.b #$e,d0 and.w #$eff,d1 bra tstFre2 ctiFre1 move.b d2,d0 and.b #$c0,d0 tst.b d0 beq vybFre1 cmp.b #$c0,d0 bne ztl12s1 or.l #$400000,d0 bra ztlfre1 ztl12s1 cmp.b #$80,d0 bne ztl14s1 or.l #$80000,d0 bra ztlfre1 ztl14s1 or.l #$10000,d0 ztlfre1 and.b #$3f,d2 tst.b d2 beq tstFre2 vybFre1 move.w #1,$dff096 move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$70,$bfd400 ;2000=1/100 vteriny move.b #$00,$bfd500 move.b #$09,$bfde00 waitTimeP btst.b #0,$bfdd00 beq waitTimeP bsr cFreVd2 ; swap d0 ;; swap d1 move.w d1,$dff0a6 ;nastav frekvenci 1.kanalu ;; swap d1 ;; bra tstFre2 ;; move.l a4,d2 ;; sub.w d2,a4 ;; swap d2 ;; add.w d2,a4 ;;jemna uprava tonu ;;zalVib ; swap d6 ; move.w d1,d6 swap d1 ; swap d6 tstFre2 ; btst #9,d1 ; beq tstFre3 ;ne? Vynech nestaveni frek. 1.kanalu ; rol.l #8,d2 move.b (a0)+,d2 ;prepinani samplu cmp.b #0,d2 bne zachoD5 move.w #2,$dff096 ;;; bra zmeDma2 zachoD5 ; cmp.b #$41,d2;;; cmp.b #$3d,d2 bne nahSmp2 zmeDma2 ; and.b #$d,d0 and.w #$dff,d1 bra tstFre3 nahSmp2 move.b d2,d0 and.b #$c0,d0 tst.b d0 beq vybFre2 cmp.b #$c0,d0 bne ztl22s1 or.l #$800000,d0 bra ztlfre2 ztl22s1 cmp.b #$80,d0 bne ztl24s1 or.l #$100000,d0 bra ztlfre2 ztl24s1 or.l #$20000,d0 ztlfre2 and.b #$3f,d2 tst.b d2 beq tstFre3 vybFre2 move.w #2,$dff096 move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$70,$bfd400 ;2000=1/100 vteriny ---5000 ne,6000 ok move.b #$00,$bfd500 move.b #$09,$bfde00 waitTimeP1 btst.b #0,$bfdd00 beq waitTimeP1 bsr cFreVd2 ; swap d0 ;; swap d1 move.w d1,$dff0b6 ;nastav frekvenci 1.kanalu swap d1 ;; move.l a5,d2 ;; sub.w d2,a5 ;; swap d2 ;; add.w d2,a5 tstFre3 ; btst #$a,d1 ; beq tstFre4 ;ne? Vynech nestaveni frek. 1.kanalu ; rol.l #8,d2 move.b (a0)+,d2 ;prepinani samplu cmp.b #0,d2 bne zachoD6 and.b #$c0,d3 move.w #4,$dff096 ;;; bra zmeDma3 zachoD6 cmp.b #$3d,d2 bne ctiFre3 zmeDma3 and.w #$bff,d1 ;presunuto nahoru a zde nema byt pro efekt arpeggio bra tstFre4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ctiFre3 ;; cmp.b #$42,d2 ; ; ; cmp.b #$3e,d2 ; bne nahSmp3 ;vibrato ; ; or.l #$1000000,d4 ;zapneme vibrato 1b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; move.b d2,d0 and.b #$c0,d0 tst.b d0 beq vybFre3 cmp.b #$c0,d0 bne ztl32s1 or.l #$1000000,d0 bra ztlfre2 ztl32s1 cmp.b #$80,d0 bne ztl34s1 or.l #$200000,d0 bra ztlfre3 ztl34s1 or.l #$40000,d0 ztlfre3 and.b #$3f,d2 tst.b d2 beq tstFre4 vybFre3 move.w #$ffff,d4 ;potrebuji nasavit casovac pro arpeggio (2.byte) ;na ff a casovac pro delku hrani 1 radku patternu ;zde jiz mam nastaven na ff a jen nastavuji znovu. ;casovac pro arpeggio muzu nastavit pouze zde kvuli ;casove spravnemu zahrani 1.tonu arpeggia move.w #4,$dff096 ;u arpeggia mozna nebude moci byt move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$70,$bfd400 ;2000=1/100 vteriny e move.b #$00,$bfd500 move.b #$09,$bfde00 waitTimeP2 btst.b #0,$bfdd00 beq waitTimeP2 ; bsr cFreVd2 ; move.w d1,$dff0c6 ;nastav frekvenci 1.kanalu ; swap d1 ; move.b d2,d3 and.b #$c0,d3 or.b d2,d3 tstFre4 ; btst #$b,d1 ; beq zahFre ;ne? Vynech nestaveni frek. 1.kanalu ; rol.l #8,d2 move.b (a0)+,d2 ;;;;;;;odparal jsem, ale budu potrebovat pro 1.kanal a volumeSlide ; btst #6,d2 ; beq tst404 ; or.l #$2000000,d4 ;pro btst #$19,d4 ; and.b #$bf,d2 ; tst.b d2 ; beq zahFre ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; tst404 btst #6,d2 beq tst0 ;; or.l #$40000000,d4 ;zapneme vibrato ; or.l #$04000000,d4 ;zapneme vibrato or.l #$40000000,d4 ;zapneme vibrato tst0 cmp.b #0,d2 bne zachoD7 ; moveq.l #0,d3 and.b #$c0,d3 move.w #8,$dff096 bra zmeDma4 zachoD7 cmp.b #$3d,d2 bne ctiFre4 zmeDma4 and.w #$7ff,d1 ;kvuli mixu presunuto nahoru bra zahFre ; ctiFre4 cmp.b #$3e,d2 bne vybFre4 bra zahFre vybFre4 move.w #8,$dff096 ;test nove predsekvence, ztlumeni ;samplu opet aktivni move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$70,$bfd400 ;2000=1/100 vteriny 39 move.b #$00,$bfd500 move.b #$09,$bfde00 waitTimeP3 btst.b #0,$bfdd00 beq waitTimeP3 ; swap d4 ;nezpracovavam bit 6,7 kvuli ztlumeni samplu ;v 1/4 1/2 3/4 = swapD4 v cFreVd2 ;jiz v poznamce kvuli kanalu 1,2,3 ;kde tyhle 2 bity zpracovavam, ;proto swapD4 ve 4.kanalu jiz zde bsr cFreVd2 move.w d1,$dff0d6 ;nastav frekvenci 4.kanalu swap d6 move.w d1,d6 swap d6 swap d1 zahFre move.l (a0)+,d2 ;prepinani samplu tst.b d2 ; bpl smp2nd ;ok bmi predSmp;ok bsr time bsr time bsr time bsr time bra smp2nd ;ok predSmp ;sekvenc ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;zatim urcuji delku taktu zde, pak smazu ; ; move.b d2,d1 ;delka taktu ; ; and.b #$1f,d1 ;delka taktu ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; move.b d2,d0 ; and.b #$e0,d2 and.b #$e0,d0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; dam za sekvenci sampl ; cmp.b #$e0,d2 ;arpeggio? ; ; bne tst40 ; move.l d2,d3 ; move.l (a0)+,d2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; cmp.b #$a0,d0 ;sampl? ; bne volume0 beq smp0k bsr time bra volume1 smp0k btst #0,d2 ;--------------------------------------- beq smp1k ;test aktivniho volume slide pro 0.kanal or.b #$40,d7 ;--------------------------------------- smp1k btst #1,d2 ; beq smp3k beq smp2k and.b #$c,d2 ;verze pro 4 sample move.w d5,d0 clr.b d0 ror.w #4,d0 ;4 sample = 16 byte (1 sampl jsou 4 byte) or.b d2,d0 lea tableS0(pc),a2 move.l 0(a2,d0.w),a2 jsr (a2) bra smp2k ;S00 move.l #BB,$dff0a0 ;sampl do 1.kanalu ; move.w #$5f,$dff0a4 ;delku samplu dame do vybraneho kanalu ; rts ;S01 move.l #C1,$dff0a0 ;sampl do 1.kanalu ; move.w #$c5,$dff0a4 ;delku samplu dame do vybraneho kanalu ; rts ;S02 move.l #C2,$dff0a0 ;sampl do 1.kanalu ; move.w #$6f,$dff0a4 ;delku samplu dame do vybraneho kanalu ; rts ;S03 move.l #C3,$dff0a0 ;sampl do 1.kanalu ; move.w #$d6,$dff0a4 ;delku samplu dame do vybraneho kanalu ; rts S00 move.l #BA,$dff0a0 ;sampl do 0.kanalu (0-3) move.w #$1e8d,$dff0a4 rts S01 move.l #BB,$dff0a0 ;sampl do 0.kanalu (0-3) move.w #$16cb,$dff0a4 rts S02 move.l #BC,$dff0a0 ;sampl do 0.kanalu (0-3) move.w #$797,$dff0a4 rts S03 move.l #BD,$dff0a0 ;sampl do 0.kanalu (0-3) move.w #$1dbf,$dff0a4 rts S04 ; move.l #C7,$dff0c0 ; move.w #$2000,$dff0c4 rts S05 rts S06 rts S07 rts ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;zkontrolovano - cela logika smp2k ; ror.w #8,d2 ; btst #0,d2 btst #8,d2 beq smp3k move.w d2,d0 ror.w #7,d0 and.b #$c,d0 ;verze pro 4 sample move.b d0,d2 move.w d5,d0 ; rol.b #1,d0 ; and.b #$c,d0 clr.b d0 ror.w #4,d0 ;4 sample = 16 byte (1 sampl jsou 4 byte) or.b d2,d0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; lea tableS1(pc),a2 move.l 0(a2,d0.w),a2 jsr (a2) bra smp3k S30 move.l #BE,$dff0b0 ;sampl do 1.kanalu (0-3) ;; move.w #$11aa,$dff0b4 ;delku samplu dame do vybraneho kanalu ; move.w #$1198,$dff0b4 ;delku samplu dame do vybraneho kanalu move.w #$3ef,$dff0b4 ;delku samplu dame do vybraneho kanalu rts S31 ; move.l #BF,$dff0b0 ;sampl do 1.kanalu (0-3) ; move.w #$9e0,$dff0b4 ;delku samplu dame do vybraneho kanalu rts S32 ; move.l #C0,$dff0b0 ;sampl do 1.kanalu (0-3) ; move.w #$c2b,$dff0b4 ;delku samplu dame do vybraneho kanalu rts S33 ; move.l #C1,$dff0b0 ;sampl do 1.kanalu (0-3) ; move.w #$bf1,$dff0b4 ;delku samplu dame do vybraneho kanalu rts S34 ; move.l #C7,$dff0c0 ; move.w #$2000,$dff0c4 rts S35 rts S36 rts S37 rts smp3k ror.w #8,d2 btst #7,d2 beq smp4k ; move.w (a0),d2 ;nevi se jestli bude SMP z 1,2 kanalu=musi zde byt ; rol.w #4,d2 ;verze pro 4 sample ror.b #2,d2 ;verze pro 4 sample and.b #$c,d2 ;; rol.w #,d2 ;verze pro 8 samplu ; clr.w d0 ; move.b d5,d0 move.w d5,d0 clr.b d0 ; rol.w #4,d0 ror.w #4,d0 or.b d2,d0 lea tableS2(pc),a2 move.l 0(a2,d0.w),a2 jsr (a2) bra smp4k S60 move.l #C2,$dff0c0 ;sampl do 2.kanalu (0-3) move.w #$167d,$dff0c4 ;delka samplu rts S61 ; move.l #C3,$dff0c0 ;sampl do 2.kanalu (0-3) ; move.w #$a56,$dff0c4 rts S62 ; move.l #C4,$dff0c0 ;sampl do 2.kanalu (0-3) ; move.w #$c2b,$dff0c4 rts S63 ; move.l #C5,$dff0c0 ;sampl do 2.kanalu (0-3) ; move.w #$bf1,$dff0c4 rts S64 ; move.l #BE,$dff0d0 ;sampl sum do 4.kanalu (1-3) ; move.w #$9F0,$dff0d4 rts S65 rts S66 rts S67 rts smp4k swap d2 ;info o SMP pres casovac do nizsich 2 byte move.w d2,d6 ;info o SMP pres casovac do D6 move.l (a0)+,d2 tst.b d2 ;predsekvence hlasitost / 2 sample ve 4.kanalu ; bpl smp2nd ;ok bmi volume0 ;ok bsr time bsr time bsr time bra smp2nd ;ok volume0 move.b d2,d0 and.b #$e0,d0 volume1 cmp.b #$c0,d0 ; bne arpegg beq smp3k1 bsr time bra arpegg smp3k1 btst #1,d2 ;nahrat sampl? beq volume2 move.w d5,d0 clr.b d0 ror.w #4,d0 ;cislo SMP je v 2.byte, proto rotuji doprava and.b #$1f,d2 or.b d2,d0 and.b #$fc,d0 ;pokracovat lea tableS4(pc),a2 move.l 0(a2,d0.w),a2 jsr (a2) bra volume3 SE0 move.l #C6,$dff0d0 ;sampl bass do 3.kanalu (0-3) move.w #$98e6,$dff0d4 rts SE1 move.l #C7,$dff0d0 ;sampl bass do 3.kanalu (0-3) move.w #$9065,$dff0d4 rts SE2 rts SE3 rts SE4 rts SE5 rts SE6 rts SE7 rts ;pokracovat ;smpNe or.b #1,d2 ;pri nepouziti predsekvence SMP volume3 btst #0,d2 beq volume4 volume2 rol.l #6,d2 and.b #$3f,d2 beq volK2 ;; move.b d2,d7 and.b #$40,d7 ;do 0.kanalu davame info o aktivnim volume slide pred or.b d2,d7 ;nastavenim hlasitosti, u ostatnich kanalu az po nastav addq.b #1,d2 ;eni hlasitosti, proto musime toto info zachovat, smaza ;t puvodni hodnotu hlasitosti a az pak pridat novou hla ;sitost k bitu urcujicimu aktivni efekt volume slide move.b d2,$dff0a9 ;hlasitost 0.kanalu (0-3) volK2 rol.l #6,d2 rol.l #8,d7 and.b #$3f,d2 beq volK3 move.b d2,d7 addq.b #1,d2 move.b d2,$dff0b9 ;hlasitost 1.kanalu volK3 rol.l #6,d2 rol.l #8,d7 and.b #$3f,d2 beq volK4 move.b d2,d7 addq.b #1,d2 move.b d2,$dff0c9 ;hlasitost 2.kanalu volK4 rol.l #6,d2 rol.l #8,d7 and.b #$3f,d2 beq volume4 move.b d2,d7 addq.b #1,d2 move.b d2,$dff0d9 ;hlasitost 3.kanalu volume4 rol.l #8,d7 move.l (a0)+,d2 tst.b d2 ; bpl smp2nd ;ok bmi arpegg0 ;ok bsr time bsr time bra smp2nd ;ok arpegg0 move.b d2,d0 and.b #$e0,d0 arpegg cmp.b #$e0,d0 ; bne pattern beq arpegg1 bsr time bra pattern arpegg1 ;; addq.l #4,a0 ;predsekvence arpeggio/rychlost hrani move.b d2,d1 and.b #$1f,d1 ;; ror.w #8,d5 ; move.b d1,d5 ; addq.b #1,d5 ; ror.b #2,d5 ;1/4 hodnoty z celkove delky taktu move.b #0,d2 tst.l d2 ; beq smp2nd; ok beq patter0; ok move.w d2,d0 ;test aktivniho arpeggia and.w #$3fff,d0 ;testuji pouze 1.byte, 0.byte je jiz vynulovany beq vSlid13 and.l #$ff,d3 or.l d2,d3 and.l #$3f3f3fff,d3 ;jen tony arpeggia vSlid13 and.l #$c0c0c0ff,d2 ;jen volume slide,0.byte jiz vynulovany,kanal 1-3 ; and.l #$3f3f3f3f,d7 ;-kanal 0 je jinde ;d7 smaz puvodni volume slide or.l d2,d7 ;-uroven hlasitosti ponechej,kanal 0-3 ;nakopiruj volume slide,kanal 1-3 patter0 move.l (a0)+,d2 ;priprava na predsekvenci pattern tst.b d2 ; bpl smp2nd ;ok bmi patte20 ;ok bsr time bra smp2nd pattern ;predsekvence pattern ;patte21 and.b #$7f,d3 ;bit pro sfx pismo na 0 patte20 btst #4,d2 ;volume slide zesilit (0=zeslabit) 0.kanal (0-3) beq patte21 or.b #$80,d7 ;sem jeste pribyde vynulovani casovace pro #skladbyPattern patte21 btst #18,d2 beq patte22 or.l #$f0000000,d4 ;nastaveni casovace volume slide na 1.hodnotu ;pred jeho zvyseni hodnoty o 1 = 0 patte22 btst #19,d2 beq patte23 or.b #$80,d3 ;bit pro sfx pismo na 1 move.w #$1ff,d1 ;0 byte -delka taktu na vychozi hodnotu casovace, tedy ;kazda velka smycka hudebni rutiny je shoda a mala ;smycka se nevykonava, 1 byte je nastaveni DMA move.l #CA,$dff0a0 ;sampl do 0.kanalu (0-3) move.w #180,$dff0a4 ;delka samplu do 1.kanalu (0-3) move.w #360,$dff0a6 ;nastav frekvenci 0.kanalu ;chtena rychlost D2# ;; subq.l #4,a0 ;pri aktivnim sfx budu ucelove addq.l #4,a0 delat primo ;v textru a ne zde na konci predsekvence pattern. Timhle ;subq instrukci addq na konci tehle predsekvence nuluji ;aby jsem dane addq mohl delat v textru. ADDQ v rezimu ;sfx musim delat, protoze v rezimu sfx pozuzivam jen ;cyklus Textra. Cyklus hudebni rutiny neni pouzit. ;oprava, aby hral efekt SFX i na vyssich radach CPU z $dff0a8 na $dff0a9 move.b #20,$dff0a9 ;hlasitost 0.kanalu (0-3) oprava $dff0a9 move.b #20,d7 addq.l #4,a0 bra hraj2 ;; ror.w #8,d2 ;hodnota pro volume slide do 2.byte. Co je v 1.byte v d2 ;nas ted nezajima. Ten budeme nastavovat kousek dal na ;navesti smp2nd1 pomoci move.b patte23 and.b #$7f,d3 ;bit pro sfx pismo na 0 ;patte21 btst #16,d2 ;test pro praci se skoky v patternech beq patte26 btst #17,d2 beq patte24 ;hrat dalsi pattern v indexu #skladbyPatern? a pokud- ;-bude skok na pattern #0.L=hrani uplne prvni skladby- ;-ano skoc sem ;nebo se vrat na prvni pattern prave hrajici skladby ; bra skladba or.l #$4000000,d4 bra patte26 patte24 add.l #$10000,a5 ;navys hodnotu indexu pro #skladbyPattern move.l a5,d2 ;a dej do D2 swap d2 ;do 0.byte and.w #$ff,d2 ; rol.b #2,d2 ;vynasob cislem 4 lsl.b #2,d2 ;vynasob cislem 4 ;;patte25 lea skladbyPattern(pc),a2 ;pointer do A2 lea skladby(pc),a0 ;pointer do A0 ;; move.w #0,d2 add.w d2,a2 ;navys adresu o index hrajiciho patternu move.l (a2),d2 ;index #skladbyPattern na 0? bne patte25 ;ne, skoc sem ; move.l a5,d2 ; ; and.l #$ff00ffff,d2 ; ; move.l d2,a5 ; and.w #$ff,d5 ; 00--.w = 1.skladba or.l #$4000000,d4 patte25 add.l (a2),a0 ;pozice hrajiciho patternu do A0 patte26 and.w #$0f0f,d2 addq.l #4,a0 ** swap d2 ** smp2nd ; tst.b d3 move.b d3,d2 and.b #$3f,d2 ; tst.b d2 ;neprovadim, priznaky nastaveny jiz ANDem ;; beq smp2nd2; ok ; beq txtIn1time beq docasneTextro ; move.w d3,d0 ; move.b #0,d0 ; tst.w d0 cmp.w #$ff,d3 ; bhi txtIn1time bhi docasneTextro ;; bne smp2nd2; ok ; move.b d3,d2 bsr cFreVd2 move.w d1,$dff0c6 ;frekvence 3.kanalu se kvuli arpeggiu zpracovava swap d1 ;az zde, tedy po predsekvenci arpeggio, kde se jiz ; moveq.l #0,d3 ;vi, jestli se bude hrat jen 1 ton, nebo arpeggio and.b #$c0,d3 ;d3 zde smazu, pokud v ni neco bude, jedna se pouze ;o efekt arpeggio ;smp2nd1 ; move.b d5,d2 ;kvuli utlumeni SMP v kanaly 0-2, aby jsme zachovali ;stejnou hodnotu v D5 (1/4taktu) a zvysovali hodnotu v D2 ;pro dosazeni hodnoty taktu 1/4,1/2 a 3/4. Zde je ;v D2 vyssi word pouzit jen pro tuhle funkci. Swapem ted ;zpristupnime nizsi word v D2 pro pomocne promenne a hned ;skaceme na navesti smp2nd2 ;; bra smp2nd2; ok ;;hraj1 ;smp2nd2 ; swap d2 ;v poznamce pro optimalizaci volume slide ; cmp.b d4,d1 ;souhlasi? ; beq klik ;misto pro program co potrebuje vyssi frekvenci obnovovani ;**************************************** docasneTextro move.w #0,d0 ;****************************************************************************** ; TEXTRO ZACATEK ;****************************************************************************** ;****************************************************************************** ; TEXTRO KONEC ;****************************************************************************** ;;freVibra30 ; move.b #$00,$bfde00 ; move.b #$7f,$bfdd00 ;c2 c1 ; move.b #$00,$bfd400 ;00n80n60n50n4cn48n44n40j00j00j ,2000=1/100 vteriny ; move.b #$28,$bfd500 ;2e 2d 2d 2d 2d 2d 2d 2d 2d 2c ; move.b #$09,$bfde00 ;waitVibra2 ; btst.b #0,$bfdd00 ; beq waitVibra2 addq.b #1,d4 move.w d6,d2 ;pro hodnotu kdy nahrat 2.sampl ;; rol.w #5,d2 and.b #$1f,d2 cmp.b d4,d2 ;ma se nahrat 2.sampl? ;; bne tstVibra2 bne frek13 btst13 btst #9,d6 beq smp13 move.w #2,$dff096 ;ztlumeni samplu (1-3) ; and.w #$3fff,d7 smp13 ; btst #$1b,d4 ;nahrani SMP, 4.kanal? btst #8,d6 ;nahrani SMP, 4.kanal? ; beq tstVibra2 beq frek13 ; move.b d6,d2 ; lsr.b #2,d2 ;d2 vstupni hodnota pro cFreVD2 ; lsr.b #2,d6 ;d2 vstupni hodnota pro cFreVD2 and.w #$fc00,d2 tst.w d2 beq smp23 rol.w #6,d2 ;d2 vstupni hodnota pro cFreVD2 ; tst.b d6 ; beq smp23 ; move.b d6,d2 ;d2 vstupni hodnota pro cFreVD2 ; bsr cFreD0s bsr cFreVd2 ; swap d0 ;vracim D0 pro zpracovani DMA kanalu move.w d1,$dff0b6 ;frekvence samplu 1-3 (4.kanal) swap d1 smp23 ; swap d0 ;vracim D0 pro zpracovani DMA kanalu ; beq tstVibra2 ; or.l #$8 0000,d0 ; or.b #8,d0 ;pokracovat or.w #$200,d1 lea tableS3(pc),a2 ; ror.w #6,d6 ror.b #3,d6 and.b #$c,d6 ;; clr.w d0 ; clr.w d2 ; move.b d5,d2 move.w d5,d0 clr.b d0 ; rol.w #4,d0 ror.w #4,d0 or.b d6,d0 move.l 0(a2,d0.w),a2 jsr (a2) move.w #0,d6 bra frek13 S90 move.l #BF,$dff0b0 ;sampl do 1.kanalu (0-3) ;; move.w #$9e0,$dff0b4 ;delku samplu dame do vybraneho kanalu move.w #$938,$dff0b4 ;delku samplu dame do vybraneho kanalu rts S91 ; move.l #C7,$dff0d0 ;sampl sum do 4.kanalu (1-3) ; move.w #$7e,$dff0d4 rts S92 ; move.l #C8,$dff0d0 ;sampl sum do 4.kanalu (1-3) ; move.w #$4c4,$dff0d4 rts S93 ; move.l #C9,$dff0d0 ;sampl sum do 4.kanalu (1-3) ; move.w #$4c4,$dff0d4 rts S94 ; move.l #C5,$dff0d0 ;sampl kickTerminator (4.kanal) rts S95 rts S96 rts S97 rts ;tstVibra2 ; swap d0 ; pro zpracovavani DMA kanalu frek13 ; hlasitost v arpeggiu ; ror.w #8,d5 ;d5 az do ted jsem mel na info kterou skladbu hrat, ;je to OK ;pokracovat ;;;;; btst #$1c,d4 ;nahrat vibrato? ;;;; btst #$18,d4 ;nahrat vibrato? ;;; btst #$1c,d4 ;nahrat vibrato? ;; btst #$1d,d4 ;nahrat vibrato? ; btst #$1e,d4 ;nahrat vibrato? btst #$1e,d3 ;nahrat vibrato? beq tstArpeggio ;opaVibra3 swap d6 move.b (a6)+,d2 tst.b d2 bmi odpocet bne pripocet lea table6(pc),a6 move.b (a6)+,d2 ; hlasitost v arpeggiu ; move.b #$37,d5 ;dekadicky 56+1 -pocet bytu vibrata (table6) +1 byte pripocet and.w #$f,d2 sub.w d2,d6 bra endVibrato odpocet and.w #$f,d2 add.w d2,d6 ; bra endVibrato endVibrato move.w d6,$dff0d6 ;nastav frekvenci 1.kanalu swap d6 ; hlasitost ve vibratu ; subq.b #1,d5 tstArpeggio ; tst.b d3 move.b d3,d2 and.b #$3f,d2 ;pokud jsem vyse v kode hral pouze klasicky ton a ne ;arpeggio, z 0.byte jsem ton smazal a zde se arpeggio ;neporvede, jinak se arpeggio provede. Posledni 2 bite ;z 0.byte ponechavam, nizsi bite je pro aktivni vibrato ; beq hraj1 beq volSli0 ;tstArpeggio1 ror.w #8,d4 addq.b #1,d4 tst.b d4 bne tstArpeggio3 move.b #$f6,d4 move.w #4,$dff096 addq.b #4,d0 swap d5 bsr cFreVd5 move.w d5,$dff0c6 ;nastav frekvenci 3.kanalu swap d5 rol.l #8,d3 tstArpeggio3 ror.w #8,d4 ; hlasitost v arpeggiu ; addq.b #1,d5 ;uplne nazacatku je snizeno o 1, aby pri +1 byla 0 ; move.b 0(a6,d5),d2 ; tst.b d2 ; bne tstArpeggio4 ; sub.b #$21,d5 ;-32 na zacatek-1=-33 pro addq #1,d5 aby byla 0 ;tstArpeggio4 ; move.b d2,$dff0c8 ;hlasitost v 3.kanalu ;tstSlid ; tst.l d7 ; beq hraj1 ; rol.l #8,d7 ; btst #6,d7 ; beq vSlide3 ; btst #7,d7 ; beq vSMin2 ; addq.b #8,d7 ; bra vSlidV2 ;vSMin2 subq.b #8,d7 ;vSlidV2 move.b d7,d0 ; and.b #$3f,d0 ; move.b d0,$dff0b9 ;hlasitost 2.kanalu ;vSlide3 rol.l #8,d7 ; btst #6,d7 ; beq vSlide4 ; btst #7,d7 ; beq vSMin3 ; addq.b #8,d7 ; bra vSlidV3 ;vSMin3 subq.b #8,d7 ;vSlidV3 move.b d7,d0 ; and.b #$3f,d0 ; move.b d0,$dff0c9 ;hlasitost 3.kanalu ;vSlide4 rol.l #8,d7 ; btst #6,d7 ; beq vSlide5 ; btst #7,d7 ; beq vSMin4 ; addq.b #1,d7 ; bra vSlidV4 ;vSMin4 ; subq.b #1,d7 ;vSlidV4 move.b d7,d0 ; and.b #$3f,d0 ; move.b d0,$dff0d9 ;hlasitost 4.kanalu ;vSlide5 rol.l #8,d7 ;hraj1 ;; move.w d0,$dff096 ; move.w d1,d2 ; move.b #$80,d2 ; ror.w #8,d2 ; and.b #$9,d2 ; move.w d2,$dff096 ; and.b #$b,d0 ;DMA prenos 3.kanalu na nulu...mozna arpeggio ;----------------------------- ; and.b #7,d0 ;DMA prenos 4.kanalu na nulu ;kdyz se kod da do poznamky, hraji kanaly ;mimo mix bez praskani, mix kod mozna potrebuje ;----------------------------- ;;puvodni rychlost casovani ;;freVibra3 ;; move.b #$00,$bfde00 ;; move.b #$7f,$bfdd00 ;; move.b #$48,$bfd400 ;90 2000=1/100 vteriny ;; move.b #$07,$bfd500 ;0d ;; move.b #$09,$bfde00 ;;waitVibra ;; btst.b #0,$bfdd00 ;; beq waitVibra ;freVibra3 ; move.b #$00,$bfde00 ; move.b #$7f,$bfdd00 ; move.b #$56,$bfd400 ;90 2000=1/100 vteriny ; move.b #$2f,$bfd500 ;0d ; move.b #$09,$bfde00 ;waitVibra ; btst.b #0,$bfdd00 ; beq waitVibra ;; hlasitost v arpeggiu ;; ror.w #8,d5 ;; cmp.b d4,d1 ;souhlasi? ;; beq klik ;; swap d2 volSli0 rol.l #4,d4 ;POZOR rotace pouze o 4 bity, casovac volume slide ;dostavame z longu na prvni 4 bite move.b d4,d0 and.b #$f0,d4 ;vynulujeme casovac vol. slide pro jeho novou hodnotu addq.b #1,d0 ;hodnota casovace je vzdy snizena o 1, kvuli pouziti ;plneho rozsahu 4 bitu. Pri 1.cyklu mame casovac na ;hodnote 0f, po zvyseni hodnoty mame 10... and.b #$0f,d0 ;...cim i ted dostavme na casovaci nulovou hodnotu or.b d0,d4 ;zapisuji do D4 novou hodnotu casovace volume slide ror.l #4,d4 ;dostali na spravnou hodnotu pro casovac D4, ktery nam ;zacina od hodnoty 0 a ne 1 swap d2 cmp.b d2,d0 ; bne smp2nd2; ok bne hraj1 ;; and.l #$0fffffff,d4 or.l #$f0000000,d4 ;; add.b d5,d2 ;1/4 delky taktu,+1/4 delky taktu nebo 1/2 pro dosazeni ;hodnot 1/2 a 3/4 z casovace pro cely takt pro utlumeni ;samplu v rozsahu hodnoty nedostacujici po 1 celem taktu ;zde test ztlumeni samplu 1-4 ;; move.w #0,d0 ;; tst.l d0 ;; beq smp2nd2; ok cmp.l #$ffff,d0 ;pokud jsou neni data v hornich 2 byte z longu, jdi ;rovnou na zpracovani volume slide bls.w tstSlid; swap d0 btst #0,d0 ;1.kanal beq tst2k move.w #1,$dff096 and.w #$eff,d1 tst2k btst #1,d0 ;2.kanal beq tst3k move.w #2,$dff096 and.w #$dff,d1 tst3k btst #2,d0 ;3.kanal beq tst3k2 move.w #4,$dff096 and.w #$bff,d1 tst3k2 ror.w #3,d0 ;; add.b d5,d2 swap d0 ; bra tstSlid; ok tstSlid ; swap d2 ror.w #8,d2 ;hodnotu zmeny hlasitosti volume slide do 0.byte addq.b #1,d2 ; and.b #$0f,d2 ;myslim ze AND neni treba, mam zde pouze hodnotu zmeny ;hlasitosti pro volume slide ; move.b #$01,d2 btst #6,d7 ;hlasitost 0.kanalu (0-3) opraveno beq vSlide2 btst #7,d7 beq vSMin1 add.b d2,d7 move.b d7,d0 and.b #$3f,d0 addq.b #1,d0 bra vSlidV1 vSMin1 sub.b d2,d7 move.b d7,d0 addq.b #1,d0 and.b #$3f,d0 vSlidV1 move.b d0,$dff0a9 vSlide2 rol.l #8,d7 ;hlasitost 1.kanalu (0-3) opraveno btst #6,d7 beq vSlide3 btst #7,d7 beq vSMin2 add.b d2,d7 move.b d7,d0 and.b #$3f,d0 addq.b #1,d0 bra vSlidV2 vSMin2 sub.b d2,d7 move.b d7,d0 addq.b #1,d0 and.b #$3f,d0 vSlidV2 move.b d0,$dff0b9 vSlide3 rol.l #8,d7 ;hlasitost 2.kanalu (0-3) opraveno btst #6,d7 beq vSlide4 btst #7,d7 beq vSMin3 add.b d2,d7 move.b d7,d0 and.b #$3f,d0 addq.b #1,d0 bra vSlidV3 vSMin3 sub.b d2,d7 move.b d7,d0 addq.b #1,d0 and.b #$3f,d0 vSlidV3 move.b d0,$dff0c9 vSlide4 rol.l #8,d7 ;hlasitost 3.kanalu (0-3) puvodni oprava btst #6,d7 beq vSlide5 btst #7,d7 beq vSMin4 add.b d2,d7 move.b d7,d0 and.b #$3f,d0 addq.b #1,d0 bra vSlidV4 vSMin4 sub.b d2,d7 move.b d7,d0 addq.b #1,d0 and.b #$3f,d0 vSlidV4 move.b d0,$dff0d9 vSlide5 subq.b #1,d2 ror.w #8,d2 ;hodnotu hlasitosti volume slide do 1.byte ;v 0.byte je frekvence zmeny hlasitosti volume slide rol.l #8,d7 ; swap d2 hraj1 swap d2 hraj2 move.w d1,d2 move.b #$80,d2 ror.w #8,d2 ; and.b #$1,d2 ;;freVibra30 move.b #$00,$bfde00 move.b #$7f,$bfdd00 ;c2 c1 move.b #$a0,$bfd400 ;00n80n60n50n4cn48n44n40j00j00j ,2000=1/100 vteriny move.b #$17,$bfd500 ;2e 2d 2d 2d 2d 2d 2d 2d 2d 2c move.b #$09,$bfde00 waitVibra2 btst.b #0,$bfdd00 beq waitVibra2 move.w d2,$dff096 ; btst #$19,d4 ;vypnute sfx. Psani textu bez zpozdeni? ; bne freVibra4 freVibra30 move.b #$00,$bfde00 move.b #$7f,$bfdd00 ;c2 c1 move.b #$a0,$bfd400 ;00n80n60n50n4cn48n44n40j00j00j ,2000=1/100 vteriny move.b #$17,$bfd500 ;2e 2d 2d 2d 2d 2d 2d 2d 2d 2c move.b #$09,$bfde00 waitVibra btst.b #0,$bfdd00 beq waitVibra cmp.b d4,d1 ;souhlasi? ;; beq klik ; bne txtIn1time bne docasneTextro ;;zde pokracovat ; add.b #1,d2 ; tst.w a4 ; beq ztlumT2 ; cmp.w d2,a4 ; beq ztlum1 ;ztlumT2 tst.w a5 ; beq ztlumT3 ; cmp.w d2,a5 ; beq ztlum2 ;ztlumT3 tst.w a3 ; beq ztlumT4 ; cmp.w d2,a3 ; beq ztlum3 ;ztlumT4 ;; tst.w d7 ; tst.w a1 ; beq ztlumKon ;; cmp.w d2,d7 ; cmp.w d2,a1 ; beq ztlum4 ;ztlumKon ;ztlum1 move.w #1,$dff096 ;ztlum kanal 1 ; bra ztlumT2 ;ztlum2 move.w #2,$dff096 ;ztlum kanal 2 ; bra ztlumT3 ;ztlum3 move.w #4,$dff096 ;ztlum kanal 3 ; bra ztlumT4 ;ztlum4 move.w #8,$dff096 ;ztlum kanal 4 ; bra ztlumKon klik ; swap d0 ;pro praci s DMA bsr testMysi tst.w d0 beq stisknuto ;stisknuto!!! Ukonci!!! subq.l #4,a0 ; cmp.b #$3f,(a0) ; beq zacatek ;obnov hrajici sample btst #26,d4 bne zacatek bra zahrajSampl ;vyber dalsi frekvenci pro sample zacatek cmp.w #$3f3f,(a0) beq stisknuto ; addq.l #4,a0 ;asi jiz nemusi v kodu byt 6.srpen 2023 bra skladba ;;;;; jsr _LVOPermit(a6) ;;;;; rts ;konec programu!!! testMysi btst #$6,$bfe001 ; bne nestisknuto bne testEsc move.w 0,d0 rts testEsc move.b $bfec01,d0 not.b d0 ror.b #1,d0 cmp.b #$40,d0 bne nestisknuto move.w 0,d0 nestisknuto ;funguje i pro ukonceni!!! rts stisknuto move.w #$f,$dff096 ;;; ; move.l 4.w,a6 ;baze execu do a6 ;musi byt,jinak se exe neukonci ; ;baze execu do a6 ; LEA GFXLIB(PC),A1 ;;nacteme grafickou knihovnu ; JSR -408(A6) ; ;otevreme grafickou knihovnu kterou ; ;mame v A1 (vrati nam i hodnotu v D0) ; MOVE.L D0,A1 ;;v D0 je pointer na grafickou knihovnu ; MOVE.L 38(A1),$DFF080; ;adresu puvodniho systemoveho ;; move.w 38(a1),$dff080; ;Copperlistu dame do registru adresy ; ;pocatku programu pro Copper ; JSR -414(A6) ; ;zavreme grafickou knihovnu ; JSR -138(A6) ;spusteni multitaskingu ; MOVEQ #0,D0 ;vynuluj D0 RTS ;ukonci program time ;casova nahrada za nevykonanou predsekvenci move.b #$00,$bfde00 move.b #$7f,$bfdd00 move.b #$00,$bfd400 ;2000=1/100 vteriny move.b #$00,$bfd500 move.b #$09,$bfde00 waitTime btst.b #0,$bfdd00 beq waitTime ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 ; move.w d0,d0 rts cFreVd2 ; swap d4 swap d1 ; lea table5(pc),a2 ; clr.b d4 ; move.w #$6B1,d1 ;skok2 addq.b #1,d4 ; move.w (a2)+,d0 ; ror.w #8,d0 ; and.w #$ff,d0 ; sub.w d0,d1 ; cmp.b d4,d2 ; bne skok2 ; swap d4 ; move.b d2,d0 ; and.w #$ff,d0 and.w #$ff,d2 ; rol.b #1,d0 rol.b #1,d2 lea table5(pc),a2 ; move.w (a2,d0.w),d1 move.w (a2,d2.w),d1 rts cFreVd5 ; swap d0 swap d4 ; swap d5 lea table5(pc),a2 clr.b d4 move.w #$6B1,d5 skok5 addq.b #1,d4 move.w (a2)+,d0 ror.w #8,d0 and.w #$ff,d0 sub.w d0,d5 cmp.b d4,d3 bne skok5 ; swap d0 swap d4 rts tableST dc.l T00,T01 tableS0 dc.l S00,S01,S02,S03,S04,S05,S06,S07 tableS1 dc.l S30,S31,S32,S33,S34,S35,S36,S37 tableS2 dc.l S60,S61,S62,S63,S64,S65,S66,S67 tableS3 dc.l S90,S91,S92,S93,S94,S95,S96,S97 tableS4 dc.l SE0,SE1,SE2,SE3,SE4,SE5,SE6,SE7 table5 ; dc.l $01006000,$5B005500,$53004C00,$48004400,$40003C00 ;nova oktava ; dc.l $38003600 ;nova oktava ; dc.l $33003000,$2E002A00,$2A002600,$24002200,$20001E00 ; dc.l $1C001B00,$19001800,$17001500,$15001300,$12001100 ; dc.l $10000F00,$0E000E00,$0C000C00,$0C000A00,$0A000A00 ; dc.l $09000800,$08000800,$07000700 ; dc.l $06000600,$06000500,$05000500,$04000500,$04000300 ; dc.l $04000300,$00000000 dc.w 0000 dc.w 1712,1616,1525,1440,1357,1281,1209,1141,1077,1017,0961,0907 dc.w 0856,0808,0762,0720,0678,0640,0604,0570,0538,0508,0480,0453 dc.w 0428,0404,0381,0360,0339,0320,0302,0285,0269,0254,0240,0226 dc.w 0214,0202,0190,0180,0170,0160,0151,0143,0135,0127,0120,0113 dc.w 0107,0101,0095,0090,0085,0080,0076,0071,0067,0064,0060,0057 ;3ka vitez4? AGO ;table6 dc.l $01800180,$80800180,$80808080 ; dc.l $80808080,$80808180,$80808180 ; dc.l $81808080,$81808180,$80808180 ; dc.l $80808080,$80808080,$80800180 ; dc.l $80800180,$01800000 ;; dc.w $0000 ;SR ;table6 dc.l $01800180,$01808080,$80808180 ; dc.l $81808180,$81808180,$81808080 ; dc.l $80800180,$01800180 ; dc.w $0000 ;SR2 ;table6 dc.l $01018001,$80808081,$80818181 ; dc.l $81808180,$80800180,$01010000 ; dc.w $0000 ;SR3 ;table6 dc.l $01800180,$01808080,$81808180 ; dc.l $81808180,$81808180,$80800180 ; dc.l $01800180 ; dc.w $0000 ;SR4 ;table6 dc.l $01800180,$01808080,$80818081 ; dc.l $80818081,$80818081,$80808080 ; dc.l $01800180,$01800000 ;; dc.w $0000 ;SR5 table6 dc.l $01800180,$01808080,$80818081 dc.l $80818180,$81808180,$80808001 dc.l $80018001 dc.w $8000 ;table6 dc.l $80808080 ; dc.w $0000 ;arpeggio hlasitost 1 pulsinusovka-posledni verze ; dc.l $24292e34,$343a3a40,$40404040,$4040403a ; dc.l $3a3a3a34,$34342e2e,$2e292929,$24241f1f ; dc.w $0000 CNOP 0,4 ;CHARTAB: DC.B "*0987654321FEDCBA^&$GHIJKkLMmNOoPQRSTUuVWXxYZ/!?:.,%-" ;_ " CHARS: ;dc.b $00, $00, $00, $FE, $00, $00, $00, $00 ;* 00gr.znakNove dc.b 0,0,0,0,0,0,0,0 ;32 space ;dc.b 0,0,0,0,0,0,0,0 ;33 dc.b $30, $78, $78, $30, $00, $00, $30, $00 ;! 33 uprava pro zlute pismo Reset dc.b 0,0,0,0,0,0,0,0 ;34 dc.b 0,0,0,0,0,0,0,0 ;35 dc.b 0,0,0,0,0,0,0,0 ;36 dc.b 0,0,0,0,0,0,0,0 ;37 dc.b 0,0,0,0,0,0,0,0 ;38 dc.b 0,0,0,0,0,0,0,0 ;39 dc.b 0,0,0,0,0,0,0,0 ;40 dc.b 0,0,0,0,0,0,0,0 ;41 dc.b 0,0,0,0,0,0,0,0 ;42 dc.b 0,0,0,0,0,0,0,0 ;43 dc.b 0,0,0,0,0,0,0,0 ;44 ;dc.b 0,0,0,0,0,0,0,0 ;45 dc.b $00, $00, $00, $7C, $00, $00, $00, $00 ;- 45 ;dc.b $ff, $ff, $ff, $ff, $ff, $ff, $ff, $ff ;- 45 dc.b 0,0,0,0,0,0,0,0 ;46 dc.b 0,0,0,0,0,0,0,0 ;47 dc.b $7C, $C6, $CE, $D6, $E6, $C6, $7C, $00 ;0 48 dc.b $18, $38, $18, $18, $18, $18, $7E, $00 ;1 49 dc.b $7C, $C6, $06, $3C, $60, $C0, $FE, $00 ;2 50 dc.b $FE, $0C, $18, $3C, $06, $06, $FC, $00 ;3 51 dc.b $1C, $3C, $6C, $CC, $FE, $0C, $0C, $00 ;4 52 dc.b $FE, $C0, $C0, $FC, $06, $06, $FC, $00 ;5 53 dc.b $3C, $60, $C0, $FC, $C6, $C6, $7C, $00 ;6 54 dc.b $FE, $C6, $0C, $18, $30, $30, $30, $00 ;7 55 dc.b $78, $C4, $E4, $78, $BE, $86, $7C, $00 ;8 56 dc.b $7C, $C6, $C6, $7E, $06, $0C, $78, $00 ;9 57 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 00 dc.b $38, $6C, $C6, $C6, $FE, $C6, $C6, $00 ;A 65 dc.b $F8, $CC, $CC, $FC, $C6, $C6, $FC, $00 ;B 66 dc.b $3C, $66, $C0, $C0, $C0, $66, $3C, $00 ;C 67 dc.b $F8, $CC, $C6, $C6, $C6, $CC, $F8, $00 ;D 68 dc.b $FE, $C0, $C0, $F8, $C0, $C0, $FE, $00 ;E 69 dc.b $FE, $C0, $C0, $F8, $C0, $C0, $C0, $00 ;F 70 ;dc.b $01, $03, $07, $FF, $00, $00, $00, $00 ;^ 00gr.znakNove-nevyuzito ;dc.b $00, $80, $C0, $FE, $00, $00, $00, $00 ;& 00gr.znakNove ;dc.b $08, $1C, $3E, $3E, $3E, $1C, $08, $00 ;$ 00 dc.b $3C, $66, $C0, $C0, $CE, $62, $3E, $00 ;G 71 dc.b $C6, $C6, $C6, $FE, $C6, $C6, $C6, $00 ;H 72 dc.b $7E, $18, $18, $18, $18, $18, $7E, $00 ;I 73 dc.b $FE, $0C, $0C, $0C, $0C, $D8, $70, $00 ;J 74 dc.b $C6, $CC, $D8, $F0, $D8, $CC, $C6, $00 ;K 75 ;dc.b $00, $00, $C6, $CC, $F8, $CC, $C6, $00 ;k 12nove dc.b $C0, $C0, $C0, $C0, $C0, $C0, $FE, $00 ;L 13 dc.b $C6, $EE, $FE, $D6, $C6, $C6, $C6, $00 ;M 14 ;dc.b $00, $00, $C6, $EE, $FE, $D6, $C6, $00 ;m 15nove dc.b $C6, $E6, $F6, $FE, $DE, $CE, $C6, $00 ;N 16 dc.b $7C, $C6, $C6, $C6, $C6, $C6, $7C, $00 ;O 17 ;dc.b $00, $00, $7C, $C6, $C6, $C6, $7C, $00 ;o 18nove dc.b $F8, $CC, $C6, $CC, $F8, $C0, $C0, $00 ;P 19 dc.b $38, $6C, $C6, $C6, $C6, $6C, $3A, $00 ;Q 20 dc.b $F8, $CC, $C6, $CC, $F8, $CC, $C6, $00 ;R 21 dc.b $7E, $C0, $C0, $7C, $06, $06, $FC, $00 ;S 22 dc.b $7E, $18, $18, $18, $18, $18, $18, $00 ;T 23 dc.b $C6, $C6, $C6, $C6, $C6, $C6, $7C, $00 ;U 24 ;dc.b $00, $00, $C6, $C6, $C6, $C6, $7C, $00 ;u 24 dc.b $C6, $C6, $C6, $C6, $C6, $6C, $38, $00 ;V 25 dc.b $C6, $C6, $C6, $D6, $FE, $EE, $C6, $00 ;W 26 dc.b $C6, $EE, $7C, $38, $7C, $EE, $C6, $00 ;X 27 ;dc.b $00, $00, $C6, $6C, $38, $6C, $C6, $00 ;x 28nove dc.b $c6, $c6, $c6, $7e, $0c, $0c, $f8, $00 ;Y 29 dc.b $FE, $0C, $18, $30, $60, $C0, $FE, $00 ;Z 30 dc.b $0c, $0c, $18, $18, $30, $30, $60, $60 ;/ 41 ;dc.b $30, $78, $78, $30, $00, $00, $30, $00 ;! 42 uprava pro zlute pismo Reset dc.b $3C, $66, $06, $1C, $18, $00, $18, $00 ;? 43 dc.b $00, $00, $60, $00, $00, $60, $00, $00 ;: 44 uprava pro zlute pismo Reset dc.b $00, $00, $00, $00, $00, $60, $60, $00 ;. 45 posunuta doprava vuci orig. dc.b $00, $00, $00, $00, $00, $60, $60, $40 ;, 46 dc.b $00, $00, $00, $00, $00, $00, $7C, $00 ;% 47podtrzitkoNove dc.b $00, $00, $00, $7C, $00, $00, $00, $00 ;- 48 dc.b $00, $00, $00, $00, $00, $00, $00, $00 ; 49 dc.b $00, $00, $00, $00, $00, $00, $00, $00 ;_ 50 GFXLIB: DC.B "graphics.library",0,0 ;EVEN ; cnop 0,4 cnop 0,2 COPLIST: DC.W $008E,$2c81 ;pro vypsani celeho textu na obrazovku, DC.W $0090,$2cc1 ;jinak bude zobrazen pouze vysek obrazovky ;v pripade textra se nezobrzi posledni ;radek z posledniho radku textu DC.W $0092,$0038 ;start,prenos obrazovych dat DC.W $0094,$00D0 ; stop,prenos obrazovych dat ; vypocet pro LoRes,start+(pocet wordu-1)*8 ; tedy 56+(20-1)*8=$D0 DC.W $0100,$2200 ;BPLCON0 = $0100 = $dff100 zapis ; :: ; 1+--- pouzity 1 bitplane (2 barvy) ; : nastavujeme 12.bit u $dff100 ; 2--- aktivace barvoveho signalu Amiga 1000 ; nastavujeme 9.bit u $dff100 DC.W $0102,$0000 ;BPLCON1 = $0102 = $dff102 ; : ; 1-- horizontalni rolovani po 1 pixelu (140ns) ; (1 nemusi byt, nechavam puvodni nastaveni ; nicmene $dff102 musi byt alespon ; kompletne vynulovan) ; nastavujeme 0.bit u $dff102 DC.W $0104,$0000 ;BPLCON2 DC.W $0106,$0000 ;musi byt,jinak exe nedodrzi barvy DC.W $0108,$0000 ;modulo pro liche/neparne radky DC.W $010A,$0000 ;modulo pro sude/parne radky SPRADR: ;pridano pro zruseni nekdy se objevujiciho bordelu v grafice ;vynulujeme pointre/ukazatele na sprite 0-7 dc.w $0120,$0000,$0122,$0000 ;SPR0PTH, SPR0PTL dc.w $0124,$0000,$0126,$0000 ;SPR1PTH, SPR1PTL dc.w $0128,$0000,$012A,$0000 ;SPR2PTH, SPR2PTL dc.w $012C,$0000,$012E,$0000 ;SPR3PTH, SPR3PTL dc.w $0130,$0000,$0132,$0000 ;SPR4PTH, SPR4PTL dc.w $0134,$0000,$0136,$0000 ;SPR5PTH, SPR5PTL dc.w $0138,$0000,$013A,$0000 ;SPR6PTH, SPR6PTL dc.w $013C,$0000,$013E,$0000 ;SPR7PTH, SPR7PTL COLS: dc.w $0100,$2200 ; dc.w $0180,$0f00 ; dc.w $1b01,$ff00 dc.w $0180,$0f00 dc.w $1c01,$ff00 PLANES: DC.W $00E0,$0000,$00E2,$0000 ;adresa 1.bitplanu DC.W $00E4,$0000,$00E6,$0000 dc.w $0180,$0000 dc.w $5701,$fffe ;WAIT na radek $80, maskuj x i y ; dc.w $0180,$0000 dc.w $0180,$00F0 ;$dff180 = 0 => cerna barva pozadi dc.w $5801,$fffe ;WAIT na radek $80, maskuj x i y dc.w $0100,$2200 DC.W $0180,$0000 ;barva pozadi DC.W $0182,$0ff0 ;barva pisma DC.W $0184,$0f80 ;barva pozadi DC.W $0186,$0f80 ;barva pisma DC.W $01FC,$0000 ;sirka spritu ;; dc.w $f601,$fffe ;WAIT na radek $80, maskuj x i y ; dc.w $f901,$fffe ;WAIT na radek $80, maskuj x i y ;PLANES: ; DC.W $00E0,$0000,$00E2,$0000 ;adresa 1.bitplanu ; DC.W $00E4,$0000,$00E6,$0000 ; dc.w $0100,$0200 ; dc.w $0180,$0000 ;$dff180 = 0 => cerna barva pozadi dc.w $fa01,$fffe ;WAIT na radek $80, maskuj x i y dc.w $0180,$0f00 ;$dff180 = 0 => cerna barva pozadi ; dc.w $f701,$fffe ;WAIT na radek $80, maskuj x i y dc.w $fb01,$fffe ;WAIT na radek $80, maskuj x i y dc.w $0180,$0700 ;$dff180 = 0 => cerna barva pozadi dc.w $fc01,$fffe ;WAIT na radek $80, maskuj x i y dc.w $0180,$0000 ;$dff180 = 0 => cerna barva pozadi dc.w $ffdf,$fffe ; dc.w $0180,$0000 dc.w $3807,$ff00 dc.w $0180,$0f00 DC.W $FFFF,$FFFE ;ukonceni copperlistu ;rezervovane misto vyplnime 0 ;PLANE: BLK.B 257*40,0 ;rezervujeme pocet byte na adrese PLANE ; ;256*40 je velikost 1 bitplanu v bytech PLANE: BLK.B 257*40,0 ;rezervujeme pocet byte na adrese PLANE ;256*40 je velikost 1 bitplanu v bytech ;rezervovane misto vyplnime 0 ;rezervovane misto vyplnime 0 skladbyPattern ;; dc.l $0000031a ; dc.l $00000318 dc.l $00000314, $00000314,$00000000 ;music ;navesti prejmenovano na skladba1 kvuli skokum v patternech skladby ; 2.skladba ;1.kanal - vibrato ;2.kanal - (bez efektu) ;3.kanal - arpeggio ;4.kanal - mix ;poradi predsekvenci: SMP, volume, arpeggio ; dc.w $0000 ;skladba 0 dc.l $00000030, $000000e4 ;hlasitost 0 dc.l $00000030 ;hlasitost 0 ; tony sample hlasitost arpeggio pattern ; ; 0 1 2 3 321 0 0-12-3 1 2 3 0 dc.l $00000000;, ;$00040080 dc.l $00000000, $000000ff dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000, $00000000 dc.l $00000000 ;hraje celkem 1ch dc.l $2a000000, $000000a2, $fc0000c1, $000000e4 ; 00 ffffc7c3 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ;$--------, $-------- ; 01 dc.l $3D3D3D3D ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D ;$--------, $-------- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa ;$--------, $-------- ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 56 ok dc.l $3D3D3D3D ; 57 dc.l $3D3D3D3D ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D3D3D ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D3D3D ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a3D3D3D, $000000a2;,$00000000 ; 00 ok dc.l $3D3D3D3D ; 01 dc.l $3D3D3D3D;, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D;, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D;, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D;, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D;, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D;, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D;, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D;, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D;, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2;,$000800c1 ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D;, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2;,$000500c1 ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D;, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D;, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D;, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal,1ch ok dc.l $2a3D3D3D, $fc0000c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 58ok,1ch ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D3D3D, $000000ae;,$000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu,1ch ok dc.l $3d3D3D3D ; 61ok dc.l $3d3D3D3D;, $000600c1 ; 62ok dc.l $3d3D3D3D;, $00010080 ; 63ok ;hraju celkem 2ch ;dc.w $8000 dc.l $2a3D2a3D, $000080a2, $000fc0c1 ;, $000000e4 ; 00 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ; 01 dc.l $3D3D2a3D, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D2a3D, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D2a3D, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 08 dc.l $3D3D3D3D ; 09 dc.l $3D3D2a3D, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D2a3D, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 14 dc.l $3D3D3D3D ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 16 dc.l $3D3D3D3D ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 18 dc.l $3D3D3D3D ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ;$--------, $-------- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 32 dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ;$--------, $-------- ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ;$--------, $-------- ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ;$--------, $-------- ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ;$--------, $-------- ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ;$--------, $-------- ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 56 dc.l $3D3D3D3D ; 57 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D2a3D, $000600c1 ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 00 dc.l $3D3D3D3D ; 01 dc.l $3D3D2a3D, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D2a3D, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D2a3D, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 08 dc.l $3D3D3D3D ; 09 dc.l $3D3D2a3D, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D2a3D, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 14 dc.l $3D3D3D3D ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 16 dc.l $3D3D3D3D ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 18 dc.l $3D3D3D3D ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 32 dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal dc.l $2a3D2a3D, $fc0200c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 58ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D2a3D, $000000ae, $000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu dc.l $3d3D3D3D ; 61ok dc.l $3d3D2a3D, $000600c1 ; 62ok dc.l $3d3D3D3D, $00010080 ; 63ok ;hraju celkem 3ch dc.l $2a002a2a, $000000a2, $000fc7c3, $000000e4 ; 00 ffffc7c3 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ;$--------, $-------- ; 01 dc.l $3D3D2a3D, $000800c1, $0000c0e4, $00020181 ; 02 dc.l $3D3D3D3D, $0000c0e4, $00020181 ; 03 dc.l $3D3D2a3D, $000200c1, $0000c0e4, $00020181 ; 04 dc.l $3D3D3D3D, $0000c0e4, $00020181 ; 05 dc.l $3D3D2a3D, $000500c1, $0000c0e4, $00020181 ; 06 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1, $0000c0e4, $00020081 ; 08 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 09 dc.l $3D3D2a3D, $000400c1, $0000c0e4, $00020081 ; 10 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 11 dc.l $3D3D2a3D, $000200c1, $0000c0e4, $00020081 ; 12 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1, $0000c0e4, $00020081 ; 14 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1, $0000c0e4, $00020081 ; 16 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1, $0000c0e4, $00020081 ; 18 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1, $0000c0e4, $00020081 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1, $0000c0e4, $00020081 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1, $0000c0e4, $00020081 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ;$--------, $-------- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 32 dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ;$--------, $-------- ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ;$--------, $-------- ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ;$--------, $-------- ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ;$--------, $-------- ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ;$--------, $-------- ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 56 dc.l $3D3D3D3D ; 57 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D2a3D, $000600c1 ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a3D2a2a, $000000a2, $000fc0c7 ; 00 ffffc7c3 dc.l $3D3D3D3D ; 01 dc.l $3D3D2a3D, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D2a3D, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D2a3D, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 08 dc.l $3D3D3D3D ; 09 dc.l $3D3D2a3D, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D2a3D, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 14 dc.l $3D3D3D3D ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 16 dc.l $3D3D3D3D ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 18 dc.l $3D3D3D3D ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 32 dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal dc.l $2a3D2a3D, $fc0200c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 58ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D2a3D, $000000ae, $000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu dc.l $3d3D3D3D ; 61ok dc.l $3d3D2a3D, $000600c1 ; 62ok dc.l $3d3D3D3D;, $0001d080 ; 63ok ;hraju celkem 4ch dc.l $2a232a2a, $010401a2, $ffffc7c3, $000000e4 ; 00 ffffc7c3 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ;$--------, $-------- ; 01 dc.l $3D3D2a3D, $000800c1, $0000c0e4, $00020181 ; 02 dc.l $3D3D3D3D, $0000c0e4, $00020181 ; 03 dc.l $3D3D2a3D, $000200c1, $0000c0e4, $00020181 ; 04 dc.l $3D3D3D3D, $0000c0e4, $00020181 ; 05 dc.l $3D3D2a3D, $000500c1, $0000c0e4, $00020181 ; 06 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1, $0000c0e4, $00020081 ; 08 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 09 dc.l $3D3D2a3D, $000400c1, $0000c0e4, $00020081 ; 10 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 11 dc.l $3D3D2a3D, $000200c1, $0000c0e4, $00020081 ; 12 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1, $0000c0e4, $00020081 ; 14 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1, $0000c0e4, $00020081 ; 16 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1, $0000c0e4, $00020081 ; 18 dc.l $3D3D3D3D, $0000c0e4, $00020081 ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1, $0000c0e4, $00020081 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1, $0000c0e4, $00020081 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1, $0000c0e4, $00020081 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ;$--------, $ -30- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 32 dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ;$--------, $-------- ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ;$--------, $-------- ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ;$--------, $-------- ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ;$--------, $-------- ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ;$--------, $-------- ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ;$--------, $-------- ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D2a3D, $000000a6, $000200c1 ;$--------, $-------- ; 56 dc.l $3D3D3D3D ; 57 dc.l $3D3D2a3D, $000fc0c1 ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D2a3D, $000200c1 ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D2a3D, $000600c1 ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a272a2a, $010401a2, $000fc0c7 ; 00 ffffc7c3 dc.l $3D3D3D3D ; 01 dc.l $3D3D2a3D, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D2a3D, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D2a3D, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 08 dc.l $3D3D3D3D ; 09 dc.l $3D3D2a3D, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D2a3D, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 14 dc.l $3D3D3D3D ; 15 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 16 dc.l $3D3D3D3D ; 17 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 18 dc.l $3D3D3D3D ; 19 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 20 dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 24 dc.l $3D3D3D3D ; 25 dc.l $3D3D2a3D, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D2a3D, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D2a3D, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a2a2a3D, $010401a2, $000fc0c1 ; 32;; dc.l $3D3D3D3D ; 33 dc.l $2a3D2a3D, $000000a2, $000800c1 ; 34 dc.l $3D3D3D3D ; 35 dc.l $3D3D2a3D, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D2a3D, $000000a2, $000500c1 ; 38 dc.l $3D3D3D3D ; 39 dc.l $2a3D2a3D, $000000a6, $000fc0c1 ; 40 dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D2a3D, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D2a3D, $000000aa, $000fc0c1 ; 46 dc.l $3D3D3D3D ; 47 dc.l $2a3D2a3D, $000000a2, $000400c1 ; 48 dc.l $3D3D3D3D ; 49 dc.l $2a3D2a3D, $000000a6, $000200c1 ; 50 dc.l $3D3D3D3D ; 51 dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 52 dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal dc.l $2a2c2a3D, $010401a0, $fc0200c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D2a3D, $000000a2, $000fc0c1 ; 58ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D2a3D, $000000ae, $000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu dc.l $3d3D3D3D ; 61ok dc.l $3d3D2a3D, $000600c1 ; 62ok dc.l $3d3D3D3D, $00014080 ; 63ok dc.l $00000444 ; skok dc.l $2a000000, $000000a2, $fc0000c1, $000000e4 ; 00 ffffc7c3 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ;$--------, $-------- ; 01 dc.l $3D3D3D3D ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D ;$--------, $-------- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa ;$--------, $-------- ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 56 ok dc.l $3D3D3D3D ; 57 dc.l $3D3D3D3D ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D3D3D ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D3D3D ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a3D3D3D, $000000a2;,$00000000 ; 00 ok dc.l $3D3D3D3D ; 01 dc.l $3D3D3D3D;, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D;, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D;, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D;, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D;, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D;, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D;, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D;, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D;, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2;,$000800c1 ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D;, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2;,$000500c1 ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D;, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D;, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D;, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal,1ch ok dc.l $2a3D3D3D, $fc0000c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 58ok,1ch ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D3D3D, $000000ae;,$000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu,1ch ok dc.l $3d3D3D3D ; 61ok dc.l $3d3D3D3D;, $000600c1 ; 62ok dc.l $3d3D3D3D;, $0001f080 ; 63ok ;dc.l $00000444 ; skok ;dc.l $000006e4 ; skok 6e4 ok dc.l $2a000000, $000000a2, $fc0000c1, $000000e4 ; 00 ffffc7c3 ;spatny radek pouze test jestli pujde volumw slide na maximalni hlasitost dc.l $3D3D3D3D ;$--------, $-------- ;$--------, $-------- ; 01 dc.l $3D3D3D3D ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D ;$--------, $-------- ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D ;$--------, $-------- ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D ;$--------, $-------- ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D ;$--------, $-------- ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D ;$--------, $-------- ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D ;$--------, $-------- ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa ;$--------, $-------- ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2 ;$--------, $-------- ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D ;$--------, $-------- ; 54 dc.l $3D3D3D3D ; 55 dc.l $2a3D3D3D, $000000a6 ;$--------, $-------- ; 56 ok dc.l $3D3D3D3D ; 57 dc.l $3D3D3D3D ;$--------, $-------- ; 58 dc.l $3D3D3D3D ; 59 dc.l $3D3D3D3D ;$--------, $-------- ; 60 dc.l $3D3D3D3D ; 61; dc.l $003D3D3D ;$--------, $-------- ; 62 dc.l $3d3D3D3D ; 63 ; tony sample hlasitost arpeggio pattern dc.l $2a3D3D3D, $000000a2;,$00000000 ; 00 ok dc.l $3D3D3D3D ; 01 dc.l $3D3D3D3D;, $000800c1 ; 02 dc.l $3D3D3D3D ; 03 dc.l $3D3D3D3D;, $000200c1 ; 04 dc.l $3D3D3D3D ; 05 dc.l $3D3D3D3D;, $000500c1 ; 06 dc.l $3D3D3D3D ; 07 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 08 ok dc.l $3D3D3D3D ; 09 dc.l $3D3D3D3D;, $000400c1 ; 10 dc.l $3D3D3D3D ; 11 dc.l $3D3D3D3D;, $000200c1 ; 12 dc.l $3D3D3D3D ; 13 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 14 ok dc.l $3D3D3D3D ; 15 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 16 ok dc.l $3D3D3D3D ; 17 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 18 ok dc.l $3D3D3D3D ; 19 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 20 ok dc.l $3D3D3D3D ; 21 dc.l $3D3D3D3D;, $000400c1 ; 22 dc.l $3D3D3D3D ; 23 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 24 ok dc.l $3D3D3D3D ; 25 dc.l $3D3D3D3D;, $000fc0c1 ; 26 dc.l $3D3D3D3D ; 27 dc.l $3D3D3D3D;, $000200c1 ; 28 dc.l $3D3D3D3D ; 29 dc.l $003D3D3D;, $000600c1 ; 30 dc.l $3d3D3D3D ; 31 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 32 ok dc.l $3D3D3D3D ; 33 dc.l $2a3D3D3D, $000000a2;,$000800c1 ; 34 ok dc.l $3D3D3D3D ; 35 dc.l $3D3D3D3D;, $000200c1 ; 36 dc.l $3D3D3D3D ; 37 dc.l $2a3D3D3D, $000000a2;,$000500c1 ; 38 ok dc.l $3D3D3D3D ; 39 dc.l $2a3D3D3D, $000000a6;,$000fc0c1 ; 40 ok dc.l $3D3D3D3D ; 41 dc.l $3D3D3D3D;, $000400c1 ; 42 dc.l $3D3D3D3D ; 43 dc.l $3D3D3D3D;, $000200c1 ; 44 dc.l $3D3D3D3D ; 45 dc.l $2a3D3D3D, $000000aa;,$000fc0c1 ; 46 ok dc.l $3D3D3D3D ; 47 dc.l $2a3D3D3D, $000000a2;,$000400c1 ; 48 ok dc.l $3D3D3D3D ; 49 dc.l $2a3D3D3D, $000000a6;,$000200c1 ; 50 ok dc.l $3D3D3D3D ; 51 dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 52 ok dc.l $3D3D3D3D ; 53 dc.l $3D3D3D3D;, $000400c1 ; 54 dc.l $2a3D3D3D, $000000a6, $300000c1 ; 55;pokr 0.kanal,1ch ok dc.l $2a3D3D3D, $fc0000c1 ; 56ok dc.l $3D3D3D3D ; 57ok dc.l $2a3D3D3D, $000000a2;,$000fc0c1 ; 58ok,1ch ok dc.l $3D3D3D3D ; 59ok dc.l $2a3D3D3D, $000000ae;,$000200c1 ; 60ok 0.kanal nekde stopnout sampl-novy ton vuci predeslemu patternu,1ch ok dc.l $3d3D3D3D ; 61ok dc.l $3d3D3D3D;, $000600c1 ; 62ok dc.l $3d3D3D3D, $0001f080 ; 63ok ;dc.l $00000444 ; skok ;dc.l $000006e4 ; skok 6e4 ok dc.l $0000097c ; skok 97c ok ;0.kanal posledniho patternu zeditovany ;1.kanal ;2.kanal posledniho patternu zeditovany ;3.kanal posledniho patternu zeditovany ; --------konec-------- dc.l $3f3f3f3f TEXT: ;DC.B 0 DC.B $00,0,"TELADBA " ;DC.B $01,0,"E " ;DC.B $02,0,"E " ;DC.B $03,0,"ESED SOFTWARE 2 " DC.B $04,0,"L " DC.B $05,0,"E C " DC.B $06,0,"E CSM " DC.B $07,0,"E CCTAMED V1.03C " DC.B $08,0,"E CENOISE V3.3 " DC.B $09,0,"E CROTRACKER V3.61 " DC.B $0a,0,"F CDS MUSIC ROUTINE V1.0 E" DC.B $0b,0,"E CINIWRAPPER CODE V1.04 E" DC.B $0c,0,"E CINIWRAPPER CODE V1.04 E" DC.B $0d,0,"C CINIWRAPPER CODE V1.04 E" DC.B $0e,0,"C CINIWRAPPER CODE V1.04 E" DC.B $0f,0,"A CINIWRAPPER CODE V1.04 E" DC.B $80,13,5,1 ;,0," DC.B $00,0," " ;DC.B $01,0," " ;DC.B $02,0," " ;DC.B $03,0," USED SOFTWARE " DC.B $04,0," " DC.B $05,0," WINUAE V4.4.0 " DC.B $06,0,"E ASM PRO V1.18 " DC.B $07,0,"E OCTAMED V1.03C EDIT SAMPLES " DC.B $08,0,"E RENOISE V3.3 -1ST EDIT MOD " DC.B $09,0,"U PROTRACKER V3.61 -2ND EDIT MOD " DC.B $0a,0,"E CDS MUSIC ROUTINE V1.0 -3RD EDIT CMR " DC.B $0b,0," MINIWRAPPER CODE V1.04 BY PHOTON " DC.B $0c,0,"E MINIWRAPPER CODE V1.04 BY PHOTON " DC.B $0d,0,"E MINIWRAPPER CODE V1.04 BY PHOTON " DC.B $0e,0," MINIWRAPPER CODE V1.04 BY PHOTON " DC.B $0f,0,"E AINIWRAPPER CODE V1.04 BY PHOTON " DC.B $80,13,5,1 DC.B " " DC.B "-- ------- " DC.B "HI PEOPLE! " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "TEXT TEXTRO K CODE V1.04 BY PHOTON " DC.B "B CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "C MINIWRAPPER CODE V1.04 BY PHOTON " DC.B " CODE V1.04 BY PHOTON MINIWRAPPER " DC.B "AHOJ " ; DC.B 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 ; DC.B 0,$00,$f0,"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$" ;07 ; DC.B 0,$02,$a8,"$ $" ;08 ; DC.B 0,$04,$60,"$ $" ;09 ; DC.B 0,$06,$18,"$ $" ;10 ; DC.B 0,$07,$d0,"$ $" ;11 ; DC.B 0,$09,$88,"$ $" ;12 ; DC.B 0,$0b,$40,"$ $" ;13 ; DC.B 0,$0c,$f8,"$ $" ;14 ; DC.B 0,$0e,$b0,"$ $" ;15 ; DC.B 0,$10,$68,"$ $" ;16 ; DC.B 0,$12,$20,"$ $" ;17 ; DC.B 0,$13,$d8,"$ $" ;18 ; DC.B 0,$15,$90,"$ $" ;19 ; DC.B 0,$17,$48,"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$" ;20 ; DC.B 0,$c0,0," " ; DC.B -1,$c1,0," USED SOFT" ;WARE" ;08 ; DC.B 0,$c2,0," " ;09 ; DC.B 0,$c3,0," " ;10 ; DC.B 0,$c4,0,"WINUAE V4" ;.4.0" ;07 ; DC.B -1,$c5,0," ASM PRO V" ;1.18" ;08 ; DC.B 0,$c6,0,"OCTAMED V1" ;.03C" ; EDIT SAMPLES " ;09 ; DC.B 0,$c7,0," RENOISE " ;V3.3" ; -1ST EDIT MOD " ;10 ; DC.B 0,$c8,0,"PROTRACKER" ; V3." ; -2ND EDIT MOD " ;07 ; DC.B -1,$c9,0,"CDS MUSIC " ;ROUT" ; V1.0 -3RD EDIT CMR " ;08 ; DC.B 0,$ca,0,"MINIWRAPPE" ;R CO" ;V1.04 BY PHOTON " ;09 ; DC.B 0,$cb,0,"ATARI ATA" ;RI " ; ATARI " ;10 ; DC.B 0,$c0 ;DC.B 0,$e4,0,"$ $" ;11 ;DC.B 0,$e5,0,"$ $" ;12 ;DC.B 0,$e6,0,"$ AHOJ $" ;13 ;DC.B 0,$e7,0,"$ $" ;14 ;DC.B 0,$e8,0,"$ $" ;15 ;DC.B 0,$e9,0,"$ $" ;16 ;DC.B 0,$ea,0,"$ $" ;17 ;DC.B 0,$eb,0,"$ $" ;18 ;DC.B 0,$ec,0,"$ $" ;19 ;DC.B 0,$ed,0,"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$" ;20 ; DC.B 0,$c0,0, " " ; DC.B 0,$c1,0, " " ; DC.B 0,$c2,0, " " ; DC.B 0,$c3,0, "USED SOF" ; DC.B 0,$c4,0, " " ; DC.B 0,$c5,0, "WINUAE " ; DC.B 0,$c6,0, "ASM PRO " ; DC.B 0,$c7,0, "OCTAMED " ; DC.B 0,$c8,0, "RENOISE " ; DC.B 0,$c9,0, "PROTRACK" ; DC.B 0,$ca,0, "CDS MUSI" ; DC.B 0,$cb,0, "MINIWRAP" ; DC.B 0,$c0,0 ; DC.B $c0,8, " " ; DC.B 0,$c1,8, " " ; DC.B 0,$c2,8, " " ; DC.B 0,$c3,8, "TWARE " ; DC.B 0,$c4,8, " " ; DC.B 0,$c5,8, "V4.4.0 " ; DC.B 0,$c6,8, "V1.18 " ; DC.B 0,$c7,8, "V1.03C " ; DC.B 0,$c8,8, "V3.3 " ; DC.B 0,$c9,8, "ER V3.61" ; DC.B 0,$ca,8, "C ROUTIN" ; DC.B 0,$cb,8, "PER CODE" ; DC.B 0,$c0,0 ; DC.B $c0,16," " ; DC.B 0,$c1,16," " ; DC.B 0,$c2,16," " ; DC.B 0,$c3,16," " ; DC.B 0,$c4,16," " ; DC.B 0,$c5,16," " ; DC.B 0,$c6,16," " ; DC.B 0,$c7,16," EDIT SA" ; DC.B 0,$c8,16,"P1ST EDI" ; DC.B 0,$c9,16,"P2ND EDI" ; DC.B 0,$ca,16,"E V1.0 " ; DC.B 0,$cb,16," V1.04 B" ; DC.B 0,$c0,0 ; DC.B $c0,24," " ; DC.B 0,$c1,24," " ; DC.B 0,$c2,24," " ; DC.B 0,$c3,24," " ; DC.B 0,$c4,24," " ; DC.B 0,$c5,24," " ; DC.B 0,$c6,24," " ; DC.B 0,$c7,24,"MPLES " ; DC.B 0,$c8,24,"T MOD " ; DC.B 0,$c9,24,"T MOD " ; DC.B 0,$ca,24,"T CMR " ; DC.B 0,$cb,24," " ; DC.B 0,$c0,0 ; DC.B $c0,32," " ; DC.B 0,$c1,32," " ; DC.B 0,$c2,32," " ; DC.B 0,$c3,32," " ; DC.B 0,$c4,32," " ; DC.B 0,$c5,32," " ; DC.B 0,$c6,32," " ; DC.B 0,$c7,32," " ; DC.B 0,$c8,32," " ; DC.B 0,$c9,32," " ; DC.B 0,$ca,32," " ; DC.B 0,$cb,32," " ; DC.B 0,$c0,0 ; DC.B $c0,0, " " ; DC.B 0,$c1,0, " " ; DC.B 0,$c2,0, " " ; DC.B 0,$c3,0, " " ; DC.B 0,$c4,0, " " ; DC.B 0,$c5,0, " " ; DC.B 0,$c6,0, " " ; DC.B 0,$c7,0, " " ; DC.B 0,$c8,0, " " ; DC.B 0,$c9,0, " " ; DC.B 0,$ca,0, " " ; DC.B 0,$cb,0, " " ; DC.B 0,$c0,0; ; DC.B $c0,8, " " ; DC.B 0,$c1,8, " " ; DC.B 0,$c2,8, " " ; DC.B 0,$c3,8, " " ; DC.B 0,$c4,8, " " ; DC.B 0,$c5,8, " " ; DC.B 0,$c6,8, " " ; DC.B 0,$c7,8, " " ; DC.B 0,$c8,8, " " ; DC.B 0,$c9,8, " " ; DC.B 0,$ca,8, " " ; DC.B 0,$cb,8, " " ; DC.B 0,$c0,0 ; DC.B $c0,16," " ; DC.B 0,$c1,16," " ; DC.B 0,$c2,16," " ; DC.B 0,$c3,16," " ; DC.B 0,$c4,16," " ; DC.B 0,$c5,16," " ; DC.B 0,$c6,16," " ; DC.B 0,$c7,16," " ; DC.B 0,$c8,16," " ; DC.B 0,$c9,16," " ; DC.B 0,$ca,16," " ; DC.B 0,$cb,16," " ; DC.B 0,$c0,0 ; DC.B $c0,24," " ; DC.B 0,$c1,24," " ; DC.B 0,$c2,24," " ; DC.B 0,$c3,24," " ; DC.B 0,$c4,24," " ; DC.B 0,$c5,24," " ; DC.B 0,$c6,24," " ; DC.B 0,$c7,24," " ; DC.B 0,$c8,24," " ; DC.B 0,$c9,24," " ; DC.B 0,$ca,24," " ; DC.B 0,$cb,24," " ; DC.B 0,$c0,0 ; DC.B $c0,32," " ; DC.B 0,$c1,32," " ; DC.B 0,$c2,32," " ; DC.B 0,$c3,33," " ; DC.B 0,$c4,32," " ; DC.B 0,$c5,33," " ; DC.B 0,$c6,32," " ; DC.B 0,$c7,32," " ; DC.B 0,$c8,32," " ; DC.B 0,$c9,32," " ; DC.B 0,$ca,32," " ; DC.B 0,$cb,32," " ; DC.B 0,$c0,0 ; DC.B $c0,0," " ; DC.B $c1,0," " ; DC.B $c2,0," " ; DC.B $c3,0," USED SOFTWARE 2 " ; DC.B $c4,0," " ; DC.B $c5,0," C " ; DC.B $c6,0," CSM " ; DC.B $c7,0," CCTAMED V1.03C " ; DC.B $c8,0," CENOISE V3.3 " ; DC.B $c9,0," CROTRACKER V3.61 " ; DC.B $ca,0," CDS MUSIC ROUTINE V1.0 " ; DC.B $cb,0," CINIWRAPPER CODE V1.04 " ; DC.B $c0,$ff ;,0," ;DC.B 0,$0b,$40," TESTOVANO NA AMIZE 1200,4MB FAST RAM ",0,$0c,$f8,$02,$be ;, 0,$0b,$40,$80,$c1;13 ;DC.B 0,$0b,$40," _TESTED_ON_AMIGA_1200,4_MB_FAST_RAM_ ",0,$00,$00,$01,$e6 ;, 0,$0b,$40,$80,$c1;13 ;DC.B 0,$06,$18," /CZ/ ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$00,$f0," ",0,$02,$a8,$00,$00;, ;07 ; DC.B 0,$02,$a8," ",0,$04,$60,$00,$00 ;, 0,$10,$e0,$0,$31;08 ; DC.B 0,$04,$60," ************************************ ",0,$06,$18, 0, 0;, ;09 ; DC.B 0,$06,$18," USED SOFTWARE ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$07,$d0," ************************************ ",0,$09,$88, 0, 0;, ;11 ; DC.B 0,$09,$88," WINUAE V4.4.0 ",0,$0b,$40,$00,$00 ;, 0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," ASM PRO V1.18 ",0,$0c,$f8,$00,$00 ;, 0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," OCTAMED V1.03C EDIT SAMPLES ",0,$0e,$b0,$00,$00 ;, 0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," RENOISE V3.3 -1ST EDIT MOD ",0,$10,$68,$00,$00 ;, 0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," PROTRACKER V3.61 -2ND EDIT MOD ",0,$12,$20, 0, $00;, ;16 ; DC.B 0,$12,$20," CDS MUSIC ROUTINE V1.0 -3RD EDIT CMR ",0,$13,$d8,$00,$00 ;, 0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," MINIWRAPPER CODE V1.04 BY PHOTON ",0,$15,$90, 0, 0;, ;01 ; DC.B 0,$15,$90," ",0,$17,$48, 0, 0;, ;01 ;;DC.B 0,$17,$48," ",0,$00,$00,$03,$4e;, ;01 ;DC.B 0,$17,$48," ",0,$00,$00,$04,$3e;, ;01 ; DC.B 0,$00,$f0," ",0,$02,$a8,$00,$00;, ;07 ; DC.B 0,$02,$a8," ",0,$04,$60,$00,$00 ;, 0,$10,$e0,$0,$31;08 ; DC.B 0,$04,$60," ************************************ ",0,$06,$18, 0, 0;, ;09 ; DC.B 0,$06,$18," RESETKANI 2023 PARTY ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$07,$d0," ************************************ ",0,$09,$88, 0, 0;, ;11 ; DC.B 0,$09,$88," ",0,$0b,$40,$00,$00 ;, 0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," HELLO EVERYONE! ",0,$0c,$f8,$00,$00 ;, 0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," ",0,$0e,$b0,$00,$00 ;, 0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," WE WILL HAVE ANOTHER RESETKANI ",0,$10,$68,$00,$00 ;, 0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," GATHERING, WHICH WILL TAKE PLACE ",0,$12,$20, 0, 0;, ;16 ; DC.B 0,$12,$20," AS ALWAYS IN BRNO. BOTH AMIGA FANS ",0,$13,$d8,$00,$00 ;, 0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," AND EVERYONE ELSE IS INVITED. ",0,$15,$90, 0, 0;, ;01 ; DC.B 0,$15,$90," ",0,$17,$48, 0, 0;, ;01 ; DC.B 0,$17,$48," ",0,$00,$00,$02,$5e;, ;01 ; DC.B 0,$0b,$40," DATE OF THE EVENT: 31.3.- 2.4. ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0b,$40," VENUE: CENTRUM DENNICH SLUZEB ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," PRO SLUCHOVE POSTIZENE ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," STREET: VODOVA 35 ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," CITY: BRNO ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," CZECH REPUBLIC ",0,$15,$90, $0, $0 ;,01 ; DC.B 0,$0b,$40," EVENT PROGRAM: DEMO SHOW ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," CREAZY COMPO ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," DEATH MATCH- ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," -IN HIRED GUNS ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," FUN AMIGA QUIZ ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," AZ AMIGA QUIZ ",0,$15,$90, $0, $0 ;,01 ; DC.B 0,$0b,$40," OTHERS: ALCOHOLIC DRINKS ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," GOULASH BY NORO ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," SANDWICHES WITH FRIED- ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," -CHEESE CHILLI AND CHUTNEY ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," NON-ALCOHOLIC DRINKS ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," POTATO CHIPS ",0,$15,$90, $0, $0 ;,01 ; DC.B 0,$0b,$40," ORGANIZERS OF THE EVENT: ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," FREDDY ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," DEDY ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," MICE ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," NORO ",0,$15,$90, $0, $0 ;,01 ;;DC.B 0,$07,$d0," DEKUJI MOC ZA VSE... ",0,$09,$88, $0, $0 ;,11 ; DC.B 0,$09,$88," ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," PG ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," POISON ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," JANCIB ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," DAMI ",0,$00,$00,$02,$d6 ;,16 ; DC.B 0,$07,$d0," THANK YOU SO MUCH FOR EVERYTHING... ",0,$09,$88,$81,$20 ;,11 ; DC.B 0,$07,$d0," THANK YOU TO OUR CZ AND SK ",0,$09,$88, $0, $0 ;,11 ; DC.B 0,$09,$88," PROGRAMMERS, WHO DROVE ME FORWARD ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," IN AMIGA ASSEMBLER... ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," DEFOR OBIWANKEN ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," DJM ANTONY/DTA ",0,$12,$20,$00,$00 ;,16 ; DC.B 0,$12,$20," MARK LANEX ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ;;DC.B 0,$04,$60," ZDRAVIME... ",0,$06,$18, $0, $0 ;,09 ; DC.B 0,$06,$18," GREETINGS... ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$09,$88," ARTWAY ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," D.T.A.SOFTWARE STUDIO ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," VECTORS ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," KLIK ",0,$00,$00,$00,$F6 ;,0,$07,$08,$81,$81;15 ;;DC.B 0,$09,$88," PG_____________ ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ;;DC.B 0,$0b,$40," LOOKE________________ ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ;;DC.B 0,$0c,$f8," POISON_________ ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ;;DC.B 0,$0e,$b0," AKI____________ ",0,$00,$00,$00,$F6 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$09,$88," CERES SOFT ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," VBG SOFTWARE ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," 4004/482_ZO SVAZARMU ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," GEMBA BOYS ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," RM-TEAM ",0,$00,$00,$00,$00 ;,16 ; DC.B 0,$0b,$40," CHILDHOOD DREAM SOFTWARE ",0,$0c,$f8,$00,$00 ;, 0,$0b,$40,$80,$c1;13 ; DC.B 0,$0b,$40," CODE LISIAK ",0,$0c,$f8,$00,$00 ;, 0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," MUSIC NOOLY ",0,$0e,$b0,$00,$00 ;, 0,$08,$70,$81,$21;14 ; DC.B 0,$04,$60," GREETINGS... ",0,$06,$18, $0, $0 ;,09 ;;DC.B 0,$06,$18," ZDRAVIME... ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$09,$88," ZDENEK6 BUSY ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," MBORIK128 ROMBOR ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," LIBOR L.A. UB880D ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," CZECH HUMAN ACELTD ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$07,$d0," PHOTON DEFOR ",0,$09,$88, $0, $0 ;,11 ; DC.B 0,$09,$88," TRIXIE JOFA ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," SNAPPY HUMAN FACTOR ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," HOLYNA SOLARIS104 ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," PREDSEDA BOMBEROZA ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," CERV OBIWANKEN ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," EXIE PROBER ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," MARK GHH ",0,$00,$00,$01,$e6 ;,01 ; DC.B 0,$07,$d0," ",0,$09,$88, $0, $0 ;,11 ; DC.B 0,$09,$88," CHAIN ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," L.L.G. ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," SLACHA ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," TOMSOFT ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," JAY TEE ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," RASTER ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," ",0,$00,$00,$01,$E6 ;,01 ;;DC.B 0,$15,$90," ",0,$17,$48, $0, $0 ;,01 ;;DC.B 0,$17,$48," ",0,$00,$00,$00,$00 ;,01 ; DC.B 0,$09,$88," RESETKANI.EU ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," AMIGAPORTAL.CZ ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," AMIGA.LUKYSOFT.CZ ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," JACK.UNTERGRUND.NET ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," OLDCOMP.CZ ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," GHH.8U.CZ ...DO NOT PANIC ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$09,$88," PPA.PL ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," ARCADEHRY.CZ ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," EAB.ABIME.NET ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," CADA.PROBERS.CZ ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," NEKONECNY LABUZO YOUTUBE ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," AMIGA A ATARI ST CZ/SK FACEBOOK ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," ONESCAPE FOR ATARI 8BIT GAME ",0,$00,$00,$00,$00 ;,01 ;;DC.B 0,$0b,$40," ZDRAVIME Z... CZ / SK ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0b,$40," GREETINGS FROM CZ / SK ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ;;DC.B 0,$0b,$40," TEBE________ ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$8b,$40,"$ _WE GREET_YOU!_ $",0,$80,$00,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$00,$f0," ",0,$02,$a8,$00,$00 ;,07 ; DC.B 0,$02,$a8," A FEW EVENTS FOR 2023 ",0,$04,$60,$00,$00 ;,0,$10,$e0,$0,$31;08 ; DC.B 0,$04,$60," ************************************** ",0,$06,$18, $0, $0 ;,09 ; DC.B 0,$06,$18," NAME DATE OF EVENT COUNTRY ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$07,$d0," &***************^&************^&*****^ ",0,$09,$88, 0, 0;, ;11 ; DC.B 0,$09,$88," FOREVER 17.3. - 19.3. SK ",0,$0b,$40,$00,$00 ;,0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," REVISION 7.4. - 1O.4. DE ",0,$0c,$f8,$00,$00 ;,0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," AKF PARTY 28.4. - 1.5. CZ ",0,$0e,$b0,$00,$00 ;,0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," ARTWAY PARTY 7.7. - 9.7. CZ ",0,$10,$68,$00,$00 ;,0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," OLDSCHOOL PARTY 11.8. - 13.8. CZ ",0,$12,$20, $0, $0 ;,16 ; DC.B 0,$12,$20," OLDCOMP PARTY 8.9. - 10.9. CZ ",0,$13,$d8,$00,$00 ;,0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," BYTEFEST 26.10.- 29.10. CZ ",0,$15,$90, $0, $0 ;,01 ; DC.B 0,$15,$90," PRASEPARTY 23.11.- 26.11. CZ ",0,$17,$48, $0, $0 ;,01 ; DC.B 0,$17,$48," ",0,$00,$00,$00,$00 ;,01 ; DC.B 0,$04,$60," ************************************ ",0,$06,$18, 0, 0;, ;09 ; DC.B 0,$06,$18," USED SOFTWARE ",0,$07,$d0,$00,$00 ;,-1,0,$00,$00,$1,$25;10 ; DC.B 0,$07,$d0," ************************************ ",0,$09,$88, 0, 0;, ;11 ; DC.B 0,$09,$88," WINUAE V4.4.0 ",0,$0b,$40,$00,$00 ;, 0,$0e,$10,$80,$61;12 ; DC.B 0,$0b,$40," ASM PRO V1.18 ",0,$0c,$f8,$00,$00 ;, 0,$0b,$40,$80,$c1;13 ; DC.B 0,$0c,$f8," OCTAMED V1.03C EDIT SAMPLES ",0,$0e,$b0,$00,$00 ;, 0,$08,$70,$81,$21;14 ; DC.B 0,$0e,$b0," RENOISE V3.3 -1ST EDIT MOD ",0,$10,$68,$00,$00 ;, 0,$07,$08,$81,$81;15 ; DC.B 0,$10,$68," PROTRACKER V3.61 -2ND EDIT MOD ",0,$12,$20, 0, $00;, ;16 ; DC.B 0,$12,$20," CDS MUSIC ROUTINE V1.0 -3RD EDIT CMR ",0,$13,$d8,$00,$00 ;, 0,$04,$38,$81,$e1;17 ; DC.B 0,$13,$d8," MINIWRAPPER CODE V1.04 BY PHOTON ",0,$15,$90, 0, 0;, ;01 ;rezervovane misto vyplnime 0 ;****************************************************************************** ; TEXTRO KONEC ;****************************************************************************** ;PC ;mix 0.kanal BA incbin "DH1:MOD T02X3/05" BB incbin "DH1:MOD T02X3/06" BC incbin "DH1:MOD T02X3/07" BD incbin "DH1:MOD T02X3/08" ;bas 1.kanal BE incbin "DH1:MOD T02X3/02a" BF incbin "DH1:MOD T02X3/02b" ;smp s casovacem C0 C1 ;kytara 2.kanal C2 incbin "DH1:MOD T02X3/01" C3 C4 C5 ;klavesy 3.kanal C6 incbin "DH1:MOD T02X3/03" C7 incbin "DH1:MOD T02X3/04" C8 C9 ;CA incbin "DH1:MOD T02X3/DART_BOARD" CA incbin "DH1:MOD T02X3/k.chipbell5short0" * zde si doplnte cestu k samplu ;AA incbin "dh1:noSystem/sampl.smp" ;29.3.2023 o neco zkratit smycku
- Poděkování 2
Vložit komentář:
Vložit komentář: