Komentowana treść: Kurs asemblera 68k - część 1
[#31] Re: Kurs asemblera 68k - część 1

@RomanWorkshop, post #30

Panowie. W kontekście kursu, z założenia przeznaczonego dla osób, które uczą się assemblera, to nie ma żadnego znaczenia.

Przykłady po pierwsze powinny być czytelne i jak najbardziej zrozumiałe. Nie muszą być optymalne. Jak na razie przykłady asmana są czytelne, ale gdy się dobrze zna jakiś język, to łatwo ucząc go popaść w pułapkę taką, że początkującym przedstawia się zaawansowane konstrukcje... Co zazwyczaj kończy się źle.

Kwestie związane z wydajnością, co trwa ile taktów itd. to można sobie zostawić na koniec kursu, jako temat dla "zaawansowanych".
[#32] Re: Kurs asemblera 68k - część 1

@strim_, post #31

dokladnie, ja nie czytalem bo ten kurs nie jest dla mnie, ale bardzo sie ciesze, ze powstal.
z drugiej strony az strach cos samemu napisac, bo zaraz ktos madrzejszy sie znajdzie i podwazy autorytet. najistotniejszy fakt jest, zeby przekazac czesc swojej wiedzy tym, ktorzy tej wiedzy jeszcze nie posiadaja. nie musi to byc od razu zakodowanie cepa atomowego (a wrecz nie powinno byc za trudne).
[#33] Re: Kurs asemblera 68k - część 1

@strim_, post #31

Kwestie związane z wydajnością, co trwa ile taktów itd. to można sobie zostawić na koniec kursu.

No spoko, przecież ta nasza wojna o dwa takty procesora odbywa się na forum, a nie w kursie... A chyba lepiej jak się będziemy kłócić o optymalizację w asemblerze, niż o definicję Amigi.
[#34] Re: Kurs asemblera 68k - część 1
A może jakiś przykład jak:

1) wyświetlić tekst w konsoli.
2) pobrać wartość 1 zmiennej z klawiatury
3) pobrać wartość 2 zmiennej z klawiatury
4) wyświetlić wyniki operacji - mnożenia, dzielenia, dodawania, odejmowania od siebie wartości tych zmiennych
5) powrócić do systemu op. (jak prawidłowo zakończyć program i zwolnić zasoby)

Potem operacje za zmiennych tekstowych.

Byłaby już jakaś alternatywa dla pisania w C i używania "stdio".
[#35] Re: Kurs asemblera 68k - część 1
dla tych ktorzy sa bardziej zaawansowani, przydac sie moze artykul jak zrobic efekt deszczu. napisal mi go mavey kupe lat temu. jak ktos jest zainteresowany, moge zapodac:) tutaj jest kawalek.
[#36] Re: Kurs asemblera 68k - część 1

@pong777, post #34

Mam już napisany przykład wyświetlający tekst w konsoli. Niestety nie wkleję go tutaj, bo działanie znacznika "code" na PPA jest kiepskim dowcipem. Jakbym nie wklejał, wychodzi sieczka. Może walnę artykuł na swojej stronie, bo jak się chce to wytłumaczyć dokładnie, to jest trochę pisania, chociaż sam kod to 14 rozkazów procesora i to bez żadnego niesystemowego walenia na skróty, czy „zapominania” o zwolnieniu zasobów. Mogę też ten artykuł skierować np. do Amigazynu, ale ileż można szkółek asemblera mieć w jednej gazecie , poza tym to potrwałoby, a tekst na stronie może powstać w parę dni. Ewentualnie Asman jeżeli oczywiście chce, może to wykorzystać w swoim kursie, chociaż taki programik pewnie zajmie mu pół minuty z przerwą na kawę.

Zainspirowany artykułem w „Amigazynie”, użyłem na A1200 edytora Blacks Editor, oraz asemblera VAsm.
[#37] Re: Kurs asemblera 68k - część 1
Przydałaby się książka AmigaOS 4.1 Tajniki SDK. Biblioteka przydatnych narzędzi
[#38] Re: Kurs asemblera 68k - część 1

@Krashan, post #33

A chyba lepiej jak się będziemy kłócić o optymalizację w asemblerze, niż o definicję Amigi.

Była też kiedyś kłótnia o to, czy procesor 68000 jest 16-, czy 32-bitowy ;)

W każdym bądź razie czasem takie dyskusje przynoszą jakieś korzyści, np. ja poznałem nowy i szybszy sposób na liczenie znaków w ciągu ASCIIZ. Na mojej stronie umieściłem obydwa sposoby, żeby było widać różnice między nimi.
[#39] Re: Kurs asemblera 68k - część 1

@RomanWorkshop, post #38

Skoro już chcemy się kłócić to przeczytałem na Twojej stronce oto:
Zorro 1 - posiadają 8-bitową szynę danych, były montowane w A1000. Karty przeznaczone dla tych slotów, nie są kompatybilne z następnymi ich wersjami.

Mógłbyś się do tego ustosunkować?
[#40] Re: Kurs asemblera 68k - część 1

@selur, post #23

zapomniałeś szeregowy, towarzyszu generale ew. panie generale, przyjmij postawę żołnierzu kiedy zwracasz się do generała, a tymczasem, odmaszerować na swój rejon, kubeł i szmata już tam na szeregowego czekają
[#41] Re: Kurs asemblera 68k - część 1

@pong777, post #34

Heh, to jest dla mnie wlasnie kompletnie niezrozumiale. Dlaczego ludzie chca robic to w asemblerze;) No ale skoro juz wszyscy wypowiadaja sie o kursie to moze ja powiem jak sie go uczylem bo nie widzialem takiego podejscia w dostepnych kursach. Otoz na tamtym etapie pisalem ciagle w amosie i pierwsze co zrobilem (poza przepisaniem przykladu z ksiazki...) to ogarniecie laczenia amosa z asemblerem. Nie trzeba przejmowac sie wtedy "p******ami" typu i/o, ekrany itp. Mozna zaczac uczyc sie asemblera a nie od razu calego programowania Amigi. Duzo prostsze. Duzo szybsze. Wczytanie i uruchomienie (z przekazaniem parametrow) kodu asemblerowego z poziomu programu w amosie to banal. Nie mowie tutaj, zeby wybierac konkretnie Amos. Chodzi tylko o podejscie. Do dzisiaj nie napisalem w asemblerze kompletnego programu mimo, ze napisalem w nim setki kilobajtow kodu. Tylko taka dygresja;)
[#42] Re: Kurs asemblera 68k - część 1

@cholok, post #39

Jak najbardziej mógłbym, ale:
1. Twój komentarz nie jest związany z asemblerem.
2. Nie mam do czego się ustosunkowywać, bo już to poprawiłem ;)

Pisałem to dawno i nie wiem skąd takie informacje się wzięły. To wszystko dlatego, że nigdy nie używałem slotów Zorro...
[#43] Re: Kurs asemblera 68k - część 1

@pong777, post #6

Fajnie by było zobaczyć jak w asm zrobić konkretne rzeczy jak kontrola stanu joy'a i przycisków , zapis odczyt plików, obsługa bibliotek systemowych.


Ja bym chciał widzieć przykłady jak zrobić grę typu Galaga.
[#44] Re: Kurs asemblera 68k - część 1

@pong777, post #34

wyświetlić tekst w konsoli

Wersja beta na razie (tak wiem, obrazka nie ma tego dekoracyjnego na górze...). Program testowany na Amidze 1200.
[#45] Re: Kurs asemblera 68k - część 1

@Andrzej Drozd, post #43

Ja bym chciał widzieć przykłady jak zrobić grę typu Galaga.

Czyli chciałbyś, żeby ktoś napisał taką grę, a potem opisał proces jej tworzenia .
[#46] Re: Kurs asemblera 68k - część 1

@Krashan, post #44

@Krashan

Dobry tekst. Podobny przykład "Hello world" zamieściłem i omówiłem w Amigazynie z września 2014 w pierwszym odcinku mojego kursu. Zamiast PutStr() użyłem Output() i Write(). Czytał go pan?

Nie opisywałem co prawda tam rzeczy, o których pan wspomina w swoim tekście. Artykuł traktował głównie o konfiguracji i obsłudze programu Asm-One.

Teraz pytanie dla czytelników: który tekst podoba się Wam najbardziej (jest najprzystępniejszy, najciekawszy itd.) - Asmana, Krashana, czy mój?

Ostatnia aktualizacja: 01.01.2016 18:24:55 przez Hexmage960
[#47] Re: Kurs asemblera 68k - część 1

@Krashan, post #45

Tak.szeroki uśmiech
Pograłbym w jakąś nową Galagę i fajnie byłoby aby ktoś zrobił taki uniwersalny silnik dla wszystkich.
[#48] Re: Kurs asemblera 68k - część 1

@Hexmage960, post #46

@Hexmage960

Niestety nie czytałem, ale właśnie nadrobiłem tę zaległość. Użycie Output() i Write() ma tę zaletę, że działa również na KS 1.3 (PutStr() jest od 2.0). Ja chciałem program jak najbardziej skrócić, żeby ułatwić jego analizę.

AsmOne nigdy mi się jakoś nie podobał. Programem na którym uczyłem się asemblera był DevPac. Teraz zaś piszę w Blacks Editorze a asembluję Vasmem. Na mojej umiarkowanej konfiguracji A1200 (68020 @ 28 MHz) sprawuje się ten duet bez zarzutu. Co prawda nie mam w tej sytuacji debugera, co dla początkujących może być sporym utrudnieniem.

Mój tekst jest też trudniejszy dlatego, że nie omawiam w nim działania poszczególnych rozkazów procesora, a tylko ich wykorzystanie.

Ostatnia aktualizacja: 01.01.2016 18:46:29 przez Krashan
[#49] Re: Kurs asemblera 68k - część 1
Ja mam nadzieje ze po tych wszystkich komentarzach autor się nie zniechęci i będzie kolejny odcinek kursu,bo każdy Polak zna się na 2 rzeczach na piłce nożnej i asemblerze amigi.
[#50] Re: Kurs asemblera 68k - część 1

@SzaryWilk, post #49

Jak by nie było komentarzy albo było ich mało, to by się mógł zniechęcić... A tak dyskusja wre ;)
[#51] Re: Kurs asemblera 68k - część 1

@SzaryWilk, post #49

Asman to konkretny gość. Więcej robi niż pisze na portalu.


Polak zna się na 2 rzeczach na piłce nożnej i asemblerze amigi.


No to powinieneś zawodowo grać w piłkę nożna i mieć na koncie 100 gier w asemblerze. Pochwal się.
[#52] Re: Kurs asemblera 68k - część 1

@Krashan, post #48

Muszę przyjrzeć się temu Blacks Editor, bo CygnusED płata mi czasem figle. Miałem kiedyś ten program na dysku, ale nie poznałem zbyt dokładnie. Jeśli chodzi o asembler działający w konsoli to używam PhxAss, ale chyba też przerzucę się na VAsm, bo ten jest rozwijany na bieżąco przez Franka Wille.
[#53] Re: Kurs asemblera 68k - część 1

@Krashan, post #44

@Krashan
A propos wersji beta, to w akapicie o Zachowywanie zawartości rejestrów warto dodać informację, że niektóre funkcje systemowe nie zmieniają żadnych rejestrów, na przykład Forbid/Permit z exec.libarary.

A jeśli chodzi o BlacksEditor to używałem go do programowania w C. Co do braku debuggera to polecam BDebug z Barfly, który jest dostępny na aminecie.

@kiero
Dygresja dygresją :) A może byś jakiś artykulik napisał w tej sprawie (amos + asm) z jakimś konkretnym zastosowaniem.
[#54] Re: Kurs asemblera 68k - część 1

@asman, post #53

Hehe, ja Amosa nie tykalem mniej wiecej 20 lat:) Ale patrzac na to, ile czasu i zapalu maja dzisiaj ludzie mysle ze takie wiazanie jezykow nisko i wysokopoziomowych to jedyne rozwiazanie. No i mozna sie szybciej nauczyc;) Jak widze kolejny kurs, gdzie ktos przez 18 odcinkow omawia tworzenie copperlisty, otwieranie bibliotek itp to sam sie zniechecam:) Ja bym widzial przyklad ktory np rysuje "gwiazdy w ktore sie leci" (tm). Nawet jakos wyglada a kod w amosie/e/c + asm mialby 100 + 100 linijek. Nawet opublikowanie go w calosci i potem omawianie kazdego fragmentu byloby ciekawsze. No ale ja tego nie napisze (moge napisac kawalek w asmie;) wiec nie wymagam, ze inni to zrobia. Moje 3 grosze.
[#55] Re: Kurs asemblera 68k - część 1

@kiero, post #54

/*kurcze, ale sie dzisiaj rozpisalem...*/

Ogolnie chodzi o to, zeby potencjalne ofiary, czyli ci ktorym zalezy mogli od razu zaczac bawic sie kodem. Zmieniac i szukac informacji. Bo uczenie zestawu instrukcji nie ma kompletnie zadnego sensu. Asembler jest na tyle trudna sztuka, ze ktos zainteresowany i tak musi sie sam zaglebic. A na modyfikacjach krotkiego fragmentu ktory jednak pokazuje duzo konstrukcji (skoki, petle itp) mozna nauczyc sie wiecej.
[#56] Re: Kurs asemblera 68k - część 1

@kiero, post #55

Czekam zatem na przykładowy kod dla Morphosa wykorzystujący shadery (może być w asm)

Ostatnia aktualizacja: 03.01.2016 20:15:13 przez michal_zukowski
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem