Ero sivun ”PSR70 hardware” versioiden välillä
Rivi 54: | Rivi 54: | ||
Oheisessa kuvassa on piirrettynä auki muistin ja I/O:n dekoodauspiirit oleellisilta osin. | Oheisessa kuvassa on piirrettynä auki muistin ja I/O:n dekoodauspiirit oleellisilta osin. | ||
+ | |||
+ | * [https://wiki.helsinki.hacklab.fi/Yamaha_PSR70_reverse_engineering Projektin pääsivulle] |
Versio 1. maaliskuuta 2020 kello 22.05
Ensimäinen homma oli lähteä tutkimaan hardwarea. Tämä on varsin huoltoystävällinen (lue: hakkerointiystävällinen) laite: piirilevyt ovat yksipuolisia ja kuparipuolelle on merkattu mikropiirien numerot ja hyppylankojen sijainnit. Lisäksi piirilevyn silk screenissä on varsin paljon erilaisia hyödyllisiä signaalien nimiä merkattuna, kuten "D7", "A12", "IOWR", "IRQ" jne. Kytkentäkaavio on periaatteessa piirrettävissä yhdestä hyvälaatuisesta valokuvasta liuskoja treisaten.
Ei nyt ollut tarkoituskaan piirtää koko kytkentää auki, mutta ainakin muistikartat olisi syytä selvittää, se helpottaa disassemblyn tulkintaa huomattavasti. Osoitteiden dekoodaus on tehty kokonaan 7400-sarjan hajalogiikalla, perus AND/OR/mux-piireillä. Ei mitään ikäviä PAL-piirejä tai muuta reversaajan elämää vaikeuttavaa ikävyyttä käytetty.
Korttitason rakenne
Suurin osa elektroniikasta on pääkortilla. Muut kortit ovat:
- Analogiakortti, jossa on audiovahvistimet, jonkinlainen chorus-tyyppinen analoginen BBD-piiriin perustuva efekti (etupaneelin painike tuntee tämän nimellä "Stereo Symphonic") ja kaiuttimia syöttävät tehovahvistimet, sekä jännitteiden regulointi.
- Etupaneelin kortit, jotka ovat yhteensä koko etupaneelin kokoiset ja joissa sijaitsevat paneelin lukuisat painikkeet ja ledit. Laitteen käyttöliittymässä ei ole minkäänlaista näyttöä, vain painikkeita ja ledejä, ja muutama liukupotikka. Painikkeita ja ledejä onkin sitten reippaasti, painikkeita 74 kpl ja ledejä lähes jokaisen painikkeen vieressä, isossa osassa 2 per painike.
- Pari pienempää korttia, joissa on lähinnä vain taka/etuseinän liittimiä.
Oheiseen kuvaan on piirretty yksinkertainen korttitason lohkokaavio.
Pääkortti
Pääasiallinen kiinnostus kohdistui isoon elektroniikkakorttiin, jossa on kaikki oleelliset toiminnot. Sen sisältö on:
- NEC D70008, eli Z80-CPU
- EPROM 27256 (32 kB), ilmeinen ohjelmamuisti
- 4 kpl TC5517 staattinen RAM, 2 kB, yhteensä siis 8 kB RAM
- HD63A50 UART, hoitaa midi-liitäntää
- 82C55 rinnakkais-I/O-piiri, hoitaa pääasiallisesti koskettimiston skannausta
- Iso kasa sekalaista 74HC-peruslogiikkaa erilaisena liimalogiikkana
- Muutama operaatiovahvistin analogiasignaaleja paimentamassa
Näistä kaikista löytyy netistä normaalit datalehdet. Sitten alkaakin se hankalampi alue: joukko mikropiirejä, joiden päällä on Yamahan logo, ja joista Google enimmäkseen vaikenee.
- YM3806 FM-syntetisaattoripiiri. Ensimmäinen hitti Googlella osuu listaan "Undocumented sound chips" joka jo kertookin pelin hengen. Pienen kaivelun jälkeen löytyy arveluja, että se on 8-kanavainen 4 operaattorin piiri, mahdollisesti sama kuin YM3533, josta siitäkään ei löydy sen enempää tietoa. Yamahan terminologiassa tämän käyttönimi on "OPQ" (samassa sarjassa kuin OPL, OPN jne.) Ollaan siis aika lailla tuntemattoman äärellä.
- YM2154 PCM rompler. Tämä hoitaa rumpusoundit, jotka olivat jo PCM-pohjaisia tuohon aikaan. Yamahan kielessä tämä on "RYP4" (Rhythm Processor 4). Tästä löytyy sentään nastajärjestys, muista asioista netti vaikenee tämänkin kohdalla.
- 2 kpl YM2190 serial ROM. Nämä ovat RYP4:n sample-ROMmeja, joissa on rumpujen samplet. Niissä on joku eksoottinen Yamahan oma sarjapohjainen väylä, jolla ne liittyvät RYP4-piiriin.
- 2 kpl YM3012 stereo-DAC. Nämä piirit muuntavat OPQ:n ja RYP4:n tuottamat signaalit analogisiksi, toinen palvelee OPQ:ta ja toinen RYP4:ää. Näissäkin on joku Yamahan oma sarjaliitäntä, jolla niihin syötetään digitaalidata (jos pitäisi arvata, niin taatusti erilainen kuin em. ROMmeissa). Tästä löytyy sentään datalehti netistä.
- Mystinen piiri nimeltä IG14330, josta netti ei tiedä senkään vertaa kuin edellisistä. Piirilevyä tutkimalla voi päätellä, että se hoitaa etupaneelia jonkinlaisen Yamahan oman sarjaliitännän (yllätys!) kautta. Toiselta puolen se istuu normaalisti prosessorin väylällä. Etupaneelissa lienee lisää Yamahan piirejä, jotka toimivat sen vastapäänä. Tätä en tutkinut enempää, koska tuo ei onneksi ole kriittisellä polulla tämän reverse-projektin tavoitteiden kannalta.
- Mystinen maski-ROM-piiri, josta ei myöskään löydy mitään tietoja. Prosessorin väylää ja muita levyn vetoja treisaamalla voi päätellä, että se on nastajärjestyksensä puolesta normaali 32 kB ROM, joka istuu prosessorin väylällä. Lisäksi piirin vieressä silk screen-teksti "ROM2" antaa osviittaa. Tästä piiristä lisää myöhemmin.
Päämielenkiinto tässä projektissa kohdistuu OPQ- ja RYP4-piireihin. Netissä on selvästi näiden dokumentaation kokoinen aukko, joka olisi hyvä saada tukittua.
OPQ on melko vähän käytetty piiri, sitä on käytetty PSR-70:n lisäksi PSR-60:ssa, jossa on sama elektroniikka, ja lisäksi ainakin CLP-100:ssa. Viimemainitusta joku japanilainen on tehnyt jonkin verran tutkimusta, mutta ei ole ryhtynyt hänkään selvittämään piirin toimintaa: https://translate.google.fi/translate?hl=en&sl=ja&tl=en&u=https%3A%2F%2Fachapi2718.blogspot.com%2F2015%2F01%2Fyamaha-clp-100.html
RYP4:ää on käytetty aika monessa Yamahan tuotteessa, joista RX15-rumpukone löytyy minulta hyllystä. En ole koskaan sitä kylläkään avannut. Rummut kuulostaakin aika samanlaisilta. Tosin, netin valokuvien mukaan RX15:ssa on eri sample-ROMmit, mutta selvästi samalta ajalta ovat.
Tähän valokuvaan on piirretty piirilevyn päälohkot:
Muistikartat
Oheisessa kuvassa on piirrettynä auki muistin ja I/O:n dekoodauspiirit oleellisilta osin.