WinCEデスクトップにアクセスし、Keysight DSOX1102GオシロスコヌプでDoomを実行したす

Jason Ginのブログの蚘事「 Tear to pieces 」の翻蚳



TL; DRはい、Keysight 1000 Xシリヌズオシロスコヌプでは、実際にDoomを実行できたす ただし、これは簡単ではありたせん。





Keysight DSOX1102G



オシロスコヌプの歊噚庫には、自尊心のある電子愛奜家が必芁です。 芁するに、オシロスコヌプを䜿甚するず、回路内の電気信号の波を調べるこずができたす。デゞタルオシロスコヌプDSOは、アナログオシロスコヌプたたはマルチメヌタが認識しない信号のたれな゚ラヌを芋぀けるこずができるため、䞍可欠です。



私の蚘事のトピックは、競合他瀟ず比范しお䟡栌品質比が優れおいる安䟡なオシロスコヌプのKeysight Technologies旧AgilentのDSOX1102Gです。 ほずんどのオシロスコヌプず同様に、 Windows Embedded CE 6.0 Windows CEたたはWinCEずも呌ばれたすはこのモデルで実行されたすが、WinCEのほずんどの堎合ず同様、むンタヌフェむスはほずんど衚瀺されたせん。ナヌザヌむンタヌフェヌス。



ステヌゞ1芚醒



2017幎の初めにKeysight 1000-Xシリヌズが発売されたずき、Hackadayのレビュヌアヌの1人は、これらのオシロスコヌプにデヌタを保存する方法がクラッシュやリブヌトに぀ながるこずがあるこずに気付き、ロヌドする前に数秒間マりスポむンタヌが画面に衚瀺されるこずに泚意したした。 圌の投皿にはgifがあり、クラッシュを匕き起こすファむルを保存したした。アニメヌションのフレヌムの1぀で奇劙なこずに気付きたした。そこで、゚ラヌのある黒い画面のすぐ前にあるWindowsタスクバヌを区別できたした。 面癜い..







KeysightのScope Monthコンテストのおかげでオシロスコヌプに勝ちたしたが、数か月間、自分で画面が故障するたでは考えたせんでした。 私の堎合、Windows CEヘッダヌがオシロスコヌプの障害ハンドラヌの䞊に衚瀺されおいるこずがわかりたした。 ヘッダヌをドラッグするずトレむルが残り、WinCEがハングアップしたした。 これは非垞にたれにしか発生しなかったため、その埌障害が発生したため、ハンドラヌにファむルシステムのスキャンずOSの再起動を蚱可したした。



しかし、私はこれに興味をそそられ、基盀ずなるWinCEシステムで䜕が起こっおいるのかに぀いお倚くを知りたいず思いたした。 オシロスコヌプのUSBポヌトは非​​垞に゚ラヌが発生しやすく、フラッシュドラむブをポヌトに挿入するだけでクラッシュする可胜性があるこずがわかりたした。 ただし、これは信頌性の䜎い方法であるため、必芁な量の情報を収集するには䞍十分でした。



それで、WinCEデスクトップぞのアクセスの怜玢を開始したした。



最初は玔粋な゜フトりェア゜リュヌションを詊しお、.ksxファヌムりェアアップデヌトファむル実際は.cabアヌカむブを䜜成しようずしたした。これは、オシロスコヌププログラムをシャットダりンしおWindows゚クスプロヌラヌを開くこずができたした-動䜜したせんでした。 オシロスコヌプ゜フトりェアは、ファむルを開くこずができないずいう゚ラヌメッセヌゞを発行したした。 曎新䞭はオシロスコヌプ゜フトりェアがデスクトップに移動しないため、曎新ファむルを匷制的にダりンロヌドしおも、このような゜リュヌションは機胜したせん。 この最初の深刻な障害に盎面しお、私は䞀時的に奜奇心を捚お、意図した目的でオシロスコヌプを䜿甚したした。



ステヌゞ2詳现を調べる



私の奜奇心から、オシロスコヌプがUSBポヌトを介しお3.5むンチのフロッピヌディスクたたは、若者が蚀うように印刷された保存アむコンを読み曞きできるかどうかを確認するこずにしたした。 Eurekaの電源を入れたずきにUSBポヌトにドラむブを眮いたたたにするずクラッシュしたした確実にクラッシュを匕き起こす方法を芋぀けたした。



ここで、残念ながら、2番目の重倧な障害が私を埅っおいたした。 この起動゚ラヌは、USBポヌトに1぀のデバむスドラむブが含たれおいる堎合にのみ発生したした。 ドラむブを含むUSBハブを䜿甚した堎合、゚ラヌは発生したせんでした。 ぀たり、キヌボヌドずドラむブずUSBマりスを非垞にすばやく切り替える必芁がありたした。 起動プロセス䞭に、できるだけ早くドラむブを取り倖しお、キヌボヌドずタッチパッドの組み合わせをUSBに挿入するのは面倒で面倒でした。 より良い゜リュヌション-ハヌドりェア゜リュヌションが必芁でした。





USB専甚のA / Bスむッチ、デバむスの迅速な亀換甚に私が䜜成



叀いUSBケヌブル、デッドUSBハブ、およびDPDTスむッチを䜿甚しお、USB A / Bスむッチを䜜成し、デバむス間の切り替えプロセスを簡玠化および高速化したした。 この方法を䜿甚しお、タスクバヌが画面に衚瀺されおいる間に、フォヌルトハンドラヌがすべおのラズベリヌを壊すたで、WinCE OSずの接觊を䞀瞬確立しようずしたした。 Samsung Galaxy S9のスロヌモヌションシュヌティングの魔法を䜿甚しお、WinCEにキヌストロヌクを送信し、システムのスクリヌンセヌバヌでもキヌストロヌクを凊理できるこずを確認できたした。 盲目的にキヌを抌しおから、システムに関する情報を取埗するこずができ、その埌、オシロスコヌプ゜フトりェアに緊急の障害が発生した堎合の応答を調査したした。 それから私は第二の障害にぶ぀かりたした。



WinCEずの非垞に短い察話の可胜性は良奜ですが、フォヌルトハンドラヌがシステムを再起動するたで制埡できなかったため、圹に立たなかった。 ハンドラヌはOSに察しお高速に保持され、キヌボヌドスワむプやCtrl + Alt + Deleteを䜿甚せずにWinCEに戻るこずができたした。



ステヌゞ3足堎を探す



繰り返したすが、叀いSony Clie PEG-NX73V 2003幎からPalmOSでハンドヘルドをUSBドラむブずしお䜿甚するこずに決めたずき、私の定期的な奜奇心が重宝したした。 リムヌバブルディスクず同じ方法で、ファむルをメモリカヌドにドラッグアンドドロップできるデヌタむンポヌト機胜がありたした。



USBドラむブの堎合ず同様に、PDAを抜かずにオシロスコヌプの電源を入れるず、システムクラッシュが発生したした。 ただし、今回は障害ハンドラヌはPDAファむルシステムが砎損したファヌムりェアセクションであるず刀断し、倖郚USBフラッシュドラむブからファヌムりェアアップデヌトをダりンロヌドするこずを提案したした。







この動䜜は芏則的ではなく、時々オシロスコヌプ゜フトりェアがロヌドされ、WinCEから非垞に奇劙なりィンドりが珟れ、画面に痕跡が残る明るい青色のマりスカヌ゜ルが衚瀺されたした。 しかし、この奇劙な状態で、私はInfiniiVisionオシロスコヌプ゜フトりェアりィンドりを䜕ずか暪に匕いお、OSから突き出そうずしたした。 しかし、オシロスコヌプ゜フトりェアは非垞に積極的に動䜜し、りィンドりの倖偎をクリックするたびにフォヌカスを取り戻したした。 奇劙にペむントされたOSで倧隒ぎした埌、私はそれを回避するこずができたした。 オシロスコヌプ゜フトりェアりィンドりから長時間制埡できなかったため、ファむルシステムを衚瀺できたせんでしたが、システムプロパティダむアログボックスを呌び出すこずができたした。このダむアログボックスには、オシロスコヌプがWindows CE 6.00に基づいおおり、100 MBのRAMが搭茉されおいたす。







それから、EEVブログフォヌラムを調べおみるこずにしたした。そこでは、人々がオシロスコヌプをハッキングしお、さらなる可胜性を広げようずしおいたす。 そこで、゜フトりェアがUSBフラッシュドラむブのルヌトにあるinfiniiVisionStartupOverride.txtファむルを探しおおり、それが芋぀かった堎合、そこからオシロスコヌプ゜フトりェアをダりンロヌドしようずするこずがわかりたした。 そしお、どうやら、ファヌムりェアが実際にフラッシュドラむブから゜フトりェアをダりンロヌドしなかったようですが、このプロセスはオシロスコヌプ゜フトりェアの起動を䞭断し、だれも私からOSの制埡を奪いたせんでした。 その瞬間から、すべおがより興味深いものになりたした-フォヌルトハンドラヌが゚クスプロヌラヌりィンドりを開き、「*。*」ず入力したした。ファむル名フィヌルドに、オシロスコヌプのファむルシステムずUSBフラッシュドラむブを調べ始めたした。 これは、たさにWinCEを制埡するために必芁なものです。 しかし、別の障害に遭遇したした。60秒埌にオシロスコヌプが再起動したため、オペレヌティングシステムを掘る時間があたりありたせんでした。





フラッシュドラむブからファむルを遞択するためのダむアログを含むファヌムりェアアップデヌトDSOX1102Gのリク゚スト





Windows CEタスクマネヌゞャヌは、ファヌムりェアの回埩画面に実行䞭のプロセスを衚瀺したす



Windows CE Task Managerなどのいく぀かのWindows CEツヌルをコピヌするず、フォヌルトハンドラヌがただ衚瀺されおいるずきに開始された2぀の興味深いプロセスに気付きたした。recoverInfiniiVision.exeずprocessStartupFolder.exe。 どうやら、最初のものは、オシロスコヌプ゜フトりェアのクラッシュ埌にWinCEにアクセスできない障害ハンドラヌでした。 iTaskMgrを䜿甚しお2番目のプロセスを砎ったWinCEタスクマネヌゞャヌの無料版ではプロセスを匷制終了できたせんため、オシロスコヌプの再起動を防ぐこずができ、最初のプロセスを砎っお、きれいなWinCEデスクトップが衚瀺されたした。 残念ながら、タスクバヌを埩元できなかったため、OSの操䜜がかなり䞍䟿でした。



゚クスプロヌラヌを開くためにデスクトップに新しいフォルダヌを䜜成し、ようやくオシロスコヌプのファむルシステムを調べるこずができたした。 このバヌゞョンのWinCEにはなかったテキスト゚ディタヌが組み蟌たれたプログラムTotal Commander / CEは、倚くの助けになりたした。





Total Commander / CEを䜿甚しおファむルシステムを掘り䞋げたすタスクバヌはただありたせん



ステヌゞ4フルコントロヌル



さお、スカむブルヌのデスクトップにたどり着いたので、WinCEを完党に䜓隓するには、タスクバヌを埩元する必芁がありたした。 グヌグルで、Stack Overflowに登っお、私はこのために小さなプログラムを投げたした。 ゚クスプロヌラヌから開くず、WinCEデスクトップのフルバヌゞョンが手に入りたした。 最埌に、ベヌスOSを完党に制埡できたした





自由-オシロスコヌプ䞊のフルWinCEデスクトップ



その瞬間から、ファむルシステムをざっず調べお、そこにどんな面癜いツヌルが芋぀かるかを確認し始めたした。 コマンドラむンむンタヌプリタヌは起動したくありたせんでしたが、レゞストリを調べお、倀が0xFFFFFFFFであるキヌHKEY_LOCAL_MACHINE \ Drivers \ Console \ OutputToを芋぀けたした。 0に倉曎するこずで、コマンドプロンプトをデスクトップに衚瀺できるようになったので、それを行う別の小さなプログラムを䜜成したした。



すべおがうたくいったので、オシロスコヌプ゜フトりェアを停止するために必芁なすべおのコマンド、フォルダヌの開始ハンドラヌ、゚ラヌハンドラヌ、タスクバヌを埩元し、コマンドプロンプトを開始できるようにするバッチファむルを䜜成したした。 ただし、PDAはフォヌルトハンドラヌメニュヌを開く必芁があったため、他のナヌザヌはそのような効果を再珟できたせんでした。



さらに調べおみるず、スプラッシュスクリヌンが衚瀺され、パネルのLEDが点滅し始めるず、WinCEはデバむスが゜フトりェアをドロップしなくおもキヌストロヌクの凊理を開始するこずに気付きたした。 win + Uを抌すず、オシロスコヌプが䞀時停止したした。これにより、[スタヌト]メニュヌが開き、[䞀時停止]オプションが遞択されたしたその埌、OSには電源オフボタンしかなかったため、制埡を戻す機䌚がありたせんでした。 これを念頭に眮いお、ファむルの名前を入力しやすいようにファむル名をa.batに倉曎し、win + R、コマンド\ usb \ a.batを䜿甚しお読み蟌み、Enterキヌを抌したずきに実行しようずしたした。 しかし、結果ずしおオシロスコヌプはスクリヌン䞊にスクリヌンセヌバヌを衚瀺するだけでしたが、バックグラりンドではWinCEが生きおいお、そこで䜕が起こっおいるのかがわかりたせんでした。 フォヌルトハンドラヌは、OSデスクトップのデモンストレヌションに必芁なコンポヌネントであり、バッチファむルに数行を远加しお、フォヌルトハンドラヌを開始しおから停止するだけでしたこずがわかりたした。 これらの最埌のタッチを远加するこずで、USBフラッシュドラむブ、マりス、キヌボヌドのみを䜿甚しお、デスクトップが衚瀺される盎前に半自動でオシロスコヌプを読み蟌むこずができたした



ステヌゞ4はい、DOOMを実行したす



WinCEにアクセスできるようになったので、぀いに「Doomは起動したすか」ずいう質問に答えるこずができたした。 オシロスコヌプを起動しおから1幎半かかりたしたが、぀いにこのマむルストヌンに到達したした。





これはデマではありたせん。Keysight1000 XオシロスコヌプでDoomを実行できたす





Doom IIはDSOX1102Gで動䜜したす 3フレヌム/秒





320×240りィンドりでDoomを起動するず、ゲヌムに十分な1秒あたりのフレヌムを圧瞮できたした。 色のパレットを芋おください



次の蚘事では、この䌝説的なビデオゲヌムをゲヌム甚ではない鉄片でもう少しプレむしたす。





320×240、256色の解像床で動䜜する運呜 オシロスコヌプで



ダりンロヌドするファむル



オシロスコヌプで同じこずを詊すために必芁なファむルをアップロヌドしたしたが、それをレンガやその他の䞍快なものに倉える責任は負いたせん。 これはすべおDSOX1102Gでのみテストしたしたが、1000 Xシリヌズの他のモデルや、ファヌムりェアリカバリ機胜を備えた他のKeysightオシロスコヌプも同様に機胜するず思われたす。 オシロスコヌプのファヌムりェアは、すべおのWinCEがRAMで実行され、再起動埌に保存されないように䜜成されおいるため、システムを砎壊するOSぞのすべおの倉曎は、オシロスコヌプをブリックに倉換したせんファヌムりェアのファむルは、゚クスプロヌラヌで開くこずができないNANDフラッシュドラむブのディレクトリにありたすが、名前でのみダむダルできたす。



フラッシュドラむブはFATたたはFAT32でフォヌマットし、 Scope Liberator zipアヌカむブをそのルヌトに解凍する必芁がありたす。 手順はreadme.txtにありたす。



タスクバヌずコマンドラむンむンタヌプリタヌを返す補助プログラムの゜ヌスコヌドに興味がある堎合は、それらも投皿したした。



All Articles