見出し画像

Z-80SOFTCARD と CP/M

Apple][のハードウェアに詳しい人はマザーボードにあるCPUを停止させて、拡張カードからシステムをアクセスできることはわかっていましたが、実際にやってみる人はいませんでした。

Apple IIのハードウエア(1) - このページは何度も登場しますね。

Z80カードが出た時、アップルがCP/Mで動くソフトを利用するために開発したのだと思っていたのですが、実際はMicrosoftが自社のBASICを、そのまま動かすために開発したようです。

Z-80ソフトカード

CPUをすげ替えるというアイディアは素晴らしいのですが、実際に使うにはいくつかの問題を解決する必要があります。最大の課題はメモリアドレスです。

80系CPUはリセット時にメモリの最も低いいくつかのアドレスが予約されています。6502の最も低いアドレスである0ページは、その大部分が使われており、Z-80ではそのまま使うことが出来ません。またCP/Mでは、それに続いて連続したフリーな領域を必要とするのですが、Apple][ではシステムが予約する領域やテキストVRAMが、ここにあります。そこでZ-80からみたアドレスを4K分ずらして、6502からみて$1000からのメモリをZ-80の0Hからのメモリになるように細工をしました。

Apple II Softcard CP/M Reference

http://stjarnhimlen.se/apple2/Apple.CPM.ref.txt

他にも割り込みが発生すると寝ている6502が起きてしまうので、その対応も考慮されていたようですが、基本的にApple][は割り込みを使っていなかったので、こちらはさほど問題にはなりませんでした。

なおCP/Mとは言っても、ディスクドライブはDisk][を使うので、他のシステムのフロッピーはそのままでは使えませんでした。変換はもっぱらシリアル経由でデータを転送することで行っていたようです(他の人に用意してもらったので自分ではやらなかった)。

他にもハイレゾVRAMがメモリ空間のど真ん中になっていますが、ここを使いたい時はシステムの予約領域にすることで回避していた模様です。

Softcard CP/M Reference

実のところZ-80カードは、動作を確認するために借りて使っただけで、Apple][にはないようなビジネスソフトを動かすために使うのであって、Apple][らしいグラフィックを活用したソフトは、元からあるものの方が素晴らしかったので、使うこともありませんでした。速度はというと、もともと68系の1クロックは80系の2クロックと考えて良いという関係から同程度ということになりますが、何となくZ-80の方がモサっとしていた気がします。

いずれにせよApple][は6502というCPUに縛られることはなくなり、必要とあらば好きなCPUを載せて、使いたいOSを選べるという最強のマシンになりました。この後、代表的なCPUを載せた拡張カードがいくつも出てくることになりました。

次の機会には思い入れのある6809を載せた拡張カードのことを書きたいと思います。

Z-80 SoftCard

写真、マニュアルなど - Microsoft Softcard


ヘッダ写真は、
https://commons.wikimedia.org/wiki/File:Microsoft_Softcard_Z80_coprocessor_for_Apple_II.jpg
より使わせていただきました。


この記事が気に入ったらサポートをしてみませんか?