【注意!】最近のSuperCard(ファームバージョンがVer1.63,1.62)では、CWTA(Ver1.11)が起動しないようです。ファームバージョンがVer1.60では動作する事は確認しましたので、お急ぎの方は、SuperCardのファームをVer1.60に変更してご利用ください。(詳しくはブログをご覧ください)
『CWTA』は、任天堂のポケットゲーム機「GAMEBOY ADVANCE(SP)」で動作する モールス符号の練習用ソフトです。受信練習(耳慣らし、乱数暗文 他)と、送信練習の機能があります。
~ プロローグ ~
本屋さんで偶然目にとまった雑誌に、“Linuxから目覚めるぼくらのゲームボーイ!”という記事を見つけた。なにやら、任天堂のゲームボーイアドバンス(以下GBA)に、自作したプログラムを転送して実行できると書いてある。
期待が高まった。本を買って、じっくり読んでみると、おぉ!なんと素晴らしい。GBAは、32bit高性能CPUを搭載した立派なコンピュータシステムであった。(←左リンクの表示にはAdobe Readerが必要)
そこで、以前DOSパソコン用に作成していたモールス練習用ソフト(CWT)を、このGBAに移植してみる事にした。パソコンを携帯するのは不便なので、ウォークマンのように気軽に持ち歩けるモールス練習環境が実現できないだろうかと常々思っていた。
GBAは手のひらサイズで、とてもコンパクトで軽く携帯するには十分。また、電池も充電式で10時間程度はもつ。そして、ヘッドホンでも聞けるので、電車の中などの人混みでも問題なく使える。
とにかく、GBAのコンピュータシステムとしてのアーキテクチャが素晴らしい。グラフィックや音源の表現力も十分過ぎるほどで申し分ない、携帯モールス練習機にはうってつけの環境である。
※CQ誌2005年10月号で、本CWTAに関する記事が掲載されました。
記事で紹介したSMSメモリが入手困難な場合は、以下で紹介する「SuperCard」が
便利ですので、そちらをご検討ください。
========================================================================
【ソ フ ト名】 モールス符号 練習プログラム『CWTA』 Ver1.11
【登 録 名】 CWTA111.ZIP
【バイト 数】 約47K Byte
【著作権 者】 JR4QPV T.Yokobayashi(e-mail: jr4qpv@nifty.com)
【掲 載 者】 JR4QPV T.Yokobayashi(e-mail: jr4qpv@nifty.com)
【掲 載 日】 2005/10/17
【動作 環境】 任天堂 ゲームボーイアドバンス,ゲームボーイアドバンスSP
ゲームボーイミクロ,ニンテンドーDS
※旧タイプのゲームボーイ、ゲームボーイカラーでは動作しません。
※ミクロとDSで利用するには、SuperCardが必要です。
【ソフトウェア種別】 フリーウェア
【転載 条件】 事前にメールをください
========================================================================
本ソフトの「CWTA Ver1.10」からの主な変更内容は以下のとおりです。
・Bボタンで'M'(Mix)モードの追加。
・乱数暗文の受信練習和文モードで、Mix('M')時に、`(ヰ),~(ヱ)を含める。
・ファイルモードのループ時の、自動Next('N')、自動Mix('M')の機能追加。
・ファイルモードに、#FileLine(行ランダム),#FileWord(ワードランダム),
#FileChar(文字ランダム)の機能を追加。
・ファイルモードのオプション指定に、MOD=,CWT=の機能追加。
・送信練習モードで、通信ポートに電鍵を接続する機能を追加。
・エレキー送信練習時の速度が、指定より遅くなっていた不具合の修正。 他
■ 特徴
『CWTA』は、任天堂ポケットゲーム機のゲームボーイアドバンス(GBA)で動作する
モールス符号の練習用ソフトです。受信練習(耳慣らし、乱数暗文、他)と、送信練習の機能があります。
《受信練習モード》
5文字ごとのランダムな文字を発音する乱数暗文モード、A~Zまでを順番に発音する耳慣らしモード、記憶している例文をランダム選択して発音するサンプル文章モード、自作したテキストデータを発音できるファイルモードがあります。
《送信練習モード》
縦振キーモードとエレキーモードの送信練習が可能です。 打鍵スピードはプログラムで認識して自動調整されます。また、[HH]や[BT]などのような連続文字にも対応しており、[ホレ]と[ラタ]の打鍵により和文/欧文モードの自動切り替えを行う事もできます。
エレキーモードでは、一般的に備えられているメモリ機能とスクーイズ機能をサポートしています。打鍵スピードも自由に設定できます。
又、GBAの通信ポートに電鍵を接続する事もできます。
■ 梱包ファイルの内容
readme.txt … 本ファイル
cwta.txt … 説明ドキュメント
cwta.bin … GBAへ転送するプログラムファイル本体
sample.txt … ファイルモード用のサンプルデータファイル
sample.bat … ファイルモード用 sample.txt の結合バッチファイル例
kame001.txt…サンプルデータファイル(欧文初歩練習用)
kame002.txt…サンプルデータファイル(欧文練習テキスト)
kame003.txt…サンプルデータファイル(和文練習テキスト・徒然草)
addsamp.bat… 添付サンプルデータファイルの結合バッチファイル
cwta111.zip 47,502Byte ←ダウンロードはこちら
※ZIPファイルを解凍するには 解凍ツール が必要です。(WindowsXPでは不要)
オープニング画面 受信練習(乱数暗文)実行中画面
[SELECT]ボタンにより練習モードを選択した後に、[START]ボタンで練習開始する。練習途中で中断したい時は[SELECT]ボタンを押す。
練習開始待ちの状態の時に、[R]ボタンを押すとキー操作ヘルプ画面が表示される。更に[R]ボタンを押していくと、モールス符号の一覧が表示される。
※詳しくは、添付の説明ドキュメントファイル "cwta.txt" をご覧ください。
GBAに転送したプログラムは、GBAの電源を切ると忘れてしまいます。
そこで、このUSBブートケーブルには、市販ゲームカセットの、データ保存領域にプログラムを記憶しておき、その記憶したプログラムを起動する"ブートチップ"機能があります。(但し、ブートケーブルも一緒に携帯する必要があります)
詳しくは下記URLの“ブートケーブルUSB”→“ブートチップ機能”をご参照ください。
http://optimize.ath.cx/bootcable/index.html
ブートスティック(SMS)を使うと、GBAをフラッシュカセット(ゲームカセット)を使用せずに、ユーザプログラムを実行する事ができるようになります。
SuperMemoryStick(SMS)と呼ばれる、ゲームのセーブデータをバックアップするためのツールを使用します。このSMSにUSBブートケーブルを使用してCWTAプログラムを書き込みます。SMSを使うと、CWTA起動時にはUSBブートケーブル及びフラッシュカセットは不要で、SMSとGBAだけを携帯することで外出先でもCWTAが利用できるようになります。
8MBit容量のSMSでは合計で4本のプログラムを書き込む事ができ、とてもコンパクトで価格も安価です。私も、早々入手して動作確認してみました。これは、なかなか便利です。
詳しくは http://optimize.ath.cx/bootcable/sms.html をご参照ください。
又、本サイトのサポート情報(Q&A)にも、SMS書き込み手順(PDF)の説明がありますので参考にください。
尚、SMSはオプティマイズの通販ショップより入手できます。 (残念ながら、今現在は「在庫切れ」となっているようです。入手困難な場合は、次で説明するSuperCardをご検討ください。)
SuperCardは、GBAのゲームカセットのスロットに挿入する、フラッシュメモリカートリッジの一種です。記憶媒体として、SDメモリカードとCFメモリカードを利用する種類があります。
詳しくは、 http://supercard.hp.infoseek.co.jp/index.html をご覧ください。
![]() |
![]() |
SuperCard と SDメモリカード | SuperCardでCWTAを実行したところ |
私は、SDメモリカード版のSuperCardを入手して動作確認したので、SD版を例に説明していきます。(定価では、SD版の方が安価に入手できるようです)
SuperCardを使ってCWTAを利用するのに必要なものは以下です。
(1)GBA SuperCard SD Version
(2)SDメモリカード(容量は16MBもあれば十分です)
(3)パソコンでSDメモリカードに書き込める環境(カードリーダ/ライター)
CWTAプログラムファイル(cwta.bin)を書き込んだSDメモリカードをSuperCardに入れて、GBAのゲームカセットのスロットに装着して起動することで、CWTAが実行できます。
SuperCardを使うと、ゲームボードアドバンス(SP)はもちろん、GAMEBOY microやニンテンドーDSでも動作できます。
特に、GAMEBOY microはゲームボーイアドバンスSPよりも更にコンパクトで、ステレオミニジャックのヘッドフォン端子も標準装備ですので、携帯するには更に便利になっています。
SuperCardでCWTAを利用するだけでしたら、ブートケーブルとSMSは必要ありませんので、場合によってはトータル費用はSMSで使うより安くなります。
尚、SuperCardは、GAMEBANK( http://gamebank.jp/ )から購入する事ができます。
インターネットオークションなどでも、ショップの方が出品されている事もあります。
特に、Ver1.10からサポートした自作テキストファイルで受信練習できる「ファイルモード」とSuperCardを一緒に活用する事で、CWTAは更に威力を発揮します。このSuperCardは、なかなかの優れものでお勧めです。
GBA通信コネクタに電鍵を接続する事で、実際に電鍵を使用したモールス打鍵の練習を行う事ができます。
電鍵を使用する場合は、[SELECT]ボタンで送信練習モード(Send)を選んで、[B]ボタンで'N'を指定する事で、通信ポートが有効となります。[L]ボタンで'L'を指定するとエレキーモードになります。[START]ボタンを押して送信練習が開始すると、打鍵したモールス符号を判読して文字を表示します。
尚、GBA通信コネクタを利用しますので、ブートケーブルやSMSとの併用は実用的には不便です。従って、電鍵接続できるのは、SuperCardなどのフラッシュメモリカートリッジから起動した場合に使える機能と考えてください。
電鍵は、GBA通信コネクタの下記信号に接続します。
①縦振キーの場合
5ピン(SC)と6ピン(GND)の信号間に電鍵を接続。
②エレキーの場合
6ピン(GND)を共通端子に、5ピン(SC)を短点端子に、4ピン(SD)を長点端子に電鍵を接続
![]() |
![]() |
GBA通信コネクタのピン配列 | 電鍵接続用のケーブル製作例 |
GBAの通信コネクタに接続するコネクタの入手は、市販のGBA同士を接続するリンクケーブルを購入して、そのケーブルを切って使うのが近道です。上左図にGBA通信コネクタのピン配列を示します。この図はGBA側のコネクタを表しています。ケーブル側を見た図ではありませんので注意ください。結線については、テスターなどで十分に確認してください。
上右写真は筆者が作成した接続ケーブルの例です。クリップのところに電鍵を接続します。利便性を考えてコネクタで中継しましたが、ケーブルから直接電鍵に接続してもかまいません。
但し、最近新しく発売されたゲームボーイミクロやDS(Lite含む)は、通信コネクタの形状が異なり、前記説明のケーブルでは使用できません。今のところ、ミクロやDSの通信コネクタの仕様が不明ですので、電鍵を接続する場合は、ゲームボーイアドバンス(SP)でお試しください。
CWTAを開発した環境を、参考までに紹介しておきます。
当初Ver1.01までは、Linuxパソコン(Turbolinux)に、ARM用のGCCコンパイラをインストールしてLinux上で開発していましたが、Ver1.10からは、Windows用のDevkitAdv環境を利用して作成しています。
GBAのプログラミングは、Linuxパソコンだけでなく、Windowsパソコンや、更にはマッキントッシュ(Mac OS X)でも、開発はできます。
GBAソフト開発入門の参考用に、下記のページに、開発環境の構築手順や簡単なサンプルプログラムを紹介していますので、興味のある方はご覧ください。
GBA上でモールスの音が鳴った時には、感激もんでした。音質も綺麗な音で、更に携帯も容易なので、モールス練習も場所を選ばず気軽にできるのではないでしょうか。但し、機材を一から揃えるとなるとけっこうな出費ですので、お子さんから少しの間だけ借用して試してみるのも如何でしょうか(^_^)。
SuperCardを使えば、何本もの自作したプログラムをGBAに収録して持ち歩けるので、アイデアしだいで様々な応用も考えられるのではないでしょうか。
CWTAはファイルモードと電鍵接続の機能を備えた事で、機能的にはWindows版のCWTW-Proに迫るまでになりました。今後は、CWTW-ProでもCWTA用のデータファイルを扱えるようにするなど、双方ソフトの融合を進めて行きたいと考えています。今後も更に便利にしていきたいと思っております。
~ エピローグ ~
GBAはゲーム機ですが、表示装置と入力装置をコンパクトに装備し、2個のCPU(32ビットと8ビット)をデュアル搭載する汎用的なコンピュータシステムです。アセンブリ言語やC言語で作ったソフトを一から実行させる事ができるので、自作したOSを組み込む事も可能です。コンピュータを基礎から理解する上でも、素晴らしい教材になるので、興味のある方は、GBAプログラミングに挑戦されてみては・・・。
昔、パーツ屋でCPUチップ(8085,6809など)を買ってきて、ユニバーサル基板上に組み立てた自作コンピュータ(当時はマイコンと呼んでいた)に、マシン語から打ち込んで一から動かしたのに近い感覚がある。あの頃の記憶が蘇ってきた・・・。
最後に、「Linuxから目覚めるぼくらのゲームボーイ!(第1回~第4回)」という記事が無かったら本ソフトは出来なかったでしょう。素晴らしい記事を提供くださった西田亙殿に本当に感謝致します。