Oznámení

Sbalit
Aktuálně žádná oznámení.

Assembler - všeobecná logika

Sbalit
X
 
  • Filtr
  • Čas
  • Zobrazit
Vymazat vše
new posts

  • Predseda
    odpověděl
    O: Assembler - všeobecná logika

    Jenže by to bylo míň dobrodružný.

    Vložit komentář:


  • Noro
    odpověděl
    O: Assembler - všeobecná logika

    Kurva kdyby jste použili MED player jak každému radím (je u toho jak knihovna tak kód pro využití) neměli by jste starosti a MED toho umí řádově víc.

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Shrnutí toho co jsem udělal od posledního Resetu v rámci skladby Atari Goes On! v mé hudební rutině:

    -přeeditování a i doeditování celého 1 kanálu (přístup k vysokým tónům díky vypnutí zvukového filtru). Výběr 2 nových nástrojů v tomhle kanálu hrajících.
    -drobná úprava sólového nástroje pro čistější přechod mezi tóny.
    -chybí dodělat poslední 3 patterny, dle všeho se jedná o 1 pattern opakující se 3 krát


    Pak ještě zkusit vložit kód pro vložení obrázku, test klávesy SPC. No a ten obrázek... V hlavě něco mám, dá se říci, že přes to potřebuji hodit nějaký text. Asi to má ještě čas, ale čím dál tím víc na to začínám myslet.

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Amiga, zvukový rozsah 4 oktávy?

    V mé hudební rutině jsem začínal s nekompletní oktávou 1 až 3. Tu jsem pak kompletně doplnil. Pak jsem přidal oktávu 0 a 4. Nultá oktáva mi hraje co se nedá říci o 4. oktávě. Tak jsem začal měnit periodu přímo v registru a opravdu se přestane tón zvyšovat u hodnoty periody 113. Na 107. periodě se mi již frekvence tónu nezvyšuje. Používám emulaci. Zkoušel jsem měnit různá nastavení zvuku, ale bez reakce.

    Zatím tedy asi budu muset zvýšit frekvencí samplu jeho editací. Zvednu ho o oktávu, aby jsem se dostal na požadovanou 4. oktávu, když mi to neumožňuje samotný rozsah mé hudební rutiny.

    Nultou a čtvrtou periodu jsem doplňoval z téhle dokumentace:


    Má jednoduchá tabulka zde. 1. číslo je pořadí tónu, pak nasleduje perioda a tón
    Code:
     0.oktáva        1.oktáva        2.oktáva        3.oktáva        4.oktáva
    
     01 1712 C0      0d 856 C1       19 428 C2       25 214 C3       31 107 C4
     02 1616 C0#     0e 808 C1#      1a 404 C2#      26 202 C3#      32 101 C4#
     03 1525 D0      0f 762 D1       1b 381 D2       27 190 D3       33  95 D4
     04 1440 D0#     10 720 D1#      1c 360 D2#      28 180 D3#      34  90 D4#
     05 1357 E0      11 678 E1       1d 339 E2       29 170 E3       35  85 E4
     06 1281 F0      12 640 F1       1e 320 F2       2a 160 F3       36  80 F4
     07 1209 F0#     13 604 F1#      1f 302 F2#      2b 151 F3#      37  76 F4#
     08 1141 G0      14 570 G1       20 285 G2       2c 143 G3       38  71 G4
     09 1077 G0#     15 538 G1#      21 269 G2#      2d 135 G3#      39  67 G4#
     0a 1017 A0      16 508 A1       22 254 A2       2e 127 A3       3a  64 A4
     0b  961 A0#     17 480 A1#      23 240 A2#      2f 120 A3#      3b  60 A4#
     0c  907 H0      18 453 H1       24 226 H2       30 113 H3       3c  57 H4

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Zdar programátoři,

    Včera jsem přišel v mé hudební rutině na nefunkčnost nastavování hlasitosti v posledním kanálu. Nebo přesněji kanálu, který se nastavuje jako poslední, tedy když 4.kanál nastavím třeba na druhém místě tak je OK. Výsledek všeho mého snažení do současné doby je, že když do posledního registru pro hlasitost zapisuji hodnotu z datových registrů D0 až D3, funčnost je špatná jak jsem popsal. Když zapisuji z D4 až D7, daná chyba se neprojevuje, lze tedy nastavit hlasitost ve všech 4 kanálech. CNOP 0,2 / 0,4 / 0,8 dané na různé části kódu nepomohlo. Daný problém, aby jsem mohl nastavovat hlasitost ve všech 4 kanálech pomocí D2, kterou mám na to učenou jsem zatím vyřešil tak, že jsem k 4 návěstím kde zapisuji úroveň hlasitosti do 4 registrů pro to určených přidal další návěstí a název návěstí jsem dal i do poměti pomocí DC. Po tomhle ne zrovna šťastném řešení správně nastavuji hlasitost ve všech 4 kanálech i za pomocí D2.

    Díky za mé nekamenování, když správné řešení je snadné a taky začne fungovat.

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    OK, kromě jiného můj dotaz přes PM směroval i na práci s hudbou a DJM mi doporučil přehrávač P61A. Je tam i celá rutina v asm na přehrávání:


    A zde je na Youtube tutoriál od Photona:
    This tutorial is a standalone description of how to convert a Protracker module to the P61 format, how to use the new playroutine and the optimization option...


    Tak zas někdy ( snad )

    Vložit komentář:


  • DJM
    odpověděl
    O: Assembler - všeobecná logika

    Ano, pouzitie CIA casovaca je jedna z moznosti. Zalezi v com to chces pouzit.

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Potrebujem nesystémovo docieliť niekoľkosekundové čakanie v rámci programu:
    Je tento zposob logiky na to čo potrebujem OK?

    Klikni pro plné zobrazení obrázku

Jméno: 8520 timerWait.jpg
Počet zobrazení: 1
Velikost: 25,6 KB
ID: 108862

    DJM, máš dalšiu príležitosť...

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    No vidíte všetci a ja že som provokatér...

    Vložit komentář:


  • DJM
    odpověděl
    O: Assembler - všeobecná logika

    Asi vadna disketa...

    No vidis, staci ta trosku nasrat a funguje to !




    PS: Vzdy nie, len ked pises nieco ty, tak mi to neda...
    Naposledy upravil DJM; 25.06.2016, 18:54:37.

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Teraz mi to zrazu 1. krát zobrazilo HALFBRITE režim, ničomu nerozumiem, nič som neurobil inak ako 100 krát pred tým... . Zopakoval som postup uloženia IFF v DPainte, uložena do RAW a zrazu zase OK. Toto muselo byť pošahaným súborom tváriacim sa, že je OK, alebo nejakou pamaťou stavu v rámci emulácie (a to som ju normálne aj celú vypol a znovu zapol). Pár hodín v prdeli ani neviem pre akú príčinu, ale už to zatiaľ funguje - konečne!

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Si vždy taký urýpaný?

    Áno, 6. bitplan určuje polovičný jas. Pokiaľ je tada v 6.bitplane logická 1, bude mať bod určený farbou bitplanu 1-5 z tejto farby polovičný jas. Mám teda za to, že sa 6.bitplan používa. Rovnako teda ako mám uložený IFF a je v informácii o ňom, že má 32 farieb a 6 bitplanov, očakával by som toto aj vo formáte RAW. Predpokladám, že v rámci programu teda pracujem so 6. bitplanom rovnako ako s bitplanom 1-5... . Pokiaľ by sme predsa pracovali len s 5 bitplanmi, chybala by nám informácia o tom, či má farebný bod mať, alebo nemať polovičný jas.
    Naposledy upravil Lisiak; 25.06.2016, 17:14:37.

    Vložit komentář:


  • DJM
    odpověděl
    O: Assembler - všeobecná logika

    Z hardware dokumentacie:

    11 bit v BPLCON0 (DFF100):

    HOMOD=Hold-and-modify mode (1 = Hold-and-modify mode (HAM);
    0 = Extra Half Brite (EHB) if HAM=0 and BPU=6
    and DBLPF=0 then bitplane 6 controls an intensity
    reduction in the other five bitplanes)


    Ja som v EHB nerobil, ale podla tohto jasne vyplyva, ze siestym bitplanom si len urcujes "intensity reduction",
    takze obrazok v RAW formate bude maximalne v 5 bitplanoch. Nemysli si, ze v EHB zobrazis 64 farebny obrazok.
    Zobrazis len 32 farieb + 32 odtienov tychto farieb s polovicnim jasom. Preto sa to vola Extra HALF BRITE.
    A to pises, ze vies ako HALFBRITE funguje...

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Pokiaľ nedostanem odpoveď prechádzam zatiaľ na 5 bitplanov a vrátim sa k tomu neskor. Sral som sa s tým priebežne od 1 v noci, stačilo .

    Vložit komentář:


  • Lisiak
    odpověděl
    O: Assembler - všeobecná logika

    Ehm, zatiaľ sa mi nepodarilo zobraziť režim HALFBRITE. Je tam nejaký rozdiel oproti klasickému zobrazeniu formátu RAW do 5 bitplanov, teda do 32 farieb? Viem ako HALFBRITE funguje, ale keď mám IFF v 6. bitplanov a dám ho konvertovať na RAW, tak mi viac programov uloží daný RAW len v 5. bitplanov. Testovací obrázok mám uložený pomocou Deluxe Paintu 5.2 v režime farieb HALFBRITE. Na test mám červený štvorec (100 percent farby) a červený štvorec (75 percent farby). Štvorce sú vedľa seba z palety prvých 2 farieb. Pod nimi sú rovnaké štvorce s polovičným jasom. Z palety v DPaintu prvé 2 farby za 32 farbami (teda s polovičným jasom). Do prvých 2 registrov farieb som dal v rámci červenej toto a mám za to, že presne tie isté mám aj v IFF - 0F00, 0C00. Do ďalších 30 registrov som dal pre istotu 0F00, aby som si bol istý, že je farba dopočítaná. Zposob zobrazenia obrázku RAW je po celých bitplanoch. Začiatky všetkých 6. bitplanov mám neadfinované (menej bitplanov funguje a RAW zobrazuje správne). V $DFF 100 mám nastavených 6 bitplanov (110000000000000 - 15.bit nenastavujem - Režim LOW-RES. ).

    ?

    Vložit komentář:

Zpracovávám...
X