atarionline.pl Programowanie grafiki - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorCosi
      • CommentTime3 Jun 2009 12:06
       
      Mam taką prośbę. Czy ktoś mógłby tutaj, krok po kroku, wytłumaczyć zasady programowania DL i P/MG na Atari? Chodzi mi o taki kurs dla debili :) Gdyby udało mi się pojąć, mógłbym rozwinąć temat i zrobić kurs programowania grafiki w Forth'cie.
      Kto pomoże?
      • 2: CommentAuthorxxl
      • CommentTime3 Jun 2009 13:06
       
      chodzi o DL - display list czy DLI - przerwanie?
      • 3:
         
        CommentAuthorCosi
      • CommentTime3 Jun 2009 13:06
       
      Głównie o DLI, bo w zasadzie sam program DL to nie jest taka skomplikowana sprawa. A już zrobienie jakichkolwiek efektów graficznych wymaga oprogramowania DLI.
      Wiem, że temat był wielokrotnie wałkowany, nawet był kurs w TA, ale nie udało mi się z niego niczego praktycznego nauczyć. Dlatego myślałem, że może taki kurs "dla opornych" nie byłby złym pomysłem...
      • 4:
         
        CommentAuthorKaz
      • CommentTime3 Jun 2009 14:06
       
      Jezeli chodzi o poczatki z PMG to sporo jest wyjasnione w Atari Basic pod redakcja Miguta.

      Tutaj ksiazka:
      ->link<-

      A konkretnie tutaj djvu (rozdzial 5):
      ->link<-

      Zientara tez sie przyda (rozdzial 4):
      ->link<-
      • 5:
         
        CommentAuthorCosi
      • CommentTime3 Jun 2009 15:06
       
      Dzięki. I tak strasznie to dla mnie mętne... czemu nie można było zrobić duszków tak jak w NESie? :(
      Btw. Przeprowadziłem test przy użyciu zegara ściennego SKALAR i wyszło mi, że Forth jest... 22 razy szybszy od Atari Basica w dostępie do pamięci ekranu (pętla 65536 iteracji).
      • 6:
         
        CommentAuthorKaz
      • CommentTime3 Jun 2009 16:06 zmieniony
       
      Dlaczego nie mozna bylo zrobic tak jak w NES? Moze dlatego, ze po raz pierwszy w normalnym komputerze duszki uzyli inzynierowie z Atari i nie mieli sie na kim (i na czym) wzorowac jak inzynierowie z NES? Taka to juz cena bycia pionierem... robi sie rzeczy genialne, ale nie idealne :)

      Nawet wtedy nie nazywalo sie to jeszcze duszki (to terminologia wprowadzona przez Commodore), tylko wlasnie Player-Missile Graphics (Atari) czy tez Movable Object Block (Motorola). Upowszechnila sie nazwa "duszki", bo to chwytliwe i obrazowe.
      • 7:
         
        CommentAuthorCosi
      • CommentTime3 Jun 2009 16:06
       
      A teraz, po 30 latach cierpimy my, Atarowcy ;)
      W zasadzie duszki nie są takie trudne w programowaniu - może najwyżej zagmatwane, mnóstwo POKE'ów trzeba wklepać żeby coś się w ogóle raczyło pojawić na ekranie. Za to żeby zrobić kilka kolorowych duszków, trzeba się pewnie zdrowo namęczyć - przydałyby się choćby czterokolorowe mapy... No i zawsze mnie intrygowało, jak się uzyskuje np. dziesięć różnych duszków na raz.
      • 8: CommentAuthortebe
      • CommentTime3 Jun 2009 17:06
       
      Cosi zapisz jakiś obrazek w G2F jako ASM i będziesz miał możliwość oglądać i analizować program DLI
      • 9:
         
        CommentAuthorCosi
      • CommentTime3 Jun 2009 20:06 zmieniony
       
      Oooo, dzięki wielkie, tebe :-) To jest genialny pomysł. I DLI, i duszki.

      PS. A co to za assembler?! Chlip :'-(
      • 10: CommentAuthortebe
      • CommentTime3 Jun 2009 23:06
       
      a Ty chciałbyś umieścić program Fortha na przerwaniu DLI? nie żartuj
      • 11: CommentAuthorGonzo
      • CommentTime4 Jun 2009 00:06
       
      Cosi - w sumie ciekawe, bo od czasów defendera czy drop zone nikt (albo prawie nikt, bo do końca nie jestem pewien) nie powtórzył podobnego efektu, a rozmnożenie PM występuje chyba tylko w crownland i nibbly, no i gry w hi-res - można policzyć na palcach, hmm...
      • 12:
         
        CommentAuthorCosi
      • CommentTime4 Jun 2009 10:06
       
      tebe: A co w tym żartobliwego? :) Słowa Fortha to są normalne podprogramy, tyle że zakończone RTS zamiast RTI. A do tego są sztywno ulokowane w pamięci. Jestem przekonany, że gdyby odczytać adres, pod którym jest umieszczone słowo, można by je bez problemu podpiąć. W końcu Forth kompiluje do kodu maszynowego, to nie jest jakiś byte-code.

      Gonzo: Teoretycznie pozostają jeszcze duszki programowe - może tak to jest robione... Nie wiem.
      • 13: CommentAuthortebe
      • CommentTime4 Jun 2009 17:06
       
      jak wgłębisz się w temat to zrozumiesz jakie ograniczenia czasowe narzuca DLI