Super Mario Bros. 3 (USA) (Rev 1)
Super Mario Bros. 3 (USA) (Rev 1) は MMC3 の基板に載り、プログラムは 262,144 バイト。電源投入から 6,400 歩のクロールが、新しいコードを見つけた道筋を 160 本残した。それらを 337,580 フレームにわたって再生すると、プログラムのうち 26,553 バイト、10 パーセントが実行された。
規則が名付けたもの
- パッドの読み取り: 2
- フレーム待ち: 3
- ジャンプエンジン: 1
- バンク切り替え: 13
- 画面メモリへの書き手: 1
- パレットの書き手: 2
- スプライトの書き手: 35
- スクロールの書き手: 1
- サウンドドライバ: 1
- 乱数のバイト: 1
- 二つのものを比べる所: 7
走行が入った 264 個のルーチン
ゲームのコードに入った場所のすべて。呼び出し、割り込み、テーブル経由のジャンプのどれかで入る。規則が名付けたものを先に、規則が見たものと一緒に並べる。それらのリスティングでの名前は、何であるかを言う: poll (読み取り)、engine (エンジン)、drain (書き出し)。
| 場所 | リスティングでの名前 | 入り方 | 回数 | 何であるか、その証拠 |
|---|---|---|---|---|
| $FE99 (バンク 31) | b31_engine_FE99 | 呼び出し | 665,700 | ジャンプエンジン: テーブル 26、そこを通った跳躍 665,700 |
| $FF12 (バンク 31) | b31_poll_FF12 | 呼び出し | 645,037 | パッドの読み取り: ポート $4016、一フレームの読み 16、一フレームのストローブ 8 パッドの読み取り: ポート $4017、一フレームの読み 16、一フレームのストローブ 8 |
| $FC6F (バンク 31) | b31_bank_FC6F | 呼び出し | 272,042 | バンク切り替え: 書き込み 1,087,584、ブランク中 444,508、描画中 643,076 |
| $F486 (バンク 31) | b31_nmi | 毎フレーム(NMI) | 164,787 | バンク切り替え: 書き込み 1,644,876、ブランク中 1,381,116、描画中 263,760 スクロールの書き手: 走ったフレーム 164,933、ブランク中の書き込み 337,383 |
| $FFAD (バンク 31) | b31_bank_FFAD | 呼び出し | 164,787 | バンク切り替え: 書き込み 1,976,913、ブランク中 1,976,913、描画中 0 |
| $E34F (バンク 31) | b31_sound_E34F | 呼び出し | 164,317 | サウンドドライバ: 走ったフレーム 163,985、書き込み 441,159 |
| $F795 (バンク 31) | b31_irq | 割り込み(IRQ) | 164,264 | バンク切り替え: 書き込み 1,041,437、ブランク中 0、描画中 1,041,437 |
| $B293 (バンク 26) | b26_drain_B293 | 呼び出し | 162,225 | パレットの書き手: 走ったフレーム 160,953、書き込み 386,958 画面メモリへの書き手: 走ったフレーム 160,953、書き込み 784,082、ブランク中 719,936、描画中 64,146 |
| $9984 (バンク 30) | b30_random_9984 | 呼び出し | 160,679 | 乱数のバイト: 走ったフレーム 160,679、バイト $0781,$0782,$0783,$0784、回転 4、排他的論理和 1 |
| $FFC2 (バンク 31) | b31_bank_FFC2 | 呼び出し | 136,931 | バンク切り替え: 書き込み 273,813、ブランク中 3,984、描画中 269,829 |
| $A41A (バンク 9) | b9_sprites_A41A | 呼び出し | 117,854 | スプライトの書き手: 走ったフレーム 58,932、スプライトのページへの書き込み 25,948 |
| $A9D3 (バンク 9) | b9_sprites_A9D3 | 呼び出し | 113,562 | スプライトの書き手: 走ったフレーム 57,648、スプライトのページへの書き込み 911,386 |
| $FD84 (バンク 31) | b31_sprites_FD84 | 呼び出し | 104,161 | スプライトの書き手: 走ったフレーム 104,017、スプライトのページへの書き込み 13,324,022 |
| $B117 (バンク 9) | b9_sprites_B117 | 呼び出し | 98,058 | スプライトの書き手: 走ったフレーム 42,214、スプライトのページへの書き込み 784,075 |
| $B5E2 (バンク 9) | b9_sprites_B5E2 | 呼び出し | 58,932 | スプライトの書き手: 走ったフレーム 58,932、スプライトのページへの書き込み 471,105 |
| $B9AA (バンク 11) | b11_sprites_B9AA | 呼び出し | 45,720 | スプライトの書き手: 走ったフレーム 5,715、スプライトのページへの書き込み 365,338 |
| $B754 (バンク 24) | b24_sprites_B754 | 呼び出し | 44,841 | スプライトの書き手: 走ったフレーム 10,094、スプライトのページへの書き込み 23,982 |
| $B5BE (バンク 11) | b11_dispatch_B5BE | テーブル | 44,174 | スプライトの書き手: 走ったフレーム 22,087、スプライトのページへの書き込み 399,487 |
| $C3C3 (バンク 10) | b10_sprites_C3C3 | 呼び出し | 43,740 | スプライトの書き手: 走ったフレーム 43,740、スプライトのページへの書き込み 252 |
| $B20B (バンク 24) | b24_sprites_B20B | 呼び出し | 38,755 | スプライトの書き手: 走ったフレーム 19,385、スプライトのページへの書き込み 1,154,351 |
| $B36E (バンク 24) | b24_sprites_B36E | 呼び出し | 33,048 | スプライトの書き手: 走ったフレーム 16,524、スプライトのページへの書き込み 2,565 |
| $AF44 (バンク 24) | b24_sprites_AF44 | 呼び出し | 32,947 | スプライトの書き手: 走ったフレーム 32,947、スプライトのページへの書き込み 2,108,608 |
| $AE7C (バンク 11) | b11_dispatch_AE7C | テーブル | 22,087 | 二つのものを比べる所: 命令 1、バイトの組 2、バイトの総数 3、比べた回数 234、縦の位置のバイト $0075,$0076,$0502 |
| $CDCA (バンク 10) | b10_dispatch_CDCA | テーブル | 20,893 | 二つのものを比べる所: 命令 2、バイトの組 2、バイトの総数 4、比べた回数 166、横の位置のバイト $0079,$007A、縦の位置のバイト $0075,$0076 スプライトの書き手: 走ったフレーム 20,893、スプライトのページへの書き込み 376,181 |
| $C52B (バンク 10) | b10_sprites_C52B | 呼び出し | 16,447 | スプライトの書き手: 走ったフレーム 16,447、スプライトのページへの書き込み 164,385 |
| $B7D6 (バンク 24) | b24_sprites_B7D6 | 呼び出し | 14,947 | スプライトの書き手: 走ったフレーム 10,094、スプライトのページへの書き込み 358,728 |
| $AC35 (バンク 24) | b24_dispatch_AC35 | テーブル | 13,292 | スプライトの書き手: 走ったフレーム 20,200、スプライトのページへの書き込み 60,076 |
| $FFD1 (バンク 31) | b31_bank_FFD1 | 呼び出し | 9,930 | バンク切り替え: 書き込み 19,860、ブランク中 1,736、描画中 18,124 |
| $9BD5 (バンク 30) | b30_bank_9BD5 | 呼び出し | 7,180 | バンク切り替え: 書き込み 14,360、ブランク中 1,738、描画中 12,622 |
| $B6EE (バンク 24) | b24_sprites_B6EE | 呼び出し | 6,299 | スプライトの書き手: 走ったフレーム 3,030、スプライトのページへの書き込み 61,846 |
| $B820 (バンク 11) | b11_dispatch_B820 | テーブル | 5,842 | 二つのものを比べる所: 命令 2、バイトの組 3、バイトの総数 5、比べた回数 8,763、横の位置のバイト $0079,$00B1,$0722、縦の位置のバイト $0075,$00B2 |
| $B50C (バンク 24) | b24_dispatch_B50C | テーブル | 5,705 | 二つのものを比べる所: 命令 1、バイトの組 1、バイトの総数 2、比べた回数 5,165、横の位置のバイト $008B,$008C スプライトの書き手: 走ったフレーム 5,705、スプライトのページへの書き込み 58,010 |
| $C6C4 (バンク 10) | b10_dispatch_C6C4 | テーブル | 4,953 | スプライトの書き手: 走ったフレーム 4,953、スプライトのページへの書き込み 2,622 |
| $B58C (バンク 24) | b24_dispatch_B58C | テーブル | 4,476 | スプライトの書き手: 走ったフレーム 4,476、スプライトのページへの書き込み 52,378 |
| $B4C0 (バンク 24) | b24_dispatch_B4C0 | テーブル | 4,309 | スプライトの書き手: 走ったフレーム 4,309、スプライトのページへの書き込み 42,202 |
| $A859 (バンク 24) | b24_palette_A859 | 呼び出し | 4,164 | パレットの書き手: 走ったフレーム 300、書き込み 9,600 |
| $B5AE (バンク 24) | b24_dispatch_B5AE | テーブル | 2,204 | スプライトの書き手: 走ったフレーム 2,204、スプライトのページへの書き込み 22,829 |
| $94CD (バンク 30) | b30_bank_94CD | 呼び出し | 1,546 | バンク切り替え: 書き込み 3,092、ブランク中 0、描画中 3,092 |
| $B600 (バンク 24) | b24_dispatch_B600 | テーブル | 1,389 | 二つのものを比べる所: 命令 1、バイトの組 1、バイトの総数 2、比べた回数 264、横の位置のバイト $0085,$008C |
| $B7BE (バンク 9) | b9_sprites_B7BE | 呼び出し | 1,289 | スプライトの書き手: 走ったフレーム 1,289、スプライトのページへの書き込み 10,307 |
| $B628 (バンク 24) | b24_sprites_B628 | 呼び出し | 1,013 | スプライトの書き手: 走ったフレーム 1,013、スプライトのページへの書き込み 10,307 |
| $B568 (バンク 24) | b24_dispatch_B568 | テーブル | 976 | スプライトの書き手: 走ったフレーム 976、スプライトのページへの書き込み 9,790 |
| $CF29 (バンク 10) | b10_sprites_CF29 | 呼び出し | 910 | スプライトの書き手: 走ったフレーム 910、スプライトのページへの書き込み 18,057 |
| $B5D9 (バンク 24) | b24_dispatch_B5D9 | テーブル | 804 | スプライトの書き手: 走ったフレーム 804、スプライトのページへの書き込み 7,966 |
| $CB84 (バンク 10) | b10_dispatch_CB84 | テーブル | 710 | スプライトの書き手: 走ったフレーム 142、スプライトのページへの書き込み 93,720 |
| $FFBF (バンク 31) | b31_bank_FFBF | 呼び出し | 612 | バンク切り替え: 書き込み 1,224、ブランク中 0、描画中 1,224 |
| $94BB (バンク 30) | b30_bank_94BB | 呼び出し | 369 | バンク切り替え: 書き込み 738、ブランク中 0、描画中 738 |
| $96CE (バンク 30) | b30_sprites_96CE | 呼び出し | 332 | スプライトの書き手: 走ったフレーム 824、スプライトのページへの書き込み 84,992 |
| $CAA2 (バンク 10) | b10_dispatch_CAA2 | テーブル | 284 | スプライトの書き手: 走ったフレーム 142、スプライトのページへの書き込み 37,488 |
| $B9F4 (バンク 11) | b11_compare_B9F4 | 呼び出し | 254 | 二つのものを比べる所: 命令 2、バイトの組 3、バイトの総数 5、比べた回数 762、横の位置のバイト $0079,$00B1,$0722、縦の位置のバイト $0075,$00B2 |
| $9ABA (バンク 30) | b30_bank_9ABA | 呼び出し | 225 | バンク切り替え: 書き込み 446、ブランク中 0、描画中 446 |
| $F4F0 (バンク 31) | b31_bank_F4F0 | 呼び出し | 201 | バンク切り替え: 書き込み 2,009、ブランク中 1,377、描画中 632 |
| $FF40 (バンク 31) | b31_reset | 電源投入 | 160 | バンク切り替え: 書き込み 1,244、ブランク中 800、描画中 444 二つのものを比べる所: 命令 1、バイトの組 1、バイトの総数 2、比べた回数 19,700、横の位置のバイト $00B1,$0722 スプライトの書き手: 走ったフレーム 110,242、スプライトのページへの書き込み 5,285 |
| $D1AC (バンク 10) | b10_sprites_D1AC | 呼び出し | 144 | スプライトの書き手: 走ったフレーム 144、スプライトのページへの書き込み 19,008 |
| $C7A0 (バンク 10) | b10_dispatch_C7A0 | テーブル | 127 | スプライトの書き手: 走ったフレーム 127、スプライトのページへの書き込み 2,622 |
| $B599 (バンク 9) | b9_dispatch_B599 | テーブル | 30 | スプライトの書き手: 走ったフレーム 30、スプライトのページへの書き込み 240 |
| $CA2B (バンク 10) | b10_dispatch_CA2B | テーブル | 16 | スプライトの書き手: 走ったフレーム 16、スプライトのページへの書き込み 432 |
| $A996 (バンク 9) | 呼び出し | 1,257,258 | ||
| $AD1B (バンク 9) | 呼び出し | 707,184 | ||
| $B8D0 (バンク 9) | 呼び出し | 707,184 | ||
| $B89C (バンク 9) | 呼び出し | 396,626 | ||
| $AB30 (バンク 9) | 呼び出し | 307,912 | ||
| $AB4D (バンク 9) | 呼び出し | 286,871 | ||
| $A7D2 (バンク 9) | 呼び出し | 209,543 | ||
| $E785 (バンク 31) | 呼び出し | 201,466 | ||
| $A000 (バンク 28) | 呼び出し | 164,745 | ||
| $A661 (バンク 28) | 呼び出し | 164,427 | ||
| $A2AB (バンク 28) | 呼び出し | 164,343 | ||
| $A449 (バンク 28) | 呼び出し | 164,343 | ||
| $A0A1 (バンク 28) | 呼び出し | 164,342 | ||
| $FEBE (バンク 31) | 呼び出し | 160,679 | ||
| $B327 (バンク 9) | 呼び出し | 150,624 | ||
| $B265 (バンク 9) | 呼び出し | 150,535 | ||
| $B9D4 (バンク 11) | 呼び出し | 137,160 | ||
| $B071 (バンク 24) | 呼び出し | 128,794 | ||
| $B2DC (バンク 26) | 呼び出し | 121,769 | ||
| $A0A7 (バンク 9) | 呼び出し | 117,864 | ||
| $A4A8 (バンク 9) | テーブル | 111,828 | ||
| $B890 (バンク 9) | 呼び出し | 111,828 | ||
| $96E5 (バンク 30) | 呼び出し | 111,519 | ||
| $B3E6 (バンク 26) | 呼び出し | 107,411 | ||
| $E2C0 (バンク 31) | 呼び出し | 105,103 | ||
| $B24D (バンク 9) | 呼び出し | 98,053 | ||
| $B34F (バンク 9) | 呼び出し | 98,053 | ||
| $A9B5 (バンク 9) | 呼び出し | 97,715 | ||
| $B98B (バンク 11) | 呼び出し | 91,440 | ||
| $B035 (バンク 9) | 呼び出し | 89,338 | ||
| $AD3B (バンク 9) | テーブル | 88,361 | ||
| $B87E (バンク 9) | 呼び出し | 85,689 | ||
| $B884 (バンク 9) | 呼び出し | 85,689 | ||
| $B027 (バンク 9) | 呼び出し | 77,297 | ||
| $AF04 (バンク 9) | 呼び出し | 76,320 | ||
| $AF7F (バンク 9) | 呼び出し | 76,320 | ||
| $AFB9 (バンク 9) | テーブル | 76,320 | ||
| $9734 (バンク 30) | 呼び出し | 60,912 | ||
| $A1A7 (バンク 9) | 呼び出し | 59,013 | ||
| $A018 (バンク 9) | 呼び出し | 58,932 | ||
| $A026 (バンク 9) | 呼び出し | 58,932 | ||
| $A09C (バンク 9) | 呼び出し | 58,932 | ||
| $A106 (バンク 9) | 呼び出し | 58,932 | ||
| $A2C1 (バンク 9) | テーブル | 58,932 | ||
| $A2E5 (バンク 9) | テーブル | 58,932 | ||
| $A3F1 (バンク 9) | 呼び出し | 58,932 | ||
| $AB94 (バンク 9) | 呼び出し | 58,932 | ||
| $ACF6 (バンク 9) | 呼び出し | 58,932 | ||
| $B789 (バンク 9) | 呼び出し | 58,932 | ||
| $AA4E (バンク 9) | 呼び出し | 58,918 | ||
| $9705 (バンク 30) | 呼び出し | 56,592 | ||
| $A806 (バンク 24) | 呼び出し | 53,268 | ||
| $B8F3 (バンク 11) | 呼び出し | 45,720 | ||
| $BC29 (バンク 11) | 呼び出し | 44,518 | ||
| $C4E0 (バンク 10) | 呼び出し | 44,376 | ||
| $ADF5 (バンク 11) | 呼び出し | 44,174 | ||
| $B58D (バンク 11) | 呼び出し | 44,174 | ||
| $BA8A (バンク 11) | 呼び出し | 44,174 | ||
| $B0C1 (バンク 24) | 呼び出し | 39,310 | ||
| $B76E (バンク 24) | 呼び出し | 38,695 | ||
| $A9B4 (バンク 24) | 呼び出し | 37,674 | ||
| $AF6D (バンク 24) | 呼び出し | 33,048 | ||
| $AFF8 (バンク 24) | 呼び出し | 33,048 | ||
| $B0A0 (バンク 24) | 呼び出し | 33,048 | ||
| $B340 (バンク 24) | 呼び出し | 33,048 | ||
| $AA7D (バンク 24) | 呼び出し | 31,871 | ||
| $B421 (バンク 24) | 呼び出し | 26,162 | ||
| $B0AC (バンク 24) | 呼び出し | 24,003 | ||
| $B776 (バンク 24) | 呼び出し | 24,003 | ||
| $C4FA (バンク 10) | テーブル | 22,416 | ||
| $ADBD (バンク 11) | 呼び出し | 22,087 | ||
| $B53B (バンク 11) | 呼び出し | 22,087 | ||
| $BB6D (バンク 11) | 呼び出し | 22,087 | ||
| $ADF4 (バンク 11) | テーブル | 21,970 | ||
| $B03C (バンク 26) | 呼び出し | 21,486 | ||
| $B073 (バンク 26) | 呼び出し | 21,470 | ||
| $B175 (バンク 26) | 呼び出し | 21,470 | ||
| $AF9D (バンク 26) | 呼び出し | 21,468 | ||
| $B256 (バンク 26) | 呼び出し | 21,468 | ||
| $B44A (バンク 26) | 呼び出し | 21,468 | ||
| $D1FE (バンク 10) | 呼び出し | 20,753 | ||
| $D280 (バンク 10) | 呼び出し | 20,743 | ||
| $B691 (バンク 24) | 呼び出し | 20,421 | ||
| $AEC5 (バンク 24) | 呼び出し | 19,655 | ||
| $B3C3 (バンク 24) | 呼び出し | 19,655 | ||
| $AAB2 (バンク 24) | テーブル | 16,524 | ||
| $AB81 (バンク 24) | 呼び出し | 16,524 | ||
| $C506 (バンク 10) | テーブル | 16,447 | ||
| $B6AD (バンク 24) | 呼び出し | 15,960 | ||
| $AB9A (バンク 24) | テーブル | 13,855 | ||
| $E33B (バンク 31) | 呼び出し | 13,333 | ||
| $B78E (バンク 24) | 呼び出し | 13,292 | ||
| $E756 (バンク 31) | 呼び出し | 11,050 | ||
| $B556 (バンク 24) | テーブル | 9,849 | ||
| $B501 (バンク 9) | テーブル | 9,697 | ||
| $B583 (バンク 9) | 呼び出し | 9,369 | ||
| $E835 (バンク 31) | 呼び出し | 7,895 | ||
| $E7BF (バンク 31) | 呼び出し | 7,494 | ||
| $A9CF (バンク 24) | テーブル | 7,448 | ||
| $9C78 (バンク 30) | 呼び出し | 7,180 | ||
| $E831 (バンク 31) | 呼び出し | 6,624 | ||
| $B76C (バンク 11) | 呼び出し | 4,953 | ||
| $D369 (バンク 10) | 呼び出し | 4,096 | ||
| $ACD1 (バンク 26) | 呼び出し | 4,025 | ||
| $AD68 (バンク 26) | 呼び出し | 4,025 | ||
| $ABDC (バンク 26) | 呼び出し | 3,563 | ||
| $E7AB (バンク 31) | 呼び出し | 3,297 | ||
| $B45A (バンク 24) | テーブル | 3,030 | ||
| $B444 (バンク 24) | テーブル | 2,028 | ||
| $A77B (バンク 9) | テーブル | 1,734 | ||
| $FDC7 (バンク 31) | 呼び出し | 1,382 | ||
| $B878 (バンク 9) | 呼び出し | 1,289 | ||
| $B431 (バンク 24) | テーブル | 1,241 | ||
| $AD76 (バンク 26) | テーブル | 1,068 | ||
| $A459 (バンク 9) | テーブル | 1,048 | ||
| $C54A (バンク 10) | テーブル | 1,016 | ||
| $C566 (バンク 10) | 呼び出し | 1,016 | ||
| $CA8C (バンク 10) | 呼び出し | 994 | ||
| $ADBB (バンク 26) | テーブル | 987 | ||
| $E7B2 (バンク 31) | 呼び出し | 987 | ||
| $ADA6 (バンク 26) | テーブル | 985 | ||
| $ADD6 (バンク 26) | テーブル | 985 | ||
| $9935 (バンク 30) | 呼び出し | 972 | ||
| $A1AC (バンク 28) | 呼び出し | 762 | ||
| $ABAD (バンク 24) | テーブル | 756 | ||
| $FDBF (バンク 31) | 呼び出し | 691 | ||
| $ABF7 (バンク 24) | テーブル | 646 | ||
| $A070 (バンク 26) | 呼び出し | 636 | ||
| $AB9B (バンク 24) | テーブル | 621 | ||
| $FDA9 (バンク 31) | 呼び出し | 610 | ||
| $9A49 (バンク 30) | 呼び出し | 567 | ||
| $C42C (バンク 14) | テーブル | 567 | ||
| $C576 (バンク 14) | テーブル | 567 | ||
| $AB26 (バンク 24) | 呼び出し | 515 | ||
| $FD97 (バンク 31) | 呼び出し | 448 | ||
| $FCD8 (バンク 31) | 呼び出し | 432 | ||
| $A40E (バンク 26) | テーブル | 406 | ||
| $9A75 (バンク 30) | 呼び出し | 405 | ||
| $C489 (バンク 14) | テーブル | 405 | ||
| $ABC0 (バンク 24) | テーブル | 296 | ||
| $ABCA (バンク 24) | テーブル | 295 | ||
| $968E (バンク 30) | 呼び出し | 286 | ||
| $AC2A (バンク 26) | 呼び出し | 236 | ||
| $951B (バンク 30) | 呼び出し | 225 | ||
| $ABA3 (バンク 26) | 呼び出し | 223 | ||
| $AC69 (バンク 26) | 呼び出し | 223 | ||
| $B83F (バンク 27) | 呼び出し | 223 | ||
| $E7B9 (バンク 31) | 呼び出し | 214 | ||
| $AB5E (バンク 24) | 呼び出し | 197 | ||
| $AC1A (バンク 9) | 呼び出し | 187 | ||
| $AC8C (バンク 9) | テーブル | 187 | ||
| $A990 (バンク 24) | 呼び出し | 162 | ||
| $B0C4 (バンク 26) | 呼び出し | 162 | ||
| $B108 (バンク 26) | 呼び出し | 162 | ||
| $C5AB (バンク 14) | テーブル | 162 | ||
| $C5B8 (バンク 14) | テーブル | 162 | ||
| $A8AF (バンク 24) | 呼び出し | 160 | ||
| $B7A8 (バンク 24) | 呼び出し | 158 | ||
| $A756 (バンク 11) | テーブル | 157 | ||
| $A40E (バンク 12) | 呼び出し | 144 | ||
| $A45D (バンク 12) | 呼び出し | 144 | ||
| $FCBF (バンク 31) | 呼び出し | 144 | ||
| $E82B (バンク 31) | 呼び出し | 143 | ||
| $AC1A (バンク 24) | テーブル | 142 | ||
| $AAF4 (バンク 24) | テーブル | 138 | ||
| $A2C4 (バンク 26) | テーブル | 136 | ||
| $A399 (バンク 26) | 呼び出し | 136 | ||
| $C2C4 (バンク 10) | 呼び出し | 132 | ||
| $C34D (バンク 10) | 呼び出し | 132 | ||
| $A1D8 (バンク 11) | 呼び出し | 130 | ||
| $A299 (バンク 11) | 呼び出し | 130 | ||
| $ACBB (バンク 24) | テーブル | 130 | ||
| $B792 (バンク 11) | テーブル | 127 | ||
| $B363 (バンク 11) | 呼び出し | 117 | ||
| $C9E5 (バンク 10) | テーブル | 117 | ||
| $B3E8 (バンク 24) | 呼び出し | 102 | ||
| $A398 (バンク 26) | テーブル | 100 | ||
| $B818 (バンク 9) | 呼び出し | 96 | ||
| $9553 (バンク 30) | 呼び出し | 83 | ||
| $9A1D (バンク 30) | 呼び出し | 81 | ||
| $A200 (バンク 9) | テーブル | 81 | ||
| $A23C (バンク 9) | テーブル | 81 | ||
| $B805 (バンク 9) | 呼び出し | 81 | ||
| $C408 (バンク 14) | テーブル | 81 | ||
| $C5F2 (バンク 14) | テーブル | 81 | ||
| $FDB1 (バンク 31) | 呼び出し | 81 | ||
| $B409 (バンク 24) | テーブル | 68 | ||
| $A0CF (バンク 26) | テーブル | 64 | ||
| $ACC2 (バンク 9) | 呼び出し | 61 | ||
| $B30F (バンク 9) | 呼び出し | 60 | ||
| $ABE4 (バンク 24) | テーブル | 51 | ||
| $A328 (バンク 26) | 呼び出し | 36 | ||
| $A3B1 (バンク 26) | テーブル | 18 | ||
| $A3CD (バンク 26) | テーブル | 18 | ||
| $B31B (バンク 9) | 呼び出し | 18 | ||
| $B40A (バンク 24) | テーブル | 17 | ||
| $B41B (バンク 24) | テーブル | 17 | ||
| $A118 (バンク 26) | テーブル | 16 | ||
| $AC20 (バンク 26) | 呼び出し | 16 | ||
| $ACAA (バンク 26) | 呼び出し | 16 | ||
| $B43B (バンク 11) | 呼び出し | 16 | ||
| $A092 (バンク 26) | テーブル | 14 | ||
| $A383 (バンク 9) | 呼び出し | 5 | ||
| $B39D (バンク 11) | 呼び出し | 5 | ||
| $AC13 (バンク 24) | テーブル | 4 | ||
| $A181 (バンク 9) | 呼び出し | 2 | ||
| $A522 (バンク 26) | 呼び出し | 2 |
待つ場所
規則が名付けたループのうち、ルーチンの内側にあって、それ自身はコードの入口ではないもの。
| 場所 | リスティングでの名前 | 何であるか、その証拠 |
|---|---|---|
| $A81C (バンク 24) | b24_wait_A81C | フレーム待ち: 待つ相手のバイト $0010、入った回数 53,258、周回 221,261,149、フレーム割り込みの下での書き込み 329,192、全フレーム 169,160 |
| $A04B (バンク 28) | b28_wait_A04B | フレーム待ち: 待つ相手のバイト $04E0、入った回数 4、周回 4、フレーム割り込みの下での書き込み 5,597、全フレーム 169,160 |
| $96FB (バンク 30) | b30_wait_96FB | フレーム待ち: 待つ相手のバイト $0010、入った回数 111,474、周回 339,706,037、フレーム割り込みの下での書き込み 329,192、全フレーム 169,160 |
ジャンプに使うテーブル
ゲームがその中から一つを選ぶ、アドレスのテーブル。ジャンプエンジンへの呼び出しの直後にあるものもあれば、カートリッジのどこかにあるものもある。後者は、ゲームが通って跳んだアドレスがどこから読み込まれたかで見つける。アドレスを積んでそこへ戻ることで跳ぶゲームもあれば、テーブルを二つに分けて、アドレスの下位バイトをある場所に、上位バイトを別の場所に置くゲームもある。どちらも同じやり方で見つける。項目は、走行が選ぶのを見た所までを数える。本当のテーブルはもっと長いかもしれない。最後の列は、その値が項目を選んだメモリのバイトで、追えた場合だけ書いてある: ゲームのモードか、物体の一つが今していることだ。
| 場所 | 届き方 | 項目 | 選ばれた数 | 選んだバイト |
|---|---|---|---|---|
| $A1F0 (バンク 9) | 呼び出しの直後 | 2 | 2 | $0075 |
| $A224 (バンク 9) | 呼び出しの直後 | 11 | 1 | |
| $A2CD (バンク 9) | 呼び出しの直後 | 11 | 1 | |
| $A44B (バンク 9) | 呼び出しの直後 | 3 | 3 | |
| $AC5E (バンク 9) | 呼び出しの直後 | 1 | 1 | |
| $AD33 (バンク 9) | 呼び出しの直後 | 4 | 3 | |
| $AD89 (バンク 9) | 呼び出しの直後 | 3 | 1 | |
| $C4B2 (バンク 10) | 呼び出しの直後 | 2 | 6 | $0729 |
| $C500 (バンク 10) | 呼び出しの直後 | 3 | 3 | $0728 |
| $CA92 (バンク 10) | 呼び出しの直後 | 4 | 2 | $03E1 |
| $AE0E (バンク 11) | 呼び出しの直後 | 12 | 2 | |
| $B59C (バンク 11) | 呼び出しの直後 | 17 | 1 | |
| $B772 (バンク 11) | 呼び出しの直後 | 3 | 2 | $008B |
| $C447 (バンク 14) | 呼び出しの直後 | 2 | 1 | $0706 |
| $C496 (バンク 14) | 呼び出しの直後 | 4 | 3 | $000E, $0706 |
| $A9BF (バンク 24) | 呼び出しの直後 | 7 | 6 | $00DE |
| $AB86 (バンク 24) | 呼び出しの直後 | 10 | 8 | $00EE |
| $B3FD (バンク 24) | 呼び出しの直後 | 6 | 3 | |
| $B425 (バンク 24) | 呼び出しの直後 | 6 | 6 | |
| $B55E (バンク 24) | 呼び出しの直後 | 5 | 5 | $00DD |
| $A088 (バンク 26) | 呼び出しの直後 | 5 | 5 | $03E6 |
| $A3A1 (バンク 26) | 呼び出しの直後 | 8 | 3 | $03E5 |
| $AD6E (バンク 26) | 呼び出しの直後 | 4 | 4 | $044F |
ルーチンが共有するメモリ
あるルーチンが書き、別のルーチンが読んだメモリは 1,127 バイト。添字を通して届いた場所は 148 か所で、メモリの中のテーブルや、物体の枠の並びはそう見える。
添字で届いた範囲: 位置を含むもの、次いで最も長いもの
| 起点 | 届いたバイト | 命令 | 含まれる位置 |
|---|---|---|---|
| $0075 | 129 | 19 | 縦 2 |
| $00A5 | 16 | 2 | 横 1、縦 1 |
| $0500 | 14 | 8 | 縦 1 |
| $0087 | 6 | 15 | 横 1 |
| $0079 | 2 | 12 | 横 2 |
| $0722 | 2 | 6 | 横 1 |
| $0084 | 2 | 3 | 横 1 |
| $008C | 2 | 1 | 横 1 |
| $0201 | 253 | 16 | |
| $0200 | 253 | 15 | |
| $0203 | 253 | 10 | |
| $0000 | 246 | 4 |
位置と一緒に動くもの
少なくとも二つのルーチンが、位置の配列と一緒に、同じ範囲をたどった配列。画面上のものの表は、メモリの中ではこう見える: 性質ごとに配列が一つ、ものごとに枠が一つ。どの配列が位置を持つかは言える。ほかの配列のうち、どれが位置に足し込まれるか (速度がすること) と、どれがジャンプのテーブルの行き先を選ぶか (状態や種類がすること)、どれが減らされる一方か (タイマーがすること) も言える。残りが何を持つかは、まだ名付けていない。
| 枠 | 配列 | ルーチン | 横の位置 | 縦の位置 | 位置に足し込まれる配列 | ジャンプを選ぶ配列 | 減らされる一方の配列 | 一緒に動く配列 |
|---|---|---|---|---|---|---|---|---|
| 129 | 14 | 16 | $0079, $0084, $008C, $0722 | $0075 | $0095 | $00CB | $0077, $0085, $008D, $0095, $00B7, $00CB, $0724, $0736, $073E | |
| 6 | 8 | 16 | $0087 | $0097 | $00D8 | $0097 | $0077, $008F, $0097, $009F, $00D2, $00D8, $051F | |
| 14 | 6 | 6 | $0500 | $050F, $053C | $050F, $051E, $052D, $053C, $0782 |
最も忙しい共有バイト 24 個
| バイト | 読み書き | 書くルーチン | 読むルーチン |
|---|---|---|---|
| $0000 | 30,868,275 | 6 | 6 |
| $0001 | 29,115,727 | 6 | 6 |
| $000E | 9,318,015 | 6 | 6 |
| $0002 | 8,850,623 | 6 | 6 |
| $000F | 6,232,384 | 6 | 6 |
| $0003 | 4,510,847 | 6 | 6 |
| $000C | 3,186,128 | 6 | 6 |
| $6910 | 2,176,068 | 6 | 6 |
| $0005 | 1,705,676 | 6 | 6 |
| $0006 | 1,395,816 | 6 | 6 |
| $0007 | 1,395,013 | 6 | 6 |
| $0004 | 1,173,136 | 6 | 6 |
| $68CB | 1,006,639 | 4 | 5 |
| $6814 | 997,842 | 6 | 6 |
| $6813 | 981,549 | 6 | 6 |
| $00F7 | 948,344 | 3 | 3 |
| $68CA | 890,520 | 5 | 6 |
| $7E98 | 855,844 | 2 | 4 |
| $0015 | 793,312 | 4 | 6 |
| $6824 | 717,315 | 5 | 6 |
| $6825 | 715,619 | 5 | 6 |
| $0075 | 706,632 | 6 | 6 |
| $00F8 | 679,388 | 3 | 4 |
| $6836 | 679,331 | 6 | 6 |
このページはゲームのバイトを一つも見せない。これらの数を読み取ったリスティングは、カートリッジと一緒に留まる。