機能 - みる会図書館


検索対象: 月刊 C MAGAZINE 1993年2月号
122件見つかりました。

1. 月刊 C MAGAZINE 1993年2月号

ln れ川 a ⅱ行 om 町ⅱ計 Ma れ門 工ル・エス・アイジャパン LSI C -80 LDB-80X きなプログラムてもデバッグ情報 合に限って使用て、きます。 V30 の LSI C ー 80 用のソースレベルデバ ッガ LDB-80X Ver 2.0 を紹介し を制限することなくデバッグて、き 8080 工ミュレーション機能を利 用して , より高速にユーザプロ ます。なお , LDB-80X は , LSI C ます。 ー 80 専用デンヾッガのため LSI C ー 80 ユ グラムを実行て、きます。ただし , 動作モード ーザにかぎり単体売りされていま Z80 / 64180 独自の命令は使用て、 す。 きません。 動作モードは以下の 2 種類があ 概要 ウインドウコマンド り , オプションスイッチにより切 り換えて使用て、きます。 LDB-80X は LSI C ー 80 て、開発し ・ソフトウェア工ミュレー ファンクションキーやコントロ ぐ / ョン たソフトウェアのデバッグ環境を ールキーによるウインドウコマン MS ー DOS 上て、実現するソースレベ ソフトウェア工ミュレー ドがあります。 ション て、 Z80 の命令をサポートするの ルクロスデバ、ツガて、す。プログラ ダイアログコマンド ム作成からデバッグエ程まて、 , C 言 て , 追加ハードウェアなしに Z80 語レベルて、の開発が行えるのて、 , のソフトウェア開発が可能て す。 ソフトウェアの生産性が大幅に向 ダイアログコマンドは , マクロ 上します。また , デバッグ情報な 機能によってより強力な複合コマ ・ V30 の 8080 工ミュレーションモー どの LDB ー 80X のワーク領域を EM ンドや条件判断を記述て、きるよう ドⅣ 30 モード ) S メモリに確保することがてき , 大 パソコン本体の CPU が V30 の場 になっています。 TabIe 1 ウインドウ機能一覧 機能 機能 説明 説明 5 個のウインドウ ( コード , レジスタ , コマン コードウインドウに表示されている文字列 ( 変数 ド , ウォッチおよびオプションウインドウ ) とボ 名 , 関数名など ) をカーソルで指定してコマンド ップアップメニューやファンクションキーによ ウインドウの入力に使用するコマンド。このコ るオペレーションなどでテパッグ時に必要な情 マンドはカーソル指定するだけで長い変数名を 報を容易に参照 / 変更可能。とくにコードウイン 文字列の取り込み / 選択 1 キーのみの操作で取り出すことができ , ダイア ドウのオペレーションはエテイタ感覚で操作で ログコマンドの入力が軽減される。さらに文字 きる 列選択コマンドでは選択した文字列 ( 式や変数な ど ) をインスペクト , ウォッチ , ビューおよびメ 通常のプログラムのテパッグは , プレークホイ モ機能で使うことができる ントを設定して実行。 LDB ー 80X は豊富な実行 / プレークのコマンドがあり , これらを利用して ソースファイルの参照したい部分を素早く , か バグの発見に費やす時間が短縮可能 つ容易に表示できるようにファイル操作のコマ ンドもエテイタ感覚で設計されている。参照可 コードウインドウに表示されるソースファイル 能ファイルの一覧 / 変更および文字列検索のコマ の変数 , 配列 , 構造体 , 共用体をカーソルで指 ンドを装備 定するだけでその変数のデータ構造に従った形 [CjNC] 十数字キーでプロセス制御 ( タスク切り換 式で参照 / 変更する機能。 C のテータ構造のすべ えなど ) およびグラフィック / テキストの表示画 てとローカル変数 , グローノヾル変数 , スタティ 面コントロール可能 ック変数をサポート ウインドウコマンド以外のキー入力をヒストリ テパッグ上でとくに重要な変数や配列あるいは バッフアに順次登録し , それまでに入力したコ 式の最新値を常にウォッチウインドウに表示す マンドの検索 / 行編集を容易に実現。これらの機 ることが可能 能を十分に生かせばより少ないキーオペレーシ ョンでテパッグが可能 カーソルで指定した変数や式の値をコマンドウ インドウに表示する機能。現在の変数の値を一 メモ内容はコマンドウインドウなどの行入力に 時的に記録でき , 後で変数の変化の過程をチェ 使用可能。さらに文字列を入力文字として何度 メモ ックしたりするのに便利 でも使用できる < 対応 OS> MS-DOS Ver. 2 . 11 以上 くメモリ > 384K バイト以上 < 対応機種 > PC ー 9801 シリーズ ( ハ イレゾモードを含む ) PC-H98 シリーズ くパッケージ内容 > ・ LSI C ー 80 クロスコンパイラ ・ LDB-80X ソースレベルクロス テノヾッカ・ < 供給メディア > く問い合わせ先 > 〒 151 東京都渋谷区千駄ヶ谷 1 ー 8 ー 14 工ノレ・エス・アイジャノヾン株 TEL 03 ( 3404 ) 1319 FAX 03 ( 3478 ) 0576 5 ク 2HD , 3.5 〃 2HD ウインドウ表示 実行 / プレーク ファイル関連 インスペクト機能 プロセス制御 ウォッチ機能 シェル ビュー機能 C MAGAZINE 1993 2 162

2. 月刊 C MAGAZINE 1993年2月号

通信プロトコル研究 な環境て、も高速のデータ転送を実現してい る。ウインドウサイズは , 十バケットにおけ る WS により双方通知して , 大きいほうの値 を採用する。 すべてのバケットを送り終わったら , 先 送りされたバケットに対する ACK も送られ たことを確認してから終了する (Fig. 24 ) 。 ACK 減算について考えておく。たとえば packet 5 , packet 6 が先送りされている場 合 , 通常は packet 5 に対する ACK が戻って くる。もし , packet 6 に対する ACK が戻っ てきたなら ,packet 5 に対する ACK の受け 取りは失敗したと考える。したがって , pa cket 5 , packet 6 の双方の ACK を受け取っ たことにする。 NAK が送られてきた場合には , ACK を受 け取っていないバケットをすべて再送する。 Fig. 26 プロックホティ部分詳細 引 NIT プロックホティ部分詳細 長さ 詳細 ノヾージョン情報 ' 0 ' テストノヾージョン , ' 1 ' ノヾージョン 1 ℃ 0 系列 ~ ' 9 ' リサープ 1 再送方式 ' 0 ' Go back N ~ ' 9 ' リサープ 2 送信ウインドウサイズ " 00 " ~ " 99 ”による ASC 旧 0 進表示 1 オプション機能数 ' 0 ' オプション機能使用不可 ' 8 ' オプション機能数 ' 9 ' リザープ 1 オプション機能 1 SKIP 機能 ' 0 ' または NUL 料オプション機能使用不可 ' 1 ' ファイルのスキップ機能使用可能 NUL 料で埋める 122 予約 v 日 LE プロックのホティ部 長さ詳細 2 ファイル通し番号 ( セッション中て転送するファイルの番号 ) " 99 " による ASC Ⅱ 10 進表示 ” 01 ” ファイル名ファイル名を表す NUL て終了する文字列 可変 ファイル長 ' 0 ' ~ ' 9 ' の ASC Ⅱ表現で NUL て終了する文字列 可変 8 ファイル作成日 " 19900320 " のような表現 NUL で埋められている場合には受信日とする 6 ファイル作成時間 * 2 ” 150748 " のような表現 NUL て埋められている場合には受信時間 * 2 とする リサープ NUL で埋める 可変 VENQ プロックのホティ部 長さ詳細 1 シーケンス番号 ( 0X00 ~ Ox 幵 ) ' 0 ' ファイル正常終結通知 1 機能 ~ ' 9 ' リザープ 126 リサープ N U LC NIT のホティ部 詳細 長さ ノヾージョン情報 ' 0 ' テストバージョン , ' 1 ' バージョン 1 ℃ 0 系列 ~ ' 9 ' リサープ 1 再送方式 ' 0 ' Go back N ' 1 ' 選択的再送方式 ~ ' 9 ' リサープ 2 受信ウインドウサイズ " 00 " ~ " 99 " による ASC 旧 0 進表示 1 オプション機能数 , 0 , オプション機能使用不可 ' 8 ' オプション機能数 ' 9 ' リサープ 1 オプション機能 1 SKIP 機能 ' 0 ' または NUL 料オプション機能使用不可 ' 1 ' ファイルのスキップ機能使用可能 VRPOS プロックのホティ部 長さ詳細 可変オフセットプロック番号 ' 9 ' を用いた 10 進表現 ASCII 文字 ' 0 ' VSTAT プロックのホティ部 長さ詳細 1 状態 : ' 0 ' : ファイル正常終結受理 : リサープ VSKIP プロック ( オプション機能 ) のホティ部 長さ詳細 2 ファイル通し番号 2 八イトの ASC Ⅱ文字 ' 0 ' ~ ' 9 ' による 10 進表現 * 1 ドキュメントては [NULL] と表記されているが , 本文中は n キャラクタに該当する 文字を意味する NUL という表現に統一した * 2 筆者は「時刻」と「時間」を使い分けることに決めているが , ここはドキュメントの表 記を尊重し , そのままにしている 1 Quick-VAN Quick ー VAN に関しては , 実際に動作して いるところを一度も経したことがない 参考資料から得られた知識をもとにして , 概略を述べるに留める。実際にインプリメ ントする場合には , 別途資料を入手してほ ick-VAN の特徴 1 Quick ー VAN の特徴を一言て、述べるなら ば , XMODEM にスライディングウインド ウ機能を追加して , 速度を向上させた , と いう感じの通信プロトコルて、ある。 XMOD EM にはなかった機能として , ファイル情報 を送信したり , 復旧転送を行う機能が追加 されている。復旧転送とは , 過去に中断し た転送を再開する機能て、あり ,ZMODEM や BPlus て、サポートされているものと同様て、 ある。 Quick-VAN のエラーリカバリーは、、 Go Back N" 方式が採用されている。これは , あるバケットて、エラーが検出された場合に , 特集通信プロトコル研究 57

3. 月刊 C MAGAZINE 1993年2月号

まさに 7Üカッ加′ Yoshimasa 日 ectronic PC-NET/2 オンライン・ユーザ・サポート・システムー価格 . ← 198 , 000 円発売中 ・製品概要ノヾソコン通信を利用した OS / 2 対応のユーザ支援システムて魂貴社製品を購入されたお客様に対するアフターサービスを目的として作られていま 魂製品案内や問い合わせ、さらにノヾージョンアップの情報交換など幅広いこ利用が可能で魂テキストファイルてメニューを提供していますので、カ スタマイズを容易に行うことができま魂もちろん一般的な BBS ソフトウェアとしてもこ利用いただけま魂さらに全ソースコードが添付されており、 特定のユーサアプリケーションへの組み込みや通信による情報交換など貴社のニーズに合わせたネットワーク構築に抜群の威力を発揮しま魂 ー主な機能・ユーサ管理機能 対応機種 OS / 2 が動作可能な機種 ・販売情報管理機能 対応 OS 旧 M OS / 2 Ve 「 . J 1.8 以上 ・掲示板管理機能 日本語 MS OS / 2 Ve 「 . 1 . 円以上 ・メー丿レ管理機能 ・ユーサ情報機能 ・通信内容処理機能 ・通信ポート設定機能 ・環境設定機能 ・メッセージ設定機能 ・モニター機能 ・ターミナル機能 54. ロ ファイル (F) ロ 朝こ第 4 / 川 材旧 7 町 卩こ第 4 / い , ℃為は % に : リ : 新 4 ゞい / ロ 31 工 い : 1 い : ・ユーサ管理機能 心變 : 第 ・メール管理機能 ・掲示板管理機能 にイとい新第を ・「、一ョい , い間、回日諸ま 掲 4 塾こいド レⅣ識津 : いに 4 し、要 : : 当 - 、い物第 Craphic Ⅳ一 dO ー一 a ー′ ~ = グラフィックウインドウライプラ屮価第 23 , 000 円 ~ 発売中 ■製品概要本製品は、 C 言語にてウインドウ処理を行うためのライブラリて魂このライプラリを使用す 対応機種 NEC PC ー 98 田シリーズ ることにより、ウインドウ対応型アプリケーションを簡単に実現致しま魂ウインドウ間の切り ( 八イレゾリューションモードは除く ) 替えや移動等、マウスに完全対応していますのでマン・マシン・インターフェースは、抜群の 対応言語 MS-C 5 」以上 威力を発揮しま魂またグラフィックを使用していますので、一行のドット数が可変となり、 Quick-C 2.0 以上 ANK フォントも自由に設定可能で魂 丁 IJ 日 BO C 十十 1.0 以上 ■主な特長・高速グラフィックウインドウ・組込みロイヤリティ無料 BORLAND C 十十 2.0 以上 ・ソースコード完全公開 ・汎用キー入力丿レーチン装備・マウス完全対応 23 , 000 円発 売中 価格 ■製品概要本製品は、 C 言語にて旧 AM ファイル処理を実現するライプラリで魂検索は、 B-t 「 ee ア 対応機種 MS ーロ OS が動作可能な機種 対応言語 MS-C 5 」以上 丿レゴリズムを採用しているため、高速検索が可能で魂当ライプラリにて作成のテータベー Quick-C 2.0 以上 スファイルは、 dBASE Ⅲ PLIJS にて参照、変更可能て魂 丁 CJ 日日 0 C 十十 l.0 以上 ー主な特長・ B ー t 「 ee による高速アクセス・ソースコード完全公開・組込みロイヤリティ無料 BORLAND C 十十以上 価格 23 , 000 円発売中 RS-232C Library 。 ■製品概要本製品は、 C 言語にて日 S ー 232C の各種制御を行うためのライプラリで魂一般的な調歩 対応機種 NEC PC ー 98 田シリーズ 同期式だけではなく、同期式についても完全にサポートされていますのて、 BSC 等同期式 対応言語 MS-C 5.1 以上 手順を使うアプリケーションにも対応できま魂また、付属している通信ソフト Y 一丁 E 日 M auick-0 2 . 0 以上 は、プログラム例としてだけでなく実際にノヾソコン通信等にもお使い頂くことができる機能 丁 IJ 日 BO C 十十 1.0 以上 を備えておりま魂 BO 日 LA N D C 十十 2.0 以上 ・主な特長・調歩同期式・同期式手順ともにサポート ・組込みロイヤリティ無料 ・半 / 全ニ重制御、八一ド / ソフトフロー制御のサポート ・実用通信ソフト Y 一丁 E 日 M 装備 ・拡張日 S ー 232C ホード ( PC ー 9861 K ) 対応 ・ Y 一丁 E 日 M ・ライフラリともにソースコード完全公開 よ C 手順ルーー′ 価格 46 , 000 円発売中 通信ソフト JTRN 装備 対応機種 NEC PC ー 98 田シリーズ ( 日 S ー 232C Lib 「 a 「 y が含まれます ) 対応言語 MS-C 5. 似上 , Quick-C2.0 以上 ,TIJRBO C 十十 1.0 以上 , BORLAND 十十 2.0 以上 価格 46 , 000 円新発売 , →、通信ソフト ZTRN 装備 対応機種 NEC PO-9801 シリーズ ( 日 S ー 232C 凵 b 「 a 「 y が含まれます ) 対応言語 MS-C 5. 似上 , Quick ー C2.0 以上 , TIJ 日日 0 C 十十以上 , BORLAND C 十十 2.0 以上 ・ PC-NET fo 「 W ー N ロ 0 Ⅳ S ( オンライン・ユーサ・サポート・システム ) 近日発売予定 全ソース付 198 , 口円 PC ー NE 丁 / 2 の W ー N ロ OWS 版が遂に登場しま魂こ期待ください。 NEWS ・弊社製品情報ネットワークシステム“ Y ー NE 下 ' 開局中 . 〃アクセス電話番号 ( ロ 3 ) 535 ロー 1785 IJSER ーロ "GIJEST ”でどうぞ / あ求め方法弊社製品は、パソコンソフト取扱店であ求めいただけますガ、 直接ご注文の際は右記まであ問い合わせください。 なあ、上記価格には消費税ガ含まれてありません。 く資料請求番号 180 〉 アイサムライプラリ 通信ソフト Y-TERM 装備 吉正電子株式会社 C 事業を 〒 1 51 東京都渋谷区代々木 1 ー 58 ー 1 0 第一西脇ビ丿 電話 ( 03 ) 5371 ー 3041 ( 直通

4. 月刊 C MAGAZINE 1993年2月号

速報 WATCOM C / 386 J9.0 32 ピットコンバイラ WATCOM C / 386 J9.0 かリリ ースされた。 J9.0 では , 各種 DOS 工クステンダや Win - dows などのマルチプラットホーム開発環境のサポー ト , MS-C Ve 「 . 6.0 互換グラフィックライプラリの 追加など注目すべき機能か追加されている。とくに MS- C Ve 「 . 6.0 とのソースレベルでの互換性とコンバイ ラ自身の最適化機能を中心に紹介する。 べた結果については後て、述べる。 80486CPU 用最適化 はじめに WATCOM FORTRAN 77 / 386 との 386 固有のアーキテクチャに依存した最適 ミックスドランゲージ開発 WATCOM C / 386 J9.0 は , ( 株 ) ライフポ 化はもちろんのことだが , 特筆すべきはタ ートが日本語版を移植・販売している 8038 ーゲットが 486 マシンて、ある場合 , 486 のス 両コンパイラ間て、オプジェクトおよびラ 6 / 80486 専用 32 ビットコンパイラて、ある。 カラ機能を利用するオプティマイズを行う イプラリの互換性が保たれていて , メモリ すて、に本誌て、も参考文献 [ 1 ] において前 ことて、ある。 管理方法も統一されているため , FORTR 版の Ver. 8.5 が紹介されているのて、 , 本稿 Cx486DLC を換装した PC ー 9801 にて 2400 AN プログラムからの C 関数呼び出しやその においては , DOS 工クステンダ DOS / 4G の 行ほどの C ソースについて 486 用オプジェク 逆を行うことがてきる。 解説など旧バージョンと重複する部分につ トと 386 用オプジェクトの比較を行ってみた 386 { DOS-Extender(RUN386)ij いてはそちらを参照していただくとして , が , 逆アセンプリ出力はかなり異なってい 使用可能 前回詳しく述べられなかった点 ( 今回はと るのだが実行時間には有為な差は生じず , オプジェクトサイズもほば同じて、あった。 くに最適化性能について詳しくチェックし Rational Systems 社の DOS 工クステンダ てみた ) , 新しい特長に重点を置いて述べる 後述のべンチマークテストの項て、も 486 最適 DOS/4G 以外に , Pharlap Software 社の D ことにする。 化についての比較を行っているのて、参照し OS 工クステンダ、、 RUN386 クも正式に使用 なお , 本稿て、は MS-C は Microsoft C Ve ていただきたい 可能となった。このコンパイル時のオプシ r. 6.0 を , djgcc は djgcc 1.08 (based on g ョンに、、 /l=pharlap" を加えると RUN386 M S - C とのソースレベル互換性 cc 2.2.2 ) を , WATCOM C はとくに断わら 用のオプジェクトコードが生成される。後 後述するように , 「完全互換」て、はなく , ないかぎり WATCOM C / 386 J9.0 を表す。 に示すべンチマークテストからもわかると 「 32 ビットコンパイラとしてのパフォーマン おり , この RUN386 を DOS ェクステンダと 特徴 スを尊重しつつ MS ー C との互換性を重視した して使ったほうが高速て、ある。 設計」となっている。これは Ver. 8.5 からも ただし , IM バイト以下のリアルモードと の共通メモリの扱いが両者て、異なることに 區われていたのだが , 当時はグラフィック 高度な最適化 注意を要する。 DOS/4G の場合は DOS 工ク ライプラリが付属していなかった。今回 V 386 固有の命令や 32 ビットのリニアアドレ er. J9.0 になり , FMR 版を除き MS-C と同様 ステンダが設定するデフォルトセグメント なグラフィックライプラリが付属するよう ッシングによってプロセッサの性能を効率 のオフセット 0 から 0xFFFFF まて、がそのま よく引き出す高速なコードを生成する。 まリアルモードと共通な物理アドレスに対 になった れについては後て詳述する。 応しているのて、 , たとえばオフセットを 0x また MS ー C と同様な漢字関数も用意されて いる。実際の互換性がどの程度なものか調 A0000 とすればテキスト VRAM 先頭にアク ニ 11 ロ 68 C MAGAZINE 1993 2

5. 月刊 C MAGAZINE 1993年2月号

Pascal FORTRAN Modula-2 く OS / 2 版 > C MAGA MS-C, MS- BASIC, COBOL/2 Logitech Modula-2 spero PRO-FORTRAN N/2, RM/FORTRAN, Pro MS-FORTRAN, FORTRA Pascal, SBB Pascal Turbo Pascal, Meta Ware 「 Btrieve 」 ノベル株 ノベル株は , NetWare 対応のレコードマ ネジメントシステム「 Btrieve 」を開発べンダ ー用に発売した。 同ソフトは , NetWare 対応のデータベー スアプリケーション開発の環境を装備した データベースエンジン。ネットワーク上て、 の複雑な排他制御 , 保守などはすべて「 Btr ieve 」が行うため , NetWare 対応のデータベ ースソフトの開発が容易になる。おもな特 徴は以下のとおり。 ・ C, BASIC, COBOL, Pascal, FORTR AN など各種言語用のインタフェイスをサ ・アセンプラ記述による高速処理を実現 ・ 1 ファイル当たり最大 24 個のマルチキーを サポート ・複数ファイル間のリレーショナルアクセ スが可能 ・ 2 レベルて、のファイル自動保守機能を装備 ・ネットワーク環境を完全にサポート く動作環境 > <Windows 版 > MS-C く価格 > 問い合わせ先ノベル株 160 , 000 円 ・対応機種 ・対応 OS ・対応言語 <DOS 版 > BASIC C 言語 COBOL 割り込みべクタ 7Bh を使用可 能な NetWare 対応マシン MS-DOS Ver. 3.1 以上 MS OS/2 Ver. 1.0 以上 MS-Windows Ver. 2.1 以上 MS-BASIC, QuickBASIC MS-C, Lattice C, Turbo C, LSI-C, Let' s C, DataIi ght C, DeSmet C, Comput er lnnovati on C ト C86 Micro Focus Level II COB OL, MS-COBOL, ReaIia C OBOL, COBOL/2, RM/CO BOL, mbp COBOL 〒 154 東京都世田谷区三宿ト 13 ー 1 東映三宿ビル TEL 03 ( 5481 ) 1161 「 BSO R3000 用 クロスコンバイラ」 工ーエスアール株 工ーエスアール株は , 米国 Boston Syste m Office Tasking( 以下 BSO) 社が開発し た MIPS R3000 用の C 言語クロスコンパイラ の販売を開始した。 従来 , R3000 のソフトは , MIPS べースの マシン上て、動作するネイテイプコンパイラ て、開発されていたが , 同クロスコンパイラ は , BSO がサポートする多種のプラットホ ーム上て、 R3000 の開発を行うことがて、きる。 おもな特徴は以下のとおり。 ・コンパイラは , ROM 化可能なのて、組み込 み用として使用可能 ・ ANSI/ISO X3J11 に準拠 ・浮動小数点ュニットを持たない CPU のた めにフローティングライプラリを装備 ・ R3000 ファミリのすべてをサポート ・ソースレベルデノヾッガ用のシンポリック 情報の生成が可能 ・ ROM 化可能なコード生成が可能 ・リロケータブルオプジェクトコードの生 成が可能 ・ IEEE ー 695 準拠のオプジェクトファイルを 生成可能 く動作環境 > ・対応機種 SPARCstation, HP ー 9000 , I BM RS / 6000 , DECstation, VAX/VMS, IBM/PC TEL 03 ( 3502 ) 5571 〒 105 東京都港区虎ノ門 1 ー 19 ー 9 問い合わせ先ェーエスアール株 VAX 用 EWS 用 PC 用 く価格 > 2 , 700 , 000 円 1 , 480 , 000 円 750 , 000 円 ote-L, 電房具 IB/desktop ・対応機種電房具 IB / note , 電房具 IB / n く動作環境 > トの制御が可能 ・ VISCA 機器コントロールと RS ー 232C ポー ・メニュー処理機能をサポート ェイスをサポート ・電子ペン , マウスなどのユーザインタフ ・アプリケーションの自動実行と終了が可能 ョン処理などの記述が可能 ・図形セグメントの移動によりアニメーシ ・図形 / 文章データのページ単位の表示が可能 以下のとおり。 ドリプン処理の記述も可能。おもな特徴は どの機能を備え , マルチタスクやイベント の定義 , 繰り返し , 強制終了 , 数値演算な 作するためのマクロコマンド言語。マクロ グメント , ウインドウ , RS ー 232C などを操 同ソフトは , 電房具 IB シリーズの図形セ ノし、 0 ンド言語「 IB マイクロスクリプト」を発志した ソコン「電房具 IB シリーズ」用のマクロコマ パーソナルメディア株は , BTRON 仕様パ ノヾーソナルメティア株 「 IB マイクロスクリプト」 く価格 > 60 , 000 円 問い合わせ先パーソナルメディア株 〒 142 東京都品川区平塚 1 ー 7 ー 7 MYt•ル TEL 03 ( 5702 ) 7858 N ews Squa re 157

6. 月刊 C MAGAZINE 1993年2月号

ソフトの道具箱 C/Window ( シーウインドウ ) 「ロ OS の統合開発環境を実現」 ロライフラリ関数のソースコートー -- ーー完全公開 きわめて移植性の高いコートなのて , コンノヾイラのハーション・アップへの対応や , 異なるコンノヾイラ 「異機種の開発かあなたのマシンで OK み 通常のアプリケーション・プロクラムへの組み込みに対するロイヤリティーは一切不要 ロ組み込みロイヤリティーーーー無料 への移植作業はこ自身の手て容易に実行可能 ¥ 60 , 000 ( 機種別 ) C/Dbase ( シーティーベース ) \ 90 , 000 ( os 別 ) 仮想画面をナポートした本格的なオーバーラップ型マルチウインドウ・アプリケーション開発用の関 数ライプラリ。グラフィックスもサポートしているので、きめ細力な画面設計が容易に実現可能。 検索ロジックに正当な Btree + アルゴリズムを採用 , 本格的データ・べース構築用関数ライプラリ。 提供関数群は ISAM 関数 , Data 関数、 Btree 関数の 3 グループこ大別。 ISAM 関数は一般的 な業務用データ・べースの構築に最適。 Data , Btree 関数は文献検索システム、 CD-ROM 検索 ■異機種間の画面制御方式の相違を すべて吸収 ひとつの機種て、開発されたアプリケーション・ プログラムがそのまま異機種で動作可能。 ・仮想画面の概念を導入 巨大な仮想画面を設定可能。ビューとして物理 画面に投影。 ・多彩なウインドウ操作 拡大縮小 , 移動、表示 ON/OFF 、枠タイトル、 色 , タイル , 亜なり順序の変更。 ・強力なテキスト操作処理 低レベルな入出力から高機能なスクリーンエデ ィッはで日本語完全サポート。 C/Print ( シープリント ) ・メモリ効率のよいグラフィック管理 線 , 距形 , 円 , 楕円 , りつぶし , マーカ , 枠 , 背景模様 , グラフィック文字 , イメージデータ等 , すべて図形として管理。 ・対応機種 . PC ー 9800 シリーズ , DOS/V ハ。ソコン , J -3100 シリーズ , FM-R シリーズ ・対応 OS : MS-DOS, DOS/V ・対応言語 . Microsoft C (Quick C), BorIand (Turbo) C 十十 ¥ 30 , 000 ( 機種別 ) システム等にも威力を発揮。 ■完全マルチ・プロセス対応 レコードレベル、ファイルレベル排他制御を ・豊富な検索機能 キー値によるアクセスに加えて , レコード番号によ るアクセスも可能。 ・削除レコードの復旧機能 削除レコードはファイルのパージを行うまでファ イル内に存在するので . 必要に応じて復旧可 能。 ・充実したファイルの破壊対策機能 ファイルの整合性検証およびに修復の機能は ユーティリテイだけでなく関数としても提供。 C/BCD ( シー七一シーテー ) ・高速な検索スピード データ量が多くなるほど , 威力を発揮。 ・ DOS 版 対応 OS : MS-DOS, DOS/V 対応言語 : Microsoft C (Quick C), BorIand (Turbo) C 十十 ・ WINDOWS 版 (DLL 方式 ) 対応 OS : MS-WINDOWS ( V3.0 ) MS ・ -WINDOWS ( V3.1 ) 対応言語 : Borland C 十十 ( V3.0 ) Microsoft C/C 十十 ( V7.0 ) ・ OS/2 版 (DLL 方式 ), UNIX 版 対応 OS : 問い合わせ下さい 対応言語 : 問い合わせ下さい \ 30 , 000 仮想ページ・プリンタ方式を採用したテキスト十グラフィックス印字ツール , C / Window と完全連動。 ラインプ ) ンタでもべージプリンタ感覚でレイアウト可能。 C/Graph ( シーグラフ ) C. / Window にて作成された画面の印字も可能。※別売の C / Window が必要て、す。 •C/Window と連動 図形表示 , りつぶし全面 / 部分画面コヒ。 ・豊富なグラフィック処理機能 種々の文字サイス : 文字属性、網掛けをサポ ■テキスト装飾機能 パソコン / プリンタで出力が可能。 駐させるので、プログラムの変更なしに異機種 プリンタの機種依存部はすへて BIOS として常 ・異機種パソコン / プリンタに対応 PC ー 9801 シリーズ , DOS/V ハ。ソコン , J ー 3100 ・対応機種 : Borland (Turb0) C 十十 Microsoft C (Quick C), 対応言語 . MS-DOS, DOS/V ・対応 OS : PC-PR201 系 , ESC/P 系 ・対応プリンタ : シリーズ , FM ・ - R シリーズ お金の計算のように高い演算精度が要求される処理を実現すごめの関数ライプラリ。サポートは 四則演算のみだが , dou e への型変換を行えば科学技術計算も可能。また , BCD 型データは C / Dbase にてサポートされる ISAM キー値としてそのまま使用可能。 ■異 OS への移植か簡単 すべて c 言語で記述 , 異 OS への移植が容易。 ■豊富な編集機能 sprintf ( ) のよデょ手軽さで BCD 型のデータを編 集可能。 Comming Soon •C/Window Lite ( Y30 , 000 ) ・対応 OS : MS-DOS, DOS/V ・対応言 Microsoft C (Quick C), Borland (Turbo) C 十十 ( 近日発売予定 ) どきめ細かい変史がグラフごとに可能。 ・多彩なグラフ種類 横棒グラフ ( 4 種類 ) 、縦棒グラフ ( 4 種類 ) , 折 れ線グラフ ( 2 種類 ) , 円グラスレータ・一チャー ト , 散布図をサポート。 ■多彩な図表要素 種類豊富な枠形状 , 線種、マーカ形状 , 文字 サイズ , 背景模様 , 塗りつぶしパターンをサポ ・上記価格には , 消費税は含まれておりません。 ¥ 30 , 000 PC ー 9801 シリーズ , DOS / V パソコン , J ー 3100 ス , 軸、セグメント , ラベル、凡例 ) の属性の規定値を変更することにより , キャンバスの枠 , 背景色な 1 つあるいよ複数のデータ系列力 13 種類の図表を簡単に作成可能。また , 各図表要素 ( キャンバ ・対応機種 : Borland (Turbo) C 十十 Microsoft C (Quick C), 対応言語 . MS-DOS, DOS/V ・対応 OS : シリーズ , FM-R シリーズ。 ※別売の C / Window が必要て、す。 C / Window サプセットのテキスト型ウインドウ。 DOS / V の豊富な文字属性をサポート , テキ スト型て、も見栄えは良好。 DOS / V 用と PC ー 9801 用がレヾッケージ : •C/Print Lite ( Y30 , 000 ) C/Print のサプセット。テキスト + グラフィクスの印字が可能。帳表印字等に最適。 DOS / V 用と PC ー 9801 用がレぐッケージ。 ■ C 十十用製品 ツールクラフトては、今後 C + + 用のクラスライプラリ製品を販売する予定ております。ご期待下 ※上記機種以外のパソコンへの移植も以下の条件にてこ相談に応します・・・・・・作業期間司 ~ 8 週問 . 受注価格 = 応談 , 受注条件 = 作業期間中パソコン貸与 く資料請求番号 179 〉 TEL. 0424 ( 89 ) 0202 FAX .0424 ( 89 ) 4888 〒 182 東京都調布市国領町と 3 ー 15 センチュリー K & AI 102 号 AQGT 元ツールクラフト ー開発元・販売元・問い合わせ先 ・ MS-DOS. MS-OS/2. MS-WINDOWS. MS-C. c は米国Ⅵ c 「 0S0 れ社の商標です。 Borland c 十十 . Tu 「 bO c は米国 Borland e 「 na い on 社の商標です DOS/V•旧 M OS / 2 は米国旧 M co 「 p. の商標です

7. 月刊 C MAGAZINE 1993年2月号

通信フト 高速テータ転送を可能にヴる通信規約の実際 すでに国内のネット人口は百万人を超えると そしてこれらの仕様がしばしばオンラインで配 布されていることも関連書が少ない要因のびど ・いわれているが , フリソフトウェアをダウン ロード , ーアップロードするときに必ずお世話に っと思われる。 通信プロトコルは , 特別な処理を行うという なるのが , XMODEM に代表される , ~ いわゆる よりも , ー ~ むしろデータ転送処理という点におて、 通信プロトコルである。 なぜカ % XMODEM や ZMODEM などの通信 て , もっとも基本的な技術の集大成であること プロトルについて書かれた本はあまり見かけ に注目すべきである。データの変拠タフレム 処理 , 工ラー訂正名イムてウト処理などは , ない。。通信ソフトウェアを自作する機会でもな ければ , にのような処理を書く機会が少な、一 ほかのプログラム作成にもたいへん役に立つ知 通信プロトコルの基礎知識 コンピュータ間でのテータ転送には , 送受信双方におい てエラーフリーを実現する統一された規約 , つまりプロ トコルか求められる。本章では基本的なプロトコル機能 とプロトコル機能理解に必要な用語を解説する。 合には , 0X00 ~ 0x1f に相当する文字はコン れてきたら再開するのが XON/XOFF 制御 トロール文字とみなされ , 文意を伝達する ( X 制御 ) て、ある。 通信プロトコルの必要性 ためのいわゆる通常の文字 , とは異なった このようなコントロール文字がテキスト 意味を持つ。文章中に現れるコントロール 中に含まれていたらどうなるだろうか。テ BBS ( 電子掲示板 ) は , 多くの利用者が読 文字もある。たとえば , 0x0a は改行を意味 キストを画面に表示している途中て、 , Cont するし , 0x0d が復帰を意味する。 0x0c(Co めるように公開されているという意味にお r01 ー S が現れたら , その後に端末から何か送 ntroI-L) は , 画面消去を意味することがあ いて , 駅にある伝言板と同じように , 掲示 信しようとしたときに , まだ Contro ト Q を受 板としての用途に適している。 BBS がて、き る。また , 端末によってはエスケープに続 け取っていないのて、 , 待ち状態に入ってし ると同時に文書以外のデータ , プログラム く文字は特別な意味として解釈される。 まうかもしれない。最悪の場合 , お互いに もやり取りしたいという要求がただちに発 これらの特殊文字のほかに , データ転送 データを待っことになってしまい , 相互の 生した。 時のフロー制御に使われるコントロール文 通信が破綻する。 テキストの場合には , データに現れる文 字もある。 Contro ト S が送られてきたらデー パソコンや各種端末に関しては , ESC に 字がかぎられている。とくに ASCII 文字の場 タ送信を一時中断し , 次に C 。 ntr 。ト Q が送ら 続く文字によって文字や画面の表示属性 , 34 C MAGAZINE 1993 2

8. 月刊 C MAGAZINE 1993年2月号

コル研究 、またにこれらのプロトコルは一実際にネヅト 年接続して動作を試すことができる & 実験的に プログラムを書く人トは、の占は見逃すごとの できないみリットであを 実際にネッ。トカデータをダウンロードでき ミる体験は楽い、ものたにのようにして実用的 な技術を身にづけるのは , プログラミッグお上 フィンローダ (NIFTY Serve FPROGSYSOP) 今回はごれら通信プロトコルの概略を述 c 言語を使って実際に記述した例を解説するン、 ソコンもかなりの台数が普及した現在 , 、、ちょう としたデータ転送のために RS -232C などでらみ : コン間を接続したり , 社内用の BBS を設計する 機会が増えると予想される o = " 本特集力いどのような機会に通信プロトコル の処理を記述する参考になれば幸いであるい への近道でもある。 カーソル位置の変更 , 画面サイズの変更を 彳丁う ことがて、きるものがある。画面表示モ ードの切り換えや , 特殊なコマンドを実行 する機能を持ったものもある。しかし , れらの仕様は , ある程度一貫されているよ うて、 , それて、いて全機種が共通というもの て、もない。ネットによっては ESC を文中に 含めることを禁止していることがある。 ES C シーケンスを使ってテキストを作ると , 文 字に色をつけたり , 画面上の任意の位置に カーソルを移動て、きるため , おもしろい効 果が得られるのだが , それも特定の機種の みて、通用するという前提の下て、のみ有効な のて、ある。たとえば特定のパソコンて、のみ 使うという前提があるネットならよいが , ある人がカラフルな文章を掲示したつもり なのに , ほかのノヾソコンを使っている人が 同じテキストを見ると , その後の文字の色 が画面背景色と同じ黒 ( 白 ? ) になってしま い , まったく読めないという悲惨な結果に なるかもしれない ところて、 , テキストならば ESC を使わな いというルールを決めればそれて、解決する ことだが , プログラムをそのまま BBS に掲 示したらどうなるか ? プログラムのコー ドには任意の文字が含まれる可能性があり , ESC やコントロール文字を使わないように しましようというわけにはいかない。また , 多くの BBS には , テキスト掲示の 1 行の長さ 制限や , 全体て、何行まて、という制限もある。 このような制限も間題が発生する原因とな る。 もうひとつの大きな問題は , データェラ ーへの対策て、ある。最近は MNP クラス対応 モデムなどの利用によりエラーフリーの通 信も簡単に実現て、きるようになったが , BB S が始まったころには , 300bps て、 , 工ラー訂 正機能などないモデムが主流だった テキストの場合 , 文意を伝えるというの が目標となるのだが , 人間自身に強力な工 ラー修正機能が働くのて、 , 回線の / イズな どが原因てある程度データが化けても , 味を理解するのに壊滅的なダメージを与え ることはあまりない。むしろ , 文章を書く 側の文章技術が間題になって , 意図が伝わ ったのに , 受信側が℃クを受け取ってしま えられる。文字どおり , 送信側が、、 A クを送 化けるというのは , いろいろな場合が考 1 バイトたりとも化けては役に立たない る。しかし , プログラムなどのデータは , らないことのほうが圧倒的に多いようて、あ がある。 というような場合がある。また , デ った ータを送ったのに , 何らかの理由て、受信側 が受け取れない場合も考えられる。さらに データを送っていないのに , 回線のノイズ が発生して , それを受信側がデータと誤認 識して受け取ってしまう場合もある。 このほかにも , バイナリデータの場合に は , データの最後をどうやって判定するか という問題 , ファイル名 , ファイルの作成 時刻をどのように伝えるか , という問題が ある。 今回のテーマからはそれるが , もうひと つの問題について簡単に触れておく。 プログラムにかぎらないが , 複数のファ イルをまとめて扱いたい場合がある。たと えばプログラムなら , そのマニュアルとサ ンプルのデータやプログラムソース作者の 紹介文などをひとまとめにして配布したい また , プログラムが大規模になってきたり , データの構成の都合によっては , ディレク トリ構造をそのまま保った形て、公開したい , という要求がて、てくる。つまり , ファイル そのものを転送するだけて、なく , 複数のフ ァイルの関係についても情報として転送し たいということだ これを実現するには , 特集 アーカイバとし 通信プロトコル研究 、フ 35

9. 月刊 C MAGAZINE 1993年2月号

X68k 活用講坐 GCC で学ぶ X68 ゲ - ム ロクラミング B G 画面を使ってみましよう (l) 吉野智興 X68000 には , スプライト機能のひとっとして BG ( バックグランド ) 画面という画面を持っことかで きます。今回はこれを GCC で遊んでみましよう。 第 1 5 回 ちょっと横道 今月は , BG の概略と簡単な表示プログラ ムだけて、すが , 次回からの最後の仕上げ、、ち ゃんとしたゲームを作ろう〃の布石のつも りて、す ( 誉 そのプログラム作成に四苦八 苦してるだけという話もありますが ) 。 実際にゲームを作り上げるのはたいへん な作業て、す。 TLogin 』 ( アスキー ) に連載さ れているゲームコンテストて、紹介される X6 8000 のゲームをみると , 「ひとりて、よくやる なあ ! 」といつも感心しています。このコン テストの紹介作品の大多数が X68000 て、ある というのが興味深い事実て、 , 秋葉原の販売 店て、聞いたところ , X68000 て、はなぜかゲー ムよりは比較的値のはるツール関係のほう が売れる , というのが納得て、きます。 ただ , 最近のゲーム ( とくに海外からのも の ) は圧倒的な CPU パワーに依存するゲーム が増えてきているのが現実て、 , 現役のパソ コンては文句なく、、遅い機械クに該当する X68000 ては移植が非常に苦しいのが現実て、 す。移植はて、きるけど満足て、きるスヒ。ード がてないのが問題になるのて、す。ただ , こ れは X68000 だけて、なく某国民機て、も同じて、 140 C MAGAZINE 1993 2 す。なんせ海外て、開発されたソフトウェア の多くは , 80486 / 33MHz HDD, プロテク トメモリ 4M バイトはあたりまえの環境とい う前提て、作られたものて、す。 EMS 規格から 割り込みの使い方まて、 , てんて、バラバラの 某国民機て、動かすのは難儀て、す。この点て、 はスヒ。ードはともかく , メモリモデルとい った変な足カセがないぶん X68000 のほうが マシて、す ( 本当 ! て、す ) 。 まじめな話 , 趣味て、プログラムしてゲー ムて、もと考えるなら ( あくまて個人的な意見 として ) , メモリをどっさり増設した X6800 0 の 16MHz クロックモデルは , あらゆる種類 のゲーム , もっと大袈裟が許されるならプ ログラムをセルフて、開発て、きる数少ない機 械て、す。ゲーム関係にネタをしばれば , 某 国民機の 8 色・ 16 色の画面データは画面が小 さくなって、、べタ移植だ ! 〃の批判を受け るかもしれませんが , そのままテキスト画 面を使った流用が可能て、す ( あ , そういえば テキスト画面関係のネタを連載て、扱ってい と今頃気づく思かな私 ) 。 マウスも標準装備だし , 音は少し悪いけ ど PCM も持っているし , 素直なアーキテク チャて入門しやすい 68000CPU て、す。あの 8 0 * 86 系の超高機能なマクロアセンプラ群 は , わかりづらいアーキテクチャを包み隠 すための産物だという認識なのて、 , 68000 に はあれほどの機能の必要性は希薄てす。本 質的て、ない問題て、頭をかかえたくない趣味 のプログラムはやはり X68000 て、す ( 誉 ノヾックグランド画面 X68000 は , 多重スクロールゲームを作る のに非常に便利な , たくさんの画面を同時 に重ね合わせて表示する機能を備えていま す。このため , スプライト機能を備えただけ の FM-TOWNS と比べ , 楽に多重スクロー ルゲームを構成することが可能てす。たく さんの画面て、スプライトの機能に付随して 構成される画面がバックグランド画面て、す。 バックグランド画面 ( 以下 BG 画面 ) は , ち ようど PC ー 9801 シリーズに見られるテキスト VRAM によく似ています。 PC ー 9801 ては文 字コードに相当する数値をテキスト VRAM に書き込むと , そのコードに対応したキャ ラクタバターンデータが表示されます。 X6 8000 の BG 画面て、は , PC ー 9801 の文字コード に相当するコードを書き込むと , PC ー 9801 の フォントパターンに相当するスプライトパ ターンが画面に表示されます。表示される

10. 月刊 C MAGAZINE 1993年2月号

して , ある程度以前に送ったバケットもデ ータ保持しておく。このような手法をスラ イディングウインドウと呼んて、いる。これ により , 送信側はよどみなくデータをどん どん送ることが可能になるから , 待ち時間 はほとんど無視て、きる。 テキスト形式のデータを転送する場合に は , 行末の処理を行ってくれるプロトコル もある。 テキストの行末は , CR, LF, あるいはそ の組み合わせて、表現されるのだが , 問題は その組み合わせて、ある。 CP/M や DOS て、使 われているのは CR 十 LF の組み合わせて、あ り , 現在多くのネットて、この組み合わせが 指定て、きるようになっている。これ以外に は , UNIX のように LF だけて、行末を意味す るシステムもある。または CR のみて、改行を 意味するシステムもある。たとえば UNIX て、 作成したテキストファイルを DOS にそのま ま持ってくると , CR がないために行ごとに 行の先頭に戻らない , 変な表示になってし まうことがある。 ′ー末処理 レシューム機能というとブックパソコン の電源を切ったときの状態を保存しておき , 次回電源を入れたときに , そこから再開て、 きるような機能をイメージするかもしれな いが , レジュームというのはもともと復元 するという意味て、あり , 通信プロトコルて、 はこの機能はファイルの途中からの送受信 が可能て、あることを意味する。 あまりあって欲しくはないことだが , 大 量のデータを受信中にトラブルて、ハングア ップしてしまったり , センターがダウンし たり , キャッチホンにほかから電話がかか ってきたり , ということを経験した人も多 いだろう。このような場合に再度初めから データを受け取るのはたいへんだが , 中断 したところから続行て、きれば便利て、ある。 とくに , 電話回線を使ったファイル転送は , 大量のデータ処理にかなりの時間がかかる のて、 , このような処理は BBS を利用する場 レジューム 単て、ある。受信側が指定したバイト位置か この機能そのものの実装は簡 合にとくに便利て、あるといえよう。 基本的に ら , 送信を開始すればよいだけだ。 もちろ ん , 受信側は , 指定したファイルに受け取 ったデータを追加しなければならない。し たがって , 問題は , どのようにして受信側 がその情報を送信側に送るかということて、 ある。 プロトコルによっては , 誤って違うファ イルを途中から受け取ったりしないような 処理が追加されている。もっとも確実なの は , すて、に受け取ったデータを全部比較す ることて、あるが , これて、は最初からデータ を全部送り直すのと同じ時間がかかってし まうのて、お話にならない。そこて、 , よく使 われている手法は , ファイルの途中まて、の CRC を計算し , 比較するというものて、あ る。 CRC が一致しない場合には , 異なるフ ァイルと判断し , データを最初から送り直 すことにする。 コントロールコード 0X00 ~ 0x1f に相当するコードて、 , プロト コルによって , 実際に利用するコントロー ルコードはこの中の一部て、ある ( Table 2 を 主要通信プロトコル仕様概説 通信プロトコルは XMODEM を母体として派生したもの と , B P 旧 s や Quick - VAN などの独自派に大別でき る。本章では多数存在する通信プロトコルの中から主要 プロトコルを紹介しそれそれの仕様を解説する。 XMODEM はネット黎明期に急速に広ま った通信プロトコルて、ある。非常に簡単な XMODEM に実装されている。 XMODEM は確かに多 くの欠点も合わせ持っているが , それにも まして簡単に実装て、きるというメリットが 魅力となっている。 40 C MAGAZINE 仕様て、バイナリデータの転送が実現て、きる のて、 , 多くのコンピュータ , ソフトウェア 1993 2