USB接続2716プログラマが完成

ワケあって電子工作に没頭できる状況になく、もっぱら妄想電子工作に明け暮れている。幸いにして格好の題材がある。もう組み立てを終え、各部個別の動作確認ができているのに、全体としてはちゃんと動いてくれない2716プログラマだ。あらゆる測定器が正しく動くことを示唆するが、実際は最初の1、2バイトを書いたところで停止してしまう。もう超常現象じゃないかと思うくらい経験のない出来事であり、過去の投稿で思わず弱音を吐いて数人から励ましのコメントをいただいた。

考えてみると測定器が太鼓判を押しているのはデバイス側のハードウェアとそれを動かしているファームウェアであってホスト側のアプリケーションは対象としていない。問題の原因はここにある確率が高いから、あらためてその動作を追った。UIを生成し、もうひとつスレッドを起こしてデバイスと通信をする。そのスレッドには書き込みや読み出しの働きがあり、UIの指示にしたがいそれらを実行する。ここで、とんだヘマが発覚。スレッドがUIのプログレスバーを直接動かしている。

Visual C++ 2003までは別のスレッドからUIを動かすことが許された(規則で許されているのかどうかは確認していないが実際のところ動いた)。Visual C++のバージョンをあげたのに、そこのところを書き直していなかった。ソースを調べると、ほかにもラベルやテキストボックスやボタンの有効/無効などいろいろなことをやっている。それら全部が正しい手続きを踏むように書き直したところ書き込みが完走。プログレスバーが伸びる様子をこれほどうれしく眺めたことはいまだかつてない。

writer16001

これで3年越しの懸案が解決。動くとなったらデバイス側のハードウェアとファームウェアもブラッシュアップしておきたいから、それは次の投稿で公開する。いや本当はまだそんなことができる状況にないのだが、ええいかまうもんか。というわけでWindows10で動くUSB接続の2716専用プログラマという世界中を探してもたぶんこれしかない画期的な装置が完成。この間、励ましてくれたみなさん、どうもありがとうございました。

広告
カテゴリー: 2716, 書き込み装置 パーマリンク

USB接続2716プログラマが完成 への2件のフィードバック

  1. kousoz より:

    お久しぶりですkousozです、お元気なご様子でなによりです。

    ROMライタの完成おめでとうございます。
    これで8080CPUボードの完成まであと一息ですね、期待しています。
    レトロなCPUというわけではありませんが、私も今年はリレーでCPUを作ることを目標にしています。
    お互いに頑張りましょう。

    • vintagechips より:

      kousozさんの励ましに支えられて何とかROMライタの完成までこぎつけました。8080が動くまであと一頑張りというところで何よりの後押しになる凄い目標を知らせていただきました。リレーでCPUを作るというのはボクが知る範囲で最難関のプロジェクトです。やろうする意欲だけで敬服しますし、うまく完成したら画期的です。わくわくしながら経過を見守らせてもらいます。

      何年か前、富士通沼津工場でFACOM128Bが動くところを見学しました。けたたましい騒音が左から右へ移動していき、案内の人が「いまメインルーチンからサブルーチンへ飛びました」なんて説明していました。kousozさんのCPUもそんなふうに動くんだろうなと想像を膨らませています。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中