751

(105 odpowiedzi, napisanych Fabryka - 8bit)

Player do formatu .RAD mam już napisany (dla SDX), ale chciałem jeszcze zweryfikować czy mój gra dokładnie to, co playery z PC. Upublicznię kiedy tylko będzie to gotowe. Chyba, że Xxl zrobi wcześniej swój. Jeśli chcesz potestować to co jest, to podeślij maila :)

Edit: Idealnie byłoby mieć player do Adlib Trackera II, ale format .A2M jest nieco bardziej wymagający - może zrobię, ale to dalsza przyszłość.

752

(5 odpowiedzi, napisanych Programowanie - 8 bit)

Opisałem zasady używania OS-a przy wyłączonym ROM-ie w Atariki: http://atariki.krap.pl/index.php/Progra … nym_ROM-ie

753

(105 odpowiedzi, napisanych Fabryka - 8bit)

https://www.3eality.com/Public/Releases/RAD/ tu są źródła do Reality Adlib Trackera w wersji 1.0 pod DOS (asm 286) i 2.0 dla windows (c++). Zerknij na procedurę inicjalizacji chipa.

754

(105 odpowiedzi, napisanych Fabryka - 8bit)

O, przepraszam, zapomniałem o tym. No to nie przeprowadzać detekcji :)

755

(105 odpowiedzi, napisanych Fabryka - 8bit)

OPL3 (ymf 262) jest szybki więc delaye, o jakich pisze Toriman są wystarczające. OPL2 (np. ym 3812) jest wolny - tam po wybraniu adresu trzeba odczekać 3.3us, a po zapisie wartości 23us.
Zobacz do rejestrów $104 i $105 - tam konfiguruje się tryb OPL3 (układ domyślnie startuje w OPL2) który wpływa na liczbę algorytmów i ilość kanałów. Kiedy układ działa w trybie OPL2 wtedy masz na dwóch stronach dwa układy OPL2 (chyba, że masz 3812, to wtedy masz jeden OPL2 a górna strona jest nieaktywna).
Dobrze jest też przeprowadzić detekcję chipa - https://www.fit.vutbr.cz/~arnost/opl/op … #appendixB

Edit: literówka

756

(6 odpowiedzi, napisanych Programowanie - 8 bit)

623 czyli $26F to GPRIOR/GTIACTS - rejestr cień dla $D01B czyli PRIOR/GTIACTL: http://atariki.krap.pl/index.php/Rejestry_GTIA#GTIACTL
Konfiguruje on sposób wyświetlania grafiki przez GTIA, łączenie sprajtów w 5-go playera, nakładanie sprajtów oraz ich priorytety.
Nakładanie sprajtów realizowane jest parami:
- COLPM0 OR COLPM1
- COLPM2 OR COLPM3
przy czym nie ma znaczenia czy nakładany jest player z missilem, dwa missile czy dwa playery - nakładanie dotyczy pikseli o podanych kolorach.
W ten sposób w hiresie (GR.8/GR.0/ANTIC3) możesz dostać:
1. COLPF1
2. COLPF2
3. COLPF3 - kiedy włączysz piątego playera (wtedy kolor dla wszystkich missiles brany jest właśnie z COLPF3)
4. COLPM0
5. COLPM1
6. COLPM0 OR COLPM1
7. COLPM2
8. COLPM3
9. COLPM2 OR COLPM3
Możesz ewentualnie doliczyć jeszcze COLBAK czyli kolor ramki.
Możesz też eksperymentować z priorytetem 0 dla sprajtów i być może uzyskasz jeszcze dodatkowe kolory (nie eksperymentowałem z tym więc nic nie powiem).
To są kolory które możesz uzyskać w jednej linii skanningowej bez multiplikowania sprajtów ani zmiany kolorów  w rastrze.
Oczywiście na przerwaniu DLI możesz zmieniać wartości rejestrów kolorów, więc sumarycznie na ekranie możesz uzyskać wszystkie 128 kolorów (a z VBXE lub Sophia nawet 256).

Edit: Jeśli dodatkowo wziąć pod uwagę fakt, że tylko odcień dla zapalonego piksela jest brany z rejestru COLPF1, a kolor piksela jest kolorem tła (taki jaki wynika z nakładania sprajtów), to w linii masz 8*2=16 barw :)

757

(4 odpowiedzi, napisanych Fabryka - 8bit)

@Sukkor_benoth: To jest jakiś gotowy produkt? Możesz podać symbol?

Edit: Ciekawi mnie czy można by go podłączyć po prostu do wyjścia audio z Atari.

758

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Cześć.
Czy "ciche trzaski, szumy i zakłócenia" słyszalne są wyłącznie na lewym kanale? Weź pod uwagę, że POKEY który zajmuje się komunikacją jest używany w Atari do generowania dźwięku. Stąd każdą komunikację przez złącze szeregowe słychać. Inaczej jest np. w C= który ma dźwięk odseparowany od transmisji szeregowej.
Jeśli "ciche trzaski, szumy i zakłócenia" słychać tylko na lewym kanale, to wszystko jest w porządku.
Jeśli faktycznie coś jest źle, to pomocne byłoby jakieś nagranie.

759

(47 odpowiedzi, napisanych Sprzęt - 8bit)

Adresy zestawów w ROM to $E000 i $CC00.

760

(216 odpowiedzi, napisanych Fabryka - 8bit)

To cyklowanie dotyczy pracy CPU w liniach 8..247? Ekler ma cykle dostępu dla odświeżania pamięci DRAM wtedy?

761

(216 odpowiedzi, napisanych Fabryka - 8bit)

Ale tym razem wojna będzie się odbywać na polu SRATARI. Półgębkiem też nadmienię że Eclaire jest zrealizowane w FPGA, a taka implementacja przez niektórych ortodoksów postrzegana jest jako EMULATOR. No, tak czy inaczej takie porównanie mogłoby być ciekawe, a i oczami wyobraźni już widzę epitety jakimi obrzucają się adwersarze. Atarowanie XXI wieku najwyższy czas zacząć :)

Edit: Urwało mi posta.

762

(198 odpowiedzi, napisanych Zloty)

A kiedy jest ten Black Friday i Cyber Monday cokolwiek by to nie było?

Mała ciekawostka odnośnie DATA.
Atari BASIC wewnętrznie pobiera dane z linii DATA za pomocą tej samej procedury, która realizuje INPUT. Tak więc dane w liniach DATA rozdzielane przecinkami traktowane są jako osobne. Polecam sprawdzić działanie takiego kodu:

10 DIM A$(100)
20 RESTORE 
30 READ A$
40 ? A$
50 GOTO 30
100 DATA 1ST LINE
110 DATA 2ND LINE,AND THE REST
120 DATA 3RD LINE
130 DATA 
140 DATA 4TH LINE

Edit: Dane w liniach DATA zawsze trzymane są w postaci niestokenizowanej - niezależnie od tego czy tam są liczby czy tekst, więc jest to mało optymalna metoda trzymania liczb dłuższych niż 6 cyfr.

764

(26 odpowiedzi, napisanych Sprzęt - 8bit)

Świetna wiadomość. Ciekawe czy znajdzie się drugi egzemplarz i czy uda się uzyskać schemat układu?

765

(22 odpowiedzi, napisanych Programowanie - 8 bit)

To błąd BASIC-a - ASC nie sprawdza długości ciągu i bierze zawsze pierwszy znak ze zmiennej tekstowej (czyli starą wartość, albo nieustaloną jeśli zmienna nie była zainicjalizowana wcześniej w pamięci). Uzupełniłem Atariki: http://atariki.krap.pl/index.php/Atari_ … ri%20BASIC

766

(22 odpowiedzi, napisanych Programowanie - 8 bit)

Fox napisał/a:

Próbowałeś IF LEN(A$)=0 ?

Czy jest jakaś sytuacja kiedy A$="" nie zadziała, ale zadziała LEN(A$)=0 ?

767

(22 odpowiedzi, napisanych Programowanie - 8 bit)

10 DIM A$(1)
20 INPUT A$
30 K=0
40 IF A$="A" THEN K=1
50 IF A$="B" THEN K=2
60 IF A$="" THEN K=3
70 ? A$;K
80 GOTO 20

Działa stabilnie i przewidywalnie.

Czy DIM robisz w środku procedury przed INPUT? Za pomocą DIM nie można redeklarować zmiennej więc wyleci wtedy błąd - trzeba to zrobić tylko raz na początku programu. Jeśli go złapiesz TRAP-em, to nie zauważysz problemu.

768

(2 odpowiedzi, napisanych Programowanie - 8 bit)

Ale co w tym dziwnego? To jest po prostu rozwinięte dzielenie przez 9.

769

(19 odpowiedzi, napisanych Emulacja - 8bit)

Na pececie działa świetnie! Dzięki Fox.
Przydałby się wybór songu.

770

(52 odpowiedzi, napisanych Fabryka - 8bit)

@Pin: Bo to jest do czego innego. Zdaje się że to jest bardziej rozwinięta wersja CartExpandera, którego to miałeś przyjemność testować.

771

(6 odpowiedzi, napisanych Sprzęt - 8bit)

COPY z parametrem /A - zobacz do manuala.

772

(74 odpowiedzi, napisanych Fabryka - 8bit)

Hehe. Za każdą nową wersją dochodzę ciut dalej :)
A jak będziesz robił wersję GTIA to zrobiłbyś może jakąś opcję w menu żeby można było pograć na GTIA bez przełączania monitorów?

Edit: A, i kasuj status BREAK przed wejściem do gry.

773

(6,333 odpowiedzi, napisanych Kolekcjonowanie)

Ale skąd ta cena 6.4K ? Przecież jest napisane na pudełku 64K.

774

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

@toscanii: http://www.atari.org.pl/tape_preservation_project
Poza tym na głównej stronie portalu AtariArea znajduje się sekcja "Artykuły" i "FAQ". Możesz tam znaleźć różne rzeczy.

775

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

Ja oprogramowaniem mógłbym się zająć, ale nie w najbliższym czasie, bo mam kilka projektów do zrobienia.