mieki256's diary



2022/10/16() [n年前の日記]

#1 [pc][mz][z80] Program List OCRを試用

大昔のPC雑誌には、プログラムがダンプリストの形で掲載されていたわけだけど。とある雑誌の誌面を眺めていたら、そこに掲載されてるプログラムが気になってきた。ちょっと動作確認してみたい。しかし、今時ダンプリストを手打ちするなんて、あまりにもナンセンスだよな…。

ちなみに、ダンプリストと言うのは、16進数の文字列がずらずらと並んだリストのこと。1行に、アドレス、データ(8byte や 16byteが多い)、チェックサムが並んでいるもの。

さておき、ダンプリスト入力を OCRでどうにかしてる事例はないのだろうかとググったところ、Program List OCR というOCRソフトの存在を知った。

_ダウンロードのページ: 808 Midway
_eighttails/ProgramListOCR: OCR suite specialized for printed program listing (BASIC and HEX)
_Program List OCR 1.0.0リリース!: 808 Midway
_Program List OCRができるまで: 808 Midway
_雑誌掲載リストの打ち込みを攻略? - レトロゲーム攻略
_OCRソフトでダンプリストを読み取る

オープンソースのOCRエンジン Tesseract と、GUIラッパー gImageReader、加えて、ダンプリストの文字認識に特化した学習データで作られているらしい。なんだか良さそう。興味が湧いたので試用してみた。環境は Windows10 x64 21H2。

ProgramListOCRSetup-64bit-1.7.2.exe を入手。実行してインストール。今回は D:\Prog\ProgramListOCR\ にインストールしてみた。


かなり高い精度で読み取ってくれた。素晴らしい…。もちろん、元画像が曲がっていたり、変形しちゃったりしていると、読み取りに失敗するけれど、ダンプリストを手打ちするより圧倒的に楽だなと…。

DumpListEditorを試用。 :

得られたダンプリスト相当のテキストに対して、チェックサムと照らし合わせて読み取りに失敗した部分を探したい。

前述の Program List OCR と組み合わせて、DumpListEditor というツールが利用されてる場合が多いらしいので、これも試用してみた。

_ダンプリスト入力用のツール(DumpListEditor) - PC-8001を懐かしむページ

DumpListEditorVer058.zip を入手して解凍。DumpListEditor.exe を実行すると起動する。

上のほうでレトロPCの機種名を選んで、「マシン語入力」タブで、ダンプリストの形式を選ぶ。昔は雑誌毎にダンプリストのフォーマットが違っていたのだけど、そのあたりも網羅してるらしい。

「マシン語入力」タブのエディタウインドウ内に、ダンプリスト相当のテキストを貼り付けて、左上の「チェック」ボタンをクリック。チェックサムと合ってない部分が色付け表示された。これは圧倒的に分かりやすい…。

MZ-700エミュレータ等で使える .mzt を出力することもできる模様。至れり尽くせり。素晴らしい。

動作確認。 :

前述のツール群を使って、とあるプログラムのダンプリストをバイナリにして、エミュレータで動かせるところまで持っていけるか試してみた。

出力した .mzt を、MZ-700エミュレータ EmuZ-700 に読み込ませて、画面が出るところまでは確認できた。カセットテープを利用することが前提なら、大丈夫そうだなと…。

しかし、X1エミュレータや、EmuZ-2200 で動かすことができない。ロードが終わると画面がピンク色になったり、フリーズした感じになる。もしかすると、BASICやS-OS上からプログラムをロードする場合と違って、電源ON直後からいきなりバイナリを読み込んで動かすためには、実機と一緒についてきた何かが必要になるのかもしれない。一応自分も、大昔、X1turboを使ってた身ではあるのだけど、当時のことはほとんど忘れてしまっている…。

以上、1 日分です。

過去ログ表示

Prev - 2022/10 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project