トップページへ

自作ソフトのプログラミング方法

※ コマンドプロンプトの使い方がわかる人向け

■はじめに

 「ポケステソフトを作るには?」で紹介したスロットゲームのプログラムを使って説明していきます。ですから、ちゃんとプログラムをコンパイルができたことが前提です。その上で以下の項目を行って見てください。

■コンパイルをし直す

 プログラムをしていく上では、何回もmakefileでコンパイルする事になりますが、注意することがあります。コンパイルを簡略化するためにMAKEというソフトを使っています。そのため、コンパイルされるファイルは、以前にコンパイルしたときよりも新しい日付・時間でないとコンパイルしません。そのため、プログラムを変更していないのにコンパイルしようとすると、既にコンパイル済みという意味のエラーが出ます。これはプログラムミスという訳ではないので注意して下さい。プログラムファイルのいずれかを更新(上書き)するこどでコンパイルできるようになります。

■必要なファイル

 コンパイル作業のためには以下の2つが必要です。

・ldscript   C言語でコンパイルするための情報ファイル。必須
・locore.S   C言語で記述できない部分をアセンリで書いたもの。必須

 また、ポケステソフトをC言語で作成する上で必ず必要となるファイルがあります。

・Makefile.arm  コンパイルするファイルや、コンパイル方法を記述したファイル。
・makefile.bat  上記ファイルを実際にDOS上で実行するためのバッチファイル。

■ポケステ上のソフト名を変えてみる

 ソフト名は、locore.Sのアセンブラプログラム上に記述しています。記述場所は以下の部分です。

  /* 01234567890123456789012345678901 TITLE*/
.ascii "テストプログラム             "
.ascii "                     "

 .asciiの2行に名前を入力します。漢字もOKです。ただし、「"」で囲まれた部分の幅は決まっているので、足りない部分はスペースで埋めてください。幅が違うとうまく動作しなくなります。

■タイトルの色を変えてみる

 ポケステの画面は、32x32ドットです。絵を作成するだけならば、windows上のペイントソフトを使って32x32ドットで作成することはできます。しかし、ポケステ上で絵を表示するためには、その絵をデータ化してプログラム上に配置する必要があります。そのためポケステ用にデータ化するためのソフトが必要となります。

 「ポケステソフト」のページに絵をデータ化するためのソフト「BMP2DATA」を置いてありますのでそれを使用して下さい。このソフトは、windows上のペイントソフトで作成したビットマップファイル(*.bmp)を対象としていますので、32x32ドットのbmp形式で絵を保存して下さい。詳しい使い方はソフト同伴のreadme.txtを参考にして下さい。

 スロットゲームのプログラム上でタイトルの絵を表示している部分はmain.cの以下の部分です。

void
title()
{
static u_int lcd_title[ ] = {
0x1cfc7ee0,0x3ffffff8,…,
};

memcpy(lcd, lcd_title, sizeof(lcd_title));
}

 上記 static u_int lcd_title[ ]={ ※この部分の数値の羅列がタイトルの絵のデータ※ }

 データが一列に並んでいますが、複数行になっても特に問題はないです。{}の間に、BMP2DATAを使ってデータ化したものを、元のデータと置きかえてファイルを上書きし、コンパイルしなおせばタイトルの絵を変えることができます。ちなみにmemcpyのとことで、絵をコピーしています。

■初期化について

 ポケステを動作させるための初期設定については、init.cに記述してあります。ポケステで初期化するべきものを簡単に書きますと、

・ポケステの動作周波数(動作クロック)

・割り込みの設定

・画面の設定

・セーブデータの読みこみ

があります。

以下中断

トップページへ