Przejdź do treści forum
atari.area forum
Twoje polskie źródło informacji o Atari
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Aktywne tematy Tematy bez odpowiedzi
Aktualności ze świata Atari
FiSh 0.70 Bocianu wydał FiSh 0.70, shell ułatwiający przeszukiwanie zasobów serwerów TNFS.
Street Fighter II już na Atari 8-bit! Vega i jego zespół wydali finalną wersję kultowej bijatyki. Wymaga 4MB cartridge i 64KB RAM.
Elite Demo 6 na Atari 8-bit! Trwają prace nad konwersją kultowej gry Elite. Szóste demo wprowadza liczne poprawki błędów.
vbcc v5 dla 6502 Kompilator C vbcc doczekał się piątej wersji dystrybucji dla 6502. Zapewnia dużo szybszą arytmetykę FPU i nowe narzędzia.
HDDRIVER 12.75 Sterownik HDDRIVER, kluczowe narzędzie dla pamięci masowej Atari 16/32-bit, otrzymał aktualizację 12.75, która naprawia błąd w HDDRUTIL.
Opcje wyszukiwania (Strona 47 z 49)
Kwarc 8,333MHz jest niedostępny w handlu. Zastępowanie go niestabilnym z założenia generatorem RC to straszna lameriada, a synteza DDS to strzelanie z armaty do wróbla. Możliwości jest kilka:
1. kwarc 4,194304MHz i podwajanie częstotliwości - choćby pojedynczą bramką EXOR (pomijalnie mały błąd - 0,7%)
2. kwarc 50MHz i podział przez 6
3. kwarc 8MHz i zwolnienie silnika o 4% - do 288rpm (rzadko kiedy się udaje)
Powyższe sposoby obywają się bez zmiany oprogramowania.
4. kwarc 10MHz i przyspieszenie silnika do 360rpm - udaje się niemal w każdym napędzie 5,25", ale wymaga zmiany oprogramowania komunikacyjnego stacji.
Niezupełnie tak. Wydajność prądowa sygnału zegarowego nie ma znaczenia, ponieważ potrzebne opóźnienie nie jest generowane podczas ładowania kondensatora, ale podczas jego rozładowania, a wówczas układ jest niezależny od fi2, bo dioda odcina (po to własnie jest).
Problemem zasadza się w tym, jaki poziom napięcia w stanie wysokim osiąga fi2, bo właśnie od tego zależy potem czas rozładowania do poziomu przełączania bramki. Potrzebne opóźnienie jest rzędu 100ns.
Najlepiej, jakby Draco zepchnął mu swój własny. Ma wszystko zgodnie z zamówieniem i jeszcze więcej. ;-)
Panie Simius z tego co wiem to w stacji 1541 niema wd1770 tylko w 1571 wien bo przegladałem schematy dwoch wersji,
Sprawdziłem. Masz rację, WD 1770 siedzi w 1571. Przepraszam za pomyłkę.
Nie oglądałem specyfikacji producenta, ale w XF551, zamiast WD1772, sprawuje się zupełnie normalnie.
To już chyba lepiej Komodowych. Mniej szkoda. ;-) W 1541 siedział WD1770.
Możesz opisać, na czym polega problem?
Rzeczywiście problemem nie jest 816 a rozwiązanie układowe interfejsu. Konieczność jego 'dostrajania' (poprzez dobieranie pewnej pojemności w układzie) wydaje mi się trochę dziwna i jest to dość specyficzne rozwiązanie (można nawet powiedzieć, że oryginalne)... ale o tym już się kiedyś wypowiadałem.
Wyjaśniam przyczyny. Pierwotny projekt nie przewidywał żadnego "strojenia". W trakcie prób okazało się jednak, że występują problemy wynikające z wrażliwości FIFO w kontrolerze dysku na zakłócenia pojawiające się podczas operacji odczytu/zapisu bufora. Były one interpretowane przez FIFO jako dwa kolejne odczyty/zapisy, co powodowało utratę bajtu przy odczycie lub dwukrotny zapis tego samego bajtu na dwóch kolejnych adresach wewnątrz sektora. Ponieważ źródłem zakłóceń były linie adresowe i sterujące, konieczne okazało się ustabilizowanie tych sygnałów wokół dodatniej fazy fi2 przez zatrzaśnięcie stanów na tych liniach po ich ustalonym wystawieniu, a przed narastajacym zboczem fi2. Przesunięcie fazy układem RC było najprostsze w wykonaniu i okazało się skuteczne. Każde inne rozwiązanie (VCO z pętlą PLL, dodatkowy generator kwarcowy, uniwibrator, linia opóźniająca lub szereg bramek) dodatkowo komplikowało i podrażało układ, nie mówiąc o tym, że też niekoniecznie eliminowało dostrajanie. Nie wydawało się to jednak wielką wadą - ot, konieczność prostego dobrania elementów przy uruchomieniu. Dopiero później okazało się, że poszczególne egzemplarze Atarynek miały rozmaite timingi i różne obciążenia sygnału fi2 wynikające z rozszerzeń.
żadnych - plik z BIOSEM ma 1,5kB a EPROM ma 2kB pozostałe 512 bajtów nie jest widziane w systemie.
no wlasnie ;] w jakie miejsce epromki 2764 (8192bajty) mam wpier...c te 1536 bajtow ? ;>
$0000...$05FF
3 weekendy = 3 tygodnie.
a co zmieniłem? do wymiany 3 uklady ('574->'573), do kosza 6 innych ukladów a w ich miejsce 2 GALe.
Znałem kiedyś gościa, który w podobny sposób naprawiał telewizor. Wymienił blok sygnałowy, moduł odchylania, zasilacz a wreszcie kineskop. Na koniec okazało się, że winna była źle przykręcona listwa masowa łącząca bloki.
_________________
Prawdziwy mężczyzna nigdy nie zapyta o drogę. Najwyżej wybierze alternatywny cel wyprawy. :-D
Jest jeszcze prosciej :). Stacja nawet nic nie mierzy.
To zależy, jaka stacja. Na przykład XFD601/602 ma bez najmniejszej wątpliwości rozpoznawanie prędkości podczas przyjmowania każdego pierwszego bajtu wywołania (DDEV)
Zasadniczo takie rozpoznanie jest dziecinnie proste, przy użyciu wysyłanego przez Atarynkę sygnału CLOCK OUT. Jednak dziwnym trafem żadna ze znanych mi stacji nie wykorzystuje tej możliwości.
Dziwne problemy macie. Ja sobie zrobiłem prosty układ z trzech tranzystorów i chodzi bez problemów. Żadna ustawa nie wymaga kurczowego trzymania się standardów, a wejście RS doskonale obywa się bez ujemnego napiecia. Wystarczą z powodzeniem poziomy TTL.
Pokey byłby dobry, gdyby nie parę drobiazgów. Po pierwsze: trzeba byłoby go zmusić do transmisji taktowanej zewnętrznym zegarem. Mnie się nie udało tego uzyskać, nawet testując zabronione kombinacje bitów SKCTL. (albo miałem Pokeya z uszkodzonym CLOCK IN). Po drugie - trzeba mieć możliwość ustawiania na określony czas obu linii w stan 0. Z linią DATA nie problem - od tego jest 7 bit SKCTL, a co z linią CLOCK? Zakładam, że Pokey nie sprawi problemów po zwarciu linii DATA IN i DATA OUT.
Razem z dodatkowymi parametrami takimi jak długość bufora, kierunek transmisji, itp.? Fajna featura, tylko czy do czegoś się może przydać?
Nie. Każdy wpis zawiera 4 bajty - dokładnie te same, jakie są wysyłane do urządzenia zewnetrznego przez komputer, czyli: DDEV, DCMD,DAUX1,DAUX2.
Wnioskuję, że chodzi o adres ostatniego sektora, na jakim wykonana została operacja. Ale czy chodzi o operację zakończoną sukcesem, czy w ogoóle ostanią?
Chodzi o adres pierwszego sektora, jaki się napatoczy pod głowicę po odebraniu przez stację rozkazu. :)
Prędkość obrotowa - 360rpm
KE? To są takie napędy? A skąd masz te dane? Z danych producenta napędu? Jeśli zmierzone software'owo to na pewno są błędne. Stacje atarowskie mają 280, napędy pecetowe 300 rpm.
Jak piszę, że 360 to 360. Ja, wójt, Wam to mówię, to wierzcie. Silniki napędów pecetowych mają standardowo dwie prędkości - 300 i 360rpm. Ta druga prędkość jest wykorzystywana do gęstych dyskietek (1,2MB).
Simus: zdradź nam co robi komenda Get Command Buffer ($42), bo nigdy się z nią nie spotkałem.
To historia ostatnich 32 wywołań na łączu szeregowym. Wszystkich wywołań - nie tylko do stacji.
[ Dodano: Wto Gru 28, 2004 6:23 pm ]
Po sprawdzeniu w dokumentacji małe uzupełnienie zestawu rozkazów:
$54 - Read Address (6 bajtów: numer scieżki, numer strony, numer sektora, rozmiar sektora, 2 bajty CRC)
Zdjęcia nie mam. Parametry techniczne są następujące:
Obsługiwane gęstości: SD,ED,DD,DSDD
Protokół transmisji: normalny, TopDrive, Synchromesh, UltraSpeed
Prędkość transmisji - 19,2kb/s (AUDF3 = $28) i 69kb/s (AUDF3 = $06) lub 82kb/s (AUDF3 = $04) - wybierane zworą.
Prędkość obrotowa - 360rpm
Rozpoznawane rozkazy:
$21 - Format Disk
$22 - Format Enhanced
$3F - Get Hi-speed Index
$42 - Get Command Buffer
$4E - Read PERCOM
$4F - Write PERCOM
$50 - Put Sector
$52 - Read Sector
$53 - Read Status
$57 - Write/verify Sector
Formatowanie z przeplotem standardowym lub ustawianym przez użytkownika w DAUX2
Hardware: uC: 80C50; FDC: WD1770/1772; RAM: 6116; ROM: 27C128
Stacja dwukieszeniowa (XF602B) widziana jest przez system jako dwa oddzielne napędy - D1 i D2 lub D2 i D3 (ustawiane zworą)
Tyle wystarczy?
Ja tego nie mogę teraz zrobić. Plik kopiował mi kolega, przez kabel szeregowy. Fakt, kretyni jesteśmy, żeśmy tego przedtem nie skompresowali, od razu byłoby wiadomo, czy przekopiowało się dobrze.
W każdym razie, u mnie plik wypalony w EPROM-ie działa. Jeśli to, co zapodałem pod wyżej wymienionym adresem nie działa, to znaczy, że transmisja się spieprzyła :(
Wszystko jest w najlepszym porządku. Nie jesteśmy znowu tacy kretyni, bo protokół zawierał checksum, więc prawdopodobieństwo niepoprawnej transmisji jest znikome. Zresztą specjalnie przepchnąłem pliki w drugą stronę i porównałem z oryginałem. Wszystko się zgadza w 100%.
Zanim Ci Lizard odpowie, proponowałbym użyć lakieru do włosów i dobrze się (nomen omen) przylizać. ;-)
Chciałbym wykonać taki interfejs bo niestety nie posiadam stacji dysków ani magnetofonu. Pierwszy raz zobaczyłem coś takiego parę dni temu na Allegro, ale chyba sam zrobie to sobie duuuużo taniej niż 150zł, jeśli będę miał schemat oczywiście:). W sieci jakoś nie mogę znaleźć.
A może duuuużo szybciej będzie, jak sobie taki interfejs sam wymyślisz? Dla własnej satysfakcji przede wszystkim.
-------------------------------------
"Wy go tylko przewróćcie, a ja juz sobie poradzę."
Mam też poytanie - gdyż doczytałem w posiadanej dokumentacji co do zapisu FIFO (w dokumentacji określono to jako HUB:1 i HUB:0) - czy aby zaadresować LBA w 48 bitach w podany wyżej sposób (FIFO) jest konieczna przeróbka sprzętowa interfejsu KMK/JŻ czy też to też jest ograniczenie programowe?
Przeróbka nie jest konieczna, ale zobaczymy, czy komukolwiek potrzebna będzie obsługa dysków ponad 128GB.
Błogosławieństwa udzielono. ;-)
Jakiś czas temu nawet pytałem się o aukcję z samą płytką co powinienem wiedzieć http://atariarea.histeria.pl/forum/view … hp?t=2205. Wtedy płytka poszła za 50 zł w opcji kup teraz. W tej chwili dodano części i ciekawe ile zbito czystego zysku na samej płytce a ile się zbije na komplecie.
Zaprojektuj układ, wykonaj pierwsze płytki, posiedź nad prototypem, napisz i przetestuj niezbędne oprogramowanie, wnieś poprawki do projektu, zamów (niewielką) serię płytek w wersji wynikowej, kup wszystkie elementy, zmontuj sam lub zapłać za zmontowanie, uruchom, przetestuj, zamknij w obudowie i koś forsę aż miło. Na pewno zbijesz tyle czystego zysku, że wystarczy na wykupienie resztówek po firmie Atari Corp. i jeszcze zostanie na wczasy na Tahiti. :-)
Pełna dokumentacja była dostępna od ponad czterech lat i dopiero teraz ktoś "połakomił się" na taki kokosowy interes. Ale to tylko dlatego, że dr Kulczyk nie zagląda na AA. Inaczej na bank położyłby łapę na interesie i sprywatyzował. ;-)
Po znajomości było, to się nie liczy. ;)
32 bity w/g sa wystarczajace - kontroler w obecnej wersj hardware jest w stanie zaadresować sektor na 28 bitach. Dopiero dyski od 128 GB (czyli od 160 bo niema żadnego miedzy 128 a 160) potrafia - a wręcz muszą używać 48 bitowego adresowania LBA. Lecz, aby bylo to mozliwe, konieczne jest posiadanie 80 zylowego kabla i odpowiedniego dysku. - w takim adresowaniu nie używane są 4 dodatkowe bity, które pewnie znów zaczną być używane jesli 48 bitowe adresowanie znow bedzie niewystarczajace. (2x4 = 8 - po 4 bity na 40 zyl w kablu - razem 8 bitow)
To się prosi o sprostowanie. Dysk do adresowania LBA nie potrzebuje 80 przewodowej taśmy. Takie taśmy przeznaczone są do współpracy z dyskami pracującymi w trybie Ultra ATA od 100 w górę. Dodatkowe przewody nie przenoszą żadnych sygnałów, robią tylko za ekran i są połączone z masą. Złącze jest przecież ciągle takie samo - 40 stykowe. Dodatkowe bity adresujące numer logicznego sektora nie mają nic wspólnego z dodatkowymi liniami w kablu. Wszystko dzieje się na poziomie rejestrów kontrolera. W 48 bitowym LBA rejestry kontrolera określające adres są zorganizowane jako dwubajtowe FIFO, mieszczące w sobie 16 bitową liczbę, której starsze 8 bitów jest określone przez pierwszy wpis do rejestru, a młodsze 8 bitów przez drugi. Kolejny (trzeci) wpis do rejestru powoduje utratę pierwszego i przesunięcie drugiego na pozycję dotychczas zajmowaną przez pierwszy.
Po trzecim zapisie sytuacja wygląda zatem tak, że młodsze 8 bitów określone jest przez trzeci wpis, a starsze 8 bitów przez drugi.
Znaczenie rejestrów jest nastepujące: (adresy podane dla interfejsu KMK/JZ):
$d112 (sector count) - liczba sektorów do odczytu (bity 0...15)
$d113 (sector number) LBA bity 0...7 (ostatni wpis) i 24...31 (poprzedni wpis)
$d114 (cylinder low) LBA bity 8...15 i 32...39
$d115 (cylinder high) LBA bity 16...23 i 40...47
$d116 (device/head - bez FIFO - pojedynczy zapis)
bity 0...3 - nie używany
bit4 (DEV) - wybór dysku
bit5 - nie używany
bit6 (LBA) - ustawiony oznacza tryb LBA
bit7 - nie używany
Mam nadzieję, że wyjaśnienie jest wystarczająco czytelne. ;-)
Znalezione posty [ 1,151 do 1,175 z 1,224 ]
Forum oparte o: PunBB
Currently installed 7 official extensions. Copyright © 2003–2009 PunBB.
Wygenerowano w 0.040 sekund, wykonano 29 zapytań