******************************************************
    SHARP MZ-80B/80B2/2000/2200 Emulator for Win32
              (Not support Windows CE)
                   Plug In Module

                   [PIO-3034.DLL]

         (C) 2006 Suga (suga@mar.email.ne.jp)
         http://www.ne.jp/asahi/suga/junkyard/
	TF-Edition state save supported by T.Fukui
******************************************************

[Board Infomation]
  Name      : PIO-3034
  Maker     : I-O DATA
  Comment   : 320KB Extension RAM Board
  Port      : Variable
  Dialog    : Yes
  Interrupt : Not Use
  Version   : 1.1

[Need EmuZ-2000 Version]
  EmuZ-2000 TF-Edition Version 0.8
  EmuZ-2000 Version 0.430 (要リコンパイル)

[This Dll Make/Use File]
  FileName : PIO-3034EMM0.MEM 〜 PIO-3034EMM3.MEM
  Size     : 320KByte (327,680Byte)

[このプログラムについて]
　このプログラムは、EmuZ-2000 のプラグイン・モジュールです。
　HuBASIC Version2 でサポートされている EMM で使用する
I-O DATA社製 PIO-3034 の機能を最大４枚分サポートします。

[PIO-3034について]
PIO-3034 は、64kbit x 40個(64KByte x 5ブロック)のD-RAMを持ち、
I/OポートでRAMアドレスを指定し読み書きを行います。
また、1バイト分読み書きする度にRAMのアドレスを +1 するように
なっており、連続した読み書き時の高速化が図られています。
PIO-3034内RAMのアドレスカウンタは$00000〜$7FFFFまでありますが
RAMが存在するのは$00000〜$4FFFFまでです。
使用するI/Oポートと役割は次の通りです。
ベース +0 番地 … アドレス下位８ビットセット(WRITE)
ベース +1 番地 … アドレス中位８ビットセット(WRITE)
ベース +2 番地 … アドレス上位４ビットセットD0〜D3(WRITE)
ベース +3 番地 … RAMデータ READ/WRITE
※ベースアドレスは４の倍数になります。

[HuBASIC と EMM について]
MZ-80B/2000(2200)用のHuBASIC　Ver2.0 では、EMM0:〜EMM9:まで
指定できますが、内部でEMMの番号に$3でマスクをかけているため、
実際にはEMM0:〜EMM3:となり、EMM4:〜EMM9:はEMM0:〜EMM3:の
「ゴースト」となります。
PIO-3034のベースアドレスとEMMデバイスの関係は次のようになります。
ベース  デバイス
 $A0     EMM: EMM0: EMM4: EMM8:
 $A4          EMM1: EMM5: EMM9:
 $A8          EMM2: EMM6:
 $AC          EMM3: EMM7:

[実機との違い]
　PIO-3034 は D-RAM のため揮発性ですが、本DLLではメモリの内容を
保存・復元することができます。

[ボードの使用方法]
　初回動作時やサポート枚数異常時には、次の値をセットします。
　・ベースアドレス　　　　： $A0    (HuBASIC EMM0: の値)
　・サポート枚数　　　　　： 4
　・ＲＡＭデータ保存・復元： 行う
　※上記の値はダイアログで変更することができます。

[制限事項]
　- ベースアドレスやサポート枚数を変更した場合には、EmuZ-2000を
再起動した後に有効となります。
  - TF-Editionのステートセーブに対応していますが、メモリの内容
は対象外です。I/Oポートのベースアドレスが異なっている場合も気に
しません。

[注意事項]
　サポート枚数を変更した場合、既存のEMMデータファイルを上書き
破壊する場合があります。

　Visual C++ Ver.6.0 にて作成しています。

　このプログラムを使って発生するいかなる障害について作者は一切の
責任を負いません。

[履歴]
2006年04月03日 Ver.0.1
　・mz_1r12.dll をベースに初版作成
　　（HuBASICでのEMMデバイス動作確認用に作成）

2006年04月13日 Ver.1.0
　・ボード４枚までサポート
　・ＲＡＭデータ保存・復元のON/OFF追加
　・ダイアログボックス追加

2010年04月20日 Ver.1.1
　・TF-Edition ステートセーブサポート

−以上
