środa, 29 grudnia 2021

AY Player ZX Spectrum, MSX, Atari ST, Amstrad CPC

 Player AY oparty jest na układzie AY-3-8910 zbudowany na profesjonalnie wykonanej płytce w obudowie 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 mini jack, wyjście kanałów układu AY-3-8910 jest skonfigurowane 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.




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.