読者です 読者をやめる 読者になる 読者になる

KOYAMA Yoshiaki のブログ

プログラミングについての試行錯誤をつらつら書き溜めていきます。

PC-G850V、PC-G850VS とMac の仮想化ソフト Parallels Desktop 7 for Mac 上の Ubuntu 11.10 にシリアル接続し、G850ターミナルでログインする。

pc-g850v pc-g850vs

前回、予告した PC-G850V、PC-G850VS とMac の仮想化ソフト Parallels Desktop 7 for Mac 上の Ubuntu 11.10 にシリアル接続し、Ubuntu 11.10 ( Linux ) にリモート・ログインできるターミナル (端末)

PC-G850/G815/E200用ソフトウェア
G850ターミナル
http://www16.ocn.ne.jp/~ver0/g800/index.html#g850term
http://ver0.sakura.ne.jp/g800/index.html#g850term

G850ターミナルを紹介したいと思います。


Mac の USB ポートと PC-G850V、PC-G850VS 周辺機器接続端子(11ピン) にそれぞれ 秋月電子通商 USB・RS232C シリアルポート変換ケーブル、高松製作所 RS232C シリアルケーブル を接続し、Mac の仮想化ソフト Parallels Desktop 7 for Mac 上の Ubuntu 11.10 にシリアルポートからログインするためには、Ubuntu 11.10 上に /etc/init/ttyS0.conf ファイルを作成する必要があります。

絶対無糖 (Zettai Non Sugar): Ubuntu でシリアルポートからログインする
http://zettai-non-sugar.blogspot.com/2009/05/ubuntu.html

SerialConsoleHowto - Community Ubuntu Documentation
https://help.ubuntu.com/community/SerialConsoleHowto

上記、URL が参考になります。簡単に説明すると Parallels Desktop 上の Ubuntu 11.10 で Terminal を起動します。


ここでは sudo を何度も使うのは面倒なので sudo su を使ってスーパーユーザーになります。

yoshiaki@ubuntu:~$ sudo su
[sudo] password for yoshiaki: 
root@ubuntu:/home/yoshiaki# 

/etc/init ディレクトリに移動し、属性と一緒に tty1.conf ファイルを ttyS0.conf にコピーします。

root@ubuntu:/home/yoshiaki# cd /etc/init
root@ubuntu:/etc/init# cp -p tty1.conf ttyS0.conf

ttyS0.conf ファイルを次のように編集します。

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -L 9600 ttyUSB0 vt220 

編集には vi、emacs などを使ってください。


重要なのは

exec /sbin/getty -L 9600 ttyUSB0 vt220 

の一行です。それぞれ

通信ボートレート: 9600 bps
シリアルポートデバイス名: ttyUSB0
端末エミュレータ: vt220

を表しています。


シリアルポートのデバイス名は、コマンド dmesg で確認できます。Parallels Desktop 7 上で Ubuntu 11.10 を起動し、秋月電子通商 USB・RS232C シリアルポート変換ケーブルを Mac の USB ポートに繋ぐと Mac 側か Ubuntu 11.10 側のどちらに接続するか尋ねてくるので、Ubuntu 11.10 を選択します。


Terminal でコマンド dmesg を使うと

yoshiaki@ubuntu:~$ dmesg

[  128.609750] usbcore: registered new interface driver usbserial_generic
[  128.609751] usbserial: USB Serial Driver core
[  128.610480] USB Serial support registered for pl2303
[  128.610861] pl2303 2-1:1.0: pl2303 converter detected

*[  128.625703] usb 2-1: pl2303 converter now attached to ttyUSB0

[  128.625713] usbcore: registered new interface driver pl2303
[  128.625717] pl2303: Prolific PL2303 USB to serial adaptor driver
[  129.884737] init: ttyS0_org main process (1743) terminated with status 1
[  129.884757] init: ttyS0_org main process ended, respawning
yoshiaki@ubuntu:~$ 

上の * 印より、シリアルポートのデバイス名 ttyUSB0 が判明します。秋月電子通商 USB・RS232C シリアルポート変換ケーブルは、変換チップに PL2303 を使っています。Ubuntu 11.10 上ではドライバを必要としません。


コマンド lsusb でも確認できます。

yoshiaki@ubuntu:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 203a:fff9  
Bus 002 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
yoshiaki@ubuntu:~$ 


また、Ubuntu 11.10 に含まれる端末エミュレータは、/lib/terminfo ディレクトリの

root@ubuntu:/etc/init# cd /lib/terminfo
root@ubuntu:/lib/terminfo# ls -alF
total 60
drwxr-xr-x 15 root root 4096 2011-09-17 04:29 ./
drwxr-xr-x 20 root root 4096 2011-10-25 18:16 ../
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 a/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 c/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 d/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 E/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 h/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 l/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 m/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 p/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 r/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 s/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 v/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 w/
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 x/

v ディレクトリから確認できます。

root@ubuntu:/lib/terminfo# cd v
root@ubuntu:/lib/terminfo/v# ls -alF
total 24
drwxr-xr-x  2 root root 4096 2011-10-01 02:31 ./
drwxr-xr-x 15 root root 4096 2011-09-17 04:29 ../
-rw-r--r--  1 root root 1194 2011-09-17 04:29 vt100
-rw-r--r--  1 root root 1188 2011-09-17 04:29 vt102
-rw-r--r--  1 root root 1279 2011-09-17 04:29 vt220
-rw-r--r--  1 root root  470 2011-09-17 04:29 vt52
root@ubuntu:/lib/terminfo/v# 

VT200 の端末エミュレータUbuntu 11.10 にはないようなので VT220 を用いました。詳しくはないので、これで正しいのかわかりません。端末エミュレータの定義は w3m などに使われます。


コマンド start ttyS0 (sudo start ttyS0) で開始します。

root@ubuntu:/etc/init# start ttyS0
ttyS0 start/running, process 2318
root@ubuntu:/etc/init# exit
exit
yoshiaki@ubuntu:~$ 

これで、Ubuntu 11.10 側の設定は終わりです。


PC-G850V、PC-G850VS 側は、

PC-G850/G815/E200用ソフトウェア
http://www16.ocn.ne.jp/~ver0/g800/index.html#g850term
http://ver0.sakura.ne.jp/g800/index.html#g850term

から、G850ターミナル ソースとバイナリ[ g850term20080419.zip ] をダウンロードし、その中に含まれるファイル g850vtermj.ihx を拙作 PCG-LinkMac [ http://kyoshiaki.sakura.ne.jp/osx/pcg850v.html#pcglink ] を使って、PC-G850V側に転送します。PCG-LinkMac の ReadMe ファイルを参考にしてください。


Mac OS X 10.7.2 Lion のドライバ問題の回避方法が

2011-07-31 - KOYAMA Yoshiaki の日記
http://d.hatena.ne.jp/KYoshiaki/20110731

に説明されています。


Mac 側の PCG-LinkMac から PC-G850V側 にファイル g850vtermj.ihx を転送する方法を簡単に説明します。

ファイル g850vtermj.ihx のサイズが大きいので、まず最初に PC-G850V の ON キーを押して電源を入れた後、ボールペンなどでリセットスイッチを押して PC-G850Vを初期状態にします。(注意、リセットすると保存したすべての BASIC プログラムなどが消去されるので、事前に Mac 側に退避しておいてください。)

Mac 側、PC-G850V側 のシリアル入出力条件を設定し、PC-G850V側で機械語モニタモードに入ります。g850vtermj.ihx のために必要なユーザーエリアは 722B ですが、念のため 7600 にします。その後、R 命令を使ってデータを読み込んでください。読み込みが終了するとデータが入ったエリア(領域)が表示されます。今回は INFO:0100-722B がそれに当たります。

MON
*USER 7600
*R
INFO:0100-722B
*

読み込みが終了したら G100 でで G850 ターミナルを実行します。シリアルポートが繋がっていないので、何も表示されませんが、BASIC キーを押して端末の設定を行います。

*G100

数字キーで設定を変更でき、リターンキーを押すと変更しません。現在の状態は、[ ] の中に表示されています。私の設定は

BAUD 5: 9600
PARITY 0: none
FLOW 0: none
ECHO 0: off
SCREEN 2: 36*6
KANJI: 2: SJIS

です。設定が終わったら、OFF キーで終了してください。端末の設定は、実行中 (Ubuntu 11.10 にログイン中)でも BASIC キーを押せば、変更できます。特に、漢字コードや画面サイズは変更したくなるかもしれません。


秋月電子通商 USB・RS232C シリアルポート変換ケーブルをUSB ポートから抜き、再度差します。Mac 側、Ubuntu 11.10 側のどちらに接続するか尋ねられるので Ubuntu 11.10 側をクリックします。


PC-G850V、PC-G850VS 側で、機械語モニタモードに入り G100 で G850 ターミナルを実行します。

login 画面が出ない時は Return キーを押してください。

Ubuntu 11.10 login


login name を入力し、リターンキーを押してください。続いてパスワードを入力し、リターンキーを押します。これでログインできます。後は、Ubuntu 10.10 上の Terminal と同じです。

cat

w3m

ls