Defender II (USA)
Defender II (USA) は NROM の基板に載り、プログラムは 16,384 バイト。電源投入から 400 歩のクロールが、新しいコードを見つけた道筋を 45 本残した。それらを 27,325 フレームにわたって再生すると、プログラムのうち 8,161 バイト、50 パーセントが実行された。
規則が名付けたもの
- パッドの読み取り: 2
- フレーム待ち: 1
- 画面メモリへの書き手: 1
- パレットの書き手: 2
- スプライトの書き手: 15
- スクロールの書き手: 1
- 画面の分割: 1
- サウンドドライバ: 1
- 乱数のバイト: 2
- 二つのものを比べる所: 2
走行が入った 133 個のルーチン
ゲームのコードに入った場所のすべて。呼び出し、割り込み、テーブル経由のジャンプのどれかで入る。規則が名付けたものを先に、規則が見たものと一緒に並べる。
| 場所 | 入り方 | 回数 | 何であるか、その証拠 |
|---|---|---|---|
| $C40D | 呼び出し | 3,267,810 | 乱数のバイト: 走ったフレーム 16,690、バイト $001D,$001E,$001F,$0020,$0021,$0022,$0023,$0024,$0025,$0026,$0027、回転 11、排他的論理和 1 |
| $C59C | 呼び出し | 521,931 | 二つのものを比べる所: 命令 4、バイトの組 15、バイトの総数 15、比べた回数 3,953、横の位置のバイト $03C3,$03CD,$0583,$058D,$0683、縦の位置のバイト $001E,$03C1,$03CC,$0411,$042C,$0431,$0451,$04D1,$0581,$058C |
| $C47C | 呼び出し | 90,100 | スプライトの書き手: 走ったフレーム 7,326、スプライトのページへの書き込み 579,648 |
| $C448 | 呼び出し | 32,816 | パッドの読み取り: ポート $4016、一フレームの読み 8、一フレームのストローブ 0 パッドの読み取り: ポート $4017、一フレームの読み 8、一フレームのストローブ 0 |
| $D2CF | 呼び出し | 16,690 | 乱数のバイト: 走ったフレーム 16,690、バイト $0002、回転 2、排他的論理和 1 |
| $C120 | 呼び出し | 16,443 | パレットの書き手: 走ったフレーム 16,408、書き込み 98 スクロールの書き手: 走ったフレーム 16,408、ブランク中の書き込み 32,816 画面メモリへの書き手: 走ったフレーム 16,408、書き込み 35,506、ブランク中 35,226、描画中 280 |
| $F880 | 呼び出し | 16,402 | サウンドドライバ: 走ったフレーム 15,800、書き込み 32,803 |
| $CBD4 | 呼び出し | 16,401 | スプライトの書き手: 走ったフレーム 16,413、スプライトのページへの書き込み 1,719 |
| $DB46 | 呼び出し | 14,500 | 二つのものを比べる所: 命令 3、バイトの組 2、バイトの総数 3、比べた回数 25,005、縦の位置のバイト $03C1,$05A1,$05C1 |
| $E814 | 呼び出し | 7,565 | スプライトの書き手: 走ったフレーム 7,565、スプライトのページへの書き込み 99,610 |
| $D950 | 呼び出し | 7,250 | スプライトの書き手: 走ったフレーム 7,250、スプライトのページへの書き込み 448 |
| $DC7B | 呼び出し | 7,250 | スプライトの書き手: 走ったフレーム 7,250、スプライトのページへの書き込み 58,000 |
| $E029 | 呼び出し | 7,250 | スプライトの書き手: 走ったフレーム 7,250、スプライトのページへの書き込み 29,000 |
| $E7AA | 呼び出し | 7,250 | スプライトの書き手: 走ったフレーム 7,250、スプライトのページへの書き込み 72,500 |
| $DA1B | 呼び出し | 6,512 | スプライトの書き手: 走ったフレーム 407、スプライトのページへの書き込み 6,512 |
| $E9E6 | 呼び出し | 4,038 | スプライトの書き手: 走ったフレーム 673、スプライトのページへの書き込み 6,730 |
| $E9C7 | 呼び出し | 2,692 | スプライトの書き手: 走ったフレーム 673、スプライトのページへの書き込み 6,730 |
| $C603 | 呼び出し | 1,389 | スプライトの書き手: 走ったフレーム 789、スプライトのページへの書き込み 1,680 |
| $E9BA | 呼び出し | 1,041 | スプライトの書き手: 走ったフレーム 800、スプライトのページへの書き込み 12,492 |
| $CA8E | 呼び出し | 205 | スプライトの書き手: 走ったフレーム 205、スプライトのページへの書き込み 52,480 |
| $C0D7 | 呼び出し | 157 | パレットの書き手: 走ったフレーム 244、書き込み 2,860 画面の分割: 走ったフレーム 244、描画中のスクロール書き込み 314、描画中のステータス読み 2,794 |
| $C983 | 電源投入 | 45 | スプライトの書き手: 走ったフレーム 16,780、スプライトのページへの書き込み 11,520 |
| $CF50 | 呼び出し | 35 | スプライトの書き手: 走ったフレーム 70、スプライトのページへの書き込み 140 |
| $E76B | 呼び出し | 90,938 | |
| $DB1D | 呼び出し | 36,604 | |
| $DC17 | 呼び出し | 28,884 | |
| $CAA1 | 毎フレーム(NMI) | 16,690 | |
| $D6D8 | 呼び出し | 16,656 | |
| $C073 | 呼び出し | 16,408 | |
| $C087 | 呼び出し | 16,408 | |
| $C434 | 呼び出し | 16,408 | |
| $CEE8 | 呼び出し | 16,402 | |
| $FA4C | 呼び出し | 16,402 | |
| $C3CC | 呼び出し | 16,383 | |
| $E5A8 | 呼び出し | 14,761 | |
| $D73C | 呼び出し | 14,500 | |
| $D7EA | 呼び出し | 14,500 | |
| $DBF1 | 呼び出し | 14,500 | |
| $E31D | 呼び出し | 14,500 | |
| $D90D | 呼び出し | 9,724 | |
| $CE5B | 呼び出し | 7,727 | |
| $D1DD | 呼び出し | 7,608 | |
| $C144 | 呼び出し | 7,584 | |
| $CE1D | 呼び出し | 7,584 | |
| $D449 | 呼び出し | 7,583 | |
| $DEE9 | 呼び出し | 7,580 | |
| $CD4D | 呼び出し | 7,565 | |
| $E6D5 | 呼び出し | 7,322 | |
| $E6E1 | 呼び出し | 7,314 | |
| $E4D8 | 呼び出し | 7,259 | |
| $CD89 | 呼び出し | 7,250 | |
| $CF11 | 呼び出し | 7,250 | |
| $D098 | 呼び出し | 7,250 | |
| $D4E9 | 呼び出し | 7,250 | |
| $D5E8 | 呼び出し | 7,250 | |
| $D726 | 呼び出し | 7,250 | |
| $D7D0 | 呼び出し | 7,250 | |
| $D867 | 呼び出し | 7,250 | |
| $D8CD | 呼び出し | 7,250 | |
| $D91A | 呼び出し | 7,250 | |
| $DB2B | 呼び出し | 7,250 | |
| $DBC1 | 呼び出し | 7,250 | |
| $DC49 | 呼び出し | 7,250 | |
| $DC62 | 呼び出し | 7,250 | |
| $DCCA | 呼び出し | 7,250 | |
| $DE22 | 呼び出し | 7,250 | |
| $DE78 | 呼び出し | 7,250 | |
| $DE99 | 呼び出し | 7,250 | |
| $DEB3 | 呼び出し | 7,250 | |
| $DF77 | 呼び出し | 7,250 | |
| $DFC8 | 呼び出し | 7,250 | |
| $E046 | 呼び出し | 7,250 | |
| $E240 | 呼び出し | 7,250 | |
| $E306 | 呼び出し | 7,250 | |
| $E3D1 | 呼び出し | 7,250 | |
| $E47A | 呼び出し | 7,250 | |
| $E5C1 | 呼び出し | 7,250 | |
| $E611 | 呼び出し | 7,250 | |
| $E6BE | 呼び出し | 7,250 | |
| $E6F8 | 呼び出し | 7,250 | |
| $E888 | 呼び出し | 7,250 | |
| $F89C | 呼び出し | 1,895 | |
| $F8BD | 呼び出し | 1,751 | |
| $E45D | 呼び出し | 1,469 | |
| $F8F9 | 呼び出し | 1,330 | |
| $C24C | 呼び出し | 1,186 | |
| $DA03 | 呼び出し | 814 | |
| $F8D4 | 呼び出し | 716 | |
| $DBB2 | 呼び出し | 687 | |
| $F8D8 | 呼び出し | 614 | |
| $CE51 | 呼び出し | 606 | |
| $C092 | 呼び出し | 410 | |
| $C139 | 呼び出し | 315 | |
| $F8FF | 呼び出し | 250 | |
| $DA75 | 呼び出し | 168 | |
| $DA98 | 呼び出し | 168 | |
| $C346 | 呼び出し | 153 | |
| $C24E | 呼び出し | 104 | |
| $C324 | 呼び出し | 102 | |
| $C3E2 | 呼び出し | 98 | |
| $D6CC | 呼び出し | 98 | |
| $DAD9 | 呼び出し | 93 | |
| $DA8A | 呼び出し | 85 | |
| $D6EA | 呼び出し | 84 | |
| $F8DF | 呼び出し | 83 | |
| $D1A8 | 呼び出し | 82 | |
| $DAA7 | 呼び出し | 56 | |
| $DAB1 | 呼び出し | 56 | |
| $DABE | 呼び出し | 56 | |
| $F898 | 呼び出し | 56 | |
| $C177 | 呼び出し | 52 | |
| $C183 | 呼び出し | 52 | |
| $C303 | 呼び出し | 51 | |
| $D072 | 呼び出し | 35 | |
| $D17B | 呼び出し | 35 | |
| $DDD6 | 呼び出し | 30 | |
| $DE0E | 呼び出し | 30 | |
| $D6ED | 呼び出し | 29 | |
| $D709 | 呼び出し | 29 | |
| $DA40 | 呼び出し | 28 | |
| $C1F8 | 呼び出し | 27 | |
| $F894 | 呼び出し | 23 | |
| $C261 | 呼び出し | 17 | |
| $C27E | 呼び出し | 17 | |
| $C355 | 呼び出し | 17 | |
| $CE91 | 呼び出し | 17 | |
| $CEC4 | 呼び出し | 17 | |
| $DDC3 | 呼び出し | 15 | |
| $F8AE | 呼び出し | 9 | |
| $F89E | 呼び出し | 7 | |
| $F8A7 | 呼び出し | 5 | |
| $F8BA | 呼び出し | 5 | |
| $D12F | 呼び出し | 1 |
待つ場所
規則が名付けたループのうち、ルーチンの内側にあって、それ自身はコードの入口ではないもの。
| 場所 | 何であるか、その証拠 |
|---|---|
| $CA6A | フレーム待ち: 待つ相手のバイト $00A2、入った回数 7,294、周回 3,260,517、一周ごとの呼び出し 1、フレーム割り込みの下での書き込み 14,500、全フレーム 16,825 |
ルーチンが共有するメモリ
あるルーチンが書き、別のルーチンが読んだメモリは 449 バイト。添字を通して届いた場所は 26 か所で、メモリの中のテーブルや、物体の枠の並びはそう見える。
添字で届いた範囲: 位置を含むもの、次いで最も長いもの
| 起点 | 届いたバイト | 命令 | 含まれる位置 |
|---|---|---|---|
| $0560 | 117 | 1 | 横 2、縦 4 |
| $001D | 11 | 6 | 縦 1 |
| $0000 | 256 | 6 | |
| $029C | 48 | 8 | |
| $00A0 | 48 | 1 | |
| $0214 | 37 | 1 | |
| $0380 | 32 | 3 | |
| $0299 | 32 | 1 | |
| $00D1 | 31 | 2 | |
| $0244 | 29 | 1 | |
| $0331 | 27 | 21 | |
| $00D0 | 16 | 1 |
最も忙しい共有バイト 24 個
| バイト | 読み書き | 書くルーチン | 読むルーチン |
|---|---|---|---|
| $0000 | 12,506,198 | 6 | 6 |
| $001D | 12,416,065 | 2 | 6 |
| $001E | 12,401,456 | 2 | 6 |
| $001F | 9,299,278 | 2 | 5 |
| $0021 | 9,292,225 | 2 | 5 |
| $0020 | 9,292,022 | 2 | 4 |
| $0024 | 7,680,198 | 2 | 3 |
| $0026 | 7,445,395 | 2 | 3 |
| $0027 | 7,213,516 | 2 | 3 |
| $0023 | 6,249,409 | 2 | 3 |
| $0001 | 4,541,760 | 6 | 6 |
| $0002 | 3,386,531 | 6 | 6 |
| $0003 | 3,180,201 | 6 | 6 |
| $0004 | 3,158,748 | 6 | 6 |
| $0025 | 1,916,648 | 2 | 3 |
| $0022 | 1,664,479 | 2 | 3 |
| $0007 | 1,426,073 | 6 | 6 |
| $0006 | 945,320 | 6 | 6 |
| $0005 | 454,744 | 6 | 6 |
| $03E0 | 188,912 | 6 | 6 |
| $03F0 | 188,830 | 4 | 6 |
| $0019 | 184,790 | 3 | 6 |
| $001B | 159,623 | 2 | 3 |
| $0010 | 120,504 | 6 | 6 |
このページはゲームのバイトを一つも見せない。これらの数を読み取ったリスティングは、カートリッジと一緒に留まる。