[nes-dev] nlgen - ネームリスト生成(NameList GENerator)



nes-devの6502ToolのWindows用コマンドラインツール「nlgen」(11.4KB)の説明の日本語訳です。

■名前
nlgen - ネームリスト生成(NameList GENerator)

■著作権
Derek Andrews <derek.george.andrews@gmail.com>
Copyright (C) 2010, All Rights Reserved.


■説明
「nlgen」は、CA65/LD65リスティングとマップファイルを、エミュレータ「FCEUXDSP 1.07」で使えるネームリストファイルに変換するプログラムである。このツールを作った目的は、FCEUXDSPのデバッガを使うときに、セグメントの中に書かれた自分のラベルやコメントを見るためである。

-nl NAMELIST_KEY SEGMENT_NAME SEGMENT_ADDRESS
ネームリストファイルを書き込むセグメントを指定する。
NAMELIST_KEYは、ramか10進数
SEGMENT_NAMEは、プロジェクトに存在しなければならない
SEGMENT_ADDRESSは、4桁の16進数のベースアドレス。

-lst NAMELIST_FILE_PATH
読み込むネームリストファイルのパスを指定する。
カレントディレクトリからの相対パスで、いくつかのlstファイルをまとめて指定できる。

-map MAP_FILE_PATH
読み込むマップファイルを指定する(必須のオプション)。

-rom OUTPUT_FILE_PATH
ROMの名前を指定する(例えば game.nes)。

使用例
nlgen -rom nomolos.nes -nl ram ZEROPAGE 0000 -nl ram STACK 0100 -nl ram BSS 0200 -nl 0 ROM0 8000 -nl 1 ROM1 8000 -nl 2 ROM2 8000 -nl 7 CODE C000 -map nomolos.map -lst src/nomolos.lst -lst src/nomolosLogic.lst -lst src/rom0.lst -lst src/rom1.lst -lst src/rom2.lst -lst src/chrrom0.lst -lst src/chrrom1.lst -lst src/chrrom2.lst -lst src/chrrom3.lst -lst src/loadLevelState.lst -lst src/playLevelState.lst -lst src/levelOutState.lst -lst src/levelInState.lst -lst src/gameOverState.lst -lst src/titleState.lst -lst src/map.lst -lst src/camera.lst -lst src/sprite.lst -lst src/entity.lst -lst src/controller.lst -lst src/sound.lst -lst src/geotests.lst -lst src/zp.lst -lst src/mapper.lst -lst src/ppu.lst -lst src/gameUIData.lst -lst src/levelDataIndex.lst

■コンパイル
ソースコード「nlgen.cs」はMirosoft Visual C# with .NET 2.0 でコンパイルされる。C++/Boostでの書き直しも試したが、正規表現ライブラリのパフォーマンスが遅かったのでやめた。