[2002/09/21-2002/09/29]

32MB拡張メモリ、遅延回路付きが、できました  *ちょっと追記


先回、なんとか128MbでPC110用32MB拡張メモリの目途が立ちましたが、あのままでは実用になりません。

今回は、三段跳びの最後のジャンプとして、きちんと標準的な"起動時の拡張メモリ部チェック回避用遅延回路(つまり、"RASマスク回路" 図2<クリック>)"を付ける事にしました。

更に、自動レジスタ変更用プログラムも必要ですので、それをPC110上で作ってみました。

お蔭様で(*注)、(まだまだ、不満足なのですが)一応、(全量32MB)実質24MBで正常動作するものができました。 w(^o^)w
(1枚では、"マグレ"と言う事もあるでしょうから、2枚作りました。両方共OK!図1)
−−−−−−−−−−−−−−−−−−−−−−−−−
遅延回路用C・Rのこと

最適な遅延時間を得るために、遅延用のC(容量:コンデンサとも言う)とR(抵抗)の値は、慎重かつ適切に決めるべきなのでしょうが、大体C・R積(≒時定数)が0.3〜0.4秒位あればいいらしいので、ジャンク箱から必要なC、R探し。
でも、なかなか小粒なのが見つかりません。1/4Wの抵抗は、大きいですね。(もっと小さいのは、無いのかねぇ?...)

以前に廃ノートPCの基板から取っておいた表面実装用の形状の小さい容量(1μFしか無かった)と、一番小振りだった抵抗(2.2MΩ 1/6W)とを使ってみる事にしました。
(しかし、時定数が2.2秒もありますよ。こんな適当な値でいいんでしょうか?...現状では上手く働いてますので、いい事にしましょう)

拡張メモリ接続図


プログラムの作成
TP230CsPC110では、EChがレジスタ番号指定用、EDhがデータ出し入れ用、その内の02番と03番が各バンクのメモリ・サイズ指定らしいので、兎に角、アセンブラで"レジスタ設定プログラム"を組んでみる事にしました。(しかし、昔やったアセンブラ、もう忘れている事が多過ぎます)

最初、ソフト・リセット(もしくは、ホット・ブート)の方法が分からず、少し困りました。が、昔の(カビが生えてるような)参考書の内、P.Norton氏の「The IBM PC&PS/2」に、「19H=BIOSブート・ストラップ・スタートアップ・ルーチン」とありましたので、これを試用&使用。
("うん、よしよし!上手くリセットが掛かるぞ。" この後、ぽんたさんから、大変参考になるサイト(リンク切れ)を紹介して頂きました。それで、古いカビ生本は再びお蔵入り)

プログラムの中身
プログラムの粗筋ですが、1パス目でレジスタ設定をしてソフト・リセット、2パス目はそのまま通過させないといけないので、レジスタに先に設定した値が入っていればノーマル・リターンするようにしました。
(でも、エラー・リターンが思わしくありません。止む無く、動作がおかしかったら、"電源スイッチ、ブチ切りだ!"ってな仕様(?)となりましたが。つまり、何も対策せずってこと)
少しだけ汎用的にする(/見せる)ため、メモリ値を指定できるようにしてます。
プログラム名は、over20mで、実行書式は、
 >over20m[.com] xx  ;(xxは、20から39までの数、または/?。ただし、20,22,24,28,32MBにしかなりません)
これは、PC-DOS上で(多分、MS-DOSも)、手押しで(?)でも走りますが、autoexec.batに入れておけば、レジスタ設定が自動化できます。ただ、不幸にしてレジスタ内容が指定通り書き換わらない場合には、リセットの繰り返しになります。(その時はもう、電源を切るしかない!)また、2度目の立ち上がり時に、出て欲しいメモリ・カウントが上手く出ません。(あぁ、出させ方を知らないだけです)

動作状態は?
拡張メモリを装着した状態で、DOSでover20m 28を実行。再起動後に、DOSモードでemm386で確認した内容が、左図。(画面のBMP化には、金子さんのGSAVE.COMを使わせて頂きました。感謝!)

Win95の立ち上がり時間は、大体1分25秒〜30秒位です。
トランジスタ技術 2002年7月号 P284〜」(参考:ぽんたさん処)によれば、このような再リセット方式だと「28Mバイト・メモリで、1分27秒」との事ですので、今の値なら御の字です。
(試しに抵抗Rを10MΩにしてみたら、約10秒位間延びします。それでも、我慢できなくはないですね)
立ち上がった後での、Win95の動作は、安定で良好。(比較評価などは、いずれまた)

尚、今回の拡張メモリ板は、32MB設定で、Win95が動きませんでした。(16色になるだけかと思ってましたが、例外エラーの連続で、最後はドツボ(奈落の底)へ!)だから、28MB設定にしてます。

*追記:実は、32MBでも、16色でWin95が動きました!先に28MB位で16色に直しておいてから、32MB設定にし直して立ち上げないといけないのに、そうしていなかったためです p)x_x(q (でも、16色は味気ないので、使う気がしません)


*注 謝辞.
ぽんたさんには、32MB作成に関して、あれやこれや(アドバイスや情報の紹介など)で、随分お世話になりました!
目盛屋さん(HeroHeroさん)処(リンク切れ)では、32MB化記事など、幾度となく参考にさせて頂きました。感謝!


プログラムのサービス.
レジスタ設定プログラムを試してみられるなら、どうぞ!ただし、損害不担保 ・・・ 
暴走した場合、(マシンが壊れる事は無いと思いますが、)どのような事が起こるかは、まったく不明。
(尚、もしソース・ファイルに興味がおありなら、メールでお問い合わせ下さい)


[表紙頁]へ  関連記事の目次へ