「MB-S1 / レベル3」タグアーカイブ

MB-S1 / ベーシックマスタ レベル3 の話題

レベル3 VRAMエリアが移動できるか確認してみる その2^^

皆さんから頂いた情報を整理するとカラーRAMの関係でレベル3では気軽にVRAMエリアを移動できないことが
分かりました。

しかし、CRTCのパラメータを変更後の画面の乱れはBASICのワークエリアにパラメータをセットすることで
正常になりました^^;;;

今後、何かの参考になるかもしれないので実験内容をメモしておきます^^ 続きを読む レベル3 VRAMエリアが移動できるか確認してみる その2^^

いろいろ残件メモ

ブログの記事中に残件をメモしているのですが、分散してしまい後から見直すのに不便です。

残件はここを見れば分かるように、GITのISSUEのように一か所にまとめてメモします。
(解決したらここにも追記)
何かお気づきのOMさんがいらっしゃればアドバイスをお願い致します(_ _)


■残件メモ

▼S1-CP/M80 BIOS作成全般
→[ ] FDC関連の処理整理
→[ ] エスケープシーケンス対応
→[ ] CTRL+Cキー入力の実装

NEC FC-9801KにSSDを取り付けてみる^^
→[ ] CF-IDE基板の固定

レベル3 VRAMエリアが移動できるか確認してみる^^
→[済] CRTCパラメータ設定後の表示の乱れ
CRTCのパラメータを設定後ワークエリアのセットでOKになった
→[ ] $400~VRAMを移動したときのカラーRAMの扱い

レベル3 VRAMエリアが移動できるか確認してみる その2^^
→[ ] CRTCパラメータ設定時にR14,R15(カーソル) を$0400にしても、何も設定しなくてもカーソルが出なくなる

レベル3 VRAMエリアが移動できるか確認してみる^^

レベル3でCP/MやFLEX9を動作させるためにはALLRAMモードで動作させる必要があると思うのですが、
そうなると$400から始まるVRAMエリアは邪魔になりそうです。

というわけで、CRTCの参考書籍を確認してみるとHD46505ではレジスタR12とR13でVRAMの先頭アドレスを
指定するとの説明がありました。

早速、L3エミュでCRTCのR12,R13レジスタに何が書かれているのか調べたところ

R12=$04
R13=$00

と、VRAMの先頭アドレスががそのままセットされておりました^^
レベル3の回路図見た感じではVRAMは独立したメモリがあるわけではなく主記憶の一部を間借りしている
だけっぽいので、そのままR12,R13を変更するとVRAMエリアを移動できそうです。

S1の取説にはCRTCの設定パラメータの記述があるのですがレベル3の取説は持っていないのでパラメータが不明
(レベル3マーク5の取説をお持ちの方是非貸して下さい^^;;;)

資料が無いのでL3エミュでCRTCのアドレス$FFC6,$FFC7にストアしてる部分をトレースして値を確認

結局、S1の取説にあったパラメータと同じでした・・・^^;;;

これを踏まえて整理すると 続きを読む レベル3 VRAMエリアが移動できるか確認してみる^^

S1-CP/M80 移植作戦 その29 BIOSの作成15^^

BIOS09内CONOUTの画面制御を強化してみました。

実装したのは中部本多通商のS1-CP/M80で使用されていたコード+シフトJIS漢字表示です

漢字表示はS1のシステムシステムコールではJIS漢字コードなのでCONOUT内で
シフトJISからJIS漢字に変換しています

上記の例は 続きを読む S1-CP/M80 移植作戦 その29 BIOSの作成15^^

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のような割当に変えてみます。 続きを読む S1-CP/M80 移植作戦 その28 BIOSの作成14^^