2.2.1 プログラムの変換法



 ここからディレクトリという言葉が出てきますが,ディレクトリとはフォルダのことです.ここでは, CドライブにH8フォルダを作成したものとして説明を進めていきます.
1. プログラム作成( ***.src形式のファイル作成)
  作成するプログラムの拡張子は「src」とします.アセンブル用ディレクトリ(H8フォルダ)内に書き込みます.ここでは例題2.1(LEDON.srcファイル)を使用します.

2. コマンドプロンプトの立ち上げ
  コマンドプロンプト( MS-DOSプロンプト)を起動しカレントディレクトリ(現在のフォルダ)をアセンブル用ディレクトリ(H8フォルダ)に変更します.

・コマンドプロンプト( MS-DOSプロンプト)の起動の仕方

 次の順でスタートからコマンドプロンプト( MS-DOSプロンプト)を起動して下さい.
  
  ◆Windows2000,XPの場合:スタート→プログラム→アクセサリ→コマンドプロンプト
  ◆Windows98,95の場合:スタート→プログラム→MS-DOSプロンプト
 
  デスクトップにショートカットを作成すると便利です.

コマンドプロンプトのウインドウ内では DOSコマンドを用いて作業を行います.
DOSコマンドの例としては,次のようなものがあります.

dir:ディレクトリ,Windowsでいうフォルダ内を表示します.
cd :チェンジディレクトリ,ディレクトリをかえる時に使います.

 イメージ的には Windowsの環境よりCPUのハードに近い所で作業するといった感じです.コマンドプロンプト内では大文字と小文字の区別はありません.ここでは入力も大文字で示しますが,実際の入力はどちらでもかまいません.
 

コマンドプロンプトを開くと,(Windows2000の場合)

=====================================================================================
Microsoft Windows 2000[Version 5.00.2195]
(C)Copyright 1985-2000 Microsoft Corp.

C:\> =====================================================================================
と表示されます.
H8フォルダに移動するには,

C:\>CD H8

とタイプして,リターンキーを押して下さい.

=====================================================================================
C:\WINDOWS>

=====================================================================================
などのように表示されている人は,

C:\WINDOWS >CD \
C:\>CD H8

とタイプして下さい.

図2.2の「3.アセンブル→」の右側のように

C:\h8>

と表示されたら, H8フォルダに移動できています.

3. アセンブル( ***.obj,***.lis形式のファイル生成)

H8フォルダに移動できたので,アセンブル作業に入ります.


ここでは,LEDON. srcファイルをアセンブルします.

C:\h8>A38H LEDON

とタイプして下さい.すると,アセンブル作業が実行されます.
  そうすると,LEDON.objファイル(オブジェクトファイル)と,LEDON.lisファイル(リストファイル)が生成されます.図2.2を見て分かるように,「TOTAL ERRORS 0」,「TOTAL WARNINGS 0」となっていれば問題ありません.エラーがなかったら次に進みます.
  LEDON.lisファイルは以下のような内容です.テキストエディタ等で開くことができます.

4.リンク( ***.abs形式のファイル生成)

C:\h8>L38H LEDON


とタイプするとリンク作業が実行されます.

 そうすると,図 2.2のように「LINKAGE EDITOR COMPLETED」と表示され,LEDON.absファイル(アブソリュートファイル)が生成されます.

5.コンバージョン( ***.mot形式のファイル生成)

C:\h8>C38H LEDON


とタイプするとコンバージョン作業が実行されます.

 そうすると,図 2.2のように「OBJECT CONVERTER COMPLETED」と表示され,mot形式の実行ファイルが生成されます.
  Ledon.mot:このファイルをH8の書き込みで使用します.また,H8ディレクトリの内容を見ると,Ledon. srcの他にLedon.lis,Ledon.abs,Ledon.obj,Ledon.motの4ファイルが作成されています.Ledon.lisはリストファイル,Ledon.motがフラッシュROM書き込み用マシン語ファイル,その他は中間ファイルです.lis,mot等の拡張子はアセンブラが自動的に付けてくれます.
  これで,アセンブル作業は終わりです.

・プログラムにエラーがあるとき

図 2.4はわざと間違いを作り,それをアセンブルした時の画面です.この時のアセンブルリストは図5のようになっています.間違いは,LED1とかくところをLED3として,未定義のシンボルを使用しようとしているところです.
17行目のLED3はLED1が正しく,図2.4には,「ledon.src 17 307 (E) ILLEGAL ADDRESSING MODE」と表示されました.
リストファイルやアセンブル画面からでどこに間違いがあるかおおよその見当がつきますから,それを手がかりに修正をして下さい.

=====================================================================================

16 16 ;-----MAINルーチン--------
17 000100 0000 17 LEDON: BSET LED3 ;LED1をONにする
*****ERROR 307 (C:\H8\LEDON.MAR)
18 000102 40FE 18 LOOP: JMP @LOOP ;ここで常にループ
19 19
20 20 .END
*****TOTAL ERRORS 1
*****TOTAL WARNINGS 0
*** H8/300H ASSEMBLER (Evaluation software) Ver.1.0 *** 12/01/01 02:08:07 PAGE 2

=====================================================================================
図2.5 エラーがあるときのアセンブルリストの例

プログラムを,修正したら,アセンブルをやり直します.エラーが無くなったら,リンク,コンバージョンと進みます.


[山口研究室] <back | index | next >