Problem z jeszcze jednym klonem Spectrum

poniedziałek, 21 czerwca 2021 o 10:25:32 UTC+2 Atlantis napisał(a):

Ciekawe - a jaki procesor zaleca konstruktor tego klona? Może ten CMOS ma jakiś kłopot z zegarem - w spectrum zegar generowała ULA. No właśnie - generowała, ale i zatrzymywała - może z zatrzymywaniem problem? No^2 i stąd też pytanko, jakie mnie nurtuje, skoro w klonie zastosowano 628128 - nie zaglądałem do schematu, ale skoro taki duży chip, to wydaje się, że pewnie będzie jeden na cały komputer. Jak więc poradzili sobie z tym, że spectrum miało dwa prawie-osobne RAMy - zakresem 16-32kB rządziłą ULA, a procesor mógł sobie czasem tam dojść, za to zakres 32-64kB był wyłącznie dla procesora i programy chodziły 8 razy szybciej? Jak czytałem o chip-ramach, fast-ramach (i jeszcze podobno były slow-ramy) w amidze, to byłem cały zadziwiony, jak można taką głupotę zrobić - choć z drugiej strony pisali tam o kilku megabajtach, a w PC, choć mój pierwszy to był 386DX i 4MB, to się walczyło o to, żeby było 620kB a nie 605kB, bo się gry nie uruchamiały - no chyba że comanche - i dodam, że to było jeszcze przed windows 95 - a tu się okazuje, że w i spectrusiu takie cuda były - zaś zrozumienie schematu było jak katharsis ;)

Reply to
Dawid Rutkowski
Loading thread data ...

Cos mi chodzilo po glowie, ze byly jakies zmiany ukladu generatora w wersji CMOS. Ale to chyba jakis inny procek, bo Z80 ma tylko wejscie.

Google taka ciekawostke znajduje

formatting link
Ale to chyba nadal lezy w granicach specyfikacji dla oryginalnego ULA Spectrum. I CMOS nie ma takich problemow.

Balbym sie takiego zatrzymywania dla prockow wyposazonych w PLL dla zegara - ale tu go chyba nie ma

J.

Reply to
J.F

Nie precyzuje - jest po prostu wymieniony w dokumentacji jako "Z80". Z tego co widzę w prostszych klonach Spectrum jest dość spora dowolność i wielu ludzi z powodzeniem uruchamiało takiego Harlequina 48 nawet z bardzo starymi wersjami NMOS. Ja do tej pory stosowałem CMOS-y, w celu ograniczeni poboru prądu. W Harlequinach działały bez problemów. Bardziej konkretni są autorzy takich projektów jak Sizif-512, gdzie trzeba zastosować konkretnie CMOS Z84C0020, ale to z uwagi na wymagania co do szybkości taktowania w trybie turbo.

To akurat dość proste. To nie jest replika 1:1, ale klon będący rekreacją z wykorzystaniem współczesnych elementów. Z tego co pamiętam, oryginalne Spectrum korzystały w ogóle z pamięci DRAM. Tutaj mamy pojedynczy układ pamięci SRAM, co mocno upraszcza sprawę - odpada układ odświeżania, a adresowanie jest dużo prostsze. ULA jest odtworzona w CPLD, ale też nie 1:1, ale na zasadzie odtworzenia funkcjonalności. Tak więc logika zaimplementowana w programowalnym układzie logicznym zdaje sobie sprawę obecności 628128 i odpowiednio steruje adresowaniem, w zależności od tego, co się aktualnie dzieje w systemie. W punktu widzenia programu wszystko się zgadza, bo przeznaczenie poszczególnych adresów w pamięci pozostaje takie samo.

Reply to
Atlantis

poniedziałek, 21 czerwca 2021 o 14:10:03 UTC+2 Atlantis napisał(a):

Aż tak nie upraszcza, Z80 ma wbudowane odświeżanie. Zaś adresowanie - prostsze nie dlatego, że SRAM, tylko z uwagi na to, że w spectrum były chipy dram z maksymalnie zredukowaną liczbą pinów. Ale układ robienia RAS i CAS na kilku bramkach - no cudo po prostu. Oraz układ wyboru, czy zastosowano układy 64kBit z popsutą górną czy dolną połówką ;>

A SRAM był w ZX80 i chyba w ZX81 też. Tyle że nie za wiele go było.

Z punktu widzenia programu obliczeniowego. Gry nie będą działać albo będą działać źle. Więc to taki sobie ten klon. Mniej więcej tak, jakbyś chciał sobie zrobić PC-ta bez RAMu innego niż ten na karcie graficznej. Pewnie by się dało do tego RAMu załadować jakiś program i nawet go wykonać ;>

Kurtałka, nawet bym spróbował, ale teraz to o DOS trudno - jak już kilka lat temu dostałem od advantecha nową wersję BIOSu do PC-ta jednopłytkowego, to musiałem użyć FreeDOSa, bo program do programowania był pod DOS - a ile się naszukałem... Zastanawiam się też, z czego tego FreeDOSa odpaliłem, raczej nie z dyskietki - no nie, ta płytka to już nie ma żadnej możliwości podłączenia stacji dysków - więc chyba jednak z pendrive'a (chyba gdzie znalazłem bootowalny obraz - choć nie jestem pewien, czy to nie był CD i trzeba było na pendrive'wowy przerobić) bo inne możliwości to dysk SATA albo mSATA. Ale jeśli karta nie miałaby VRAM - czyli pamięci dwuportowej - to pewnie albo by nic nie zadziałało albo strasznie wolno. I tak samo będzie w tym klonie - OIDP ULA do generowania obrazu zabiera 14 na każde 16 cykli dostępu do pamięci - a Z80 niestety cache nie posiada. Więc będzie miał skoki prędkości podczas rysowania ramki - a inaczej będzie się wlókł jak spectrum 16 - a niby miał 128 emulować. A wystarczyło dać dwa układy SRAM. Chyba że tak jest - może ten CPLD może służyć jako 16kB RAM? A jaki jest ROM w tym projekcie?

Reply to
Dawid Rutkowski

O ile wiem - nie. Te konkretne są dobierane z powodu analogowej magii cyfrówki i krytyczne jest stosowanie akurat tych. Opisywane na forum, ale po latach nie sposób znaleźć wyjaśnień. Jestem jednak 100% pewny że wiele osób zmieniało na *jakieś* inne, ale na pewno nie dowolne inne - klawiatura nie działała. Po tylu latach mój doktorat z harlequina przeterminował się ;)

Reply to
heby

Gry z całą pewnością działają, więc pewnie mój opis jest zbyt dużym uproszczeniem. W każdym razie autorowi w jakiś sposób udało się dostosować konstrukcję do obsługi pojedynczego układu pamięci SRAM 128 kB.

Nie sądzę... To prosty EPM7128.

W tej chwili używam W27C512 (wykorzystana tylko jedna połówka, pin odpowiedzialny za najstarszy bit magistrali adresowej jest na stałe podciągnięty do plusa zasilania) ale można też użyć standardowych EPROM-ów kasowanych UV: 27C512 lub 27C256.

Reply to
Atlantis

Dziwne. Cyfrowka powinna byc dosc odporna. Ale widac magia moze kryc sie wszedzie :-)

J.

Reply to
J.F

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.