2021年12月30日のブックマーク (1件)

  • ドラゴンクエスト3 ファミリーベーシック任意コード新チャートについて - ピロ彦の何か置き場

    アーカイブはこちらから www.twitch.tv youtu.be ファミコンは電源を入れたままカセットを抜くと、 通常はROMが読み込めなくなってプログラムが動作しなくなる。 しかし、『メモリ上の』プログラムを無限ループで実行している間は ファミコンのカセットを抜いてもCPUは動作し続けているので 別のカセットに差し替えてもコードが実行され続けることになる。 ファミリーベーシックにはファミコンのバイナリーコード(ネイティブコード)を 実行できる『CALL命令』があるため、ファミべ上で任意コード実行することは容易である。 $0300-$03FFには1行分のプログラムバッファが格納されるので CALL773'~というコードを入れてReturnキーかF8を押すと、メモリアドレス$0305(773) つまり「'」以降の文字がバイナリコードとして実行される。 しかし、メモリ上に無限ループを作って

    ドラゴンクエスト3 ファミリーベーシック任意コード新チャートについて - ピロ彦の何か置き場
    maruguu
    maruguu 2021/12/30
    “『メモリ上の』プログラムを無限ループで実行している間はファミコンのカセットを抜いてもCPUは動作し続けているので別のカセットに差し替えてもコードが実行され続ける”なるほど?