NextorのSDカードパーティション切替2017年01月03日 23:50

NextorでSD/SDHCを利用する場合の覚書

・起動時にSDカードは刺したままにする。(起動時にSDカードが刺さっていないと認識しない)
・初期化/パーティション作成はBasicでCALL FDISK実行し、partitioning toolから行う。
 1パーティション辺り最大4GBのパーティションを複数作成可能。
・パーティション作成後は一度再起動
・再起動後、先頭パーティションがドライブ割り当てされる。
・パーティション切替はDOSよりMAPDRV.COMにて実行
・BドライブにSDカードのパーティションが割り当てられている場合
 MAPDRV B: 2
 とやるとBドライブにSDカードの2番目のパーティションが割り当てられる。
 ※ほかにもオプションあるけどよくわかってない


Nextor on 1chipMSX (Ver1.00)2017年01月04日 15:53

caroさんにお願いしてBIOS圧縮方法を教えてもらった。
ありがとう、caroさん!

おかげで384KBの任意のBIOSファイルをファームに内蔵することができるようになった。
そこで、圧縮BIOS対応版のIPLROMに対してもSDHC対応化を行い、外部デバイス無しでNextor起動可能な1chipMSX用ファーム(漢字ROM含む)を作ることができた。

とりあえず、公開してみる。->更新

なにか問題あるようなら連絡ください。

Multi Menteの不具合?2017年01月08日 18:35


文字化け
MSX用のファイラー、Multi Menteで奇妙な現象。
画像の通り、半角フォントのみ激しく文字化けする。

発生条件は、Slot0にプライマリのマッパメモリが存在すること、みたい。
Slot0にマッパメモリが存在しても、プライマリでなければ現象は発生しなかった。
(0-1に2M、3-0に4Mだと文字化けしない。0-1に4M、3-0に4Mだと文字化けする)

MAINROMと同じスロットにプライマリメモリが存在するとダメなんだろうか?
画像は改造した1chipMSXのものだけど、BlueMSXでも同様の現象が確認できた。

回避方法もわかっていて、外部フォントファイルを利用すればOK。
AUTOEXEC.BATとかに
SET FONT0808=フォントファイル名
で外部フォントが利用できる。
1chipMSXのメモリ増加改造してた時はMulti Menteが外部フォント利用する設定になっていたためこの現象に気が付かなかった。

今回、1ChipNextorMSXもメモリ増やしてみようと改めて環境作成して現象に気が付いた。
とはいえ、回避方法もわかってるし、そもそも誰も困らないだろうから覚書程度で。

※ちなみに、1ChipNextorMSXはメモリ48M構成でも起動した。にがさんのmpcmで全域使用しての楽曲再生もできたのでマッパメモリ利用に関しても問題なさそうな感じ。

1chipNextorMSX 更新 (Ver1.01)2017年01月09日 11:53

ちょっと手直ししてみた。

修正点は以下の通り。
・マッパメモリ4Mで安定しなかったのを改善。
・BIOSロード機能を448KBに拡張。
  DISKROM(128KB)+MAINROM(32K)+SUBROM(16K)+FM(16K)+Dummy1(64K)+KANJIROM(128K)+Dummy2(64K)
 ※Dummy1はSlot0-1に、Dummy2はSlot0-3に配置。
 ダウンロードはここから。


Nextorでドライブマッピング2017年01月09日 22:49

いろいろ調べていたら起動時SDカードさしていなかった時のドライブ割り当て方法や、一つのSDカードの2つパーティションをそれぞれ別のドライブレターに割り当てる方法がわかったので覚書

1・起動時SDカードさしていなかった場合のドライブ割り当て

NextorBasicで
call mapdrv(引数)

引数の意味は
[第1引数]:ドライブ名 
[第2引数]:SDカードのパーティション番号 
[第3引数]:デバイス番号 
[第4引数]:スロット 

うちの環境では
call mapdrv("A:",1,18,11) 
でSDカードの先頭パーティションがA:ドライブに割り当てられた。

デバイス番号とスロットは以下の計算式で割り出す。
デバイス番号=デバイス番号+16*ロジカルユニット番号
スロット番号=メインスロット番号+4*サブスロット番号 

うちの環境ではデバイス番号=2、ロジカルユニット番号=1なので 
2+1*16=18 

スロットは3-2にマップされているので
3+4*2=11 

となる。
デバイス番号はSDカードさえ認識していれば 
call drvinfo 
で確認可能。

2・SDカードの複数パーティションをそれぞれ別のドライブレターに割り当て

1と同じくMAPDRVで実施する。
こちらDOSのMAPDRV.COMで確認したんだけど、多分BASICでも同じじゃないかな?

MAPDRV B: 2 2-1 3-2
でSDカードの第2パーティションがB:ドライブに割り当て出来た。

引数の意味はBASICのコマンドと同じだけど、こちらは「-」区切りで直接番号指定するみたい。
AUTOEXECに入れとくかBAT作っておけば簡単。
カード入れ替え前提で考えるなら単独のBATファイルがいいのかな?