
Oznámení
Sbalit
Aktuálně žádná oznámení.
Assembler - všeobecná logika
Sbalit
X
-
Sice jsem assembler motoroly už dávno zapoměla, tak tomu nerozumím. Ale slovo kolíše je úžasné, děkuji.
- Poděkování 2
-
Včera jsem program Textro zprovoznil v mé nehudební rutině. Dal jsem to v hudební rutině do velké smyčky a měl možnost vidět, jak tahle nízká frekvence smyčky pro práci s bitplanem na pro mně chtěné úrovni nepostačuje. Viděl jsem hezky, jak ta rychlost práce s bitplanem i kolíše. Dnes jsem Textro dal do krátké smyčky v mé hudební rutině. Tam vůči velké smyčce dokáži pracovat s až 32 násobní rychlostí. Tam to již litá o 106, asi to i zpomalím. Ono se to vše po chvíli chodu začne sypat, ale to je na tuhle fázi normální stav. Přišel jsem o pár taktů vůči umístění ve velké smyčce. V registry D2 mám pro pomocnou proměnnou již jen 2 byte místo 4, tedy jsem moveq vyměnil za move.w i kvůli instrukci DBF, které pracuje pouze s rozsahem Word a já musel mít vynulovaný v D2 i druhý byte. Ale DBF je fajn, na to že sníží proměnnou a udělá skok si vezme jen 4 takty, co mně mile překvapilo. Měl jsem zato, že je tahle instrukce pomalejší. Na to že si samotné move v rozsahu 1 byte vezme nepletuli se taky 4 takty. Na 2 takty se dostaneme až s instrukci moveq.
- Poděkování 2
Vložit komentář:
-
A dnes ráno jsem vyřešil tu druhou chybu. Chyba začátečníka kdy jsem v A2 neobnovoval načtení adresy pro znaky potom co jsem A2 použil i pro načtení adresy na RAW obrázek.
Tedy program Textro je opět funkční i s úpravami aby běžel s mou hudební rutinou aniž by byl použitý zásobník. Tedy 2 programy v registrech D0-D7 a A0-A6. Registr A7 je zásobník.Naposledy upravil Lisiak; 31.01.2022, 13:53:28.
- Poděkování 1
Vložit komentář:
-
Defor měl si pravdu, jde o promazání registrů. Ještě to nemám zcela funkční. Ve smyčce, která hledá správné písmeno z napsaného textu jsem použil move.W místo move.B pro zápis čísla 39 které se v cyklu mění, písmeno se po tvé optimalizaci hledá od konce k začátku. To zlepšilo stabilitu, neseká se to, ale vypíše se všude stejný znak, který snad ani není z abecedy. Až budu mít více času, podívám se na to ještě. Díky za nesměrování!
Vložit komentář:
-
Autorem citovaného textu je Lisiak4 Přejít na původní příspěvekJa je mám taky všechny, poslední čtvrtá série není nadabovaná. Někdy si to ještě pustím i teď, ale jako vše se to okouká. Ale já zbožňuji suchý anglický humor 🙂
- Poděkování 2
Vložit komentář:
-
I když je český dabing na úrovni, tak já se raději koukám na origo s titulkama. Ono to nutí i naposlouchat a přiučit se anglině, i když to není ono. Občas si pouštím známé věci bez titulků.
Omlouvám se za
Vložit komentář:
-
Autorem citovaného textu je IDEfix Přejít na původní příspěvek
Tak jistě, můj oblíbený séroš...
Vložit komentář:
-
Autorem citovaného textu je Lisiak4 Přejít na původní příspěvekNakonec to byl register kde je pointer na obrázek. Dle všeho s tím Amiga pracuje snad i na pozadí a když do něj dám něco jiného tak se program sekne/guru/nezobrazí správně grafiku anebo třeba i zobrazí ale jen při prvním spuštění a sekne se to při druhém spuštění.
http://coppershade.org/articles/Code...Dream_in_Code/
Stačí na začátek tvého zdrojáku dát (include) jeho MiniWrapper, ten všechno vypne, skočí do tvého kódu, a když se z něho vrátí, tak po sobě zase uklidí. Je to ověřené, používá to fůra lidí, případně si jiní naprogramovali něco, co je tomu stejně velmi podobné (ne-li identické).
Pokud tvůj program někdy funguje a někdy padá, tak si ověř, že na začátku je v registrech to, co očekáváš, resp. že jsou vynulovány. Systém je totiž nemaže, a tak když bys třeba udělal toto:
Code:..... move.w d1,d0 ..... add.l d0,a0 ; Tady mozna predpokladas ze hornich 16 bitu d0 je nulovych, ale to neni zarucene Je treba si je radeji predem smazat.
Code:MySuperDuperRoutine: movem.l d0-d3/a0-a4,-(sp) ..... ; Tady si vesele pouzivam a menim registry d0-d3,a0-a4, ale je to jedno, protoze... movem.l (sp)+,d0-d3/a0-a4 ; tady je zase vratim do puvodniho stavu rts
Tvůj kód by rozhodně neměl zaseknout WinUAE tak, že ten pak nereaguje. Na reálné Amize to bylo naopak zcela běžnéTady bych spíš tipoval na nějaký problém ve tvém PC/Windows?
Naposledy upravil Defor; 29.01.2022, 20:07:19.
- Poděkování 1
Vložit komentář:
-
Autorem citovaného textu je Dedy Přejít na původní příspěvek
Taky koukáš na IT Crowd?
Vložit komentář:
-
Autorem citovaného textu je IDEfix Přejít na původní příspěvek
A zkoušel si to vypnout a zapnout...?
Jo, takhle to má pípat....
Vložit komentář:
-
Autorem citovaného textu je IDEfix Přejít na původní příspěvek
A zkoušel si to vypnout a zapnout...?
Jo, takhle to má pípat....
Vložit komentář:
-
Autorem citovaného textu je Lisiak4 Přejít na původní příspěvekJednou se mi seklo WinUAE tak, že nešlo zavřít ani přes křížek. Až po tak 4 minutách se PC vzpamatovalo v době kdy jsem se jo již chystal restartovat. To taky pobavilo. Chudák PC 😁
Jo, takhle to má pípat....
Vložit komentář:
-
Definice programátora:
Programátor je člověk, který zcela nepochopitelným způsobem řeší problémy, o jejichž existenci vy nemáte ani potuchy
Vložit komentář:
Vložit komentář: