701

(31 odpowiedzi, napisanych Programowanie - 8 bit)

tak, zamiast 30 wierszy mamy 60, czyli np. 60*40 = 2400 bajtow na pamięć obrazu, 2x gęściejszy inwers znaków (5-y kolor), CDrug plasma wykorzystuje ten tryb razem z adresowaniem ćwiartki znaku (nie połowy, tylko 1/4 znaku), mamy wtedy 11 kombinacji ćwiartki

ten tryb wspiera G2F (Special -> Mode -> DLI+), zapisz ASM i będziesz miał czarno na białym

702

(105 odpowiedzi, napisanych Fabryka - 8bit)

nie powinniście publicznie tego roztrząsać, bo po przeczytaniu tego ktoś może sobie wyobrazić już teraz 100% zajętości CPU 6502, dodatkowe banki pamięci na moduł (Avery/Altirra już odpadł w przedbiegach)

? pierwsze słyszę aby scroll i LMS coś zmieniały w środku linii

JAC udowodnił że można, bodaj w Silly Things (dwa obrazki rozdzielone ruchomą grubą obracającą się linią), czekał jakieś 20 lat aby zrealizować ten efekt, bo nie znał metody na wyeliminowanie 'bad lines'. Fox/Tqa udostępnił tą metodę od czasów Numena, wyjaśnił ją w gazetce "Atarynka" wydawanej przez Sikora, ten tryb to 9++.

tutaj link do 'przedruku' artykułu http://madteam.atari8.info/index.php?atarynka=tryb9pp

ten artykuł wyjaśnia jak z udziałem DLI wyeliminować 'bad lines', jak zmieniać zestawy znaków w linii?

program rastra, można go zbudować w G2F, np. napisać zmiany rejestru COLBAK, a potem w edytorze tekstowym podmienić COLBAK na CHBASE (taki myk na wprowadzenie rejestru którego nie ma na liście G2F)

podejrzewam jednak GORGH że można to zrealizować znacznie prościej, po prostu zbuduj obraz ze znaków, każdy wiersz będzie np. zawierał ten sam układ znaków, co wiersz zmieniasz zestaw znaków na nowy

ABCDEF GHIJKL .....
ABCDEF GHIJKL .....
ABCDEF GHIJKL .....
ABCDEF GHIJKL .....

teraz twoja procka rysująca będzie musiała rysować po znakach jak po bitmapie, znaki ABCDEF to twój pierwszy 'rastr', znaki GHIJKL drugi 'rastr' itd.

p.s.
DLI (Display List Interrupt) , DL (Display List), podobne w nazwie, ale inne w oprogramowaniu

704

(33 odpowiedzi, napisanych Software, Gry - 8bit)

a czy jest możliwe 100% zabezpieczenie się przed piractwem, cokolwiek nie wymyślisz druga strona wymyśli "szczepionkę" na Twoje zarazki ;)

705

(33 odpowiedzi, napisanych Software, Gry - 8bit)

plik z załącznika źle zostanie wyświetlony na Atari800Win, dobrze na Altirze, ale źle jeśli w Altirze ustawić VBXE

706

(452 odpowiedzi, napisanych Zloty)

ene due rabe, bocian pożarł żabę

707

(105 odpowiedzi, napisanych Fabryka - 8bit)

od strony programisty można będzie wykryć gdzie ta YAMari leży?

gry Avalonu korzystają z trybu znakowego (GRAPHICS 12), konkretniej to tryb 4+ (JGP) który wspiera Graph2Font (JGP - Jet Graphics Planner)

http://tajemnice.atari8.info/5_93/5_93_jgp.html

709

(318 odpowiedzi, napisanych Fabryka - 8bit)

zauważyłeś Pin że im starszy jesteś tym bardziej marudny, taki mniej elastyczny

710

(318 odpowiedzi, napisanych Fabryka - 8bit)

Pin znowu robisz za cenzora, odbierasz możliwość podejmowania decyzji autorom takich produkcji, więcej dobrego zrobisz jak podszkolisz  swoje znajomości ASM i zaczniesz poprawiać programy wg swojego uznania zamiast ciągle strofować innych

711

(318 odpowiedzi, napisanych Fabryka - 8bit)

Pin, poważnie przemyśl swoje podejście do tematu, żaden autor programu na XE/XL nie powinien poprawiać czegokolwiek z tytułu jakiegoś wynalazku który narzuca nowe ograniczenia, to autor tego wynalazku powinien poprawiać albo swój wynalazek albo programy które z nim nie działają

jak Rapidus schrzani docyklowanie linii i pojawią się krzaki to pewnie trzeba zmienić metody programownia, bo Pin-ek nie zrozumie że Rapidus nie jest tylko po to żeby stare dema mu szybciej śmigały, napisz se Pin nowe PURE specjalnie pod RAPIDUSA, będziesz miał różnicę taką co w oczy kole

niedługo dojdzie do tego że programy na XE/XL będą musiały być certyfikowane z nowymi wynalazkami, czy nie korzystają z nielegali, nie odwołują sie nielegalnie do OS-a, nie korzystają z innych protokołów transmisji niż systemowe, nie ma w nich rozkazów które przekroczą granice 64Kb

jeśli działa na zwykłym XE/XL to jest Święte, i wara od tego

712

(142 odpowiedzi, napisanych Programowanie - 8 bit)

efekt znany ze starych dem, Seban pewnie pamięta, XXL wykorzystał to przy pewnej konwersji gry

co się stanie kiedy jako pamięć obrazu ustawimy adres zestawu znaków + N, gdzie N = <0..height>

dl dta $70,$70
   :208 dta $4f,a(fnt+#)
   dta $41,a(dl)

otrzymamy kolumny znaków  <0..height/8>, przesunięte o linię względem każdej kolejnej kolumny, w każdej kolumnie te same znaki przesunięte o linię w górę, teraz wystarczy zmodyfikować te height/8 znaków aby otrzymać efekt ruchu na całym ekranie, w sumie maksymalnie modyfikujemy do 256 bajtów pamięci, spokojnie mieścimy się w ramce

w załączniku przykład wykorzystania takiej organizacji pamięci, w pętli tworzony jest wzór 8 bajtowy znaku, następnie przepisywany pod kolejny adres w zestawie znaków, i tak 30 razy

713

(142 odpowiedzi, napisanych Programowanie - 8 bit)

dopisz trochę więcej tekstu, jakieś znaczki bardziej rzucające się w oczy i odczekaj 256 bajtów, będzie różnica

714

(142 odpowiedzi, napisanych Programowanie - 8 bit)

osobiście też najczęściej stosowałem tą "złą" metodę obciążającą CPU, i nadal stosują ją inni, np. strona z przykładami efektów dla C64, etykieta MOVE0

http://codebase64.org/doku.php?id=base: … ng_message

715

(142 odpowiedzi, napisanych Programowanie - 8 bit)

zauważyłem w różnych przykładach że dla uzyskania przesuwu poziomego scrolla sugeruje się przestawienie bajtów w takim buforze, w stylu

 .rept 48
 lda bufor+1+#
 sta bufor+#
 .endr

jeśli takich wierszy byłoby więcej, tracimy tylko czas CPU, a przecież można oszczędzić czas kosztem pamięci (2 strony na linię/wiersz), stosując taki RING BUFFER (http://en.wikipedia.org/wiki/Circular_buffer)

zapis naszego znaku, lub kolumny znaków dokonujemy na końcu i początku bufora linii/wiersza, wartość rejestru X to młodszy bajt adresu wyświetlanej linii/wiersza, którą zwiększamy o 1 i o nic więcej nie musimy dbać, samo się zrobi

    sta bufor+SCREEN_WIDTH,x
    sta bufor+SCREEN_WIDTH-256,x

innymi słowy jest to okno szerokości SCREEN_WIDTH które przesuwamy w obszarze -$ff..$ff

jeśli zadbamy o przekręcanie się licznika na końcu strony i odpowiednio zapiszemy znak początkowy/końcowy to powinno udać się zejść do 1 strony pamięci na linię/wiersz

poniżej przykład niekończącego się scrolla dla bufora korzystającego z dwóch stron pamięci

       org $600

dlist  dta $70,$70,$70    ; 24 puste linie ($70 = 8 pustych linii)
       dta $42|$10        ; rozkaz ANTIC-a LMS ($42) dla trybu $02 + $10 dla HSCROL
adres  dta a(text)        ; adres scrolla
       dta $41,a(dlist)   ; zakończenie programu ANTIC-a

main   mwa #dlist 560     ; ustawiamy nowy adres programu ANTIC-a

loop
       lda tmp            ; płynny scroll, przepisanie wartości TMP do rejestru HSCROL
       sta hscrol         ; koniecznie przed poniższą pętlą opóźniającą

      lda:cmp:req 20

       dec tmp            ; zmniejszenie komórki TMP [3,2,1,0]
       bpl loop           ; pętla
       
       mva #3 tmp         ; odnowienie wartości komórki TMP

       inc adres          ; scroll zgrubny

       ldx adres

       lda scroll
ascrol    equ *-2

    sta text+48,x
    sta text+48-256,x

    inw ascrol

    cpw ascrol #end_scroll
    scc
    mwa #scroll ascrol

       jmp loop

tmp    dta 3              ; pomocnicza komórka pamięci TMP

scroll    dta d'to jest tekst przykladowy, scrolla z buforem ulegajacemu zapetleniu'
end_scroll

       org $a000
text   :48 dta d' '

       run main           ; adres uruchomienia tego przykładu

716

(1,754 odpowiedzi, napisanych Fabryka - 8bit)

program tak prosty że nie udało mi się go zmusić do działania, oby tak dalej

717

(19 odpowiedzi, napisanych Fabryka - 8bit)

może napisz taką prockę najpierw w języku innym niż PIC-owy a na wiele pytań znajdziesz odpowiedź, odbicie w osi X, Y to jedna procka zależnie od znaku dla DX, DY, mam nadzieję że PIC-owy język umożliwia coś takiego jak parametr procedury

inwers to dodawanie stałej wartości do każdej nowo powstałej wartości, konkretnie 128, no ale może być to wartość 0..255

napisz prościej, a potem komplikuj sobie życie

718

(167 odpowiedzi, napisanych Zloty)

nie sra się do własnego gniazda

719

(31 odpowiedzi, napisanych Fabryka - 8bit)

:) dziękować, a można oficjalną listę zmian jakie zaszły udostępnić?

720

(23 odpowiedzi, napisanych Fabryka - 8bit)

mono, a Ty nie miałeś wysłać do mnie jakiegoś maila ?

721

(318 odpowiedzi, napisanych Fabryka - 8bit)

przeciwnicy są na duchach sprzętowych, zmiana pozycji poziomej co ileś linii, może rejestry sprzętowe $d000..$d01f nie mogą być dopalane, albo coś co tłumaczy adresy pamięci spowalnia

kiedyś udawało się spowolnić emulator Atari na PC gdy były przełączane banki PORTB co kilka cykli

722

(452 odpowiedzi, napisanych Zloty)

to może jeszcze gości z FAMICON-u zaprosimy, bliżej im do Atari niż do Spectruma, MAW ma tam znajomości :)

723

(1 odpowiedzi, napisanych Programowanie - 8 bit)

odpal Atari Graphics Studio (AGS) http://g2f.atari8.info a otrzymasz więcej informacji na temat rozdzielczości każdego z nich, liczbie kolorów + mnóstwo przykładowych plików, HR2 = HCI (Vidol macza w tym palce)

p.s.
SHIMC to wyjątek,  interlace mrugający lewo/prawo + mapa kolorów (zmiana kolorów w rastrze), jest dołączona instrukcja, na stronie madteamu jest paczka http://madteam.atari8.info (użytki)

724

(452 odpowiedzi, napisanych Zloty)

Grey w ostatniej chwili ostudził rewolucyjny zapał ;) więcej takich informacji

725

(452 odpowiedzi, napisanych Zloty)

to pewnie przez te gry z Commodore tak im się przewraca w głowach, gry pełne agresji i bluźnierstw ;)