S1-CP/M80 移植作戦 その28 BIOSの作成14^^

スポンサーリンク

MSX風画面に更に近づけるために40字モードでファンクションキー表示をしてみました。

CP/M80では全く意味はありませんが、MSX風に color auto,goto list run を定義してみます^^;;

これはもうMSX風の画面そのものです^^;;;

実験するのに下記のようなソフトを入れてみましたが

ファンクションキー文字列のデリミタは$00のようなので、$20(スペース)で位置合わせした文字列では使えません。
(F1を押すとcolor      auto         となってしまう)
と、いうわけで各キー毎にきちんと$00で区切る必要があるようです^^;;

color auto,goto list runの定義では意味が無いので、PC-8001用CP/Mのような割当に変えてみます。


ゴニョニョやってみましたがPF10まで全て設定しないと何故だか暴走してしまいます。

PF1,2のみ設定だと暴走する→それもヘッドシークでヘッドが移動状態でリミットを超えても止まらず、
壊れそうになる暴れ具合・・・

PF10まで全て設定すると直りますが、これでは160バイトも消費するのでもっと工夫が必要です

原因は調べたいと思いますが、とりあえずこれでも目的の動作はOKです

MSX風画面表示は満足したので、元に戻したいと思います^^

そんなMSX風画面対応のS1-CP/M80カラー調整の記録・・・

 

スポンサーリンク

「S1-CP/M80 移植作戦 その28 BIOSの作成14^^」への2件のフィードバック

  1. ファンクションキーですが、Sharp X1のCP/M ではデフォルトでファンクションキーが表示されています。
    ファンクションキー表示ではスクロールが24行、非表示では25行という画面制御になっています。
    ESCシーケンスで表示/非表示が制御でき、KEY.COMで定義一覧を表示したり任意のキーを定義できます。
    KEY で一覧表示、KEY で任意の番号に任意の文字列を定義できます。
    文字列(ASCII)はすべて大文字に変換され、文字列に”@M”をいれるとReturnコードとみなされます。

    1. 実はこのS1-CP/M80のファンクションキー表示はBIOS09に実装したBASICの命令で表示しています。
      (今のところアセンブラでファンクションキーを表示する方法は分かっていません・・・・^^;;;)
      CONSOLE,0,24,1を実行すると一度画面がクリアされるのでCONSOLEした後にCP/Mの起動メッセージを表示しています。
      BASICの命令で定義すればうまくいきそうなので、専用のトランジェントコマンドを作りたいですね^^

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。 本文に全角文字を2文字以上含めて下さい (スパム対策)