[#31] Re: Sonnet Crescendo 7200 w Amidze

@mschulz, post #30

Obrazki się nie wyświetlają (pewnie nie udostępniłeś ich jako publiczne, więc sam je widzisz), ale i tak jestem zainteresowany, wysyłam wiadomość na priv :P.


Ostatnia aktualizacja: 26.02.2015 22:36:23 przez strim_
[#32] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #31

W repozytorium jest już ponad 100 commitów - praca wre .
[#33] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #32

No to tempo jest niezłe. Możesz coś więcej powiedzieć na ten temat? Na jakim etapie są prace? Co zamierzacie osiągnąć? pomysł
[#34] Re: Sonnet Crescendo 7200 w Amidze

@Sir_Lucas, post #33

Na jakim etapie są prace?


Jest już możliwe wykonanie specjalnie przygotowanego programu PPC z poziomu AmigaOSu. Niestety żeby uruchamiać normalne WarpOSowe binaria potrzebne jest jeszcze nieco pracy. Głównie potrzebna jest implementacja brakujących funkcji, naprawienie kilku bugów, napisanie wrappera patchującego plik wykonywalny w locie (celem wypchnięcia kodu PPC do pamięci Sonneta - gdyż ten nie ma dostępu do pamięci Fast Amigi). Docelowo chcemy też uniezależnić się od Elboxowego pci.library.

Co zamierzacie osiągnąć?


Pierwotny pomysł ze sterownikiem do starego WarpOSa 5.1 został zarzucony i teraz reimplementujemy całego WarpOSa na nowo. Celem jest tak czy inaczej możliwość wykonania programów WarpOS na Sonnecie.
[#35] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #34

Głowica stacji dyskietek ma bufor? sektor który ma zostać nagrany znajduję się w głowicy?

Jeśli tak jest. To gdyby zastosować większe głowice lub też zmodyfikowaną stacją dyskietek. Mogła by z tego powstać pamięć lub miejsce na przechowywaniem danych. Tylko nie wiem czy Sonnet ma dostęp.

//
gdyż ten nie ma dostępu do pamięci Fast Amigi


Ostatnia aktualizacja: 09.03.2015 23:09:34 przez amizet
[#36] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #34

Nooo brzmi to bardzo konkretnie- gratuluję i trzymam kciuki.

Rozumiem, że wszystko leci w tej chwili przez sloty PCI w Amidze, czyli to będzie największy minus tego rozwiązania (prędkość komunikacji przez mostek dostęp do pamięci na Sonnecie itp)?
[#37] Re: Sonnet Crescendo 7200 w Amidze

@BULI, post #36

@BULI

Tak jest.

Założenie jest takie, żeby cały kod PPC umieszczać w pamięci Sonneta, więc prędkość wykonania tego kodu jest niezła. Natomiast jakakolwiek komunikacja 68k-PPC jest dość wolna, co oczywiście rzutuje na wydajność (na tym etapie nie ma sensu jeszcze robić jakichkolwiek benchmarków).

Z racji tego, że CPU PPC nie ma dostępu do Fast RAMu Amigi, problem może pojawić się też przy aplikacjach, które były pisane niezgodnie ze sztuką i np. bezpośrednio modyfikują dane, na których operuje procesor 68k, z poziomu procesora PPC (w sensie, nie będzie to działać). Jeśli programista używał do tego funkcji WarpOSa to powinno być OK.

@amizet
Tylko nie wiem czy Sonnet ma dostęp.


Pomijając idiotyczność tej propozycji, nie ma.
[#38] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #37

"Z racji tego, że CPU PPC nie ma dostępu do Fast RAMu Amigi, problem może pojawić się też przy aplikacjach, które były pisane niezgodnie ze sztuką i np. bezpośrednio modyfikują dane, na których operuje procesor 68k, z poziomu procesora PPC (w sensie, nie będzie to działać). Jeśli programista używał do tego funkcji WarpOSa to powinno być OK."

Obawiam się, że tu moze być problem. Większość programów cudowała żeby tylko było szybciej... Tym bardziej, że sam WOS nie wymuszał poprawności
[#39] Re: Sonnet Crescendo 7200 w Amidze

@kiero, post #38

Obawiam się, że tu moze być problem.


Może być, tu dużo zależy od programu. Być może częściowym obejściem problemu będzie wspomniane patchowanie aplikacji w locie. Wtedy wszystkie hunki PPC wylądują w pamięci Sonneta, oczywiście procesor 68k tak czy inaczej będzie miał do nich dostęp (nawet w "niepoprawny" sposób).

Problem nie do przeskoczenia jest tylko w drugą stronę, z racji konstrukcji Mediatora. No chyba, że ktoś wyjaśni do czego służy jumper MASTER i w jaki sposób on działa (za przeklejanie instrukcji obsługi z góry dziękuję, ona nic nie wyjaśnia).


Ostatnia aktualizacja: 10.03.2015 11:38:40 przez strim_
[#40] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #39

Czemu wykorzystaliście jako bazę Mediatora a nie np. otwartego Prometeusza? Znając życie @elbox raczej wam dokumentacji nie udostępni... bo przecież to jest kosmiczna technologia, za którą trzeba żądać milionów cebulionów!
[#41] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #39

Uhm, ale jak chcecie obejść sytuacje kiedy PPC musi grzebać w strukturach systemowych? Niskopoziomowość amigowego API powoduje, że takie coś będzie nieuniknione (choćby proste odwołania do struct Window->UserPort).

[...]

Ok, zakładając, że wszystko dzieje się po stronie PPC (także OpenWindow) a 68k ma dostęp do pamięci PPC to spaczowanie systemowych funkcji do alokacji pamięci tak żeby to OpenWindow utworzyło wszystkie struktury w paięci PPC mogłoby zadziałać. Ale nie wiem na ile takie coś jest wykonalne.

Ostatnia aktualizacja: 10.03.2015 11:45:09 przez kiero

Ostatnia aktualizacja: 10.03.2015 11:47:29 przez kiero
[#42] Re: Sonnet Crescendo 7200 w Amidze

@_arti, post #40

@arti

Czemu wykorzystaliście jako bazę Mediatora a nie np. otwartego Prometeusza?


Promek nie obsługuje bus masteringu w żadnej formie. A ten jest na szynie PCI niezbędny choćby do tego, żeby uruchomić CPU PPC.

Znając życie @elbox raczej wam dokumentacji nie udostępni... bo przecież to jest kosmiczna technologia, za którą trzeba żądać milionów cebulionów!


Na szczęście prawie wszystko mamy rozkminione już... Jedna rzecz, która jeszcze by się przydała, a którą być może włącza w jakiś sposób jumper MASTER, to możliwość dostępu do przestrzeni adresowej Amigi, z poziomu CPU na szynie PCI.

Szczerze mówiąc, to nie wiem czy to w ogóle jest możliwe, bo to by oznaczało, że Mediator może być bus masterem na szynie Zorro III. W co wątpie.

No ale to nie jest krytyczna funkcjonalność. Kod PPC tak czy inaczej musi być w pamięci Sonneta z uwagi na wydajność.

@kiero

Uhm, ale jak chcecie obejść sytuacje kiedy PPC musi grzebać w strukturach systemowych?


Teoretycznie powinien był użyć do tego funkcji WarpOSa...

Na razie się tym nie przejmujemy zbytnio, później zobaczymy na ile to jest w rzeczywistości problem. Zdajemy sobie sprawę z tego, że z uwagi na te różnice w zarządzaniu pamięcią, nie wszystkie programy będą działać, nawet jeśli będziemy mieli zgodność z samym ABI WarpOSa. Nawet sama zgodność z jego API będzie dużym plusem, część oprogramowania będzie można spatchować na poziomie źródeł i przekompilować...


Ostatnia aktualizacja: 10.03.2015 11:58:07 przez strim_
[#43] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #42

Ok, rozumiem wasze podejście. Ale...

"Teoretycznie powinien był użyć do tego funkcji WarpOSa... "

Problem jest taki, że nie ma do tego funkcji (albo ja jej nie widzę)... struct Window jest po stronie 68k po wywołaniu OpenWindow i zrobienie window->UserPort będzie wymagało odczytu 32bitów z przestrzeni 68k. Tutaj musiałaby być funkcja typu get(window, WA_UserPort).
[#44] Re: Sonnet Crescendo 7200 w Amidze

@kiero, post #43

Tutaj musiałaby być funkcja typu get(window, WA_UserPort).


W dobrym guście byłoby gdyby taka funkcja była przygotowana jako funkcja procesora 68k, po czym wołana przez PPC gdy trzeba przez Run68K. No tak, ale też wątpie aby większość programistów tak robiła, skoro PPC miał bezpośredni dostęp do pamięci 68k.

Nie chce mi się teraz szukać w dokumentacji WarpOSa, ale widziałem gdzieś tam zalecenie, żeby nie grzebać w strukturach systemowych bezpośrednio z kodu PPC.
[#45] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #44

Heh, fakt, nie pomyślałem, że można zrobić cos ala stuby w kodzie 68k. W sumie to moglibyście zrobić coś ala oxypatcher/exception handler dla odwołań do pamięci które nie są zmapowane po stronie PPC. Nie jest to banalne ale wykonalne zakładając, że pamięć 68k i PPC nie będzie się pokrywać.
[#46] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #44

A gdyby tak zmusic amigaos 68k do alokowania wszystkiego w pamięci Sonneta, oczywiscie odpada chipram i adresacja sprzetu. Trzeba by to bylo robic bardzo wczesnie ale jest Aros, mozna taka wersje przygotowac.

Ostatnia aktualizacja: 10.03.2015 12:42:27 przez michal_zukowski
[#47] Re: Sonnet Crescendo 7200 w Amidze

@michal_zukowski, post #46

Zobacz #41:) Też nie wiem na ile to wykonalne. Pewnie średnio.
[#48] Re: Sonnet Crescendo 7200 w Amidze

@michal_zukowski, post #46

Pomysł z AROSem w sumie jest ciekawy. Ciekawe jak bardzo skomplikowane byłoby przygotowanie całego używanego w projekcie toolchainu vbcc na AROS 68k. Nie mam teraz na to czasu, ale to jest interesująca idea na przyszłość.

Tylko ktoś najpierw musiałby dokończyć wsparcie dla Mediatorów w AROSie .


Ostatnia aktualizacja: 10.03.2015 12:53:28 przez strim_
[#49] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #48

@strim

przypuszczam ze dla ciebie bylaby to gratka, zwlaszcza ze masz doswiadczenie z bsd. aros ma zaczete wsparcie dla medka i promka, ale nie pamietam dokladnie czy bylo juz widac karty i nie dam glowy ze cos sie nie zmienilo. moge als sprawdzic obecny stan na mojej a4k jesli cie to interesuje. w ppc nie bede sie chyba juz bawil ale gdybys potrzebowal jakichs testow pci to sluze.

Ostatnia aktualizacja: 10.03.2015 14:10:02 przez wawrzon
[#50] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #48

Testowy program CyberPI (z archiwum WarpOSa) działa:


(powiększ)

Problem z dostępem do struktur AmigaOSu dalej nie jest rozwiązany, więc konieczne było spatchowanie wywołań AllocVec.

Może ktoś zrobi porównanie z Vampirem... cool


Ostatnia aktualizacja: 17.03.2015 00:06:02 przez strim_
[#51] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #50

OK
[#52] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #50

Eee, tylko 9x szybciej... :P
[#53] Re: Sonnet Crescendo 7200 w Amidze

@madman15, post #52

Starczy...
[#54] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #50

Na moim PPC 603 330 mam odpowiednio:
1,58 s
0,04 s
1,62 s
Nieżle Strim.OK Jaki tam siedzi proc?
[#55] Re: Sonnet Crescendo 7200 w Amidze

@Grisza, post #54

To są wyniki z karty G3 500MHz.
[#56] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #55

Macie w planach obsługę Medka dla A 1200? Nieżle,to pędzi jakby nie było pół giga,ehh..
[#57] Re: Sonnet Crescendo 7200 w Amidze

@Grisza, post #56

Jest tylko jeden problem - skąd wziąć kilkadziesiąt/kilkaset Sonnetów dla napalonych amigowców...
[#58] Re: Sonnet Crescendo 7200 w Amidze

@Grisza, post #56

@Grisza

Póki co wspierane są jedynie "duże" Mediatory z linią zasilania 3.3V (czyli "z pudełka" tylko Mediator 3000Di).

Mediator 1200TX też ma tą linię, jeśli jest zasilany z zasilacza ATX. Wsparcie dla niego jest w odległych planach, na razie są ważniejsze problemy do rozwiązania.

@Recedent

Tutaj podobno mają. Acz nie wiem ile sztuk . Na tym etapie projektu tak czy inaczej nikomu bym nie polecał kupowania .


Ostatnia aktualizacja: 17.03.2015 15:53:31 przez strim_
[#59] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #58

Cybermand także działa na G3:


(powiększ)
[#60] Re: Sonnet Crescendo 7200 w Amidze

@strim_, post #59

No i co, można ? Można

Ps. Podziwiam :)
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem