NEStinymachines

Legend of Zelda, The (USA) (Rev 1)

Legend of Zelda, The (USA) (Rev 1) は MMC1 の基板に載り、プログラムは 131,072 バイト。電源投入から 6,400 歩のクロールが、新しいコードを見つけた道筋を 110 本残した。それらを 289,730 フレームにわたって再生すると、プログラムのうち 14,209 バイト、11 パーセントが実行された。

規則が名付けたもの

走行が入った 304 個のルーチン

ゲームのコードに入った場所のすべて。呼び出し、割り込み、テーブル経由のジャンプのどれかで入る。規則が名付けたものを先に、規則が見たものと一緒に並べる。それらのリスティングでの名前は、何であるかを言う: poll (読み取り)、engine (エンジン)、drain (書き出し)。

場所リスティングでの名前入り方回数何であるか、その証拠
$FFAC (バンク 7)b7_bank_FFAC呼び出し560,164
バンク切り替え: 書き込み 2,800,806、ブランク中 583,600、描画中 2,217,206
$E5E2 (バンク 7)b7_engine_E5E2呼び出し305,104
ジャンプエンジン: テーブル 20、そこを通った跳躍 305,104
$A0F6 (バンク 6)b6_drain_A0F6呼び出し112,849
パレットの書き手: 走ったフレーム 112,849、書き込み 39,580
画面メモリへの書き手: 走ったフレーム 112,849、書き込み 649,576、ブランク中 498,236、描画中 151,340
$E484 (バンク 7)b7_nmi毎フレーム(NMI)112,849
割り込みの中のゲーム: 走ったフレーム 113,961、全フレーム 119,210、待機の場所 $E45B
乱数のバイト: 走ったフレーム 113,961、バイト $0018,$0019,$001A、回転 3、排他的論理和 2
スクロールの書き手: 走ったフレーム 113,961、ブランク中の書き込み 379,599
$9C67 (バンク 0)b0_sound_9C67呼び出し112,720
サウンドドライバ: 走ったフレーム 112,720、書き込み 610,770
$E62D (バンク 7)b7_poll_E62D呼び出し110,688
パッドの読み取り: ポート $4017、一フレームの読み 17、一フレームのストローブ 6
$E640 (バンク 7)b7_poll_E640呼び出し110,688
パッドの読み取り: ポート $4016、一フレームの読み 17、一フレームのストローブ 4
$E70E (バンク 7)b7_sprites_E70E呼び出し86,774
スプライトの書き手: 走ったフレーム 14,219、スプライトのページへの書き込み 421,468
$98F5 (バンク 2)b2_sprites_98F5呼び出し81,528
スプライトの書き手: 走ったフレーム 27,176、スプライトのページへの書き込み 1,304,448
$8094 (バンク 4)b4_compare_8094呼び出し30,679
二つのものを比べる所: 命令 4、バイトの組 10、バイトの総数 11、比べた回数 1,335、横の位置のバイト $0070,$0071,$0072,$0073,$0074,$0525、縦の位置のバイト $0084,$0085,$0086,$0087,$0088,$0525
$9943 (バンク 2)b2_sprites_9943呼び出し27,176
スプライトの書き手: 走ったフレーム 27,176、スプライトのページへの書き込み 434,816
$F23C (バンク 7)b7_sprites_F23C呼び出し19,874
スプライトの書き手: 走ったフレーム 19,874、スプライトのページへの書き込み 687
$986B (バンク 2)b2_sprites_986B呼び出し18,784
スプライトの書き手: 走ったフレーム 18,784、スプライトのページへの書き込み 2,103,808
$E5F7 (バンク 7)b7_sprites_E5F7呼び出し18,067
スプライトの書き手: 走ったフレーム 18,067、スプライトのページへの書き込み 1,156,288
$88F8 (バンク 4)b4_dispatch_88F8テーブル15,692
二つのものを比べる所: 命令 1、バイトの組 4、バイトの総数 5、比べた回数 70、横の位置のバイト $0070,$0071,$0072,$0073,$0074
$9EF0 (バンク 2)b2_dispatch_9EF0テーブル13,114
スプライトの書き手: 走ったフレーム 13,181、スプライトのページへの書き込み 11,688
$A1C3 (バンク 2)b2_sprites_A1C3呼び出し13,047
スプライトの書き手: 走ったフレーム 13,047、スプライトのページへの書き込み 24,735
$A1DD (バンク 2)b2_sprites_A1DD呼び出し13,047
スプライトの書き手: 走ったフレーム 13,047、スプライトのページへの書き込み 24,735
$A204 (バンク 2)b2_sprites_A204呼び出し13,047
スプライトの書き手: 走ったフレーム 13,047、スプライトのページへの書き込み 615
$A59A (バンク 2)b2_dispatch_A59Aテーブル8,668
スプライトの書き手: 走ったフレーム 8,668、スプライトのページへの書き込み 34,084
$F9C9 (バンク 7)b7_sprites_F9C9呼び出し7,099
スプライトの書き手: 走ったフレーム 2,353、スプライトのページへの書き込み 56,792
$97D8 (バンク 2)b2_sprites_97D8呼び出し4,682
スプライトの書き手: 走ったフレーム 4,682、スプライトのページへの書き込み 18,728
$97EA (バンク 2)b2_sprites_97EA呼び出し3,130
スプライトの書き手: 走ったフレーム 913、スプライトのページへの書き込み 64,432
$8521 (バンク 5)b5_split_8521呼び出し2,136
画面の分割: 走ったフレーム 2,182、描画中のスクロール書き込み 1,496、描画中のステータス読み 1,307,588
$841E (バンク 5)b5_sprites_841E呼び出し2,115
スプライトの書き手: 走ったフレーム 2,115、スプライトのページへの書き込み 83
$BF98 (バンク 5)b5_bank_BF98呼び出し2,078
バンク切り替え: 書き込み 10,390、ブランク中 0、描画中 10,390
$82D7 (バンク 4)b4_dispatch_82D7テーブル2,015
スプライトの書き手: 走ったフレーム 1,590、スプライトのページへの書き込み 7,496
$81DD (バンク 5)b5_compare_81DD呼び出し1,923
二つのものを比べる所: 命令 1、バイトの組 1、バイトの総数 2、比べた回数 240、横の位置のバイト $0000,$0070
$BFAC (バンク 2)b2_bank_BFAC呼び出し1,039
バンク切り替え: 書き込み 5,195、ブランク中 0、描画中 5,195
$BFAC (バンク 5)b5_bank_BFAC呼び出し1,039
バンク切り替え: 書き込み 5,195、ブランク中 0、描画中 5,195
$80D4 (バンク 5)b5_dispatch_80D4テーブル514
スプライトの書き手: 走ったフレーム 514、スプライトのページへの書き込み 4
$B726 (バンク 5)b5_sprites_B726呼び出し514
スプライトの書き手: 走ったフレーム 514、スプライトのページへの書き込み 4,112
$8CE4 (バンク 5)b5_dispatch_8CE4テーブル494
スプライトの書き手: 走ったフレーム 494、スプライトのページへの書き込み 202
$F238 (バンク 7)b7_sprites_F238呼び出し489
スプライトの書き手: 走ったフレーム 299、スプライトのページへの書き込み 39
$8130 (バンク 5)b5_sprites_8130呼び出し445
スプライトの書き手: 走ったフレーム 445、スプライトのページへの書き込み 445
$8A04 (バンク 5)b5_compare_8A04呼び出し415
二つのものを比べる所: 命令 2、バイトの組 8、バイトの総数 9、比べた回数 219、横の位置のバイト $0070,$0071,$0072,$0073,$0074,$0525、縦の位置のバイト $0084,$0087,$0088,$0525
$FF98 (バンク 7)b7_bank_FF98呼び出し251
バンク切り替え: 書き込み 1,255、ブランク中 550、描画中 705
$8D17 (バンク 5)b5_dispatch_8D17テーブル228
スプライトの書き手: 走ったフレーム 228、スプライトのページへの書き込み 732
$B31A (バンク 4)b4_compare_B31A呼び出し221
二つのものを比べる所: 命令 2、バイトの組 8、バイトの総数 10、比べた回数 442、横の位置のバイト $0070,$0071,$0072,$0073,$0074、縦の位置のバイト $0084,$0085,$0086,$0087,$0088
$8755 (バンク 4)b4_dispatch_8755テーブル110
二つのものを比べる所: 命令 3、バイトの組 10、バイトの総数 11、比べた回数 232、横の位置のバイト $0070,$0071,$0072,$0073,$0074,$0525、縦の位置のバイト $0084,$0085,$0086,$0087,$0088,$0525
$EB76 (バンク 7)b7_dispatch_EB76テーブル110
スプライトの書き手: 走ったフレーム 110、スプライトのページへの書き込み 104
$FF50 (バンク 7)b7_reset電源投入110
バンク切り替え: 書き込み 990、ブランク中 990、描画中 0
$A18E (バンク 2)b2_sprites_A18E呼び出し81
スプライトの書き手: 走ったフレーム 81、スプライトのページへの書き込み 1,132
$810F (バンク 5)b5_dispatch_810Fテーブル77
スプライトの書き手: 走ったフレーム 77、スプライトのページへの書き込み 1
$83B2 (バンク 5)b5_sprites_83B2呼び出し46
スプライトの書き手: 走ったフレーム 46、スプライトのページへの書き込み 184
$A351 (バンク 2)呼び出し599,865
$FE98 (バンク 7)呼び出し234,162
$A42B (バンク 2)呼び出し222,285
$B821 (バンク 5)呼び出し198,420
$9C50 (バンク 0)呼び出し194,500
$FA93 (バンク 7)呼び出し169,766
$9F7C (バンク 0)呼び出し160,529
$A080 (バンク 6)呼び出し112,849
$9825 (バンク 0)呼び出し112,739
$98CC (バンク 0)呼び出し112,739
$99A0 (バンク 0)呼び出し112,720
$9AD3 (バンク 0)呼び出し112,720
$9B83 (バンク 0)呼び出し112,720
$F0AC (バンク 7)呼び出し108,177
$EB30 (バンク 7)呼び出し108,127
$FB74 (バンク 7)呼び出し70,970
$9020 (バンク 2)テーブル56,456
$90CF (バンク 2)呼び出し56,148
$903B (バンク 2)テーブル56,129
$EFD0 (バンク 7)呼び出し50,213
$F0E3 (バンク 7)呼び出し49,990
$F92A (バンク 7)呼び出し38,980
$87D3 (バンク 4)呼び出し30,679
$8BFF (バンク 4)テーブル30,679
$98C3 (バンク 2)呼び出し27,176
$A1F7 (バンク 2)呼び出し23,376
$FA3C (バンク 7)呼び出し22,966
$EC1B (バンク 7)テーブル20,555
$B1E6 (バンク 5)呼び出し20,548
$B7C8 (バンク 5)呼び出し19,835
$B3F4 (バンク 5)呼び出し19,694
$E78A (バンク 7)呼び出し19,541
$8D96 (バンク 5)呼び出し19,534
$8DCF (バンク 5)呼び出し19,534
$B29A (バンク 5)呼び出し19,534
$E6EA (バンク 7)呼び出し19,534
$E7FE (バンク 7)呼び出し19,534
$EDA0 (バンク 7)呼び出し19,534
$86E0 (バンク 4)呼び出し19,490
$F36F (バンク 7)呼び出し19,490
$F4A0 (バンク 7)呼び出し19,490
$F73E (バンク 7)呼び出し19,490
$F769 (バンク 7)呼び出し19,490
$8F85 (バンク 5)呼び出し19,311
$A13E (バンク 1)呼び出し19,311
$AABF (バンク 5)呼び出し19,008
$AAF1 (バンク 5)呼び出し19,008
$95AC (バンク 2)テーブル18,806
$979D (バンク 2)呼び出し17,129
$960C (バンク 2)テーブル16,781
$972A (バンク 2)呼び出し16,781
$EDF4 (バンク 7)呼び出し13,808
$8F5A (バンク 4)呼び出し13,724
$8EEB (バンク 4)テーブル13,252
$A011 (バンク 2)呼び出し11,756
$A591 (バンク 2)テーブル8,815
$9B79 (バンク 2)テーブル8,392
$95C1 (バンク 2)テーブル7,970
$9C09 (バンク 0)呼び出し7,594
$9F72 (バンク 0)呼び出し7,499
$EDFA (バンク 7)呼び出し7,218
$FA0C (バンク 7)呼び出し7,099
$9EE2 (バンク 0)呼び出し6,948
$8A03 (バンク 4)呼び出し6,195
$8A11 (バンク 4)呼び出し6,195
$B2CD (バンク 4)呼び出し5,974
$8A21 (バンク 4)呼び出し5,925
$FA89 (バンク 7)呼び出し5,393
$9BFF (バンク 0)呼び出し5,283
$9C27 (バンク 0)呼び出し5,078
$9C3B (バンク 0)呼び出し4,967
$EBAA (バンク 7)テーブル4,934
$E8F8 (バンク 7)呼び出し4,612
$E625 (バンク 7)呼び出し4,254
$9EDC (バンク 0)呼び出し4,195
$9C1D (バンク 0)呼び出し3,893
$95EC (バンク 2)テーブル3,849
$8424 (バンク 5)呼び出し2,115
$EB62 (バンク 7)テーブル2,115
$A8DE (バンク 5)呼び出し2,078
$84A4 (バンク 5)テーブル1,923
$8506 (バンク 5)呼び出し1,923
$EB86 (バンク 7)テーブル1,808
$FAA0 (バンク 7)呼び出し1,487
$8371 (バンク 4)呼び出し1,445
$F08D (バンク 7)呼び出し1,445
$A307 (バンク 2)呼び出し1,379
$FAAE (バンク 7)呼び出し1,143
$B3A9 (バンク 5)呼び出し1,132
$82A8 (バンク 5)呼び出し1,122
$E9A1 (バンク 7)テーブル1,122
$EEE4 (バンク 7)呼び出し1,122
$E96F (バンク 7)テーブル1,078
$A924 (バンク 5)呼び出し1,070
$96DD (バンク 2)呼び出し1,041
$973A (バンク 2)呼び出し1,041
$B559 (バンク 5)呼び出し1,021
$8006 (バンク 5)呼び出し994
$9D2A (バンク 2)呼び出し955
$831F (バンク 5)テーブル916
$E94B (バンク 7)テーブル602
$E9D8 (バンク 7)テーブル594
$A35D (バンク 2)呼び出し589
$E47D (バンク 7)呼び出し543
$E580 (バンク 7)呼び出し543
$B5EB (バンク 5)呼び出し514
$B5EF (バンク 5)呼び出し514
$B6A7 (バンク 5)呼び出し514
$A3E1 (バンク 2)呼び出し511
$8F0E (バンク 4)テーブル472
$9FDE (バンク 2)呼び出し472
$8D6D (バンク 5)テーブル463
$A4C4 (バンク 2)テーブル462
$E46D (バンク 7)呼び出し433
$F1A0 (バンク 7)呼び出し406
$E9C3 (バンク 7)テーブル405
$A223 (バンク 1)呼び出し397
$F149 (バンク 7)呼び出し397
$8070 (バンク 5)テーブル361
$B282 (バンク 5)呼び出し361
$E6CE (バンク 7)呼び出し355
$804F (バンク 2)呼び出し327
$B000 (バンク 4)呼び出し325
$F855 (バンク 7)呼び出し318
$F1AF (バンク 7)テーブル309
$A2A0 (バンク 2)テーブル308
$E679 (バンク 7)呼び出し306
$B0E1 (バンク 5)呼び出し301
$8929 (バンク 5)呼び出し299
$9830 (バンク 2)テーブル293
$EA3D (バンク 7)呼び出し292
$8A4D (バンク 4)呼び出し270
$B39F (バンク 4)呼び出し270
$B83A (バンク 5)呼び出し248
$A437 (バンク 2)呼び出し243
$80D7 (バンク 6)呼び出し241
$8A2F (バンク 5)テーブル238
$8D60 (バンク 5)テーブル235
$8D84 (バンク 1)呼び出し218
$E608 (バンク 7)呼び出し212
$EBA1 (バンク 7)呼び出し210
$AC07 (バンク 5)呼び出し205
$B05E (バンク 5)呼び出し204
$8D05 (バンク 5)テーブル186
$877B (バンク 5)テーブル178
$8D00 (バンク 1)呼び出し176
$8CB6 (バンク 5)テーブル154
$905D (バンク 2)テーブル154
$A47F (バンク 2)テーブル154
$A4BD (バンク 2)テーブル154
$A51E (バンク 2)テーブル154
$AC10 (バンク 5)呼び出し154
$AC16 (バンク 5)呼び出し154
$8015 (バンク 4)テーブル150
$8832 (バンク 4)呼び出し150
$B179 (バンク 4)呼び出し150
$FEB3 (バンク 7)呼び出し150
$FEBB (バンク 7)呼び出し150
$A5DF (バンク 2)テーブル147
$EA51 (バンク 7)呼び出し147
$EBC0 (バンク 7)テーブル146
$83D7 (バンク 5)呼び出し136
$A3C8 (バンク 2)呼び出し134
$A764 (バンク 2)呼び出し134
$8091 (バンク 3)呼び出し132
$80DC (バンク 3)呼び出し132
$E977 (バンク 7)テーブル131
$94E7 (バンク 2)テーブル128
$B68D (バンク 5)呼び出し115
$808C (バンク 6)呼び出し110
$80C6 (バンク 6)呼び出し110
$9512 (バンク 2)テーブル110
$9545 (バンク 2)テーブル110
$B4AC (バンク 5)呼び出し110
$B4E8 (バンク 5)呼び出し110
$E45E (バンク 7)呼び出し110
$A8C4 (バンク 5)呼び出し108
$A9F4 (バンク 5)呼び出し108
$AB30 (バンク 5)呼び出し108
$8941 (バンク 5)呼び出し102
$896E (バンク 5)呼び出し102
$90B8 (バンク 5)呼び出し102
$B0B6 (バンク 5)呼び出し102
$B366 (バンク 5)呼び出し102
$EA6B (バンク 7)テーブル102
$EAD3 (バンク 7)呼び出し102
$EDD7 (バンク 7)呼び出し102
$833D (バンク 5)テーブル79
$8044 (バンク 3)呼び出し66
$8047 (バンク 6)テーブル66
$805E (バンク 3)呼び出し66
$80A4 (バンク 6)呼び出し66
$8484 (バンク 5)呼び出し66
$B000 (バンク 5)テーブル66
$B009 (バンク 5)テーブル66
$B010 (バンク 5)テーブル66
$B016 (バンク 5)テーブル66
$B01D (バンク 5)テーブル66
$B02A (バンク 5)テーブル66
$B036 (バンク 5)テーブル66
$E9F7 (バンク 7)テーブル66
$EA00 (バンク 7)呼び出し66
$EA11 (バンク 7)テーブル66
$8070 (バンク 6)テーブル65
$80B5 (バンク 6)呼び出し65
$8109 (バンク 6)呼び出し65
$EB96 (バンク 7)テーブル65
$F1C3 (バンク 7)テーブル63
$983C (バンク 2)テーブル57
$A0F0 (バンク 2)呼び出し53
$848C (バンク 5)呼び出し51
$E85A (バンク 7)呼び出し51
$82BB (バンク 5)テーブル44
$830E (バンク 5)テーブル44
$83C2 (バンク 5)呼び出し44
$B07A (バンク 5)テーブル44
$B464 (バンク 5)呼び出し44
$B522 (バンク 5)テーブル44
$E68F (バンク 7)呼び出し44
$EADD (バンク 7)呼び出し44
$835C (バンク 5)テーブル39
$8439 (バンク 5)テーブル39
$8492 (バンク 5)テーブル39
$84BA (バンク 5)テーブル38
$84DF (バンク 5)テーブル38
$B560 (バンク 5)呼び出し38
$82FB (バンク 5)呼び出し35
$F1D0 (バンク 7)呼び出し32
$873F (バンク 4)テーブル28
$847E (バンク 5)テーブル26
$8A13 (バンク 5)呼び出し19
$902E (バンク 5)呼び出し19
$9573 (バンク 2)テーブル18
$959A (バンク 2)テーブル18
$84E8 (バンク 5)テーブル12
$EBA3 (バンク 7)呼び出し12
$9FC5 (バンク 2)テーブル9
$8600 (バンク 5)テーブル8
$8038 (バンク 5)テーブル7
$8057 (バンク 5)テーブル7
$805E (バンク 5)テーブル7
$8062 (バンク 5)テーブル7
$806C (バンク 5)テーブル7
$819A (バンク 5)テーブル7
$8CA6 (バンク 5)テーブル7
$8CAB (バンク 5)テーブル7
$8CC8 (バンク 5)テーブル7
$8CCD (バンク 5)テーブル7
$8CD2 (バンク 5)テーブル7
$8CDB (バンク 5)テーブル7
$9D42 (バンク 0)呼び出し7
$8D0B (バンク 5)テーブル6
$8283 (バンク 5)呼び出し4
$EA2B (バンク 7)呼び出し4
$A017 (バンク 2)呼び出し2
$F1DA (バンク 7)テーブル2
$8E0A (バンク 5)呼び出し1
$8E26 (バンク 5)呼び出し1
$8E42 (バンク 5)テーブル1

待つ場所

規則が名付けたループのうち、ルーチンの内側にあって、それ自身はコードの入口ではないもの。

場所リスティングでの名前何であるか、その証拠
$E45B (バンク 7)b7_spin_E45B
待機のループ: 周回 837,334,170、一フレームの周回 7,024

ジャンプに使うテーブル

ゲームがその中から一つを選ぶ、アドレスのテーブル。ジャンプエンジンへの呼び出しの直後にあるものもあれば、カートリッジのどこかにあるものもある。後者は、ゲームが通って跳んだアドレスがどこから読み込まれたかで見つける。アドレスを積んでそこへ戻ることで跳ぶゲームもあれば、テーブルを二つに分けて、アドレスの下位バイトをある場所に、上位バイトを別の場所に置くゲームもある。どちらも同じやり方で見つける。項目は、走行が選ぶのを見た所までを数える。本当のテーブルはもっと長いかもしれない。最後の列は、その値が項目を選んだメモリのバイトで、追えた場合だけ書いてある: ゲームのモードか、物体の一つが今していることだ。

場所届き方項目選ばれた数選んだバイト
$900E (バンク 2)呼び出しの直後33$042D
$901A (バンク 2)呼び出しの直後33$042D
$9035 (バンク 2)呼び出しの直後33$0013
$90DA (バンク 2)呼び出しの直後22$042D
$90E4 (バンク 2)呼び出しの直後55$042D
$A292 (バンク 2)呼び出しの直後75$0013
$A596 (バンク 2)呼び出しの直後22$0013
$8024 (バンク 5)呼び出しの直後109$00E1
$82AD (バンク 5)呼び出しの直後65$0013
$8429 (バンク 5)呼び出しの直後77$0013
$8C8C (バンク 5)呼び出しの直後1313$0013
$8E30 (バンク 5)呼び出しの直後11$0656
$8043 (バンク 6)呼び出しの直後22$0013
$E923 (バンク 7)呼び出しの直後411$0012, $0016
$E9E5 (バンク 7)呼び出しの直後29$0013
$F1A7 (バンク 7)呼び出しの直後44$0395, $0396, $0398, $0397

ルーチンが共有するメモリ

あるルーチンが書き、別のルーチンが読んだメモリは 1,373 バイト。添字を通して届いた場所は 64 か所で、メモリの中のテーブルや、物体の枠の並びはそう見える。

004080C0$0000$0100$0200$0300$0400$0500$0600$070011↓1X1Y111↓1
コンソールのメモリ 2,048 バイト。一行が 256 バイト。 番号の付いた帯は、下に描いた物体の表の列の一つで、番号は下の並び順と同じ。長さは表と同じで、塗り方も下の図と同じだ。表の列どうしが重なる所では、ものが一つずつ、それぞれの性質をすべて持って順に並んでいるので、表は一つの輪郭として描き、性質が始まる所ごとに印を付けてある。 濃い四角は、規則が比較を見た位置。 行の下の印は、最も忙しい共有バイト 24 個のうちの一つ。 そのうち 1 個はカートリッジ側のメモリにあり、この図には無い。 二行目は、プロセッサがスタックを置くページだ。 添字で届いた範囲のうち、どの表にも属さないものは描いていない: メモリを消すループは、ほとんどすべてのバイトに届くからだ。

添字で届いた範囲: 位置を含むもの、次いで最も長いもの

起点届いたバイト命令含まれる位置
$00002407横 1
$00701126横 1
$00841126縦 5
$007181横 4
$02012536
$02002535
$02022533
$02032533
$05601281
$01FF1131
$03025212
$0530485

位置と一緒に動くもの

少なくとも二つのルーチンが、位置の配列と一緒に、同じ範囲をたどった配列。画面上のものの表は、メモリの中ではこう見える: 性質ごとに配列が一つ、ものごとに枠が一つ。どの配列が位置を持つかは言える。ほかの配列のうち、どれが位置に足し込まれるか (速度がすること) と、どれがジャンプのテーブルの行き先を選ぶか (状態や種類がすること)、どれが減らされる一方か (タイマーがすること) も言える。残りが何を持つかは、まだ名付けていない。

012345678910$0019$0028↓+1$0070X$0084Y$0098+1$00AC+8$00C0↓+3$049E
表 1: 22 個のルーチンが一緒にたどる、最大 11 枠の配列 8 本。列はそれぞれのアドレスにある配列、行は枠で、画面上のもの一つが、すべての列を横切る一行になる。 列の下の数は、その配列が表の長さを超えて届いたバイト数。 X と Y は位置で、濃い四角は規則が比較を見た枠。+ は位置に足し込まれる配列で、速度がすることだ。→ はジャンプを選んだ配列で、状態や種類がすることだ。↓ は減らされる一方の配列で、タイマーがすることだ。輪郭だけの列は一緒に動くが、まだ名付けていない。
枠配列ルーチン横の位置縦の位置位置に足し込まれる配列ジャンプを選ぶ配列減らされる一方の配列一緒に動く配列
11822$0070$0084$0028, $00C0$0019, $0028, $0098, $00AC, $00C0, $049E

最も忙しい共有バイト 24 個

バイト読み書き書くルーチン読むルーチン
$000033,376,88466
$000114,727,91666
$00F811,975,69846
$000210,458,69766
$00037,383,72666
$000E2,145,53366
$00042,139,12466
$000F1,916,70866
$00051,241,79166
$00841,001,84566
$0007998,72766
$0340873,83734
$000A842,25866
$00C1826,18156
$6E2C801,24923
$000B745,28466
$0070713,17066
$00FA700,77814
$0341663,34646
$0006636,85466
$000D628,58666
$0015558,21426
$00C2554,48966
$00AC550,01266

このページはゲームのバイトを一つも見せない。これらの数を読み取ったリスティングは、カートリッジと一緒に留まる。

すべてのゲーム