ダンプリスト入力用のツール(DumpListEditor)

→  ダンプリスト入力
→  昔のテープからのゲーム取り出し
→  PasocomMiniで音楽を楽しむ(New!!)
→  ラリーXに音楽をつけるの巻(New!!)
→  ゲーム改造
→  E-mail















Yahoo!ジオシティーズ
→ Home    → Emulator    → AutoStart    → Software    → Download    → Link

目次

 

はじめに ダンプリスト入力用のツールについて

作業1 OCR入力

作業2 ダンプリストの縦横チェックサムを合わせる

作業3 BASICのグラフィックキャラクタ入力

作業4 マシン語とBASICを1つにまとめる

新機能1 wavファイルの入出力(カセットテープからのゲーム抽出)

新機能2 PC-6001用ゲームの入力

新機能3 MZ-80K用ゲームの入力

新機能4 MSX/ぴゅう太/FM-7/X1/MZ-80B用ゲームの入力(テスト運用中)

新機能5 データチェック/入力、視線移動軽減機能

新機能6 patch機能(ゲーム改造)

新機能7 n80ファイルおまとめ機能

新機能8 逆アセンブルリスト整形サポート機能(New!!)

新機能9 ダンプリストの自動修正機能(New!!)

制限 DumpListEditorは、まだ作り中です

謝辞

   

ダンプリスト入力用のツールについて

 

 最近はOCRの性能が上がって、ダンプリスト入力(マシン語ゲームの入力)が非常に楽になりました。ただ、やっぱり間違いはあるので、 チェックサムを計算して修正作業は人間の手で必要です。

エミュ上でチェックサムを計算して、仮想プリンタに印刷してと、行ったり来たりの部分を効率化したいと考えてツールを作ってみました。

このツールを使うと、Windows上だけで、サムチェック、修正、cmt/t88/d88/p6t/mzt/cas/l3/pbf/wavファイル作成までができるようになります。

 

DumpListEditorのダウンロードはこちらから(PC-6001、MZ-80K、MSXにも対応しました)

 

作業1 OCR入力

 

 最初、Googleドライブ(詳しくは、ここなど)のOCR機能を使うことを考えていたのですが、普通の文の認識率はすごいのですが、ダンプリストの認識となるとなかなか厳しいようです。(文字種を16進で使う文字に制限できれば、良いと思うのですが、やり方がわかりませんでした。)

今は、下記の2つをメインに使わせていただいてます。この部分は、例によって他力本願モードです。

 

1.読取革命Lite

 こちらは、昔のキヤノン製スキャナとスキャナ機能付きプリンタに無料でついていたものです。今は、読取革命(有料版)がPanasonicから購入可能です(1週間の無料お試し版もあります)。

いくつか使うのにコツがありますが、言葉では説明しにくいので、動画を作ってみました。最初から領域を手動で設定して、文字種を制限してしまうのが良いです。

間違った文字を修正する時に、同じ文字をまとめて修正できるのは、とても使いやすいと思います。動画では、1ブロック分だけの認識をさせていますが、1ページ分まとめて認識可能です。アドレスの順番になるように、2列とか3列とか順番に領域指定していって下さい。

 

2.ProgramListOCR(808 Midway様)

 PC-6001のプログラム入力用ということで、P6X-BASICとダンプリストの2つのモードがあります。PC-6001用のツールなのですが、PC-8001用のダンプリスト入力でもそのまま使えます。作者様によるProgramListOCR自体の記事はこちらにあります

画面の解像度などをぴったり合わせた時の性能は、ものすごいので、ありがたく使わせていただきましょう。とりあえずResolutionを600に変換しておくと、認識時間は増えますが安定して認識できるように感じます(元が300dpiの画像データでも、認識前にResolutionに600と入力する)。使い方は、読取革命Liteと同様ですので、今まで読取革命を使っていた人なら、すぐに使えると思います。

ちなみに、BASICのOCR入力に関しては、このProgramListOCRの一択だと思います。BASICコマンド部分はほとんど完璧に認識されます。N-BASICでも問題なく使えてます。→動画

 

作業2 ダンプリストの縦横チェックサムを合わせる

 

 ダンプリストのOCR結果が得られたら、OCR上でコピーして、DumpListEditorのダンプリストエリアに貼り付けます(チェックサムの部分もそのまま貼り付けて下さい)。

まずは、[チェック!]ボタンを押して下さい。問題がありそうな場所に色が付きます。エラーごとの数も表示されますので、それもヒントにして下さい。

 

 

最初は、ADRS(ADD)、SUMなどのキーワード部分を修正して下さい(ここが間違っていると構造が解析できません)。

次にアドレスエラーを修正してしまい(右クリック→「アドレス自動補正」を使うと楽です)、その後に、赤くなっている文字や、縦横チェックサムエラー(ピンク色)の交点になる場所のデータを修正していきます。OCR認識のため、チェックサム部分側が間違っている可能性もありますので、ご注意下さい。こちらも説明が難しいので、動画をご覧下さい

 

チェックサムを合わせていく作業は、結局、リストと画面を繰り返し見比べることにはなるのですが、数独パズルみたいで楽しい作業になります。また、誤認識パターンがわかってきたら置換機能を使って一気に修正してしまうことも可能です。ただ、データが消えてしまわないように、作業中はファイル書き込みやメモリ書き込みをこまめにして下さい。

 

修正と[チェック!]を繰り返し、最終的に、全てのエラーが0になったら完成です。[ファイル]メニューから、cmtファイルやd88ファイルに書き出して下さい。この際に、ファンクションキーを使った自動実行データを追加することが可能です。

 

なお、d88ファイルへの書き出しには、元のファイル(プログラムローダの入ったd88ファイル)が必要です。Thunderboltさん作成のDash-80を使わせていただきましょう。「Dash-80_10b1.d88」をDumpListEditorと同じフォルダに置いて下さい。ダウンロードは、Retro Computer Peopleから展示場→レトロプログラムのフロアと進んで下さい。Thunderbolt様のご厚意により同じものがダウンロードコーナーからもダウンロード可能です。

 

作業3 BASICのグラフィックキャラクタ入力

 

 ProgramListOCRのBASICプログラムの認識性能がすごいので、BASICもOCRで入力してしまいましょう。こちらは、最後に、コメント部分やグラフィックキャラクタの修正が必要になります。

ということで、DumpListEditorと言いながら、BASIC入力用画面も作ってあります。この画面では、PC-8001のグラフィックキャラクタの表示&入力が可能です。

OCR結果をコピペしたら、「編集」「変換」「コード補正」をして下さい(右クリックメニューも可)。カタカナなど極力近いフォントに変換します。また、右クリックメニューから空行の削除などもできます。

 

準備として、N-Font(Windows上でPC-8001のグラフィックキャラクタを表示できるフォント)をインストールして下さい。インストールしないと使えません(表示できません)。ニコ動のへたれパッチで有名なモ〜リンさんから公開されていますのでありがたく使わせていただきましょう。Out of STANDARDさん燕風さんの二ヶ所で公開されています。

(2019/6/2追記)PC-6001にも対応しました。BASICの入力&表示には、P6-Fontが必要です。Hashi's HomePage様(P6プログラムのダウンロード)からインストールをお願いします。

(2019/7/3追記)MZ-80Kにも対応しました。DumpListEditorに同梱している2つのフォントをインストールしてください。

 

 

基本的に右上の「記号入力」「カナ入力」パネルから文字入力可能ですが、キーボードから記号やカタカナを入力した後(MS Gothicに切り替えないと見えてませんが)、[コード補正]ボタンで変換しても良いです。ALTキーを使って入力することも可能です(DLEキー配列.pdf)。

こちらも全て入力し終わったら、cmt/d88/n80/p6t/mztファイルに書き出すことが可能です(この時点で、それぞれの機種に対応した中間言語に変換されます)。

 

作業4 マシン語とBASICを1つにまとめる

 

 当時は、BASICとマシン語を組み合わせたゲームが多かったです(BASICは単に画面設定だけというのも多かったですが)。cmtファイルの追記モードで対応可能なのですが、面倒なので、複数のファイルを整理できる画面も作りました。

この画面では、テキスト入力部分に、cmtファイル/BASファイル/BINファイルを直接ドラッグ&ドロップすることが可能です(フォルダからコピペしたり、ファイル読み込みメニューを使っても良いです)。また、「マシン語入力」「BASIC入力」画面から、[ファイル整理画面にPaste]ボタンでファイルを直接追加することも可能です。

順番に並べた状態で、cmt/d88/n80/p6t/mztファイル書き出しを行って下さい。

 

 

逆に、テキスト入力部分以外(ボタンの並んでいるエリア)にcmt/d88/p6t/mztファイルをドロップすると、中身がテキスト入力部分に出てくるようになっています。さらに、BASファイルの中身を見たい時には、[選択BASファイルをBASIC入力画面に送る]ボタンを押して下さい(2番目以降のBASファイルを見たい時には、ファイルを選択してからボタンを押して下さい)。すでにあるd88ファイルの中身の確認などにも使えると思います。

 

また、同じやり方で、cmtファイル/binファイルの連結や、マルチボリュームd88ファイルの分解&結合も可能です。

 

視線移動軽減機能(1行入力するごとにWindowが移動していきます)

 

 I/O形式の縦横チェックサムだと、間違い位置が簡単に特定できるのですが、横だけのチェックサムだと、結局、すべてのデータの確認が必要です。さらに、128バイト単位のチェックサムだったりすると、誤りを見つけるのもかなり大変で、入力しなおしてしまったほうが早いぐらいです。

ということで、ver0.09からデータ確認およびデータ入力時に、視線移動を最小にする機能を追加しました。

まず、ダンプリストの画像を表示して、その上にDumpListEditorを1行だけの表示にして載せて下さい。

画像と同じ文字間隔になるように、DumpListEditorのフォントサイズを調整します(CTRL+マウスホイールが便利です)。

画像のすぐ上側にDumpListEditorを置いて、両方を同時に見られるようにします。「設定」「共通設定」で「ステータスバー」のチェックをはずして、ぎりぎりまで近づけます。

 

(ProgramListOCRの上にDumpListEditorを載せた例)

ProgramListOCRは角度を微調整できるので便利です。

 

エラーが多い場合や手入力をする場合には、window自動移動の2つのチェックをオンにして、行移動に伴い自動的にwindowを移動するようにすると便利です。移動量はフォントの大きさに応じて、調整して下さい

 

 

実際の動きは、こちらの動画をご覧ください。ダンプリストを見ながらマシン語を手入力した後に、マシン語の修正を行っています。

 

PC-6001用ゲームを入力する

 

 ver0.07からPC-6001に対応しました。作業開始時に、モデルのリストからPC-6001を選択してください。フォントの設定や右上パネルのTAB最適化が行われます。

グラフィックキャラクタの表示には、P6-Fontが必要です。Hashi's HomePage様(P6プログラムのダウンロード)からインストールをお願いします。

 

 

PC-6001のマシン語の場合、チェックサムとして縦横チェックサム(I/O形式)はあまり使われていないようです。チェックサム形式のリストから、「横8列」などを選択してからお使い下さい。

PC-6001系の場合、起動後のBASICモードやページ数の入力が面倒です。「設定」「p6t出力設定」で、設定してからp6tファイルを書き出すことで、pc6001v.exeなどのエミュレータで自動で入力されるようになります。

 

 

すでに打ち込み済のゲームでも、ファイル整理画面に切り替えてから、「ファイル」「p6t(p6,cas)ファイル読み込み&ファイル抽出」で読み込んだ後(「Drag&Dropエリアはこのあたりに」へのDropでも可)、BASICモードや自動実行を設定してから、再度書き出すことで、自動化が可能です。

BASICプログラムがある場合には、「BASIC入力画面に送る」で、BASICプログラムをP6-Fontで閲覧できます。もちろん、BASICの修正もできます(修正後は、「ファイル整理画面にPaste」でファイル整理画面に戻して下さい)。

 

その他、PC-6001独自の作業については、下記にまとめます。

  ・p6,cas,p6tファイルからオートスタートp6tファイルの作成方法

  ・p6tファイルからオートスタートd88ファイルの作成方法(工事中)

 

PC-6001ユーザー様の声Ren様Blogより

 

MZ-80K用ゲームを入力する

 

 ver0.09からMZ-80Kに対応しました。作業開始時に、モデルのリストからMZ-80Kを選択してください。フォントの設定や右上パネルのTAB最適化が行われます。

グラフィックキャラクタの表示には、MZ-Fontのインストールが必要です。Windows用のMZフォントが見つからなかったので、自分で作りました。DumpListEditorに同梱しておきますので、2つのフォント(MZ-FontとMZ-Font-Symbol)をインストールしてお使い下さい。

38年前に買った本(マイコン別冊MZ-80活用研究)のBASICゲームを全部入力してみました。25行の制限なくプログラムを自由にスクロールできるのは感動です。こちらに動画を置いておきます

 

 

グラフィックキャラの入力は、右上パネルの「記号」と「MZ記号」をお使い下さい。キーボードから入力することも可能です(DLEキー配列.pdfのMZ-80Kモードを参考にして下さい)。

 

 

MZ-80Kの場合、チェックサムとして縦横チェックサム(I/O形式)はあまり使われていないようです。チェックサム形式のリストから、「128バイトサム(横16)」などを選択してからお使い下さい。

すでに打ち込み済のゲームに対しても、自動スタートなどの設定が可能です。ファイル整理画面に切り替えてから、「ファイル」「mzt(mzf,m12)ファイル読み込み&ファイル抽出」で読み込んだ後(「Drag&Dropエリアはこのあたりに」へのDropでも可)、「設定」「mzt出力設定」で、autostartフラグを設定してから、書き出して下さい。

BASICプログラムがある場合には、「BASIC入力画面に送る」で、BASICプログラムをMZ-Fontで閲覧できます。もちろん、BASICの修正もできます(修正後は、「ファイル整理画面にPaste」でファイル整理画面に戻して下さい)。

 

MZ-80KのBASICゲームの場合、BASICシステムのロードとBASICプログラムのロードで2回のロードが必要です(さすがクリーンコンピュータ)。いろいろ面倒なので、無理やりですが、自動化を試みています。

起動直後のLOADまたはLの入力を省略する方法(ipl.romの改造)がこちらの動画にありますので興味がある方はご覧下さい。NEWMON.ROMを逆アセンブルして、一か所修正してから、ヘッダ無しバイナリファイルとして書き出しています。

ロードを一回で済ますには、「設定」「mzt出力設定」「BASICシステムファイルとプログラムを結合して一度にLOADする(旧SP-5030のみ対応)」をチェックして下さい。DumpListEditorと同じフォルダに「SP-5030.mzt」が存在すればそれと結合して保存されます。(Enriさんの解析情報に従いワークエリアを設定していますので、それ以外のバージョンでは動かないと思います)。

さらに、「SP-5030を改造して自動RUN」をチェックすると、LOAD後自動でRUNが実行されるようにSP-5030自体を強引に書き換えてから保存します。ちなみに、STOPキーはきかなくなります(STOPしてもすぐに自動でRUNされてしまう)。

 

 

その他、MZ-80K独自の作業については、下記にまとめます。

  ・FORMコンパイラ用ゲームの入力方法

 

(2021/2/21追記)

BASICコンパイラを使うと、MZ-80K実機を持っていない人もゲームを楽しむことができます。

  ・AKDさんの記事がとてもわかりやすいです。

 

MSX/ぴゅう太/FM-7/X1/MZ-80Bへの対応(New!!)

 

現在、各モデルへの対応を進めています。

MSX使いの方は、こちらのページをご覧下さい。

ぴゅう太使いの方は、こちらのページをご覧下さい。

FM-7使いの方は、こちらのページをご覧下さい。

パソコンTV X1使いの方は、こちらのページをご覧下さい。

MZ-80B使いの方は、こちらのページをご覧下さい。

 

wavファイルの入出力(カセットテープからのゲーム抽出)

 

 ver0.18からwavファイルの入出力に対応しました。

昔、録音したカセットテープをwavファイル化することで、エミュで遊べるようになります。

やり方を、こちらのページにまとめました。

 

patch機能(ゲーム改造)

 

 ver0.25からpatchファイルを使用して、改造が簡単にできるようになりました。

実際に改造するアドレスのサーチについては、こちらのページなどを参考にして下さい

patchファイルは、拡張子が「.patch」のテキストファイルです。例えば、D000番地の値をC9に書き換えたい時には、D000=C9と書いて下さい。

 

【使い方1】

「ファイル整理画面」にpatchファイルを一緒に置いて下さい(複数patchファイル可能)。

この状態で、cmt/t88/d88/n80ファイルを書出すと、各ファイルにpatchが当たります。

 

【使い方2】

cmt/d88/n80ファイルを作成後の場合には、「ファイル整理」画面を開き、cmt/d88/n80ファイルをそのまま、置いて下さい。

 

【注意1】

cmt/t88ファイル:中に入っているBASICとマシン語に対して、指定したアドレスを書き換えます。特殊なフォーマットについては未対応です。

d88ファイル:指定したアドレスは、d88ファイル内でのバイト位置になります(PC-8001上のアドレスとは異なります)。パターンサーチで位置を特定して下さい。

【注意2】

このパッチ機能は、アドレスを指定してデータを上書きするだけです。ファイルサイズは変わりませんのでご注意下さい(BASICの行を追加したりはできません)。

 

パッチの書き方しだいで、パターンサーチやBASIC中間コード書き換え、文字コード書き換えなどもできます。詳しくは、readme_dle.txtをご確認下さい(「patch」でサーチ)。

「BASIC入力画面」で、言語を「Patch File」に切り替えるとサンプルが表示されます。不要な部分を削除して[ファイル整理画面にPaste]ボタンを押すことで、すぐにpatchファイルを作ることができます。

 

◆パッチサンプル

 ・サブマリン(今風太様配布中)→無敵パッチ無敵パッチ(d88用)patchファイル

 ・ラリーX(I/O 1982年5月号)→車100台パッチpatchファイル

 ・パックマン(I/O 1981年4月号)→パックマン減らないパッチpatchファイル

 

n80ファイルおまとめ機能

 

 ver0.26からn80ファイルのおまとめ機能に対応しました(ver0.25で入れたつもりがバグで動いていなかった...)。

n80ファイルを丸ごとd88/cmtファイルに変換できます。また、1枚のd88ファイルに9つまでのn80ファイルを格納できます。2つ以上のn80ファイルを格納した際には、起動時にゲーム選択メニューが表示されます。

cmtファイルにも同様に9つまでのn80ファイルを格納できます。こちらは実機ではとても遅いので、PascomMiniを含めたエミュレータでの使用がメインになると思います。

 

n80ファイルからd88/cmtファイルへの形式変換や、複数のゲームをまとめてPasocomMiniに持っていきたい時などにお使い下さい。また、特定のタイミングで書出したn80ファイルの状態を、d88/cmtファイルから再開できるようになります。例えば、ベーマガゲームのマシン語展開後のタイミングでn80ファイルを書出しておくことにより、ゲーム起動の高速化などが可能になります。

 

※n80ファイルは、エミュレータN80用のイメージファイルで、メモリ($8000〜$FF3C)とSP情報を書き出したものです。こちら(N80解體新書様)に詳細情報があります。DumpListEditorを使えば、オートスタート対応のn80ファイルを作成可能です。「設定」「n80出力設定」で設定後、[n80書出し]して下さい。

 

 

(パックの仕方)

n80ファイル(複数可)をDumpListEditorにDropすると、「ファイル整理画面」にn80ファイルが並びます。

この状態で、[d88書出し]や[cmt書出し]を行うことで、n80ファイル入りd88/cmtファイルが作成できます。

 

 

d88ファイル書出しの場合には、設定されている機種(モデル)によって、動作が異なります。

・PC-8001:使ってなさそうな255バイトを選んで、そこにDiskロードプログラムを置きます。その部分にはn80ファイルのロードはされません。

・PC-8001mkII:一時バッファとして拡張メモリ部分を使うので、n80ファイル丸ごとロードが可能です。独自ローダーを使います。PC-8001mkIIのN-BASIC用です。

・PC-8801:一時バッファとしてG-VRAM部分を使うので、n80ファイル丸ごとロードが可能です。Dash-80を使ったロードになります。PC-8801のN-BASIC用です。

 

cmtファイルの場合には、機種設定によらず、FF40番地以降のメモリにTapeロードプログラムを配置しますので、n80ファイル丸ごとロードが可能です。

 

実際のファイル作成処理には、t88tool.exeの機能を呼び出しています(DumpListEditor.exeと同じフォルダに同梱のt88tool.exeを置いて下さい)。

 

n80ファイルに戻したい時には、d88/cmtファイルをボタンが並んでエリアにDropして下さい。n80ファイルがバラバラになって出てきます。

 

◆サンプル

今まで公開してきたPCG音楽のn80ファイルをさらにまとめて、1つのcmt/d88ファイルになりました。このcmtファイル1つだけPasocomMiniのpcmフォルダに入れておけば、全曲聞けます。

 →全曲入りcmtファイル全曲入りd88ファイル

 

逆アセンブルリストの整形補助機能

 

 ver0.27から逆アセンブルリストの整形に便利な機能(ラベル自動生成、表示形式変換、ラベル検索/置換機能)がつきました。

ICE WORLD 2の逆アセンブルのために作ったのですが、けっこう便利だったので公開します。特に、コードとワークエリアが交互に入っているようなプログラムを逆アセンブルすると、命令の分割を間違てしまうことがあるのですが、ラベルをヒントに一部分の逆アセンブル作業を何回もやり直していくことが可能になります。

 

(整形の仕方)

「アセンブラ入力」画面の「逆Asmリスト整形」にチェックをつけると、下記のボタンが現れます(「ファイル整理画面」から「アセンブラ入力」画面に送った場合には自動で出現)。

 

◆ラベル自動生成機能

[Jumpラベル作成]:ジャンプ先のラベルを生成します。

   ラベルの先頭文字でジャンプの種類がわかるので、構造が見えてきます。

    J:前方ジャンプ(Jump)

    L:後方ジャンプ(Loop)

    S:サブルーチン(Sub)

[Workラベル作成]:ワークエリア用のラベルを生成します。

    W:ワークエリア(Work)

 

◆表示形式切替(選択エリアの表示形式を切り替えます)

[ニーモニック形式]:ニーモニック形式で表示しなおします。

[DB形式(8個)]:DB命令のテーブル形式で形式で表示しなおします(8個ずつ)。

[DB形式(1個)]:1バイトずつバラバラにします(ラベルが確実に付きます)。

 

◆ラベル検索/置換機能(よりわかりやすいラベルに変換したい人用)

[単語検索↓]:カーソル位置の単語を前方検索します(検索パネルに単語を自動設定)。

[単語検索↑]:カーソル位置の単語を後方検索します(検索パネルに単語を自動設定)。

[単語置換]:カーソル位置の単語を置換します(置換パネルに単語を自動設定)。

 

最後に、[Skip桁削除]ボタンで、行頭の16進表示を削除すれば、通常のアセンブラで使えるソースコードになると思います。ただし、16進表示を削除してしまうと、以降、逆アセンブルのやり直しはできなくなるので、最後にお使い下さい

 

小さくて見にくいですが動画を置いておきます。サンプルソースをアセンブルして、逆アセンブルして上記のボタンを使いながら元のソースに戻そうとしています(わざと途中にデータを置いて、最初は逆アセンブルが失敗するような例になっています)。

 

 

ダンプリストの自動修正機能

 

 ver0.28からダンプリストの自動修正用に3つのボタン(ガイド行自動検出、アドレス自動補正、ブロック内自動修正)を追加しました。

誤り個所が少ない場合には、ほぼ自動で修正ができると思います。

 

◆ガイド行自動検出

 「ADRS : +0 +1 +2 +3 +4…」といった部分は16進数ではないので、正しく認識できません。この部分は、データには何も関係ないので無視するようにしました(頭に「----」をつけて罫線行扱いにしています)。

 

◆アドレス自動補正

 前後のアドレスから明らかにおかしい部分を見つけて修正します。

   9000 : ...

   9010 : ...

   9050 : ... ←ここだけおかしい!

   9030 : ...

   9040 : ...

誤りの数がある程度少ない場合には、ボタンを押すごとにアドレス誤り数がどんどん減っていくと思います。誤りの数が多い場合にはちょっと厳しいです。誤りに挟まれた正しいアドレスのほうが修正されてしまうこともあります。

ブロックまとめて、誤認識してしまっているような場合には、[先頭文字列置換]ボタンを付けましたので、一括で修正してしまって下さい。

 

◆ブロック内自動修正

 内藤様のアイディアを実現したものです。縦横チェック形式(I/O形式、MACINTO-C形式)の時に、1ブロックに1つだけの間違いであれば、自動的に修正します。

ブロックごとに確認画面がでますので、がんばってるなと思いつつ「はい」を押して下さい。

レアケースですが、縦サム、横サム、ブロックサムの3つのほうが同じだけずれると、誤修正の可能性があります。が、通常は無視して良いと思います。

 

 

本を分解してゆがみなくスキャンしたのち、ProgramListOCRの認識結果(角度をちょっと合わせて、Resolution=600に設定したくらい)を使うことで、ほぼほぼ全自動で行けました。(フォントや印刷状態にもよります。白黒コピーだと解像度が足りないかも知れません)。全自動でなくても、いつもチクチク修正していた作業が自動化されるので、かなりの手間が省けると思います。

 

※本を分解するつもりはないのですが、糊が古くなっているのかコピー機にぎゅっと押し付けるだけで、ページがバラバラになっていってしまいます(T_T)

 

 

制限 DumpListEditorは、まだ作り中です

 

 まだ、作り中なので、PC-8801などはほとんど対応できていません。d88ファイルのフォーマットもDISK-BASICとCP/Mのみ解析可能です。

 

また、このツールで生成したBASIC中間言語で、浮動小数点の下位のほうのビットが実際の中間言語と異なっています(C#の仮数部がN-BASICより3ビット少ないためです)。精度が重要なプログラムの場合には、テキストファイルの状態でエミュに流し込んで下さい(普通にゲームをする分には、全然問題ありません)。

 

DumpListEditorのダウンロードはこちらから

使ってみて何かありましたら、メールでご連絡いただけるとうれしいです。ご要望等についてもできる範囲で対応したいと思います。

 

謝辞

 

下記のツール/情報を使わせていただきました。いつもありがとうございます。

 

eighttails様(ProgramListOCR作成&公開)

モ〜リン様(N-Font作成&公開)

Hashi様(P6-Font作成&公開)

HAL 8999様(j80作成&公開、PC-8001発掘隊運営、N-Font公開場所提供)

燕風様(N-Font公開場所提供)

Thunderbolt様(Dash-80作成&公開、BASIC中間言語コード情報公開)

おにたま放送局様(ALPHA-MINI DOS作成&公開)

P6つくろうブログ様(PC-6001ディスク情報公開)

Enri様(MZフォント画像公開、SP-1002、SP-5030解析情報公開)

きらびぃ様(OCR実践例のtweet)

久保ちゃん様(DumpListEditor試用&改善提案)

内藤時浩様(ブロック内エラー自動補正機能提案)

秋川藤志様(MACINTO-C形式のCRC情報公開)

諏訪工房様(MZ-80K/C用BASICコンパイラの開発&公開)

AKD様(MZ-80K/C用BASICコンパイラの布教活動&わかりやすい説明ページ公開)

ごりぽん様(MSX-BASIC対応のご注文

Takashi Kobayashi様(MSXフォント情報提供)

にゃごす様(MSX情報wiki公開)

1re1様MSXPenの入力情報提供)

反動様(MSXゲームの実況、MSXPen上でのゲーム作成)