451

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

Otwórz go w prostym programie graficznym typu Paint, zaznacz prostokątny obszar wokół scalaka, a następnie wciśnij klawisz Delete. Gotowe!

452

(11 odpowiedzi, napisanych Miejsca w sieci)

Fajne! Szkoda, że nie zdążyłem sprawdzić na AVRze. Na 8miu bitach to by było coś!

453

(12 odpowiedzi, napisanych Programowanie - 8 bit)

Rozdzielczość waha się od 4 do 8 bitów, zależnie od techniki odtwarzania. W najprymitywniejszej LDA próbka, STA $d201 potrzebujesz jednobajtowych wartości w postaci xxx1yyyy (binarnie), gdzie xxx są dowolne a yyyy to 4-bitowa wartość próbki.

Większość narzędzi pecetowych potrafi zrobić próbki 8-bitowe bez znaku, które są dobrym punktem wyjścia do dalszej obróbki. Nie zapomnij odfiltrować przed resamplingiem!
Plik zapisujesz jako wave PCM, lub, jeśli masz możliwość, raw PCM. W tym pierwszym przypadku po prostu olewasz 44-bajtowy nagłówek. W tym drugim masz już dane jak należy, można wypuszczać bezpośrednio na Covox, lub przerobić do postaci jak w poprzednim akapicie przy pomocy własnoręcznie napisanego jednolinijkowca (obcinając najmniej znaczące bity).

Jeśli gra jest raczej statyczna, to sprawa jest prosta:
pętla: STA WSYNC
LDA a:adr ; lub a:adr,x lub (adr),y - zależy od różnych rzeczy.
STA $d201
... następny adres
JMP pętla

W przypadku kiedy na ekranie coś się jednak dzieje, zwykle niełatwo to pogodzić z docyklowaniem odtwarzania sampla, dlatego wygodniej będzie pewnie puścić sample na przerwaniu Pokeya.
W tym przypadku masz bezcenną możliwość dobrania takiej częstotliwości odtwarzania, która pogodzi jakość dźwięku i ilość zajętej pamięci z płynnością animacji. Przerazisz się, bo nie jest to łatwe - sporo czasu pożre ci obsługa przerwania. Jak już znajdziesz, wracasz do pecetowego edytora dźwięku, resamplujesz z oryginału do tejże częstotliwości i opcjonalnie robisz dalszą konwersję.

Odtwarzanie na Pokeyu można sobie utrudnić na różne sposoby, na przykład:
- Jeśli masz mało pamięci, możesz pakować sample. Dwie próbki radośnie mieszczą się w bajcie i wystarczy tu zamaskować, tam przesunąć.
- Możesz spróbować odtwarzać sample 5-bitowe, 6-bitowe - wymaga to zapisu do kilku kanałów Pokeya z możliwie najmniejszym opóźnieniem, czyli najlepiej STA, STX, STY bezpośrednio po sobie. Poprawa jakości dźwięku jest jednakowoż dyskusyjna.
- Zamiast sterowania samym poziomem na wyjściu (xxx1yyyy w AUDC) możesz puścić ultradźwiękowy prostokąt o różnej głośności (AUDF = 0, AUDCTL = 0, AUDC = 1x10yyyy). Podobno od tego wyjście się nieco linearyzuje, ale sam nie mierzyłem.

Jeśli chcesz mieć sample stereo, to można ułożyć dane na wiele sposobów.
- Twój pecetowy edytor dźwięku najprawdopodobniej zapisze dźwięk stereo przeplatając na przemian próbkę 0 lewą, próbkę 0 prawą, próbkę 1 lewą itd., czasami to jest wygodne.
- Możesz chcieć trzymać kanał lewy i prawy w osobnych tablicach.
- Możesz chcieć przeplatać je np. co stronę - takie rozwiązanie okazało się optymalne przy odtwarzaniu danych doczytywanych na bieżąco z twardego dysku.

454

(320 odpowiedzi, napisanych Zloty)

Co do terminu SV 2012 - coraz więcej atarowców z Polski jest na stałe za granicą (w tym ja, oczywiście, inaczej przecież miałbym to gdzieś ;>). Termin bliżej Bożego Narodzenia (ot choćby tydzień później, 14-16.12) mógłby ułatwić nam zaliczenie party i spotkania z rodziną jednym urlopem. :)

455

(21 odpowiedzi, napisanych Bałagan)

gepard napisał/a:

A tak bynajmniej jest 060 + AGA

Chyba "przynajmniej". Uwzięliście się, czy co?

456

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

Ta, ochrona pamięci i bankowanie strony zerowej. ;)

457

(57 odpowiedzi, napisanych Zloty)

Dzięki. :)

458

(57 odpowiedzi, napisanych Zloty)

Panie i panowie, czy ktoś z was ma możliwość i wyraża wolę użyczenia mi kawałka podłogi w nocy z poniedziałku na wtorek?

459

(57 odpowiedzi, napisanych Zloty)

No jest. Chyba się nie wyspałem.

460

(57 odpowiedzi, napisanych Zloty)

No tak, tego nie było na stronie. W takim razie damy radę. Dozo! :)

461

(57 odpowiedzi, napisanych Zloty)

Termin ok, natomiast miejscówkę wybrałbym raczej tańszą.

462

(57 odpowiedzi, napisanych Zloty)

No, w poniedziałek (wczesnokwietniowy) to nawet bym przyszedł.

463

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

Nie ma okresów kiedy ANTIC nie czyta przez 1000 cykli. Linia ma 114 cykli i w każdej linii (nawet pustej, nawet poza wyświetlanym obrazem) ANTIC czyta pamięć co najmniej 9 razy (co się równa zabraniu 9 cykli).

464

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Komodorowcy nie mają na tym punkcie kompleksów, dlatego warto zapoznać się na przykład z http://codebase64.org/, gdzie korzyść z "nielegali" bywa pokazywana na krótkich i praktycznych fragmentach kodu.

465

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

Słyszałem, że widziano tam General Electric 645, ale tam działa chyba tylko Multics.

466

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Skoro można używać rozkazów 816 i to NIE działa na większości atarek, to co za problem, jeśli na kilku nie zadziała kod wykorzystujący skutki uboczne uproszczenia dekodera rozkazów w 02(C)?

467

(16 odpowiedzi, napisanych Miejsca w sieci)

"Wywiad z członkiem". Z yerzmyeyem jesteśmy na "Ty". ;D

468

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

Zenon/Dial napisał/a:

Kto tu pisze że rejestry nie powinny mieć opcji ... ODCZYT?

Chyba... nikt? :)
Odczyt z rejestru nie powinien jedynie mieć ubocznych skutków, jak np. przejście do następnego słowa, które ma miejsce w kontrolerze IDE. A i to zależy od tego, gdzie ten rejestr ma się znajdować, i dotyczy tylko niektórych sytuacji jak np. tryby indeksowane z przekroczeniem granicy strony. O ile dobrze pamiętam jest to również opisane u Kruszyńskiego i Kulpy.

469

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

Niczego nie przekłamuję (ba, nawet nie napisałem, że Zenon to napisał - wszak umieszczenie tam dowolnego innego imienia nie stanowiłoby żadnego problemu).
Użyte symbole są ważne i, jak widać, F/2 (które prawdopodobnie wzięło się z próby odczytania "FI2" na źle skserowanym i/lub przerysowywanym ręcznie schemacie) potrafiło skutecznie zmylić co poniektórych. Nie chce być inaczej - inżynierom w kontekście sygnału zegarowego "F" kojarzy się z częstotliwością, a "/2" z dzieleniem przez 2.
Opis też nie jest do końca precyzyjny, tzn. sygnał ten nie jest "podstawowy", w tym sensie, że jest wytwarzany z innego. Ale tutaj to już się tylko czepiam.

Ale istotnie, Fi0 nigdzie indziej nie jest używany i wszystko (łącznie z CPU) jest taktowane przez Fi2. To JEST dokładnie ten sam sygnał co taktowanie CPU (inna sprawa, że pasożytnicze R i C mogą go tu i ówdzie trochę poprzesuwać i zniekształcać).

470

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

Tak się tworzą bajki. Kolesie przepisują bez zrozumienia a potem inni kolesie, nie do końca zorientowani, wyciągają z tego bezsensowne wnioski.
W tym przypadku to dość przykre, że podpisany nad tym artykułem jest Zenon, który zwykł walczyć z demonem ignorancji.

Podstawowym sygnałem zegarowym jest Phi0, Fi0, Φ0, czy jak tam to sobie zapiszecie. 6502 generuje z tego Fi1 i Fi2, których najważniejszą cechą jest to, że w dowolnej chwili t co najwyżej jeden z nich jest w stanie wysokim. Różnią się fazą i wypełnieniem, ale częstotliwość jest ta sama.
http://impulzus.sch.bme.hu/6502/6502/im … Image1.gif

471

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

ad 4. LDA abs trwa cztery cykle, bo dokładnie tyle potrzebuje dostępów do pamięci: 1 bajt na kod rozkazu, 2 bajty na adres, 1 bajt na daną spod tego adresu. W szczególnych przypadkach rozkazy wykonują się dłużej (niżby to wynikało z potrzebnych dostępów do pamięci), ale procesor i tak coś czyta lub zapisuje. W tym pierwszym przypadku odczytane dane olewa, w tym drugim (rozkazy read-modify-write) najpierw zapisuje wartość oryginalną, a potem dopiero zmodyfikowaną. W szczególności np. INC $8000 w trzech cyklach z rzędu robi kolejno odczyt i dwa zapisy pod adres $8000.

W 6502C różnica jest taka, że HALT odcina procesor od magistrali, ale wtedy (w Atari) korzysta z niej ANTIC, a więc i tak zawsze coś się dzieje.

Wiedząc, że wiele opcode'ów ma zawsze tę samą sekwencję (wyjątki to np. odgałęzienia warunkowe i tryby indeksowane), można skorzystać z sygnału SYNC (oraz HALT) i przewidywać co w danym momencie robi procesor, ale taka zabawa chyba przewyższa stopniem komplikacji układ, który chcesz zbudować. W każdym razie może to mieć praktyczne zastosowanie: http://homepage.mac.com/jorgechamorro/a … index.html

472

(3 odpowiedzi, napisanych Bałagan)

O Yeti też mówiono, że był widziany. :)

473

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

"Przełóż zworkę"!

474

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

WAV,CAR:X.COM,D:>UTIL>D2D.EXE /c $d700 /5 %

475

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

Tak, może. U mnie działa.