forum speccy.pl

ZX Spectrum => HARDWARE => Wątek zaczęty przez: steev w 2018.12.03, 18:00:34

Tytuł: Koprocesor
Wiadomość wysłana przez: steev w 2018.12.03, 18:00:34
W sumie może głupie pytanie, ale.
Czy ktoś widział / słyszał o istnieniu / ma / niepotrzebne skreślić modyfikację ROMu ZX Spectrum, pozwalającą korzystać z koprocesora?
Na eBayu są koproce AMD AM9511 za fistaszki (w charakterze fistaszka - $4.99 z wysyłką)
Ale o ile zmontować interface to bym jeszcze w dającym się określić czasie dał radę, to modyfikacja systemu już raczej w następnym wcieleniu ;)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.03, 20:24:04
Pomysł ciekawy, ale aby miało to sens, raczej wiele procedur z ROMu wymaga modyfikacji.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.03, 21:19:52
Był sobie inny pomysł, koprocesor zgodny z ROM 48K - nazywał się bodaj X80. Chipa jednak chyba fizycznie nikt nie zrobił.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.03, 21:26:12
https://github.com/cheveron/sebasic4/wiki/X80-Math-Co-processor - to?
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.03, 21:30:23
To. Wiesz coś więcej niż jest pod linkiem?
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.03, 21:46:23
Nie, tylko tyle wiem i mam w swojej bibliotece linków.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.03, 21:49:02
Wygląda na zapomniany, porzucony projekt.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: pgru w 2018.12.04, 15:47:57
Trochę nie na temat, ale w sumie jak już podpinać jakiś koprocesor to dlaczego nie coś bardziej współczesnego. Choćby kartę graficzną Nvidii z rdzeniami CUDA :-)
Są różne projekty do automatycznego przepisywania kodu w C na odpowiedni dla CUDA lub OpenCL. Aż dziwne, że ktoś np. nie przeniósł na to Linuxa.
Wtedy np. niewielki program dla procesora z Elwro 800JR mógłby ładować nawet cały system operacyjny w rodzaju Linuxa i można byłoby uruchamiać nawet bardzo wymagające programy użytkowe czy gry...
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.04, 15:58:31
No, a potem na tej karcie graficznej z Linuxem odpalimy emulator ZX Spectrum np. FUSE ;D Tylko po co ten caly Z80 w tej zabawie?
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: zaxon w 2018.12.04, 16:14:53
Projekt jak zwykle zależny od koderów którzy  tego  użyją ;)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: tooloud w 2018.12.04, 18:25:45
Przekleństwo takich projektów to wyjście poza prototyp. Kto tego będzie używał i do czego. Jest Rapidus do małego Atari - i co z tego jest do skorzystania - emulator ZX Spectrum i pięć gier na krzyż plus parę dem. No fajnie tylko... po co.

Kto będzie na to pisał soft wykorzystujący te możliwości? Bo zrobić - to jak znam życie się da.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.04, 18:32:05
X80 miał być transparentny dla oprogramowania. Miał przechwytywać odwołania do kalkulatora w ROM (RST #28) i w to miejsce wstawiać użycie X80.
Tyle mówi teoria.
Praktyka powiedziała swoje - 5 lat bez żadnego update'u.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: zaxon w 2018.12.04, 18:34:26
Tak jak mówie, jak koderzy wykorzystają hardware to może będze sens robić. Ale jakoś nie widze tego choć chcałbym sie mylić. Pare lat temu wypusciłem DMA do ZX na podstawie Velesofta i TSFM, miały powstac cuda wianki koderske na to , i co ? I nic ;)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: pgru w 2018.12.05, 13:38:13
Ale też zdarzają się czasem całkiem interesujące i działające projekty. Przykładowo m. in. na Amstradzie można uruchomić wielozadaniowy i graficzny system operacyjny, co pokazuje, że nawet Z80 potrafi wiele. Tyle, że to wymaga min. 128 KB Ramu, a  autor zapowiada, że następne wersje w przyszłości mogą wymagać więcej. Ilość ramu pozwala na zwiększenie ilości aplikacji. Szkoda, że nie do Elwro.

Gdyby jako koprocesor dołączyć układ Nvidii, na który ktoś by przepisał Linuxa, to wtedy można byłoby pokazać, że nawet taki komputer może robić to co współcześnie przeciętny użytkownik potrzebuje. Z80/ czy procesory MME mógłby służyć podobnie jak drugi procesor w PS4, do zarządzania zadaniami, by móc oddać nawet aplikacji jak najwięcej potrzebnej mocy obliczeniowej :-)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: tooloud w 2018.12.05, 15:44:38
... ale po co...
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.05, 15:57:09
Kombinatoryka stosowana ;)

Jedynie idea X80 ma sens dla istniejących programów.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: steev w 2018.12.05, 18:05:00
A w tak zwanym międzyczasie okazało się, że scalaczek z AMD fajny, ale liczy na 32 bitach.
A ZX BASIC na 40.
Byłby więc zysk na prędkości, ale kosztem dokładności...
(natomiast dokumentacja do am9511/am9512 jest skarbnicą wiedzy dla osób które chcą zakumać o co chodzi w tych liczbach zmiennoprzecinkowych :) )
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.08, 01:41:13
Zapis liczb zmiennopozycyjnych na 32 bitach jest akurat standardem (IEEE754). To raczej ZX Basic korzysta z jakiegoś własnego formatu i niekoniecznie 5 bajtów oznacza wyższą precyzję (brzmi to może mało logicznie, ale wszystko zależy od samej reprezentacji liczby w formie znaku, cechy i mantysy, a także zaokrągleń wnoszonych przez kalkulator).

Przy okazji FPU, była sobie też taka ciekawa konstrukcja - niestety już ma status discontinued:

https://solarbotics.com/product/17385/
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.08, 09:59:42
uM-FPU żyje, ale jako biblioteka do Arduino. jednak nie.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: steev w 2018.12.08, 17:37:32
Zapis liczb zmiennopozycyjnych na 32 bitach jest akurat standardem (IEE754).
Od roku? :)

To raczej ZX Basic korzysta z jakiegoś własnego formatu i niekoniecznie 5 bajtów oznacza wyższą precyzję
40 bit, extended precision format.
Obecnie faktycznie rzadko stosowany.
Z tego co czytałem, jest zgodny z formatem z maszyn IBM 1130 (8+32, bias 128)
Zbliżony format stosował też Microsoft (wg wiki:  BASIC dla 6502, Commodore BASIC, AppleSoft BASIC, KIM-1 BASIC , MicroTAN BASIC)
Co do precyzji - tu jest zestawienie. (https://mrob.com/pub/math/floatformats.html)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.08, 17:45:49
Zapis liczb zmiennopozycyjnych na 32 bitach jest akurat standardem (IEEE754).
Od roku? :)

1985.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.10, 15:05:49
http://forum.tlienhard.com/phpBB3/viewtopic.php?f=6&t=2831&start=75#p37424 - może warto tu zajrzeć?
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: steev w 2018.12.10, 18:28:40
Hm, to może jednak kupię sobie jednego AMDka pod choinkę :)
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: trojacek w 2018.12.10, 19:10:47
Dobre, dobre!
Tylko problemy z CLK, jak zwykle.
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2018.12.10, 19:46:47
Ale tylko w ZX Spectrum ;) w ZX81 nie ma tego problemu
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2019.01.16, 00:33:13
Coś w tym temacie: http://www.jupiter-ace.co.uk/hardware_maths_coprocessor.html
Tytuł: Odp: Koprocesor
Wiadomość wysłana przez: KWF w 2019.12.19, 16:53:42
Moze komus przyda sie, artykulik po niemiecku z C8231A/AM9511 w roli glownej.