===================================================================
===== けろぴー（WinX68k）ソースコードドキュメント             =====
=====                                       (c) 2000,01 Kenjo =====
===================================================================

---------------
1. これは
---------------

　X68000エミュレータ「けろぴー」（旧「WinX68k」）のソースコードに
ついてのドキュメントです。



---------------
2. ファイル構成
---------------

　Microsoft Visual C++ 6.0 ＋ NASMW で作成されています。
　ディレクトリは以下のような構造になっています（ヘッダファイルは省
略）。

  --+-- Makefile	VC++用Makeファイル
    |
    +--win32		Windows側のファイル群
    |    |
    |    +- about.c		Aboutダイアログ
    |    +- common.c		エラーダイアログなど
    |    +- cdaspi.c		ASPIによるCD-ROMアクセス
    |    +- cdctrl.c		IOCTRLによるCD-ROMアクセス
    |    +- cdrom.c		CD-ROM（SCSI IOCS フック部）
    |    +- dsound.c		DirectSound
    |    +- fileio.c		ファイルアクセス
    |    +- joystick.c		ジョイスティック入力
    |    +- keyboard.c		キーボード入力
    |    +- keyconf.c		キーコンフィグダイアログ
    |    +- mkcgrom.c		CGROM作成ルーチン
    |    +- mouse.c		マウス入力
    |    +- prop.c		設定用プロパティシート
    |    +- status.c		ステータスバー表示
    |    +- timer.c		タイマー
    |    +- windraw.c		DirectDrawによる表示ルーチン
    |    +- winui.c		メニューなどのUI関連
    |    +- winx68k.c		メイン
    |    +- winx68k.rc		リソースファイル
    |    +- adpcm.bmp		リソース用画像データなど
    |    +- opm.bmp			〃
    |    +- nekolgc.bmp			〃
    |    +- motorola.bmp		〃
    |    +- keropi.bmp			〃
    |    +- keropi.ico			〃
    |    |
    |    +- msfiles		Microsoftから提供のヘッダ／ライブラリ
    |          |
    |          +- msfiles.txt	このディレクトリ内のファイルの入手元説明
    |
    +--x68k		X68kの仮想デバイス群
    |    |
    |    +- 68kem.asm		MPUコア（Make68kで自動生成＋修正）
    |    +- comptab.asm		↑で使われるジャンプテーブル
    |    +- adpcm.c		ADPCM
    |    +- bg.c		BG/スプライト
    |    +- bg.x86		↑用のアセンブラインクルードファイル
    |    +- crtc.c		CRTC
    |    +- dmac.c		DMAC
    |    +- fdc.c		FDC
    |    +- fdd.c		FDドライブ
    |    +- gvram.c		グラフィックVRAM
    |    +- ioc.c		I/Oコントローラ
    |    +- irqh.c		IRQハンドラ
    |    +- memory.asm		メモリアクセスルーチン
    |    +- memory.c		メモリアクセス デバッグルーチン
    |    +- mercury.c		ま〜きゅり〜ゆにっと
    |    +- mfp.c		MFP
    |    +- midi.c		MIDIボード
    |    +- opm.c		OPM
    |    +- palette.c		パレット
    |    +- pia.c		8255（ジョイスティック用）
    |    +- rtc.c		RTC
    |    +- sasi.c		SASI
    |    +- scc.c		SCC（マウス用）
    |    +- scsi.c		SCSIボード／BIOS（SPCへのI/Oはダミー）
    |    +- sram.c		SRAM
    |    +- sysport.c		システムポート
    |    +- tvram.c		テキストVRAM
    |    +- windrv.c		yamamaさんのWindrv.sys用デバイス
    |
    +-- release		オブジェクトファイルが格納されるディレクトリ



---------------
3. コンパイル
---------------

　けろぴーをコンパイルするには、VC++とNASMWに加え、DirectX SDKが必要で
す。
　これらが正常にインストールされたマシンでDOS窓を開き、VC++とNASMWにパ
スが通った状態で、Makefile のあるディレクトリに移動し、

        nmake

で実行ファイルが作成されます。



---------------
4. 2次使用、配布条件など
---------------

　商利用しない限りにおいて、一部のファイルを除き、改変、パクりなどは自由
です。パクって作ったソフトに関してもソースコード公開の義務はありません。
連絡も不要です（でも、使ったよ〜と云ってもらえると嬉しいです（笑））。

　上記の条件から外れるのは、

  1. MPUコア
     Mike Coates 氏と Darren Olafson 氏の著作物です。流用する際は、両氏
   へ連絡し、使用許可を貰って下さい。

         Mike Coates氏連絡先 : mcoates@mame.freeserve.co.uk
         Darren Olafson氏連絡先 : deo@mail.island.net

  2. WINDRV.C
     yamama氏の著作物です。流用する際は、yamama氏へ連絡し、使用許可を貰っ
   て下さい。

         yamama氏連絡先 : yamama@ps.ksky.ne.jp

　それから、OPM.Cについては、多少変数名・関数は変わっていますが、基本的に
は Jarek Burczynski氏のコードをベースにしていますので、その点ご留意いただ
ければ幸いです。

　このコード自体の配布を目的とする場合は、アーカイブの中身は変更せずに、
ワンセットで配布して下さいね。

　著作権に関しては放棄しません（国内じゃしたくてもできないけど）。が、
まぁ好きに使って下さい（笑）。



---------------
5. 最後に
---------------

　汚いっす。見苦しいっす。プログラム下手糞っす。利用価値は無いっす。それ
でもいいよ、って方はご自由にお使いください（汗。

　一番分かりづらいのは「windraw.c」周りでしょうか……。
　描画の要はほぼ全てここに集まっていますが、フラグ立てまくりで既に私にも
訳が分かりません（ぉぃ。気が向いたら整理＆ドキュメント作成でもしましょう
か……。


-----
de けんじょ
kenjo@ceres.dti.ne.jp
kenjo@retropc.net

[EOF]
