1

Po kilkumiesięcznych doświadczeniach z odpalaniem muzyki 8 bit/stereo prosto (no, przez dwa dłuugie bufory) z KMK (w końcu udało się 20kHz) postanowiłem jeszcze bardziej zagłębić się w multimedia i...
Odpaliłem wczoraj z dysku na kmce filimiki dla myIde wrzucone na sieć przez mr.Atari. Chodzi tak jak na tym demonstracyjnym mpegu, ale wymagało to przerwania irq krótszego o dobre kilka cykli, żeby komp mógł wyrobić (próba minimalnego przyspieszenia powoduje, że odtwarzanie się rwie). Co gorsza, są przecież sektory 512B (ok. dwa razy krótsze oczekiwanie na dane od dysku), w dodatku stosowałem rozkaz odczytu wielu sektorów, co pozwala ominąć 14 dodawań adresu c/h/s na klatkę, a NMI pozostało wyłączone...
Testowałem na razie tylko ze swoim caviarem WD2200AC (hehe - czy ktoś pamięta, że na podstawie dokumentacji tego sprzętu była budowana kmk?), ale obawiam się, że... KMK JEST WOLNIEJSZA OD MYIDE...
?
Niebawem postaram się wrzucić kopiarko-odpalarkę dla kmk (chociaż jej napisanie wcale nie jest trudne), to przetestujecie sami. Chyba, że ktoś już testował, to proszę o opinie.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

2

A pod jakim DOSem to testowałeś? A raczej w jakim formacie była partycja, z której odpalałeś sample/animki? Najlepsze transfery uzyskuje się dla partycji Sparty. W przypadku partycji AtariDOSa (MyDOS) szbykość spada o jakieś 10kB/s.

Sterownik KMK nie oblicza za każdym razem adresu sektora, tylko zwiększa odpowiednio wartości o jeden (w przypadku odczytu sekwencyjnego, kiedy plik nie jest sfragmentowany), co dodatkowo zwiększa szybkość (porównaj testy szybkości dla sequence i random pod SI).

KMK pisząc D2D umieścił dwa krótkie bufory poza obszarem $4000-$7FFF (banki pamięci), aby uniknąć opóźnień wyikających z nadmiernego przełączania takowych pod SDX w trybie banked.

Myślę, że aby KMK był wolniejszy od czegokolwiek, to to cokolwiek musiałoby wykorzystywać DMA. Kiedyś bawiłem się w wyciąganie szybkości na maksa i wiem, że to co daje interfejs Konrada jest maksymalną szybkością dla 6502 przy zegarze 1.79MHz. Różnice kilku kilobajtów przy szybkości 100kB/s raczej nie mają znaczenia i wynikają z szybkości samych dysków (to naprawdę ma znaczenie).

D2D dla zwiększenia częstotliwości sampli wywala systemową procedurę rozpoznawania źródła IRQ i na chama wstawia skok do odtwarzania sampla.

Stosując sektory 512B pozbawiasz się możliwości zapisu kilu plików na partycji, co nie jest dobrym rozwiązaniem. Takie coś było zastowoane w mojej animce, którą pokazywałem w Opalenicy w 1997. Było to 14fps w GR.15 + MPT i jakoś nic się nie cięło. Co innego z samplami.

BTW. Przy samplowaniu bezpośrednio na dysk udało się wyciągnąć ok. 20kHz (czyli tyle ile odczyt, który jest 2-krotnie szybszy!).

Zawsze mam rację, tylko nikt mnie nie słucha.

3

A pod jakim DOSem to testowałeś? A raczej w jakim formacie była partycja, z której odpalałeś sample/animki? Najlepsze transfery uzyskuje się dla partycji Sparty. W przypadku partycji AtariDOSa (MyDOS) szbykość spada o jakieś 10kB/s.

:D  :D ;- To dopisze; bo albo Epi napisal niezrozumiale, albo ... ee takie tam. Dane GFX i sample zostaly skopioiwane na pusta partycje pracujaca w trybie 512B/Sector; czyli dokladnie tak ja w twojej ANIM_1MB. Wiec dogadajcie sie; to moze uda sie cos to dopalic - choc i tak efekty sa rozwalajace!!! Na party przywioze caly dysk wypchany pornosami;- bedzie ubaw... :lol: Bendziem ogladac na Atari .. HEHEHEHE

Tee Lizard;- zyjesz? Wyslij na priva aktualny tel... :D  :D  :D

Kontakt: pin@usdk.pl

4

Lzd: zdobądź się na krótką refleksję nt. tego co napisałeś i co ja napisałem, porównaj, wyciągnij w(n)ioski... ;)
hehe...
a na serio: zasadniczo jedyne "wysokopoziomowe" odwołanie do interfejsu dotyczy pierwszego sektora, bo nie chciało mi się samemu przeliczać, a adres c/h/s pozostaje w rejestrach. z racji na to, że przerwanie jak i loadSector mam na stronie zerowej z adresami bezpośrednimi, więc o bardziej znaczące przyspieszenie będzie trudno.
bla bla bla nie chce mi sie pisać .... ;-)

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

5

Do Kierownika poszla juz kopiarko-odtwarzarka - nic nie trzeba ustawiac ani asemblowac jak w demach z myIDE. obsluga w doc-u. filmiki i odtwarzarke do myIDE mozna znalezc na: http://mr-atari.com/demo/

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

6

Co gorsza, są przecież sektory 512B (ok. dwa razy krótsze oczekiwanie na dane od dysku), w dodatku stosowałem rozkaz odczytu wielu sektorów, co pozwala ominąć 14 dodawań adresu c/h/s na klatkę, a NMI pozostało wyłączone...

Czy to znaczy, że MyIDE z sektorami 256B chodzi z szybkością KMK IDE 512B? Tak wynika z Twojej wypowiedzi.

ale obawiam się, że... KMK JEST WOLNIEJSZA OD MYIDE...

Na jakiej podstawie wysnuwasz swe wątpliwości?

Dobrze było by przeprowadzić testy szybkości obu interfejsów jednym benchmarkiem i wtedy ogłosić wyniki. Poza tym p[ozostaje kwestia, czy szybszy jest soft czy hard? Jeśli to pierwsze, to wiadomo co należy zrobić. ;)

Zawsze mam rację, tylko nikt mnie nie słucha.

7

Lizard: każde zdanie ma sens w odniesieniu do całości, uwzględnij to, że napisałem "obawiam się", a gdzie indziej że podejrzewam dysk. Dlatego należałoby przetestowac program na różnych dyskach i oba interfejsy z tym samym dyskiem. Soft jest jaki jest - źródło playera do myide jest na stronie projektu, a jako zdolny koder będziesz wiedział co mówi do ciebie disasembler przetwarzajac avp i ocenisz który z odtwarzaczy lepiej wykorzystuje maszynę. jako autor jednego z nich się tego nie podejmę.

Czy to znaczy, że MyIDE z sektorami 256B chodzi z szybkością KMK IDE 512B? Tak wynika z Twojej wypowiedzi.

Z mojej wypowiedzi wynika, że kwestia nie jest jednoznacznie rozstrzygnięta, i co do tego nie ma chyba żadnych wątpliwości.

Na jakiej podstawie wysnuwasz swe wątpliwości?

Na podstawie przeprowadzonych doświadczeń oraz przypuszczenia, że filmik w którym twórca myide demonstruje jego możliwości, obrazuje działanie interfejsu z programem, który ściągnąłem razem z tym właśnie mpgiem.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

8

Cytaty z "Mr.Atari's MyIDE(tm)-hardware for ATARI XL/XE-computers":

IDE handles 16 bit-words, but because a Atari is 8 bit, only the lower 8 bits of the words are used. This means that the Atari can use only half the drive-capacity.

I wszysyko jasne: tylko połowa dysku jest wykorzystywana. Ciekawe co interfejs robi z drugim bajtem. HDD nie wyśle następnego słowa dopóki nie zostanie pobrane w całości poprzednie. Jeśli gość rozwiązał to programowo, to transfer jest dwa razy niższy niż KMK IDE. Jeśli sprzętowo - powinien być porównywalny (jestem jednak pewien, że nie większy!)

This first sector is divided into 9 groups of 8 bytes.
(...)
The first group contains the physical size of the harddisk and how many partitions there are:
(...)
The next 8 groups are the partition-tables. The bytes are arranged as follows:

Tu widać, że MyIDE pozwala na założenie do ośmiu partycji. Poza tym partycje zaczynają się od pełnego cylindra.

Zawsze mam rację, tylko nikt mnie nie słucha.

9

a mnie się wydaje że po prostu go pominął. według dokumentacji jaką posiadam, w samym standardzie IDE dysk podaje kolejne słowa po każdym dostępie do szesnastobitowego rejestru (więc wystarczy go zaadresować) i o ile KMK przechowuje starszą połówkę w $D100 i odczytuje ją się po dostępie do młodszej ($D110) albo zapisuje przed, o tyle myIde ma niepodłączone starsze 8 bitów szyny danych.
dlatego mam takie wątpliwości - jakim cudem może to działać przypuszczalnie wolniej, skoro sprzętowo KMK oferuje znacznie więcej. i dlatego rzuciłem ten program na sieć. testujcie i patrzcie, ile czasu zostaje między mignięciami diodki od KMK :-)

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.