パソコンとポケコンで通信しよう

     

  

通信に必要なハード


Strawberry Linuxで購入

https://strawberry-linux.com/catalog/items?code=50040

USB-TTLシリアルコンバータ(5V) メーカー品番:TTL-232R-5V

■FTDIのUSB-TTLシリアルコンバータケーブルです。一見ただのUSBの引き出しケーブルのようですが、USBプラグの部分にFT232Rが埋め込まれてあり、これでれっきとしたUSBシリアルのインターフェースになっています。

◆ピンアサイン(信号線は0V/5V入出力) (下の図と色が違います。下の図が古いようです。
 ・:GND
 ・:CTS(入力)
 ・:VCC(5V電源出力) ※最大供給電流:75mA
 ・:TXD(出力)
 ・:RXD(入力)
 ・:RTS(出力)



◆仕様  
・長さ:1.8m  
・ケーブル太さ:5mm  
・コネクタ:USB-A ⇔ 6ピン
・メスコネクタ(2.54mmピッチ)

 

NETで探したら色々ありましたが、これが一番省スペースで低価格でした。
価格  1,400円(2015年5月現在) +消費税 + 送料

 

見栄えを気にする人、工作が嫌いな人は、ショップのふうせんさんでコネクタ部をPC-G850V用に改造した物を販売しています。
この場合、下記の変換コネクタは不要です。
http://shopfusen.jimdo.com/%E3%83%9D%E3%82%B1%E3%82%B3%E3%83%B3/usb-%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB/

  これ以外に"FT232R" "PC-G850"で検索すると自作物、プリント基板タイプの市販物等色々なものがあります。

 

 

FT232RL USBシリアル変換モジュールキット

AE-UM232R

秋月電子通商

¥800+送料

これを使用して上記の必要な端子を使用するのが一番安価です。

ハンダ付けが必要です。

http://akizukidenshi.com/catalog/g/gK-06693/

 

これだと5Vも3.3Vも両方使用することができますし、他の事にも使用することができて便利です。

現在Arduino互換機のブートローダー、スケッチの書き込みに使用しています。

自作変換コネクタ

PC-G850VとUSB-TTLシリアルコンバータ(5V) のコネクタは両方共メスでピン配置も異なりますので変換コネクタが必要になります。

 

2.54mmピンヘッダー(20pin)を改造

価格50円程度

L型を購入しましたが、ストレートの方が邪魔にならないです。

しかし、ストレートの場合は反対向きにも取り付いてしまうので注意が必要です。

 

 

 

改造点

1.15pinに切断(両端なしの11pinでも問題ありません。)最初気がつかなかったですが、左側の写真のL型のピンが短いですが長い方の物が必要です。

2.PC-G850V側のNo.2とNo.14pinを切断する。(中央の11pin部を使用します。外側各1pinはガイドです。両端なしの11pinで製作しても問題はありません。)

3.上の写真のように加工する。(非常に華奢で弱いので加工時注意が必要です)

 

USB-TTLシリアルコンバータに接続するときは向きに注意して接続してください。(ポケコン等が破損する可能性があります)

安価ですが無理するとすぐに折れますので注意が必要です。

自分で製作される方は、自己責任で製作してください。
取り付ける前に、形状・Pin配置を確認し向き・位置を間違えないように接続してください。
万一、ポケコン・PCが故障しても当方は責任を取ることができません。

 

  変換コネクタを製作するにあたり参考にしたサイト。

 Kyoro's Room Blogさん

 http://kyoro205.blog.fc2.com/blog-entry-164.html

 

 POKE COMさん 最近のパソコンと接続する

 http://poke-com.jimdo.com/%E6%9C%80%E8%BF%91%E3%81%AE%E3%83%91%E3%82%BD%E3%82%B3%E3%83%B3%E3%81%A8%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B/

 

 その他"PC-G850V"で検索するとたくさんあります。


 

通信に必要なソフト

linuxの場合(私は少し苦労しました。参考になるサイトが少ないです。)

OS: xubuntu 15.04 64bit  EPSON  AY320S

転送ソフト : GtkTerm(ubuntuソフトウェアセンターよりインストール:"gtkterm"で検索する)

(GtkTerm2が最新版と思ってインストールしましたが、ただの端末でした。転送ソフトではありません。)

設定も参考になるサイトが見つからず、試行錯誤の連続で、最初は全然うまくいきませんでした。

通信はできているのに、ポケコンにプログラムを送り返しても動きませんでした。

結局、どこかのサイトで参考にしたCR LF autoにチェックを入れたのが悪かった。

autoって書いてあるから自動で切り替えてくれるのかなと思っていました。

チェックを入れないと、ポケコンにプログラムを送ってもちゃんと動きました。

ちなみに、普通のユーザーでgtktermを起動すると、権限がございませんと怒られます。

端末から、$ sudo gtktermで起動します。USB-TTLシリアルコンバータケーブルが接続されてなくても怒られます。

Windowsの場合

OS: Windows XP HOME         DELL INSPIRON 1300

転送ソフト : シャープ 純正ソフト PC-Gリンク(使いやすいらしい)

http://kurikou.sakura.ne.jp/pokekon/option/USBlvc2.html   ここでダウンロードできます。

   : Tera Term (PC-Gリンクでできないことができる)

http://osdn.jp/projects/ttssh2/

GtkTermの設定

Linuxの場合(Windowsは本当に簡単だったので省略)

gtktermをubuntuソフトウエアセンターよりインストールして、

USB-TTLシリアルコンバータをUSBに差し込みます。

端末を起動し$ dmesg エンターで(私の環境の場合、多分同じと思います)

一番下に"ttyUSB0"となっています。

gtktermの起動

端末から$ sudo gtkterm エンターで起動します。(この方法で起動しないと権限がないというメッセージがでます)

起動直後が左のイメージ

Configuration → Port

Portをさきほど調べた"ttyUSB0"に変更します。

左下のPortの名称が"ttyUSB0"に変わります。

Configuration →Local echo でチェックを入れる。

プログラムの転送テスト

PC-G850VからプログラムをPCに転送します。

PC-G850Vの電源を入れる

TEXTボタンを押す

Sキーを押す(Sio)

Fキーを押す(Format)

*baud rate =9600   (右矢印キーで9600を選択し、必ずエンターを押す)

 data bit      =8

 stop bit      =1

 Parity         =none

 end of line =CR LF

 end of file  =1A

 line number =yes

 flow             =RS/CS


TEXTボタンを押す

Eキーを押す

10print"a"

と入力(これはプログラムだったら何でも良い)


TEXTボタンを押す

Sキーを押す(Sio)

Sキーを押す(Save)

一瞬でセーブしているというメッセージが消えます

gtktermの画面にプログラムが表示されます。

多分2行目の001Aのコードは不要(これの消し方がまだわからないので保存してから削除しています)

File → Save raw file

TEST.BAS.txtで保存する(ファイル名は任意)

エディターでファイルを開いて001Aのコードを削除し保存


次にFile → Clear screen で画面をクリアーする。

PC-G850VのTEXTボタンを押す

Dキーを押す(Del)

yキーを押す

先ほど入力したプログラムを消去

Sキーを押す(Sio)

Lキーを押す(Load)

--- RECEIVING ---と表示される

 

gtktermの File → Send raw file

 

PC-G850Vの--- RECEIVING ---の表示が消えないのでONキー(BREAK)を押す。(どこかに設定するところがあるのか現状は不明)

TEXTボタンを押す

Bキーを押す(Basic)

Bキーを押す(Basic←text)

 

BASICボタンを2回押してPROGRAM MODEに入る。

LIST エンターで10print"a"が表示される。

BASICボタンを押してRUN MODEに入る。

RUN エンターで "a"が表示される。

 

これでプログラムの転送テストは終了です。

 

参考にしたサイト

Linux 時々 XX さん
シリアルポート端末(gtkterm)を使ってみる!
http://linuxandxx.blog.fc2.com/blog-entry-34.html

くりこうのホームページ さん
テキストファイルを転送しよう
http://kurikou.sakura.ne.jp/pokekon/trans/text.html

 

 

パソコンでポケコンのソフト開発

- Version 0 - のまるひろ さんが作ったエミュレータg800でPC-G850Vをパソコン上でエミュレートできます。

http://ver0.sakura.ne.jp/index.html

 

設定等で参考になるサイト POKE COM さん

http://poke-com.jimdo.com/%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%99/

 

Windows XP、xubuntu共BASIC、C言語、マシン語等が使用できます。<xubuntuの環境では最初ROMイメージがうまく認識しないのでマシン語環境でしか動きませんでした。結局、ROMイメージファイルのファイル名が大文字だったのが原因でした。Windousは大文字、小文字どちらでもいけますがLinuxは区別されるため、ファイルがないと判断されていました。こんなことは常識なのですが、頭が廻りませんでした。まるひろ様ありがとうございました。>

 

 g800のインストール

Windows XPは非常に簡単なので省略します。

xubuntuにg800をインストール

 大体はmanual.txtに書いてあるので、書いてないところだけ。

 g800をコンパイルするにはSDLが必要なのでSDLをインストールします。(この方法はネットから拾ってきました)

 

 SDLのインストールに必要なものをインストール(2017/12/14にこの方法でインストールするとエラーが出たので下記の方法でインストールしました。)

端末から

$ sudo apt-get update

$ sudo apt-get install build-essential mercurial make cmake autoconf automake \
libtool libasound2-dev libpulse-dev libaudio-dev libx11-dev libxext-dev \
libxrandr-dev libxcursor-dev libxi-dev libxinerama-dev libxxf86vm-dev \
libxss-dev libgl1-mesa-dev libesd0-dev libdbus-1-dev libudev-dev \
libgles1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev

 

 SDLのインストール

 SDLのソースは〜/SDL2-2.0.3に位置していると仮定すると

$ cd ~
$ mkdir build
$ cd build
$ cmake ../SDL2-2.0.3
$ sudo make install

 

g800のインストール
$ cd /home/・・・・/g800/
$ sudo make
$ sudo make install
$ cp ./g800config ~/.g800config

ファイル名の前に"."が付くファイルは普通は見えません。見るときは端末から$ ls -la で見えて、vi等で編集します。

面倒くさいので"."をなくしたらファイルマネージャーからでもエディタで編集できます。

 

設定・インストールの仕方の参考になるサイト 

POKE COMさん エミュレータで動かす

http://poke-com.jimdo.com/%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%99/

 

プログラマyasuhoの隠れ家さん

http://yasuho.hatenablog.com/entry/20100413/p1

 

 

2015年にこの記事を書いていますが、2017/12/14にg800を現在のUbuntu Studioにインストールしようとしたら、上記の記事の「SDLのインストールに必要なものをインストール」のところでファイルが無い(忘れちゃった)かなんかでエラーになりました。

SDL2は、

$ sudo apt-get update
$ sudo apt install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev

でインストールしました。

g800は新たにダウンロードして上記の方法でインストールしました。

PC-G850VからROMイメージをコピー

copyromをPC-G850Vに転送します。

まずcopyromをダウンロードします。

Linux/Windows/MacOSX用ソフトウェア

http://ver0.sakura.ne.jp/pc/

SHARP PC-G850/G815/E200エミュレータ g800 version 0.10.12.1のToolにあります。

ダウンロードしたら解凍し、copyg850.hexをPC-G850Vに転送します。

manual.txtには、MONコマンドでモニタモードに移行し、USER6000と入力すると書いてあります。

BASICボタンを押してPROGRAM MODEに入る。

MONエンターでMACHINE LANGUAGE MONITORに入ります。

USER6000でFREE:0100-6000となってエリアが確保されました。

次にcopyg850.hexを転送するとなっていますが、私はここではまってしまいました。

G5500とやってもプログラムが実行しないのです。いろいろ調べたら、Dコマンドでダンプリストが表示されるとか。

D5500とやってみると数字の"0"の羅列ばかり、動くわけがありません。マニュアルはないし、ネットで探したら詳しく説明しているサイトがありました。ラッキー。

次にRコマンドで受信待ちにしなくてはいけません。

BUSYになります。

 

 よく考えたら、xubuntuでこれはまだ成功したことがなかった。WindowsでPC-G850Vにcopyg850.hexを転送し、xubuntuでROMをコピーすることは確認しました。

g800エミュレータの使い方

1.ポケコンをリセットするにはF8キーを押し、MEMORY CLEAR O.K.? (Y/N)と表示されるのでYキーを押す。

 ALL RESETが点滅する。これを止めるにはCLSキーを押す。

 ただし、F8 キーは.g800config(以後、設定ファイルと呼ぶ)で変更できるので気をつける。


2.g800エミュレータのRAMの0040Hから7fffHの内容の保存は設定ファイルの"ram_path"で指定したファイル(設定ファイルが空白の場合は保存しない)に保存される。


3-1.BASICプログラム等をエミュレータに読み込むには、起動時にパラメーターを指定して起動する。

Linuxの場合

端末から $ g800 -sio_in=/home/・・・・/test.bas.txt

 

Windows XPの場合

ファイル名を指定して実行→参照からg800.exeを探し、パラメーターを後ろに追加する。

"c:¥・・・・・¥g800.exe" -sio_in=c:¥・・・・¥test.bas.txt

OKを押す

3-2.g800が起動したらTEXTボタンを押す。


 

 次に S キーを押す。(Sio)


 


 次に L キーを押すと(Load)ロードが開始する。


3-3.ロードが終了したら、TEXTボタンを押す。


 次にBASICプログラムの場合

 B キーを押す(Basic)

 



 次に B キーを押す。(Basic←text)

 BASICプログラムに変換される。

3-4.次に BASIC ボタンを押す。

 

 RUN MODEになったら

 RUN エンターと入力するとBASICプログラムが実行される。

 

 

使い方の参考サイト
プログラマyasuhoの隠れ家さん
http://yasuho.hatenablog.com/entry/20100413/p1

4-1.g800エミュレータで作成したプログラムをファイルに書き出す。

 Linuxの場合

 起動は端末から $ g800 -sio_out=/home/・・・・/test01.bas.txt


 Windows XPの場合

 ファイル名を指定して実行→参照からg800.exeを探し、パラメーターを後ろに追加する。

 "c:¥・・・・・¥g800.exe" -sio_in=c:¥・・・・¥test01.bas.txt

 OKを押す


4-2.g800が起動したら、TEXT ボタンを押しTEXT EDITORに入り、次に B キーを押す。(Basic)

  次に T キーを押す。(Text←basic)

  次に TEXT ボタンを押してTEXT EDITORに入り、次に S キーを押す。(Sio)

  次に S キーを押す。(Save)これでファイルに書き出される。


使い方参考

g800に添付されているmanual.txt