(M)のドタバタ編集記 1999年 6月号(?)


●6月1日
 Interface増刊のCD-ROM。問題は誌面掲載のサンプルソースリストの収録。筆者には今晩じゅうに届くようにお願いしているのだが…まだ来ない…来ない…ん〜…来た! 筆者の会社のメールサーバーが巨大なファイルを添付すると送ってくれないらしくて、すったもんだしていたそうな。しょうがないので筆者が個人で入っているプロバイダのメールアドレスを使ってメールを送ってくださいました。きっとダイヤルアップだったんですよね…せいぜい40〜50Kbpsですよね…1時間くらいかかりましたよね…すいませんです。
 さて次はInterGiga。InterGiga CD-ROM広告の収録ファイルはすべて集まったので、広告主向けの検証用CD-Rを焼く。今回はソフトウェア開発環境展組込みシステム開発技術展の展示会案内や広告企画があるので、CD-ROM広告件数が15件ほど…ってことはRを15枚焼く!? 1枚焼くのにイメージ作成から倍速書き込みで1時間かかるとすると、単純計算で15時間やで!? まぁ同じ内容なので、毎回イメージ作成からやる必要はないわけで、最初の1枚は1時間かかるにせよ、2枚目から30分ちょいで焼ける計算ではあるが…それにしても一晩まるまるかかるぢゃん!! いや、Y社の4倍速ライタもあるんだけどねぇ、コイツがえらい調子悪くて、連続書き込みできないんですよ…こっちのマシンはネットワークも100Base-Tなんで、イメージ作成から書き込み完了まで1枚30分くらいで書き上げてしまうんで、急いでいるときはとっても重宝してたんですが…う〜ん。なもんで、一番最初に購入したCDW-900Eを酷使してます。さすがは数百万する業務用ライタ。5万もしないようなそこらの民生用ライタ(あ、このY社の4倍速は8万くらいしたやつですが^^;)とは全然ちゃいまっせ…でも倍速…しかもLANカードが10Base-T&CPUがP5-75とへぼへぼマシンなので、イメージ作成もめちゃ遅い…(T_T) 今度マシンの更新で入れ替えできたら、100MのLANとP5-200くらいにはしてやるか…

●6月2日
 昨日の夜にファイルをもらって、内容を確認して、README.TXTなどを書いて、CD-Rに書いて、今日のお昼には筆者に確認用のCD-Rを届ける(私はとっても時間がないので編集部=Юさんに飯田橋までひとっ走り、ハンドキャリーをお願いする)。で、明日の朝1番までに確認をしてもらってOKを出して貰う(時間がなくてスイマセン)。
 午後「小型SH-3ボードFoxの設計と製作」の作者が来社される。ん〜CD-ROMの製作がなければ、もっといろいろお話ししたかったんですが…
 さて、Interface増刊のCD-ROM、締め切りまであと数時間。誌面からはみ出した原稿はCD-ROM記事として収録…今回はHTML形式で収録することにしました。その中にCのプログラムやとあるログファイルも張り付けるんです、が、問題は、これらのCプログラム中に#include文とか大小比較などの部分で、またログファイルにも“<”とか“>”の記号が入っているんで、それをちゃんと変換しないと、その部分がタグと認識されてしまって正常なリストが表示されないんですよ。<PRE>〜</PRE>タグの間は“<”や“>”をタグとして認識しない!ってルールだったら楽だったのにぃ〜
 ほぉ〜 SONY のロボット犬AIBO、予約開始20分で3000台完売ですか。数人でお金出し合って購入するケースもあるとか…競走馬ぢゃないんだから(^^;)

●6月3日
 今日はInterface増刊のCD-ROMのマスタ締め切り日。午前中に引き取りに来るというので、朝方にRを焼いておく。もうこれでOKかな…と思っていたところへ、午前9時半に筆者からメールで1ヶ所修正依頼ががが!! “<”や“>”の変換を間違って…
   #include >stdio.h<

となっている所が…なんだよこのinclude文(^^;) 慌てて直してもう一回Rを焼く
 さて、増刊のCD-ROMが終わった…ことにして(?)、次はInterGiga。都内の広告主については広告部の人間が検証用CD-Rを直接もっていって、その場で確認してもらうこともあります。さっそく修正依頼が舞い込む。時間もないのでチャッチャとやってしまいましょう。ん〜でもたぶん、明日の締め切り直前になってからも、修正の連絡があるんだろうなぁ〜キット(^^;)

●6月4日
 ついにInterGigaマスタアップの日が来てしまいました…投げやりな(^^;)オープニングが完成したのは朝方7時ごろ。で、すでに予想されていた締め切り間際のCD-ROM広告の修正をこなし、その他細かな修正をして、午後3時に256減色&パレット共通化作業をしていざ書き込み…という段階になって、また修正が入るんだよなぁ〜 メインメニューのタイトル文字に修正が入ると、256減色&パレット共通化作業までもどって作業せにゃならんで、結構大変なんっすよ…さて、しきり直しで再度CD-Rに書き込み。書き上がったらサーバー上とCD-R上の全ファイルを1ビットも残さす比較…すると、なんと1個だけファイルコンペアエラーが発生!! んなアホなぁ〜 慌ててもう一枚焼き始める…ん〜時間ギリギリやな… 結局夜7時すぎ、マスタ完成…最後の最後まですったもんだでした。

●6月5日
 今日は会社のクラブで八ヶ岳方面に山登り…って、全然山に登らないクラブですが(^^;) なかば強制的(?)にこういう行事にでも参加しないと、山なんて行かないし、CD-ROMも一段落したので、リフレッシュするのにちょうどいいタイミングかな。
 で行き先は…よくわかってません…前の人について行くのみ(^^;) 小渕沢から小海線に乗り換えて、清里っちゅ〜ところで降りましたです。清里って…ん〜ああいう所なんっすか?! お店のお土産も…木工細工の小物とかはまだわかります…が…雰囲気が観光地のお土産屋ってゆ〜より、渋谷や原宿にあってもおかしくない感じ…ぬいぐるみとかあるし…こりゃおばちゃん向けの店やないで(^^;) それと駅前の店先のベンチに、ペンギンのぬいぐるみ(高さ50cmくらい…結構デカイ!)が座ってるのは、Linuxが流行っているせい??(それは関係ないと思うぞ^^;)
 いやしかし、天気もいいし、牛さん(白黒のGatewayな模様ではありませんだが^^;)ものんびり草を食べてるのどかな雰囲気の中を歩くのは気持ちがいいものです。延々と緩やかな登り坂ってのはチト苦しいですが(^^;)
 で、美し森まで行ってから清里の駅までもどり、隣駅の野辺山までまた小海線に乗ります。山の中をひたすら登りJR最高地点通過したころ、車窓の風景は開けその先にでっかいパラボラが見えてきました。あれが野辺山宇宙電波観測所っすか。
 今晩泊まるペンションは、この電波観測所の近くにあります。6時ころペンション到着。さぁ〜飯飯!(^^;) でさぁ〜飯のあと、誰か天体観測とかしたの? 野辺山は電波観測所だから、光学式天体望遠鏡使うのは邪道でしょう(ってをぃをぃ)
 で、日付が変わる頃に布団にもぐる…あぁ〜1週間ぶりに布団で寝れるぅ〜(^^;)

●6月6日
 ん〜まだ眠いっす…けど7時半にたたき起こされて朝食。ん〜なんて健康的な行動だ(笑) で、ホントは2日目にちゃんと山に登るスケジュールになっているのですが…残念ながら私は仕事(夕方、Interface増刊の筆者と打ち合わせ)があるので、今日は朝飯食べたら直帰します。
 さて、朝8時半すぎ、ペンションの車に送られて野辺山の駅でおろされたものの…げげ! 次の電車…もとい、列車は10時!? まだ1時間以上もあるやんけ!! 駅で“ボー”っとしてましたが… 野辺山駅、ちゃんと駅員さんがいます。「息子が財布を落としたって言うんですけど、ありますか?」とか、客(おばちゃん)「○○に行くにはどこの駅が一番近いですかね」 駅員「甲斐小泉ですね」 客「かいこずみ?」 駅員「かいこ“い”ずみです」 客「じゃぁ〜かいこずみまで1枚」 駅員「はい、かいこ“い”ずみ1枚ですね」…田舎駅の駅員さんも結構忙しいねぇ(無人駅でないだけまだいいか)
 筆者との打ち合わせは夕方なので、各駅停車でゆっくりきましたです(接続が悪くて待ってられなかったというのはないしょ)…新宿までほとんど寝てたけど…

●6月7日
 CD-ROMはなんとか先週で片が付いた(ん〜時間切れで無理矢理終わらせた部分もあったりしますが^^;)んですが、本誌や増刊の再校や三校が残ってます。これを終わらせないと、肩の荷が下りません。
 ん〜今回のWindowsNT&WDMデバドラ特集は、また充実した内容ですね。NTドライバの基礎からPCIボードをターゲットにした実際に動くドライバを実践的に開発してますからね。みなさん期待していてください!!
(いや、特集の企画や原稿依頼は私がしたのですが、今月はCD-ROM製作を二つも抱えていたので、実際の赤入れ作業は編集長にお願いしたんで…原稿をじっくり読んだのが、今日が初めてだったりします^^;)

●6月8日
 PCMCIAの件をお願いしている筆者さんが木曜日に来られるので、それまでにメールでいただいた原稿(第1段)にちゃんと目を通しておかないとな… ありゃ…TEX(私は“テフ”と呼んでますが…テックのほうがかっこいい??)だ…どうしよう(^^;) アーカイブファイルを見るとPSファイルも入っている…これでPDFに落としてとりあえずは原稿が読めるか。本番のときはTEXTファイルで貰おう。
 それと同時に、サンプルプログラムも動作確認…が…あれ? 添付されているファイルと内容説明ファイルのつじつまが合わないぞ!? とりあえずアーカイブ内にあるコンパイル開始用のバッチファイルをおもむろに実行(^^;) ん〜とりあえずエラーは出てないみたいだが…ま、木曜日だな!

●6月9日
 CQ RISC評価キット/SH-4の準備開始。スタータキットにはフラッシュROMへの書き込み機能がないので、別途フラッシュROM書き込みプログラムを用意して対応する予定。また添付コンパイラが例によって例のごとく(?)ROM化に対応していないので、疑似ROM化作戦を採用…のためにスタートアップ&ユーザープログラム転送ルーチンを開発しなきゃいけないんですが…
 CはCなんですが…インラインアセンブラでスタートアップ処理を記述して(改めて思う…SHのアセンブラは即値の扱いがめんどいわぁ)、main以下のアセンブラで書いた部分のみバイナリファイルとして切り出して保存。PC相対でイミーディエイトアクセスするので、どのアドレスに置いても動くプログラムになって…るハズなんですが…うまく動くかな?
 で、スタートアップ&ユーザープログラムをフラッシュROMに書き込む制御プログラム。フラッシュはお任せください。前にも書いたことあるので…とかいいながら、CPUのA1がフラッシュROMのA0だから…アドレスで5555hってことはAAAAhからアクセスするってことかな? としばし混乱(バイトアクセス時はA-1ぢゃなくてA0にして、ワードんときはアドレスバスはA1からにしましょうよ>JEDEC委員のみなさん^^;)
 さて、これで動くか…う〜ん、肝心の疑似ROM化用スタートアップルーチンでうまくBSCが初期化されていない雰囲気… プログラムを変えてはフラッシュを書き換え、変えては書き換え…でテストするも、なかなか思ったように動いてはくれず…。サンプルプログラムは、CPUボード上に搭載されている7セグメントLEDのカウントアップ点灯表示という至極簡単なプログラムなんですけどねぇ〜 ん〜書き換える度にフラッシュROMが劣化するぅ〜…って、書き換え消去保証回数10万回以上なんだから、数十回の書き換えなんて、ぜんぜん誤差じゃん(^^;)

●6月10日
 昨日動かなかったSH-4の件。一晩おいてから再度挑戦…ん? あれ? なんか、すごい間抜けな…間違いを…しているやうな…気が…ははは…(^^;) 書き直したら一発で動いたり…あぁ〜やっぱり私はリトルエンディアンな人間だなぁ〜(笑) ワードの場合は上位はこっちだっちゅ〜の(^^;)
 で、7セグメントLEDカウントアッププログラムを疑似ROM化して、スタンドアロンでしばらく走らせておく…よしよし、ちゃんと動いているみたい。で、CPUの発熱は…アッチ! ん〜結構熱いよ…コレ… デバッガ使ってるときは“熱いかな?”くらいだったのに…そうかぁ、デバッガ使用時は事実上ほとんどアイドリング状態だから、CPUコアにしてみれば止まってるも同然か… こりゃファンまでは要らないにしてもフィンは欲しいような気がしないでもない…ドリキャスも伊達にヒートパイプ積んでないってことか…いや、まぁ某筋からの情報によると、ドリキャスのはSH-4でわあるがSH7750ではない(!)という説もあるので(を)、発熱の度合いは単純比較できませんが(^^;)
 さて、先週はCD-ROM製作の忙しさにかまけて、Interface本誌や増刊の校正、ちゃんと見てなかった(をぃをぃ!)…のつけが、今週に回ってきてしまった感じ。Interface増刊、明日までに再校も全部返さないとまずいって? 増刊の筆者も、来週また大阪出張だそうだから、今晩と明日、もうひとがんばりだな…
 夕方はPCMCIAの筆者と2回目の作戦会議。CqREEK/Vr4300にISAバス用PCカードアダプタを付けて、手元にあるちょっと怪しめの(?)PCMCIAモデムカードを差し込む…が、タプルが正常に読めない?? ん〜世の中にはどんなPCカードが存在するかわからないからなぁ〜 そういう意味では、Windows95とかのプラグ&プレイって凄いと思ふ…まがりなりにも(を)ちゃんと動くもん(^^;)

●6月11日
 明日、某筆者のところで某デバッグのための下調べ。バンクレジスタでREADYイネーブルにしてるんだけど…このロジアナの波形を信じる限りは、CPUがREADYを無視しているとしか思えないんだよなぁ〜 でもバンクレジスタの設定値はこの値以外考えられないし、その他のコントロールレジスタも、これでいいハズなんだけどなぁ〜なんでこの設定でWAITがかかってくれないの?!
 ん?? もしかして、外からWAIT信号ぶちこんでも、CPUまで届いていないのかしらん?? っということで、改めて回路図を引っぱり出すと… ありゃ! なんか謎の(^^;)CPLDに接続されているぞ… ってことはこいつのソースを見ないとな…
      //      ready_in                pin 73;   // ext_ready
 ……あれぇ? (私は“ちゃんと”はABELソース読めないんだけど…)これっていわゆるコメントだよね…ってことは? ext_ready信号無視暴走族状態っすか今?? げげ…どうりでまともに動かないわけだ…(^^;)

●6月12日
 今日は新宿NSビルにて、いつもの筆者と某メモリボードのデバッグです。READYをちゃんと入れれば楽勝でしょうという希望的観測(汗)。昼飯後さぁ〜やりますか! という段階で、なんと電源逆接!でデバッグ用アダプタボードを吹っ飛ばす(あちゃ!) このまま今日はお開き…というわけにはいかないので(!)、ひとっ走り会社に戻って完動品を持ってくる(CQビル-NSビル、ドアtoドア&往復は50分ほどで行けることを証明!?)。
 さて、まずはREADY信号の処理のためにCPUボードのパターンカット&ジャンパ…ホントは某石を書き換えれば済むんですが、なんかうまく行かないので強制執行。そしてREADYイネーブルビットを立てて某レジスタを設定…で、実際にバスアクセスを発生させる…ん〜予想した波形とロジアナの画面の波形が若干違う…やはりGAはREADY認識クロックの次のクロックでデータ転送してますね…う〜みゅなんで1クロック後やねん。っということで、1クロック早めにREADYを返す(この処理が完全ではなかったことが泥沼化に!?)。CPUのアドレスインクリメント状況を見ると…ん、これで動きはOKですね。
 さて次はクロック線。これはアナログ信号線みたいなもんですからね…DSO(ディジタルストレージオシロ)を持ち出して観測…ん〜クロック汚ひ(手配線で33MHzだからなぁ^^;)…抵抗つけたりコンデンサつけて対処。さすがは筆者先生!(このあたりのデバッグは私はただただ見てるだけデス^^;)
 さて、これで正常に読み書きできるかな?? …おお、初めてまともそうな(^^;)値が返ってきた!! けど…ん〜ライトはちゃんと4ワード書き込んでいるみたいですが、なんでリードが2ワード目以降が同じデータなんだろ…? ライトがおかしくてそうなってるの? ライトは正しくてリードがおかしいの?? 夕食も取らずに黙々とデバッグ…デバッグ…デバッグ…READYタイミングをさらに1クロック速くしたり遅くしたり…ロジアナで観測する信号もいくつか変えて(すいません、Myロジアナ16chしかないもんで…)いくうちに、READYタイミングを変えた影響で変えなくてもいい信号までタイミングが変わっていることを発見! いやぁ〜気が付きませんでしたねぇ〜 何にせよ、とりあえずは動き出したぞ。あとは時々データが化ける問題をなんとかせねば…
 で、日付か変わる頃ヘトヘトになりながら新宿駅へ…筆者は丸の内線なのでそこで分かれて山の手線外回りのホームに上がると、人人人! 人身事故だぁ? 結局会社にたどり着くのでせいいっぱい…うう…今日も布団で寝れない(T_T)

●6月13日
 っは!と飛び起きる。やべ、もう6時ぢゃん(朝のです)。昨日のREADY認識の件。PPCのマニュアル確認しないとな…結論…GAもGCもGCXもみんな違うことが判明(をぃをぃ) なんでこんなにチョコチョコちゃうねん!! GAが基本形=1タイミング、GCがGA+もっと遅いタイミング=計2タイミング、GCXがGC+もっと速いタイミング=計3タイミング…の設定が可能になっているようでやんす。
 ウェイト制御の白黒がはっきりしたところで、次はリセット直後にデータキャッシュを有効に設定するメモリアクセスプログラムを用意せねば…ん〜DCCRを設定しただけじゃキャッシュイネーブルには…ならないか…そんな簡単ぢゃないのね。(PDFをもう一度読む)なになに…キャッシュライン数だけDCCCR命令を実行する? ん〜こんな命令、インラインアセンブルでなきゃ書けねぇ〜よ…けどこのコンパイラは評価版ってことでインラインアセンブル使えない!? キャッシュイネーブルだけはBIOSに頼るか… すったもんだでプログラムを作成する…おっともうお昼だ。このままのカッコで行くのも失礼なので、いったん部屋に戻る(遅れてすいません)。
 で、デバッグ2日目…バスのプルアップやGNDライン強化など、安定化のための対策をして再度テスト…多少は改善された感じもするけど…ん〜〜〜 こりゃ別の所に問題がありそうだなぁ… なんかね、このCPUボード…ちょっとおかしいな。
 …GAだのGCだのGCXだの、READYだのWAITだのと、何のCPUで何やってんの? だって? 近日公開予定です(ナイショ…ってバレバレだけど^^;)

●6月14日
 以前、PCIデバイス設計の特集でシリアルROMエミュレータをお借りした某社さんから、今度はフラッシュROM搭載のEPROMエミュレータを借りる。うちのRISCキット関連で、某ソフトのROM化をお願いしている筆者に使ってもらう予定…の前に、どんなもんか使ってみようかなと…(ほらそこ! 「また遊び道具が増えた」とか言わないように!) …のためには、現状のモニタROMと/CSを切り替えられるようにするゲタを作らないとな… 前なら74TTLガシガシ並べて作ったんだろうけど、最近は根性なくなってきたので(笑)、てっとりばやくGALを使ってしまおう… でも使っているフリーのGALアセンブラがいまいち…ん〜なんでこれでエラー出るんだろ…たぶん記述のしかたが悪いんだろうな… ん、今度は通った。たぶんこれでチップセレクトは切り替えてくれるでしょう。
 で、問題のゲタの製作か…手書きの書き殴り(?)回路が読めて、丁寧に基板加工やはんだ付けして製作下請け(?)してくれるアシスタントが欲しいっす(^^;)

●6月15日
 あちゃ! この期に及んで某記事に問題発見…ちょっと文章差し替えます。色校の段階にまでなってこんな直しが…すいませんデス。今回のInterface増刊の超ハード進行スケジュールでは、DTP屋さんにもえらい迷惑をかけたと思うので心苦しいのですが…
 赤入れ段階で多少原稿の文章を直しているとき、パラメータとかの正確な値がわからなくて、とりあえず後から直そうと思って適当な数字を入れたまま作業を進めることが有るんですが、筆者もそれに気づかずに念校まで行ってしまうことが…(をぃをぃ)

●6月16日
 さて、今日は編集会議。私の次の特集担当はPCMCIAやコンパクトフラッシュ、スマートメディアなどのメモリカード関連です。基本的には非PC/ATアーキテクチャのマシンにメモリカードインターフェースを実装して、カードのリソースを設定するイネーブラ周りまでを重点的に解説する予定。実際にどのような章立てにするか思案中 ―― I/Oカード系はカードイネーブラまで解説すれば、あとはどうとでもしてくれ(?)でいいんですが、ATAメモリカード系をどうするか…イネーブラまでの説明ぢゃあまり使えないしなぁ〜う〜みゅ…

●6月17日
 今日は(も?)MAX+plusIIやAccolade PeakSuiteを立ち上げて、怪しいボードの試作。テキストエディタとロジアナを立ち上げて、VHDLソースと実際の動作波形画面をにらめっこ…ん〜割り込みが成立したら一定時間後にINTA#をアサートする部分なんだけど、なんかディレイのかかり具合がおかしい。ディレイ時間が設定した時間とぜんぜん違う…さらには実行するたびにディレイ時間が違う(^^;) う〜みゅ…VHDLソースに少し手を入れてフラグのクリア条件を変えると…今度は良いみたい。ん〜中のフラグの動作が意図しない動作をしていた模様… ちゃんとシミュレーションしてみないとな(まともにシミュレータ通していない人)

●6月18日
 14日に考案した回路 ―― CQ RISC評価キット/Vr4300のROMソケットに怪しいゲタをはかせてフラッシュROMと切り替えられるようにするアダプタ ―― の配線作業を開始。今回も200本弱の配線があるが…まぁ地道に配線していきましょう…で数時間かけて完成。肩凝ったっす…
 ん〜なんか片方のチップセレクトが“L”になりっぱなしやな… テキストエディアを立ち上げてGALのソースを眺める…眺める… ん? これぢゃダメぢゃん。早速修正してGALアセンブラ通して、いも焼き器(GALライタの名前です^^;)で焼く。よし、今度はちゃんとROMセレクトされるぞ。
 さて、肝心のフラッシュ書き換え… Vr4300は8ビットROM×2の構成なので、今回もアドレスバスが1ビットスライド…ややこしいったらありゃしない。まずはいつものパターンで、プログラムではなくて、デバッガのコンソールコマンドでダイレクト書き込み…(^^;)
  >POW A8101554 AAAA[リターン]
  >POW A8100AAA 5555[リターン]
  >POW A8101554 A0A0[リターン]
  >POW A8100000 1234[リターン]
  >PIW A8100000[リターン]
  address  : data     : bit data
  A8100000   1234       0001 0010 0011 0100
よしよし、マニュアル操作でフラッシュROM書き換え完了! あとはこれをプログラム化してサンプルプログラムを用意すればOK!

●6月19日
 某試作評価用PCIユニバーサルボードのオプションボード。基板設計変更で、最初の試作基板が使い物にならずにほったらかし…はもったいないので、パターンカットやジャンパを飛ばして、量産版と同じ仕様になるように改造。幸いなことに、空きスペースがユニバーサルエリアになっているので、そこに追加部品をのせて数十本のジャンパを引き回せば、ソフトウェア上は完全互換性の仕様に。もう1枚試作基板があるから、あとでそっちも改造しないとな…

●6月20日
 某筆者からPCI拡張ROMのサンプルプログラム到着。早速動作確認…あ゛…ROMエミュレータ貸し出し中だった…。しかたないのでPCI SRAMボードのSRAM領域を、拡張ROM領域としても見えるようにするPCIデバイスを作って、それでROMをエミュレーションさせるか…ん〜後にしよ(^^;)

●6月21日
 なんだ…実質2時間で終わりかよ(ちょっと私用です)…ん〜休まなくてもよかったかも…まぁでも、せっかくゆっくり(?)できるので、あとは部屋でゆっくり寝てよっと

●6月22日
 およ…6月8日にTEXのことを書いたら、友人から「“E”は小文字だ」と突っ込みメールが届いてた…UNIX関連ネタ(?)には一言ある彼なので(会社で廃棄処分のマシンを拾ってきたとわいえ、ふつ〜個人でPA-RISCマシンなんか使わないってば^^;)
 っつ〜ことで改めて…“TeX”ファイルを見る環境がありません(^^;) 出版社なんだからTeXの環境くらい用意しておけ? いや、Windows3.1上でならTeX環境もなくはないです…って、あのマシン、まだ動くのかな(をぃをぃ)
 数式とかを多用している解説原稿だと、式を間違いなく表現するのにTeXで原稿を用意される筆者さんもいらっしゃいますが…でも実際、TeXってあまり使わないですね…TeXをそのまま受け付けてくれる印刷所やDTP屋が少ないのもありますが、なんといっても(?)、Σだの∫記号が乱舞するような原稿は私は頼まないので(汗) そういう分野の記事は、編集部の=Юさんや洋さんにお任せしております(え゛? ぢゃなんでTeXの原稿がきたかって? 大学の学生さんで普段から使ってるそうなんですよ)。

●6月23日
 ん〜試作部品が足りない…ちょっと秋葉までひとっ走り行って買ってくるか(今日の日中なら晴れてそうだし)。ユニバーサルボードは2.54mmピッチなので、SOP変換基板とかも欲しいよなぁ コネクタやちっちゃなスライドスイッチなど、どれもこれも単品では大したモンでもないんですが、あれもこれも…と揃えると、結構な値段するんだよなぁ 丸ピンのピンヘッダやソケットもいっぱい使うっちゃぁ〜使うけど、まとめ買いするほどの本数は使わないと思うし…
 おお! 道ばたのジャンク品の中に、ISAバスが8スロットくらいあるライザーカード(ボード?)を発見。見た目はほとんど元祖(?)PC/ATマザーボード…だけどISAスロットコネクタだけで他に部品はなし。1スロットだけISAスロットの隣にPCIスロットみたいなコネクタが…ってことはVL?? 普通のライザカードにしてはスロット数が多よな…何で使ってたライザだろう…ん〜でもすでにジャンク改造品ISAのバックプレーンボードは3台あるし、それ以外にも2スロットや3スロットの小さなISAバスライザカードが数枚あるので、今回はパスしよう。
 ん? 巣鴨駅の公衆電話交換してる? すでにグレ電になってたはずだが…とよく見ると…おお、ICカード電話ですか。で、ICカードはどこで売ってるんだろう…

●6月24日
 なんだ、配線が違ってるぢゃん ―― 某PCI SDRAM DIMMカードでSPDが正常に読めないというので、ボードのデバッグ中。う〜ん、たしかに、基板表側から見た場合と裏面から見た場合で、スルーホールの位置を間違えやすいな…。CPLDから途中までは基板裏面で配線されて、スルーホール経由で表面に移ってそこからDIMMソケットまで配線されてるんですが、そのスルーホールを勘違いしていたらしいデス。配線し直したらSPD読み出しプログラムも正常に動作OK。よしよし。とはシリコンディスクドライバの作者へGoだな(^^;)

●6月25日
 とある筆者さんから「編集者ぢゃないですね」とメールが… いやぁ〜仕事はInterface編集ですよ(^^;) まぁ他に、うちのRISCキットの担当なのでサポートもしてますし、記事の企画のための下調べとか、ハードウェアの筆者さんに動作確認用のサンプルプログラムを作って「これで動作確認しながらハード作って下さい」とか、ソフトウェアの筆者さんに実際のターゲットとなるボードを作って「このボードを動かすサンプルプログラムを作って下さい」とか、デバッグの手伝いをしたりとか…とか… あれ?(^^;)

●6月26日
 今日はいつもの所沢の筆者の所へ、某プログラムを開発してもらうために、某PCIボードの納品(ちがうだろ^^;)です。んが…テスト機に実装して、手動操作でレジスタを初期化していざメモリ読み書き…あれ? DIMMメモリに正常に書き込みできなくなってる?? おかしいなぁ〜つい2時間前(^^;)まで会社のマシンで問題なく動いてたんですよぉ〜 さらには拡張ROM開発用のROMエミュレータまでデータがバケバケで使い物にならない… ん〜 納品先でトラブルのはマーフィーの法則なのね… しょうがない、もっかい会社に戻って確認してみますわ…
 ROMエミュレータ…やっぱ手配線は信頼性が問題かねぇ(はんだ付けが下手ちゅう〜話もある^^;) 接触しているように見えるんだけど、なんか接触してなかったみたいですな。もう一度はんだ付けし直したらOK。今度は大丈夫だと思います。

●6月27日
 昨日の問題点…メモリに書き込みできなかった件…ん〜SDRAMコントローラのVHDLソースを見ると、どうも初期化のパラメータの意味を勘違いしていた模様。たぶん初期化パラメータを変るだけで、ハードはあのまま動くと思う。とりあえず問題解決策をひっさげて、所沢某所でリターンマッチ。よし、今度はOKですな。
 んで会社にもどり、先日作ったCQ RISC評価キット/Vr4300用怪しいフラッシュROM用ゲタのSH-3版を作成。SH-3はROMのデータバスが8/16ビット兼用の回路になっていて、8ビットROM時はA0がROMのA14に配線されてて、ある意味スクランブルがかかてるんですが(^^;) 基本的にユーザーのROM化プログラムはROMを2個使って16ビットで使いなさい…こういうスタンスです。んが…バス幅の切り替えはCPUボード上のちっちゃなディップスイッチを切り替えるんで、頻繁に切り替えて使うことを想定してません。ん〜こりゃゲタを使って載せるフラッシュも8ビット幅にしたほうが無難かな。アドレス線がひっくり返っているのはゲタ上で配線を変えて元に戻せばすむことだし。
 先日のVr用のゲタもそうですが、このくらいの規模なら回路図も書かずに頭の中だけですぐに配線作業をすすめるんですが… CPUボードのアドレス線の配線もそうですが、さらに問題なのは使用したフラッシュROM。今回は手元にあったありあわせの部品ってことで、前に買った8/16ビット幅両対応のフラッシュROMを使ったんですが、これが混乱に輪をかけて… ん〜なんかフラッシュが書き変わらないんだけど…どっかアドレス配線間違ったかな…えぇ〜と、CPUのA1がROMソケットのA0に配線されてて、それをゲタでA1として受けてぇ〜 フラッシュROMのLSBがA0ではなくてA-1なのでぇ… うううううう〜だめだぁ、ちゃんと回路図…っていうか、CPU−ROMソケット−ゲタ−フラッシュROMの配線対応表を書かないとダメだぁぁ(間違いの元なんだから、ちゃんと書けよ ^^;)

●6月28日
 CQ RISC評価キット/SH-4の製品化に向けて作業しています。ありゃ…今度のGCCはELF形式なんですね(今後のGCCはELFが標準になるそうで…)。SH-1や3はaout形式だったのに。となるとヘッダ構造が違うから、コンパイラの吐き出したOUTファイルからコード部分を切り出すには、新たなツールが必要だなぁ…と、以前のSH-1の疑似ROM化ツールの作者さん(当時は学生さんでしたが、いまは社会人になられて、大変お忙しいそうです)にご相談したところ、ELF形式の資料をメールで送っていただきました。ふむふむ、なるほど。あとは実際にSH-4用コンパイラの吐き出したコードのダンプを取って、つじつまがあっているか確認。ん〜オフセットアドレスの基準の位置がなんでそんな値なのか理解できない部分もありますが、計算するとちゃんと必要な部分が必要なアドレスに配置されるみたいなので、意味は通じますな。まぁあとは、このヘッダ解釈アルゴリズムでコードを切り出すプログラムを用意すればOKだな。

●6月29日
 ん〜 やっぱりSH-4に疑似ROM化ツールがあって、SH-3に無いのは問題だよな…CqREEK/SH-3のユーザーさんからも「疑似ROM化ツール無いんですか?」という問い合わせもいくつか来ているし…っということで、SH-3用の疑似ROM化ツールも急遽用意しようかと…。
 疑似ROM化を実現するには、CPUの状態をデバッガ起動時と同じ状態に設定する初期化ルーチンと、ROMからRAMへユーザープログラムを転送してジャンプする転送ルーチンが必要ですが… まぁSH-4用のがすでに出来ているので、あとはそれをパクれば簡単です。
 それともう一つ。コンパイラの出力したOUTファイルから、CPUの命令コード部分を切り出してROM化ファイルを生成するツール。基本的にはexeGCC/CQ版のSH-3用もaout形式なんで、SH-1用のが使えるかな…と思ったのですが、なんかメチャクチャなファイルが出力される…さすがにこのあたりは作者さんにお聞きしたほうが早いかな(忙しいところたびたびすいません)。どうもSH-1とSH-3でヘッダの長さが違うようで、SH-3のOUTファイルに合わせたパラメータの変更箇所の指示が。よしよし、今度はOKのようです。
 さっそくいくつかのプログラムで実践テスト。キット標準添付のドライストーン計算プログラムは、printfとか使っているのでこれは無理。for文のウェイトで7セグメントLEDを点灯するプログラムを作成…よし動く動く。さらにキット標準添付のサンプルとして、もう一つタイマー割り込みを使ったサンプルプログラムもあるので、これも疑似ROM化…あれ? LEDがカウントアップしないな… ベクタはユーザープログラム側でセットしてるしぃあとは…あ、リセット起動時は割り込み禁止状態でした…ステータスレジスタのBLビットクリアルーチンを入れればOKやね。
 え? 最近のInterfaceはSHシリーズばっかりよいしょしすぎ? CqREEK/SH-1やV821、そしてCqREEK/SH-4やSH-3、さらにはCqREEK/PPC403だってROM化できるのに、CqREEK/Vr4300の疑似ROM化ツールだけないのは差別だ?(^^;) いや、別にそういうつもりではないんですが…いままでSH-3やVr4300に無かったのは、単に作っていただけるかたが見つからなかっただけで…
 やっぱりそうだよね。SH-3用のを作っちゃった(?)からには、Vrのも作らないとまずいよね…しょうがない。作るか(^^;) うぉ〜 MIPSのアセンブラは初めてっす…ん〜キャッシュってどうやって有効にするんだろ…

●6月30日
 FPGA/CPLDカンファレンスが池袋で開催されています。いろいろ打ち合わせがあるので、午後から会場を飛び回って…って、飛び回るほど会場はぜんぜん広くありませんが(^^;) 今回はいくつかのメーカの担当さんと、Interface記事掲載の打ち合わせ。それと、いつもの筆者さんのところで、うちのCqREEK/PPC403 CPUボード搭載のCPLDを書き換えてもらう予定になってます。会場のすみの休憩所の、壁にACコンセントがあるところで、ノートパソコンとCPUボードをつなげてゴソゴソやっている怪しい数人のグループをお見かけになったかた、忘れて下さい(笑)
 ISP(インターネット・サービス・プロバイダ…ではなくて、イン・システム・プログラムの意)っていいですね。こんなところでも即座に書き換えられて。でも担当者にしてみれば、今までは「ライタがこっちにしかないので物を送り返して」ですんだのが「現場に来て書き換えて!」と言われてしまってさぁ〜大変…今回のがまさにそれ(^^;)


●1999年 5月に戻るのだ

●1999年 7月を読むのだ


(M)のページにもどるぅぅぅ

Interfaceのページへワープするぅぅぅ