SHARP MZ-2000/MZ-2200/MZ-80B/MZ-80B2
Emulator (エミュレータ)
"emz2000 / EmuZ-2000" TF-Edition
for Windows and UNIX(Linux)
Last Updated 01/12/2020 since 2002
«Quick Links»
1. SUMMARY
a) support hardware
b) support software
2. Running Environment
3. LICENSE
4. DOWNLOADs
5. LINKs
5.1. LINKs for emulators, tools
5.2. LINKs for Applications
5.3. LINKs for other OSs, tools
1. SUMMARY
これは、Windows PCとUNIX(Linux)で動作する、
SHARP MZ-2000/MZ-2200/MZ-80B/MZ-80B2のエミュレータです。
特殊なハードウエアが必要等の明らかに動作できないものを除くと、
すべてのMZ-2000/2200/80Bのソフトウエアが完全動作するはずです。
なお、これはUNIX版emz2000 Ver.0.7と
Windows版EmuZ-2000 Ver.0.400リリース候補版のソースを組み合わせる等した後、
全体的にやりかえたものです。
両者共、機種依存部以外は元々同じソースですので、組み合わせた後、
メンテナンスしやすいように整理していますし、
その後大幅に書き直していますので、元のものとはかなり違うものになっています。
エミュレータとしてできる限り完全なものを目指しており、
EmuZ-2000 Ver.0.470はもちろんのこと、MZの機能はほぼ全てが入っています。
関連するプラグインもほとんどを網羅してまとめています。
a) 対応ハードウエア (support hardware)
- 本体 SHARP MZ-80B/80B2/80B海外版/2000/2200
- カラーモニタ / グリーンモニタ
- MZ-8BG,8BGK MZ-80B G-RAM 1,2
- MZ-80BK MZ-80B 拡張I/Oボックス
- MZ-1R01,MZ-1R02x2 MZ-2000 G-RAM 1〜3
- MZ-1U01 MZ-2000 拡張I/Oボックス
- MZ-1T02 MZ-2200 データレコーダ
- MZ-1E05/8BFI+MZ-1F07/80BF等 フロッピーディスクドライブ
- MZ-1E08/1E04/8BP5I/PIO-3050+プリンタ、ファイル出力版有 (プラグイン)
- MZ-1E18+MZ-1F11 クイックディスクドライブ (プラグイン)
- MZ-1E24/8BI03 RS-232C シリアルI/F、ファイル入出力版のみ (プラグイン)
- MZ-1R12/PIO-3030 S-RAMメモリボード (プラグイン)
- MZ-1R13/PIO-3055/3055-01 漢字ROMボード (プラグイン)
- I/Oデータ PIO-3034 EMMメモリボード (プラグイン)
* 16ビットボード(MZ-1M01)とその漢字ROM(MZ-1R08)には未対応です。
こちらのエミュレータ EmuZ-2200 (
http://takeda-toshiya.my.coocan.jp/ )
が対応しています。
b) 対応イメージデータ (support software)
- カセットテープ (cassette tapes)
- WAV/MTI
- Windows WAV形式 (モノラル/8ビットPCM)
- MZT
- MZ系エミュレータ共通テープフォーマット
- MZF
- 海外製MZ系エミュレータ共通テープフォーマット
- MTW
- MZTとMTI/WAVをそのまま連結したもの
- DAT
- 0番地からのファイルサイズ分のメモリイメージ (旧形式)
- UNIX版のみ起動時のファイル名指定でemz2000形式を使用可能
テープデータの吸い上げは、適当にWAV形式を作成すれば簡単にできます。
どんなツールでもかまいませんし、今は長いファイルを扱える定番フリーソフトがいろいろありそうです。
昔は、ノイズが入ったり加工されてしまうツールがありましたのでご注意ください。
私が試した範囲では読み込み時のバラメータ調整は必要な場合がありますが、
データの修正はまったく必要ありませんでした。 MILKYWAY/TONKYでもそのままテープ1本録音してWAV化するだけで一発動作でした。
ただし、いくつか条件があるので、詳細は付属のREADMEの説明を参照してください。
また、現在入手できるデータレコーダは、
ゴムベルトと、アナログ入出力部を中心として使われているほとんどすべてのアルミ電解コンデンサを交換しなければ、
十分な性能が得られません。
WAV形式以外については以下の通りです。
- MZT形式については、下のリンク集の中にツールや仕様があります。
MZ700WIN添付のtapeload.exeがツールです。
標準のtapeload.exeは1200bpsですので、
オプションパラメータ指定するか改造された2000bpsのものを使用します。
ただし、MZ700WINのMZT形式にはパッチ情報が追加されていますがこれには対応していませんし、
連結されたMZT形式にも対応していません。
- エミュレータでBASICファイルのMZT形式も読み書きすることができますが、
これはEmuZ-1M03というプラグインを使用します。プラグイン集に入っています。
- MZF形式はMZT形式と同じで、拡張子が違うだけです。
- DAT形式はファイルサイズ分の0番地からのメモリイメージで、
MZ700WIN添付のtapeload.exeが出力する本体部分がそのまま利用できます。
- フロッピーディスク (floppy disks)
- D20/D88/D77
- 日本で標準的なD88形式フォーマット
- DSK
- 日本以外で標準的なAmstrad CPC用DSK形式フォーマット
- 2D
- 640KB以下の任意サイズのベタファイル
各フォーマットの詳細は、以下の通りです。
- 2D形式は320KB(80トラック16セクタ256バイト)もしくは
640KB以下の任意サイズのベタファイルが使用可能です。
古いX1エミュレータから使用されている伝統的な形式です。
- D88/DSK形式については下のリンク集の中にツールや仕様があります。
- クイックディスク (プラグイン・サポート) (quick disks with a plugin)
- Q20
- MZT形式連結によるクイックディスクイメージ
- MZT
- MZT形式をクイックディスクとして扱う
- ステートセーブ・データ (state save data)
- MZE
- TF-Editionの独自形式、
Windows版とUNIX版で互換性なし、UNIX版は異なるアーキテクチャ(IA32とx64等)で互換性なし
- EMUZ
- 旧EmuZ-2000形式をWindows版のみインポート可能
- その他 (etc.)

Windows版(左) / UNIX版(右)

MZ-80B(左) / MZ-2000(右)
2. Running Environment
本プログラムのWindows版は以下の環境で動作します。
- Microsoft Windows 10/8.1/8/7/VISTA/XP/2000かそれ以降 (IA32 and x64)
- Microsoft Visual C++ 6.0 SP6 Enterprise or Professional Edition (C,C++,WIN32API,DirectX7)
本プログラムのUNIX版は以下の環境で動作します。
- Linux/i386 Kernel 2.6.32以降 (他のUNIXでは改造する必要あり。IA32,x64,ARM-EL以外未確認)
- GNU C-Compiler
- GTK 3 + ESD互換環境(PulseAudio等) + libungif (screen shotのgif出力サポート時のみ)
(Ubuntu Linux 18.04以降、 libesd が提供されなくなったので、
esound-extadd-howto-*.tgz に libesd を用意する方法を記述してあります)
3. LICENSE
エミュレータの元になったWindows版のソースとプラグインはWEB上にて公開されていたものですが、
著作権が明確になっておりませんので、このプロジェクトにはそのようなソースが含まれています。
私の理解では、私の作業部分と、常岡さん作業部分、
粕川さんのLinux版エミュレータがPublic Domainで、他はライセンス不明です。
ただし、どの方も本業はプロフェッショナルな技術者ですので、
商業利用禁止のソースコードとご理解ください。
3.1. エミュレータ本体のライセンス
本ソフトウエアはフリーソフトウエアです。
使用方法に制限はありませんが、無保証で何の責任も負いません。
ただし、以下については元々フリーソフトウエアでかつWEB上にて公開されていたものですが、
イセンスの詳細が不明であり、作者に許可を取ってもいませんのでご注意ください。
なお、EmuZ-2000に関しては、公開ソースを元にUNIX版を開発することについては、
ソースが公開される前に許可をもらっていました。
- EmuZ-2000 Ver.0.400リリース候補版のソースプログラムとBMPフォントファイル
- EmuZ-2000 Ver.0.470から取り出したアイコン
- X1 Emulator X-Millenniumから拝借したFDシークの効果音
Windows版のGUIやDirectX等の画面周りがEmuZ-2000のコードベースです。
プラグインやステートファイルのインポート機能も互換のためにコードが使用されています。
それ以外は、Z80コアのバグフィックス以外は残っていないはずです。
UNIX版はプラグインと後者のみとなります。詳細は、ソースの最初のコメントにも記述してあります。
これは、公開されていてベースとしたEmuZ-2000のVer.0.400リリース候補版以降に
多くのバグが修正されていること等が理由で、
エミュレータとしての完成度を上げた結果、結果的になくなってしまったことにあります。
3.2. プラグインのライセンス
本ソフトウエアはフリーソフトウエアです。
使用方法に制限はありませんが、無保証で何の責任も負いません。
ただし、各プラグインは、
WEB上にて公開されていたものをまとめて多少の変更を行ってコンパイルしたものですから、
プラグインの著作権は、個々の作者が保持しています。
(常岡さんのプラグインと私の開発したものはPublic Domain、他はライセンス不明)
4. DOWNLOADs
EmuZ-2000 TF-Editionは、ダウンロード・パッケージとしてWindows版とUNIX版が用意されています。
4.1. For Microsoft WINDOWS
- emuz2000_tf0_95_6.zip
- EmuZ-2000 TF-Edition ver.0.95.6
- emuz2000plugins_tf0_95_4.zip
- A Plugin Set ver.0.95.4
- emuz2000src_tf0_95_6.zip
- EmuZ-2000 TF-Edition ver.0.95.5 Source Codes
- emuz2000plugins_src_tf0_95_4.zip
- A Plugin Set ver.0.95.4 Source Codes
他に、Takkyさん
のところに、いくつかの
プラグイン (http://mio.servequake.com/~takky/emuz2000/tools.html)があります。
4.2. For UNIX(Linux)
- emz2000-tf0.95.12.tgz
- EmuZ-2000 TF-Edition ver.0.95.12 Source Codes
- emz2000-tf0.95.9.tgz
- A Plugin Set ver.0.95.9 Source Codes
- esound-extadd-howto-20181110.tgz
- A Information for adding LIBESD to Ubuntu Linux (Japanese only)
UNIX版に関しては以下を忘れたまま…
- MZ2000_REFRESHRATEをWindowsと同じ10msに変更したのに、READMEにもhistoryにも書き忘れている
- src/Makefileの-DNDEBUG等を外したままになっている
- -DENABLE_SOUNDでSOUNDを分離してlibesdなしでも動作できるようにするのをまた忘れた…
- Dialogレイアウトの英語を添削してもらったWin版と比較して修正するのをまだやっていない
WindowsとUNIX版に両方関して行いたいことで、ドキュメントにないこと。(忘れないように…)
- 非対応の連結D88/連結MZTを指定した時にWarningを表示するか、連結に対応する
- 複数のドライブに同じファイルを指定した時にエラーにする
(便利な時もあるがエラーが自然だなぁ、やっぱり。Windows版は挿入中のファイルをロックして排他アクセスにしたい)
- Windows版もSound Time Interpolationがうまくいかない時があるようで、その時オフにしても再起動しないと復帰しない。
バッファ大き目にとっても再現するようならデフォルトオフがいいかも。そのうち調査したい…ややこしいことする元気なし…
- MZ-80B用のTAO TAOのタイマがおかしいのを調査(2000用はokに見えるが要調査)
- 英語添削してもらったはいいが、古いUSスタンダードは誰も使ってないので、少し戻す。s付けすぎ。
普通のシリコンバレー・スタンダードを選択したい。
4.3. Original Sources
もうダウンロードできなくなってしまっている、
TF-Editionのベースになったオリジナルのソースコードです。(エミュレータ本体のみ)
- src200210.lzh
- EmuZ-2000 ver.0.400(Release Candidate) Source Codes
- emz2000-0.7.tar.gz
- emz2000 ver.0.7 Source Codes
5. LINKs
あちこち探し回って見つからないということにならないように、
エミュレータやMZ関係のリンクをまとめてあります。
また、説明は間違っていないと思いますが、
試したりよく確認せずに書いている場合が多いのでご注意ください。
(私は、とってもめんどくさがりで、新しいものになかなか飛びつきません…興味はあるのですが…)
5.1. LINKs for emulators, tools, tech. doc (エミュレータ関係やMZ本体、ツール、技術情報)
-
http://www5d.biglobe.ne.jp/~object/ ... MZ-80B/2000エミュレータ EmuZ-2000 for Windows
-
http://www.bio-linux.org/~kasukawa/ ... MZ-2000/2200エミュレータ
emz2000 for X11 gtk+
(リンク切れ!!)
-
http://takeda-toshiya.my.coocan.jp/ ... TAKEDA, toshiya's HOME PAGE
-
16ビットボード対応のMZ-2000/2200エミュレータ EmuZ-2200、EmuZ-80Bがある。
-
http://original.sharpmz.org/tonyfrieryemu.htm ... 海外製のMZ-80Bエミュレータ for Windows
-
http://www7a.biglobe.ne.jp/~tsuneoka/MZ/index.html ... Win32サブルーチンズ内の「MZ関連メモ」
- プラグイン機能、INIファイル、QDプラグイン他開発の常岡さん。
MZの技術情報、ツール(2000/80B用tapeload.exe、ROM吸出し他)、自作ソフト等
-
http://www.geocities.co.jp/SiliconValley-Sunnyvale/2521/ ... アルゴの記憶
(リンク切れ!!)
- プラグイン、ツール(MZ用ディスクイメージのDiskExplorer、各種エミュレータ用等)、MZTの説明等。
下にリンクしている、L3ディスクエクスプローラ(L3 Disk Explorer)も、MZ/X1やCP/M等多種のディスク形式に対応し、WindowsだけでなくUNIX系OSにも対応している。
-
http://www.ne.jp/asahi/suga/junkyard/ ... sugaのジャンク部屋
- プラグイン、辞書ROMツール、実機への3.5'FDD接続、修理情報等
-
http://www2s.biglobe.ne.jp/~kachan/index.htm ... ぎょっちの趣味のページ
- テープイメージ化ツールと解説。
ただし、TF-EditionにはAPSSがあるのでテープイメージの2回セーブを1回にしたり空白を詰めるのはやめること。
互換のためにFFを無効にするオプションがある。
WAV形式で扱う場合には関係ないが、読み込みできない時の検証にもここのツールが使える。
-
http://mio.servequake.com/~takky/emuz2000/ ... TakkyさんのEmuZ-2000のページ
- ステートセーブデータ書き換えツールやエミュレータに関する技術情報、
自作プラグイン、大規模なMZソフトウエアリスト等。
-
http://www.retropc.net/mz-memories/mz700/ ... MZ700WIN for Windows
(リンク切れ!!)
- MZ700WINとmz700em、コンバータtapeload.exe、MZT形式。
ただし、デフォルトのボーレート違うので注意。
常岡さんのところに2000bpsデフォルト版がある。しかし、ここにはtapeload_gという改良ツールがある。
現在は、AKD's site内のこちらにファイルが置いてあるようだ。
http://mzakd.cool.coocan.jp/mz-memories/mz700win.html ... MZ700WIN関連ファイル再配布所
-
http://www1.plala.or.jp/aoto/ ... ぶるー牧場
- D88形式フォーマットの仕様、88EMU100.LZHの中にPC-9801(DOS)用D88形式ディスクイメージ化ツールMAKE_HD
-
http://www.cpcwiki.eu/index.php/Format:DSK_disk_image_file_format
... CPCWiki Format:DSK disk image file format
- 海外で普及している、Amstrad CPC用ディスクフォーマット.DSK形式の仕様
-
http://www.retropc.net/cisc/m88/ ... M88 emulator (DITT)
- Download->その他 にIBM-AT互換機(DOS)用D88形式ディスクイメージ化ツールDITTがある。
- http://www.jsdi.or.jp/~imp/
... 自作ソフトのお部屋
- D88 Utility、D88/2D相互変換を含むユーティリティ等。
- http://papicom.net/
... ぱぴこんのこころ
- NDittというWindows7 64bitでも使えるDitt!を目指したツールがある。
当方未チェックのため詳細不明。
- http://www.x1center.org/
... X1センターの「ディスク吸い上げソフトMakeD88のRS232C高速版」
- X1turboを用いたMB8877Aを使用したディスク吸い上げソフトがあるWEB (当方未チェックのため詳細不明)
- http://jp.xetter.com/
... XETTER Free Software Room(下にもリンク)の「MakeD88」
- X1turboを用いたMB8877Aを使用したディスク吸い上げソフトがあるWEB (当方未チェックのため詳細不明)
-
https://x1turbo-agency.hatenablog.jp/archive
... X1turbo Agency ブログの「X1 Remote Monitor」
- X1turboを用いたMB8877Aを使用したディスク吸い上げソフトがあるWEB (当方未チェックのため詳細不明)
- http://p6ers.net/bernie/
... BurnOut
- PC-6001関係だが、DSK/D88形式の相互変換ツール有。(当方未チェックのため詳細不明)
- http://s-sasaji.ddo.jp/bml3mk5/
... 日立ベーシックマスターレベル3 マーク5/S1エミュレータ
- L3ディスクエクスプローラ(L3 Disk Explorer)は、多くのClassic PCのFDに対応したDisk Explorerで、WindowsだけでなくUNIX系OSにも対応している。
MZ/X1(SBASIC、SWORD、HuBASIC、C-DOS等)のFD形式、多種のCP/Mフォーマット等を含む様々なOSに対応している。
CP/Mは、MZ/X1系以外のCP/Mフォーマットにも対応しているが、微妙に異なるNEC/FM等にも対応し、
海外版の512セクタのMZ-80B用CP/Mや.DSK形式等にも対応している。
- http://www.sharpmz.org/
... SHARP MZ - the MZ series
- 海外のMZに関する情報がたくさんあるWEB、MZのマニュアル等もたくさんある。
(旧WEBは、
http://original.sharpmz.org)
- http://www.8bity.cz/
... Martinův 8-bitový blog
- 海外のSHARP製レトロPCに関する情報がたくさんあるWEB。ただし、フランス語なので難解というか僕にはさっぱりわからない。
PDFスキャンされた、日本語のMZ-2000/2200等のマニュアル等、いろいろと素晴らしいものがある。
-
http://cwaweb.bai.ne.jp/~ohishi/index.htm ... Nibbles lab. HomePage
- 各種MZシリーズの仕様やオプションに関する情報が豊富。
FPGA版のMZが、
https://github.com/NibblesLab/
にある。
MZ版システムはないが、S-OSの各種ソフトウエアと詳しい解説もある。
S-OSソフトウエアの中に、拡張子がDSKで320KBベタ形式のファイルがある。これらは拡張子を2Dへリネームして使うこと。
- http://mzakd.cool.coocan.jp/
... AKD's site
- MZ-1500のサイトですが、MZ-2000/2200のカタログ有、クイックディスク、プリンタ等の共通オプション情報が詳しい。
MZ-700WINの再配布所にもなっているみたい。
5.2. LINKs for Applications on the SHARP MZ-2000/2200/80B/B2
- http://w01.tp1.jp/~a571632211/
... 両面テープ配線式電子工作 (USUAL SITUATION)
- MZ-80Bのすごいゲームがいろいろあり、全部エミュレータで動作する。
0番地からのメモリイメージなので、拡張子を.DATに変換してそのまま読み込むことができる。
0番地から実行されてモニタへ移行するので、JコマンドでWEB説明記載の実行アドレスへジャンプすること。
中に必ず暴走するファイルが1つあったが、それもリセットしたらコマンドプロンプトには入れるので、Jコマンドで実行できる。
- http://jp.xetter.com/
... XETTER Free Software Room
- ここにはMZ-2000/80B用の自作ゲームがたくさんある。
前に試して全部かほとんど動作できたはず。 MZT形式のBASICプログラムは、BASIC起動後にプラグインEmuZ-1M03を使うか、WAV形式へコンバートして読み込むことができる。
ただし、XETTERは実機で動作できないイメージで、
エミュレータVer.0.92(I/Oを初期化しなければならないようになった)で動作
しないので適当なバイナリエディタで以下のようにパッチを当てること。
Ver.0.93以降であれば「リセット時自動I/O初期化」機能を使用して実行できる。
0番地からの3バイトのC3 A0 12をC3 3B 00へ変更します。
初期化後に自動実行させるために、$00AE番地からC3 A0 12のように変更します。
(MZはI/Oが8255やZ80PIOに接続されているので、
初期化しないとほとんどのI/Oが反応しないため、0番地から飛んだ場合は誤動作します)
- http://tahori.s17.xrea.com/
... Penguin Computing Centre
- ここにはMZ-2000/2200用の自作ゲームがたくさんある。
ダウンロードできないが勝手に移植物がすごい。
-
http://www.monkey390220.shop/FP/index.html
... レトロPCのお部屋
- ここにはMZ-2000/2200用の自作ゲームがたくさんある。
* 注意/コメント
- 常岡さん
のところにもMZ-2000/2200用の自作ソフトウエアがある。
- 「MZ-2000/200/80B/B2のソフトウエアってどんなのがあるのか?」という場合には、
Takkyさん
のところへ行けば、
ソフト紹介
に大規模なソフトウエア・リストがある。
5.3. LINKs for CP/M and other OSs, tools
- tfmzcpm.html#LINKS
... CP/M Links in 64K CP/M
- CP/M関連リンク集 はこちら。
- ../cdos/index.html#LINKS
- Carry lab C-DOS関連リンク集 はこちら。
* 注意/コメント