atarionline.pl Software Sprite Engine - 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:
         
        CommentAuthorjhusak
      • CommentTime9 Mar 2013 01:03
       
      Ja też nie lubię stereo... Za dużo tracków do opanowania.
      • 2: CommentAuthorwieczor
      • CommentTime9 Mar 2013 01:03 zmieniony
       
      Heh :) Właśnie dlatego dodatkowych tracków nie rozważam niezależnie ale np. to samo o oktawę wyżej, przesunięte w fazie, albo do robienia echa pogłosu.
      Dzięki temu na 4 kanałach masz wszystko a na ośmiu masz przestrzeń. Nie masz skakania lewo-prawo jak na Amidze itp.

      No ale nie o tym, nie o tym... Jak Kuba? Będziesz chciał to pociągnąć do końca?
      • 3:
         
        CommentAuthorjhusak
      • CommentTime9 Mar 2013 01:03
       
      na razie ugrzązłem w zawiłościach odczytu klawiatury.
      • 4: CommentAuthortrocero77
      • CommentTime9 Mar 2013 01:03
       
      Może się przyda:
      ->link<-
      • 5: CommentAuthorxxl
      • CommentTime9 Mar 2013 02:03
       
      w rejestrze X przechowywany jest kod klawisza jaki badamy,
      przykladowo sprawdzam czy user naciska litere "X" algorytm:
      cpx #$bd
      beq zgadza_sie_tego_szukam
      nienacisniety
      ldx #0
      clc
      rts

      zgadza_sie_tego_szukam
      lda stick0
      and #%1000 ; prawo
      bne nienacisniety
      nacisniety
      ldx #$ff
      sec
      rts

      sprawdz tylko czy nie sprawdza reg.Y bo nie pamietam.
      • 6:
         
        CommentAuthorjhusak
      • CommentTime9 Mar 2013 21:03
       
      Już rozkminiłem :) Sprawdza y, FF - naciśnięty.
    1.  

      wieczor:

      Wszystkie muzyczki piszę na jednego POKEYa a potem dodaje tracki na drugim, które używane są aby dodać przestrzeń ew. wzbogacić brzmienie. Dzięki temu jak masz jednego POKEYa muzyka brzmi dobrze, tak jak powinna, jak jest drugi, słyszysz "szerzej" trochę bogaciej, głębiej.
      I chwała za to podejście :) Przynajmniej mogę sobie spokojnie posłuchać muzy z Boogie Nights na moim Atari z jednym, biednym Pokeyem. A leci dość często, bo moja córka bardzo polubiła. Mi też zresztą pasuje :)
      • 8:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 18:03 zmieniony
       
      Można już trochę pochodzić, ale nie można się naparzać :)

      Zmieniona grafika na format atari, troszkę mu nóżka miga, temu misiu...

      Zastosowany tzw. tesktowy tryb graficzny (taki, jak w BBC Micro i C64)
      Aby zadziałało, dli jest co druga linia, oraz offset z linii na linię to 64 znaki, trochę marnotrwawstwo, ale w kodzie to było kilka prostych ruchów.

      Dane ludzików są kompresowane RLE i w locie rozkompresowywane, ponadto w locie jest też mirroring. (nieaktualna wersja)
      • 9: CommentAuthorxxl
      • CommentTime12 Mar 2013 18:03 zmieniony
       
      super :)

      jeszcze chwila i bedzie mozna zabijac.

      nareszcie widac z jaka szybkoscia moze dzialc LN na atari. trzymam kciuki.
      • 10:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 18:03 zmieniony
       
      No właśnie, choć nic nie zmieniałem w algorytmie, przeciwnicy na Atari niemrawo walczą, a te na BBC to trudni przeciwnicy...

      A co do szybkości, to tekstowy tryb graficzny sam w sobie daje 20-30% prędkości graficznym grom. A tutaj jeszcze postaci są rozkodowywane, a następnie przepisywane na ekran już z bufora.
      • 11: CommentAuthorxxl
      • CommentTime12 Mar 2013 18:03
       
      ale to tylko na dobre wyjdzie grze na bbc jest za trudna.
      • 12:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 19:03 zmieniony
       
      Nie jest bardzo trudna, tylko nie można stać i lać i dawać się okładać, trzeba robić uniki :D
      • 13: CommentAuthorxxl
      • CommentTime12 Mar 2013 19:03
       
      e tam. trzeba byc twardym.
      • 14: CommentAuthorEagle
      • CommentTime12 Mar 2013 19:03
       
      Pograłem właśnie kilka minut na bbc i widzę że bez poprawek się nie obejdzie bo tamtą wersje nie da się grać...
      Ale jak na razie Jakub ładnie to wygląd trzymam kciuki.
      • 15:
         
        CommentAuthorRastan
      • CommentTime12 Mar 2013 19:03
       
      jhusak: świetne, dobra robota !
      • 16:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 20:03 zmieniony
       
      nowa wersja, można się naparzać, ale nie można wspinać (przynajmniej ja nie umiem)

      No dobra, do tego potrzebny czekan, ale nie umiem rzucać szurikenem.
      • 17:
         
        CommentAuthorxeen
      • CommentTime12 Mar 2013 20:03
       
      rewela!
      • 18: CommentAuthorxxl
      • CommentTime12 Mar 2013 20:03
       
      nie, no... swietne!
      • 19: CommentAuthornodez
      • CommentTime12 Mar 2013 20:03
       
      wow!
      • 20:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 20:03
       
      Nie, to nie jest World of Warcraft!
      • 21: CommentAuthorxxl
      • CommentTime12 Mar 2013 22:03
       
      salto do przodu zniknelo... moze to byl ruch ktory umozliwia wspinanie?
      • 22: CommentAuthorpin
      • CommentTime12 Mar 2013 22:03
       
      @jhusak - jak należy uruchamiać "LastNinja2.xex"?

      Nie działa mi to na dwóch Atarkach. Po SIO, ładuje chwile i przestaje (spod inita), o reszcie już nie mówię.
      • 23:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 22:03 zmieniony
       
      No przeca pisze, że działa tylko pod emulatorem na razie.

      Wspinanie = czekan

      Na razie spacja podczas gry mi nie działa.
      JKL - różne salta. H - zmiana Holding SPACJA (nie działa) zmiana USING.

      fire dół skos - wzięcie przedmiotu. Fire + dół - kopniak. Fire + góra pięśniak.
      • 24: CommentAuthorpin
      • CommentTime12 Mar 2013 22:03
       
      :) - nie działa nawet z iksbajosa. Hehehh
      • 25:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 22:03 zmieniony
       
      Z niczego się nie załaduje, bo się ładuje pod $400-$800, $900-aff (post 29). Tylko z emula. Ale może kiedyś będzie normalnie do xbiosa wychodziło, bo do dosa nie da rady (tzn za dużo zachodu). Kiedyś będzie się ładowało wyżej i się będzie przepisywać niżej, ot co.
      • 26: CommentAuthorpin
      • CommentTime12 Mar 2013 22:03
       
      atari800win - odpala, ale widzę same krzaki.

      .. to po kiego pchać się w takie miejsca pamięci? ;)
      • 27: CommentAuthorfder
      • CommentTime12 Mar 2013 22:03
       
      Normalnie super. Jak to się stało, że nikt tego nie zrobił, kiedy tak bardzo tego brakowało...
      • 28:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 23:03 zmieniony
       
      Pin, nie narzekaj. Nie ma krzaków, jak basic odłączysz. Wszystkim działa. Ja nie wybierałem tych lokacji, a ich zmiana wiąże się ze sporym nakładem pracy (niejednokrotnie), aby kod był relokowalny na poziomie asemblera (niemal jest).

      fder, nie było internetu, a były animozje międzyplatformowe. I nie było wiedzy międzyplatformowej, tak jak to teraz wykorzystuje xxl, a teraz próbuję ja. Następnie był internet, ale era 8-bit się skończyła, a i archiwów nie było. W latach 20xx nastąpił resentyment, pojawiły się archiwa, dostępna wiedza dla każdego i stąd tyle aktywności na tym polu.
      • 29: CommentAuthorpin
      • CommentTime12 Mar 2013 23:03
       
      a - basic. Nie zauważyłem ;)
      • 30:
         
        CommentAuthorjhusak
      • CommentTime12 Mar 2013 23:03
       
      BASIC to PODSTAWA.
      • 31: CommentAuthorpin
      • CommentTime13 Mar 2013 01:03
       
      :D ... tak, jak możliwość jego wyłączenia z poziomu programu? :P
      • 32:
         
        CommentAuthorjhusak
      • CommentTime13 Mar 2013 01:03
       
      Pin, nie bądź u$%#$@%wy, bo specjalnie tak zrobię, że na twoim sprzęcie gra nie ruszy :P
      • 33: CommentAuthorBluki
      • CommentTime13 Mar 2013 01:03
       
      Też uważam, że gra, która nie potrzebuje BASIC-a, powinna go wyłączać sama. Przecież to jest prosta sprawa, tak prosta, że powinna być STANDARDEM przy pisaniu nowych gier.
      Całą "brudną" robotę powinien wykonywać komputer, a nie człowiek go obsługujący.
      Chyba nawet po to wymyślono komputery :)
      • 34: CommentAuthorpin
      • CommentTime13 Mar 2013 01:03
       
      @Bulki, tylko że ostatnio jak czytam różne bzdury to sam się zastanawiam w jakim to kierunku zmierza ;) Ciekawym by było, jak by ktoś teraz napisał grę na magnetofon. W sumie to przecież wszystko można :D

      Żeby nie było "u$%#$@%wy", to teraz nie piszę tego w stosunku do L.N. :)
      • 35: CommentAuthorpin
      • CommentTime13 Mar 2013 02:03
       
      .. tak poza tym, to jak to działa na tym emulatorze? Uruchomiłem, mam ekran z logiem LastNinja a na nim przebierają raciczkami dwa czarne ludziki. No i naciskam co się da i nic się nie dzieje ;)
    2.  

      Bluki:

      Przecież to jest prosta sprawa
      Jak to zrobić?
      • 37: CommentAuthorxxl
      • CommentTime13 Mar 2013 08:03
       
      org portb
      .byte $ff
      • 38:
         
        CommentAuthorDracon
      • CommentTime13 Mar 2013 08:03
       

      PINokio:

      .. tak poza tym, to jak to działa na tym emulatorze? Uruchomiłem, mam ekran z logiem LastNinja a na nim przebierają raciczkami dwa czarne ludziki. No i naciskam co się da i nic się nie dzieje


      Trzeba bylo wcisnac po prostu spacje. :P
      Uzywaj do uruchamiania lepiej A800Win[ByX] bo jakos lepiej tam to wyglada....
      • 39: CommentAuthorpin
      • CommentTime13 Mar 2013 12:03 zmieniony
       
      .. a spacje ;) No faktycznie.
      • 40:
         
        CommentAuthorjhusak
      • CommentTime14 Mar 2013 05:03
       
      Żeby nie było "u$%#$@%wy"

      Pin, dzięki, że mnie zacytowałeś bez błędów :)
      • 41:
         
        CommentAuthorjhusak
      • CommentTime14 Mar 2013 05:03
       
      org portb
      .byte $ff


      Hmm. to mi daje do myślenia...
    3.  
      org portb
      .byte $ff
      Hmm. to mi daje do myślenia...
      Mi też... Działa dobrze. Ale pytanie, dlaczego to działa?

      I zgadzam się z Blukim - to powinien być standard (o ile nie ma ukrytych wad). Przynajmniej folijka z OPTION by mi nie schodziła :)
      • 43: CommentAuthorwieczor
      • CommentTime19 Mar 2013 23:03
       
      Pytanie brzmi: a dlaczego miałoby nie działać? :)
      • 44: CommentAuthormono
      • CommentTime19 Mar 2013 23:03 zmieniony
       
      Dlaczego działa. Po zakończeniu boota kontrolę przejmuje loader. Nawet jeśli basic jest włączony, to os nie oddał mu sterowania. Loader zaczyna ładować program, trafia na blok ładujący $ff do portb, więc go tam zapisuje (wyłącza się basic) choć basicf ($3f8) nadal wskazuje że basic jest zainstalowany (oidp 1), memhi ($2e5) jest w $9c1f a i ekran (E:) jest nadal w $9c20..$9fff (żeby się znalazł w $bc20..$bfff trzeba by zapisać memhi, basicf, zamknąć #0 i otworzyć na nowo, albo ręcznie załadować nową dlistę). Bloki w obszarze basica mogą się spokojnie ładować do ramu. Po zakończeniu ładowania loader przekazuje sterowanie do programu. I cała magia.
    4.  
      @wieczor
      Bo jak czytam sobie o PORTB w mapie pamięci to widzę tylko coś o zapisach/odczytach z portu dżojstika. Natomiast o wyłączaniu BASICa jest w $3F8 (BASICF) ale widzę, że tego nie stosujemy :)

      @mono
      Dzięki za wyjaśnienie. Kluczowe jest jednak to zdanie "trafia na blok ładujący $ff do portb, więc go tam zapisuje (wyłącza się basic)". Ciekawi mnie, dlaczego zapis $ff do PORTB wyłącza BASIC.

      Może mam jakąś starą mapę pamięci.

      ====== EDIT: =======
      Dobra, znalazłem więcej tutaj:
      ->link<-
      • 46: CommentAuthormono
      • CommentTime20 Mar 2013 00:03 zmieniony
       
      Porta służy do obsługi dwóch pierwszych joysticków. Portb w xl/xe do obsługi pamięci (w tym dodatkowej). Możliwe, że w 400/800 służył do obsługi dwóch kolejnych joysticków... Oni tam mają 4 joye i 8 paddli.

      Edit: A znasz ->link<- ?
      • 47: CommentAuthorxxl
      • CommentTime20 Mar 2013 00:03
       
      @mgr_inz_rafal: jesli piszesz gre to na poczatku dobrze by bylo zdecydowac czy w grze bedziesz uzywal procedur systemu operacyjnego. decyzja (jaka by ona nie byla) kilka spraw odrazu uprosci.
      • 48: CommentAuthormono
      • CommentTime20 Mar 2013 00:03
       
      To prawda. O te dodatki o których pisałem trzeba by zadbać tylko kiedy używasz osa. Wpp wystarczy samo portb.
      • 49:
         
        CommentAuthorKaz
      • CommentTime4 Oct 2020 23:10
       
      Zamieszczę tu sobie przykład software sprite engine:

      • 50: CommentAuthorTrachu
      • CommentTime6 Oct 2020 07:10
       
      KAZ a w jaki sposob uzyskano tutaj 8kolorow plus tlo?