Autor Wątek: Jupiter ACE - specyfikacja klonu  (Przeczytany 7447 razy)

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Jupiter ACE - specyfikacja klonu
« dnia: 2019.03.20, 11:11:03 »
Chyba czas poważnie pomyśleć nad nowszym wcieleniem Jupitera bez archaicznych układów typu SRAM 2114 czy EPROM 2532/2732.
KL
-----
R Tape loading error 0:1

pear

  • Administrator
  • *****
  • Wiadomości: 5237
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #1 dnia: 2019.03.20, 11:16:30 »
O, i to jest bardzo dobra koncepcja :D
ZX/Enterprise/CPC/Robotron/C128D

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #2 dnia: 2019.03.24, 07:45:07 »
W kuluarach forum pojawiła się dyskusja w jakim standardzie powinno być złącze krawędziowe w klonie Juppiego. Oryginalne czy zgodne z ZX81, oto jest pytanie.

Moim zdaniem, złącze w standardzie ZX81 otworzy nowe możliwości przed Juppim, takim jak wspólne interfejsy bez potrzeby stosowania "Twistera". Kontrargumentem jest, że straci się możliwość podłączanie oryginalnych interfejsów Ale tych interfejsów nie było za wiele, a i tak większość trzeba odtwarzać ze szczątkowych informacji w sieci. Nawet część dedykowanych urządzeń do Juppiego wymagała "Twistera". Ogólnie bałagan.

Poza tym konia z rzędem temu, kto ma choćby zewnętrzny moduł 16K RAM wpinany wprost do Juppiego. Taniej i prościej jest kupić dowolny moduł do ZX81, niż szukać dedykowanego.

Od razu napiszę, że klon mógłby mieć wbudowane 1K+32K RAM i AYka. W tym przypadku rozszerzenia pamięci i bzyczki odpadają z listy potencjalnych kandydatów do podłączania.
« Ostatnia zmiana: 2019.03.24, 08:09:20 wysłana przez Klaud »
KL
-----
R Tape loading error 0:1

jackfinch

  • ****
  • Wiadomości: 368
  • Miejsce pobytu:
    uk
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #3 dnia: 2019.03.24, 08:10:43 »
A jakie interfejsy można by wtedy podłączyć od zx81?

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #4 dnia: 2019.03.24, 08:19:23 »
Drukarkę ZX-printer lub Alphacom 32, zewnętrzną klawiaturę (Memotech lub współczesne), joystick (o ile znajdziesz software obsługujący go) oraz wszystko co znajdziesz np w książce "Easy Add-on Projects for Spectrum, ZX81 & Ace".

Myślę, że interfejs Centronics do ZX81 też podejdzie. W sumie wszystko od ZX81, co nie wymaga zewnętrznego ROMu. Na ZXpanda nie licz.
« Ostatnia zmiana: 2019.03.24, 08:28:54 wysłana przez Klaud »
KL
-----
R Tape loading error 0:1

pear

  • Administrator
  • *****
  • Wiadomości: 5237
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #5 dnia: 2019.03.24, 08:25:25 »
wszystko co znajdziesz np w książce "Easy Add-on Projects for Spectrum, ZX81 & Ace".
Na WoS link się stracił, ale znalazłem tę książkę wraz z setką innych tutaj:
https://computerarchive.org/files/comp/books/ZX%20spectrum/
ZX/Enterprise/CPC/Robotron/C128D

damik

  • Rosin sniffer
  • *****
  • Wiadomości: 1164
  • Miejsce pobytu:
    Bytom
  • ZX Everyday
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #6 dnia: 2019.03.24, 12:28:49 »
A tak z innej beczki...
Można by w klonie dodać opcję Turbo, aktywowaną przełącznikiem (lub po odpowiedniej modyfikacji programowo) opisaną tutaj:
http://www.jupiter-ace.co.uk/hardware_ace_overclocking.html

Nie jest to jakieś skomplikowane do wykonania i z szybszymi pamięciami 6116 powinno się wyrobić, bo przy standardowych 2114 może być problem ze znalezieniem takich o wymaganym czasie dostępu.

Tylko czy ktoś to już testował w praktyce i czy to ma jakiś sens ?
Wszystkiego po trochu: schwarz, mydło i powidło...

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #7 dnia: 2019.03.24, 12:43:51 »
Testował ;)

Właśnie olśniło mnie, ze pear robił synchroniczny przełącznik zegara dla CPU. Aby programowo zmieniać taktowanie CPU w locie, będzie trochę zabawy. Warto poczytać tu: Techniques to make clock switching glitch free
« Ostatnia zmiana: 2019.03.26, 22:32:55 wysłana przez Klaud »
KL
-----
R Tape loading error 0:1

damik

  • Rosin sniffer
  • *****
  • Wiadomości: 1164
  • Miejsce pobytu:
    Bytom
  • ZX Everyday
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #8 dnia: 2019.03.26, 22:30:36 »
@Klaud
Link chyba nie teges...

Ale problem nie jest materiałem na doktorat ;) da się to ogarnąć, tylko trzeba określić na jakim porcie ma się to odbywać by nie kolidowało z dotychczasowym softem oraz uszyć do tego prostą procedurę w Forth...

Zerknę w wolnej chwili jak to było rozwiązanie w Meritum 3, bo tam też był zegar proca przełączany programowo rozkazem Basica, Slow dla zachowania kompatybilności z modelem 1 i dodatkowo tryb Fast natywnie.
.

Wszystkiego po trochu: schwarz, mydło i powidło...

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #9 dnia: 2019.03.26, 22:33:10 »
Teraz chyba działa.

W Jupiterze, tylko jeden port jest używany 0xFE, a reszta w sumie zależy od inwencji twórcy interfejsu. Lista dodatkowego sprzętu nie jest długa:
- joy na porcie: 0x01 (dekoder na A1)
- AY na 0xBFFD i 0xFFFD (był też na 0xDD i 0xDF)
- Deep Thought: w sumie 4 porty
- ZX Printer na 0xFB (ale dekodowany tylko po A2)

Resztą nie ma co sobie głowy zawracać.
« Ostatnia zmiana: 2019.03.26, 22:50:17 wysłana przez Klaud »
KL
-----
R Tape loading error 0:1

damik

  • Rosin sniffer
  • *****
  • Wiadomości: 1164
  • Miejsce pobytu:
    Bytom
  • ZX Everyday
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #10 dnia: 2019.03.26, 22:49:47 »
Tak to jest zrobione w Meritum 3

Jakość może średnia, ale daje sie rozczaić

PCLK wprost na zegar proca
Wszystkiego po trochu: schwarz, mydło i powidło...

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #11 dnia: 2019.03.26, 22:52:56 »
Tak, ale w tym przypadku przełączanie jest niesynchroniczne i możesz utracić zbocze opadające. Lepiej wziąć 2 przerzutniki:

KL
-----
R Tape loading error 0:1

damik

  • Rosin sniffer
  • *****
  • Wiadomości: 1164
  • Miejsce pobytu:
    Bytom
  • ZX Everyday
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #12 dnia: 2019.03.26, 22:57:54 »
Jakkolwiek byle by nie destabilizowało procka, w Z80 dość istotny jest poziom sygnału zegarowego, na moim schemacie jest przykład kondycjonera tego sygnału.
W Meritum'ie 3 działało to bezproblemowo, bawiłem się tym dość często kiedyś...
Wspominał o tym problemie dopasowania sygnału CLK dla Z80 też niejaki Pan Gardynik w opisie swojego MIK-80.
« Ostatnia zmiana: 2019.03.26, 23:05:02 wysłana przez damik »
Wszystkiego po trochu: schwarz, mydło i powidło...

Klaud

  • Moderator
  • *****
  • Wiadomości: 5358
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • KL
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #13 dnia: 2019.03.26, 22:59:51 »
Bo jest linia opóźniająca oraz oba zegary mają te samą podstawę ;) Zamiast dobierać rezystory i kondensatory wolałbym wziąć jeden IC (74LS74) i mieć to z głowy :D

W tym linku co podałem, jest to nieźle opisane.
KL
-----
R Tape loading error 0:1

damik

  • Rosin sniffer
  • *****
  • Wiadomości: 1164
  • Miejsce pobytu:
    Bytom
  • ZX Everyday
Odp: Jupiter ACE - specyfikacja klonu
« Odpowiedź #14 dnia: 2019.03.26, 23:22:35 »
Zmieszam...  :P

Idealnie może by było zrobić 3 stany dla taktu proca:
1. Wymuszony ręcznie Fast
2. Wymuszony ręcznie Slow/Standard
3. Software'owy gdzie default po Reset jest tryb Slow/Standard

Wszystkie tryby przełączane synchronicznie w locie...
« Ostatnia zmiana: 2019.03.26, 23:30:40 wysłana przez damik »
Wszystkiego po trochu: schwarz, mydło i powidło...