妄想・MSX用電子サイコロ
2025.10.04
MSXのカートリッジで、8255を中心とした回路を構成します。

8255にはトランジスタが接続され、その先にはリレーがあります。

リレーの先にはLEDが接続され、サイコロの目になっています。

そしてBASICのプログラム。サイコロを実現する為のプログラムです。

スペースキーを押すと、サイコロの目のLEDが点滅を始めます。

同時に、リレーがカチャカチャ鳴ります。

徐々にスピードが落ちてきて、サイコロの目が止まります。


なんでわざわざ、そんな遠回りな・・・

MSXでサイコロなら画面に表示すれば・・・

わざわざリレーを通さなくてもLEDは・・・

普通にサイコロを転がせば・・・

無駄な・・・

思わず、そんなことを言いたくなります。

タイパもコスパも合理性も何もありません。これは、それらに対する皮肉だからです。

という妄想でした。
電子サイコロとルーレット
2025.10.04
電子サイコロもルーレットと同じようなもので、
サイコロの目で表示されるだけです。

同時に点灯する目があることに注目してよく考えると、ルーレットよりも配線は楽です。

◯◯◯
◯●◯
◯◯◯

◯◯●
◯◯◯
●◯◯

◯◯●
◯●◯
●◯◯

●◯●
◯◯◯
●◯●

●◯●
◯●◯
●◯●

●◯●
●◯●
●◯●

ん?
ロジックICで組むんじゃなくて、マイコンに単純につないでしまえば。
回路もプログラムもAIに作らせれば。

そりゃあ・・・面白くないでしょう。考えるから楽しいのです。

仕事で短時間に効率良く結果を出すのが目的ではなく、趣味ですから。

いかに少ないICで作るかを、昔、待ち時間の暇つぶしなんかで考えたりしていました。ほかの人はICを何個で作っているか見たりとか。最小2個だったかな。
トランジスタなど組み合わせる回路もあったりして、IC何個っていうのも微妙ですけどね。

あと、PLDで作ったりしましたね。それならワンチップだろうと。
昔々のMMI社のPAL DATABOOKにそういうサンプルが載っていて、小林芳直さんの著書でも紹介されていたのです。
電子ルーレットはバラツクのか
2025.10.04
よくある電子工作のルーレット
(よくあるのか?)

発振回路でクロックを作り、そのクロックでカウンタIC(たとえば4017)を回す。
その出力につながっているLEDが順番に点灯する。

スタートボタンから時定数回路で一定時間だけONになるパルスが出る。それで発振回路を動かしたり止めたり、あるいはクロックをゲートする。(その一定時間だけクロックを通す)

何も考えずに遊んでいましたが、乱数として成り立つのかどうかという観点だと、どうなんだろうと今さら考えました。

時定数回路に電解コンデンサを使っているから、精度なんか適当だろうと思いこんでいますね。

但し、何度も回して統計を取っていないので、よくわかりません。

印象としては、毎回同じようなところで止まるといったことはなかったような気がします。確かなことは言えませんけど。

昔、ランダムにタイミングをずらして電源を入れる回路を作る必要がありました。まさに電子ルーレットの応用で作ったのです。基本的には同じです。

電解コンデンサだからバラツクだろうと思って試してみたら、意外と正確で、偏った結果が出たような記憶です。うまくいかないもんだなあと。
そこでもうひとつ、周波数の高い発振回路を組み合わせたらどうかと試したのでした。
電解コンデンサの精度が低いといっても、秒単位でずれるとは思えず、もっと高い周波数でないと差が出ないでしょう。

高い周波数でカウンタを回したほうが良い。

電子ルーレットは、ボタンを押したらスタートしてくるくる回り、ある時間後に自動的に止まる、というのが自然な動きかと思います。

むしろ、常にぐるぐる回っていて、ボタンを押すとそのポイントで止まるんじゃなくて、余韻を残して徐々に遅くなり、ピタッと最後に止まるほうが良いのかなと。

徐々に遅くなる回路をどうやって実現するか、案外簡単かもしれないが、

それよりも、ボタンを押している間だけルーレットが回り、クロックの周波数を上げて目で追ったりできないぐらいにしておき、離すと止まるほうが単純か。

何が言いたいかというと、簡単そうでいて意外と根が深いということです。

- CafeLog -