パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

個人でエミュレータを100機種開発」記事へのコメント

  • by Anonymous Coward on 2018年05月27日 8時33分 (#3414839)

    実機上でROMのデータを1バイトずつ8x8くらいのマトリクスを使って点字のように表示させていくプログラムを走らせて
    それをビデオカメラで撮影してWindows上で画像からROMデータを自動再構築するソフト作ってた

    • by Anonymous Coward

      シリアルにでもした方がよっぽど簡単で速そうに思えるけども、
      あえてドットマトリクス+撮影+画像認識にする事情が何かあったんでしょうかね。

      • by Anonymous Coward on 2018年05月27日 17時37分 (#3414962)

        > シリアルにでもした方がよっぽど簡単で速そうに思えるけども、

        それは今時のパソコンしか触ったことがないお子様の発想です
        当時のハードにはシリアルポート(UARTとか)なんてありません

        トータルで考えると画面&画像処理の方が簡単です
        画像処理は使い回しができるし,画面の方はエミュレータを作るための
        グラフィック周りのハード仕様の解析で必須です

        親コメント
        • by Anonymous Coward
          シリアルってシリアルポートではなくて、画面に複数ビットではなくて1ビットのみの情報(光ってるか光ってないか)を出す意味だと理解しました。
          まあその方が簡単だけど時間はものすごくかかりそうですが。
          元コメの人、解釈が違ってたらごめんなさい。
          • by Anonymous Coward

            もちろんその通りです。
            「マトリクスを使って点字のように表示させていく」回路を外付けするくらいなら
            そこに4021でも付けてSPIかましたほうが楽で速いんじゃないの、って話です。

            元コメはArduinoキッズなんですかね。
            「シリアルといったらハードウェアUART!コラと言ったらアイドルコラージュ!」

            • by Anonymous Coward

              また変な勘違いしそうだから補足しますが、
              その通りというのは「画面に複数ビット」ではなくて「1ビットのみの情報を出す」って意味ですよ。
              同じデータビットをわざわざ格子に並べてダイナミック点灯させて撮影して解析するのと
              いったいどっちが時間かかるものなのか、軽く想像してみてはどうですか。

              • by Anonymous Coward on 2018年05月28日 22時45分 (#3415562)

                中の人です。

                具体的なことはこちらをご参照ください。
                http://takeda-toshiya.my.coocan.jp/rx78/index.html [coocan.jp]

                エミュレータを開発するにも、まずROMを吸い出さないと始まらない訳でして。

                MS-DOSが動く環境だったら話は早いですね。
                DEBUG.COMでファイルに保存してやればOKです。

                BASICが動いてPEEK/POKEが使えてシリアルケーブルが使えれば簡単です。
                シリアルポートをOPENしてPRINT #1,HEX$(PEEK(A));でメモリの内容を出力して、ホスト側でTera Termで受信してバイナリに戻すだけ。

                BASICでBSAVEが使えてCMTインタフェースがあれば悪くないです。
                CMTへの出力をwavに録音して、そこからバイナリを抽出することができます。
                ピーギャーの波形から1bitの表現、1byteの表現、ヘッダやブロックの表現を解析する必要がありますが、慣れてればまあ10分~30分程度で。

                そういった外部にデータを出力する方法がない環境で、それでもビデオケーブルという立派な出力信号があるじゃないか、という発想で始めた手法ですが。
                意外と汎用性が高いというか、結構色々な環境で役に立っています。
                ワンボードマイコンの7セグメントLEDをビデオカメラで録画する、みたいなこともやったことがあります(苦笑)

                #ブート後にBIOSが隠れてしまうタイプだと、それをどうやって表に出すかの解析が先に必要になるんですが。

                どうしようもないときは、ボードからROMをすっこ抜くしかないのですが、貴重な実機にできるだけ鏝を当てたくないとか、あまりに古いと+5V,+12V,-5Vの3電源が必要だったりして面倒なので、なるだけ上記の手法で吸い出すようにしています。

                親コメント
              • by Anonymous Coward

                > #ブート後にBIOSが隠れてしまうタイプだと、それをどうやって表に出すかの解析が先に必要になるんですが。
                開腹までOKならロジアナをROMに繋いで電源投入すればアクセスの有ったROM領域のデータは読み出せそう。
                バスを開放状態で止めることが出来るならロジアナから読み取り信号流し込むって手もあるけど、
                ミスってぶっ壊したらシャレにならんと思うと半田ごて当てるほうがまだマシなんだろうか…うーむ。

        • by Anonymous Coward

          > それは今時のパソコンしか触ったことがないお子様の発想です
           
          「ネット使ったほうがよっぽど簡単で早そうに思えるけども」ってコメントなら最高だったのに...

ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家

処理中...