atarionline.pl początki w TBXL - znaki, PMG, RAMTOP... - 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: CommentAuthorlhuven
      • CommentTime30 Mar 2010 20:03 zmieniony
       
      Pytanie do turbo-basic'owych orłów:)

      Programistą nie jestem, na pamięci się nie znam, potrafię napisać metodą prób i błędów coś prostego i działającego (uwaga na wstępie, że ze mną trzeba "jak krowie na rowie").

      Piszę programik, w którym modyfikuję zestaw znaków i jednocześnie używam PMG. W związku z czym "książkowo" obniżam RAMTOP. Używam GR.1, gdzie wykorzystuję zmodyfikowane znaki +PMG (pojedyncza rozdzielczość) do wyświetlania grafiki. Nie chcę się jednak ograniczać tylko do tego trybu graficznego, ale wiem że użycie komendy GRAPHICS wszystko mi skaszani. Co zrobić, żeby przełączyć się z GR.1 na, przykładowo, GR.15, i nadal używać moich znaków? Czy trzeba jeszcze raz obniżyć ramtop, i przesunąć po raz kolejny w pamięci zestaw znaków (a potem podać jeszcze raz adres zmodyfikowanego zestawu znaków za pomocą POKE 756)? Czy jest na to jakieś prostsze rozwiązanie?

      Na początek (dla GR.1, znaków i PMG) ustawiam:

      POKE 106,PEEK(106)-13
      • 2:
         
        CommentAuthorlarek
      • CommentTime30 Mar 2010 21:03 zmieniony
       
      Obniżając RAMTOP należy wziąć pod uwagę fakt, iż Atari poniżej wskazanej wartości umiejscowi pamięć obrazu. A z pamięcią obrazu nie jest tak prosto z uwagi na różne tryby graficzne i wielkość obszaru, który zajmuje. Na początek, skoro jesteś mniej doświadczonym programistą, proponuję zmniejszać RAMTOP o wielokrotność 4KB, czyli o wartość 16, a nie 13: POKE 106,PEEK(106)-16 (-32, -48, itd.). Będzie mniejsze prawdopodobieństwo, że obraz się wykrzaczy.
      Po obniżeniu RAMTOPu koniecznie należy wykonać instrukcję GRAPHICS, nawet gdybyś nie zmieniał trybu graficznego na inny. Pozwoli to Atari odbudować obraz w nowym obszarze (poniżej RAMTOP). Jeżeli zmieniasz zestaw znaków lub korzystasz z PMG, to po każdej instrukcji GRAPHICS należy również odświeżyć zawartość komórki 756 (fonty) oraz 559 (m.in aktywacja PMG)

      ---
      EDIT:
      559 to oczywiście nie aktywacja PMG, tylko rozdzielczość
      • 3:
         
        CommentAuthorMaW
      • CommentTime30 Mar 2010 21:03 zmieniony
       
      Nie obniżaj o taką dziwną liczbę - jak ostatnio doszliśmy z Mono do wniosku, najlepsze jest obniżanie zawsze o wielokrotność 8: POKE 106,INT(PEEK(106)-X)/8)*8 - na pewno wtedy będziesz miał dobry ekran i w GR.8, i w GR.0 (w pośrednich także).

      Ramtop obniżasz tylko raz - przy "starcie" lub po resecie.

      Poke 756,zestaw - za każdym razem jak użyjesz komendy GR.XX - no chyba, że tworzysz własną DL, to wtedy nie musisz przełączaniem zestawów się martwić...

      //EDIT: cześć Larek :D
      • 4:
         
        CommentAuthorlarek
      • CommentTime30 Mar 2010 21:03
       
      Cześć :)
      • 5: CommentAuthorlhuven
      • CommentTime30 Mar 2010 22:03 zmieniony
       
      To śmieszne 13 to w tym przypadku najniższe możliwe obniżenie, przy której nie dostaję krzaków:) Działa też 17, 21, itd. (a przy parzystych, np.16 mam sieczkę). 2kb na PMG czyli 8, pełny zestaw znaków to ile, 1kb? Tym niemniej obniżenie o 12 nie wystarcza. Chcę sobie zostawić możliwe najwięcej pamięci na sam program.

      Na początku programu obniżam ramtop, ustawiam GRAPHICS, kopiuję zestaw znaków, modyfikuję go, ustawiam pmg.

      Potem gdy w trakcie działania programu chcę zmienić tryb graficzny:

      0. wyłączam PMG: POKE 53277 (żeby nie zrobiła się kaszana z duchów) 1.komenda GRAPHICS - zmiana trybu graficznego, 2.POKE 756, 3.POKE 54279

      Czy tak będzie dobrze? :)
      • 6:
         
        CommentAuthorMaW
      • CommentTime30 Mar 2010 22:03
       
      jescze 559,62 albo ile tam miałeś ;-) i 623,XX możesz priorytety odtworzyć :-)
      • 7: CommentAuthorlhuven
      • CommentTime30 Mar 2010 22:03
       
      Spróbuję nad tym podziałać. Niestety przez święta ten weekend będzie stracony dla progamowania ;-) Dzięki panowie:)
      • 8:
         
        CommentAuthorlarek
      • CommentTime30 Mar 2010 23:03
       

      lhuven:

      Działa też 17, 21, itd. (a przy parzystych, np.16 mam sieczkę)

      Sieczkę? Nie może być! Podaj może (tak dla pewności), gdzie umieściłeś zestaw znaków i pamięć PMG, czyli co wpisujesz do komórek 756 i 54279?
      • 9: CommentAuthormono
      • CommentTime31 Mar 2010 17:03
       
      @MaW: Larek napisał prawdę - przy używaniu trybów graficznych obniżać o wielokrotność 4KB czyli 16, a nie o 8 (2KB). Winny jest sterownik S:, który konstruując dlist robi proste założenie, że LMS zmieni się tylko raz w połowie ekranu - a więc, że RAMTOP będzie zawsze w $C0, $B0, $A0, itd. Najprostszym objawem złego RAMTOPa jest przesunięta grafika po GRAPHICS.
      • 10: CommentAuthorlhuven
      • CommentTime31 Mar 2010 19:03 zmieniony
       
      @mono: akurat w moim programie używam trybu tekstowego (GR.1)

      @larek: Pewnie coś naknociłem. Wartości komórek spisane po przerwaniu programu klawiszem Break: PEEK(756)=180, PEEK(54279)=256
      • 11: CommentAuthormono
      • CommentTime31 Mar 2010 20:03
       
      Żaden PEEK w BASICu nie ma prawa zwrócić 256 :)
      • 12:
         
        CommentAuthorlarek
      • CommentTime31 Mar 2010 20:03 zmieniony
       
      PMBASE, czyli komórka 54279 służy tylko do zapisu. Odczytywanie z niej nic dobrego nie da. W Twoim przykładzie wartość 256 (poza tym, jak napisał Mono jest to niemożliwe) wskazuje na sam koniec pamięci, bo 256*256=65536, a pewnie nie tam umieściłeś pamięć PMG. Dlatego też pytałem, jaką wartość wpisujesz do tego rejestru, a nie co z niego można odczytać, bo to w Atari mogą być dwie różne sprawy :-)

      RAMTOP obniża się po to, aby zabezpieczyć odpowiedni obszar RAM-u na własne (naszego programu) potrzeby, czyli żeby właśnie w tym obszarze móc umieścić np. zestaw znaków, grafikę PM itp. Jeżeli piszesz program w Turbo Basic XL, to wrtością standardową RAMTOP jest 192. Od niej trzeba odjąć odpowiednią ilość pamięci, którą chcemy zarezerwować w stronach. 1 strona = 256 bajtów, czyli 1KB=4 strony. Specyfika tworzenia obrazu przez system wymaga, aby pamięć obrazu leżała w odpowiednich miejscach pamięci RAM. Jak sam sobie tworzysz Display List, to możesz robić prawie co chcesz. Ale jak to zadanie zlecasz systemowi, to trzeba na to zwrócić uwagę.
      Wyliczmy ile potrzebujemy pamięci na nasze dane:
      1. zestaw znaków = 1KB
      2. PMG w "lepszej" rozdzielczości = 2KB
      -----------------------------------------
      razem 3KB

      3KB to 12 stron, czyli jak od RAMTOP odejmiesz 12 stron, to teoretycznie wydzielisz odpowiedni obszar pamięci. Niestety przy standardowym tworzeniu obrazu będzie problem, bo Antic zacznie źle wyświetlać obraz, gdyż system źle umieści w pamięci obszar ekranu, bo będzie posługiwał się wartością z RAMTOP zmiejszoną o 12 stron. A Antic nie lubi, jak obraz "krzywo leży" w pamięci ;-)
      I dlatego zdecydownaie lepiej jest obniżać RAMTOP o wielokrotność 4KB, tj. 16 stron, Antic lubi taką wartość ;-). Wtedy procedurki systemowe ładnie umieszczą pamięć obrazu w RAM i będzie git.
      W trybach o małej zajętości pamięci (napisałeś o GR.1) nie ma to takiego znaczenia, ale skoro coś się krzaczy, to jednak warto zastosować się do rady :)

      Ja bym zrobił tak (zakładam, że piszesz w TBXL, bo wartość 180, którą podałeś, w komórce 756 w Atari Basicu, o ile się nie mylę, to by nie przeszła):
      POKE 106,176     'bo 192-16=176
      GRAPHICS x 'włączenie jakiegoś trybu
      POKE 54279,176 'PMBASE od 176*256=45056
      POKE 756,184 'zestaw znaków od 184*256=47104

      + oczywiście inne ustawienia dla PMG, no i załadowanie w odpowiednie obszary danych dla znaków i PMG

      Po każdym GRAPHICS należy przypomnieć systemowi niektóre wartości (odpowiedzialne za PMG i fonty), bo je sobie zmieni na standardowe. Jedno jest pewne - do chwili wykonania resetu, nasze dane w chronionym obszarze (w tym przypadku od 176 do 192) na 100% nie ulegną zniszczeniu! No, chyba że sami je sobie zniszczymy...
      • 13:
         
        CommentAuthorlarek
      • CommentTime31 Mar 2010 20:03 zmieniony
       
      wykasowane, bo głupotę napisałem ;-)
      • 14: CommentAuthormono
      • CommentTime31 Mar 2010 20:03 zmieniony
       
      To w takim razie moja odpowiedź nie ma sensu - też usuwam :)
      • 15:
         
        CommentAuthorlarek
      • CommentTime31 Mar 2010 20:03
       
      Mono, oczywiście masz rację. Wykasowałem moje bzdury zanim napisałeś odpowiedź :D
      • 16: CommentAuthorlhuven
      • CommentTime31 Mar 2010 21:03 zmieniony
       
      PMBASE mam ustawione na 184. Znaki tuż na początku zabezpieczonego obszaru: 180. RAMTOP obniżony o 13, czyli na 179.

      Dzięki za porady, muszę wypróbować nowe wiadomości. Na pewno wrócę z nowymi pytaniami :)
      • 17: CommentAuthorlhuven
      • CommentTime26 May 2010 10:05 zmieniony
       
      Jak najłatwiej wczytać obrazek spod turbo basica? np. w formacie MIC (chyba że jest jakaś lepsza alternatywa). Chciałbym przygotować obrazek na PC, potem za pomocą G2F zapisać go jako .MIC. Obrazek w standardowej grafice Atari, rozdzielczość 160x160 żeby zmieścił się w GR.15 z okienkiem lub 160x192. Nie będę używał DLI ani duszków, G2F chciałem użyć tylko do konwersji. Mam 2 pytania:

      1. Załóżmy, że mam plik .MIC na PC, jak "nagrać go" na atarowską dyskietkę w .ATR? Jest do tego jakiś program?

      2. Jak odczytać taki plik w turbo basicu?

      Bardzo proszę o łopatologiczny instruktaż, najlepiej na prostym przykładzie.. z góry dzięki:)


      P.S. Zmiana trybu graficznego z odtworzeniem przerobionego zestawu znaków i PMG działa, dzięki raz jeszcze za pomoc.
      • 18:
         
        CommentAuthorlarek
      • CommentTime26 May 2010 11:05 zmieniony
       
      1.AtrUtli: ->link<-
      lub makeATR: ->link<-
      Otwierasz dyskietkę i opcją "Insert Bin" / "Insert" wrzucasz plik *.MIC.

      2.
      DIM OBRAZ$(6400) : REM -> dla 160x160 lub 7680 dla 160x192
      OPEN #1,4,0,"D:nazwa_obrazka.MIC"
      BGET #1,ADR(OBRAZ$),6400 :REM -> dla 160x160 lub 7680 dla 160x192
      CLOSE #1

      i już mamy obrazek w zmiennej tekstowej. Jeśli chcemy go umieścić w pamięci obrazu to wykonujemy:
      MOVE ADR(OBRAZ$),DPEEK(DPEEK(560)+4),6400 :REM -> dla 160x160 lub 7680 dla 160x192

      można oczywiście zamiast odczytywać dane do zmiennej tekstowej od razu wczytać je do pamięci obrazu. W takim przypadku zamiast ADR(OBRAZ$) piszemy DPEEK(DPEEK(560)+4) (w programie z pierwszej ramki) i nie potrzebujemy wtedy deklarować zmiennej OBRAZ$.

      ---------
      edit:

      Coś się pierniczy formatowanie! Ten kod pod pierwszą ramką jest zbędny. Nie wiem dlaczego się pojawił i co gorsze, nie da się tego usunąć.
      • 19: CommentAuthorlhuven
      • CommentTime26 May 2010 12:05
       
      @larek: Super, właśnie o taką łopatologię mi chodziło:)

      A da się może wyświetlić z poziomu TBXL obrazek narysowany na Atari w XL-arcie? On chyba nie zapisuje w .MIC z tego co pamiętam.
      • 20:
         
        CommentAuthorlarek
      • CommentTime26 May 2010 15:05
       
      Jeżeli zapiszesz obrazek w XL-Art przez "SAVE MIC" to też się będzie dało. Mały problem polega na tym, że format MIC w XL-Art zapisuje najpierw wartości kolorów, a dopiero później dane obrazka, a G2F odwrotnie. W swoim programie należałoby te dane kolorów ominąć np. tak:
      OPEN #1,4,0,"D:nazwa.MIC"
      GET #1,BAJT : GET #1,BAJT : GET #1,BAJT : GET #1,BAJT
      BGET #1,...(tu już tak samo)

      Uwaga: nie pamiętam ile tych bajtów kolorów jest: 4 albo 5? Odpowiednio trzeba taką ilość pominąć (albo załadować do rejestrów kolorów).
      • 21: CommentAuthorlhuven
      • CommentTime26 May 2010 15:05
       
      A właśnie, jedna z rzeczy o które chciałem zapytać to czy da się odczytać z pliku konkretne bajty. Czy komputer zawsze odczytuje po kolei cały plik i mogę tylko pomijać niechciane wartości. Np. mam plik .DAT z ciągiem danych (np. zbiór map do gry zapisanych jako zmienne tekstowe), i mój program decyduje, żeby odczytać z takiego pliku ciąg bajtów dajmy na to od 50 do 70 (który zawiera jedną z map). Muszę odczytać pierwsze 49 czy mogę bezpośrednio "dobrać się" do tego wycinka danych który mnie interesuje, wskazując w którym miejscu ma zacząć czytać?
      • 22:
         
        CommentAuthorlarek
      • CommentTime26 May 2010 17:05
       
      Generalnie nie.
      Chociaż można poeksperymentować z instrukcjami NOTE/POINT. Jednak myślę, że gra nie warta świeczki.
      • 23: CommentAuthorilr
      • CommentTime26 May 2010 20:05
       
      @lhuven:
      W Atari Basic Miguta str. 74-75 jest przykład, który realizuje podobną rzecz.
      • 24:
         
        CommentAuthorPecus
      • CommentTime26 May 2010 23:05
       
      Note i Point dzialaja roznie w zaleznosci od formatu dysku. Jesli bedziesz mial dysk w formacie Dosow innych niz Sparta, to Pointem skoczysz prowidlowo tylko w punkty, ktore wczesniej zapamietales (na tym samym dysku) przez Note. Wiec sie to nie sprawdza.
      Za to jezeli przejdziesz na format Sparty.... no to masz jak trzeba, mozesz wskazywac dowolny bajt w pliku, a nawet poza nim.
      Wynika to z innego sposobu zapisu informacji o rozmieszczeniu danych na dysku.
      Tak wiec Note i Point polecam w polaczeniu z formate Sparta DOS - tam dzialaja te rozkazy naprawde.
      Poczytaj o formatach w Atariki.
      • 25:
         
        CommentAuthorKaz
      • CommentTime27 May 2010 11:05
       

      Larek:

      Uwaga: nie pamiętam ile tych bajtów kolorów jest: 4 albo 5? Odpowiednio trzeba taką ilość pominąć (albo załadować do rejestrów kolorów).


      4.
      • 26: CommentAuthorlhuven
      • CommentTime27 May 2010 12:05 zmieniony
       
      @larek: dzięki za instruktaż, nie sądziłem że to takie łatwe:)

      Faktycznie XL-art zapisuje w formacie MIC, nie pamiętałem tego. Ale odpuszczę go sobie, bo rysowanie joy'em w emulu to gorszy masochizm niż pikselowanie w G2F. Co innego gdybym mógł używać pecetowej myszki.

      @Pecus: Dzięki, NOTE i POINT w takim razie też odpuszczę, nie jest to dla mnie tak istotne żeby się na tym doktoryzować ;-) Jakoś podzielę dane na ileś tam plików.

      Tu pytanie: czy jest jakieś ograniczenie ilości plików na dyskietce? czy to też kwestia formatu?
      • 27:
         
        CommentAuthorlarek
      • CommentTime27 May 2010 13:05
       
      Ilość plików na dyskietce zależy raczej od zastosowanego DOSu niż od formatu. DOS 2.5 ma chyba max 64 pliki. Lepszy jest MyDOS, bo pliki można podzielić na różne katalogi. A najlepszy to pewnie będzie SpartaDOS X.
      • 28: CommentAuthorlhuven
      • CommentTime24 Jun 2010 20:06 zmieniony
       
      Ok, jako że w najbliższym czasie nie będę miał czasu na programowanie, zamieszczam to co mam - zalążek mojej pierwszej gry :) W założeniu (ambitnym) ma to być bardzo prosty RPG w stylu Ultima czy mojej ulubionej przed laty Phantasie (chyba porwałem się z motyką na słońce jak na "pierwszy raz"). Jako że dopiero raczkuję jako twórca, proszę o wyrozumiałość :P

      Na razie to tylko przemieszczający się po planszy ludzik i losowe spotkania z potworami (na razie nie ma walki - jest tylko komunikat). Wersja 0.11 mówi sama za siebie :)





      wczytywanie: START.BAS uruchamia obrazek tytułowy, naciśnięcie spacji wczytuje program główny RPGDEMO.BAS (można wczytać od razu RPGDEMO.BAS)

      podczas gry: L - wczytanie stanu gry, S - zapisanie stanu gry.
      • 29:
         
        CommentAuthorlarek
      • CommentTime24 Jun 2010 21:06 zmieniony
       
      To jeszcze warto dodać, że do uruchomienia potrzebny jest TBXL, którego na dyskietce nie ma. Niby z tytułu wątku to wynika, ale... ;) A, DOS też się przyda.

      Dobry początek. Mam nadzieję, że wrócisz do programu i kiedyś doczekamy się wersji 1.00!
      • 30: CommentAuthorlhuven
      • CommentTime25 Jun 2010 09:06
       
      Rzeczywiście, dyskietka nie jest bootowalna, trzeba najpierw wczytać Turbo Basic XL, zapomniałem dodać.

      Mam zgryz jeśli chodzi o doczytywanie map - wszystko było super, gdy 1 mapa = 1 plik z danymi. Ale teren gry to w założeniu 100 map (obszar 10x10) i nie da rady tego zmieścić na 1 dyskietce. Na razie podzieliłem obszar gry na 10 pionowych "pasków", każdy ma zawierać 10 plansz w 1 pliku i pomijam niechciane bajty. Nie jest to dobre rozwiązanie, bo odczyt trwa dłużej, a gdy żądana mapa jest akurat gdzieś na końcu pliku, będzie to trwało..
      • 31:
         
        CommentAuthorlarek
      • CommentTime25 Jun 2010 10:06
       
      A nie można trzymać całego "paska" w pamięci komputera?
      Innym rozwiązaniem jest przejście na inny DOS. MyDOS ze swoją strukturą katalogów bez problemu pomieści taką liczbę plików. Mało tego. Dyskietka obsługiwana przez MyDOS może mieć wielkość aż 16MB! Możesz trzymać na niej gigantyczne mapy! Tu linkt do takiej dyskietki: ->link<-
      • 32:
         
        CommentAuthorKaz
      • CommentTime26 Jun 2010 21:06
       
      Wrzucilem Twoje pliki na dyskietke z Turbo Basiciem XL i DOS-em, teraz jest to samouruchamialna gra, plik w nowince:

      ->link<-
      • 33: CommentAuthorlhuven
      • CommentTime27 Jun 2010 00:06
       
      Oryginalny obrazek znaleziony w sieci (obrazek z pudełka pecetowej gry - to chyba jakaś marna podróbka Heroes'ów)

      • 34:
         
        CommentAuthorKaz
      • CommentTime28 Mar 2011 14:03
       
      Leszek, dzialasz cos z gra?
      • 35: CommentAuthorlhuven
      • CommentTime28 Mar 2011 15:03
       
      Niestety nie, obawiam że porwałem się na zbyt skomplikowaną rzecz jak na (de facto) naukę TBXL i moje niewielkie umiejętności, do tego doszedł brak czasu. Ale troszkę się nauczyłem, i będę kontynuować radosną zabawę z basicem w przyszłości (tak to trzeba nazwać).
      • 36:
         
        CommentAuthorkris3d
      • CommentTime12 Oct 2015 13:10
       
      Stary wątek ale dla mnie aktualny więc zapytam od razu tutaj o kilka spraw i proszę o wybaczenie mojej lameriady:)

      1. Jak zmienić bezpiecznie na raz cały zestaw znaków? Rozwiązanie pod TBXL preferowane. Chodzi mi o procedurę która wczyta cały nowy zestaw znaków z instrukcji DATA.

      2. Przeczytałem powyżej że można wczytać obrazek w formacie MIC i zapisać go do zmiennej tekstowej i trzymać go w pamięci.

      PYTANIE: a czy można (i w jaki sposób?) zapisać go do postaci kodu TBXL (może być do DATA) tak żeby go nie wczytywać za każdym razem z dyskietki?

      Dzięki:)
      • 37:
         
        CommentAuthorlarek
      • CommentTime12 Oct 2015 14:10 zmieniony
       
      Ad.1
      - ściągasz program SupGen 2000 2.00
      - projektujesz nowy zestaw lub wczytujesz już zaprojektowany
      - wybierasz z menu Opcje->Zapis->[nazwa]->LST->Data* lub Move*
      - zapisany plik dołączasz do swojego programu poprzez ENTER "D:nazwa.LST".
      - w swoim programie wywołujesz podprogram generatora. I już. Gotowe i fajne. READY :P

      *) Data - zapisuje dane zestawu jako dane liczbowe w liniach DATA. Uruchomienie generatora chwilę trwa, ale każdą wartość można w ten sposób przechować
      MOVE - dane zestawu przechowywane są w postaci znaków ATASCII. Uruchomienie generatora jest błyskawiczne, ale nie wszystkie wartości da się tak przechować.
      Problematyczne są tu wartości (o ile pamiętam) 34 i 155. Najlepiej spróbować najpierw MOVE, a jeśli nie zadziała, to zostaje DATA (lub przeprojektowanie znaku).

      Warto przeczytać instrukcję obsługi programu, która jest na dyskietce - w DOS wpisujesz PORADNIK.SG2.


      Gdybyś jednak zdecydował się na doczytywanie generatora, to tym samym programem możesz wygenerować plik z nagłówkiem dosowym, który później wczytasz w swoim programie instrukcją TBXL: BLOAD"D:nazwa".

      Ad.2
      Można. Tyle że obrazek taki zamiast 7680 bajtów zajmie kilka razy więcej. Program, który przekształci dowolne dane na liczby w liniach data sam możesz sobie napisać. To nic trudnego.
      • 38:
         
        CommentAuthorkris3d
      • CommentTime14 Oct 2015 03:10
       
      @larek, program do fonów genialny! czyta format FNT z innych programów, zapisuje jako podprogram do Basica, czyli to co dokładanie potrzebowałem:) Monster_shit się rozwija, głównie graficznie:)
      • 39: CommentAuthortbxx
      • CommentTime16 Oct 2015 13:10
       
      Może to nie pytanie na "początki" w TBXL, ale czy da się w TBXL zrobić jakieś Piki i Poki żeby GR. 0 podkolorować za pomocą GR.10? Czy to już niestety wyższa szkoła jazdy :/
      • 40:
         
        CommentAuthorpirx
      • CommentTime16 Oct 2015 13:10
       
      wyższa szkoła jazdy.
      możesz podkolorować sprajtami - look (PM Efekt): ->link<-
      • 41:
         
        CommentAuthorIron
      • CommentTime16 Oct 2015 13:10
       
      Ja tam duszkami podkolorowywalem ;)
      • 42: CommentAuthortbxx
      • CommentTime16 Oct 2015 14:10
       
      Wiem że można duszkami ;) Tam gdzie potrzebuję lepiej się sprawdzi Gr.0+10
      • 43:
         
        CommentAuthorpirx
      • CommentTime17 Oct 2015 23:10
       
      nie do końca wyobrażam sobie, co chciałbyś uzyskać, ale w zasadzie widzę tylko wyświetlanie na przemian ekranu gr. 0 i gr.10. możesz to zrobić bezczasowo zapętlając dwie DL - pierwsza skacze do drugiej, druga do pierwszej.
      • 44:
         
        CommentAuthormiker
      • CommentTime17 Oct 2015 23:10
       
      Plus jeszcze trzeba włączać/wyłączać GTIA, bo gr.10 "tak sobie" nie wyświetlisz. :)
      • 45: CommentAuthortbxx
      • CommentTime18 Oct 2015 11:10
       
      Wychodzi na to że coś gdzieś widziałem, ale z pamięcią słabo:/
      1. Można zrobić GRAPHICS 0.10 czyli odpalić tryb GTIA w GR.0 - będzie 160x192? z 9 kolorami - akurat w do tego co chciałem za mało :/
      2. Można tak jak Gonzo kiedyś zmiksować GR.8 + GTIA - chyba TGI to nazwał - rozdzielczość ok, kolory ok, tylko miga, więc odpada :/
      3. Jak dobrze zrozumiałem można zacząć rysowanie linii w GR.0 później przełączyć na GTIA? (tylko czy to będzie GR.9/10/11 czy GR.0 z GTIA?) i np. pod koniec linii wrócić do GR.0

      Z tego co widzę przydałoby mi się:

      1. pierwsze 8 linii w GR.0
      2. po tym do samego dołu: 8 kolumn GR.0, 16 kolumn GR.0.10, i do końca linii GR.0 - da się?
      • 46: CommentAuthormono
      • CommentTime18 Oct 2015 12:10 zmieniony
       
      Nie da się.
      Jeśli w linii przełączysz hires na GTIA po czym z powrotem na hires, to dostaniesz tryb 4-kolorowy, ale kolory będą brane z innych rejestrów. Do hiresu wróić się oiw nie da :/ A szkoda.

      A ile kolorów w tych 16 kolumnach chcesz wyświetlić? Może dałoby się to robić zwykłymi sprajtami bez użycia GTIA i sztuczek w asm?
      • 47: CommentAuthorbob_er
      • CommentTime18 Oct 2015 15:10
       
      Przy czym warto pamiętać, że takie mieszanie trybów graficznych w obrębie jednej linii poważnie zabiera czas procesora. Niby w Basicu to nie boli, ale jak spowolnisz proca o 50% (zmieniając kolumnę 24) to jednak poczujesz to.
      • 48: CommentAuthortbxx
      • CommentTime19 Oct 2015 12:10
       
      Myślałem o podkolorowaniu takiej mojej starej gry:


      tak żeby punkty po "zapaleniu" były już w kolorze - ale widzę że nic z tego nie będzie ;) (chyba że jakiś filtr deluxe się zrobi ;) )
      • 49:
         
        CommentAuthorkris3d
      • CommentTime19 Oct 2015 13:10
       
      @tbxx, a muzyczkę jak odpalasz? To leci w trakcie gry czy "fejk" z offu do filmiku video?;) Pytam serio, bo chcę wrzucić muzyczkę do swojego "monserSHIT"-a:)
      • 50:
         
        CommentAuthorpirx
      • CommentTime19 Oct 2015 13:10
       
      ta gra wygląda tak, jakby się spokojnie dała przenieść do tekstowego trybu "gr.15". A tam jest trochę możliwości, np. piąty kolor w miejscu, gdzie znaki są w inwersie.