Jestem zainteresowany XF-ką. Poszedł e-mail w tej sprawie.

127

(6,211 odpowiedzi, napisanych Kolekcjonowanie)

Czy ktoś chce zbudować sobie 1400XL?

http://www.ebay.com/itm/Atari-1450-bare … 3ce39073b4

128

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

Tak, a ja odniosłem się do tego "dealowania na boku". :)

129

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

Nikogo nie chcę faworyzować :). Informuję jedynie.

Nie wiem jeszcze w jaki sposób pójdzie na sprzedaż i czy w ogóle. Się obaczy.

130

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

Dźwięki dwutonowe dodane.  Wystarczyło 7 linii kodu.

@Pin
Prototypu nie oddam :), bo dla mnie jest w porządku i nie planuję dla siebie robić już większych zmian konstrukcyjnych. Możliwe natomiast, że wkrótce będę miał na sprzedaż jeden egzemplarz. Chcę, żeby choć kawałek kosztu po prostu się zwrócił.

131

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

Temat już obczajony. Ficzer się doda.

132

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

Nie planuję już zmiany adresów rejestrów.

Jak brzmi implementacja AY/YM można już usłyszeć tutaj:
http://youtu.be/gffYMZo85Uw

Dzięki Mono. Jesteś wielki.
Jeżeli ktoś jest zainteresowany, to player dostępny jest już na stronie Mono - http://mono.atari.pl/

133

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

Mono, w implementacji są 32 poziomy, więc to Yamaha.

134

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

Candle napisał/a:

sproboj usrednic n probek i dopiero to wysylac na dac'a
n to jest przynajmniej tyle, ile wynika z roznicy w czestotliwosci 1.7mhz i cokolwiek tam masz na lrclk/2

Zobaczę czy starczy mi na to zasobów. Obecnie może być już z tym problem, ale spróbuję.

Epi, pod wskazanym linkiem są tylko źródła. Chętnie bym to sprawdził, ale kompilować raczej tego nie będę. Czy ktoś może zaoferować pomoc?

Mały update z placu boju:
- quad pokey został usunięty i zostało tylko stereo,
- obsługa STIMER została dodana i modulacja PWM działa już prawidłowo,
- dodana obsługa klawiatury PS/2. Transmisja jest dwukierunkowa, więc istnieje możliwość zapalania ledów na klawiaturze.
- dodano implementację AY-3-8910 czy tam YM2149. Jest możliwość adresowania jego rejestrów bezpośrednio lub poprzez indeksowanie. Można wybrać częstotliwość taktowania 1.77MHz lub około 2MHz,
- dodano identyfikator rozszerzenia.

Mapa pamięci wygląda teraz następująco (pomijam pokeye):
- $d2c0-$d2df - SID (tylko zapis, odczyt daje wszędzie $33).
- $d2e0-$d2ef - AY (zapis i odczyt)
- $d2f0 - AY - read data/register select
- $d2f1 - AY - write data
- $d2fa-$d2fd - w ascii "Evie"
- $d2fe - numer wersji w BCD. "10" to 1.0
- $d2ff - rejestr konfiguracyjny:
bit 7 - 1 włącza rejestry SIDa na stronę $d5,
bit 6 - 1 włącza led "caps lock" na klawiaturze ps/2
bit 5 - 1 włącza led "num lock" na klawiaturze ps/2
bit 4 - 1 włącza led "scroll lock" na klawiaturze ps/2
bit 3 - AY clock select, 0 - 1.77MHz, 1 - 2MHz,
bit 2 - AY /sel, oryginalny AY ma nogę, którą można sprawić, że podzielimy master clock na 2. Tu jest podobnie, bo wpisanie 1 zrobi to samo,
bit 1-0 - wybór filtra dla SIDa.

Przez brak pełnego dekodowania adresów powyższe rejestry są też w $d280-$d2bf.

Implementację AY/YM sprawdziłem tylko na piechotę wpisując z palucha coś do jego rejestrów. Przydałoby się coś poważniejszego,  więc czy ktoś byłby chętny coś  napisać?

135

(279 odpowiedzi, napisanych Fabryka - 8bit)

Z tego co ja rozumiem, to w połączeniu z komendą X wyłącza spartę i przełącza odczyt z zakresu pamięci $008000-$00bfff na fast ram. O szczegółach najlepiej jakby wypowiedział się autor sterownika czyli Draco.

Mały update:
niemal wszystkie rzeczy na karcie wróciły już na swoje miejsce. SDRAM również, więc do dyspozycji jest już niemal 16MB liniowej pamięci + dodatkowe 16MB na np. ramdysk.

136

(279 odpowiedzi, napisanych Fabryka - 8bit)

Pin napisał/a:

Pasiu - jak się udało odpalić SDX i dopał tak, by SI widziało 20MHZ?...

Sprawdź sobie pocztę i wrzuć to co wysłałem do config.sys.

137

(279 odpowiedzi, napisanych Fabryka - 8bit)

@Mono
Rapidus ma rom nowego urządzenia. Pewnie po tym najlepiej byłoby go wykryć. Dać tam jakąś uniwersalną sygnaturkę i tyle.

@Pin
Sprawdzę z tymi HIPami. Nie wiem, czy nie mają one jakiegoś powiązania z wsync. Jeśli tak, to u Ciebie to nie będzie działać, bo wsync nie był zaimplementowany na tej starej wersji karty.

A tak jak już jesteśmy przy wersjach karty. To uruchamiam w miarę możliwości czasowych rewizję najnowszą.
Efekt jest do obejrzenia tu:
http://youtu.be/rf-QlCxiRIw

Do przywrócenia jest jeszcze parę rzeczy np. kontroler sdram, który muszę teraz uruchomić na 160MHz.

138

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

Dzięki, wieczorkiem to sprawdzę.

/Edit/

Wreszcie znalazłem trochę czasu.
http://youtu.be/M_M6DieYbGQ

Pojawiły się jakieś dziwne wysokie tony. Ciekawa sprawa.

Candle - powiadasz, że to przez przetwornik?

139

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

Z czego? Przeca napisałem, że ten sap nie chodzi pod sapemu, wiec nie sprawdzę. No chyba że prześlesz tego sap-a w bardziej ludzkim formacie.

Odnośnie drugiej rzeczy to już dostałeś odpowiedź, że nie działa więc po co ciągniesz temat. Muszę dodać obsługę stimer-a i tyle.

140

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

Pewnie, czemu nie. Czy ktoś zaznajomiony oszczędziłby mi szukania i powie jak to jest na innych platformach? Chyba ZX i ST jako pierwsze tutaj wchodzą w grę.

Wracając jeszcze do tego niechodzącego PWM-a. Jeżeli player wykorzystuje STIMER (a mniemam po źródłach, że raczej tak), to nie ma prawa to działać. Trzeba będzie jakoś to dodać.

/Edit/

Candle, ten sap nie chce ładować się pod Sapemu v0.2 Epiego. Masz to może w bardziej zjadliwym formacie?

141

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

Pajero nie mam takiego planu. RAMu brak - to jest jedna z różnic w stosunku do sound board-a.
Jeśli chodzi o PS/2, to planowane jest coś w rodzaju AKI. HW wspiera wszytko co potrzebne, więc trzeba tylko napisać parę rzeczy.

xxl napisał/a:

tu jest troche info.

http://en.wikipedia.org/wiki/YM2149

Kod w vhdl-u znalazłem. Pominien wejść zamiast 2 pokeyów.
Pytanie jak można zorganizować dostęp do jego rejestrów, bo zdaje się w YM jest trochę inaczej jak zwykle. Osobny rejestr dla adresu i osobny dla danych to chyba właściwa droga. Druga rzecz to częstotliwość taktowania YM-a. Jaka jest ta właściwa?
W sumie to i tak nie ma softu, który mógłby takiego YM-a sprawdzić, więc na razie nic z tym nie robię. No chyba że się coś zmieni :).

mono napisał/a:

Świetnie! Czy te POKEYe implementują feature z transmisją dwutonową z SKCTL?

Teraz nie. Czy może to być do czegoś potrzebne?

mono napisał/a:

Czy implementują przerwania od liczników i czy da się je wykrywać metodą #2 Draka? Czy SID-a można wykryć metodą jak SlightSID-a? a może jest sposób na wykrycie Evie (wtedy wiemy co mamy na pokładzie)?

Przerwania nie są obsługiwane. Drugiego pokeya daje się wykryć metodą Draco, ale gdy mam załączoną kartę turbo, to nie zawsze to się udaje i często pokazuje, że brak stereo.
Co do wykrywania SID-a, to odczytywana wartość z każdego jego rejestru daje $33. Tak jak podaje atariki.
Nie dodałem jeszcze czegoś co może powiedzieć, że jest evie na pokładzie, ale mam to w planie. 

YERZMYEY/HOOY-PROGRAM napisał/a:

Ale czy jest w ogóle możliwe, by te filtry z implementacji SIDowej uruchomić na jednym z pokeyów? Oraz na covoxie? To by już była cecha nie istniejąca wcześniej - czyli wartość dodana. smile

Myślałem o tym, ale tego nie zrobiłem. Z dwóch powodów. Jedną z gorszych rzeczy, które trzeba robić to miksować kanały a mając tyle źródeł dźwięku mam problemy z uzyskaniem odpowiedniej głośności bez konieczności przełączania się na konkretne źródło (pokey czy sid). Dodanie opcji filtru dla pokeya czy covoxa zwiększy ilość miksowanych kanałów, co może negatywnie odbić się na poziomie dźwięku. Pewnie można lepiej to robić niż ja to zrobiłem. Jak ktoś wie, to niech powie.
Drugi powód to brak softu, który miałby to obsługiwać. Jeżeli jednak ktoś ma chęć tym się zając niech podniesie rękę.


Candle napisał/a:

pasiu, mozesz zrobic film z grania tego:
http://asma.atari.org/asmadb/search.php?play=2319
oraz tego, co zostalo udostepnione w tym watku:
http://atariage.com/forums/topic/189077 … try2390478

Czy ktoś podpowie jak otworzyć sap-a na normalnej Atarce? Bezeceński format normalnie, ale chętnie bym to sprawdził.

Jeśli chodzi o te dźwięki z drugiego linku, to nie, PWM nie działa dobrze. Takiej odpowiedzi się spodziewałeś, czyż nie? :)

142

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

@Pin
Nic z tym playerem nie zmieniałem. Może jest to kwestia ustawień sparty.

@Seban
Odsłuchy z Evie porównywałem z playerami na PC. Brzmiało podobnie.
Trzeba pamiętać, że SID SIDowi nierówny i tak naprawdę każdy brzmi trochę inaczej. Tu to fajnie wygląda:
https://bel.fi/alankila/c64-sw/fc-curves/curves.png
Jak widać charakterystyki filtrów każdego ze zmierzonych 6581 są różne. Ja wybrałem coś ze środka.

@xxl, lemiel
Jeden pokey zabiera jakieś 6-7% zasobów w fpga. SID z filtrem to jakieś 70%.
Nie znam budowy AY i YM a tym bardziej SAA, więc nawet nie oszacuję ile implementacja ich może zajmować.

143

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

Pokeye od stereo są tam gdzie normalnie. Oryginalny pokey też siedzi gdzie powinien. Kolejne pokeye 3 i 4 są w adresach $d220-$d22f i $d230-$d23f.

Covox siedzi na stronie $d7. Adresy 0-3 to każdy osobny kanał. Natomiast zapis pod adres z zakresu $d704-$d707 powoduje zapis do dwóch kanłów równocześnie, by np. WAV'y mono grały na obu głośnikach.

Z SIDem jest kłopot. Soft wymaga, by był na stronie $d5, ale jako że nie jest to rozszerzenie odłączalne jak slighsid, to SIDa trzeba z tej strony móc wyłączyć. Koncepcja jest zatem taka, by rejestrem $d2ff sterować czy SID ma być widoczny na stronie $d5.
Ponadto SIDa wrzuciłem też na stronę $d2 za pokeyami.

144

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

Jeśli chodzi o SVF, to informacji na necie jest mnóstwo. Ja bazowałem na tym, bo to nie jest tajemnica:
http://www.fpga.synth.net/pmwiki/pmwiki … ASynth.SVF

Sam filtr operuje na 18-bitowych zmiennych signed a chodzi na dwukrotnej częstotliwości pracy SIDa. Dlaczego? Bo tak było mi wygodniej :).

@As
Tak jak napisałem, jest to tylko chwila przerwy od Rapidusa i do niego wracam za chwilę. Nie jest to jednak o nim wątek.

145

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

Witam wszystkich.

Chcę tu przedstawić wynik pracy kilku ostatnich tygodni. Chwila przerwy od karty turbo spowodowana brakiem wszystkich podzespołów do budowy kolejnej wersji Rapidusa, przerodziła się w coś, co otrzymało nazwę Evie. A co to dokładnie jest?

Evie ma za zadanie zwiększyć możliwości muzyczne Atarki, ale przy tym nigdy nie ma być konkurencją dla Sound Board'a. I tu prośba - proszę mi nie zarzucać, że chcę uwalić projekt SB, bo możliwości tych dwóch rozszerzeń z tego co wiem są różne.

Ale do rzeczy.

Rozszerzenie bazuje na układzie fpga Xilinx Spartan 3A, do którego wciśnięto:
1) 4 pokeye (przycięte tylko do generowania dźwięku),
2) covox (4 kanały 8-bit),
3) SID z implementacją cyfrowego filtru o różnych charakterystykach (np. 6581 i 8580).
4) i na dokładkę emulację dźwięku GTIA czyli 1-bit :).

Tyle jest w tej chwili i nic więcej do fpga nie wejdzie bez usunięcia czegoś z powyższej listy. Dlaczego w ogóle coś jeszcze dodawać? Sama płytka daje więcej możliwości, bo od strony sprzętowej umożliwia m.in. podpięcie klawiatury PS/2.
Dla hardcore'owców możliwe jest też niemal całkowite zastąpienie układu Pokey płytką Evie, bo sygnały od transmisji szeregowej, przerwania itp. też z poziomu fpga można kontrolować. Nie ma tylko wsparcia potencjometrów, bo nie ma przetwornika analogo-cyfrowego.

Układ FPGA programuje się sam po włączeniu zasilania dzięki podłączonej do niego pamięci flash. Trwa to ułamek sekundy.

Jak Evie brzmi? Covox gra ładnie, bo to tylko rejestry dla przetwornika cyfra-analog. Mimo że 8-bit to dla wysokiej częstotliwości próbkowania jest OK. Z Rapidusem można grać WAV'y osiągając 48kHz.
Może warto też nadmienić, że sam układ przetwornika na Evie pracuje z częstotliwością próbkowania 192kHz i ma 24 bity, chociaż z tych 24 bitów wykorzystywanych jest maksymalnie 20.

Co do Pokeya i SIDa to rozczaruję tu tych, którzy myślą, że grają tak jak oryginalne układy dźwiękowe. Niestety są to tylko implementacje, w których zostały opisane zachowania prawdziwych scalaków. Jednak na moje ucho obie implementacje grają dobrze, żeby nie powiedzieć bardzo dobrze, chociaż jeśli tylko rozszerzenie SlightSID będzie w końcu dostępne, to chętnie je kupię, bo nic nie zastąpi oryginalnego układu by commodore.

Kod Pokeya powstał już wcześniej po tym jak przypadkowo upaliłem wyjście dźwięku z oryginalnego układu. Nie było tu przebacz, bo jeżeli tylko generatory dźwięku zliczały źle lub łączenie kanałów nie było prawidłowe, to od razu było to słychać. Kod powstał na podstawie dostępnej dokumentacji i pomocy Candle'a. Dzięki!

Implementacja SIDa to już trochę większe wyzwanie, bo sam układ zawdzięcza swe możliwości nie bez powodu. Sam kod generatorów dźwięku jest dostępny w necie, ale niestety jego autor nie jest znany. Po komentarzach wynika, że kod powstał na bazie informacji otrzymanych od samego projektanta SIDa. Kod nie zawierał jednak filtru, czyli kwintesencji tego układu. Problem z filterm jest taki, że w oryginalnym układzie SID filtry zostały zrobione analogowo i nijak czegoś takiego nie da się wsadzić do fpga. Da się jednak wsadzić filtr cyfrowy, bo pokazał to na jednym filmiku z youtube pewien jegomość.
To dało inspirację i potwierdziło, że jest to możliwe. I tak powstał filtr na bazie kodu Scotta Gravenhorsta i jego State Variable Filter. Z takiego filtra można uzyskać wszystkie potrzebne wyjścia: dolno-przepustowe, górno-przepustowe, środkowo-przepustowe i środkowo-zaporowe. Co więcej, to można w łatwy sposób kontrolować częstotliwość filtru oraz współczynnik tłumienia układu rezonansowego. Więcej już nic nie trzeba było tylko skleić to w całość i dodać charakterystyki filtrów. Te ostatnie już ktoś zrobił i jest to dostępne w necie.

Na poniższym filmiku można sobie zobaczyć jak to gra dla różnych charakterystyk filtrów. FPGA SID taktowany jest 992kHz. Wiem, że w C64 jest inaczej, ale różnica dla mnie jest nierozpoznawalna. Ponadto jest to najbliższa docelowej wartość, którą mogłem otrzymać z kwarcu 24.576Mhz taktującego główny przetwornik.
http://youtu.be/MtY4GAZaZ1w

I teraz z tego miejsca chcę zaoferować jedną płytkę osobie, która napisze coś lepszego do odgrywania muzyczek SID. Może moje oczekiwania są duże, ale inaczej się nie da. Soft ma działać na 65c816, współpracować z dowolną pamięcią masową (tak, z pamięcią typu new device też) i SDX (podkatalogi). Ma też umieć wyjść z siebie. Programik może przy tym korzystać z rozszerzonej pamięci typu portb lub liniowej 816.

Została już tylko ostatnia rzecz, czyli przetwornik a'la GTIA. Generalnie ma on służyć na Evie tylko do generacji kliku klawiatury, bo raczej do słuchania muzyki się nie nadaje. Jak na moje ucho, to tworzenie muzyki 1-bit lepiej wychodzi oryginalnemu układowi na płycie Atari.

146

(279 odpowiedzi, napisanych Fabryka - 8bit)

Dostępnego jakotakiego opisu zmian nigdzie nie ma. Za wiele rzeczy nie zostało dodanych, a o większości z nich można przeczytać w tym wątku

Nie wiem dokładnie o jaki tryb 816 Tobie chodzi. Osobiście pracuje mi się z systemem Draco bardzo wygodnie. Stary soft chodzi ok, ale przy okazji daje dużo więcej możliwości.

Pod emulatorem chodzi oprogramowanie na gumiaka (48K). Laduje się snapshoty pamięci SNA lub Z80. Nie obsługuje atrybutów.

Napisałbym więcej ale na telefonie ciężko się klepie. Może Draco chciałby coś dodać.

147

(294 odpowiedzi, napisanych Bałagan)

xxl napisał/a:

ten na gorze to skladak z pozostalosci magazynowych :( plyta z jednego, obudowa z drugiega... pewnie uwalone GTIA :(.

Raczej nie jest to składak tylko wersja SECAM. One nie mają modulatora.

148

(279 odpowiedzi, napisanych Fabryka - 8bit)

Z innego wątku:

Pin napisał/a:

Rapidus z VBXE działa bez problemów (ponoć tylko ja mam te dwie rzeczy jednocześnie), mogą ponoć wystąpić jakieś problemy z U1MB

Zgodność z VBXE nie powinna być zaskoczeniem, bo to było przeze mnie sprawdzane. Nie jesteś więc jedynym, który ma "te dwie rzeczy jednocześnie" :).
Z U1MB owszem był problem, ale został rozwiązany na nowszej karcie. Twoja karta dalej U1MB nie wspiera i będzie się gryźć jak włączysz system operacyjny z karty i klepniesz resetem.

149

(279 odpowiedzi, napisanych Fabryka - 8bit)

Kopię rejestru $ff0080 masz w obszarze nowego urządzenia karty, a dokładniej w $d1a0. Musisz tylko sobie ten obszar najpierw włączyć poprzez rejestr $d1ff.

150

(279 odpowiedzi, napisanych Fabryka - 8bit)

256 bajtów powiadasz? Brzmi prosto, ale chyba tylko pozornie. Sprawdzę.

EDIT:
Draco sprawdź swoją skrzynkę. Coś udało się sklecić.

Pin, spróbuję spreparować rdzeń dla Ciebie, ale nie będę miał możliwości osobiście go zweryfikować.