2022年09月03日
川俣晶の縁側ヴィンテージ・パソコンtotal 797 count

PC-8001 N-BASICのカラーモードにおける左端の1文字に文字ないしグラフィックを書き込む方法と問題点

Written By: 川俣 晶連絡先

前提 §

 PC-8001のN-BASICのカラーモード(Console ,,,1)では表示できる1行あたりの文字数が1文字減ります。最も左端の文字は描画される対象になりません。この左端の1文字はPOKEまたはマシン語で書き込めることは分かっていましたが、実はN-BASICの普通の機能だけで書き込めることが分かりました。

特定の文字を書き込む方法 §

COLOR 色コード,文字コード,0:? chr$(12);

 全ての左端の文字は同じになります。

特定のグラフィックを書き込む方法 §

COLOR 色コード,グラフィックパターン,1:? chr$(12);

 全ての左端のグラフィックは同じになります。

左端の文字を消さずに画面はどうやってクリアするか §

 ? chr$(12);は左端もクリアしてしまうので使えません。

LINE(0,0)-(79,24)," ",BF

(空白文字でクリアする場合)

LINE(0,0)-(159,99),PRESET,BF

(グラフィックでクリアする場合)

問題点 §

 実は、文字またはグラフィックを描画してしまうと、その影響で最初の1文字の属性も変化してしまい、文字がグラフィックに化けたり、グラフィックが文字に化けたりします。おそらく、行の右端の文字の属性が次の行の先頭に漏れていると推定されます。

 つまり、左端文字に属性を指定しようとすると、右端の文字にも属性を指定しなければならず、表現力が制限されてしまいます。

問題点への対応策 §

 実は、右端の文字の属性を制御できないとすれば、左端の文字をCOLOR文で描画するテクニックは著しく制限を受けます。

 テキストモード、グラフィックモードに関係なく同じ表示になるコードは0しかありません。テキストモードで0は空白文字になるが、グラフィックモードでも前ピクセル黒になります。見た目が同じなので、どちらに切り替わっても同じに見えます。カラー指定されても常に黒なので、色指定も無視できます。

 従って、カラーモードでかつ右端の文字の属性を自由に設定できない場合、COLOR文の第2パラメータに0以外を指定できません。ただし属性の変化の指定がない場合、たとえば全て白色のテキストの場合は0以外を指定しても破綻しません。

考察 §

 N-BASICのカラーモードの左端の1文字を無効にする実装は問題点が多すぎて、機能を削って左端の1文字も有効にするN88-BASICにつながったものと推定できます。

Facebook

キーワード【 川俣晶の縁側ヴィンテージ・パソコン
【ヴィンテージ・パソコン】の次のコンテンツ
2022年
09月
09日
IBM-PCエミュレータ"PCem"で仮想ハードディスク使えない問題
3days 5 count
total 524 count
【ヴィンテージ・パソコン】の前のコンテンツ
2022年
08月
23日
SMC-777の1DDフロッピーディスクをSAMDISKで読み込むとエラーになる
3days 4 count
total 1140 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20220903185622
サイトの表紙【ヴィンテージ・パソコン】の表紙【ヴィンテージ・パソコン】のコンテンツ全リスト 【ヴィンテージ・パソコン】の入手全リスト 【ヴィンテージ・パソコン】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.