(仮)

ヒマなオッサンのメモ

Mac用MZ-1500エミュレーター vmz1500

通勤時間の暇つぶしにエミュレーターを作成しています。

目標は、名作デーモンクリスタルとナイザーで遊ぶことと、「さんだーふぉーす」の声を聞くことです。

最近になって、ようやく見栄えがそれっぽくなってきましたが、BASICが動かないのと音が出ないのでまだまだです。

ナイザー ZEPLIS 3 デーモンクリスタル ビルディングホッパー

現在の再現状況

ソフトウェアの稼働状況

  • BASIC(5Z-001) ☓
    • RUN “AUTO RUN” と出るところまではいくが、QDアクセスをしないまま先に進まない
    • キー入力は受け付けるが、命令として認識してくれない
    • そもそも Ready が出ない
  • ゲーム △
    • デーモンクリスタル・ナイザー △
    • サンダーフォース △
    • ZEPLISシリーズ △
    • ビルディングホッパー △
      • 音以外はだいたいOK
      • 速すぎてムズい
    • スペースハリアー ☓
      • 未定義命令を使っているらしく動かない
    • フラッピー ☓
      • B面を読んでくれない

ハードウェアの再現

  • CPU(Z80)
    • 未定義命令は未実装
    • まだバグはあるかもしれない
  • メモリ
    • 通常の読み書きやバンク切り替えはOK
    • メモリマップドI/OもOK
    • VRAMのウェイトは未実装
  • 画面(CRTC・プライオリティ・パレット)
    • だいたいOK
    • テキストやPCGの描画アルゴリズムは再考の余地ありかも
  • PSG
    • 未実装
  • 8253
    • タイミングが完全に合っているかどうかあやしい
    • 音は出ない
  • 8255
    • 8255の再現を目指さず、個別の機能(キーボード等)の再現にとどめる
    • VSYNC,HSYNC,INTMSK,キーボードは実装
  • QD(Z80SIO)
    • mzt形式イメージファイルを読み込みOK
    • Z80SIOの完全再現をせず、モニター(9Z-502M)のI/Oルーチンが望む反応を返すように実装
  • Z80PIO
    • とりあえず割り込みに関係する箇所は実装
  • それ以外は未実装