FMシリーズTIPS/プログラムリストを見る方法
市販ソフトの多くはBASICプログラムにプロテクトなどが掛けてあり、中身を見せないようにしてあります。これを回避する方法をいくつかご紹介します。
Pオプション解除
LIST
と入力してProtected Programが表示された場合は、SAVEコマンドでPオプションが指定されています。これを解除するには、$00D1番地に0を書き込めばOKです。ただしPOKE文が効かなくなっていますので、モニターから行ないます。すなわち、
MON
MD1
0
これでプロテクトは解除されます。
ソフトによっては、MONコマンドを使えないようにしてあるものもあるかと思います。この場合は、あらかじめ
SAVEM"filename",&HD1,&HD1,&HD1
として$00D1番地をSAVEしておき、目的のプログラムをLOADしたあとに
LOADM"filename"
で読み込めば解除されます。
UNLIST解除
プログラムはロードされているのにLIST
で何も表示されない場合は、UNLISTが掛けられている可能性が高いです。これを解除するには、$01E7番地と$01E8番地にそれぞれ$FF(255)を書き込めばOKです。
POKE &H1E7,255:POKE &H1E8,255
もちろんモニターから行なっても構いません。
RENUMで解除
通常、F-BASICで使える行番号は63999までですが、テクスト領域を直接書き換えて64000以上の行番号を持たせ、LISTコマンドでは表示させないというテクニックを使っているソフトがあります。この場合は、
RENUM
でリナンバーをかければ正常に表示されます。
コントロールコードを解除
コントロールコードを使い、表示色を黒にしてリストを見せなくしているソフトの場合は、
LIST"SCRN:
で表示されます。