Super AKI-80 で遊ぶ その六

前回は Super AKI-80 に付属していたおまけのモニター ROM で LED を光らせるところまでをやりました。

今回はシリアルポートを使ってパソコンとつなぐところを試してみます。

Super AKI-80 のシリアルポートは 5pin ですので、5pin のコネクターを買ってきてあります。これと一般的な RS-232C の D-SUB 9pin をハンダ付けします。Super AKI-80 もパソコンもホスト側になりますので、今回はクロス配線にしました。Super AKI-80 の先にモデムなどをつなぐ場合は、ストレート配線にしておいて、クロスケーブルで接続したほうが良いと思われます。


コネクターはこんなのです。白いのが 5pin で、銀色のが D-SUB 9pin になります。

D-SUB 9pin のピン番号とピンアサインは以下のとおりです。関係ないピンは省略しています。

5 4 3 2 1
 9 8 7 6
 
2: RXD
3: TXD
5: GND
7: RTS
8: CTS

Super AKI-80 5pin のピン番号とピンアサインは以下のとおりです。

<-外側 CN4 内側->
1 2 3 4 5
 
1: GND
2: RXDA
3: TXDA
4: CTSA (RXDB)
5: RTSA (TXDB)

これをクロス配線します。D-SUB 9pin の方はコネクターから見たピン配置なので、ハンダ付けする側では反対になることに注意してください。以下のように結線してください。

  3 2   1 Super AKI-80 CN4
  | |   |
1 2 3 4 5 ハンダ付けする側からみたピン番号
 6 7 8 9  D-SUB 9pin
   | |
   4 5    Super AKI-80 CN4

こんな感じになりました。

なお、Super AKI-80 CN4 はシリアルポート二ポートにすることもできますが、モニター ROM を使う場合は一ポートのみにする必要があるようです。

そして、パソコンとつなげます。最近のパソコンは RS-232C なんてついていないので、USB RS-232C 変換ケーブルも購入してあります。こちらは Ubuntu 14.04 LTS につなぐだけで認識しました。

標準ではシリアルターミナルアプリがインストールされていないっぽいので、kermit をインストールします。何でもいいとは思いますが。

$ sudo apt-get install ckermit

そして、つなぎます。大体 RS-232C で制御できる機器のほとんどは 9600bps です。なので適当につなぎます。

$ sudo kermit
C-Kermit> set line /dev/ttyUSB0
C-Kermit> set speed 9600
C-Kermit> set carrier-watch off
C-Kermit> connect 
Connecting to /dev/ttyUSB0, speed 9600
 Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------

ちなみに、切断するには Ctrl-\ Q Enter と押します。詳しくは Ctrl-\ ? としてください。

さて、うまくつながりません... でも適当にキーを叩いたり、Super AKI-80 の電源を再投入したりするうちにまれにつながりました。

Start Z80 remote basic Ver.1.0 made by System Load
                                ..since 1992. 
>

こんな画面になりました。またここから試行錯誤です。だって、マニュアルないんです...

モニターということで、メモリの値を見たり書き換えたりできるんじゃないか? といろいろと打ち込んでみますが、what? と言われまくりです。

30 分位格闘してようやく BASIC なのに気が付きました。Z80 remote basic って表示されとるやないですか!

>let a=peek(1)
ok
>print a
     128
ok

懐かしの、行番号付き BASIC でした。

んで、BASIC とはいえ、仕様がないとよくわかりません。ネットで調べると、誰かが解析してくれてました!

一部わからない命令がありますが、とりあえずは困らなそうです。I/O 関係では OUT があるんですが、入力は INPUT でいいのかな? これがあれば、LED 光らせるくらいは余裕です。

the boot program will jump to the BASIC interpreter and listen to the serial port for a carriage return (CR) character to be received (communication at 9600 baud, N81).

とあるので、Enter キーを叩けば BASIC が起動するみたいです。

でも、うちだと結構な確率で失敗します。なんででしょうね...

Image: 

コメントを追加

Filtered HTML

  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 使用できるHTMLタグ: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <img>
  • 次のタグを使用してソースコード構文をハイライトすることができます。: <code>, <blockcode>, <c>, <cpp>, <drupal5>, <drupal6>, <java>, <javascript>, <php>, <python>, <ruby> The supported tag styles are: <foo>, [foo].
  • 行と段落は自動的に折り返されます。

Plain text

  • HTMLタグは利用できません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 行と段落は自動的に折り返されます。
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
イメージ CAPTCHA
Enter the characters shown in the image.