Oznámení

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

Ghh

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

  • ghh
    odpověděl
    Konečně se mi podařilo zvládnout i třídu "Process.mui" o které byla řeč výše. Nedokázal jsem na to zapomenout... Totiž původní (a jedinný) příklad co mám je tak trochu matoucí. Tlačítko Stop jenom ohlásí že bylo zmáčknuto a ne že zastaví subtask, přitom ve zdrojáku je i hláška "Stopped", ale to se mi nikdy nezobrazilo (i v orig C verzi).
    Vyměnil jsem původní funkci (zobrazování textu) za přehrávání zvuku aby bylo jasnější co se v subtasku právě děje. Funkce 4x přehraje jeden sampl a skončí. Našel jsem způsob jak subtask zastavit, ale jenom tak že sampl nejdřív dohraje do konce a teprve pak se zastaví subtask.... Eh několik hodin jsem si opět myslel že to asi neni možný, ale pak jsem si všimnul, když program ukončim zavřením okna, zvuk se zastaví okamžitě. Tady jsem měl začnout Nakonec se mi podařilo zvuk-subtask zastavit tlačítkem kdy chci a napsat si několik verzí použití této třídy. Ve verzi bez Process.mui je poslání signálu asi na 10 řádků a tady jen jeden atd.
    Zatim se mi nepodařilo zvuk "pauznout" a pak pokračovat, ale vono to půjde

    Vložit komentář:


  • Lisiak
    odpověděl
    Mně o Tebou popsaném postupu programování něco povídej...

    Vložit komentář:


  • ghh
    odpověděl
    Lisiak4: Jo jo jak píše bigmac. Chtěl jsem něco dodat, ale napsal to úplně přesně.
    Chybí mi nějaký to "vzdělání", jako např. ze školy. Spoustu věcí vůbec netuším jak se dělají, tak to musim lepit podle příkladů a dokumentace. Na věc jdu většinou "hrubou silou", přitom mi to nějak secvakne a pak už jenom ladim, ladim, ladim.... Prostě lama přístup

    Vložit komentář:


  • bigmac
    odpověděl
    Autorem citovaného textu je Lisiak4 Přejít na původní příspěvek
    Pokud to nutnost není, jaké jsou výhody, když ve vlastním tasku podprogram běží?
    Má to výhodu tu, že hlavní menu daného programu stále reaguje i když zrovna zpracováváš nějaký subtask. Je to více multitaskové (systémové) . Prostě načteš obrázek a přidělíš mu subtask, daný subtask může vykonávat různé úkony s obrázkem, aniž by ovlivnil hlavní program. Samozřejmě subtask(ů) může být vícero a jsou na sobé nezávislý, hlavní program dostane pouze echo, zda daná činnost je jjiž hotova.... prostě správná cesta. A GHH je borec

    Vložit komentář:


  • Lasice
    odpověděl
    Autorem citovaného textu je ghh Přejít na původní příspěvek
    Lama programuje

    Amiga je boží!
    lama teda rozhodně nejsi

    Vložit komentář:


  • Lisiak
    odpověděl
    Není nutnost, aby ten podprogram běžel ve vlastním tasku? Pokud to nutnost není, jaké jsou výhody, když ve vlastním tasku podprogram běží?

    Vložit komentář:


  • Predseda
    odpověděl
    Paráda, i když z toho rozumím jen té poslední větě

    Vložit komentář:


  • ghh
    odpověděl
    Lama programuje
    Včera se mi konečně po mnoha dnech podařilo donutit můj program aby jeho podprogram běžel ve vlastním tasku (subtask).
    Tahle funkce (podprogram) kontroluje až tisíce souborů jestli je to obrázek a jakou má velikost. Funkce běží perfektně, ale když se spustí tak hlavní program a jeho gui "zamrzne" až do skončení operace.
    Chtěl jsem to samozřejmě nějak vyřešit a ještě přidat zobrazení průběhu operace v procentech.
    V dokumentaci se odkazuje na příklad, který napsal sám autor MUI (Stefan Stuntz). Jeho příklad počítá a kreslí fraktály a taky zobrazuje průběh výpočtu v procentech. Dokonce je i v orig ECX balíku přepsanej do E. No super to je přesně to co potřebuju.
    Jenže příklad je na mě moc složitej, protože se tam do toho motá to počítání fraktálů a výstup grafiky. Zkoušel jsem projít nějaký jednodušší příkaldy, ale pořád jsem to moc nechápal.
    V dokumentaci dále píšou o nové třídě "Process.mui", která by měla "jednoduše" spravovat běh procesů a podprocesů atd. Příklad této třídy je v SDK, ale jenom v céčku. Zobrazuje úryvky textu Life of Brian a tlačítkama posíláš signály start, stop atd.
    Po nějaký době se mi ho podařilo přepsat do E. Program se spustí, tlačítka fungujou, ale posílání signalů ne Pitval jsem to důkladně, ale nepodařilo se mi najít kde je problém. Taky jsem nikde nenašel další příklady kde je tahle třída použita. Dost dlouho mi trvalo než jsem se dokázal vzdát tohodle příkladu a radši na něj zapomenout.
    Vrátil jsem se na začátek k prvnímu příkladu s fraktálama. Nejdřív bylo nutné najít místečko kam umístit svoji funkci aby bežela v tom multitasku. To šlo celkem snadno a teď můžu začít "holit". To je odstranit výpočet fraktálů, grafiku a zjistit co vše je a není nutné aby to fungovalo.
    Ještě trochu toho ladění a už to celkem funguje. Zatím je to teda dost nahrubo, ale je super že to běží jak jsem chtěl.
    Pro někoho je asi subtask atd normální, ale mě se to podařilo zvládnout až teď a cejtim to jako velkej posun dopředu. A ty další možnosti...
    Amiga je boží!
    Naposledy upravil ghh; 06.10.2021, 00:19:21. Důvod: šotek

    Vložit komentář:


  • ghh
    odpověděl
    Včera jsem si ještě hrál z disketama a konečně po dlouhý době jsem přišel na to jak pracovat s disketama na Drakovi. Drak totiž v základu nabízí AmiDD, AmiHD, DraCoDD a DraCoHD. V mountlistech jsem měl chybu a už všechno funguje jak má. Prohledal jsem šuplíky, našel starý diskety a udělal jsem si adfko z mojí diskety z roku 1995 (obrázky do soutěže).
    Nakonec jsem udělal zálohu MorphOS klíčů na disketu a doufám že vydrží dalších 20 let

    Vložit komentář:


  • Doda
    odpověděl
    Draco nema ECS/AGA, to nemuze bezet.

    Vložit komentář:


  • DaMi
    odpověděl
    Já se moc nedivím. Bylo by ale zajímavé rozebrat obsah ks a vyměnit jenom některé části.

    Vložit komentář:


  • ghh
    odpověděl
    Včera jsem po strašně dlouhý době bootoval Draka z diskety. Výhoda je že DraCo má HD mechaniku a disketa se dá skvěle vytunit. Zkoušel jsem jestli půjde podstrčit jinej kickstart a bohužel se mi to nepodařilo

    Vložit komentář:


  • Doda
    odpověděl
    AmigaOS neni Windows, existence nejakych (MUI) knihoven ten system sama o sobe nezpomaluje. Stejne ten MUI potrebujes z mnoha jinych duvodu.
    Naposledy upravil Doda; 14.06.2021, 10:01:59.

    Vložit komentář:


  • Predseda
    odpověděl
    MUI funguje v 3.2, ale chtěl bych se mu zkusit vyhnout a mít systém co nejčistší.

    Vložit komentář:


  • ghh
    odpověděl
    No to asi ne, delam no tom nekolik let, konecne jsem do toho proniknul... MUI funguje i v OS3.2.

    Vložit komentář:

Zpracovávám...
X