MASTER.TXT
================================================================
                master.lib 0.23
                ※このプログラムはシェアウェアです。

         Copyright (c)1993-95 恋塚昭彦, 奥田仁, 千野裕司, 澤隆司
                All Rights Reserved.
================================================================
● はじめに
        　このライブラリは、PC-9801および IBM PC/AT 互換機用の雑
        用ライブラリです。気が向いたらなんでも入れていっているの
        で、いろんな関数が大量に入っています。
        　このライブラリはシェアウェアです。巻末の使用条件をよく
        読んで、該当する場合は必ず支払ってください。

        ・ NEC PC-9801シリーズまたは互換機用。ものによってはノー
           マルモード・GRCG搭載などの条件がありますが、
           CPUが8086でも、またハイレゾでも使えるものもあります。

        ・ AT互換機専用の関数も揃っています。主に VGA 用であるも
           のと、DOS/V 用のものが殆どですが。

        ・ super.lib(0.22b)をベースに、修正して合併しました。
            super.lib 原作,管理: Kazumi(奥田仁)

        ・ gc_poly.lib(0.16)をベースに、修正して合併しました。
            gc_poly.lib 原作,管理: 恋塚昭彦

        ・ bgmlib(1.12)をベースに、修正して合併しました。
             BGMLIB  原作: Fumitake Yodo and STUDIO FEMY
                     管理: steelman(千野裕司)

        ・ egc.lib(0.06)をベースに、関数名を変更、バグ修正して合
           併しました。
            egc.lib  原作,管理: Kazumi(奥田仁)

        ・ supersfx.libをベースに、VGA版を追加して合併しました。
            supersfx.lib 原作: iR(澤隆司)

        ・ pf.libをベースに、型などを変更、master.lib用に修正して
           合併しました。
            pf.lib 原作: iR(澤隆司), alty
                   管理: iR(澤隆司)


● 動作機種など
        　PC-9801VM以降、または互換機、または PC/AT 互換機。
        　CPUは V30 または 80186 以降。
        　PC-9801 のグラフィック処理については、GRCG (または EGC
        などの上位互換品)の搭載が必要。
        　PC/AT 互換機のグラフィック処理は、VGAまたはSVGAが必要。

        　このライブラリとリンクできるオブジェクトを出力する高級
        言語コンパイラは、次のようなものがあります。

           MASTERS.LIB, MASTERL.LIB, MASTERC.LIB, MASTERM.LIB:
                ・ Microsoft OBJ format で、 Microsoft Pascal 型
                   呼び出し規約での呼び出しが可能な高級言語コン
                   パイラおよびアセンブラ
                        Microsoft C/C++ / Visual C++
                        Turbo C / Turbo C++ / Borland C++
                        Symantec C++
                        MASM / OPTASM / TASM
                        Microsoft Basic / Pascal / Fortran  ←?

                 　ただし外部宣言は  C言語のものしか用意していな
                 いので、 C言語でもC++言語でもない言語で利用する
                 場合は外部宣言を作成する必要があります。


● 起動
        インストール
            　C 言語版セットをカレントディレクトリに展開し、
            A>ldf -b masterl <リターン>
              ~~~~~~~~~~~~~~
            と入力すると、masters.lib を元に、masterl.lib,
            masterc.lib, masterm.lib が作成されます。
            　そして *.lib をライブラリディレクトリに、*.h を
            ヘッダディレクトリにコピーしてください。

        使用方法
           master.man の「利用方法」のところを参照してください。


● 付録のあそびかた(笑)

        　マニュアルセットには、各種サンプルと、マニュアルをオン
        ラインヘルプのように参照するＶZ マクロを併録しました。
        　それぞれの概要を以下に。

○ CALIB.LZH
        　PC/AT用ジョイスティックキャリブレートプログラム。
        calib.exeとcalib.txtは、自由にプログラムに添付してかまいません。
        また、calib.cをもとに自作プログラムに同等機能を組み込んでも
        かまいません。

○ PAR.LZH
        　PARファイル作成のためのドキュメントと、ツールです。

○ TAGLST14.LZH
        　SAY 氏提供のオンラインヘルプマクロ。
        　ＶZ1.6 用です。
        　これを vz.def の *E その他の 1に taglist と追加すると、
        以下のように割り当てられます。
        　[F10]  普通の TAG jump
        　\[F10] TAGS jump (ファイル  'TAGS'からエントリを
                 検索して、間接ジャンプします)
        　^[F10] オンラインヘルプ(taglist.def の末尾に記述
                 したファイルを索引として、間接ジャンプ)
        　キーアサインが気に入らなければ適当に変えて使ってくださ
        い (笑)

        master.lib 用の索引ファイルの作成は、Borland grep の場合
          grep -on ^C: master.man > master.tag
        としてください。
        wgrep ならば、上記'-on'を '-t' にするだけですね。
        TAG ジャンプ用の出力形式であれば OK です。
        master.tag が出来たら、 適当なソースファイルを開いて、  
        master.lib  の関数を使っているところにカーソルを合わせて
        ^[F10] を押すとウィンドウが出て、Master.lib とだけ出ます。
        ここでリターンを押すと、存在する関数ならば master.man の
        中の、その関数の説明が表示されるはずです。

        　TAGLST14.LZH の配布条件は、 「改悪以外の変更は自由、単
        独配布もＯＫ」です。

○ MASREDIC.LZH
        　Ｍ's 氏提供の sedスクリプト。
        　sed -f masredic.sed master.man >master.dic
        　などのようにすることで、redic (c)Daichi 用辞書ファイル
        を作成することができます。

○ PROGRAMS.LZH
        　Kazumi 記述のパターン/キャラクタ表示解説とサンプルプログラム。

○ GPDEMO05.LZH
        　'gpdemo' Version 0.05
        　KEN-SAN 氏提供の gc_poly サンプルプログラム。
        　図形描画関数のいろいろな使い方の実例です。
        　非常駐スクリーンセイバーになっています。
        98用EXEと、DOS/V用への差分をつけています。
        Microsoft C/C++ 7.0,Borland C++,Symantec C++用のそれぞれの
        makefile も入っています。

○ SHOGI120.LZH
        　'将棋っすか' 1.20
        　SuCa 氏提供の PC-9801用 RS-232C 通信サンプルプログラム。
        　内容は、chat 上で使えるキャラクタベース将棋サーバー。
        　chat の中で一人がこのプログラムを起動すれば、chat に普
        通に参加している二人が対戦できます。

○ LMB058A.LZH
        　'lmb' 0.58を修正して 98用とAT用の両方を生成したものです。
        　J.H. 氏提供の BEEP 演奏サンプルプログラム。
        　同梱のサンプルデータを使って曲と効果音を鳴らします。

○ MAGPI014.LZH
        　'magpie' 0.14
        　恋塚作成の mag/Pi両用グラフィックローダです。
        　このプログラムのみ、98とPC/AT(VGA)両用です。
        　mag, Pi形式の画像読込みや mousex関数の使い方、
        ATのアナログjoystickの扱いや、98,AT互換機両用プログラム
        の作り方のサンプルです。


● ソースからの再構築
        　再構築するには、まず目的のディレクトリの中に  SRC とい
        うディレクトリを作成し、その中にソース一式を展開して下さ
        い。アセンブラは、OPTASM または TASM が必要です。
        　付属の Makefile は、 nmake 1.20用です。(それ以前でも大
        丈夫かも(?))
        　Borland make 3.6 までだと、Makefile の代入文が大きすぎ
        るので使えません。複数の部分ライブラリに分割し、それぞれ
        の作成ルールを作り、ぜんぶできたらまとめるような形に書き
        換える必要があります。
        　なお、Borland C++ 4.0に付属の make 3.7ならば make -Nで
        nmakeの代わりとして期待通り動作するようです。

          nmake small で small版(デフォルト)、
          nmake large で large版
          nmake compact で compact版、
          nmake medium で medium版を作成します。

        ・ライブラリの大きさについて
         　配布状態のライブラリは  OPTASM  で、 Use THREADs for
         Smaller OBJ(N) でアセンブルしたものです。
         　これを (Y)(デフォルト)にした OPTASM でアセンブルする
         と LIB ファイルが少し小さくなります。
         　また、TASM でアセンブルすると逆に大きくなります。どち
         らにしろ、 LIB ファイル自体の大きさが異なるだけで、中身
         のオブジェクトコードは同じですのであわてないように(笑)


● 謝辞
        　この DOC を書くにあたって、白石さんの DOCFORM を利用さ
        せていただきました。さんきゅう〜
        　↑さらに、それで書いた SIZE.DOC を使いまわしました。恋
        塚さんさんきゅう〜（ってオレだ）
        　↑またまたさらに、 それで書いた GC_POLY.DOC を使いまわ
        しました。恋塚さんまたまたさんきゅう〜（しつこい）

        　Mikio, iR, じゅにゃ, TAT, Lalf, Ｍ'ｓ,  Y-JOKE,  ぼい,
        LKJ, 誉知民, Grouch, Dellinger  各氏にはバグ報告および修
        正についてのアドバイスをいただいています。
        　SuCa 氏には BEEP PCM 再生ルーチン, Pi ロードルーチンな
        どの原形を頂きました。
        　のろ/V 氏には text_frame の原形,  および  get_machine,
        get_machine_98,     get_machine_at,      get_video_mode,
        set_video_mode, vtext_系関数等を頂きました。
        　benny 氏には、ems_dos_read, ems_dos_write を頂きました。
        　あら 氏には、VGA,SVGA 描画関数の多くを提供していただき
        ました。
        　SIVA 氏には、 set_video_state,get_video_state の原形を
        頂きました。
        　SAY 氏には、 ＶZ1.6 用オンラインヘルプマクロを提供して
        いただきました。
        　SuCa, KEN-SAN, Dellinger  各氏にはサンプルプログラムの
        提供をお願いしました。 その他、 ArtsLink la femy, NIFTY-
        Serve FGALAM, ascii-net bio.test.bio  で報告をしていただ
        いた皆さんには大変感謝しています(^^)

        　グラフィック画面処理, パレット処理など一部の機能は、  
        gr.lib の仕様を一部参考にしています。  作者の  metys  氏
        ,TAKA 氏 ,Danna 氏に感謝します。
        　ジョイスティック入力処理は、joy.lib 利用プログラムから
        の移行が簡単になるように、実現している仕様をできるだけあ
        わせました。joy.lib の作者の metys 氏に感謝します。

        　master.man の整形に、村上真雄氏の XTR 1.50d を使用して
        います。
        　master.txt および source.txt の整形入力に、y.mikome 氏
        の「元祖ＶZ ワード (v5.01)」を利用しています。
        　もちろんエディタは、c.mos 氏が作成し、(株)ビレッジセン
        ターが販売している ＶZ Editor 1.60 を使用しています。
        　なお、 現在は、上記ＶZ に wing 氏が改変を加えた 1.60w3
        というバージョンを使用しています。
        　各メモリモデルへのライブラリ本体の差分データの作成に、
        Lintaro 氏の LDF を使用しています。

        　このライブラリ名称は、 benny 氏の "master.lib Project"
        に由来しています。

        ・ super.lib の基本仕様は femy 氏によって考案され、 それ
           を元に拡張されています。
        ・ super_put() などいくつかの関数は、TAKA 氏によって最適
           化が行われています。 また、最適化に関するアドバイスな
           どもしていただきました。
        ・ alty 氏には、C 言語版の super_zoom() 関数を作成してい
           ただきました。


● LDF.EXEの入手先

        ・ 差分作成には、LDF.EXE (c)Lintaro を使用しています。こ
           のソフトウェアは、 非常に小さな差分を作成し、かつ厳重
           な同一性検査を行うため、安全に差分を配布できます。

        ・ 差分バージョンの展開にはこの LDF.EXE が必要です。これ
           は現在以下の場所で入手できます。 なお、LDF.EXE のバー
           ジョンは現在 1.01です。

           NIFTY-Serve:
             FGALM LIB 10  #29  LDF101.LZH ( 15,869 bytes )

           ASCII-net:
             pool msdos


● 著作権、転載等について

        ・ 著作権は恋塚昭彦と奥田仁、千野裕司、及び澤隆司が留保
           します。

        ・ 使用結果には一切責任を負いませんし、補償もしません。
           各自の責任で使用して下さい。

        ・ このライブラリを、 フリーソフトウェア、シェアウェア、
           PDS、あるいは量販するソフトウェアにリンクして配布する
           場合は報告、確認は不要です。

        ・ version.asm の内容は一切削除しないでください。
        ・ master.pas の Master_Version_String  の内容も一切削除
           しないでください。

        ・ 改造した master.lib の単独配布は禁止します。必ず正式
           な master.lib に対する差分のみで構成させてください。

        ・ このライブラリの全部または部分をリンク可能な状態で、 
           転載以外の手段で配布する場合は、 必ず事前に知らせて下
           さい。

        ・ 転載する場合は、 本体、ソース、ドキュメント類のすべて
           をもらさず転載してください。 また事前でも事後でもいい
           ので連絡ください。転載に対しては金銭は要求しません。
           バグ報告や意見、要求なども歓迎です。
           ただしこちらはそれらのすべてに応える義務はもちません。

        ・ バグ修正や改良は、現状の最新版に対してのみ行います。

        ・ バージョンアップの際は、常に再コンパイルが必要です。
           再リンクだけでは動作が異常になる場合がありますので注 
           意してください。

        ・ 将来、 互換性を無視したバージョンアップが行われる可能
           性があります。 当バージョンの  master.lib  を利用して
           software を作成された場合には、 master.lib を保存して
           おかれることをお奬めします。

        ・ 逆に、 古いバージョンの master.lib を使ったソフトを配
           布することはかまいません。


● 連絡先
        質問、意見などはできるだけ次の会議室上に書いてください。
           NIFTY-Serve        FGALGL       MES13(master.lib & WinGL会議室)

        それができない場合、次のID宛のメールにお願いします。

                                恋塚      Kazumi    steelman  iR
        ASCII-net                         pcs31074  pcs50935  pcs39630
        NIFTY-Serve             GGA03045  NBF03242  BXB04135
        Internet mail           NIFTY経由(niftyserve.or.jp)または
                                ASCII-net経由(asciinet.or.jp)

        　なお、個別に mail していただく場合の担当は、以下のよう
        になっています。

           マニュアル、基本部分、gc_poly ... 恋塚
           super.lib部分 ................... Kazumi(奥田)
           bgmlib部分 ...................... steelman(千野)
           pf.lib部分 ...................... iR(澤)

        　基本的に質問などは恋塚宛にしていただければ皆で相談しま
        すのでよろしく(笑)


● 使用条件
        　このプログラムはシェアウェアです。支払わなくてもライブ
        ラリとしての利用はできますが、ノーサポートとなります。
        　支払うことによって、 以下の情報を提供します。 これは、
        master.lib によって作成したソフトウェアを公開し、 そのサ
        ポートを行う際に必要と思われます。
        　・ライブラリの全ソースコード(のパスワード)
        　・技術的質問に対するサポート

        　支払い方法は、 以下の銀行口座に振り込んでいただくか、 
        NIFTY-Serve の自動送金システムを利用してください。また、
        銀行振り込みの場合、必ず以下の書式で連絡先などを記入し、
        電子 mailで送ってください。 ただし、技術的なやりとりは、
        電子 mail のみで行います。なお、価格よりも多く振り込まれ
        ても寄付として扱い、返金はしません。注意してください。
        　一度登録していただけば、バージョンアップは無料です。

        ▽価格(1口)
          銀行振り込みの場合    3,000円
          NIFTY自動送金の場合   3,300円

        ▽支払い単位
          サポートをうける人一人につき、1口

        ▽振り込み先
        第一勧業銀行 店番017(秋葉原支店) 口座番号 総合1027993
                     恋塚昭彦 (ｺｲﾂﾞｶ ｱｷﾋｺ)

        ▽連絡先などの記入書式
        登録ソフト名 master.lib 0.23
        ふりがな   _____________
        氏名       _____________
        大手ネットなどのID、メールアドレス
         ______________________________________
        連絡先住所 _______________________________________
                   _______________________________________
        電話番号   _____________

        ▽ NIFTY-Serve での自動送金
        GO SWREG
        送金番号 1147

================================================================
[END OF MASTER.TXT]
