2007年4月1日日曜日

MAPLUS オービスアラーム プラグイン作成中

MAPLUS にオービスアラーム機能を付加するプラグインを作成中.

原理としては,
1. PSP の USB GPS のデータをリードするシステムコールをフックして,現在位置をゲット
2. オービスデータベースを参照し,近くにオービスがあったら警告

1. のシステムコールをフックして,現在位置をゲット は割と簡単にできた.これでルート案内中でもナビのログを取る事ができる (MAPLUSは,ルート案内中は GPS ログを取れないという変な仕様).
もんだいは 2. の警告音を鳴らすやつで,いろんなサンプルをあたってみたけど,ほとんど mikmod とか SDL とか,ゲーム向けの巨大なライブラリを使用していて,プラグイン化するとメモリが足りない…

そのうち pspAudioInit() と pspAudioSetChannelCallback() を使ったサンプルを見つけたので,これで実装してみたらそこそこいける.だが依然 pspAudioInit() がメモリを食うのか,MAPLUS の起動中に pspAudioInit() が呼ばれたりするとメモリアローケートに失敗して MAPLUS が死ぬ_| ̄|○

サウンドを鳴らす軽いサンプルプログラムどっかにないかな〜?

0 件のコメント:

コメントを投稿