piątek, 19 listopada 2021

Montaż Tapecart MICRO SD dla Commodore 64

Tapecart Micro SD to urządzenie, które umożliwia bardzo szybkie i proste ładowanie plików z rozszerzeniem .PRG i .TCRT do Commodore 64.

Płytki są kupienia tu -> Link

Gotowe zmontowane urządzenie wygląda tak.


Widok od spodu.


Elementy potrzebne do budowy:

1. Arduino Pro Mini 5V 16 MHZ

2. Transoptor 4N25 DIP-6 - do kupienia tu -> Link

3. Rezystor 330 Ohm 0,25W

4. Moduł karty Micro SD - do kupienia tu -> Link

5. Złącze krawędziowe 2x6 pin Pitch 3,96 mm - do kupienia tu -> Link

Do zaprogramowania Arduino Mini Pro będziemy jeszcze potrzebować konwerter TTL na chipie FTDI


Moduł karty Micro SD wygląda tak.

Montaż zaczynamy od przylutowania goldpinów do Arduino Pro Mini, ja robię to płytce stykowej, wkładając najpierw goldpiny do płytki stykowej, goldpiny zagięte pod katem prostym lutujemy do środka płytki Arduino, jak na pierwszym zdjęciu.

Po przylutowaniu goldpinów do Arduino przystępujemy do programowania.

Łączymy przewodami Arduino z konweterem FTDI jak pokazano niżej.

Po podłączeniu konwertera TTL do portu USB komputera powinno samo wykryć i zainstalować sterowniki FTDI, jeżeli nie, to sterownik FTDI są do pobrania tu -> Link

Plik tapecart.hex który wgramy do Arduino Mini Pro jest do pobrania tu -> Link

Na tej samej stronie znajdziemy plik browser.prg, który kopiujemy na kartę Micro SD do głównego folderu.

Do zaprogramowania Arduino służy program Xloader do pobrania tu -> Link

Po rozpakowaniu uruchamiamy program Xloader, wybieramy wcześniej ściagnięty plik tapecart.hex, odpowiedni port com i resztę jak niżej.
Klikamy Upload i zaprogramuje się Arduino Mini Pro.

Lutujemy Arduino Mini Pro do płytki i pozostałe elementy, goldpiny czytnika kart Micro SD trzeba wyprostować oraz między czytnik a płytkę wkleić izolację, może być z taśmy dwustronnej lub izolacyjnej.

Na kartę SD do głównego folderu wgrywamy plik brower.prg oraz pliki .PRG lub .TCRT.

Wkładamy kartę Micro SD do tapecart.

Tapecart przy wyłączonym Commodore 64 do gniazda magnetofonu.



Wciskamy równocześnie SHIFT + RUN na klawiaturze Commdore 64 i powinien uruchomić się program browser.prg.



Po uruchomieniu programu browser.prg pliki wybieramy strzałkami i zatwierdzamy klawiszem Return.






sobota, 7 sierpnia 2021

AY-3-8910 Player Arduino OLED montaż płytki PCB

Płytki PCB możemy zamówić na PCBWay, polecam tego producenta, wykonuje płytki na najwyższym poziomie -> Link

 Płytka do odtwarzacza AY-3-8910 na Arduino z wyświetlaczem OLED wygląda jak niżej.


 Druga strona


Do budowy playera AY będą potrzebne:

1. Arduino Mini Pro
2. Układ AY-3-8910
3. Wyświetlacz OLED SSD1306
4. Podstawki DIL40 i DIL16
5. Układ 74HC595
6. Zgodnie z oznaczeniem na płycie kondensatory: C1 - 10 uF, C2, C3 - 1 uF, C4, C5 - 100 nF
7. Rezystory: R1 - 1,5K, R2, R3, R4 - 1K, R5, R6, R7 - 470R
8. Gniazdo mini jack
9. Gniazdo zasilania.
10. 4 goldpiny + 4 przewody goldpin męskie do podłączenia wyświetlacza OLED
11. Czytnik kart SD do Arduino
12. Przycisk tact switch kątowy
13. Obudowa Kradex Z5A

Gniazdo mini jack stosujemy takie jak pokazano niżej.



Lutowanie zaczynamy od najniższych elementów.



Lutujemy goldpiny do Arduino Mini Pro.


Programujemy Arduino Mini Pro wsadem -> Link

Po zaprogramowaniu Arduino lutujemy je do płytki nie zapominając o pinach A4 i A5.

Lutujemy pozostałe elementy, czytnik kart SD lutujemy od spodu płytki, podklejając taśmą izolacyjną, aby obudowa czytnika kart nie powodowała zwarcia na płytce.


Zmontowana płytka.


Płytka pasuje do obudowy Kradex Z5A.


Pozostało podłączyć wyświetlacz OLED przewodami zgodnie z oznaczeniem na płytce i wyświetlaczu.

W panelach należy wyciąć otwory pod czytnik kart SD, wyświetlacz, przycisk i z tyłu pod gniazdo jack i zasilania.

Zasilamy typowym zasilaczem 5V.

Gotowy odtwarzacz.


A tak gra i prezentuje się gotowy player.


W poprzednim wpisie na blogu opisałem jak uruchomić odtwarzacz -> Link

piątek, 2 lipca 2021

Player AY-3-8912 w obudowie

Player AY-3-8912 umieściłem w obudowie Z5A firmy Kradex.

Z przodu posiada wyświetlacz SSD1306, przycisk do zmieniania utworów i wejście na kartę SD.


Z tyłu posiada wejście zasilania na zasilacz 5V i wyjście audio na chinch, wyjście kanałów układu AY-3-8912 jest w trybie stereo.



Player AY odtwarza pliki w formacie PSG z karty SD.

Aby odtwarzać pliki PSG przygotowujemy kartę SD, formatujemy ją na format FAT, lepiej użyć kart o małej pojemności.

W internecie znajdziemy zbiór plików muzycznych -> Link

Pliki mają format .AY do przekonwertowania na PSG użyjemy odtwarzacza ZX Spectrum Sound Chip Emulator do pobrania tu -> Link

Po uruchomieniu emulatora i otwarciu plików AY klikamy na PL wybieramy plik, który chcemy przekonwertować i klikamy prawym klawiszem myszy i wybieramy Convert to -> PSG

Tak zapisane pliki wgrywamy na kartę SD. Pliki muszą znajdować się w folderze głównym, nie mogą być w folderach.

Zbiór kilkunastu plików PSG jest do pobrania tu -> Link

Działanie playera widać na poniższym filmie.



poniedziałek, 21 czerwca 2021

Player AY-3-8912 na Arduino

W moich zasobach zostały mi 2 układy AY-3-8912, jest to 3-kanałowy programowalny generator dźwięku zaprojektowany przez firmę General Instrument wykorzystywany w popularnych komputerach ZX Spectrum, MSX, Atari ST, Amstrad CPC. 

Postanowiłem ożywić ten układ i wykorzystać go do odtwarzania muzyki z retro komputerów, tutaj z pomocą przychodzi popularne Arduino. 

Do budowy wykorzystałem: 
1. Arduino Mini Pro 
2. Układ AY-3-8912 
3. Podstawka DIL-28 i DIL16 
4. Czytnik kart SD dla Arduino 
5. Wyświetlacz OLED SSD1306 
6. Układ 74HC595 - rejestr przesuwny 
7.Płytka uniwersalna 6x8 cm 
8. Rezystory 1K, 470R, 4.7K 
9. Kondensatory 10 nF i 2.2 nF 
10. Przełącznik Tact Switch

Jak wyjście dźwięku zastosowałem przewód z 2 wtykami typu chinch.

Układ połączeń jest jak na zdjęciu niżej.
Piny układu AY-3-8912  łączymy od DA 0 do DA 7 odpowiednio do pinów  Q0 do Q7 układu 74HC595.

Dodatkowo 0E układu 74HC595 łączymy do masy GND, a MR do VCC.

Dalej:
DS do 6 pinu Arduino, 
ST_CP do 5 pinu Arduino 
SH_CP do 4 pinu Arduino.

Piny układu AY: 
BC1 do pinu 8 Arduino
BDir do pinu 9 Arduino
Reset do pinu 2 Arduino
Clock do pinu 3 Arduino
BC2 i A8 do VCC
Podłączamy VCC i GND układu AY do pinów nr 3 i 6.

Czytnik kart SD:
Arduino - SD Card Reader:
VCC - VCC
10 - CS
11- MOSI
13 - SCK
12 - MISO
GND-GND

Wyświetlacz OLED SSD1306 łączymy do Arduino:
SDA- A4
SCL- A5
VCC-VCC
GND-GND

Do przełączania utworów wykorzystamy przycisk TACT Switch podłączony do pin 7 Arduino i masy.

Teraz podłączamy wyjście kanałów A,B,C układu AY.

Do testów wykorzystałem schemat z komputerów ORIC gdzie wyjście kanałów A,B,C układu AY jest miksowane do kanałów mono, używamy 3 rezystorów 1K, 470R, 4.7K i 2 kondensatorów 10 nF i 2.2 nF , dzięki temu uzyskamy dobrej jakości dźwięk.

Schemat podłączenia kanałów A,B,C układu AY:



Teraz przygotowujemy kartę SD, formatujemy ją na format FAT, lepiej użyć kart o małej pojemności, odtwarzacz będzie odtwarzał pliki w formacie PSG.

W internecie znajdziemy zbiór plików muzycznych -> Link

Pliki mają format .AY do przekonwertowania na PSG użyjemy odtwarzacza ZX Spectrum Sound Chip Emulator do pobrania tu -> Link

Po uruchomieniu emulatora i otwarciu plików AY klikamy na PL wybieramy plik, który chcemy przekonwertować i klikamy prawym klawiszem myszy i wybieramy Convert to -> PSG

Tak zapisane pliki wgrywamy na kartę SD.

Do Arduino wgrywamy kod ze strony -> Link

W kodzie programu zmieniłem wejście z przycisku 7 z input na input_pullup, bo działy się dziwne rzeczy, wystarczyło dotknąć przewodów i przełączały się utwory, poprawiony kod do pobrania tu -> Link

Układy AY-3-8912 są drogie i trudno dostępne, tańsze i bardziej dostępne są układy AY-3-8910, które mają takie same wyprowadzenia i możemy je wykorzystać w projekcie odtwarzacza.


Aby uzyskać dźwięk stereo z wyjść kanałów A,B,C można wykorzystać schemat miksera audio z komputerów ZX Spectrum.

Można zastosować prostszy układ miksera kanałów A,B,C jak pokazano niżej.


Test odtwarzacza na filmie niżej, zastosowano mikser kanałów A,B,C w trybie stereo jak na schemacie powyżej.



wtorek, 25 maja 2021

Tapecart dla Commodore 64

Tapecart to proste w obsłudze urządzenie ładujące pliki z rozszerzeniem .PRG i .TCRT do Commodore 64. Wygląda tak.
Wkładamy je do portu magnetofonu przy wyłaczonym Commodore 64 jak pokazano niżej.
Przedstawiony egzemplarz posiada obsługę kart Micro SD, na kartę Micro SD wgrywamy plik broswer.prg do głównego folderu, jest do pobrania tu -> Link Pliki .PRG i .TCRT mogą znajdować się w folderach. Po włożeniu do portu magnetofonu włączamy Commodore 64 i wciskamy klawisze „SHIFT” + „RUN” Po chwili pokaże się.
Nastepnie pojawi się browser.
Wybieramy pliki .PRG strzałkami i zatwierdzamy klawiszem Return, po chwili załaduje się plik. Do wyodrębnienia plików z programami z obrazu dysków d64 używam programu DirMaster -> Link

Po zainstalowaniu i uruchomieniu programu otwieramy obraz dysku D64, wybieramy z menu File-> Export i zostanie zapisany plik w formacie PRG.

piątek, 12 czerwca 2020

Programowanie pamięci M27C800 i 27C160/322/400 programatorem TL866 TL866II Plus

Aby zaprogramować pamięci 27C160/322/400/800 programatorami TL866 i TL866II Plus wymagany jest adapter, taki jak niżej.


Przełącznik po lewej stronie dla pamięci 27C160/322/400/800 ustawiamy jak niżej.


Dla pamięci 27c322 ustawiamy w górnym położeniu.

Czerwony przełącznik służy do przełączania banków pamięci, które programujemy.

Pamięć 27C800 posiada 2 banki pamięci po 512 kb, pamieć 27C160 posiada 4 banki pamięci po 512 kb, 27c322 8x512 kb, a 27C400 1x512 kb.

Banki które programujemy ustawiamy czerwonym przełącznikiem DIP.



Dla 27C400 wszystkie przełączniki ustawiamy w pozycji ON, Dla 27C800 pierwszy bank pamięci programujemy z ustawieniem - wszystkie na ON, a drugi bank pamięci pierwszy na OFF i dwa pozostałe na ON, tak jak pokazano w tabeli powyżej.

Ustawienia pozostałych banków dla innych pamięci pokazano w tabeli.

Pamięć wkładamy do podstawki tak jak pokazano niżej.


W programie do obsługi programatora wybieramy pamięć AM27C4096 i odznaczamy Sprawdź Id, a Puls Delay ustawiamy na 50, tak jak pokazano niżej.


Po zaprogramowaniu przełączamy na następny bank przełącznikiem DIP.

Pamięci tego typu stosowane są między innymi jako kickstart w Amigach.

Adapter do kupienia tu -> Link

piątek, 1 maja 2020

Projekt Amiga 500

Pewnego dnia zakupiłem samą płytę do Amigi 500 i postanowiłem umieścić ją w obudowie komputerowej.

Ukończona obudowa prezentuje się tak.


Znalazłem na Allegro starą dosyć niską i szeroką obudowę komputera PC.

Pierwszą rzeczą jaką zrobiłem, to zaślepienie otworu po zasilaczu kawałkiem blachy i poszerzenie otworu na dole na gniazda Amigi 500.



W kawałku blachy wyciąłem otwór i zamontowałem gniazdo zasilania.

Jak zasilacz wykorzystałem zasilacz CISCO ADP-30RB, posiada on odpowiednie napięcia do zasilania Amigi.


Po rozebraniu zasilacza widać przewody:
- pomarańczowy to +12V
- zielony -12V
- czerwony +5V
- czarny masa GND
- biały i niebieski łączymy do włącznika


Od spodu płyty wlutowałem przewody z gniazdem starego zasilacza ATX, czerwony to 5V, żółty 12V, czarny GND, a drugi czarny wykorzystałem jak -12V.


Gniazdo z opisanymi napięciami.


Od zasilacza pociągnąłem wtyk z odpowiednimi napięciami.
Widok na zamontowaną płytę Amigi 500 i zasilacz.


KLAWIATURA PS/2

Teraz przyszła kolej na podłączenie klawiatury, wykorzystałem starą klawiaturę na PS/2.
Zbudowałem układ na PIC16F84A według schematu.



Wsad do PIC16F84A jest do pobrania tu -> Link

Układ PIC zaprogramowałem programatorem JDM, ale można innym dowolnym.

Układ do obsługi klawiatury zbudowałem na płytce uniwersalnej.


Później dodatkowo dolutowałem 2 rezystory 220 ohm do pinów Status i Inuse, podłączyłem do nich diody led z obudowy, które pokazują włączone zasilanie i pracę dysku twardego, Reset tak jak schemacie podłączyłem do przycisku power z obudowy i działa jako reset Amigi.

Status pokazuje, że włączona jest Amiga, a Inuse pracę stacji dyskietek tak jak na filmie.
Po otworze na gniazdo kluczyka dopasowałem okrągły włącznik zasilania.


MYSZKA NA PS/2

Teraz przyszła kolej na wykonanie interfejsu dla myszki PS/2 dla Amigi.

Wykorzystałem do tego celu:
- Arduino Mini Pro
- obudowę HH-004 jasną o wymiarach 35x50x20 mm
- gniazdo PS/2 na kabel
- wtyk DB9 żeński z obudową
- kawałki przewodów


Arduino programujemy wsadem -> Link
Wymaga jest biblioteka PS/2, którą po rozpakowaniu kopiujemy do folderu Moje Dokumenty/Arduino/libraries -> Link

Poszczególne piny Arduino z wtykiem DB9 i gniazdem PS/2 łączymy według schematu:


Wtyk DB9 ma opisane numery pinów.


Widok gniazda PS/2 od przodu.


Zmontowany interfejs, Arduino Mini Pro bez problemu mieści się w obudowie.


Gotowy interfejs z myszką kulkową, nie testowałem myszek optycznych.


Testowanie myszki i klawiatury.


Przedni panel poddałem wybielaniu i zaprojektowałem nalepki, teraz wygląda tak.


GOTEK DLA AMIGI

Doczekałem się zamówionego Goteka z Chin, jak go zaprogramować opisałem w innym projekcie -> Link

Po zaprogramowaniu na pendrive umieszczamy pliki zawarte w ściągniętym pliku ze strony Flash Floppy oraz gry ADF, mogą być w folderach.

Przygotowany pendrive z plikami.


Wykorzystałem wyświetlacz LCD, należy podłączyć rezystory podciągające 4,7K, co zostało opisane na stronie Flash Floppy Wiki -> Link

Na otwory w obudowie zamówiłem pleksi wraz z wycięciem otwory pod wyświetlacz LCD, po zamontowaniu wygląda tak.


Po zamontowaniu goteka, odpalamy Autoboot, wybieramy pliki ADF i umieszczamy w wirtualnych stacjach dyskietek, po zapisie robimy Save i restart i wybieramy wirtualne stacje dyskietek przyciskami na goteku.



Ciąg dalszy nastąpi...


Montaż SIDKick Pico

SIDKick pico jest to zamiennik chipów dźwiękowych SID 6581/8580 w komputerach Commodore 64 i 128. Zbudowany jest na płytce PCB w kilku wersj...