きれいなグラフィックスや表計算ソフトなどが動くわけではなくて、
文字だけの所謂DOS窓でソフトウェアを作ったり文字だけで表現されたゲームをしたりできるだけなのだがPC黎明期のあこがれのOSに触れられるだけで垂涎の体なのである
当初は8bitCPUの8080用に開発された(上位互換のz80でも動く)が後には16bitCPUの8086や68000用にも用意開発された ただし16bit用ではMS-DOSの後塵を拝した
現在cp/mそのものやそのうえで稼働した様々なソフトウェアが事実上フリーなものとしてネットで配布されている - The Unofficial CP/M Web site
そのほとんどが英語オンリーだけど8bit機であるし実験的な利用を考えると十分と言える
その実行環境は大きく分けて3つに分類できると思う。
- 実機:昔ならPC-8801系にメモリーボードなどを加えて別売のcp/mを購入するような形で実現したものであろうけど、比較的最近だと有志によって作成された基盤にいくらかのLSIチップをのせてシングルボードコンピュータとしてPCとUSBケーブルでシリアルインターフェースにつないで利用することになる
例1:Z80-MBC2 z80とそのほかの3つのICで構成(128KBのRAMでCP/M3も稼働)
IOやバスの調停をAVRのATMega32Aにさせている
CPUの駆動クロックは4MHzと8MHzの切り替え
オレンジピコさん(レア部品多数)での取り扱い
例2:SBCZ80 古典電脳物語や8080伝説の鈴木哲哉氏の制作
CPUの駆動クロックは2.5MHzと5MHzの切り替え(ハンダジャンパ)
この方の他のSBCはスイッチサイエンスで扱いがあるけど、これはまだ
(部品点数が多いうえにZ80-SIOなどディスコンが心配)
例3:Pic24CPMボード z80最速の20MHz用を使って16MHzで動く。
例1のAVRと違いシステムのコントロールチップにPIC24を使用
プリント基板のガーバーデータなども公開されているし最も
作ってみたくなる存在 RAMがディスコンか?
(今ならHM628128ALP-7もオレンジピコにある) - PC上のエミュレータ
そもそもCPUクロックで千倍とかの差があるのでソフトウェアで8bit機の動作をさせることに何の支障もない
(もしあるとすれば5kgの手荷物を大型トラックで運んでる違和感か)
でも実機との比較ができると良いことも多いので手元で環境は仕込んでおきたい
例1:Windows32bit用にいくつか出ている
1)takeda氏のcp/m player
2)vecterのcp/m executor
3)altair 8800のエミュ 日本語紹介ページ オリジナル配布サイト
altair使いやすくてめっちゃいいのだけど^eがエミュレータからのエスケープで
エディタが使いにくいです
例2:linux用だとyaze 日本語紹介ページ
実は環境はそれぞれのエミュレータで錯綜していてmacとかでも動くものも多い
日本製の2本はwindowsの32bitコンソール専用だけにファイルの準備が楽
altairとyazeはcp/mの環境から忠実に再現しようとしているので母艦との
ファイル交換がひと工夫必要
で、z80などをエミュレートするけどwindowsPCでやっちゃうと牛刀割鶏な感が
否めないってエンジニア心が言うもんだから別のハードウェアでエミュレートするって選択肢も浮上する それが・・・・
- 他のCPU(ARMとATmegaがほとんどだけど)エミュレート
例1:CP/M on an AVR 面白そうだけど4bit D-RAM入手がね・・
例2:cpm8266 日本語で① その② ESP8266(WROOM-02)で入手性良し
内臓のフラッシュROMをファイルシステムとして使うため4MB必須
外部とのファイル転送方法を確立する必要あり
例3:RunCPM 日本語紹介ページ(詳しくて夢膨らむ) M5Stackでも
対応するボードは多岐にわたっており入手性に不安なし
安定性などで cpm8266のほうが良いって記述もある
でもm5stackでいろいろ遊ぶうちの一つの選択肢としては悪くない
例4:cp-mega88 作者はとよしまさん(日本人!!) 解説 ご本人解説
各種の環境で動くけど速くはない 忠実に8bitCPUを再現か?
本来(?)のハードのガーバナー情報など
例5:mbedでcp/mエミュ Nucleoは触ってみたいボード 生Z80とのコラボも!
こちらのコメント欄のやり取りではNucleo F401あんまり速くないみたい
とりあえずはPCのエミュで慣れつつcpm8266、runCPM、mbedなどで遊ぼう
0 件のコメント:
コメントを投稿