機能 ( インスペクト機能 ) をもっています ( Fig. 8 参照 ) 。この機能によって , 構造体や配列 のアドレス計算や 16 / 10 変換といったデバッ グ作業て、めんどうな計算をする必要がなく なり , 論理的なデバッグに集中て、きます。 これは効率的なデバッグをするうえて非常 に重要なポイントて、す。 つ開発 46 C MAGAZINE 1991 4 ことがデバッガてデバッグてきるアプリケ DOS のメモリ資源の多くを必要とし , その したがって , デバッガの機能向上が MS ー なり大きなメモリ資源を必要とします。 トなどの高度な機能を実現するために , か および C 言語レベルのデバッグ機能のサポー PARTNER はユーザインタフェイスの向上 資源を割り当てなければなりません。一方 , るためには MS ー DOS の資源 , とくにメモリ 作します。このために , デバッガが起動す は , MS-DOS のアプリケーションとして動 て、す。 MS ー DOS のセルフ環境のデバッガ ケーションをデバッグするためのデバッガ PARTNER-S/H は , MS-DOS のアプリ NER-S/H,PARTNER-80S/H) 定が可能てす。 イントとうまく組み合わせて高度な条件設 とつのコマンドにすることや , プレークポ マクロ機能は複数のコマンドをまとめてひ 命令をもったマクロ機能をもっています。 さらに PARTNER は C 言語ライクな制御 リケーションとの組み合わせも可能て、す。 とが可能て、す。当然 , ェデイタ以外のアプ ースの変更や仕様書ファイルを参照するこ の機能によりデバッグ途中にエデイタて、ソ の間はワンキー操作て、行き来てきます。 とがて、きます。サププロセスと PARTNER つのプロセス ( サププロセス ) を起動するこ 換え機能て、 , PARTNER を起動中にもう一 マルチジョブ機能とは一種のタスク切り ョブ機能とマクロ機能があります。 する特徴的な独自の機能として , マルチジ そのほかに , PARTNER シリーズに共通 0 れ ) 0 ヨ山 d つ ; 0 引 b ⅵ ( し 0 「 ) : にし 00 第〉引 5 ) 「 5q0 : し : 戸いし 0 」”司 : べ、 : ( 富正圄 : 田 ) ペご 84 ! 4440 ) ( ⅲ猷 ) む : 01 自 = C, ( C 心ー ( 国 0 「リ ) し : 「ニ e ( 0 (uint ) b はい l. し」い ; 655 (C•FFFF) ( ⅲ )b -fm = 65535 ( 0 、年 F 「 ) ( Ⅲ 002 ) 3 レ k = 2 & 28 め 37 関 ( 9 : 引 2 ま幻 ) ( St なに t brk3tr ) Ⅱい = 4 朝い : B に 0 製を b 日一 = を 4459 信 b 「に 9 : に . b 」 0 ) 十 FFF. トーい ( 引 = 04 ( 3 いに 9 : 9 Ⅱ (VJ. 朝」第 FFFF. い - Ⅱ ( Str し 0 をいい 1161)brk : 044 岶 ( 信レの 9 : 8 ⅱ ッガてす。サポートする言語やマイクロプ ロセッサは幅広く以下のものがあります。 1 ヨ 4 86 系 に一口ロ MS-C, Turbo C, Lattice C, C ー 86 , MASM, TASM など サポート CPU LS I Fig. 8 インスペクト機能 ーションサイズを制限することになってし まいます。本来 , プログラム開発て、のデバ ッグ作業はプログラムの規模が大きくなる につれて難しくなり , デバッガの必要性が 増します。いくら便利な機能をもったデバ ッガて、も小さなプログラムしかデバッグて、 きなければ何の意味もありません。 この大きな問題を解決する方法として PARTNER-S/H はデバッガ本体を 80286 / 80386 のプロテクトモードて、実行する方法 ( DOS 工クステンダの利用 ) を採用しました。 これにより , デバッグて、きるプログラムの サイズは従来のものより大きくなり , 大規 模プログラムのデバッグが可能になりまし た。さらにデバッガの使用メモリの制限が なく , 多くのメモリ領域を必要とする高度 な機能を実現て、きます。 80386 / 80486 搭載機 種て、は , 外部ハードウェアを付加すること なく , マイクロプロセッサのもっデバッグ 機能を利用したハードウェアプレークを実 現しています。 また , PARTNER-H および PARTNER ー 80H ては専用ハードウェアを利用したハー ドウェアプレークやリアルタイムトレース を使用てきます。 ゲット開発 RTN E R ー T シリーズ ) PARTNER-T シリーズは , 組み込み機器 用のソフトウェア開発など ROM 化システム の開発をサポートします。従来の ICE やデバ ッグモニタおよび ROM 工ミュレータの技術 を融合した , まったく新しいタイプのデバ に 34 4 8 9 田一 9 第一 6 ) 60 芝 2 災 52 84 正 84 征例 - し 0 ( しøad 「田Ⅱ 234 は 0 い l, い舮 2 ) 8086 / 8088 / 80188 / 80186 / 80286 / V20 / V30 / V40 / V50 / V25 / V35 / V33 など 80 系 第コロロ LSIC-80, HI -TECH PROASM-II など サポート CPU C 8 0 , Z80 / 8085 / 64180 / TMPZ84 など 68K 系 厂 1 ロロ MCC68K, Whitesmiths C68K など サポート CPU 68000 / 68010 / TMP6830 など このように一般に利用されるほとんどの マイクロプロセッサと処理系て、は , PART NER-T を利用したデバッグが可能てす。 注目すべきは , これだけの多くのマイク ロプロセッサをたったーっのハードウェア て、ソフトの変更によりサポートしている点 て、す。 匸、モクステンダ ( EXE シリーズ ) PARTNER-S/H をプロテクトモードて動 作させるための開発環境として , プロテク トモード環境をデバッグするツールをまず 開発しました。このツールを利用して PART NER-S/H のプロテクトモード版は開発され ています。その後 , DOS 工ミュレーション 部分を充実させ完成したのが DOS 工クステ ンダ EXE286 て、す。その後 , 80386 のプロテ クトモードをサポートして DOS 工クステン ダ EXE386 が作られました。 DOS ェクステンダの効果は MS ー DOS 環境
テパッグッール概論 や A R T ROM 化プログラムのテパッグッールから汎用ソースコ ードテパッガまで , ひとくちにテパッガといってもその 種類は多種にわたる。それそれに秘められたテパッグ機 能を必要に応じて使いこなすことか開発効率を高める。 1 塚越勲 / 山本彰ー・京都マイワロコンピュータ掬 デヾッグッ—) レとは S e c t i 0 n ァヾックとは マイクロコンヒ。ュータを使用した機器や パソコン上て、動作するプログラムの開発過 程て最後に残る作業がデバッグてす。デバ ッグ作業はプログラム開発の過程て多くの 時間を必要とするものてす。場合によって は , 全作業時間の半分以上の時間をデバッ グに費やすことも少なくありません。デバ ッグ作業を効率よく行えば , 全体の開発期 間も短縮てきるといえるて、しよう。そのた めに , 有効なデバッグ技法を身につけたり , 役に立つデバッグッールを利用することは 有意義なことてす。 それては , デバッグとはなんて、しようか ? 広い意味て、は , プログラムのデバッグとは 次の三つの作業を指します。 44 C MAGAZINE 1991 4 ①プログラムに潜む不具合箇所を見つけ だす作業 ②プログラムの不具合を修正する作業 ③動作しているプログラムが目的の性能 を発揮しているか解析する作業 このような作業に必要なツール , または , 効率よく行うためのツールがいろいろと考 えられています。 もちろん , デバッグッールなして、も動作 するプログラムを書くことはてきるて、しよ う。たとえば , プログラムの目的の箇所に 入出力ルーチンを入れて中間結果を出力し たり , 補助的な入力ルーチンを入れてプロ グラムのデータを変更したりする方法て、 , バグの所在箇所を発見することもて、きるて、 しかし , この方法は入出力ルーチンを入 れる箇所を変更するたびにプログラムのコ ンパイルやアセンプルをやり直さなければ なりません。この技法は有効なデバッグの 一手法て、はありますが , 一般的に効率的な デバッグ手法とはいえません。 こて、は , デバッグッールに必要な機能 やデバッグッールの種類について説明しま す。 テヾッグッ—) レに必要な機能 デノヾッグ作業を行うためにデバ、ツグッー ルに要求される機能をまとめてみます。ア センプラレベルのデバッグに最低限必要な 機能は次の 5 個てす。 ①プログラムを 1 命令 ( 1 行 ) ずつ実行する 機能 ( トレース機能 ) ②特定の箇所でプログラムを止める機能 ( プレークポイント ) ③ CPU のレジスタを表示したり変更する 機能 ( レジスタダンプ / セット ) ④メモリや I/O ポートの内容を表示したり 書き換える機能 ( ダンプ / セット ) ⑤プログラムコードを表示したり書き換 える機能 ( アセンプル / 逆アセンプル ) また , 最近は C などの高級言語て、プログラ
リ イ 五ロ - 三住 SU(TIITEITI 3 ライフラリ ーに加えてテキストべースウインドウ機能搭載の一新登場 ・画面表示・キー入力・フリンタ・グラフィック・・・・・・全てカにの 1 本で OK ・ ・ノーマル・ハイリゾモードを自動判別。 N5200 や PC286 / 386 にも対応・ ・旧 AM ( 索引順編成ファイル ) 関数も標準装備・ ・すでに全国 1 , 600 ユーサーのアプリケーションソフトに組み込まれています・ ・ MS-C ・ Lattice-C ・ Quick-C ・ TURBO-C コンバイラ対応・ 力な画面表示機能 ・カラー / リノヾース / 点滅が自由自在に指定可能。 ・ ZZZ9.99 のような分かりやすい数値の表示書式指定・修飾。 ・座標の換算が不要の罫線表示機能。 ・ 1 / 4 角文字 ( 添え字 ) も簡単に。画面の部分スクロール計数も。 キスペースのウイン 能結版の ・最大 1 0 個までのウインドウを重ね合わせ表示可能。 ・ウインドウを閉じれば元の画面を自動回復。 ・ポップアップメニューやダイアログボックス風の処理がこく簡単に 彩な入力機能 ・ワープロ・エテイタ並の編集機能 ( 挿入・削除など ) を装備。 ・“ ESC キーで終了”などが簡単に実現できる特別キー機能。 ・日本語入力の ON / OFF コントロールが可能。 ( NEC ロ C / ATOK6 / VJE づなど。追加もできます。 ) 自由度の高い外字機能 ・ソフトことに外字ノヾターン ( C 日 T ・プリンタ ) の使い分けが可能。 ・バターンファイルは NEC ・ ATOK6 方式いすれも可。 ( 変更も OK ) ・ PC ー 9801 ( LT など一部機種除く ) ノーマル・八イリゾ両対応。 ・ PC ー 286 / 386 , N5200 全シリーズに対応。 ・ MS-DOS Ve 「 3.1 以上。 ・プリンタは NEC24 ドット漢字プリンタおよびその互換機。 ・標準版・桔梗版とも \ 28 000 ( 税込 ) ・全ソースプ。グラム付きは一一 \ 98 , 000 ( 税込 ) ※基本的な種類の関数は ソースプロクラムを公開しています。 ☆お求め・資料請求は 住友セメントシステム開発株式会社 OA システム事業部 〒ー田東京都千代田区神田美土代町一番地 TEL 03 ー 3296 ー 98 田 FAX 03 ー 3295 ー 5909 スーなンカ ・標準モード・圧縮モードいすれも ANK / 漢字の比率は 1 : 2 。 ・画面同様の数値書式対応。 1 / 4 角文字 ( 添え字 ) も可能。 ・改行ピッチ・文字サイズの変更も自由に 便利な画面八一、、コヒー能 ・グラフ・テキスト混在の八一ドコピー。テキストはプリンタ本来の文字で。 ・画面の範囲指定や印刷開始桁の指定が可能。 ・キー入力待ちの状態で特定のキーを押せばいつでも前画面八一ドコピー やさしいラフィック関数 ・点・線・円弧・四角形の描画はもちろん、単色・ノヾターン塗りつぶし可能。 ・八一ドウェアの違いを意識せすに簡単にグラフ・図面が描けます。 SA も 0 、フマ関数 ・テキスト・ランダム・順編成など 5 種類のファイルアクセス関数を用意。 ・ B 十ツリー方式の旧 AM ファイル関数を標準装備。 ・エラーメッセージなどの処理は全てライプラリ関数が実行。 動作条件 販売価格 く資料請求番号 183 〉
初級 c プログラマに贈る最斤 ウインドウが独立しているため , それぞれ のウインドウについて適当なサイズや位置 を自由に設定て、きます。あるウインドウに よって別のウインドウの一部が隠れてしま う場合はそのウインドウのどこかをマウス て、クリックすることて、 , また , ウインドウ の全部が隠されている場合て、も九つまて、の ウインドウて、あれば ( たいていはこれて、十 分 ) , 十テンキーを押すことて、 , ただ ちに目的のウインドウを選択することがて、 きます。もちろん , ウインドウのリストを 表示させてメニューから選択することも可 能て、す。 ヘルプも忘れてはならない機能て、す。 Ver. 1 . 0 から実現されている状況感知型のオンラ インヘルプに加え , Ver. 2.0 て、はクイック リファレンス行による簡易ヘルプ機能が追 加されました。これは , メニューを表示し ているときにカーソルのある項目について の簡単なヘルプメッセージを表示する機能 て、す。これにより , いちいちキーを押 す必要が少なくなりました。 Turbo Debugger の優れた操作性につい て , 限られた誌面て、すべてを語ることはと てもて、きませんが , このほかにもダイアロ グボックス , キーポードマクロ , 入力ショ ートカットなどさまざまな機能により , 他 のデバッガに類を見ないほど快適な操作性 が実現されています。 Turbo Debugger には , デバッグを支援す るための機能が数多く用意され , IBM-PC 版の Borland C 十十て、は Turbo Debugger for Windows がサポートされたためて、す。 ほかの DOS 用のデバッガて、サポートされて いる機能のほとんどがサポートされている といっても過言て、はありません。 まず , 多彩なプレークポイントの機能に ついて述べましよう。 Turb0 DebuggerC' は , プレークポイントの条件として「アドレ 機能 ス ( 行番号 ) て、の指定」に , 「式の評価」「メモ リの変更」という条件を組み合わせることが て、きます。評価て、きる式は , C, Pascal, ア センプラのいずれて、も可能て、す 0Expression Language< 言語を指定することて、 , たとえ ば C プログラムのデバッグ中にアセンプラの 式を評価させることもて、きます。 プレークポイント (Fig. 11 ) における動作 も , たんにプログラムを停止させるばかり て、はありません。指定した式を実行したり , ログ機能て変数の内容をファイルに記録す ることもて、きます。このため , 「ある行番号 にプレークポイントを指定し , 指定したメ モリが変更されたら , ある式を実行する」と いうことが可能になります ( いうまてもな く , これらは一つのダイアログボックス内 て、指定て、きる ) 。 「式の評価」「メモリの変更」は , アドレス を指定せずに「グローバル」な条件として利 用することも可能て、す。変史されてはいけ ないメモリが破壊されていることがわかれ ば , グローバルプレークポイントとしてそ のメモリアドレスを指定するだけて、すみま す。ただし , プログラムを 1 行実行するごと に式を評価したりメモリが変更されている かどうか判断しなければならないため , プ ログラムの実行速度が著しく低下してしま フことがあります。通常は , アドレスの指 定と組み合わせたほうがよいて、しよう。 Turbo Debugger には , メモリの変更を調 べるための実行速度低下を回避するために ードウェアプレークをサポートする機能 が組み込まれています。残念ながらハ ウェアプレークを実現するための PC ー 9801 用 ポードは市販されていませんが , 80386 を使 ってこれを実現するための機能が標準て、用 意されています。 80386 にはデバッグレジスタが用意されて いるため , ほとんど実行速度を低下させず にグローバルプレークポイントが指定て、き ます。実際には , デバッグレジスタは最大 4 バイト ( メモリ境界による制限っき ) x 4 個 まて、しか指定て、きないため , 複数の変数を 監視するためには力不足ともいえますが , 後述の TD386 て、はもっと広範囲のメモリを 対象にて、きます。 Turbo Debugger て、は , データをデノヾッグ・ 監視するための機能も充実しています。た とえば , 構造体型の変数をウォッチすると , 構造体の各要素の値が Watch ウインドウに 1 行て、表示されます。この状態て、は構造体や 変数のアドレスのみが表示され対応するメ ンバ名などは表示されず , それぞれの要素 がカンマ、、 , 〃や中括弧当ドて、区切られるだ けて、すが , さらにデータを詳しく調べたい 場合のためにインスペクト機能が用意され ています。 インスペクト機能は , Turbo Debugger が データデバッグを実現するための最大の特 徴て、す。インスペクトするためには , ロー カルメニューの lnspect を選択するか , 十国を押すだけて、す ( メインメニューにも項 目が用意されている ) 。インスペクトを行う と新たなウインドウがオープンされ , 対象 となる変数が単純な型て、あれば変数名 , ア ドレスとその内容が表示され , 構造体て、あ れば構造体のメンバ名と対応する内容 , 配 列て、あれば要素番号と対応する内容が表示 されます。構造体や配列が組み合わされて いるような複雑な型て、も , 適当な項目にカ ーソルを移動させてリターンキーを押すだ けて、必要な情報が得られます。 また , Watch ウインドウはカーソル位置 のスコープに依存しますが ( デフォルト ) , インスペクトては調べようとする対象はカ ーソル位置のスコープには依存しません。 したがって , データがスコープから外れる 場合て、もデータの追跡がて、きます。 リスト構造になっているデータてあれば リストボインタを追跡することて、 , 次々と データをたどれます。ポインタが配列の先 頭を指している場合て、も , 範囲を指定する ことて、その内容を表示てきます。 Turbo Debugger は , アセンプラレベルて、 特集初級 c プログラマに贈る最新デバッグ学入門 49
拡張 C としての C 十十 クラスは , テータのほかに関数をメンバにすることができ , メンバの初期化や消去を行う ための機能により , 誤った結果を得るようなバグを防ぐことか可能になるなどの基本機能 (Fig. 1 参照 ) のほかに , いくつかの応用機能か備えられている。今回は , クラスの応用機能 について解説し最後にオプジェクト指向での考え方と C 十十の機能を比較する。 龍崎昌平 く第 3 回〉クラスの応用 2 関数 cmp の定義は , メンバ関数の定義て、は ・フレンド関数は , 通常の関数て、ある ( メ フレンド関数 なく , 通常の関数定義て、ある。したがって , ンバ関数をフレンド関数にすることが て、きる ) 本来ならば引数て、指定されるクラス変数内 のプライベートなメンバ変数に直接アクセ ・フレンド関数として宣言することて、 , フレンド関数はメンバ関数を使用せず構 スて、きず , アクセスするためのメンバ関数 クラス変数内のメンバ変数に直接アク 造体のように , 一般の関数内からクラス変 が必要となる。しかし , 関数内て、は構造体 セスて、きる 数がもっプライベートなメンバ変数へ直接 のように「クラス変数名 . メンバ変数名」の書 List 1 て、は , 関数 cmp を一つのクラスのフ アクセスて、きるものて、 , メンバ関数を定義 レンド関数に宣言したが , 複数のクラスか する際にキーワード friend 〃によって定義さ 式によってアクセスが行われている。この ような記述は , クラスの定義時に「通常の関 ら一つの関数をフレンド関数にすることも れる 0List 1 は , メンバ変数の比較を行う関 て、きる。 List 2 て、は , クラス B とクラス C が 数をクラスの友達 ( friend ) にしてあげる」とい 数をフレンド関数として定義している例て、 関数 add をフレンド関数としているため , 関 う宣言をすることよって可能になる。 ある。 Fig. 2 List 1 の構造 クラス A Fig. 1 クラスの基本機能 class 名前 { コンストラクタの定義 / 宣言 ティストラクタの定義 / 宣言 公開部 (public) メンバ関数の定義 / 宣 = 関数の型名前 : : 関数名 ( 引数のリスト ) メンバ関数内では , メンバ変数名だけの記 述によりメンバ変数へのアクセスが行える ーここ」非公開部 (p 「 ivate) メンノヾ変数 メンバ変数 メンバ変数 public; レ フ 友達 ↓ main( ) 関数 名前変数名 ; 変数名 . 関数名 ( 引数のリスト ) ; 72 C MAGAZINE 1991 4
CPU と数値演算プロセッサのレジスタやフ ラッグなどを表示します ( Fig. 16 ) 。レジス タウインドウはメモリウインドウと同様に 直接レジスタの値の変更が可能て、 , 内容に 変化があった値はハイライトて、表示されま す。 8087 ウインドウて、は , レジスタスタッ クなどの変更が可能て、すが変化のあった場 合のハイライト表示はされません。 プークポイント プレークポイントの設定は , デバッグ作 業に便利なように各種の条件が設定て、きる ようになっています。プレークポイントご とに , プレーク時に自動実行するコマンド を設定することがて、きます。 たとえば , あるプレークポイントて、プレ ークしたら特定のメモリをダンプしてから 特定の式を評価してみるというようなこと が設定て、きます。また , パスカウントを設 定すれば , プレークする条件を満たしても 最初の何回かはプレークをさせないように て、きます。 プレークする条件としては , 指定した位 置によるプレーク以外に , 指定した位置に おいてある式が真の場合 , またはある式の 値が変化した場合があります。特定の位置 に関わらす , 指定した式が真の場合 , また は式の値が変化した場合にプレークさせる こともて、きます。式の値の変化を条件にし た場合は , メモリ上の特定の範囲の変化を 条件にすることもて、きます (Table 2 参照 ) 。 ヒトリー機能 CV にはヒストリー機能があり , デバッグ コマンドやプログラムへのユーザ入力をフ ァイルに保存することがて、きます。この機 能を使うことにより , 繰り返し現在の状態 へ復帰させたり , ーっ手前のステップまて、 戻したりすることがて、きます。デバッグコ マンドとユーザ入力はそれぞれ別のファイ 54 C MAGAZINE 1991 4 ルに保存され , 一方のみを使用することも て、きます。この機能はウインドウ用の CV て、 は使えません。 テムにより拡張されている これ以外にも , MS-DOS, OS/2, WIN- S e ぐ t i 0 n DOWS それぞれの CV 用に拡張された機能が あります。たとえば , OS/2 用て、のマルチス レッド , マルチプロセス用の機能 , WIN- DOWS 用のローカルグローバルヒープの表 小 , メッセージによるウォッチやプレーク 機能 , MS ー DOS 用て、の 80386 デバッグレジス タの使用などがあります。 C compiler PRO-68K ver 2.0 に 搭載されたソースコードデガ ソスコードデヾッガの概略 C compiler PRO-68K は , ver 2.0 から ソースコードデバッガ ( 以下 SCD と略 ) が搭 載されました。 SCD はコンソール入出力の みによる従来のデバッガ ( 以下 DB ) 機能のほ か , マウス表示画面 ( マウススクリーン ) を 利用したフルスクリーンモードを用いて , デ バッグ中に C 言語のソースを参照したり C 言 語て、宣言された変数の参照 / 変更カイきます。 C のソースプログラムや変数などを参照し ながらデバッグするためには , /Ns スイッチ ( 拡張シンポル情報を出力する機能 ) をつけ てコンパイルすることが必要て、す。このス イッチをコンパイル時に指定することて、 , 実行可能ファイルにデバッグ情報を付加し プルダウンメニューバー モードて、す。全画面は横に 4 分割されます。 が表示されます。これが , SCD. X が起動すると Fig. 17 のような画面 て、 SCD. X を起動します。 SCD SAMPLE. X SCD て、デバッグする場合には , CC /Ns SAMPLE. C て出力します。 フルスクリーン いちばん上の行には , プルダウンメニュ ーバーが表示されています。 CFile) CFindJ CWatch] CExec] CShow] COption) の 6 個 のプルダウンメニューのほかに , マウスの クリックだけて、動作するメニュー [ Trace ] CStep) があります。そのほかにスクロール ボタンやリサイズボックスなどが表示され ています。 リストスクリーン プルダウンメニューバーの下にリストス こには , デバ、ツグ クリーンがあります。 対象のプログラムの逆アセンプルリストや C のソースリストが表示され , メニューバー のスクロールボタンをマウスて、クリックす ることにより上下にスクロールて、きます。 また , ソースコード , アセンプルリストの 現在実行中の箇所は網掛けて、表示され , プ レークポイントの箇所は , アンダーライン が表示されます。 レジスタスクリーン こは , ューザレジスタや変数内容を表示 します。 コマンドスクリーン レジスタスクリーンの下はコマンド投入 スクリーンて、す。キーポードから入力され るコマンドやその結果は , このスクリーン に表示されます。 3 番目の画面はレジスタスクリーンて、す。
初級 c プログラマに贈る最 TabIe 3 テパッグッールの特長 あ、レ 0 アナライサ RS-232C や SCSI などのインタフェイス用 のプロトコルアナライザなどの装置も , のような I / O を扱うルーチンのデバッグには 有効なツールて、す。ただ , これらの装置は 特定の用途に使用する専用ツールて、す。 R M 工ミュレータ ROM の代わりに ROM ソケットに接続し て ROM の機能をエミュレーションするツー ルて、す。 ROM の内容を自由に短時間て、ホス トから書き換えることがて、きるのて、 , デバ ッグ過程て、何回も生じる ROM を焼き直す手 間がかかりません。また , プログラムの小 さな変更はソースをいじらずに手軽にパッ チをあてて試してみることもて、きます。た だ , あくまて、も ROM の書き換えを短時間て、 行うためのものて、あり , プログラムの実行 / プレーク / データ参照などのデバッグ機能は ありません。 R M 工ミュレータ RAM の代わりに , RAM ソケットに接続 して RAM の機能をエミュレーションしま す。この装置て、は , RAM の内容を随時参照 することがて、きます。 RAM の内容を参照し データの変化のようすをチェックて、きます。 ICE ( インサーキットエミュレータ ) は , タ ーゲットボードの CPU ソケットに接続し , CPU やターゲットボード上のメモリをエミ ュレートする装置て、す。 ICE には , プログラ ムのデバッグに必要な多くの機能が搭載さ れており , 効率的にデバッグが行えます。 CPU のレジスタやメモリを参照 / 変更する機 能 , 複雑なプレーク条件を設定て、きるプレ ターゲットの変更 必要 不要 不要 不要 不要 不要 不要 不要 テパッグ機能 あり なし なし なし なし あり あり あり 観測機能価格 テパッグモニタ ロジックアナライザ レ 0 アナライザ 日 OM 工ミュレータ RAM 工ミュレータ ℃ E シミュレータ ROM 工ミュレータ十モニタ リアルタイム性 なし あり あり あり あり あり あり あり なし あり あり なし あり あり 一部あり 一部あり 低 高 中 低 低 高 低 低 汎用性 中 中 低 高 高 低 高 中 ークポイントやリアルタイムトレースなど の機能をもっています。また , 最近の傾向 として局級言語レベルて、のデバッグや , ウ インドウ指向の表示などの導入により , ユ ーザインタフェイス面て、の機能を高めてい ます。ただし , ICE は近年の CPU の動作クロ ックの高速化にともない , すべてのターゲ ットボードて、安定して動作させることがむ ずかしくなってきていますし , ICE 自体が高 価になってきています。また , 近年多くの CPU が発表されていますが , ICE は各 CPU 専用のデバッグ装置て、あり , CPU ごとに用 意しなければなりません。 機能をもった M 工ミュレータ ROM 工ミュレータのハードウェアとデバ ッグモニタを組み合わせたデバッグ装置て、 す。この装置は , ROM 工ミュレータにホス トと通信する機構を組み合わせたハードウ ェアて、構成されます。ホストからは ROM 内 容を書き換えることがて、きます。また ROM 空間の一部にデバッグモニタをロードし , プログラムデバッグに必要なひととおりの 機能をもたせることがてきます。つまり , デバッグモニタと ROM 工ミュレータを組み 合わせて ICE と同様なデバッグ機能を実現し た装置といえるて、しよう。 この装置の特徴は , CPU に比べ動作速度 の遅い ROM をエミュレーションするのて、高 速な CPU に対応しやすいこと , 工ミュレー ション対象が ROM てあるためコントロール ソフトの変更だけて多くの CPU に対応可能 などの点があげられます。また , ICE に比べ 安価て、あることも大きな特徴といえるてし よう。 しかし , この装置を動作させるためには , 装置の性格上 CPU/ROM/RAM などの最低 限のハードウェアが動作していること , ま た , モニタブログラムが ROM や RAM 空間 を一部占有するなど , ターゲットに対する 制限事項があります 0PARTNER-T がこの 種の装置に相当します。 ロミ = レータ シミュレータは , ターゲットボードて、プ ログラムを動作させてデバッグするツール て、はありませんが , その前段階として ROM 化するプログラムのデバッグに使用される 場合があります。シミュレータは , ホスト コンヒ。ュータ上て、目的の CPU や I / O をソフト ウェア的にシミュレーションし , プログラ ムの動作をチェックするためのソフトウェ アツールて、す。つまり , 目的の CPU の機械 ロロ コードを実行するインタブリタにデバッ グ機能を付加したものといえるてしよう。 シミュレータはソフトウェアて、命令を解 析しながら実行するのて , プログラムをリ アルタイムに走らせることはてきませんが , 複雑なプレークポイントの設定や ICE のトレ ースメモリ機能などを実現することも可能 てす。ただ , 最終的には実機て、デバッグし なければなりません。したがって , ROM 化 プログラムては補助的なデバッグ手段と考 えたほうがよいてしよう。 特集初級 c プログラマに贈る最新デバッグ学入門 57
初級 C プログラマに贈る最斤 また , C 言語の文法チェックを行う LINT 用テッヾッガ (CodeView や Turbo Debugger な や関数リファレンスを表示するツールなど ど ) や PARTNER などの汎用デバッガがあり の補助的なツールもあります。 ます。 ミングされることが多く , 咼級言語レベル て、のデ / ヾッグ機能をもったデバ、ツグッール も多く使用されています。これらのツール は , 次のような機能をもっています。 ①ソース行単位でのステップ実行 2 塚越勲 / 山本彰ー・京都マイワロコンピュータ槲 ②高級言語の変数やデータ構造の参照 / 変 デヾックの統一環境を提供する ③ソースファイルの表示や文字列の検索 RTN 田シリーズ また , あれば便利な機能として以下のよ うなものが挙げられます。 ①アクセスプレーク ( ハードウェアプレー すべての PARTNER シリーズは同じオペレ ク ) 機能 ァヾッガ ーションて、同様に動作します。これにより 特定のメモリアクセスや I/O アクセスを 通常のエデイタを操作する感覚て、デバッグ 検出してプレークする機能 作業が可能て、す。 PARTNER シリーズは MS ー DOS のセルフ ②リアルタイムトレース機能 さらに , 各 CPU に対応した C 言語をサポー からターゲットシステムの開発や DOS 工ク トリガ機能と組み合わせて CPU のバス ステンダまて、の統一した環境を提供してい トしています。 C 言語のサポートはたんなる サイクルを記録し後から参照する機能 ソースレベルのサポートだけて、なく , C のデ ます (Fig. 7 参照 ) 。 PARTNER シリーズは ③パフォーマンス測定 ータタイプ (int, char, 高速工デイタライクな操作性をもったマル サプルーチンや関数単位て、 , プログラ struct, union, 配列など ) を簡単に参照 / 変更てきる機能 チウインドウ型のオペレーションを採用し , ム実行時間の統計を表示する機能 ④実行時間測定 Fig. 7 PARTNER シリーズ プログラム実行に要した時間を計測す る機能 ⑤カバレッジ機能 デバッグ対象のルーチンがどの程度検 査されたか ( 実行されたか ) 測定する機 ムヒ 月ヒ デバッガに要求される機能は以上述べた とおりて、すが , いちばんたいせつなことは , ューザにとってそのツール自体が扱いやす こと , つまり優れたマンマシンインタフ ェイスを備えていることて、す。 実際にデバッグ作業に入ると , 何が起こ っているのかわからずいろいろな方法てプ ログラムをテストしてみたくなります。 のとき , 人間の思考を中断することなく目 的の操作を簡単に行えることが重要て、す。 また , 使用者がそのツールを使い込んて、 , ツールの癖や機能を十分把握しておく必要 もあるて、しよう。 パソコン上て動作するプログラムのデバ ッグッールには , コンパイラに付属する専 S e e t i 0 n PARTNER シリーズ PARTNER-S H (MS-DOS のアリケーション開発 ) PARTNER-80S H ( Z80 / 64180 アリケーション開発 ) セルフ開発 PARTNER-T シリーズ ( ターゲット開発 ) PARTNER-T(86) ( 86 系のターゲット開発 ) PARTNER-T(80) ( 80 系のターゲット開発 ) PARTNER-T(68K) ( 68K 系のターゲット開発 ) EXE286 ( 80286 用の DOS 工クステンダ ) EXE シリーズ ( DOS 工クステンダ ) EXE386 ( 80386 用の DOS 工クステンダ ) 特集初級 C プログラマに贈る最新デバッグ学入門 45
BGM / グラフ作成プロクラム 価格 \ 98 ′ OOO BGM/EX 価格 \ 148 を 000 ため、多彩な表現が可能です。・すぐ使え 12 種類のグラフ作成機能を提供するバッケージです。例えば、必要なバラメータを設定し、関 る、拡張もできる 24 種類のタイルノヾターン、 10 種類のラインバターンを登録済み、さらに 数を呼び出すだけて円グラフや棒グラフを簡単に描画することができます。ざらに、タイルバ ユーザー登録も可能■ハードコピーグラ ターン、ラインノヾターンとの対応、日本語コード文字列をグラフィック画面に表示する機能を フィック画面、テキスト画面、グラフィック サポートしているのて、ビジネスアプリケーションて必要とされるあらゆるグラフ情報を表現 匚 : この : こコー物 : 爼齟 画面とテキスト画面の重ね合わせか可能。日 できます。 本語コード (Shift-Jis: 全角、半角、 1 / 4 角 ) ■必要なバラメータを設定し、関数を呼び出すだけで簡単にグラフを描画てきます。サンプル 文字列をグラフィック画面に表示できるので、 プログラムを見ればすぐ理解できます。円グラフの例 cg(vlist,vcnt,cx,cy,r.scalel. ガイドメッセージ等をテキスト画面に表示し ■ 12 種類のグラフ作成機能・描画位置、大きさを好みに合わせて描画できる scale 2 ) : 1 たままの状態でもグラフィック画面だけの八 ■サポート関数を用意タイルノヾターン ( 塗りつぶしバターン ) 、ラインバターンの一覧を表示 ードコピーを印刷することができます。 する関数により、例えはタイルバターンとその内容 ( 例えは。商品名” ) との対応を簡単に表示で ◆「日 GM / EX 』ては XL 、 XL2 、日 L の八イ きます。・多彩な表現が可能円グラフ、ドーナツッグラフ、バイチャート、帯グラフでは レゾリューション / ノーマルの両モードに対応しており、さらにどちらのモードでも動作する互 % または数値の表示 / 非表示の選択か可能、縦棒グラフ、横棒グラフ、折線グラフてはスケー 換モード ( 自動判別 ) もあります。以下の関数に「 G 「 aphic & Mousez または rG 「 aphiC & ルの表示 / 非表示の選択が可能、タイルバターン、ラインバターンと表示色の組み合わせ、ホ ーダーカラー ( 円、棒等の外枠の色 ) 、スケールカラー、 % または数値の表示色の指定が可能な Mouse / EX 」の一部の関数が含まれます。 第 2 口駅 3 Key & DispIay 価格 \ 29 ′ 800 す。■画面上に表示されている内容をそのままファイルにセープしたり、ファイルにセープ された画面内容を再表示することが可能です。セーブ / ロードする領域を指定することができ Key & Dis ay はソフト開発で欠かせないファンクションキー及び ANK 、漢字の入力、 V 日 AM を直接アクセスしての文字表示等 100 を越える関数で構成されています。ファンクション るので全画面 / 部分のどちらも可能です。■すべての文字属性 ( シークレット、プリンク、リ キー自身には一切特別な値や文字列を設定せずに、日 OS レベルの処理て行っているため、ど バース、アンターライン、八一チカルライン、色指定 ) を画面上の指定領域に対して設定てきる のレベルの関数でも同し処理でファンクションキーの取得も可能てす。また、 V 日 AM を直接 ので表現力豊かな画面表示か可能です。■多彩な画面操作機能を装備画面上の指定領域に アクセスして表示するので 25 行目に文字列を表示してもスクロールしてしまうことはなく、す 対する文字 / 文字属性のコピー、移動、消去を行う関数か用意されています。・画面上の指 べての 1 バイトキャラクターコード ( 0X01 ー 0Xf7 ) を表示することがてきます。文字表示、文 定領域に対する上下左右スクロール機能により、全画面 / 部分のスクロールが可能です。ー 字属性の設定 ( 色 / 属性 ) 、 V 日 AM 上の指定領域を切取り、貼り戻し、表 / 裏画面の切り替え 現在表示されているすべての 1 バイトキャラクタコード / 漢字の文字列を V 日 AM から取り出 表示、全画面 / 部分スクロール、ファンクションキー表示等の機能を持っています。 し ASCll/Shift-Jis コードへの変換が可能てす。・指定座標の表示文字が漢字か否か、 ・キー入力ファンクションキー及び ANK 、漢字の入力。ファンクションキーと SH 旧 T 、 また漢字の 2 バイト目か等の識別機能により、現在表示されている文字を検査することができ CT 日 L キー等のシフトキーとの組合せて、別のキーコードを得ることもてきます。・日本語 ます。・カーソルコントロールシステム 2 種類のカーソル移動関数群とカーソル移動範囲 入力フロントエンドプロセッサ ( FEP ) のコントロール日本語入力 FEP の ON / OFF 、入 限定機能により、多彩なカーソルワークが可能になりました。通常の上下左右移動、座標指定 カモードの切り替え等のコントロールができます。対象となる日本語入力 FEP は ATOK4 移動、カーソル位置取得機能はもちろん、表示文字列のコード識別機能を使用したカーソル移 5 / 6 / 7 ( 6 モード ) 、 VUE ー 0 / 尸てす。■漢字の入力は FEP 等を介して行なわれ、 2 バイト 動関数群を用意しました。この関数群は移動位置が漢字の 2 バイト目か否かの検査を行い、移 で返されます。■ V 日 AM を直接アクセスして文字表示を行っているのて非常に高速です。 動位置が漢字の 2 バイト目の場合はスキップし、次の位置へ移動する関数群です。カーソル移 ■すべての 1 バイトキャラクターコード ( 0x 田一 0Xf7 ) を表示することができます。■全画 動範囲を一定領域に限定する関数も用意しました。・まだまだある、こんな機能、こんな関数 面に表示可能 25 行目に文字列を表示してもスクロールしてしまうことはありません。■裏 指定文字 / 文字属性による V 日 AM の消去関数、指定座標から n 文字を消去する関数、カーソ 画面を有効に利用できる表 / 裏画面を切り替えて表示選択できるのでスピードアップ、 V 日 ルの表示 / 非表示切り替え、カーソルプリンクの ON / OFF 、ファンクションキー表示のセー AM の有効利用が可能です。・画面の指定領域を切取ったり / 貼り戻したりか簡単にてきま フ / リストア / 設定 / 消去 etc Code Base 4 タベースを選択後、ロックする / レコードを書き出す / 指定された範囲のレコードの削除 卩 ■ CodeBase4 は C 言語から dBASEIll 、 dBASElIlDlus 、 dBASElV 、 C ⅱ p ロ e 「のファ [exeD 「 ession] d 日 ASE の式を評価し、結果を得る / d 日 ASE の式を中間コンノヾイルす イルシステム ( データベース、インテックス、メモ ) とコンバチフルなテータベースライプラリ る / 演算子の優先順位の取得 E[field] 10 進数の桁数の取得 / フィールドリファレンス番号 てす。これらのテータベース言語にコンバチプルな関数を用意しているのて d 日 ASE 川 / p 旧 s の取得 / フィールド名の取得 / カレントテータベースのフィールド数の取得 / レコードバッフ からの移植も簡単にてきます。 dBASE Ⅳと比較してデータアクセスは 5 倍速く、ループでは アの先頭ポインタの取得 / レコードバッフア内の文字の総数の取得 / フィールドリファレンス なんと 330 倍も速くなります。 番号の取得 / 論理フィールドが T 日 IJE か FALSE かの検査 / 指定フィールドの型の取得 / 数 ■高速処理・最大 L022 フィールド、 2.0 凹 .000.000 レコード ( 論理値 ) ■メモリモテル S 値フィールドの値を doub 厄得る / 指定フィールドのバイト数の取得 B[index file] イ ( 部機能が限定 ) / M / L ■ 2 , 000 行程度のソースプログラムで 100kb 程度の . exe ファイル ンテックスファイルを作成、オープン、クローズ、ロック、ロックの解除、選択キーの追加 / を作成可能・マルチューザー対応・ PC -9800 シリーズではデータベースライプラリで漢字 ポインタを最後尾に移動、指定キーに設定 / ファイルリファレンス番号の取得 / インテックス の使用は可能■旧 M - PC 版ではウインドウ、メニュー関数も付属■英文マニュアル し直す / キーをサーチ / ホインタを先頭へ設定 / インテックスファイルの型を文字で返す / ロ ◆対応 C 言語 : Mic 「 osoft-C 5.1 / 6.0 または Tu 「 bo - C2.0 ックの解除•[memo] 内部的にテータが格納されているかを検査 / メモファイルにある情 関数 ( 抜粋 ) 報を書き出す / メモフィールドを読む、データが存在するか調べる•[utility] 次の該当フ ・ [ ock ] プロックキーを追加、削除 / プロックを検索 / キー番号のスキップ nconve 「 ァイル名を探す / セクションのロック、解除 / ファイル名に適した文字か調べる / ファイル名 sion] 指定長の ASC Ⅱ文字列を dou e / イ int / ng に変換■ Cdatabase] テータ と拡張子を結合する / ファイル名から拡張子、ディレクトリ名を取り除く / ファイルをオープ べースファイルの作成、オープン、選択 / 指定レコードに削除マークを付加 / 削除マークが付 ンする•rextended] レコードがプランクかどうか調べる / メモリバッフアに入るだけの 加されているかの検査 / レコードを読む / ロック / 削除マーク付きのレコードを削除 / レコー レコードをシーケンシャルに読む / レコードバッフア内のレコードを n 番目とする / テータベ ド数、番号の取得 / 参照番号の取得 / テータベースの選択 / インテックスファイル内の先頭レ ースの内容を出力テパイスに書き出す / 関連テータベースと管理テータベースを関連付ける / コードを読む / カレントテータベースのロックの解除 / テータベースのオープン、選択 / テー フィールドリファレンス番号によって指定されたフィールドの総計を得る ー走行環境等 PFL / マシン共通イ匕ライプラリ単に行えます。各ライプラリにはキー入力、テキスト画面表 ・機種 NEC PC -9800 シリーズ ( LT 、ハイレゾ 示 / 制御、テキストウインドウ、メニュー、グラフィック、 リューションモードを除く ) NEC PC -9800 シリーズ、東芝 J ー引 00 シリーズ、各社 AX マウス等 150 以上の関数が含まれています。 CCF/EX 、 BGM/EX 、 G 「 aphic & マシン、富士通 FM 日 -50 / 70 等 ( 一部対応予定機種も含む ) Mouse/EX 、 Window & Menu/ アプリケーションプログラム PFL 対応の機種間で共通 て、同一仕様の関数を提供するライプラリシリーズです。 P EX は XL 、 XL2 、日 L のハイレゾリューショ FL は各機種の OS 、ハードウェア等の差異を吸収し、統 PFL PFL か機種間の差異を吸収 ン / ノーマルの両モードに対応。 合化された関数インターフェイスを提供することにより、マ Ve 「 sion 2 、ⅱ / 3 、 1 / 3 、 3 ・ MS-DOS シンインテペンテントなソフト開発が可能になるプラットフ ・対象 C 言語 Mic 「 osoft-C 5.1 / 6.0 Quick-C2.0 オームライプラリてす。このライプラリシリースを利用する OS Lattice-C4.0 Tu 「 bO - C2.0 ことにより、例えば 98 シリーズ用に開発したソフトを J ー 3100 、 機種に依存する部分 ・・ 5 ″ 2HD 、 3.5 〃 2HD 、 ・メティア・ ハートウェア AX 等他の機種に移植する、同時開発するといった作業が簡 5 ″ 2D ( 旧 M ー PC フォーマット ) ※すべての表示価格には消費税は含まれておりません。 お近くのパソコンソフソフト取扱 ※各製品は、 C 言語毎の対応になっています。 店または弊社まてこ注文ください。 こ注文の際に製品名、対象コンバイラ ( ヴァージョン ) 、メティアを指定してくだ / プの株式会社ティップス さい。 秋葉原の石丸電気マイコンセンター ・〒 111 東京都台東区蔵前 2 ー 8 ー 10 ( 谷 03 ー 325 ト 001 1) て取り扱っています。 ・ PHONE 03 ー 3866 ー 8635 FAX 03-3866 ー 8637 お電話て在庫を確認の上、お求めください。 く資料請求番号 1 乃〉 価格 \ 98 ′ 000 DOS お求め方法 ビス 送付サー クイック資料 いますぐ、 資料をこ希望の方はお電話ください。 FAX て資料をお送りいたします。 TE し 03-3866-8635
C のベストバナ - ・ソースコード付属 / 組み込みロイヤルティ無料・ すわ e C ′ a es CCF / 総合コンソールコントロールライプラリ価格 \ 59 ′ 800 CCF/EX 価格 \ 98 ′ 0 ◆ CCCF/EXJC は XL 、 XL2 、日 L の八イ キーホード、テキスト画面、クラフィック、マウス、ウインドウ、メニュー、プリンタ、拡張 レゾリューション / ノーマルの両モードに対 関数等 200 以上の関数で構成される総合コンソールコントロールライプラリです。 CG 「 aphic 応し、一部の関数を除いて、どちらのモード & Mousen CWindow & Men1-JJ 、 tKey & Dis ay 」とプリンタ関数、拡張関数て構 でも動作するプログラムを開発することがで 成されています。 きます。 E'G 「 aphic & MouseJs tWindOW & MenLJJ 、 CKey & DisplayJ については各製 プリンタ関数 ( 抜粋 ) 品の説明をこ覧ください。・プリンタ関数は OS を介してプリンタに文字コード、制御コ 文字出力 / プリンタステータスの取得 / プリ ード送り、各種アルファベットの文字印字、拡大、キャラクタモードの切り替え、フォームフ ンタの初期化 / C 日、 LF 出力 / 漢字文字出力 ィード、プリンタ状態の設定 / 検査、印字方向の切り替え、サプスクリプト / スーバースクリ / ANK 文字列出力 / 漢字、 ANK 文字列印字 プト文字の印字、縦印字、強調、アンダーライン、ドラフトモードの切り替え、左右マージン / 漢字、 ANK 文字列印字 ( ANK ー > 半角変 の設定、改行幅 / 方向の切り替え、ソフトウェアリセット等の処理を行うことかてきます。対 換 / 漢字 / ANK 文字列縦印字 ( ANK ー > 半 応プリンタは PC - P 日系です。■拡張関数は MS ー DOS ファンクションコールを用いたキー 角変換 ) / プリンタのリセット / SELECT 、 DESELECT の切り替え / ドラフトモードの 入力関数、文字列処理関数、 y ( es ) / n ( 0 ) の入力を促し、 Shift 、カナシフト、全角、半角 設定、解除 / 片方向、両方向の切り替え / レ 6 インチ改行設定 / レ 8 インチ改行設定 / n 回改行 のいすれの状態でも y / n を判断する関数等かあります。 / 漢字モード設定 / 解除他 0 t. を Window & Menu Window & Menu/EX ームキャラクタ、フレーム色、ウインドウ内 テキストウインドウ、メニュー関数のライプラリバッケージ。最近のちょっとしたソフトでは の表示色の設定が可能てす。この機能により、 大抵ウインドウ機能を備えています。例えばスクリーンエテイタでは画面を分割し 2 つ以上の 好みの色、キャラクタを用いたウインドウを ウインドウを開いて編集てきるとか、テータベース、業務用ソフト等では簡単な説明や操作ガ 定義可能・横長タイプ、縦長タイプ、羅列 イドをへルプウインドウを開いて表示したりしています。このような表示を行うためのマルチ タイプの 3 タイフのメニューウインドウによ ウインドウ機能とウインドウを利用したメニュー選択機能を提供します。 り、用途に応じたメニュー表示が可能ーサ CWindOW & Menu/EXJ は XL 、 XL2 、日 L の八イレゾリューション / ノーマルの両モー ンプルプログラムメニューウインドウにフ ドに対応し、互換モード ( 自動判別 ) によりどちらのモードでも動作するプログラムを開発する アイル一覧を表示し、選択されたファイル内 ことができます。また、八イレゾリューションモード時には 31 行 / 25 行モードを選択すること 容を上下左右スクロール機能を持った文字列 ができます。 表示関数により、スクロール表示をおこなう ■ウインドウ / メニューウインドウあわせて 20 個まてのウインドウがオープンできる ( 増減可 サンプルプログラムか付属。 能 ) ・オーバーラップ / 切り替え機能オーバーラップにより隠れたウインドウを一番上に表 次の関数の他、 rKey & DisDlay2 の * 印が付いている関数も加わります。 示・移動機能ウインドウを指定された座標へ移動■文字列表示行を指定する関数と、 関数 ( 抜粋 ) 上下スクロールを伴った文字列表示機能がある・スクロールスクロール関数と、文字列表 ウインドウの初期化、終了処理、オープン、クローズ / すべてのウインドウをクローズする 示を伴った上下スクロール機能がある■ V 日 AM をアクセスしてウインドゥ操作を行っている 表示対象となっているウインドウをクローズする / 表示対象ウインドウを別のウインドウに切 ので高速。ウインドウの切り替えもほほ瞬時・ウインドウを開き、 y(es) 、 n ( 0 ) の入力を 替える / ウインドウの移動 / ウインドウ内をプランク文字て消去 / ウインドウ内に文字を表示 促す関数と上下左右スクロール機能を持った文字列表示関数によるテキストファイル等のスク / 上へスクロールし、文字列を表示 / 下へスクロールし、文字列を表示 / ウインドウを上、下 ロール表示か可能な拡張ウインドウ機能・カスタマイズド・ウインドウウインドウのフレ にスクロール / ウインドウのフレームタイプを登録 / 文字列を指定行表他 価格 \ 29 ′ 800 価格 \ 49 ′ 800 Graphic & Mouse 価格 \ 29 ′ 800 Graphic & Mouse/EX 価格 \ 59 ′ 800 ◆ fG 「 aphic & Mouse/EXJC は XL 、 N88 日 A 日 C 相当のグラフィック機能とマウス機能を提供するライフラリバッケージてす。 XL2 、日 L のハイレゾリューション / ノーマ グラフィック機能はグラフィック画面に点、線、四方形、円、文字等を描画する機能、指定領 ルの両モードに対応しており、どちらのモー 域を切り出す / 貼り戻す等の機能と表示モードの設定を行う制御機能で構成されています。 ドでも動作する互換モード ( 自動判別 ) もあり マウス関数にはマウスカーソルの表示 / 非表示、色指定、ホタンの押下状態の検査、移動範囲 ます。 の指定、移動距離の検査等の関数があります。 関数 ( 抜粋 ) ・ N88BA C 相当のグラフィック関数を提供・高速グラフィック関数高速線分描画、高 画面のモード設定 / 表示範囲の設定 / 画面色 速連続線分描画、高速円描画、グラフィック画面への文字表示関数を備えています。 ( ノーマル の設定 / バレットの設定 / グラフィック、テ モードのみ ) これらの関数はすべて日 EPLACE / CLEA 日 / 0 日 / XO 日の 4 つの描画モ キスト画面消去 / ドットセット、リセット / ードのいすれかを選択指定することができます。 (fline, flines. fci 「 cle. g—cha 「 ) ーマ 直線、円、円弧の描画 / ペイント / タイルバ ウス関数 ターンによる塗りつぶし他 2X0 im) RS ー 232C ライプラリ 価格 \ 49 ′ 800 RS ー 232C ライプラリ /EX 価格 \ 98 ′ 000 間関係関数、および簡易ターミナルエミュレータ、 XMODEM 送受信プログラム等がサンプ 本製品は C 言語から日 S -232C インターフェースを介して、各種周辺装置、コンピュータ等と ルプログラムとして提供されています。製品にはデバイスドライバを含むすべてのソースコー コミュニケーションをとるためのライプラリです。 ドが含まれています。 バッケージには B ー OS を呼び出して行っている「日 S -232C ライプラリムこれに 9861K 用とマ ・用途 / 回線数によって使い分けのできる 3 種類のライプラリ (EX) を装備。■マルチサー ルチサーバ用テパイスドライ八版を追加拡張した「日 S -232C ライプラリ / EX 」の 2 種類があり、 バホードを装着することにより 9 回線まてサポート可能 (EX) ■「日 S ー 232C ライプラリ」て 呼び出し方法は共通になっています。 は " Ve 「 . 3.1 以上かっ型番が PS98-127 ー ? ? ? 以降の MS - DOS てなければならない " という 「日 S ー 232C ライプラリ」は主に B 旧 S を呼び出して、日 S -232C のコントロール、送受信を行 制限かあります。 ・ MS - C のみ対応。 っています。もちろん、 2 、 3 回線もサポートしています。 関数 ( 抜粋 ) 「日 S ー 232C ライプラリ / EXJ では日旧 S 呼び出し版の他に、使用環境に制限かなく本体はデ ■共通回線の選択、初期化 / 受信バッフア内テータ長の検出 / 受信バッフア内のテータを得 バイスドライバ化され、インターフェースライプラリを介して呼び出すテパイスドライバ版と る / 1 文字出力 / 8251 にコマントを送る / 8251 ステータスを得る / 送信レディ状態の検査 / キ マルチサーバ対応のデバイスドライバが拡張されています。また、各ライプラリ特有の関数 ( ー ャリアティテクトの検出 / 日 S -232C インターフェースのリセット / 文字列入力 / 文字列出力 部 ) を除いて上位関数の入口名、引数は共通なので、リンクするライプラリファイルを変更す / 1 文字受信 / 1 文字送信 / 漢字処理を伴うテータ送信 / モテムの初期化、接続、自動発信 るだけで切り替えることかてきます。この他、オートダイアル / モテムコントロール関数、時 ・ EX 専用プロック受信 / プロック送信 / 八ンドルのクローズ