画面 - みる会図書館


検索対象: 月刊 C MAGAZINE 2000年9月号
71件見つかりました。

1. 月刊 C MAGAZINE 2000年9月号

”′ル 'it 朝 programming 厄 ( わ [ し よく利用されていた「スプライト」と呼ばれ みで知る方法です。 考えておくこと るユーザが定義可能な表示機能を 128 枚 , 方法自体に優劣はありませんが , 割り込 優先度を変更する領域を設定できる画面を みを使ったほうがより高度なプログラミン 基本的なアルゴリズム ( と呼べるほどの 2 面持ちます。詳しい構成は WonderWitch グ技術が要求されます。また , CPU の使 のドキュメントを参照していただくとし ものでもない ) が理解できたら , ほかにも 用効率からいえば割り込みを使うほうが有 こでは概略を説明します。 いくつか考えておくことがあります。ホビ 利ですが , ゲームは普通 , 自分の効率だけ て , ーでゲームを作る場合はゲームデザイナが Wonde wan の画面表示は , ほぼ 1 / 75 秒 [ 注 2 ] を考えて設計すればいいので , あまり CPU を 1 周期とするタイミングで表示していま プログラマ自身であるためにあまり意識を の使用率そのものは問題にならないでしょ す。 WonderSwan は表示方向が一定ではな しないことが多いのですが , 「ハードでで い , めずらしいタイプのハードウェアです きること」をよく理解することがたいせつ いつ書き換えるか ? ここでは画面が長いほうを横方向と考 です。「ハードでできること」が多ければ が えます。表示ハードウェアは画面横方向に 多いほどプログラムは論理部分に集中で いままでは「連続した時間のいつが表示 き , また視覚上の効果も ( 相対的に処理速 1 ラインずつ表示し , 1 / 75 秒で 1 画面描画 します。毎秒 75 枚表示するわけですが に影響を及ばさないで書き換えができるか」 度が速いため ) より期待できます。 たとえば WonderSwan ではガラスが壊れ おそらく画面の書き換え速度はここまで速 をあえて明言していませんでしたが , その 落ちるような演出は「とても無理」ですが , 時間帯はいわゆる垂直帰線期間と呼ばれる い必要はなく半分のレート , つまり 1 / 37.5 秒に 1 回書き換えができれば実用上問題な 時間です。 パレット操作によるフェードインフェード アウトは「とても簡単」です。ウインドウ いと思われます。 Fig. 1 のように連続した表示期間の間に 機能を使った演出も「とても簡単」です。 短い非表示期間が存在します。この間が書 [ 注 2 ] リフレッシュレート 75Hz ということに なります。けっこう速いレートです。 ードをうまく使った簡単で効果的な演出 き換え可能な時間になります。ちなみに先 ノ、 ほどの画面バッフアの場合は Fig. 2 のように をゲームデザイン時に十分考えておくこと がたいせつです。これを怠ると「とても無 なり , CPU 処理時間が長くなるのがわか ボーリングと割り込み 理な仕様」が「ゲーム必須」の仕様になって ります。 これらの画面書き換えには「いつ画面を しまい , 先に進めなくなってしまいます。 WonderSwan ではそもそもフレームバッ 書き換えればいいのか」基準となる時間を フア自体がないので , 垂直帰線期間に全部 ポーリングを使った基本処理 知る必要があります。 WonderWitch では 2 書き換えをしなければいけません。ですが スプライトでは直接 VRAM を操作するわけ 種類の方法が用意されています。ひとつは なポーリングによる制御 * / do ( システム側で用意されているハード監視ル ではないので , 十分間に合います。 Wond ーチンを呼ぶ方法 ( ポーリング ) , もうひ erSwan でのゲームでは List 1 , 2 のような とつは書き換え可能なタイミングを割り込 アルゴリズムが基本になるでしよう。 Fig. 1 非表示期間と表示期間 List 移動の処理ー ユーザの処理ー 画面データへの反映ー 垂直帰線期間を待つ一 画面データをハードウェアをこ反映ー ) while ( ゲーム継続中 ) List 割り込みを使った基本処理 / * 割り込みよる制御 * / do { 移動の処理ー ユーザの処理ー 画面データへの反映ー 書き換えフラグ = 可能ー } while ( ゲーム継続中 ) / * 割り込み処理 * / if ( 書き換えフラグ = 可能 ) 画面データをハードウェアに反映デ 書き換えフラグ = 不可能 非表示期間 表 表 / * 省略 * / 164 C MAGAZINE 20 9

2. 月刊 C MAGAZINE 2000年9月号

8 ムヒ ーションを開発できる環境が提供されています。この特集では , PDA のプ ログラミング手法とともに , PaIm, Windows CE(PaIm-size (C), そ アプリケーション開発の特徴と手法を解説していきます。また , 各メーカ ーのご協力により , PDA 本体と開発環境の読者モニタを用意しました。興 味をお持ちの方は , この機会にせひご応募ください。 PDA プロクラミン % PdIm Windows CE Zaurus 特集 2 携帯端末を使いこなす コツ 活躍するわけです。実際には現状の携帯電 そして通信インフラの整備に伴い , 最近 PDA 最新事情 舌より数年も前に製品が登場し , 多くのユ は 2 ) のようなインターネットへのアクセス こ 1 , 2 年で一気にモバイルコンピュー ーザからの意見によって機能が成熟されて 機能が強化されています。その中心は電子 ティングが花開こうとしています。携帯電 いるのですから , 便利なのも当然です。 メールの送受信機能ですが , Web プラウザ 話や電子メールの普及 , Web を利用した情 最近 DPDA に ! 載されて 0 、る機能には , を搭載して Java に対応する機種も増えてき 報発信など , いま必要な情報がリアルタイ ました。これからは , どの PDA にも基本機 次のような特徴力あります。 ムで入手できる製品とシステムがそろって 能として搭載されていくでしよう。 1 ) 電子手帳としての機能 ( 曰 M ) 3 ) のマルチメディアへの対応は , 現在い きました。 2 ) メールなどインターネットへのアクセ とくに , 携帯電話のメール表示機能は本 ちばんの目玉であり , もっとも激しい宣伝 ス機能 体の持ち運びやすさもあってとても便利で 3 ) マルチメディアへの対応 競争が行われている機能です。 PC ほどのス す。また銀行の残高照会など , ー画面で済 1 ) の電子手帳としての PIM は , これら PD ペックはないものの本格的なハードウェア む情報ならば簡単かつ手軽に使うことがで A の基本機能です。 PDA 単体としての使い を持つ PDA ならではの機能で , PDA の多機 きます。ところが情報端末として見た場合 , 勝手や PC とのデータ連携機能などがあげら 能性をアピールするのには格好のポイント 携帯電話は持ちやすい反面 , その小さな画 れます。基本だけにいちばん成熟した機能 になっています。それを支えるのがネット 面やメモリでは扱う情報量に限界がありま であり , すでに各 PDA とも機能的な差はほ ワーク向けのマルチメディア技術です。と とんどありません。そのぶん入力方法や基 す。 くに M 円形式のサウンドデータはデータサ 本画面などのインタフェイスが工夫されて そこで , 携帯電話ほどの可搬性はないも イズと品質のバランスに優れ , 次世代の携 ののポケットに入る程度の大きさであり , おり , 見た目の特徴がいちばん現れるとこ 帯音楽フォーマットとして有力視されてい 見やすい画面と多機能を両立させた PDA が ます。すでに M 円専用のコンパクトなプレ ろでしよう。 特集 2 携帯端末を使いこなす PDA プログラミングのコツ 43 1 三ロ 一ごロ

3. 月刊 C MAGAZINE 2000年9月号

特集 2 PDA プロクラミン Fig. 9 ターゲットと画面モードの設定 Fig. 8 クラスメイトアプリケーション種類の設定 新規 PowerParts アプリケション : べ、 - ジ 3 / 4 新規 PowerParts アプリケーション : ページ 1 / 4 ターゲット : @Win32 D アプ丿ケーションクラス 場所 ( P : アプリケーンの種類 ) 、一コ 起枷寺にウインドウを作成する lß : 引 nl Z r い b 凱れに R おに 33 色 - m 朝惓¥お usl ¥ tes 1 れ est21 ¥ App 0 両像モード : CNGA QVGA く戻る⑧ 冫攵へ⑩〉 イアログボックスが表示されます (Fig. 9 , ation ウイザード」を選択します ( Fig. 7 ) 。 こをチェックしておけば IDE 起動時に 次のウイザードでは , クラス名やアプリ TabIe 3 ) 。画面モードはターゲットとなる イアウトエデイタやコンポーネントパレッ ケーションの種類を設定します ( Fig. 8 ) 。ア Zaurus の機種によって VGA と QVGA が選択 トが表示されるようになるので , 通常はチ プリケーションの種類では「 Deskt 叩」と ェックをしておけばいいでしよう。 でき , おのおの 640X480 ドットまたは 320X ボタンをクリックすると , ウインド 「 FixedView 」が選択できます。 Deskt 叩は 240 ドットの画面サイズです。 ウクラスを設定するダイアログボックスが 次はタイトルと詳細を記述するウイザー PowerParts のウインドウを , FixedV1ew は P owerPa ホの固定ビューをそれぞれ作成しま 表示されますが , そのまま進むことにしま ド画面になりますが , この内容はコード す。さらにボタンをクリックすると , の内容には直接関係ありません。 す。下部にある「起動時にウインドウを作成 この画面でウイザードでの設定は終了で する」をチェックすると , IDE は自動的に新 フ回作成する PowerPa れ s アプリケーション す。翩ボタンをクリックすると IDE 起動 規レイアウトフレームを生成します。また , のターゲットと画面モードの設定を行うダ 画面になります ( Fig. 10 ) : 先ほどのウイザ Fig. 10 Powe 「 Pa 「 ts の IDE 画面 ードで「起動時にウイントウを作成する」を 設定しているので , すでにレイアウトエデ ウイン レイアウト ヘル癶旦 ) ファイル 0 煽集 ( 印表検索 0 フ第シト但 ) カゞッグ 0 乙 イタやコンポーネントパレットが表示され ています。 レイアウトエデイタとコンボーネントバレット IDE が起動した状態でこのレイアウトェ デイタとコンポーネントパレットを見てみ ましよう。 まず , コンポーネントパレットでフォー ム上に設定したいコンポーネントを選択し ます。次に , フォーム上でそのコンポーネ ントを配置したい場所をドラッグします。 すると , 選択したコンポーネントがドラッ グした大きさで表示されるはずです。 こではブッシュボタンとエディットフ ィールドを配置してみました ( Fig. 11 ) 。 のように , 好きな場所に好きな大きさでド ラッグするだけでコンポーネントを配置す ることができます。そして , これがそのま ま MORE ソフトの実行画面になるのが RAD ツールの特徴です。 次に , 配置されたコンポーネントを選択 携帯端末を使いこなす PDA プログラミングのコツ 67 特集 2 Metrowerks CodeWarrior 門オプエトインスべりダ、 0 . ゴ F 研 ml フ加イイ日 Name Form1 ロ既 e True 12 一日 k fore co DesktopLayer 田 læation ー rwv 1 Win32 場 , 朝ト レサイ幻川・ツ日 コート データ ファイル SH L 鬱肥 s MSL A ー L 鬱 s 脳前 SDK し 34 ファイル ・を Fo 「 ml 朝ンポーネントバレット , ー e 21- E00 ロロ劇因 IT 日ロ日ロ 毛ロロ 0 TabIe 3 ターゲットの種類 ターゲット名 内容 PC 上で Powe 「 Parts をシミュレーションする場合に利用 Win32 Debug Zau 「 us 用の Powe 「 Pa 「 ts デバッグターゲット Zaurus Debug Zau 「 us 用の PowerParts リリースターゲット Zau 「 us Release

4. 月刊 C MAGAZINE 2000年9月号

①動きのアルゴリスム ということになります。ところが B ではち ゃんとガードしているので B のキャラクタ はその場にとどまります。すなわちこれは 一貫性が崩れてしまっていることを表して いるのです ( Fig. 27 ) 。 こで注意しなければならないのは , 遅 延の絶対値が問題になるのではなく , お互 いの通信環境の遅延差が問題になるという ことです。たとえば双方がともに 5 フレー ムの遅延をコンスタントに出しているとす れば , お互いのゲーム状況の同期は画面の 描画さえ遅らせれば問題なくとることがで きます。データの到着が不規則になること によって , そのデータの一貫性が崩れるの であり , 両方の遅延環境が同じであるなら 同期に関してはそれほど問題にはならない , ということをよく理解しておいてください ( ゲームシーケンスの同期はとれるが , 入 力に対する画面の同期が遅れるという大き な問題が発生するため , 問題がないという わけではありません。あくまで遅延による 同期問題がなくなるということです ) 。 遅延問題は , 将来遅延のない理想的なネ ットワーク環境が出てくるまでなくなるこ ゃんと一貫性が保証された絵を出そうとい ームができたようです。しかし当初は , マ とはありません。しかし実際にはどんな形 うアプローチがとられました。これが描画 ニアと呼ばれるハードゲームプレイヤーか にしろ , 1 フレーム ( 1 / 60 秒 ) 以内にデータが 遅延の考え方です。すなわち , 「データが らはこの数フレームの遅延は致命的だった 必ず到達するように保証できるインフラは 揃ってから描画すればいいではないか」とい らしく , 本来収益に寄与してもらいたかっ しばらく実現不可能です。とはいえ現実に た層にはアビールできなかったようでした。 は意外と古くからいちばん厳しいといわれ うことなのです ともあれその実装の簡単さから , 現在で 昔はインターネットを介した対戦よりも , る格闘ゲームですら , ネットワーク対戦が はリアルタイム性の強いゲームにおいて , ダイアルアップで直接相手の家に電話をか 実現されています。そこにはこれらの不具 よく使われる手法となっています。 合をうまく隠蔽あるいは修正する努力が施 けて接続するタイプの対戦ゲームが主流で されているのです。以降はこれらの対策に した。この場合にはインターネットと違い , ついて紹介していきます。 回線接続ですから遅延も最小で済みます。 せいぜい数フレームぶんの遅れで済むので , 入力の取り込みから処理して画面に反映さ 上記のアプローチは遅延を解消すること せるのにそのフレームぶん遅らせることに よりも , 動きの正確さを重視した結果の方 先ほどの遅延問題ではデータの到達が遅 していました。プレイヤーからすると , 格 法といえます。これとは逆に , 正確さをあ 闘ゲームなどではコマンドを入力してから れることで対戦者同士の画面の一貫性が損 る程度犠牲にしても , 遅延を少なくすると それが画面に反映されるのに少し間がある いうアプローチも考えられます。そのひと なわれるというケースを扱いました。要は ので違和感が残ります。しかしゲーム初心 つが , 動き予測を使う手法です。 人間ですから , 画面上の絵が一致していれ 者の場合にはさほど気にならない程度でゲ 車によるレーシングゲームを例にあげま ばいいわけです。そのような観点から , ち Fig. 27 遅延による端末間のゲーム状況の不一致 端末 A , B の両画面上 で同時に技が発動 P2 側が防御入力。 データを PI 端末に 送るが・ 間に合わず PI 端末上では P2 に技ヒット。 P2 端末では 防御成功 動き予測 描画遅延による同期 特集 1 3D 動きのアルゴリズム 27

5. 月刊 C MAGAZINE 2000年9月号

WonderSwan Persona/ SO 〃Ⅳ a Deve/opment Kit ワンダーウィッチ ワンダ - スワンでホビ - プログラミングを楽しむ ! こんなゲームが作れます。 Windows 対応 創る オリジナルゲーム アプリケーション ピコピコゲーム移植 交換 インターネット公開 ダウンロード Swan 同士で直接サポート Web サイト 遊ぶ ゲームプレイ 通信対戦 モバイル 子′ゞ C 言語 スモー丿レコンピュータ ゲームクリエイター修業 WonderWitch プログラム作成 ①画面 C でのプログラムイ②画面コンヾイル : をご 0 0 0 プログラムの wonde wan への転送 PC 画面 WonderSwan 画面 0 0 プログラムのセレクト WonderSwan 画面 加ツムエ : ワ ? つ工ソア 1 ※ WonderSwan 本体は別売です。 特徴 WonderSwa Ⅱのプログラムがパソコン上の C 言語で作成でき、作成したプログラムを WonderSwan で動作させて楽し めるホビープログラミング用開発キット。もちろん、作ったプログラムは自由に配布できるので、 web サイトでの公開、 WonderSwan 同士でのプログラム交換が可能。サポート Web サイトを通じて、技術情報、パージョンアップ情報を紹介。 主な機能 ・プログラム作成 PC 上でテキストエデイタ等を使い、プログラムのソースコードを作成。同梱の C コンパイラでソースコードをコンパイルし て、実行可能なプログラムファイルを生成。 ( ューザプログラムサイズ通常 64KB まで作成可能 ) プログラム転送 ()C - WonderSwan) 同梱の PC 接続ケープルを使って、 PC と WonderSwan を接続。転送ツールを使って、作成したプログラムファイル ( ゲーム / アプリケーション / データ ) を WonderSwan に転送。 ( カセット上には複数のファイルを格納可能 ) ・プログラム起動 転送したプログラムを WonderSwan 上のランチャー ( メニュー ) から起動。 プログラム交換 (WonderSwan - WonderSwan 対戦通信ケープルを使って、 WonderSwan 同士を接続。通信画面でプログラムファイルを選択し、プログラムを交換 ※対戦通信ケープルは別売 ・インターネットで公開されるプログラムの利用 PC の Web プラウザ等で、 WonderWitch 用プログラムを pc にダウンロード。 ダウンロードしたプログラムを WonderSwan に転送してランチャーから起動。 ワンダーウィッチは一月殳用孑秀帯ゲーム機「ワンダースワン」をつ力、ってノヾソコン上でユーヨガー 自身やイ中間がつくったプログラムを楽しむことができる、まったく新しいソフトウェアです。 第当説第を ( セット内容 ) ・プログラミングッール ・通信ケーブル対応・ステレオ対応 ー価格 16 , 800 円 ( 税別 ) お求めはこちらに URL : http://www.swan.channel.or.jp/wonderwitch/ 開言殳中 ! ! ・仕様・画面は開発中のものです。実際の商品とは多少異なります。 、 0 及び題ー 0 ”をれ 5 題′ 0 れ・フ : ′ - ス・フ : / は株式会社バンダイの登録商標です。 ワン - スワン専用ホームページ 株式会社ハ・ンっイ 60 ! ワンダースワンⅣ 2 わーコ 開発元 oute 有限会社キュート コンシューマ事業部・ http://www.qute.co.jp/ わむ亡 p : 〃Ⅳ w ル 5 ル an. 匸月 ann 目ロ「ノ p / 03-3847-5113 く資料請求番号 F04 〉 T 1 1 1 4 5 2 5 0 9 1 2 0 5 雑誌 14325-9 ◎ソフトバンクバブリッシンク凸版印刷 PrintedinJapan BAN 詳しくは 03-3847-5090 [ 受付時間 / 月 ~ 金曜日 ( 祝日を除く ) 10 時 ~ 16 時 ] バンダイゲームステーションまでお問い合わせください。

6. 月刊 C MAGAZINE 2000年9月号

基礎的な知識と環境構築 短・期・連・載 P 豊 m m 豊花朝住し 〇 KTY Soft GameClub WonderSwan 用開発キット「 WonderWitch 」が発売されました。本稿では Wonde 「 Witch を使って実際にプログラムを作り , 基礎的な開発技術を今回 と次回の 2 回でお伝えしていきたいと思います。今回は WonderWitch でゲー ムを作るための基礎的な知識や環境構築の方法について解説します。なお , Wonde 「 Witch については前号の特集 2 もこ参照くたさい まじめに 一般的基礎知識 れます。滑らかでちらっかない動きをさせ 一般にゲームでは滑らかな動きが要求さ ゲームプログラミングの常套手段 た非連続映像の連鎖だからです。 連続したものではなく , 残像効果を利用し は人間の目に見えるゲーム映像が時間的に ラミングには一定の手段があります。それ ものが人間と対話する場合 , ゲームプログ WonderSwan にかぎらず画面の動きその を行いたいと思います 設定 , プログラムやユーティリティの作成 と開発環境である Windows での実践的な の手法と W 。 nderWitch の開発環境の詳細 像変化を主体とするゲームプログラミング も多いでしよう。本連載では , 一般的な映 derWitch の持つ可能性に胸を躍らせた方 サンプルプログラムが紹介されたので , Won 前号の特集 2 では Wonder 蹴 ch の概要と るためにはある一定の規則でプログラムを 行う必要があります。それが「画像表示ハ ードウェアに同期した書き換えを行う」と いう規則です。 一般的に画像表示を行うハードウェアは 画像を表示用に記憶するメモリとそれを表 示装置 ( 液晶やプラウン管 ) に順次読み出 して送る部分 , CPU から表示用メモリに 読み書きする部分から構成されます。これ は WonderSwan でも同じですし , Windows でも同じです。ようは表示装置に順次読み 出して送る間に CPU から表示用メモリに 書き込みをしなければいいのです。この鉄 則を守り , 人間が認識できる限界とされて いる毎秒 30 回 [ 注 1 ] を超える頻度で画面を書き 換えできれば , いわゆるちらっきのない滑 らかな動きを見せることができるのです。 WonderSwan では応答速度が遅い液品なの で , 独自のチューンが必要なことも考えら れますが , いずれにせよ表示中の書き換え はやらないのが鉄則です。 この鉄則を容易に守れるようにさまざま な工夫を凝らしているのがゲームマシンで あり , ( ゲームにとって ) 高性能なビデオカ ードです。 PC のビデオカードで搭載 RAM が 多いものが高性能とされるのはなぜでしょ う ? それは , 画面バッファ ( オフスクリ ーンバッフアとかフレームバッフアと呼ば れることもある ) を多く確保できるからで す。 複雑な画面を描くには CPU にもビデオカ ードにもそれなりの「時間」が必要です。 表示用の画面を複数用意でき , それを順次 切り替えて描画すれば 1 画面あたりの処理 時間を多くとることができるので , より複 雑で高度な描画を行うことができます。 P C のようなハードウェアでは「 CPU →ビデ オカード」の転送時間が「ビデオカード→ ビデオカード」の転送時間より長くかかる ため , ビデオカード上のメモリにバッファ を数多く確保できたほうがより高速な描画 が可能になります。 [ 注 1 ] NTSC 方式ではこれより速く書き換え ても本来的には意味はない・・・・・が , 最近のハ ードでは音響のオーバサンプリングのように 必要とされるレートの倍速以上で書き換えを 行い , その合成画像で , 表示するというよう な手法もとられたりする ( カメラでのプレの ような映像になる ) 。 WonderSwan での画面表示 WonderSwan は最先端の超絶ハードウェ アを持っているわけではありませんが , 基 本的なプログラミングはほとんど同じです。 「表示転送期間にデータを変更しない」を 鉄則にすれば滑らかな動きを実現すること ができます。 WonderSwan の表示ハードウ ェアは前述したようなフレームバッフアを 構築できるような構成ではなく , 数年前に WonderWitch programming Tech Lab 163

7. 月刊 C MAGAZINE 2000年9月号

Turb0 Debugger 5 る入門 特別記事 制終了させることになり , 警告が発せられ ラクタ画面で構成されたウインドウシステ ・・テパッガ本体 ・ TD32. EXE ・・ヘルプファイル ムです。 ます。 ・ TD32HELP. TDH ・・ Turbo Debugger が , いわゆる DOS 画面 Turbo Debugger の動作に関する設定は , ・・カスタマイズツ ・ TD321NST. EXE ・ を使っていることから , ほかのアプリケー TD321NST ユーティリティを使って変更す ションのようにウインドウを任意のサイズ ることもできます。 TD321NST を使うと , デバッグのための準備 に変更できないことに注意してください。 ウインドウの配色や起動時のデフォルト設 Turbo Debugger のウインドウの大きさは , 定などを細かく設定できます。通常は , デ DOS プロンプトに割り当てているフォン Turbo Debugger でデバッグしたいプロ フォルト設定のまま使うことをお薦めしま トの大きさに依存します。 [Options] → [Di グラムは , BCC32 のコマンドラインオプ す。 splay options] で [Screen lines] ラジオボタ ションで - v オプションを指定します。コン ・プログラムの読み込み パイラとリンカをべつべつに呼び出す場合 ンを CExtended] にすれば , 画面が縦方向 は , リンク時にも -v オプションを指定しま に伸びて 43 行モードになります。デバッ プログラムは前述したデバッグオプショ す。また , Delphi で作成したプロジェクト グ中に多くの情報を表示したい場合は , ン (-v) を使ってコンパイルしておきます。 をデバッグする場合は , [ プロジェクト ] → DOS プロンプトを使っている場合は , Tur のモードにしておくことをお薦めします。 [ オプション ] の [ リンカ ] ページに [ TD32 デ また , [Quick reference] を CJapanese] に設 bo Debugger を起動するときに直接対象と バッグ情報を含める ] チェックポックスを なるプログラムを指定できます。 定しておくと画面下部のステータスパーに たとえば , チェックしておきます。 C + + BuiIder では 表示される機能の短い説明が日本語になり [ デバッグ情報を作成 ] チェックポックスを ます。通常 , これ以外の設定は変更しない >TD32 test とすれば , Turbo Debugger を起動して test チェック状態にします。 ほうがよいでしよう。 . exe を読み込みま呶グレーの部分を入力 ) 。 Turbo Debugger のユーザインタフェイ スは , 通常の Windows アプリケーション このとき , プログラム名に続いて引数を指 定すれば , それが対象プログラムの引数と に似ていますが , メニューの左端にある二 本線はキーによるショートカットでは 工クスプローラで TD32. EXE をダブルク なります。 表示できません。これは + ーキ リック , または [ スタート ] メニューに登録 Turbo Debugger を起動した状態からプ ログラムを読み込む場合は [File] → [Open] した Turbo Debugger を呼び出すと , Fig. 1 ーに対応するものでしたが , Windows 上 ではシステムメニューが表示されます。 メニューを使って , 対象となるプログラム のような画面が表示されます。 Windows Turb0 Debugger を終了する場合は , CFil を指定します。このとき , 引数を指定する 環境しか使ったことがない方は , このよう e ] → [ Quit ] メニューや + 区キーを使っ ためには [Run] → [Arguments] メニューを な画面を見慣れないかもしれません。これ てください。 DOS プロンプトのクローズ 使います。 は , Windows が普及していなかったころ , シンポル情報付きの実行ファイルを読み DOS プロンプトで表示されるようなキャ ポックスを使うと , TurboDebugger を強 Fig. 2 対象プログラムの読み込み Fig. 1 Tu 「 bo Debugger 5.5 の起動画面 iew 、 1 ・ rea it View - . 「 ints 新 TurbO Debugger の起動 TD32 「新厂 ・ - T い 3 ・材を d 引 e : 5 司 eb lle: sa eb ェ 00 34 ー・ main(int 3 「 gc , char xxargv) ー猷儀約「 d : 0 , 「題 1 Ⅱ「総ニ 0 : ⅲを tot 引冊「 d ニ 0 , to ねⅡ i : 0 : for (int i i く argc;, i + + ) printf("File: Zs . , argv i]); FILE 新 0 : f 味ー arzv[i], ()p : : MIL) printf ("can't openVn") , i 「庇に ; ( トヨ「」 f[g-FSIZ]: hhi 是 (fgets(b 」 f . sizeof (p)) { 「 d + : 0 朝ェは一冊「 d ( ト」 f ) : を . e 「 32-bit VersiTl 5.5 ⅵ (c) 1988 , 2000 18 「 i % 「 PO 「 a い 特別記事 Turbo Debugger 5.5 入門 77

8. 月刊 C MAGAZINE 2000年9月号

programming 朝 Lab. 厄 C86 ーキー と入力してコンパイラのヘルプが表示され れば環境は正しく設定されています。 環境設定の se ⅲ p. bat が出すメッセージは setup. bat の先頭に@ECHO OFF の 1 行を加 えれば出なくなります。基本的な開発環境 はこれで OK です・・・・・・が , Windows はこう いったコマンドライン主体の環境に必要な プログラム , 具体的には UNIX 系コマンド の ls , mv , rm などがまったくありません。 これらの Windows 版はフリーウェアとして 各種サイトに存在しているので , 自分の好 みのものをインストールすればいいでしよ う。ただ , 焦ってそれらを集める必要はあ りません。必要なものは必要に応じて集め ればいいのです。 また , DOSKEY ( これは標準で備わって いる ) のようなコマンドライン編集ユーテ ィリテイも必須アイテムだと思います。 環境の構築 (Windows NT / 2000 ) 168 C MAGAZINE 20 9 いです。 コマンドプロンプトだと細かい設定が難し くのが無難だと思われます。ただ , 普通の OK バイトを切っているので , 変更してお s 2000 のデフォルトだと使えるメモリが 50 ドライプ + フォルダを示します ) 。 Window dows NT / 2000 がインストールされている に定義されています (%SystemRoot% は Win ・ %SystemRoot0Æsystem32%autoexec. nt ・ %SystemRoot0Æsystem32%config. nt す。 16 ビットの MS-DOS モードの環境は , メモリが狭い状態で開発環境を強要されま される環境になるため , かなり利用できる ります。デフォルトでは日本語 IME が起動 dows 98 とはまったく環境構築方法が異な の MS - DOS が起動されます。このため , Win itch 開発ツールを起動すると仮想マシン上 ロンプト自体が 32 ビット環境で , WonderW Windows NT, / 20 開の場合にはコマンドプ Fig. 3 Fig. 4 DOS プロンプトの設定画面 (Windows 98 ) 0 れ de 「 Witch 間発環境のプ 0 バティ 全第プログラムレオン日メモリー画面ーその他ー コマンドライン 0 WonderWitchP*h 発璋現 C"Witch*bin*setup. bat 実行時の大きさー プログラム終了インドウを閂しる MS-DOS 用の日本語入力システムの使い方にプ、ては、ヘルプを参照してくださ い。 OK 駒 h 発環現のプロバティ DOS プロンプトの設定画面 (Windows 2000) 全般ーセキュリテ概要、フログラムレオン日メモリー画面ーその他ー 0 : ¥ RO cmd. exe 終了時にウインめを閂じる凶 実行時の よし シ北トカット 行時の コマンド

9. 月刊 C MAGAZINE 2000年9月号

イヤが販売されていますが , PDA ならばよ り充実した機能を提供できるのです。 Palm PaIm は , 米 PaIm が販売する PDA です。 その軽快なペン入力により , ちょっとした ときに気軽に使うスタイルがユーザに好評 を博しています。 1999 年にべースとなる PalmOS が日本ア イ・ビー・エムにて日本語化され , WorkP ad という製品名で発売されました。これに よって日本でも PaIm が普及し始め , 2000 年 4 月には PaIm Ⅲ c というカラー液晶搭載モデ ルが本家の Palm コンピューティングより発 売 , また同時に薄型のスタイリッシュな PaImVx も日本語化されて発売されました。 あとを追うように日本アイ・ビー・エム からも WorkPad C3 の 8M 版の日本語版が発 売され , 米 HandSpring からは Visor という palm OS 搭載マシンがやはり日本語化され て発売されています。 Windows CE(PaIm-size PC) 米マイクロソフトが組み込みやモバイル 製品用の W1ndows として発表した Windows CE は PaIm-size PC という名称で規格化さ れ , カシオ計算機の CASSIOPEIAA シリー ズをはじめとしてさまざまなメーカーから 製品化されています。 Windows ファミリ , しかも Wmdows NT カーネルをベースにしているため , そのプ ログラミングは Win32 をベースにしたもの であり , かっ安定性も向上しています。 palm を追う形で登場した Palm-size PC も バージョンアップを重ねてより多機能にな っており , 現在では PocketPC という名称に 変更されました。ウインドウスタイルの変 更や OS 内部のチューニングで , より軽快に 動作するように改善されているようです。 この PocketPC の日本語版製品は , この夏に 44 C MAGAZINE 2000 9 ープの Zaurus を忘れてはいけません。まだ 日本でモバイル情報機器といえば , ZalffUS も発売される予定になっています。 シャ PDA という名称がない時代に電子手帳とし て登場し , PIM を中心とした機能によって ほかの追随を許さぬ勢いで普及しました。 発売当初のモデルでは , さすがに機能の 充実度にいまひとつの感がありましたが モデルチェンジを重ねるたびに機能が充実 し , データ連携機能もすでに問題なくなっ ています。さらにいまでは個人向け , ビジ ネス向けといったユーザに合わせたモデル がそれぞれ準備され , 機能だけでなく本体 デザインも TPO に合わせたものになってい ます。 PDA アプリケーションの開発環境 PDA といえども , その本質は小さな PC で す。その上で動くさまざまなアプリケーシ ョンによってその機能が提供されています。 よって , その充実度がすなわち PDA そのも のの使いやすさに大きな影響を与えるので す。 しかも , 肌身離さず持ち歩き , 常に使い こなすほど , ユーザにはさまざまな要求が 生まれてきます。そうなるとメーカー提供 のアプリケーションだけでは足りないと感 じるようになります。 それらの状況に対応するため , 前述の各 社とも自社の PDA アプリケーションの開発 キットを提供しています。これによりユー ザ自身がシェアウェアやフリーウェアを開 発でき , さらにアプリケーションが充実す るという好循環を生み出すのです。 各メーカーはアプリケーション開発者同 士のコミュニティを用意し , それらの活動 を支援しています。そこでは , PDA プログ ラミングをしたことのない人も興味深い情 報が得られることでしよう。ぜひ , 一度覗 いてみることをお薦めします。 PDA プログラミングのポイント 前述したように , PDA とはいっても基本 は PC のプログラムです。ただし , その内部 的な仕組みは多種多様なため , しつかりと した知識が必要になります。 アプリケーション開発に必要な情報は , 各メーカーの開発資料やツールで提供され ています。詳細な情報はそれをご覧いただ こでは PDA アプリケーション くとして , を開発する際に注意すべきことを簡単にま とめてみました。 実は , こであげた項目は一般的な注意 事項のため , ある程度までは開発ツール側 で何とかしてしまいます。ですが , 心にと めておくことでよりスムーズに開発できる ようになるでしよう。 かきられたリソース CPU パワーやメモリ , 画面解像度など , PDA は PC に比べてシステムリソースが圧倒 的に少ないものです。よって , 多機能で巨 大なアプリケーションは避け , 機能を絞っ てシンプルになるように設計してください。 さまざまなデータを扱う必要があるとき には , モジュールの分割やツール間の連携 などによって , できるだけ負荷を少なくす るようにすべきです。 ペンデバイス PDA はその可搬性のため , キーポードが 付いていません。もちろん , マウスが付い ていることもありません ( 使いにくそうです が ) 。その代わり , 画面を直接タップする ペンデバイスが主流になっています。 ペンデバイスでは , 文字入力は筆跡認識 やソフトウェアキーポードを使います。よ って , キー入力はシンプルにし , できるだ けメニューやアイコンなどで機能を代行で きるようにすると便利です。 シンプルな画面設計 これも PDA の可搬性により , 画面サイズ はそれほど大きくありません。とはいって も , アプリケーションが情報を表示するに は十分な広さと解像度を備えています。 ただし一気に情報を詰め込むと , 小さい 画面が災いしてとても見にくくなります。 表示する情報はできるだけ簡潔にまとめま しよう。大量の情報を表示させたいときに は , タブやスクロールなどを利用して表示 の切り替え方法を工夫すれば十分に対応で きます。

10. 月刊 C MAGAZINE 2000年9月号

開発環境 ひぐべん工房 レポート 軽快な Java 統合開発環境 Bluette 引 uette は軽快な動作と価格の安さを特徴とする Java 統 合開発環境である。シンプルな作りだが , 工デイタ / GUI デザイナ / デバッガなどの基本機能に加えて , ユニークな ヘルプシステムも備えている。 @晒皿 剛国 J 盟 Powetlul にに朝 [ e 叩 m 回円既 JB (Enterprise Java Beans) , CORBA/IIOP , は , どこかで見たようなデザインである。 はじめに JSP(Java Server Pages) などをサポートして 実はインプライズ (Borland) の Delphi や C + + BuiIder にそっくりなのだ Bluette の実行フ いくとのことである。 ァイルのダンプや , ヘルプファイルに含ま Bluette は Java 言語用の統合開発環境であ コードエデイタ れる画面キャプチャの一部に「 DeIphi 」の文 る。 Java 統合開発環境は各社から発売され 字列が見受けられることから , BIuette は ているが BIuette の特徴は軽快な動作と価 Fig. 1 が Bluette の全体画面である。画面 格の安さである。ただし , 低価格という点 DeIphi で開発されたのではないかと思われ る。ただし , デザインの類似に関しては D 上方のメインウインドウにはツールバーや においては , Web から無償でダウンロー elphi で開発されたことだけが原因ではな コンポーネントパレットが並ぶ。画面左下 ドできる Borland JBuilder 3.5 Foundation に く , ウインドウの名称などを見るに , 意図 のオプジェクトインスペクタは , 画面右側 軍配があがる。 JBuiIder は開発環境が 100 % 中央のフォームデザイナ上に配置したコン Java で構築されているので , ポータビリテ 的に DeIphi や C + + BuiIder のインタフェイス ポーネントの属性を操作するためのツール ィの面では優れている一方 , 動作速度の面 を踏襲したと思われる。 Delphi や C + + Build である。大きな面積を占めているウインド er に慣れているなら , 違和感なく BIuette も ではややもたっきが感じられる。その点 , ウはコードエデイタである。おもな開発作 使いこなせるようになるであろう。 Bluette は Windows ネイテイプコードで構築 本稿は Bluette1. OJ 評価版を元に執筆した。 業はこのコードエデイタ上で進めていく。 されており , 高速に動作する。開発環境の 現行の製品版のバージョンは 1. IJ となって コードエデイタは基本的にはテキスト工 サイズもコンパクトで , 起動が速い。また デイタであるが , Java 開発を支援するいく おり , Java2 1.3 への正式対応など , いくつ クラスライプラリの再構築によりコンパイ つかの機能を持つ。たとえばコードインサ かの機能が強化されている。ほかにも評価 ル速度の向上も図られている。 イト機能は , ポップアップウインドウやヒ 版と製品版との間で一部の仕様が異なる可 機能面を見ると , BIuette は比較的シンプ ントを表示して , カーソル位置に適応した ルな作りである。しかし必要な基本機能は 能性があるが , あらかじめご了承いただき 情報提供や入力支援を行う。コードインサ たい。この評価版は , 発売元のサン ( SAN 網羅しており , シンタクスのハイライト表 lncorporation) の b ページ ( "http://www. イトには次の 2 種類の役割がある。 示機能を備えたソースコードエデイタ , フ saninc. co. jp/") からダウンロードできる。 ( 1 ) メソッド入力支援 ォームやメニューの視覚的な編集をサポー メソッド呼び出しの入力中に , 該当する 購入前にはぜひ一度お試しいただきたい。 トするフォームデザイナ , プレークポイン メソッドの引数に関する情報を表示する機 なお同社の Web ページによれば , サープ ト設定やステップ実行が可能なデバッガな レットをサポートする BIuette1.2J のパッケ 能である。メソッドをオーバロードしてい どを備えている。特徴的な機能としては , る場合 ( すなわち同一クラス内に同名のメ インテリジェントにクラスやメソッドを検 ージ販売とダウンロード販売を 8 月に開始 ソッドが複数存在する場合 ) には , 複数の し , BIuetteI. IJ ユーザは無償バージョンア 索する「セマンティックプラウザ」や , ヘル 引数情報をリストアップする。 ップが受けられるそうである。また , Java2 プの自動生成機能を持つヘルプシステム ( 2 ) コードテンプレート Enterprise Edition に対応した Bluette2. OJ が 「 G Help 」などがある。 コードとキーワードをセットにして登録 今秋リリース予定とのことで , こちらは E ところで Bluette のユーザインタフェイス 最新開発環境レポート BIuette 159