kategoria: AMOS
[#31] Re: AMOS w sprawnych dłoniach

@Oxyron, post #26

Podejrzewam, że tam nie ma żadnych wstawek, tylko większość jest prerenderowana, widać jak kuleje scroll. Nie przesadzajmy, że AMOS do niczego się nie nadaje, ale jest dość ograniczony i w gruncie rzeczy najlepiej nadaje się do jednoekranowych gier lub przygodówek lub tam gdzie scroll nie jest najważniejszy np. Franko.

Assembler jest językiem dla masochistów i przechwałkowców, dziwi mnie, że stawiasz C na równi z C# albo wysokoabstrakcyjną Javą - domeną okropnych aplikacji biznesowych. Jeżeli nie znasz nic prócz assemblera to ok, ale sprytny programista napisze program w C z wstawkami assemblerowymi i zrobi to szybciej, nie jestem pewien, czy chciałbyś pisać te wszystkie stosy USB, TCP/IP w assemblerze, prędzej ktoś napisze je w C, a potem zoptymalizuje. Aczkolwiek zgadzam się, że tam gdzie trzeba się uciekać do precyzyjnych trików, to tylko assembler.

Assembler w mikrokontrolerach, to też utrudnianie sobie życia zwłaszcza, że w tej dziedzinie nie liczy się tak wydajność jak funkcjonalność. Powiedziałbym, że w assemblerze można kodować dla szpanu lub dla własnej przyjemności, liczyć cykle i robić cuda jak lftkryo. Jeżeli nie kodujesz na bardzo małe mikrokontrolery które mają np 128 bajtów RAM, to robisz sobie pod górkę (chyba, że w niczym innym nie umiesz). Ktoś kiedyś tutaj pisał, że w C przy wywoływaniu funkcji z prostym kodem, następuje przesunięcie wszystkich rejestrów na stos, wykonanie kodu i przywrócenie rejestrów, przeglądałem jakiś czas temu kod generowany przez kompilator XC32 dla PIC i nie zauważyłem, żeby tam takie zjawisko występowało. Prawdopodobnie używając samego assemblera uzyskałbym 20% szybszy kod i 20% mniejszy, ale po co, skoro zakładany efekt uzyskuję 4 razy szybciej? A że jest on trochę wolniejszy? Powinieneś zobaczyć jak wygląda pisanie aplikacji biznesowych, gdzie nikt nie kładzie nacisku na żadne optymalizacje, bo taniej kupić szybszy komputer niż tracić cenny czas na optymalizację.

Zamiast rulezować :) , lepiej wykorzystaj te zdolności w kodowaniu na Amigę, chociażby poprowadź jakiś poradnik na temat assemblera lub z kimś pouczestnicz w kursie programowania w C i wykorzystywaniu assemblera, albo pokazać jak szybko scrollować cały ekran, albo zrobić jakiś silnik, albo... albo.....

Ostatnia aktualizacja: 22.03.2015 03:24:05 przez sanjyuubi
[#32] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #31

Masz po części racje... nie będę pisał w assemblerze obsługi USB czy tez TCP/IP.... bo to nie ma sensu tak jak mówisz. Dla mnie języki wysokiego poziomu są tylko na PC.
Aplikacje biznesowe - najprościej chyba w C#, język C do bardziej ambitniejszych rzeczy.... a JAVA.... kazali mi się jej nauczyć na studiach tak więc .... ale szczerze mówiąc nie lubię Javy.

Co do mikrokontrolerów, obecnie pisze aplikacje na atXmege128 - całość w assemblerze.
Ponieważ dokładnie muszę wiedzieć co i gdzie w jakim cyklu się dzieje a taka kontrole daje mi tylko assembler. Gdybym pisał cos co miałoby się komunikować po USB to wtedy C.

Co do pisania dem .... kiedyś pisałem tylko w assemblerze, szczerze mówiąc najlepsze procedury, najszybsze gdzie liczy się każdy cykl, lub gdzie robimy cyklówkę no to pozostaje tylko assembler.

Osobiście assembler dla mnie jest najlepszym jeżykiem programowania - nie wiem dlaczego tak jest, ale do każdego tematu zawsze podchodzę myśląc jak bym to zrobił w assemblerze szeroki uśmiech.
[#33] Re: AMOS w sprawnych dłoniach

@Oxyron, post #32

Osobiście assembler dla mnie jest najlepszym jeżykiem programowania - nie wiem dlaczego tak jest, ale do każdego tematu zawsze podchodzę myśląc jak bym to zrobił w assemblerze


Bo jest najlepszy, ale korzystanie z niego na siłę w każdej dziedzinie już nie jest najlepszym rozwiązaniem, ani najrozsądniejszym, ponieważ tam gdzie liczy się funkcjonalność kodu a nie sztuczki, assembler staje się kulą u nogi, to tak jakby sadzić ziemniaki ręcznie, bo sobie możesz je precyzyjnie ułożyć z linijką co 10cm. Najlepiej jest po prostu łączyć jedno z drugim, a do assemblera uciekać się tylko tam gdzie to jest konieczne.

Osobiście assembler dla mnie jest najlepszym jeżykiem programowania - nie wiem dlaczego tak jest, ale do każdego tematu zawsze podchodzę myśląc jak bym to zrobił w assemblerze


To się nazywa zboczenie zawodowe, nie przejmuj się, gdybyś był mistrzem fortrana, to pewnie w nim byś układał programy w myślach.

Co do mikrokontrolerów, obecnie pisze aplikacje na atXmege128


Piszesz sterownik wtrysku paliwa, że taka precyzja jest potrzebna? :)
[#34] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #33

Nie będę się opisywał nad moim projektem, powiem tylko, ze jest to 24 kanałowy generator dźwięku, Xmega128 tylko steruje układami SID [układy dźwięku z C64/128] Układ zaprojektowałem od podstaw, posiada 8 SIDów, 4 miksery audio, 2MB SRAM interface USB (na szczęście nie musze go programować, ale komunikacja z PC jest )

Teraz jestem w trakcie pisania playera... a ze czasu ogolnie nie za dużo to trochę mi to zajmuje szeroki uśmiech
[#35] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #31

Assembler jest językiem dla masochistów

Nie nazwałbym tego "masochizmem" - a "samozaparciem". To właśnie dzięki koderom przecież mamy w co zagrać i co obejrzeć na Amidze. Programiści, którzy w drugiej połowie lat 90. uciekali się do C i - co gorsza - do rozwiązań typu MUI pozostawili stertę nieużywalnych programów na Amigę, żeby później przenieść się z tym syfem na inne platformy, gdzie mogli (póki co) odetchnąć z ulgą, bo ich soft działał nieco szybciej. Ta tendencja obecnie nie ulega zmianie.

Dobra znajomość i umiejętność kodowania w asemblerze jest nieoceniona w przypadku Amigi. Kto tego nie umie lub nie lubi może spokojnie przenieść się na inne platformy, dla których powstały wszelakiego rodzaju ułatwienia i wspomaganie tworzenia programów. A zauważalna większość obecnych programistów umie tak naprawdę tylko wpisać "make" lub (co gorsza) jakieś żarty w postaci "makemake" i nic poza tym...

Z mojego doświadczenia asembler oferuje prędkość nieosiągalną w żadnym kompilatorze języka C. C ze względu na swoją naturę narzuca pewne ograniczenia - w asemblerze możemy korzystać ze spektrum poleceń procesora, technik optymalizacji programów. C zawsze tworzy kod szablonowy, asembler jest bardziej sztuką. Sztuką, która wymaga cierpliwości, skrupulatności i precyzji. Ale nie jest masochizmem.

Tak bardziej w temacie: AMOS jest w mojej opinii OK, do tego, do czego został stworzony nadaje się bardzo dobrze. I zgadza się - liczy się umiejętność prawidłowego wykorzystania możliwości, jakie oferuje dany język.

Podsumowując oto zestawienie wad i zalet każdego rozwiązania:
  • C oferuje uniwersalność, ale wymaga specjalistycznych bibliotek, o ile nie piszemy np. gry tekstowej,
  • Asembler oferuje szybkość, zwartość kodu, ale wymaga odpowiedniej dozy samozaparcia,
  • AMOS oferuje prostotę, łatwość tworzenia kodu, ale ma ograniczone zastosowanie.
[#36] Re: AMOS w sprawnych dłoniach

@Hexmage960, post #35

asembler jest bardziej sztuką. Sztuką, która wymaga cierpliwości, skrupulatności i precyzji. Ale nie jest masochizmem.


O ile znajome mi są prawa losu, to na sztuce mało kto się za życia dorobił. Upieranie się przy assemblerze tam gdzie nie jest to w ogóle potrzebne, to jest właśnie masochizm, chyba, że ktoś akurat nie zna nic innego albo ma za dużo wolnego czasu. Ze specyficznych instrukcji procesora rzadko się korzysta, przeważnie jest to jakieś dodawanie/odejmowanie, rzadziej dzielenie/mnożenie oraz skoki. Z generowaniem takich operacji kompilator (zależy jaki) radzi sobie całkiem optymalnie, ale nie jest możliwe precyzyjne sterowanie programem co do taktu, więc niespecjalnie nadaje się do wyciskania siódmych potów z Amigi, czy jakiegokolwiek innego urządzenia
[#37] Re: AMOS w sprawnych dłoniach

@mastaszek, post #1

[#38] Re: AMOS w sprawnych dłoniach

@*y, post #37

Generalnie nic, co urywa czachę.
[#39] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #38

Co najważniejsze, animacja nie tnie :P :)
[#40] Re: AMOS w sprawnych dłoniach

@odyseja_lkc, post #39

To chyba nie widziałeś nigdy płynnej animacji, scena z hot-dogami aż kłuje po oczach. Swoją drogą ten filmik to jest jakaś reklama kreatora do gier.
[#41] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #40

Wszystkich rulezowcow, ktorzy chca udowodnic czynem a nie tylko slowem, ze cos jest lepsze niz inne, zapraszamy do dzialu prywatnego tworcow gier itp.
Wystarczy zlozyc prosbe do Recendenta o zalozenie konta i uzyskac dostep do tego dzialu w ktorym mozna prezentowac swoje osiagniecia.
Poki co dyskusja staje sie jalowa i raczej na dluzsza mete bezsensowna
[#42] Re: AMOS w sprawnych dłoniach

@selur, post #41

Wydaje mi się że dyskusja jest bez sensu.
Nie każdy programuje w czym potrafi - lepiej coś zrobić niż tylko gadać co jest lepsze i zniechęcać innych. Lepiej skończyć coś w Amosie niż ciągle zaczynać w Aseblerze ;)

Ostatnia aktualizacja: 22.03.2015 22:24:49 przez biolog77
[#43] Re: AMOS w sprawnych dłoniach

@biolog77, post #42

A jeszcze lepiej by bylo, gdyby doslownie kazdy amigowiec zaczynal od AMOS'a a konczyl w Asemblerze.
Wtedy na Amige mielibysmy co roku wysyp gier
[#44] Re: AMOS w sprawnych dłoniach

@Oxyron, post #2

AMOS zawsze był wolny, jedyne co można było na nim zrobić to slide show


Bez przesady, AMOS ma przecież np. Boby (Blitter OBject). W czasach gdy wyszedł AMOS przeciętny domowy pecet mógł pomarzyć to tak płynnym i szybkim przesuwaniu fragmetnów ekranu. Jak się człowiek przyłoży to nawet w AMOSie można zrobić coś naprawdę świetnego i grywalnego. Staroscenowe podejście do sprawy wiele razy się nie sprawdziło. Nie chodzi o możliwości sprzętowe, czy super-szybkie procedurki. 95% sukcesu to dobry pomysł.

I piszę to jako człowiek, który uważa, że zdecydowanie szkoda czasu na grzebanie się w różnych Basicach. :)
[#45] Re: AMOS w sprawnych dłoniach

@selur, post #43

A jeszcze lepiej by bylo, gdyby doslownie kazdy amigowiec zaczynal od AMOS'a a konczyl w Asemblerze.
Wtedy na Amige mielibysmy co roku wysyp gier


Sam assembler gry nie napisze. Już kilku scenowców ze swoimi super-algorytmami próbowało swoich sił w gamedev. Okazało się, że jak się bardzo szybko narysuje ściany, podłogę i sufit to wcale od razu konkurent Dooma z tego nie chce wyjść. :) Coś tam zawsze brakowało... Czasem człowiek dochodził do wniosku, że sprawy techniczne to najmniejszy problem w tworzeniu gier.
[#46] Re: AMOS w sprawnych dłoniach

@MDW, post #45

"Już kilku scenowców ze swoimi super-algorytmami próbowało swoich sił w gamedev"

Ano...sila dawnych produkcji byly pomysly domowych amatorow: krotkie proste ale w miare grywalne. Tak naprawde brakowalo tylko solidnego wykonczenia calosci dlatego polskie produkcje wypadaly slabo.

Natomiast glowna wada scenowcow byly zbyt rozdmuchane ambicje. Kazdy scenowiec chcial odrazu pisac mega hity: Dooma, Quake'a 2, Command and Conquer'a itd. itp. dlatego powstaly tylko te proste gry a rodzime scenowe superprodukcje spadly do amigowych czelusci (moze poza np. taka Cytadela, ktora jest duza scenowa produkcja i w koncu ujrzala swiatlo dzienne).

" Coś tam zawsze brakowało"
chyba glownie samokrytyki i odrobiny rozsadku wielkich koderow
[#47] Re: AMOS w sprawnych dłoniach

@selur, post #46

i jeszcze jedna sprawa:

Wielka szkoda dla Amigi bylo tez to, ze wielu naszych owczesnych programistow-amatorow , ktorzy tworzyli gry (np. tworcy "Miasta Smierci" OK ) eksperymentujac w AMOSie dlubali, az do momentu kiedy stwierdzali "no teraz juz wiemy o AMOSie wszystko wiec przerzucamy sie na cos innego".
Eee...a to wlasnie byl ten moment zeby przygotowac wreszcie amigowego hiciora, wykorzystujac cala zdobyta wiedze a nie opuszczac srodowisko na rzecz czegos innego. No ale trudno, wyszlo jak wyszlo a dzis mielibysmy takie np. "Miasto Smierci 2", "Legion 2", "Doman 2" , "Kajko i Kokosz 2", "Lazarus 2" , " Mentor 2" ... i jeszcze wiele innych
[#48] Re: AMOS w sprawnych dłoniach

@selur, post #47

A właśnie:


- W jakim języku został napisany "Legion"?
- Cała gra powstała w Amosie.


Żródło :)
[#49] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #40

1. Ten filmik z postu #37 pokazuje możliwości AMOSa.
2. STOS BASIC (do którego dałeś linka w #40) to jest BASIC dla ATARI ST/STE, a STOS w nim to jest odpowiednik AMAL'a.

P.S. Płynne animacje oglądałem już 24 lata temu w demkach na Atari 800 XL :) (Antic)
[#50] Re: AMOS w sprawnych dłoniach

@selur, post #47

Lazarus na pewno nie powstał w Amosie, więc do tego zestawienia trochę nie pasuje.
[#51] Re: AMOS w sprawnych dłoniach

@odyseja_lkc, post #49

STOS to jest to samo, co AMOS tylko dla Atari ST/STE (znacznie jednak uboższe - później już nierozwijane).
[#52] Re: AMOS w sprawnych dłoniach

@Oxyron, post #32

Jezyk programowania najlepiej dostosowac do potrzeb. Uzywam C, C++, C#, czasami Pythona, assemblera juz prawie wcale :) Kazdy z tych jezykow jest doskonaly do niektorych zastosowan i fatalny do innych, nie ma uniwersalnego jezyka programowania ktory bylby idealny do wszystkiego :)

Co do mikrokontrolerow - assembler czesto sie przydaje jak masz naprawde krytyczny kod w ktorym liczy sie naprawde kazdy cykl. Ale nawet w takim wypadku zastanowilbym sie czy nie polaczyc assemblera z czyms bardziej wysokopoziomowym.

Xmega128... Fajny procesor. Ale co zrobisz jak bedziesz chcial przeniesc twoj kod na cos mocniejszego, chocby jakiegos ARM-a? Bedziesz musial przepisac calosc od zera. Ja ostatnio przenioslem jakies 95% kodu bez ani jednej poprawki z Mega644 na BeagleBone Black. Calosc napisana w C++ (pod mega644 C++ w postaci okrojonej, bez rtti, wyjatkow i dynamicznego zarzadzania pamiecia) :)

Assembler jest piekny, ale napisanie naprawde dobrego i wydajnego kodu wiaze sie z duzym nakladem czasu. A w wielu wypadkach wymiana algorytmu na bardziej wydajny bedzie o wiele bardziej efektywna.
[#53] Re: AMOS w sprawnych dłoniach

@mailman, post #50

A tak zgadza sie, moja duza pomylka w miejsce Lazarusa wchodzi Astral ok, racja
[#54] Re: AMOS w sprawnych dłoniach

@mschulz, post #52

Jeśli nie jest to coś dużego, to w mikrokontrolerach można zastosować assembler. Programista assemblerowy raczej wie, że ogranicza się do jednego rodzaju procesora i tylko na jeden później programuje :)

Możecie wierzyć lub nie, ale C++ jest obecnie uważany w środowisku developerów gier za język niskiego poziomu :) lol, pewnie doczekamy się jeszcze czasów, gdzie niskopoziomowym językiem programowania zostanie okrzyknięta Java :), gdzie Java do C jest jak Amos do assemblera.


Na youtubie można sobie obejrzeć demo nigdy nie wydanej i nieoficjalnej gry Sonic w Amosie.

Ostatnia aktualizacja: 23.03.2015 11:26:02 przez sanjyuubi
[#55] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #54

Na youtubie można sobie obejrzeć demo nigdy nie wydanej i nieoficjalnej gry Sonic w Amosie.


Można nawet w to zagrać, są "binarki"
[#56] Re: AMOS w sprawnych dłoniach

@mschulz, post #52

Biorąc pod uwagę różnice w implementacjach peryferiów Freescale, ST, NXP etc. to tak samo można o samym ARM powiedzieć. Co prawda STM32F030 kosztuje ledwie 4zł przy ok 9zł za atxmega32e5 ale... moc obliczeniowa jest wyraźnie większa, a adc, dma itp. też są w zestawie :) Gorzej, że trzeba czytać stosunkowo długie erraty do STM ...

Ostatnia aktualizacja: 23.03.2015 18:05:25 przez abcdef
[#57] Re: AMOS w sprawnych dłoniach

@BULI, post #55

Z tego co wiem, to Legion został napisany w Amosie, a była to chyba najlepsza polska gra RPG i sam zagrywałem się w nią godzinami. Czyli można. I na pewno do prostych gier Amos w zupełności wystarczy.
[#58] Re: AMOS w sprawnych dłoniach

@aszu, post #57

No ale AMOS "nie ogarnie" AGA, zgadza się? A może zamiast AMOSA to AmiBlitza rozgryźć? Wspólnie pewnie coś by z tego wyszło. Moim zdaniem bardziej rozwojowa wersja i zadziała też na MorphOS-ie, chyba na kartach graficznych, nie wiem, czy OCS?ECS, ale na AGA też powinno, itd. Więcej by nas się uczyło, grzebało itd.

Ostatnia aktualizacja: 23.03.2015 21:42:40 przez Ender
[#59] Re: AMOS w sprawnych dłoniach

@Ender, post #58

Ale ogarnie tryb 64 kolorów na AGA znacznie szybciej niż ECS, a 64 kolory to wcale nie tak mało.
[#60] Re: AMOS w sprawnych dłoniach

@sanjyuubi, post #59

Moim celem (i powodem powstania wątku) jest gra w 4 kolorach, ale chodząca szybko i płynnie na standardowej A500 z +pół mega pod klapką. Chcę też żeby gra się mieściła na jednej dyskietce - taki mój retro fetysz. Ma być bez fajerwerków, ale miodnie. Wydaje się, że amos może dać radę.
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