About WonderWitch 今回のお題:
『短期集中連載 WonderWitch 日記 (4)』
●今日の一発目
電池 3 本目突入か?
8/7 〜 8/11
開発の重心は、小物 (1)「連打測定器 for WonderSwan」に移行しました。(苦笑
連打測定器 for WonderSwan Ver.0.1.0
処理の効率はかなり無視してます。ちなみに、私は113発が限界でした。
makefile は私の環境に合わせて作ってあるので、
各自の環境に合わせて弄らないと、makeできません。たぶん。
作っていていろいろと分かったことは次の通り。
- cursor_set_type() の、第 1 引数の説明 (P121) の、「キャラクタパレット番号を
0 〜 15 で指定」ってのは、「LCD カラーパレットの番号で指定」と言う意味。
- カーソルを VBLANK 1 回毎に更新すると悲惨。
- 画面全体をテキスト表示用にした( text_screen_init() )ときでも、キャラクタ番号 0 〜 7
は通常通り使える。( 8 番以降はテキスト画面用としてシステムが使用 )
- 2 バイト文字は、1 文字だったら short、ばらばらで配列に収めたりする場合は short * で、
文字列として扱う場合は char *。当たり前か。
- SS != DS のため、ポインタを扱う関数では、以下の処置が必要。
呼出側: 渡すポインタ変数には static 宣言をしておく。
受け側: far ポインタで受ける。ポインタを返す場合も、far ポインタで返す。
やっぱり、テキストばかり弄っている場合でも色々と戸惑うところがありますね。
文字列( ポインタ )を受ける関数とかはその代表例でしょうか。
●備考
一応、テキスト処理は得意な方( せめてそう思いたい )なので、
開発は割と速く進むと思います( やはりそう思いたい )。
サウンドとか、多少の画像なんかも追加予定です。とりあえず、ハイスコア機能から。
開発中に、「デフラグ中に電源が切れる」という事態に遭遇し、
OS ごと逝っちゃったので、復旧手順をメモしておきます。
- 電池を新しいのと入れ替える。
- B ボタンを押しながら電源を入れて、Freya Monitor を出す。
- 「Recv System」を選択。
- 「Negotiating...」と出たら、\WWitch\fbin\freya100.bin を、XMODEMで送信。
TransMagic や wwPut ではうまくいかなかったので、秀 term で WonderWitch に接続し、
転送 - アップロードで XMODEM を選択して送信。
- FlashROM のチェックが入り( 入らないときもあるのかな ?)、Meg が起動。
- 何故か FlashROM、SRAM ともにゴミファイルが大量に入っている
( サイズは 0 らしいが )ので、Meg 上から全消去を掛ける。
( このときに何故かもう一度電池が切れた。そんなに少なくなっている様子は無かったのだが )
- Ged と SoundIL を転送して、出来上がり。
ゴミファイルが出てきたときは結構ビビりました。(苦笑
デフラグとか、FlashROM 全消去って、結構電池を喰うらしく、
結構大丈夫そうな電池でも「ぷちっ」と逝っちゃったりするのです。
一寸( 1 〜 2 分 )使うと切れるような、殆ど中身 (?) の残ってない電池を、
ちまちま使いながらデバッグをしているので、何も考えずにデフラグするとこうなります。
ところで、XMODEM の転送速度は平均 2.3kbyte/s 程度でした。
実際のところ、38.4k で繋いでてこの速度ってのはかなり遅いです。
ZMODEM だと、33.6k で繋いでも、3.4kb/s 程度が安定して出ます。
誰か、ZMODEM 載せてくれませんかね〜。最強のプロトコル NMODEM でも良いです(笑