Giter VIP home page Giter VIP logo

mcsex's Introduction

MCSEX.X

Yet another high memory MACS loader for Human68k/X680x0


About This

巷に星の数ほど存在するMACSローダ(プレーヤ)の末席に... 自分にとって必要なものだけを実装しました。

  • ハイメモリ専用
  • ディスクからハイメモリに高速ダイレクトロード (SCSIの場合は TS16FILE.X必須)
  • 最大32MBまでのチャンク読み込みなのでVDISKでもok
  • MercuryUnitが無くてもRaspberry Piを使った16bitPCM外部同期再生対応
  • ロードキャンセル可
  • ロードプログレス表示有り
  • ループ回数指定可
  • 終了時キーバッファをクリア

注意点: PhantomX 1.03c を 68040/68060 モードで使用する場合、FLOAT4.X は組み込まないようにしてください。

  • 68040 ... FLOAT2.X を使用する
  • 68060 ... 060turbo.sys を組み込み、FLOATは組み込まない

そもそも整数演算性能の高いPhantomXではFPUエミュレーション機能を使用するFLOAT4.Xは非推奨の上、1.03c + 68040/68060ではFPU命令が呼び出されるとハングアップする場合があります。(ライトスルー・ライトバック共)


How to Install

MCSEXxxx.ZIP をダウンロードして、MCSEX.X をパスの通ったディレクトリにコピーします。


Usage

usage: mcsex [options] <filename.mcs>
options:
       -l<n> ... loop count (0=endless, default:1)
       -b<n> ... bulk load chunk size in MB (1-32, default:16)
       -h    ... show help message

       -r <remote-mcs-path> ... remote mcs path (for s44rasp)

単純に、

mcsex hogehoge.mcs

で再生を開始します。

ループ再生の例:

mcsex -l hogehoge.mcs
mcsex -l0 hogehoge.mcs

で無限ループ、

mcsex -l3 hogehoge.mcs

で3回ループです。

起動時に以下の常駐プログラムの存在をチェックします。

  • MACSDRV.X
  • PCM8A.X または PCM8PP.X のいずれか
  • ハイメモリドライバ (060turbo.sys または TS16DRVp.X)

SCSIディスクから再生を行う場合

SCSIディスクからDMAの届かないハイメモリへダイレクトにデータ転送を行う必要があるため、TS16FILE.X が必須になります。 VDISK(PhantomX), HFS(XEiJ) の場合は必要ありません。Windrvは環境が無いので未確認です。

また、TS16FILE.Xの後にSCSI関連のデバイスドライバを組み込まないようにしてください(SUSIE.Xなど)。


Raspberry Pi を使った16bitPCM外部同期再生

Mercury Unitを所有していないが、16bitPCM対応データを元の品質のまま再生したい場合は、s44rasp 及び s44raspd を使った外部同期再生に対応しています。

の最新版を導入し、あらかじめ再生するものを同じ .mcs ファイルをラズパイ側に転送しておく必要があります。

例えば hogehoge.mcs を data/mcs/ 以下にコピーしておき、

    nohup s44raspd -d /dev/ttyUSB0 -o -a hw:2,0 data/mcs &

としてバックグラウンドで s44raspd を起動した状態で、RS232C - USB クロス接続した PhantomX 実機上から

    mcsex -r hogehoge.mcs hogehoge.mcs

とすることで同期再生が可能です。ただし、一時停止など、再生開始とESCでのアボート以外の操作には対応していません。 また、タイミングには微妙にずれがありますので、あくまでMercuryが入手できない場合の回避策と考えてください。


Special Thanks

以下のMACSプレーヤの仕様および実装を参考にさせて頂きました。この場を借りてお礼申し上げます。

  • MACSplay.x (カタさん)
  • MCSP.X (みゆ🌹ฅ^•ω•^ฅ さん)

History

  • 0.2.2 (2023/07/17) ... MACSデータバージョンを表示するようにした
  • 0.2.1 (2023/07/17) ... 外部同期再生の際にMACSDRVのPCMをミュートするようにした
  • 0.2.0 (2023/07/10) ... s44rasp/s44raspdと連携した16bitPCM外部同期再生をサポート
  • 0.1.3 (2023/07/09) ... インフォメーション表示を少し変更
  • 0.1.2 (2023/07/08) ... 終了時にグラフィックを初期化
  • 0.1.1 (2023/07/05) ... CTRL+Cが押された時の挙動修正
  • 0.1.0 (2023/07/04) ... 初版

mcsex's People

Contributors

tantangh avatar

Stargazers

Javi Rodríguez avatar TcbnErik avatar

Watchers

 avatar Javi Rodríguez avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.