ASのIM6100対応を検討する

Nanoprocessor対応はAS-users MLに投げて無事本家にマージされました。

で次は何をやろうかなと考えているわけですが、V60は作者のAlfredさんが取り組んでいるような書き込みがありましたし、TRONは気軽に手を出せるようなシロモノではありません。

HD1-6120ボード(ソフトウェア編)で短ループのテストしただけになっているIM6100 / HD1-6120がASで使えるようになればUniversal Monitor移植も視野に入ってきます。

やってみたいのですが... IM6100系のアセンブラは結構特殊なところがあって楽ではなさそうです。気になる点について実現方法を考えてみました。

複合命令

やはりIM6100系の特徴といえばこの複合命令でしょう。通常、命令語は機能を表す部分が一つとその対象を表す部分がいくつか(0のこともある)で構成されていますが、IM6100系には機能を表す部分が複数あるのです。

例えばOperate Instruction (Group 3)というグループの命令は以下のようになっています。

uPD78CG14ボード(その2)

テーマ:

カテゴリー:

前回、ピギーバックのROMと内蔵RAMで動作したので、今回は外部RAMを追加してみます。


ハードウェア的には未実装だった74HC04, 74HC573, 62256を載せるだけです。

ソフトウェアとしては、内蔵ROM(ピギーバック含む)有効モードで起動するとポートD,FはポートになっているのでMM(Memory Mapping)レジスタを設定してバスに切り替えないといけません。

uPD78CG14ボード(その1)

テーマ:

カテゴリー:

先日のuPD78CG14E、QUIPなのでユニバーサル基板では扱いづらい上にμPD7800ともピン配置が大きく異なるのでuPD7800Gボードを流用するわけにもいかず...

別な基板発注するついでに専用基板起こしてみました。


写真はとりあえず動作したところです。

I/Oピンを引き出すためのコネクタと外部RAMが未実装ですが、Universal Monitorは動きます。RAMが内蔵の256バイトしかないので大したことはできませんが。

このボードは以下のようなコンセプトで作っています。

模型のリモコン

カテゴリー:

もう何週間か前になりますが Twitter で面白いスイッチを見つけました。(下記リンク参照)

これの両モーメンタリタイプ、40年ほど前に欲しくて探したんですが見つけられなかったんですよね。今みたいに通販でどんなものでも買えるわけではなく、特殊なものはよほどの偶然と幸運が無ければ入手できませんでした。

ということで今回はこれが欲しかった理由手に入るものでどう代用したかを書いてみようと思います。

まだ小学生だった頃、よく近所の図書館で『模型とラジオ』などの模型雑誌を読んでいました。電子工作目当てなのですがついでに模型製作の記事も読んだりしていまして、ラジコン自動車の製作記事なんかがあるわけです。

飛行機もあったはずですが、さすがに雲の上の存在と思っていて...

いわゆるプロポを使った左レバーで前後進と速度を右レバーでステアリングという操作に憧れました。

とはいえそんなものを買うお金はありません。

スイッチによるON / OFF制御とコード付きのリモコンなら自分で作れるし、そんなにお金はかからないだろうと思ったのですが...

MSM85C154

テーマ:

カテゴリー:

前回に引き続きピギーバック品をもう一つ。


沖のMSM85C154です。

対応するマスクROM品はMSM83C154で、これは80C51の拡張版です。本家のIntelは開発用としてはUV-EPROM内蔵の8751/87C51を用意していました

ROM無しタイプはI/Oピンが減ることもさることながらROMへの配線が面倒ですし、UV-EPROM内蔵タイプは専用ライタやアダプタが必要になるので、個人的にはピギーバックタイプは好きですね。ROMエミュレータを使えるのもメリットです。

uPD78CG14E

テーマ:

カテゴリー:

またちょっとレアなパッケージのマイコンを入手しました。


NECのμPD78CG14E、μPD78C10のピギーバックタイプです。

μPD78C1xシリーズの開発用で、他にUV-EPROMまたはOTP ROM内蔵のμPD78CP14というのも存在します。OTP ROMのは少量生産用ですね。

マスクROM品のROM容量は4kB/8kB/16kBですが、このμPD78CG14Eに載せるROMはなぜか27C256相当品と指定されています。A14に対応するピン27はVSS固定になっていますから前半16kB分しか使えません。

ASのNanoprocessor対応

1820-1692も例によって適当な開発環境が見当たりません。

というわけでCP-1600のときと同様にASのコードジェネレータを書いてみました。CP-1600同様これも書式は簡単で命令数も少なく、着手してから半日ほどでテストも含めて書けました。

現時点のパッチなどをhttps://electrelic.com/pub/asl-Nanoprocessor-20220616/に置いておきます。

  1. asl-1.42bld223を展開してそのトップディレクトリでpatch -p1 < Nanoprocessor.patchでパッチを当てます。
  2. バイナリファイルt_nano.oritests/t_nanoにコピーします。

後は普通にビルドできるはずです。

HP 1820-1692

テーマ:

カテゴリー:

Twitter で存在を知って調べてるうちに、面白そうだ... 欲しい... 買おう... となって買ってしまいました。


HPの1820-1692、他にクロック(と電源電圧)の異なる1820-1691というのも存在します。

以前取り上げた1820-2151のような他社品のHP型番ではなく独自デバイスのようです。製造を他社に委託している可能性はありますが...

User's Guideを読んでいくとハード的にもソフト的にもかなり変わったプロセッサであることがわかります。

まずはハードウェアの特徴から。

Platform Cable USB(パチもん)

テーマ:

カテゴリー:

TwitterでCPLDの話題が出ていたので買ったまま放置していたPlatform Cable USBのパチもんを引っ張り出してみました。


雰囲気は純正品に似ていますが違います。

以前作ったAltera/Xilinx両用PLD書き込みアダプタはパラレルポート(USBの変換は使用不可)が必要で、対応PCの維持が難しくなるだろうと約5年前に買ったものです。

自作アダプタもこれも用意はしたもののPLDを個人的に使う機会が無くほぼ未使用です。自作の方は職場に持っていって動かした気もしますが、これは完全に未使用(静電防止袋の封も切ってませんでした)です。

ページ