満を持して登場した「世界初のマイクロプロセッサ8080 CPU用ルーズキット SBC8080」を組み立てました。
部品点数は多いですが着実に部品を組み付ければ確実に動く…はずでした…^^)
実は並行してSBC6303BL(ブートローダ)も作ってまして、そちらはマイクロSDに保存するブートイメージファイル名の先頭にブランクを入れて悩むという恥ずかしい状態で…さほどネタはありませんです。そのうち記事書きます。
部材到着
スイッチサイエンスさんから、SBC8080基板などなどが届きました。
今回は”SBC(シングルボードコンピューター)”といいながら、CPUボード+サブボード(ROM/RAM+シリアル)という構成です。最初から40pinフラットケーブルが活躍します。
SBC6303を作ったときに40pinボックスヘッダやフラットケーブルはゲット済み。
8080CPUや周辺チップは基板とは別に若松通商へお願いしてました。
作成開始~動かず
技術資料に沿ってCPUボード、サブボードの作成を実施します。
それほどはまりどころは無いはずですが、いつもどおりウッカリものなので40pin ICソケットを上下さかさまにつけてしまい、無理に外してハマってりしていました。(一度外すとスルーホールにハンダが残って、板バネICソケットだとピンが上に抜けてきまして…(>_<) )
次からはちゃんと丸ピンのICソケットにしようと心に誓いました。
記念写真を撮って、起動してみましたがシリアルコンソールには何も出ません。
以下を確認してみました。
- 電源として+5V、-5V、+12Vは出ているか
- 8080CPUは5V単一電源のZ80と違って3電源となっています。+5Vと+12Vはまぁまぁいい感じ。サブボードにもちゃんと供給されていました。ただ-5Vが-3.7Vぐらいとちょっと低め。でもTK-80もそのぐらいだったという情報をいただいてちょっと安心したり…(あやうくダイオードを張替るところでした)
TK-80も-3.7Vくらいという話なので大丈夫では?自分のは-1Vしか出てないので明らかに異常です。
— cafe2.54 (@cafe2P54) July 9, 2018
- 8224につながったクロックが発振しているか。
- テスターの周波数カウンターで計測したところ2MHzぐらいが出てました。
- 8251シリアルチップのクロックは出ているか?
- ちゃんと発振して153.6kHzが出ている感じです。
- 写真をよく見るとわかりますがパイロットランプのLEDをつけ忘れていますw このあたりはご愛嬌。
EEPROMが?
起動用のROMですが、データパックの “PTBEXSA.HEX”(機械語モニタつきBASIC)をEEPROMに焼きました。
68系と違ってROMは0000h番地から配置なのでその点だけ注意でした。
実はTwitterで先達の方がEEPROMでハマっていたのは見ていたのですがピンときてませんでした。
SBC8080動きました!!
動かない原因は、ROMのアクセス速度だったようです。
最初使ったAT28C256が150nsだったのですが、100nsのM27C256Bに変えたところ何事もなく動いています。
とりあえずGAME80を動かして見ようと思っています。— yanataka (@yanatoku) July 6, 2018
動かないSBC8080の回路図をみながら地道に1本づつテスターであたっていて、ハタと気づいたんですが…
私が今回使ったのも 28C256型のEEPROM。技術資料で使用しているのはUV-EPROM(紫外線消去型)の27C256型。
そういえば 、EEPROMとUV-EPROMでは一部のピンアサインが異なっています。
ピン | UV-EPROM 27C256型 |
EEPROM 28C256型 |
---|---|---|
ピン:1 | Vpp(+5V) | アドレスバス A14 |
ピン:27 | アドレスバス A14 | WE (書き込み許可) |
アドレスバスA14のピンが違っています。これだとアドレスが正しく指定できません。また、EEPROMのWE (書き込み許可)はライターでの書き込み時に使用するピンなので+5VにつないであげればOKのはず。
手元に27C256型 UV-EPROMはあるのですが 紫外線ランプなどのEPROM消去機材がないので…..以下写真のような下駄を急遽作成しました。1番ピンと27番ピンを逆に接続して残りのピンは同じピンへ接続すれば良いはず。ユニバーサル基板を切って細ピンヘッダとICソケットを装着して作成してみました。
下駄を装着して1回目は起動しませんでしたが、どうもWE (書き込み許可)ピンがフラフラしたせいか中身が壊れてしまっていたようで、再度 PROMライタで機械語モニタ+BASICのHEXファイルを書き込みなおしたところ無事に起動しました!!
むかし雑誌に載っていたNEC TK-80(トレーニングキット)を見ながら指をくわえていた組なので、手元で8080CPUが動いて感激です!!
今後…
今後はFM音源チップを鳴らしてみたいとか8255AをつないでLチカしてみたいとか色々と野望は膨らみますが….
まずは機械語モニタにLコマンドを実装してIntel HEX形式をメモリロードできる機能を追加しないとダメかもです。
コメント