2015年9月8日火曜日

Boot to CP/M

今更なんですけどね、UEFIを触ってみましたよ。
昔AVR用に作ったCP/MエミュレータをUEFI for x86_64向けに改造して、OS無しで直接CP/Mがbootできるようにしてみました。

Ubuntuだったら以下の手順でbuildできます。

% git clone https://github.com/toyoshim/cp-mega88.git
% cd cp-mega88
% sudo apt-get install gnu-efi
% make -f Makefile.uefi

でcpmega88.efiってファイルが出来るので、EFIのパーティションにEFI/Boot/bootx64.efiって名前でコピーするか、EFI Shellから起動するかでCP/Mが起動します。CP/M用のディスクイメージはEFI/cpmega88/sdcard.imgって名前で用意してください。githubのページで詳しく書いてますが、z80pack用のイメージがそのまま使えます。

QEMUが入ってれば以下の手順でも動作確認できます。

% make -f Makefile.uefi install
% qemu-system-x86_64 -bios OVMF.fd -hda fat:.


OVMF.fdはこの辺から入手できます。

USBメモリとかに入れておけば、UEFI対応のPCに挿して起動するだけでCP/Mが動作します。わー、嬉しい!

0 件のコメント: