kategorie: Asembler
[#1] Programowanie na Amidze w Assemblerze
A co jeśli napisałbym książkę do programowania w assemblerze na AMIGĘ??? Obecnie nie bardzo można kupić pomoc na temat programowania w Assemblerze. Mógłbym napisać opis bibliotek exec, dos, intuition, graphics lub innych. Czy byłby ktoś zainteresowany???:D
[#2] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Byłbym ;)
[#3] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Ja też ale taką z wprowadzeniem, od podstaw OK
[#4] Re: Programowanie na Amidze w Assemblerze

@_arti, post #3

No oczywiście że od podstaw ;)
np. x0000001 + x0000001 = ? :P
[#5] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

A mógłbyś do C od podstaw, z opisem i przykładami w/w bibliotek?
[#6] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Kupuje :)
A o C (jak kolega powyzej napisal) tez kupuje :)

Bounty :P ?
[#7] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Możliwe, że się przyda.
[#8] Re: Programowanie na Amidze w Assemblerze

@Tom Rain, post #4

15?
[#9] Re: Programowanie na Amidze w Assemblerze

@kjb666, post #5

Takich książek jest już parę. Do tego są też tutoriale. Po co je powtarzać ?
[#10] Re: Programowanie na Amidze w Assemblerze

@sand, post #9

A czy ten pan/pani jest w stanie cokolwiek napisać? Jak dla mnie to on jest niewiarygodny. Jeden komentarz i od razu książkę chce pisać. Obym się mylił, ale tu ostanio cuda się dzieją.
[#11] Re: Programowanie na Amidze w Assemblerze

@Ender, post #10

Witam serdecznie. Widzę że jest jednak zainteresowanie tą pozycją. Opis komend i wprowadzenie oczywiście nie podlega dyskusji. Jeśli chodzi o C to tylko opis ogólny składni. Programowałem głównie w Assemblerze, więc przykłady będą w tym języku. Do każdej pozycji chcę dołożyć przykład. Tak miałaby wyglądać zawartość na przykładzie dos.library/Close

Close
Opis: zamknięcie otwartego pliku
Biblioteka: dos.library
Adres(przesunięcie): -$0024(-36)
Składnia: Close(file)
C: void Close(BPTR)
Język maszynowy: Close(d1)
Modula2: Close(file: FileHandle)
Argumenty: file = wskaźnik BCPL na plik do zamknięcia (numer logiczny pliku)
Rezultat: żaden
Przykład:
; ************
move.l _DosBase,a6 ;wskaźnik biblioteki dos.library
move.l FileHandle,d1 ; w d1 adres otwartego np. okienka dos lub pliku
jsr Close(a6) ; procedura zamknięcia
rts

Czy tak jest wystarczająco czytelnie??

Ostatnia aktualizacja: 17.02.2013 14:14:24 przez szczek74
[#12] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #11

Tak, pod warunkiem, że opiszesz też, co to jest wskaźnik i komórka pamięci/adres ;) Tak jak pisałem wcześniej - z checią poczytałbym też jako wstęp - "Dlaczego Assambler", tak z punktu widzenia ciebie, jako programisty - czemu w swoim czasie był dobry, jaką miał przewagę nad innymi, jaka jest filozofia tego języka oraz co jeszcze dziś można wartościowego zrobić używając ASM na 68k.
[#13] Re: Programowanie na Amidze w Assemblerze

@_arti, post #12

Co to jest komórka pamięci, adres, wskaźnik na plik czy okno, jak jest organizowana pamięć w systemach Amigi, opis funkcji i struktur bibliotek, wszystko to będzie opisane na wstępie książki. Dlaczego Assembler?? Mnie skłoniła prędkość wykonywania programów w tym języku oraz niewielki rozmiar plików po zassemblowaniu.
[#14] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Popełniłeś podstawowy błąd. Skoro pytasz "co by było gdyby" to wiadomo, że już nic z tego nie będzie.
[wyróżniony] [#15] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #13

Dlaczego Assembler?? Mnie skłoniła prędkość wykonywania programów w tym języku oraz niewielki rozmiar plików po zassemblowaniu.

Mnie również, przy czym asembler to moim zdaniem obowiązkowy język ludzi parających się programowaniem i chcącym pisać na Amidze. Ja nauczyłem się tego języka z zainteresowania i zwykłej konieczności.

Co chciałbym też zauważyć, że teraz ludzie piszą w różnych Hollywood i mają kółko i krzyżyk w programie zajmującym 20MB. Świat się zmienił, ludzie już nie chcą słyszeć o niskopoziomowych rozwiązaniach. A to błąd, ponieważ przy obecnych praktykach przenoszenia programów, to te nowe komputery (s)tracą żywot bardzo szybko. A Amiga klasyczna przetrwała próbę czasu, bo używano jej zasobów efektywnie.

Co do książki to widzę, że dobry z Ciebie koder, a projekt książki jest przemyślany, życzę Ci powodzenia. Sam obecnie również piszę artykuł na temat asemblera Amigi do czasopisma. Używam jako bibliografii następujących pozycji:
Rodzina M680xx Wojciecha Czyża
Asembler dla początkujących Adama Doligalskiego
Asm-One tegoż autora.
[#16] Re: Programowanie na Amidze w Assemblerze

@TomcioPaluszek, post #14

Zbieram opinię na ten temat, a ty jak widzę skreślasz pomysł już w zarodku. Na szczęście zdania są podzielone.
[#17] Re: Programowanie na Amidze w Assemblerze

@Hextreme-Attic, post #15

Dzięki ogromne za konkretną odpowiedź. Również życzę Ci powodzenia w artykule. Pozdrawiam.:D
[#18] Re: Programowanie na Amidze w Assemblerze

@kjb666, post #5

Do C jest masa książek i artykułów. Są kursy na ppa, w papierowym ppa, na MACD można znaleźć kurs Kamila Iskry i Dawida Żbika, są jeszcze kursy MUI Kraszana (również do znalezienia na PPA). Natomiast nie widziałem jeszcze jakiegoś ciekawego kursu assemblera.
[#19] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #11

No dobra powiedzmy, że wszystko się uda jak zakładasz i powstanie książka. Ile będzie kosztować, czy będzie w wersji papierowej, format książki, może jakiś plan (rozdziały jakie i o czym kilka słów)? No i powodzenia.
[#20] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #11

Bez sensu. Dla początkującego czarna magia, reszta umie czytać, wszak przepisywanie autodoców i suche przykłady nie są zbyt atrakcyjne. Taka książka ala mapa pamięci A500 to nie jest dobry pomysł.
Lepszym byłoby połączenie nauki assemblera od podstaw (ala Doligalski) z przykładami ala RKM. Coś jak AmigaOS od środka w asmie.
[#21] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #11

Twój opis wygląda identycznie jak ten z książki "Mapping the Amiga":

Close
Description: closes an open file
Library: dos.library
Offset: -$0024 (-36)
Syntax: Close(file)
C: void Close(BPTR)
Machine Language: Close(d1)
Modula-2: Close(file: FileHandle)
Arguments: file = BCPL pointer to file handle of file to close
Result: none

?
[#22] Re: Programowanie na Amidze w Assemblerze

@cholok, post #20

Dla mnie bez sensu. "Kurs asemblera dla początkujących" Adama Doligalskiego już jest. Po co się powtarzać. Opis systemu jest w RKRM (Amiga Developer CD).
Poza tym - użyteczność asma (w dzisiejszych czasach).. jest raczej sztuką dla sztuki.
A reszta - tak jak było już tu wspomniane - kurs C z MA/MACD + uzupełnienie np. Symfonią C++ jest lekturą zupełnie wystarczającą (a.. no i kursy MUI kolegi krashana...)
Więc - po co się powtarzać ?
/no chyba żeby jakaś petycja o powyższą książkę w formie pdf czy jakoś tak...)
[#23] Re: Programowanie na Amidze w Assemblerze

@MaaG^dA, post #22

Asm we wczorajszych czasach niezbedny, a w dzisiejszych daje powera
[#24] Re: Programowanie na Amidze w Assemblerze

@forge, post #21

Wygląda podobnie, ale to była propozycja jak by miała książka wyglądać. Ten sposób wydaje mi się czytelny i zrozumiały. A czy są tam również opisy jak każdą z komend użyć w przykładzie? To była akurat najprostsza z komend dos'u, a co z komendą exec/GetMsg? Czy jest tam opisane jak ją użyć np. do menu??? A może Ty masz jakieś propozycje co do budowy???
[#25] Re: Programowanie na Amidze w Assemblerze

@MaaG^dA, post #22

użyteczność asma (w dzisiejszych czasach).. jest raczej sztuką dla sztuki.

... albo "wyższa szkoła jazdy". Zależy od podejścia. Ja tam zazdroszczę umiejętności programowania w asm...
[#26] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #1

Jesli bylaby to ksiazka z wprowadzeniem umozliwiajacym nauczenie sie assemblera 68k od podstaw, wraz z wyjasnieniem rzeczy nad wyraz oczywistych to i ja bylbym zainteresowany. Programista z prawdziwego zdarzenia w zyciu raczej nie zostane, ale chetnie naucze sie pisac chocby najprostsze procedurki.

A w jakiej formie mialaby taka ksiazka zostac wydana? E-book? Platna, bezplatna, donationware? A moze seria artykulow?

Ostatnia aktualizacja: 19.02.2013 08:26:38 przez mccnex
[#27] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #24

Pisanie pod system w 100% pure asm jest dla mnie malo zrozumiale, chociaz akurat na AmigaOS w tym podstawowym zakresie (exec, graphics etc..) wydaje sie dosc intuicyjne...

Widzialbym opis dokladny asm 68k, od 68000 do 68060, osobny rozdzial poswiecony FPU, oraz wprowadzenie do zagadnienia pisania w asm pod 68k w fpga, bo nie sadze zeby inne procki 68k mialy byc w przyszlosci dostepne. Przyklady uzycia na konkretnych zagadnieniach, podstawowe algorytmy... Przyklady optymalizacji w asm dla poszczegolnych prockow 68k. Przyklady dla FPU, osobny rozdzial.

I dopiero po tym wstepie mozna zaczac OS. Przy czym ja sam nie widze zbyt szerokiego zastosowania dla asm'a w OS, wiec chyba tylko podstawy niezbedne do napisania gry, dema, prostej aplikacji okienkowej, chyba wystarcza... Jak ktos chce pisac "powazne" aplikacje to raczej powinien uzywac C/C++, a Asm tylko we fragmentach w celu optymalizacji miejsc gdzie da to spora korzysc, spora, czyli wieksza niz kilka %, bo inaczej szkoda na to czasu :)

Opis rejestrow OCS/ECS/AGA. Przyklady np:. szkielet aplikacji nonOS, ale pod OS, wraz z pelna obsluga przerwan, wyjatkow.. itd..., procedury graficzne (proste szkielety), procedury audio, obsluga klawiurki, myszki, joya itd..

Nie sadze zeby to byl temat na jedna ksiazke. Bylaby to ksiazka dla poczatkujacego, ale takze bardziej zaawansowany programer znalazby cos dla siebie... bo choc ogolnie wszystko jest do znalezienia w osobnych miejscach, to takie zebranie wszystkiego co cenne w jednym miejscu byloby dla kazdego pozyteczne ... :)

Kazdy programista asm powinien znac takze inny jezyk po to zeby eksperymentowac zanim zdecuje sie napisac procedure w asm. Sugestie beda na C, jednak moim zdaniem bardziej nadaje sie BASIC dla poczatkujacego do sprawdzania pomyslow przed przepisaniem ich na Asm. Wprowadzenie do BASICa mile widziane ..

Ostatnia sprawa. Opis narzedzi, nie tylko do programowania... Mysle, ze warto byloby oporcz klasycznego podejscia, czyli programowanie na Amidze, zastanowic sie i zaproponowac tworzenie/testowanie etc.. aplikacji OS/nonOS na Windows/Linux/BSD/Android...
[#28] Re: Programowanie na Amidze w Assemblerze

@gx, post #27

Dzięki ogromne za tak szeroką opinię i własną wizję wyglądu książki. Z całym szacunkiem przyjacielu, ale tak obszerna wiedza na temat tych komputerów, musiałaby się składać z przynajmniej 10 tomów, a nie wiem czy pełny opis wszystkich bibliotek ROM'u wejdzie do jednej książki, tylko opisując Assembler. Bardzo Ci dziękuję za rozwinięcie tematu. Wezmę wszystkie te aspekty po uwagę przy pisaniu.
[#29] Re: Programowanie na Amidze w Assemblerze

@mccnex, post #26

To byłaby książka właśnie dla Ciebie i Tobie podobnym.
[#30] Re: Programowanie na Amidze w Assemblerze

@szczek74, post #29

Że tak się zapytam.
Powstało już coś w tej materii?
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