ZX Max 48: Różnice pomiędzy wersjami
m (→Opis: wersja wsadu 2.2 dodana, poprawki w tekscie) |
|||
(Nie pokazano 49 wersji utworzonych przez 2 użytkowników) | |||
Linia 1: | Linia 1: | ||
− | + | '''Informacje zawarte na tej stronie, nie mogą być używane w celach komercyjnych bez wiedzy i zgody autorów.''' | |
− | + | ||
== Opis == | == Opis == | ||
− | Następny klon ZX Spectrum autorstwa Dona "Superfo" w oparciu o | + | Następny klon ZX Spectrum autorstwa Dona "Superfo" w oparciu o układ Altera Max7000 EPM7128S. Tym razem płytka została zaprojektowana, aby pasowała do obudowy ZX81/TS1000 i może być zasilana z zasilacza o standardowej lub odwróconej polaryzacji. ZX Max 48K został wyposażony w: |
+ | * 48KB pamięci RAM, | ||
+ | * układ EPROM o podwójnej pojemności (2 x 16KB) na dwa obrazy ROMu, | ||
+ | * układ dźwiękowy AY z wyjściem stereo, | ||
+ | * interfejs joysticka w standardzie Kempston, | ||
+ | * wyjście wideo RGB i kompozytowe. | ||
+ | |||
− | '''Wydanie 1:''' ([https:// | + | '''Wydanie 1:''' ([https://drive.google.com/file/d/14q5F91o2aN4MkgpJwCRaJT0L8XZOoNis/view?usp=sharing schemat]) |
[[File:ZXMax01.jpg|thumb|300px|ZX Max 48 wydanie 1]] | [[File:ZXMax01.jpg|thumb|300px|ZX Max 48 wydanie 1]] | ||
Linia 11: | Linia 17: | ||
** dodatkowy rezystor 33R pomiędzy tranzystorem Q2 a głośnikiem LS1 | ** dodatkowy rezystor 33R pomiędzy tranzystorem Q2 a głośnikiem LS1 | ||
** dodatkowa dioda 1A i zworka w miejsce J9. Dioda ma na celu zabezpieczenie stabilizatora +5V przed błędną polaryzacją zasilania. | ** dodatkowa dioda 1A i zworka w miejsce J9. Dioda ma na celu zabezpieczenie stabilizatora +5V przed błędną polaryzacją zasilania. | ||
+ | ** dodatkowy rezystor 470R pomiędzy piny 20 i 24 CPLD oraz mostek pomiędzy pinem 20 z polem A13 złącza krawędziowego (/IORQULA - sygnał obsługiwany od implementacji 1.2) | ||
[[File:ZXmax_i1_audio_corr.jpg|thumb|300px|Mod.i1.1]] | [[File:ZXmax_i1_audio_corr.jpg|thumb|300px|Mod.i1.1]] | ||
− | * lista materiałowa ([https:// | + | * lista materiałowa ([https://drive.google.com/open?id=1uAGoVc4rSYHB813RSODc_JsKaCQwpIV- BOMi1]) |
− | * projekt płytki ( | + | * projekt płytki (PCBi1) |
− | + | * implementacje w CPLD: | |
− | + | ||
− | + | ||
− | * | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
{| border = "1" style="text-align: left; border-collapse: collapse; border-spacing: 2px" | {| border = "1" style="text-align: left; border-collapse: collapse; border-spacing: 2px" | ||
Linia 40: | Linia 33: | ||
! Opis | ! Opis | ||
|- | |- | ||
− | | | + | | 1.0 |
| 09/10/2017 | | 09/10/2017 | ||
| pierwsza edycja wsadu dla ZX Maxa 48 Issue 1 | | pierwsza edycja wsadu dla ZX Maxa 48 Issue 1 | ||
|- | |- | ||
− | | | + | | 1.1 |
| 23/11/2017 | | 23/11/2017 | ||
| dodano obsługę syngnału CLKB; sygnał jest wyprowadzony na złącze krawędziowe | | dodano obsługę syngnału CLKB; sygnał jest wyprowadzony na złącze krawędziowe | ||
|- | |- | ||
− | | | + | | 1.1zx81 |
| 24/12/2017 | | 24/12/2017 | ||
| zawartość jak wersji 1.1 z mapowaniem klawiatury od ZX81 | | zawartość jak wersji 1.1 z mapowaniem klawiatury od ZX81 | ||
|- | |- | ||
− | | | + | | 1.2 |
| 23/12/2017 | | 23/12/2017 | ||
| dodano obsługę sygnału /IORQULA (!!) Wymagana jest modyfikacja na płytce. Należy dodać rezystor 470R pomiędzy piny 20 i 24 CPLD i połączyć pin 20 z polem A13 złącza krawędziowego. | | dodano obsługę sygnału /IORQULA (!!) Wymagana jest modyfikacja na płytce. Należy dodać rezystor 470R pomiędzy piny 20 i 24 CPLD i połączyć pin 20 z polem A13 złącza krawędziowego. | ||
|- | |- | ||
− | | | + | | 1.2zx81 |
| 02/01/2018 | | 02/01/2018 | ||
| zawartość jak wersji 1.2 z mapowaniem klawiatury od ZX81 | | zawartość jak wersji 1.2 z mapowaniem klawiatury od ZX81 | ||
|- | |- | ||
− | | [https://drive.google.com/open?id= | + | | [https://drive.google.com/file/d/10CGZO9AQdCV7plcTtsVZx4ZNSBaRP8ps/view?usp=sharing 1.3] |
+ | | 02/02/2018 | ||
+ | | poprawiono generowanie przerwań (/INT) | ||
+ | |- | ||
+ | | [https://drive.google.com/file/d/1n4p37rJsf6kiaekilXstn9haJaVMHB4e/view?usp=sharing 1.3zx81] | ||
+ | | 02/02/2018 | ||
+ | | zawartość jak wersji 1.3 z mapowaniem klawiatury od ZX81 | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Nieudokumentowane sygnały do obsługi układu dźwiękowego AY, dostępne od wersji 1.2: | ||
+ | * BC1 - pin nr 25 | ||
+ | * BDIR - pin nr 27 | ||
+ | * CLKAY - pin nr 29 | ||
+ | |||
+ | |||
+ | '''Wydanie 2:''' ([https://drive.google.com/open?id=1JPjoDDNPOD9n9nN6F6SMLMJAWIRvdKht schemat]) | ||
+ | |||
+ | * zmiany w stosunku do wydania 1: | ||
+ | ** dodano układ dźwiękowy AY-3-8912 | ||
+ | ** dodano obsługę joysticka w standardzie Kempston | ||
+ | |||
+ | * zalecane poprawki w torze audio do wydania 2 pokazano na rysunku Mod.i2.1 | ||
+ | [[File:ZXmax_i2_audio_corr.png|thumb|300px|Mod.i2.1]] | ||
+ | |||
+ | * projekt płytki (PCBi2) | ||
+ | |||
+ | * lista materiałowa ([https://drive.google.com/open?id=1j0blMq6ZqPc3MUNToUGyCJ7EQPfDylAc BOMi2]) | ||
+ | |||
+ | * obudowa do samodzielnego wydruku na drukarce 3D w formacie ([https://drive.google.com/open?id=18Gol7BJoE36b972LGNKIXFxPp-__qqCY STL]). Projekt obudowy udostępniony dzięki uprzejmości Piotra "Zaxona". | ||
+ | |||
+ | |||
+ | '''Wydanie 2b:''' ([https://drive.google.com/open?id=1jhMlIFU-q8fSZx6HSWc0XXi81NpBUWkI schemat]) | ||
+ | [[File: ZXmax2b_01.jpg|thumb|300px|ZX Max 48 wydanie 2b]] | ||
+ | |||
+ | * uwzgledniono poprawki w torze audio do wydania 2 | ||
+ | |||
+ | * dodano wyjście RCA dla zespolonego sygnału wideo | ||
+ | |||
+ | * dodano brakujące sygnały na złączu krawędziowym | ||
+ | |||
+ | * lista materiałowa ([https://drive.google.com/open?id=1NE9uUxwdv762ywRsibATrYL-6_2acR3U BOMi2b]) | ||
+ | |||
+ | |||
+ | |||
+ | ''Implementacje w CPLD:'' | ||
+ | {| border = "1" style="text-align: left; border-collapse: collapse; border-spacing: 2px" | ||
+ | |- | ||
+ | ! Wersja | ||
+ | ! Data | ||
+ | ! Opis | ||
+ | |- | ||
+ | | 2.0 | ||
| 19/12/2017 | | 19/12/2017 | ||
| pierwsza wsadu dla ZX Maxa 48 Issue 2; dodana obsługa układu AY (BDIR, BC1, AYCLK) w stosunku do wydań z serii 1.x | | pierwsza wsadu dla ZX Maxa 48 Issue 2; dodana obsługa układu AY (BDIR, BC1, AYCLK) w stosunku do wydań z serii 1.x | ||
|- | |- | ||
− | | | + | | 2.1 |
| 23/12/2017 | | 23/12/2017 | ||
| dodano obsługę sygnału /IORQULA; sygnał jest wyprowadzony na złącze krawędziowe | | dodano obsługę sygnału /IORQULA; sygnał jest wyprowadzony na złącze krawędziowe | ||
|- | |- | ||
− | | | + | | 2.1zx81 |
| 25/12/2017 | | 25/12/2017 | ||
| zawartość jak wersji 2.1 z mapowaniem klawiatury od ZX81 | | zawartość jak wersji 2.1 z mapowaniem klawiatury od ZX81 | ||
|- | |- | ||
− | | | + | | 2.2 |
| 19/01/2018 | | 19/01/2018 | ||
− | | | + | | poprawiono generowanie sygnału zegarowego dla układu AY |
|- | |- | ||
| 2.2zx81 | | 2.2zx81 | ||
| 19/01/2018 | | 19/01/2018 | ||
− | | [[ | + | | zawartość jak wersji 2.2 z mapowaniem klawiatury od ZX81 |
+ | |- | ||
+ | | [https://drive.google.com/file/d/11RXzb9R_uwCUhOKFGMHSBDDzyIExGmfc/view?usp=sharing 2.3] | ||
+ | | 31/01/2018 | ||
+ | | poprawiono generowanie przerwań (/INT) | ||
+ | |- | ||
+ | | [https://drive.google.com/file/d/1Slftknnei6An-AXJ_j0BXx3lBxSHrwVh/view?usp=sharing 2.3zx81] | ||
+ | | 31/01/2018 | ||
+ | | zawartość jak wersji 2.3 z mapowaniem klawiatury od ZX81 | ||
+ | |- | ||
|} | |} | ||
− | Uwagi: | + | '''Uwagi:''' |
*Plików dla CPLD nie można używać zamiennie pomiędzy różnymi wersjami PCB. Kilka sygnałów (np. obsługa klawiatury) zostało inaczej wyprowadzonych z CPLD w poszczególnych wydaniach płytki. | *Plików dla CPLD nie można używać zamiennie pomiędzy różnymi wersjami PCB. Kilka sygnałów (np. obsługa klawiatury) zostało inaczej wyprowadzonych z CPLD w poszczególnych wydaniach płytki. | ||
*Pliki z dopiskiem "zx81" pozwalają na wykorzystanie klawiatury z ZX81. Dodatkowo należy skrzyżować diody D5 (A12) i D6 (A9) na PCB. | *Pliki z dopiskiem "zx81" pozwalają na wykorzystanie klawiatury z ZX81. Dodatkowo należy skrzyżować diody D5 (A12) i D6 (A9) na PCB. | ||
+ | |||
+ | |||
+ | |||
+ | '''Modyfikacja Wydania 2/2b do 128K''' ([https://drive.google.com/open?id=1tfIwzjtlyi3zLYVtw0PlYRoZzSiY9hxV schemat]) | ||
+ | |||
+ | Należy wymienić obie kości RAM na układy 628128, ROM 128K wgrać w układ EPROM lub EEPROM o czasie dostępu rzędu 150-200ns, Przeprogramować CPLD nowym wsadem oraz wykonać 6 połączeń zgodnie ze schematem. Nowe połączenia potrzebne są dla linii: RAM_A14, RAM_A15, VRAM_A14, VRAM_A15, ROM_A14 i D5. Po przeróbce otrzymamy obsługę stronnicowania pamięci zgodną z ZX Spectrum 128K. TImingi zależą od zastosowanej implementacji oraz rezonatora kwarcowego Y1. | ||
+ | |||
+ | * implementacje w CPLD są dostępne na stronie [[ZX Max 128]]. | ||
+ | |||
+ | |||
+ | '''Modyfikacje wszystkich wersji ZX Maxa''' | ||
+ | |||
+ | * Oryginalny układ wejściowy audio wymaga źródeł o silnym sygnale (>1Vp-p). W przypadku problemu z wczytywaniem programów przez gniazdo EAR, należy wymienić tranzystor Q1 (BC548) na tranzystor w układzie Darlingtona np. BC517 oraz dołożyć rezystor 330K-470K pomiędzy zasilanie (+5V), a bazę tego tranzystora. Po modyfikacji, nie powinno być problemów z wczytywaniem programów ze źródeł o niskim poziomie sygnału audio, tj. telefonu komórkowego, laptopa lub przenośnego odtwarzacza MP3. | ||
+ | |||
+ | * Na monitorach LCD nie są widoczne kolory o podniesionej jaskrawości (BRIGHT), dlatego należy wymienić rezystory R30, R32 i R34 ze 180Ω na 390Ω lub 470Ω. Dodatkowo zalecana jest wymiana diód D11, D12 i D13 z 1N4148 na diody Schottky'ego np. BAT42, BAT85 lub podobne. Więcej informacji znajduje się w wątku na forum ([http://www.speccy.pl/forum/index.php?topic=3925.msg66245#msg66245 Symulacje]). | ||
+ | |||
+ | |||
+ | == Dodatki == | ||
+ | Pliki do wykonania płytek klawiatur na mikroprzełącznikach: | ||
+ | * przełączniki 6 x 6mm (Gerbery) | ||
+ | * przełączniki 12 x 12mm (Gerbery) | ||
+ | |||
== Linki == | == Linki == | ||
− | Wątki na forum speccy.pl: | + | Wątki na forum speccy.pl: |
− | * [http://www.speccy.pl/forum/index.php?topic=3691.0 ZX Mini 48 i ZX Max 48] | + | *[http://www.speccy.pl/forum/index.php?topic=3691.0 ZX Mini 48 i ZX Max 48] |
− | * [http://www.speccy.pl/forum/index.php?topic=3925.0 ZX Max 48 | + | *[http://www.speccy.pl/forum/index.php?topic=3925.0 ZX Max 48 Issue 2] |
Oprogramowanie do Altery Max7000 | Oprogramowanie do Altery Max7000 | ||
Linia 94: | Linia 170: | ||
* biblioteka [http://download.altera.com/akdlm/software/acdsinst/13.0sp1/232/ib_installers/max_web-13.0.1.232.qdz Altera Max7000S] | * biblioteka [http://download.altera.com/akdlm/software/acdsinst/13.0sp1/232/ib_installers/max_web-13.0.1.232.qdz Altera Max7000S] | ||
− | |||
− | |||
− | |||
− | |||
− | [[Kategoria:Sprzęt]][[Kategoria:Komputery]] | + | [[Kategoria:Sprzęt]][[Kategoria:Komputery]][[Kategoria:Projekty]] |
Aktualna wersja na dzień 10:29, 16 gru 2018
Informacje zawarte na tej stronie, nie mogą być używane w celach komercyjnych bez wiedzy i zgody autorów.
Opis
Następny klon ZX Spectrum autorstwa Dona "Superfo" w oparciu o układ Altera Max7000 EPM7128S. Tym razem płytka została zaprojektowana, aby pasowała do obudowy ZX81/TS1000 i może być zasilana z zasilacza o standardowej lub odwróconej polaryzacji. ZX Max 48K został wyposażony w:
- 48KB pamięci RAM,
- układ EPROM o podwójnej pojemności (2 x 16KB) na dwa obrazy ROMu,
- układ dźwiękowy AY z wyjściem stereo,
- interfejs joysticka w standardzie Kempston,
- wyjście wideo RGB i kompozytowe.
Wydanie 1: (schemat)
- zalecane poprawki:
- w sekcji wej/wyj audio pokazano na rysunku Mod.i1.1
- dodatkowy rezystor 33R pomiędzy tranzystorem Q2 a głośnikiem LS1
- dodatkowa dioda 1A i zworka w miejsce J9. Dioda ma na celu zabezpieczenie stabilizatora +5V przed błędną polaryzacją zasilania.
- dodatkowy rezystor 470R pomiędzy piny 20 i 24 CPLD oraz mostek pomiędzy pinem 20 z polem A13 złącza krawędziowego (/IORQULA - sygnał obsługiwany od implementacji 1.2)
- lista materiałowa (BOMi1)
- projekt płytki (PCBi1)
- implementacje w CPLD:
Wersja | Data | Opis |
---|---|---|
1.0 | 09/10/2017 | pierwsza edycja wsadu dla ZX Maxa 48 Issue 1 |
1.1 | 23/11/2017 | dodano obsługę syngnału CLKB; sygnał jest wyprowadzony na złącze krawędziowe |
1.1zx81 | 24/12/2017 | zawartość jak wersji 1.1 z mapowaniem klawiatury od ZX81 |
1.2 | 23/12/2017 | dodano obsługę sygnału /IORQULA (!!) Wymagana jest modyfikacja na płytce. Należy dodać rezystor 470R pomiędzy piny 20 i 24 CPLD i połączyć pin 20 z polem A13 złącza krawędziowego. |
1.2zx81 | 02/01/2018 | zawartość jak wersji 1.2 z mapowaniem klawiatury od ZX81 |
1.3 | 02/02/2018 | poprawiono generowanie przerwań (/INT) |
1.3zx81 | 02/02/2018 | zawartość jak wersji 1.3 z mapowaniem klawiatury od ZX81 |
Nieudokumentowane sygnały do obsługi układu dźwiękowego AY, dostępne od wersji 1.2:
- BC1 - pin nr 25
- BDIR - pin nr 27
- CLKAY - pin nr 29
Wydanie 2: (schemat)
- zmiany w stosunku do wydania 1:
- dodano układ dźwiękowy AY-3-8912
- dodano obsługę joysticka w standardzie Kempston
- zalecane poprawki w torze audio do wydania 2 pokazano na rysunku Mod.i2.1
- projekt płytki (PCBi2)
- lista materiałowa (BOMi2)
- obudowa do samodzielnego wydruku na drukarce 3D w formacie (STL). Projekt obudowy udostępniony dzięki uprzejmości Piotra "Zaxona".
Wydanie 2b: (schemat)
- uwzgledniono poprawki w torze audio do wydania 2
- dodano wyjście RCA dla zespolonego sygnału wideo
- dodano brakujące sygnały na złączu krawędziowym
- lista materiałowa (BOMi2b)
Implementacje w CPLD:
Wersja | Data | Opis |
---|---|---|
2.0 | 19/12/2017 | pierwsza wsadu dla ZX Maxa 48 Issue 2; dodana obsługa układu AY (BDIR, BC1, AYCLK) w stosunku do wydań z serii 1.x |
2.1 | 23/12/2017 | dodano obsługę sygnału /IORQULA; sygnał jest wyprowadzony na złącze krawędziowe |
2.1zx81 | 25/12/2017 | zawartość jak wersji 2.1 z mapowaniem klawiatury od ZX81 |
2.2 | 19/01/2018 | poprawiono generowanie sygnału zegarowego dla układu AY |
2.2zx81 | 19/01/2018 | zawartość jak wersji 2.2 z mapowaniem klawiatury od ZX81 |
2.3 | 31/01/2018 | poprawiono generowanie przerwań (/INT) |
2.3zx81 | 31/01/2018 | zawartość jak wersji 2.3 z mapowaniem klawiatury od ZX81 |
Uwagi:
- Plików dla CPLD nie można używać zamiennie pomiędzy różnymi wersjami PCB. Kilka sygnałów (np. obsługa klawiatury) zostało inaczej wyprowadzonych z CPLD w poszczególnych wydaniach płytki.
- Pliki z dopiskiem "zx81" pozwalają na wykorzystanie klawiatury z ZX81. Dodatkowo należy skrzyżować diody D5 (A12) i D6 (A9) na PCB.
Modyfikacja Wydania 2/2b do 128K (schemat)
Należy wymienić obie kości RAM na układy 628128, ROM 128K wgrać w układ EPROM lub EEPROM o czasie dostępu rzędu 150-200ns, Przeprogramować CPLD nowym wsadem oraz wykonać 6 połączeń zgodnie ze schematem. Nowe połączenia potrzebne są dla linii: RAM_A14, RAM_A15, VRAM_A14, VRAM_A15, ROM_A14 i D5. Po przeróbce otrzymamy obsługę stronnicowania pamięci zgodną z ZX Spectrum 128K. TImingi zależą od zastosowanej implementacji oraz rezonatora kwarcowego Y1.
- implementacje w CPLD są dostępne na stronie ZX Max 128.
Modyfikacje wszystkich wersji ZX Maxa
- Oryginalny układ wejściowy audio wymaga źródeł o silnym sygnale (>1Vp-p). W przypadku problemu z wczytywaniem programów przez gniazdo EAR, należy wymienić tranzystor Q1 (BC548) na tranzystor w układzie Darlingtona np. BC517 oraz dołożyć rezystor 330K-470K pomiędzy zasilanie (+5V), a bazę tego tranzystora. Po modyfikacji, nie powinno być problemów z wczytywaniem programów ze źródeł o niskim poziomie sygnału audio, tj. telefonu komórkowego, laptopa lub przenośnego odtwarzacza MP3.
- Na monitorach LCD nie są widoczne kolory o podniesionej jaskrawości (BRIGHT), dlatego należy wymienić rezystory R30, R32 i R34 ze 180Ω na 390Ω lub 470Ω. Dodatkowo zalecana jest wymiana diód D11, D12 i D13 z 1N4148 na diody Schottky'ego np. BAT42, BAT85 lub podobne. Więcej informacji znajduje się w wątku na forum (Symulacje).
Dodatki
Pliki do wykonania płytek klawiatur na mikroprzełącznikach:
- przełączniki 6 x 6mm (Gerbery)
- przełączniki 12 x 12mm (Gerbery)
Linki
Wątki na forum speccy.pl:
Oprogramowanie do Altery Max7000
- Altera Quartus II 13.0sp1
- biblioteka Altera Max7000S