VM39S5G-12.800
カテゴリー:
これ以前から気になっていた発振器で、すぐに使うあてはありませんが試しに買ってみました。
VM39S5G、温度補償タイプの水晶発振器、水晶振動子の温度特性を温度センサとRC回路によって補正して周波数安定度を高めた水晶発振器です。
これは12.8MHzのものですが、トリマと外部電圧でわずかに変えられるようです。
上面左上の丸穴の中にそのトリマがあります。
これ以前から気になっていた発振器で、すぐに使うあてはありませんが試しに買ってみました。
VM39S5G、温度補償タイプの水晶発振器、水晶振動子の温度特性を温度センサとRC回路によって補正して周波数安定度を高めた水晶発振器です。
これは12.8MHzのものですが、トリマと外部電圧でわずかに変えられるようです。
上面左上の丸穴の中にそのトリマがあります。
自宅で最初に電子メールが使えるようになったのは1994年頃だったか、今回はその頃の話を思い出しながら書いてみたいと思います。
私はいわゆる「パソコン通信」というものはやっていませんでした。(アマチュア無線によるRBBSはちょこっとやっていました)
大学のメールアドレスはありましたが自宅からのアクセスはできませんでしたし、修了後は使えなくなるのでそれまでに何らかの手段を用意したいと思っていました。
ちょうど386bsdを動かしていましたし、大学のメールの運用にもちょっと関わっていました。
可能なら自宅でメールサーバを運用したいと思いましたが、まだ個人向けISPが生まれたかどうかという時期です。それに接続料を払う余裕もありませんでした。
幸い知り合いに先に運用始めていた人がいたのでそこへ接続させてもらうことにしました。実はその知り合いもまた同じ方法で接続していまして......
好意で繋がせてもらったので迷惑をかけてはいけません。
RX220ボードと一緒にこんなボードも買っちゃいました。
RP2040(Raspberry Pi Picoのマイコン)を搭載した秋月独自のマイコンボードですね。互換機なのかな? 私としてはアセンブリでゴリゴリ書きたいと思っているので資料さえあれば互換性は気にしませんが。
そういえば意外に思われるかもしれませんが、実はRaspberry PiもArduinoもこれまで使ったことありませんでした。
マイコンボード作る時ってそれを使って何かをしたいというよりマイコン自体で遊びたいことが多いからですね。
何かをしたいときも生のAVRマイコンを使っちゃうし。
あっ、いつもアセンブリで書いちゃってるからAVRをC言語などで書いたこともない気がする。
去年、光回線の工事のために部屋をすこし片づけまして...... 何しろやたらと物が多いので少しでも減らそうと雑誌の一部を「夢の図書館」に寄贈しました。
その記念品が先日送られてきました。
それがこの特製「読書グラス」、底が広く重心が低いのでちょっとやそっとでは倒れないとのこと。
パソコンしながらや資料などを広げて飲んでいてグラスを倒して蒼くなった経験のある人は多いと思いますが、これは確かにどっしりとしていて安定感抜群ですね。
ただガラス製なので滑って落とすことだけ気を付けないと......
さて今回寄贈したのはもう私は読まないであろう以下の雑誌たちです。
マクロアセンブラASのRXコードジェネレータは完成し、無事に本家にマージされました。
次は書き込み環境を用意しなくてはなりません。USB接続して純正のツールを使えばすぐにできるはずなのですが、なんか登録しないとツールのダウンロードできないみたいですし、独自にアセンブラも用意してしまったので書き込みも自力でやろうかと考えています。シリアルの方が簡単そうなので接続のための基板でも作ろうと秋月電子通商のサイト眺めていたら...
RX220のボードも見つけてしまい、訳アリ品(スイッチが逆マウント)で安かったこともあり買ってしまいました。
逆マウントといってもONの向きが逆なのと1,2が入れ替わるだけなのでわかって使えばそのまま使用可能です。
今回のものはMSXなどに使用されたTMS9918 VDP(Video Display Processor)のバリエーションの一つです。これ、いつ何を考えて買ったんだったかな?
TIのTMS9928AN、シンガポール製です。デートコードは9209と8227のどちらかな?
TMS9918のバリエーションの一つと書きましたが、どんな種類があったのでしょう?
違いは主に2ヶ所ありました。
一つ目は出力形式の違いです。TMS9918はNTSCコンポジット出力でした。このTMS9928はこれをRGB(厳密にはY, R-Y, G-Yの色差)出力に変更したものです。さらにTMS9928をPAL用の625ラインにしたTMS9929があります。
アセンブラを書いているとどんな命令があるのか全体が見えてきます。
アセンブリ言語で書いても同じではと思うかもしれませんが、その場合はこんな命令無いのかなと探しに行くことはあってもどんな命令があるのか見ることはあまりないように思います。少なくとも私はそうで、新しいプロセッサを初めて触るときはニーモニック一覧を眺めて使い慣れたプロセッサの命令に相当するのはどれかといった探し方をしてしまいます。
そうすると汎用的な命令はわかりますが、知らなくてもプログラムは書けるけど使えば便利(速い)命令は置き去りになります。
一方でアセンブラを書いていると全部の命令に一通り目を通すことになります。動作は知らなくても書けますが、マニュアルに一緒に載っていれば目に入りますし、今回のRXのように別になっていても気になって調べてしまいます。まぁ好奇心の少ない人が仕事として黙々とやったらだめかもしれませんが......
そんなわけでRXの命令を見ているとつくづくC言語(とその派生)を意識した命令セットだなぁと思えるものがあります。
最近月末になると気になっているマンガがありまして......
「向日くんとあおいさん」という弁護士さんの会のサイトに月一で連載されているものです。中学の時に社会科の教材で配られた「赤かぶ検事奮戦記」が元で法律の話(特に刑法)は好きだったりします。大学の一般教養で取った法学、刑法ばっかりで面白かったなぁ。マストではなかったけど東京地裁に傍聴に行ったし。
それでは本題です。
先日買っちゃったRX621ボード、Universal Monitorの移植するにはアセンブラASが使いたいところですが対応していません。どうしようかと思っていましたが......
結局コードジェネレータを書き始めてしまいました。
IM6100対応のような難しさはありませんが、ただひたすらに面倒くさいというのが正直な感想です。
ASのコードジェネレータを書く場合はニーモニック毎にデコーダを用意する必要がありますが、それでは大変なのでオペランドやオブジェクトのビット構成のパターンが似ているものをまとめて楽をするのが一般的です。このまとめたグループ毎にデコーダを書くわけですが、この数がやたらに多いんですね。
私がこれまでに書いたものでは以下のようになります。