初めに
CP/M80の環境をUbuntu上で再現する手順を纏めた。
導入
RunCPM導入
git clone https://github.com/MockbaTheBorg/RunCPM.git
cd RunCPM
cd RunCPM
make posix build
実行
mkdir -p A
./RunCPM
COM実行
COMは/RunCPM/RunCPM/A/0/に配置
何もしない
printf '\x0E\x00\xCD\x05\x00' > HI.COM
MVI C,0 0E 00
CALL 5 CD 05 00
A: HI COM
A0>
A0>HI
RunCPM Version 6.9 (CCP-INTERNAL v3.3)
A0>
画面表示
printf '\x0E\x09\x11\x0A\x01\xCD\x05\x00\xC9\x00\x00\x00\x00\x00\x00\x00\x00HI$' > HI.COM
MVI C,09h ; BDOS function 9(文字列表示)
LXI D,010Ah ; DE = 010Ah(文字列アドレス)
CALL 0005h ; BDOS呼び出し
RET ; プログラム終了
; --- データ領域 ---
DB 00h,00h,00h,00h,00h,00h,00h,00h
DB 'H','I','$'
実行
A0>HI
HI
A0>
実行環境
FUJITSU FMVU14033
Ubuntu 22.04.5 LTS