Oznámení

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

Assembler - všeobecná logika

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

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

    Vývojové prostředí - Assembler 68k - tak tady to bylo
    Autorem citovaného textu je ObiWanKen Přejít na původní příspěvek
    Alokacia/uvolnenie pamate (_LVOAllocMem/_LVOFreeMem)
    Odstavenie/spustenie multitasking-u (_LVOForbid/_LVOPermit)
    Odstavenie/spustenie preruseni (_LVODisable/_LVOEnable)
    Praca s diskom (_LVOOpen,_LVORead,_LVOWrite,_LVOClose) a ktomu treba _LVOOpenLibrary,_LVOCloseLibrary (potrebujes otvorit dos.library).

    A tiez by si mal vediet kto ta spustil (CLI/WB). Je rozdiel ci bol program spusteny z CLI alebo s ikonou z WB.
    _LVOFindTask, _LVOWaitPort, _LVOGetMsg, _LVOReplyMsg.

    Mozno ich bude do 20 bez ktorých sa nezaobides.

    Vložit komentář:


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

    Vlastne predpokladám, že toto vyrieši odstavenie systému ).

    Vložit komentář:


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

    Tak som zistil, že pokiaľ používám zatiaľ stále od Obiho neupravený program na COPPER a spúšťam ho z AsmPro, tak mi to ukáže len čiernu obrazovku bez ďalších zmien, ktoré sú tiež v programe. Asi viem, odkiaľ vietor fúka. ClassicWB pomocou COPPERu natiahne v AGA pozadie a tým, že mením v programe práve pozadie mi program nereaguje tak ako by mal, teda zobrazí len čiernu obrazovku. Niečo podobné sa mi dialo, keď som pod Amigou v Pythone pomocou esc sekvencií chcel zmeniť pozadie. Nemohol som. Mohol som meniť farbu písma, farbu pozadia písma, ale farbu pozadia nie, tá mi zostávala povodna z ClassicWB. Pokiaľ pod emuláciou vypnem AGA, pri reštarte mi ClassicWB zahlási chybu CHOPPERu, pozadie sa nenatiahne / nezobrazí. Teda zobrazí sa len klasické šedé pozadie, ale COPPER už na program reaguje ako má, teda zobrazí viacej zmien v rámci farieb ktoré sú v programe a s ktorými sa ešte len budem hrať.

    Vložit komentář:


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

    Autorem citovaného textu je Lisiak4 Přejít na původní příspěvek
    A teraz dotaz. V rámci COPPERu má príkaz WAIT a SKIP v druhom worde na 15. bite tzv. BFD (BLITTER FINISHED DISABLED). Ten reaguje na 14. bit registru DMACON za podmienky, že je na BFD logická 0.
    Tak možná jsem se do té české a anglické příručky špatně koukal, ale dnes mi svitlo, že mám svou moudrou polskou a tam jsem nepřehlédl, že při WAIT je na tomhle 15. bite logická 1 a při SKIP logická 0.

    To už by mělo i logiku )

    Vložit komentář:


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

    Zatiaľ som + - porozumel tomu zkrátenému programu na COPPER bez obiho úpravy. Do toho upraveného programu som sa zatiaľ nepozrel a plánujem nepozrieť a to zámerne, pretože si zkrátený program chcem zkúsiť upraviť ja na základe toho, že od obiho viem, čo tam doplniť.

    A teraz dotaz. V rámci COPPERu má príkaz WAIT a SKIP v druhom worde na 15. bite tzv. BFD (BLITTER FINISHED DISABLED). Ten reaguje na 14. bit registru DMACON za podmienky, že je na BFD logická 0. Buď niečomu zle rozumiem, alebo to, či bude na BFD nula, alebo jednička možem určovať ja. Keď možem tak ako? To by potom bol jediný bit z druhého WORDu, ktorý by som mohol nastavovať... . Alebo si to, či bude na BFD nula, alebo jednička odšéfuje HW sám?

    Vložit komentář:


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

    Tak až dnes som sa dostal trochu k programovaniu. Zatiaľ sa celkom bavím, například ma pobavila opať moja hlúposť keď zdegenerovaný desiatkovou sútavou som sa nevedel dobrať, prečo sa na adresu dff096 zapisuje práve hodnota 8280 keď potrebujem v registru aktivovať 7. bit. Jak z hexa, tak z dvojkovej všetko na desiatkovú a tým to u mňa končilo a hľadal som logiku, jednoducho ma nenapadlo použit prevod z dvojkovej na hexa, načo by aj, keď tu máme tú desiatkovú sústavu. Skoro som sa zase niečo nové pokúsil vymyslieť... . No nič, pokračujem niekedy inokedy.

    Vložit komentář:


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

    Tu mas upraveny tvoj priklad, studuj )

    Klikni pro plné zobrazení obrázku

Jméno: Copper.jpg
Počet zobrazení: 1
Velikost: 51,2 KB
ID: 108776

    Vložit komentář:


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

    )

    To su podprogramy. Mozes ich volat cez JSR / BSR.
    Napr:

    bsr SetCopper ; Spusti copper.
    TestLMB ; Cakaj na LMB.
    bsr RestoreCopper ; Obnov copper.
    rts ; skonci
    Alebo si ich upravit podla potreby.

    Vložit komentář:


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

    OK, ale logicky by malo byť obnovenie Copper listu za spustením MyCopper1...?

    Vložit komentář:


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

    Autorem citovaného textu je Lisiak4 Přejít na původní příspěvek
    Tak jsem si uložil obrázek, tedy příklad pro COPPER z Amiga Review 17, abych nemusel pořád zapínat emulaci. Dám to i sem, níže je zdroják (soubor). Není to ADF, ale přímo zdroják.
    [ATTACH=CONFIG]6693[/ATTACH]
    [ATTACH]6694[/ATTACH]

    Odskusal som to, a mne systemovy/povodny copper "nevrati". Kazdopadne tu mas Spustenie/Obnovenie Copper listu.


    Klikni pro plné zobrazení obrázku

Jméno: Copper.jpg
Počet zobrazení: 1
Velikost: 70,5 KB
ID: 108775

    Vložit komentář:


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

    Autorem citovaného textu je Lisiak4 Přejít na původní příspěvek
    Bez parametru by se ale mělo nejdříve pokusit použít fast ram až pak chip. Předpokládám, že by tak stejně mělo fungovat i code_p
    Autorem citovaného textu je ObiWanKen Přejít na původní příspěvek
    Najprv ti poskytne Fast az potom Chip.
    OK, takže si len potvrdil moj prdpoklad že CODE = CODE_P

    Vložit komentář:


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

    Najprv ti poskytne Fast az potom Chip. Ide o to ze ty ako programator nevies na akej konfiguracii program pobezi.
    Takto mas zaistene ze ak ma pocitac Fast tak tato sekcia bude umiestnena do Fast. Ak pouzijes CODE_F / DATA_F tak pocitac musi mat Fast.
    Naposledy upravil ObiWanKen; 06.03.2016, 15:24:45.

    Vložit komentář:


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

    OK a to akože mi pri tomto nastavení aj keď mám k dispozícíí fast ram može poskytnúť len chip, akú to má výhodu? Žiadnu že?

    Vložit komentář:


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

    Code_p = public , jednoducho ti da volnu pamat. Nezalezi Fast/Chip.

    Vložit komentář:


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

    Tak jsem na chvíli sondoval co to bude to určení sekce code_p, když _f je fast ram a _c je chip ram. Měla by to být aktuálně dostupná pamět, tedy něco jako když se uvede CODE bez parametru. Bez parametru by se ale mělo nejdříve pokusit použít fast ram až pak chip. Předpokládám, že by tak stejně mělo fungovat i code_p.

    To, že se jedná o aktuílně dostupnou paměť jsem se dočetl v odkazu níže, je to v polštině, ale v nouzi se tomu dá rozumět . Pokud někdo dáte odkaz na PDF, tutoriál kde bude vysvětleno code_p, budu ho považovat zatím za stejně dobrý jako ten polský . (kniha pro A500-A4000 )

    Vložit komentář:

Zpracovávám...
X