2012年5月25日金曜日

ひつじや~い!


ひつじ。。。
ゲーム説明
ジョイステック使用可
今日も一日よい天気…羊飼いのあなたは元気な羊君達を柵の中に集めます。
でも可愛い狼が邪魔しに来たり、彼女がデートに誘いに来たりで大忙し。
日暮れまでに羊君達を集められるかな!?彼女のデートに付き合うと得点アップです。

ジョイステック、使えたのね。。

今回もRAM PACに保存するが、カエルシューターやヒヨコファイターとほぼ同じ。
まずBASICは以下のように変更して、RAM PACに「hitsuz」と保存。
変更前
変更後
30 BLOAD#-1,"hicd"
30 BLOAD"h"
40 DEF USR 1=&H8E00
40 DEF USR 1=&H8F00
まずは、ローダー(hicd)をテープからロード
CLEAR ,&H8DFF
BLOAD #-1,"hicd", &H8E00
デコード後、自動で起動しないように、RETを突っ込む。
JP 8F00
[8E41] C3 00 8F
RET
[8E41] C9
ローダーを起動して、テープから本体プログラムを読み込み。
無理な場所にRETを突っ込んでるので、BASICに戻るときエラーが出るが、気にせずBSAVE
A=&H8E00:CALL A
BSAVE"h", &H8F00, &H5100
ヒヨコファイターよりもバイナリサイズが大きく、&H5100で保存。
これで、RAM PACへの保存終了。

以降は、run "hitsuz"で起動できる。
オープニング。左から、ひつじ、ひじかい、ムスメ、オオカミ。。。

KEYは2-4-6-8とあるが、1-3-7-9で斜め移動もできる。
パッケージにはちゃんと書いてるね。

ひつじを柵の中に全匹入れて、入り口の柵を閉めると1面クリアー
ムスメをキャッチすると、ハートが出て得点アップ。

オオカミは、入り口を勝手に空けて、ひつじを逃がしてしまう。。

上の太陽が左から右に移動し、日が暮れるまでにクリアーできなければゲームオーバー

動画はこんな感じ



2012年5月18日金曜日

実機デバッグ

デバッグ用にAndroid 2.2のタブレットを購入。

まずは、「設定」→「アプリケーション」

「提供元不明のアプリ」を許可する。

次は「開発」→「USBデバッグ」をオン。

次、PC側。 Android SDK Managerで、「Google USB Driver」をインストールしとく。

USBケーブルで、AndroidをPCと接続。
ドライバを要求されるので、インストールした「Google USB Driver」のフォルダを指定。
上記の場合、
C:\Program Files (x86)\Android\android-sdk\extras\google\usb_driver\
amd64とi386の両方用意されているので、64bit Windowsも大丈夫。
が、インストール失敗。ドライバを見つからないと。

早速デバイスマネージャで、ベンダーIDをチェック。
「USB\VID_18D1&PID_0002&MI_01」とな。 

さっきのusb_driverフォルダの下に「android_winusb.inf」があるのでちょいと編集。

32bit Windowsなら、
[Google.NTx86]
64bit Windowsなら、
[Google.NTamd64]
の下に
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_0002&MI_01
を追加して保存。

も一度、新しいinfを使ってドライバの更新。
インストール中にセキュリティの警告がでるが、今度はインストールされた。
XP 64bit版の場合、32bit版と同じようにそのままインストールできるから便利ね。
Vista以降の64bitは、署名の無いドライバインストールは厄介だけど。

次はEclipseの設定
「AndroidManifest.xml」→「アプリケーション」タブ→「Debuggable」をtrueにセット

「プロジェクト」メニュー→「プロパティ」→「実行/デバッグ設定」でプロジェクトを起動構成を選択して「編集」ボタン
「ターゲット」タブで、「手操作」を選択しておくと、デバッグ実行時にエミュか実機かを選べるようになる。「自動」だと、実機がつながってると、実機でデバッグが動くようになる。

動かしてみた感想は、速い。(エミュが遅すぎという説も。)
OpenGL ES 2.0も動いた。いいかんじ。

2012年5月11日金曜日

ヒヨコファイター

カエルの次はヒヨコ

ゲーム説明
ヨチヨチ歩くヒヨコをヘビがねらっています。
赤い玉子を食べるとスーパーヒヨコマンに変身。逆にヘビをやっつけられるのだ!!
上手にワープトンネルを利用しよう!

スーパーヒヨコマン???
ハドソンは、相変わらず粋なシナリオ設定だ。

今回もRAM PACに保存するが、前回のカエルシューターとほぼ同じ。
まずBASICは以下のように変更して、RAM PACに「hiyoko」と保存。
変更前
変更後
30 BLOAD#-1,"hiyoldr"
30 BLOAD"h"
40 DEF USR 1=&H8E00
40 DEF USR 1=&H8F00
まずは、hiyoldrをテープからロード
CLEAR ,&H8DFF
BLOAD #-1,"kloader", &H8E00
デコード後、自動で起動しないように、RETを突っ込む。
JP 8F00
[8E41] C3 00 8F
RET
[8E41] C9
ローダーを起動して、テープから本体プログラムを読み込み。
無理な場所にRETを突っ込んでるので、BASICに戻るときエラーが出るが、気にせずBSAVE
A=&H8E00:CALL A
BSAVE"h", &H8F00, &H3900
カエルシューターよりもバイナリサイズが大きく、&H3900で保存。
これで、RAM PACへの保存終了。

以降は、run "hiyoko"で起動できる。
オープニング。ヒヨコの名前は、ピーター。。

ヘビを避けながら、上の鶏が産む玉子(卵?)をせっせと集める。

赤い卵をキャッチすると、スーパーヒヨコマンに変身!!緑のヘビは退治できる。

しばらくすると普通の(スーパーでない)ヒヨコに戻る。


動画はこんな感じ

2012年5月6日日曜日

OpenGL ES 2.0のエミュレータ動作

Android SDK Tools Revision 18から、エミュレータがGPUアクセラレーションに対応したということで、試してみる。
エミュレータでOpenGL ES 2.0も動くらしいので期待大。

Eclipseを起動して、メニューの「ウィンドウ」→「AVD Manager」をクリック。
「Android Virtual Device Manager」ダイアログが表示される。
Android 4.0.3のターゲットを選択して、「編集...」ボタン。

「Edit Android Virtual Device」ダイアログが表示される。

ハードウェア欄の「新規...」ボタンで「GPU emulation」を選択。
「Edit Android Virtual Device」ダイアログに戻ったら、「値」を「yes」に変更。

これで4.0.3のエミュレータで、OpunGL ES 2.0が動くようになった。
同じ手順で2.2も試してみたが動かず。4.0.3限定の機能らしい。

ということで、プロジェクトのデバッグ設定もも4.0.3のエミュレータに変更してみる。
Eclipseのパッケージエクスプローラーで、プロジェクトを選択して右クリック→「プロパティー」を選択。

左のツリーで「実行/デバッグ設定」を選択。
起動構成でプロジェクトを選択して、右側の「編集...」ボタン

「構成の編集」ダイアログが表示されるので、「ターゲット」タブを選択し、「自動」ラジオボタンで「Android 4.0.3」のターゲットをチェック。
毎回、手動で選択する場合は「手操作」ラジオボタンを選択すればよい。

2012年5月4日金曜日

Javaファイルの文字エンコード

備忘録。

雑誌付録などのJavaファイルをEclipseで読み込むと文字化けしてしまったので、その対策。

Eclipseのメニュー「ウィンドウ」→「設定」で、設定ダイアログを開く。

左側のツリーで、「一般」→「コンテンツ・タイプ」を選択
右上のツリーで、「テキスト」→「Javaソース・ファイル」を選択

デフォルト・エンコードのテキストボックスに「UTF-8」と入力して「更新」ボタン

2012年5月3日木曜日

カエルシューター

これも、一応3Dゲーム?

ゲーム説明
地球防衛軍の君は襲い来るカエルの形をしたエイリアンを退治すべく飛び立ちました。
水玉爆弾は、目にも止まらぬ速さで飛んで来るから御用心!!
カエルのエイリアンなんて変な設定、、、と思っていたが、今なら普通か。

今回もRAM PACに保存するが、ちょっと面倒。
まずBASICは、以下のように変更して、RAM PACに保存。
変更前
変更後
30 BLOAD#-1,"kloader"
30 BLOAD"k"
40 DEF USR 1=&H8E00
40 DEF USR 1=&H8F00
"kloader"というマシン語のローダーが、本体のマシン語プログラムをデコードして展開している。
ローダーの起動アドレスが8E00h、本体のマシン語プログラムが8F00hからのスタート。

まずは、そのkloaderをテープからロード
CLEAR ,&H8DFF
BLOAD #-1,"kloader", &H8E00
デコード後、自動で起動しないように、RETを突っ込む。
JP 8F00
[8E41] C3 00 8F
RET
[8E41] C9
標準モニタを使う場合、以下の手順
MON ... モニタを起動
M 8E41 ... 8E41hのアドレスを編集
C9 ... C9を上書き
T ... ターミナルに戻る
D 8E41 ... ダンプして、C9が書き込まれているか確認
B ... BASICに戻る
ローダーを起動して、テープから本体プログラムを読み込み。
無理な場所にRETを突っ込んでるので、BASICに戻るときエラーが出るが、気にせずBSAVE
A=&H8E00:CALL A
BSAVE"k", &H8F00, &H2900
RAM PACへの保存終了。
以降は、run "kaeru"で起動できる。


キー操作は
上[8]
スペース・キーで爆弾発射。
左[4]
右[6]
下[2]

敵が弾を受けると、卵→おたまじゃくし?→カエルに変化し、最後にカエルに弾を当てると消滅。

動画はこんな感じ

2012年5月1日火曜日

LABELがない

今頃、気が付いてしまった。

以前作ったパソピア700のUSBキーボードアダプタに、LABELキーがマッピングされてない。。。
この赤丸キー↓
ということで、早速修正。

どのキーにしようかちょっと迷ったが、Scroll Lockにしとく。
新しいマッピング。

USBキーボードパソピア700
EscTAB/ESC
TabSHIFT+TAB/ESC
F1~F8PF1~PF8
F9~12SHIFT+PF5~PF8
EndHOME/CLS
HomeSHIFT+HOME/CLS
半角/全角漢字
Print Screen(COPY)
Scroll LockLABEL
Pause(STOP)
Caps Lock/英数CAPS LOCK
CtrlCTRL
ShiftSHIFT
AltGRAPH
1~0 A~Z Space - ^ ¥ @ [ ; : ] , . /同左
\(ろ)=(ロ)
Delete BackspaceINS/DEL
InsertSHIFT+INS/DEL
EnterRETURN
カタカナ/ひらがなカナ
↓/↑
← →同左
SHIFT+↓/↑
(10Key)0~9 . / * + -同左
※ 変換/無変換/Winキーは割り当てなし

該当チップは、ATTiny2313の方。
チップを外して、修正したROMを書き込む。

キーマトリックスも、1箇所まちがってたので修正

LABELキーの動作を動画で