{"schema":1,"platform":"c64","game":"way-of-the-exploding-fist","title":"Way of the Exploding Fist","build":"","symbols_sha256":"caf191ed0dbaf93d4c70e22c5f395a441f2594c5033769ef10f58665cde26bc5","index":[{"a":0,"n":"start","k":"variable","len":1,"c":true},{"a":1,"n":"cpu_port","k":"variable","len":1,"c":true},{"a":2,"n":"fighter_ptr_r1c1","k":"variable","len":2,"c":true},{"a":4,"n":"fighter_ptr_r1c2","k":"variable","len":2,"c":true},{"a":6,"n":"fighter_ptr_r1c3","k":"variable","len":2,"c":true},{"a":8,"n":"fighter_ptr_r2c1","k":"variable","len":2,"c":true},{"a":10,"n":"fighter_ptr_r2c2","k":"variable","len":2,"c":true},{"a":12,"n":"fighter_ptr_r2c3","k":"variable","len":2,"c":true},{"a":14,"n":"fighter_ptr_r3c1","k":"variable","len":2,"c":true},{"a":16,"n":"fighter_ptr_r3c2","k":"variable","len":2,"c":true},{"a":18,"n":"fighter_ptr_r3c3","k":"variable","len":2,"c":true},{"a":20,"n":"fighter_spr_x","k":"variable","len":2,"c":true},{"a":22,"n":"fighter_spr_y","k":"variable","len":1,"c":true},{"a":23,"n":"fighter_spr_y_f1","k":"variable","len":1,"c":true},{"a":24,"n":"fighter_spr_x_hi","k":"variable","len":2,"c":true},{"a":26,"n":"mux_a_x","k":"variable","len":1,"c":true},{"a":27,"n":"mux_b_x","k":"variable","len":1,"c":true},{"a":28,"n":"mux_a_y","k":"variable","len":1,"c":true},{"a":29,"n":"mux_b_y","k":"variable","len":1,"c":true},{"a":30,"n":"mux_a_xhi","k":"variable","len":1,"c":true},{"a":31,"n":"mux_b_xhi","k":"variable","len":1,"c":true},{"a":32,"n":"mux_a_fighter","k":"variable","len":1,"c":true},{"a":33,"n":"mux_b_fighter","k":"variable","len":1,"c":true},{"a":34,"n":"fighter_colour","k":"variable","len":1,"c":true},{"a":35,"n":"fighter_colour_f1","k":"variable","len":1,"c":true},{"a":36,"n":"spr012_fighter","k":"variable","len":1,"c":true},{"a":37,"n":"after_mux_irq","k":"variable","len":1,"c":true},{"a":38,"n":"after_mux_irq_hi","k":"variable","len":1,"c":true},{"a":39,"n":"fighter_row4_ptr_c1","k":"variable","len":2,"c":true},{"a":41,"n":"fighter_row4_ptr_c2","k":"variable","len":2,"c":true},{"a":43,"n":"fighter_row4_ptr_c3","k":"variable","len":2,"c":true},{"a":45,"n":"speech_ptr","k":"variable","len":1,"c":true},{"a":46,"n":"speech_ptr_hi","k":"variable","len":1,"c":true},{"a":47,"n":"speech_volume","k":"variable","len":2,"c":true},{"a":49,"n":"speech_end","k":"variable","len":1,"c":true},{"a":50,"n":"speech_end_hi","k":"variable","len":1,"c":true},{"a":51,"n":"speech_state","k":"variable","len":1,"c":true},{"a":52,"n":"unpack_src","k":"variable","len":1,"c":true},{"a":53,"n":"unpack_src_hi","k":"variable","len":1,"c":true},{"a":54,"n":"unpack_dst","k":"variable","len":1,"c":true},{"a":55,"n":"unpack_dst_hi","k":"variable","len":1,"c":true},{"a":56,"n":"unpack_count","k":"table","len":6,"c":true},{"a":62,"n":"speech_save_x","k":"variable","len":1,"c":true},{"a":63,"n":"colour_src","k":"variable","len":1,"c":true},{"a":64,"n":"colour_src_hi","k":"variable","len":1,"c":true},{"a":65,"n":"colour_nybble","k":"variable","len":1,"c":true},{"a":66,"n":"colour_read_mask","k":"variable","len":1,"c":true},{"a":67,"n":"colour_write_mask","k":"variable","len":1,"c":true},{"a":68,"n":"colour_scratch","k":"variable","len":1,"c":true},{"a":69,"n":"anim_request","k":"variable","len":1,"c":true},{"a":70,"n":"anim_request_f1","k":"variable","len":1,"c":true},{"a":71,"n":"anim_loaded","k":"variable","len":1,"c":true},{"a":72,"n":"anim_loaded_f1","k":"variable","len":1,"c":true},{"a":73,"n":"anim_timer","k":"variable","len":2,"c":true},{"a":75,"n":"anim_reverse","k":"variable","len":1,"c":true},{"a":76,"n":"anim_reverse_f1","k":"variable","len":1,"c":true},{"a":77,"n":"anim_offset","k":"variable","len":2,"c":true},{"a":79,"n":"anim_list_ptr","k":"variable","len":1,"c":true},{"a":80,"n":"anim_list_ptr_hi","k":"variable","len":1,"c":true},{"a":81,"n":"fighter_frame","k":"variable","len":1,"c":true},{"a":82,"n":"fighter_frame_f1","k":"variable","len":1,"c":true},{"a":83,"n":"fighter_facing","k":"variable","len":1,"c":true},{"a":84,"n":"fighter_facing_f1","k":"variable","len":1,"c":true},{"a":85,"n":"anim_dx","k":"variable","len":2,"c":true},{"a":87,"n":"anim_dy","k":"variable","len":2,"c":true},{"a":89,"n":"anim_ended","k":"variable","len":1,"c":true},{"a":90,"n":"anim_ended_f1","k":"variable","len":1,"c":true},{"a":91,"n":"anim_length","k":"variable","len":2,"c":true},{"a":93,"n":"shape_direct","k":"variable","len":1,"c":true},{"a":94,"n":"knockdown_result","k":"variable","len":1,"c":true},{"a":95,"n":"hit_state","k":"variable","len":1,"c":true},{"a":96,"n":"hit_state_f1","k":"variable","len":1,"c":true},{"a":97,"n":"fighter_move","k":"variable","len":2,"c":true},{"a":99,"n":"move_request","k":"variable","len":2,"c":true},{"a":101,"n":"is_computer","k":"variable","len":1,"c":true},{"a":102,"n":"is_computer_f1","k":"variable","len":1,"c":true},{"a":103,"n":"fighter_flag_67","k":"variable","len":2,"c":true},{"a":105,"n":"opponent","k":"variable","len":1,"c":true},{"a":106,"n":"fighter_x","k":"variable","len":1,"c":true},{"a":107,"n":"fighter_x_f1","k":"variable","len":1,"c":true},{"a":108,"n":"fighter_y","k":"variable","len":1,"c":true},{"a":109,"n":"fighter_y_f1","k":"variable","len":1,"c":true},{"a":110,"n":"blow_value","k":"variable","len":1,"c":true},{"a":111,"n":"blow_value_f1","k":"variable","len":1,"c":true},{"a":112,"n":"reach_ptr","k":"variable","len":1,"c":true},{"a":113,"n":"reach_ptr_hi","k":"variable","len":1,"c":true},{"a":114,"n":"reach_aim","k":"variable","len":1,"c":true},{"a":115,"n":"fighter_distance","k":"variable","len":1,"c":true},{"a":116,"n":"move_hold","k":"variable","len":2,"c":true},{"a":118,"n":"sprite_buffer","k":"variable","len":1,"c":true},{"a":119,"n":"sprite_buffer_f1","k":"variable","len":1,"c":true},{"a":120,"n":"build_dst","k":"variable","len":1,"c":true},{"a":121,"n":"build_dst_hi","k":"variable","len":1,"c":true},{"a":122,"n":"build_ptr_0","k":"variable","len":1,"c":true},{"a":123,"n":"build_ptr_1","k":"variable","len":1,"c":true},{"a":124,"n":"build_ptr_2","k":"variable","len":1,"c":true},{"a":125,"n":"build_ptr_3","k":"variable","len":1,"c":true},{"a":126,"n":"build_ptr_4","k":"variable","len":1,"c":true},{"a":127,"n":"build_ptr_5","k":"variable","len":1,"c":true},{"a":128,"n":"build_ptr_6","k":"variable","len":1,"c":true},{"a":129,"n":"build_ptr_7","k":"variable","len":1,"c":true},{"a":130,"n":"build_ptr_8","k":"variable","len":1,"c":true},{"a":131,"n":"build_save_x","k":"table","len":3,"c":true},{"a":134,"n":"reaction_delay","k":"variable","len":1,"c":true},{"a":135,"n":"reaction_delay_f1","k":"variable","len":1,"c":true},{"a":136,"n":"anim_new_step","k":"variable","len":2,"c":true},{"a":138,"n":"halves","k":"variable","len":1,"c":true},{"a":139,"n":"halves_f1","k":"variable","len":1,"c":true},{"a":140,"n":"scoring_move","k":"variable","len":1,"c":true},{"a":141,"n":"ai_hold_mask","k":"variable","len":1,"c":true},{"a":142,"n":"ai_hold_timer","k":"variable","len":1,"c":true},{"a":143,"n":"ai_hold_timer_f1","k":"variable","len":1,"c":true},{"a":144,"n":"ai_chosen_move","k":"variable","len":1,"c":true},{"a":145,"n":"ai_chosen_move_f1","k":"variable","len":2,"c":true},{"a":147,"n":"ai_scratch","k":"variable","len":1,"c":true},{"a":148,"n":"ai_attack_spread","k":"variable","len":1,"c":true},{"a":149,"n":"ai_close_timer","k":"variable","len":1,"c":true},{"a":150,"n":"ai_close_timer_f1","k":"variable","len":1,"c":true},{"a":151,"n":"ai_close_mask","k":"variable","len":1,"c":true},{"a":152,"n":"random_state","k":"variable","len":1,"c":true},{"a":153,"n":"random_frame","k":"variable","len":1,"c":true},{"a":154,"n":"ai_turning","k":"variable","len":1,"c":true},{"a":155,"n":"ai_turning_f1","k":"variable","len":1,"c":true},{"a":156,"n":"ai_defence_mask","k":"variable","len":1,"c":true},{"a":157,"n":"ai_plan","k":"variable","len":1,"c":true},{"a":158,"n":"ai_plan_f1","k":"variable","len":1,"c":true},{"a":159,"n":"ai_plan_vector","k":"variable","len":1,"c":true},{"a":160,"n":"ai_plan_vector_hi","k":"variable","len":1,"c":true},{"a":161,"n":"ai_forced_wait","k":"variable","len":1,"c":true},{"a":162,"n":"ai_forced_wait_f1","k":"variable","len":1,"c":true},{"a":163,"n":"ai_back_mask","k":"variable","len":1,"c":true},{"a":164,"n":"ai_walk_timer","k":"variable","len":1,"c":true},{"a":165,"n":"ai_walk_timer_f1","k":"variable","len":1,"c":true},{"a":166,"n":"ai_pause_mask","k":"variable","len":2,"c":true},{"a":168,"n":"ai_walk_mask","k":"variable","len":2,"c":true},{"a":170,"n":"ai_react_timer","k":"variable","len":2,"c":true},{"a":172,"n":"ai_react_mask","k":"variable","len":1,"c":true},{"a":173,"n":"panel_bg","k":"variable","len":1,"c":true},{"a":174,"n":"players_minus_one","k":"variable","len":1,"c":true},{"a":175,"n":"stage","k":"variable","len":1,"c":true},{"a":176,"n":"game_running","k":"variable","len":1,"c":true},{"a":177,"n":"clock_frames","k":"variable","len":1,"c":true},{"a":178,"n":"clock_seconds","k":"variable","len":1,"c":true},{"a":179,"n":"fighter_level","k":"variable","len":1,"c":true},{"a":180,"n":"fighter_level_f1","k":"variable","len":1,"c":true},{"a":181,"n":"wins_to_rank","k":"variable","len":1,"c":true},{"a":182,"n":"backdrop_shown","k":"table","len":5,"c":true},{"a":187,"n":"last_key_row","k":"variable","len":1,"c":true},{"a":188,"n":"time_up","k":"variable","len":1,"c":true},{"a":189,"n":"bout_points","k":"variable","len":1,"c":true},{"a":190,"n":"bout_points_f1","k":"variable","len":1,"c":true},{"a":191,"n":"text_ptr","k":"variable","len":1,"c":true},{"a":192,"n":"text_ptr_hi","k":"variable","len":2,"c":true},{"a":194,"n":"bull_state","k":"variable","len":2,"c":true},{"a":196,"n":"key_scratch","k":"variable","len":1,"c":true},{"a":197,"n":"key_fire","k":"variable","len":1,"c":true},{"a":198,"n":"keyboard_mode","k":"variable","len":1,"c":true},{"a":199,"n":"last_key","k":"variable","len":1,"c":true},{"a":200,"n":"hiscore_index","k":"variable","len":1,"c":true},{"a":201,"n":"hiscore_rank","k":"variable","len":1,"c":true},{"a":202,"n":"rank_text_col","k":"variable","len":1,"c":true},{"a":203,"n":"hiscore_place","k":"variable","len":1,"c":true},{"a":204,"n":"colour_ptr","k":"variable","len":1,"c":true},{"a":205,"n":"colour_ptr_hi","k":"variable","len":1,"c":true},{"a":206,"n":"scratch_ce","k":"variable","len":1,"c":true},{"a":207,"n":"speech_off","k":"table","len":42,"c":true},{"a":249,"n":"music_order_ptr","k":"variable","len":1,"c":true},{"a":250,"n":"zp_music_order_hi","k":"variable","len":1,"c":true},{"a":251,"n":"music_pattern_ptr","k":"variable","len":1,"c":true},{"a":252,"n":"zp_music_pattern_hi","k":"variable","len":1,"c":true},{"a":253,"n":"music_vector","k":"variable","len":1,"c":true},{"a":254,"n":"music_vector_hi","k":"variable","len":1,"c":true},{"a":255,"n":"song","k":"variable","len":1,"c":true},{"a":512,"n":"speech_period_lo","k":"table","len":256,"c":true},{"a":768,"n":"speech_period_hi","k":"table","len":256,"c":true},{"a":1024,"n":"song1_pattern_00","k":"table","len":108,"c":true},{"a":1132,"n":"song1_pattern_01","k":"table","len":26,"c":true},{"a":1158,"n":"song1_pattern_02","k":"table","len":56,"c":true},{"a":1214,"n":"song1_pattern_03","k":"table","len":4,"c":true},{"a":1218,"n":"song1_pattern_04","k":"table","len":46,"c":true},{"a":1264,"n":"a_04F0","k":"variable","len":1,"c":true},{"a":1265,"n":"song1_pattern_05","k":"table","len":21,"c":true},{"a":1286,"n":"song1_pattern_06","k":"table","len":17,"c":true},{"a":1303,"n":"song1_pattern_07","k":"table","len":53,"c":true},{"a":1356,"n":"song1_pattern_08","k":"table","len":24,"c":true},{"a":1380,"n":"song1_pattern_09","k":"table","len":3,"c":true},{"a":1383,"n":"song1_pattern_10","k":"table","len":63,"c":true},{"a":1446,"n":"song1_pattern_11","k":"table","len":51,"c":true},{"a":1497,"n":"song1_pattern_12","k":"table","len":18,"c":true},{"a":1515,"n":"song1_pattern_13","k":"table","len":24,"c":true},{"a":1539,"n":"song2_pattern_00","k":"table","len":18,"c":true},{"a":1557,"n":"song2_pattern_01","k":"table","len":17,"c":true},{"a":1574,"n":"song2_pattern_02","k":"table","len":36,"c":true},{"a":1610,"n":"song2_pattern_03","k":"table","len":75,"c":true},{"a":1685,"n":"song2_pattern_04","k":"table","len":35,"c":true},{"a":1720,"n":"song2_pattern_05","k":"table","len":7,"c":true},{"a":1727,"n":"song2_pattern_06","k":"table","len":3,"c":true},{"a":1730,"n":"song2_pattern_07","k":"table","len":44,"c":true},{"a":1774,"n":"song2_pattern_08","k":"table","len":45,"c":true},{"a":1819,"n":"song2_pattern_09","k":"table","len":17,"c":true},{"a":1836,"n":"song2_pattern_10","k":"table","len":17,"c":true},{"a":1853,"n":"song2_pattern_11","k":"table","len":3,"c":true},{"a":1856,"n":"song3_pattern_00","k":"table","len":9,"c":true},{"a":1865,"n":"song3_pattern_01","k":"table","len":65,"c":true},{"a":1930,"n":"song3_pattern_02","k":"table","len":105,"c":true},{"a":2035,"n":"song3_pattern_03","k":"table","len":13,"c":true},{"a":2048,"n":"song3_pattern_03_0800","k":"table","len":33,"c":true},{"a":2081,"n":"song3_pattern_04","k":"table","len":9,"c":true},{"a":2090,"n":"song3_pattern_05","k":"table","len":9,"c":true},{"a":2099,"n":"song3_pattern_06","k":"table","len":13,"c":true},{"a":2112,"n":"song3_pattern_07","k":"table","len":99,"c":true},{"a":2211,"n":"song3_pattern_08","k":"table","len":51,"c":true},{"a":2262,"n":"song4_pattern_00","k":"table","len":4,"c":true},{"a":2266,"n":"song4_pattern_01","k":"table","len":45,"c":true},{"a":2311,"n":"song4_pattern_02","k":"table","len":46,"c":true},{"a":2357,"n":"song4_pattern_03","k":"table","len":34,"c":true},{"a":2391,"n":"song1_pattern_offsets","k":"table","len":28,"c":true},{"a":2419,"n":"song2_pattern_offsets","k":"variable","len":1,"c":true},{"a":2420,"n":"f_0974","k":"table","len":23,"c":true},{"a":2443,"n":"song3_pattern_offsets","k":"table","len":18,"c":true},{"a":2461,"n":"song4_pattern_offsets","k":"table","len":8,"c":true},{"a":2469,"n":"music_play","k":"routine","len":42,"c":true},{"a":2479,"n":"b_09AF","k":"branch","len":1,"c":false},{"a":2511,"n":"music_start_song","k":"routine","len":130,"c":true},{"a":2604,"n":"b_0A2C","k":"branch","len":1,"c":false},{"a":2641,"n":"music_play_frame","k":"routine","len":38,"c":true},{"a":2643,"n":"b_0A53","k":"branch","len":1,"c":false},{"a":2679,"n":"music_order_dispatch","k":"routine","len":23,"c":true},{"a":2702,"n":"music_voice_pitch","k":"routine","len":56,"c":true},{"a":2713,"n":"b_0A99","k":"branch","len":1,"c":false},{"a":2725,"n":"b_0AA5","k":"branch","len":1,"c":false},{"a":2741,"n":"b_0AB5","k":"branch","len":1,"c":false},{"a":2749,"n":"b_0ABD","k":"branch","len":1,"c":false},{"a":2758,"n":"music_cmd_play_pattern","k":"routine","len":11,"c":true},{"a":2769,"n":"a_0AD1","k":"routine","len":1,"c":true},{"a":2770,"n":"a_0AD2","k":"routine","len":11,"c":true},{"a":2781,"n":"a_0ADD","k":"routine","len":1,"c":true},{"a":2782,"n":"a_0ADE","k":"routine","len":174,"c":true},{"a":2802,"n":"b_0AF2","k":"branch","len":1,"c":false},{"a":2810,"n":"b_0AFA","k":"branch","len":1,"c":false},{"a":2838,"n":"b_0B16","k":"branch","len":1,"c":false},{"a":2841,"n":"b_0B19","k":"branch","len":1,"c":false},{"a":2844,"n":"j_0B1C","k":"branch","len":1,"c":false},{"a":2869,"n":"b_0B35","k":"branch","len":1,"c":false},{"a":2877,"n":"b_0B3D","k":"branch","len":1,"c":false},{"a":2890,"n":"b_0B4A","k":"branch","len":1,"c":false},{"a":2918,"n":"b_0B66","k":"branch","len":1,"c":false},{"a":2927,"n":"j_0B6F","k":"branch","len":1,"c":false},{"a":2956,"n":"music_note_set_pitch","k":"routine","len":39,"c":true},{"a":2973,"n":"b_0B9D","k":"branch","len":1,"c":false},{"a":2992,"n":"b_0BB0","k":"branch","len":1,"c":false},{"a":2995,"n":"music_sid_write_voice","k":"routine","len":43,"c":true},{"a":3038,"n":"music_sid_clear","k":"routine","len":31,"c":true},{"a":3042,"n":"b_0BE2","k":"branch","len":1,"c":false},{"a":3069,"n":"music_voice_reset","k":"routine","len":73,"c":true},{"a":3142,"n":"music_reset_voices","k":"routine","len":9,"c":true},{"a":3144,"n":"b_0C48","k":"branch","len":1,"c":false},{"a":3151,"n":"music_cmd_jump","k":"routine","len":9,"c":true},{"a":3160,"n":"music_cmd_stop","k":"routine","len":6,"c":true},{"a":3166,"n":"music_cmd_repeat","k":"routine","len":46,"c":true},{"a":3186,"n":"b_0C72","k":"branch","len":1,"c":false},{"a":3200,"n":"b_0C80","k":"branch","len":1,"c":false},{"a":3212,"n":"music_target_freq_lo","k":"table","len":3,"c":true},{"a":3215,"n":"music_target_freq_hi","k":"table","len":3,"c":true},{"a":3218,"n":"music_pulse_base_lo","k":"table","len":3,"c":true},{"a":3221,"n":"music_pulse_base_hi","k":"table","len":3,"c":true},{"a":3224,"n":"music_voice_control","k":"table","len":3,"c":true},{"a":3227,"n":"music_voice_ad","k":"table","len":3,"c":true},{"a":3230,"n":"music_voice_sr","k":"table","len":3,"c":true},{"a":3233,"n":"music_voice_active","k":"variable","len":1,"c":true},{"a":3234,"n":"music_voice2_active","k":"variable","len":1,"c":true},{"a":3235,"n":"music_voice3_active","k":"variable","len":1,"c":true},{"a":3236,"n":"music_order_ptr_lo","k":"variable","len":1,"c":true},{"a":3237,"n":"music_order_ptr_lo_v2","k":"variable","len":1,"c":true},{"a":3238,"n":"music_order_ptr_lo_v3","k":"variable","len":1,"c":true},{"a":3239,"n":"music_order_ptr_hi","k":"variable","len":1,"c":true},{"a":3240,"n":"music_order_ptr_hi_v2","k":"variable","len":1,"c":true},{"a":3241,"n":"music_order_ptr_hi_v3","k":"variable","len":1,"c":true},{"a":3242,"n":"music_pattern_ptr_lo","k":"table","len":3,"c":true},{"a":3245,"n":"music_pattern_ptr_hi","k":"table","len":3,"c":true},{"a":3248,"n":"music_order_index","k":"table","len":3,"c":true},{"a":3251,"n":"music_pattern_start_flag","k":"table","len":3,"c":true},{"a":3254,"n":"music_pattern_index","k":"table","len":3,"c":true},{"a":3257,"n":"music_note_timer","k":"table","len":3,"c":true},{"a":3260,"n":"music_release_flag","k":"table","len":3,"c":true},{"a":3263,"n":"music_transpose","k":"table","len":3,"c":true},{"a":3266,"n":"music_filter_cutoff_lo","k":"variable","len":1,"c":true},{"a":3267,"n":"music_filter_cutoff_hi","k":"variable","len":1,"c":true},{"a":3268,"n":"music_filter_mod_source","k":"variable","len":1,"c":true},{"a":3269,"n":"music_filter_mod_shift","k":"variable","len":1,"c":true},{"a":3270,"n":"music_filter_mod_direction","k":"variable","len":1,"c":true},{"a":3271,"n":"music_note_flags","k":"table","len":3,"c":true},{"a":3274,"n":"music_note_octave","k":"table","len":3,"c":true},{"a":3277,"n":"music_note_semitone","k":"table","len":3,"c":true},{"a":3280,"n":"music_tempo_counter","k":"variable","len":1,"c":true},{"a":3281,"n":"music_tempo_counter_v2","k":"variable","len":1,"c":true},{"a":3282,"n":"music_tempo_counter_v3","k":"variable","len":1,"c":true},{"a":3283,"n":"music_tempo_reload","k":"variable","len":1,"c":true},{"a":3284,"n":"music_tempo_reload_v2","k":"variable","len":1,"c":true},{"a":3285,"n":"music_tempo_reload_v3","k":"variable","len":1,"c":true},{"a":3286,"n":"music_scratch_hi","k":"variable","len":1,"c":true},{"a":3287,"n":"music_scratch_lo","k":"table","len":4,"c":true},{"a":3291,"n":"music_lfo_value","k":"table","len":3,"c":true},{"a":3294,"n":"music_voice3_env_sample","k":"variable","len":1,"c":true},{"a":3295,"n":"music_voice3_osc_sample","k":"variable","len":1,"c":true},{"a":3296,"n":"music_lfo_rate","k":"table","len":3,"c":true},{"a":3299,"n":"music_lfo_direction","k":"table","len":3,"c":true},{"a":3302,"n":"music_pwm_source","k":"table","len":3,"c":true},{"a":3305,"n":"music_pwm_shift","k":"table","len":3,"c":true},{"a":3308,"n":"music_pulse_lo","k":"table","len":3,"c":true},{"a":3311,"n":"music_pulse_hi","k":"table","len":3,"c":true},{"a":3314,"n":"music_freq_lo","k":"table","len":3,"c":true},{"a":3317,"n":"music_freq_hi","k":"table","len":3,"c":true},{"a":3320,"n":"music_slide_enable","k":"table","len":3,"c":true},{"a":3323,"n":"music_slide_rate_lo","k":"table","len":3,"c":true},{"a":3326,"n":"music_slide_rate_hi","k":"table","len":3,"c":true},{"a":3329,"n":"music_repeat_counter","k":"table","len":3,"c":true},{"a":3332,"n":"music_bit_clear_masks","k":"table","len":8,"c":true},{"a":3340,"n":"music_bit_set_masks","k":"table","len":8,"c":true},{"a":3348,"n":"music_note_freq_table","k":"table","len":13,"c":true},{"a":3361,"n":"music_duration_table","k":"table","len":16,"c":true},{"a":3377,"n":"music_order_commands","k":"variable","len":1,"c":true},{"a":3378,"n":"f_0D32","k":"table","len":7,"c":true},{"a":3385,"n":"music_volume_mode","k":"variable","len":1,"c":true},{"a":3386,"n":"music_current_song","k":"variable","len":1,"c":true},{"a":3387,"n":"music_filter_route","k":"variable","len":1,"c":true},{"a":3388,"n":"music_select_instrument","k":"routine","len":192,"c":true},{"a":3440,"n":"b_0D70","k":"branch","len":1,"c":false},{"a":3455,"n":"b_0D7F","k":"branch","len":1,"c":false},{"a":3567,"n":"b_0DEF","k":"branch","len":1,"c":false},{"a":3580,"n":"music_lfo_update","k":"routine","len":66,"c":true},{"a":3594,"n":"b_0E0A","k":"branch","len":1,"c":false},{"a":3622,"n":"b_0E26","k":"branch","len":1,"c":false},{"a":3642,"n":"b_0E3A","k":"branch","len":1,"c":false},{"a":3646,"n":"music_pwm_update","k":"routine","len":47,"c":true},{"a":3648,"n":"b_0E40","k":"branch","len":1,"c":false},{"a":3666,"n":"b_0E52","k":"branch","len":1,"c":false},{"a":3673,"n":"b_0E59","k":"branch","len":1,"c":false},{"a":3689,"n":"b_0E69","k":"branch","len":1,"c":false},{"a":3693,"n":"music_filter_sweep","k":"routine","len":70,"c":true},{"a":3711,"n":"b_0E7F","k":"branch","len":1,"c":false},{"a":3718,"n":"b_0E86","k":"branch","len":1,"c":false},{"a":3744,"n":"b_0EA0","k":"branch","len":1,"c":false},{"a":3762,"n":"r_0EB2","k":"branch","len":1,"c":false},{"a":3763,"n":"music_pitch_slide","k":"routine","len":159,"c":true},{"a":3784,"n":"b_0EC8","k":"branch","len":1,"c":false},{"a":3798,"n":"b_0ED6","k":"branch","len":1,"c":false},{"a":3805,"n":"b_0EDD","k":"branch","len":1,"c":false},{"a":3828,"n":"r_0EF4","k":"branch","len":1,"c":false},{"a":3829,"n":"b_0EF5","k":"branch","len":1,"c":false},{"a":3837,"n":"b_0EFD","k":"branch","len":1,"c":false},{"a":3850,"n":"b_0F0A","k":"branch","len":1,"c":false},{"a":3864,"n":"b_0F18","k":"branch","len":1,"c":false},{"a":3871,"n":"b_0F1F","k":"branch","len":1,"c":false},{"a":3900,"n":"r_0F3C","k":"branch","len":1,"c":false},{"a":3901,"n":"b_0F3D","k":"branch","len":1,"c":false},{"a":3909,"n":"b_0F45","k":"branch","len":1,"c":false},{"a":3922,"n":"music_song_base","k":"variable","len":1,"c":true},{"a":3923,"n":"a_0F53","k":"variable","len":1,"c":true},{"a":3924,"n":"song_base_table","k":"variable","len":1,"c":true},{"a":3925,"n":"song_base_table_hi","k":"table","len":9,"c":true},{"a":3934,"n":"song_offsets_table","k":"variable","len":1,"c":true},{"a":3935,"n":"song_offsets_table_hi","k":"table","len":9,"c":true},{"a":3944,"n":"song_orders_v1","k":"variable","len":1,"c":true},{"a":3945,"n":"song_orders_v1_hi","k":"table","len":9,"c":true},{"a":3954,"n":"song_orders_v2","k":"variable","len":1,"c":true},{"a":3955,"n":"song_orders_v2_hi","k":"table","len":9,"c":true},{"a":3964,"n":"song_orders_v3","k":"variable","len":1,"c":true},{"a":3965,"n":"song_orders_v3_hi","k":"table","len":9,"c":true},{"a":3974,"n":"music_instrument_table","k":"variable","len":1,"c":true},{"a":3975,"n":"music_instrument_table_hi","k":"table","len":49,"c":true},{"a":4024,"n":"song_volume_table","k":"table","len":5,"c":true},{"a":4029,"n":"song_tempo_table","k":"table","len":5,"c":true},{"a":4034,"n":"song1_orders_v1","k":"table","len":21,"c":true},{"a":4055,"n":"song1_orders_v2","k":"table","len":29,"c":true},{"a":4084,"n":"song1_orders_v3","k":"table","len":12,"c":true},{"a":4096,"n":"song1_voice3_order_tail","k":"table","len":7,"c":true},{"a":4103,"n":"song2_voice1_order","k":"table","len":10,"c":true},{"a":4113,"n":"song2_voice2_order","k":"table","len":14,"c":true},{"a":4127,"n":"song2_voice3_order","k":"table","len":18,"c":true},{"a":4145,"n":"song3_voice1_order","k":"table","len":4,"c":true},{"a":4149,"n":"song3_voice2_order","k":"table","len":6,"c":true},{"a":4155,"n":"song3_voice3_order","k":"table","len":26,"c":true},{"a":4181,"n":"song4_order_lists","k":"table","len":11,"c":true},{"a":4192,"n":"music_instr_00","k":"table","len":11,"c":true},{"a":4203,"n":"music_instr_01","k":"table","len":11,"c":true},{"a":4214,"n":"music_instr_02","k":"table","len":6,"c":true},{"a":4220,"n":"music_instr_03","k":"table","len":11,"c":true},{"a":4231,"n":"music_instr_04","k":"table","len":6,"c":true},{"a":4237,"n":"music_instr_05","k":"table","len":11,"c":true},{"a":4248,"n":"music_instr_06","k":"table","len":11,"c":true},{"a":4259,"n":"music_instr_07","k":"table","len":6,"c":true},{"a":4265,"n":"music_instr_08","k":"table","len":6,"c":true},{"a":4271,"n":"music_instr_09","k":"table","len":11,"c":true},{"a":4282,"n":"music_instr_10","k":"table","len":13,"c":true},{"a":4295,"n":"music_instr_11","k":"table","len":13,"c":true},{"a":4308,"n":"music_instr_12","k":"table","len":18,"c":true},{"a":4326,"n":"music_instr_13","k":"table","len":13,"c":true},{"a":4339,"n":"music_instr_14","k":"table","len":6,"c":true},{"a":4345,"n":"music_instr_15","k":"table","len":6,"c":true},{"a":4351,"n":"music_instr_16","k":"table","len":11,"c":true},{"a":4362,"n":"music_instr_17","k":"table","len":6,"c":true},{"a":4368,"n":"music_instr_18","k":"table","len":18,"c":true},{"a":4386,"n":"music_instr_19","k":"table","len":6,"c":true},{"a":4392,"n":"music_instr_20","k":"table","len":6,"c":true},{"a":4398,"n":"music_instr_21","k":"table","len":13,"c":true},{"a":4411,"n":"music_instr_22","k":"table","len":6,"c":true},{"a":4417,"n":"music_instr_23","k":"table","len":6,"c":true},{"a":4423,"n":"music_instr_24","k":"table","len":19,"c":true},{"a":4442,"n":"jmp_game_entry","k":"routine","len":3,"c":true},{"a":4445,"n":"move_end_kind","k":"table","len":25,"c":true},{"a":4470,"n":"move_is_blow","k":"table","len":25,"c":true},{"a":4495,"n":"move_block_answer","k":"table","len":25,"c":true},{"a":4520,"n":"move_reach_reversed","k":"table","len":21,"c":true},{"a":4541,"n":"move_full_window","k":"table","len":25,"c":true},{"a":4566,"n":"move_half_window","k":"table","len":25,"c":true},{"a":4591,"n":"move_table_unread","k":"table","len":21,"c":true},{"a":4612,"n":"move_strike_frame","k":"table","len":25,"c":true},{"a":4637,"n":"move_reach_ptr_facing","k":"variable","len":1,"c":true},{"a":4638,"n":"f_121E","k":"table","len":49,"c":true},{"a":4687,"n":"move_reach_ptr_same_facing","k":"variable","len":1,"c":true},{"a":4688,"n":"f_1250","k":"table","len":49,"c":true},{"a":4737,"n":"unused_words_1281","k":"table","len":24,"c":true},{"a":4761,"n":"hiscore_1p","k":"table","len":6,"c":true},{"a":4767,"n":"hiscore_2p","k":"table","len":6,"c":true},{"a":4773,"n":"move_points","k":"table","len":25,"c":true},{"a":4798,"n":"str_1_player","k":"table","len":8,"c":true},{"a":4806,"n":"str_2_player","k":"table","len":8,"c":true},{"a":4814,"n":"yinyang_column","k":"variable","len":2,"c":true},{"a":4816,"n":"ai_low_answer","k":"table","len":25,"c":true},{"a":4841,"n":"x_min_by_facing","k":"variable","len":2,"c":true},{"a":4843,"n":"x_max_by_facing","k":"variable","len":2,"c":true},{"a":4845,"n":"clear_zp_02_13","k":"routine","len":11,"c":true},{"a":4849,"n":"b_12F1","k":"branch","len":1,"c":false},{"a":4856,"n":"bull_round_player_step","k":"routine","len":22,"c":true},{"a":4878,"n":"bull_round_place_player","k":"routine","len":30,"c":true},{"a":4908,"n":"bull_round","k":"routine","len":159,"c":true},{"a":4961,"n":"b_1361","k":"branch","len":1,"c":false},{"a":4997,"n":"b_1385","k":"branch","len":1,"c":false},{"a":5021,"n":"b_139D","k":"branch","len":1,"c":false},{"a":5054,"n":"b_13BE","k":"branch","len":1,"c":false},{"a":5061,"n":"b_13C5","k":"branch","len":1,"c":false},{"a":5067,"n":"bull_round_bull_step","k":"routine","len":100,"c":true},{"a":5098,"n":"b_13EA","k":"branch","len":1,"c":false},{"a":5106,"n":"b_13F2","k":"branch","len":1,"c":false},{"a":5114,"n":"b_13FA","k":"branch","len":1,"c":false},{"a":5128,"n":"b_1408","k":"branch","len":1,"c":false},{"a":5136,"n":"b_1410","k":"branch","len":1,"c":false},{"a":5139,"n":"b_1413","k":"branch","len":1,"c":false},{"a":5141,"n":"b_1415","k":"branch","len":1,"c":false},{"a":5154,"n":"b_1422","k":"branch","len":1,"c":false},{"a":5157,"n":"b_1425","k":"branch","len":1,"c":false},{"a":5167,"n":"bull_hit_reach","k":"table","len":59,"c":true},{"a":5226,"n":"hiscore_after_game","k":"routine","len":165,"c":true},{"a":5285,"n":"b_14A5","k":"branch","len":1,"c":false},{"a":5293,"n":"b_14AD","k":"branch","len":1,"c":false},{"a":5296,"n":"b_14B0","k":"branch","len":1,"c":false},{"a":5332,"n":"r_14D4","k":"branch","len":1,"c":false},{"a":5333,"n":"b_14D5","k":"branch","len":1,"c":false},{"a":5344,"n":"b_14E0","k":"branch","len":1,"c":false},{"a":5351,"n":"b_14E7","k":"branch","len":1,"c":false},{"a":5390,"n":"r_150E","k":"branch","len":1,"c":false},{"a":5391,"n":"keyboard_scan","k":"routine","len":51,"c":true},{"a":5403,"n":"b_151B","k":"branch","len":1,"c":false},{"a":5421,"n":"b_152D","k":"branch","len":1,"c":false},{"a":5427,"n":"b_1533","k":"branch","len":1,"c":false},{"a":5433,"n":"b_1539","k":"branch","len":1,"c":false},{"a":5442,"n":"kbd_row_select","k":"table","len":8,"c":true},{"a":5450,"n":"kbd_row_base","k":"table","len":8,"c":true},{"a":5458,"n":"kbd_ignore_mask","k":"table","len":8,"c":true},{"a":5466,"n":"key_read_new","k":"routine","len":21,"c":true},{"a":5484,"n":"b_156C","k":"branch","len":1,"c":false},{"a":5487,"n":"key_ascii","k":"table","len":64,"c":true},{"a":5551,"n":"hiscore_draw","k":"routine","len":66,"c":true},{"a":5591,"n":"b_15D7","k":"branch","len":1,"c":false},{"a":5601,"n":"b_15E1","k":"branch","len":1,"c":false},{"a":5612,"n":"b_15EC","k":"branch","len":1,"c":false},{"a":5617,"n":"hiscore_copy_column","k":"routine","len":5,"c":true},{"a":5619,"n":"b_15F3","k":"branch","len":1,"c":false},{"a":5621,"n":"b_15F5","k":"branch","len":1,"c":false},{"a":5622,"n":"a_15F6","k":"routine","len":1,"c":true},{"a":5623,"n":"a_15F7","k":"routine","len":23,"c":true},{"a":5641,"n":"b_1609","k":"branch","len":1,"c":false},{"a":5646,"n":"hiscore_draw_names","k":"routine","len":22,"c":true},{"a":5668,"n":"hiscore_draw_scores","k":"routine","len":22,"c":true},{"a":5690,"n":"hiscore_insert","k":"routine","len":88,"c":true},{"a":5702,"n":"b_1646","k":"branch","len":1,"c":false},{"a":5720,"n":"b_1658","k":"branch","len":1,"c":false},{"a":5724,"n":"b_165C","k":"branch","len":1,"c":false},{"a":5737,"n":"b_1669","k":"branch","len":1,"c":false},{"a":5755,"n":"b_167B","k":"branch","len":1,"c":false},{"a":5774,"n":"b_168E","k":"branch","len":1,"c":false},{"a":5777,"n":"r_1691","k":"branch","len":1,"c":false},{"a":5778,"n":"hiscore_shift_names","k":"routine","len":42,"c":true},{"a":5780,"n":"b_1694","k":"branch","len":1,"c":false},{"a":5816,"n":"b_16B8","k":"branch","len":1,"c":false},{"a":5820,"n":"hiscore_shift_scores","k":"routine","len":42,"c":true},{"a":5822,"n":"b_16BE","k":"branch","len":1,"c":false},{"a":5858,"n":"b_16E2","k":"branch","len":1,"c":false},{"a":5862,"n":"clear_top_rows","k":"routine","len":13,"c":true},{"a":5866,"n":"b_16EA","k":"branch","len":1,"c":false},{"a":5875,"n":"hiscore_insert_rank","k":"routine","len":34,"c":true},{"a":5889,"n":"b_1701","k":"branch","len":1,"c":false},{"a":5903,"n":"b_170F","k":"branch","len":1,"c":false},{"a":5909,"n":"hiscore_names","k":"table","len":6,"c":true},{"a":5915,"n":"f_171B","k":"table","len":6,"c":true},{"a":5921,"n":"f_1721","k":"table","len":6,"c":true},{"a":5927,"n":"f_1727","k":"table","len":6,"c":true},{"a":5933,"n":"f_172D","k":"table","len":6,"c":true},{"a":5939,"n":"hiscore_scores","k":"table","len":6,"c":true},{"a":5945,"n":"f_1739","k":"table","len":6,"c":true},{"a":5951,"n":"f_173F","k":"table","len":6,"c":true},{"a":5957,"n":"f_1745","k":"table","len":6,"c":true},{"a":5963,"n":"f_174B","k":"table","len":6,"c":true},{"a":5969,"n":"hiscore_ranks","k":"variable","len":1,"c":true},{"a":5970,"n":"f_1752","k":"table","len":4,"c":true},{"a":5974,"n":"hiscore_blank_name","k":"routine","len":12,"c":true},{"a":5978,"n":"b_175A","k":"branch","len":1,"c":false},{"a":5986,"n":"hiscore_type_name","k":"routine","len":75,"c":true},{"a":5990,"n":"b_1766","k":"branch","len":1,"c":false},{"a":6037,"n":"b_1795","k":"branch","len":1,"c":false},{"a":6039,"n":"b_1797","k":"branch","len":1,"c":false},{"a":6048,"n":"b_17A0","k":"branch","len":1,"c":false},{"a":6061,"n":"hiscore_put_char","k":"routine","len":3,"c":true},{"a":6064,"n":"a_17B0","k":"routine","len":1,"c":true},{"a":6065,"n":"a_17B1","k":"routine","len":2,"c":true},{"a":6067,"n":"colour_fill_24","k":"routine","len":8,"c":true},{"a":6069,"n":"b_17B5","k":"branch","len":1,"c":false},{"a":6075,"n":"bitmap_unpack","k":"routine","len":69,"c":true},{"a":6117,"n":"b_17E5","k":"branch","len":1,"c":false},{"a":6135,"n":"b_17F7","k":"branch","len":1,"c":false},{"a":6144,"n":"unpack_bitmap_run","k":"routine","len":29,"c":true},{"a":6165,"n":"b_1815","k":"branch","len":1,"c":false},{"a":6172,"n":"r_181C","k":"branch","len":1,"c":false},{"a":6173,"n":"unpack_dest_back","k":"routine","len":14,"c":true},{"a":6187,"n":"unpack_src_back","k":"routine","len":14,"c":true},{"a":6201,"n":"backdrop_bitmap_ptrs","k":"variable","len":1,"c":true},{"a":6202,"n":"f_183A","k":"table","len":7,"c":true},{"a":6209,"n":"backdrop_colour_ptrs","k":"variable","len":1,"c":true},{"a":6210,"n":"f_1842","k":"table","len":7,"c":true},{"a":6217,"n":"unpack_backdrop_colours","k":"routine","len":66,"c":true},{"a":6283,"n":"unpack_nibble_pass","k":"routine","len":35,"c":true},{"a":6295,"n":"b_1897","k":"branch","len":1,"c":false},{"a":6306,"n":"b_18A2","k":"branch","len":1,"c":false},{"a":6309,"n":"b_18A5","k":"branch","len":1,"c":false},{"a":6317,"n":"r_18AD","k":"branch","len":1,"c":false},{"a":6318,"n":"read_packed_nibble","k":"routine","len":29,"c":true},{"a":6342,"n":"b_18C6","k":"branch","len":1,"c":false},{"a":6347,"n":"write_packed_nibble","k":"routine","len":29,"c":true},{"a":6365,"n":"b_18DD","k":"branch","len":1,"c":false},{"a":6375,"n":"r_18E7","k":"branch","len":1,"c":false},{"a":6376,"n":"machine_setup","k":"routine","len":45,"c":true},{"a":6394,"n":"b_18FA","k":"branch","len":1,"c":false},{"a":6421,"n":"colour_panel_rows","k":"routine","len":13,"c":true},{"a":6425,"n":"b_1919","k":"branch","len":1,"c":false},{"a":6434,"n":"clear_panel_rows","k":"routine","len":13,"c":true},{"a":6438,"n":"b_1926","k":"branch","len":1,"c":false},{"a":6447,"n":"colour_floor_rows","k":"routine","len":20,"c":true},{"a":6451,"n":"b_1933","k":"branch","len":1,"c":false},{"a":6467,"n":"install_vectors","k":"routine","len":77,"c":true},{"a":6544,"n":"reset_rti","k":"routine","len":1,"c":true},{"a":6545,"n":"setup_vic","k":"routine","len":145,"c":true},{"a":6690,"n":"init_exchange","k":"routine","len":77,"c":true},{"a":6767,"n":"init_fighter_state","k":"routine","len":13,"c":true},{"a":6780,"n":"run_exchange","k":"routine","len":113,"c":true},{"a":6806,"n":"b_1A96","k":"branch","len":1,"c":false},{"a":6858,"n":"b_1ACA","k":"branch","len":1,"c":false},{"a":6892,"n":"r_1AEC","k":"branch","len":1,"c":false},{"a":6893,"n":"game_entry","k":"routine","len":6,"c":true},{"a":6899,"n":"unused_rts_byte","k":"variable","len":1,"c":true},{"a":6900,"n":"clear_sprite_block0","k":"routine","len":11,"c":true},{"a":6904,"n":"b_1AF8","k":"branch","len":1,"c":false},{"a":6911,"n":"step_random","k":"routine","len":10,"c":true},{"a":6918,"n":"b_1B06","k":"branch","len":1,"c":false},{"a":6921,"n":"two_player_game","k":"routine","len":113,"c":true},{"a":6963,"n":"j_1B33","k":"branch","len":1,"c":false},{"a":7002,"n":"b_1B5A","k":"branch","len":1,"c":false},{"a":7017,"n":"b_1B69","k":"branch","len":1,"c":false},{"a":7023,"n":"j_1B6F","k":"branch","len":1,"c":false},{"a":7033,"n":"r_1B79","k":"branch","len":1,"c":false},{"a":7034,"n":"two_player_bout","k":"routine","len":45,"c":true},{"a":7059,"n":"b_1B93","k":"branch","len":1,"c":false},{"a":7064,"n":"b_1B98","k":"branch","len":1,"c":false},{"a":7078,"n":"r_1BA6","k":"branch","len":1,"c":false},{"a":7079,"n":"one_player_game","k":"routine","len":180,"c":true},{"a":7143,"n":"b_1BE7","k":"branch","len":1,"c":false},{"a":7207,"n":"b_1C27","k":"branch","len":1,"c":false},{"a":7238,"n":"b_1C46","k":"branch","len":1,"c":false},{"a":7248,"n":"b_1C50","k":"branch","len":1,"c":false},{"a":7259,"n":"rank_past_tenth_dan","k":"routine","len":23,"c":true},{"a":7282,"n":"one_player_bout","k":"routine","len":96,"c":true},{"a":7312,"n":"b_1C90","k":"branch","len":1,"c":false},{"a":7327,"n":"b_1C9F","k":"branch","len":1,"c":false},{"a":7342,"n":"b_1CAE","k":"branch","len":1,"c":false},{"a":7350,"n":"j_1CB6","k":"branch","len":1,"c":false},{"a":7355,"n":"b_1CBB","k":"branch","len":1,"c":false},{"a":7363,"n":"r_1CC3","k":"branch","len":1,"c":false},{"a":7364,"n":"b_1CC4","k":"branch","len":1,"c":false},{"a":7369,"n":"b_1CC9","k":"branch","len":1,"c":false},{"a":7375,"n":"b_1CCF","k":"branch","len":1,"c":false},{"a":7378,"n":"attract_mode","k":"routine","len":97,"c":true},{"a":7423,"n":"b_1CFF","k":"branch","len":1,"c":false},{"a":7474,"n":"r_1D32","k":"branch","len":1,"c":false},{"a":7475,"n":"demo_bout","k":"routine","len":44,"c":true},{"a":7499,"n":"b_1D4B","k":"branch","len":1,"c":false},{"a":7504,"n":"r_1D50","k":"branch","len":1,"c":false},{"a":7505,"n":"b_1D51","k":"branch","len":1,"c":false},{"a":7512,"n":"b_1D58","k":"branch","len":1,"c":false},{"a":7519,"n":"add_yinyang","k":"routine","len":127,"c":true},{"a":7545,"n":"b_1D79","k":"branch","len":1,"c":false},{"a":7553,"n":"b_1D81","k":"branch","len":1,"c":false},{"a":7561,"n":"b_1D89","k":"branch","len":1,"c":false},{"a":7574,"n":"j_1D96","k":"branch","len":1,"c":false},{"a":7587,"n":"b_1DA3","k":"branch","len":1,"c":false},{"a":7602,"n":"b_1DB2","k":"branch","len":1,"c":false},{"a":7610,"n":"b_1DBA","k":"branch","len":1,"c":false},{"a":7618,"n":"b_1DC2","k":"branch","len":1,"c":false},{"a":7631,"n":"j_1DCF","k":"branch","len":1,"c":false},{"a":7641,"n":"j_1DD9","k":"branch","len":1,"c":false},{"a":7646,"n":"draw_whole_yinyang","k":"routine","len":21,"c":true},{"a":7667,"n":"draw_half_yinyang","k":"routine","len":21,"c":true},{"a":7688,"n":"clear_yinyang","k":"routine","len":27,"c":true},{"a":7715,"n":"reset_fighter_pose","k":"routine","len":15,"c":true},{"a":7730,"n":"play_end_animation","k":"routine","len":18,"c":true},{"a":7733,"n":"b_1E35","k":"branch","len":1,"c":false},{"a":7736,"n":"b_1E38","k":"branch","len":1,"c":false},{"a":7748,"n":"play_both_end_animations","k":"routine","len":32,"c":true},{"a":7758,"n":"b_1E4E","k":"branch","len":1,"c":false},{"a":7768,"n":"b_1E58","k":"branch","len":1,"c":false},{"a":7780,"n":"poll_function_keys","k":"routine","len":125,"c":true},{"a":7824,"n":"b_1E90","k":"branch","len":1,"c":false},{"a":7838,"n":"b_1E9E","k":"branch","len":1,"c":false},{"a":7841,"n":"b_1EA1","k":"branch","len":1,"c":false},{"a":7848,"n":"b_1EA8","k":"branch","len":1,"c":false},{"a":7864,"n":"b_1EB8","k":"branch","len":1,"c":false},{"a":7870,"n":"b_1EBE","k":"branch","len":1,"c":false},{"a":7873,"n":"b_1EC1","k":"branch","len":1,"c":false},{"a":7886,"n":"b_1ECE","k":"branch","len":1,"c":false},{"a":7889,"n":"b_1ED1","k":"branch","len":1,"c":false},{"a":7892,"n":"b_1ED4","k":"branch","len":1,"c":false},{"a":7902,"n":"b_1EDE","k":"branch","len":1,"c":false},{"a":7905,"n":"main_loop","k":"routine","len":61,"c":true},{"a":7909,"n":"b_1EE5","k":"branch","len":1,"c":false},{"a":7946,"n":"b_1F0A","k":"branch","len":1,"c":false},{"a":7958,"n":"b_1F16","k":"branch","len":1,"c":false},{"a":7966,"n":"clear_backdrop_bitmap","k":"routine","len":16,"c":true},{"a":7981,"n":"b_1F2D","k":"branch","len":1,"c":false},{"a":7982,"n":"clear_dest_lo","k":"routine","len":1,"c":true},{"a":7983,"n":"clear_dest_hi","k":"routine","len":11,"c":true},{"a":7994,"n":"select_backdrop","k":"routine","len":35,"c":true},{"a":8028,"n":"r_1F5C","k":"branch","len":1,"c":false},{"a":8029,"n":"clear_score_field","k":"routine","len":23,"c":true},{"a":8052,"n":"compare_scores","k":"routine","len":31,"c":true},{"a":8056,"n":"b_1F78","k":"branch","len":1,"c":false},{"a":8068,"n":"b_1F84","k":"branch","len":1,"c":false},{"a":8077,"n":"b_1F8D","k":"branch","len":1,"c":false},{"a":8080,"n":"b_1F90","k":"branch","len":1,"c":false},{"a":8083,"n":"show_judge_decision","k":"routine","len":103,"c":true},{"a":8162,"n":"b_1FE2","k":"branch","len":1,"c":false},{"a":8177,"n":"j_1FF1","k":"branch","len":1,"c":false},{"a":8186,"n":"judge_sprite_ptrs","k":"table","len":4,"c":true},{"a":8190,"n":"judge_x_lo","k":"variable","len":2,"c":true},{"a":8194,"n":"scene_sprite67_xmsb","k":"table","len":4,"c":true},{"a":8198,"n":"scene_sprite6_y","k":"table","len":4,"c":true},{"a":8202,"n":"hiscore_update","k":"routine","len":63,"c":true},{"a":8226,"n":"r_2022","k":"branch","len":1,"c":false},{"a":8227,"n":"b_2023","k":"branch","len":1,"c":false},{"a":8252,"n":"b_203C","k":"branch","len":1,"c":false},{"a":8265,"n":"score_compare6","k":"routine","len":21,"c":true},{"a":8267,"n":"b_204B","k":"branch","len":1,"c":false},{"a":8278,"n":"b_2056","k":"branch","len":1,"c":false},{"a":8285,"n":"r_205D","k":"branch","len":1,"c":false},{"a":8286,"n":"score_copy6","k":"routine","len":14,"c":true},{"a":8288,"n":"b_2060","k":"branch","len":1,"c":false},{"a":8300,"n":"score_add_award","k":"routine","len":41,"c":true},{"a":8314,"n":"b_207A","k":"branch","len":1,"c":false},{"a":8316,"n":"j_207C","k":"branch","len":1,"c":false},{"a":8321,"n":"b_2081","k":"branch","len":1,"c":false},{"a":8334,"n":"b_208E","k":"branch","len":1,"c":false},{"a":8341,"n":"score_add_100","k":"routine","len":128,"c":true},{"a":8354,"n":"b_20A2","k":"branch","len":1,"c":false},{"a":8382,"n":"b_20BE","k":"branch","len":1,"c":false},{"a":8410,"n":"b_20DA","k":"branch","len":1,"c":false},{"a":8438,"n":"b_20F6","k":"branch","len":1,"c":false},{"a":8468,"n":"r_2114","k":"branch","len":1,"c":false},{"a":8469,"n":"panel_show_hiscore","k":"routine","len":26,"c":true},{"a":8475,"n":"b_211B","k":"branch","len":1,"c":false},{"a":8485,"n":"b_2125","k":"branch","len":1,"c":false},{"a":8495,"n":"bout_clock_tick","k":"routine","len":58,"c":true},{"a":8528,"n":"b_2150","k":"branch","len":1,"c":false},{"a":8541,"n":"b_215D","k":"branch","len":1,"c":false},{"a":8544,"n":"j_2160","k":"branch","len":1,"c":false},{"a":8552,"n":"r_2168","k":"branch","len":1,"c":false},{"a":8553,"n":"bout_points_add","k":"routine","len":18,"c":true},{"a":8565,"n":"b_2175","k":"branch","len":1,"c":false},{"a":8571,"n":"bout_clock_reset","k":"routine","len":11,"c":true},{"a":8582,"n":"panel_show_players","k":"routine","len":31,"c":true},{"a":8593,"n":"b_2191","k":"branch","len":1,"c":false},{"a":8603,"n":"b_219B","k":"branch","len":1,"c":false},{"a":8613,"n":"panel_clear_labels","k":"routine","len":14,"c":true},{"a":8617,"n":"b_21A9","k":"branch","len":1,"c":false},{"a":8627,"n":"panel_show_demo","k":"routine","len":21,"c":true},{"a":8648,"n":"wait_6x_frames","k":"routine","len":2,"c":true},{"a":8650,"n":"wait_y_frames","k":"routine","len":21,"c":true},{"a":8657,"n":"b_21D1","k":"branch","len":1,"c":false},{"a":8671,"n":"time_bonus_count","k":"routine","len":28,"c":true},{"a":8675,"n":"b_21E3","k":"branch","len":1,"c":false},{"a":8698,"n":"r_21FA","k":"branch","len":1,"c":false},{"a":8699,"n":"rank_text_draw","k":"routine","len":132,"c":true},{"a":8712,"n":"b_2208","k":"branch","len":1,"c":false},{"a":8722,"n":"b_2212","k":"branch","len":1,"c":false},{"a":8755,"n":"b_2233","k":"branch","len":1,"c":false},{"a":8772,"n":"b_2244","k":"branch","len":1,"c":false},{"a":8789,"n":"b_2255","k":"branch","len":1,"c":false},{"a":8799,"n":"j_225F","k":"branch","len":1,"c":false},{"a":8820,"n":"b_2274","k":"branch","len":1,"c":false},{"a":8822,"n":"b_2276","k":"branch","len":1,"c":false},{"a":8831,"n":"panel_clear_rank","k":"routine","len":11,"c":true},{"a":8835,"n":"b_2283","k":"branch","len":1,"c":false},{"a":8842,"n":"panel_show_controls","k":"routine","len":26,"c":true},{"a":8848,"n":"b_2290","k":"branch","len":1,"c":false},{"a":8858,"n":"b_229A","k":"branch","len":1,"c":false},{"a":8868,"n":"text_joystick","k":"table","len":8,"c":true},{"a":8876,"n":"text_keyboard","k":"table","len":8,"c":true},{"a":8884,"n":"text_novice","k":"table","len":7,"c":true},{"a":8891,"n":"text_10th_dan","k":"table","len":8,"c":true},{"a":8899,"n":"level_rank_table","k":"table","len":12,"c":true},{"a":8911,"n":"ai_think","k":"routine","len":143,"c":true},{"a":8928,"n":"b_22E0","k":"branch","len":1,"c":false},{"a":8932,"n":"r_22E4","k":"branch","len":1,"c":false},{"a":8933,"n":"b_22E5","k":"branch","len":1,"c":false},{"a":8940,"n":"b_22EC","k":"branch","len":1,"c":false},{"a":8947,"n":"b_22F3","k":"branch","len":1,"c":false},{"a":8950,"n":"b_22F6","k":"branch","len":1,"c":false},{"a":8969,"n":"b_2309","k":"branch","len":1,"c":false},{"a":8978,"n":"b_2312","k":"branch","len":1,"c":false},{"a":8985,"n":"b_2319","k":"branch","len":1,"c":false},{"a":8994,"n":"b_2322","k":"branch","len":1,"c":false},{"a":9027,"n":"b_2343","k":"branch","len":1,"c":false},{"a":9049,"n":"b_2359","k":"branch","len":1,"c":false},{"a":9054,"n":"ai_threat_in_range","k":"routine","len":95,"c":true},{"a":9074,"n":"b_2372","k":"branch","len":1,"c":false},{"a":9077,"n":"b_2375","k":"branch","len":1,"c":false},{"a":9085,"n":"b_237D","k":"branch","len":1,"c":false},{"a":9111,"n":"b_2397","k":"branch","len":1,"c":false},{"a":9113,"n":"b_2399","k":"branch","len":1,"c":false},{"a":9118,"n":"b_239E","k":"branch","len":1,"c":false},{"a":9132,"n":"b_23AC","k":"branch","len":1,"c":false},{"a":9135,"n":"b_23AF","k":"branch","len":1,"c":false},{"a":9149,"n":"ai_no_threat","k":"routine","len":93,"c":true},{"a":9192,"n":"b_23E8","k":"branch","len":1,"c":false},{"a":9208,"n":"b_23F8","k":"branch","len":1,"c":false},{"a":9223,"n":"b_2407","k":"branch","len":1,"c":false},{"a":9237,"n":"b_2415","k":"branch","len":1,"c":false},{"a":9242,"n":"ai_measure","k":"routine","len":42,"c":true},{"a":9264,"n":"b_2430","k":"branch","len":1,"c":false},{"a":9270,"n":"j_2436","k":"branch","len":1,"c":false},{"a":9284,"n":"ai_approach","k":"routine","len":40,"c":true},{"a":9310,"n":"b_245E","k":"branch","len":1,"c":false},{"a":9324,"n":"ai_turn_round","k":"routine","len":47,"c":true},{"a":9335,"n":"b_2477","k":"branch","len":1,"c":false},{"a":9348,"n":"b_2484","k":"branch","len":1,"c":false},{"a":9354,"n":"j_248A","k":"branch","len":1,"c":false},{"a":9371,"n":"ai_close_range","k":"routine","len":22,"c":true},{"a":9385,"n":"b_24A9","k":"branch","len":1,"c":false},{"a":9393,"n":"ai_choose_attack","k":"routine","len":109,"c":true},{"a":9405,"n":"b_24BD","k":"branch","len":1,"c":false},{"a":9434,"n":"b_24DA","k":"branch","len":1,"c":false},{"a":9448,"n":"b_24E8","k":"branch","len":1,"c":false},{"a":9490,"n":"b_2512","k":"branch","len":1,"c":false},{"a":9495,"n":"j_2517","k":"branch","len":1,"c":false},{"a":9502,"n":"ai_unreachable_jmp","k":"routine","len":27,"c":true},{"a":9505,"n":"b_2521","k":"branch","len":1,"c":false},{"a":9515,"n":"b_252B","k":"branch","len":1,"c":false},{"a":9522,"n":"b_2532","k":"branch","len":1,"c":false},{"a":9529,"n":"ai_crouch_then_plan5","k":"routine","len":11,"c":true},{"a":9540,"n":"ai_attack_behind","k":"routine","len":35,"c":true},{"a":9575,"n":"ai_back_attack","k":"routine","len":34,"c":true},{"a":9593,"n":"b_2579","k":"branch","len":1,"c":false},{"a":9599,"n":"b_257F","k":"branch","len":1,"c":false},{"a":9602,"n":"b_2582","k":"branch","len":1,"c":false},{"a":9609,"n":"random_next","k":"routine","len":10,"c":true},{"a":9616,"n":"b_2590","k":"branch","len":1,"c":false},{"a":9619,"n":"ai_level_setup","k":"routine","len":85,"c":true},{"a":9704,"n":"ai_plan_crouch_wait","k":"routine","len":42,"c":true},{"a":9719,"n":"b_25F7","k":"branch","len":1,"c":false},{"a":9726,"n":"b_25FE","k":"branch","len":1,"c":false},{"a":9737,"n":"b_2609","k":"branch","len":1,"c":false},{"a":9746,"n":"ai_plan_move_0e","k":"routine","len":11,"c":true},{"a":9757,"n":"ai_plan_move_09","k":"routine","len":11,"c":true},{"a":9768,"n":"ai_plan_crouch_spring","k":"routine","len":22,"c":true},{"a":9783,"n":"b_2637","k":"branch","len":1,"c":false},{"a":9790,"n":"ai_plan_mixed","k":"routine","len":15,"c":true},{"a":9798,"n":"b_2646","k":"branch","len":1,"c":false},{"a":9805,"n":"ai_plan_move_06_or_18","k":"routine","len":20,"c":true},{"a":9814,"n":"b_2656","k":"branch","len":1,"c":false},{"a":9816,"n":"b_2658","k":"branch","len":1,"c":false},{"a":9825,"n":"ai_plan_0a_or_10","k":"routine","len":22,"c":true},{"a":9836,"n":"b_266C","k":"branch","len":1,"c":false},{"a":9838,"n":"b_266E","k":"branch","len":1,"c":false},{"a":9847,"n":"ai_plan_move_0a","k":"routine","len":18,"c":true},{"a":9860,"n":"b_2684","k":"branch","len":1,"c":false},{"a":9865,"n":"ai_plan_dispatch","k":"routine","len":15,"c":true},{"a":9880,"n":"ai_lower_if_opponent_low","k":"routine","len":32,"c":true},{"a":9906,"n":"b_26B2","k":"branch","len":1,"c":false},{"a":9912,"n":"ai_plan_level_choice","k":"routine","len":29,"c":true},{"a":9934,"n":"b_26CE","k":"branch","len":1,"c":false},{"a":9941,"n":"ai_attack_facing","k":"table","len":80,"c":true},{"a":10021,"n":"ai_attack_behind_table","k":"table","len":79,"c":true},{"a":10100,"n":"ai_plan_handlers","k":"variable","len":1,"c":true},{"a":10101,"n":"f_2775","k":"table","len":19,"c":true},{"a":10120,"n":"ai_plan_by_attack","k":"table","len":25,"c":true},{"a":10145,"n":"ai_beat_block_13","k":"table","len":4,"c":true},{"a":10149,"n":"ai_beat_block_14","k":"table","len":4,"c":true},{"a":10153,"n":"ai_lvl_hold_mask","k":"table","len":12,"c":true},{"a":10165,"n":"ai_lvl_attack_spread","k":"table","len":12,"c":true},{"a":10177,"n":"ai_lvl_close_wait","k":"table","len":12,"c":true},{"a":10189,"n":"ai_lvl_walk_time","k":"table","len":11,"c":true},{"a":10200,"n":"ai_lvl_pause_time","k":"table","len":12,"c":true},{"a":10212,"n":"ai_lvl_back_choice","k":"table","len":12,"c":true},{"a":10224,"n":"ai_lvl_defence","k":"table","len":12,"c":true},{"a":10236,"n":"ai_lvl_react_delay","k":"table","len":4,"c":true},{"a":10240,"n":"rank_table_27fc_tail","k":"table","len":8,"c":true},{"a":10248,"n":"fighter_update","k":"routine","len":44,"c":true},{"a":10286,"n":"r_282E","k":"branch","len":1,"c":false},{"a":10287,"n":"b_282F","k":"branch","len":1,"c":false},{"a":10292,"n":"fighter_read_control","k":"routine","len":24,"c":true},{"a":10299,"n":"b_283B","k":"branch","len":1,"c":false},{"a":10310,"n":"b_2846","k":"branch","len":1,"c":false},{"a":10313,"n":"b_2849","k":"branch","len":1,"c":false},{"a":10316,"n":"joy_read","k":"routine","len":10,"c":true},{"a":10326,"n":"joy_to_move","k":"routine","len":22,"c":true},{"a":10342,"n":"b_2866","k":"branch","len":1,"c":false},{"a":10348,"n":"joy_move_table","k":"table","len":32,"c":true},{"a":10380,"n":"key_read","k":"routine","len":38,"c":true},{"a":10406,"n":"b_28A6","k":"branch","len":1,"c":false},{"a":10418,"n":"key_fire_p1","k":"routine","len":24,"c":true},{"a":10437,"n":"b_28C5","k":"branch","len":1,"c":false},{"a":10442,"n":"key_dir_p1","k":"routine","len":103,"c":true},{"a":10457,"n":"b_28D9","k":"branch","len":1,"c":false},{"a":10474,"n":"b_28EA","k":"branch","len":1,"c":false},{"a":10483,"n":"b_28F3","k":"branch","len":1,"c":false},{"a":10492,"n":"b_28FC","k":"branch","len":1,"c":false},{"a":10509,"n":"b_290D","k":"branch","len":1,"c":false},{"a":10518,"n":"b_2916","k":"branch","len":1,"c":false},{"a":10527,"n":"b_291F","k":"branch","len":1,"c":false},{"a":10542,"n":"b_292E","k":"branch","len":1,"c":false},{"a":10545,"n":"key_fire_p2","k":"routine","len":34,"c":true},{"a":10557,"n":"b_293D","k":"branch","len":1,"c":false},{"a":10562,"n":"b_2942","k":"branch","len":1,"c":false},{"a":10579,"n":"key_dir_p2","k":"routine","len":97,"c":true},{"a":10596,"n":"b_2964","k":"branch","len":1,"c":false},{"a":10605,"n":"b_296D","k":"branch","len":1,"c":false},{"a":10622,"n":"b_297E","k":"branch","len":1,"c":false},{"a":10631,"n":"b_2987","k":"branch","len":1,"c":false},{"a":10640,"n":"b_2990","k":"branch","len":1,"c":false},{"a":10649,"n":"b_2999","k":"branch","len":1,"c":false},{"a":10658,"n":"b_29A2","k":"branch","len":1,"c":false},{"a":10673,"n":"b_29B1","k":"branch","len":1,"c":false},{"a":10676,"n":"fighter_choose_move","k":"routine","len":219,"c":true},{"a":10690,"n":"b_29C2","k":"branch","len":1,"c":false},{"a":10701,"n":"b_29CD","k":"branch","len":1,"c":false},{"a":10729,"n":"b_29E9","k":"branch","len":1,"c":false},{"a":10732,"n":"r_29EC","k":"branch","len":1,"c":false},{"a":10733,"n":"b_29ED","k":"branch","len":1,"c":false},{"a":10753,"n":"r_2A01","k":"branch","len":1,"c":false},{"a":10754,"n":"b_2A02","k":"branch","len":1,"c":false},{"a":10766,"n":"b_2A0E","k":"branch","len":1,"c":false},{"a":10771,"n":"b_2A13","k":"branch","len":1,"c":false},{"a":10776,"n":"b_2A18","k":"branch","len":1,"c":false},{"a":10790,"n":"b_2A26","k":"branch","len":1,"c":false},{"a":10804,"n":"r_2A34","k":"branch","len":1,"c":false},{"a":10805,"n":"b_2A35","k":"branch","len":1,"c":false},{"a":10816,"n":"b_2A40","k":"branch","len":1,"c":false},{"a":10836,"n":"r_2A54","k":"branch","len":1,"c":false},{"a":10837,"n":"b_2A55","k":"branch","len":1,"c":false},{"a":10862,"n":"b_2A6E","k":"branch","len":1,"c":false},{"a":10875,"n":"b_2A7B","k":"branch","len":1,"c":false},{"a":10880,"n":"b_2A80","k":"branch","len":1,"c":false},{"a":10892,"n":"b_2A8C","k":"branch","len":1,"c":false},{"a":10895,"n":"fighter_anim_ended","k":"routine","len":99,"c":true},{"a":10909,"n":"r_2A9D","k":"branch","len":1,"c":false},{"a":10910,"n":"b_2A9E","k":"branch","len":1,"c":false},{"a":10926,"n":"b_2AAE","k":"branch","len":1,"c":false},{"a":10955,"n":"b_2ACB","k":"branch","len":1,"c":false},{"a":10967,"n":"b_2AD7","k":"branch","len":1,"c":false},{"a":10980,"n":"b_2AE4","k":"branch","len":1,"c":false},{"a":10994,"n":"fighter_auto_block","k":"routine","len":65,"c":true},{"a":11010,"n":"b_2B02","k":"branch","len":1,"c":false},{"a":11013,"n":"b_2B05","k":"branch","len":1,"c":false},{"a":11058,"n":"r_2B32","k":"branch","len":1,"c":false},{"a":11059,"n":"fighter_remap_req7","k":"routine","len":19,"c":true},{"a":11077,"n":"r_2B45","k":"branch","len":1,"c":false},{"a":11078,"n":"fighter_start_anim","k":"routine","len":42,"c":true},{"a":11095,"n":"b_2B57","k":"branch","len":1,"c":false},{"a":11103,"n":"b_2B5F","k":"branch","len":1,"c":false},{"a":11113,"n":"b_2B69","k":"branch","len":1,"c":false},{"a":11117,"n":"b_2B6D","k":"branch","len":1,"c":false},{"a":11120,"n":"fighter_hit_test","k":"routine","len":30,"c":true},{"a":11149,"n":"r_2B8D","k":"branch","len":1,"c":false},{"a":11150,"n":"fighter_grade_blow","k":"routine","len":144,"c":true},{"a":11176,"n":"b_2BA8","k":"branch","len":1,"c":false},{"a":11193,"n":"j_2BB9","k":"branch","len":1,"c":false},{"a":11225,"n":"b_2BD9","k":"branch","len":1,"c":false},{"a":11231,"n":"j_2BDF","k":"branch","len":1,"c":false},{"a":11251,"n":"r_2BF3","k":"branch","len":1,"c":false},{"a":11252,"n":"b_2BF4","k":"branch","len":1,"c":false},{"a":11269,"n":"b_2C05","k":"branch","len":1,"c":false},{"a":11294,"n":"blow_whole_point","k":"routine","len":19,"c":true},{"a":11310,"n":"b_2C2E","k":"branch","len":1,"c":false},{"a":11313,"n":"blow_half_point","k":"routine","len":119,"c":true},{"a":11332,"n":"j_2C44","k":"branch","len":1,"c":false},{"a":11364,"n":"b_2C64","k":"branch","len":1,"c":false},{"a":11370,"n":"j_2C6A","k":"branch","len":1,"c":false},{"a":11406,"n":"r_2C8E","k":"branch","len":1,"c":false},{"a":11407,"n":"b_2C8F","k":"branch","len":1,"c":false},{"a":11432,"n":"blow_reaction","k":"routine","len":88,"c":true},{"a":11451,"n":"b_2CBB","k":"branch","len":1,"c":false},{"a":11477,"n":"b_2CD5","k":"branch","len":1,"c":false},{"a":11488,"n":"b_2CE0","k":"branch","len":1,"c":false},{"a":11499,"n":"b_2CEB","k":"branch","len":1,"c":false},{"a":11510,"n":"b_2CF6","k":"branch","len":1,"c":false},{"a":11520,"n":"blow_in_reach","k":"routine","len":98,"c":true},{"a":11542,"n":"b_2D16","k":"branch","len":1,"c":false},{"a":11548,"n":"j_2D1C","k":"branch","len":1,"c":false},{"a":11569,"n":"b_2D31","k":"branch","len":1,"c":false},{"a":11572,"n":"b_2D34","k":"branch","len":1,"c":false},{"a":11575,"n":"b_2D37","k":"branch","len":1,"c":false},{"a":11588,"n":"b_2D44","k":"branch","len":1,"c":false},{"a":11594,"n":"j_2D4A","k":"branch","len":1,"c":false},{"a":11618,"n":"irq_spr012_row2","k":"routine","len":11,"c":true},{"a":11627,"n":"b_2D6B","k":"branch","len":1,"c":false},{"a":11629,"n":"irq_spr012_row2_y","k":"routine","len":16,"c":true},{"a":11645,"n":"irq_spr012_row2_line","k":"routine","len":5,"c":true},{"a":11650,"n":"irq_spr012_row2_next_lo","k":"routine","len":5,"c":true},{"a":11655,"n":"irq_spr012_row2_ptr0","k":"routine","len":5,"c":true},{"a":11660,"n":"irq_spr012_row2_ptr1","k":"routine","len":5,"c":true},{"a":11665,"n":"irq_spr012_row2_ptr2","k":"routine","len":5,"c":true},{"a":11670,"n":"irq_spr012_row2_next_hi","k":"routine","len":6,"c":true},{"a":11676,"n":"irq_spr012_row3","k":"routine","len":11,"c":true},{"a":11685,"n":"b_2DA5","k":"branch","len":1,"c":false},{"a":11687,"n":"irq_spr012_row3_y","k":"routine","len":16,"c":true},{"a":11703,"n":"irq_spr012_row3_line","k":"routine","len":5,"c":true},{"a":11708,"n":"irq_spr012_row3_next_lo","k":"routine","len":5,"c":true},{"a":11713,"n":"irq_spr012_row3_ptr0","k":"routine","len":5,"c":true},{"a":11718,"n":"irq_spr012_row3_ptr1","k":"routine","len":5,"c":true},{"a":11723,"n":"irq_spr012_row3_ptr2","k":"routine","len":5,"c":true},{"a":11728,"n":"irq_spr012_row3_next_hi","k":"routine","len":6,"c":true},{"a":11734,"n":"irq_spr345_row2","k":"routine","len":11,"c":true},{"a":11743,"n":"b_2DDF","k":"branch","len":1,"c":false},{"a":11745,"n":"irq_spr345_row2_y","k":"routine","len":16,"c":true},{"a":11761,"n":"irq_spr345_row2_line","k":"routine","len":5,"c":true},{"a":11766,"n":"irq_spr345_row2_next_lo","k":"routine","len":6,"c":true},{"a":11772,"n":"irq_spr345_row2_ptr0","k":"routine","len":5,"c":true},{"a":11777,"n":"irq_spr345_row2_ptr1","k":"routine","len":5,"c":true},{"a":11782,"n":"irq_spr345_row2_ptr2","k":"routine","len":5,"c":true},{"a":11787,"n":"irq_spr345_row2_next_hi","k":"routine","len":6,"c":true},{"a":11793,"n":"irq_spr345_row3","k":"routine","len":11,"c":true},{"a":11802,"n":"b_2E1A","k":"branch","len":1,"c":false},{"a":11804,"n":"irq_spr345_row3_y","k":"routine","len":16,"c":true},{"a":11820,"n":"irq_spr345_row3_line","k":"routine","len":5,"c":true},{"a":11825,"n":"irq_spr345_row3_next_lo","k":"routine","len":6,"c":true},{"a":11831,"n":"irq_spr345_row3_ptr0","k":"routine","len":5,"c":true},{"a":11836,"n":"irq_spr345_row3_ptr1","k":"routine","len":5,"c":true},{"a":11841,"n":"irq_spr345_row3_ptr2","k":"routine","len":5,"c":true},{"a":11846,"n":"irq_spr345_row3_next_hi","k":"routine","len":6,"c":true},{"a":11852,"n":"irq_all_row2","k":"routine","len":11,"c":true},{"a":11861,"n":"b_2E55","k":"branch","len":1,"c":false},{"a":11863,"n":"irq_all_row2_wait","k":"routine","len":7,"c":true},{"a":11864,"n":"b_2E58","k":"branch","len":1,"c":false},{"a":11870,"n":"irq_all_row2_y","k":"routine","len":25,"c":true},{"a":11895,"n":"irq_all_row2_line","k":"routine","len":7,"c":true},{"a":11902,"n":"irq_all_row2_ptr0120","k":"routine","len":5,"c":true},{"a":11907,"n":"irq_all_row2_ptr0121","k":"routine","len":5,"c":true},{"a":11912,"n":"irq_all_row2_ptr0122","k":"routine","len":5,"c":true},{"a":11917,"n":"irq_all_row2_ptr3450","k":"routine","len":5,"c":true},{"a":11922,"n":"irq_all_row2_ptr3451","k":"routine","len":5,"c":true},{"a":11927,"n":"irq_all_row2_ptr3452","k":"routine","len":5,"c":true},{"a":11932,"n":"irq_all_row2_next_lo","k":"routine","len":5,"c":true},{"a":11937,"n":"irq_all_row2_next_hi","k":"routine","len":6,"c":true},{"a":11943,"n":"irq_all_row3","k":"routine","len":11,"c":true},{"a":11952,"n":"b_2EB0","k":"branch","len":1,"c":false},{"a":11954,"n":"irq_all_row3_wait","k":"routine","len":7,"c":true},{"a":11955,"n":"b_2EB3","k":"branch","len":1,"c":false},{"a":11961,"n":"irq_all_row3_y","k":"routine","len":25,"c":true},{"a":11986,"n":"irq_all_row3_line","k":"routine","len":7,"c":true},{"a":11993,"n":"irq_all_row3_ptr0120","k":"routine","len":5,"c":true},{"a":11998,"n":"irq_all_row3_ptr0121","k":"routine","len":5,"c":true},{"a":12003,"n":"irq_all_row3_ptr0122","k":"routine","len":5,"c":true},{"a":12008,"n":"irq_all_row3_ptr3450","k":"routine","len":5,"c":true},{"a":12013,"n":"irq_all_row3_ptr3451","k":"routine","len":5,"c":true},{"a":12018,"n":"irq_all_row3_ptr3452","k":"routine","len":5,"c":true},{"a":12023,"n":"irq_all_row3_next_lo","k":"routine","len":5,"c":true},{"a":12028,"n":"irq_all_row3_next_hi","k":"routine","len":6,"c":true},{"a":12034,"n":"irq_spr345_row2_spr012_row3","k":"routine","len":11,"c":true},{"a":12043,"n":"b_2F0B","k":"branch","len":1,"c":false},{"a":12045,"n":"irq_b2a3_y345","k":"routine","len":11,"c":true},{"a":12056,"n":"irq_b2a3_y012","k":"routine","len":16,"c":true},{"a":12072,"n":"irq_b2a3_line","k":"routine","len":5,"c":true},{"a":12077,"n":"irq_b2a3_next_lo","k":"routine","len":5,"c":true},{"a":12082,"n":"irq_b2a3_next_hi","k":"routine","len":5,"c":true},{"a":12087,"n":"irq_b2a3_ptr3450","k":"routine","len":5,"c":true},{"a":12092,"n":"irq_b2a3_ptr3451","k":"routine","len":5,"c":true},{"a":12097,"n":"irq_b2a3_ptr3452","k":"routine","len":8,"c":true},{"a":12105,"n":"irq_b2a3_ptr0120","k":"routine","len":5,"c":true},{"a":12110,"n":"irq_b2a3_ptr0121","k":"routine","len":5,"c":true},{"a":12115,"n":"irq_b2a3_ptr0122","k":"routine","len":6,"c":true},{"a":12121,"n":"irq_spr012_row2_spr345_row3","k":"routine","len":11,"c":true},{"a":12130,"n":"b_2F62","k":"branch","len":1,"c":false},{"a":12132,"n":"irq_a2b3_y012","k":"routine","len":11,"c":true},{"a":12143,"n":"irq_a2b3_y345","k":"routine","len":16,"c":true},{"a":12159,"n":"irq_a2b3_line","k":"routine","len":5,"c":true},{"a":12164,"n":"irq_a2b3_next_lo","k":"routine","len":5,"c":true},{"a":12169,"n":"irq_a2b3_next_hi","k":"routine","len":5,"c":true},{"a":12174,"n":"irq_a2b3_ptr0120","k":"routine","len":5,"c":true},{"a":12179,"n":"irq_a2b3_ptr0121","k":"routine","len":5,"c":true},{"a":12184,"n":"irq_a2b3_ptr0122","k":"routine","len":8,"c":true},{"a":12192,"n":"irq_a2b3_ptr3450","k":"routine","len":5,"c":true},{"a":12197,"n":"irq_a2b3_ptr3451","k":"routine","len":5,"c":true},{"a":12202,"n":"irq_a2b3_ptr3452","k":"routine","len":6,"c":true},{"a":12208,"n":"irq_line90_bitmap","k":"routine","len":23,"c":true},{"a":12217,"n":"b_2FB9","k":"branch","len":1,"c":false},{"a":12220,"n":"b_2FBC","k":"branch","len":1,"c":false},{"a":12231,"n":"irq_line90_next_line","k":"routine","len":5,"c":true},{"a":12236,"n":"irq_line90_next_lo","k":"routine","len":5,"c":true},{"a":12241,"n":"irq_line90_next_hi","k":"routine","len":27,"c":true},{"a":12268,"n":"irq_line90_bg_colour","k":"routine","len":6,"c":true},{"a":12274,"n":"nmi_bg_yellow","k":"routine","len":13,"c":true},{"a":12286,"n":"r_2FFE","k":"branch","len":1,"c":false},{"a":12287,"n":"irq_shadow_spr012","k":"routine","len":22,"c":true},{"a":12296,"n":"b_3008","k":"branch","len":1,"c":false},{"a":12309,"n":"row4f_spr0_ptr","k":"routine","len":5,"c":true},{"a":12314,"n":"row4f_spr1_ptr","k":"routine","len":5,"c":true},{"a":12319,"n":"row4f_spr2_ptr","k":"routine","len":26,"c":true},{"a":12345,"n":"irq_row4_back","k":"routine","len":22,"c":true},{"a":12354,"n":"b_3042","k":"branch","len":1,"c":false},{"a":12367,"n":"row4b_spr3_ptr","k":"routine","len":5,"c":true},{"a":12372,"n":"row4b_spr4_ptr","k":"routine","len":5,"c":true},{"a":12377,"n":"row4b_spr5_ptr","k":"routine","len":26,"c":true},{"a":12403,"n":"irq_row4_both","k":"routine","len":31,"c":true},{"a":12412,"n":"b_307C","k":"branch","len":1,"c":false},{"a":12434,"n":"row4both_spr0_ptr","k":"routine","len":5,"c":true},{"a":12439,"n":"row4both_spr1_ptr","k":"routine","len":5,"c":true},{"a":12444,"n":"row4both_spr2_ptr","k":"routine","len":5,"c":true},{"a":12449,"n":"row4both_spr3_ptr","k":"routine","len":5,"c":true},{"a":12454,"n":"row4both_spr4_ptr","k":"routine","len":5,"c":true},{"a":12459,"n":"row4both_spr5_ptr","k":"routine","len":26,"c":true},{"a":12485,"n":"irq_row4_none","k":"routine","len":32,"c":true},{"a":12494,"n":"b_30CE","k":"branch","len":1,"c":false},{"a":12517,"n":"irq_frame_end","k":"routine","len":53,"c":true},{"a":12526,"n":"b_30EE","k":"branch","len":1,"c":false},{"a":12570,"n":"speech_irq","k":"routine","len":62,"c":true},{"a":12605,"n":"b_313D","k":"branch","len":1,"c":false},{"a":12623,"n":"b_314F","k":"branch","len":1,"c":false},{"a":12632,"n":"speech_say_0","k":"routine","len":6,"c":true},{"a":12638,"n":"speech_say_1","k":"routine","len":6,"c":true},{"a":12644,"n":"speech_say_2","k":"routine","len":6,"c":true},{"a":12650,"n":"speech_say_3","k":"routine","len":6,"c":true},{"a":12656,"n":"speech_say_4_to_7","k":"routine","len":22,"c":true},{"a":12678,"n":"speech_start","k":"routine","len":108,"c":true},{"a":12741,"n":"b_31C5","k":"branch","len":1,"c":false},{"a":12783,"n":"b_31EF","k":"branch","len":1,"c":false},{"a":12786,"n":"irq_frame_top","k":"routine","len":97,"c":true},{"a":12795,"n":"b_31FB","k":"branch","len":1,"c":false},{"a":12847,"n":"b_322F","k":"branch","len":1,"c":false},{"a":12855,"n":"j_3237","k":"branch","len":1,"c":false},{"a":12883,"n":"mux_pick_row4_handler","k":"routine","len":58,"c":true},{"a":12904,"n":"b_3268","k":"branch","len":1,"c":false},{"a":12919,"n":"b_3277","k":"branch","len":1,"c":false},{"a":12930,"n":"b_3282","k":"branch","len":1,"c":false},{"a":12941,"n":"mux_copy_row4_ptrs","k":"routine","len":64,"c":true},{"a":13005,"n":"mux_pick_chain","k":"routine","len":58,"c":true},{"a":13015,"n":"b_32D7","k":"branch","len":1,"c":false},{"a":13020,"n":"b_32DC","k":"branch","len":1,"c":false},{"a":13029,"n":"b_32E5","k":"branch","len":1,"c":false},{"a":13034,"n":"b_32EA","k":"branch","len":1,"c":false},{"a":13041,"n":"b_32F1","k":"branch","len":1,"c":false},{"a":13044,"n":"j_32F4","k":"branch","len":1,"c":false},{"a":13048,"n":"b_32F8","k":"branch","len":1,"c":false},{"a":13053,"n":"b_32FD","k":"branch","len":1,"c":false},{"a":13060,"n":"b_3304","k":"branch","len":1,"c":false},{"a":13063,"n":"mux_same_y","k":"routine","len":78,"c":true},{"a":13141,"n":"mux_back_low_near","k":"routine","len":118,"c":true},{"a":13259,"n":"mux_front_low_near","k":"routine","len":118,"c":true},{"a":13377,"n":"mux_back_low_14","k":"routine","len":98,"c":true},{"a":13475,"n":"mux_front_low_14","k":"routine","len":98,"c":true},{"a":13573,"n":"mux_back_low_far","k":"routine","len":118,"c":true},{"a":13691,"n":"mux_front_low_far","k":"routine","len":118,"c":true},{"a":13809,"n":"mux_set_row1","k":"routine","len":170,"c":true},{"a":13915,"n":"b_365B","k":"branch","len":1,"c":false},{"a":13924,"n":"b_3664","k":"branch","len":1,"c":false},{"a":13955,"n":"b_3683","k":"branch","len":1,"c":false},{"a":13964,"n":"b_368C","k":"branch","len":1,"c":false},{"a":13979,"n":"xmsb_bits_spr012","k":"table","len":4,"c":true},{"a":13983,"n":"xmsb_bits_spr345","k":"table","len":4,"c":true},{"a":13987,"n":"patch_ptrs_front_row2","k":"routine","len":18,"c":true},{"a":14005,"n":"patch_ptrs_front_row3","k":"routine","len":18,"c":true},{"a":14023,"n":"patch_ptrs_back_row2","k":"routine","len":18,"c":true},{"a":14041,"n":"patch_ptrs_back_row3","k":"routine","len":18,"c":true},{"a":14059,"n":"patch_ptrs_both_row2","k":"routine","len":35,"c":true},{"a":14094,"n":"patch_ptrs_both_row3","k":"routine","len":35,"c":true},{"a":14129,"n":"patch_ptrs_mixed_a","k":"routine","len":35,"c":true},{"a":14164,"n":"patch_ptrs_mixed_a_unused","k":"routine","len":35,"c":true},{"a":14199,"n":"patch_ptrs_mixed_b","k":"routine","len":35,"c":true},{"a":14234,"n":"patch_ptrs_mixed_b_unused","k":"routine","len":35,"c":true},{"a":14269,"n":"fighter_animate","k":"routine","len":15,"c":true},{"a":14280,"n":"b_37C8","k":"branch","len":1,"c":false},{"a":14283,"n":"r_37CB","k":"branch","len":1,"c":false},{"a":14284,"n":"anim_tick","k":"routine","len":11,"c":true},{"a":14296,"n":"anim_next_step","k":"routine","len":95,"c":true},{"a":14321,"n":"b_37F1","k":"branch","len":1,"c":false},{"a":14327,"n":"b_37F7","k":"branch","len":1,"c":false},{"a":14351,"n":"j_380F","k":"branch","len":1,"c":false},{"a":14391,"n":"anim_apply_motion","k":"routine","len":78,"c":true},{"a":14412,"n":"j_384C","k":"branch","len":1,"c":false},{"a":14429,"n":"b_385D","k":"branch","len":1,"c":false},{"a":14434,"n":"b_3862","k":"branch","len":1,"c":false},{"a":14442,"n":"b_386A","k":"branch","len":1,"c":false},{"a":14456,"n":"b_3878","k":"branch","len":1,"c":false},{"a":14461,"n":"b_387D","k":"branch","len":1,"c":false},{"a":14469,"n":"anim_start","k":"routine","len":43,"c":true},{"a":14507,"n":"b_38AB","k":"branch","len":1,"c":false},{"a":14512,"n":"cell_lo_offsets","k":"table","len":4,"c":true},{"a":14516,"n":"sprite_ptr_presets","k":"table","len":18,"c":true},{"a":14534,"n":"sprite_ptr_presets_2","k":"table","len":18,"c":true},{"a":14552,"n":"sprite_ptr_presets_rev","k":"table","len":36,"c":true},{"a":14588,"n":"preset_addr_lo","k":"table","len":4,"c":true},{"a":14592,"n":"preset_addr_hi","k":"table","len":12,"c":true},{"a":14604,"n":"sprite_buf_lo","k":"table","len":4,"c":true},{"a":14608,"n":"sprite_buf_hi","k":"table","len":4,"c":true},{"a":14612,"n":"build_fighter_sprites","k":"routine","len":46,"c":true},{"a":14619,"n":"b_391B","k":"branch","len":1,"c":false},{"a":14633,"n":"b_3929","k":"branch","len":1,"c":false},{"a":14657,"n":"b_3941","k":"branch","len":1,"c":false},{"a":14658,"n":"preset_src_lo","k":"routine","len":1,"c":true},{"a":14659,"n":"preset_src_hi","k":"routine","len":41,"c":true},{"a":14678,"n":"b_3956","k":"branch","len":1,"c":false},{"a":14699,"n":"b_396B","k":"branch","len":1,"c":false},{"a":14700,"n":"slot0_src_lo","k":"routine","len":1,"c":true},{"a":14701,"n":"slot0_src_hi","k":"routine","len":51,"c":true},{"a":14707,"n":"b_3973","k":"branch","len":1,"c":false},{"a":14718,"n":"b_397E","k":"branch","len":1,"c":false},{"a":14730,"n":"b_398A","k":"branch","len":1,"c":false},{"a":14751,"n":"b_399F","k":"branch","len":1,"c":false},{"a":14752,"n":"slot1_src_lo","k":"routine","len":1,"c":true},{"a":14753,"n":"slot1_src_hi","k":"routine","len":51,"c":true},{"a":14759,"n":"b_39A7","k":"branch","len":1,"c":false},{"a":14770,"n":"b_39B2","k":"branch","len":1,"c":false},{"a":14782,"n":"b_39BE","k":"branch","len":1,"c":false},{"a":14803,"n":"b_39D3","k":"branch","len":1,"c":false},{"a":14804,"n":"slot2_src_lo","k":"routine","len":1,"c":true},{"a":14805,"n":"slot2_src_hi","k":"routine","len":51,"c":true},{"a":14811,"n":"b_39DB","k":"branch","len":1,"c":false},{"a":14822,"n":"b_39E6","k":"branch","len":1,"c":false},{"a":14834,"n":"b_39F2","k":"branch","len":1,"c":false},{"a":14855,"n":"b_3A07","k":"branch","len":1,"c":false},{"a":14856,"n":"slot3_src_lo","k":"routine","len":1,"c":true},{"a":14857,"n":"slot3_src_hi","k":"routine","len":51,"c":true},{"a":14863,"n":"b_3A0F","k":"branch","len":1,"c":false},{"a":14874,"n":"b_3A1A","k":"branch","len":1,"c":false},{"a":14886,"n":"b_3A26","k":"branch","len":1,"c":false},{"a":14907,"n":"b_3A3B","k":"branch","len":1,"c":false},{"a":14908,"n":"slot4_src_lo","k":"routine","len":1,"c":true},{"a":14909,"n":"slot4_src_hi","k":"routine","len":51,"c":true},{"a":14915,"n":"b_3A43","k":"branch","len":1,"c":false},{"a":14926,"n":"b_3A4E","k":"branch","len":1,"c":false},{"a":14938,"n":"b_3A5A","k":"branch","len":1,"c":false},{"a":14959,"n":"b_3A6F","k":"branch","len":1,"c":false},{"a":14960,"n":"slot5_src_lo","k":"routine","len":1,"c":true},{"a":14961,"n":"slot5_src_hi","k":"routine","len":51,"c":true},{"a":14967,"n":"b_3A77","k":"branch","len":1,"c":false},{"a":14978,"n":"b_3A82","k":"branch","len":1,"c":false},{"a":14990,"n":"b_3A8E","k":"branch","len":1,"c":false},{"a":15011,"n":"b_3AA3","k":"branch","len":1,"c":false},{"a":15012,"n":"slot6_src_lo","k":"routine","len":1,"c":true},{"a":15013,"n":"slot6_src_hi","k":"routine","len":51,"c":true},{"a":15019,"n":"b_3AAB","k":"branch","len":1,"c":false},{"a":15030,"n":"b_3AB6","k":"branch","len":1,"c":false},{"a":15042,"n":"b_3AC2","k":"branch","len":1,"c":false},{"a":15063,"n":"b_3AD7","k":"branch","len":1,"c":false},{"a":15064,"n":"slot7_src_lo","k":"routine","len":1,"c":true},{"a":15065,"n":"slot7_src_hi","k":"routine","len":51,"c":true},{"a":15071,"n":"b_3ADF","k":"branch","len":1,"c":false},{"a":15082,"n":"b_3AEA","k":"branch","len":1,"c":false},{"a":15094,"n":"b_3AF6","k":"branch","len":1,"c":false},{"a":15115,"n":"b_3B0B","k":"branch","len":1,"c":false},{"a":15116,"n":"slot8_src_lo","k":"routine","len":1,"c":true},{"a":15117,"n":"slot8_src_hi","k":"routine","len":6,"c":true},{"a":15123,"n":"fighter_store_ptrs","k":"routine","len":74,"c":true},{"a":15161,"n":"b_3B39","k":"branch","len":1,"c":false},{"a":15172,"n":"b_3B44","k":"branch","len":1,"c":false},{"a":15181,"n":"b_3B4D","k":"branch","len":1,"c":false},{"a":15197,"n":"row4_frames","k":"table","len":8,"c":true},{"a":15205,"n":"row4_ptr_col0","k":"table","len":16,"c":true},{"a":15221,"n":"row4_ptr_col1","k":"table","len":16,"c":true},{"a":15237,"n":"row4_ptr_col2","k":"table","len":16,"c":true},{"a":15253,"n":"fighter_ptrs_direct","k":"routine","len":48,"c":true},{"a":15301,"n":"build_fighter_sprites_mirror","k":"routine","len":59,"c":true},{"a":15339,"n":"b_3BEB","k":"branch","len":1,"c":false},{"a":15359,"n":"b_3BFF","k":"branch","len":1,"c":false},{"a":15360,"n":"mirror_preset_src_lo","k":"routine","len":1,"c":true},{"a":15361,"n":"mirror_preset_src_hi","k":"routine","len":572,"c":true},{"a":15381,"n":"b_3C15","k":"branch","len":1,"c":false},{"a":15384,"n":"b_3C18","k":"branch","len":1,"c":false},{"a":15416,"n":"b_3C38","k":"branch","len":1,"c":false},{"a":15424,"n":"b_3C40","k":"branch","len":1,"c":false},{"a":15449,"n":"b_3C59","k":"branch","len":1,"c":false},{"a":15452,"n":"b_3C5C","k":"branch","len":1,"c":false},{"a":15484,"n":"b_3C7C","k":"branch","len":1,"c":false},{"a":15492,"n":"b_3C84","k":"branch","len":1,"c":false},{"a":15517,"n":"b_3C9D","k":"branch","len":1,"c":false},{"a":15520,"n":"b_3CA0","k":"branch","len":1,"c":false},{"a":15552,"n":"b_3CC0","k":"branch","len":1,"c":false},{"a":15560,"n":"b_3CC8","k":"branch","len":1,"c":false},{"a":15585,"n":"b_3CE1","k":"branch","len":1,"c":false},{"a":15588,"n":"b_3CE4","k":"branch","len":1,"c":false},{"a":15620,"n":"b_3D04","k":"branch","len":1,"c":false},{"a":15628,"n":"b_3D0C","k":"branch","len":1,"c":false},{"a":15653,"n":"b_3D25","k":"branch","len":1,"c":false},{"a":15656,"n":"b_3D28","k":"branch","len":1,"c":false},{"a":15688,"n":"b_3D48","k":"branch","len":1,"c":false},{"a":15696,"n":"b_3D50","k":"branch","len":1,"c":false},{"a":15721,"n":"b_3D69","k":"branch","len":1,"c":false},{"a":15724,"n":"b_3D6C","k":"branch","len":1,"c":false},{"a":15756,"n":"b_3D8C","k":"branch","len":1,"c":false},{"a":15764,"n":"b_3D94","k":"branch","len":1,"c":false},{"a":15789,"n":"b_3DAD","k":"branch","len":1,"c":false},{"a":15792,"n":"b_3DB0","k":"branch","len":1,"c":false},{"a":15824,"n":"b_3DD0","k":"branch","len":1,"c":false},{"a":15832,"n":"b_3DD8","k":"branch","len":1,"c":false},{"a":15857,"n":"b_3DF1","k":"branch","len":1,"c":false},{"a":15860,"n":"b_3DF4","k":"branch","len":1,"c":false},{"a":15892,"n":"b_3E14","k":"branch","len":1,"c":false},{"a":15900,"n":"b_3E1C","k":"branch","len":1,"c":false},{"a":15925,"n":"b_3E35","k":"branch","len":1,"c":false},{"a":15928,"n":"b_3E38","k":"branch","len":1,"c":false},{"a":15933,"n":"copy_cell_mirrored","k":"routine","len":35,"c":true},{"a":15967,"n":"b_3E5F","k":"branch","len":1,"c":false},{"a":15968,"n":"mirror_src_lo_a","k":"routine","len":1,"c":true},{"a":15969,"n":"mirror_src_hi_a","k":"routine","len":5,"c":true},{"a":15974,"n":"mirror_dst_lo_a","k":"routine","len":1,"c":true},{"a":15975,"n":"mirror_dst_hi_a","k":"routine","len":3,"c":true},{"a":15978,"n":"mirror_src_lo_b","k":"routine","len":1,"c":true},{"a":15979,"n":"mirror_src_hi_b","k":"routine","len":5,"c":true},{"a":15984,"n":"mirror_dst_lo_b","k":"routine","len":1,"c":true},{"a":15985,"n":"mirror_dst_hi_b","k":"routine","len":3,"c":true},{"a":15988,"n":"mirror_src_lo_c","k":"routine","len":1,"c":true},{"a":15989,"n":"mirror_src_hi_c","k":"routine","len":5,"c":true},{"a":15994,"n":"mirror_dst_lo_c","k":"routine","len":1,"c":true},{"a":15995,"n":"mirror_dst_hi_c","k":"routine","len":5,"c":true},{"a":16223,"n":"backdrop0_bitmap_packed","k":"table","len":161,"c":true},{"a":16384,"n":"backdrop0_bitmap_packed_4000","k":"table","len":1024,"c":true},{"a":17408,"n":"backdrop0_bitmap_packed_4000_4400","k":"table","len":1024,"c":true},{"a":18432,"n":"backdrop0_bitmap_packed_4000_4800","k":"table","len":686,"c":true},{"a":19118,"n":"backdrop1_bitmap_packed","k":"table","len":1024,"c":true},{"a":20142,"n":"backdrop1_bitmap_packed_4eae","k":"table","len":1024,"c":true},{"a":21166,"n":"backdrop1_bitmap_packed_52ae","k":"table","len":510,"c":true},{"a":21676,"n":"backdrop2_bitmap_packed","k":"table","len":1024,"c":true},{"a":22700,"n":"backdrop2_bitmap_packed_58ac","k":"table","len":1024,"c":true},{"a":23724,"n":"backdrop2_bitmap_packed_5cac","k":"table","len":64,"c":true},{"a":23788,"n":"backdrop3_bitmap_packed","k":"table","len":1024,"c":true},{"a":24812,"n":"backdrop3_bitmap_packed_60ec","k":"table","len":1024,"c":true},{"a":25836,"n":"backdrop3_bitmap_packed_64ec","k":"table","len":991,"c":true},{"a":26827,"n":"backdrop0_colour_packed","k":"table","len":630,"c":true},{"a":27457,"n":"backdrop1_colour_packed","k":"table","len":597,"c":true},{"a":28054,"n":"backdrop2_colour_packed","k":"table","len":586,"c":true},{"a":28640,"n":"backdrop3_colour_packed","k":"table","len":544,"c":true},{"a":29184,"n":"reach_move06_facing","k":"table","len":59,"c":true},{"a":29243,"n":"reach_move07_facing","k":"table","len":59,"c":true},{"a":29302,"n":"reach_move0a_facing","k":"table","len":59,"c":true},{"a":29361,"n":"reach_move0b_facing","k":"table","len":59,"c":true},{"a":29420,"n":"reach_move0c_facing","k":"table","len":59,"c":true},{"a":29479,"n":"reach_move0d_facing","k":"table","len":59,"c":true},{"a":29538,"n":"reach_move0e_facing","k":"table","len":59,"c":true},{"a":29597,"n":"reach_move0f_facing","k":"table","len":59,"c":true},{"a":29656,"n":"reach_move18_facing","k":"table","len":59,"c":true},{"a":29715,"n":"reach_move11_facing","k":"table","len":59,"c":true},{"a":29774,"n":"reach_move10_facing","k":"table","len":59,"c":true},{"a":29833,"n":"reach_move06_behind","k":"table","len":59,"c":true},{"a":29892,"n":"reach_move07_behind","k":"table","len":59,"c":true},{"a":29951,"n":"reach_move0a_behind","k":"table","len":59,"c":true},{"a":30010,"n":"reach_move0b_behind","k":"table","len":59,"c":true},{"a":30069,"n":"reach_move0c_behind","k":"table","len":59,"c":true},{"a":30128,"n":"reach_move0d_behind","k":"table","len":59,"c":true},{"a":30187,"n":"reach_move0e_behind","k":"table","len":59,"c":true},{"a":30246,"n":"reach_move0f_behind","k":"table","len":59,"c":true},{"a":30305,"n":"reach_move18_behind","k":"table","len":59,"c":true},{"a":30364,"n":"reach_move11_behind","k":"table","len":59,"c":true},{"a":30423,"n":"reach_move10_behind","k":"table","len":59,"c":true},{"a":30496,"n":"anim_list_table","k":"variable","len":1,"c":true},{"a":30497,"n":"anim_list_table_hi","k":"variable","len":1,"c":true},{"a":30498,"n":"anim_list_table_next","k":"table","len":64,"c":true},{"a":30562,"n":"anim_01","k":"table","len":4,"c":true},{"a":30566,"n":"anim_02","k":"table","len":84,"c":true},{"a":30650,"n":"anim_03","k":"table","len":84,"c":true},{"a":30734,"n":"anim_04","k":"table","len":16,"c":true},{"a":30750,"n":"anim_05","k":"table","len":20,"c":true},{"a":30770,"n":"anim_06","k":"table","len":12,"c":true},{"a":30782,"n":"anim_07","k":"table","len":4,"c":true},{"a":30786,"n":"anim_08","k":"table","len":28,"c":true},{"a":30814,"n":"anim_09","k":"table","len":32,"c":true},{"a":30846,"n":"anim_0a","k":"table","len":8,"c":true},{"a":30854,"n":"anim_0b","k":"table","len":8,"c":true},{"a":30862,"n":"anim_0c","k":"table","len":12,"c":true},{"a":30874,"n":"anim_0d","k":"table","len":12,"c":true},{"a":30886,"n":"anim_0e","k":"table","len":44,"c":true},{"a":30930,"n":"anim_0f","k":"table","len":12,"c":true},{"a":30942,"n":"anim_10","k":"table","len":16,"c":true},{"a":30958,"n":"anim_11","k":"table","len":16,"c":true},{"a":30974,"n":"anim_12","k":"table","len":4,"c":true},{"a":30978,"n":"anim_13","k":"table","len":4,"c":true},{"a":30982,"n":"anim_14","k":"table","len":4,"c":true},{"a":30986,"n":"anim_15","k":"table","len":8,"c":true},{"a":30994,"n":"anim_16","k":"table","len":32,"c":true},{"a":31026,"n":"anim_17","k":"table","len":20,"c":true},{"a":31046,"n":"anim_18","k":"table","len":12,"c":true},{"a":31058,"n":"anim_19","k":"table","len":20,"c":true},{"a":31078,"n":"anim_1a","k":"table","len":16,"c":true},{"a":31094,"n":"anim_1b","k":"table","len":12,"c":true},{"a":31106,"n":"anim_1c","k":"table","len":36,"c":true},{"a":31142,"n":"anim_1d","k":"table","len":28,"c":true},{"a":31170,"n":"anim_1e","k":"table","len":20,"c":true},{"a":31190,"n":"anim_1f","k":"table","len":20,"c":true},{"a":31456,"n":"frame_cells_slot0","k":"table","len":79,"c":true},{"a":31535,"n":"frame_cells_slot1","k":"table","len":79,"c":true},{"a":31614,"n":"frame_cells_slot2","k":"table","len":79,"c":true},{"a":31693,"n":"frame_cells_slot3","k":"table","len":79,"c":true},{"a":31772,"n":"frame_cells_slot4","k":"table","len":79,"c":true},{"a":31851,"n":"frame_cells_slot5","k":"table","len":79,"c":true},{"a":31930,"n":"frame_cells_slot6","k":"table","len":79,"c":true},{"a":32009,"n":"frame_cells_slot7","k":"table","len":79,"c":true},{"a":32088,"n":"frame_cells_slot8","k":"table","len":79,"c":true},{"a":32256,"n":"mirror_pairs","k":"table","len":256,"c":true},{"a":32512,"n":"cell_page_table","k":"table","len":256,"c":true},{"a":32768,"n":"shape_cells_00","k":"table","len":128,"c":true},{"a":32896,"n":"shape_cell_02","k":"table","len":64,"c":true},{"a":32960,"n":"shape_cell_03","k":"table","len":64,"c":true},{"a":33024,"n":"shape_cell_04","k":"table","len":64,"c":true},{"a":33088,"n":"shape_cell_05","k":"table","len":128,"c":true},{"a":33216,"n":"shape_cell_07","k":"table","len":64,"c":true},{"a":33280,"n":"shape_cell_08","k":"table","len":64,"c":true},{"a":33344,"n":"shape_cell_09","k":"table","len":448,"c":true},{"a":33792,"n":"shape_cells_10","k":"table","len":1024,"c":true},{"a":34816,"n":"shape_cells_20","k":"table","len":1024,"c":true},{"a":35840,"n":"shape_cells_30","k":"table","len":1024,"c":true},{"a":36864,"n":"shape_cells_40","k":"table","len":832,"c":true},{"a":37696,"n":"shape_cell_4d","k":"table","len":192,"c":true},{"a":37888,"n":"shape_cells_50","k":"table","len":1024,"c":true},{"a":38912,"n":"shape_cells_60","k":"table","len":1024,"c":true},{"a":39936,"n":"shape_cells_70","k":"table","len":1024,"c":true},{"a":40960,"n":"shape_cells_80","k":"table","len":1024,"c":true},{"a":41984,"n":"shape_cells_90","k":"table","len":1024,"c":true},{"a":43008,"n":"shape_cells_a0","k":"table","len":1024,"c":true},{"a":44032,"n":"shape_cells_b0","k":"table","len":1024,"c":true},{"a":45056,"n":"shape_cells_c0","k":"table","len":1024,"c":true},{"a":46080,"n":"shape_cells_d0","k":"table","len":1024,"c":true},{"a":47104,"n":"shape_cells_e0","k":"table","len":1024,"c":true},{"a":48128,"n":"shape_cells_f0","k":"table","len":1024,"c":true},{"a":49152,"n":"blank_sprite","k":"table","len":64,"c":true},{"a":51520,"n":"bull_sprites_c940","k":"table","len":704,"c":true},{"a":53248,"n":"bull_sprites_d000","k":"table","len":512,"c":true},{"a":53760,"n":"sprites_d200","k":"table","len":448,"c":true},{"a":54208,"n":"bull_sprite_4f","k":"table","len":64,"c":true},{"a":54272,"n":"judge_sprites","k":"table","len":128,"c":true},{"a":54400,"n":"shadow_sprites","k":"table","len":1024,"c":true},{"a":55424,"n":"shadow_sprites_d880","k":"table","len":960,"c":true},{"a":56384,"n":"bull_sprites_dc40","k":"table","len":960,"c":true},{"a":57344,"n":"bull_sprites_e000","k":"table","len":256,"c":true},{"a":57600,"n":"font","k":"table","len":512,"c":true},{"a":58112,"n":"bull_sprites_e300","k":"table","len":704,"c":true},{"a":58816,"n":"sprites_e5c0","k":"table","len":128,"c":true},{"a":62784,"n":"speech_sample_table","k":"variable","len":1,"c":true},{"a":62785,"n":"speech_sample_table_1","k":"variable","len":1,"c":true},{"a":62786,"n":"speech_sample_table_2","k":"variable","len":1,"c":true},{"a":62787,"n":"speech_sample_table_3","k":"table","len":13,"c":true},{"a":62800,"n":"speech_table_gap","k":"table","len":48,"c":true},{"a":62848,"n":"speech_sample0","k":"table","len":227,"c":true},{"a":63075,"n":"speech_sample1","k":"table","len":790,"c":true},{"a":63865,"n":"speech_sample2","k":"table","len":858,"c":true},{"a":65235,"n":"speech_sample3","k":"table","len":266,"c":true},{"a":65530,"n":"hw_vectors","k":"table","len":6,"c":true}],"records":[{"a":0,"l":"start","c":"The 6510's data direction register. The game never addresses it by name; the symbol is the disassembler's start of memory.","t":"byte","b":[0]},{"a":1,"l":"cpu_port","c":"The 6510's port: $05 in play (RAM at $A000 and $E000, I/O at $D000), set by machine_vectors ($1956).","t":"byte","b":[68],"x":[6470,6486]},{"a":2,"l":"fighter_ptr_r1c1","c":"Sprite pointer for row 1, column 1 of fighter 0's 3 x 3 sprite grid; $03 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[1,0],"x":[4849,13813,13830,15125,15258]},{"a":4,"l":"fighter_ptr_r1c2","c":"Sprite pointer for row 1, column 2 of fighter 0's 3 x 3 sprite grid; $05 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[2,20],"x":[13818,13835,15129,15263]},{"a":6,"l":"fighter_ptr_r1c3","c":"Sprite pointer for row 1, column 3 of fighter 0's 3 x 3 sprite grid; $07 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[0,21],"x":[13823,13840,15133,15268]},{"a":8,"l":"fighter_ptr_r2c1","c":"Sprite pointer for row 2, column 1 of fighter 0's 3 x 3 sprite grid; $09 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[4,0],"x":[13989,14025,14061,14078,14148,14166,14201,14253,15137,15273]},{"a":10,"l":"fighter_ptr_r2c2","c":"Sprite pointer for row 2, column 2 of fighter 0's 3 x 3 sprite grid; $0B is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[5,23],"x":[13994,14030,14066,14083,14153,14171,14206,14258,15141,15278]},{"a":12,"l":"fighter_ptr_r2c3","c":"Sprite pointer for row 2, column 3 of fighter 0's 3 x 3 sprite grid; $0D is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[0,24],"x":[13999,14035,14071,14088,14158,14176,14211,14263,15145,15283]},{"a":14,"l":"fighter_ptr_r3c1","c":"Sprite pointer for row 3, column 1 of fighter 0's 3 x 3 sprite grid; $0F is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[7,0],"x":[14007,14043,14096,14113,14131,14183,14218,14236,15149,15288]},{"a":16,"l":"fighter_ptr_r3c2","c":"Sprite pointer for row 3, column 2 of fighter 0's 3 x 3 sprite grid; $11 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[8,26],"x":[14012,14048,14101,14118,14136,14188,14223,14241,15153,15293]},{"a":18,"l":"fighter_ptr_r3c3","c":"Sprite pointer for row 3, column 3 of fighter 0's 3 x 3 sprite grid; $13 is fighter 1's. Written by the sprite builder ($3B13-$3B35) after a pose is built, copied into sprite pointers by the multiplexer ($35F1-$37B7).","t":"byte","b":[0,27],"x":[14017,14053,14106,14123,14141,14193,14228,14246,15157,15298]},{"a":20,"l":"fighter_spr_x","c":"Fighter's sprite X, low byte: fighter_x ($6A) doubled ($386C). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $15 fighter 1's.","t":"byte","b":[112,164],"x":[12861,12875,14447]},{"a":22,"l":"fighter_spr_y","c":"Fighter's sprite Y for the top of the grid: fighter_y ($6C) doubled; $A0 when standing ($383E). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $17 fighter 1's.","t":"byte","b":[160],"x":[6876,12857,12871,14399]},{"a":23,"l":"fighter_spr_y_f1","c":"Fighter 1's fighter_spr_y (the byte after $16, read as $16,X with X = 1).","t":"byte","b":[160],"x":[6878]},{"a":24,"l":"fighter_spr_x_hi","c":"Bit 8 of each fighter's sprite X (0 or 1), the carry of doubling $6A ($3871-$387A); $18 for fighter 0 and $19 for fighter 1.","t":"byte","b":[0,0],"x":[12865,12879,14453,14458]},{"a":26,"l":"mux_a_x","c":"Multiplexer copy of the X of the fighter in sprites 0-2, taken by the line-0 interrupt ($3237-$3251) so the frame is drawn from one consistent set; $1B is the other fighter's (sprites 3-5).","t":"byte","b":[112],"x":[12863,13899]},{"a":27,"l":"mux_b_x","c":"Multiplexer copy of the X of the fighter in sprites 3-5 ($3237-$3251; the bull round also writes it at $13FC).","t":"byte","b":[164],"x":[5116,12877,13939]},{"a":28,"l":"mux_a_y","c":"Multiplexer copy of the top Y of the fighter in sprites 0-2. Its difference from $1D picks one of seven raster chains ($32CD).","t":"byte","b":[160],"x":[12859,12885,13006,13023,13099,13203,13345,13426,13552,13635,13777,13858]},{"a":29,"l":"mux_b_y","c":"Multiplexer copy of the top Y of the fighter in sprites 3-5.","t":"byte","b":[160],"x":[12873,12889,12904,13008,13021,13227,13321,13454,13524,13659,13753,13847]},{"a":30,"l":"mux_a_xhi","c":"Multiplexer copy of the X bit 8 of the fighter in sprites 0-2.","t":"byte","b":[0],"x":[12867,13897]},{"a":31,"l":"mux_b_xhi","c":"Multiplexer copy of the X bit 8 of the fighter in sprites 3-5.","t":"byte","b":[0],"x":[12881,13937]},{"a":32,"l":"mux_a_fighter","c":"Which fighter (0 or 1) is drawn with sprites 0-2 this frame, from $24 ($3220-$3235).","t":"byte","b":[0],"x":[12838,12849,12855,12941,13811,13869,13987,14005,14059,14094,14129,14164,14199,14234]},{"a":33,"l":"mux_b_fighter","c":"Which fighter is drawn with sprites 3-5 this frame, the other one of $20.","t":"byte","b":[1],"x":[12842,12853,12869,12973,13828,13882,14023,14041,14076,14111,14146,14181,14216,14251]},{"a":34,"l":"fighter_colour","c":"Fighter's sprite colour: 1 (white) and 2 (red), set at $19C7; the bull round sets fighter 1's to 9 ($135A). Read at $362F-$363E. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $23 fighter 1's.","t":"byte","b":[1],"x":[6599,13871,13884]},{"a":35,"l":"fighter_colour_f1","c":"Fighter 1's fighter_colour (the byte after $22, read as $22,X with X = 1).","t":"byte","b":[2],"x":[4954,6603,6748]},{"a":36,"l":"spr012_fighter","c":"The fighter drawn with sprites 0-2 (the others use 3-5). Written by fighter_update from the sprite collision register ($282C/$2831) and by set-up ($18EF) and the bull round ($1336). Whether 0-2 means in front was not checked.","t":"byte","b":[0],"x":[4918,6383,10284,10289,12832]},{"a":37,"l":"after_mux_irq","c":"Low byte of the address of the handler that runs after the sprite chain (one of $2FFF, $3039, $3073, $30C5), chosen at $3253-$3288 by which fighters are off the ground; $26 is the high byte.","t":"byte","b":[197],"x":[12895,12910,12921,12932,13089,13193,13311,13416,13514,13625,13743]},{"a":38,"l":"after_mux_irq_hi","c":"High byte of after_mux_irq ($25).","t":"byte","b":[48],"x":[12899,12914,12925,12936,13094,13198,13316,13421,13519,13630,13748]},{"a":39,"l":"fighter_row4_ptr_c1","c":"Sprite pointer for column 1 of the extra row drawn at Y $DA under fighter 0 while off the ground (the shadow); $28 is fighter 1's. Set from the table at $3B5D ($3B50-$3B5A).","t":"byte","b":[86,5],"x":[12943,12958,12975,12990,15184]},{"a":41,"l":"fighter_row4_ptr_c2","c":"Sprite pointer for column 2 of the extra row drawn at Y $DA under fighter 0 while off the ground (the shadow); $2A is fighter 1's. Set from the table at $3B5D ($3B50-$3B5A).","t":"byte","b":[87,0],"x":[12948,12963,12980,12995,15189]},{"a":43,"l":"fighter_row4_ptr_c3","c":"Sprite pointer for column 3 of the extra row drawn at Y $DA under fighter 0 while off the ground (the shadow); $2C is fighter 1's. Set from the table at $3B5D ($3B50-$3B5A).","t":"byte","b":[0,8],"x":[12953,12968,12985,13000,15194]},{"a":45,"l":"speech_ptr","c":"Low byte of the address of the next speech byte ($3128); $2E is the high byte.","t":"byte","b":[122],"x":[12584,12599,12607,12701]},{"a":46,"l":"speech_ptr_hi","c":"High byte of speech_ptr.","t":"byte","b":[249],"x":[12603,12611,12708]},{"a":47,"l":"speech_volume","c":"$0F or $00, flipped by every speech interrupt and written to $D418 ($311D): one-bit speech by switching the master volume.","t":"byte","b":[0,15],"x":[12573,12580,12749]},{"a":49,"l":"speech_end","c":"Low byte of the address where the playing sample ends ($313D); $32 is the high byte.","t":"byte","b":[121],"x":[12605,12716]},{"a":50,"l":"speech_end_hi","c":"High byte of speech_end.","t":"byte","b":[249],"x":[12609,12723]},{"a":51,"l":"speech_state","c":"0 while a sample plays, $FF when it has finished ($3149, $31C3); the bull round sets $7F ($134A) and waits on it ($141B).","t":"byte","b":[255],"x":[4938,5147,12617,12739,12773]},{"a":52,"l":"unpack_src","c":"bitmap_unpack's source pointer, low byte, moving backwards through a packed stream ($17C4-$1836); $35 is the high byte.","t":"byte","b":[97],"x":[6084,6094,6096,6100,6107,6119,6135,6161,6188,6192]},{"a":53,"l":"unpack_src_hi","c":"High byte of unpack_src.","t":"byte","b":[63],"x":[6089,6102,6104,6194,6198]},{"a":54,"l":"unpack_dst","c":"Destination pointer, low byte, shared by bitmap_unpack (downwards from $F53F) and colour_unpack (upwards from $D8C8 or $CCC8); $37 is the high byte.","t":"byte","b":[63],"x":[6111,6137,6165,6174,6178,6243,6258,6273,6349,6367,6369]},{"a":55,"l":"unpack_dst_hi","c":"High byte of unpack_dst.","t":"byte","b":[230],"x":[6115,6180,6184,6247,6262,6277,6373]},{"a":56,"l":"unpack_count","c":"Run length in bitmap_unpack ($17ED, $1805).","t":"byte","b":[40,100,0,0,0,217],"x":[6125,6133,6149,6154,6163,6176,6190]},{"a":62,"l":"speech_save_x","c":"X saved by speech_say_0..3 ($3158-$316A) and restored at $31EF.","t":"byte","b":[0],"x":[12632,12638,12644,12650,12656,12662,12668,12674,12783]},{"a":63,"l":"colour_src","c":"colour_unpack's nybble stream pointer, low byte ($1852, $18C0); $40 is the high byte.","t":"byte","b":[65],"x":[6226,6320,6336]},{"a":64,"l":"colour_src_hi","c":"High byte of colour_src.","t":"byte","b":[107],"x":[6231,6340]},{"a":65,"l":"colour_nybble","c":"The nybble colour_unpack read last ($18C6).","t":"byte","b":[0],"x":[6291,6342,6355]},{"a":66,"l":"colour_read_mask","c":"$0F or $F0: which half of the stream byte colour_unpack reads next ($18C8).","t":"byte","b":[15],"x":[6235,6322,6326,6344]},{"a":67,"l":"colour_write_mask","c":"$F0 or $0F: which half of the destination byte colour_unpack keeps (it writes the other) ($185D-$187D).","t":"byte","b":[240],"x":[6239,6254,6269,6351,6357]},{"a":68,"l":"colour_scratch","c":"The kept half of the destination byte, while colour_unpack inserts a nybble ($18D1).","t":"byte","b":[128],"x":[6353,6365]},{"a":69,"l":"anim_request","c":"Animation the fighter should play, which is the move number ($2B4C); 0 for none. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $46 fighter 1's.","t":"byte","b":[0],"x":[4898,6718,7717,10984,11084,11109,11115,14269,14308,14340,14353,14481,14485]},{"a":70,"l":"anim_request_f1","c":"Fighter 1's anim_request (the byte after $45, read as $45,X with X = 1).","t":"byte","b":[2],"x":[4934,5011,5141,6720]},{"a":71,"l":"anim_loaded","c":"Animation number once fighter_animate has started it ($3893); set to 0 to force a restart ($2B59). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $48 fighter 1's.","t":"byte","b":[0],"x":[4894,6724,7725,10857,10934,10977,11080,11097,11113,14273,14483]},{"a":72,"l":"anim_loaded_f1","c":"Fighter 1's anim_loaded (the byte after $47, read as $47,X with X = 1).","t":"byte","b":[2],"x":[4946,5015,5145,6726]},{"a":73,"l":"anim_timer","c":"Ticks left in the current animation step ($37CC, $3823). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $4A fighter 1's.","t":"byte","b":[1,5],"x":[14284,14314,14348,14371,14479]},{"a":75,"l":"anim_reverse","c":"Non-zero: the animation plays backwards and its X steps are negated against the facing ($37DC, $3843, $38A2). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $4C fighter 1's.","t":"byte","b":[0],"x":[4890,6706,7727,8942,9010,9149,10713,10813,10851,10873,10910,10928,11015,11131,14300,14403,14498]},{"a":76,"l":"anim_reverse_f1","c":"Fighter 1's anim_reverse (the byte after $4B, read as $4B,X with X = 1).","t":"byte","b":[0],"x":[4948,6708]},{"a":77,"l":"anim_offset","c":"Byte offset of fighter 0's current 4-byte step in its list ($37E0-$380F); fighter 1's is at $4E.","t":"byte","b":[4,32],"x":[10991,14304,14327,14336,14351,14367,14504,14509]},{"a":79,"l":"anim_list_ptr","c":"Pointer to the step list of the fighter being animated, low byte ($3818); $50 is the high byte.","t":"byte","b":[98],"x":[14360,14369,14374,14379,14384]},{"a":80,"l":"anim_list_ptr_hi","c":"High byte of anim_list_ptr.","t":"byte","b":[119],"x":[14365]},{"a":81,"l":"fighter_frame","c":"Shape frame on show, 0-$4E (byte 2 of each step, $3828); the hit test reads it ($2B86). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $52 fighter 1's.","t":"byte","b":[0],"x":[4972,5032,6864,9712,10719,11142,11195,11334,14376,14412,14666,14718,14770,14822,14874,14926,14978,15030,15082,15164,15253,15370,15438,15506,15574,15642,15710,15778,15846,15914]},{"a":82,"l":"fighter_frame_f1","c":"Fighter 1's fighter_frame (the byte after $51, read as $51,X with X = 1).","t":"byte","b":[1],"x":[6866]},{"a":83,"l":"fighter_facing","c":"0: facing right; non-zero: facing left, built mirrored ($3922) and with the stick's left and right swapped ($2857). Flipped when a turn ends ($2AAC) and by the computer ($23DF). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $54 fighter 1's.","t":"byte","b":[0],"x":[4888,6710,9179,9183,9244,9246,9251,9335,9395,9397,9825,9827,10327,10920,10924,11152,11154,11212,11351,11451,11453,11520,11524,11529,11575,14401,14418,14626,15172]},{"a":84,"l":"fighter_facing_f1","c":"Fighter 1's fighter_facing (the byte after $53, read as $53,X with X = 1).","t":"byte","b":[1],"x":[4950,6714]},{"a":85,"l":"anim_dx","c":"Fighter 0's X step per tick, from byte 3 of the step ($382D); $56 is fighter 1's.","t":"byte","b":[0,0],"x":[14381,14410,14464,14473]},{"a":87,"l":"anim_dy","c":"Fighter 0's Y step per tick, from byte 4 of the step ($3832); $58 is fighter 1's.","t":"byte","b":[0,0],"x":[14386,14394,14475]},{"a":89,"l":"anim_ended","c":"Set to 1 when the fighter's animation has run out ($37E8, $380A), cleared at $2A95. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $5A fighter 1's.","t":"byte","b":[0],"x":[7743,7775,10895,10901,14312,14346,14471]},{"a":90,"l":"anim_ended_f1","c":"Fighter 1's anim_ended (the byte after $59, read as $59,X with X = 1).","t":"byte","b":[0],"x":[5017,5080,5162]},{"a":91,"l":"anim_length","c":"Length in bytes of fighter 0's step list ($38A0); $5C is fighter 1's.","t":"byte","b":[4,84],"x":[14332,14496,14507]},{"a":93,"l":"shape_direct","c":"0: the sprite builder copies shape cells; $40 (the bull round, $133A/$13CD): frame bytes are used as sprite pointers directly.","t":"byte","b":[0],"x":[4858,4922,5069,6385,6782,14612,14682,14734,14786,14838,14890,14942,14994,15046,15098,15938]},{"a":94,"l":"knockdown_result","c":"Copy of a fighter's hit state ($5F,X) when its knock-down animation ends ($2A9B); a non-zero value ends the exchange ($1AB5) and the bull round reads it.","t":"byte","b":[0],"x":[4942,5054,5122,6728,6837,10907]},{"a":95,"l":"hit_state","c":"Non-zero while the fighter reacts to a blow: the reaction move, which control reading copies into the request ($2834); set by blow_reaction ($2CD9-$2CEF). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $60 fighter 1's.","t":"byte","b":[0],"x":[5045,5118,6769,6841,7039,7047,7287,7295,7480,7488,8913,10292,10903,11481,11492,11503]},{"a":96,"l":"hit_state_f1","c":"Fighter 1's hit_state (the byte after $5F, read as $5F,X with X = 1).","t":"byte","b":[0],"x":[6845,7041,7289,7482]},{"a":97,"l":"fighter_move","c":"The fighter's current move, 1-$1F (see the stick table at $286C and anim_list_table at $7720); $17 at the start of an exchange ($1A79). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $62 fighter 1's.","t":"byte","b":[1,2],"x":[4900,6777,6849,8918,8950,8959,8974,8985,9016,9027,9120,9137,9157,9177,9223,9288,9405,9737,9847,9884,10273,10703,10733,10737,10751,10768,10773,10790,10802,10805,10816,10834,10847,10862,10892,10914,10936,10952,10955,10969,10982,11000,11025,11049,11063,11078,11120,11159,11176,11236,11375,11434,11458,11510,11550,11596]},{"a":99,"l":"move_request","c":"Fighter 0's requested move, from the stick, the keyboard, the computer or a forced reaction ($2834-$2930); $64 is fighter 1's.","t":"byte","b":[1,2],"x":[4863,8930,8980,9051,9115,9144,9175,9216,9239,9307,9321,9328,9431,9445,9492,9499,9526,9537,9572,9594,9606,9721,9728,9748,9759,9776,9785,9818,9840,9855,9931,10296,10345,10676,10701,10743,10771,10776,10800,10822,10832,10884,10994,11010,11056,11075]},{"a":101,"l":"is_computer","c":"Non-zero when the computer plays the fighter ($283B): both in the attract mode ($1CF4), fighter 1 in a one-player game ($1BAD), neither with two players ($1B0D). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $66 fighter 1's.","t":"byte","b":[0],"x":[6925,7085,7412,10299]},{"a":102,"l":"is_computer_f1","c":"Fighter 1's is_computer (the byte after $65, read as $65,X with X = 1).","t":"byte","b":[1],"x":[6927,7097,7414]},{"a":103,"l":"fighter_flag_67","c":"Written as $67,X at $1A73, $2A67, $2AB4 and $2ADF; no instruction reads it. Purpose unknown.","t":"byte","b":[0,0],"x":[6771,10855,10932,10975]},{"a":105,"l":"opponent","c":"The other fighter's index (0 or 1) while fighter_update works on fighter X ($1AA1, $1AA8).","t":"byte","b":[1],"x":[6817,6824,8911,8940,9014,9118,9135,9242,9393,9704,9880,10287,11013,11047,11150,11193,11210,11332,11349,11432,11477,11488,11499,11522]},{"a":106,"l":"fighter_x","c":"Fighter's horizontal position in half-screen units (sprite X = 2 x this); clamped by $12E9/$12EB. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $6B fighter 1's.","t":"byte","b":[56],"x":[4880,4985,5023,5028,6692,9255,9259,9264,9267,9339,9343,9348,9351,11216,11220,11225,11228,11355,11359,11364,11367,11533,11537,11542,11545,11579,11583,11588,11591,14407,14442,14444,14461]},{"a":107,"l":"fighter_x_f1","c":"Fighter 1's fighter_x (the byte after $6A, read as $6A,X with X = 1).","t":"byte","b":[82],"x":[4930,4982,5021,5084,5100,5108,6696]},{"a":108,"l":"fighter_y","c":"Fighter's height in half units, $50 on the ground ($383C, $1AD6). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $6D fighter 1's.","t":"byte","b":[80],"x":[4884,6700,6870,7721,10707,14392,14396]},{"a":109,"l":"fighter_y_f1","c":"Fighter 1's fighter_y (the byte after $6C, read as $6C,X with X = 1).","t":"byte","b":[80],"x":[4926,6702,6872]},{"a":110,"l":"blow_value","c":"Value of the fighter's last scoring blow: 2 whole point, 1 half ($2C20, $2C33). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $6F fighter 1's.","t":"byte","b":[1],"x":[7522,8309,8558,11296,11315]},{"a":111,"l":"blow_value_f1","c":"Fighter 1's blow_value (the byte after $6E, read as $6E,X with X = 1).","t":"byte","b":[0],"x":[8314]},{"a":112,"l":"reach_ptr","c":"Pointer to the reach profile chosen for the blow being tested, low byte ($2B9E); $71 is the high byte.","t":"byte","b":[216],"x":[11166,11183,11199,11338]},{"a":113,"l":"reach_ptr_hi","c":"High byte of reach_ptr.","t":"byte","b":[115],"x":[11171,11188]},{"a":114,"l":"reach_aim","c":"The reach profile's byte for the defender's frame: the distance at which the blow lands squarely ($2BB0).","t":"byte","b":[127],"x":[11208,11245,11255,11264,11271,11280,11289,11347,11384,11393,11402,11409,11418,11427]},{"a":115,"l":"fighter_distance","c":"Signed distance from the fighter to its opponent along its own facing, used by the hit test ($2BE2) and the computer.","t":"byte","b":[26],"x":[5030,5039,6002,6014,9270,9354,9448,9540,11234,11243,11259,11269,11284,11373,11382,11397,11407,11422,11548,11559,11594,11605]},{"a":116,"l":"move_hold","c":"Non-zero while the fighter holds the last pose of a move ($29CA, $2AD4, $2B5F). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $75 fighter 1's.","t":"byte","b":[0,0],"x":[4892,6773,9006,9153,9187,9768,10698,10711,10796,10828,10841,10859,10877,10882,10930,10964,11020,11099,11103,11135]},{"a":118,"l":"sprite_buffer","c":"Which of the fighter's two build buffers is shown (0/1 for fighter 0, 2/3 for fighter 1); flipped by every build ($391B, $1A56). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $77 fighter 1's.","t":"byte","b":[0],"x":[6742,14619,14623]},{"a":119,"l":"sprite_buffer_f1","c":"Fighter 1's sprite_buffer (the byte after $76, read as $76,X with X = 1).","t":"byte","b":[2],"x":[6746]},{"a":120,"l":"build_dst","c":"Sprite builder destination pointer, low byte ($392C); $79 is the high byte.","t":"byte","b":[64],"x":[14636,14702,14707,14712,14754,14759,14764,14806,14811,14816,14858,14863,14868,14910,14915,14920,14962,14967,14972,15014,15019,15024,15066,15071,15076,15118]},{"a":121,"l":"build_dst_hi","c":"High byte of build_dst.","t":"byte","b":[194],"x":[14641,14716,14768,14820,14872,14924,14976,15028,15080]},{"a":122,"l":"build_ptr_0","c":"Sprite pointer for grid slot 0 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[1],"x":[14660,14674,15123,15362,15377]},{"a":123,"l":"build_ptr_1","c":"Sprite pointer for grid slot 1 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[2],"x":[14726,15127,15445]},{"a":124,"l":"build_ptr_2","c":"Sprite pointer for grid slot 2 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[0],"x":[14778,15131,15513]},{"a":125,"l":"build_ptr_3","c":"Sprite pointer for grid slot 3 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[4],"x":[14830,15135,15581]},{"a":126,"l":"build_ptr_4","c":"Sprite pointer for grid slot 4 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[5],"x":[14882,15139,15649]},{"a":127,"l":"build_ptr_5","c":"Sprite pointer for grid slot 5 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[0],"x":[14934,15143,15717]},{"a":128,"l":"build_ptr_6","c":"Sprite pointer for grid slot 6 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[7],"x":[14986,15147,15785]},{"a":129,"l":"build_ptr_7","c":"Sprite pointer for grid slot 7 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[8],"x":[15038,15151,15853]},{"a":130,"l":"build_ptr_8","c":"Sprite pointer for grid slot 8 of the pose being built ($3944), copied to the fighter's row pointers at $02-$13 when the build is done ($3B13).","t":"byte","b":[0],"x":[15090,15155,15921]},{"a":131,"l":"build_save_x","c":"X saved during the mirrored build ($3C08).","t":"byte","b":[1,56,233],"x":[15368,15436,15504,15572,15640,15708,15776,15844,15912,15928]},{"a":134,"l":"reaction_delay","c":"Countdown before the fighter's next move is accepted ($29C2-$29C6). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $87 fighter 1's.","t":"byte","b":[8],"x":[6752,10690,10694]},{"a":135,"l":"reaction_delay_f1","c":"Fighter 1's reaction_delay (the byte after $86, read as $86,X with X = 1).","t":"byte","b":[8],"x":[6754]},{"a":136,"l":"anim_new_step","c":"1 on the tick an animation step starts ($37D2, $37DA); the hit test only fires then ($2B77). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $89 fighter 1's.","t":"byte","b":[0,0],"x":[4978,10715,11127,14290,14298,14318,14342]},{"a":138,"l":"halves","c":"Half yin-yangs the fighter has scored this bout; 4 win it ($1D5F). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $8B fighter 1's.","t":"byte","b":[0],"x":[7145,7331,7425,7519,7524,7641]},{"a":139,"l":"halves_f1","c":"Fighter 1's halves (the byte after $8A, read as $8A,X with X = 1).","t":"byte","b":[0],"x":[7147,7333,7427]},{"a":140,"l":"scoring_move","c":"The attacker's move when a blow lands ($2CAC), the index into move_points ($206C).","t":"byte","b":[24],"x":[8300,8553,11436]},{"a":141,"l":"ai_hold_mask","c":"Per-level mask for how long the computer holds a move ($2593, from $27A9).","t":"byte","b":[31],"x":[9199,9624]},{"a":142,"l":"ai_hold_timer","c":"Computer's countdown while holding a move. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $8F fighter 1's.","t":"byte","b":[128],"x":[9192,9203,9208,9220,9642]},{"a":143,"l":"ai_hold_timer_f1","c":"Fighter 1's ai_hold_timer (the byte after $8E, read as $8E,X with X = 1).","t":"byte","b":[128],"x":[9644]},{"a":144,"l":"ai_chosen_move","c":"The move the computer has decided on. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $91 fighter 1's.","t":"byte","b":[1],"x":[8982,9049,9113,9146,9173,9214,9237,9305,9319,9326,9429,9443,9490,9497,9524,9535,9570,9596,9604,9648,9723,9730,9750,9761,9774,9787,9816,9838,9857,9929,10971]},{"a":145,"l":"ai_chosen_move_f1","c":"Fighter 1's ai_chosen_move (the byte after $90, read as $90,X with X = 1).","t":"byte","b":[2,0],"x":[9650]},{"a":147,"l":"ai_scratch","c":"Computer opponent scratch, written at $24ED and $2549 and read just after.","t":"byte","b":[50],"x":[9453,9461,9545,9553]},{"a":148,"l":"ai_attack_spread","c":"Per-level mask for how widely the computer varies its attack ($27B5).","t":"byte","b":[7],"x":[9458,9550,9633]},{"a":149,"l":"ai_close_timer","c":"Computer's wait at close range. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $96 fighter 1's.","t":"byte","b":[128],"x":[9371,9380,9385,9391,9659]},{"a":150,"l":"ai_close_timer_f1","c":"Fighter 1's ai_close_timer (the byte after $95, read as $95,X with X = 1).","t":"byte","b":[128],"x":[9661]},{"a":151,"l":"ai_close_mask","c":"Per-level mask for the close-range wait ($27C1).","t":"byte","b":[127],"x":[9378,9655]},{"a":152,"l":"random_state","c":"State of random_next ($2589): shifted left, XOR $1D on carry, cycling through all 255 non-zero values.","t":"byte","b":[30],"x":[7122,7384,9609,9616]},{"a":153,"l":"random_frame","c":"A second random byte, stepped every frame by $1AFF; seeded $53 at $190C.","t":"byte","b":[145],"x":[6414,6911,6918,7120,7382]},{"a":154,"l":"ai_turning","c":"Non-zero while the computer is turning round. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $9B fighter 1's.","t":"byte","b":[0],"x":[9167,9189,9332,9665]},{"a":155,"l":"ai_turning_f1","c":"Fighter 1's ai_turning (the byte after $9A, read as $9A,X with X = 1).","t":"byte","b":[0],"x":[9667]},{"a":156,"l":"ai_defence_mask","c":"Per-level mask for how the computer mixes block, plan and counter-attack ($27F0).","t":"byte","b":[163],"x":[9088,9676]},{"a":157,"l":"ai_plan","c":"The computer's scripted plan, 0 (none) to 9, dispatched through $2774. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $9E fighter 1's.","t":"byte","b":[0],"x":[8933,9129,9531,9669,9734,9754,9765,9780,9800,9822,9844,9862,9925,9936]},{"a":158,"l":"ai_plan_f1","c":"Fighter 1's ai_plan (the byte after $9D, read as $9D,X with X = 1).","t":"byte","b":[0],"x":[9671]},{"a":159,"l":"ai_plan_vector","c":"Plan handler address, low byte, for JMP ($9F) at $2695; $A0 is the high byte.","t":"byte","b":[77],"x":[9870,9877]},{"a":160,"l":"ai_plan_vector_hi","c":"High byte of ai_plan_vector.","t":"byte","b":[38],"x":[9875]},{"a":161,"l":"ai_forced_wait","c":"Computer's wait counter, loaded only at $2593, so it wraps to 255 after the first wait. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $A2 fighter 1's.","t":"byte","b":[31],"x":[8924,9626]},{"a":162,"l":"ai_forced_wait_f1","c":"Fighter 1's ai_forced_wait (the byte after $A1, read as $A1,X with X = 1).","t":"byte","b":[31],"x":[9628]},{"a":163,"l":"ai_back_mask","c":"Per-level mask for the computer's choice of backward moves ($27E4).","t":"byte","b":[143],"x":[9579,9638]},{"a":164,"l":"ai_walk_timer","c":"Computer's walking countdown. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $A5 fighter 1's.","t":"byte","b":[1],"x":[9284,9301,9315,9690]},{"a":165,"l":"ai_walk_timer_f1","c":"Fighter 1's ai_walk_timer (the byte after $A4, read as $A4,X with X = 1).","t":"byte","b":[13],"x":[9692]},{"a":166,"l":"ai_pause_mask","c":"Per-level pause mask ($27D8). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $A7 fighter 1's.","t":"byte","b":[7,63],"x":[9297,9686]},{"a":168,"l":"ai_walk_mask","c":"Per-level walk-time mask ($27CD). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $A9 fighter 1's.","t":"byte","b":[63,31],"x":[9313,9681]},{"a":170,"l":"ai_react_timer","c":"Computer's reaction countdown. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $AB fighter 1's.","t":"byte","b":[128,128],"x":[9059,9072,9077,9083,9696]},{"a":172,"l":"ai_react_mask","c":"Per-level reaction-delay mask ($27FC).","t":"byte","b":[31],"x":[9068,9701]},{"a":173,"l":"panel_bg","c":"$D021 for the text panel at the top, written by the line-255 interrupt ($3108); set at $19AA.","t":"byte","b":[3],"x":[6570,12552]},{"a":174,"l":"players_minus_one","c":"0 for a one-player game, 1 for two players; F3 flips it in the attract mode ($1EAC). Checked live: 1 in a two-player game.","t":"byte","b":[0],"x":[7852,7854,7862,7907,7937,8202,8471,8584,11298,11317]},{"a":175,"l":"stage","c":"Progress: AND 3 picks the backdrop (0 Fuji, 1 lake, 2 dojo, 3 Buddha); counts stages cleared ($1C2F), and is $20 plus a count past tenth dan ($1C63).","t":"byte","b":[0],"x":[6075,6217,6923,6986,6988,7002,7083,7196,7207,7215,7259,7261,7267,7380,7466,7468,7999,8100]},{"a":176,"l":"game_running","c":"0 in the attract mode, 1 in a game; the menu keys work only at 0 ($1E90).","t":"byte","b":[1],"x":[6947,7099,7824,7841,7848,7873,7892,7920]},{"a":177,"l":"clock_frames","c":"Calls left in the current clock unit, reloaded with 50 ($212F).","t":"byte","b":[31],"x":[6965,7165,7445,8495,8501,8678]},{"a":178,"l":"clock_seconds","c":"Units left on the bout clock, from 30 ($1B37, $2160).","t":"byte","b":[30],"x":[6969,7169,7449,8544]},{"a":179,"l":"fighter_level","c":"The fighter's level as a computer opponent, 0-11 ($2593); fighter 1's ($B4) is also the rank in a one-player game, shown through $22C3. Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $B4 fighter 1's.","t":"byte","b":[9],"x":[7393,9505,9515,9619,9706,9912]},{"a":180,"l":"fighter_level_f1","c":"Fighter 1's fighter_level (the byte after $B3, read as $B3,X with X = 1).","t":"byte","b":[0],"x":[7087,7213,7217,7277,7402]},{"a":181,"l":"wins_to_rank","c":"Bouts still to win before the rank goes up, from 2 ($1C14).","t":"byte","b":[2],"x":[7103,7188,7194]},{"a":182,"l":"backdrop_shown","c":"Index of the backdrop now unpacked in the bitmap, so it is unpacked only on a change ($1F43; $FF-style reset at $1912).","t":"byte","b":[0,10,1,0,8],"x":[6418,8003,8007]},{"a":187,"l":"last_key_row","c":"Keyboard row read last time, to act on a function key only once per press ($1E76).","t":"byte","b":[255],"x":[7798,7802]},{"a":188,"l":"time_up","c":"Set when the bout clock reaches zero ($2166).","t":"byte","b":[0],"x":[6858,6973,7074,7173,7327,7453,7512,8550,8671,8694]},{"a":189,"l":"bout_points","c":"Total of the fighter's blow values this bout, the tie-break when time runs out ($2169, $1CAE). Indexed by fighter (X = 0 or 1): this byte is fighter 0's, $BE fighter 1's.","t":"byte","b":[0],"x":[7149,7342,7429,8566,8568]},{"a":190,"l":"bout_points_f1","c":"Fighter 1's bout_points (the byte after $BD, read as $BD,X with X = 1).","t":"byte","b":[0],"x":[7151,7344,7431]},{"a":191,"l":"text_ptr","c":"Pointer to screen or table text for the score and high-score routines, low byte; $C0 is the high byte.","t":"byte","b":[160],"x":[5247,5266,5577,5601,5606,5624,5630,5635,5648,5670,5692,5709,5714,5726,5731,5763,5768,5978,6061,7126,7221,8208,8229,8267,8291,8715,8736,8745,8750,8762,8767,8779,8784,8792,8797,8802,8807,8812,8817,8825]},{"a":192,"l":"text_ptr_hi","c":"High byte of text_ptr.","t":"byte","b":[204,0],"x":[5250,5263,5581,5610,5639,5652,5674,5696,5718,5735,5772,7130,7225,8212,8233]},{"a":194,"l":"bull_state","c":"Bonus round: 0 while the bull charges, 1 when it has hit the player, $80 when it is felled ($1368, $138F, $13BC).","t":"byte","b":[160,64],"x":[4944,4968,5007,5052,5071]},{"a":196,"l":"key_scratch","c":"Scratch for the keyboard scans ($153C, the keyboard controls at $28B2-$29B3).","t":"byte","b":[245],"x":[5436,5439,10465,10474,10483,10500,10509,10518,10587,10596,10613,10622,10631,10640,10649]},{"a":197,"l":"key_fire","c":"The fire bit being built while reading the keyboard controls ($28A1-$2950).","t":"byte","b":[64],"x":[10401,10413,10434,10439,10559,10576]},{"a":198,"l":"keyboard_mode","c":"0: joystick control; non-zero: keyboard (F7 flips it, $1EC5).","t":"byte","b":[0],"x":[6387,7877,7881,8844,10303]},{"a":199,"l":"last_key","c":"Last key read by the name-entry scanner, $40 for none ($155A, $1494).","t":"byte","b":[0],"x":[5270,5477,5484]},{"a":200,"l":"hiscore_index","c":"Loop and place index in the high-score table routines ($15D5-$16F3).","t":"byte","b":[11],"x":[5589,5591,5612,5700,5720,5724,5737,5875,5895]},{"a":201,"l":"hiscore_rank","c":"The rank to store with a new high score ($1BDE, $1C3E, $16FB).","t":"byte","b":[0],"x":[5883,5903,7134,7230]},{"a":202,"l":"rank_text_col","c":"Column offset used by rank_text_draw ($21FB) and the high-score table ($15CF).","t":"byte","b":[0],"x":[5585,7081,8703,8729]},{"a":203,"l":"hiscore_place","c":"Place of a new high score, 0-4, or 5 for none ($166B).","t":"byte","b":[64],"x":[5241,5272,5739]},{"a":204,"l":"colour_ptr","c":"Colour RAM pointer for the name-entry screen, low byte ($14B9, $17B5); $CD is the high byte.","t":"byte","b":[1],"x":[5305,6069]},{"a":205,"l":"colour_ptr_hi","c":"High byte of colour_ptr.","t":"byte","b":[2],"x":[5315]},{"a":206,"l":"scratch_ce","c":"Scratch byte for the computer opponent and the panel code.","t":"byte","b":[24],"x":[9882,9903,9906]},{"a":207,"l":"speech_off","c":"Non-zero switches the speech samples off (speech_start tests it, $3186). DEL flips it in the attract mode ($1ED8); the loader's menu calls this sound effects on and off.","t":"byte","b":[0,0,0,4,0,0,39,0],"x":[6379,7896,7900,12678]},{"a":215,"t":"byte","b":[147,0,132,132,132,132,132,132]},{"a":223,"t":"byte","b":[132,133,133,133,133,133,133,134]},{"a":231,"t":"byte","b":[134,134,134,134,134,134,135,135]},{"a":239,"t":"byte","b":[135,135,135,135,0,216,129,235]},{"a":247,"t":"byte","b":[0,0]},{"a":249,"l":"music_order_ptr","c":"Order-list pointer of the voice the music driver is playing, low byte ($0A66); $FA is the high byte.","t":"byte","b":[7],"x":[2662,2682,2764,3152,3172,3178,3192]},{"a":250,"l":"zp_music_order_hi","c":"High byte of music_order_ptr.","t":"byte","b":[16],"x":[2667]},{"a":251,"l":"music_pattern_ptr","c":"Pattern pointer of the voice being played, low byte ($0A70, $0ADA); $FC is the high byte.","t":"byte","b":[3],"x":[2672,2778,2847,2937]},{"a":252,"l":"zp_music_pattern_hi","c":"High byte of music_pattern_ptr.","t":"byte","b":[6],"x":[2677,2789]},{"a":253,"l":"music_vector","c":"Music driver vector, low byte: the order-command handler for JMP ($FD) at $0A8B, then the instrument record pointer ($0D41); $FE is the high byte.","t":"byte","b":[184],"x":[2689,2699,3393,3407,3417,3426,3435,3444,3450,3456,3462,3468,3477,3483,3502,3513,3519,3528,3537,3543,3549,3718,3725,3748]},{"a":254,"l":"music_vector_hi","c":"High byte of music_vector.","t":"byte","b":[10],"x":[2694,3398]},{"a":255,"l":"song","c":"The song the game asks for: 0 silence, 1 attract mode ($1CF8), 2 one-player game ($1BE5), 3 two players ($1B31), 4 name entry ($1764).","t":"byte","b":[2],"x":[2469,5988,6381,6961,7141,7416]},{"a":256,"t":"gap","n":256},{"a":512,"l":"speech_period_lo","c":"Speech timing, low bytes: 256 entries, indexed by a speech data byte, giving the low byte of the CIA 1 timer B period until the next volume flip (speech_irq $311A reads it at $312B). Copied here from $C700 by machine_setup at $18F8; the 512 bytes at $0200-$03FF are the disk file m.prerun byte for byte, which the loader leaves at $C700. The 16-bit periods run from $0001 up to $EA60, growing faster towards the top of the table.","t":"byte","b":[1,2,3,4,5,6,7,8],"x":[6397,12593]},{"a":520,"t":"byte","b":[9,10,11,12,13,14,15,16]},{"a":528,"t":"byte","b":[17,18,19,20,21,22,23,24]},{"a":536,"t":"byte","b":[25,26,27,28,29,30,31,32]},{"a":544,"t":"byte","b":[33,34,35,36,37,38,39,40]},{"a":552,"t":"byte","b":[41,42,43,44,45,46,47,48]},{"a":560,"t":"byte","b":[49,51,52,53,54,55,56,57]},{"a":568,"t":"byte","b":[58,59,60,61,62,63,64,65]},{"a":576,"t":"byte","b":[66,67,68,69,70,71,72,73]},{"a":584,"t":"byte","b":[74,75,76,77,78,79,80,81]},{"a":592,"t":"byte","b":[82,83,84,85,86,87,88,89]},{"a":600,"t":"byte","b":[90,91,92,93,94,95,96,97]},{"a":608,"t":"byte","b":[98,99,100,101,102,103,104,105]},{"a":616,"t":"byte","b":[106,107,108,109,110,111,112,113]},{"a":624,"t":"byte","b":[114,115,116,117,118,119,120,121]},{"a":632,"t":"byte","b":[122,123,124,125,126,127,128,129]},{"a":640,"t":"byte","b":[130,131,132,133,134,135,136,137]},{"a":648,"t":"byte","b":[138,139,140,141,142,143,144,145]},{"a":656,"t":"byte","b":[146,147,148,149,150,151,152,153]},{"a":664,"t":"byte","b":[154,156,157,159,160,161,163,164]},{"a":672,"t":"byte","b":[165,166,167,169,170,171,172,173]},{"a":680,"t":"byte","b":[174,175,177,178,179,180,181,182]},{"a":688,"t":"byte","b":[183,184,185,187,189,190,192,194]},{"a":696,"t":"byte","b":[196,198,200,202,205,208,211,214]},{"a":704,"t":"byte","b":[217,219,222,225,229,233,238,243]},{"a":712,"t":"byte","b":[247,249,252,255,2,6,10,14]},{"a":720,"t":"byte","b":[18,23,27,31,34,38,41,48]},{"a":728,"t":"byte","b":[51,54,59,64,69,74,81,85]},{"a":736,"t":"byte","b":[89,93,97,101,105,109,114,119]},{"a":744,"t":"byte","b":[124,134,144,154,171,199,244,33]},{"a":752,"t":"byte","b":[73,113,168,200,248,32,82,132]},{"a":760,"t":"byte","b":[232,73,208,160,64,32,64,96]},{"a":768,"l":"speech_period_hi","c":"Speech timing, high bytes: the high byte of each of the 256 timer periods whose low bytes are at $0200 (read at $3131); the second half of m.prerun, copied from $C800 by $18F8.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[6403,12587]},{"a":776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":856,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":928,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":936,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":944,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":968,"t":"byte","b":[0,0,0,0,1,1,1,1]},{"a":976,"t":"byte","b":[1,1,1,1,1,1,1,1]},{"a":984,"t":"byte","b":[1,1,1,1,1,1,1,1]},{"a":992,"t":"byte","b":[1,1,1,1,1,1,1,1]},{"a":1000,"t":"byte","b":[1,1,1,1,1,1,1,2]},{"a":1008,"t":"byte","b":[2,2,2,2,2,3,3,3]},{"a":1016,"t":"byte","b":[3,4,7,15,31,78,156,234]},{"a":1024,"l":"song1_pattern_00","c":"Song 1 pattern 0 ($0400-$046B, 108 bytes), played by voice 1: 53 note events (17 rests), instruments 0, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[128,0,1,83,0,80,0,90]},{"a":1032,"t":"byte","b":[0,80,0,88,0,90,0,88]},{"a":1040,"t":"byte","b":[0,86,0,83,0,80,0,86]},{"a":1048,"t":"byte","b":[0,80,0,83,0,80,0,74]},{"a":1056,"t":"byte","b":[0,64,0,83,0,80,0,90]},{"a":1064,"t":"byte","b":[0,80,0,88,0,90,0,88]},{"a":1072,"t":"byte","b":[0,86,0,83,0,80,0,86]},{"a":1080,"t":"byte","b":[0,80,0,83,0,80,0,74]},{"a":1088,"t":"byte","b":[0,64,0,83,0,80,0,88]},{"a":1096,"t":"byte","b":[0,86,0,88,0,80,0,88]},{"a":1104,"t":"byte","b":[0,86,0,88,0,80,0,97]},{"a":1112,"t":"byte","b":[0,96,0,90,3,88,1,90]},{"a":1120,"t":"byte","b":[0,88,0,86,1,88,0,86]},{"a":1128,"t":"byte","b":[0,83,4,255]},{"a":1132,"l":"song1_pattern_01","c":"Song 1 pattern 1 ($046C-$0485, 26 bytes), played by voice 1: 12 note events (4 rests), instruments 1, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[129,86,0,80,0,88,4,86]},{"a":1140,"t":"byte","b":[0,80,0,88,4,86,0,80]},{"a":1148,"t":"byte","b":[0,83,4,86,0,80,0,83]},{"a":1156,"t":"byte","b":[4,255]},{"a":1158,"l":"song1_pattern_02","c":"Song 1 pattern 2 ($0486-$04BD, 56 bytes), played by voice 1: 27 note events (3 rests), instruments 2, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[130,80,1,88,11,90,10,88]},{"a":1166,"t":"byte","b":[10,86,11,88,10,86,10,83]},{"a":1174,"t":"byte","b":[69,83,11,88,77,88,13,90]},{"a":1182,"t":"byte","b":[13,88,13,86,77,86,13,88]},{"a":1190,"t":"byte","b":[13,86,13,83,67,83,11,83]},{"a":1198,"t":"byte","b":[67,83,11,83,67,83,11,83]},{"a":1206,"t":"byte","b":[67,83,11,80,67,80,11,255]},{"a":1214,"l":"song1_pattern_03","c":"Song 1 pattern 3 ($04BE-$04C1, 4 bytes), played by voice 2: 1 note events (1 rests), instruments 3, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[131,80,1,255]},{"a":1218,"l":"song1_pattern_04","c":"Song 1 pattern 4 ($04C2-$04F0, 47 bytes), played by voice 2: 23 note events (11 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note). Its end marker at $04F0 is also stored by $1CFC (the value $FF it already holds on disk).","t":"byte","b":[80,1,51,1,48,1,51,1]},{"a":1226,"t":"byte","b":[48,1,51,1,51,1,48,1]},{"a":1234,"t":"byte","b":[48,1,51,1,48,1,51,1]},{"a":1242,"t":"byte","b":[48,1,51,1,51,1,48,1]},{"a":1250,"t":"byte","b":[49,1,48,3,49,1,48,1]},{"a":1258,"t":"byte","b":[49,1,51,1,48,1]},{"a":1264,"l":"a_04F0","c":"End marker ($FF) of song 1 pattern 4. $1CFC stores $FF here when song 1 is started, a value the byte already holds in m.prog on disk; why is not known.","t":"byte","b":[255],"x":[7420]},{"a":1265,"l":"song1_pattern_05","c":"Song 1 pattern 5 ($04F1-$0505, 21 bytes), played by voice 2: 9 note events (3 rests), instruments 4/5, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[40,1,32,1,42,1,32,1]},{"a":1273,"t":"byte","b":[51,1,132,90,0,97,0,99]},{"a":1281,"t":"byte","b":[0,133,96,2,255]},{"a":1286,"l":"song1_pattern_06","c":"Song 1 pattern 6 ($0506-$0516, 17 bytes), played by voice 2: 8 note events (4 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[96,1,40,1,32,1,40,1]},{"a":1294,"t":"byte","b":[32,1,42,1,51,1,48,1]},{"a":1302,"t":"byte","b":[255]},{"a":1303,"l":"song1_pattern_07","c":"Song 1 pattern 7 ($0517-$054B, 53 bytes), played by voice 2: 24 note events (2 rests), instruments 6/7, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[134,72,0,70,0,72,0,70]},{"a":1311,"t":"byte","b":[0,67,1,70,1,135,88,64]},{"a":1319,"t":"byte","b":[86,64,83,64,86,64,88,0]},{"a":1327,"t":"byte","b":[80,2,134,70,0,67,0,70]},{"a":1335,"t":"byte","b":[0,67,0,65,1,67,1,135]},{"a":1343,"t":"byte","b":[83,64,81,64,74,64,81,64]},{"a":1351,"t":"byte","b":[83,0,80,2,255]},{"a":1356,"l":"song1_pattern_08","c":"Song 1 pattern 8 ($054C-$0563, 24 bytes), played by voice 2: 11 note events (3 rests), instruments 8, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[136,56,69,56,11,51,69,51]},{"a":1364,"t":"byte","b":[11,40,70,40,10,35,72,35]},{"a":1372,"t":"byte","b":[11,32,3,32,11,32,1,255]},{"a":1380,"l":"song1_pattern_09","c":"Song 1 pattern 9 ($0564-$0566, 3 bytes), played by voice 3: 1 note events (1 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[32,1,255]},{"a":1383,"l":"song1_pattern_10","c":"Song 1 pattern 10 ($0567-$05A5, 63 bytes), played by voice 3: 30 note events (14 rests), instruments 9/10, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[137,32,1,51,1,48,1,51]},{"a":1391,"t":"byte","b":[1,48,1,51,1,51,1,48]},{"a":1399,"t":"byte","b":[1,48,1,51,1,48,1,51]},{"a":1407,"t":"byte","b":[1,48,1,51,1,51,1,48]},{"a":1415,"t":"byte","b":[1,49,1,48,3,49,1,48]},{"a":1423,"t":"byte","b":[1,49,1,51,1,48,1,24]},{"a":1431,"t":"byte","b":[1,16,1,26,1,16,1,35]},{"a":1439,"t":"byte","b":[1,32,1,138,83,3,255]},{"a":1446,"l":"song1_pattern_11","c":"Song 1 pattern 11 ($05A6-$05D8, 51 bytes), played by voice 3: 23 note events (7 rests), instruments 11/10, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[139,80,1,51,3,51,3,51]},{"a":1454,"t":"byte","b":[1,51,1,48,1,48,1,51]},{"a":1462,"t":"byte","b":[3,51,3,51,1,51,1,48]},{"a":1470,"t":"byte","b":[1,138,83,3,139,80,1,51]},{"a":1478,"t":"byte","b":[3,51,1,51,1,48,1,48]},{"a":1486,"t":"byte","b":[1,51,3,51,3,51,1,138]},{"a":1494,"t":"byte","b":[83,3,255]},{"a":1497,"l":"song1_pattern_12","c":"Song 1 pattern 12 ($05D9-$05EA, 18 bytes), played by voice 3: 8 note events (0 rests), instruments 12, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[140,40,69,40,68,38,65,40]},{"a":1505,"t":"byte","b":[7,35,69,35,68,38,65,35]},{"a":1513,"t":"byte","b":[7,255]},{"a":1515,"l":"song1_pattern_13","c":"Song 1 pattern 13 ($05EB-$0602, 24 bytes), played by voice 3: 11 note events (3 rests), instruments 13, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[141,67,69,67,11,58,69,58]},{"a":1523,"t":"byte","b":[11,51,70,51,10,42,72,42]},{"a":1531,"t":"byte","b":[11,32,3,32,11,32,1,255]},{"a":1539,"l":"song2_pattern_00","c":"Song 2 pattern 0 ($0603-$0614, 18 bytes), played by voice 1: 8 note events (0 rests), instruments 22, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[150,85,1,76,1,83,1,90]},{"a":1547,"t":"byte","b":[1,76,1,83,1,88,1,76]},{"a":1555,"t":"byte","b":[1,255]},{"a":1557,"l":"song2_pattern_01","c":"Song 2 pattern 1 ($0615-$0625, 17 bytes), played by voice 1: 8 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[85,1,76,1,83,1,92,1]},{"a":1565,"t":"byte","b":[76,1,83,1,90,1,88,1]},{"a":1573,"t":"byte","b":[255]},{"a":1574,"l":"song2_pattern_02","c":"Song 2 pattern 2 ($0626-$0649, 36 bytes), played by voice 3: 17 note events (1 rests), instruments 24, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[152,76,8,74,67,86,3,85]},{"a":1582,"t":"byte","b":[71,85,6,85,1,74,1,76]},{"a":1590,"t":"byte","b":[6,76,65,74,65,72,5,72]},{"a":1598,"t":"byte","b":[79,74,74,74,67,72,1,69]},{"a":1606,"t":"byte","b":[7,64,7,255]},{"a":1610,"l":"song2_pattern_03","c":"Song 2 pattern 3 ($064A-$0694, 75 bytes), played by voice 3: 37 note events (1 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[85,8,92,3,90,3,85,71]},{"a":1618,"t":"byte","b":[85,6,88,65,90,1,90,79]},{"a":1626,"t":"byte","b":[92,74,92,65,92,5,90,1]},{"a":1634,"t":"byte","b":[88,1,85,5,83,3,85,3]},{"a":1642,"t":"byte","b":[76,71,76,7,76,8,92,3]},{"a":1650,"t":"byte","b":[90,3,85,71,85,6,88,65]},{"a":1658,"t":"byte","b":[90,1,90,79,92,74,92,65]},{"a":1666,"t":"byte","b":[92,5,90,1,88,1,85,5]},{"a":1674,"t":"byte","b":[83,3,85,1,80,1,85,71]},{"a":1682,"t":"byte","b":[85,7,255]},{"a":1685,"l":"song2_pattern_04","c":"Song 2 pattern 4 ($0695-$06B7, 35 bytes), played by voice 3: 17 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[76,8,74,67,86,3,85,71]},{"a":1693,"t":"byte","b":[85,6,85,1,74,1,76,6]},{"a":1701,"t":"byte","b":[76,65,74,65,72,5,74,65]},{"a":1709,"t":"byte","b":[72,1,70,3,69,6,67,1]},{"a":1717,"t":"byte","b":[69,1,255]},{"a":1720,"l":"song2_pattern_05","c":"Song 2 pattern 5 ($06B8-$06BE, 7 bytes), played by voice 3: 3 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[69,6,67,1,69,1,255]},{"a":1727,"l":"song2_pattern_06","c":"Song 2 pattern 6 ($06BF-$06C1, 3 bytes), played by voice 3: 1 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[69,7,255]},{"a":1730,"l":"song2_pattern_07","c":"Song 2 pattern 7 ($06C2-$06ED, 44 bytes), played by voice 2: 21 note events (0 rests), instruments 23, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[151,88,71,88,7,85,71,85]},{"a":1738,"t":"byte","b":[7,83,7,76,7,74,71,74]},{"a":1746,"t":"byte","b":[7,72,8,85,5,101,71,101]},{"a":1754,"t":"byte","b":[6,101,1,99,1,92,6,92]},{"a":1762,"t":"byte","b":[1,90,1,88,6,83,3,85]},{"a":1770,"t":"byte","b":[71,85,7,255]},{"a":1774,"l":"song2_pattern_08","c":"Song 2 pattern 8 ($06EE-$071A, 45 bytes), played by voice 2: 22 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[74,8,90,5,83,71,83,70]},{"a":1782,"t":"byte","b":[83,1,90,1,92,7,90,5]},{"a":1790,"t":"byte","b":[85,5,85,71,85,7,76,7]},{"a":1798,"t":"byte","b":[74,7,67,71,67,7,72,70]},{"a":1806,"t":"byte","b":[72,1,74,1,76,5,69,5]},{"a":1814,"t":"byte","b":[69,71,69,7,255]},{"a":1819,"l":"song2_pattern_09","c":"Song 2 pattern 9 ($071B-$072B, 17 bytes), played by voice 2: 8 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[53,7,58,7,56,71,56,7]},{"a":1827,"t":"byte","b":[67,71,67,7,53,71,53,7]},{"a":1835,"t":"byte","b":[255]},{"a":1836,"l":"song2_pattern_10","c":"Song 2 pattern 10 ($072C-$073C, 17 bytes), played by voice 2: 8 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[76,71,76,7,74,7,76,7]},{"a":1844,"t":"byte","b":[83,7,74,7,76,71,76,7]},{"a":1852,"t":"byte","b":[255]},{"a":1853,"l":"song2_pattern_11","c":"Song 2 pattern 11 ($073D-$073F, 3 bytes), played by voice 2: 1 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[60,7,255]},{"a":1856,"l":"song3_pattern_00","c":"Song 3 pattern 0 ($0740-$0748, 9 bytes), played by voice 1: 3 note events (1 rests), instruments 14/15, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[142,33,3,32,3,143,113,5]},{"a":1864,"t":"byte","b":[255]},{"a":1865,"l":"song3_pattern_01","c":"Song 3 pattern 1 ($0749-$0789, 65 bytes), played by voice 2: 24 note events (4 rests), instruments 16/17, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[144,67,11,145,67,11,64,11]},{"a":1873,"t":"byte","b":[144,67,3,65,11,145,65,10]},{"a":1881,"t":"byte","b":[144,67,11,145,67,11,64,11]},{"a":1889,"t":"byte","b":[144,67,3,58,11,145,58,10]},{"a":1897,"t":"byte","b":[144,67,11,145,67,11,64,11]},{"a":1905,"t":"byte","b":[144,67,3,58,11,145,58,10]},{"a":1913,"t":"byte","b":[144,67,11,145,67,11,64,11]},{"a":1921,"t":"byte","b":[144,67,3,58,11,145,58,10]},{"a":1929,"t":"byte","b":[255]},{"a":1930,"l":"song3_pattern_02","c":"Song 3 pattern 2 ($078A-$07F2, 105 bytes), played by voice 2: 36 note events (0 rests), instruments 16/17, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[144,67,11,145,67,10,144,67]},{"a":1938,"t":"byte","b":[10,145,67,10,67,10,144,67]},{"a":1946,"t":"byte","b":[11,145,67,10,144,65,11,145]},{"a":1954,"t":"byte","b":[65,10,144,67,11,145,67,10]},{"a":1962,"t":"byte","b":[144,67,10,145,67,10,67,10]},{"a":1970,"t":"byte","b":[144,67,11,145,67,10,144,58]},{"a":1978,"t":"byte","b":[11,145,58,10,144,67,11,145]},{"a":1986,"t":"byte","b":[67,10,144,67,10,145,67,10]},{"a":1994,"t":"byte","b":[67,10,144,67,11,145,67,10]},{"a":2002,"t":"byte","b":[144,58,11,145,58,10,144,67]},{"a":2010,"t":"byte","b":[11,145,67,10,144,67,10,145]},{"a":2018,"t":"byte","b":[67,10,67,10,144,67,11,145]},{"a":2026,"t":"byte","b":[67,10,144,58,11,145,58,10]},{"a":2034,"t":"byte","b":[255]},{"a":2035,"l":"song3_pattern_03","c":"Song 3 pattern 3 ($07F3-$0820, 46 bytes), played by voice 3: 22 note events (3 rests), instruments 18, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[146,83,3,80,3,83,67,81]},{"a":2043,"t":"byte","b":[67,83,67,81,67]},{"a":2048,"l":"song3_pattern_03_0800","c":"The last 33 bytes of song 3 pattern 3 ($07F3-$0820), which runs across $0800; the pattern and its format are described at $07F3.","t":"byte","b":[83,67,86,3,81,3,80,3]},{"a":2056,"t":"byte","b":[81,67,74,67,81,69,74,5]},{"a":2064,"t":"byte","b":[72,3,64,3,72,67,74,67]},{"a":2072,"t":"byte","b":[72,67,70,67,67,67,70,67]},{"a":2080,"t":"byte","b":[255]},{"a":2081,"l":"song3_pattern_04","c":"Song 3 pattern 4 ($0821-$0829, 9 bytes), played by voice 3: 4 note events (0 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[72,69,70,69,67,69,70,5]},{"a":2089,"t":"byte","b":[255]},{"a":2090,"l":"song3_pattern_05","c":"Song 3 pattern 5 ($082A-$0832, 9 bytes), played by voice 3: 4 note events (1 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[72,69,67,69,70,6,64,3]},{"a":2098,"t":"byte","b":[255]},{"a":2099,"l":"song3_pattern_06","c":"Song 3 pattern 6 ($0833-$083F, 13 bytes), played by voice 3: 6 note events (3 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[72,3,64,3,72,3,64,3]},{"a":2107,"t":"byte","b":[70,6,64,3,255]},{"a":2112,"l":"song3_pattern_07","c":"Song 3 pattern 7 ($0840-$08A2, 99 bytes), played by voice 3: 49 note events (7 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[86,3,80,3,86,67,88,67]},{"a":2120,"t":"byte","b":[86,67,83,67,81,67,83,67]},{"a":2128,"t":"byte","b":[86,69,83,69,81,69,83,3]},{"a":2136,"t":"byte","b":[80,3,86,3,80,3,86,67]},{"a":2144,"t":"byte","b":[88,67,86,67,83,67,81,67]},{"a":2152,"t":"byte","b":[83,67,74,69,83,69,81,6]},{"a":2160,"t":"byte","b":[80,3,86,3,80,3,86,67]},{"a":2168,"t":"byte","b":[83,67,86,67,83,67,81,67]},{"a":2176,"t":"byte","b":[83,67,74,69,83,69,74,69]},{"a":2184,"t":"byte","b":[83,5,83,3,80,3,81,67]},{"a":2192,"t":"byte","b":[83,67,81,67,74,67,72,67]},{"a":2200,"t":"byte","b":[74,67,70,69,67,69,70,5]},{"a":2208,"t":"byte","b":[64,5,255]},{"a":2211,"l":"song3_pattern_08","c":"Song 3 pattern 8 ($08A3-$08D5, 51 bytes), played by voice 3: 25 note events (4 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[83,3,80,3,83,67,81,67]},{"a":2219,"t":"byte","b":[83,67,81,67,74,67,81,67]},{"a":2227,"t":"byte","b":[83,69,81,69,74,69,81,3]},{"a":2235,"t":"byte","b":[80,3,83,3,80,3,83,67]},{"a":2243,"t":"byte","b":[81,67,83,67,86,67,81,67]},{"a":2251,"t":"byte","b":[83,67,81,5,74,5,81,6]},{"a":2259,"t":"byte","b":[80,3,255]},{"a":2262,"l":"song4_pattern_00","c":"Song 4 pattern 0 ($08D6-$08D9, 4 bytes), played by voice 1: 1 note events (1 rests), instruments 19, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[147,0,15,255]},{"a":2266,"l":"song4_pattern_01","c":"Song 4 pattern 1 ($08DA-$0906, 45 bytes), played by voice 1: 22 note events (1 rests), no instrument change, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[89,3,89,3,87,3,87,3]},{"a":2274,"t":"byte","b":[84,3,84,3,87,3,87,3]},{"a":2282,"t":"byte","b":[89,10,89,10,89,10,89,10]},{"a":2290,"t":"byte","b":[89,10,89,10,89,10,89,10]},{"a":2298,"t":"byte","b":[89,10,89,10,89,10,89,10]},{"a":2306,"t":"byte","b":[89,5,80,5,255]},{"a":2311,"l":"song4_pattern_02","c":"Song 4 pattern 2 ($0907-$0934, 46 bytes), played by voice 2: 22 note events (1 rests), instruments 20, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[148,84,3,84,3,82,3,82]},{"a":2319,"t":"byte","b":[3,75,3,75,3,82,3,82]},{"a":2327,"t":"byte","b":[3,84,10,84,10,84,10,84]},{"a":2335,"t":"byte","b":[10,84,10,84,10,84,10,84]},{"a":2343,"t":"byte","b":[10,84,10,84,10,84,10,84]},{"a":2351,"t":"byte","b":[10,84,5,80,5,255]},{"a":2357,"l":"song4_pattern_03","c":"Song 4 pattern 3 ($0935-$0956, 34 bytes), played by voice 3: 16 note events (4 rests), instruments 21, ends $FF. Format: $80+n selects instrument n; any other byte is a note (bits 0-3 semitone 1-12 or 0 rest, bits 4-6 octave added to the instrument transpose) followed by a length byte (bits 0-3 index music_duration_table, bit 6 tie, bit 7 glide into the next note).","t":"byte","b":[149,57,5,55,5,52,5,55]},{"a":2365,"t":"byte","b":[5,57,5,48,5,57,5,48]},{"a":2373,"t":"byte","b":[5,52,5,50,5,43,5,50]},{"a":2381,"t":"byte","b":[5,52,5,48,5,52,5,48]},{"a":2389,"t":"byte","b":[5,255]},{"a":2391,"l":"song1_pattern_offsets","c":"Song 1: 14 words, the offset of each of its patterns from the song base ($0400, from song_base_table). Pattern n starts at base + word n; music_cmd_play_pattern reads this table through the operands at $0AD1 and $0ADD, which music_play writes when the song starts.","t":"word","b":[0,0,108,0,134,0,190,0],"d":[0,108,134,190]},{"a":2399,"t":"word","b":[194,0,241,0,6,1,23,1],"d":[194,241,262,279]},{"a":2407,"t":"word","b":[76,1,100,1,103,1,166,1],"d":[332,356,359,422]},{"a":2415,"t":"word","b":[217,1,235,1],"d":[473,491]},{"a":2419,"l":"song2_pattern_offsets","c":"Song 2: 12 words, the offset of each of its patterns from the song base ($0603, from song_base_table). Pattern n starts at base + word n; music_cmd_play_pattern reads this table through the operands at $0AD1 and $0ADD, which music_play writes when the song starts.","t":"word","b":[0,0,18,0,35,0,71,0],"d":[0,18,35,71],"x":[2768]},{"a":2420,"t":"note","l":"f_0974","c":"High byte of the first entry of song2_pattern_offsets. The disassembler names it only because the snapshot was taken during song 2, so the self-modified operand at $0ADD holds $0974.","note":"inside the item at $0973","x":[2780]},{"a":2427,"t":"word","b":[146,0,181,0,188,0,191,0],"d":[146,181,188,191]},{"a":2435,"t":"word","b":[235,0,24,1,41,1,58,1],"d":[235,280,297,314]},{"a":2443,"l":"song3_pattern_offsets","c":"Song 3: 9 words, the offset of each of its patterns from the song base ($0740, from song_base_table). Pattern n starts at base + word n; music_cmd_play_pattern reads this table through the operands at $0AD1 and $0ADD, which music_play writes when the song starts.","t":"word","b":[0,0,9,0,74,0,179,0],"d":[0,9,74,179]},{"a":2451,"t":"word","b":[225,0,234,0,243,0,0,1],"d":[225,234,243,256]},{"a":2459,"t":"word","b":[99,1],"d":[355]},{"a":2461,"l":"song4_pattern_offsets","c":"Song 4: 4 words, the offset of each of its patterns from the song base ($08D6, from song_base_table). Pattern n starts at base + word n; music_cmd_play_pattern reads this table through the operands at $0AD1 and $0ADD, which music_play writes when the song starts.","t":"word","b":[0,0,4,0,49,0,95,0],"d":[0,4,49,95]},{"a":2469,"l":"music_play","c":"Music driver, called once per frame from the raster interrupt handler at $30E5 ($3111). Zero page $FF is the song requested by the game (0-4). 0: volume to 0 and return, the sequencer frozen. A new number: start that song (music_start_song) and return. The same number as music_current_song: restore volume and filter from their shadows and play one frame (music_play_frame). The game sets $FF to 1 at $1CF8, 2 at $1BE5, 3 at $1B31, 4 at $1764, 0 at $18ED.","t":"code","b":[165,255],"m":"lda","oa":255,"o":"song","x":[12561]},{"a":2471,"t":"code","b":[208,6],"m":"bne","oa":2479,"o":"b_09AF"},{"a":2473,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2475,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":2478,"t":"code","b":[96],"m":"rts"},{"a":2479,"l":"b_09AF","t":"code","b":[205,58,13],"m":"cmp","oa":3386,"o":"music_current_song","x":[2471]},{"a":2482,"t":"code","b":[208,27],"m":"bne","oa":2511,"o":"music_start_song"},{"a":2484,"t":"code","b":[173,57,13],"m":"lda","oa":3385,"o":"music_volume_mode"},{"a":2487,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":2490,"t":"code","b":[173,59,13],"m":"lda","oa":3387,"o":"music_filter_route"},{"a":2493,"t":"code","b":[141,23,212],"m":"sta","o":"sid_filter_resonance"},{"a":2496,"t":"code","b":[173,194,12],"m":"lda","oa":3266,"o":"music_filter_cutoff_lo"},{"a":2499,"t":"code","b":[141,21,212],"m":"sta","o":"sid_filter_cutoff_lo"},{"a":2502,"t":"code","b":[173,195,12],"m":"lda","oa":3267,"o":"music_filter_cutoff_hi"},{"a":2505,"t":"code","b":[141,22,212],"m":"sta","o":"sid_filter_cutoff_hi"},{"a":2508,"t":"code","b":[76,81,10],"m":"jmp","oa":2641,"o":"music_play_frame"},{"a":2511,"l":"music_start_song","c":"Start song A: record it in music_current_song, clear the SID and the filter state (music_sid_clear), reset the three voices, mark them active ($81), set the volume from song_volume_table and every tempo counter from song_tempo_table, then copy the song base, the pattern-offset table address (into the operands at $0AD1 and $0ADD) and the three order-list pointers from the song tables indexed by song*2.","t":"code","b":[141,58,13],"m":"sta","oa":3386,"o":"music_current_song","x":[2482]},{"a":2514,"t":"code","b":[10],"m":"asl","o":"a"},{"a":2515,"t":"code","b":[168],"m":"tay"},{"a":2516,"t":"code","b":[32,222,11],"m":"jsr","oa":3038,"o":"music_sid_clear"},{"a":2519,"t":"code","b":[32,70,12],"m":"jsr","oa":3142,"o":"music_reset_voices"},{"a":2522,"t":"code","b":[169,129],"m":"lda","o":"#$81"},{"a":2524,"t":"code","b":[141,161,12],"m":"sta","oa":3233,"o":"music_voice_active"},{"a":2527,"t":"code","b":[141,162,12],"m":"sta","oa":3234,"o":"music_voice2_active"},{"a":2530,"t":"code","b":[141,163,12],"m":"sta","oa":3235,"o":"music_voice3_active"},{"a":2533,"t":"code","b":[174,58,13],"m":"ldx","oa":3386,"o":"music_current_song"},{"a":2536,"t":"code","b":[189,184,15],"m":"lda","oa":4024,"o":"song_volume_table,x"},{"a":2539,"t":"code","b":[141,57,13],"m":"sta","oa":3385,"o":"music_volume_mode"},{"a":2542,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":2545,"t":"code","b":[189,189,15],"m":"lda","oa":4029,"o":"song_tempo_table,x"},{"a":2548,"t":"code","b":[141,208,12],"m":"sta","oa":3280,"o":"music_tempo_counter"},{"a":2551,"t":"code","b":[141,209,12],"m":"sta","oa":3281,"o":"music_tempo_counter_v2"},{"a":2554,"t":"code","b":[141,210,12],"m":"sta","oa":3282,"o":"music_tempo_counter_v3"},{"a":2557,"t":"code","b":[141,211,12],"m":"sta","oa":3283,"o":"music_tempo_reload"},{"a":2560,"t":"code","b":[141,212,12],"m":"sta","oa":3284,"o":"music_tempo_reload_v2"},{"a":2563,"t":"code","b":[141,213,12],"m":"sta","oa":3285,"o":"music_tempo_reload_v3"},{"a":2566,"t":"code","b":[185,84,15],"m":"lda","oa":3924,"o":"song_base_table,y"},{"a":2569,"t":"code","b":[141,82,15],"m":"sta","oa":3922,"o":"music_song_base"},{"a":2572,"t":"code","b":[185,85,15],"m":"lda","oa":3925,"o":"song_base_table_hi,y"},{"a":2575,"t":"code","b":[141,83,15],"m":"sta","oa":3923,"o":"a_0F53"},{"a":2578,"t":"code","b":[185,94,15],"m":"lda","oa":3934,"o":"song_offsets_table,y"},{"a":2581,"t":"code","b":[141,221,10],"m":"sta","oa":2781,"o":"a_0ADD"},{"a":2584,"t":"code","b":[141,209,10],"m":"sta","oa":2769,"o":"a_0AD1"},{"a":2587,"t":"code","b":[185,95,15],"m":"lda","oa":3935,"o":"song_offsets_table_hi,y"},{"a":2590,"t":"code","b":[141,222,10],"m":"sta","oa":2782,"o":"a_0ADE"},{"a":2593,"t":"code","b":[141,210,10],"m":"sta","oa":2770,"o":"a_0AD2"},{"a":2596,"t":"code","b":[238,221,10],"m":"inc","oa":2781,"o":"a_0ADD"},{"a":2599,"t":"code","b":[208,3],"m":"bne","oa":2604,"o":"b_0A2C"},{"a":2601,"t":"code","b":[238,222,10],"m":"inc","oa":2782,"o":"a_0ADE"},{"a":2604,"l":"b_0A2C","t":"code","b":[185,104,15],"m":"lda","oa":3944,"o":"song_orders_v1,y","x":[2599]},{"a":2607,"t":"code","b":[141,164,12],"m":"sta","oa":3236,"o":"music_order_ptr_lo"},{"a":2610,"t":"code","b":[185,105,15],"m":"lda","oa":3945,"o":"song_orders_v1_hi,y"},{"a":2613,"t":"code","b":[141,167,12],"m":"sta","oa":3239,"o":"music_order_ptr_hi"},{"a":2616,"t":"code","b":[185,114,15],"m":"lda","oa":3954,"o":"song_orders_v2,y"},{"a":2619,"t":"code","b":[141,165,12],"m":"sta","oa":3237,"o":"music_order_ptr_lo_v2"},{"a":2622,"t":"code","b":[185,115,15],"m":"lda","oa":3955,"o":"song_orders_v2_hi,y"},{"a":2625,"t":"code","b":[141,168,12],"m":"sta","oa":3240,"o":"music_order_ptr_hi_v2"},{"a":2628,"t":"code","b":[185,124,15],"m":"lda","oa":3964,"o":"song_orders_v3,y"},{"a":2631,"t":"code","b":[141,166,12],"m":"sta","oa":3238,"o":"music_order_ptr_lo_v3"},{"a":2634,"t":"code","b":[185,125,15],"m":"lda","oa":3965,"o":"song_orders_v3_hi,y"},{"a":2637,"t":"code","b":[141,169,12],"m":"sta","oa":3241,"o":"music_order_ptr_hi_v3"},{"a":2640,"t":"code","b":[96],"m":"rts"},{"a":2641,"l":"music_play_frame","c":"One frame of music, voices 3 to 1: count down each active voice tempo counter and, when it expires, run one sequencer tick through the order-list command at music_order_index (music_order_dispatch). Every frame each voice then glides or sets its pitch (music_voice_pitch); after the loop the LFOs, pulse widths and filter sweep are updated and the active voices are written to the SID (Y = 14, 7, 0, the voice register offsets).","t":"code","b":[162,2],"m":"ldx","o":"#$02","x":[2508]},{"a":2643,"l":"b_0A53","t":"code","b":[189,161,12],"m":"lda","oa":3233,"o":"music_voice_active,x","x":[2726]},{"a":2646,"t":"code","b":[240,77],"m":"beq","oa":2725,"o":"b_0AA5"},{"a":2648,"t":"code","b":[222,208,12],"m":"dec","oa":3280,"o":"music_tempo_counter,x"},{"a":2651,"t":"code","b":[208,49],"m":"bne","oa":2702,"o":"music_voice_pitch"},{"a":2653,"t":"code","b":[189,211,12],"m":"lda","oa":3283,"o":"music_tempo_reload,x"},{"a":2656,"t":"code","b":[157,208,12],"m":"sta","oa":3280,"o":"music_tempo_counter,x"},{"a":2659,"t":"code","b":[189,164,12],"m":"lda","oa":3236,"o":"music_order_ptr_lo,x"},{"a":2662,"t":"code","b":[133,249],"m":"sta","oa":249,"o":"music_order_ptr"},{"a":2664,"t":"code","b":[189,167,12],"m":"lda","oa":3239,"o":"music_order_ptr_hi,x"},{"a":2667,"t":"code","b":[133,250],"m":"sta","oa":250,"o":"zp_music_order_hi"},{"a":2669,"t":"code","b":[189,170,12],"m":"lda","oa":3242,"o":"music_pattern_ptr_lo,x"},{"a":2672,"t":"code","b":[133,251],"m":"sta","oa":251,"o":"music_pattern_ptr"},{"a":2674,"t":"code","b":[189,173,12],"m":"lda","oa":3245,"o":"music_pattern_ptr_hi,x"},{"a":2677,"t":"code","b":[133,252],"m":"sta","oa":252,"o":"zp_music_pattern_hi"},{"a":2679,"l":"music_order_dispatch","c":"Read the command byte at music_order_index in the voice order list ($F9/$FA) and jump through music_order_commands ($FD/$FE), with Y = the order index. X = voice.","t":"code","b":[188,176,12],"m":"ldy","oa":3248,"o":"music_order_index,x","x":[2866,3157,3183,3197,3209]},{"a":2682,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":2684,"t":"code","b":[10],"m":"asl","o":"a"},{"a":2685,"t":"code","b":[168],"m":"tay"},{"a":2686,"t":"code","b":[185,49,13],"m":"lda","oa":3377,"o":"music_order_commands,y"},{"a":2689,"t":"code","b":[133,253],"m":"sta","oa":253,"o":"music_vector"},{"a":2691,"t":"code","b":[185,50,13],"m":"lda","oa":3378,"o":"f_0D32,y"},{"a":2694,"t":"code","b":[133,254],"m":"sta","oa":254,"o":"music_vector_hi"},{"a":2696,"t":"code","b":[188,176,12],"m":"ldy","oa":3248,"o":"music_order_index,x"},{"a":2699,"t":"code","b":[108,253,0],"m":"jmp","oa":253,"o":"(music_vector)"},{"a":2702,"l":"music_voice_pitch","c":"Per frame pitch of voice X: if the instrument has a slide (music_slide_enable) step the SID frequency toward the target (music_pitch_slide); otherwise copy the target frequency straight to it. Then on to the next voice.","t":"code","b":[189,248,12],"m":"lda","oa":3320,"o":"music_slide_enable,x","x":[2651,2807,2838,2992]},{"a":2705,"t":"code","b":[240,6],"m":"beq","oa":2713,"o":"b_0A99"},{"a":2707,"t":"code","b":[32,179,14],"m":"jsr","oa":3763,"o":"music_pitch_slide"},{"a":2710,"t":"code","b":[76,165,10],"m":"jmp","oa":2725,"o":"b_0AA5"},{"a":2713,"l":"b_0A99","t":"code","b":[189,140,12],"m":"lda","oa":3212,"o":"music_target_freq_lo,x","x":[2705]},{"a":2716,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":2719,"t":"code","b":[189,143,12],"m":"lda","oa":3215,"o":"music_target_freq_hi,x"},{"a":2722,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":2725,"l":"b_0AA5","t":"code","b":[202],"m":"dex","x":[2646,2710,3163]},{"a":2726,"t":"code","b":[16,171],"m":"bpl","oa":2643,"o":"b_0A53"},{"a":2728,"t":"code","b":[32,252,13],"m":"jsr","oa":3580,"o":"music_lfo_update"},{"a":2731,"t":"code","b":[32,62,14],"m":"jsr","oa":3646,"o":"music_pwm_update"},{"a":2734,"t":"code","b":[32,109,14],"m":"jsr","oa":3693,"o":"music_filter_sweep"},{"a":2737,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":2739,"t":"code","b":[160,14],"m":"ldy","o":"#$0E"},{"a":2741,"l":"b_0AB5","t":"code","b":[189,161,12],"m":"lda","oa":3233,"o":"music_voice_active,x","x":[2755]},{"a":2744,"t":"code","b":[16,3],"m":"bpl","oa":2749,"o":"b_0ABD"},{"a":2746,"t":"code","b":[32,179,11],"m":"jsr","oa":2995,"o":"music_sid_write_voice"},{"a":2749,"l":"b_0ABD","t":"code","b":[152],"m":"tya","x":[2744]},{"a":2750,"t":"code","b":[56],"m":"sec"},{"a":2751,"t":"code","b":[233,7],"m":"sbc","o":"#$07"},{"a":2753,"t":"code","b":[168],"m":"tay"},{"a":2754,"t":"code","b":[202],"m":"dex"},{"a":2755,"t":"code","b":[16,240],"m":"bpl","oa":2741,"o":"b_0AB5"},{"a":2757,"t":"code","b":[96],"m":"rts"},{"a":2758,"l":"music_cmd_play_pattern","c":"Order-list command 1, n: play pattern n. On the first tick (music_pattern_start_flag set) look up the pattern address (song base + offset table entry, through operands written at song start), clear the flag and read the first event. Afterwards count down the note timer: at 0 a release tick (gate off unless tied), then the next pattern event. Pattern events: $FF ends the pattern (order index += 2, next command at once); $80+n selects instrument n (music_select_instrument); a note byte and length byte set the target frequency, timer, flags and gate.","t":"code","b":[189,179,12],"m":"lda","oa":3251,"o":"music_pattern_start_flag,x"},{"a":2761,"t":"code","b":[240,39],"m":"beq","oa":2802,"o":"b_0AF2"},{"a":2763,"t":"code","b":[200],"m":"iny"},{"a":2764,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":2766,"t":"code","b":[10],"m":"asl","o":"a"},{"a":2767,"t":"code","b":[168],"m":"tay"},{"a":2768,"t":"code","b":[185,115,9],"m":"lda","oa":2419,"o":"song2_pattern_offsets,y"},{"a":2769,"t":"note","l":"a_0AD1","c":"Operand of LDA $0973,Y at $0AD0: the low byte of the current song pattern-offset table address, written by music_start_song ($0A18).","note":"inside the item at $0AD0","x":[2584]},{"a":2770,"t":"note","l":"a_0AD2","c":"Operand high byte for $0AD0, written by music_start_song ($0A21).","note":"inside the item at $0AD0","x":[2593]},{"a":2771,"t":"code","b":[24],"m":"clc"},{"a":2772,"t":"code","b":[109,82,15],"m":"adc","oa":3922,"o":"music_song_base"},{"a":2775,"t":"code","b":[157,170,12],"m":"sta","oa":3242,"o":"music_pattern_ptr_lo,x"},{"a":2778,"t":"code","b":[133,251],"m":"sta","oa":251,"o":"music_pattern_ptr"},{"a":2780,"t":"code","b":[185,116,9],"m":"lda","oa":2420,"o":"f_0974,y"},{"a":2781,"t":"note","l":"a_0ADD","c":"Operand of LDA $0974,Y at $0ADC: the offset table address plus 1, written by music_start_song ($0A15, then incremented at $0A24).","note":"inside the item at $0ADC","x":[2581,2596]},{"a":2782,"t":"note","l":"a_0ADE","c":"Operand high byte for $0ADC, written at $0A1E and carried into at $0A29.","note":"inside the item at $0ADC","x":[2590,2601]},{"a":2783,"t":"code","b":[109,83,15],"m":"adc","oa":3923,"o":"a_0F53"},{"a":2786,"t":"code","b":[157,173,12],"m":"sta","oa":3245,"o":"music_pattern_ptr_hi,x"},{"a":2789,"t":"code","b":[133,252],"m":"sta","oa":252,"o":"zp_music_pattern_hi"},{"a":2791,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2793,"t":"code","b":[157,182,12],"m":"sta","oa":3254,"o":"music_pattern_index,x"},{"a":2796,"t":"code","b":[157,179,12],"m":"sta","oa":3251,"o":"music_pattern_start_flag,x"},{"a":2799,"t":"code","b":[76,28,11],"m":"jmp","oa":2844,"o":"j_0B1C"},{"a":2802,"l":"b_0AF2","t":"code","b":[222,185,12],"m":"dec","oa":3257,"o":"music_note_timer,x","x":[2761]},{"a":2805,"t":"code","b":[240,3],"m":"beq","oa":2810,"o":"b_0AFA"},{"a":2807,"t":"code","b":[76,142,10],"m":"jmp","oa":2702,"o":"music_voice_pitch"},{"a":2810,"l":"b_0AFA","t":"code","b":[189,188,12],"m":"lda","oa":3260,"o":"music_release_flag,x","x":[2805]},{"a":2813,"t":"code","b":[208,26],"m":"bne","oa":2841,"o":"b_0B19"},{"a":2815,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":2817,"t":"code","b":[157,188,12],"m":"sta","oa":3260,"o":"music_release_flag,x"},{"a":2820,"t":"code","b":[157,185,12],"m":"sta","oa":3257,"o":"music_note_timer,x"},{"a":2823,"t":"code","b":[189,199,12],"m":"lda","oa":3271,"o":"music_note_flags,x"},{"a":2826,"t":"code","b":[41,64],"m":"and","o":"#$40"},{"a":2828,"t":"code","b":[208,8],"m":"bne","oa":2838,"o":"b_0B16"},{"a":2830,"t":"code","b":[189,152,12],"m":"lda","oa":3224,"o":"music_voice_control,x"},{"a":2833,"t":"code","b":[41,254],"m":"and","o":"#$FE"},{"a":2835,"t":"code","b":[157,152,12],"m":"sta","oa":3224,"o":"music_voice_control,x"},{"a":2838,"l":"b_0B16","t":"code","b":[76,142,10],"m":"jmp","oa":2702,"o":"music_voice_pitch","x":[2828]},{"a":2841,"l":"b_0B19","t":"code","b":[254,182,12],"m":"inc","oa":3254,"o":"music_pattern_index,x","x":[2813,2874]},{"a":2844,"l":"j_0B1C","t":"code","b":[188,182,12],"m":"ldy","oa":3254,"o":"music_pattern_index,x","x":[2799]},{"a":2847,"t":"code","b":[177,251],"m":"lda","oa":251,"o":"(music_pattern_ptr),y"},{"a":2849,"t":"code","b":[16,26],"m":"bpl","oa":2877,"o":"b_0B3D"},{"a":2851,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":2853,"t":"code","b":[208,14],"m":"bne","oa":2869,"o":"b_0B35"},{"a":2855,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":2857,"t":"code","b":[157,179,12],"m":"sta","oa":3251,"o":"music_pattern_start_flag,x"},{"a":2860,"t":"code","b":[254,176,12],"m":"inc","oa":3248,"o":"music_order_index,x"},{"a":2863,"t":"code","b":[254,176,12],"m":"inc","oa":3248,"o":"music_order_index,x"},{"a":2866,"t":"code","b":[76,119,10],"m":"jmp","oa":2679,"o":"music_order_dispatch"},{"a":2869,"l":"b_0B35","t":"code","b":[41,127],"m":"and","o":"#$7F","x":[2853]},{"a":2871,"t":"code","b":[32,60,13],"m":"jsr","oa":3388,"o":"music_select_instrument"},{"a":2874,"t":"code","b":[76,25,11],"m":"jmp","oa":2841,"o":"b_0B19"},{"a":2877,"l":"b_0B3D","t":"code","b":[72],"m":"pha","x":[2849]},{"a":2878,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":2880,"t":"code","b":[157,205,12],"m":"sta","oa":3277,"o":"music_note_semitone,x"},{"a":2883,"t":"code","b":[168],"m":"tay"},{"a":2884,"t":"code","b":[208,4],"m":"bne","oa":2890,"o":"b_0B4A"},{"a":2886,"t":"code","b":[104],"m":"pla"},{"a":2887,"t":"code","b":[76,111,11],"m":"jmp","oa":2927,"o":"j_0B6F"},{"a":2890,"l":"b_0B4A","t":"code","b":[185,20,13],"m":"lda","oa":3348,"o":"music_note_freq_table,y","x":[2884]},{"a":2893,"t":"code","b":[157,140,12],"m":"sta","oa":3212,"o":"music_target_freq_lo,x"},{"a":2896,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":2898,"t":"code","b":[157,143,12],"m":"sta","oa":3215,"o":"music_target_freq_hi,x"},{"a":2901,"t":"code","b":[104],"m":"pla"},{"a":2902,"t":"code","b":[41,112],"m":"and","o":"#$70"},{"a":2904,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":2905,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":2906,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":2907,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":2908,"t":"code","b":[24],"m":"clc"},{"a":2909,"t":"code","b":[125,191,12],"m":"adc","oa":3263,"o":"music_transpose,x"},{"a":2912,"t":"code","b":[157,202,12],"m":"sta","oa":3274,"o":"music_note_octave,x"},{"a":2915,"t":"code","b":[168],"m":"tay"},{"a":2916,"t":"code","b":[240,9],"m":"beq","oa":2927,"o":"j_0B6F"},{"a":2918,"l":"b_0B66","t":"code","b":[30,140,12],"m":"asl","oa":3212,"o":"music_target_freq_lo,x","x":[2925]},{"a":2921,"t":"code","b":[62,143,12],"m":"rol","oa":3215,"o":"music_target_freq_hi,x"},{"a":2924,"t":"code","b":[136],"m":"dey"},{"a":2925,"t":"code","b":[208,247],"m":"bne","oa":2918,"o":"b_0B66"},{"a":2927,"l":"j_0B6F","t":"code","b":[152],"m":"tya","x":[2887,2916]},{"a":2928,"t":"code","b":[157,188,12],"m":"sta","oa":3260,"o":"music_release_flag,x"},{"a":2931,"t":"code","b":[254,182,12],"m":"inc","oa":3254,"o":"music_pattern_index,x"},{"a":2934,"t":"code","b":[188,182,12],"m":"ldy","oa":3254,"o":"music_pattern_index,x"},{"a":2937,"t":"code","b":[177,251],"m":"lda","oa":251,"o":"(music_pattern_ptr),y"},{"a":2939,"t":"code","b":[72],"m":"pha"},{"a":2940,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":2942,"t":"code","b":[168],"m":"tay"},{"a":2943,"t":"code","b":[185,33,13],"m":"lda","oa":3361,"o":"music_duration_table,y"},{"a":2946,"t":"code","b":[157,185,12],"m":"sta","oa":3257,"o":"music_note_timer,x"},{"a":2949,"t":"code","b":[192,14],"m":"cpy","o":"#$0E"},{"a":2951,"t":"code","b":[208,3],"m":"bne","oa":2956,"o":"music_note_set_pitch"},{"a":2953,"t":"code","b":[157,188,12],"m":"sta","oa":3260,"o":"music_release_flag,x"},{"a":2956,"l":"music_note_set_pitch","c":"Part of a note start: unless the previous note asked for a glide or tie (music_note_flags), the SID frequency jumps to the new target; then the new flags are stored and the gate is set for a note other than a rest.","t":"code","b":[189,199,12],"m":"lda","oa":3271,"o":"music_note_flags,x","x":[2951]},{"a":2959,"t":"code","b":[208,12],"m":"bne","oa":2973,"o":"b_0B9D"},{"a":2961,"t":"code","b":[189,140,12],"m":"lda","oa":3212,"o":"music_target_freq_lo,x"},{"a":2964,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":2967,"t":"code","b":[189,143,12],"m":"lda","oa":3215,"o":"music_target_freq_hi,x"},{"a":2970,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":2973,"l":"b_0B9D","t":"code","b":[104],"m":"pla","x":[2959]},{"a":2974,"t":"code","b":[41,192],"m":"and","o":"#$C0"},{"a":2976,"t":"code","b":[157,199,12],"m":"sta","oa":3271,"o":"music_note_flags,x"},{"a":2979,"t":"code","b":[189,205,12],"m":"lda","oa":3277,"o":"music_note_semitone,x"},{"a":2982,"t":"code","b":[240,8],"m":"beq","oa":2992,"o":"b_0BB0"},{"a":2984,"t":"code","b":[189,152,12],"m":"lda","oa":3224,"o":"music_voice_control,x"},{"a":2987,"t":"code","b":[9,1],"m":"ora","o":"#$01"},{"a":2989,"t":"code","b":[157,152,12],"m":"sta","oa":3224,"o":"music_voice_control,x"},{"a":2992,"l":"b_0BB0","t":"code","b":[76,142,10],"m":"jmp","oa":2702,"o":"music_voice_pitch","x":[2982]},{"a":2995,"l":"music_sid_write_voice","c":"Copy voice X shadows to the SID at $D400+Y (Y = 0, 7 or 14): frequency, pulse width, attack/decay, sustain/release, then the control register last.","t":"code","b":[189,242,12],"m":"lda","oa":3314,"o":"music_freq_lo,x","x":[2746]},{"a":2998,"t":"code","b":[153,0,212],"m":"sta","o":"sid_v1_freq_lo,y"},{"a":3001,"t":"code","b":[189,245,12],"m":"lda","oa":3317,"o":"music_freq_hi,x"},{"a":3004,"t":"code","b":[153,1,212],"m":"sta","o":"sid_v1_freq_hi,y"},{"a":3007,"t":"code","b":[189,236,12],"m":"lda","oa":3308,"o":"music_pulse_lo,x"},{"a":3010,"t":"code","b":[153,2,212],"m":"sta","o":"sid_v1_pulse_lo,y"},{"a":3013,"t":"code","b":[189,239,12],"m":"lda","oa":3311,"o":"music_pulse_hi,x"},{"a":3016,"t":"code","b":[153,3,212],"m":"sta","o":"sid_v1_pulse_hi,y"},{"a":3019,"t":"code","b":[189,155,12],"m":"lda","oa":3227,"o":"music_voice_ad,x"},{"a":3022,"t":"code","b":[153,5,212],"m":"sta","o":"sid_v1_attack_decay,y"},{"a":3025,"t":"code","b":[189,158,12],"m":"lda","oa":3230,"o":"music_voice_sr,x"},{"a":3028,"t":"code","b":[153,6,212],"m":"sta","o":"sid_v1_sustain_release,y"},{"a":3031,"t":"code","b":[189,152,12],"m":"lda","oa":3224,"o":"music_voice_control,x"},{"a":3034,"t":"code","b":[153,4,212],"m":"sta","o":"sid_v1_control,y"},{"a":3037,"t":"code","b":[96],"m":"rts"},{"a":3038,"l":"music_sid_clear","c":"Zero the SID registers $D400-$D418 (silence, volume 0) and the filter shadows: route and mode/volume 0, sweep shift and direction 0, cutoff base $6400.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[2516]},{"a":3040,"t":"code","b":[162,24],"m":"ldx","o":"#$18"},{"a":3042,"l":"b_0BE2","t":"code","b":[157,0,212],"m":"sta","o":"sid_v1_freq_lo,x","x":[3046]},{"a":3045,"t":"code","b":[202],"m":"dex"},{"a":3046,"t":"code","b":[16,250],"m":"bpl","oa":3042,"o":"b_0BE2"},{"a":3048,"t":"code","b":[141,59,13],"m":"sta","oa":3387,"o":"music_filter_route"},{"a":3051,"t":"code","b":[141,57,13],"m":"sta","oa":3385,"o":"music_volume_mode"},{"a":3054,"t":"code","b":[141,197,12],"m":"sta","oa":3269,"o":"music_filter_mod_shift"},{"a":3057,"t":"code","b":[141,198,12],"m":"sta","oa":3270,"o":"music_filter_mod_direction"},{"a":3060,"t":"code","b":[141,194,12],"m":"sta","oa":3266,"o":"music_filter_cutoff_lo"},{"a":3063,"t":"code","b":[169,100],"m":"lda","o":"#$64"},{"a":3065,"t":"code","b":[141,195,12],"m":"sta","oa":3267,"o":"music_filter_cutoff_hi"},{"a":3068,"t":"code","b":[96],"m":"rts"},{"a":3069,"l":"music_voice_reset","c":"Reset voice X: inactive, repeat counter, order index, transpose, flags, control, LFO value, rate and direction, pulse base and width, slide 0; pattern-start flag and tempo counter 1; no PWM source ($80). Also turns the filter sweep off (music_filter_mod_source = $80). Order-list command 0 and song start use it.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[3144,3160]},{"a":3071,"t":"code","b":[157,161,12],"m":"sta","oa":3233,"o":"music_voice_active,x"},{"a":3074,"t":"code","b":[157,1,13],"m":"sta","oa":3329,"o":"music_repeat_counter,x"},{"a":3077,"t":"code","b":[157,176,12],"m":"sta","oa":3248,"o":"music_order_index,x"},{"a":3080,"t":"code","b":[157,191,12],"m":"sta","oa":3263,"o":"music_transpose,x"},{"a":3083,"t":"code","b":[157,199,12],"m":"sta","oa":3271,"o":"music_note_flags,x"},{"a":3086,"t":"code","b":[157,152,12],"m":"sta","oa":3224,"o":"music_voice_control,x"},{"a":3089,"t":"code","b":[157,219,12],"m":"sta","oa":3291,"o":"music_lfo_value,x"},{"a":3092,"t":"code","b":[157,224,12],"m":"sta","oa":3296,"o":"music_lfo_rate,x"},{"a":3095,"t":"code","b":[157,227,12],"m":"sta","oa":3299,"o":"music_lfo_direction,x"},{"a":3098,"t":"code","b":[157,233,12],"m":"sta","oa":3305,"o":"music_pwm_shift,x"},{"a":3101,"t":"code","b":[157,146,12],"m":"sta","oa":3218,"o":"music_pulse_base_lo,x"},{"a":3104,"t":"code","b":[157,149,12],"m":"sta","oa":3221,"o":"music_pulse_base_hi,x"},{"a":3107,"t":"code","b":[157,236,12],"m":"sta","oa":3308,"o":"music_pulse_lo,x"},{"a":3110,"t":"code","b":[157,239,12],"m":"sta","oa":3311,"o":"music_pulse_hi,x"},{"a":3113,"t":"code","b":[157,248,12],"m":"sta","oa":3320,"o":"music_slide_enable,x"},{"a":3116,"t":"code","b":[157,251,12],"m":"sta","oa":3323,"o":"music_slide_rate_lo,x"},{"a":3119,"t":"code","b":[157,254,12],"m":"sta","oa":3326,"o":"music_slide_rate_hi,x"},{"a":3122,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3124,"t":"code","b":[157,179,12],"m":"sta","oa":3251,"o":"music_pattern_start_flag,x"},{"a":3127,"t":"code","b":[157,211,12],"m":"sta","oa":3283,"o":"music_tempo_reload,x"},{"a":3130,"t":"code","b":[157,208,12],"m":"sta","oa":3280,"o":"music_tempo_counter,x"},{"a":3133,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":3135,"t":"code","b":[157,230,12],"m":"sta","oa":3302,"o":"music_pwm_source,x"},{"a":3138,"t":"code","b":[141,196,12],"m":"sta","oa":3268,"o":"music_filter_mod_source"},{"a":3141,"t":"code","b":[96],"m":"rts"},{"a":3142,"l":"music_reset_voices","c":"Reset all three voices with music_voice_reset (X = 2, 1, 0).","t":"code","b":[162,2],"m":"ldx","o":"#$02","x":[2519]},{"a":3144,"l":"b_0C48","t":"code","b":[32,253,11],"m":"jsr","oa":3069,"o":"music_voice_reset","x":[3148]},{"a":3147,"t":"code","b":[202],"m":"dex"},{"a":3148,"t":"code","b":[16,250],"m":"bpl","oa":3144,"o":"b_0C48"},{"a":3150,"t":"code","b":[96],"m":"rts"},{"a":3151,"l":"music_cmd_jump","c":"Order-list command 2, i: continue this voice order list at index i (music_order_index = i) and dispatch it at once. Used to loop a song.","t":"code","b":[200],"m":"iny"},{"a":3152,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":3154,"t":"code","b":[157,176,12],"m":"sta","oa":3248,"o":"music_order_index,x"},{"a":3157,"t":"code","b":[76,119,10],"m":"jmp","oa":2679,"o":"music_order_dispatch"},{"a":3160,"l":"music_cmd_stop","c":"Order-list command 0: stop this voice (music_voice_reset makes it inactive, so the SID registers are no longer written for it). Only song 4 uses it; songs 1-3 loop.","t":"code","b":[32,253,11],"m":"jsr","oa":3069,"o":"music_voice_reset"},{"a":3163,"t":"code","b":[76,165,10],"m":"jmp","oa":2725,"o":"b_0AA5"},{"a":3166,"l":"music_cmd_repeat","c":"Order-list command 3, i, c: the first time, set the voice repeat counter to c and go to index i; each later time count down and go to i again until the counter reaches 0, then skip the three bytes and carry on.","t":"code","b":[189,1,13],"m":"lda","oa":3329,"o":"music_repeat_counter,x"},{"a":3169,"t":"code","b":[208,15],"m":"bne","oa":3186,"o":"b_0C72"},{"a":3171,"t":"code","b":[200],"m":"iny"},{"a":3172,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":3174,"t":"code","b":[157,176,12],"m":"sta","oa":3248,"o":"music_order_index,x"},{"a":3177,"t":"code","b":[200],"m":"iny"},{"a":3178,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":3180,"t":"code","b":[157,1,13],"m":"sta","oa":3329,"o":"music_repeat_counter,x"},{"a":3183,"t":"code","b":[76,119,10],"m":"jmp","oa":2679,"o":"music_order_dispatch"},{"a":3186,"l":"b_0C72","t":"code","b":[222,1,13],"m":"dec","oa":3329,"o":"music_repeat_counter,x","x":[3169]},{"a":3189,"t":"code","b":[240,9],"m":"beq","oa":3200,"o":"b_0C80"},{"a":3191,"t":"code","b":[200],"m":"iny"},{"a":3192,"t":"code","b":[177,249],"m":"lda","oa":249,"o":"(music_order_ptr),y"},{"a":3194,"t":"code","b":[157,176,12],"m":"sta","oa":3248,"o":"music_order_index,x"},{"a":3197,"t":"code","b":[76,119,10],"m":"jmp","oa":2679,"o":"music_order_dispatch"},{"a":3200,"l":"b_0C80","t":"code","b":[254,176,12],"m":"inc","oa":3248,"o":"music_order_index,x","x":[3189]},{"a":3203,"t":"code","b":[254,176,12],"m":"inc","oa":3248,"o":"music_order_index,x"},{"a":3206,"t":"code","b":[254,176,12],"m":"inc","oa":3248,"o":"music_order_index,x"},{"a":3209,"t":"code","b":[76,119,10],"m":"jmp","oa":2679,"o":"music_order_dispatch"},{"a":3212,"l":"music_target_freq_lo","c":"Per voice (3 bytes, X = 0-2): low byte of the target SID frequency of the current note: music_note_freq_table entry shifted left by the octave. Written at $0B4D, read by music_pitch_slide and $0A99.","t":"byte","b":[64,32,208],"x":[2713,2893,2918,2961,3776,3832,3837,3904,3909]},{"a":3215,"l":"music_target_freq_hi","c":"Per voice: high byte of the target frequency (starts at 1 and is shifted left with the low byte, $0B52-$0B69).","t":"byte","b":[63,50,15],"x":[2719,2898,2921,2967,3766,3821,3843,3893,3915]},{"a":3218,"l":"music_pulse_base_lo","c":"Per voice: low byte of the pulse width set by a pulse instrument (instrument bytes 1-2); music_pwm_update adds the modulation to it.","t":"byte","b":[0,0,0],"x":[3101,3419,3674]},{"a":3221,"l":"music_pulse_base_hi","c":"Per voice: high byte of the base pulse width.","t":"byte","b":[0,0,4],"x":[3104,3428,3683]},{"a":3224,"l":"music_voice_control","c":"Per voice: shadow of the SID control register (waveform bits from the instrument, bit 0 gate). Gate is set when a note starts ($0BAD) and cleared on the release tick ($0B13).","t":"byte","b":[17,17,65],"x":[2830,2835,2984,2989,3031,3086,3402,3409]},{"a":3227,"l":"music_voice_ad","c":"Per voice: attack/decay from the instrument, written to $D405+voice offset.","t":"byte","b":[6,193,12],"x":[3019,3458]},{"a":3230,"l":"music_voice_sr","c":"Per voice: sustain/release from the instrument, written to $D406+voice offset.","t":"byte","b":[34,226,2],"x":[3025,3464]},{"a":3233,"l":"music_voice_active","c":"Voice 1 active flag. $81 after a song starts ($09DC); 0 after an order-list stop command. Bit 7 set means the voice is played and its registers are copied to the SID each frame ($0AB5).","t":"byte","b":[129],"x":[2524,2643,2741,3071]},{"a":3234,"l":"music_voice2_active","c":"Voice 2 active flag, as music_voice_active.","t":"byte","b":[129],"x":[2527]},{"a":3235,"l":"music_voice3_active","c":"Voice 3 active flag, as music_voice_active.","t":"byte","b":[129],"x":[2530]},{"a":3236,"l":"music_order_ptr_lo","c":"Voice 1 order-list pointer, low byte, from song_orders_v1 at song start; loaded into $F9 each tick. The next two bytes are voices 2 and 3.","t":"byte","b":[7],"x":[2607,2659]},{"a":3237,"l":"music_order_ptr_lo_v2","c":"Voice 2 order-list pointer, low byte (from the voice 2 table at $0F72).","t":"byte","b":[17],"x":[2619]},{"a":3238,"l":"music_order_ptr_lo_v3","c":"Voice 3 order-list pointer, low byte (from the voice 3 table at $0F7C).","t":"byte","b":[31],"x":[2631]},{"a":3239,"l":"music_order_ptr_hi","c":"Voice 1 order-list pointer, high byte; loaded into $FA each tick.","t":"byte","b":[16],"x":[2613,2664]},{"a":3240,"l":"music_order_ptr_hi_v2","c":"Voice 2 order-list pointer, high byte.","t":"byte","b":[16],"x":[2625]},{"a":3241,"l":"music_order_ptr_hi_v3","c":"Voice 3 order-list pointer, high byte.","t":"byte","b":[16],"x":[2637]},{"a":3242,"l":"music_pattern_ptr_lo","c":"Per voice: low byte of the address of the pattern being played (song base + offset, $0AD7); loaded into $FB each tick.","t":"byte","b":[3,194,38],"x":[2669,2775]},{"a":3245,"l":"music_pattern_ptr_hi","c":"Per voice: high byte of the pattern address; loaded into $FC.","t":"byte","b":[6,6,6],"x":[2674,2786]},{"a":3248,"l":"music_order_index","c":"Per voice: index of the current command in the voice order list (advanced by 2 after a pattern, set by jump and repeat commands).","t":"byte","b":[0,0,0],"x":[2679,2696,2860,2863,3077,3154,3174,3194,3200,3203,3206]},{"a":3251,"l":"music_pattern_start_flag","c":"Per voice: 1 when the next tick must take a new pattern number from the order list (set at song start and at a pattern end marker $FF), 0 while a pattern plays.","t":"byte","b":[0,0,0],"x":[2758,2796,2857,3124]},{"a":3254,"l":"music_pattern_index","c":"Per voice: offset of the next byte to read in the current pattern.","t":"byte","b":[16,2,2],"x":[2793,2841,2844,2931,2934]},{"a":3257,"l":"music_note_timer","c":"Per voice: ticks left in the current note (from music_duration_table), then 1 for the release tick.","t":"byte","b":[3,3,27],"x":[2802,2820,2946]},{"a":3260,"l":"music_release_flag","c":"Per voice: 0 while the note sounds; nonzero during the release tick, after which the next note is read. A length index of 14 sets it at once, so that note has no release tick.","t":"byte","b":[0,0,0],"x":[2810,2817,2928,2953]},{"a":3263,"l":"music_transpose","c":"Per voice: octave offset from the instrument (its transpose byte), added to the octave field of each note ($0B5D).","t":"byte","b":[1,0,255],"x":[2909,3080,3479]},{"a":3266,"l":"music_filter_cutoff_lo","c":"Filter cutoff base, low byte (shared): from a filtered instrument, or 0 at song start; the filter sweep adds to it.","t":"byte","b":[0],"x":[2496,3060,3521,3728,3744]},{"a":3267,"l":"music_filter_cutoff_hi","c":"Filter cutoff base, high byte; $64 at song start ($0BF7).","t":"byte","b":[100],"x":[2502,3065,3530,3737,3753]},{"a":3268,"l":"music_filter_mod_source","c":"Index (0-4) into music_lfo_value of the value that sweeps the filter cutoff; bit 7 set (as at song start) means no sweep.","t":"byte","b":[3],"x":[3138,3539,3693]},{"a":3269,"l":"music_filter_mod_shift","c":"Number of left shifts applied to the filter sweep value before it is added to or taken from the cutoff.","t":"byte","b":[1],"x":[3054,3545,3706]},{"a":3270,"l":"music_filter_mod_direction","c":"Filter sweep direction: 0 adds the modulation to the cutoff base, anything else subtracts it ($0E8B).","t":"byte","b":[0],"x":[3057,3551,3720]},{"a":3271,"l":"music_note_flags","c":"Per voice: bits 6-7 of the current note length byte. Bit 6 keeps the gate on at the note end (tie). Either bit stops the next note from jumping to its pitch ($0B8C), so with a slide rate it glides there from this one.","t":"byte","b":[0,64,0],"x":[2823,2956,2976,3083]},{"a":3274,"l":"music_note_octave","c":"Per voice: octave of the current note (note bits 4-6 + transpose); the number of left shifts of the base frequency and of the slide step.","t":"byte","b":[5,5,3],"x":[2912,3793,3859]},{"a":3277,"l":"music_note_semitone","c":"Per voice: semitone of the current note, 1-12, or 0 for a rest (no gate).","t":"byte","b":[12,8,12],"x":[2880,2979]},{"a":3280,"l":"music_tempo_counter","c":"Voice 1 tempo counter: counts frames down to the next sequencer tick, reloaded from music_tempo_reload.","t":"byte","b":[2],"x":[2548,2648,2656,3130]},{"a":3281,"l":"music_tempo_counter_v2","c":"Voice 2 tempo counter (set with the others from song_tempo_table at $09F7).","t":"byte","b":[2],"x":[2551]},{"a":3282,"l":"music_tempo_counter_v3","c":"Voice 3 tempo counter.","t":"byte","b":[2],"x":[2554]},{"a":3283,"l":"music_tempo_reload","c":"Voice 1 frames per tick, from song_tempo_table (1 or 2).","t":"byte","b":[2],"x":[2557,2653,3127]},{"a":3284,"l":"music_tempo_reload_v2","c":"Voice 2 frames per tick.","t":"byte","b":[2],"x":[2560]},{"a":3285,"l":"music_tempo_reload_v3","c":"Voice 3 frames per tick.","t":"byte","b":[2],"x":[2563]},{"a":3286,"l":"music_scratch_hi","c":"Scratch: high byte of a shifted modulation or slide step in the PWM, filter and slide routines.","t":"byte","b":[0],"x":[3655,3667,3680,3700,3712,3734,3756,3787,3799,3815,3853,3865,3887]},{"a":3287,"l":"music_scratch_lo","c":"Scratch: low byte of the slide step in the downward pitch slide ($0F1F). $0CD8-$0CDA after it are not referenced.","t":"byte","b":[0,0,0,0],"x":[3871,3878]},{"a":3291,"l":"music_lfo_value","c":"Five modulation sources indexed 0-4: three triangle LFOs (0-2, one per voice, ramping between 0 and $FF), then the SID voice 3 envelope (3) and oscillator (4) sampled each frame.","t":"byte","b":[0,0,7],"x":[3089,3599,3606,3613,3622,3629,3636,3658,3703]},{"a":3294,"l":"music_voice3_env_sample","c":"Modulation source 3: $D41C (voice 3 envelope output), copied each frame by music_lfo_update.","t":"byte","b":[92],"x":[3583]},{"a":3295,"l":"music_voice3_osc_sample","c":"Modulation source 4: $D41B (voice 3 oscillator output), copied each frame.","t":"byte","b":[100],"x":[3589]},{"a":3296,"l":"music_lfo_rate","c":"Per LFO: step added or taken each frame; set from byte 5 of a pulse instrument.","t":"byte","b":[0,0,31],"x":[3092,3452,3603,3626]},{"a":3299,"l":"music_lfo_direction","c":"Per LFO: 0 rising, $FF falling; flips when the value reaches $FF or 0.","t":"byte","b":[0,0,255],"x":[3095,3594,3616,3639]},{"a":3302,"l":"music_pwm_source","c":"Per voice: modulation source for the pulse width, the voice own LFO, or bit 7 set for none (instrument byte 3, $0D6D).","t":"byte","b":[128,128,2],"x":[3135,3440,3648]},{"a":3305,"l":"music_pwm_shift","c":"Per voice: left shifts applied to the LFO value before it is added to the pulse width.","t":"byte","b":[0,0,2],"x":[3098,3446,3661]},{"a":3308,"l":"music_pulse_lo","c":"Per voice: pulse width written to the SID, low byte (base + modulation).","t":"byte","b":[0,0,28],"x":[3007,3107,3422,3677]},{"a":3311,"l":"music_pulse_hi","c":"Per voice: pulse width written to the SID, high byte.","t":"byte","b":[0,0,4],"x":[3013,3110,3431,3686]},{"a":3314,"l":"music_freq_lo","c":"Per voice: frequency written to the SID, low byte; follows the target directly or by a slide.","t":"byte","b":[64,32,208],"x":[2716,2964,2995,3773,3806,3809,3829,3840,3874,3881,3901,3912]},{"a":3317,"l":"music_freq_hi","c":"Per voice: frequency written to the SID, high byte.","t":"byte","b":[63,50,15],"x":[2722,2970,3001,3763,3812,3818,3846,3884,3890,3918]},{"a":3320,"l":"music_slide_enable","c":"Per voice: nonzero when the instrument has a slide rate; music_pitch_slide then moves the frequency to the target instead of jumping.","t":"byte","b":[0,0,7],"x":[2702,3113,3473]},{"a":3323,"l":"music_slide_rate_lo","c":"Per voice: slide step, low byte (instrument byte), shifted left by the octave.","t":"byte","b":[0,0,7],"x":[3116,3470,3790,3856]},{"a":3326,"l":"music_slide_rate_hi","c":"Per voice: slide step, high byte. Only ever zeroed (voice reset), so the step is the low byte shifted.","t":"byte","b":[0,0,0],"x":[3119,3784,3850]},{"a":3329,"l":"music_repeat_counter","c":"Per voice: passes left for the order-list repeat command; 0 when no repeat is in progress.","t":"byte","b":[0,0,0],"x":[3074,3166,3180,3186]},{"a":3332,"l":"music_bit_clear_masks","c":"Eight AND masks $FE $FD ... $7F that clear bit n; the driver uses entries 0-2 to take voice n out of the filter ($0DF2).","t":"byte","b":[254,253,251,247,239,223,191,127],"x":[3570]},{"a":3340,"l":"music_bit_set_masks","c":"Eight OR masks $01 ... $80 that set bit n; the driver uses entries 0-2 to route voice n through the filter ($0DA2).","t":"byte","b":[1,2,4,8,16,32,64,128],"x":[3490]},{"a":3348,"l":"music_note_freq_table","c":"SID frequency low bytes of the twelve semitones of the lowest octave, indexed 1-12 (entry 0 unused, rests never read it); the high byte is always 1 ($10C-$1FA). They are C to B tuned for the NTSC clock (within 5 cents), so on PAL every note sounds about 66 cents flat.","t":"byte","b":[0,12,28,45,62,81,102,123],"x":[2890]},{"a":3356,"t":"byte","b":[145,169,195,221,250]},{"a":3361,"l":"music_duration_table","c":"Note lengths in ticks, indexed by bits 0-3 of the length byte: 2 5 8 11 17 23 35 47 71 1 3 7 6 4 1 1. A note lasts the value plus one release tick (3, 6, 9, 12, 18, 24, 36, 48, 72 ...), except index 14, which has no release tick.","t":"byte","b":[2,5,8,11,17,23,35,47],"x":[2943]},{"a":3369,"t":"byte","b":[71,1,3,7,6,4,1,1]},{"a":3377,"l":"music_order_commands","c":"Order-list command handlers, by command byte: 0 music_cmd_stop $0C58, 1 music_cmd_play_pattern $0AC6, 2 music_cmd_jump $0C4F, 3 music_cmd_repeat $0C5E. Read at $0A7E and entered by JMP ($FD) at $0A8B.","t":"word","b":[88,12,198,10,79,12,94,12],"d":[3160,2758,3151,3166],"x":[2686]},{"a":3378,"t":"note","l":"f_0D32","c":"High byte of entry 0 of music_order_commands, named because $0A83 reads it as music_order_commands+1,Y.","note":"inside the item at $0D31","x":[2691]},{"a":3385,"l":"music_volume_mode","c":"Shadow of $D418: low nibble volume from song_volume_table, high nibble filter mode from a filtered instrument. Rewritten to the SID every frame a song plays.","t":"byte","b":[24],"x":[2484,2539,3051,3497,3504,3560]},{"a":3386,"l":"music_current_song","c":"Song the driver is playing (1-4). music_play compares $FF with it to see a new request. Not cleared when $FF is 0.","t":"byte","b":[2],"x":[2479,2511,2533]},{"a":3387,"l":"music_filter_route","c":"Shadow of $D417: low bits the voices routed through the filter, high nibble resonance from a filtered instrument.","t":"byte","b":[148],"x":[2490,3048,3487,3493,3508,3515,3554,3567,3573]},{"a":3388,"l":"music_select_instrument","c":"Load instrument A (pattern byte $80+n) on voice X from music_instrument_table: waveform into the control shadow keeping the gate bit; for a pulse waveform ($40 exactly) the pulse width, PWM source, shift and the voice LFO rate; then AD, SR, slide rate, transpose; and if the filter flag is set, route the voice through the filter and set filter mode, resonance, cutoff base and sweep (written to $D415-$D418 at once), else take the voice out of the filter.","t":"code","b":[10],"m":"asl","o":"a","x":[2871]},{"a":3389,"t":"code","b":[168],"m":"tay"},{"a":3390,"t":"code","b":[185,134,15],"m":"lda","oa":3974,"o":"music_instrument_table,y"},{"a":3393,"t":"code","b":[133,253],"m":"sta","oa":253,"o":"music_vector"},{"a":3395,"t":"code","b":[185,135,15],"m":"lda","oa":3975,"o":"music_instrument_table_hi,y"},{"a":3398,"t":"code","b":[133,254],"m":"sta","oa":254,"o":"music_vector_hi"},{"a":3400,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":3402,"t":"code","b":[189,152,12],"m":"lda","oa":3224,"o":"music_voice_control,x"},{"a":3405,"t":"code","b":[41,1],"m":"and","o":"#$01"},{"a":3407,"t":"code","b":[17,253],"m":"ora","oa":253,"o":"(music_vector),y"},{"a":3409,"t":"code","b":[157,152,12],"m":"sta","oa":3224,"o":"music_voice_control,x"},{"a":3412,"t":"code","b":[201,64],"m":"cmp","o":"#$40"},{"a":3414,"t":"code","b":[208,39],"m":"bne","oa":3455,"o":"b_0D7F"},{"a":3416,"t":"code","b":[200],"m":"iny"},{"a":3417,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3419,"t":"code","b":[157,146,12],"m":"sta","oa":3218,"o":"music_pulse_base_lo,x"},{"a":3422,"t":"code","b":[157,236,12],"m":"sta","oa":3308,"o":"music_pulse_lo,x"},{"a":3425,"t":"code","b":[200],"m":"iny"},{"a":3426,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3428,"t":"code","b":[157,149,12],"m":"sta","oa":3221,"o":"music_pulse_base_hi,x"},{"a":3431,"t":"code","b":[157,239,12],"m":"sta","oa":3311,"o":"music_pulse_hi,x"},{"a":3434,"t":"code","b":[200],"m":"iny"},{"a":3435,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3437,"t":"code","b":[48,1],"m":"bmi","oa":3440,"o":"b_0D70"},{"a":3439,"t":"code","b":[138],"m":"txa"},{"a":3440,"l":"b_0D70","t":"code","b":[157,230,12],"m":"sta","oa":3302,"o":"music_pwm_source,x","x":[3437]},{"a":3443,"t":"code","b":[200],"m":"iny"},{"a":3444,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3446,"t":"code","b":[157,233,12],"m":"sta","oa":3305,"o":"music_pwm_shift,x"},{"a":3449,"t":"code","b":[200],"m":"iny"},{"a":3450,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3452,"t":"code","b":[157,224,12],"m":"sta","oa":3296,"o":"music_lfo_rate,x"},{"a":3455,"l":"b_0D7F","t":"code","b":[200],"m":"iny","x":[3414]},{"a":3456,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3458,"t":"code","b":[157,155,12],"m":"sta","oa":3227,"o":"music_voice_ad,x"},{"a":3461,"t":"code","b":[200],"m":"iny"},{"a":3462,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3464,"t":"code","b":[157,158,12],"m":"sta","oa":3230,"o":"music_voice_sr,x"},{"a":3467,"t":"code","b":[200],"m":"iny"},{"a":3468,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3470,"t":"code","b":[157,251,12],"m":"sta","oa":3323,"o":"music_slide_rate_lo,x"},{"a":3473,"t":"code","b":[157,248,12],"m":"sta","oa":3320,"o":"music_slide_enable,x"},{"a":3476,"t":"code","b":[200],"m":"iny"},{"a":3477,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3479,"t":"code","b":[157,191,12],"m":"sta","oa":3263,"o":"music_transpose,x"},{"a":3482,"t":"code","b":[200],"m":"iny"},{"a":3483,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3485,"t":"code","b":[240,80],"m":"beq","oa":3567,"o":"b_0DEF"},{"a":3487,"t":"code","b":[173,59,13],"m":"lda","oa":3387,"o":"music_filter_route"},{"a":3490,"t":"code","b":[29,12,13],"m":"ora","oa":3340,"o":"music_bit_set_masks,x"},{"a":3493,"t":"code","b":[141,59,13],"m":"sta","oa":3387,"o":"music_filter_route"},{"a":3496,"t":"code","b":[200],"m":"iny"},{"a":3497,"t":"code","b":[173,57,13],"m":"lda","oa":3385,"o":"music_volume_mode"},{"a":3500,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":3502,"t":"code","b":[17,253],"m":"ora","oa":253,"o":"(music_vector),y"},{"a":3504,"t":"code","b":[141,57,13],"m":"sta","oa":3385,"o":"music_volume_mode"},{"a":3507,"t":"code","b":[200],"m":"iny"},{"a":3508,"t":"code","b":[173,59,13],"m":"lda","oa":3387,"o":"music_filter_route"},{"a":3511,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":3513,"t":"code","b":[17,253],"m":"ora","oa":253,"o":"(music_vector),y"},{"a":3515,"t":"code","b":[141,59,13],"m":"sta","oa":3387,"o":"music_filter_route"},{"a":3518,"t":"code","b":[200],"m":"iny"},{"a":3519,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3521,"t":"code","b":[141,194,12],"m":"sta","oa":3266,"o":"music_filter_cutoff_lo"},{"a":3524,"t":"code","b":[141,21,212],"m":"sta","o":"sid_filter_cutoff_lo"},{"a":3527,"t":"code","b":[200],"m":"iny"},{"a":3528,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3530,"t":"code","b":[141,195,12],"m":"sta","oa":3267,"o":"music_filter_cutoff_hi"},{"a":3533,"t":"code","b":[141,22,212],"m":"sta","o":"sid_filter_cutoff_hi"},{"a":3536,"t":"code","b":[200],"m":"iny"},{"a":3537,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3539,"t":"code","b":[141,196,12],"m":"sta","oa":3268,"o":"music_filter_mod_source"},{"a":3542,"t":"code","b":[200],"m":"iny"},{"a":3543,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3545,"t":"code","b":[141,197,12],"m":"sta","oa":3269,"o":"music_filter_mod_shift"},{"a":3548,"t":"code","b":[200],"m":"iny"},{"a":3549,"t":"code","b":[177,253],"m":"lda","oa":253,"o":"(music_vector),y"},{"a":3551,"t":"code","b":[141,198,12],"m":"sta","oa":3270,"o":"music_filter_mod_direction"},{"a":3554,"t":"code","b":[173,59,13],"m":"lda","oa":3387,"o":"music_filter_route"},{"a":3557,"t":"code","b":[141,23,212],"m":"sta","o":"sid_filter_resonance"},{"a":3560,"t":"code","b":[173,57,13],"m":"lda","oa":3385,"o":"music_volume_mode"},{"a":3563,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":3566,"t":"code","b":[96],"m":"rts"},{"a":3567,"l":"b_0DEF","t":"code","b":[173,59,13],"m":"lda","oa":3387,"o":"music_filter_route","x":[3485]},{"a":3570,"t":"code","b":[61,4,13],"m":"and","oa":3332,"o":"music_bit_clear_masks,x"},{"a":3573,"t":"code","b":[141,59,13],"m":"sta","oa":3387,"o":"music_filter_route"},{"a":3576,"t":"code","b":[141,23,212],"m":"sta","o":"sid_filter_resonance"},{"a":3579,"t":"code","b":[96],"m":"rts"},{"a":3580,"l":"music_lfo_update","c":"Once per frame: sample the voice 3 envelope ($D41C) and oscillator ($D41B) as modulation sources 3 and 4, then move each of the three triangle LFOs by its rate, up to $FF and down to 0, reversing at each end.","t":"code","b":[173,28,212],"m":"lda","o":"sid_v3_envelope","x":[2728]},{"a":3583,"t":"code","b":[141,222,12],"m":"sta","oa":3294,"o":"music_voice3_env_sample"},{"a":3586,"t":"code","b":[173,27,212],"m":"lda","o":"sid_v3_oscillator"},{"a":3589,"t":"code","b":[141,223,12],"m":"sta","oa":3295,"o":"music_voice3_osc_sample"},{"a":3592,"t":"code","b":[160,2],"m":"ldy","o":"#$02"},{"a":3594,"l":"b_0E0A","t":"code","b":[185,227,12],"m":"lda","oa":3299,"o":"music_lfo_direction,y","x":[3643]},{"a":3597,"t":"code","b":[208,23],"m":"bne","oa":3622,"o":"b_0E26"},{"a":3599,"t":"code","b":[185,219,12],"m":"lda","oa":3291,"o":"music_lfo_value,y"},{"a":3602,"t":"code","b":[24],"m":"clc"},{"a":3603,"t":"code","b":[121,224,12],"m":"adc","oa":3296,"o":"music_lfo_rate,y"},{"a":3606,"t":"code","b":[153,219,12],"m":"sta","oa":3291,"o":"music_lfo_value,y"},{"a":3609,"t":"code","b":[144,31],"m":"bcc","oa":3642,"o":"b_0E3A"},{"a":3611,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":3613,"t":"code","b":[153,219,12],"m":"sta","oa":3291,"o":"music_lfo_value,y"},{"a":3616,"t":"code","b":[153,227,12],"m":"sta","oa":3299,"o":"music_lfo_direction,y"},{"a":3619,"t":"code","b":[76,58,14],"m":"jmp","oa":3642,"o":"b_0E3A"},{"a":3622,"l":"b_0E26","t":"code","b":[185,219,12],"m":"lda","oa":3291,"o":"music_lfo_value,y","x":[3597]},{"a":3625,"t":"code","b":[56],"m":"sec"},{"a":3626,"t":"code","b":[249,224,12],"m":"sbc","oa":3296,"o":"music_lfo_rate,y"},{"a":3629,"t":"code","b":[153,219,12],"m":"sta","oa":3291,"o":"music_lfo_value,y"},{"a":3632,"t":"code","b":[176,8],"m":"bcs","oa":3642,"o":"b_0E3A"},{"a":3634,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3636,"t":"code","b":[153,219,12],"m":"sta","oa":3291,"o":"music_lfo_value,y"},{"a":3639,"t":"code","b":[153,227,12],"m":"sta","oa":3299,"o":"music_lfo_direction,y"},{"a":3642,"l":"b_0E3A","t":"code","b":[136],"m":"dey","x":[3609,3619,3632]},{"a":3643,"t":"code","b":[16,205],"m":"bpl","oa":3594,"o":"b_0E0A"},{"a":3645,"t":"code","b":[96],"m":"rts"},{"a":3646,"l":"music_pwm_update","c":"Once per frame, each voice with a PWM source: pulse width = base + (source value shifted left by the PWM shift), 16 bits.","t":"code","b":[162,2],"m":"ldx","o":"#$02","x":[2731]},{"a":3648,"l":"b_0E40","t":"code","b":[188,230,12],"m":"ldy","oa":3302,"o":"music_pwm_source,x","x":[3690]},{"a":3651,"t":"code","b":[48,36],"m":"bmi","oa":3689,"o":"b_0E69"},{"a":3653,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3655,"t":"code","b":[141,214,12],"m":"sta","oa":3286,"o":"music_scratch_hi"},{"a":3658,"t":"code","b":[185,219,12],"m":"lda","oa":3291,"o":"music_lfo_value,y"},{"a":3661,"t":"code","b":[188,233,12],"m":"ldy","oa":3305,"o":"music_pwm_shift,x"},{"a":3664,"t":"code","b":[240,7],"m":"beq","oa":3673,"o":"b_0E59"},{"a":3666,"l":"b_0E52","t":"code","b":[10],"m":"asl","o":"a","x":[3671]},{"a":3667,"t":"code","b":[46,214,12],"m":"rol","oa":3286,"o":"music_scratch_hi"},{"a":3670,"t":"code","b":[136],"m":"dey"},{"a":3671,"t":"code","b":[208,249],"m":"bne","oa":3666,"o":"b_0E52"},{"a":3673,"l":"b_0E59","t":"code","b":[24],"m":"clc","x":[3664]},{"a":3674,"t":"code","b":[125,146,12],"m":"adc","oa":3218,"o":"music_pulse_base_lo,x"},{"a":3677,"t":"code","b":[157,236,12],"m":"sta","oa":3308,"o":"music_pulse_lo,x"},{"a":3680,"t":"code","b":[173,214,12],"m":"lda","oa":3286,"o":"music_scratch_hi"},{"a":3683,"t":"code","b":[125,149,12],"m":"adc","oa":3221,"o":"music_pulse_base_hi,x"},{"a":3686,"t":"code","b":[157,239,12],"m":"sta","oa":3311,"o":"music_pulse_hi,x"},{"a":3689,"l":"b_0E69","t":"code","b":[202],"m":"dex","x":[3651]},{"a":3690,"t":"code","b":[16,212],"m":"bpl","oa":3648,"o":"b_0E40"},{"a":3692,"t":"code","b":[96],"m":"rts"},{"a":3693,"l":"music_filter_sweep","c":"Once per frame unless the sweep is off (bit 7 of music_filter_mod_source): cutoff = base plus or minus the source value shifted left by music_filter_mod_shift, written to $D415/$D416.","t":"code","b":[172,196,12],"m":"ldy","oa":3268,"o":"music_filter_mod_source","x":[2734]},{"a":3696,"t":"code","b":[48,64],"m":"bmi","oa":3762,"o":"r_0EB2"},{"a":3698,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3700,"t":"code","b":[141,214,12],"m":"sta","oa":3286,"o":"music_scratch_hi"},{"a":3703,"t":"code","b":[185,219,12],"m":"lda","oa":3291,"o":"music_lfo_value,y"},{"a":3706,"t":"code","b":[172,197,12],"m":"ldy","oa":3269,"o":"music_filter_mod_shift"},{"a":3709,"t":"code","b":[240,7],"m":"beq","oa":3718,"o":"b_0E86"},{"a":3711,"l":"b_0E7F","t":"code","b":[10],"m":"asl","o":"a","x":[3716]},{"a":3712,"t":"code","b":[46,214,12],"m":"rol","oa":3286,"o":"music_scratch_hi"},{"a":3715,"t":"code","b":[136],"m":"dey"},{"a":3716,"t":"code","b":[208,249],"m":"bne","oa":3711,"o":"b_0E7F"},{"a":3718,"l":"b_0E86","t":"code","b":[133,253],"m":"sta","oa":253,"o":"music_vector","x":[3709]},{"a":3720,"t":"code","b":[173,198,12],"m":"lda","oa":3270,"o":"music_filter_mod_direction"},{"a":3723,"t":"code","b":[208,19],"m":"bne","oa":3744,"o":"b_0EA0"},{"a":3725,"t":"code","b":[165,253],"m":"lda","oa":253,"o":"music_vector"},{"a":3727,"t":"code","b":[24],"m":"clc"},{"a":3728,"t":"code","b":[109,194,12],"m":"adc","oa":3266,"o":"music_filter_cutoff_lo"},{"a":3731,"t":"code","b":[141,21,212],"m":"sta","o":"sid_filter_cutoff_lo"},{"a":3734,"t":"code","b":[173,214,12],"m":"lda","oa":3286,"o":"music_scratch_hi"},{"a":3737,"t":"code","b":[109,195,12],"m":"adc","oa":3267,"o":"music_filter_cutoff_hi"},{"a":3740,"t":"code","b":[141,22,212],"m":"sta","o":"sid_filter_cutoff_hi"},{"a":3743,"t":"code","b":[96],"m":"rts"},{"a":3744,"l":"b_0EA0","t":"code","b":[173,194,12],"m":"lda","oa":3266,"o":"music_filter_cutoff_lo","x":[3723]},{"a":3747,"t":"code","b":[56],"m":"sec"},{"a":3748,"t":"code","b":[229,253],"m":"sbc","oa":253,"o":"music_vector"},{"a":3750,"t":"code","b":[141,21,212],"m":"sta","o":"sid_filter_cutoff_lo"},{"a":3753,"t":"code","b":[173,195,12],"m":"lda","oa":3267,"o":"music_filter_cutoff_hi"},{"a":3756,"t":"code","b":[237,214,12],"m":"sbc","oa":3286,"o":"music_scratch_hi"},{"a":3759,"t":"code","b":[141,22,212],"m":"sta","o":"sid_filter_cutoff_hi"},{"a":3762,"l":"r_0EB2","t":"code","b":[96],"m":"rts","x":[3696]},{"a":3763,"l":"music_pitch_slide","c":"Move the SID frequency of voice X toward its target by the slide rate shifted left by the note octave, upward ($0EC8) or downward ($0F0A), stopping exactly on the target.","t":"code","b":[189,245,12],"m":"lda","oa":3317,"o":"music_freq_hi,x","x":[2707]},{"a":3766,"t":"code","b":[221,143,12],"m":"cmp","oa":3215,"o":"music_target_freq_hi,x"},{"a":3769,"t":"code","b":[144,13],"m":"bcc","oa":3784,"o":"b_0EC8"},{"a":3771,"t":"code","b":[208,77],"m":"bne","oa":3850,"o":"b_0F0A"},{"a":3773,"t":"code","b":[189,242,12],"m":"lda","oa":3314,"o":"music_freq_lo,x"},{"a":3776,"t":"code","b":[221,140,12],"m":"cmp","oa":3212,"o":"music_target_freq_lo,x"},{"a":3779,"t":"code","b":[144,3],"m":"bcc","oa":3784,"o":"b_0EC8"},{"a":3781,"t":"code","b":[208,67],"m":"bne","oa":3850,"o":"b_0F0A"},{"a":3783,"t":"code","b":[96],"m":"rts"},{"a":3784,"l":"b_0EC8","t":"code","b":[189,254,12],"m":"lda","oa":3326,"o":"music_slide_rate_hi,x","x":[3769,3779]},{"a":3787,"t":"code","b":[141,214,12],"m":"sta","oa":3286,"o":"music_scratch_hi"},{"a":3790,"t":"code","b":[189,251,12],"m":"lda","oa":3323,"o":"music_slide_rate_lo,x"},{"a":3793,"t":"code","b":[188,202,12],"m":"ldy","oa":3274,"o":"music_note_octave,x"},{"a":3796,"t":"code","b":[240,7],"m":"beq","oa":3805,"o":"b_0EDD"},{"a":3798,"l":"b_0ED6","t":"code","b":[10],"m":"asl","o":"a","x":[3803]},{"a":3799,"t":"code","b":[46,214,12],"m":"rol","oa":3286,"o":"music_scratch_hi"},{"a":3802,"t":"code","b":[136],"m":"dey"},{"a":3803,"t":"code","b":[208,249],"m":"bne","oa":3798,"o":"b_0ED6"},{"a":3805,"l":"b_0EDD","t":"code","b":[24],"m":"clc","x":[3796]},{"a":3806,"t":"code","b":[125,242,12],"m":"adc","oa":3314,"o":"music_freq_lo,x"},{"a":3809,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":3812,"t":"code","b":[189,245,12],"m":"lda","oa":3317,"o":"music_freq_hi,x"},{"a":3815,"t":"code","b":[109,214,12],"m":"adc","oa":3286,"o":"music_scratch_hi"},{"a":3818,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":3821,"t":"code","b":[221,143,12],"m":"cmp","oa":3215,"o":"music_target_freq_hi,x"},{"a":3824,"t":"code","b":[240,3],"m":"beq","oa":3829,"o":"b_0EF5"},{"a":3826,"t":"code","b":[176,9],"m":"bcs","oa":3837,"o":"b_0EFD"},{"a":3828,"l":"r_0EF4","t":"code","b":[96],"m":"rts","x":[3835]},{"a":3829,"l":"b_0EF5","t":"code","b":[189,242,12],"m":"lda","oa":3314,"o":"music_freq_lo,x","x":[3824]},{"a":3832,"t":"code","b":[221,140,12],"m":"cmp","oa":3212,"o":"music_target_freq_lo,x"},{"a":3835,"t":"code","b":[144,247],"m":"bcc","oa":3828,"o":"r_0EF4"},{"a":3837,"l":"b_0EFD","t":"code","b":[189,140,12],"m":"lda","oa":3212,"o":"music_target_freq_lo,x","x":[3826]},{"a":3840,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":3843,"t":"code","b":[189,143,12],"m":"lda","oa":3215,"o":"music_target_freq_hi,x"},{"a":3846,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":3849,"t":"code","b":[96],"m":"rts"},{"a":3850,"l":"b_0F0A","t":"code","b":[189,254,12],"m":"lda","oa":3326,"o":"music_slide_rate_hi,x","x":[3771,3781]},{"a":3853,"t":"code","b":[141,214,12],"m":"sta","oa":3286,"o":"music_scratch_hi"},{"a":3856,"t":"code","b":[189,251,12],"m":"lda","oa":3323,"o":"music_slide_rate_lo,x"},{"a":3859,"t":"code","b":[188,202,12],"m":"ldy","oa":3274,"o":"music_note_octave,x"},{"a":3862,"t":"code","b":[240,7],"m":"beq","oa":3871,"o":"b_0F1F"},{"a":3864,"l":"b_0F18","t":"code","b":[10],"m":"asl","o":"a","x":[3869]},{"a":3865,"t":"code","b":[46,214,12],"m":"rol","oa":3286,"o":"music_scratch_hi"},{"a":3868,"t":"code","b":[136],"m":"dey"},{"a":3869,"t":"code","b":[208,249],"m":"bne","oa":3864,"o":"b_0F18"},{"a":3871,"l":"b_0F1F","t":"code","b":[141,215,12],"m":"sta","oa":3287,"o":"music_scratch_lo","x":[3862]},{"a":3874,"t":"code","b":[189,242,12],"m":"lda","oa":3314,"o":"music_freq_lo,x"},{"a":3877,"t":"code","b":[56],"m":"sec"},{"a":3878,"t":"code","b":[237,215,12],"m":"sbc","oa":3287,"o":"music_scratch_lo"},{"a":3881,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":3884,"t":"code","b":[189,245,12],"m":"lda","oa":3317,"o":"music_freq_hi,x"},{"a":3887,"t":"code","b":[237,214,12],"m":"sbc","oa":3286,"o":"music_scratch_hi"},{"a":3890,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":3893,"t":"code","b":[221,143,12],"m":"cmp","oa":3215,"o":"music_target_freq_hi,x"},{"a":3896,"t":"code","b":[144,11],"m":"bcc","oa":3909,"o":"b_0F45"},{"a":3898,"t":"code","b":[240,1],"m":"beq","oa":3901,"o":"b_0F3D"},{"a":3900,"l":"r_0F3C","t":"code","b":[96],"m":"rts","x":[3907]},{"a":3901,"l":"b_0F3D","t":"code","b":[189,242,12],"m":"lda","oa":3314,"o":"music_freq_lo,x","x":[3898]},{"a":3904,"t":"code","b":[221,140,12],"m":"cmp","oa":3212,"o":"music_target_freq_lo,x"},{"a":3907,"t":"code","b":[176,247],"m":"bcs","oa":3900,"o":"r_0F3C"},{"a":3909,"l":"b_0F45","t":"code","b":[189,140,12],"m":"lda","oa":3212,"o":"music_target_freq_lo,x","x":[3896]},{"a":3912,"t":"code","b":[157,242,12],"m":"sta","oa":3314,"o":"music_freq_lo,x"},{"a":3915,"t":"code","b":[189,143,12],"m":"lda","oa":3215,"o":"music_target_freq_hi,x"},{"a":3918,"t":"code","b":[157,245,12],"m":"sta","oa":3317,"o":"music_freq_hi,x"},{"a":3921,"t":"code","b":[96],"m":"rts"},{"a":3922,"l":"music_song_base","c":"Base address of the current song patterns, copied from song_base_table when the song starts ($0A09); added to every pattern offset ($0AD4).","t":"word","b":[3,6],"d":[1539],"x":[2569,2772]},{"a":3923,"t":"note","l":"a_0F53","c":"High byte of music_song_base, written at $0A0F and added at $0ADF.","note":"inside the item at $0F52","x":[2575,2783]},{"a":3924,"l":"song_base_table","c":"Five words by song number 0-4: the address its pattern offsets are counted from: song 1 $0400, 2 $0603, 3 $0740, 4 $08D6 (song 0 is silence, entry $0000).","t":"word","b":[0,0,0,4,3,6,64,7],"d":[0,1024,1539,1856],"x":[2566]},{"a":3925,"t":"note","l":"song_base_table_hi","c":"High bytes of song_base_table, read as $0F55,Y at $0A0C.","note":"inside the item at $0F54","x":[2572]},{"a":3932,"t":"word","b":[214,8],"d":[2262]},{"a":3934,"l":"song_offsets_table","c":"Five words by song: the address of each song pattern offset table, $0957 $0973 $098B $099D; written into the operands at $0AD1/$0AD2 (and +1 at $0ADD/$0ADE) at song start.","t":"word","b":[0,0,87,9,115,9,139,9],"d":[0,2391,2419,2443],"x":[2578]},{"a":3935,"t":"note","l":"song_offsets_table_hi","c":"High bytes of song_offsets_table, read as $0F5F,Y at $0A1B.","note":"inside the item at $0F5E","x":[2587]},{"a":3942,"t":"word","b":[157,9],"d":[2461]},{"a":3944,"l":"song_orders_v1","c":"Five words by song: voice 1 order list ($0FC2 $1007 $1031 $1055; song 0 $FFFF, never read).","t":"word","b":[255,255,194,15,7,16,49,16],"d":[65535,4034,4103,4145],"x":[2604]},{"a":3945,"t":"note","l":"song_orders_v1_hi","c":"High bytes of song_orders_v1, read as $0F69,Y at $0A32.","note":"inside the item at $0F68","x":[2610]},{"a":3952,"t":"word","b":[85,16],"d":[4181]},{"a":3954,"l":"song_orders_v2","c":"Five words by song: voice 2 order list ($0FD7 $1011 $1035 $105A).","t":"word","b":[255,255,215,15,17,16,53,16],"d":[65535,4055,4113,4149],"x":[2616]},{"a":3955,"t":"note","l":"song_orders_v2_hi","c":"High bytes of song_orders_v2, read at $0A3E.","note":"inside the item at $0F72","x":[2622]},{"a":3962,"t":"word","b":[90,16],"d":[4186]},{"a":3964,"l":"song_orders_v3","c":"Five words by song: voice 3 order list ($0FF4 $101F $103B $105D).","t":"word","b":[255,255,244,15,31,16,59,16],"d":[65535,4084,4127,4155],"x":[2628]},{"a":3965,"t":"note","l":"song_orders_v3_hi","c":"High bytes of song_orders_v3, read at $0A4A.","note":"inside the item at $0F7C","x":[2634]},{"a":3972,"t":"word","b":[93,16],"d":[4189]},{"a":3974,"l":"music_instrument_table","c":"25 words: the address of each instrument record, $1060-$1147, selected by pattern bytes $80-$98. Record: waveform; if $40 (pulse) pulse lo, hi, PWM source, PWM shift, LFO rate; then AD, SR, slide rate, transpose, filter flag; if the flag is set, filter mode, resonance, cutoff lo, hi, sweep source, shift, direction.","t":"word","b":[96,16,107,16,118,16,124,16],"d":[4192,4203,4214,4220],"x":[3390]},{"a":3975,"t":"note","l":"music_instrument_table_hi","c":"High bytes of music_instrument_table, read as $0F87,Y at $0D43.","note":"inside the item at $0F86","x":[3395]},{"a":3982,"t":"word","b":[135,16,141,16,152,16,163,16],"d":[4231,4237,4248,4259]},{"a":3990,"t":"word","b":[169,16,175,16,186,16,199,16],"d":[4265,4271,4282,4295]},{"a":3998,"t":"word","b":[212,16,230,16,243,16,249,16],"d":[4308,4326,4339,4345]},{"a":4006,"t":"word","b":[255,16,10,17,16,17,34,17],"d":[4351,4362,4368,4386]},{"a":4014,"t":"word","b":[40,17,46,17,59,17,65,17],"d":[4392,4398,4411,4417]},{"a":4022,"t":"word","b":[71,17],"d":[4423]},{"a":4024,"l":"song_volume_table","c":"Master volume by song 0-4 ($02 unused, $0A $08 $0A $0C), the low nibble of $D418 ($09E8).","t":"byte","b":[2,10,8,10,12],"x":[2536]},{"a":4029,"l":"song_tempo_table","c":"Frames per sequencer tick by song 0-4 (0 unused, 2 2 1 1): songs 1 and 2 tick at 25 Hz on PAL, songs 3 and 4 at 50 Hz.","t":"byte","b":[0,2,2,1,1],"x":[2545]},{"a":4034,"l":"song1_orders_v1","c":"Song 1 voice 1 order list: patterns 0 0 1 1 1 1 0, repeat (back to index 19 once), pattern 2, jump to 0. Commands: 0 stop, 1 n play pattern n, 2 i jump to index i, 3 i c repeat from index i c more times.","t":"byte","b":[1,0,1,0,1,1,1,1]},{"a":4042,"t":"byte","b":[1,1,1,1,1,0,3,19]},{"a":4050,"t":"byte","b":[1,1,2,2,0]},{"a":4055,"l":"song1_orders_v2","c":"Song 1 voice 2 order list: patterns 3 4 5 4 6 7 7 7 7 4 6, repeat (to index 27 once), pattern 8, jump to index 2.","t":"byte","b":[1,3,1,4,1,5,1,4]},{"a":4063,"t":"byte","b":[1,6,1,7,1,7,1,7]},{"a":4071,"t":"byte","b":[1,7,1,4,1,6,3,27]},{"a":4079,"t":"byte","b":[1,1,8,2,2]},{"a":4084,"l":"song1_orders_v3","c":"Song 1 voice 3 order list (runs on to $1006): patterns 9 10 11 12 12 11, repeat (to index 17 once), pattern 13, jump to index 2.","t":"byte","b":[1,9,1,10,1,11,1,12]},{"a":4092,"t":"byte","b":[1,12,1,11]},{"a":4096,"l":"song1_voice3_order_tail","c":"Music: the end of song 1's voice-3 order list, which starts at $0FF4 (pointer at $0F7E in the voice-3 list table $0F7C). Order-list commands, read by the player at $0A77 through the dispatch words at $0D31: 00 stop the voice, 01 n play pattern n, 02 i go to index i, 03 i c go back to index i c times. Here: ... 03 11 01 (repeat from position 17 once), 01 0D (pattern $0D), 02 02 (loop to position 2).","t":"byte","b":[3,17,1,1,13,2,2]},{"a":4103,"l":"song2_voice1_order","c":"Music: song 2's voice-1 order list (pointer at $0F6C): patterns 0, 0, 0, 1, then 02 00 (loop to the start). Song 2 is the one set in $FF by $1BE5 when a one-player game begins.","t":"byte","b":[1,0,1,0,1,0,1,1]},{"a":4111,"t":"byte","b":[2,0]},{"a":4113,"l":"song2_voice2_order","c":"Music: song 2's voice-2 order list (pointer at $0F76): patterns 7, 8, $0A, 9, $0B, $0B, then 02 00 (loop to the start).","t":"byte","b":[1,7,1,8,1,10,1,9]},{"a":4121,"t":"byte","b":[1,11,1,11,2,0]},{"a":4127,"l":"song2_voice3_order","c":"Music: song 2's voice-3 order list (pointer at $0F80): patterns 2, 2, 3, 2, 4, 5, 5, 6, then 02 00 (loop to the start).","t":"byte","b":[1,2,1,2,1,3,1,2]},{"a":4135,"t":"byte","b":[1,4,1,5,1,5,1,6]},{"a":4143,"t":"byte","b":[2,0]},{"a":4145,"l":"song3_voice1_order","c":"Music: song 3's voice-1 order list (pointer at $0F6E): pattern 0 repeated forever (01 00 02 00). Song 3 is set in $FF at $1B2F, the two-player game's start.","t":"byte","b":[1,0,2,0]},{"a":4149,"l":"song3_voice2_order","c":"Music: song 3's voice-2 order list (pointer at $0F78): patterns 1, 2, then loop to the start.","t":"byte","b":[1,1,1,2,2,0]},{"a":4155,"l":"song3_voice3_order","c":"Music: song 3's voice-3 order list (pointer at $0F82): patterns 3 4 3 5 3 4 3 6 7 8 3 6, then loop to the start.","t":"byte","b":[1,3,1,4,1,3,1,5]},{"a":4163,"t":"byte","b":[1,3,1,4,1,3,1,6]},{"a":4171,"t":"byte","b":[1,7,1,8,1,3,1,6]},{"a":4179,"t":"byte","b":[2,0]},{"a":4181,"l":"song4_order_lists","c":"Music: song 4's three order lists, played once and stopped (00): voice 1 at $1055 (patterns 0, 1), voice 2 at $105A (pattern 2), voice 3 at $105D (pattern 3); pointers at $0F70, $0F7A, $0F84. Song 4 is set in $FF by hiscore_type_name ($1764) while a name is typed.","t":"byte","b":[1,0,1,1,0,1,2,0]},{"a":4189,"t":"byte","b":[1,3,0]},{"a":4192,"l":"music_instr_00","c":"Music instrument records start here: 25 records, $1060-$1158, each pointed to by the word table at $0F86 (instrument i at $0F86+2i), chosen by a pattern byte with bit 7 set and loaded at $0D3C. Layout: waveform (SID control: $10 triangle, $20 sawtooth, $40 pulse, $80 noise); only if it is exactly $40, five more (pulse width lo, hi, then PWM source, PWM shift, LFO rate per the music-driver notes); then attack/decay, sustain/release, slide rate, transpose (added to the note's octave shift at $0B5D), filter flag; a non-zero flag adds seven (filter mode, resonance, cutoff lo, cutoff hi, sweep source, sweep shift, sweep direction). Lengths 6, 11, 13 or 18 bytes. Instrument 0, $1060-$106A (11 bytes): pulse; pulse width $800; PWM bytes 80 00 00; attack/decay $05, sustain/release $37; slide $00, transpose $00; no filter.","t":"byte","b":[64,0,8,128,0,0,5,55]},{"a":4200,"t":"byte","b":[0,0,0]},{"a":4203,"l":"music_instr_01","c":"Instrument 1, $106B-$1075 (11 bytes): pulse; pulse width $600; PWM bytes 00 03 2A; attack/decay $08, sustain/release $77; slide $00, transpose $00; no filter.","t":"byte","b":[64,0,6,0,3,42,8,119]},{"a":4211,"t":"byte","b":[0,0,0]},{"a":4214,"l":"music_instr_02","c":"Instrument 2, $1076-$107B (6 bytes): triangle; attack/decay $87, sustain/release $36; slide $00, transpose $00; no filter.","t":"byte","b":[16,135,54,0,0,0]},{"a":4220,"l":"music_instr_03","c":"Instrument 3, $107C-$1086 (11 bytes): pulse; pulse width $400; PWM bytes 01 01 07; attack/decay $85, sustain/release $68; slide $00, transpose $00; no filter.","t":"byte","b":[64,0,4,1,1,7,133,104]},{"a":4228,"t":"byte","b":[0,0,0]},{"a":4231,"l":"music_instr_04","c":"Instrument 4, $1087-$108C (6 bytes): triangle; attack/decay $68, sustain/release $36; slide $00, transpose $00; no filter.","t":"byte","b":[16,104,54,0,0,0]},{"a":4237,"l":"music_instr_05","c":"Instrument 5, $108D-$1097 (11 bytes): pulse; pulse width $300; PWM bytes 01 01 00; attack/decay $65, sustain/release $B8; slide $00, transpose $FF; no filter.","t":"byte","b":[64,0,3,1,1,0,101,184]},{"a":4245,"t":"byte","b":[0,255,0]},{"a":4248,"l":"music_instr_06","c":"Instrument 6, $1098-$10A2 (11 bytes): pulse; pulse width $1C8; PWM bytes 80 00 00; attack/decay $03, sustain/release $1A; slide $00, transpose $00; no filter.","t":"byte","b":[64,200,1,128,0,0,3,26]},{"a":4256,"t":"byte","b":[0,0,0]},{"a":4259,"l":"music_instr_07","c":"Instrument 7, $10A3-$10A8 (6 bytes): sawtooth; attack/decay $47, sustain/release $56; slide $0D, transpose $00; no filter.","t":"byte","b":[32,71,86,13,0,0]},{"a":4265,"l":"music_instr_08","c":"Instrument 8, $10A9-$10AE (6 bytes): triangle; attack/decay $AD, sustain/release $06; slide $00, transpose $00; no filter.","t":"byte","b":[16,173,6,0,0,0]},{"a":4271,"l":"music_instr_09","c":"Instrument 9, $10AF-$10B9 (11 bytes): pulse; pulse width $400; PWM bytes 02 01 07; attack/decay $85, sustain/release $68; slide $00, transpose $00; no filter.","t":"byte","b":[64,0,4,2,1,7,133,104]},{"a":4279,"t":"byte","b":[0,0,0]},{"a":4282,"l":"music_instr_10","c":"Instrument 10, $10BA-$10C6 (13 bytes): noise; attack/decay $09, sustain/release $0A; slide $00, transpose $00; filter on: mode $10, resonance $F0, cutoff $00/$8B, sweep 80 00 00.","t":"byte","b":[128,9,10,0,0,1,16,240]},{"a":4290,"t":"byte","b":[0,139,128,0,0]},{"a":4295,"l":"music_instr_11","c":"Instrument 11, $10C7-$10D3 (13 bytes): noise; attack/decay $09, sustain/release $0A; slide $00, transpose $01; filter on: mode $30, resonance $F0, cutoff $00/$5D, sweep 80 00 00.","t":"byte","b":[128,9,10,0,1,1,48,240]},{"a":4303,"t":"byte","b":[0,93,128,0,0]},{"a":4308,"l":"music_instr_12","c":"Instrument 12, $10D4-$10E5 (18 bytes): pulse; pulse width $700; PWM bytes 02 02 0C; attack/decay $47, sustain/release $B6; slide $05, transpose $00; filter on: mode $10, resonance $F0, cutoff $00/$46, sweep 80 00 00.","t":"byte","b":[64,0,7,2,2,12,71,182]},{"a":4316,"t":"byte","b":[5,0,1,16,240,0,70,128]},{"a":4324,"t":"byte","b":[0,0]},{"a":4326,"l":"music_instr_13","c":"Instrument 13, $10E6-$10F2 (13 bytes): sawtooth; attack/decay $0C, sustain/release $06; slide $00, transpose $00; filter on: mode $10, resonance $F0, cutoff $00/$4D, sweep 80 00 00.","t":"byte","b":[32,12,6,0,0,1,16,240]},{"a":4334,"t":"byte","b":[0,77,128,0,0]},{"a":4339,"l":"music_instr_14","c":"Instrument 14, $10F3-$10F8 (6 bytes): noise; attack/decay $08, sustain/release $00; slide $00, transpose $00; no filter.","t":"byte","b":[128,8,0,0,0,0]},{"a":4345,"l":"music_instr_15","c":"Instrument 15, $10F9-$10FE (6 bytes): noise; attack/decay $38, sustain/release $15; slide $00, transpose $00; no filter.","t":"byte","b":[128,56,21,0,0,0]},{"a":4351,"l":"music_instr_16","c":"Instrument 16, $10FF-$1109 (11 bytes): pulse; pulse width $800; PWM bytes 80 00 00; attack/decay $06, sustain/release $04; slide $00, transpose $02; no filter.","t":"byte","b":[64,0,8,128,0,0,6,4]},{"a":4359,"t":"byte","b":[0,2,0]},{"a":4362,"l":"music_instr_17","c":"Instrument 17, $110A-$110F (6 bytes): triangle; attack/decay $04, sustain/release $04; slide $00, transpose $02; no filter.","t":"byte","b":[16,4,4,0,2,0]},{"a":4368,"l":"music_instr_18","c":"Instrument 18, $1110-$1121 (18 bytes): pulse; pulse width $800; PWM bytes 02 02 29; attack/decay $8E, sustain/release $24; slide $0E, transpose $00; filter on: mode $10, resonance $F0, cutoff $00/$5A, sweep 03 02 00.","t":"byte","b":[64,0,8,2,2,41,142,36]},{"a":4376,"t":"byte","b":[14,0,1,16,240,0,90,3]},{"a":4384,"t":"byte","b":[2,0]},{"a":4386,"l":"music_instr_19","c":"Instrument 19, $1122-$1127 (6 bytes): triangle; attack/decay $07, sustain/release $00; slide $00, transpose $01; no filter.","t":"byte","b":[16,7,0,0,1,0]},{"a":4392,"l":"music_instr_20","c":"Instrument 20, $1128-$112D (6 bytes): triangle; attack/decay $08, sustain/release $00; slide $00, transpose $00; no filter.","t":"byte","b":[16,8,0,0,0,0]},{"a":4398,"l":"music_instr_21","c":"Instrument 21, $112E-$113A (13 bytes): sawtooth; attack/decay $0A, sustain/release $08; slide $00, transpose $00; filter on: mode $10, resonance $E0, cutoff $00/$65, sweep 03 03 01.","t":"byte","b":[32,10,8,0,0,1,16,224]},{"a":4406,"t":"byte","b":[0,101,3,3,1]},{"a":4411,"l":"music_instr_22","c":"Instrument 22, $113B-$1140 (6 bytes): triangle; attack/decay $06, sustain/release $22; slide $00, transpose $01; no filter.","t":"byte","b":[16,6,34,0,1,0]},{"a":4417,"l":"music_instr_23","c":"Instrument 23, $1141-$1146 (6 bytes): triangle; attack/decay $C1, sustain/release $E2; slide $00, transpose $00; no filter.","t":"byte","b":[16,193,226,0,0,0]},{"a":4423,"l":"music_instr_24","c":"Instrument 24, $1147-$1158 (18 bytes): pulse; pulse width $400; PWM bytes 02 02 1F; attack/decay $0C, sustain/release $02; slide $07, transpose $FF; filter on: mode $10, resonance $90, cutoff $00/$64, sweep 03 01 00. The byte after it, $1159 ($00), is read by nothing.","t":"byte","b":[64,0,4,2,2,31,12,2]},{"a":4431,"t":"byte","b":[7,255,1,16,144,0,100,3]},{"a":4439,"t":"byte","b":[1,0,0]},{"a":4442,"l":"jmp_game_entry","c":"JMP $1AED (game_entry), three bytes between the music instruments and the per-move tables. No JSR, JMP or pointer to $115A was found in the image or in the disk files searched (game, loader, m.prerun, menu); the hand-over was caught at $1AED itself, so whether the loader starts the game here (it would be SYS 4442) or jumps to $1AED directly is not known.","t":"code","b":[76,237,26],"m":"jmp","oa":6893,"o":"game_entry"},{"a":4445,"l":"move_end_kind","c":"Per-move table, 25 bytes indexed by a fighter's move number ($61,X, moves $00-$18): what happens at the end of the move's animation. Read at $2A70 and $2ACD. $80 (moves 2 and 3, walking forward and back): the move is replaced at once by the requested move ($63,X; $11 becomes $12). 1 (moves 0, 1, 5, 8, 9, $0E, $16, $17): the fighter goes back to move 1 (standing) when it ends. 0 (the rest, the blows among them): the fighter holds the last frame ($74,X set at $2AD4) and the animation then runs backwards ($4B,X).","t":"byte","b":[1,1,128,128,0,1,0,0],"x":[10864,10957]},{"a":4453,"t":"byte","b":[1,1,0,0,0,0,1,0]},{"a":4461,"t":"byte","b":[0,0,0,0,0,0,1,1]},{"a":4469,"t":"byte","b":[0]},{"a":4470,"l":"move_is_blow","c":"Per-move table, 25 bytes: 1 for the eleven moves that can score, 0 otherwise. The blows are 6, 7 (the two diagonal-forward moves without fire), $0A-$11 (the eight directions with fire) and $18 (move 7 begun from a stance other than 4 or 7, $2B41). Read by the computer opponent ($22FA: is the other fighter attacking), the blocking code ($2B1D), the move start ($2B4F: a blow starts sound $3164), hit detection ($2B72: only a blow is tested) and $2827.","t":"byte","b":[0,0,0,0,0,0,1,1],"x":[8954,10279,11037,11087,11122]},{"a":4478,"t":"byte","b":[0,0,1,1,1,1,1,1]},{"a":4486,"t":"byte","b":[1,1,0,0,0,0,0,0]},{"a":4494,"t":"byte","b":[1]},{"a":4495,"l":"move_block_answer","c":"Per-move table, 25 bytes: the move that defends against each blow. $14 against 6, $0D, $0E, $0F, $11; $13 against 7, $0B, $0C, $18; 5 (the jump, joystick up) against $0A and $10; 0 for moves that are not blows. A player pulling back (requested move 3) while the opponent's blow is in range ($2D00) gets this move instead ($2B2D), and the computer opponent picks it too ($2309, $23B5).","t":"byte","b":[0,0,0,0,0,0,20,19],"x":[8969,9141,11053]},{"a":4503,"t":"byte","b":[0,0,5,19,19,20,20,20]},{"a":4511,"t":"byte","b":[5,20,0,0,0,0,0,0]},{"a":4519,"t":"byte","b":[19]},{"a":4520,"l":"move_reach_reversed","c":"Per-move table, 21 bytes (moves $15-$18 read on into move_full_window, all zero there): non-zero for moves 3, 9, $0F and $10. For the blows $0F and $10 the hit test ($2BE6, $2C71, $2CC4, ...) measures the distance the other way: the opponent must be at or beyond the reach instead of at or inside it.","t":"byte","b":[0,0,0,1,0,0,0,0],"x":[11238,11377,11460,11512,11554,11600]},{"a":4528,"t":"byte","b":[0,1,0,0,0,0,0,1]},{"a":4536,"t":"byte","b":[1,0,0,0,0]},{"a":4541,"l":"move_full_window","c":"Per-move table, 25 bytes: how far inside a blow's reach the opponent may stand and still be hit for a whole point (yin-yang). The hit test at $2BF4/$2C0D/$2C7E/$2C97 compares the distance between the fighters with the reach read for the opponent's current frame: equal, or short of it by up to this many units, scores 2 in $6E,X. Values 1-4; zero for moves that are not blows.","t":"byte","b":[0,0,0,0,0,0,2,2],"x":[11252,11277,11390,11415]},{"a":4549,"t":"byte","b":[0,0,3,1,2,2,2,4]},{"a":4557,"t":"byte","b":[3,3,0,0,0,0,0,0]},{"a":4565,"t":"byte","b":[2]},{"a":4566,"l":"move_half_window","c":"Per-move table, 25 bytes: the wider margin inside a blow's reach that still scores a half point (1 in $6E,X), tested after move_full_window at $2BFD/$2C16/$2C87/$2CA0. Values 5-$0A. An opponent closer than this is not hit at all.","t":"byte","b":[0,0,0,0,0,0,7,8],"x":[11261,11286,11399,11424]},{"a":4574,"t":"byte","b":[0,0,10,6,8,5,5,8]},{"a":4582,"t":"byte","b":[10,8,0,0,0,0,0,0]},{"a":4590,"t":"byte","b":[8]},{"a":4591,"l":"move_table_unread","c":"21 bytes laid out like a per-move table (1 at offsets 7, $0A, $0B, $0C and $11, all blow numbers; 0 elsewhere) that no instruction was found to read: the readers of move_half_window use indices up to $18 only, ending at $11EE. Purpose not known.","t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":4599,"t":"byte","b":[0,0,1,1,1,0,0,0]},{"a":4607,"t":"byte","b":[0,1,0,0,0]},{"a":4612,"l":"move_strike_frame","c":"Per-move table, 25 bytes: the animation frame ($51,X) on which a blow is tested for a hit (compared at $2B83): move 6 frame 7, 7 $0D, $0A $10, $0B 8, $0C 5, $0D $0B, $0E $0A, $0F $12, $10 $39, $11 $24, $18 $13; 0 for moves that are not blows.","t":"byte","b":[0,0,0,0,0,0,7,13],"x":[11139]},{"a":4620,"t":"byte","b":[0,0,16,8,5,11,10,18]},{"a":4628,"t":"byte","b":[57,36,0,0,0,0,0,0]},{"a":4636,"t":"byte","b":[19]},{"a":4637,"l":"move_reach_ptr_facing","c":"Per-move word table (25 words, $121D-$124E): for each blow, the address of a reach table ($7200-$744E) indexed by the opponent's animation frame ($51 of the other fighter); a byte there is the reach in that frame, $80 meaning that frame cannot be hit. Used by $2B9B when the fighters face opposite ways ($53 differs). Zero for moves that are not blows.","t":"word","b":[0,0,0,0,0,0,0,0],"d":[0,0,0,0],"x":[11163]},{"a":4638,"t":"note","l":"f_121E","c":"High-byte view of move_reach_ptr_facing: $2BA0 reads the second byte of each word here with the move number doubled.","note":"inside the item at $121D","x":[11168]},{"a":4645,"t":"word","b":[0,0,0,0,0,114,59,114],"d":[0,0,29184,29243]},{"a":4653,"t":"word","b":[0,0,0,0,118,114,177,114],"d":[0,0,29302,29361]},{"a":4661,"t":"word","b":[236,114,39,115,98,115,157,115],"d":[29420,29479,29538,29597]},{"a":4669,"t":"word","b":[78,116,19,116,0,0,0,0],"d":[29774,29715,0,0]},{"a":4677,"t":"word","b":[0,0,0,0,0,0,0,0],"d":[0,0,0,0]},{"a":4685,"t":"word","b":[216,115],"d":[29656]},{"a":4687,"l":"move_reach_ptr_same_facing","c":"Per-move word table (25 words, $124F-$1280): the reach table for each blow ($7489-$76D7) used by $2BAC when both fighters face the same way, so the blow lands on the opponent's back; tested at $2C44 with the distance taken the other way round.","t":"word","b":[0,0,0,0,0,0,0,0],"d":[0,0,0,0],"x":[11180]},{"a":4688,"t":"note","l":"f_1250","c":"High-byte view of move_reach_ptr_same_facing, read by $2BB1.","note":"inside the item at $124F","x":[11185]},{"a":4695,"t":"word","b":[0,0,0,0,137,116,196,116],"d":[0,0,29833,29892]},{"a":4703,"t":"word","b":[0,0,0,0,255,116,58,117],"d":[0,0,29951,30010]},{"a":4711,"t":"word","b":[117,117,176,117,235,117,38,118],"d":[30069,30128,30187,30246]},{"a":4719,"t":"word","b":[215,118,156,118,0,0,0,0],"d":[30423,30364,0,0]},{"a":4727,"t":"word","b":[0,0,0,0,0,0,0,0],"d":[0,0,0,0]},{"a":4735,"t":"word","b":[97,118],"d":[30305]},{"a":4737,"l":"unused_words_1281","c":"Twelve words that no instruction was found to read: $E640 (the first byte of the backdrop bitmap that bitmap_unpack fills), $3600, $4500, $5400, $6300, then $64E0 to $7020 in steps of $1E0 (480 bytes, twelve 40-byte rows). Possibly a leftover; purpose not known.","t":"byte","b":[64,230,0,54,0,69,0,84]},{"a":4745,"t":"byte","b":[0,99,224,100,192,102,160,104]},{"a":4753,"t":"byte","b":[128,106,96,108,64,110,32,112]},{"a":4761,"l":"hiscore_1p","c":"The one-player high score, six screen codes ('     0' in the image: blanks then a digit, same format as the scores on screen). Shown at $CCB1 (row 4, columns 17-22) by $2115 when $AE = 0; raised by hiscore_update ($200A) when player 1's score ($CC31) beats it.","t":"byte","b":[32,32,32,32,32,48],"x":[8485]},{"a":4767,"l":"hiscore_2p","c":"The two-player high score, six screen codes in the same format as hiscore_1p; shown at $CCB1 by $2115 when $AE is not 0, and raised by $200A from either player's score ($CC31 or $CC41).","t":"byte","b":[32,32,32,32,32,48],"x":[8475]},{"a":4773,"l":"move_points","c":"Per-move table, 25 bytes: the points a blow earns, in hundreds. $206C reads it with the scoring move in $8C and adds that many hundreds to the score on screen; a half point ($6E/$6F not 2) earns half (LSR, rounded down). Move 6: 800, 7: 800, $0A: 400, $0B: 200, $0C: 200, $0D: 800, $0E: 1000, $0F: 800, $10: 800, $11: 1000, $18: 600. $2169 adds the same value (halved likewise) to the fighter's total in $BD,X.","t":"byte","b":[0,0,0,0,0,0,8,8],"x":[8302,8555]},{"a":4781,"t":"byte","b":[0,0,4,2,2,8,10,8]},{"a":4789,"t":"byte","b":[8,10,0,0,0,0,0,0]},{"a":4797,"t":"byte","b":[6]},{"a":4798,"l":"str_1_player","c":"'1 PLAYER', eight screen codes (ASCII order in this font), copied to $CCBF (row 4, columns 31-38) by $2186 when $AE = 0.","t":"byte","b":[49,32,80,76,65,89,69,82],"x":[8593]},{"a":4806,"l":"str_2_player","c":"'2 PLAYER', eight screen codes, copied to $CCBF by $2186 when $AE = 1.","t":"byte","b":[50,32,80,76,65,89,69,82],"x":[8603]},{"a":4814,"l":"yinyang_column","c":"Two bytes, one per fighter: the column offset of that fighter's yin-yang symbols on the top rows, 0 for fighter 0 (columns 3-4) and $1D for fighter 1 (columns 32-33). Passed in Y to $1DDE (whole symbol, characters $21-$24) or $1DF3 (characters $25-$28) by the hit test at $2C28/$2C3B, only in a two-player game ($AE = 1).","t":"byte","b":[0,29],"x":[11304,11323]},{"a":4816,"l":"ai_low_answer","c":"Per-move table, 25 bytes, read by $2698 (computer opponent): when the other fighter's move is 4, 7, $0A or $10 (low moves), the move the computer had chosen is swapped for this entry. Mostly the identity; blows map to $0A (moves 7, $0C, $0E, $11), $0B (6, $0D, $18) or $10 ($0F, $10).","t":"byte","b":[1,1,2,3,4,5,11,10],"x":[9908]},{"a":4824,"t":"byte","b":[8,9,10,11,10,11,10,16]},{"a":4832,"t":"byte","b":[16,10,18,19,20,21,22,23]},{"a":4840,"t":"byte","b":[11]},{"a":4841,"l":"x_min_by_facing","c":"Two bytes, indexed by a fighter's facing ($53,X): the smallest X position ($6A,X) allowed, $0C facing one way and 0 the other. Clamped at $3858; a position of $C8 or more counts as below the minimum (wrapped past zero).","t":"byte","b":[12,0],"x":[14424,14429]},{"a":4843,"l":"x_max_by_facing","c":"Two bytes, indexed by facing ($53,X): the largest X position allowed, $95 and $89. Clamped at $3862 in the same routine as x_min_by_facing (only while the animation frame $51,X is below $3B).","t":"byte","b":[149,137],"x":[14434,14439]},{"a":4845,"l":"clear_zp_02_13","c":"Sets zero page $02-$13 to 0. No JSR, JMP or pointer to $12ED was found in the image; it decodes cleanly and ends in RTS, so it is probably code that nothing calls.","t":"code","b":[160,17],"m":"ldy","o":"#$11"},{"a":4847,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":4849,"l":"b_12F1","t":"code","b":[153,2,0],"m":"sta","oa":2,"o":"fighter_ptr_r1c1,y","x":[4853]},{"a":4852,"t":"code","b":[136],"m":"dey"},{"a":4853,"t":"code","b":[16,250],"m":"bpl","oa":4849,"o":"b_12F1"},{"a":4855,"t":"code","b":[96],"m":"rts"},{"a":4856,"l":"bull_round_player_step","c":"Bonus round, one frame of the player (fighter 0): $5D = 0, read the controls or forced move ($2834), turn a request for move 7 into $18 ($2B33), then $29B4, start or continue the move ($2B46) and handle the end of its animation ($2A8F). Unlike a bout's fighter step ($2808) there is no hit test and no automatic block. Called from bull_round while the player is still up ($5E = 0).","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[5058]},{"a":4858,"t":"code","b":[134,93],"m":"stx","oa":93,"o":"shape_direct"},{"a":4860,"t":"code","b":[32,52,40],"m":"jsr","oa":10292,"o":"fighter_read_control"},{"a":4863,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":4865,"t":"code","b":[32,51,43],"m":"jsr","oa":11059,"o":"fighter_remap_req7"},{"a":4868,"t":"code","b":[32,180,41],"m":"jsr","oa":10676,"o":"fighter_choose_move"},{"a":4871,"t":"code","b":[32,70,43],"m":"jsr","oa":11078,"o":"fighter_start_anim"},{"a":4874,"t":"code","b":[32,143,42],"m":"jsr","oa":10895,"o":"fighter_anim_ended"},{"a":4877,"t":"code","b":[96],"m":"rts"},{"a":4878,"l":"bull_round_place_player","c":"Bonus round set-up of fighter 0: X position $6A = $3E, $6C = $50, facing $53 = 0, clears $4B, $74, $47, sets $45 = 1 and move $61 = 1 (standing), then one animation step ($37BD, X = 0).","t":"code","b":[169,62],"m":"lda","o":"#$3E","x":[4913]},{"a":4880,"t":"code","b":[133,106],"m":"sta","oa":106,"o":"fighter_x"},{"a":4882,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":4884,"t":"code","b":[133,108],"m":"sta","oa":108,"o":"fighter_y"},{"a":4886,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":4888,"t":"code","b":[133,83],"m":"sta","oa":83,"o":"fighter_facing"},{"a":4890,"t":"code","b":[133,75],"m":"sta","oa":75,"o":"anim_reverse"},{"a":4892,"t":"code","b":[133,116],"m":"sta","oa":116,"o":"move_hold"},{"a":4894,"t":"code","b":[133,71],"m":"sta","oa":71,"o":"anim_loaded"},{"a":4896,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":4898,"t":"code","b":[133,69],"m":"sta","oa":69,"o":"anim_request"},{"a":4900,"t":"code","b":[133,97],"m":"sta","oa":97,"o":"fighter_move"},{"a":4902,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":4904,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":4907,"t":"code","b":[96],"m":"rts"},{"a":4908,"l":"bull_round","c":"The bonus round: a charging bull played by fighter slot 1. Called from the one-player game ($1C24) after a stage won on backdrop 3 ($AF & 3 = 3). Sprites 0-5 on, places the player (bull_round_place_player), puts the bull at X $6B = $B0 with animation $46 = $1C, and runs one pass per frame (waits for raster $FD). The bull is felled ($C2 = $80, animation $1D, 3000 points to player 1: thirty calls of $2095 with X = 9) when the player's frame $51 is $0D, the frame flag $88 is set and the bull is 25-29 units ahead ($6B - $6A in $19-$1D); frame $0D is move 7's strike frame (move_strike_frame), so in effect only that blow works. Otherwise the bull hits the player ($5F = $16, sound $315E, $C2 = 1) when its distance is no more than bull_hit_reach[$51]. Loops while bull_round_bull_step returns non-zero.","t":"code","b":[169,63],"m":"lda","o":"#$3F","x":[7204]},{"a":4910,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":4913,"t":"code","b":[32,14,19],"m":"jsr","oa":4878,"o":"bull_round_place_player"},{"a":4916,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":4918,"t":"code","b":[133,36],"m":"sta","oa":36,"o":"spr012_fighter"},{"a":4920,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":4922,"t":"code","b":[133,93],"m":"sta","oa":93,"o":"shape_direct"},{"a":4924,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":4926,"t":"code","b":[133,109],"m":"sta","oa":109,"o":"fighter_y_f1"},{"a":4928,"t":"code","b":[169,176],"m":"lda","o":"#$B0"},{"a":4930,"t":"code","b":[133,107],"m":"sta","oa":107,"o":"fighter_x_f1"},{"a":4932,"t":"code","b":[169,28],"m":"lda","o":"#$1C"},{"a":4934,"t":"code","b":[133,70],"m":"sta","oa":70,"o":"anim_request_f1"},{"a":4936,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":4938,"t":"code","b":[133,51],"m":"sta","oa":51,"o":"speech_state"},{"a":4940,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":4942,"t":"code","b":[133,94],"m":"sta","oa":94,"o":"knockdown_result"},{"a":4944,"t":"code","b":[133,194],"m":"sta","oa":194,"o":"bull_state"},{"a":4946,"t":"code","b":[133,72],"m":"sta","oa":72,"o":"anim_loaded_f1"},{"a":4948,"t":"code","b":[133,76],"m":"sta","oa":76,"o":"anim_reverse_f1"},{"a":4950,"t":"code","b":[133,84],"m":"sta","oa":84,"o":"fighter_facing_f1"},{"a":4952,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":4954,"t":"code","b":[133,35],"m":"sta","oa":35,"o":"fighter_colour_f1"},{"a":4956,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":4958,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":4961,"l":"b_1361","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[4966,5064]},{"a":4964,"t":"code","b":[201,253],"m":"cmp","o":"#$FD"},{"a":4966,"t":"code","b":[144,249],"m":"bcc","oa":4961,"o":"b_1361"},{"a":4968,"t":"code","b":[165,194],"m":"lda","oa":194,"o":"bull_state"},{"a":4970,"t":"code","b":[208,82],"m":"bne","oa":5054,"o":"b_13BE"},{"a":4972,"t":"code","b":[165,81],"m":"lda","oa":81,"o":"fighter_frame"},{"a":4974,"t":"code","b":[201,13],"m":"cmp","o":"#$0D"},{"a":4976,"t":"code","b":[208,43],"m":"bne","oa":5021,"o":"b_139D"},{"a":4978,"t":"code","b":[165,136],"m":"lda","oa":136,"o":"anim_new_step"},{"a":4980,"t":"code","b":[240,39],"m":"beq","oa":5021,"o":"b_139D"},{"a":4982,"t":"code","b":[165,107],"m":"lda","oa":107,"o":"fighter_x_f1"},{"a":4984,"t":"code","b":[56],"m":"sec"},{"a":4985,"t":"code","b":[229,106],"m":"sbc","oa":106,"o":"fighter_x"},{"a":4987,"t":"code","b":[201,25],"m":"cmp","o":"#$19"},{"a":4989,"t":"code","b":[144,30],"m":"bcc","oa":5021,"o":"b_139D"},{"a":4991,"t":"code","b":[201,30],"m":"cmp","o":"#$1E"},{"a":4993,"t":"code","b":[176,26],"m":"bcs","oa":5021,"o":"b_139D"},{"a":4995,"t":"code","b":[160,30],"m":"ldy","o":"#$1E"},{"a":4997,"l":"b_1385","t":"code","b":[162,9],"m":"ldx","o":"#$09","x":[5003]},{"a":4999,"t":"code","b":[32,149,32],"m":"jsr","oa":8341,"o":"score_add_100"},{"a":5002,"t":"code","b":[136],"m":"dey"},{"a":5003,"t":"code","b":[208,248],"m":"bne","oa":4997,"o":"b_1385"},{"a":5005,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":5007,"t":"code","b":[133,194],"m":"sta","oa":194,"o":"bull_state"},{"a":5009,"t":"code","b":[169,29],"m":"lda","o":"#$1D"},{"a":5011,"t":"code","b":[133,70],"m":"sta","oa":70,"o":"anim_request_f1"},{"a":5013,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5015,"t":"code","b":[133,72],"m":"sta","oa":72,"o":"anim_loaded_f1"},{"a":5017,"t":"code","b":[133,90],"m":"sta","oa":90,"o":"anim_ended_f1"},{"a":5019,"t":"code","b":[240,33],"m":"beq","oa":5054,"o":"b_13BE"},{"a":5021,"l":"b_139D","t":"code","b":[165,107],"m":"lda","oa":107,"o":"fighter_x_f1","x":[4976,4980,4989,4993]},{"a":5023,"t":"code","b":[197,106],"m":"cmp","oa":106,"o":"fighter_x"},{"a":5025,"t":"code","b":[144,27],"m":"bcc","oa":5054,"o":"b_13BE"},{"a":5027,"t":"code","b":[56],"m":"sec"},{"a":5028,"t":"code","b":[229,106],"m":"sbc","oa":106,"o":"fighter_x"},{"a":5030,"t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance"},{"a":5032,"t":"code","b":[164,81],"m":"ldy","oa":81,"o":"fighter_frame"},{"a":5034,"t":"code","b":[185,47,20],"m":"lda","oa":5167,"o":"bull_hit_reach,y"},{"a":5037,"t":"code","b":[48,15],"m":"bmi","oa":5054,"o":"b_13BE"},{"a":5039,"t":"code","b":[197,115],"m":"cmp","oa":115,"o":"fighter_distance"},{"a":5041,"t":"code","b":[144,11],"m":"bcc","oa":5054,"o":"b_13BE"},{"a":5043,"t":"code","b":[169,22],"m":"lda","o":"#$16"},{"a":5045,"t":"code","b":[133,95],"m":"sta","oa":95,"o":"hit_state"},{"a":5047,"t":"code","b":[32,94,49],"m":"jsr","oa":12638,"o":"speech_say_1"},{"a":5050,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":5052,"t":"code","b":[133,194],"m":"sta","oa":194,"o":"bull_state"},{"a":5054,"l":"b_13BE","t":"code","b":[165,94],"m":"lda","oa":94,"o":"knockdown_result","x":[4970,5019,5025,5037,5041]},{"a":5056,"t":"code","b":[208,3],"m":"bne","oa":5061,"o":"b_13C5"},{"a":5058,"t":"code","b":[32,248,18],"m":"jsr","oa":4856,"o":"bull_round_player_step"},{"a":5061,"l":"b_13C5","t":"code","b":[32,203,19],"m":"jsr","oa":5067,"o":"bull_round_bull_step","x":[5056]},{"a":5064,"t":"code","b":[208,151],"m":"bne","oa":4961,"o":"b_1361"},{"a":5066,"t":"code","b":[96],"m":"rts"},{"a":5067,"l":"bull_round_bull_step","c":"Bonus round, one frame of the bull (fighter slot 1, $5D = $40): animation step ($37BD, X = 1). Once felled ($C2 negative) it returns $5A EOR 1, ending the round when that animation completes. While charging, at the end of each animation cycle ($5A set) it reads the bull's X position $6B: 0 sets it to $0C with animation $1E, 2 sets $0E with $1F, 1 ends the round (A = 0), adding 500 points (five calls of $2095) if the player is neither hit ($5F) nor down ($5E); any other position continues the charge (animation $1C, sound $316A while $33 is non-zero). Returns A = 1 to continue.","t":"code","b":[169,64],"m":"lda","o":"#$40","x":[5061]},{"a":5069,"t":"code","b":[133,93],"m":"sta","oa":93,"o":"shape_direct"},{"a":5071,"t":"code","b":[165,194],"m":"lda","oa":194,"o":"bull_state"},{"a":5073,"t":"code","b":[48,82],"m":"bmi","oa":5157,"o":"b_1425"},{"a":5075,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":5077,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":5080,"t":"code","b":[165,90],"m":"lda","oa":90,"o":"anim_ended_f1"},{"a":5082,"t":"code","b":[240,70],"m":"beq","oa":5154,"o":"b_1422"},{"a":5084,"t":"code","b":[165,107],"m":"lda","oa":107,"o":"fighter_x_f1"},{"a":5086,"t":"code","b":[240,10],"m":"beq","oa":5098,"o":"b_13EA"},{"a":5088,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":5090,"t":"code","b":[240,14],"m":"beq","oa":5106,"o":"b_13F2"},{"a":5092,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":5094,"t":"code","b":[240,18],"m":"beq","oa":5114,"o":"b_13FA"},{"a":5096,"t":"code","b":[208,41],"m":"bne","oa":5139,"o":"b_1413"},{"a":5098,"l":"b_13EA","t":"code","b":[169,12],"m":"lda","o":"#$0C","x":[5086]},{"a":5100,"t":"code","b":[133,107],"m":"sta","oa":107,"o":"fighter_x_f1"},{"a":5102,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":5104,"t":"code","b":[208,35],"m":"bne","oa":5141,"o":"b_1415"},{"a":5106,"l":"b_13F2","t":"code","b":[169,14],"m":"lda","o":"#$0E","x":[5090]},{"a":5108,"t":"code","b":[133,107],"m":"sta","oa":107,"o":"fighter_x_f1"},{"a":5110,"t":"code","b":[169,31],"m":"lda","o":"#$1F"},{"a":5112,"t":"code","b":[208,27],"m":"bne","oa":5141,"o":"b_1415"},{"a":5114,"l":"b_13FA","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[5094]},{"a":5116,"t":"code","b":[133,27],"m":"sta","oa":27,"o":"mux_b_x"},{"a":5118,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":5120,"t":"code","b":[208,14],"m":"bne","oa":5136,"o":"b_1410"},{"a":5122,"t":"code","b":[165,94],"m":"lda","oa":94,"o":"knockdown_result"},{"a":5124,"t":"code","b":[208,10],"m":"bne","oa":5136,"o":"b_1410"},{"a":5126,"t":"code","b":[160,5],"m":"ldy","o":"#$05"},{"a":5128,"l":"b_1408","t":"code","b":[162,9],"m":"ldx","o":"#$09","x":[5134]},{"a":5130,"t":"code","b":[32,149,32],"m":"jsr","oa":8341,"o":"score_add_100"},{"a":5133,"t":"code","b":[136],"m":"dey"},{"a":5134,"t":"code","b":[208,248],"m":"bne","oa":5128,"o":"b_1408"},{"a":5136,"l":"b_1410","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[5120,5124]},{"a":5138,"t":"code","b":[96],"m":"rts"},{"a":5139,"l":"b_1413","t":"code","b":[169,28],"m":"lda","o":"#$1C","x":[5096]},{"a":5141,"l":"b_1415","t":"code","b":[133,70],"m":"sta","oa":70,"o":"anim_request_f1","x":[5104,5112]},{"a":5143,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5145,"t":"code","b":[133,72],"m":"sta","oa":72,"o":"anim_loaded_f1"},{"a":5147,"t":"code","b":[165,51],"m":"lda","oa":51,"o":"speech_state"},{"a":5149,"t":"code","b":[240,3],"m":"beq","oa":5154,"o":"b_1422"},{"a":5151,"t":"code","b":[32,106,49],"m":"jsr","oa":12650,"o":"speech_say_3"},{"a":5154,"l":"b_1422","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[5082,5149]},{"a":5156,"t":"code","b":[96],"m":"rts"},{"a":5157,"l":"b_1425","t":"code","b":[162,1],"m":"ldx","o":"#$01","x":[5073]},{"a":5159,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":5162,"t":"code","b":[165,90],"m":"lda","oa":90,"o":"anim_ended_f1"},{"a":5164,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":5166,"t":"code","b":[96],"m":"rts"},{"a":5167,"l":"bull_hit_reach","c":"Bonus round, 59 bytes indexed by the player's animation frame $51 ($00-$3A): how close the bull must come to hit the player in that frame, compared with $6B - $6A at $13AA. $80 means the bull cannot hit the player in that frame (frames $0A, $14-$17, $20-$21, $25-$2F, $35-$38 and $3A). Only read while the bull is not behind the player ($6B >= $6A)..","t":"byte","b":[18,18,19,18,19,15,24,20],"x":[5034]},{"a":5175,"t":"byte","b":[15,20,128,18,19,5,19,16]},{"a":5183,"t":"byte","b":[17,15,5,20,128,128,128,128]},{"a":5191,"t":"byte","b":[17,21,26,18,21,23,18,26]},{"a":5199,"t":"byte","b":[128,128,10,16,19,128,128,128]},{"a":5207,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":5215,"t":"byte","b":[21,21,18,22,13,128,128,128]},{"a":5223,"t":"byte","b":[128,4,128]},{"a":5226,"l":"hiscore_after_game","c":"End of a one-player game (called from $1F0D): enters player 1's score into the five-place high-score table (hiscore_insert), then, unless fire on joystick port 2 is held ($DC00 bit 4 low: return at once, which leaves an entered name as '......'), shows the table. If the score made the table ($CB = 0-4): draws it, points the self-modified store at $17AF to the name's screen cells ($CC13 + 40 x $CB) and $CC/$CD to its colour RAM row ($D808 + 40 x $CB), colours that row 0, lets the player type a name (hiscore_type_name), then colours the row 6. If not ($CB = 5): draws the table and waits up to 250 frames, ending early on fire (port 2) or F1 (row 0, column 4).","t":"code","b":[32,58,22],"m":"jsr","oa":5690,"o":"hiscore_insert","x":[7949]},{"a":5229,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5231,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":5234,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":5237,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":5239,"t":"code","b":[240,91],"m":"beq","oa":5332,"o":"r_14D4"},{"a":5241,"t":"code","b":[165,203],"m":"lda","oa":203,"o":"hiscore_place"},{"a":5243,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":5245,"t":"code","b":[240,86],"m":"beq","oa":5333,"o":"b_14D5"},{"a":5247,"t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr"},{"a":5249,"t":"code","b":[72],"m":"pha"},{"a":5250,"t":"code","b":[165,192],"m":"lda","oa":192,"o":"text_ptr_hi"},{"a":5252,"t":"code","b":[72],"m":"pha"},{"a":5253,"t":"code","b":[32,175,21],"m":"jsr","oa":5551,"o":"hiscore_draw"},{"a":5256,"t":"code","b":[32,14,22],"m":"jsr","oa":5646,"o":"hiscore_draw_names"},{"a":5259,"t":"code","b":[32,36,22],"m":"jsr","oa":5668,"o":"hiscore_draw_scores"},{"a":5262,"t":"code","b":[104],"m":"pla"},{"a":5263,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":5265,"t":"code","b":[104],"m":"pla"},{"a":5266,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5268,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":5270,"t":"code","b":[133,199],"m":"sta","oa":199,"o":"last_key"},{"a":5272,"t":"code","b":[164,203],"m":"ldy","oa":203,"o":"hiscore_place"},{"a":5274,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":5276,"t":"code","b":[141,177,23],"m":"sta","oa":6065,"o":"a_17B1"},{"a":5279,"t":"code","b":[169,19],"m":"lda","o":"#$13"},{"a":5281,"t":"code","b":[192,0],"m":"cpy","o":"#$00"},{"a":5283,"t":"code","b":[240,11],"m":"beq","oa":5296,"o":"b_14B0"},{"a":5285,"l":"b_14A5","t":"code","b":[24],"m":"clc","x":[5294]},{"a":5286,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":5288,"t":"code","b":[144,3],"m":"bcc","oa":5293,"o":"b_14AD"},{"a":5290,"t":"code","b":[238,177,23],"m":"inc","oa":6065,"o":"a_17B1"},{"a":5293,"l":"b_14AD","t":"code","b":[136],"m":"dey","x":[5288]},{"a":5294,"t":"code","b":[208,245],"m":"bne","oa":5285,"o":"b_14A5"},{"a":5296,"l":"b_14B0","t":"code","b":[141,176,23],"m":"sta","oa":6064,"o":"a_17B0","x":[5283]},{"a":5299,"t":"code","b":[173,176,23],"m":"lda","oa":6064,"o":"a_17B0"},{"a":5302,"t":"code","b":[56],"m":"sec"},{"a":5303,"t":"code","b":[233,11],"m":"sbc","o":"#$0B"},{"a":5305,"t":"code","b":[133,204],"m":"sta","oa":204,"o":"colour_ptr"},{"a":5307,"t":"code","b":[173,177,23],"m":"lda","oa":6065,"o":"a_17B1"},{"a":5310,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":5312,"t":"code","b":[24],"m":"clc"},{"a":5313,"t":"code","b":[105,12],"m":"adc","o":"#$0C"},{"a":5315,"t":"code","b":[133,205],"m":"sta","oa":205,"o":"colour_ptr_hi"},{"a":5317,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5319,"t":"code","b":[32,179,23],"m":"jsr","oa":6067,"o":"colour_fill_24"},{"a":5322,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":5324,"t":"code","b":[32,98,23],"m":"jsr","oa":5986,"o":"hiscore_type_name"},{"a":5327,"t":"code","b":[169,6],"m":"lda","o":"#$06"},{"a":5329,"t":"code","b":[32,179,23],"m":"jsr","oa":6067,"o":"colour_fill_24"},{"a":5332,"l":"r_14D4","t":"code","b":[96],"m":"rts","x":[5239]},{"a":5333,"l":"b_14D5","t":"code","b":[32,175,21],"m":"jsr","oa":5551,"o":"hiscore_draw","x":[5245]},{"a":5336,"t":"code","b":[32,14,22],"m":"jsr","oa":5646,"o":"hiscore_draw_names"},{"a":5339,"t":"code","b":[32,36,22],"m":"jsr","oa":5668,"o":"hiscore_draw_scores"},{"a":5342,"t":"code","b":[162,250],"m":"ldx","o":"#$FA"},{"a":5344,"l":"b_14E0","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[5349,5388]},{"a":5347,"t":"code","b":[201,253],"m":"cmp","o":"#$FD"},{"a":5349,"t":"code","b":[208,249],"m":"bne","oa":5344,"o":"b_14E0"},{"a":5351,"l":"b_14E7","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[5356]},{"a":5354,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":5356,"t":"code","b":[144,249],"m":"bcc","oa":5351,"o":"b_14E7"},{"a":5358,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5360,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":5363,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":5366,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":5368,"t":"code","b":[240,20],"m":"beq","oa":5390,"o":"r_150E"},{"a":5370,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":5372,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":5375,"t":"code","b":[169,254],"m":"lda","o":"#$FE"},{"a":5377,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":5380,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":5383,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":5385,"t":"code","b":[240,3],"m":"beq","oa":5390,"o":"r_150E"},{"a":5387,"t":"code","b":[202],"m":"dex"},{"a":5388,"t":"code","b":[208,210],"m":"bne","oa":5344,"o":"b_14E0"},{"a":5390,"l":"r_150E","t":"code","b":[96],"m":"rts","x":[5368,5385]},{"a":5391,"l":"keyboard_scan","c":"Scans the keyboard matrix itself, rows 7 down to 0 (row select from kbd_row_select into $DC00, columns read from $DC01), ignoring the keys set in kbd_ignore_mask. Returns A = 8 x row + column of the first key found (in a row, the highest column first), or $40 when none; uses $C4. Sets $DC02 = $FF and $DC03 = 0.","t":"code","b":[160,7],"m":"ldy","o":"#$07","x":[5466]},{"a":5393,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":5395,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":5398,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5400,"t":"code","b":[141,3,220],"m":"sta","o":"cia1_ddr_b"},{"a":5403,"l":"b_151B","t":"code","b":[185,66,21],"m":"lda","oa":5442,"o":"kbd_row_select,y","x":[5428]},{"a":5406,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":5409,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":5412,"t":"code","b":[25,82,21],"m":"ora","oa":5458,"o":"kbd_ignore_mask,y"},{"a":5415,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":5417,"t":"code","b":[240,8],"m":"beq","oa":5427,"o":"b_1533"},{"a":5419,"t":"code","b":[162,7],"m":"ldx","o":"#$07"},{"a":5421,"l":"b_152D","t":"code","b":[10],"m":"asl","o":"a","x":[5425]},{"a":5422,"t":"code","b":[144,9],"m":"bcc","oa":5433,"o":"b_1539"},{"a":5424,"t":"code","b":[202],"m":"dex"},{"a":5425,"t":"code","b":[16,250],"m":"bpl","oa":5421,"o":"b_152D"},{"a":5427,"l":"b_1533","t":"code","b":[136],"m":"dey","x":[5417]},{"a":5428,"t":"code","b":[16,229],"m":"bpl","oa":5403,"o":"b_151B"},{"a":5430,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":5432,"t":"code","b":[96],"m":"rts"},{"a":5433,"l":"b_1539","t":"code","b":[185,74,21],"m":"lda","oa":5450,"o":"kbd_row_base,y","x":[5422]},{"a":5436,"t":"code","b":[133,196],"m":"sta","oa":196,"o":"key_scratch"},{"a":5438,"t":"code","b":[138],"m":"txa"},{"a":5439,"t":"code","b":[5,196],"m":"ora","oa":196,"o":"key_scratch"},{"a":5441,"t":"code","b":[96],"m":"rts"},{"a":5442,"l":"kbd_row_select","c":"Eight values for $DC00, one bit low each: $FE selects keyboard row 0 ... $7F row 7. Indexed by the row number in keyboard_scan.","t":"byte","b":[254,253,251,247,239,223,191,127],"x":[5403]},{"a":5450,"l":"kbd_row_base","c":"Eight bytes, 8 x row (0, 8, ... $38), the first code of each keyboard row; keyboard_scan ORs in the column.","t":"byte","b":[0,8,16,24,32,40,48,56],"x":[5433]},{"a":5458,"l":"kbd_ignore_mask","c":"Eight bytes ORed into each row's column bits by keyboard_scan, so a set bit hides that key: row 0 $FC (only DEL and RETURN kept), row 1 $80 (left SHIFT), row 5 $F9 (only P and L), row 6 $FF (all), row 7 $A6 (only 1, 2, SPACE and Q). Rows 2-4 are read whole. What is left is the letters, the digits, SPACE, DEL and RETURN.","t":"byte","b":[252,128,0,0,0,249,255,166],"x":[5412]},{"a":5466,"l":"key_read_new","c":"Reads one key for name entry: keyboard_scan, then translates the code through key_ascii. Returns $40 when no key is down, and also while the same key is still held (the last key is kept in $C7), so a held key types once. Otherwise returns the character (ASCII order, which this font follows) and stores it in $C7.","t":"code","b":[32,15,21],"m":"jsr","oa":5391,"o":"keyboard_scan","x":[6011]},{"a":5469,"t":"code","b":[201,64],"m":"cmp","o":"#$40"},{"a":5471,"t":"code","b":[240,11],"m":"beq","oa":5484,"o":"b_156C"},{"a":5473,"t":"code","b":[170],"m":"tax"},{"a":5474,"t":"code","b":[189,111,21],"m":"lda","oa":5487,"o":"key_ascii,x"},{"a":5477,"t":"code","b":[197,199],"m":"cmp","oa":199,"o":"last_key"},{"a":5479,"t":"code","b":[208,3],"m":"bne","oa":5484,"o":"b_156C"},{"a":5481,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":5483,"t":"code","b":[96],"m":"rts"},{"a":5484,"l":"b_156C","t":"code","b":[133,199],"m":"sta","oa":199,"o":"last_key","x":[5471,5479]},{"a":5486,"t":"code","b":[96],"m":"rts"},{"a":5487,"l":"key_ascii","c":"64 bytes, the character for each key code 8 x row + column, in the C64 matrix order: row 0 DEL $14, RETURN $0D, CRSR right $1D, F7 $88, F1 $85, F3 $86, F5 $87, CRSR down $11; row 1 '3WA4ZSE' and 0 for SHIFT; row 2 '5RD6CFTX'; row 3 '7YG8BHUV'; row 4 '9IJ0MKON'; row 5 0, 'PL-.:@,'; row 6 '&*;', $13, 0, '=', $7E, '/'; row 7 '1', 0, 0, '2', SPACE, 0, 'Q', 0. Used only by key_read_new for typing a high-score name; the fight's keyboard controls are read elsewhere ($288C).","t":"byte","b":[20,13,29,136,133,134,135,17],"x":[5474]},{"a":5495,"t":"byte","b":[51,87,65,52,90,83,69,0]},{"a":5503,"t":"byte","b":[53,82,68,54,67,70,84,88]},{"a":5511,"t":"byte","b":[55,89,71,56,66,72,85,86]},{"a":5519,"t":"byte","b":[57,73,74,48,77,75,79,78]},{"a":5527,"t":"byte","b":[0,80,76,45,46,58,64,44]},{"a":5535,"t":"byte","b":[38,42,59,19,0,61,126,47]},{"a":5543,"t":"byte","b":[49,0,0,50,32,0,81,0]},{"a":5551,"l":"hiscore_draw","c":"Draws the high-score table on the five text rows at the top: clears them (clear_top_rows), puts the places '1'-'5' in column 8 of rows 0-4 ($CC08, $CC30, ...), and for each entry 4 down to 0 whose hiscore_ranks byte is not negative prints the rank reached ($21FB with $CA = 1, in columns 10-18 of the entry's row; $BF/$C0 walk up from $CCAA). Names and scores are drawn by the callers (hiscore_draw_names, hiscore_draw_scores). Uses $C8, $CA, $BF/$C0.","t":"code","b":[32,230,22],"m":"jsr","oa":5862,"o":"clear_top_rows","x":[5253,5333]},{"a":5554,"t":"code","b":[160,49],"m":"ldy","o":"#$31"},{"a":5556,"t":"code","b":[140,8,204],"m":"sty","oa":52232,"o":"a_CC08"},{"a":5559,"t":"code","b":[200],"m":"iny"},{"a":5560,"t":"code","b":[140,48,204],"m":"sty","oa":52272,"o":"a_CC30"},{"a":5563,"t":"code","b":[200],"m":"iny"},{"a":5564,"t":"code","b":[140,88,204],"m":"sty","oa":52312,"o":"a_CC58"},{"a":5567,"t":"code","b":[200],"m":"iny"},{"a":5568,"t":"code","b":[140,128,204],"m":"sty","oa":52352,"o":"a_CC80"},{"a":5571,"t":"code","b":[200],"m":"iny"},{"a":5572,"t":"code","b":[140,168,204],"m":"sty","oa":52392,"o":"a_CCA8"},{"a":5575,"t":"code","b":[169,170],"m":"lda","o":"#$AA"},{"a":5577,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5579,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":5581,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":5583,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":5585,"t":"code","b":[133,202],"m":"sta","oa":202,"o":"rank_text_col"},{"a":5587,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":5589,"t":"code","b":[133,200],"m":"sta","oa":200,"o":"hiscore_index"},{"a":5591,"l":"b_15D7","t":"code","b":[164,200],"m":"ldy","oa":200,"o":"hiscore_index","x":[5614]},{"a":5593,"t":"code","b":[190,81,23],"m":"ldx","oa":5969,"o":"hiscore_ranks,y"},{"a":5596,"t":"code","b":[48,3],"m":"bmi","oa":5601,"o":"b_15E1"},{"a":5598,"t":"code","b":[32,251,33],"m":"jsr","oa":8699,"o":"rank_text_draw"},{"a":5601,"l":"b_15E1","t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr","x":[5596]},{"a":5603,"t":"code","b":[56],"m":"sec"},{"a":5604,"t":"code","b":[233,40],"m":"sbc","o":"#$28"},{"a":5606,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5608,"t":"code","b":[176,2],"m":"bcs","oa":5612,"o":"b_15EC"},{"a":5610,"t":"code","b":[198,192],"m":"dec","oa":192,"o":"text_ptr_hi"},{"a":5612,"l":"b_15EC","t":"code","b":[198,200],"m":"dec","oa":200,"o":"hiscore_index","x":[5608]},{"a":5614,"t":"code","b":[16,231],"m":"bpl","oa":5591,"o":"b_15D7"},{"a":5616,"t":"code","b":[96],"m":"rts"},{"a":5617,"l":"hiscore_copy_column","c":"Copies a 30-byte column of the high-score table (five 6-byte fields) to the screen, entry 4 at the row ($BF/$C0) given and each earlier entry one row (40 bytes) higher. The source is the operand of the LDA at $15F5, written by its callers ($1618/$161D, $162E/$1633). Leaves $BF/$C0 40 bytes above row 0.","t":"code","b":[162,29],"m":"ldx","o":"#$1D","x":[5664,5686]},{"a":5619,"l":"b_15F3","t":"code","b":[160,5],"m":"ldy","o":"#$05","x":[5643]},{"a":5621,"l":"b_15F5","t":"code","b":[189,0,128],"m":"lda","oa":32768,"o":"shape_cells_00,x","x":[5628]},{"a":5622,"t":"note","l":"a_15F6","c":"Low byte of the LDA operand at $15F5, the table hiscore_copy_column reads: written by $1616 ($15, names at $1715) and $162C ($33, scores at $1733).","note":"inside the item at $15F5","x":[5656,5678]},{"a":5623,"t":"note","l":"a_15F7","c":"High byte of the LDA operand at $15F5, written as $17 by $161B and $1631; the image holds $80 (the assembled placeholder $8000).","note":"inside the item at $15F5","x":[5661,5683]},{"a":5624,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":5626,"t":"code","b":[202],"m":"dex"},{"a":5627,"t":"code","b":[136],"m":"dey"},{"a":5628,"t":"code","b":[16,247],"m":"bpl","oa":5621,"o":"b_15F5"},{"a":5630,"t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr"},{"a":5632,"t":"code","b":[56],"m":"sec"},{"a":5633,"t":"code","b":[233,40],"m":"sbc","o":"#$28"},{"a":5635,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5637,"t":"code","b":[176,2],"m":"bcs","oa":5641,"o":"b_1609"},{"a":5639,"t":"code","b":[198,192],"m":"dec","oa":192,"o":"text_ptr_hi"},{"a":5641,"l":"b_1609","t":"code","b":[224,255],"m":"cpx","o":"#$FF","x":[5637]},{"a":5643,"t":"code","b":[208,230],"m":"bne","oa":5619,"o":"b_15F3"},{"a":5645,"t":"code","b":[96],"m":"rts"},{"a":5646,"l":"hiscore_draw_names","c":"Draws the five names (hiscore_names, $1715) at columns 19-24 of rows 0-4: patches hiscore_copy_column's source to $1715 and starts it at $CCB3.","t":"code","b":[169,179],"m":"lda","o":"#$B3","x":[5256,5336]},{"a":5648,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5650,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":5652,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":5654,"t":"code","b":[169,21],"m":"lda","o":"#$15"},{"a":5656,"t":"code","b":[141,246,21],"m":"sta","oa":5622,"o":"a_15F6"},{"a":5659,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":5661,"t":"code","b":[141,247,21],"m":"sta","oa":5623,"o":"a_15F7"},{"a":5664,"t":"code","b":[32,241,21],"m":"jsr","oa":5617,"o":"hiscore_copy_column"},{"a":5667,"t":"code","b":[96],"m":"rts"},{"a":5668,"l":"hiscore_draw_scores","c":"Draws the five scores (hiscore_scores, $1733) at columns 26-31 of rows 0-4: patches hiscore_copy_column's source to $1733 and starts it at $CCBA.","t":"code","b":[169,186],"m":"lda","o":"#$BA","x":[5259,5339]},{"a":5670,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5672,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":5674,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":5676,"t":"code","b":[169,51],"m":"lda","o":"#$33"},{"a":5678,"t":"code","b":[141,246,21],"m":"sta","oa":5622,"o":"a_15F6"},{"a":5681,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":5683,"t":"code","b":[141,247,21],"m":"sta","oa":5623,"o":"a_15F7"},{"a":5686,"t":"code","b":[32,241,21],"m":"jsr","oa":5617,"o":"hiscore_copy_column"},{"a":5689,"t":"code","b":[96],"m":"rts"},{"a":5690,"l":"hiscore_insert","c":"Finds player 1's place in the high-score table and makes room for it. Compares the score on screen ($CC31, six digits; $2049 with X = 9) with the stored scores from the fifth up; the place $CB is 0-4 above the first entry that is equal or higher, 5 when the score does not beat the fifth (nothing changes then; a tie never enters). Otherwise shifts the lower names, scores and ranks down one (hiscore_shift_names, hiscore_shift_scores, hiscore_insert_rank, which stores $C9), copies the score in ($205E) and blanks the name to '......' (hiscore_blank_name). Leaves $BF/$C0 pointing at the name.","t":"code","b":[169,75],"m":"lda","o":"#$4B","x":[5226]},{"a":5692,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5694,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":5696,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":5698,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":5700,"t":"code","b":[133,200],"m":"sta","oa":200,"o":"hiscore_index"},{"a":5702,"l":"b_1646","t":"code","b":[162,9],"m":"ldx","o":"#$09","x":[5722]},{"a":5704,"t":"code","b":[32,73,32],"m":"jsr","oa":8265,"o":"score_compare6"},{"a":5707,"t":"code","b":[176,15],"m":"bcs","oa":5724,"o":"b_165C"},{"a":5709,"t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr"},{"a":5711,"t":"code","b":[56],"m":"sec"},{"a":5712,"t":"code","b":[233,6],"m":"sbc","o":"#$06"},{"a":5714,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5716,"t":"code","b":[176,2],"m":"bcs","oa":5720,"o":"b_1658"},{"a":5718,"t":"code","b":[198,192],"m":"dec","oa":192,"o":"text_ptr_hi"},{"a":5720,"l":"b_1658","t":"code","b":[198,200],"m":"dec","oa":200,"o":"hiscore_index","x":[5716]},{"a":5722,"t":"code","b":[16,234],"m":"bpl","oa":5702,"o":"b_1646"},{"a":5724,"l":"b_165C","t":"code","b":[230,200],"m":"inc","oa":200,"o":"hiscore_index","x":[5707]},{"a":5726,"t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr"},{"a":5728,"t":"code","b":[24],"m":"clc"},{"a":5729,"t":"code","b":[105,6],"m":"adc","o":"#$06"},{"a":5731,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5733,"t":"code","b":[144,2],"m":"bcc","oa":5737,"o":"b_1669"},{"a":5735,"t":"code","b":[230,192],"m":"inc","oa":192,"o":"text_ptr_hi"},{"a":5737,"l":"b_1669","t":"code","b":[164,200],"m":"ldy","oa":200,"o":"hiscore_index","x":[5733]},{"a":5739,"t":"code","b":[132,203],"m":"sty","oa":203,"o":"hiscore_place"},{"a":5741,"t":"code","b":[192,5],"m":"cpy","o":"#$05"},{"a":5743,"t":"code","b":[240,32],"m":"beq","oa":5777,"o":"r_1691"},{"a":5745,"t":"code","b":[192,4],"m":"cpy","o":"#$04"},{"a":5747,"t":"code","b":[240,6],"m":"beq","oa":5755,"o":"b_167B"},{"a":5749,"t":"code","b":[32,146,22],"m":"jsr","oa":5778,"o":"hiscore_shift_names"},{"a":5752,"t":"code","b":[32,188,22],"m":"jsr","oa":5820,"o":"hiscore_shift_scores"},{"a":5755,"l":"b_167B","t":"code","b":[32,243,22],"m":"jsr","oa":5875,"o":"hiscore_insert_rank","x":[5747]},{"a":5758,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":5760,"t":"code","b":[32,94,32],"m":"jsr","oa":8286,"o":"score_copy6"},{"a":5763,"t":"code","b":[165,191],"m":"lda","oa":191,"o":"text_ptr"},{"a":5765,"t":"code","b":[56],"m":"sec"},{"a":5766,"t":"code","b":[233,30],"m":"sbc","o":"#$1E"},{"a":5768,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":5770,"t":"code","b":[176,2],"m":"bcs","oa":5774,"o":"b_168E"},{"a":5772,"t":"code","b":[198,192],"m":"dec","oa":192,"o":"text_ptr_hi"},{"a":5774,"l":"b_168E","t":"code","b":[32,86,23],"m":"jsr","oa":5974,"o":"hiscore_blank_name","x":[5770]},{"a":5777,"l":"r_1691","t":"code","b":[96],"m":"rts","x":[5743]},{"a":5778,"l":"hiscore_shift_names","c":"Moves the names at and below place Y (0-3) down one place, the fifth name dropping out: name 4 = name 3 always, then 3 = 2 if Y < 3, 2 = 1 if Y < 2, 1 = 0 if Y = 0. Six bytes each, X = 5 down to 0.","t":"code","b":[162,5],"m":"ldx","o":"#$05","x":[5749]},{"a":5780,"l":"b_1694","t":"code","b":[189,39,23],"m":"lda","oa":5927,"o":"f_1727,x","x":[5817]},{"a":5783,"t":"code","b":[157,45,23],"m":"sta","oa":5933,"o":"f_172D,x"},{"a":5786,"t":"code","b":[192,3],"m":"cpy","o":"#$03"},{"a":5788,"t":"code","b":[176,26],"m":"bcs","oa":5816,"o":"b_16B8"},{"a":5790,"t":"code","b":[189,33,23],"m":"lda","oa":5921,"o":"f_1721,x"},{"a":5793,"t":"code","b":[157,39,23],"m":"sta","oa":5927,"o":"f_1727,x"},{"a":5796,"t":"code","b":[192,2],"m":"cpy","o":"#$02"},{"a":5798,"t":"code","b":[176,16],"m":"bcs","oa":5816,"o":"b_16B8"},{"a":5800,"t":"code","b":[189,27,23],"m":"lda","oa":5915,"o":"f_171B,x"},{"a":5803,"t":"code","b":[157,33,23],"m":"sta","oa":5921,"o":"f_1721,x"},{"a":5806,"t":"code","b":[192,1],"m":"cpy","o":"#$01"},{"a":5808,"t":"code","b":[176,6],"m":"bcs","oa":5816,"o":"b_16B8"},{"a":5810,"t":"code","b":[189,21,23],"m":"lda","oa":5909,"o":"hiscore_names,x"},{"a":5813,"t":"code","b":[157,27,23],"m":"sta","oa":5915,"o":"f_171B,x"},{"a":5816,"l":"b_16B8","t":"code","b":[202],"m":"dex","x":[5788,5798,5808]},{"a":5817,"t":"code","b":[16,217],"m":"bpl","oa":5780,"o":"b_1694"},{"a":5819,"t":"code","b":[96],"m":"rts"},{"a":5820,"l":"hiscore_shift_scores","c":"Moves the scores at and below place Y (0-3) down one place, the same way hiscore_shift_names moves the names, in hiscore_scores ($1733-$1750).","t":"code","b":[162,5],"m":"ldx","o":"#$05","x":[5752]},{"a":5822,"l":"b_16BE","t":"code","b":[189,69,23],"m":"lda","oa":5957,"o":"f_1745,x","x":[5859]},{"a":5825,"t":"code","b":[157,75,23],"m":"sta","oa":5963,"o":"f_174B,x"},{"a":5828,"t":"code","b":[192,3],"m":"cpy","o":"#$03"},{"a":5830,"t":"code","b":[176,26],"m":"bcs","oa":5858,"o":"b_16E2"},{"a":5832,"t":"code","b":[189,63,23],"m":"lda","oa":5951,"o":"f_173F,x"},{"a":5835,"t":"code","b":[157,69,23],"m":"sta","oa":5957,"o":"f_1745,x"},{"a":5838,"t":"code","b":[192,2],"m":"cpy","o":"#$02"},{"a":5840,"t":"code","b":[176,16],"m":"bcs","oa":5858,"o":"b_16E2"},{"a":5842,"t":"code","b":[189,57,23],"m":"lda","oa":5945,"o":"f_1739,x"},{"a":5845,"t":"code","b":[157,63,23],"m":"sta","oa":5951,"o":"f_173F,x"},{"a":5848,"t":"code","b":[192,1],"m":"cpy","o":"#$01"},{"a":5850,"t":"code","b":[176,6],"m":"bcs","oa":5858,"o":"b_16E2"},{"a":5852,"t":"code","b":[189,51,23],"m":"lda","oa":5939,"o":"hiscore_scores,x"},{"a":5855,"t":"code","b":[157,57,23],"m":"sta","oa":5945,"o":"f_1739,x"},{"a":5858,"l":"b_16E2","t":"code","b":[202],"m":"dex","x":[5830,5840,5850]},{"a":5859,"t":"code","b":[16,217],"m":"bpl","oa":5822,"o":"b_16BE"},{"a":5861,"t":"code","b":[96],"m":"rts"},{"a":5862,"l":"clear_top_rows","c":"Fills the first five text rows, screen $CC00-$CCC7 (200 bytes), with spaces. Called by hiscore_draw and after the high-score screen ($1F10).","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[5551,7952]},{"a":5864,"t":"code","b":[162,199],"m":"ldx","o":"#$C7"},{"a":5866,"l":"b_16EA","t":"code","b":[157,0,204],"m":"sta","oa":52224,"o":"f_CC00,x","x":[5872]},{"a":5869,"t":"code","b":[202],"m":"dex"},{"a":5870,"t":"code","b":[224,255],"m":"cpx","o":"#$FF"},{"a":5872,"t":"code","b":[208,248],"m":"bne","oa":5866,"o":"b_16EA"},{"a":5874,"t":"code","b":[96],"m":"rts"},{"a":5875,"l":"hiscore_insert_rank","c":"Stores the rank $C9 (0 novice, 1-10 dan) for the new entry at place Y in hiscore_ranks, moving the entries from Y to 3 down one first; at place 4 it just stores. Keeps $C8 = Y.","t":"code","b":[132,200],"m":"sty","oa":200,"o":"hiscore_index","x":[5755]},{"a":5877,"t":"code","b":[162,3],"m":"ldx","o":"#$03"},{"a":5879,"t":"code","b":[192,4],"m":"cpy","o":"#$04"},{"a":5881,"t":"code","b":[208,6],"m":"bne","oa":5889,"o":"b_1701"},{"a":5883,"t":"code","b":[165,201],"m":"lda","oa":201,"o":"hiscore_rank"},{"a":5885,"t":"code","b":[153,81,23],"m":"sta","oa":5969,"o":"hiscore_ranks,y"},{"a":5888,"t":"code","b":[96],"m":"rts"},{"a":5889,"l":"b_1701","t":"code","b":[189,81,23],"m":"lda","oa":5969,"o":"hiscore_ranks,x","x":[5881,5900]},{"a":5892,"t":"code","b":[157,82,23],"m":"sta","oa":5970,"o":"f_1752,x"},{"a":5895,"t":"code","b":[228,200],"m":"cpx","oa":200,"o":"hiscore_index"},{"a":5897,"t":"code","b":[240,4],"m":"beq","oa":5903,"o":"b_170F"},{"a":5899,"t":"code","b":[202],"m":"dex"},{"a":5900,"t":"code","b":[76,1,23],"m":"jmp","oa":5889,"o":"b_1701"},{"a":5903,"l":"b_170F","t":"code","b":[165,201],"m":"lda","oa":201,"o":"hiscore_rank","x":[5897]},{"a":5905,"t":"code","b":[153,81,23],"m":"sta","oa":5969,"o":"hiscore_ranks,y"},{"a":5908,"t":"code","b":[96],"m":"rts"},{"a":5909,"l":"hiscore_names","c":"The high-score names: five 6-byte fields, first place at $1715, then $171B, $1721, $1727, $172D; '......' (six $2E) in the image, as the disk holds them. Written by hiscore_shift_names, hiscore_blank_name and hiscore_type_name; drawn by hiscore_draw_names.","t":"byte","b":[46,46,46,46,46,46],"x":[5810]},{"a":5915,"l":"f_171B","c":"Second-place name (six characters), inside hiscore_names.","t":"byte","b":[46,46,46,46,46,46],"x":[5800,5813]},{"a":5921,"l":"f_1721","c":"Third-place name, inside hiscore_names.","t":"byte","b":[46,46,46,46,46,46],"x":[5790,5803]},{"a":5927,"l":"f_1727","c":"Fourth-place name, inside hiscore_names.","t":"byte","b":[46,46,46,46,46,46],"x":[5780,5793]},{"a":5933,"l":"f_172D","c":"Fifth-place name, inside hiscore_names: the one dropped when a new score enters.","t":"byte","b":[46,46,46,46,46,46],"x":[5783]},{"a":5939,"l":"hiscore_scores","c":"The high scores: five 6-byte fields in screen-code digits with leading spaces, first place at $1733, then $1739, $173F, $1745, $174B; all '     0' in the image. Compared and written by hiscore_insert, shifted by hiscore_shift_scores, drawn by hiscore_draw_scores.","t":"byte","b":[32,32,32,32,32,48],"x":[5852]},{"a":5945,"l":"f_1739","c":"Second-place score (six screen codes), inside hiscore_scores.","t":"byte","b":[32,32,32,32,32,48],"x":[5842,5855]},{"a":5951,"l":"f_173F","c":"Third-place score, inside hiscore_scores.","t":"byte","b":[32,32,32,32,32,48],"x":[5832,5845]},{"a":5957,"l":"f_1745","c":"Fourth-place score, inside hiscore_scores.","t":"byte","b":[32,32,32,32,32,48],"x":[5822,5835]},{"a":5963,"l":"f_174B","c":"Fifth-place score, inside hiscore_scores; hiscore_insert starts its comparison here.","t":"byte","b":[32,32,32,32,32,48],"x":[5825]},{"a":5969,"l":"hiscore_ranks","c":"The rank reached for each of the five high-score entries: 0 novice, 1-10 dan, $80 (all five in the image) for an empty place, which hiscore_draw leaves blank. Written by hiscore_insert_rank from $C9.","t":"byte","b":[128],"x":[5593,5885,5889,5905]},{"a":5970,"l":"f_1752","c":"Ranks of places 2-5, inside hiscore_ranks; hiscore_insert_rank shifts them by storing here ($1704).","t":"byte","b":[128,128,128,128],"x":[5892]},{"a":5974,"l":"hiscore_blank_name","c":"Writes six '.' ($2E) at ($BF/$C0): the new entry's name before it is typed.","t":"code","b":[169,46],"m":"lda","o":"#$2E","x":[5774]},{"a":5976,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":5978,"l":"b_175A","t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y","x":[5983]},{"a":5980,"t":"code","b":[200],"m":"iny"},{"a":5981,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":5983,"t":"code","b":[208,249],"m":"bne","oa":5978,"o":"b_175A"},{"a":5985,"t":"code","b":[96],"m":"rts"},{"a":5986,"l":"hiscore_type_name","c":"Lets the player type a name of up to six characters into the entry at ($BF), echoed on screen through hiscore_put_char. Sets $FF = 4 (song 4). Each pass waits two frames ($21CA, X = 1, Y = 2) and reads a key (key_read_new). DEL ($14) steps back and blanks a character (not past the first); RETURN, or fire on joystick port 2, fills the rest with spaces and ends; any other character is stored and the sixth ends the entry. Uses $73 for the position.","t":"code","b":[169,4],"m":"lda","o":"#$04","x":[5324]},{"a":5988,"t":"code","b":[133,255],"m":"sta","oa":255,"o":"song"},{"a":5990,"l":"b_1766","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[6018,6034,6050,6058]},{"a":5992,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":5995,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":5998,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":6000,"t":"code","b":[240,35],"m":"beq","oa":6037,"o":"b_1795"},{"a":6002,"t":"code","b":[132,115],"m":"sty","oa":115,"o":"fighter_distance"},{"a":6004,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6006,"t":"code","b":[160,2],"m":"ldy","o":"#$02"},{"a":6008,"t":"code","b":[32,202,33],"m":"jsr","oa":8650,"o":"wait_y_frames"},{"a":6011,"t":"code","b":[32,90,21],"m":"jsr","oa":5466,"o":"key_read_new"},{"a":6014,"t":"code","b":[164,115],"m":"ldy","oa":115,"o":"fighter_distance"},{"a":6016,"t":"code","b":[201,64],"m":"cmp","o":"#$40"},{"a":6018,"t":"code","b":[240,226],"m":"beq","oa":5990,"o":"b_1766"},{"a":6020,"t":"code","b":[201,13],"m":"cmp","o":"#$0D"},{"a":6022,"t":"code","b":[240,13],"m":"beq","oa":6037,"o":"b_1795"},{"a":6024,"t":"code","b":[201,20],"m":"cmp","o":"#$14"},{"a":6026,"t":"code","b":[240,20],"m":"beq","oa":6048,"o":"b_17A0"},{"a":6028,"t":"code","b":[32,173,23],"m":"jsr","oa":6061,"o":"hiscore_put_char"},{"a":6031,"t":"code","b":[200],"m":"iny"},{"a":6032,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":6034,"t":"code","b":[208,210],"m":"bne","oa":5990,"o":"b_1766"},{"a":6036,"t":"code","b":[96],"m":"rts"},{"a":6037,"l":"b_1795","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6000,6022]},{"a":6039,"l":"b_1797","t":"code","b":[32,173,23],"m":"jsr","oa":6061,"o":"hiscore_put_char","x":[6045]},{"a":6042,"t":"code","b":[200],"m":"iny"},{"a":6043,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":6045,"t":"code","b":[208,248],"m":"bne","oa":6039,"o":"b_1797"},{"a":6047,"t":"code","b":[96],"m":"rts"},{"a":6048,"l":"b_17A0","t":"code","b":[192,0],"m":"cpy","o":"#$00","x":[6026]},{"a":6050,"t":"code","b":[240,194],"m":"beq","oa":5990,"o":"b_1766"},{"a":6052,"t":"code","b":[136],"m":"dey"},{"a":6053,"t":"code","b":[169,32],"m":"lda","o":"#$20"},{"a":6055,"t":"code","b":[32,173,23],"m":"jsr","oa":6061,"o":"hiscore_put_char"},{"a":6058,"t":"code","b":[76,102,23],"m":"jmp","oa":5990,"o":"b_1766"},{"a":6061,"l":"hiscore_put_char","c":"Stores A at ($BF),Y (the name in the table) and on screen; the screen address is the operand of the STA at $17AF, written by hiscore_after_game ($149C, $14AA, $14B0) as $CC13 + 40 x place.","t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y","x":[6028,6039,6055]},{"a":6063,"t":"code","b":[153,0,204],"m":"sta","oa":52224,"o":"f_CC00,y"},{"a":6064,"t":"note","l":"a_17B0","c":"Low byte of the STA $CC00,Y operand at $17AF: the screen address of the name being typed, $13 + 40 x place, written by hiscore_after_game at $14B0.","note":"inside the item at $17AF","x":[5296,5299]},{"a":6065,"t":"note","l":"a_17B1","c":"High byte of the STA operand at $17AF: $CC plus the carry of the place multiplication, written at $149C and $14AA.","note":"inside the item at $17AF","x":[5276,5290,5307]},{"a":6066,"t":"code","b":[96],"m":"rts"},{"a":6067,"l":"colour_fill_24","c":"Fills 24 colour RAM cells from ($CC/$CD) with A: the high-score row being typed (columns 8-31).","t":"code","b":[160,23],"m":"ldy","o":"#$17","x":[5319,5329]},{"a":6069,"l":"b_17B5","t":"code","b":[145,204],"m":"sta","oa":204,"o":"(colour_ptr),y","x":[6072]},{"a":6071,"t":"code","b":[136],"m":"dey"},{"a":6072,"t":"code","b":[16,251],"m":"bpl","oa":6069,"o":"b_17B5"},{"a":6074,"t":"code","b":[96],"m":"rts"},{"a":6075,"l":"bitmap_unpack","c":"Unpacks the backdrop for stage $AF & 3 into the bitmap: takes the backdrop's packed stream address from the word table at $1839, adds the stream's first word (the offset to its last byte) and reads backwards from there, writing downwards from $F53F. Control byte n < $80: copy the n bytes below it; n >= $80: repeat the byte below it n & $7F times; 0 ends. Pointers in $34/$35 (source), $36/$37 (destination), count in $38; uses $181D and $182B to step them. Called by $1F54 when the stage's backdrop changes.","t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage","x":[8020]},{"a":6077,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":6079,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6080,"t":"code","b":[168],"m":"tay"},{"a":6081,"t":"code","b":[185,57,24],"m":"lda","oa":6201,"o":"backdrop_bitmap_ptrs,y"},{"a":6084,"t":"code","b":[133,52],"m":"sta","oa":52,"o":"unpack_src"},{"a":6086,"t":"code","b":[185,58,24],"m":"lda","oa":6202,"o":"f_183A,y"},{"a":6089,"t":"code","b":[133,53],"m":"sta","oa":53,"o":"unpack_src_hi"},{"a":6091,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":6093,"t":"code","b":[24],"m":"clc"},{"a":6094,"t":"code","b":[177,52],"m":"lda","oa":52,"o":"(unpack_src),y"},{"a":6096,"t":"code","b":[101,52],"m":"adc","oa":52,"o":"unpack_src"},{"a":6098,"t":"code","b":[72],"m":"pha"},{"a":6099,"t":"code","b":[200],"m":"iny"},{"a":6100,"t":"code","b":[177,52],"m":"lda","oa":52,"o":"(unpack_src),y"},{"a":6102,"t":"code","b":[101,53],"m":"adc","oa":53,"o":"unpack_src_hi"},{"a":6104,"t":"code","b":[133,53],"m":"sta","oa":53,"o":"unpack_src_hi"},{"a":6106,"t":"code","b":[104],"m":"pla"},{"a":6107,"t":"code","b":[133,52],"m":"sta","oa":52,"o":"unpack_src"},{"a":6109,"t":"code","b":[169,63],"m":"lda","o":"#$3F"},{"a":6111,"t":"code","b":[133,54],"m":"sta","oa":54,"o":"unpack_dst"},{"a":6113,"t":"code","b":[169,245],"m":"lda","o":"#$F5"},{"a":6115,"t":"code","b":[133,55],"m":"sta","oa":55,"o":"unpack_dst_hi"},{"a":6117,"l":"b_17E5","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[6142,6170]},{"a":6119,"t":"code","b":[177,52],"m":"lda","oa":52,"o":"(unpack_src),y"},{"a":6121,"t":"code","b":[240,49],"m":"beq","oa":6172,"o":"r_181C"},{"a":6123,"t":"code","b":[48,19],"m":"bmi","oa":6144,"o":"unpack_bitmap_run"},{"a":6125,"t":"code","b":[133,56],"m":"sta","oa":56,"o":"unpack_count"},{"a":6127,"t":"code","b":[32,29,24],"m":"jsr","oa":6173,"o":"unpack_dest_back"},{"a":6130,"t":"code","b":[32,43,24],"m":"jsr","oa":6187,"o":"unpack_src_back"},{"a":6133,"t":"code","b":[164,56],"m":"ldy","oa":56,"o":"unpack_count"},{"a":6135,"l":"b_17F7","t":"code","b":[177,52],"m":"lda","oa":52,"o":"(unpack_src),y","x":[6140]},{"a":6137,"t":"code","b":[145,54],"m":"sta","oa":54,"o":"(unpack_dst),y"},{"a":6139,"t":"code","b":[136],"m":"dey"},{"a":6140,"t":"code","b":[208,249],"m":"bne","oa":6135,"o":"b_17F7"},{"a":6142,"t":"code","b":[240,229],"m":"beq","oa":6117,"o":"b_17E5"},{"a":6144,"l":"unpack_bitmap_run","c":"Run branch of the backdrop bitmap unpacker that starts at $17BB: control byte with bit 7 set = a run of (byte AND $7F) copies of the byte before it in the stream. Moves the source pointer $34/$35 back two bytes ($182B with $38 = 1), the destination $36/$37 back by the count ($181D), fills downwards with STA ($36),Y, then returns to the control-byte loop at $17E5. $181C is the unpacker's exit on a zero control byte.","t":"code","b":[41,127],"m":"and","o":"#$7F","x":[6123]},{"a":6146,"t":"code","b":[170],"m":"tax"},{"a":6147,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6149,"t":"code","b":[133,56],"m":"sta","oa":56,"o":"unpack_count"},{"a":6151,"t":"code","b":[32,43,24],"m":"jsr","oa":6187,"o":"unpack_src_back"},{"a":6154,"t":"code","b":[134,56],"m":"stx","oa":56,"o":"unpack_count"},{"a":6156,"t":"code","b":[32,29,24],"m":"jsr","oa":6173,"o":"unpack_dest_back"},{"a":6159,"t":"code","b":[160,1],"m":"ldy","o":"#$01"},{"a":6161,"t":"code","b":[177,52],"m":"lda","oa":52,"o":"(unpack_src),y"},{"a":6163,"t":"code","b":[164,56],"m":"ldy","oa":56,"o":"unpack_count"},{"a":6165,"l":"b_1815","t":"code","b":[145,54],"m":"sta","oa":54,"o":"(unpack_dst),y","x":[6168]},{"a":6167,"t":"code","b":[136],"m":"dey"},{"a":6168,"t":"code","b":[208,251],"m":"bne","oa":6165,"o":"b_1815"},{"a":6170,"t":"code","b":[240,201],"m":"beq","oa":6117,"o":"b_17E5"},{"a":6172,"l":"r_181C","t":"code","b":[96],"m":"rts","x":[6121]},{"a":6173,"l":"unpack_dest_back","c":"Backdrop unpacker helper: destination pointer $36/$37 minus the count in $38 (16-bit). The bitmap is rebuilt from its end ($F53F) towards its start.","t":"code","b":[56],"m":"sec","x":[6127,6156]},{"a":6174,"t":"code","b":[165,54],"m":"lda","oa":54,"o":"unpack_dst"},{"a":6176,"t":"code","b":[229,56],"m":"sbc","oa":56,"o":"unpack_count"},{"a":6178,"t":"code","b":[133,54],"m":"sta","oa":54,"o":"unpack_dst"},{"a":6180,"t":"code","b":[165,55],"m":"lda","oa":55,"o":"unpack_dst_hi"},{"a":6182,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":6184,"t":"code","b":[133,55],"m":"sta","oa":55,"o":"unpack_dst_hi"},{"a":6186,"t":"code","b":[96],"m":"rts"},{"a":6187,"l":"unpack_src_back","c":"Backdrop unpacker helper: source pointer $34/$35 minus ($38 + 1), the CLC before SBC taking one extra. Steps back over a literal run plus its control byte, or (with $38 = 1) over a run's value and control byte.","t":"code","b":[24],"m":"clc","x":[6130,6151]},{"a":6188,"t":"code","b":[165,52],"m":"lda","oa":52,"o":"unpack_src"},{"a":6190,"t":"code","b":[229,56],"m":"sbc","oa":56,"o":"unpack_count"},{"a":6192,"t":"code","b":[133,52],"m":"sta","oa":52,"o":"unpack_src"},{"a":6194,"t":"code","b":[165,53],"m":"lda","oa":53,"o":"unpack_src_hi"},{"a":6196,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":6198,"t":"code","b":[133,53],"m":"sta","oa":53,"o":"unpack_src_hi"},{"a":6200,"t":"code","b":[96],"m":"rts"},{"a":6201,"l":"backdrop_bitmap_ptrs","c":"Four words, one per backdrop (index = $AF AND 3): start of each packed bitmap, read by $17BB. The first word at each start is the packed length, added to give the end where unpacking begins: $3F5F-$4AAD (0, Fuji with pagoda and torii), $4AAE-$54AB (1, lake), $54AC-$5CEB (2, dojo), $5CEC-$68CA (3, Buddha). Each unpacks to the 3840 bytes $E640-$F53F, character rows 5-16 of the bitmap at $E000.","t":"word","b":[95,63,174,74,172,84,236,92],"d":[16223,19118,21676,23788],"x":[6081]},{"a":6202,"t":"note","l":"f_183A","c":"High byte of backdrop 0's entry in the bitmap pointer table at $1839, read by $17C6 (the table is read as two interleaved byte tables).","note":"inside the item at $1839","x":[6086]},{"a":6209,"l":"backdrop_colour_ptrs","c":"Four words, one per backdrop: start of each nibble-packed colour stream read by $1849: $68CB (Fuji), $6B41 (lake), $6D96 (dojo), $6FE0 (Buddha). Each stream holds three passes: colour RAM $D8C8-$DAA7, then the high and the low nibbles of screen $CCC8-$CEA7 (the bitmap's colours for rows 5-16).","t":"word","b":[203,104,65,107,150,109,224,111],"d":[26827,27457,28054,28640],"x":[6223]},{"a":6210,"t":"note","l":"f_1842","c":"High byte of backdrop 0's entry in the colour pointer table at $1841, read by $1854 (the table is read as two interleaved byte tables).","note":"inside the item at $1841","x":[6228]},{"a":6217,"l":"unpack_backdrop_colours","c":"Unpacks the colours of backdrop ($AF AND 3) from the stream named in $1841. Pass 1 writes low nibbles into colour RAM from $D8C8 (mask $43 = $F0), pass 2 the high nibbles of screen RAM from $CCC8 ($43 = $0F), pass 3 the low nibbles of the same cells ($43 = $F0). Each pass is $188B and ends at a zero count. Uses $3F/$40 source, $41 nibble, $42 read mask, $43 write mask, $36/$37 destination. Called by $1F3A.","t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage","x":[8017]},{"a":6219,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":6221,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6222,"t":"code","b":[170],"m":"tax"},{"a":6223,"t":"code","b":[189,65,24],"m":"lda","oa":6209,"o":"backdrop_colour_ptrs,x"},{"a":6226,"t":"code","b":[133,63],"m":"sta","oa":63,"o":"colour_src"},{"a":6228,"t":"code","b":[189,66,24],"m":"lda","oa":6210,"o":"f_1842,x"},{"a":6231,"t":"code","b":[133,64],"m":"sta","oa":64,"o":"colour_src_hi"},{"a":6233,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":6235,"t":"code","b":[133,66],"m":"sta","oa":66,"o":"colour_read_mask"},{"a":6237,"t":"code","b":[169,240],"m":"lda","o":"#$F0"},{"a":6239,"t":"code","b":[133,67],"m":"sta","oa":67,"o":"colour_write_mask"},{"a":6241,"t":"code","b":[169,200],"m":"lda","o":"#$C8"},{"a":6243,"t":"code","b":[133,54],"m":"sta","oa":54,"o":"unpack_dst"},{"a":6245,"t":"code","b":[169,216],"m":"lda","o":"#$D8"},{"a":6247,"t":"code","b":[133,55],"m":"sta","oa":55,"o":"unpack_dst_hi"},{"a":6249,"t":"code","b":[32,139,24],"m":"jsr","oa":6283,"o":"unpack_nibble_pass"},{"a":6252,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":6254,"t":"code","b":[133,67],"m":"sta","oa":67,"o":"colour_write_mask"},{"a":6256,"t":"code","b":[169,200],"m":"lda","o":"#$C8"},{"a":6258,"t":"code","b":[133,54],"m":"sta","oa":54,"o":"unpack_dst"},{"a":6260,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":6262,"t":"code","b":[133,55],"m":"sta","oa":55,"o":"unpack_dst_hi"},{"a":6264,"t":"code","b":[32,139,24],"m":"jsr","oa":6283,"o":"unpack_nibble_pass"},{"a":6267,"t":"code","b":[169,240],"m":"lda","o":"#$F0"},{"a":6269,"t":"code","b":[133,67],"m":"sta","oa":67,"o":"colour_write_mask"},{"a":6271,"t":"code","b":[169,200],"m":"lda","o":"#$C8"},{"a":6273,"t":"code","b":[133,54],"m":"sta","oa":54,"o":"unpack_dst"},{"a":6275,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":6277,"t":"code","b":[133,55],"m":"sta","oa":55,"o":"unpack_dst_hi"},{"a":6279,"t":"code","b":[32,139,24],"m":"jsr","oa":6283,"o":"unpack_nibble_pass"},{"a":6282,"t":"code","b":[96],"m":"rts"},{"a":6283,"l":"unpack_nibble_pass","c":"One pass of the colour unpacker: reads a control nibble; its bits 0-2 are a count (0 ends the pass). Bit 3 clear: the next count nibbles are literal values. Bit 3 set: the next nibble is repeated count times. Each value goes through $18CB into ($36) under mask $43. No bound on the destination: the stream decides where a pass stops.","t":"code","b":[32,174,24],"m":"jsr","oa":6318,"o":"read_packed_nibble","x":[6249,6264,6279,6304,6315]},{"a":6286,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":6288,"t":"code","b":[170],"m":"tax"},{"a":6289,"t":"code","b":[240,26],"m":"beq","oa":6317,"o":"r_18AD"},{"a":6291,"t":"code","b":[197,65],"m":"cmp","oa":65,"o":"colour_nybble"},{"a":6293,"t":"code","b":[208,11],"m":"bne","oa":6306,"o":"b_18A2"},{"a":6295,"l":"b_1897","t":"code","b":[32,174,24],"m":"jsr","oa":6318,"o":"read_packed_nibble","x":[6302]},{"a":6298,"t":"code","b":[32,203,24],"m":"jsr","oa":6347,"o":"write_packed_nibble"},{"a":6301,"t":"code","b":[202],"m":"dex"},{"a":6302,"t":"code","b":[208,247],"m":"bne","oa":6295,"o":"b_1897"},{"a":6304,"t":"code","b":[240,233],"m":"beq","oa":6283,"o":"unpack_nibble_pass"},{"a":6306,"l":"b_18A2","t":"code","b":[32,174,24],"m":"jsr","oa":6318,"o":"read_packed_nibble","x":[6293]},{"a":6309,"l":"b_18A5","t":"code","b":[32,203,24],"m":"jsr","oa":6347,"o":"write_packed_nibble","x":[6313]},{"a":6312,"t":"code","b":[202],"m":"dex"},{"a":6313,"t":"code","b":[208,250],"m":"bne","oa":6309,"o":"b_18A5"},{"a":6315,"t":"code","b":[240,222],"m":"beq","oa":6283,"o":"unpack_nibble_pass"},{"a":6317,"l":"r_18AD","t":"code","b":[96],"m":"rts","x":[6289]},{"a":6318,"l":"read_packed_nibble","c":"Reads the next nibble of the colour stream at ($3F) into A and $41: the low nibble first (mask $42 = $0F), then the high nibble, after which the pointer $3F/$40 advances to the next byte. $42 alternates $0F/$F0.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[6283,6295,6306]},{"a":6320,"t":"code","b":[177,63],"m":"lda","oa":63,"o":"(colour_src),y"},{"a":6322,"t":"code","b":[37,66],"m":"and","oa":66,"o":"colour_read_mask"},{"a":6324,"t":"code","b":[160,240],"m":"ldy","o":"#$F0"},{"a":6326,"t":"code","b":[36,66],"m":"bit","oa":66,"o":"colour_read_mask"},{"a":6328,"t":"code","b":[16,12],"m":"bpl","oa":6342,"o":"b_18C6"},{"a":6330,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6331,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6332,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6333,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6334,"t":"code","b":[160,15],"m":"ldy","o":"#$0F"},{"a":6336,"t":"code","b":[230,63],"m":"inc","oa":63,"o":"colour_src"},{"a":6338,"t":"code","b":[208,2],"m":"bne","oa":6342,"o":"b_18C6"},{"a":6340,"t":"code","b":[230,64],"m":"inc","oa":64,"o":"colour_src_hi"},{"a":6342,"l":"b_18C6","t":"code","b":[133,65],"m":"sta","oa":65,"o":"colour_nybble","x":[6328,6338]},{"a":6344,"t":"code","b":[132,66],"m":"sty","oa":66,"o":"colour_read_mask"},{"a":6346,"t":"code","b":[96],"m":"rts"},{"a":6347,"l":"write_packed_nibble","c":"Writes nibble $41 into ($36) keeping the bits selected by mask $43: $43 = $F0 writes the low nibble, $43 = $0F shifts the value up and writes the high nibble. Advances $36/$37 by one.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[6298,6309]},{"a":6349,"t":"code","b":[177,54],"m":"lda","oa":54,"o":"(unpack_dst),y"},{"a":6351,"t":"code","b":[37,67],"m":"and","oa":67,"o":"colour_write_mask"},{"a":6353,"t":"code","b":[133,68],"m":"sta","oa":68,"o":"colour_scratch"},{"a":6355,"t":"code","b":[165,65],"m":"lda","oa":65,"o":"colour_nybble"},{"a":6357,"t":"code","b":[36,67],"m":"bit","oa":67,"o":"colour_write_mask"},{"a":6359,"t":"code","b":[48,4],"m":"bmi","oa":6365,"o":"b_18DD"},{"a":6361,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6362,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6363,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6364,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6365,"l":"b_18DD","t":"code","b":[5,68],"m":"ora","oa":68,"o":"colour_scratch","x":[6359]},{"a":6367,"t":"code","b":[145,54],"m":"sta","oa":54,"o":"(unpack_dst),y"},{"a":6369,"t":"code","b":[230,54],"m":"inc","oa":54,"o":"unpack_dst"},{"a":6371,"t":"code","b":[208,2],"m":"bne","oa":6375,"o":"r_18E7"},{"a":6373,"t":"code","b":[230,55],"m":"inc","oa":55,"o":"unpack_dst_hi"},{"a":6375,"l":"r_18E7","t":"code","b":[96],"m":"rts","x":[6371]},{"a":6376,"l":"machine_setup","c":"Machine set-up, called once from the entry at $1AED. Clears $CF (sound effects on), $FF (no tune), $24, $5D and $C6 (joystick control); installs the interrupt vectors ($1943); copies $C700-$C8FF, where the loader left it, to $0200-$03FF (a 512-byte table of rising values, its use not read here); sets up the VIC and screen ($1991); seeds the random byte $99 with $53 and sets $B6 = 1, the backdrop taken to be in the bitmap, so the first $1F3A with backdrop 0 unpacks it.","t":"code","b":[120],"m":"sei","x":[6893]},{"a":6377,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6379,"t":"code","b":[133,207],"m":"sta","oa":207,"o":"speech_off"},{"a":6381,"t":"code","b":[133,255],"m":"sta","oa":255,"o":"song"},{"a":6383,"t":"code","b":[133,36],"m":"sta","oa":36,"o":"spr012_fighter"},{"a":6385,"t":"code","b":[133,93],"m":"sta","oa":93,"o":"shape_direct"},{"a":6387,"t":"code","b":[133,198],"m":"sta","oa":198,"o":"keyboard_mode"},{"a":6389,"t":"code","b":[32,67,25],"m":"jsr","oa":6467,"o":"install_vectors"},{"a":6392,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6394,"l":"b_18FA","t":"code","b":[189,0,199],"m":"lda","oa":50944,"o":"f_C700,x","x":[6407]},{"a":6397,"t":"code","b":[157,0,2],"m":"sta","oa":512,"o":"speech_period_lo,x"},{"a":6400,"t":"code","b":[189,0,200],"m":"lda","oa":51200,"o":"f_C800,x"},{"a":6403,"t":"code","b":[157,0,3],"m":"sta","oa":768,"o":"speech_period_hi,x"},{"a":6406,"t":"code","b":[232],"m":"inx"},{"a":6407,"t":"code","b":[208,241],"m":"bne","oa":6394,"o":"b_18FA"},{"a":6409,"t":"code","b":[32,145,25],"m":"jsr","oa":6545,"o":"setup_vic"},{"a":6412,"t":"code","b":[169,83],"m":"lda","o":"#$53"},{"a":6414,"t":"code","b":[133,153],"m":"sta","oa":153,"o":"random_frame"},{"a":6416,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6418,"t":"code","b":[133,182],"m":"sta","oa":182,"o":"backdrop_shown"},{"a":6420,"t":"code","b":[96],"m":"rts"},{"a":6421,"l":"colour_panel_rows","c":"Colour RAM $D800-$D8C7 (text rows 0-4, the score panel) set to 6, blue.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[6618]},{"a":6423,"t":"code","b":[169,6],"m":"lda","o":"#$06"},{"a":6425,"l":"b_1919","t":"code","b":[157,0,216],"m":"sta","o":"colour_ram,x","x":[6431]},{"a":6428,"t":"code","b":[232],"m":"inx"},{"a":6429,"t":"code","b":[224,200],"m":"cpx","o":"#$C8"},{"a":6431,"t":"code","b":[208,248],"m":"bne","oa":6425,"o":"b_1919"},{"a":6433,"t":"code","b":[96],"m":"rts"},{"a":6434,"l":"clear_panel_rows","c":"Screen $CC00-$CCC7 (text rows 0-4, the score panel) filled with spaces ($20).","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6621]},{"a":6436,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6438,"l":"b_1926","t":"code","b":[157,0,204],"m":"sta","oa":52224,"o":"f_CC00,x","x":[6444]},{"a":6441,"t":"code","b":[232],"m":"inx"},{"a":6442,"t":"code","b":[224,200],"m":"cpx","o":"#$C8"},{"a":6444,"t":"code","b":[208,248],"m":"bne","oa":6438,"o":"b_1926"},{"a":6446,"t":"code","b":[96],"m":"rts"},{"a":6447,"l":"colour_floor_rows","c":"Fills colour RAM $DAA8-$DBFF and screen $CEA8-$CFFF with $77: the bitmap colours of character rows 17-24, the strip below the part each backdrop redraws (rows 5-16). The overlapping 256-byte loops also overwrite the sprite pointers at $CFF8-$CFFF.","t":"code","b":[169,119],"m":"lda","o":"#$77","x":[6615]},{"a":6449,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6451,"l":"b_1933","t":"code","b":[157,168,218],"m":"sta","o":"$DAA8,x","x":[6464]},{"a":6454,"t":"code","b":[157,0,219],"m":"sta","o":"$DB00,x"},{"a":6457,"t":"code","b":[157,168,206],"m":"sta","oa":52904,"o":"f_CEA8,x"},{"a":6460,"t":"code","b":[157,0,207],"m":"sta","oa":52992,"o":"f_CF00,x"},{"a":6463,"t":"code","b":[202],"m":"dex"},{"a":6464,"t":"code","b":[208,241],"m":"bne","oa":6451,"o":"b_1933"},{"a":6466,"t":"code","b":[96],"m":"rts"},{"a":6467,"l":"install_vectors","c":"Interrupt set-up: $01 = 7, CIA 1 interrupts off ($DC0D = $7F), CLI/SEI to take any pending one, VIC raster interrupt enabled ($D01A = 1), $01 = 5 (RAM at $A000 and $E000, I/O at $D000, KERNAL out). Hardware vectors: IRQ $31F2, RESET $1990 (an RTI), NMI $2FF2. CIA 2: all interrupts off, then $DD0D = $82 enables its timer B interrupt (the NMI), timer B latch $DD06/$DD07 = $16BC. CIA 1 port A direction $DC02 = 0. The timer is not started here.","t":"code","b":[120],"m":"sei","x":[6389]},{"a":6468,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":6470,"t":"code","b":[133,1],"m":"sta","oa":1,"o":"cpu_port"},{"a":6472,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":6474,"t":"code","b":[141,13,220],"m":"sta","o":"cia1_interrupt"},{"a":6477,"t":"code","b":[88],"m":"cli"},{"a":6478,"t":"code","b":[120],"m":"sei"},{"a":6479,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6481,"t":"code","b":[141,26,208],"m":"sta","o":"vic_irq_enable"},{"a":6484,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":6486,"t":"code","b":[133,1],"m":"sta","oa":1,"o":"cpu_port"},{"a":6488,"t":"code","b":[169,242],"m":"lda","o":"#$F2"},{"a":6490,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":6493,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":6495,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":6498,"t":"code","b":[169,144],"m":"lda","o":"#$90"},{"a":6500,"t":"code","b":[141,252,255],"m":"sta","oa":65532,"o":"$FFFC"},{"a":6503,"t":"code","b":[169,25],"m":"lda","o":"#$19"},{"a":6505,"t":"code","b":[141,253,255],"m":"sta","oa":65533,"o":"$FFFD"},{"a":6508,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":6510,"t":"code","b":[141,13,221],"m":"sta","o":"cia2_interrupt"},{"a":6513,"t":"code","b":[169,242],"m":"lda","o":"#$F2"},{"a":6515,"t":"code","b":[141,250,255],"m":"sta","oa":65530,"o":"hw_vectors"},{"a":6518,"t":"code","b":[169,47],"m":"lda","o":"#$2F"},{"a":6520,"t":"code","b":[141,251,255],"m":"sta","oa":65531,"o":"$FFFB"},{"a":6523,"t":"code","b":[169,130],"m":"lda","o":"#$82"},{"a":6525,"t":"code","b":[141,13,221],"m":"sta","o":"cia2_interrupt"},{"a":6528,"t":"code","b":[169,188],"m":"lda","o":"#$BC"},{"a":6530,"t":"code","b":[141,6,221],"m":"sta","o":"cia2_timer_b_lo"},{"a":6533,"t":"code","b":[169,22],"m":"lda","o":"#$16"},{"a":6535,"t":"code","b":[141,7,221],"m":"sta","o":"cia2_timer_b_hi"},{"a":6538,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6540,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":6543,"t":"code","b":[96],"m":"rts"},{"a":6544,"l":"reset_rti","c":"An RTI, installed as the RESET vector at $FFFC by $1943. A real reset restores the ROM banking and takes the KERNAL's vector, so this is only reached by a jump through $FFFC in RAM; nothing in the game was found to do that.","t":"code","b":[64],"m":"rti"},{"a":6545,"l":"setup_vic","c":"VIC and screen set-up: $DD00 = 0 (VIC bank 3, $C000-$FFFF), $D018 = $38 (screen $CC00, bitmap and font at $E000), blank sprite block 0 ($1AF4), background 1 white, border 3 cyan, $AD = 3, $D011 = $3B (bitmap), raster compare $FF, $D016 = $18 (multicolour), sprite multicolours $D025 = 0 and $D026 = $0A, $22 = 1 and $23 = 2, all sprites multicolour, sprites 0-5 on; colours the bottom strip ($192F), the panel ($1915), clears the panel ($1922); $D022 = 0, $D023 = 1; colour 14 (light blue) for the sixteen yin-yang cells (rows 0-1, columns 3-4, 6-7, 32-33, 35-36).","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[6409]},{"a":6547,"t":"code","b":[141,0,221],"m":"sta","o":"cia2_port_a"},{"a":6550,"t":"code","b":[169,56],"m":"lda","o":"#$38"},{"a":6552,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":6555,"t":"code","b":[32,244,26],"m":"jsr","oa":6900,"o":"clear_sprite_block0"},{"a":6558,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6560,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":6563,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":6565,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":6568,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":6570,"t":"code","b":[133,173],"m":"sta","oa":173,"o":"panel_bg"},{"a":6572,"t":"code","b":[169,59],"m":"lda","o":"#$3B"},{"a":6574,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":6577,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":6579,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":6582,"t":"code","b":[169,24],"m":"lda","o":"#$18"},{"a":6584,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":6587,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6589,"t":"code","b":[141,37,208],"m":"sta","o":"vic_sprite_mc0"},{"a":6592,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":6594,"t":"code","b":[141,38,208],"m":"sta","o":"vic_sprite_mc1"},{"a":6597,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6599,"t":"code","b":[133,34],"m":"sta","oa":34,"o":"fighter_colour"},{"a":6601,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":6603,"t":"code","b":[133,35],"m":"sta","oa":35,"o":"fighter_colour_f1"},{"a":6605,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":6607,"t":"code","b":[141,28,208],"m":"sta","o":"vic_sprite_multicolour"},{"a":6610,"t":"code","b":[169,63],"m":"lda","o":"#$3F"},{"a":6612,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":6615,"t":"code","b":[32,47,25],"m":"jsr","oa":6447,"o":"colour_floor_rows"},{"a":6618,"t":"code","b":[32,21,25],"m":"jsr","oa":6421,"o":"colour_panel_rows"},{"a":6621,"t":"code","b":[32,34,25],"m":"jsr","oa":6434,"o":"clear_panel_rows"},{"a":6624,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6626,"t":"code","b":[141,27,208],"m":"sta","o":"vic_sprite_priority"},{"a":6629,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6631,"t":"code","b":[141,34,208],"m":"sta","o":"vic_background1"},{"a":6634,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6636,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":6639,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":6641,"t":"code","b":[141,3,216],"m":"sta","o":"$D803"},{"a":6644,"t":"code","b":[141,4,216],"m":"sta","o":"$D804"},{"a":6647,"t":"code","b":[141,6,216],"m":"sta","o":"$D806"},{"a":6650,"t":"code","b":[141,7,216],"m":"sta","o":"$D807"},{"a":6653,"t":"code","b":[141,43,216],"m":"sta","o":"$D82B"},{"a":6656,"t":"code","b":[141,44,216],"m":"sta","o":"$D82C"},{"a":6659,"t":"code","b":[141,46,216],"m":"sta","o":"$D82E"},{"a":6662,"t":"code","b":[141,47,216],"m":"sta","o":"$D82F"},{"a":6665,"t":"code","b":[141,32,216],"m":"sta","o":"$D820"},{"a":6668,"t":"code","b":[141,33,216],"m":"sta","o":"$D821"},{"a":6671,"t":"code","b":[141,35,216],"m":"sta","o":"$D823"},{"a":6674,"t":"code","b":[141,36,216],"m":"sta","o":"$D824"},{"a":6677,"t":"code","b":[141,72,216],"m":"sta","o":"$D848"},{"a":6680,"t":"code","b":[141,73,216],"m":"sta","o":"$D849"},{"a":6683,"t":"code","b":[141,75,216],"m":"sta","o":"$D84B"},{"a":6686,"t":"code","b":[141,76,216],"m":"sta","o":"$D84C"},{"a":6689,"t":"code","b":[96],"m":"rts"},{"a":6690,"l":"init_exchange","c":"Puts both fighters at their starting state for an exchange: $6A = $3E and $6B = $5A, $6C/$6D = $50, $45/$46 = $17, $54 = 1, $4B, $4C, $53, $47, $48 and $5E (the knock-down result) cleared; per fighter $1A6F; $76 = 0, $77 = 2, $23 = 2, $86/$87 = 8; then $2593 for each fighter. Called by $1A7C.","t":"code","b":[169,62],"m":"lda","o":"#$3E","x":[6784]},{"a":6692,"t":"code","b":[133,106],"m":"sta","oa":106,"o":"fighter_x"},{"a":6694,"t":"code","b":[169,90],"m":"lda","o":"#$5A"},{"a":6696,"t":"code","b":[133,107],"m":"sta","oa":107,"o":"fighter_x_f1"},{"a":6698,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":6700,"t":"code","b":[133,108],"m":"sta","oa":108,"o":"fighter_y"},{"a":6702,"t":"code","b":[133,109],"m":"sta","oa":109,"o":"fighter_y_f1"},{"a":6704,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6706,"t":"code","b":[133,75],"m":"sta","oa":75,"o":"anim_reverse"},{"a":6708,"t":"code","b":[133,76],"m":"sta","oa":76,"o":"anim_reverse_f1"},{"a":6710,"t":"code","b":[133,83],"m":"sta","oa":83,"o":"fighter_facing"},{"a":6712,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6714,"t":"code","b":[133,84],"m":"sta","oa":84,"o":"fighter_facing_f1"},{"a":6716,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":6718,"t":"code","b":[133,69],"m":"sta","oa":69,"o":"anim_request"},{"a":6720,"t":"code","b":[133,70],"m":"sta","oa":70,"o":"anim_request_f1"},{"a":6722,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6724,"t":"code","b":[133,71],"m":"sta","oa":71,"o":"anim_loaded"},{"a":6726,"t":"code","b":[133,72],"m":"sta","oa":72,"o":"anim_loaded_f1"},{"a":6728,"t":"code","b":[133,94],"m":"sta","oa":94,"o":"knockdown_result"},{"a":6730,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6732,"t":"code","b":[32,111,26],"m":"jsr","oa":6767,"o":"init_fighter_state"},{"a":6735,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6737,"t":"code","b":[32,111,26],"m":"jsr","oa":6767,"o":"init_fighter_state"},{"a":6740,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6742,"t":"code","b":[133,118],"m":"sta","oa":118,"o":"sprite_buffer"},{"a":6744,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":6746,"t":"code","b":[133,119],"m":"sta","oa":119,"o":"sprite_buffer_f1"},{"a":6748,"t":"code","b":[133,35],"m":"sta","oa":35,"o":"fighter_colour_f1"},{"a":6750,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":6752,"t":"code","b":[133,134],"m":"sta","oa":134,"o":"reaction_delay"},{"a":6754,"t":"code","b":[133,135],"m":"sta","oa":135,"o":"reaction_delay_f1"},{"a":6756,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6758,"t":"code","b":[32,147,37],"m":"jsr","oa":9619,"o":"ai_level_setup"},{"a":6761,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6763,"t":"code","b":[32,147,37],"m":"jsr","oa":9619,"o":"ai_level_setup"},{"a":6766,"t":"code","b":[96],"m":"rts"},{"a":6767,"l":"init_fighter_state","c":"Per-fighter reset, X = 0 or 1: $5F,X, $67,X and $74,X cleared, move $61,X = $17.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[6732,6737]},{"a":6769,"t":"code","b":[149,95],"m":"sta","oa":95,"o":"hit_state,x"},{"a":6771,"t":"code","b":[149,103],"m":"sta","oa":103,"o":"fighter_flag_67,x"},{"a":6773,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":6775,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":6777,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":6779,"t":"code","b":[96],"m":"rts"},{"a":6780,"l":"run_exchange","c":"Runs one exchange of a bout, frame by frame, until it ends; shared by the attract mode and both game modes. Sets $5D = 0, $1A22, $37BD per fighter, CLI, sprites 0-5 on. Each frame (raster line $FD or later): $2808 for fighter 1 then fighter 0 ($69 = 0, 1), $1AFF (random), $1E64 (keys). Returns: minus if $1E64 did (F1 or fire in the attract mode); $5E if non-zero (set at $2A9B when a fighter's knock-down animation ends, from its $5F,X); A = 1 when the clock has run out ($BC), after resetting both fighters with $3914. The clock ($212F) ticks only while $5F and $60 are both zero and fighter 0's move $61 is not $17.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7034,7282,7475]},{"a":6782,"t":"code","b":[133,93],"m":"sta","oa":93,"o":"shape_direct"},{"a":6784,"t":"code","b":[32,34,26],"m":"jsr","oa":6690,"o":"init_exchange"},{"a":6787,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6789,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":6792,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6794,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":6797,"t":"code","b":[88],"m":"cli"},{"a":6798,"t":"code","b":[173,21,208],"m":"lda","o":"vic_sprite_enable"},{"a":6801,"t":"code","b":[9,63],"m":"ora","o":"#$3F"},{"a":6803,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":6806,"l":"b_1A96","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[6811,6860]},{"a":6809,"t":"code","b":[201,253],"m":"cmp","o":"#$FD"},{"a":6811,"t":"code","b":[144,249],"m":"bcc","oa":6806,"o":"b_1A96"},{"a":6813,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6815,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6817,"t":"code","b":[133,105],"m":"sta","oa":105,"o":"opponent"},{"a":6819,"t":"code","b":[32,8,40],"m":"jsr","oa":10248,"o":"fighter_update"},{"a":6822,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6824,"t":"code","b":[230,105],"m":"inc","oa":105,"o":"opponent"},{"a":6826,"t":"code","b":[32,8,40],"m":"jsr","oa":10248,"o":"fighter_update"},{"a":6829,"t":"code","b":[32,255,26],"m":"jsr","oa":6911,"o":"step_random"},{"a":6832,"t":"code","b":[32,100,30],"m":"jsr","oa":7780,"o":"poll_function_keys"},{"a":6835,"t":"code","b":[48,55],"m":"bmi","oa":6892,"o":"r_1AEC"},{"a":6837,"t":"code","b":[165,94],"m":"lda","oa":94,"o":"knockdown_result"},{"a":6839,"t":"code","b":[208,51],"m":"bne","oa":6892,"o":"r_1AEC"},{"a":6841,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":6843,"t":"code","b":[208,13],"m":"bne","oa":6858,"o":"b_1ACA"},{"a":6845,"t":"code","b":[165,96],"m":"lda","oa":96,"o":"hit_state_f1"},{"a":6847,"t":"code","b":[208,9],"m":"bne","oa":6858,"o":"b_1ACA"},{"a":6849,"t":"code","b":[165,97],"m":"lda","oa":97,"o":"fighter_move"},{"a":6851,"t":"code","b":[201,23],"m":"cmp","o":"#$17"},{"a":6853,"t":"code","b":[240,3],"m":"beq","oa":6858,"o":"b_1ACA"},{"a":6855,"t":"code","b":[32,47,33],"m":"jsr","oa":8495,"o":"bout_clock_tick"},{"a":6858,"l":"b_1ACA","t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up","x":[6843,6847,6853]},{"a":6860,"t":"code","b":[240,200],"m":"beq","oa":6806,"o":"b_1A96"},{"a":6862,"t":"code","b":[169,55],"m":"lda","o":"#$37"},{"a":6864,"t":"code","b":[133,81],"m":"sta","oa":81,"o":"fighter_frame"},{"a":6866,"t":"code","b":[133,82],"m":"sta","oa":82,"o":"fighter_frame_f1"},{"a":6868,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":6870,"t":"code","b":[133,108],"m":"sta","oa":108,"o":"fighter_y"},{"a":6872,"t":"code","b":[133,109],"m":"sta","oa":109,"o":"fighter_y_f1"},{"a":6874,"t":"code","b":[169,160],"m":"lda","o":"#$A0"},{"a":6876,"t":"code","b":[133,22],"m":"sta","oa":22,"o":"fighter_spr_y"},{"a":6878,"t":"code","b":[133,23],"m":"sta","oa":23,"o":"fighter_spr_y_f1"},{"a":6880,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6882,"t":"code","b":[32,20,57],"m":"jsr","oa":14612,"o":"build_fighter_sprites"},{"a":6885,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":6887,"t":"code","b":[32,20,57],"m":"jsr","oa":14612,"o":"build_fighter_sprites"},{"a":6890,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6892,"l":"r_1AEC","t":"code","b":[96],"m":"rts","x":[6835,6839]},{"a":6893,"l":"game_entry","c":"Entry from the loader (SYS 6893, through BASIC's SYS): machine set-up ($18E8), then the outer loop at $1EE1. Never returns.","t":"code","b":[32,232,24],"m":"jsr","oa":6376,"o":"machine_setup","x":[4442]},{"a":6896,"t":"code","b":[76,225,30],"m":"jmp","oa":7905,"o":"main_loop"},{"a":6899,"l":"unused_rts_byte","c":"A lone $60 (RTS) after the entry's JMP; no reference to it was found (opcodes.py --refs $1AF3).","t":"byte","b":[96]},{"a":6900,"l":"clear_sprite_block0","c":"Zeroes $C000-$C03E, sprite shape block 0 of VIC bank 3: a blank sprite. Called by $1991.","t":"code","b":[162,62],"m":"ldx","o":"#$3E","x":[6555]},{"a":6902,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6904,"l":"b_1AF8","t":"code","b":[157,0,192],"m":"sta","oa":49152,"o":"blank_sprite,x","x":[6908]},{"a":6907,"t":"code","b":[202],"m":"dex"},{"a":6908,"t":"code","b":[16,250],"m":"bpl","oa":6904,"o":"b_1AF8"},{"a":6910,"t":"code","b":[96],"m":"rts"},{"a":6911,"l":"step_random","c":"Advances the random byte $99 one step: shift left, EOR $1D on carry (an 8-bit Galois shift register, never 0 once seeded). Called once per frame by $1A7C, so $99 depends on how many frames have passed; $1BA7 and $1CD2 copy it into $98, the generator stepped by $2589.","t":"code","b":[165,153],"m":"lda","oa":153,"o":"random_frame","x":[6829]},{"a":6913,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6914,"t":"code","b":[144,2],"m":"bcc","oa":6918,"o":"b_1B06"},{"a":6916,"t":"code","b":[73,29],"m":"eor","o":"#$1D"},{"a":6918,"l":"b_1B06","t":"code","b":[133,153],"m":"sta","oa":153,"o":"random_frame","x":[6914]},{"a":6920,"t":"code","b":[96],"m":"rts"},{"a":6921,"l":"two_player_game","c":"Two-player game, chosen by $AE = 1. Backdrop $AF = 0, $65 and $66 = 0 (neither fighter computer-controlled), panel text cleared ($21A5, $227F), yin-yang cells cleared, $B0 = 1 (a game is running), score fields reset ($1F5D), tune $FF = 3. Four bouts, one per backdrop, each of 30 clock units ($B1 = 50 passes, $B2 = 30, $217B shows 30) through $1B7A, with a pause of 15 x 6 frames ($21C8) between. Then compares the scores ($1F74): equal, both fighters' end animation ($1E44); else the judge signals the winner ($1F93, $1E32). High-score check ($200A), a pause, A = 0. A minus result from a bout returns minus, and $1EE1 starts the game again.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7958]},{"a":6923,"t":"code","b":[133,175],"m":"sta","oa":175,"o":"stage"},{"a":6925,"t":"code","b":[133,101],"m":"sta","oa":101,"o":"is_computer"},{"a":6927,"t":"code","b":[133,102],"m":"sta","oa":102,"o":"is_computer_f1"},{"a":6929,"t":"code","b":[32,165,33],"m":"jsr","oa":8613,"o":"panel_clear_labels"},{"a":6932,"t":"code","b":[32,127,34],"m":"jsr","oa":8831,"o":"panel_clear_rank"},{"a":6935,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":6937,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":6940,"t":"code","b":[160,29],"m":"ldy","o":"#$1D"},{"a":6942,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":6945,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6947,"t":"code","b":[133,176],"m":"sta","oa":176,"o":"game_running"},{"a":6949,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":6951,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":6954,"t":"code","b":[162,25],"m":"ldx","o":"#$19"},{"a":6956,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":6959,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":6961,"t":"code","b":[133,255],"m":"sta","oa":255,"o":"song"},{"a":6963,"l":"j_1B33","t":"code","b":[169,50],"m":"lda","o":"#$32","x":[6999]},{"a":6965,"t":"code","b":[133,177],"m":"sta","oa":177,"o":"clock_frames"},{"a":6967,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":6969,"t":"code","b":[133,178],"m":"sta","oa":178,"o":"clock_seconds"},{"a":6971,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6973,"t":"code","b":[133,188],"m":"sta","oa":188,"o":"time_up"},{"a":6975,"t":"code","b":[32,123,33],"m":"jsr","oa":8571,"o":"bout_clock_reset"},{"a":6978,"t":"code","b":[32,58,31],"m":"jsr","oa":7994,"o":"select_backdrop"},{"a":6981,"t":"code","b":[32,122,27],"m":"jsr","oa":7034,"o":"two_player_bout"},{"a":6984,"t":"code","b":[48,47],"m":"bmi","oa":7033,"o":"r_1B79"},{"a":6986,"t":"code","b":[230,175],"m":"inc","oa":175,"o":"stage"},{"a":6988,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":6990,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":6992,"t":"code","b":[240,8],"m":"beq","oa":7002,"o":"b_1B5A"},{"a":6994,"t":"code","b":[162,15],"m":"ldx","o":"#$0F"},{"a":6996,"t":"code","b":[32,200,33],"m":"jsr","oa":8648,"o":"wait_6x_frames"},{"a":6999,"t":"code","b":[76,51,27],"m":"jmp","oa":6963,"o":"j_1B33"},{"a":7002,"l":"b_1B5A","t":"code","b":[198,175],"m":"dec","oa":175,"o":"stage","x":[6992]},{"a":7004,"t":"code","b":[32,116,31],"m":"jsr","oa":8052,"o":"compare_scores"},{"a":7007,"t":"code","b":[16,8],"m":"bpl","oa":7017,"o":"b_1B69"},{"a":7009,"t":"code","b":[32,68,30],"m":"jsr","oa":7748,"o":"play_both_end_animations"},{"a":7012,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":7014,"t":"code","b":[76,111,27],"m":"jmp","oa":7023,"o":"j_1B6F"},{"a":7017,"l":"b_1B69","t":"code","b":[32,147,31],"m":"jsr","oa":8083,"o":"show_judge_decision","x":[7007]},{"a":7020,"t":"code","b":[32,50,30],"m":"jsr","oa":7730,"o":"play_end_animation"},{"a":7023,"l":"j_1B6F","t":"code","b":[32,10,32],"m":"jsr","oa":8202,"o":"hiscore_update","x":[7014]},{"a":7026,"t":"code","b":[162,20],"m":"ldx","o":"#$14"},{"a":7028,"t":"code","b":[32,200,33],"m":"jsr","oa":8648,"o":"wait_6x_frames"},{"a":7031,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7033,"l":"r_1B79","t":"code","b":[96],"m":"rts","x":[6984]},{"a":7034,"l":"two_player_bout","c":"One two-player bout: exchanges ($1A7C) until the clock runs out ($BC). After each knock-down, when exactly one fighter has bit 4 of $5F,X set, the other's score goes up ($206C: X = 9 player 1's field when $5F = 0, X = $19 player 2's otherwise). Yin-yang cells are cleared after every exchange: in this mode only points count, and no score of symbols ends a bout early. Returns minus if $1A7C does.","t":"code","b":[32,124,26],"m":"jsr","oa":6780,"o":"run_exchange","x":[6981,7076]},{"a":7037,"t":"code","b":[48,39],"m":"bmi","oa":7078,"o":"r_1BA6"},{"a":7039,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7041,"t":"code","b":[69,96],"m":"eor","oa":96,"o":"hit_state_f1"},{"a":7043,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":7045,"t":"code","b":[240,17],"m":"beq","oa":7064,"o":"b_1B98"},{"a":7047,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7049,"t":"code","b":[208,8],"m":"bne","oa":7059,"o":"b_1B93"},{"a":7051,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":7053,"t":"code","b":[32,108,32],"m":"jsr","oa":8300,"o":"score_add_award"},{"a":7056,"t":"code","b":[76,152,27],"m":"jmp","oa":7064,"o":"b_1B98"},{"a":7059,"l":"b_1B93","t":"code","b":[162,25],"m":"ldx","o":"#$19","x":[7049]},{"a":7061,"t":"code","b":[32,108,32],"m":"jsr","oa":8300,"o":"score_add_award"},{"a":7064,"l":"b_1B98","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[7045,7056]},{"a":7066,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7069,"t":"code","b":[160,29],"m":"ldy","o":"#$1D"},{"a":7071,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7074,"t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up"},{"a":7076,"t":"code","b":[240,212],"m":"beq","oa":7034,"o":"two_player_bout"},{"a":7078,"l":"r_1BA6","t":"code","b":[96],"m":"rts","x":[7037]},{"a":7079,"l":"one_player_game","c":"One-player game, chosen by $AE = 0. $CA, backdrop $AF and rank $B4 = 0, $65 = 0 (fighter 0 the player) and $66 = 1 (fighter 1 the computer), $B0 = 1, $B5 = 2, score fields reset, $98 seeded from $99, NOVICE written at $CCA0 ($21FB), tune $FF = 2. Each bout: clear symbols, 30-unit clock, backdrop ($1F3A), $1C72. A won bout decrements $B5: two wins clear a rank, after which, when $AF AND 3 is 3 (the Buddha backdrop), $132C runs; then below $AF = 10 the rank $B4 and $AF go up and the new rank is written (1ST DAN ... 10TH DAN). Past that, $1C5B. A draw ($81) plays both end animations and repeats the bout; a lost bout or a minus result ends the game: high-score check ($200A), panel text ($2115), A = 0.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7946]},{"a":7081,"t":"code","b":[133,202],"m":"sta","oa":202,"o":"rank_text_col"},{"a":7083,"t":"code","b":[133,175],"m":"sta","oa":175,"o":"stage"},{"a":7085,"t":"code","b":[133,101],"m":"sta","oa":101,"o":"is_computer"},{"a":7087,"t":"code","b":[133,180],"m":"sta","oa":180,"o":"fighter_level_f1"},{"a":7089,"t":"code","b":[32,165,33],"m":"jsr","oa":8613,"o":"panel_clear_labels"},{"a":7092,"t":"code","b":[32,127,34],"m":"jsr","oa":8831,"o":"panel_clear_rank"},{"a":7095,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":7097,"t":"code","b":[133,102],"m":"sta","oa":102,"o":"is_computer_f1"},{"a":7099,"t":"code","b":[133,176],"m":"sta","oa":176,"o":"game_running"},{"a":7101,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":7103,"t":"code","b":[133,181],"m":"sta","oa":181,"o":"wins_to_rank"},{"a":7105,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":7107,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":7110,"t":"code","b":[162,25],"m":"ldx","o":"#$19"},{"a":7112,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":7115,"t":"code","b":[169,32],"m":"lda","o":"#$20"},{"a":7117,"t":"code","b":[157,45,204],"m":"sta","oa":52269,"o":"f_CC2D,x"},{"a":7120,"t":"code","b":[165,153],"m":"lda","oa":153,"o":"random_frame"},{"a":7122,"t":"code","b":[133,152],"m":"sta","oa":152,"o":"random_state"},{"a":7124,"t":"code","b":[169,160],"m":"lda","o":"#$A0"},{"a":7126,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":7128,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":7130,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":7132,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":7134,"t":"code","b":[134,201],"m":"stx","oa":201,"o":"hiscore_rank"},{"a":7136,"t":"code","b":[32,251,33],"m":"jsr","oa":8699,"o":"rank_text_draw"},{"a":7139,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":7141,"t":"code","b":[133,255],"m":"sta","oa":255,"o":"song"},{"a":7143,"l":"b_1BE7","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7190,7235,7245,7279]},{"a":7145,"t":"code","b":[133,138],"m":"sta","oa":138,"o":"halves"},{"a":7147,"t":"code","b":[133,139],"m":"sta","oa":139,"o":"halves_f1"},{"a":7149,"t":"code","b":[133,189],"m":"sta","oa":189,"o":"bout_points"},{"a":7151,"t":"code","b":[133,190],"m":"sta","oa":190,"o":"bout_points_f1"},{"a":7153,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":7155,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7158,"t":"code","b":[160,29],"m":"ldy","o":"#$1D"},{"a":7160,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7163,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":7165,"t":"code","b":[133,177],"m":"sta","oa":177,"o":"clock_frames"},{"a":7167,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":7169,"t":"code","b":[133,178],"m":"sta","oa":178,"o":"clock_seconds"},{"a":7171,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7173,"t":"code","b":[133,188],"m":"sta","oa":188,"o":"time_up"},{"a":7175,"t":"code","b":[32,123,33],"m":"jsr","oa":8571,"o":"bout_clock_reset"},{"a":7178,"t":"code","b":[32,58,31],"m":"jsr","oa":7994,"o":"select_backdrop"},{"a":7181,"t":"code","b":[32,114,28],"m":"jsr","oa":7282,"o":"one_player_bout"},{"a":7184,"t":"code","b":[48,52],"m":"bmi","oa":7238,"o":"b_1C46"},{"a":7186,"t":"code","b":[240,60],"m":"beq","oa":7248,"o":"b_1C50"},{"a":7188,"t":"code","b":[198,181],"m":"dec","oa":181,"o":"wins_to_rank"},{"a":7190,"t":"code","b":[208,207],"m":"bne","oa":7143,"o":"b_1BE7"},{"a":7192,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":7194,"t":"code","b":[133,181],"m":"sta","oa":181,"o":"wins_to_rank"},{"a":7196,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":7198,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":7200,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":7202,"t":"code","b":[208,3],"m":"bne","oa":7207,"o":"b_1C27"},{"a":7204,"t":"code","b":[32,44,19],"m":"jsr","oa":4908,"o":"bull_round"},{"a":7207,"l":"b_1C27","t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage","x":[7202]},{"a":7209,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":7211,"t":"code","b":[176,46],"m":"bcs","oa":7259,"o":"rank_past_tenth_dan"},{"a":7213,"t":"code","b":[230,180],"m":"inc","oa":180,"o":"fighter_level_f1"},{"a":7215,"t":"code","b":[230,175],"m":"inc","oa":175,"o":"stage"},{"a":7217,"t":"code","b":[164,180],"m":"ldy","oa":180,"o":"fighter_level_f1"},{"a":7219,"t":"code","b":[169,160],"m":"lda","o":"#$A0"},{"a":7221,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":7223,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":7225,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":7227,"t":"code","b":[190,195,34],"m":"ldx","oa":8899,"o":"level_rank_table,y"},{"a":7230,"t":"code","b":[134,201],"m":"stx","oa":201,"o":"hiscore_rank"},{"a":7232,"t":"code","b":[32,251,33],"m":"jsr","oa":8699,"o":"rank_text_draw"},{"a":7235,"t":"code","b":[76,231,27],"m":"jmp","oa":7143,"o":"b_1BE7"},{"a":7238,"l":"b_1C46","t":"code","b":[201,129],"m":"cmp","o":"#$81","x":[7184]},{"a":7240,"t":"code","b":[208,6],"m":"bne","oa":7248,"o":"b_1C50"},{"a":7242,"t":"code","b":[32,68,30],"m":"jsr","oa":7748,"o":"play_both_end_animations"},{"a":7245,"t":"code","b":[76,231,27],"m":"jmp","oa":7143,"o":"b_1BE7"},{"a":7248,"l":"b_1C50","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[7186,7240]},{"a":7250,"t":"code","b":[32,10,32],"m":"jsr","oa":8202,"o":"hiscore_update"},{"a":7253,"t":"code","b":[32,21,33],"m":"jsr","oa":8469,"o":"panel_show_hiscore"},{"a":7256,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7258,"t":"code","b":[96],"m":"rts"},{"a":7259,"l":"rank_past_tenth_dan","c":"After the tenth-dan rank is cleared: $AF = ((AF + 1) AND 3) OR $20, so the backdrops keep cycling and $AF stays at 10 or more, and $B4, the opponent's level, becomes a random 7 to 10 ($2589). The rank text is not rewritten, so it keeps reading 10TH DAN whatever $B4 is.","t":"code","b":[230,175],"m":"inc","oa":175,"o":"stage","x":[7211]},{"a":7261,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":7263,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":7265,"t":"code","b":[9,32],"m":"ora","o":"#$20"},{"a":7267,"t":"code","b":[133,175],"m":"sta","oa":175,"o":"stage"},{"a":7269,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":7272,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":7274,"t":"code","b":[24],"m":"clc"},{"a":7275,"t":"code","b":[105,7],"m":"adc","o":"#$07"},{"a":7277,"t":"code","b":[133,180],"m":"sta","oa":180,"o":"fighter_level_f1"},{"a":7279,"t":"code","b":[76,231,27],"m":"jmp","oa":7143,"o":"b_1BE7"},{"a":7282,"l":"one_player_bout","c":"One one-player bout: exchanges ($1A7C) until a fighter has two whole yin-yangs or the clock runs out. When fighter 1 is knocked down (exactly one fighter with bit 4 of $5F,X, and $5F = 0) the player scores points ($206C X = 9), $BD gains ($2169) and $1D5F adds to $8A; when fighter 0 is, the computer gains $BE and $8B. Four halves win: the player's win runs down the clock for a bonus ($21DF) and returns 1; the computer's returns 0. At time-up the more half-symbols ($8A against $8B) wins, then the more points ($BD against $BE), the judge signalling ($1F93); a full tie returns $81. Returns minus if $1A7C does.","t":"code","b":[32,124,26],"m":"jsr","oa":6780,"o":"run_exchange","x":[7181,7329]},{"a":7285,"t":"code","b":[48,76],"m":"bmi","oa":7363,"o":"r_1CC3"},{"a":7287,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7289,"t":"code","b":[69,96],"m":"eor","oa":96,"o":"hit_state_f1"},{"a":7291,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":7293,"t":"code","b":[240,32],"m":"beq","oa":7327,"o":"b_1C9F"},{"a":7295,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7297,"t":"code","b":[240,13],"m":"beq","oa":7312,"o":"b_1C90"},{"a":7299,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":7301,"t":"code","b":[32,105,33],"m":"jsr","oa":8553,"o":"bout_points_add"},{"a":7304,"t":"code","b":[32,95,29],"m":"jsr","oa":7519,"o":"add_yinyang"},{"a":7307,"t":"code","b":[176,60],"m":"bcs","oa":7369,"o":"b_1CC9"},{"a":7309,"t":"code","b":[76,159,28],"m":"jmp","oa":7327,"o":"b_1C9F"},{"a":7312,"l":"b_1C90","t":"code","b":[162,9],"m":"ldx","o":"#$09","x":[7297]},{"a":7314,"t":"code","b":[32,108,32],"m":"jsr","oa":8300,"o":"score_add_award"},{"a":7317,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":7319,"t":"code","b":[32,105,33],"m":"jsr","oa":8553,"o":"bout_points_add"},{"a":7322,"t":"code","b":[32,95,29],"m":"jsr","oa":7519,"o":"add_yinyang"},{"a":7325,"t":"code","b":[176,28],"m":"bcs","oa":7355,"o":"b_1CBB"},{"a":7327,"l":"b_1C9F","t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up","x":[7293,7309]},{"a":7329,"t":"code","b":[240,207],"m":"beq","oa":7282,"o":"one_player_bout"},{"a":7331,"t":"code","b":[165,138],"m":"lda","oa":138,"o":"halves"},{"a":7333,"t":"code","b":[197,139],"m":"cmp","oa":139,"o":"halves_f1"},{"a":7335,"t":"code","b":[144,27],"m":"bcc","oa":7364,"o":"b_1CC4"},{"a":7337,"t":"code","b":[240,3],"m":"beq","oa":7342,"o":"b_1CAE"},{"a":7339,"t":"code","b":[76,182,28],"m":"jmp","oa":7350,"o":"j_1CB6"},{"a":7342,"l":"b_1CAE","t":"code","b":[165,189],"m":"lda","oa":189,"o":"bout_points","x":[7337]},{"a":7344,"t":"code","b":[197,190],"m":"cmp","oa":190,"o":"bout_points_f1"},{"a":7346,"t":"code","b":[144,16],"m":"bcc","oa":7364,"o":"b_1CC4"},{"a":7348,"t":"code","b":[240,25],"m":"beq","oa":7375,"o":"b_1CCF"},{"a":7350,"l":"j_1CB6","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[7339]},{"a":7352,"t":"code","b":[32,147,31],"m":"jsr","oa":8083,"o":"show_judge_decision"},{"a":7355,"l":"b_1CBB","t":"code","b":[32,50,30],"m":"jsr","oa":7730,"o":"play_end_animation","x":[7325]},{"a":7358,"t":"code","b":[32,223,33],"m":"jsr","oa":8671,"o":"time_bonus_count"},{"a":7361,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":7363,"l":"r_1CC3","t":"code","b":[96],"m":"rts","x":[7285]},{"a":7364,"l":"b_1CC4","t":"code","b":[162,1],"m":"ldx","o":"#$01","x":[7335,7346]},{"a":7366,"t":"code","b":[32,147,31],"m":"jsr","oa":8083,"o":"show_judge_decision"},{"a":7369,"l":"b_1CC9","t":"code","b":[32,50,30],"m":"jsr","oa":7730,"o":"play_end_animation","x":[7307]},{"a":7372,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7374,"t":"code","b":[96],"m":"rts"},{"a":7375,"l":"b_1CCF","t":"code","b":[169,129],"m":"lda","o":"#$81","x":[7348]},{"a":7377,"t":"code","b":[96],"m":"rts"},{"a":7378,"l":"attract_mode","c":"The attract mode: the computer fights itself under DEMO. $AF = 0, $98 from $99, levels $B3 and $B4 random 3 to 11 (rand AND 7, + 3 + carry), panel cleared, DEMO written ($21B3), $65 = $66 = 1 (both fighters computer-controlled), tune $FF = 1, $04F0 = $FF. One 30-unit demo bout ($1D33) on each of the four backdrops in turn. Returns plus after the fourth, and $1EE1 starts it over; returns minus when F1 or fire was pressed, and $1EE1 starts a game.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7932]},{"a":7380,"t":"code","b":[133,175],"m":"sta","oa":175,"o":"stage"},{"a":7382,"t":"code","b":[165,153],"m":"lda","oa":153,"o":"random_frame"},{"a":7384,"t":"code","b":[133,152],"m":"sta","oa":152,"o":"random_state"},{"a":7386,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":7389,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":7391,"t":"code","b":[105,3],"m":"adc","o":"#$03"},{"a":7393,"t":"code","b":[133,179],"m":"sta","oa":179,"o":"fighter_level"},{"a":7395,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":7398,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":7400,"t":"code","b":[105,3],"m":"adc","o":"#$03"},{"a":7402,"t":"code","b":[133,180],"m":"sta","oa":180,"o":"fighter_level_f1"},{"a":7404,"t":"code","b":[32,127,34],"m":"jsr","oa":8831,"o":"panel_clear_rank"},{"a":7407,"t":"code","b":[32,179,33],"m":"jsr","oa":8627,"o":"panel_show_demo"},{"a":7410,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":7412,"t":"code","b":[133,101],"m":"sta","oa":101,"o":"is_computer"},{"a":7414,"t":"code","b":[133,102],"m":"sta","oa":102,"o":"is_computer_f1"},{"a":7416,"t":"code","b":[133,255],"m":"sta","oa":255,"o":"song"},{"a":7418,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":7420,"t":"code","b":[141,240,4],"m":"sta","oa":1264,"o":"a_04F0"},{"a":7423,"l":"b_1CFF","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7472]},{"a":7425,"t":"code","b":[133,138],"m":"sta","oa":138,"o":"halves"},{"a":7427,"t":"code","b":[133,139],"m":"sta","oa":139,"o":"halves_f1"},{"a":7429,"t":"code","b":[133,189],"m":"sta","oa":189,"o":"bout_points"},{"a":7431,"t":"code","b":[133,190],"m":"sta","oa":190,"o":"bout_points_f1"},{"a":7433,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":7435,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7438,"t":"code","b":[160,29],"m":"ldy","o":"#$1D"},{"a":7440,"t":"code","b":[32,8,30],"m":"jsr","oa":7688,"o":"clear_yinyang"},{"a":7443,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":7445,"t":"code","b":[133,177],"m":"sta","oa":177,"o":"clock_frames"},{"a":7447,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":7449,"t":"code","b":[133,178],"m":"sta","oa":178,"o":"clock_seconds"},{"a":7451,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7453,"t":"code","b":[133,188],"m":"sta","oa":188,"o":"time_up"},{"a":7455,"t":"code","b":[32,123,33],"m":"jsr","oa":8571,"o":"bout_clock_reset"},{"a":7458,"t":"code","b":[32,58,31],"m":"jsr","oa":7994,"o":"select_backdrop"},{"a":7461,"t":"code","b":[32,51,29],"m":"jsr","oa":7475,"o":"demo_bout"},{"a":7464,"t":"code","b":[48,8],"m":"bmi","oa":7474,"o":"r_1D32"},{"a":7466,"t":"code","b":[230,175],"m":"inc","oa":175,"o":"stage"},{"a":7468,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":7470,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":7472,"t":"code","b":[208,205],"m":"bne","oa":7423,"o":"b_1CFF"},{"a":7474,"l":"r_1D32","t":"code","b":[96],"m":"rts","x":[7464]},{"a":7475,"l":"demo_bout","c":"One attract-mode bout: exchanges ($1A7C) until a fighter has two whole yin-yangs ($1D5F, then that fighter's end animation $1E32) or the clock runs out. No points are scored. Returns 0, or minus if $1A7C does.","t":"code","b":[32,124,26],"m":"jsr","oa":6780,"o":"run_exchange","x":[7461,7514]},{"a":7478,"t":"code","b":[48,24],"m":"bmi","oa":7504,"o":"r_1D50"},{"a":7480,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7482,"t":"code","b":[69,96],"m":"eor","oa":96,"o":"hit_state_f1"},{"a":7484,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":7486,"t":"code","b":[240,24],"m":"beq","oa":7512,"o":"b_1D58"},{"a":7488,"t":"code","b":[165,95],"m":"lda","oa":95,"o":"hit_state"},{"a":7490,"t":"code","b":[240,13],"m":"beq","oa":7505,"o":"b_1D51"},{"a":7492,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":7494,"t":"code","b":[32,95,29],"m":"jsr","oa":7519,"o":"add_yinyang"},{"a":7497,"t":"code","b":[144,13],"m":"bcc","oa":7512,"o":"b_1D58"},{"a":7499,"l":"b_1D4B","t":"code","b":[32,50,30],"m":"jsr","oa":7730,"o":"play_end_animation","x":[7510]},{"a":7502,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7504,"l":"r_1D50","t":"code","b":[96],"m":"rts","x":[7478]},{"a":7505,"l":"b_1D51","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[7490]},{"a":7507,"t":"code","b":[32,95,29],"m":"jsr","oa":7519,"o":"add_yinyang"},{"a":7510,"t":"code","b":[176,243],"m":"bcs","oa":7499,"o":"b_1D4B"},{"a":7512,"l":"b_1D58","t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up","x":[7486,7497]},{"a":7514,"t":"code","b":[240,215],"m":"beq","oa":7475,"o":"demo_bout"},{"a":7516,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7518,"t":"code","b":[96],"m":"rts"},{"a":7519,"l":"add_yinyang","c":"Adds the value of the blow just landed, $6E,X (1 = half, 2 = whole), to fighter X's count of halves $8A,X and redraws that fighter's symbols: 1 a half, 2 one whole, 3 a whole and a half, 4 or more two wholes. Fighter 0's sit at panel columns 6 and 3, fighter 1's at 32 and 35 (Y = 3/0 and $1D/$20). Returns carry set when the count has reached 4: the bout is won.","t":"code","b":[181,138],"m":"lda","oa":138,"o":"halves,x","x":[7304,7322,7494,7507]},{"a":7521,"t":"code","b":[24],"m":"clc"},{"a":7522,"t":"code","b":[117,110],"m":"adc","oa":110,"o":"blow_value,x"},{"a":7524,"t":"code","b":[149,138],"m":"sta","oa":138,"o":"halves,x"},{"a":7526,"t":"code","b":[224,0],"m":"cpx","o":"#$00"},{"a":7528,"t":"code","b":[208,57],"m":"bne","oa":7587,"o":"b_1DA3"},{"a":7530,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":7532,"t":"code","b":[240,11],"m":"beq","oa":7545,"o":"b_1D79"},{"a":7534,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":7536,"t":"code","b":[240,15],"m":"beq","oa":7553,"o":"b_1D81"},{"a":7538,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":7540,"t":"code","b":[240,19],"m":"beq","oa":7561,"o":"b_1D89"},{"a":7542,"t":"code","b":[76,150,29],"m":"jmp","oa":7574,"o":"j_1D96"},{"a":7545,"l":"b_1D79","t":"code","b":[160,3],"m":"ldy","o":"#$03","x":[7532]},{"a":7547,"t":"code","b":[32,243,29],"m":"jsr","oa":7667,"o":"draw_half_yinyang"},{"a":7550,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7553,"l":"b_1D81","t":"code","b":[160,3],"m":"ldy","o":"#$03","x":[7536]},{"a":7555,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7558,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7561,"l":"b_1D89","t":"code","b":[160,3],"m":"ldy","o":"#$03","x":[7540]},{"a":7563,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7566,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":7568,"t":"code","b":[32,243,29],"m":"jsr","oa":7667,"o":"draw_half_yinyang"},{"a":7571,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7574,"l":"j_1D96","t":"code","b":[160,3],"m":"ldy","o":"#$03","x":[7542]},{"a":7576,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7579,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":7581,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7584,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7587,"l":"b_1DA3","t":"code","b":[201,1],"m":"cmp","o":"#$01","x":[7528]},{"a":7589,"t":"code","b":[240,11],"m":"beq","oa":7602,"o":"b_1DB2"},{"a":7591,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":7593,"t":"code","b":[240,15],"m":"beq","oa":7610,"o":"b_1DBA"},{"a":7595,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":7597,"t":"code","b":[240,19],"m":"beq","oa":7618,"o":"b_1DC2"},{"a":7599,"t":"code","b":[76,207,29],"m":"jmp","oa":7631,"o":"j_1DCF"},{"a":7602,"l":"b_1DB2","t":"code","b":[160,29],"m":"ldy","o":"#$1D","x":[7589]},{"a":7604,"t":"code","b":[32,243,29],"m":"jsr","oa":7667,"o":"draw_half_yinyang"},{"a":7607,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7610,"l":"b_1DBA","t":"code","b":[160,29],"m":"ldy","o":"#$1D","x":[7593]},{"a":7612,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7615,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7618,"l":"b_1DC2","t":"code","b":[160,29],"m":"ldy","o":"#$1D","x":[7597]},{"a":7620,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7623,"t":"code","b":[160,32],"m":"ldy","o":"#$20"},{"a":7625,"t":"code","b":[32,243,29],"m":"jsr","oa":7667,"o":"draw_half_yinyang"},{"a":7628,"t":"code","b":[76,217,29],"m":"jmp","oa":7641,"o":"j_1DD9"},{"a":7631,"l":"j_1DCF","t":"code","b":[160,29],"m":"ldy","o":"#$1D","x":[7599]},{"a":7633,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7636,"t":"code","b":[160,32],"m":"ldy","o":"#$20"},{"a":7638,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":7641,"l":"j_1DD9","t":"code","b":[181,138],"m":"lda","oa":138,"o":"halves,x","x":[7550,7558,7571,7584,7607,7615,7628]},{"a":7643,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":7645,"t":"code","b":[96],"m":"rts"},{"a":7646,"l":"draw_whole_yinyang","c":"Draws a whole yin-yang, characters $21-$24 in a 2 x 2 block at $CC03,Y (rows 0-1). Called by $1D5F and from $2C2B.","t":"code","b":[169,33],"m":"lda","o":"#$21","x":[7555,7563,7576,7581,7612,7620,7633,7638,11307]},{"a":7648,"t":"code","b":[153,3,204],"m":"sta","oa":52227,"o":"f_CC03,y"},{"a":7651,"t":"code","b":[169,34],"m":"lda","o":"#$22"},{"a":7653,"t":"code","b":[153,4,204],"m":"sta","oa":52228,"o":"f_CC04,y"},{"a":7656,"t":"code","b":[169,35],"m":"lda","o":"#$23"},{"a":7658,"t":"code","b":[153,43,204],"m":"sta","oa":52267,"o":"f_CC2B,y"},{"a":7661,"t":"code","b":[169,36],"m":"lda","o":"#$24"},{"a":7663,"t":"code","b":[153,44,204],"m":"sta","oa":52268,"o":"f_CC2C,y"},{"a":7666,"t":"code","b":[96],"m":"rts"},{"a":7667,"l":"draw_half_yinyang","c":"Draws a half yin-yang, characters $25-$28 in a 2 x 2 block at $CC03,Y. Called by $1D5F and from $2C3E.","t":"code","b":[169,37],"m":"lda","o":"#$25","x":[7547,7568,7604,7625,11326]},{"a":7669,"t":"code","b":[153,3,204],"m":"sta","oa":52227,"o":"f_CC03,y"},{"a":7672,"t":"code","b":[169,38],"m":"lda","o":"#$26"},{"a":7674,"t":"code","b":[153,4,204],"m":"sta","oa":52228,"o":"f_CC04,y"},{"a":7677,"t":"code","b":[169,39],"m":"lda","o":"#$27"},{"a":7679,"t":"code","b":[153,43,204],"m":"sta","oa":52267,"o":"f_CC2B,y"},{"a":7682,"t":"code","b":[169,40],"m":"lda","o":"#$28"},{"a":7684,"t":"code","b":[153,44,204],"m":"sta","oa":52268,"o":"f_CC2C,y"},{"a":7687,"t":"code","b":[96],"m":"rts"},{"a":7688,"l":"clear_yinyang","c":"Clears one fighter's two yin-yang blocks (spaces at $CC03/$CC04/$CC06/$CC07 and the row below, offset by Y): Y = 0 fighter 0, Y = $1D fighter 1.","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6937,6942,7066,7071,7155,7160,7435,7440]},{"a":7690,"t":"code","b":[153,3,204],"m":"sta","oa":52227,"o":"f_CC03,y"},{"a":7693,"t":"code","b":[153,43,204],"m":"sta","oa":52267,"o":"f_CC2B,y"},{"a":7696,"t":"code","b":[153,4,204],"m":"sta","oa":52228,"o":"f_CC04,y"},{"a":7699,"t":"code","b":[153,44,204],"m":"sta","oa":52268,"o":"f_CC2C,y"},{"a":7702,"t":"code","b":[153,6,204],"m":"sta","oa":52230,"o":"f_CC06,y"},{"a":7705,"t":"code","b":[153,7,204],"m":"sta","oa":52231,"o":"f_CC07,y"},{"a":7708,"t":"code","b":[153,46,204],"m":"sta","oa":52270,"o":"f_CC2E,y"},{"a":7711,"t":"code","b":[153,47,204],"m":"sta","oa":52271,"o":"f_CC2F,y"},{"a":7714,"t":"code","b":[96],"m":"rts"},{"a":7715,"l":"reset_fighter_pose","c":"Puts fighter X in the pose $45,X = $19, with $6C,X = $50 and $47,X, $4B,X cleared: the start of the end-of-bout animation that $1E32 and $1E44 play out.","t":"code","b":[169,25],"m":"lda","o":"#$19","x":[7730,7750,7755]},{"a":7717,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":7719,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":7721,"t":"code","b":[149,108],"m":"sta","oa":108,"o":"fighter_y,x"},{"a":7723,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7725,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":7727,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":7729,"t":"code","b":[96],"m":"rts"},{"a":7730,"l":"play_end_animation","c":"Fighter X's end-of-bout animation ($1E23) played frame by frame with $37BD until its finished flag $59,X is set. Used for the winner of a bout.","t":"code","b":[32,35,30],"m":"jsr","oa":7715,"o":"reset_fighter_pose","x":[7020,7355,7369,7499]},{"a":7733,"l":"b_1E35","t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate","x":[7745]},{"a":7736,"l":"b_1E38","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[7741]},{"a":7739,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":7741,"t":"code","b":[144,249],"m":"bcc","oa":7736,"o":"b_1E38"},{"a":7743,"t":"code","b":[181,89],"m":"lda","oa":89,"o":"anim_ended,x"},{"a":7745,"t":"code","b":[240,242],"m":"beq","oa":7733,"o":"b_1E35"},{"a":7747,"t":"code","b":[96],"m":"rts"},{"a":7748,"l":"play_both_end_animations","c":"Both fighters' end-of-bout animation ($1E23 for each), stepped with $37BD each frame until fighter 1's $59,X is set. Used for a drawn bout.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[7009,7242]},{"a":7750,"t":"code","b":[32,35,30],"m":"jsr","oa":7715,"o":"reset_fighter_pose"},{"a":7753,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":7755,"t":"code","b":[32,35,30],"m":"jsr","oa":7715,"o":"reset_fighter_pose"},{"a":7758,"l":"b_1E4E","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[7777]},{"a":7760,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":7763,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":7765,"t":"code","b":[32,189,55],"m":"jsr","oa":14269,"o":"fighter_animate"},{"a":7768,"l":"b_1E58","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[7773]},{"a":7771,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":7773,"t":"code","b":[144,249],"m":"bcc","oa":7768,"o":"b_1E58"},{"a":7775,"t":"code","b":[181,89],"m":"lda","oa":89,"o":"anim_ended,x"},{"a":7777,"t":"code","b":[240,235],"m":"beq","oa":7758,"o":"b_1E4E"},{"a":7779,"t":"code","b":[96],"m":"rts"},{"a":7780,"l":"poll_function_keys","c":"Reads keyboard row 0 (CIA 1: $DC00 = $FE, $DC01) and acts when it differs from last time ($BB): F1 ($EF) returns $80; F3 ($DF) flips players $AE between 0 and 1 and redraws the panel ($2186, $2115); F7 ($F7) flips control $C6 joystick/keyboard ($228A); DEL ($FE) flips the sound-effects flag $CF; F5 ($BF) jumps straight to $1EE1. F1, F3, F7 and DEL count only while $B0 = 0 (the attract mode); F5 always. Otherwise, while $B0 = 0, fire on joystick port 2 ($DC00 bit 4) returns $80. Returns 0 for nothing.","t":"code","b":[169,255],"m":"lda","o":"#$FF","x":[6832]},{"a":7782,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":7785,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7787,"t":"code","b":[141,3,220],"m":"sta","o":"cia1_ddr_b"},{"a":7790,"t":"code","b":[169,254],"m":"lda","o":"#$FE"},{"a":7792,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":7795,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":7798,"t":"code","b":[197,187],"m":"cmp","oa":187,"o":"last_key_row"},{"a":7800,"t":"code","b":[240,22],"m":"beq","oa":7824,"o":"b_1E90"},{"a":7802,"t":"code","b":[133,187],"m":"sta","oa":187,"o":"last_key_row"},{"a":7804,"t":"code","b":[201,239],"m":"cmp","o":"#$EF"},{"a":7806,"t":"code","b":[240,33],"m":"beq","oa":7841,"o":"b_1EA1"},{"a":7808,"t":"code","b":[201,223],"m":"cmp","o":"#$DF"},{"a":7810,"t":"code","b":[240,36],"m":"beq","oa":7848,"o":"b_1EA8"},{"a":7812,"t":"code","b":[201,191],"m":"cmp","o":"#$BF"},{"a":7814,"t":"code","b":[240,73],"m":"beq","oa":7889,"o":"b_1ED1"},{"a":7816,"t":"code","b":[201,247],"m":"cmp","o":"#$F7"},{"a":7818,"t":"code","b":[240,53],"m":"beq","oa":7873,"o":"b_1EC1"},{"a":7820,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":7822,"t":"code","b":[240,68],"m":"beq","oa":7892,"o":"b_1ED4"},{"a":7824,"l":"b_1E90","t":"code","b":[165,176],"m":"lda","oa":176,"o":"game_running","x":[7800,7843]},{"a":7826,"t":"code","b":[208,10],"m":"bne","oa":7838,"o":"b_1E9E"},{"a":7828,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":7831,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":7833,"t":"code","b":[208,3],"m":"bne","oa":7838,"o":"b_1E9E"},{"a":7835,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":7837,"t":"code","b":[96],"m":"rts"},{"a":7838,"l":"b_1E9E","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7826,7833]},{"a":7840,"t":"code","b":[96],"m":"rts"},{"a":7841,"l":"b_1EA1","t":"code","b":[165,176],"m":"lda","oa":176,"o":"game_running","x":[7806]},{"a":7843,"t":"code","b":[208,235],"m":"bne","oa":7824,"o":"b_1E90"},{"a":7845,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":7847,"t":"code","b":[96],"m":"rts"},{"a":7848,"l":"b_1EA8","t":"code","b":[165,176],"m":"lda","oa":176,"o":"game_running","x":[7810]},{"a":7850,"t":"code","b":[208,18],"m":"bne","oa":7870,"o":"b_1EBE"},{"a":7852,"t":"code","b":[230,174],"m":"inc","oa":174,"o":"players_minus_one"},{"a":7854,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":7856,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":7858,"t":"code","b":[208,4],"m":"bne","oa":7864,"o":"b_1EB8"},{"a":7860,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7862,"t":"code","b":[133,174],"m":"sta","oa":174,"o":"players_minus_one"},{"a":7864,"l":"b_1EB8","t":"code","b":[32,134,33],"m":"jsr","oa":8582,"o":"panel_show_players","x":[7858]},{"a":7867,"t":"code","b":[32,21,33],"m":"jsr","oa":8469,"o":"panel_show_hiscore"},{"a":7870,"l":"b_1EBE","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7850]},{"a":7872,"t":"code","b":[96],"m":"rts"},{"a":7873,"l":"b_1EC1","t":"code","b":[165,176],"m":"lda","oa":176,"o":"game_running","x":[7818]},{"a":7875,"t":"code","b":[208,9],"m":"bne","oa":7886,"o":"b_1ECE"},{"a":7877,"t":"code","b":[165,198],"m":"lda","oa":198,"o":"keyboard_mode"},{"a":7879,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":7881,"t":"code","b":[133,198],"m":"sta","oa":198,"o":"keyboard_mode"},{"a":7883,"t":"code","b":[32,138,34],"m":"jsr","oa":8842,"o":"panel_show_controls"},{"a":7886,"l":"b_1ECE","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7875]},{"a":7888,"t":"code","b":[96],"m":"rts"},{"a":7889,"l":"b_1ED1","t":"code","b":[76,225,30],"m":"jmp","oa":7905,"o":"main_loop","x":[7814]},{"a":7892,"l":"b_1ED4","t":"code","b":[165,176],"m":"lda","oa":176,"o":"game_running","x":[7822]},{"a":7894,"t":"code","b":[208,6],"m":"bne","oa":7902,"o":"b_1EDE"},{"a":7896,"t":"code","b":[165,207],"m":"lda","oa":207,"o":"speech_off"},{"a":7898,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":7900,"t":"code","b":[133,207],"m":"sta","oa":207,"o":"speech_off"},{"a":7902,"l":"b_1EDE","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[7894]},{"a":7904,"t":"code","b":[96],"m":"rts"},{"a":7905,"l":"main_loop","c":"The outer loop, entered from $1AED and from F5 at $1ED1 (a JMP from deep inside the call chain: the stack is not reset). $AE = 0 (one player). Each pass redraws the panel ($2115 high score, $2186 1/2 PLAYER, $228A JOYSTICK/KEYBOARD), $B0 = 0, clears both score fields, and runs the attract mode $1CD2 until it returns minus (F1 or fire). Then $AE = 0: the one-player game $1BA7 followed by $146A and $16E6; $AE = 1: the two-player game $1B09, repeated while it returns minus.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[6896,7889]},{"a":7907,"t":"code","b":[133,174],"m":"sta","oa":174,"o":"players_minus_one"},{"a":7909,"l":"b_1EE5","t":"code","b":[32,21,33],"m":"jsr","oa":8469,"o":"panel_show_hiscore","x":[7935,7955,7963]},{"a":7912,"t":"code","b":[32,134,33],"m":"jsr","oa":8582,"o":"panel_show_players"},{"a":7915,"t":"code","b":[32,138,34],"m":"jsr","oa":8842,"o":"panel_show_controls"},{"a":7918,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7920,"t":"code","b":[133,176],"m":"sta","oa":176,"o":"game_running"},{"a":7922,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":7924,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":7927,"t":"code","b":[162,25],"m":"ldx","o":"#$19"},{"a":7929,"t":"code","b":[32,93,31],"m":"jsr","oa":8029,"o":"clear_score_field"},{"a":7932,"t":"code","b":[32,210,28],"m":"jsr","oa":7378,"o":"attract_mode"},{"a":7935,"t":"code","b":[16,228],"m":"bpl","oa":7909,"o":"b_1EE5"},{"a":7937,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":7939,"t":"code","b":[240,5],"m":"beq","oa":7946,"o":"b_1F0A"},{"a":7941,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":7943,"t":"code","b":[240,13],"m":"beq","oa":7958,"o":"b_1F16"},{"a":7945,"t":"code","b":[96],"m":"rts"},{"a":7946,"l":"b_1F0A","t":"code","b":[32,167,27],"m":"jsr","oa":7079,"o":"one_player_game","x":[7939]},{"a":7949,"t":"code","b":[32,106,20],"m":"jsr","oa":5226,"o":"hiscore_after_game"},{"a":7952,"t":"code","b":[32,230,22],"m":"jsr","oa":5862,"o":"clear_top_rows"},{"a":7955,"t":"code","b":[76,229,30],"m":"jmp","oa":7909,"o":"b_1EE5"},{"a":7958,"l":"b_1F16","t":"code","b":[32,9,27],"m":"jsr","oa":6921,"o":"two_player_game","x":[7943,7961]},{"a":7961,"t":"code","b":[48,251],"m":"bmi","oa":7958,"o":"b_1F16"},{"a":7963,"t":"code","b":[76,229,30],"m":"jmp","oa":7909,"o":"b_1EE5"},{"a":7966,"l":"clear_backdrop_bitmap","c":"Clears $E640-$F53F, the 15 pages of bitmap that each backdrop redraws (character rows 5-16). It writes the STA's address operand at $1F2E/$1F2F to $E640 first, then steps its high byte, so after a run the operand reads $F540.","t":"code","b":[169,64],"m":"lda","o":"#$40","x":[8014]},{"a":7968,"t":"code","b":[141,46,31],"m":"sta","oa":7982,"o":"clear_dest_lo"},{"a":7971,"t":"code","b":[169,230],"m":"lda","o":"#$E6"},{"a":7973,"t":"code","b":[141,47,31],"m":"sta","oa":7983,"o":"clear_dest_hi"},{"a":7976,"t":"code","b":[162,15],"m":"ldx","o":"#$0F"},{"a":7978,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7980,"t":"code","b":[168],"m":"tay"},{"a":7981,"l":"b_1F2D","t":"code","b":[153,64,245],"m":"sta","oa":62784,"o":"speech_sample_table,y","x":[7985,7991]},{"a":7982,"t":"note","l":"clear_dest_lo","c":"Low byte of the STA operand at $1F2D, written ($40) by $1F1E.","note":"inside the item at $1F2D","x":[7968]},{"a":7983,"t":"note","l":"clear_dest_hi","c":"High byte of the STA operand at $1F2D, written ($E6) and stepped by $1F1E.","note":"inside the item at $1F2D","x":[7973,7987]},{"a":7984,"t":"code","b":[200],"m":"iny"},{"a":7985,"t":"code","b":[208,250],"m":"bne","oa":7981,"o":"b_1F2D"},{"a":7987,"t":"code","b":[238,47,31],"m":"inc","oa":7983,"o":"clear_dest_hi"},{"a":7990,"t":"code","b":[202],"m":"dex"},{"a":7991,"t":"code","b":[208,244],"m":"bne","oa":7981,"o":"b_1F2D"},{"a":7993,"t":"code","b":[96],"m":"rts"},{"a":7994,"l":"select_backdrop","c":"Turns sprites 6 and 7 off ($D015 = $3F) and, when backdrop ($AF AND 3) is not the one in the bitmap ($B6), draws it: $2FEC = 3, clear ($1F1E), colours ($1849), bitmap ($17BB), $2FEC = 1. The backdrops are packed in memory; no disk access.","t":"code","b":[169,63],"m":"lda","o":"#$3F","x":[6978,7178,7458]},{"a":7996,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":7999,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":8001,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":8003,"t":"code","b":[197,182],"m":"cmp","oa":182,"o":"backdrop_shown"},{"a":8005,"t":"code","b":[240,21],"m":"beq","oa":8028,"o":"r_1F5C"},{"a":8007,"t":"code","b":[133,182],"m":"sta","oa":182,"o":"backdrop_shown"},{"a":8009,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":8011,"t":"code","b":[141,236,47],"m":"sta","oa":12268,"o":"irq_line90_bg_colour"},{"a":8014,"t":"code","b":[32,30,31],"m":"jsr","oa":7966,"o":"clear_backdrop_bitmap"},{"a":8017,"t":"code","b":[32,73,24],"m":"jsr","oa":6217,"o":"unpack_backdrop_colours"},{"a":8020,"t":"code","b":[32,187,23],"m":"jsr","oa":6075,"o":"bitmap_unpack"},{"a":8023,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":8025,"t":"code","b":[141,236,47],"m":"sta","oa":12268,"o":"irq_line90_bg_colour"},{"a":8028,"l":"r_1F5C","t":"code","b":[96],"m":"rts","x":[8005]},{"a":8029,"l":"clear_score_field","c":"Resets a six-digit score field on text row 1 to blanks and a final 0: X = 9 player 1 (columns 9-14), X = $19 player 2 (columns 25-30).","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6951,6956,7107,7112,7924,7929]},{"a":8031,"t":"code","b":[157,40,204],"m":"sta","oa":52264,"o":"f_CC28,x"},{"a":8034,"t":"code","b":[157,41,204],"m":"sta","oa":52265,"o":"f_CC29,x"},{"a":8037,"t":"code","b":[157,42,204],"m":"sta","oa":52266,"o":"f_CC2A,x"},{"a":8040,"t":"code","b":[157,43,204],"m":"sta","oa":52267,"o":"f_CC2B,x"},{"a":8043,"t":"code","b":[157,44,204],"m":"sta","oa":52268,"o":"f_CC2C,x"},{"a":8046,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8048,"t":"code","b":[157,45,204],"m":"sta","oa":52269,"o":"f_CC2D,x"},{"a":8051,"t":"code","b":[96],"m":"rts"},{"a":8052,"l":"compare_scores","c":"Compares the two score fields digit by digit ($CC31 against $CC41, six characters). X = 0 when player 1's is higher, 1 when player 2's is, $80 when equal (N set).","t":"code","b":[162,9],"m":"ldx","o":"#$09","x":[7004]},{"a":8054,"t":"code","b":[160,25],"m":"ldy","o":"#$19"},{"a":8056,"l":"b_1F78","t":"code","b":[189,40,204],"m":"lda","oa":52264,"o":"f_CC28,x","x":[8072]},{"a":8059,"t":"code","b":[217,40,204],"m":"cmp","oa":52264,"o":"f_CC28,y"},{"a":8062,"t":"code","b":[240,4],"m":"beq","oa":8068,"o":"b_1F84"},{"a":8064,"t":"code","b":[176,11],"m":"bcs","oa":8077,"o":"b_1F8D"},{"a":8066,"t":"code","b":[144,12],"m":"bcc","oa":8080,"o":"b_1F90"},{"a":8068,"l":"b_1F84","t":"code","b":[200],"m":"iny","x":[8062]},{"a":8069,"t":"code","b":[232],"m":"inx"},{"a":8070,"t":"code","b":[224,15],"m":"cpx","o":"#$0F"},{"a":8072,"t":"code","b":[208,238],"m":"bne","oa":8056,"o":"b_1F78"},{"a":8074,"t":"code","b":[162,128],"m":"ldx","o":"#$80"},{"a":8076,"t":"code","b":[96],"m":"rts"},{"a":8077,"l":"b_1F8D","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[8064]},{"a":8079,"t":"code","b":[96],"m":"rts"},{"a":8080,"l":"b_1F90","t":"code","b":[162,1],"m":"ldx","o":"#$01","x":[8066]},{"a":8082,"t":"code","b":[96],"m":"rts"},{"a":8083,"l":"show_judge_decision","c":"Shows the judge's decision for fighter X with sprites 6 and 7: sprite 6 colour 12, pointer from $1FFA (shape $5C for backdrops 0 and 1, where the judge sits on the right, $50 for 2 and 3), position from $1FFE, $2002, $2006; sprite 7, pointer $51, a small shape in colour X + 1 (1 white for fighter 0, 2 red for fighter 1), placed beside it. Then sprites 6 and 7 on.","t":"code","b":[169,12],"m":"lda","o":"#$0C","x":[7017,7352,7366]},{"a":8085,"t":"code","b":[141,45,208],"m":"sta","o":"vic_sprite6_colour"},{"a":8088,"t":"code","b":[138],"m":"txa"},{"a":8089,"t":"code","b":[24],"m":"clc"},{"a":8090,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":8092,"t":"code","b":[141,46,208],"m":"sta","o":"vic_sprite7_colour"},{"a":8095,"t":"code","b":[169,81],"m":"lda","o":"#$51"},{"a":8097,"t":"code","b":[141,255,207],"m":"sta","oa":53247,"o":"a_CFFF"},{"a":8100,"t":"code","b":[165,175],"m":"lda","oa":175,"o":"stage"},{"a":8102,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":8104,"t":"code","b":[168],"m":"tay"},{"a":8105,"t":"code","b":[185,250,31],"m":"lda","oa":8186,"o":"judge_sprite_ptrs,y"},{"a":8108,"t":"code","b":[141,254,207],"m":"sta","oa":53246,"o":"a_CFFE"},{"a":8111,"t":"code","b":[185,254,31],"m":"lda","oa":8190,"o":"judge_x_lo,y"},{"a":8114,"t":"code","b":[141,12,208],"m":"sta","o":"vic_sprite6_x"},{"a":8117,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":8120,"t":"code","b":[41,63],"m":"and","o":"#$3F"},{"a":8122,"t":"code","b":[25,2,32],"m":"ora","oa":8194,"o":"scene_sprite67_xmsb,y"},{"a":8125,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":8128,"t":"code","b":[185,6,32],"m":"lda","oa":8198,"o":"scene_sprite6_y,y"},{"a":8131,"t":"code","b":[141,13,208],"m":"sta","o":"vic_sprite6_y"},{"a":8134,"t":"code","b":[173,254,207],"m":"lda","oa":53246,"o":"a_CFFE"},{"a":8137,"t":"code","b":[201,92],"m":"cmp","o":"#$5C"},{"a":8139,"t":"code","b":[208,21],"m":"bne","oa":8162,"o":"b_1FE2"},{"a":8141,"t":"code","b":[173,12,208],"m":"lda","o":"vic_sprite6_x"},{"a":8144,"t":"code","b":[56],"m":"sec"},{"a":8145,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":8147,"t":"code","b":[141,14,208],"m":"sta","o":"vic_sprite7_x"},{"a":8150,"t":"code","b":[173,13,208],"m":"lda","o":"vic_sprite6_y"},{"a":8153,"t":"code","b":[24],"m":"clc"},{"a":8154,"t":"code","b":[105,6],"m":"adc","o":"#$06"},{"a":8156,"t":"code","b":[141,15,208],"m":"sta","o":"vic_sprite7_y"},{"a":8159,"t":"code","b":[76,241,31],"m":"jmp","oa":8177,"o":"j_1FF1"},{"a":8162,"l":"b_1FE2","t":"code","b":[173,12,208],"m":"lda","o":"vic_sprite6_x","x":[8139]},{"a":8165,"t":"code","b":[24],"m":"clc"},{"a":8166,"t":"code","b":[105,4],"m":"adc","o":"#$04"},{"a":8168,"t":"code","b":[141,14,208],"m":"sta","o":"vic_sprite7_x"},{"a":8171,"t":"code","b":[173,13,208],"m":"lda","o":"vic_sprite6_y"},{"a":8174,"t":"code","b":[141,15,208],"m":"sta","o":"vic_sprite7_y"},{"a":8177,"l":"j_1FF1","t":"code","b":[173,21,208],"m":"lda","o":"vic_sprite_enable","x":[8159]},{"a":8180,"t":"code","b":[9,192],"m":"ora","o":"#$C0"},{"a":8182,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":8185,"t":"code","b":[96],"m":"rts"},{"a":8186,"l":"judge_sprite_ptrs","c":"Sprite 6 pointer per backdrop for $1F93: $5C, $5C, $50, $50.","t":"byte","b":[92,92,80,80],"x":[8105]},{"a":8190,"l":"judge_x_lo","c":"Sprite 6 X position, low byte, per backdrop for $1F93; four bytes running to $2001 ($12, $20, $58, $46), the high bits at $2002.","t":"byte","b":[18,32],"x":[8111]},{"a":8192,"t":"gap","n":2},{"a":8194,"l":"scene_sprite67_xmsb","c":"Per-backdrop bits 6-7 of $D010 (X bit 8 of sprites 6 and 7), indexed by $AF AND 3 at $1FBA: $C0,$C0,$00,$00. Read only there.","t":"byte","b":[192,192,0,0],"x":[8122]},{"a":8198,"l":"scene_sprite6_y","c":"Per-backdrop Y position of sprite 6 ($D00D), indexed by $AF AND 3 at $1FC0: $9E,$99,$94,$96; sprite 7's Y is derived from it at $1FD6. Read only there.","t":"byte","b":[158,153,148,150],"x":[8128]},{"a":8202,"l":"hiscore_update","c":"Copies a player's score into the high score of the current mode when it is higher. $AE=0 (one player): table $1299, score at $CC31. $AE<>0 (two players): table $129F, X=0 player 1's score ($CC31), else player 2's ($CC41). Uses $BF/$C0 as the table pointer; X destroyed.","t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one","x":[7023,7250]},{"a":8204,"t":"code","b":[208,21],"m":"bne","oa":8227,"o":"b_2023"},{"a":8206,"t":"code","b":[169,153],"m":"lda","o":"#$99"},{"a":8208,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":8210,"t":"code","b":[169,18],"m":"lda","o":"#$12"},{"a":8212,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":8214,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":8216,"t":"code","b":[32,73,32],"m":"jsr","oa":8265,"o":"score_compare6"},{"a":8219,"t":"code","b":[176,5],"m":"bcs","oa":8226,"o":"r_2022"},{"a":8221,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":8223,"t":"code","b":[32,94,32],"m":"jsr","oa":8286,"o":"score_copy6"},{"a":8226,"l":"r_2022","t":"code","b":[96],"m":"rts","x":[8219,8244,8257]},{"a":8227,"l":"b_2023","t":"code","b":[169,159],"m":"lda","o":"#$9F","x":[8204]},{"a":8229,"t":"code","b":[133,191],"m":"sta","oa":191,"o":"text_ptr"},{"a":8231,"t":"code","b":[169,18],"m":"lda","o":"#$12"},{"a":8233,"t":"code","b":[133,192],"m":"sta","oa":192,"o":"text_ptr_hi"},{"a":8235,"t":"code","b":[224,0],"m":"cpx","o":"#$00"},{"a":8237,"t":"code","b":[208,13],"m":"bne","oa":8252,"o":"b_203C"},{"a":8239,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":8241,"t":"code","b":[32,73,32],"m":"jsr","oa":8265,"o":"score_compare6"},{"a":8244,"t":"code","b":[176,236],"m":"bcs","oa":8226,"o":"r_2022"},{"a":8246,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":8248,"t":"code","b":[32,94,32],"m":"jsr","oa":8286,"o":"score_copy6"},{"a":8251,"t":"code","b":[96],"m":"rts"},{"a":8252,"l":"b_203C","t":"code","b":[162,25],"m":"ldx","o":"#$19","x":[8237]},{"a":8254,"t":"code","b":[32,73,32],"m":"jsr","oa":8265,"o":"score_compare6"},{"a":8257,"t":"code","b":[176,223],"m":"bcs","oa":8226,"o":"r_2022"},{"a":8259,"t":"code","b":[162,25],"m":"ldx","o":"#$19"},{"a":8261,"t":"code","b":[32,94,32],"m":"jsr","oa":8286,"o":"score_copy6"},{"a":8264,"t":"code","b":[96],"m":"rts"},{"a":8265,"l":"score_compare6","c":"Compares the 6 screen-code digits at ($BF) (a stored high score) with the 6 on screen at $CC28+X, most significant first. Returns C clear when the screen number is the larger, C set when it is equal or smaller. Spaces ($20) sort below digits.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[5704,8216,8241,8254]},{"a":8267,"l":"b_204B","t":"code","b":[177,191],"m":"lda","oa":191,"o":"(text_ptr),y","x":[8282]},{"a":8269,"t":"code","b":[221,40,204],"m":"cmp","oa":52264,"o":"f_CC28,x"},{"a":8272,"t":"code","b":[144,11],"m":"bcc","oa":8285,"o":"r_205D"},{"a":8274,"t":"code","b":[240,2],"m":"beq","oa":8278,"o":"b_2056"},{"a":8276,"t":"code","b":[56],"m":"sec"},{"a":8277,"t":"code","b":[96],"m":"rts"},{"a":8278,"l":"b_2056","t":"code","b":[200],"m":"iny","x":[8274]},{"a":8279,"t":"code","b":[232],"m":"inx"},{"a":8280,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":8282,"t":"code","b":[208,239],"m":"bne","oa":8267,"o":"b_204B"},{"a":8284,"t":"code","b":[56],"m":"sec"},{"a":8285,"l":"r_205D","t":"code","b":[96],"m":"rts","x":[8272]},{"a":8286,"l":"score_copy6","c":"Copies the 6 characters on screen at $CC28+X to ($BF),0..5: stores a new high score.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[5760,8223,8248,8261]},{"a":8288,"l":"b_2060","t":"code","b":[189,40,204],"m":"lda","oa":52264,"o":"f_CC28,x","x":[8297]},{"a":8291,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8293,"t":"code","b":[232],"m":"inx"},{"a":8294,"t":"code","b":[200],"m":"iny"},{"a":8295,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":8297,"t":"code","b":[208,245],"m":"bne","oa":8288,"o":"b_2060"},{"a":8299,"t":"code","b":[96],"m":"rts"},{"a":8300,"l":"score_add_award","c":"Adds a blow's award to a player's on-screen score: $12A5[$8C] hundreds, $8C being the attacker's move (stored at $2CAC), halved unless the blow was a whole symbol ($6E for X=9, $6F otherwise; 2 whole, 1 half, set at $2C20/$2C33). Calls score_add_100 that many times; a blank tens digit becomes '0' first. X = 9 for the score at $CC31, $19 for $CC41. An award of 0 would add 25600 (Y wraps).","t":"code","b":[164,140],"m":"ldy","oa":140,"o":"scoring_move","x":[7053,7061,7314]},{"a":8302,"t":"code","b":[185,165,18],"m":"lda","oa":4773,"o":"move_points,y"},{"a":8305,"t":"code","b":[224,9],"m":"cpx","o":"#$09"},{"a":8307,"t":"code","b":[208,5],"m":"bne","oa":8314,"o":"b_207A"},{"a":8309,"t":"code","b":[164,110],"m":"ldy","oa":110,"o":"blow_value"},{"a":8311,"t":"code","b":[76,124,32],"m":"jmp","oa":8316,"o":"j_207C"},{"a":8314,"l":"b_207A","t":"code","b":[164,111],"m":"ldy","oa":111,"o":"blow_value_f1","x":[8307]},{"a":8316,"l":"j_207C","t":"code","b":[192,2],"m":"cpy","o":"#$02","x":[8311]},{"a":8318,"t":"code","b":[240,1],"m":"beq","oa":8321,"o":"b_2081"},{"a":8320,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":8321,"l":"b_2081","t":"code","b":[168],"m":"tay","x":[8318]},{"a":8322,"t":"code","b":[189,44,204],"m":"lda","oa":52268,"o":"f_CC2C,x"},{"a":8325,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":8327,"t":"code","b":[208,5],"m":"bne","oa":8334,"o":"b_208E"},{"a":8329,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8331,"t":"code","b":[157,44,204],"m":"sta","oa":52268,"o":"f_CC2C,x"},{"a":8334,"l":"b_208E","t":"code","b":[32,149,32],"m":"jsr","oa":8341,"o":"score_add_100","x":[8327,8338]},{"a":8337,"t":"code","b":[136],"m":"dey"},{"a":8338,"t":"code","b":[208,250],"m":"bne","oa":8334,"o":"b_208E"},{"a":8340,"t":"code","b":[96],"m":"rts"},{"a":8341,"l":"score_add_100","c":"Adds 100 to the six-digit decimal score drawn on screen at $CC28+X..$CC2D+X (screen codes, $30-$39, leading blanks $20). Increments the hundreds digit at $CC2B+X and carries leftward; a blank digit becomes '1'. Past 999999 all six digits become '0'.","t":"code","b":[189,43,204],"m":"lda","oa":52267,"o":"f_CC2B,x","x":[4999,5130,8334,8686]},{"a":8344,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":8346,"t":"code","b":[208,6],"m":"bne","oa":8354,"o":"b_20A2"},{"a":8348,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":8350,"t":"code","b":[157,43,204],"m":"sta","oa":52267,"o":"f_CC2B,x"},{"a":8353,"t":"code","b":[96],"m":"rts"},{"a":8354,"l":"b_20A2","t":"code","b":[254,43,204],"m":"inc","oa":52267,"o":"f_CC2B,x","x":[8346]},{"a":8357,"t":"code","b":[189,43,204],"m":"lda","oa":52267,"o":"f_CC2B,x"},{"a":8360,"t":"code","b":[201,58],"m":"cmp","o":"#$3A"},{"a":8362,"t":"code","b":[208,104],"m":"bne","oa":8468,"o":"r_2114"},{"a":8364,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8366,"t":"code","b":[157,43,204],"m":"sta","oa":52267,"o":"f_CC2B,x"},{"a":8369,"t":"code","b":[189,42,204],"m":"lda","oa":52266,"o":"f_CC2A,x"},{"a":8372,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":8374,"t":"code","b":[208,6],"m":"bne","oa":8382,"o":"b_20BE"},{"a":8376,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":8378,"t":"code","b":[157,42,204],"m":"sta","oa":52266,"o":"f_CC2A,x"},{"a":8381,"t":"code","b":[96],"m":"rts"},{"a":8382,"l":"b_20BE","t":"code","b":[254,42,204],"m":"inc","oa":52266,"o":"f_CC2A,x","x":[8374]},{"a":8385,"t":"code","b":[189,42,204],"m":"lda","oa":52266,"o":"f_CC2A,x"},{"a":8388,"t":"code","b":[201,58],"m":"cmp","o":"#$3A"},{"a":8390,"t":"code","b":[208,76],"m":"bne","oa":8468,"o":"r_2114"},{"a":8392,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8394,"t":"code","b":[157,42,204],"m":"sta","oa":52266,"o":"f_CC2A,x"},{"a":8397,"t":"code","b":[189,41,204],"m":"lda","oa":52265,"o":"f_CC29,x"},{"a":8400,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":8402,"t":"code","b":[208,6],"m":"bne","oa":8410,"o":"b_20DA"},{"a":8404,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":8406,"t":"code","b":[157,41,204],"m":"sta","oa":52265,"o":"f_CC29,x"},{"a":8409,"t":"code","b":[96],"m":"rts"},{"a":8410,"l":"b_20DA","t":"code","b":[254,41,204],"m":"inc","oa":52265,"o":"f_CC29,x","x":[8402]},{"a":8413,"t":"code","b":[189,41,204],"m":"lda","oa":52265,"o":"f_CC29,x"},{"a":8416,"t":"code","b":[201,58],"m":"cmp","o":"#$3A"},{"a":8418,"t":"code","b":[208,48],"m":"bne","oa":8468,"o":"r_2114"},{"a":8420,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8422,"t":"code","b":[157,41,204],"m":"sta","oa":52265,"o":"f_CC29,x"},{"a":8425,"t":"code","b":[189,40,204],"m":"lda","oa":52264,"o":"f_CC28,x"},{"a":8428,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":8430,"t":"code","b":[208,6],"m":"bne","oa":8438,"o":"b_20F6"},{"a":8432,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":8434,"t":"code","b":[157,40,204],"m":"sta","oa":52264,"o":"f_CC28,x"},{"a":8437,"t":"code","b":[96],"m":"rts"},{"a":8438,"l":"b_20F6","t":"code","b":[254,40,204],"m":"inc","oa":52264,"o":"f_CC28,x","x":[8430]},{"a":8441,"t":"code","b":[189,40,204],"m":"lda","oa":52264,"o":"f_CC28,x"},{"a":8444,"t":"code","b":[201,58],"m":"cmp","o":"#$3A"},{"a":8446,"t":"code","b":[208,20],"m":"bne","oa":8468,"o":"r_2114"},{"a":8448,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8450,"t":"code","b":[157,40,204],"m":"sta","oa":52264,"o":"f_CC28,x"},{"a":8453,"t":"code","b":[157,41,204],"m":"sta","oa":52265,"o":"f_CC29,x"},{"a":8456,"t":"code","b":[157,42,204],"m":"sta","oa":52266,"o":"f_CC2A,x"},{"a":8459,"t":"code","b":[157,43,204],"m":"sta","oa":52267,"o":"f_CC2B,x"},{"a":8462,"t":"code","b":[157,44,204],"m":"sta","oa":52268,"o":"f_CC2C,x"},{"a":8465,"t":"code","b":[157,45,204],"m":"sta","oa":52269,"o":"f_CC2D,x"},{"a":8468,"l":"r_2114","t":"code","b":[96],"m":"rts","x":[8362,8390,8418,8446]},{"a":8469,"l":"panel_show_hiscore","c":"Draws the high score of the current mode in the top panel: 6 characters from $1299 ($AE=0, one player) or $129F (two players) to $CCB1. Called each pass of the outer loop at $1EE5 and from $1C55, $1EBB. Not per-fighter work.","t":"code","b":[162,5],"m":"ldx","o":"#$05","x":[7253,7867,7909]},{"a":8471,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":8473,"t":"code","b":[240,10],"m":"beq","oa":8485,"o":"b_2125"},{"a":8475,"l":"b_211B","t":"code","b":[189,159,18],"m":"lda","oa":4767,"o":"hiscore_2p,x","x":[8482]},{"a":8478,"t":"code","b":[157,177,204],"m":"sta","oa":52401,"o":"f_CCB1,x"},{"a":8481,"t":"code","b":[202],"m":"dex"},{"a":8482,"t":"code","b":[16,247],"m":"bpl","oa":8475,"o":"b_211B"},{"a":8484,"t":"code","b":[96],"m":"rts"},{"a":8485,"l":"b_2125","t":"code","b":[189,153,18],"m":"lda","oa":4761,"o":"hiscore_1p,x","x":[8473,8492]},{"a":8488,"t":"code","b":[157,177,204],"m":"sta","oa":52401,"o":"f_CCB1,x"},{"a":8491,"t":"code","b":[202],"m":"dex"},{"a":8492,"t":"code","b":[16,247],"m":"bpl","oa":8485,"o":"b_2125"},{"a":8494,"t":"code","b":[96],"m":"rts"},{"a":8495,"l":"bout_clock_tick","c":"Bout clock. Every 50 calls ($B1 counts down from $32) takes one unit off the two-digit clock on screen at $CC3B/$CC3C (tens blanked below 10) and decrements $B2 (30 at $1B37); when $B2 reaches 0 sets $BC=1, time up. Called from $1AC7 and the time bonus loop. (Measured live: the clock counts passes of the exchange loop, not frames. A unit took 50 PAL frames, one second, with the computer fighting, and 60-66 frames with two idle players, so a 30-unit bout lasts about 30 to 40 seconds.)","t":"code","b":[198,177],"m":"dec","oa":177,"o":"clock_frames","x":[6855,8675]},{"a":8497,"t":"code","b":[208,53],"m":"bne","oa":8552,"o":"r_2168"},{"a":8499,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":8501,"t":"code","b":[133,177],"m":"sta","oa":177,"o":"clock_frames"},{"a":8503,"t":"code","b":[173,60,204],"m":"lda","oa":52284,"o":"a_CC3C"},{"a":8506,"t":"code","b":[201,48],"m":"cmp","o":"#$30"},{"a":8508,"t":"code","b":[208,31],"m":"bne","oa":8541,"o":"b_215D"},{"a":8510,"t":"code","b":[173,59,204],"m":"lda","oa":52283,"o":"a_CC3B"},{"a":8513,"t":"code","b":[201,49],"m":"cmp","o":"#$31"},{"a":8515,"t":"code","b":[240,11],"m":"beq","oa":8528,"o":"b_2150"},{"a":8517,"t":"code","b":[206,59,204],"m":"dec","oa":52283,"o":"a_CC3B"},{"a":8520,"t":"code","b":[169,57],"m":"lda","o":"#$39"},{"a":8522,"t":"code","b":[141,60,204],"m":"sta","oa":52284,"o":"a_CC3C"},{"a":8525,"t":"code","b":[76,96,33],"m":"jmp","oa":8544,"o":"j_2160"},{"a":8528,"l":"b_2150","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[8515]},{"a":8530,"t":"code","b":[141,59,204],"m":"sta","oa":52283,"o":"a_CC3B"},{"a":8533,"t":"code","b":[169,57],"m":"lda","o":"#$39"},{"a":8535,"t":"code","b":[141,60,204],"m":"sta","oa":52284,"o":"a_CC3C"},{"a":8538,"t":"code","b":[76,96,33],"m":"jmp","oa":8544,"o":"j_2160"},{"a":8541,"l":"b_215D","t":"code","b":[206,60,204],"m":"dec","oa":52284,"o":"a_CC3C","x":[8508]},{"a":8544,"l":"j_2160","t":"code","b":[198,178],"m":"dec","oa":178,"o":"clock_seconds","x":[8525,8538]},{"a":8546,"t":"code","b":[208,4],"m":"bne","oa":8552,"o":"r_2168"},{"a":8548,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":8550,"t":"code","b":[133,188],"m":"sta","oa":188,"o":"time_up"},{"a":8552,"l":"r_2168","t":"code","b":[96],"m":"rts","x":[8497,8546]},{"a":8553,"l":"bout_points_add","c":"Adds a blow's value $12A5[$8C], halved unless $6E is 2, to fighter X's tally $BD,X. Reads $6E, fighter 0's whole/half flag, for both fighters, where score_add_award uses $6F for the second: a slip, or deliberate. Called from $1C85 (X=1) and $1C97 (X=0).","t":"code","b":[164,140],"m":"ldy","oa":140,"o":"scoring_move","x":[7301,7319]},{"a":8555,"t":"code","b":[185,165,18],"m":"lda","oa":4773,"o":"move_points,y"},{"a":8558,"t":"code","b":[164,110],"m":"ldy","oa":110,"o":"blow_value"},{"a":8560,"t":"code","b":[192,2],"m":"cpy","o":"#$02"},{"a":8562,"t":"code","b":[240,1],"m":"beq","oa":8565,"o":"b_2175"},{"a":8564,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":8565,"l":"b_2175","t":"code","b":[24],"m":"clc","x":[8562]},{"a":8566,"t":"code","b":[117,189],"m":"adc","oa":189,"o":"bout_points,x"},{"a":8568,"t":"code","b":[149,189],"m":"sta","oa":189,"o":"bout_points,x"},{"a":8570,"t":"code","b":[96],"m":"rts"},{"a":8571,"l":"bout_clock_reset","c":"Writes '30' into the clock digits on screen at $CC3B/$CC3C. Called at bout start from $1B3F, $1C07, $1D1F.","t":"code","b":[169,51],"m":"lda","o":"#$33","x":[6975,7175,7455]},{"a":8573,"t":"code","b":[141,59,204],"m":"sta","oa":52283,"o":"a_CC3B"},{"a":8576,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":8578,"t":"code","b":[141,60,204],"m":"sta","oa":52284,"o":"a_CC3C"},{"a":8581,"t":"code","b":[96],"m":"rts"},{"a":8582,"l":"panel_show_players","c":"Draws the player count in the top panel at $CCBF: the 8 characters '1 PLAYER' ($12BE) when $AE=0, '2 PLAYER' ($12C6) when $AE=1, nothing for other values. Called from the outer loop at $1EE8 and from $1EB8.","t":"code","b":[160,7],"m":"ldy","o":"#$07","x":[7864,7912]},{"a":8584,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":8586,"t":"code","b":[240,5],"m":"beq","oa":8593,"o":"b_2191"},{"a":8588,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":8590,"t":"code","b":[240,11],"m":"beq","oa":8603,"o":"b_219B"},{"a":8592,"t":"code","b":[96],"m":"rts"},{"a":8593,"l":"b_2191","t":"code","b":[185,190,18],"m":"lda","oa":4798,"o":"str_1_player,y","x":[8586,8600]},{"a":8596,"t":"code","b":[153,191,204],"m":"sta","oa":52415,"o":"f_CCBF,y"},{"a":8599,"t":"code","b":[136],"m":"dey"},{"a":8600,"t":"code","b":[16,247],"m":"bpl","oa":8593,"o":"b_2191"},{"a":8602,"t":"code","b":[96],"m":"rts"},{"a":8603,"l":"b_219B","t":"code","b":[185,198,18],"m":"lda","oa":4806,"o":"str_2_player,y","x":[8590,8610]},{"a":8606,"t":"code","b":[153,191,204],"m":"sta","oa":52415,"o":"f_CCBF,y"},{"a":8609,"t":"code","b":[136],"m":"dey"},{"a":8610,"t":"code","b":[16,247],"m":"bpl","oa":8603,"o":"b_219B"},{"a":8612,"t":"code","b":[96],"m":"rts"},{"a":8613,"l":"panel_clear_labels","c":"Blanks the two 8-character panel fields at $CCA0 (rank or DEMO) and $CC97 (JOYSTICK/KEYBOARD) with spaces. Called from $1B11, $1BB1.","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6929,7089]},{"a":8615,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":8617,"l":"b_21A9","t":"code","b":[153,160,204],"m":"sta","oa":52384,"o":"f_CCA0,y","x":[8624]},{"a":8620,"t":"code","b":[153,151,204],"m":"sta","oa":52375,"o":"f_CC97,y"},{"a":8623,"t":"code","b":[136],"m":"dey"},{"a":8624,"t":"code","b":[16,247],"m":"bpl","oa":8617,"o":"b_21A9"},{"a":8626,"t":"code","b":[96],"m":"rts"},{"a":8627,"l":"panel_show_demo","c":"Writes DEMO ($44 $45 $4D $4F, immediates) at $CCA0, the rank field. Called from $1CEF when the attract-mode fight is set up.","t":"code","b":[169,68],"m":"lda","o":"#$44","x":[7407]},{"a":8629,"t":"code","b":[141,160,204],"m":"sta","oa":52384,"o":"f_CCA0"},{"a":8632,"t":"code","b":[169,69],"m":"lda","o":"#$45"},{"a":8634,"t":"code","b":[141,161,204],"m":"sta","oa":52385,"o":"a_CCA1"},{"a":8637,"t":"code","b":[169,77],"m":"lda","o":"#$4D"},{"a":8639,"t":"code","b":[141,162,204],"m":"sta","oa":52386,"o":"a_CCA2"},{"a":8642,"t":"code","b":[169,79],"m":"lda","o":"#$4F"},{"a":8644,"t":"code","b":[141,163,204],"m":"sta","oa":52387,"o":"a_CCA3"},{"a":8647,"t":"code","b":[96],"m":"rts"},{"a":8648,"l":"wait_6x_frames","c":"Delay: X times six passes of the raster beam over line $FE, so about X*6 frames. Uses Y; X ends 0. Called from $1B54, $1B74, $21F3.","t":"code","b":[160,6],"m":"ldy","o":"#$06","x":[6996,7028,8668,8691]},{"a":8650,"l":"wait_y_frames","c":"Delay entry used from $1778: waits for Y passes of raster line $FE (each pass: wait for line $FE, then for it to end). Falls into the X loop of wait_6x_frames, so the caller's X counts too.","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[6008,8655,8665]},{"a":8653,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":8655,"t":"code","b":[208,249],"m":"bne","oa":8650,"o":"wait_y_frames"},{"a":8657,"l":"b_21D1","t":"code","b":[173,18,208],"m":"lda","o":"vic_raster","x":[8662]},{"a":8660,"t":"code","b":[201,254],"m":"cmp","o":"#$FE"},{"a":8662,"t":"code","b":[240,249],"m":"beq","oa":8657,"o":"b_21D1"},{"a":8664,"t":"code","b":[136],"m":"dey"},{"a":8665,"t":"code","b":[208,239],"m":"bne","oa":8650,"o":"wait_y_frames"},{"a":8667,"t":"code","b":[202],"m":"dex"},{"a":8668,"t":"code","b":[208,234],"m":"bne","oa":8648,"o":"wait_6x_frames"},{"a":8670,"t":"code","b":[96],"m":"rts"},{"a":8671,"l":"time_bonus_count","c":"End-of-bout time bonus, if the clock has not run out ($BC=0): runs bout_clock_tick until each unit ticks over, adds 100 to player 1's score ($CC31, X=9) per unit left, pauses about 6 frames each, until $BC is set. Called from $1CBE.","t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up","x":[7358]},{"a":8673,"t":"code","b":[208,23],"m":"bne","oa":8698,"o":"r_21FA"},{"a":8675,"l":"b_21E3","t":"code","b":[32,47,33],"m":"jsr","oa":8495,"o":"bout_clock_tick","x":[8682,8696]},{"a":8678,"t":"code","b":[165,177],"m":"lda","oa":177,"o":"clock_frames"},{"a":8680,"t":"code","b":[201,50],"m":"cmp","o":"#$32"},{"a":8682,"t":"code","b":[208,247],"m":"bne","oa":8675,"o":"b_21E3"},{"a":8684,"t":"code","b":[162,9],"m":"ldx","o":"#$09"},{"a":8686,"t":"code","b":[32,149,32],"m":"jsr","oa":8341,"o":"score_add_100"},{"a":8689,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":8691,"t":"code","b":[32,200,33],"m":"jsr","oa":8648,"o":"wait_6x_frames"},{"a":8694,"t":"code","b":[165,188],"m":"lda","oa":188,"o":"time_up"},{"a":8696,"t":"code","b":[240,233],"m":"beq","oa":8675,"o":"b_21E3"},{"a":8698,"l":"r_21FA","t":"code","b":[96],"m":"rts","x":[8673]},{"a":8699,"l":"rank_text_draw","c":"Writes a rank name through ($BF): X=0 'NOVICE ' (7 bytes from $22B4) at offset 2*$CA; X=1..9 the digit, 'ST'/'ND'/'RD'/'TH' and ' DAN' at offset $CA; X=10 '10TH DAN' ($22BB) at offset 0. Called from $1C40 with X from level_rank_table, and from $15DE, $1BE0.","t":"code","b":[224,0],"m":"cpx","o":"#$00","x":[5598,7136,7232]},{"a":8701,"t":"code","b":[208,19],"m":"bne","oa":8722,"o":"b_2212"},{"a":8703,"t":"code","b":[165,202],"m":"lda","oa":202,"o":"rank_text_col"},{"a":8705,"t":"code","b":[10],"m":"asl","o":"a"},{"a":8706,"t":"code","b":[24],"m":"clc"},{"a":8707,"t":"code","b":[105,6],"m":"adc","o":"#$06"},{"a":8709,"t":"code","b":[168],"m":"tay"},{"a":8710,"t":"code","b":[162,6],"m":"ldx","o":"#$06"},{"a":8712,"l":"b_2208","t":"code","b":[189,180,34],"m":"lda","oa":8884,"o":"text_novice,x","x":[8719]},{"a":8715,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8717,"t":"code","b":[136],"m":"dey"},{"a":8718,"t":"code","b":[202],"m":"dex"},{"a":8719,"t":"code","b":[16,247],"m":"bpl","oa":8712,"o":"b_2208"},{"a":8721,"t":"code","b":[96],"m":"rts"},{"a":8722,"l":"b_2212","t":"code","b":[224,10],"m":"cpx","o":"#$0A","x":[8701]},{"a":8724,"t":"code","b":[240,94],"m":"beq","oa":8820,"o":"b_2274"},{"a":8726,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":8728,"t":"code","b":[24],"m":"clc"},{"a":8729,"t":"code","b":[101,202],"m":"adc","oa":202,"o":"rank_text_col"},{"a":8731,"t":"code","b":[168],"m":"tay"},{"a":8732,"t":"code","b":[138],"m":"txa"},{"a":8733,"t":"code","b":[24],"m":"clc"},{"a":8734,"t":"code","b":[105,48],"m":"adc","o":"#$30"},{"a":8736,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8738,"t":"code","b":[224,1],"m":"cpx","o":"#$01"},{"a":8740,"t":"code","b":[208,13],"m":"bne","oa":8755,"o":"b_2233"},{"a":8742,"t":"code","b":[200],"m":"iny"},{"a":8743,"t":"code","b":[169,83],"m":"lda","o":"#$53"},{"a":8745,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8747,"t":"code","b":[169,84],"m":"lda","o":"#$54"},{"a":8749,"t":"code","b":[200],"m":"iny"},{"a":8750,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8752,"t":"code","b":[76,95,34],"m":"jmp","oa":8799,"o":"j_225F"},{"a":8755,"l":"b_2233","t":"code","b":[224,2],"m":"cpx","o":"#$02","x":[8740]},{"a":8757,"t":"code","b":[208,13],"m":"bne","oa":8772,"o":"b_2244"},{"a":8759,"t":"code","b":[200],"m":"iny"},{"a":8760,"t":"code","b":[169,78],"m":"lda","o":"#$4E"},{"a":8762,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8764,"t":"code","b":[200],"m":"iny"},{"a":8765,"t":"code","b":[169,68],"m":"lda","o":"#$44"},{"a":8767,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8769,"t":"code","b":[76,95,34],"m":"jmp","oa":8799,"o":"j_225F"},{"a":8772,"l":"b_2244","t":"code","b":[224,3],"m":"cpx","o":"#$03","x":[8757]},{"a":8774,"t":"code","b":[208,13],"m":"bne","oa":8789,"o":"b_2255"},{"a":8776,"t":"code","b":[200],"m":"iny"},{"a":8777,"t":"code","b":[169,82],"m":"lda","o":"#$52"},{"a":8779,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8781,"t":"code","b":[200],"m":"iny"},{"a":8782,"t":"code","b":[169,68],"m":"lda","o":"#$44"},{"a":8784,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8786,"t":"code","b":[76,95,34],"m":"jmp","oa":8799,"o":"j_225F"},{"a":8789,"l":"b_2255","t":"code","b":[169,84],"m":"lda","o":"#$54","x":[8774]},{"a":8791,"t":"code","b":[200],"m":"iny"},{"a":8792,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8794,"t":"code","b":[200],"m":"iny"},{"a":8795,"t":"code","b":[169,72],"m":"lda","o":"#$48"},{"a":8797,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8799,"l":"j_225F","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[8752,8769,8786]},{"a":8801,"t":"code","b":[200],"m":"iny"},{"a":8802,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8804,"t":"code","b":[200],"m":"iny"},{"a":8805,"t":"code","b":[169,68],"m":"lda","o":"#$44"},{"a":8807,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8809,"t":"code","b":[200],"m":"iny"},{"a":8810,"t":"code","b":[169,65],"m":"lda","o":"#$41"},{"a":8812,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8814,"t":"code","b":[200],"m":"iny"},{"a":8815,"t":"code","b":[169,78],"m":"lda","o":"#$4E"},{"a":8817,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8819,"t":"code","b":[96],"m":"rts"},{"a":8820,"l":"b_2274","t":"code","b":[160,7],"m":"ldy","o":"#$07","x":[8724]},{"a":8822,"l":"b_2276","t":"code","b":[185,187,34],"m":"lda","oa":8891,"o":"text_10th_dan,y","x":[8828]},{"a":8825,"t":"code","b":[145,191],"m":"sta","oa":191,"o":"(text_ptr),y"},{"a":8827,"t":"code","b":[136],"m":"dey"},{"a":8828,"t":"code","b":[16,248],"m":"bpl","oa":8822,"o":"b_2276"},{"a":8830,"t":"code","b":[96],"m":"rts"},{"a":8831,"l":"panel_clear_rank","c":"Blanks the 8-character rank field at $CCA0 with spaces. Called from $1B14, $1BB4, $1CEC.","t":"code","b":[169,32],"m":"lda","o":"#$20","x":[6932,7092,7404]},{"a":8833,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":8835,"l":"b_2283","t":"code","b":[153,160,204],"m":"sta","oa":52384,"o":"f_CCA0,y","x":[8839]},{"a":8838,"t":"code","b":[136],"m":"dey"},{"a":8839,"t":"code","b":[16,250],"m":"bpl","oa":8835,"o":"b_2283"},{"a":8841,"t":"code","b":[96],"m":"rts"},{"a":8842,"l":"panel_show_controls","c":"Draws the control mode in the top panel at $CC97: 'JOYSTICK' when $C6=0, 'KEYBOARD' otherwise. Called from the outer loop at $1EEB and from $1ECB (the F7 toggle).","t":"code","b":[160,7],"m":"ldy","o":"#$07","x":[7883,7915]},{"a":8844,"t":"code","b":[165,198],"m":"lda","oa":198,"o":"keyboard_mode"},{"a":8846,"t":"code","b":[208,10],"m":"bne","oa":8858,"o":"b_229A"},{"a":8848,"l":"b_2290","t":"code","b":[185,164,34],"m":"lda","oa":8868,"o":"text_joystick,y","x":[8855]},{"a":8851,"t":"code","b":[153,151,204],"m":"sta","oa":52375,"o":"f_CC97,y"},{"a":8854,"t":"code","b":[136],"m":"dey"},{"a":8855,"t":"code","b":[16,247],"m":"bpl","oa":8848,"o":"b_2290"},{"a":8857,"t":"code","b":[96],"m":"rts"},{"a":8858,"l":"b_229A","t":"code","b":[185,172,34],"m":"lda","oa":8876,"o":"text_keyboard,y","x":[8846,8865]},{"a":8861,"t":"code","b":[153,151,204],"m":"sta","oa":52375,"o":"f_CC97,y"},{"a":8864,"t":"code","b":[136],"m":"dey"},{"a":8865,"t":"code","b":[16,247],"m":"bpl","oa":8858,"o":"b_229A"},{"a":8867,"t":"code","b":[96],"m":"rts"},{"a":8868,"l":"text_joystick","c":"'JOYSTICK', 8 codes in the game's ASCII-ordered font ($41='A'), copied by panel_show_controls.","t":"byte","b":[74,79,89,83,84,73,67,75],"x":[8848]},{"a":8876,"l":"text_keyboard","c":"'KEYBOARD', 8 font codes, copied by panel_show_controls when $C6 is set.","t":"byte","b":[75,69,89,66,79,65,82,68],"x":[8858]},{"a":8884,"l":"text_novice","c":"'NOVICE ' with a trailing space, 7 font codes, copied by rank_text_draw for rank 0.","t":"byte","b":[78,79,86,73,67,69,32],"x":[8712]},{"a":8891,"l":"text_10th_dan","c":"'10TH DAN', 8 font codes, copied by rank_text_draw for rank 10. Ranks 1-9 are built from immediates instead.","t":"byte","b":[49,48,84,72,32,68,65,78],"x":[8822]},{"a":8899,"l":"level_rank_table","c":"Displayed rank for each opponent level $B4: 0,1,2,..,10,10 (12 entries, levels 0-11). Read at $1C3B to pick the text rank_text_draw shows.","t":"byte","b":[0,1,2,3,4,5,6,7],"x":[7227]},{"a":8907,"t":"byte","b":[8,9,10,10]},{"a":8911,"l":"ai_think","c":"Computer opponent, once per call for fighter X (Y=$69 the other fighter); reached by JMP from $2849 when $65,X is set (computer-controlled) and $5F,X is clear. Output: the requested move $63,X, normally the held choice $90,X. Order: opponent in a forced move ($5F,opp) -> stand when own move is $0E, else count $A1,X down and stand at 0; a plan in progress ($9D,X) -> ai_plan_dispatch; opponent attacking ($1176[$61,opp]<>0) -> block, hold or counter; otherwise ai_no_threat.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[10313]},{"a":8913,"t":"code","b":[185,95,0],"m":"lda","oa":95,"o":"hit_state,y"},{"a":8916,"t":"code","b":[240,15],"m":"beq","oa":8933,"o":"b_22E5"},{"a":8918,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":8920,"t":"code","b":[201,14],"m":"cmp","o":"#$0E"},{"a":8922,"t":"code","b":[240,4],"m":"beq","oa":8928,"o":"b_22E0"},{"a":8924,"t":"code","b":[214,161],"m":"dec","oa":161,"o":"ai_forced_wait,x"},{"a":8926,"t":"code","b":[208,4],"m":"bne","oa":8932,"o":"r_22E4"},{"a":8928,"l":"b_22E0","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[8922]},{"a":8930,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":8932,"l":"r_22E4","t":"code","b":[96],"m":"rts","x":[8926]},{"a":8933,"l":"b_22E5","t":"code","b":[181,157],"m":"lda","oa":157,"o":"ai_plan,x","x":[8916]},{"a":8935,"t":"code","b":[240,3],"m":"beq","oa":8940,"o":"b_22EC"},{"a":8937,"t":"code","b":[76,137,38],"m":"jmp","oa":9865,"o":"ai_plan_dispatch"},{"a":8940,"l":"b_22EC","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[8935]},{"a":8942,"t":"code","b":[185,75,0],"m":"lda","oa":75,"o":"anim_reverse,y"},{"a":8945,"t":"code","b":[240,3],"m":"beq","oa":8950,"o":"b_22F6"},{"a":8947,"l":"b_22F3","t":"code","b":[76,189,35],"m":"jmp","oa":9149,"o":"ai_no_threat","x":[8957]},{"a":8950,"l":"b_22F6","t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y","x":[8945]},{"a":8953,"t":"code","b":[168],"m":"tay"},{"a":8954,"t":"code","b":[185,118,17],"m":"lda","oa":4470,"o":"move_is_blow,y"},{"a":8957,"t":"code","b":[240,244],"m":"beq","oa":8947,"o":"b_22F3"},{"a":8959,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":8961,"t":"code","b":[201,19],"m":"cmp","o":"#$13"},{"a":8963,"t":"code","b":[240,4],"m":"beq","oa":8969,"o":"b_2309"},{"a":8965,"t":"code","b":[201,20],"m":"cmp","o":"#$14"},{"a":8967,"t":"code","b":[208,16],"m":"bne","oa":8985,"o":"b_2319"},{"a":8969,"l":"b_2309","t":"code","b":[185,143,17],"m":"lda","oa":4495,"o":"move_block_answer,y","x":[8963]},{"a":8972,"t":"code","b":[240,11],"m":"beq","oa":8985,"o":"b_2319"},{"a":8974,"t":"code","b":[213,97],"m":"cmp","oa":97,"o":"fighter_move,x"},{"a":8976,"t":"code","b":[240,71],"m":"beq","oa":9049,"o":"b_2359"},{"a":8978,"l":"b_2312","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[9008,9012,9047]},{"a":8980,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":8982,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":8984,"t":"code","b":[96],"m":"rts"},{"a":8985,"l":"b_2319","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[8967,8972]},{"a":8987,"t":"code","b":[201,18],"m":"cmp","o":"#$12"},{"a":8989,"t":"code","b":[208,3],"m":"bne","oa":8994,"o":"b_2322"},{"a":8991,"t":"code","b":[76,189,35],"m":"jmp","oa":9149,"o":"ai_no_threat"},{"a":8994,"l":"b_2322","t":"code","b":[201,1],"m":"cmp","o":"#$01","x":[8989]},{"a":8996,"t":"code","b":[240,56],"m":"beq","oa":9054,"o":"ai_threat_in_range"},{"a":8998,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":9000,"t":"code","b":[240,52],"m":"beq","oa":9054,"o":"ai_threat_in_range"},{"a":9002,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":9004,"t":"code","b":[240,48],"m":"beq","oa":9054,"o":"ai_threat_in_range"},{"a":9006,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":9008,"t":"code","b":[208,224],"m":"bne","oa":8978,"o":"b_2312"},{"a":9010,"t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x"},{"a":9012,"t":"code","b":[208,220],"m":"bne","oa":8978,"o":"b_2312"},{"a":9014,"t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent"},{"a":9016,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":9019,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9021,"t":"code","b":[240,4],"m":"beq","oa":9027,"o":"b_2343"},{"a":9023,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":9025,"t":"code","b":[208,22],"m":"bne","oa":9049,"o":"b_2359"},{"a":9027,"l":"b_2343","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[9021]},{"a":9029,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9031,"t":"code","b":[240,16],"m":"beq","oa":9049,"o":"b_2359"},{"a":9033,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":9035,"t":"code","b":[240,12],"m":"beq","oa":9049,"o":"b_2359"},{"a":9037,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":9039,"t":"code","b":[240,8],"m":"beq","oa":9049,"o":"b_2359"},{"a":9041,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9043,"t":"code","b":[240,4],"m":"beq","oa":9049,"o":"b_2359"},{"a":9045,"t":"code","b":[201,11],"m":"cmp","o":"#$0B"},{"a":9047,"t":"code","b":[208,185],"m":"bne","oa":8978,"o":"b_2312"},{"a":9049,"l":"b_2359","t":"code","b":[181,144],"m":"lda","oa":144,"o":"ai_chosen_move,x","x":[8976,9025,9031,9035,9039,9043]},{"a":9051,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9053,"t":"code","b":[96],"m":"rts"},{"a":9054,"l":"ai_threat_in_range","c":"Opponent attacking while this fighter stands or walks (move 1-3). $2D00 decides whether the attack is in range; if not, ai_no_threat. Then a reaction delay: $AA,X counts down a start value of random AND $AC (per level, none from level 4). Then random AND $9C: bit 7 counter-attacks (ai_choose_attack), bits 4-6 block with $118F[opponent move], low nibble 0 picks move 9 or $0B at random, otherwise starts the plan $2788[opponent move] in $9D,X (or blocks when that is 0).","t":"code","b":[32,0,45],"m":"jsr","oa":11520,"o":"blow_in_reach","x":[8996,9000,9004]},{"a":9057,"t":"code","b":[240,90],"m":"beq","oa":9149,"o":"ai_no_threat"},{"a":9059,"t":"code","b":[181,170],"m":"lda","oa":170,"o":"ai_react_timer,x"},{"a":9061,"t":"code","b":[240,22],"m":"beq","oa":9085,"o":"b_237D"},{"a":9063,"t":"code","b":[16,12],"m":"bpl","oa":9077,"o":"b_2375"},{"a":9065,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9068,"t":"code","b":[37,172],"m":"and","oa":172,"o":"ai_react_mask"},{"a":9070,"t":"code","b":[240,13],"m":"beq","oa":9085,"o":"b_237D"},{"a":9072,"t":"code","b":[149,170],"m":"sta","oa":170,"o":"ai_react_timer,x"},{"a":9074,"l":"b_2372","t":"code","b":[76,189,35],"m":"jmp","oa":9149,"o":"ai_no_threat","x":[9079]},{"a":9077,"l":"b_2375","t":"code","b":[214,170],"m":"dec","oa":170,"o":"ai_react_timer,x","x":[9063]},{"a":9079,"t":"code","b":[208,249],"m":"bne","oa":9074,"o":"b_2372"},{"a":9081,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9083,"t":"code","b":[149,170],"m":"sta","oa":170,"o":"ai_react_timer,x"},{"a":9085,"l":"b_237D","t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next","x":[9061,9070]},{"a":9088,"t":"code","b":[37,156],"m":"and","oa":156,"o":"ai_defence_mask"},{"a":9090,"t":"code","b":[48,40],"m":"bmi","oa":9132,"o":"b_23AC"},{"a":9092,"t":"code","b":[168],"m":"tay"},{"a":9093,"t":"code","b":[41,112],"m":"and","o":"#$70"},{"a":9095,"t":"code","b":[208,38],"m":"bne","oa":9135,"o":"b_23AF"},{"a":9097,"t":"code","b":[152],"m":"tya"},{"a":9098,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":9100,"t":"code","b":[208,16],"m":"bne","oa":9118,"o":"b_239E"},{"a":9102,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9105,"t":"code","b":[48,4],"m":"bmi","oa":9111,"o":"b_2397"},{"a":9107,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":9109,"t":"code","b":[208,2],"m":"bne","oa":9113,"o":"b_2399"},{"a":9111,"l":"b_2397","t":"code","b":[169,9],"m":"lda","o":"#$09","x":[9105]},{"a":9113,"l":"b_2399","t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x","x":[9109]},{"a":9115,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9117,"t":"code","b":[96],"m":"rts"},{"a":9118,"l":"b_239E","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9100]},{"a":9120,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":9123,"t":"code","b":[168],"m":"tay"},{"a":9124,"t":"code","b":[185,136,39],"m":"lda","oa":10120,"o":"ai_plan_by_attack,y"},{"a":9127,"t":"code","b":[240,6],"m":"beq","oa":9135,"o":"b_23AF"},{"a":9129,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9131,"t":"code","b":[96],"m":"rts"},{"a":9132,"l":"b_23AC","t":"code","b":[76,177,36],"m":"jmp","oa":9393,"o":"ai_choose_attack","x":[9090]},{"a":9135,"l":"b_23AF","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9095,9127]},{"a":9137,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":9140,"t":"code","b":[168],"m":"tay"},{"a":9141,"t":"code","b":[185,143,17],"m":"lda","oa":4495,"o":"move_block_answer,y"},{"a":9144,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9146,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9148,"t":"code","b":[96],"m":"rts"},{"a":9149,"l":"ai_no_threat","c":"No attack to answer. While $4B,X is set the held move stays. While $74,X is set: a turn-round (move $12) with $9A,X set ends by flipping facing $53,X and standing; other moves are held for a random time ($8E,X = random AND $8D + 5) then dropped to stand. Otherwise, from moves 1-3, measures the distance (ai_measure); any other move is held.","t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x","x":[8947,8991,9057,9074]},{"a":9151,"t":"code","b":[208,84],"m":"bne","oa":9237,"o":"b_2415"},{"a":9153,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":9155,"t":"code","b":[240,66],"m":"beq","oa":9223,"o":"b_2407"},{"a":9157,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":9159,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":9161,"t":"code","b":[240,74],"m":"beq","oa":9237,"o":"b_2415"},{"a":9163,"t":"code","b":[201,18],"m":"cmp","o":"#$12"},{"a":9165,"t":"code","b":[208,25],"m":"bne","oa":9192,"o":"b_23E8"},{"a":9167,"t":"code","b":[181,154],"m":"lda","oa":154,"o":"ai_turning,x"},{"a":9169,"t":"code","b":[240,66],"m":"beq","oa":9237,"o":"b_2415"},{"a":9171,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9173,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9175,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9177,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":9179,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":9181,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":9183,"t":"code","b":[149,83],"m":"sta","oa":83,"o":"fighter_facing,x"},{"a":9185,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9187,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":9189,"t":"code","b":[149,154],"m":"sta","oa":154,"o":"ai_turning,x"},{"a":9191,"t":"code","b":[96],"m":"rts"},{"a":9192,"l":"b_23E8","t":"code","b":[181,142],"m":"lda","oa":142,"o":"ai_hold_timer,x","x":[9165]},{"a":9194,"t":"code","b":[16,12],"m":"bpl","oa":9208,"o":"b_23F8"},{"a":9196,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9199,"t":"code","b":[37,141],"m":"and","oa":141,"o":"ai_hold_mask"},{"a":9201,"t":"code","b":[105,5],"m":"adc","o":"#$05"},{"a":9203,"t":"code","b":[149,142],"m":"sta","oa":142,"o":"ai_hold_timer,x"},{"a":9205,"t":"code","b":[76,21,36],"m":"jmp","oa":9237,"o":"b_2415"},{"a":9208,"l":"b_23F8","t":"code","b":[214,142],"m":"dec","oa":142,"o":"ai_hold_timer,x","x":[9194]},{"a":9210,"t":"code","b":[208,25],"m":"bne","oa":9237,"o":"b_2415"},{"a":9212,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9214,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9216,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9218,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9220,"t":"code","b":[149,142],"m":"sta","oa":142,"o":"ai_hold_timer,x"},{"a":9222,"t":"code","b":[96],"m":"rts"},{"a":9223,"l":"b_2407","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[9155]},{"a":9225,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":9227,"t":"code","b":[240,13],"m":"beq","oa":9242,"o":"ai_measure"},{"a":9229,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":9231,"t":"code","b":[240,9],"m":"beq","oa":9242,"o":"ai_measure"},{"a":9233,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":9235,"t":"code","b":[240,5],"m":"beq","oa":9242,"o":"ai_measure"},{"a":9237,"l":"b_2415","t":"code","b":[181,144],"m":"lda","oa":144,"o":"ai_chosen_move,x","x":[9151,9161,9169,9205,9210,9286,9502]},{"a":9239,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9241,"t":"code","b":[96],"m":"rts"},{"a":9242,"l":"ai_measure","c":"Distance to the opponent into $73, signed along this fighter's facing. Facing each other: far ahead ($15-$7F) approach, behind ($80-$D4) turn round, close ($D5-$14) ai_close_range. Same facing: close is $DF-$1E, $1F-$7F (opponent behind) turns, $80-$DE approaches.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9227,9231,9235]},{"a":9244,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":9246,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":9249,"t":"code","b":[240,84],"m":"beq","oa":9335,"o":"b_2477"},{"a":9251,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":9253,"t":"code","b":[208,9],"m":"bne","oa":9264,"o":"b_2430"},{"a":9255,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":9258,"t":"code","b":[56],"m":"sec"},{"a":9259,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":9261,"t":"code","b":[76,54,36],"m":"jmp","oa":9270,"o":"j_2436"},{"a":9264,"l":"b_2430","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[9253]},{"a":9266,"t":"code","b":[56],"m":"sec"},{"a":9267,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":9270,"l":"j_2436","t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance","x":[9261]},{"a":9272,"t":"code","b":[201,213],"m":"cmp","o":"#$D5"},{"a":9274,"t":"code","b":[176,95],"m":"bcs","oa":9371,"o":"ai_close_range"},{"a":9276,"t":"code","b":[201,21],"m":"cmp","o":"#$15"},{"a":9278,"t":"code","b":[144,91],"m":"bcc","oa":9371,"o":"ai_close_range"},{"a":9280,"t":"code","b":[201,128],"m":"cmp","o":"#$80"},{"a":9282,"t":"code","b":[176,40],"m":"bcs","oa":9324,"o":"ai_turn_round"},{"a":9284,"l":"ai_approach","c":"Opponent out of reach ahead: when the pause counter $A4,X runs out, walk forward (move 2) for random AND $A8,X calls; while already walking, stop (move 1) for random AND $A6,X calls when that is non-zero. Both masks come from the opponent level.","t":"code","b":[214,164],"m":"dec","oa":164,"o":"ai_walk_timer,x","x":[9366]},{"a":9286,"t":"code","b":[208,205],"m":"bne","oa":9237,"o":"b_2415"},{"a":9288,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":9290,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":9292,"t":"code","b":[208,16],"m":"bne","oa":9310,"o":"b_245E"},{"a":9294,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9297,"t":"code","b":[53,166],"m":"and","oa":166,"o":"ai_pause_mask,x"},{"a":9299,"t":"code","b":[240,9],"m":"beq","oa":9310,"o":"b_245E"},{"a":9301,"t":"code","b":[149,164],"m":"sta","oa":164,"o":"ai_walk_timer,x"},{"a":9303,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9305,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9307,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9309,"t":"code","b":[96],"m":"rts"},{"a":9310,"l":"b_245E","t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next","x":[9292,9299]},{"a":9313,"t":"code","b":[53,168],"m":"and","oa":168,"o":"ai_walk_mask,x"},{"a":9315,"t":"code","b":[149,164],"m":"sta","oa":164,"o":"ai_walk_timer,x"},{"a":9317,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":9319,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9321,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9323,"t":"code","b":[96],"m":"rts"},{"a":9324,"l":"ai_turn_round","c":"Requests move $12 and sets $9A,X so that ai_no_threat flips the facing when it ends. Used when the opponent is behind, and as one outcome of ai_back_attack.","t":"code","b":[169,18],"m":"lda","o":"#$12","x":[9282,9368,9599]},{"a":9326,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9328,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9330,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9332,"t":"code","b":[149,154],"m":"sta","oa":154,"o":"ai_turning,x"},{"a":9334,"t":"code","b":[96],"m":"rts"},{"a":9335,"l":"b_2477","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x","x":[9249]},{"a":9337,"t":"code","b":[240,9],"m":"beq","oa":9348,"o":"b_2484"},{"a":9339,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":9342,"t":"code","b":[56],"m":"sec"},{"a":9343,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":9345,"t":"code","b":[76,138,36],"m":"jmp","oa":9354,"o":"j_248A"},{"a":9348,"l":"b_2484","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[9337]},{"a":9350,"t":"code","b":[56],"m":"sec"},{"a":9351,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":9354,"l":"j_248A","t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance","x":[9345]},{"a":9356,"t":"code","b":[201,223],"m":"cmp","o":"#$DF"},{"a":9358,"t":"code","b":[176,11],"m":"bcs","oa":9371,"o":"ai_close_range"},{"a":9360,"t":"code","b":[201,31],"m":"cmp","o":"#$1F"},{"a":9362,"t":"code","b":[144,7],"m":"bcc","oa":9371,"o":"ai_close_range"},{"a":9364,"t":"code","b":[201,128],"m":"cmp","o":"#$80"},{"a":9366,"t":"code","b":[176,172],"m":"bcs","oa":9284,"o":"ai_approach"},{"a":9368,"t":"code","b":[76,108,36],"m":"jmp","oa":9324,"o":"ai_turn_round"},{"a":9371,"l":"ai_close_range","c":"Opponent within reach: hesitate first. $95,X negative loads random AND $97 (per level) and stands; positive counts down while standing; at zero it is reset to $80 and the fighter attacks (ai_choose_attack).","t":"code","b":[181,149],"m":"lda","oa":149,"o":"ai_close_timer,x","x":[9274,9278,9358,9362]},{"a":9373,"t":"code","b":[16,10],"m":"bpl","oa":9385,"o":"b_24A9"},{"a":9375,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9378,"t":"code","b":[37,151],"m":"and","oa":151,"o":"ai_close_mask"},{"a":9380,"t":"code","b":[149,149],"m":"sta","oa":149,"o":"ai_close_timer,x"},{"a":9382,"t":"code","b":[76,23,37],"m":"jmp","oa":9495,"o":"j_2517"},{"a":9385,"l":"b_24A9","t":"code","b":[214,149],"m":"dec","oa":149,"o":"ai_close_timer,x","x":[9373]},{"a":9387,"t":"code","b":[208,106],"m":"bne","oa":9495,"o":"j_2517"},{"a":9389,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9391,"t":"code","b":[149,149],"m":"sta","oa":149,"o":"ai_close_timer,x"},{"a":9393,"l":"ai_choose_attack","c":"Picks an attack. Same facing -> ai_attack_behind. Opponent in move $13 -> $27A1[random AND 3]; in move $14 -> $27A5[random AND 3] (7 there starts plan 5). Otherwise $26D5[$73+$33 + random AND $94], adjusted: $0E becomes walk forward (2) from level 7; $0A is skipped below level 2; 7 starts plan 5; $0F/$10 go to ai_back_attack; others through ai_lower_if_opponent_low.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9132]},{"a":9395,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":9397,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":9400,"t":"code","b":[208,3],"m":"bne","oa":9405,"o":"b_24BD"},{"a":9402,"t":"code","b":[76,68,37],"m":"jmp","oa":9540,"o":"ai_attack_behind"},{"a":9405,"l":"b_24BD","t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y","x":[9400]},{"a":9408,"t":"code","b":[201,19],"m":"cmp","o":"#$13"},{"a":9410,"t":"code","b":[240,22],"m":"beq","oa":9434,"o":"b_24DA"},{"a":9412,"t":"code","b":[201,20],"m":"cmp","o":"#$14"},{"a":9414,"t":"code","b":[208,32],"m":"bne","oa":9448,"o":"b_24E8"},{"a":9416,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9419,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":9421,"t":"code","b":[168],"m":"tay"},{"a":9422,"t":"code","b":[185,165,39],"m":"lda","oa":10149,"o":"ai_beat_block_14,y"},{"a":9425,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9427,"t":"code","b":[240,100],"m":"beq","oa":9529,"o":"ai_crouch_then_plan5"},{"a":9429,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9431,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9433,"t":"code","b":[96],"m":"rts"},{"a":9434,"l":"b_24DA","t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next","x":[9410]},{"a":9437,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":9439,"t":"code","b":[168],"m":"tay"},{"a":9440,"t":"code","b":[185,161,39],"m":"lda","oa":10145,"o":"ai_beat_block_13,y"},{"a":9443,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9445,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9447,"t":"code","b":[96],"m":"rts"},{"a":9448,"l":"b_24E8","t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance","x":[9414]},{"a":9450,"t":"code","b":[24],"m":"clc"},{"a":9451,"t":"code","b":[105,51],"m":"adc","o":"#$33"},{"a":9453,"t":"code","b":[133,147],"m":"sta","oa":147,"o":"ai_scratch"},{"a":9455,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9458,"t":"code","b":[37,148],"m":"and","oa":148,"o":"ai_attack_spread"},{"a":9460,"t":"code","b":[24],"m":"clc"},{"a":9461,"t":"code","b":[101,147],"m":"adc","oa":147,"o":"ai_scratch"},{"a":9463,"t":"code","b":[168],"m":"tay"},{"a":9464,"t":"code","b":[185,213,38],"m":"lda","oa":9941,"o":"ai_attack_facing,y"},{"a":9467,"t":"code","b":[201,14],"m":"cmp","o":"#$0E"},{"a":9469,"t":"code","b":[240,34],"m":"beq","oa":9505,"o":"b_2521"},{"a":9471,"t":"code","b":[32,152,38],"m":"jsr","oa":9880,"o":"ai_lower_if_opponent_low"},{"a":9474,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9476,"t":"code","b":[240,37],"m":"beq","oa":9515,"o":"b_252B"},{"a":9478,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9480,"t":"code","b":[240,47],"m":"beq","oa":9529,"o":"ai_crouch_then_plan5"},{"a":9482,"t":"code","b":[201,15],"m":"cmp","o":"#$0F"},{"a":9484,"t":"code","b":[240,89],"m":"beq","oa":9575,"o":"ai_back_attack"},{"a":9486,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":9488,"t":"code","b":[240,85],"m":"beq","oa":9575,"o":"ai_back_attack"},{"a":9490,"l":"b_2512","t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x","x":[9509,9513]},{"a":9492,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9494,"t":"code","b":[96],"m":"rts"},{"a":9495,"l":"j_2517","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[9382,9387]},{"a":9497,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9499,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9501,"t":"code","b":[96],"m":"rts"},{"a":9502,"l":"ai_unreachable_jmp","c":"JMP $2415, unreachable: the RTS at $251D precedes it and nothing branches or jumps here (opcodes.py --refs, cross-references). Left over from an edit.","t":"code","b":[76,21,36],"m":"jmp","oa":9237,"o":"b_2415"},{"a":9505,"l":"b_2521","t":"code","b":[180,179],"m":"ldy","oa":179,"o":"fighter_level,x","x":[9469]},{"a":9507,"t":"code","b":[192,7],"m":"cpy","o":"#$07"},{"a":9509,"t":"code","b":[144,235],"m":"bcc","oa":9490,"o":"b_2512"},{"a":9511,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":9513,"t":"code","b":[208,231],"m":"bne","oa":9490,"o":"b_2512"},{"a":9515,"l":"b_252B","t":"code","b":[181,179],"m":"lda","oa":179,"o":"fighter_level,x","x":[9476]},{"a":9517,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":9519,"t":"code","b":[176,1],"m":"bcs","oa":9522,"o":"b_2532"},{"a":9521,"t":"code","b":[96],"m":"rts"},{"a":9522,"l":"b_2532","t":"code","b":[169,10],"m":"lda","o":"#$0A","x":[9519]},{"a":9524,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9526,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9528,"t":"code","b":[96],"m":"rts"},{"a":9529,"l":"ai_crouch_then_plan5","c":"Requests move 4 and sets plan 5 in $9D,X, so that the next calls go through ai_plan_crouch_spring.","t":"code","b":[169,5],"m":"lda","o":"#$05","x":[9427,9480]},{"a":9531,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9533,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":9535,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9537,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9539,"t":"code","b":[96],"m":"rts"},{"a":9540,"l":"ai_attack_behind","c":"Attack choice when both fighters face the same way: move $2725[$73+$29 + random AND $94], through ai_lower_if_opponent_low; $0F and $10 go to ai_back_attack.","t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance","x":[9402]},{"a":9542,"t":"code","b":[24],"m":"clc"},{"a":9543,"t":"code","b":[105,41],"m":"adc","o":"#$29"},{"a":9545,"t":"code","b":[133,147],"m":"sta","oa":147,"o":"ai_scratch"},{"a":9547,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9550,"t":"code","b":[37,148],"m":"and","oa":148,"o":"ai_attack_spread"},{"a":9552,"t":"code","b":[24],"m":"clc"},{"a":9553,"t":"code","b":[101,147],"m":"adc","oa":147,"o":"ai_scratch"},{"a":9555,"t":"code","b":[168],"m":"tay"},{"a":9556,"t":"code","b":[185,37,39],"m":"lda","oa":10021,"o":"ai_attack_behind_table,y"},{"a":9559,"t":"code","b":[32,152,38],"m":"jsr","oa":9880,"o":"ai_lower_if_opponent_low"},{"a":9562,"t":"code","b":[201,15],"m":"cmp","o":"#$0F"},{"a":9564,"t":"code","b":[240,9],"m":"beq","oa":9575,"o":"ai_back_attack"},{"a":9566,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":9568,"t":"code","b":[240,5],"m":"beq","oa":9575,"o":"ai_back_attack"},{"a":9570,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9572,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9574,"t":"code","b":[96],"m":"rts"},{"a":9575,"l":"ai_back_attack","c":"For moves $0F/$10: random AND $A3 (per level). Bit 7 turns round instead; $40-$7F walks back (move 3); $20-$3F uses move 8; below $20 keeps the move.","t":"code","b":[168],"m":"tay","x":[9484,9488,9564,9568]},{"a":9576,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9579,"t":"code","b":[37,163],"m":"and","oa":163,"o":"ai_back_mask"},{"a":9581,"t":"code","b":[48,16],"m":"bmi","oa":9599,"o":"b_257F"},{"a":9583,"t":"code","b":[201,64],"m":"cmp","o":"#$40"},{"a":9585,"t":"code","b":[176,15],"m":"bcs","oa":9602,"o":"b_2582"},{"a":9587,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":9589,"t":"code","b":[144,2],"m":"bcc","oa":9593,"o":"b_2579"},{"a":9591,"t":"code","b":[160,8],"m":"ldy","o":"#$08"},{"a":9593,"l":"b_2579","t":"code","b":[152],"m":"tya","x":[9589]},{"a":9594,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9596,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9598,"t":"code","b":[96],"m":"rts"},{"a":9599,"l":"b_257F","t":"code","b":[76,108,36],"m":"jmp","oa":9324,"o":"ai_turn_round","x":[9581]},{"a":9602,"l":"b_2582","t":"code","b":[169,3],"m":"lda","o":"#$03","x":[9585]},{"a":9604,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9606,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9608,"t":"code","b":[96],"m":"rts"},{"a":9609,"l":"random_next","c":"Random number: $98 shifted left, XOR $1D when a bit falls out (polynomial $11D, all 255 non-zero values in turn; a 0 seed would stay 0). Returns the new $98 in A with N and Z set from it. Seeded from $99 at $1BD2 and $1CD8.","t":"code","b":[165,152],"m":"lda","oa":152,"o":"random_state","x":[7269,7386,7395,9065,9085,9102,9196,9294,9310,9375,9416,9434,9455,9547,9576,9790,9805,9918]},{"a":9611,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9612,"t":"code","b":[144,2],"m":"bcc","oa":9616,"o":"b_2590"},{"a":9614,"t":"code","b":[73,29],"m":"eor","o":"#$1D"},{"a":9616,"l":"b_2590","t":"code","b":[133,152],"m":"sta","oa":152,"o":"random_state","x":[9612]},{"a":9618,"t":"code","b":[96],"m":"rts"},{"a":9619,"l":"ai_level_setup","c":"Loads the computer's parameters for fighter X from its level $B3,X (0-11): per fighter $A8,X ($27CD) $A6,X ($27D8) $AA,X=$80; shared, so the last call (X=1) wins: $8D/$A1/$A2 ($27A9), $94 ($27B5), $A3 ($27E4), $97 ($27C1), $9C ($27F0), $AC ($27FC). Resets both fighters' $8E,$90,$95,$9A,$9D,$A4. Called from $1A66 (X=0) and $1A6B (X=1).","t":"code","b":[180,179],"m":"ldy","oa":179,"o":"fighter_level,x","x":[6758,6763]},{"a":9621,"t":"code","b":[185,169,39],"m":"lda","oa":10153,"o":"ai_lvl_hold_mask,y"},{"a":9624,"t":"code","b":[133,141],"m":"sta","oa":141,"o":"ai_hold_mask"},{"a":9626,"t":"code","b":[133,161],"m":"sta","oa":161,"o":"ai_forced_wait"},{"a":9628,"t":"code","b":[133,162],"m":"sta","oa":162,"o":"ai_forced_wait_f1"},{"a":9630,"t":"code","b":[185,181,39],"m":"lda","oa":10165,"o":"ai_lvl_attack_spread,y"},{"a":9633,"t":"code","b":[133,148],"m":"sta","oa":148,"o":"ai_attack_spread"},{"a":9635,"t":"code","b":[185,228,39],"m":"lda","oa":10212,"o":"ai_lvl_back_choice,y"},{"a":9638,"t":"code","b":[133,163],"m":"sta","oa":163,"o":"ai_back_mask"},{"a":9640,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9642,"t":"code","b":[133,142],"m":"sta","oa":142,"o":"ai_hold_timer"},{"a":9644,"t":"code","b":[133,143],"m":"sta","oa":143,"o":"ai_hold_timer_f1"},{"a":9646,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9648,"t":"code","b":[133,144],"m":"sta","oa":144,"o":"ai_chosen_move"},{"a":9650,"t":"code","b":[133,145],"m":"sta","oa":145,"o":"ai_chosen_move_f1"},{"a":9652,"t":"code","b":[185,193,39],"m":"lda","oa":10177,"o":"ai_lvl_close_wait,y"},{"a":9655,"t":"code","b":[133,151],"m":"sta","oa":151,"o":"ai_close_mask"},{"a":9657,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9659,"t":"code","b":[133,149],"m":"sta","oa":149,"o":"ai_close_timer"},{"a":9661,"t":"code","b":[133,150],"m":"sta","oa":150,"o":"ai_close_timer_f1"},{"a":9663,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9665,"t":"code","b":[133,154],"m":"sta","oa":154,"o":"ai_turning"},{"a":9667,"t":"code","b":[133,155],"m":"sta","oa":155,"o":"ai_turning_f1"},{"a":9669,"t":"code","b":[133,157],"m":"sta","oa":157,"o":"ai_plan"},{"a":9671,"t":"code","b":[133,158],"m":"sta","oa":158,"o":"ai_plan_f1"},{"a":9673,"t":"code","b":[185,240,39],"m":"lda","oa":10224,"o":"ai_lvl_defence,y"},{"a":9676,"t":"code","b":[133,156],"m":"sta","oa":156,"o":"ai_defence_mask"},{"a":9678,"t":"code","b":[185,205,39],"m":"lda","oa":10189,"o":"ai_lvl_walk_time,y"},{"a":9681,"t":"code","b":[149,168],"m":"sta","oa":168,"o":"ai_walk_mask,x"},{"a":9683,"t":"code","b":[185,216,39],"m":"lda","oa":10200,"o":"ai_lvl_pause_time,y"},{"a":9686,"t":"code","b":[149,166],"m":"sta","oa":166,"o":"ai_pause_mask,x"},{"a":9688,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9690,"t":"code","b":[133,164],"m":"sta","oa":164,"o":"ai_walk_timer"},{"a":9692,"t":"code","b":[133,165],"m":"sta","oa":165,"o":"ai_walk_timer_f1"},{"a":9694,"t":"code","b":[169,128],"m":"lda","o":"#$80"},{"a":9696,"t":"code","b":[149,170],"m":"sta","oa":170,"o":"ai_react_timer,x"},{"a":9698,"t":"code","b":[185,252,39],"m":"lda","oa":10236,"o":"ai_lvl_react_delay,y"},{"a":9701,"t":"code","b":[133,172],"m":"sta","oa":172,"o":"ai_react_mask"},{"a":9703,"t":"code","b":[96],"m":"rts"},{"a":9704,"l":"ai_plan_crouch_wait","c":"Plan 1: crouch (move 4) until an opening, then strike with move $0A and end the plan. Below level 7 the opening is the opponent standing (move 1); from level 7 it is the opponent's $51 being $19.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9938]},{"a":9706,"t":"code","b":[181,179],"m":"lda","oa":179,"o":"fighter_level,x"},{"a":9708,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9710,"t":"code","b":[144,25],"m":"bcc","oa":9737,"o":"b_2609"},{"a":9712,"t":"code","b":[185,81,0],"m":"lda","oa":81,"o":"fighter_frame,y"},{"a":9715,"t":"code","b":[201,25],"m":"cmp","o":"#$19"},{"a":9717,"t":"code","b":[240,7],"m":"beq","oa":9726,"o":"b_25FE"},{"a":9719,"l":"b_25F7","t":"code","b":[169,4],"m":"lda","o":"#$04","x":[9742]},{"a":9721,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9723,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9725,"t":"code","b":[96],"m":"rts"},{"a":9726,"l":"b_25FE","t":"code","b":[169,10],"m":"lda","o":"#$0A","x":[9717,9744]},{"a":9728,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9730,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9732,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9734,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9736,"t":"code","b":[96],"m":"rts"},{"a":9737,"l":"b_2609","t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y","x":[9710]},{"a":9740,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":9742,"t":"code","b":[208,231],"m":"bne","oa":9719,"o":"b_25F7"},{"a":9744,"t":"code","b":[240,236],"m":"beq","oa":9726,"o":"b_25FE"},{"a":9746,"l":"ai_plan_move_0e","c":"Plan 3: requests move $0E once and ends the plan ($9D,X=0).","t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":9748,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9750,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9752,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9754,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9756,"t":"code","b":[96],"m":"rts"},{"a":9757,"l":"ai_plan_move_09","c":"Plan 4: requests move 9 once and ends the plan ($9D,X=0).","t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":9759,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9761,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9763,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9765,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9767,"t":"code","b":[96],"m":"rts"},{"a":9768,"l":"ai_plan_crouch_spring","c":"Plan 5: holds move 4 (crouch) until $74,X is set, then requests move 7 and ends the plan.","t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x","x":[9802]},{"a":9770,"t":"code","b":[240,11],"m":"beq","oa":9783,"o":"b_2637"},{"a":9772,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":9774,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9776,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9778,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9780,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9782,"t":"code","b":[96],"m":"rts"},{"a":9783,"l":"b_2637","t":"code","b":[169,4],"m":"lda","o":"#$04","x":[9770]},{"a":9785,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9787,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9789,"t":"code","b":[96],"m":"rts"},{"a":9790,"l":"ai_plan_mixed","c":"Plan 8: at random either goes to plan 6, or sets $9D=5 and runs plan 5. The store is $9D without X, fighter 0's plan, whichever fighter is thinking.","t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9793,"t":"code","b":[48,3],"m":"bmi","oa":9798,"o":"b_2646"},{"a":9795,"t":"code","b":[76,77,38],"m":"jmp","oa":9805,"o":"ai_plan_move_06_or_18"},{"a":9798,"l":"b_2646","t":"code","b":[169,5],"m":"lda","o":"#$05","x":[9793]},{"a":9800,"t":"code","b":[133,157],"m":"sta","oa":157,"o":"ai_plan"},{"a":9802,"t":"code","b":[76,40,38],"m":"jmp","oa":9768,"o":"ai_plan_crouch_spring"},{"a":9805,"l":"ai_plan_move_06_or_18","c":"Plan 6: requests move 6 or move $18 at random and ends the plan.","t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next","x":[9795]},{"a":9808,"t":"code","b":[48,4],"m":"bmi","oa":9814,"o":"b_2656"},{"a":9810,"t":"code","b":[169,6],"m":"lda","o":"#$06"},{"a":9812,"t":"code","b":[208,2],"m":"bne","oa":9816,"o":"b_2658"},{"a":9814,"l":"b_2656","t":"code","b":[169,24],"m":"lda","o":"#$18","x":[9808]},{"a":9816,"l":"b_2658","t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x","x":[9812]},{"a":9818,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9820,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9822,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9824,"t":"code","b":[96],"m":"rts"},{"a":9825,"l":"ai_plan_0a_or_10","c":"Plan 7: requests $0A when $53,X equals $0053+Y, else $10, and ends the plan. Y is 14 here (the plan number doubled at $2689), so it compares facing with $61, fighter 0's move: probably meant LDY $69 and the opponent's facing.","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":9827,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":9830,"t":"code","b":[240,4],"m":"beq","oa":9836,"o":"b_266C"},{"a":9832,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":9834,"t":"code","b":[208,2],"m":"bne","oa":9838,"o":"b_266E"},{"a":9836,"l":"b_266C","t":"code","b":[169,10],"m":"lda","o":"#$0A","x":[9830]},{"a":9838,"l":"b_266E","t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x","x":[9834]},{"a":9840,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9842,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9844,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9846,"t":"code","b":[96],"m":"rts"},{"a":9847,"l":"ai_plan_move_0a","c":"Plan 2: requests move $0A until the fighter is in it, then ends the plan.","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":9849,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9851,"t":"code","b":[240,7],"m":"beq","oa":9860,"o":"b_2684"},{"a":9853,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":9855,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9857,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9859,"t":"code","b":[96],"m":"rts"},{"a":9860,"l":"b_2684","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[9851]},{"a":9862,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9864,"t":"code","b":[96],"m":"rts"},{"a":9865,"l":"ai_plan_dispatch","c":"Runs the plan in progress: A = $9D,X (1-9) indexes the word table ai_plan_handlers, through $9F/$A0 and JMP ($9F). Y is left as A*2.","t":"code","b":[10],"m":"asl","o":"a","x":[8937]},{"a":9866,"t":"code","b":[168],"m":"tay"},{"a":9867,"t":"code","b":[185,116,39],"m":"lda","oa":10100,"o":"ai_plan_handlers,y"},{"a":9870,"t":"code","b":[133,159],"m":"sta","oa":159,"o":"ai_plan_vector"},{"a":9872,"t":"code","b":[185,117,39],"m":"lda","oa":10101,"o":"f_2775,y"},{"a":9875,"t":"code","b":[133,160],"m":"sta","oa":160,"o":"ai_plan_vector_hi"},{"a":9877,"t":"code","b":[108,159,0],"m":"jmp","oa":159,"o":"(ai_plan_vector)"},{"a":9880,"l":"ai_lower_if_opponent_low","c":"A = a chosen move. When the opponent's move is $0A, $10, 4 or 7 (the low ones), returns $12D0[A] instead (the low counterpart of an attack); otherwise returns A. Uses $CE as scratch.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[9471,9559]},{"a":9882,"t":"code","b":[133,206],"m":"sta","oa":206,"o":"scratch_ce"},{"a":9884,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":9887,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9889,"t":"code","b":[240,15],"m":"beq","oa":9906,"o":"b_26B2"},{"a":9891,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":9893,"t":"code","b":[240,11],"m":"beq","oa":9906,"o":"b_26B2"},{"a":9895,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":9897,"t":"code","b":[240,7],"m":"beq","oa":9906,"o":"b_26B2"},{"a":9899,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9901,"t":"code","b":[240,3],"m":"beq","oa":9906,"o":"b_26B2"},{"a":9903,"t":"code","b":[165,206],"m":"lda","oa":206,"o":"scratch_ce"},{"a":9905,"t":"code","b":[96],"m":"rts"},{"a":9906,"l":"b_26B2","t":"code","b":[164,206],"m":"ldy","oa":206,"o":"scratch_ce","x":[9889,9893,9897,9901]},{"a":9908,"t":"code","b":[185,208,18],"m":"lda","oa":4816,"o":"ai_low_answer,y"},{"a":9911,"t":"code","b":[96],"m":"rts"},{"a":9912,"l":"ai_plan_level_choice","c":"Plan 9: from level 7, half the time requests move $0D and ends the plan; otherwise switches to plan 1 and runs it.","t":"code","b":[181,179],"m":"lda","oa":179,"o":"fighter_level,x"},{"a":9914,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":9916,"t":"code","b":[144,16],"m":"bcc","oa":9934,"o":"b_26CE"},{"a":9918,"t":"code","b":[32,137,37],"m":"jsr","oa":9609,"o":"random_next"},{"a":9921,"t":"code","b":[48,11],"m":"bmi","oa":9934,"o":"b_26CE"},{"a":9923,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9925,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9927,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":9929,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":9931,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":9933,"t":"code","b":[96],"m":"rts"},{"a":9934,"l":"b_26CE","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[9916,9921]},{"a":9936,"t":"code","b":[149,157],"m":"sta","oa":157,"o":"ai_plan,x"},{"a":9938,"t":"code","b":[76,232,37],"m":"jmp","oa":9704,"o":"ai_plan_crouch_wait"},{"a":9941,"l":"ai_attack_facing","c":"80 moves: the attack against an opponent with the opposite facing, indexed by $73+$33 plus random AND $94 ($24F8); $73 is $D5-$14 there, so indexes $08-$4E (the first 8 bytes are never read). Opponent behind, back to back: mostly $0F/$10 (fire with up or down and back on the stick); just behind: walks; just ahead: $18, 6, 7, $11, $0D; a little further: $0E, $0C, $0A, $0B; beyond: stand or walk.","t":"byte","b":[1,1,1,3,3,1,1,2],"x":[9464]},{"a":9949,"t":"byte","b":[16,16,3,16,16,16,2,16]},{"a":9957,"t":"byte","b":[16,16,9,16,8,16,15,15]},{"a":9965,"t":"byte","b":[15,15,15,15,15,15,15,15]},{"a":9973,"t":"byte","b":[15,15,2,2,3,2,3,8]},{"a":9981,"t":"byte","b":[2,3,2,2,3,3,9,3]},{"a":9989,"t":"byte","b":[24,24,6,24,6,24,6,7]},{"a":9997,"t":"byte","b":[17,6,24,7,13,17,11,11]},{"a":10005,"t":"byte","b":[14,12,10,14,10,14,10,10]},{"a":10013,"t":"byte","b":[1,2,1,3,1,1,1,1]},{"a":10021,"l":"ai_attack_behind_table","c":"79 moves: the attack when both face the same way, indexed by $73+$29 plus random AND $94 ($2554); $73 is $DF-$1E there, so indexes $08-$4E end at $2773. Opponent ahead with its back turned: $0A, $0E, $0C, $0B, $11, $0D, $18, 6; close either side: walks; opponent behind: $0F, then $10 further off.","t":"byte","b":[2,2,3,3,3,2,3,2],"x":[9556]},{"a":10029,"t":"byte","b":[10,14,10,12,14,12,14,10]},{"a":10037,"t":"byte","b":[11,17,13,12,11,24,6,17]},{"a":10045,"t":"byte","b":[6,6,24,24,2,2,2,9]},{"a":10053,"t":"byte","b":[8,3,3,3,2,3,9,3]},{"a":10061,"t":"byte","b":[3,2,2,8,3,2,15,15]},{"a":10069,"t":"byte","b":[15,15,15,15,15,15,15,3]},{"a":10077,"t":"byte","b":[3,2,2,3,2,3,16,16]},{"a":10085,"t":"byte","b":[16,16,16,16,16,16,16,3]},{"a":10093,"t":"byte","b":[3,2,3,2,3,3,2]},{"a":10100,"l":"ai_plan_handlers","c":"Ten words, the plan handlers for $9D,X = 0-9 (0 unused, $0000): ai_plan_crouch_wait, ai_plan_move_0a, ai_plan_move_0e, ai_plan_move_09, ai_plan_crouch_spring, ai_plan_move_06_or_18, ai_plan_0a_or_10, ai_plan_mixed, ai_plan_level_choice. Read at $268B/$2690.","t":"word","b":[0,0,232,37,119,38,18,38],"d":[0,9704,9847,9746],"x":[9867]},{"a":10101,"t":"note","l":"f_2775","c":"High bytes of the ai_plan_handlers words, read separately by the LDA $2775,Y at $2690.","note":"inside the item at $2774","x":[9872]},{"a":10108,"t":"word","b":[29,38,40,38,77,38,97,38],"d":[9757,9768,9805,9825]},{"a":10116,"t":"word","b":[62,38,184,38],"d":[9790,9912]},{"a":10120,"l":"ai_plan_by_attack","c":"Plan to start in answer to each opponent move 0-$18 ($23A4): 6->8, 7->2, $0A->4, $0B->3, $0C->2, $0E->9, $0F->4, $10->7, $11->2, others 0 (block instead).","t":"byte","b":[0,0,0,0,0,0,8,2],"x":[9124]},{"a":10128,"t":"byte","b":[0,0,4,3,2,0,9,4]},{"a":10136,"t":"byte","b":[7,2,0,0,0,0,0,0]},{"a":10144,"t":"byte","b":[6]},{"a":10145,"l":"ai_beat_block_13","c":"Attacks against an opponent in move $13: 6, $0D, $0E, $11, picked by random AND 3 at $24E0. These are the moves whose block ($118F) is $14, not $13.","t":"byte","b":[6,13,14,17],"x":[9440]},{"a":10149,"l":"ai_beat_block_14","c":"Attacks against an opponent in move $14: 7, $0B, $0C, $18, picked by random AND 3 at $24CE (7 starts plan 5). Their block in $118F is $13.","t":"byte","b":[7,11,12,24],"x":[9422]},{"a":10153,"l":"ai_lvl_hold_mask","c":"Per level 0-11 into $8D, $A1, $A2: 1F 1F 0F 0F 0F 0F 07 07.. ; $8D masks the random hold time in ai_no_threat, $A1,X is the wait while the opponent is in a forced move.","t":"byte","b":[31,31,15,15,15,15,7,7],"x":[9621]},{"a":10161,"t":"byte","b":[7,7,7,7]},{"a":10165,"l":"ai_lvl_attack_spread","c":"Per level into $94: 7 for levels 0-4, 3 from 5. Masks the random offset into the attack tables, so higher levels pick from fewer, nearer entries.","t":"byte","b":[7,7,7,7,7,3,3,3],"x":[9630]},{"a":10173,"t":"byte","b":[3,3,3,3]},{"a":10177,"l":"ai_lvl_close_wait","c":"Per level into $97: 7F 1F 0F 0F 0F 07 7F 1F 07 0F 3F 1F. Masks the hesitation at close range (ai_close_range) before an attack.","t":"byte","b":[127,31,15,15,15,7,127,31],"x":[9652]},{"a":10185,"t":"byte","b":[7,15,63,31]},{"a":10189,"l":"ai_lvl_walk_time","c":"Per level into $A8,X: masks how long ai_approach walks forward. 11 bytes; level 11 reads $27D8, the next table's first byte.","t":"byte","b":[31,63,31,63,63,63,63,63],"x":[9678]},{"a":10197,"t":"byte","b":[31,63,63]},{"a":10200,"l":"ai_lvl_pause_time","c":"Per level into $A6,X: masks the pause ai_approach makes while walking; 0 (level 7) means it never pauses.","t":"byte","b":[63,63,31,63,31,31,15,0],"x":[9683]},{"a":10208,"t":"byte","b":[15,7,31,15]},{"a":10212,"l":"ai_lvl_back_choice","c":"Per level into $A3: masks the random value of ai_back_attack (bit 7 turn, $40 walk back, $20 move 8). Byte-identical with Fist II's opponent style data (brief, mapf2.py).","t":"byte","b":[143,47,79,255,143,224,135,231],"x":[9635]},{"a":10220,"t":"byte","b":[231,39,255,143]},{"a":10224,"l":"ai_lvl_defence","c":"Per level into $9C: masks the response roll in ai_threat_in_range (bit 7 counter-attack, bits 4-6 block, low nibble plan): A3 B2 F1 F0 70 8F 7F 0F 7F 7F 7F 7F. Levels 4 and 6-11 have bit 7 clear and never counter-attack outright; level 4 ($70) always blocks.","t":"byte","b":[163,178,241,240,112,143,127,15],"x":[9673]},{"a":10232,"t":"byte","b":[127,127,127,127]},{"a":10236,"l":"ai_lvl_react_delay","c":"Per level into $AC: 1F 0F 07 03 for levels 0-3, mask of the reaction delay before answering an attack. Levels 4-11 read $2800-$2807, all 0: no delay.","t":"byte","b":[31,15,7,3],"x":[9698]},{"a":10240,"l":"rank_table_27fc_tail","c":"Entries 4-11 of the 12-byte per-rank table that starts at $27FC (agent 4's range): $1F $0F $07 $03 at $27FC-$27FF, then eight zeros here. Read only by LDA $27FC,Y at $25E2 (Y = 0-11, the table stride of the set-up at $2595-$25E7), which copies the byte to $AC. What $AC does is not traced here.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":10248,"l":"fighter_update","c":"Per-frame update of fighter X (0 or 1; $69 holds the other one). Called twice from $1AA3/$1AAA, fighter 1 first. In order: $2B70 hit test on the attack's striking frame, $2834 read the control (stick, keys, computer or forced move) into the request $63,X, $2AF2 turn a pull-back into a block, $29B4 choose the next move $61,X from the request, $2B46 start or hold its animation, $2A8F handle the end of the animation. Then reads the sprite-sprite collision register $D01E (which clears it) and, if any of sprites 0-2 has touched another sprite, sets $24 (which fighter is drawn with sprites 0-2, read at $3220): X when fighter X is in an attack move ($1176,Y non-zero), the opponent $69 when fighter X is in move $11.","t":"code","b":[32,112,43],"m":"jsr","oa":11120,"o":"fighter_hit_test","x":[6819,6826]},{"a":10251,"t":"code","b":[32,52,40],"m":"jsr","oa":10292,"o":"fighter_read_control"},{"a":10254,"t":"code","b":[32,242,42],"m":"jsr","oa":10994,"o":"fighter_auto_block"},{"a":10257,"t":"code","b":[32,180,41],"m":"jsr","oa":10676,"o":"fighter_choose_move"},{"a":10260,"t":"code","b":[32,70,43],"m":"jsr","oa":11078,"o":"fighter_start_anim"},{"a":10263,"t":"code","b":[32,143,42],"m":"jsr","oa":10895,"o":"fighter_anim_ended"},{"a":10266,"t":"code","b":[173,30,208],"m":"lda","o":"vic_sprite_collision"},{"a":10269,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":10271,"t":"code","b":[208,13],"m":"bne","oa":10286,"o":"r_282E"},{"a":10273,"t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x"},{"a":10275,"t":"code","b":[192,17],"m":"cpy","o":"#$11"},{"a":10277,"t":"code","b":[240,8],"m":"beq","oa":10287,"o":"b_282F"},{"a":10279,"t":"code","b":[185,118,17],"m":"lda","oa":4470,"o":"move_is_blow,y"},{"a":10282,"t":"code","b":[240,2],"m":"beq","oa":10286,"o":"r_282E"},{"a":10284,"t":"code","b":[134,36],"m":"stx","oa":36,"o":"spr012_fighter"},{"a":10286,"l":"r_282E","t":"code","b":[96],"m":"rts","x":[10271,10282]},{"a":10287,"l":"b_282F","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[10277]},{"a":10289,"t":"code","b":[132,36],"m":"sty","oa":36,"o":"spr012_fighter"},{"a":10291,"t":"code","b":[96],"m":"rts"},{"a":10292,"l":"fighter_read_control","c":"Fills the request $63,X for fighter X. A forced move in $5F,X (the hit reactions $16/$1A/$1B written at $2CD9-$2CEF) wins; otherwise $65,X non-zero hands over to the computer opponent at $22CF; otherwise $C6 non-zero reads the keyboard ($288C), zero the joystick ($284C). Also called alone from $12FC.","t":"code","b":[181,95],"m":"lda","oa":95,"o":"hit_state,x","x":[4860,10251]},{"a":10294,"t":"code","b":[240,3],"m":"beq","oa":10299,"o":"b_283B"},{"a":10296,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":10298,"t":"code","b":[96],"m":"rts"},{"a":10299,"l":"b_283B","t":"code","b":[181,101],"m":"lda","oa":101,"o":"is_computer,x","x":[10294]},{"a":10301,"t":"code","b":[208,10],"m":"bne","oa":10313,"o":"b_2849"},{"a":10303,"t":"code","b":[165,198],"m":"lda","oa":198,"o":"keyboard_mode"},{"a":10305,"t":"code","b":[240,3],"m":"beq","oa":10310,"o":"b_2846"},{"a":10307,"t":"code","b":[76,140,40],"m":"jmp","oa":10380,"o":"key_read"},{"a":10310,"l":"b_2846","t":"code","b":[76,76,40],"m":"jmp","oa":10316,"o":"joy_read","x":[10305]},{"a":10313,"l":"b_2849","t":"code","b":[76,207,34],"m":"jmp","oa":8911,"o":"ai_think","x":[10301]},{"a":10316,"l":"joy_read","c":"Joystick for fighter X: sets CIA 1 port A to input ($DC02 = 0) and reads $DC00,X, so fighter 0 reads port A (joystick port 2) and fighter 1 port B $DC01 (joystick port 1). Keeps bits 0-4 (up, down, left, right, fire; active low) and falls into the decoder.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10310]},{"a":10318,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":10321,"t":"code","b":[189,0,220],"m":"lda","o":"cia1_port_a,x"},{"a":10324,"t":"code","b":[41,31],"m":"and","o":"#$1F"},{"a":10326,"l":"joy_to_move","c":"Turns a 5-bit stick value in A (bits 0-4 up/down/left/right/fire, active low; the keyboard routines build the same value) into a move request. When the facing $53,X is non-zero and left or right is pressed (but not both), left and right are swapped (EOR #$0C), so the table reads them relative to the facing. Then $63,X = joy_move_table[value].","t":"code","b":[168],"m":"tay","x":[10403,10415]},{"a":10327,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":10329,"t":"code","b":[240,11],"m":"beq","oa":10342,"o":"b_2866"},{"a":10331,"t":"code","b":[152],"m":"tya"},{"a":10332,"t":"code","b":[41,12],"m":"and","o":"#$0C"},{"a":10334,"t":"code","b":[201,12],"m":"cmp","o":"#$0C"},{"a":10336,"t":"code","b":[240,4],"m":"beq","oa":10342,"o":"b_2866"},{"a":10338,"t":"code","b":[152],"m":"tya"},{"a":10339,"t":"code","b":[73,12],"m":"eor","o":"#$0C"},{"a":10341,"t":"code","b":[168],"m":"tay"},{"a":10342,"l":"b_2866","t":"code","b":[185,108,40],"m":"lda","oa":10348,"o":"joy_move_table,y","x":[10329,10336]},{"a":10345,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":10347,"t":"code","b":[96],"m":"rts"},{"a":10348,"l":"joy_move_table","c":"Move requested for each stick value, 32 bytes indexed by bits 0-4 of the port (active low; $00-$0F with fire, $10-$1F without), left/right as read with facing $53,X = 0. Without fire: none 1, up 5, down 4, left 3, right 2, up-left 9, up-right 6, down-left 8, down-right 7. With fire: fire alone 1, up $0E, down $0A, left $11, right $0C, up-left $0F, up-right $0D, down-left $10, down-right $0B. Opposite directions held together give 1. Sixteen moves plus 1 (no request).","t":"byte","b":[1,1,1,1,1,11,13,12],"x":[10342]},{"a":10356,"t":"byte","b":[1,16,15,17,1,10,14,1]},{"a":10364,"t":"byte","b":[1,1,1,1,1,7,6,2]},{"a":10372,"t":"byte","b":[1,8,9,3,1,4,5,1]},{"a":10380,"l":"key_read","c":"Keyboard control for fighter X: port A all outputs, port B all inputs ($DC02 = $FF, $DC03 = 0). Fighter 0 uses $28B2 (fire) and $28CA (direction), fighter 1 $2931 and $2953. The direction code (a joystick-style low nibble, active low) plus the fire bit in $C5 ($10 = no fire, 0 = fire) is passed to the stick decoder $2856, so the keys emulate a joystick.","t":"code","b":[169,255],"m":"lda","o":"#$FF","x":[10307]},{"a":10382,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":10385,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10387,"t":"code","b":[141,3,220],"m":"sta","o":"cia1_ddr_b"},{"a":10390,"t":"code","b":[224,0],"m":"cpx","o":"#$00"},{"a":10392,"t":"code","b":[208,12],"m":"bne","oa":10406,"o":"b_28A6"},{"a":10394,"t":"code","b":[32,178,40],"m":"jsr","oa":10418,"o":"key_fire_p1"},{"a":10397,"t":"code","b":[32,202,40],"m":"jsr","oa":10442,"o":"key_dir_p1"},{"a":10400,"t":"code","b":[24],"m":"clc"},{"a":10401,"t":"code","b":[101,197],"m":"adc","oa":197,"o":"key_fire"},{"a":10403,"t":"code","b":[76,86,40],"m":"jmp","oa":10326,"o":"joy_to_move"},{"a":10406,"l":"b_28A6","t":"code","b":[32,49,41],"m":"jsr","oa":10545,"o":"key_fire_p2","x":[10392]},{"a":10409,"t":"code","b":[32,83,41],"m":"jsr","oa":10579,"o":"key_dir_p2"},{"a":10412,"t":"code","b":[24],"m":"clc"},{"a":10413,"t":"code","b":[101,197],"m":"adc","oa":197,"o":"key_fire"},{"a":10415,"t":"code","b":[76,86,40],"m":"jmp","oa":10326,"o":"joy_to_move"},{"a":10418,"l":"key_fire_p1","c":"Fire key for keyboard player 1 (fighter 0): keyboard row 1 ($DC00 = $FD), columns 5 and 7 (S and left SHIFT). Either held: $C5 = 0; neither: $C5 = $10 (the joystick's fire bit, active low).","t":"code","b":[169,253],"m":"lda","o":"#$FD","x":[10394]},{"a":10420,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10423,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10426,"t":"code","b":[41,160],"m":"and","o":"#$A0"},{"a":10428,"t":"code","b":[201,160],"m":"cmp","o":"#$A0"},{"a":10430,"t":"code","b":[208,5],"m":"bne","oa":10437,"o":"b_28C5"},{"a":10432,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":10434,"t":"code","b":[133,197],"m":"sta","oa":197,"o":"key_fire"},{"a":10436,"t":"code","b":[96],"m":"rts"},{"a":10437,"l":"b_28C5","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10430]},{"a":10439,"t":"code","b":[133,197],"m":"sta","oa":197,"o":"key_fire"},{"a":10441,"t":"code","b":[96],"m":"rts"},{"a":10442,"l":"key_dir_p1","c":"Direction keys for keyboard player 1 (fighter 0), returned in A as a joystick nibble (bits 0-3 up/down/left/right, active low). Tested in this order, the first held key wins: Q up-left ($0A), E up-right ($06), Z down-left ($09), W up ($0E), C down-right ($05), X down ($0D), D right ($07), A left ($0B); none $0F. The eight keys ring S, which is a fire key ($28B2). $C4 is scratch.","t":"code","b":[169,127],"m":"lda","o":"#$7F","x":[10397]},{"a":10444,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10447,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10450,"t":"code","b":[41,64],"m":"and","o":"#$40"},{"a":10452,"t":"code","b":[208,3],"m":"bne","oa":10457,"o":"b_28D9"},{"a":10454,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":10456,"t":"code","b":[96],"m":"rts"},{"a":10457,"l":"b_28D9","t":"code","b":[169,253],"m":"lda","o":"#$FD","x":[10452]},{"a":10459,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10462,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10465,"t":"code","b":[133,196],"m":"sta","oa":196,"o":"key_scratch"},{"a":10467,"t":"code","b":[41,64],"m":"and","o":"#$40"},{"a":10469,"t":"code","b":[208,3],"m":"bne","oa":10474,"o":"b_28EA"},{"a":10471,"t":"code","b":[169,6],"m":"lda","o":"#$06"},{"a":10473,"t":"code","b":[96],"m":"rts"},{"a":10474,"l":"b_28EA","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10469]},{"a":10476,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10478,"t":"code","b":[208,3],"m":"bne","oa":10483,"o":"b_28F3"},{"a":10480,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":10482,"t":"code","b":[96],"m":"rts"},{"a":10483,"l":"b_28F3","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10478]},{"a":10485,"t":"code","b":[41,2],"m":"and","o":"#$02"},{"a":10487,"t":"code","b":[208,3],"m":"bne","oa":10492,"o":"b_28FC"},{"a":10489,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":10491,"t":"code","b":[96],"m":"rts"},{"a":10492,"l":"b_28FC","t":"code","b":[169,251],"m":"lda","o":"#$FB","x":[10487]},{"a":10494,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10497,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10500,"t":"code","b":[133,196],"m":"sta","oa":196,"o":"key_scratch"},{"a":10502,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10504,"t":"code","b":[208,3],"m":"bne","oa":10509,"o":"b_290D"},{"a":10506,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":10508,"t":"code","b":[96],"m":"rts"},{"a":10509,"l":"b_290D","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10504]},{"a":10511,"t":"code","b":[41,128],"m":"and","o":"#$80"},{"a":10513,"t":"code","b":[208,3],"m":"bne","oa":10518,"o":"b_2916"},{"a":10515,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":10517,"t":"code","b":[96],"m":"rts"},{"a":10518,"l":"b_2916","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10513]},{"a":10520,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":10522,"t":"code","b":[208,3],"m":"bne","oa":10527,"o":"b_291F"},{"a":10524,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":10526,"t":"code","b":[96],"m":"rts"},{"a":10527,"l":"b_291F","t":"code","b":[169,253],"m":"lda","o":"#$FD","x":[10522]},{"a":10529,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10532,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10535,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":10537,"t":"code","b":[208,3],"m":"bne","oa":10542,"o":"b_292E"},{"a":10539,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":10541,"t":"code","b":[96],"m":"rts"},{"a":10542,"l":"b_292E","t":"code","b":[169,15],"m":"lda","o":"#$0F","x":[10537]},{"a":10544,"t":"code","b":[96],"m":"rts"},{"a":10545,"l":"key_fire_p2","c":"Fire key for keyboard player 2 (fighter 1): right SHIFT (row 6 column 4) or : (row 5 column 5). Either held: $C5 = 0; neither: $C5 = $10.","t":"code","b":[169,191],"m":"lda","o":"#$BF","x":[10406]},{"a":10547,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10550,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10553,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10555,"t":"code","b":[208,5],"m":"bne","oa":10562,"o":"b_2942"},{"a":10557,"l":"b_293D","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10572]},{"a":10559,"t":"code","b":[133,197],"m":"sta","oa":197,"o":"key_fire"},{"a":10561,"t":"code","b":[96],"m":"rts"},{"a":10562,"l":"b_2942","t":"code","b":[169,223],"m":"lda","o":"#$DF","x":[10555]},{"a":10564,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10567,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10570,"t":"code","b":[41,32],"m":"and","o":"#$20"},{"a":10572,"t":"code","b":[240,239],"m":"beq","oa":10557,"o":"b_293D"},{"a":10574,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":10576,"t":"code","b":[133,197],"m":"sta","oa":197,"o":"key_fire"},{"a":10578,"t":"code","b":[96],"m":"rts"},{"a":10579,"l":"key_dir_p2","c":"Direction keys for keyboard player 2 (fighter 1), as a joystick nibble in A, first held key wins: / down-right ($05), * up-right ($06), P up-left ($0A), @ up ($0E), comma down-left ($09), full stop down ($0D), L left ($0B), ; right ($07); none $0F. The eight keys ring :, which is a fire key ($2931). $C4 is scratch.","t":"code","b":[169,191],"m":"lda","o":"#$BF","x":[10409]},{"a":10581,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10584,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10587,"t":"code","b":[133,196],"m":"sta","oa":196,"o":"key_scratch"},{"a":10589,"t":"code","b":[41,128],"m":"and","o":"#$80"},{"a":10591,"t":"code","b":[208,3],"m":"bne","oa":10596,"o":"b_2964"},{"a":10593,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":10595,"t":"code","b":[96],"m":"rts"},{"a":10596,"l":"b_2964","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10591]},{"a":10598,"t":"code","b":[41,2],"m":"and","o":"#$02"},{"a":10600,"t":"code","b":[208,3],"m":"bne","oa":10605,"o":"b_296D"},{"a":10602,"t":"code","b":[169,6],"m":"lda","o":"#$06"},{"a":10604,"t":"code","b":[96],"m":"rts"},{"a":10605,"l":"b_296D","t":"code","b":[169,223],"m":"lda","o":"#$DF","x":[10600]},{"a":10607,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10610,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10613,"t":"code","b":[133,196],"m":"sta","oa":196,"o":"key_scratch"},{"a":10615,"t":"code","b":[41,2],"m":"and","o":"#$02"},{"a":10617,"t":"code","b":[208,3],"m":"bne","oa":10622,"o":"b_297E"},{"a":10619,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":10621,"t":"code","b":[96],"m":"rts"},{"a":10622,"l":"b_297E","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10617]},{"a":10624,"t":"code","b":[41,64],"m":"and","o":"#$40"},{"a":10626,"t":"code","b":[208,3],"m":"bne","oa":10631,"o":"b_2987"},{"a":10628,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":10630,"t":"code","b":[96],"m":"rts"},{"a":10631,"l":"b_2987","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10626]},{"a":10633,"t":"code","b":[41,128],"m":"and","o":"#$80"},{"a":10635,"t":"code","b":[208,3],"m":"bne","oa":10640,"o":"b_2990"},{"a":10637,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":10639,"t":"code","b":[96],"m":"rts"},{"a":10640,"l":"b_2990","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10635]},{"a":10642,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10644,"t":"code","b":[208,3],"m":"bne","oa":10649,"o":"b_2999"},{"a":10646,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":10648,"t":"code","b":[96],"m":"rts"},{"a":10649,"l":"b_2999","t":"code","b":[165,196],"m":"lda","oa":196,"o":"key_scratch","x":[10644]},{"a":10651,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":10653,"t":"code","b":[208,3],"m":"bne","oa":10658,"o":"b_29A2"},{"a":10655,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":10657,"t":"code","b":[96],"m":"rts"},{"a":10658,"l":"b_29A2","t":"code","b":[169,191],"m":"lda","o":"#$BF","x":[10653]},{"a":10660,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":10663,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":10666,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":10668,"t":"code","b":[208,3],"m":"bne","oa":10673,"o":"b_29B1"},{"a":10670,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":10672,"t":"code","b":[96],"m":"rts"},{"a":10673,"l":"b_29B1","t":"code","b":[169,15],"m":"lda","o":"#$0F","x":[10668]},{"a":10675,"t":"code","b":[96],"m":"rts"},{"a":10676,"l":"fighter_choose_move","c":"Chooses fighter X's move $61,X from the request $63,X. Hit reactions $16/$1A/$1B: wait while the counter $86,X runs down (holding, $74,X = 1), then take the move with height $6C,X = $50, $74 and $4B cleared, and the sample started at $316A if $88,X is set and the pose $51,X is $28 or $2C. From standing (1): $11 becomes $12; 7, $10 and $0A become the crouch 4 first; anything else is taken. From the crouch 4, held ($74,X): 7, $10, $0A are taken. From $12: those three set reverse play ($4B,X = 1); from $12 held, $11 is taken. From $11 held: move $15, played in reverse. Otherwise by $115D[move]: negative (moves 2, 3) take the request at once ($11 becoming $12); 0 start playing the move back ($4B,X = 1); positive let it finish.","t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x","x":[4868,10257]},{"a":10678,"t":"code","b":[201,26],"m":"cmp","o":"#$1A"},{"a":10680,"t":"code","b":[240,8],"m":"beq","oa":10690,"o":"b_29C2"},{"a":10682,"t":"code","b":[201,27],"m":"cmp","o":"#$1B"},{"a":10684,"t":"code","b":[240,4],"m":"beq","oa":10690,"o":"b_29C2"},{"a":10686,"t":"code","b":[201,22],"m":"cmp","o":"#$16"},{"a":10688,"t":"code","b":[208,43],"m":"bne","oa":10733,"o":"b_29ED"},{"a":10690,"l":"b_29C2","t":"code","b":[181,134],"m":"lda","oa":134,"o":"reaction_delay,x","x":[10680,10684]},{"a":10692,"t":"code","b":[240,7],"m":"beq","oa":10701,"o":"b_29CD"},{"a":10694,"t":"code","b":[214,134],"m":"dec","oa":134,"o":"reaction_delay,x"},{"a":10696,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10698,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10700,"t":"code","b":[96],"m":"rts"},{"a":10701,"l":"b_29CD","t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x","x":[10692]},{"a":10703,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10705,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":10707,"t":"code","b":[149,108],"m":"sta","oa":108,"o":"fighter_y,x"},{"a":10709,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10711,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10713,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":10715,"t":"code","b":[181,136],"m":"lda","oa":136,"o":"anim_new_step,x"},{"a":10717,"t":"code","b":[240,13],"m":"beq","oa":10732,"o":"r_29EC"},{"a":10719,"t":"code","b":[181,81],"m":"lda","oa":81,"o":"fighter_frame,x"},{"a":10721,"t":"code","b":[201,44],"m":"cmp","o":"#$2C"},{"a":10723,"t":"code","b":[240,4],"m":"beq","oa":10729,"o":"b_29E9"},{"a":10725,"t":"code","b":[201,40],"m":"cmp","o":"#$28"},{"a":10727,"t":"code","b":[208,3],"m":"bne","oa":10732,"o":"r_29EC"},{"a":10729,"l":"b_29E9","t":"code","b":[32,106,49],"m":"jsr","oa":12650,"o":"speech_say_3","x":[10723]},{"a":10732,"l":"r_29EC","t":"code","b":[96],"m":"rts","x":[10717,10727]},{"a":10733,"l":"b_29ED","t":"code","b":[213,97],"m":"cmp","oa":97,"o":"fighter_move,x","x":[10688]},{"a":10735,"t":"code","b":[240,16],"m":"beq","oa":10753,"o":"r_2A01"},{"a":10737,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":10739,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":10741,"t":"code","b":[208,33],"m":"bne","oa":10776,"o":"b_2A18"},{"a":10743,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":10745,"t":"code","b":[201,17],"m":"cmp","o":"#$11"},{"a":10747,"t":"code","b":[208,5],"m":"bne","oa":10754,"o":"b_2A02"},{"a":10749,"t":"code","b":[169,18],"m":"lda","o":"#$12"},{"a":10751,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10753,"l":"r_2A01","t":"code","b":[96],"m":"rts","x":[10735]},{"a":10754,"l":"b_2A02","t":"code","b":[201,7],"m":"cmp","o":"#$07","x":[10747]},{"a":10756,"t":"code","b":[240,8],"m":"beq","oa":10766,"o":"b_2A0E"},{"a":10758,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":10760,"t":"code","b":[240,4],"m":"beq","oa":10766,"o":"b_2A0E"},{"a":10762,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":10764,"t":"code","b":[208,5],"m":"bne","oa":10771,"o":"b_2A13"},{"a":10766,"l":"b_2A0E","t":"code","b":[169,4],"m":"lda","o":"#$04","x":[10756,10760]},{"a":10768,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10770,"t":"code","b":[96],"m":"rts"},{"a":10771,"l":"b_2A13","t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x","x":[10764]},{"a":10773,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10775,"t":"code","b":[96],"m":"rts"},{"a":10776,"l":"b_2A18","t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x","x":[10741]},{"a":10778,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":10780,"t":"code","b":[240,8],"m":"beq","oa":10790,"o":"b_2A26"},{"a":10782,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":10784,"t":"code","b":[240,4],"m":"beq","oa":10790,"o":"b_2A26"},{"a":10786,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":10788,"t":"code","b":[208,26],"m":"bne","oa":10816,"o":"b_2A40"},{"a":10790,"l":"b_2A26","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[10780,10784]},{"a":10792,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":10794,"t":"code","b":[208,9],"m":"bne","oa":10805,"o":"b_2A35"},{"a":10796,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":10798,"t":"code","b":[240,4],"m":"beq","oa":10804,"o":"r_2A34"},{"a":10800,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":10802,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10804,"l":"r_2A34","t":"code","b":[96],"m":"rts","x":[10798,10809]},{"a":10805,"l":"b_2A35","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[10794]},{"a":10807,"t":"code","b":[201,18],"m":"cmp","o":"#$12"},{"a":10809,"t":"code","b":[208,249],"m":"bne","oa":10804,"o":"r_2A34"},{"a":10811,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10813,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":10815,"t":"code","b":[96],"m":"rts"},{"a":10816,"l":"b_2A40","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[10788]},{"a":10818,"t":"code","b":[201,18],"m":"cmp","o":"#$12"},{"a":10820,"t":"code","b":[208,15],"m":"bne","oa":10837,"o":"b_2A55"},{"a":10822,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":10824,"t":"code","b":[201,17],"m":"cmp","o":"#$11"},{"a":10826,"t":"code","b":[208,34],"m":"bne","oa":10862,"o":"b_2A6E"},{"a":10828,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":10830,"t":"code","b":[240,4],"m":"beq","oa":10836,"o":"r_2A54"},{"a":10832,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":10834,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10836,"l":"r_2A54","t":"code","b":[96],"m":"rts","x":[10830]},{"a":10837,"l":"b_2A55","t":"code","b":[201,17],"m":"cmp","o":"#$11","x":[10820]},{"a":10839,"t":"code","b":[208,21],"m":"bne","oa":10862,"o":"b_2A6E"},{"a":10841,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":10843,"t":"code","b":[240,17],"m":"beq","oa":10862,"o":"b_2A6E"},{"a":10845,"t":"code","b":[169,21],"m":"lda","o":"#$15"},{"a":10847,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10849,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10851,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":10853,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10855,"t":"code","b":[149,103],"m":"sta","oa":103,"o":"fighter_flag_67,x"},{"a":10857,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":10859,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10861,"t":"code","b":[96],"m":"rts"},{"a":10862,"l":"b_2A6E","t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x","x":[10826,10839,10843]},{"a":10864,"t":"code","b":[185,93,17],"m":"lda","oa":4445,"o":"move_end_kind,y"},{"a":10867,"t":"code","b":[48,11],"m":"bmi","oa":10880,"o":"b_2A80"},{"a":10869,"t":"code","b":[208,4],"m":"bne","oa":10875,"o":"b_2A7B"},{"a":10871,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10873,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":10875,"l":"b_2A7B","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10869]},{"a":10877,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10879,"t":"code","b":[96],"m":"rts"},{"a":10880,"l":"b_2A80","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10867]},{"a":10882,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10884,"t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x"},{"a":10886,"t":"code","b":[201,17],"m":"cmp","o":"#$11"},{"a":10888,"t":"code","b":[208,2],"m":"bne","oa":10892,"o":"b_2A8C"},{"a":10890,"t":"code","b":[169,18],"m":"lda","o":"#$12"},{"a":10892,"l":"b_2A8C","t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x","x":[10888]},{"a":10894,"t":"code","b":[96],"m":"rts"},{"a":10895,"l":"fighter_anim_ended","c":"Runs when fighter X's animation has ended ($59,X set by the animator at $37E8/$380A; cleared here). If a forced move is pending in $5F,X it is copied to $5E and nothing else is done. Otherwise, a move that was playing in reverse ($4B,X): move $11 flips the facing $53,X; $4B, $74, $67, $47 cleared; moves $0A, $10, $07 go back to the crouch 4, restarted at its second step ($4D,X = 8, via $3885); anything else to standing (1). A move played forwards: $115D[move] = 0 holds the last pose ($74,X = 1), otherwise back to standing with $90,X = 1.","t":"code","b":[181,89],"m":"lda","oa":89,"o":"anim_ended,x","x":[4874,10263]},{"a":10897,"t":"code","b":[240,10],"m":"beq","oa":10909,"o":"r_2A9D"},{"a":10899,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10901,"t":"code","b":[149,89],"m":"sta","oa":89,"o":"anim_ended,x"},{"a":10903,"t":"code","b":[181,95],"m":"lda","oa":95,"o":"hit_state,x"},{"a":10905,"t":"code","b":[240,3],"m":"beq","oa":10910,"o":"b_2A9E"},{"a":10907,"t":"code","b":[133,94],"m":"sta","oa":94,"o":"knockdown_result"},{"a":10909,"l":"r_2A9D","t":"code","b":[96],"m":"rts","x":[10897]},{"a":10910,"l":"b_2A9E","t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x","x":[10905]},{"a":10912,"t":"code","b":[240,41],"m":"beq","oa":10955,"o":"b_2ACB"},{"a":10914,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":10916,"t":"code","b":[201,17],"m":"cmp","o":"#$11"},{"a":10918,"t":"code","b":[208,6],"m":"bne","oa":10926,"o":"b_2AAE"},{"a":10920,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":10922,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":10924,"t":"code","b":[149,83],"m":"sta","oa":83,"o":"fighter_facing,x"},{"a":10926,"l":"b_2AAE","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10918]},{"a":10928,"t":"code","b":[149,75],"m":"sta","oa":75,"o":"anim_reverse,x"},{"a":10930,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10932,"t":"code","b":[149,103],"m":"sta","oa":103,"o":"fighter_flag_67,x"},{"a":10934,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":10936,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":10938,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":10940,"t":"code","b":[240,38],"m":"beq","oa":10980,"o":"b_2AE4"},{"a":10942,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":10944,"t":"code","b":[240,34],"m":"beq","oa":10980,"o":"b_2AE4"},{"a":10946,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":10948,"t":"code","b":[240,30],"m":"beq","oa":10980,"o":"b_2AE4"},{"a":10950,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10952,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10954,"t":"code","b":[96],"m":"rts"},{"a":10955,"l":"b_2ACB","t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x","x":[10912]},{"a":10957,"t":"code","b":[185,93,17],"m":"lda","oa":4445,"o":"move_end_kind,y"},{"a":10960,"t":"code","b":[208,5],"m":"bne","oa":10967,"o":"b_2AD7"},{"a":10962,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":10964,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":10966,"t":"code","b":[96],"m":"rts"},{"a":10967,"l":"b_2AD7","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[10960]},{"a":10969,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10971,"t":"code","b":[149,144],"m":"sta","oa":144,"o":"ai_chosen_move,x"},{"a":10973,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10975,"t":"code","b":[149,103],"m":"sta","oa":103,"o":"fighter_flag_67,x"},{"a":10977,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":10979,"t":"code","b":[96],"m":"rts"},{"a":10980,"l":"b_2AE4","t":"code","b":[169,4],"m":"lda","o":"#$04","x":[10940,10944,10948]},{"a":10982,"t":"code","b":[149,97],"m":"sta","oa":97,"o":"fighter_move,x"},{"a":10984,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":10986,"t":"code","b":[32,133,56],"m":"jsr","oa":14469,"o":"anim_start"},{"a":10989,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":10991,"t":"code","b":[149,77],"m":"sta","oa":77,"o":"anim_offset,x"},{"a":10993,"t":"code","b":[96],"m":"rts"},{"a":10994,"l":"fighter_auto_block","c":"Turns a request for move 3 into a block. If fighter X is already in $13 or $14 the request becomes that move. Otherwise, when the opponent $69 is not reversing ($4B) or holding ($74), is in an attack move ($1176 non-zero) other than $0A and $10, and $2D00 says the blow can reach, the request becomes $118F[opponent's move] ($13 or $14). Any other request goes to $2B33.","t":"code","b":[181,99],"m":"lda","oa":99,"o":"move_request,x","x":[10254]},{"a":10996,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":10998,"t":"code","b":[208,59],"m":"bne","oa":11059,"o":"fighter_remap_req7"},{"a":11000,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":11002,"t":"code","b":[201,19],"m":"cmp","o":"#$13"},{"a":11004,"t":"code","b":[240,4],"m":"beq","oa":11010,"o":"b_2B02"},{"a":11006,"t":"code","b":[201,20],"m":"cmp","o":"#$14"},{"a":11008,"t":"code","b":[208,3],"m":"bne","oa":11013,"o":"b_2B05"},{"a":11010,"l":"b_2B02","t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x","x":[11004]},{"a":11012,"t":"code","b":[96],"m":"rts"},{"a":11013,"l":"b_2B05","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11008]},{"a":11015,"t":"code","b":[185,75,0],"m":"lda","oa":75,"o":"anim_reverse,y"},{"a":11018,"t":"code","b":[208,38],"m":"bne","oa":11058,"o":"r_2B32"},{"a":11020,"t":"code","b":[185,116,0],"m":"lda","oa":116,"o":"move_hold,y"},{"a":11023,"t":"code","b":[208,33],"m":"bne","oa":11058,"o":"r_2B32"},{"a":11025,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":11028,"t":"code","b":[168],"m":"tay"},{"a":11029,"t":"code","b":[201,16],"m":"cmp","o":"#$10"},{"a":11031,"t":"code","b":[240,25],"m":"beq","oa":11058,"o":"r_2B32"},{"a":11033,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":11035,"t":"code","b":[240,21],"m":"beq","oa":11058,"o":"r_2B32"},{"a":11037,"t":"code","b":[185,118,17],"m":"lda","oa":4470,"o":"move_is_blow,y"},{"a":11040,"t":"code","b":[240,16],"m":"beq","oa":11058,"o":"r_2B32"},{"a":11042,"t":"code","b":[32,0,45],"m":"jsr","oa":11520,"o":"blow_in_reach"},{"a":11045,"t":"code","b":[240,11],"m":"beq","oa":11058,"o":"r_2B32"},{"a":11047,"t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent"},{"a":11049,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":11052,"t":"code","b":[168],"m":"tay"},{"a":11053,"t":"code","b":[185,143,17],"m":"lda","oa":4495,"o":"move_block_answer,y"},{"a":11056,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":11058,"l":"r_2B32","t":"code","b":[96],"m":"rts","x":[11018,11023,11031,11035,11040,11045]},{"a":11059,"l":"fighter_remap_req7","c":"A request for 7 becomes $18 unless fighter X is in the crouch 4 or already in 7: the same stick direction gives one move from standing and another from a crouch. A in: the request. Also called from $1301.","t":"code","b":[201,7],"m":"cmp","o":"#$07","x":[4865,10998]},{"a":11061,"t":"code","b":[208,14],"m":"bne","oa":11077,"o":"r_2B45"},{"a":11063,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":11065,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":11067,"t":"code","b":[240,8],"m":"beq","oa":11077,"o":"r_2B45"},{"a":11069,"t":"code","b":[201,7],"m":"cmp","o":"#$07"},{"a":11071,"t":"code","b":[240,4],"m":"beq","oa":11077,"o":"r_2B45"},{"a":11073,"t":"code","b":[169,24],"m":"lda","o":"#$18"},{"a":11075,"t":"code","b":[149,99],"m":"sta","oa":99,"o":"move_request,x"},{"a":11077,"l":"r_2B45","t":"code","b":[96],"m":"rts","x":[11061,11067,11071]},{"a":11078,"l":"fighter_start_anim","c":"Keeps fighter X's animation in step with its move. A move different from the one loaded ($47,X): it becomes the animation to play ($45,X), $47 and $74 are cleared, and an attack move ($1176 non-zero) starts the sample entry $3164. The same move: held ($74,X set) stops the animation ($45,X = 0), otherwise it goes on ($45 = $47). Ends by jumping to the animator $37BD.","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[4871,10260]},{"a":11080,"t":"code","b":[213,71],"m":"cmp","oa":71,"o":"anim_loaded,x"},{"a":11082,"t":"code","b":[240,19],"m":"beq","oa":11103,"o":"b_2B5F"},{"a":11084,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":11086,"t":"code","b":[168],"m":"tay"},{"a":11087,"t":"code","b":[185,118,17],"m":"lda","oa":4470,"o":"move_is_blow,y"},{"a":11090,"t":"code","b":[240,3],"m":"beq","oa":11095,"o":"b_2B57"},{"a":11092,"t":"code","b":[32,100,49],"m":"jsr","oa":12644,"o":"speech_say_2"},{"a":11095,"l":"b_2B57","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[11090]},{"a":11097,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":11099,"t":"code","b":[149,116],"m":"sta","oa":116,"o":"move_hold,x"},{"a":11101,"t":"code","b":[240,14],"m":"beq","oa":11117,"o":"b_2B6D"},{"a":11103,"l":"b_2B5F","t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x","x":[11082]},{"a":11105,"t":"code","b":[240,6],"m":"beq","oa":11113,"o":"b_2B69"},{"a":11107,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11109,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":11111,"t":"code","b":[240,4],"m":"beq","oa":11117,"o":"b_2B6D"},{"a":11113,"l":"b_2B69","t":"code","b":[181,71],"m":"lda","oa":71,"o":"anim_loaded,x","x":[11105]},{"a":11115,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":11117,"l":"b_2B6D","t":"code","b":[76,189,55],"m":"jmp","oa":14269,"o":"fighter_animate","x":[11101,11111]},{"a":11120,"l":"fighter_hit_test","c":"Hit test, once per blow: only when fighter X is in an attack move ($1176 non-zero), a new animation step began this frame ($88,X), the move is neither reversing nor held, and the pose $51,X equals the move's striking pose $1204[move]. Then $2B8E grades the blow.","t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x","x":[10248]},{"a":11122,"t":"code","b":[185,118,17],"m":"lda","oa":4470,"o":"move_is_blow,y"},{"a":11125,"t":"code","b":[240,22],"m":"beq","oa":11149,"o":"r_2B8D"},{"a":11127,"t":"code","b":[181,136],"m":"lda","oa":136,"o":"anim_new_step,x"},{"a":11129,"t":"code","b":[240,18],"m":"beq","oa":11149,"o":"r_2B8D"},{"a":11131,"t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x"},{"a":11133,"t":"code","b":[208,14],"m":"bne","oa":11149,"o":"r_2B8D"},{"a":11135,"t":"code","b":[181,116],"m":"lda","oa":116,"o":"move_hold,x"},{"a":11137,"t":"code","b":[208,10],"m":"bne","oa":11149,"o":"r_2B8D"},{"a":11139,"t":"code","b":[185,4,18],"m":"lda","oa":4612,"o":"move_strike_frame,y"},{"a":11142,"t":"code","b":[213,81],"m":"cmp","oa":81,"o":"fighter_frame,x"},{"a":11144,"t":"code","b":[208,3],"m":"bne","oa":11149,"o":"r_2B8D"},{"a":11146,"t":"code","b":[32,142,43],"m":"jsr","oa":11150,"o":"fighter_grade_blow"},{"a":11149,"l":"r_2B8D","t":"code","b":[96],"m":"rts","x":[11125,11129,11133,11137,11144]},{"a":11150,"l":"fighter_grade_blow","c":"Grades fighter X's blow against the opponent $69. A reach profile for the move comes from $121D (fighters facing different ways) or $124F (same way, so the blow lands from behind), as a pointer in $70/$71; the byte for the opponent's pose $51,Y is the distance the blow is aimed at ($80 = that pose cannot be hit). $73 is the X distance between the two ($6A difference, signed by fighter X's facing and reversed when both face the same way) +$80, $72 the aimed distance +$80. For a forward blow ($11A8 = 0): beyond the aim misses; at the aim, or nearer by at most $11BD[move], scores a whole point; nearer by at most $11D6[move], a half; nearer still misses. A backward blow ($11A8 = 1) is the mirror image.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11146]},{"a":11152,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":11154,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":11157,"t":"code","b":[240,17],"m":"beq","oa":11176,"o":"b_2BA8"},{"a":11159,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":11161,"t":"code","b":[10],"m":"asl","o":"a"},{"a":11162,"t":"code","b":[168],"m":"tay"},{"a":11163,"t":"code","b":[185,29,18],"m":"lda","oa":4637,"o":"move_reach_ptr_facing,y"},{"a":11166,"t":"code","b":[133,112],"m":"sta","oa":112,"o":"reach_ptr"},{"a":11168,"t":"code","b":[185,30,18],"m":"lda","oa":4638,"o":"f_121E,y"},{"a":11171,"t":"code","b":[133,113],"m":"sta","oa":113,"o":"reach_ptr_hi"},{"a":11173,"t":"code","b":[76,185,43],"m":"jmp","oa":11193,"o":"j_2BB9"},{"a":11176,"l":"b_2BA8","t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x","x":[11157]},{"a":11178,"t":"code","b":[10],"m":"asl","o":"a"},{"a":11179,"t":"code","b":[168],"m":"tay"},{"a":11180,"t":"code","b":[185,79,18],"m":"lda","oa":4687,"o":"move_reach_ptr_same_facing,y"},{"a":11183,"t":"code","b":[133,112],"m":"sta","oa":112,"o":"reach_ptr"},{"a":11185,"t":"code","b":[185,80,18],"m":"lda","oa":4688,"o":"f_1250,y"},{"a":11188,"t":"code","b":[133,113],"m":"sta","oa":113,"o":"reach_ptr_hi"},{"a":11190,"t":"code","b":[76,68,44],"m":"jmp","oa":11332,"o":"j_2C44"},{"a":11193,"l":"j_2BB9","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11173]},{"a":11195,"t":"code","b":[185,81,0],"m":"lda","oa":81,"o":"fighter_frame,y"},{"a":11198,"t":"code","b":[168],"m":"tay"},{"a":11199,"t":"code","b":[177,112],"m":"lda","oa":112,"o":"(reach_ptr),y"},{"a":11201,"t":"code","b":[201,128],"m":"cmp","o":"#$80"},{"a":11203,"t":"code","b":[240,46],"m":"beq","oa":11251,"o":"r_2BF3"},{"a":11205,"t":"code","b":[24],"m":"clc"},{"a":11206,"t":"code","b":[105,128],"m":"adc","o":"#$80"},{"a":11208,"t":"code","b":[133,114],"m":"sta","oa":114,"o":"reach_aim"},{"a":11210,"t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent"},{"a":11212,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":11214,"t":"code","b":[208,9],"m":"bne","oa":11225,"o":"b_2BD9"},{"a":11216,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":11219,"t":"code","b":[56],"m":"sec"},{"a":11220,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":11222,"t":"code","b":[76,223,43],"m":"jmp","oa":11231,"o":"j_2BDF"},{"a":11225,"l":"b_2BD9","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[11214]},{"a":11227,"t":"code","b":[56],"m":"sec"},{"a":11228,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":11231,"l":"j_2BDF","t":"code","b":[24],"m":"clc","x":[11222]},{"a":11232,"t":"code","b":[105,128],"m":"adc","o":"#$80"},{"a":11234,"t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance"},{"a":11236,"t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x"},{"a":11238,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11241,"t":"code","b":[208,26],"m":"bne","oa":11269,"o":"b_2C05"},{"a":11243,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11245,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11247,"t":"code","b":[144,3],"m":"bcc","oa":11252,"o":"b_2BF4"},{"a":11249,"t":"code","b":[240,43],"m":"beq","oa":11294,"o":"blow_whole_point"},{"a":11251,"l":"r_2BF3","t":"code","b":[96],"m":"rts","x":[11203,11275]},{"a":11252,"l":"b_2BF4","t":"code","b":[121,189,17],"m":"adc","oa":4541,"o":"move_full_window,y","x":[11247]},{"a":11255,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11257,"t":"code","b":[176,35],"m":"bcs","oa":11294,"o":"blow_whole_point"},{"a":11259,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11261,"t":"code","b":[121,214,17],"m":"adc","oa":4566,"o":"move_half_window,y"},{"a":11264,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11266,"t":"code","b":[176,45],"m":"bcs","oa":11313,"o":"blow_half_point"},{"a":11268,"t":"code","b":[96],"m":"rts"},{"a":11269,"l":"b_2C05","t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance","x":[11241]},{"a":11271,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11273,"t":"code","b":[240,19],"m":"beq","oa":11294,"o":"blow_whole_point"},{"a":11275,"t":"code","b":[144,230],"m":"bcc","oa":11251,"o":"r_2BF3"},{"a":11277,"t":"code","b":[249,189,17],"m":"sbc","oa":4541,"o":"move_full_window,y"},{"a":11280,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11282,"t":"code","b":[144,10],"m":"bcc","oa":11294,"o":"blow_whole_point"},{"a":11284,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11286,"t":"code","b":[249,214,17],"m":"sbc","oa":4566,"o":"move_half_window,y"},{"a":11289,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11291,"t":"code","b":[144,20],"m":"bcc","oa":11313,"o":"blow_half_point"},{"a":11293,"t":"code","b":[96],"m":"rts"},{"a":11294,"l":"blow_whole_point","c":"Whole point: $6E,X = 2; when $AE = 1, $1DDE is called with Y = $12CE,X (0 or $1D, one per fighter). Then the reaction at $2CA8.","t":"code","b":[169,2],"m":"lda","o":"#$02","x":[11249,11257,11273,11282,11386,11395,11411,11420]},{"a":11296,"t":"code","b":[149,110],"m":"sta","oa":110,"o":"blow_value,x"},{"a":11298,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":11300,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":11302,"t":"code","b":[208,6],"m":"bne","oa":11310,"o":"b_2C2E"},{"a":11304,"t":"code","b":[188,206,18],"m":"ldy","oa":4814,"o":"yinyang_column,x"},{"a":11307,"t":"code","b":[32,222,29],"m":"jsr","oa":7646,"o":"draw_whole_yinyang"},{"a":11310,"l":"b_2C2E","t":"code","b":[76,168,44],"m":"jmp","oa":11432,"o":"blow_reaction","x":[11302]},{"a":11313,"l":"blow_half_point","c":"Half point: $6E,X = 1; when $AE = 1, $1DF3 is called with Y = $12CE,X. Then the reaction at $2CA8.","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[11266,11291,11404,11429]},{"a":11315,"t":"code","b":[149,110],"m":"sta","oa":110,"o":"blow_value,x"},{"a":11317,"t":"code","b":[165,174],"m":"lda","oa":174,"o":"players_minus_one"},{"a":11319,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":11321,"t":"code","b":[208,109],"m":"bne","oa":11432,"o":"blow_reaction"},{"a":11323,"t":"code","b":[188,206,18],"m":"ldy","oa":4814,"o":"yinyang_column,x"},{"a":11326,"t":"code","b":[32,243,29],"m":"jsr","oa":7667,"o":"draw_half_yinyang"},{"a":11329,"t":"code","b":[76,168,44],"m":"jmp","oa":11432,"o":"blow_reaction"},{"a":11332,"l":"j_2C44","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11190]},{"a":11334,"t":"code","b":[185,81,0],"m":"lda","oa":81,"o":"fighter_frame,y"},{"a":11337,"t":"code","b":[168],"m":"tay"},{"a":11338,"t":"code","b":[177,112],"m":"lda","oa":112,"o":"(reach_ptr),y"},{"a":11340,"t":"code","b":[201,128],"m":"cmp","o":"#$80"},{"a":11342,"t":"code","b":[240,62],"m":"beq","oa":11406,"o":"r_2C8E"},{"a":11344,"t":"code","b":[24],"m":"clc"},{"a":11345,"t":"code","b":[105,128],"m":"adc","o":"#$80"},{"a":11347,"t":"code","b":[133,114],"m":"sta","oa":114,"o":"reach_aim"},{"a":11349,"t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent"},{"a":11351,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":11353,"t":"code","b":[240,9],"m":"beq","oa":11364,"o":"b_2C64"},{"a":11355,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":11358,"t":"code","b":[56],"m":"sec"},{"a":11359,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":11361,"t":"code","b":[76,106,44],"m":"jmp","oa":11370,"o":"j_2C6A"},{"a":11364,"l":"b_2C64","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[11353]},{"a":11366,"t":"code","b":[56],"m":"sec"},{"a":11367,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":11370,"l":"j_2C6A","t":"code","b":[24],"m":"clc","x":[11361]},{"a":11371,"t":"code","b":[105,128],"m":"adc","o":"#$80"},{"a":11373,"t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance"},{"a":11375,"t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x"},{"a":11377,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11380,"t":"code","b":[208,25],"m":"bne","oa":11407,"o":"b_2C8F"},{"a":11382,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11384,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11386,"t":"code","b":[240,162],"m":"beq","oa":11294,"o":"blow_whole_point"},{"a":11388,"t":"code","b":[144,16],"m":"bcc","oa":11406,"o":"r_2C8E"},{"a":11390,"t":"code","b":[249,189,17],"m":"sbc","oa":4541,"o":"move_full_window,y"},{"a":11393,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11395,"t":"code","b":[144,153],"m":"bcc","oa":11294,"o":"blow_whole_point"},{"a":11397,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11399,"t":"code","b":[249,214,17],"m":"sbc","oa":4566,"o":"move_half_window,y"},{"a":11402,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11404,"t":"code","b":[144,163],"m":"bcc","oa":11313,"o":"blow_half_point"},{"a":11406,"l":"r_2C8E","t":"code","b":[96],"m":"rts","x":[11342,11388,11413]},{"a":11407,"l":"b_2C8F","t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance","x":[11380]},{"a":11409,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11411,"t":"code","b":[240,137],"m":"beq","oa":11294,"o":"blow_whole_point"},{"a":11413,"t":"code","b":[176,247],"m":"bcs","oa":11406,"o":"r_2C8E"},{"a":11415,"t":"code","b":[121,189,17],"m":"adc","oa":4541,"o":"move_full_window,y"},{"a":11418,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11420,"t":"code","b":[176,128],"m":"bcs","oa":11294,"o":"blow_whole_point"},{"a":11422,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11424,"t":"code","b":[121,214,17],"m":"adc","oa":4566,"o":"move_half_window,y"},{"a":11427,"t":"code","b":[197,114],"m":"cmp","oa":114,"o":"reach_aim"},{"a":11429,"t":"code","b":[176,138],"m":"bcs","oa":11313,"o":"blow_half_point"},{"a":11431,"t":"code","b":[96],"m":"rts"},{"a":11432,"l":"blow_reaction","c":"After a scoring blow: $8C = fighter X's move. If CIA 2 control register A ($DD0E, which the game never writes) reads non-zero, A and Y are pushed and the code jumps to the animator $37BD with X = $4E, so its RTS returns to an address built from those bytes, not to the caller: a deliberate derailment, outcome not traced. Otherwise the opponent's forced move $5F,Y gets the hit reaction: facing each other, forward blow: $1B with the sample entry $315E for moves $18, 7, $0C, else $16 with $3158; facing each other, backward blow: $1A with $315E; same facing (hit from behind): forward blow $1A with $315E, backward blow $16 with $3158.","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11310,11321,11329]},{"a":11434,"t":"code","b":[181,97],"m":"lda","oa":97,"o":"fighter_move,x"},{"a":11436,"t":"code","b":[133,140],"m":"sta","oa":140,"o":"scoring_move"},{"a":11438,"t":"code","b":[173,14,221],"m":"lda","o":"cia2_control_a"},{"a":11441,"t":"code","b":[240,8],"m":"beq","oa":11451,"o":"b_2CBB"},{"a":11443,"t":"code","b":[162,78],"m":"ldx","o":"#$4E"},{"a":11445,"t":"code","b":[72],"m":"pha"},{"a":11446,"t":"code","b":[152],"m":"tya"},{"a":11447,"t":"code","b":[72],"m":"pha"},{"a":11448,"t":"code","b":[76,189,55],"m":"jmp","oa":14269,"o":"fighter_animate"},{"a":11451,"l":"b_2CBB","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x","x":[11441]},{"a":11453,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":11456,"t":"code","b":[240,52],"m":"beq","oa":11510,"o":"b_2CF6"},{"a":11458,"t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x"},{"a":11460,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11463,"t":"code","b":[208,34],"m":"bne","oa":11499,"o":"b_2CEB"},{"a":11465,"t":"code","b":[192,24],"m":"cpy","o":"#$18"},{"a":11467,"t":"code","b":[240,8],"m":"beq","oa":11477,"o":"b_2CD5"},{"a":11469,"t":"code","b":[192,7],"m":"cpy","o":"#$07"},{"a":11471,"t":"code","b":[240,4],"m":"beq","oa":11477,"o":"b_2CD5"},{"a":11473,"t":"code","b":[192,12],"m":"cpy","o":"#$0C"},{"a":11475,"t":"code","b":[208,11],"m":"bne","oa":11488,"o":"b_2CE0"},{"a":11477,"l":"b_2CD5","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11467,11471]},{"a":11479,"t":"code","b":[169,27],"m":"lda","o":"#$1B"},{"a":11481,"t":"code","b":[153,95,0],"m":"sta","oa":95,"o":"hit_state,y"},{"a":11484,"t":"code","b":[32,94,49],"m":"jsr","oa":12638,"o":"speech_say_1"},{"a":11487,"t":"code","b":[96],"m":"rts"},{"a":11488,"l":"b_2CE0","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11475,11517]},{"a":11490,"t":"code","b":[169,22],"m":"lda","o":"#$16"},{"a":11492,"t":"code","b":[153,95,0],"m":"sta","oa":95,"o":"hit_state,y"},{"a":11495,"t":"code","b":[32,88,49],"m":"jsr","oa":12632,"o":"speech_say_0"},{"a":11498,"t":"code","b":[96],"m":"rts"},{"a":11499,"l":"b_2CEB","t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent","x":[11463,11515]},{"a":11501,"t":"code","b":[169,26],"m":"lda","o":"#$1A"},{"a":11503,"t":"code","b":[153,95,0],"m":"sta","oa":95,"o":"hit_state,y"},{"a":11506,"t":"code","b":[32,94,49],"m":"jsr","oa":12638,"o":"speech_say_1"},{"a":11509,"t":"code","b":[96],"m":"rts"},{"a":11510,"l":"b_2CF6","t":"code","b":[180,97],"m":"ldy","oa":97,"o":"fighter_move,x","x":[11456]},{"a":11512,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11515,"t":"code","b":[240,238],"m":"beq","oa":11499,"o":"b_2CEB"},{"a":11517,"t":"code","b":[76,224,44],"m":"jmp","oa":11488,"o":"b_2CE0"},{"a":11520,"l":"blow_in_reach","c":"Returns A = 1 (Z clear) when the opponent's current move could reach fighter X, else 0. $73 = the X distance between the two ($6A difference, signed by fighter X's facing, reversed when both face the same way). Facing different ways: the opponent's move must be a forward blow ($11A8 = 0) and $73 between -17 and +19 ($EF and above, or below $14). Same facing: a backward blow and $73 from 3 to $1F. Called from $2B22 (the automatic block) and $235E (computer opponent).","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x","x":[9054,11042]},{"a":11522,"t":"code","b":[164,105],"m":"ldy","oa":105,"o":"opponent"},{"a":11524,"t":"code","b":[217,83,0],"m":"cmp","oa":83,"o":"fighter_facing,y"},{"a":11527,"t":"code","b":[240,46],"m":"beq","oa":11575,"o":"b_2D37"},{"a":11529,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":11531,"t":"code","b":[208,9],"m":"bne","oa":11542,"o":"b_2D16"},{"a":11533,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":11536,"t":"code","b":[56],"m":"sec"},{"a":11537,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":11539,"t":"code","b":[76,28,45],"m":"jmp","oa":11548,"o":"j_2D1C"},{"a":11542,"l":"b_2D16","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[11531]},{"a":11544,"t":"code","b":[56],"m":"sec"},{"a":11545,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":11548,"l":"j_2D1C","t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance","x":[11539]},{"a":11550,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":11553,"t":"code","b":[168],"m":"tay"},{"a":11554,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11557,"t":"code","b":[208,10],"m":"bne","oa":11569,"o":"b_2D31"},{"a":11559,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11561,"t":"code","b":[201,239],"m":"cmp","o":"#$EF"},{"a":11563,"t":"code","b":[176,7],"m":"bcs","oa":11572,"o":"b_2D34"},{"a":11565,"t":"code","b":[201,20],"m":"cmp","o":"#$14"},{"a":11567,"t":"code","b":[144,3],"m":"bcc","oa":11572,"o":"b_2D34"},{"a":11569,"l":"b_2D31","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[11557,11603,11609,11613]},{"a":11571,"t":"code","b":[96],"m":"rts"},{"a":11572,"l":"b_2D34","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[11563,11567]},{"a":11574,"t":"code","b":[96],"m":"rts"},{"a":11575,"l":"b_2D37","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x","x":[11527]},{"a":11577,"t":"code","b":[240,9],"m":"beq","oa":11588,"o":"b_2D44"},{"a":11579,"t":"code","b":[185,106,0],"m":"lda","oa":106,"o":"fighter_x,y"},{"a":11582,"t":"code","b":[56],"m":"sec"},{"a":11583,"t":"code","b":[245,106],"m":"sbc","oa":106,"o":"fighter_x,x"},{"a":11585,"t":"code","b":[76,74,45],"m":"jmp","oa":11594,"o":"j_2D4A"},{"a":11588,"l":"b_2D44","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[11577]},{"a":11590,"t":"code","b":[56],"m":"sec"},{"a":11591,"t":"code","b":[249,106,0],"m":"sbc","oa":106,"o":"fighter_x,y"},{"a":11594,"l":"j_2D4A","t":"code","b":[133,115],"m":"sta","oa":115,"o":"fighter_distance","x":[11585]},{"a":11596,"t":"code","b":[185,97,0],"m":"lda","oa":97,"o":"fighter_move,y"},{"a":11599,"t":"code","b":[168],"m":"tay"},{"a":11600,"t":"code","b":[185,168,17],"m":"lda","oa":4520,"o":"move_reach_reversed,y"},{"a":11603,"t":"code","b":[240,220],"m":"beq","oa":11569,"o":"b_2D31"},{"a":11605,"t":"code","b":[165,115],"m":"lda","oa":115,"o":"fighter_distance"},{"a":11607,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":11609,"t":"code","b":[144,214],"m":"bcc","oa":11569,"o":"b_2D31"},{"a":11611,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":11613,"t":"code","b":[176,210],"m":"bcs","oa":11569,"o":"b_2D31"},{"a":11615,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11617,"t":"code","b":[96],"m":"rts"},{"a":11618,"l":"irq_spr012_row2","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Moves sprites 0-2 down to the second row of fighter A (the fighter in $20, drawn with sprites 0-2, top at Y $1C): Y from $2D6D, pointers $CFF8-$CFFA from $2D87/$2D8C/$2D91. Acknowledges the VIC, sets the next raster line ($2D7D) and the next handler ($2D82 low, $2D96 high). Used in every chain except the level one (see $2FB0).","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11621,"t":"code","b":[16,4],"m":"bpl","oa":11627,"o":"b_2D6B"},{"a":11623,"t":"code","b":[88],"m":"cli"},{"a":11624,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11627,"l":"b_2D6B","t":"code","b":[72],"m":"pha","x":[11621]},{"a":11628,"t":"code","b":[169,181],"m":"lda","o":"#$B5"},{"a":11629,"t":"note","l":"irq_spr012_row2_y","c":"Y for sprites 0-2 (fighter A's second row) in $2D62. Written by $339D: $1C+$15 (A higher, gap under $16 but not $14); $342B: $1C+$15 (B higher, gap under $16 but not $14); $347C: $1C+$15 (A higher by $14); $354D: $1C+$15 (A higher by $16 or more); $35DB: $1C+$15 (B higher by $16 or more).","note":"inside the item at $2D6C","x":[13213,13355,13436,13645,13787]},{"a":11630,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":11633,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":11636,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":11639,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11641,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11644,"t":"code","b":[169,197],"m":"lda","o":"#$C5"},{"a":11645,"t":"note","l":"irq_spr012_row2_line","c":"Raster line for the handler after $2D62. Written by $33B0: $1D+$14 (A higher, gap under $16 but not $14); $3419: $1D+$29 (B higher, gap under $16 but not $14); $3482: $1C+$28 (A higher by $14); $3553: $1C+$29 (A higher by $16 or more); $35E1: $1C+$29 (B higher by $16 or more).","note":"inside the item at $2D7C","x":[13232,13337,13442,13651,13793]},{"a":11646,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11649,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":11650,"t":"note","l":"irq_spr012_row2_next_lo","c":"Low byte of the handler after $2D62 (high byte $2D96). Written by $336D: $D6 (A higher, gap under $16 but not $14); $33ED: $11 (B higher, gap under $16 but not $14); $3456: $02 (A higher by $14); $351D: $9C (A higher by $16 or more); $35A7: $9C (B higher by $16 or more).","note":"inside the item at $2D81","x":[13165,13293,13398,13597,13735]},{"a":11651,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":11654,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11655,"t":"note","l":"irq_spr012_row2_ptr0","c":"Sprite pointers for $CFF8/$CFF9/$CFFA in $2D62 (fighter A's second row): written by $36A3-$36B1 from $08/$0A/$0C,X with X = $20.","note":"inside the item at $2D86","x":[13991]},{"a":11656,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":11659,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":11660,"t":"note","l":"irq_spr012_row2_ptr1","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2D87. written by $36A3-$36B1 from $08/$0A/$0C,X with X = $20.","note":"inside the item at $2D8B","x":[13996]},{"a":11661,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":11664,"t":"code","b":[169,24],"m":"lda","o":"#$18"},{"a":11665,"t":"note","l":"irq_spr012_row2_ptr2","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2D87. written by $36A3-$36B1 from $08/$0A/$0C,X with X = $20.","note":"inside the item at $2D90","x":[14001]},{"a":11666,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":11669,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":11670,"t":"note","l":"irq_spr012_row2_next_hi","c":"High byte of the handler after $2D62. Written by $3372: $2D (A higher, gap under $16 but not $14); $33F2: $2E (B higher, gap under $16 but not $14); $345B: $2F (A higher by $14); $3522: $2D (A higher by $16 or more); $35AC: $2D (B higher by $16 or more).","note":"inside the item at $2D95","x":[13170,13298,13403,13602,13740]},{"a":11671,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":11674,"t":"code","b":[104],"m":"pla"},{"a":11675,"t":"code","b":[64],"m":"rti"},{"a":11676,"l":"irq_spr012_row3","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Moves sprites 0-2 to the third row of fighter A: Y from $2DA7, pointers from $2DC1/$2DC6/$2DCB; next raster line $2DB7, next handler $2DBC/$2DD0.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11679,"t":"code","b":[16,4],"m":"bpl","oa":11685,"o":"b_2DA5"},{"a":11681,"t":"code","b":[88],"m":"cli"},{"a":11682,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11685,"l":"b_2DA5","t":"code","b":[72],"m":"pha","x":[11679]},{"a":11686,"t":"code","b":[169,202],"m":"lda","o":"#$CA"},{"a":11687,"t":"note","l":"irq_spr012_row3_y","c":"Y for sprites 0-2 (fighter A's third row) in $2D9C. Written by $33A8: $1C+$2A (A higher, gap under $16 but not $14); $3436: $1C+$2A (B higher, gap under $16 but not $14); $34FA: $1C+$2A (B higher by $14); $3558: $1C+$2A (A higher by $16 or more); $35E6: $1C+$2A (B higher by $16 or more).","note":"inside the item at $2DA6","x":[13224,13366,13562,13656,13798]},{"a":11688,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":11691,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":11694,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":11697,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11699,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11702,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":11703,"t":"note","l":"irq_spr012_row3_line","c":"Raster line for the handler after $2D9C. Written by $33BB: $1D+$29 (A higher, gap under $16 but not $14); $343B: $D9 (B higher, gap under $16 but not $14); $34FF: $D9 (B higher by $14); $3560: $1D+$14 (A higher by $16 or more); $35EB: $D9 (B higher by $16 or more).","note":"inside the item at $2DB6","x":[13243,13371,13567,13664,13803]},{"a":11704,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11707,"t":"code","b":[169,57],"m":"lda","o":"#$39"},{"a":11708,"t":"note","l":"irq_spr012_row3_next_lo","c":"Low byte of the handler after $2D9C (high $2DD0); $25 means the byte held in $25. Written by $3381: $11 (A higher, gap under $16 but not $14); $3401: $25 (B higher, gap under $16 but not $14); $34CC: $25 (B higher by $14); $3527: $D6 (A higher by $16 or more); $35B1: $25 (B higher by $16 or more).","note":"inside the item at $2DBB","x":[13185,13313,13516,13607,13745]},{"a":11709,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":11712,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11713,"t":"note","l":"irq_spr012_row3_ptr0","c":"Sprite pointers for $CFF8-$CFFA in $2D9C (fighter A's third row): written by $36B5-$36C3 from $0E/$10/$12,X with X = $20.","note":"inside the item at $2DC0","x":[14009]},{"a":11714,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":11717,"t":"code","b":[169,26],"m":"lda","o":"#$1A"},{"a":11718,"t":"note","l":"irq_spr012_row3_ptr1","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2DC1. written by $36B5-$36C3 from $0E/$10/$12,X with X = $20.","note":"inside the item at $2DC5","x":[14014]},{"a":11719,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":11722,"t":"code","b":[169,27],"m":"lda","o":"#$1B"},{"a":11723,"t":"note","l":"irq_spr012_row3_ptr2","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2DC1. written by $36B5-$36C3 from $0E/$10/$12,X with X = $20.","note":"inside the item at $2DCA","x":[14019]},{"a":11724,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":11727,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":11728,"t":"note","l":"irq_spr012_row3_next_hi","c":"High byte of the handler after $2D9C; $26 means the byte held in $26. Written by $3386: $2E (A higher, gap under $16 but not $14); $3406: $26 (B higher, gap under $16 but not $14); $34D1: $26 (B higher by $14); $352C: $2D (A higher by $16 or more); $35B6: $26 (B higher by $16 or more).","note":"inside the item at $2DCF","x":[13190,13318,13521,13612,13750]},{"a":11729,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":11732,"t":"code","b":[104],"m":"pla"},{"a":11733,"t":"code","b":[64],"m":"rti"},{"a":11734,"l":"irq_spr345_row2","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Moves sprites 3-5 to the second row of fighter B (the fighter in $21, sprites 3-5, top at Y $1D): Y from $2DE1, pointers $CFFB-$CFFD from $2DFC/$2E01/$2E06; next raster line $2DF1, next handler $2DF6/$2E0B.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11737,"t":"code","b":[16,4],"m":"bpl","oa":11743,"o":"b_2DDF"},{"a":11739,"t":"code","b":[88],"m":"cli"},{"a":11740,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11743,"l":"b_2DDF","t":"code","b":[72],"m":"pha","x":[11737]},{"a":11744,"t":"code","b":[169,177],"m":"lda","o":"#$B1"},{"a":11745,"t":"note","l":"irq_spr345_row2_y","c":"Y for sprites 3-5 (fighter B's second row) in $2DD6. Written by $33B5: $1D+$15 (A higher, gap under $16 but not $14); $3413: $1D+$15 (B higher, gap under $16 but not $14); $34DE: $1D+$15 (B higher by $14); $3565: $1D+$15 (A higher by $16 or more); $35C3: $1D+$15 (B higher by $16 or more).","note":"inside the item at $2DE0","x":[13237,13331,13534,13669,13763]},{"a":11746,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":11749,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":11752,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":11755,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11757,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11760,"t":"code","b":[169,180],"m":"lda","o":"#$B4"},{"a":11761,"t":"note","l":"irq_spr345_row2_line","c":"Raster line for the handler after $2DD6. Written by $33A3: $1C+$29 (A higher, gap under $16 but not $14); $3426: $1C+$14 (B higher, gap under $16 but not $14); $34E4: $1D+$28 (B higher by $14); $356B: $1D+$29 (A higher by $16 or more); $35C9: $1D+$29 (B higher by $16 or more).","note":"inside the item at $2DF0","x":[13219,13350,13540,13675,13769]},{"a":11762,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11765,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":11766,"t":"note","l":"irq_spr345_row2_next_lo","c":"Low byte of the handler after $2DD6 (high $2E0B). Written by $3377: $9C (A higher, gap under $16 but not $14); $33E3: $62 (B higher, gap under $16 but not $14); $34B8: $59 (B higher by $14); $3531: $11 (A higher by $16 or more); $3593: $11 (B higher by $16 or more).","note":"inside the item at $2DF5","x":[13175,13283,13496,13617,13715]},{"a":11767,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":11770,"t":"code","b":[234],"m":"nop"},{"a":11771,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":11772,"t":"note","l":"irq_spr345_row2_ptr0","c":"Sprite pointers for $CFFB-$CFFD in $2DD6 (fighter B's second row): written by $36C7-$36D5 from $08/$0A/$0C,X with X = $21.","note":"inside the item at $2DFB","x":[14027]},{"a":11773,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":11776,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":11777,"t":"note","l":"irq_spr345_row2_ptr1","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2DFC. written by $36C7-$36D5 from $08/$0A/$0C,X with X = $21.","note":"inside the item at $2E00","x":[14032]},{"a":11778,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":11781,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11782,"t":"note","l":"irq_spr345_row2_ptr2","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2DFC. written by $36C7-$36D5 from $08/$0A/$0C,X with X = $21.","note":"inside the item at $2E05","x":[14037]},{"a":11783,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":11786,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":11787,"t":"note","l":"irq_spr345_row2_next_hi","c":"High byte of the handler after $2DD6. Written by $337C: $2D (A higher, gap under $16 but not $14); $33E8: $2D (B higher, gap under $16 but not $14); $34BD: $2F (B higher by $14); $3536: $2E (A higher by $16 or more); $3598: $2E (B higher by $16 or more).","note":"inside the item at $2E0A","x":[13180,13288,13501,13622,13720]},{"a":11788,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":11791,"t":"code","b":[104],"m":"pla"},{"a":11792,"t":"code","b":[64],"m":"rti"},{"a":11793,"l":"irq_spr345_row3","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Moves sprites 3-5 to the third row of fighter B: Y from $2E1C, pointers from $2E37/$2E3C/$2E41; next raster line $2E2C, next handler $2E31/$2E46.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11796,"t":"code","b":[16,4],"m":"bpl","oa":11802,"o":"b_2E1A"},{"a":11798,"t":"code","b":[88],"m":"cli"},{"a":11799,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11802,"l":"b_2E1A","t":"code","b":[72],"m":"pha","x":[11796]},{"a":11803,"t":"code","b":[169,198],"m":"lda","o":"#$C6"},{"a":11804,"t":"note","l":"irq_spr345_row3_y","c":"Y for sprites 3-5 (fighter B's third row) in $2E11. Written by $33C0: $1D+$2A (A higher, gap under $16 but not $14); $341E: $1D+$2A (B higher, gap under $16 but not $14); $3498: $1D+$2A (A higher by $14); $3570: $1D+$2A (A higher by $16 or more); $35CE: $1D+$2A (B higher by $16 or more).","note":"inside the item at $2E1B","x":[13248,13342,13464,13680,13774]},{"a":11805,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":11808,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":11811,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":11814,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11816,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11819,"t":"code","b":[169,201],"m":"lda","o":"#$C9"},{"a":11820,"t":"note","l":"irq_spr345_row3_line","c":"Raster line for the handler after $2E11. Written by $33C5: $D9 (A higher, gap under $16 but not $14); $3431: $1C+$29 (B higher, gap under $16 but not $14); $349D: $D9 (A higher by $14); $3575: $D9 (A higher by $16 or more); $35D6: $1C+$14 (B higher by $16 or more).","note":"inside the item at $2E2B","x":[13253,13361,13469,13685,13782]},{"a":11821,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11824,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":11825,"t":"note","l":"irq_spr345_row3_next_lo","c":"Low byte of the handler after $2E11 (high $2E46); $25 = the byte held in $25. Written by $338B: $25 (A higher, gap under $16 but not $14); $33F7: $9C (B higher, gap under $16 but not $14); $346A: $25 (A higher by $14); $353B: $25 (A higher by $16 or more); $359D: $62 (B higher by $16 or more).","note":"inside the item at $2E30","x":[13195,13303,13418,13627,13725]},{"a":11826,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":11829,"t":"code","b":[234],"m":"nop"},{"a":11830,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11831,"t":"note","l":"irq_spr345_row3_ptr0","c":"Sprite pointers for $CFFB-$CFFD in $2E11 (fighter B's third row): written by $36D9-$36E7 from $0E/$10/$12,X with X = $21.","note":"inside the item at $2E36","x":[14045]},{"a":11832,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":11835,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11836,"t":"note","l":"irq_spr345_row3_ptr1","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2E37. written by $36D9-$36E7 from $0E/$10/$12,X with X = $21.","note":"inside the item at $2E3B","x":[14050]},{"a":11837,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":11840,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11841,"t":"note","l":"irq_spr345_row3_ptr2","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2E37. written by $36D9-$36E7 from $0E/$10/$12,X with X = $21.","note":"inside the item at $2E40","x":[14055]},{"a":11842,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":11845,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":11846,"t":"note","l":"irq_spr345_row3_next_hi","c":"High byte of the handler after $2E11; $26 = the byte held in $26. Written by $3390: $26 (A higher, gap under $16 but not $14); $33FC: $2D (B higher, gap under $16 but not $14); $346F: $26 (A higher by $14); $3540: $26 (A higher by $16 or more); $35A2: $2D (B higher by $16 or more).","note":"inside the item at $2E45","x":[13200,13308,13423,13632,13730]},{"a":11847,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":11850,"t":"code","b":[104],"m":"pla"},{"a":11851,"t":"code","b":[64],"m":"rti"},{"a":11852,"l":"irq_all_row2","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Level chain only (both fighters' tops at the same Y): waits for the raster line in $2E57, then moves all six sprites to the second row (Y from $2E5E), sets the next line $2E77, pointers for both fighters' second rows ($2E7E-$2E97) and the handler $2EA7 ($2E9C/$2EA1).","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11855,"t":"code","b":[16,4],"m":"bpl","oa":11861,"o":"b_2E55"},{"a":11857,"t":"code","b":[88],"m":"cli"},{"a":11858,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11861,"l":"b_2E55","t":"code","b":[72],"m":"pha","x":[11855]},{"a":11862,"t":"code","b":[169,180],"m":"lda","o":"#$B4"},{"a":11863,"t":"note","l":"irq_all_row2_wait","c":"Raster line $2E4C busy-waits for before moving the sprites, two lines after the one it was raised on. Written by $3336: $1C+$14 (level).","note":"inside the item at $2E56","x":[13110]},{"a":11864,"l":"b_2E58","t":"code","b":[205,18,208],"m":"cmp","o":"vic_raster","x":[11867]},{"a":11867,"t":"code","b":[208,251],"m":"bne","oa":11864,"o":"b_2E58"},{"a":11869,"t":"code","b":[169,181],"m":"lda","o":"#$B5"},{"a":11870,"t":"note","l":"irq_all_row2_y","c":"Y for all six sprites (both second rows) in $2E4C. Written by $333A: $1C+$15 (level).","note":"inside the item at $2E5D","x":[13114]},{"a":11871,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":11874,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":11877,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":11880,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":11883,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":11886,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":11889,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11891,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11894,"t":"code","b":[169,199],"m":"lda","o":"#$C7"},{"a":11895,"t":"note","l":"irq_all_row2_line","c":"Raster line for $2EA7. Written by $3340: $1C+$27 (level).","note":"inside the item at $2E76","x":[13120]},{"a":11896,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11899,"t":"code","b":[234],"m":"nop"},{"a":11900,"t":"code","b":[234],"m":"nop"},{"a":11901,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":11902,"t":"note","l":"irq_all_row2_ptr0120","c":"Sprite pointers for $CFF8-$CFFA in $2E4C: written by $36EB-$36F9 from $08/$0A/$0C,X with X = $20 (fighter A's second row).","note":"inside the item at $2E7D","x":[14063]},{"a":11903,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":11906,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":11907,"t":"note","l":"irq_all_row2_ptr0121","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2E7E. written by $36EB-$36F9 from $08/$0A/$0C,X with X = $20 (fighter A's second row).","note":"inside the item at $2E82","x":[14068]},{"a":11908,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":11911,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11912,"t":"note","l":"irq_all_row2_ptr0122","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2E7E. written by $36EB-$36F9 from $08/$0A/$0C,X with X = $20 (fighter A's second row).","note":"inside the item at $2E87","x":[14073]},{"a":11913,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":11916,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":11917,"t":"note","l":"irq_all_row2_ptr3450","c":"Sprite pointers for $CFFB-$CFFD in $2E4C: written by $36FC-$370A from $08/$0A/$0C,X with X = $21 (fighter B's second row).","note":"inside the item at $2E8C","x":[14080]},{"a":11918,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":11921,"t":"code","b":[169,23],"m":"lda","o":"#$17"},{"a":11922,"t":"note","l":"irq_all_row2_ptr3451","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2E8D. written by $36FC-$370A from $08/$0A/$0C,X with X = $21 (fighter B's second row).","note":"inside the item at $2E91","x":[14085]},{"a":11923,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":11926,"t":"code","b":[169,24],"m":"lda","o":"#$18"},{"a":11927,"t":"note","l":"irq_all_row2_ptr3452","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2E8D. written by $36FC-$370A from $08/$0A/$0C,X with X = $21 (fighter B's second row).","note":"inside the item at $2E96","x":[14090]},{"a":11928,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":11931,"t":"code","b":[169,167],"m":"lda","o":"#$A7"},{"a":11932,"t":"note","l":"irq_all_row2_next_lo","c":"Low byte of the handler after $2E4C (high $2EA1), always $2EA7. Written by $3319: $A7 (level).","note":"inside the item at $2E9B","x":[13081]},{"a":11933,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":11936,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":11937,"t":"note","l":"irq_all_row2_next_hi","c":"High byte of the handler after $2E4C. Written by $331E: $2E (level).","note":"inside the item at $2EA0","x":[13086]},{"a":11938,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":11941,"t":"code","b":[104],"m":"pla"},{"a":11942,"t":"code","b":[64],"m":"rti"},{"a":11943,"l":"irq_all_row3","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Level chain only: waits for the line in $2EB2, moves all six sprites to the third row (Y from $2EB9), next line $2ED2, pointers for both third rows ($2ED9-$2EF2), next handler $2EF7/$2EFC (the one after the fighters, from $25/$26).","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":11946,"t":"code","b":[16,4],"m":"bpl","oa":11952,"o":"b_2EB0"},{"a":11948,"t":"code","b":[88],"m":"cli"},{"a":11949,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":11952,"l":"b_2EB0","t":"code","b":[72],"m":"pha","x":[11946]},{"a":11953,"t":"code","b":[169,201],"m":"lda","o":"#$C9"},{"a":11954,"t":"note","l":"irq_all_row3_wait","c":"Raster line $2EA7 busy-waits for. Written by $3346: $1C+$29 (level).","note":"inside the item at $2EB1","x":[13126]},{"a":11955,"l":"b_2EB3","t":"code","b":[205,18,208],"m":"cmp","o":"vic_raster","x":[11958]},{"a":11958,"t":"code","b":[208,251],"m":"bne","oa":11955,"o":"b_2EB3"},{"a":11960,"t":"code","b":[169,202],"m":"lda","o":"#$CA"},{"a":11961,"t":"note","l":"irq_all_row3_y","c":"Y for all six sprites (both third rows) in $2EA7. Written by $334A: $1C+$2A (level).","note":"inside the item at $2EB8","x":[13130]},{"a":11962,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":11965,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":11968,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":11971,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":11974,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":11977,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":11980,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":11982,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":11985,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":11986,"t":"note","l":"irq_all_row3_line","c":"Raster line for the handler after $2EA7. Written by $334F: $D9 (level).","note":"inside the item at $2ED1","x":[13135]},{"a":11987,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":11990,"t":"code","b":[234],"m":"nop"},{"a":11991,"t":"code","b":[234],"m":"nop"},{"a":11992,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":11993,"t":"note","l":"irq_all_row3_ptr0120","c":"Sprite pointers for $CFF8-$CFFA in $2EA7: written by $370E-$371C from $0E/$10/$12,X with X = $20 (fighter A's third row).","note":"inside the item at $2ED8","x":[14098]},{"a":11994,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":11997,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":11998,"t":"note","l":"irq_all_row3_ptr0121","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2ED9. written by $370E-$371C from $0E/$10/$12,X with X = $20 (fighter A's third row).","note":"inside the item at $2EDD","x":[14103]},{"a":11999,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":12002,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12003,"t":"note","l":"irq_all_row3_ptr0122","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2ED9. written by $370E-$371C from $0E/$10/$12,X with X = $20 (fighter A's third row).","note":"inside the item at $2EE2","x":[14108]},{"a":12004,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":12007,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12008,"t":"note","l":"irq_all_row3_ptr3450","c":"Sprite pointers for $CFFB-$CFFD in $2EA7: written by $371F-$372D from $0E/$10/$12,X with X = $21 (fighter B's third row).","note":"inside the item at $2EE7","x":[14115]},{"a":12009,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":12012,"t":"code","b":[169,26],"m":"lda","o":"#$1A"},{"a":12013,"t":"note","l":"irq_all_row3_ptr3451","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2EE8. written by $371F-$372D from $0E/$10/$12,X with X = $21 (fighter B's third row).","note":"inside the item at $2EEC","x":[14120]},{"a":12014,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":12017,"t":"code","b":[169,27],"m":"lda","o":"#$1B"},{"a":12018,"t":"note","l":"irq_all_row3_ptr3452","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2EE8. written by $371F-$372D from $0E/$10/$12,X with X = $21 (fighter B's third row).","note":"inside the item at $2EF1","x":[14125]},{"a":12019,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":12022,"t":"code","b":[169,197],"m":"lda","o":"#$C5"},{"a":12023,"t":"note","l":"irq_all_row3_next_lo","c":"Low byte of the handler after $2EA7 (high $2EFC), copied from $25. Written by $3323: $25 (level).","note":"inside the item at $2EF6","x":[13091]},{"a":12024,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12027,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12028,"t":"note","l":"irq_all_row3_next_hi","c":"High byte of the handler after $2EA7, copied from $26. Written by $3328: $26 (level).","note":"inside the item at $2EFB","x":[13096]},{"a":12029,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12032,"t":"code","b":[104],"m":"pla"},{"a":12033,"t":"code","b":[64],"m":"rti"},{"a":12034,"l":"irq_spr345_row2_spr012_row3","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Used when fighter A is exactly $14 lines higher than fighter B, so B's second row and A's third row start one line apart: sprites 3-5 to Y $2F0D, sprites 0-2 to Y $2F18 in one go, next line $2F28, next handler $2F2D/$2F32, pointers $CFFB-$CFFD from $2F37/$2F3C/$2F41 and $CFF8-$CFFA from $2F49/$2F4E/$2F53.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12037,"t":"code","b":[16,4],"m":"bpl","oa":12043,"o":"b_2F0B"},{"a":12039,"t":"code","b":[88],"m":"cli"},{"a":12040,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12043,"l":"b_2F0B","t":"code","b":[72],"m":"pha","x":[12037]},{"a":12044,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12045,"t":"note","l":"irq_b2a3_y345","c":"Y for sprites 3-5 in $2F02 (fighter B's second row, $1D+$15 since B is $14 lower). Written by $3487: $1C+$29 (A higher by $14).","note":"inside the item at $2F0C","x":[13447]},{"a":12046,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":12049,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":12052,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":12055,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12056,"t":"note","l":"irq_b2a3_y012","c":"Y for sprites 0-2 in $2F02 (fighter A's third row). Written by $348B: $1C+$2A (A higher by $14).","note":"inside the item at $2F17","x":[13451]},{"a":12057,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":12060,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":12063,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":12066,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12068,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12071,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12072,"t":"note","l":"irq_b2a3_line","c":"Raster line for the handler after $2F02. Written by $3493: $1D+$29 (A higher by $14).","note":"inside the item at $2F27","x":[13459]},{"a":12073,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12076,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12077,"t":"note","l":"irq_b2a3_next_lo","c":"Low byte of the handler after $2F02 (high $2F32), $2E11. Written by $3460: $11 (A higher by $14).","note":"inside the item at $2F2C","x":[13408]},{"a":12078,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12081,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12082,"t":"note","l":"irq_b2a3_next_hi","c":"High byte of the handler after $2F02. Written by $3465: $2E (A higher by $14).","note":"inside the item at $2F31","x":[13413]},{"a":12083,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12086,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12087,"t":"note","l":"irq_b2a3_ptr3450","c":"Sprite pointers for $CFFB-$CFFD in $2F02: written by $3742-$3750 from $08/$0A/$0C,X with X = $21 (fighter B's second row); $3765-$3773 would write $0E/$10/$12 of fighter B instead, but no call to $3754 was found.","note":"inside the item at $2F36","x":[14150,14185]},{"a":12088,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":12091,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12092,"t":"note","l":"irq_b2a3_ptr3451","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2F37. written by $3742-$3750 from $08/$0A/$0C,X with X = $21 (fighter B's second row); $3765-$3773 would write $0E/$10/$12 of fighter B instead, but no call to $3754 was found.","note":"inside the item at $2F3B","x":[14155,14190]},{"a":12093,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":12096,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12097,"t":"note","l":"irq_b2a3_ptr3452","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2F37. written by $3742-$3750 from $08/$0A/$0C,X with X = $21 (fighter B's second row); $3765-$3773 would write $0E/$10/$12 of fighter B instead, but no call to $3754 was found.","note":"inside the item at $2F40","x":[14160,14195]},{"a":12098,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":12101,"t":"code","b":[234],"m":"nop"},{"a":12102,"t":"code","b":[234],"m":"nop"},{"a":12103,"t":"code","b":[234],"m":"nop"},{"a":12104,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12105,"t":"note","l":"irq_b2a3_ptr0120","c":"Sprite pointers for $CFF8-$CFFA in $2F02: written by $3731-$373F from $0E/$10/$12,X with X = $20 (fighter A's third row); $3754-$3762 would write $08/$0A/$0C instead (no caller found).","note":"inside the item at $2F48","x":[14133,14168]},{"a":12106,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":12109,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12110,"t":"note","l":"irq_b2a3_ptr0121","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2F49. written by $3731-$373F from $0E/$10/$12,X with X = $20 (fighter A's third row); $3754-$3762 would write $08/$0A/$0C instead (no caller found).","note":"inside the item at $2F4D","x":[14138,14173]},{"a":12111,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":12114,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12115,"t":"note","l":"irq_b2a3_ptr0122","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2F49. written by $3731-$373F from $0E/$10/$12,X with X = $20 (fighter A's third row); $3754-$3762 would write $08/$0A/$0C instead (no caller found).","note":"inside the item at $2F52","x":[14143,14178]},{"a":12116,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":12119,"t":"code","b":[104],"m":"pla"},{"a":12120,"t":"code","b":[64],"m":"rti"},{"a":12121,"l":"irq_spr012_row2_spr345_row3","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. The mirror of $2F02, used when fighter B is exactly $14 lines higher: sprites 0-2 to Y $2F64 (A's second row), sprites 3-5 to Y $2F6F (B's third row), next line $2F7F, next handler $2F84/$2F89, pointers $CFF8-$CFFA from $2F8E/$2F93/$2F98 and $CFFB-$CFFD from $2FA0/$2FA5/$2FAA.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12124,"t":"code","b":[16,4],"m":"bpl","oa":12130,"o":"b_2F62"},{"a":12126,"t":"code","b":[88],"m":"cli"},{"a":12127,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12130,"l":"b_2F62","t":"code","b":[72],"m":"pha","x":[12124]},{"a":12131,"t":"code","b":[169,181],"m":"lda","o":"#$B5"},{"a":12132,"t":"note","l":"irq_a2b3_y012","c":"Y for sprites 0-2 in $2F59 (fighter A's second row, $1C+$15). Written by $34E9: $1D+$29 (B higher by $14).","note":"inside the item at $2F63","x":[13545]},{"a":12133,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":12136,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":12139,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":12142,"t":"code","b":[169,182],"m":"lda","o":"#$B6"},{"a":12143,"t":"note","l":"irq_a2b3_y345","c":"Y for sprites 3-5 in $2F59 (fighter B's third row). Written by $34ED: $1D+$2A (B higher by $14).","note":"inside the item at $2F6E","x":[13549]},{"a":12144,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":12147,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":12150,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":12153,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12155,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12158,"t":"code","b":[169,201],"m":"lda","o":"#$C9"},{"a":12159,"t":"note","l":"irq_a2b3_line","c":"Raster line for the handler after $2F59. Written by $34F5: $1C+$29 (B higher by $14).","note":"inside the item at $2F7E","x":[13557]},{"a":12160,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12163,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":12164,"t":"note","l":"irq_a2b3_next_lo","c":"Low byte of the handler after $2F59 (high $2F89), $2D9C. Written by $34C2: $9C (B higher by $14).","note":"inside the item at $2F83","x":[13506]},{"a":12165,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12168,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":12169,"t":"note","l":"irq_a2b3_next_hi","c":"High byte of the handler after $2F59. Written by $34C7: $2D (B higher by $14).","note":"inside the item at $2F88","x":[13511]},{"a":12170,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12173,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12174,"t":"note","l":"irq_a2b3_ptr0120","c":"Sprite pointers for $CFF8-$CFFA in $2F59: written by $3777-$3785 from $08/$0A/$0C,X with X = $20 (fighter A's second row); $379A-$37A8 would write $0E/$10/$12 instead, but no call to $379A was found.","note":"inside the item at $2F8D","x":[14203,14238]},{"a":12175,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":12178,"t":"code","b":[169,32],"m":"lda","o":"#$20"},{"a":12179,"t":"note","l":"irq_a2b3_ptr0121","c":"Pointer 2 of 3 (for $CFF9) of the same set as $2F8E. written by $3777-$3785 from $08/$0A/$0C,X with X = $20 (fighter A's second row); $379A-$37A8 would write $0E/$10/$12 instead, but no call to $379A was found.","note":"inside the item at $2F92","x":[14208,14243]},{"a":12180,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":12183,"t":"code","b":[169,33],"m":"lda","o":"#$21"},{"a":12184,"t":"note","l":"irq_a2b3_ptr0122","c":"Pointer 3 of 3 (for $CFFA) of the same set as $2F8E. written by $3777-$3785 from $08/$0A/$0C,X with X = $20 (fighter A's second row); $379A-$37A8 would write $0E/$10/$12 instead, but no call to $379A was found.","note":"inside the item at $2F97","x":[14213,14248]},{"a":12185,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":12188,"t":"code","b":[234],"m":"nop"},{"a":12189,"t":"code","b":[234],"m":"nop"},{"a":12190,"t":"code","b":[234],"m":"nop"},{"a":12191,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":12192,"t":"note","l":"irq_a2b3_ptr3450","c":"Sprite pointers for $CFFB-$CFFD in $2F59: written by $3788-$3796 from $0E/$10/$12,X with X = $21 (fighter B's third row); $37AB-$37B9 would write $08/$0A/$0C (no caller found).","note":"inside the item at $2F9F","x":[14220,14255]},{"a":12193,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":12196,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12197,"t":"note","l":"irq_a2b3_ptr3451","c":"Pointer 2 of 3 (for $CFFC) of the same set as $2FA0. written by $3788-$3796 from $0E/$10/$12,X with X = $21 (fighter B's third row); $37AB-$37B9 would write $08/$0A/$0C (no caller found).","note":"inside the item at $2FA4","x":[14225,14260]},{"a":12198,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":12201,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12202,"t":"note","l":"irq_a2b3_ptr3452","c":"Pointer 3 of 3 (for $CFFD) of the same set as $2FA0. written by $3788-$3796 from $0E/$10/$12,X with X = $21 (fighter B's third row); $37AB-$37B9 would write $08/$0A/$0C (no caller found).","note":"inside the item at $2FA9","x":[14230,14265]},{"a":12203,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":12206,"t":"code","b":[104],"m":"pla"},{"a":12207,"t":"code","b":[64],"m":"rti"},{"a":12208,"l":"irq_line90_bitmap","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. Installed by the handler $31F2 (which $30E5 arms for line 0); $31F2 arms this one for line $59 (89), and it waits for line $5A (90), acknowledges, sets the next raster line ($2FC7) and handler ($2FCC/$2FD1: the head of the sprite chain that $3291-$35EE picked), starts CIA 2 timer B with latch $16BC ($DD06/$DD07, $DD0F = $09) for the NMI $2FF2, switches to multicolour bitmap ($D011 = $3B) and sets the background $D021 from $2FEC. The chains, by $1C/$1D: level $2E4C, $2EA7; A higher by less than $16 (not $14) $2D62, $2DD6, $2D9C, $2E11; A higher by $14 $2D62, $2F02, $2E11; A higher by $16 or more $2D62, $2D9C, $2DD6, $2E11; B higher: the same with the groups swapped ($2DD6, $2D62, $2E11, $2D9C / $2DD6, $2F59, $2D9C / $2DD6, $2E11, $2D62, $2D9C). Each chain ends in the handler held in $25/$26.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12211,"t":"code","b":[16,4],"m":"bpl","oa":12217,"o":"b_2FB9"},{"a":12213,"t":"code","b":[88],"m":"cli"},{"a":12214,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12217,"l":"b_2FB9","t":"code","b":[72],"m":"pha","x":[12211]},{"a":12218,"t":"code","b":[169,90],"m":"lda","o":"#$5A"},{"a":12220,"l":"b_2FBC","t":"code","b":[205,18,208],"m":"cmp","o":"vic_raster","x":[12223]},{"a":12223,"t":"code","b":[208,251],"m":"bne","oa":12220,"o":"b_2FBC"},{"a":12225,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12227,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12230,"t":"code","b":[169,178],"m":"lda","o":"#$B2"},{"a":12231,"t":"note","l":"irq_line90_next_line","c":"Raster line for the first handler of the sprite chain, set in $2FB0. Written by $3330: $1C+$12 (level); $3398: $1C+$14 (A higher, gap under $16 but not $14); $340E: $1D+$14 (B higher, gap under $16 but not $14); $3477: $1C+$14 (A higher by $14); $34D9: $1D+$14 (B higher by $14); $3548: $1C+$14 (A higher by $16 or more); $35BE: $1D+$14 (B higher by $16 or more).","note":"inside the item at $2FC6","x":[13104,13208,13326,13431,13529,13640,13758]},{"a":12232,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12235,"t":"code","b":[169,76],"m":"lda","o":"#$4C"},{"a":12236,"t":"note","l":"irq_line90_next_lo","c":"Low byte of the first handler of the sprite chain (high $2FD1). Written by $330F: $4C (level); $3363: $62 (A higher, gap under $16 but not $14); $33D9: $D6 (B higher, gap under $16 but not $14); $344C: $62 (A higher by $14); $34AE: $D6 (B higher by $14); $3513: $62 (A higher by $16 or more); $3589: $D6 (B higher by $16 or more).","note":"inside the item at $2FCB","x":[13071,13155,13273,13388,13486,13587,13705]},{"a":12237,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12240,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":12241,"t":"note","l":"irq_line90_next_hi","c":"High byte of the first handler of the sprite chain. Written by $3314: $2E (level); $3368: $2D (A higher, gap under $16 but not $14); $33DE: $2D (B higher, gap under $16 but not $14); $3451: $2D (A higher by $14); $34B3: $2D (B higher by $14); $3518: $2D (A higher by $16 or more); $358E: $2D (B higher by $16 or more).","note":"inside the item at $2FD0","x":[13076,13160,13278,13393,13491,13592,13710]},{"a":12242,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12245,"t":"code","b":[169,22],"m":"lda","o":"#$16"},{"a":12247,"t":"code","b":[141,7,221],"m":"sta","o":"cia2_timer_b_hi"},{"a":12250,"t":"code","b":[169,188],"m":"lda","o":"#$BC"},{"a":12252,"t":"code","b":[141,6,221],"m":"sta","o":"cia2_timer_b_lo"},{"a":12255,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":12257,"t":"code","b":[141,15,221],"m":"sta","o":"cia2_control_b"},{"a":12260,"t":"code","b":[234],"m":"nop"},{"a":12261,"t":"code","b":[234],"m":"nop"},{"a":12262,"t":"code","b":[169,59],"m":"lda","o":"#$3B"},{"a":12264,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":12267,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12268,"t":"note","l":"irq_line90_bg_colour","c":"Background colour $D021 set at line 90 by $2FB0 for the bitmap: written as 1 (white) at $1F59, and 3 (cyan) at $1F4B while the backdrop is changed ($1F4E-$1F54, when $AF AND 3 differs from $B6).","note":"inside the item at $2FEB","x":[8011,8025]},{"a":12269,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":12272,"t":"code","b":[104],"m":"pla"},{"a":12273,"t":"code","b":[64],"m":"rti"},{"a":12274,"l":"nmi_bg_yellow","c":"NMI handler (vector $FFFA set at $1971). Acts only when CIA 2 raised it (BIT $DD0D negative), so the RESTORE key does nothing: sets the background $D021 to 7 (yellow). CIA 2 timer B is started at line 90 by $2FB0 with $16BC = 5820 cycles, which at 63 cycles a line is about 92 lines, so the colour changes near line 182. Line 218 ($30E5) sets $D021 from $AD.","t":"code","b":[44,13,221],"m":"bit","o":"cia2_interrupt"},{"a":12277,"t":"code","b":[16,7],"m":"bpl","oa":12286,"o":"r_2FFE"},{"a":12279,"t":"code","b":[72],"m":"pha"},{"a":12280,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":12282,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":12285,"t":"code","b":[104],"m":"pla"},{"a":12286,"l":"r_2FFE","t":"code","b":[64],"m":"rti","x":[12277]},{"a":12287,"l":"irq_shadow_spr012","c":"Raster handler; like every one it first tests CIA 1 (BIT $DC0D) and, if the timer of the sample player raised the interrupt, re-enables interrupts and jumps to $311A. One of the four handlers that follow the fighters' chain, chosen at $3253-$3264 when fighter A's top $1C is not $A0 and fighter B's $1D is (A off the ground): puts sprites 0-2 at Y $DA with pointers from $3015/$301A/$301F (written by $3291-$329B from $27/$29/$2B,X of fighter A), then line $FF and handler $30E5. A fourth row at a fixed Y near the ground, drawn only while the fighter is off the ground (Y $A0 is standing: $29D1, $383E): by all appearances the shadow under a jumping fighter (features.md, live), not checked against the sprite images. The body runs on to $3038, in the next range.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12290,"t":"code","b":[16,4],"m":"bpl","oa":12296,"o":"b_3008"},{"a":12292,"t":"code","b":[88],"m":"cli"},{"a":12293,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12296,"l":"b_3008","t":"code","b":[72],"m":"pha","x":[12290]},{"a":12297,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":12299,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":12302,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":12305,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":12308,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":12309,"t":"note","l":"row4f_spr0_ptr","c":"Operand: sprite 0 pointer for the front fighter's fourth row in the $2FFF handler; written by $3291 from $27,X (X = $20).","note":"inside the item at $3014","x":[12945]},{"a":12310,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":12313,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12314,"t":"note","l":"row4f_spr1_ptr","c":"Operand: sprite 1 pointer for the front fighter's fourth row in the $2FFF handler; written by $3296 from $29,X.","note":"inside the item at $3019","x":[12950]},{"a":12315,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":12318,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":12319,"t":"note","l":"row4f_spr2_ptr","c":"Operand: sprite 2 pointer for the front fighter's fourth row in the $2FFF handler; written by $329B from $2B,X.","note":"inside the item at $301E","x":[12955]},{"a":12320,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":12323,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12325,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12328,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12330,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12333,"t":"code","b":[169,229],"m":"lda","o":"#$E5"},{"a":12335,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12338,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12340,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12343,"t":"code","b":[104],"m":"pla"},{"a":12344,"t":"code","b":[64],"m":"rti"},{"a":12345,"l":"irq_row4_back","c":"Raster IRQ at line $D9 (217) when only the back fighter (sprites 3-5) is off the standing height $A0: BIT $DC0D first, and a CIA 1 interrupt goes to speech_irq ($311A). Otherwise moves sprites 3-5 to Y $DA, sets their pointers (operands written by $32C0-$32CA), acknowledges, and chains irq_frame_end ($30E5) at line 255. Chosen by $325D-$3263 through $25/$26; nothing else jumps here.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12348,"t":"code","b":[16,4],"m":"bpl","oa":12354,"o":"b_3042"},{"a":12350,"t":"code","b":[88],"m":"cli"},{"a":12351,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12354,"l":"b_3042","t":"code","b":[72],"m":"pha","x":[12348]},{"a":12355,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":12357,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":12360,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":12363,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":12366,"t":"code","b":[169,86],"m":"lda","o":"#$56"},{"a":12367,"t":"note","l":"row4b_spr3_ptr","c":"Operand: sprite 3 pointer for the back fighter's fourth row in irq_row4_back; written by $32C0 from $27,X (X = $21).","note":"inside the item at $304E","x":[12992]},{"a":12368,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":12371,"t":"code","b":[169,87],"m":"lda","o":"#$57"},{"a":12372,"t":"note","l":"row4b_spr4_ptr","c":"Operand: sprite 4 pointer for the back fighter's fourth row in irq_row4_back; written by $32C5 from $29,X.","note":"inside the item at $3053","x":[12997]},{"a":12373,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":12376,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12377,"t":"note","l":"row4b_spr5_ptr","c":"Operand: sprite 5 pointer for the back fighter's fourth row in irq_row4_back; written by $32CA from $2B,X.","note":"inside the item at $3058","x":[13002]},{"a":12378,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":12381,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12383,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12386,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12388,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12391,"t":"code","b":[169,229],"m":"lda","o":"#$E5"},{"a":12393,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12396,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12398,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12401,"t":"code","b":[104],"m":"pla"},{"a":12402,"t":"code","b":[64],"m":"rti"},{"a":12403,"l":"irq_row4_both","c":"Raster IRQ at line $D9 when both fighters are off the standing height $A0: CIA check as the other handlers, then all six fighter sprites to Y $DA with fourth-row pointers (operands written by $32A0-$32BB), chain irq_frame_end at line 255. Chosen by $326C-$3272 through $25/$26.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12406,"t":"code","b":[16,4],"m":"bpl","oa":12412,"o":"b_307C"},{"a":12408,"t":"code","b":[88],"m":"cli"},{"a":12409,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12412,"l":"b_307C","t":"code","b":[72],"m":"pha","x":[12406]},{"a":12413,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":12415,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":12418,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":12421,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":12424,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":12427,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":12430,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":12433,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":12434,"t":"note","l":"row4both_spr0_ptr","c":"Operand: sprite 0 pointer in irq_row4_both (front fighter, column 0); written by $32A0.","note":"inside the item at $3091","x":[12960]},{"a":12435,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":12438,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12439,"t":"note","l":"row4both_spr1_ptr","c":"Operand: sprite 1 pointer in irq_row4_both (front fighter, column 1); written by $32A5.","note":"inside the item at $3096","x":[12965]},{"a":12440,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":12443,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":12444,"t":"note","l":"row4both_spr2_ptr","c":"Operand: sprite 2 pointer in irq_row4_both (front fighter, column 2); written by $32AA.","note":"inside the item at $309B","x":[12970]},{"a":12445,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":12448,"t":"code","b":[169,86],"m":"lda","o":"#$56"},{"a":12449,"t":"note","l":"row4both_spr3_ptr","c":"Operand: sprite 3 pointer in irq_row4_both (back fighter, column 0); written by $32B1.","note":"inside the item at $30A0","x":[12977]},{"a":12450,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":12453,"t":"code","b":[169,87],"m":"lda","o":"#$57"},{"a":12454,"t":"note","l":"row4both_spr4_ptr","c":"Operand: sprite 4 pointer in irq_row4_both (back fighter, column 1); written by $32B6.","note":"inside the item at $30A5","x":[12982]},{"a":12455,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":12458,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12459,"t":"note","l":"row4both_spr5_ptr","c":"Operand: sprite 5 pointer in irq_row4_both (back fighter, column 2); written by $32BB.","note":"inside the item at $30AA","x":[12987]},{"a":12460,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":12463,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12465,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12468,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12470,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12473,"t":"code","b":[169,229],"m":"lda","o":"#$E5"},{"a":12475,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12478,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12480,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12483,"t":"code","b":[104],"m":"pla"},{"a":12484,"t":"code","b":[64],"m":"rti"},{"a":12485,"l":"irq_row4_none","c":"Raster IRQ at line $D9 when both fighters stand at Y $A0: no sprite changes, only the CIA check, acknowledge and the chain to irq_frame_end at line 255. Chosen by $3282-$3288 through $25/$26.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12488,"t":"code","b":[16,4],"m":"bpl","oa":12494,"o":"b_30CE"},{"a":12490,"t":"code","b":[88],"m":"cli"},{"a":12491,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12494,"l":"b_30CE","t":"code","b":[72],"m":"pha","x":[12488]},{"a":12495,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12497,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12500,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12502,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12505,"t":"code","b":[169,229],"m":"lda","o":"#$E5"},{"a":12507,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12510,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12512,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12515,"t":"code","b":[104],"m":"pla"},{"a":12516,"t":"code","b":[64],"m":"rti"},{"a":12517,"l":"irq_frame_end","c":"Raster IRQ at line 255 (chained from the $D9 handlers): CIA check, then chain irq_frame_top ($31F2) at line 0, set $D011 = $1B (text mode, for the score panel at the top of the next frame) and $D021 from $AD, and call the sound driver $09A5 once a frame with X and Y saved.","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12520,"t":"code","b":[16,4],"m":"bpl","oa":12526,"o":"b_30EE"},{"a":12522,"t":"code","b":[88],"m":"cli"},{"a":12523,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12526,"l":"b_30EE","t":"code","b":[72],"m":"pha","x":[12520]},{"a":12527,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12529,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12532,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12534,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12537,"t":"code","b":[169,242],"m":"lda","o":"#$F2"},{"a":12539,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12542,"t":"code","b":[169,49],"m":"lda","o":"#$31"},{"a":12544,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12547,"t":"code","b":[169,27],"m":"lda","o":"#$1B"},{"a":12549,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":12552,"t":"code","b":[165,173],"m":"lda","oa":173,"o":"panel_bg"},{"a":12554,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":12557,"t":"code","b":[152],"m":"tya"},{"a":12558,"t":"code","b":[72],"m":"pha"},{"a":12559,"t":"code","b":[138],"m":"txa"},{"a":12560,"t":"code","b":[72],"m":"pha"},{"a":12561,"t":"code","b":[32,165,9],"m":"jsr","oa":2469,"o":"music_play"},{"a":12564,"t":"code","b":[104],"m":"pla"},{"a":12565,"t":"code","b":[170],"m":"tax"},{"a":12566,"t":"code","b":[104],"m":"pla"},{"a":12567,"t":"code","b":[168],"m":"tay"},{"a":12568,"t":"code","b":[104],"m":"pla"},{"a":12569,"t":"code","b":[64],"m":"rti"},{"a":12570,"l":"speech_irq","c":"Speech playback step, entered by JMP from every raster handler when BIT $DC0D shows a CIA 1 interrupt (timer B, enabled by speech_start). Flips $2F between $0F and $00 and writes it to $D418, so the master volume toggles: one-bit speech. Reads the next byte through ($2D), looks up a 16-bit timer B latch in $0200,Y (low) / $0300,Y (high) as the time to the next flip, advances $2D/$2E; while $2D/$2E has not passed the end $31/$32 it restarts timer B ($59 to $DC0F), otherwise sets $33 = $FF (finished) and leaves the timer stopped.","t":"code","b":[72],"m":"pha","x":[11624,11682,11740,11799,11858,11949,12040,12127,12214,12293,12351,12409,12491,12523,12792]},{"a":12571,"t":"code","b":[152],"m":"tya"},{"a":12572,"t":"code","b":[72],"m":"pha"},{"a":12573,"t":"code","b":[165,47],"m":"lda","oa":47,"o":"speech_volume"},{"a":12575,"t":"code","b":[73,15],"m":"eor","o":"#$0F"},{"a":12577,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":12580,"t":"code","b":[133,47],"m":"sta","oa":47,"o":"speech_volume"},{"a":12582,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":12584,"t":"code","b":[177,45],"m":"lda","oa":45,"o":"(speech_ptr),y"},{"a":12586,"t":"code","b":[168],"m":"tay"},{"a":12587,"t":"code","b":[185,0,3],"m":"lda","oa":768,"o":"speech_period_hi,y"},{"a":12590,"t":"code","b":[141,7,220],"m":"sta","o":"cia1_timer_b_hi"},{"a":12593,"t":"code","b":[185,0,2],"m":"lda","oa":512,"o":"speech_period_lo,y"},{"a":12596,"t":"code","b":[141,6,220],"m":"sta","o":"cia1_timer_b_lo"},{"a":12599,"t":"code","b":[230,45],"m":"inc","oa":45,"o":"speech_ptr"},{"a":12601,"t":"code","b":[208,2],"m":"bne","oa":12605,"o":"b_313D"},{"a":12603,"t":"code","b":[230,46],"m":"inc","oa":46,"o":"speech_ptr_hi"},{"a":12605,"l":"b_313D","t":"code","b":[165,49],"m":"lda","oa":49,"o":"speech_end","x":[12601]},{"a":12607,"t":"code","b":[197,45],"m":"cmp","oa":45,"o":"speech_ptr"},{"a":12609,"t":"code","b":[165,50],"m":"lda","oa":50,"o":"speech_end_hi"},{"a":12611,"t":"code","b":[229,46],"m":"sbc","oa":46,"o":"speech_ptr_hi"},{"a":12613,"t":"code","b":[176,8],"m":"bcs","oa":12623,"o":"b_314F"},{"a":12615,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12617,"t":"code","b":[133,51],"m":"sta","oa":51,"o":"speech_state"},{"a":12619,"t":"code","b":[104],"m":"pla"},{"a":12620,"t":"code","b":[168],"m":"tay"},{"a":12621,"t":"code","b":[104],"m":"pla"},{"a":12622,"t":"code","b":[64],"m":"rti"},{"a":12623,"l":"b_314F","t":"code","b":[104],"m":"pla","x":[12613]},{"a":12624,"t":"code","b":[168],"m":"tay"},{"a":12625,"t":"code","b":[169,89],"m":"lda","o":"#$59"},{"a":12627,"t":"code","b":[141,15,220],"m":"sta","o":"cia1_control_b"},{"a":12630,"t":"code","b":[104],"m":"pla"},{"a":12631,"t":"code","b":[64],"m":"rti"},{"a":12632,"l":"speech_say_0","c":"Start speech sample 0 (entry 0 of the table at $F540); saves X in $3E and joins speech_start. Called from $2CE7.","t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x","x":[11495]},{"a":12634,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":12636,"t":"code","b":[240,40],"m":"beq","oa":12678,"o":"speech_start"},{"a":12638,"l":"speech_say_1","c":"Start speech sample 1 (table entry at $F544). Called from $13B7, $2CDC and $2CF2.","t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x","x":[5047,11484,11506]},{"a":12640,"t":"code","b":[162,4],"m":"ldx","o":"#$04"},{"a":12642,"t":"code","b":[208,34],"m":"bne","oa":12678,"o":"speech_start"},{"a":12644,"l":"speech_say_2","c":"Start speech sample 2 (table entry at $F548). Called from $2B54.","t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x","x":[11092]},{"a":12646,"t":"code","b":[162,8],"m":"ldx","o":"#$08"},{"a":12648,"t":"code","b":[208,28],"m":"bne","oa":12678,"o":"speech_start"},{"a":12650,"l":"speech_say_3","c":"Start speech sample 3 (table entry at $F54C). Called from $141F (only while $33 is non-zero) and $29E9.","t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x","x":[5151,10729]},{"a":12652,"t":"code","b":[162,12],"m":"ldx","o":"#$0C"},{"a":12654,"t":"code","b":[208,22],"m":"bne","oa":12678,"o":"speech_start"},{"a":12656,"l":"speech_say_4_to_7","c":"Four more entry points, samples 4-7 (X = $10, $14, $18, $1C into $F540): no JSR, JMP or pointer to $3170, $3176, $317C or $3182 was found, and the table words at $F550 on are not sensible offsets in this snapshot. Unused.","t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x"},{"a":12658,"t":"code","b":[162,16],"m":"ldx","o":"#$10"},{"a":12660,"t":"code","b":[208,16],"m":"bne","oa":12678,"o":"speech_start"},{"a":12662,"t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x"},{"a":12664,"t":"code","b":[162,20],"m":"ldx","o":"#$14"},{"a":12666,"t":"code","b":[208,10],"m":"bne","oa":12678,"o":"speech_start"},{"a":12668,"t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x"},{"a":12670,"t":"code","b":[162,24],"m":"ldx","o":"#$18"},{"a":12672,"t":"code","b":[208,4],"m":"bne","oa":12678,"o":"speech_start"},{"a":12674,"t":"code","b":[134,62],"m":"stx","oa":62,"o":"speech_save_x"},{"a":12676,"t":"code","b":[162,28],"m":"ldx","o":"#$1C"},{"a":12678,"l":"speech_start","c":"Common start of a speech sample, X = 4 x sample number: does nothing if $CF is non-zero (speech off; $CF flipped at $1ED8). Writes $7F to $DC0D and $28 to $DC0E/$DC0F (start bits clear), sets $2D/$2E = $F540 + word at $F540,X (start) and $31/$32 = $F540 + word at $F542,X (end), timer A latch 8 ($51 to $DC0E), clears SID registers $D400-$D41C, $2F = $0F, enables only the timer B interrupt ($82 to $DC0D), first timer B latch $0040, $33 = 0, starts timer B ($59 to $DC0F). Restores X from $3E.","t":"code","b":[165,207],"m":"lda","oa":207,"o":"speech_off","x":[12636,12642,12648,12654,12660,12666,12672]},{"a":12680,"t":"code","b":[208,101],"m":"bne","oa":12783,"o":"b_31EF"},{"a":12682,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":12684,"t":"code","b":[141,13,220],"m":"sta","o":"cia1_interrupt"},{"a":12687,"t":"code","b":[169,40],"m":"lda","o":"#$28"},{"a":12689,"t":"code","b":[141,14,220],"m":"sta","o":"cia1_control_a"},{"a":12692,"t":"code","b":[141,15,220],"m":"sta","o":"cia1_control_b"},{"a":12695,"t":"code","b":[24],"m":"clc"},{"a":12696,"t":"code","b":[189,64,245],"m":"lda","oa":62784,"o":"speech_sample_table,x"},{"a":12699,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":12701,"t":"code","b":[133,45],"m":"sta","oa":45,"o":"speech_ptr"},{"a":12703,"t":"code","b":[189,65,245],"m":"lda","oa":62785,"o":"speech_sample_table_1,x"},{"a":12706,"t":"code","b":[105,245],"m":"adc","o":"#$F5"},{"a":12708,"t":"code","b":[133,46],"m":"sta","oa":46,"o":"speech_ptr_hi"},{"a":12710,"t":"code","b":[24],"m":"clc"},{"a":12711,"t":"code","b":[189,66,245],"m":"lda","oa":62786,"o":"speech_sample_table_2,x"},{"a":12714,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":12716,"t":"code","b":[133,49],"m":"sta","oa":49,"o":"speech_end"},{"a":12718,"t":"code","b":[189,67,245],"m":"lda","oa":62787,"o":"speech_sample_table_3,x"},{"a":12721,"t":"code","b":[105,245],"m":"adc","o":"#$F5"},{"a":12723,"t":"code","b":[133,50],"m":"sta","oa":50,"o":"speech_end_hi"},{"a":12725,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":12727,"t":"code","b":[141,4,220],"m":"sta","o":"cia1_timer_a_lo"},{"a":12730,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12732,"t":"code","b":[141,5,220],"m":"sta","o":"cia1_timer_a_hi"},{"a":12735,"t":"code","b":[162,28],"m":"ldx","o":"#$1C"},{"a":12737,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12739,"t":"code","b":[133,51],"m":"sta","oa":51,"o":"speech_state"},{"a":12741,"l":"b_31C5","t":"code","b":[157,0,212],"m":"sta","o":"sid_v1_freq_lo,x","x":[12745]},{"a":12744,"t":"code","b":[202],"m":"dex"},{"a":12745,"t":"code","b":[16,250],"m":"bpl","oa":12741,"o":"b_31C5"},{"a":12747,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":12749,"t":"code","b":[133,47],"m":"sta","oa":47,"o":"speech_volume"},{"a":12751,"t":"code","b":[169,130],"m":"lda","o":"#$82"},{"a":12753,"t":"code","b":[141,13,220],"m":"sta","o":"cia1_interrupt"},{"a":12756,"t":"code","b":[169,81],"m":"lda","o":"#$51"},{"a":12758,"t":"code","b":[141,14,220],"m":"sta","o":"cia1_control_a"},{"a":12761,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":12763,"t":"code","b":[141,6,220],"m":"sta","o":"cia1_timer_b_lo"},{"a":12766,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12768,"t":"code","b":[141,7,220],"m":"sta","o":"cia1_timer_b_hi"},{"a":12771,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12773,"t":"code","b":[133,51],"m":"sta","oa":51,"o":"speech_state"},{"a":12775,"t":"code","b":[169,89],"m":"lda","o":"#$59"},{"a":12777,"t":"code","b":[141,15,220],"m":"sta","o":"cia1_control_b"},{"a":12780,"t":"code","b":[173,13,220],"m":"lda","o":"cia1_interrupt"},{"a":12783,"l":"b_31EF","t":"code","b":[166,62],"m":"ldx","oa":62,"o":"speech_save_x","x":[12680]},{"a":12785,"t":"code","b":[96],"m":"rts"},{"a":12786,"l":"irq_frame_top","c":"Raster IRQ at line 0, the frame's sprite multiplexer set-up: CIA check, chain $2FB0 at line $59, then with interrupts briefly allowed (CLI/SEI, so speech_irq can run) sets sprite multicolours $D025 = 0, $D026 = $0A, decides which fighter is in front ($24 = 0: fighter 0 in sprites 0-2) into $20/$21, copies their Y ($16), X ($14) and X high bit ($18) to $1C/$1D, $1A/$1B, $1E/$1F, then picks the line-$D9 handler and the raster chain for rows 2 and 3 and ends at mux_set_row1 ($35F1).","t":"code","b":[44,13,220],"m":"bit","o":"cia1_interrupt"},{"a":12789,"t":"code","b":[16,4],"m":"bpl","oa":12795,"o":"b_31FB"},{"a":12791,"t":"code","b":[88],"m":"cli"},{"a":12792,"t":"code","b":[76,26,49],"m":"jmp","oa":12570,"o":"speech_irq"},{"a":12795,"l":"b_31FB","t":"code","b":[72],"m":"pha","x":[12789]},{"a":12796,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12798,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":12801,"t":"code","b":[169,176],"m":"lda","o":"#$B0"},{"a":12803,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":12806,"t":"code","b":[169,47],"m":"lda","o":"#$2F"},{"a":12808,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":12811,"t":"code","b":[169,89],"m":"lda","o":"#$59"},{"a":12813,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":12816,"t":"code","b":[152],"m":"tya"},{"a":12817,"t":"code","b":[72],"m":"pha"},{"a":12818,"t":"code","b":[138],"m":"txa"},{"a":12819,"t":"code","b":[72],"m":"pha"},{"a":12820,"t":"code","b":[88],"m":"cli"},{"a":12821,"t":"code","b":[120],"m":"sei"},{"a":12822,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12824,"t":"code","b":[141,37,208],"m":"sta","o":"vic_sprite_mc0"},{"a":12827,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":12829,"t":"code","b":[141,38,208],"m":"sta","o":"vic_sprite_mc1"},{"a":12832,"t":"code","b":[165,36],"m":"lda","oa":36,"o":"spr012_fighter"},{"a":12834,"t":"code","b":[208,11],"m":"bne","oa":12847,"o":"b_322F"},{"a":12836,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12838,"t":"code","b":[133,32],"m":"sta","oa":32,"o":"mux_a_fighter"},{"a":12840,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":12842,"t":"code","b":[133,33],"m":"sta","oa":33,"o":"mux_b_fighter"},{"a":12844,"t":"code","b":[76,55,50],"m":"jmp","oa":12855,"o":"j_3237"},{"a":12847,"l":"b_322F","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[12834]},{"a":12849,"t":"code","b":[133,32],"m":"sta","oa":32,"o":"mux_a_fighter"},{"a":12851,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":12853,"t":"code","b":[133,33],"m":"sta","oa":33,"o":"mux_b_fighter"},{"a":12855,"l":"j_3237","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[12844]},{"a":12857,"t":"code","b":[181,22],"m":"lda","oa":22,"o":"fighter_spr_y,x"},{"a":12859,"t":"code","b":[133,28],"m":"sta","oa":28,"o":"mux_a_y"},{"a":12861,"t":"code","b":[181,20],"m":"lda","oa":20,"o":"fighter_spr_x,x"},{"a":12863,"t":"code","b":[133,26],"m":"sta","oa":26,"o":"mux_a_x"},{"a":12865,"t":"code","b":[181,24],"m":"lda","oa":24,"o":"fighter_spr_x_hi,x"},{"a":12867,"t":"code","b":[133,30],"m":"sta","oa":30,"o":"mux_a_xhi"},{"a":12869,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":12871,"t":"code","b":[181,22],"m":"lda","oa":22,"o":"fighter_spr_y,x"},{"a":12873,"t":"code","b":[133,29],"m":"sta","oa":29,"o":"mux_b_y"},{"a":12875,"t":"code","b":[181,20],"m":"lda","oa":20,"o":"fighter_spr_x,x"},{"a":12877,"t":"code","b":[133,27],"m":"sta","oa":27,"o":"mux_b_x"},{"a":12879,"t":"code","b":[181,24],"m":"lda","oa":24,"o":"fighter_spr_x_hi,x"},{"a":12881,"t":"code","b":[133,31],"m":"sta","oa":31,"o":"mux_b_xhi"},{"a":12883,"l":"mux_pick_row4_handler","c":"Choose the handler for line $D9 by which fighters are not at Y $A0 (standing height): front only -> $2FFF, back only -> irq_row4_back, both -> irq_row4_both, neither -> irq_row4_none (skips the pointer copies); its address goes to $25/$26.","t":"code","b":[169,160],"m":"lda","o":"#$A0"},{"a":12885,"t":"code","b":[197,28],"m":"cmp","oa":28,"o":"mux_a_y"},{"a":12887,"t":"code","b":[208,15],"m":"bne","oa":12904,"o":"b_3268"},{"a":12889,"t":"code","b":[197,29],"m":"cmp","oa":29,"o":"mux_b_y"},{"a":12891,"t":"code","b":[240,37],"m":"beq","oa":12930,"o":"b_3282"},{"a":12893,"t":"code","b":[169,57],"m":"lda","o":"#$39"},{"a":12895,"t":"code","b":[133,37],"m":"sta","oa":37,"o":"after_mux_irq"},{"a":12897,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12899,"t":"code","b":[133,38],"m":"sta","oa":38,"o":"after_mux_irq_hi"},{"a":12901,"t":"code","b":[76,141,50],"m":"jmp","oa":12941,"o":"mux_copy_row4_ptrs"},{"a":12904,"l":"b_3268","t":"code","b":[197,29],"m":"cmp","oa":29,"o":"mux_b_y","x":[12887]},{"a":12906,"t":"code","b":[240,11],"m":"beq","oa":12919,"o":"b_3277"},{"a":12908,"t":"code","b":[169,115],"m":"lda","o":"#$73"},{"a":12910,"t":"code","b":[133,37],"m":"sta","oa":37,"o":"after_mux_irq"},{"a":12912,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12914,"t":"code","b":[133,38],"m":"sta","oa":38,"o":"after_mux_irq_hi"},{"a":12916,"t":"code","b":[76,141,50],"m":"jmp","oa":12941,"o":"mux_copy_row4_ptrs"},{"a":12919,"l":"b_3277","t":"code","b":[169,255],"m":"lda","o":"#$FF","x":[12906]},{"a":12921,"t":"code","b":[133,37],"m":"sta","oa":37,"o":"after_mux_irq"},{"a":12923,"t":"code","b":[169,47],"m":"lda","o":"#$2F"},{"a":12925,"t":"code","b":[133,38],"m":"sta","oa":38,"o":"after_mux_irq_hi"},{"a":12927,"t":"code","b":[76,141,50],"m":"jmp","oa":12941,"o":"mux_copy_row4_ptrs"},{"a":12930,"l":"b_3282","t":"code","b":[169,197],"m":"lda","o":"#$C5","x":[12891]},{"a":12932,"t":"code","b":[133,37],"m":"sta","oa":37,"o":"after_mux_irq"},{"a":12934,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":12936,"t":"code","b":[133,38],"m":"sta","oa":38,"o":"after_mux_irq_hi"},{"a":12938,"t":"code","b":[76,205,50],"m":"jmp","oa":13005,"o":"mux_pick_chain"},{"a":12941,"l":"mux_copy_row4_ptrs","c":"Copy each fighter's fourth-row pointers $27/$29/$2B,X into the operands of the line-$D9 handlers: fighter $20 to $3015/$301A/$301F and $3092/$3097/$309C, fighter $21 to $30A1/$30A6/$30AB and $304F/$3054/$3059.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[12901,12916,12927]},{"a":12943,"t":"code","b":[181,39],"m":"lda","oa":39,"o":"fighter_row4_ptr_c1,x"},{"a":12945,"t":"code","b":[141,21,48],"m":"sta","oa":12309,"o":"row4f_spr0_ptr"},{"a":12948,"t":"code","b":[181,41],"m":"lda","oa":41,"o":"fighter_row4_ptr_c2,x"},{"a":12950,"t":"code","b":[141,26,48],"m":"sta","oa":12314,"o":"row4f_spr1_ptr"},{"a":12953,"t":"code","b":[181,43],"m":"lda","oa":43,"o":"fighter_row4_ptr_c3,x"},{"a":12955,"t":"code","b":[141,31,48],"m":"sta","oa":12319,"o":"row4f_spr2_ptr"},{"a":12958,"t":"code","b":[181,39],"m":"lda","oa":39,"o":"fighter_row4_ptr_c1,x"},{"a":12960,"t":"code","b":[141,146,48],"m":"sta","oa":12434,"o":"row4both_spr0_ptr"},{"a":12963,"t":"code","b":[181,41],"m":"lda","oa":41,"o":"fighter_row4_ptr_c2,x"},{"a":12965,"t":"code","b":[141,151,48],"m":"sta","oa":12439,"o":"row4both_spr1_ptr"},{"a":12968,"t":"code","b":[181,43],"m":"lda","oa":43,"o":"fighter_row4_ptr_c3,x"},{"a":12970,"t":"code","b":[141,156,48],"m":"sta","oa":12444,"o":"row4both_spr2_ptr"},{"a":12973,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":12975,"t":"code","b":[181,39],"m":"lda","oa":39,"o":"fighter_row4_ptr_c1,x"},{"a":12977,"t":"code","b":[141,161,48],"m":"sta","oa":12449,"o":"row4both_spr3_ptr"},{"a":12980,"t":"code","b":[181,41],"m":"lda","oa":41,"o":"fighter_row4_ptr_c2,x"},{"a":12982,"t":"code","b":[141,166,48],"m":"sta","oa":12454,"o":"row4both_spr4_ptr"},{"a":12985,"t":"code","b":[181,43],"m":"lda","oa":43,"o":"fighter_row4_ptr_c3,x"},{"a":12987,"t":"code","b":[141,171,48],"m":"sta","oa":12459,"o":"row4both_spr5_ptr"},{"a":12990,"t":"code","b":[181,39],"m":"lda","oa":39,"o":"fighter_row4_ptr_c1,x"},{"a":12992,"t":"code","b":[141,79,48],"m":"sta","oa":12367,"o":"row4b_spr3_ptr"},{"a":12995,"t":"code","b":[181,41],"m":"lda","oa":41,"o":"fighter_row4_ptr_c2,x"},{"a":12997,"t":"code","b":[141,84,48],"m":"sta","oa":12372,"o":"row4b_spr4_ptr"},{"a":13000,"t":"code","b":[181,43],"m":"lda","oa":43,"o":"fighter_row4_ptr_c3,x"},{"a":13002,"t":"code","b":[141,89,48],"m":"sta","oa":12377,"o":"row4b_spr5_ptr"},{"a":13005,"l":"mux_pick_chain","c":"Pick the raster chain from dY = $1D - $1C (back fighter's Y minus front fighter's): 0 -> mux_same_y; back lower by $16 or more -> mux_back_low_far, by exactly $14 -> mux_back_low_14, otherwise mux_back_low_near; front lower likewise -> mux_front_low_far / _14 / _near. The CMP #$16 / BNE to the next instruction at $32E3 and $32F6 does nothing.","t":"code","b":[56],"m":"sec","x":[12938]},{"a":13006,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13008,"t":"code","b":[229,29],"m":"sbc","oa":29,"o":"mux_b_y"},{"a":13010,"t":"code","b":[208,3],"m":"bne","oa":13015,"o":"b_32D7"},{"a":13012,"t":"code","b":[76,7,51],"m":"jmp","oa":13063,"o":"mux_same_y"},{"a":13015,"l":"b_32D7","t":"code","b":[144,3],"m":"bcc","oa":13020,"o":"b_32DC","x":[13010]},{"a":13017,"t":"code","b":[76,244,50],"m":"jmp","oa":13044,"o":"j_32F4"},{"a":13020,"l":"b_32DC","t":"code","b":[56],"m":"sec","x":[13015]},{"a":13021,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13023,"t":"code","b":[229,28],"m":"sbc","oa":28,"o":"mux_a_y"},{"a":13025,"t":"code","b":[201,22],"m":"cmp","o":"#$16"},{"a":13027,"t":"code","b":[208,0],"m":"bne","oa":13029,"o":"b_32E5"},{"a":13029,"l":"b_32E5","t":"code","b":[144,3],"m":"bcc","oa":13034,"o":"b_32EA","x":[13027]},{"a":13031,"t":"code","b":[76,5,53],"m":"jmp","oa":13573,"o":"mux_back_low_far"},{"a":13034,"l":"b_32EA","t":"code","b":[201,20],"m":"cmp","o":"#$14","x":[13029]},{"a":13036,"t":"code","b":[208,3],"m":"bne","oa":13041,"o":"b_32F1"},{"a":13038,"t":"code","b":[76,65,52],"m":"jmp","oa":13377,"o":"mux_back_low_14"},{"a":13041,"l":"b_32F1","t":"code","b":[76,85,51],"m":"jmp","oa":13141,"o":"mux_back_low_near","x":[13036]},{"a":13044,"l":"j_32F4","t":"code","b":[201,22],"m":"cmp","o":"#$16","x":[13017]},{"a":13046,"t":"code","b":[208,0],"m":"bne","oa":13048,"o":"b_32F8"},{"a":13048,"l":"b_32F8","t":"code","b":[144,3],"m":"bcc","oa":13053,"o":"b_32FD","x":[13046]},{"a":13050,"t":"code","b":[76,123,53],"m":"jmp","oa":13691,"o":"mux_front_low_far"},{"a":13053,"l":"b_32FD","t":"code","b":[201,20],"m":"cmp","o":"#$14","x":[13048]},{"a":13055,"t":"code","b":[208,3],"m":"bne","oa":13060,"o":"b_3304"},{"a":13057,"t":"code","b":[76,163,52],"m":"jmp","oa":13475,"o":"mux_front_low_14"},{"a":13060,"l":"b_3304","t":"code","b":[76,203,51],"m":"jmp","oa":13259,"o":"mux_front_low_near","x":[13055]},{"a":13063,"l":"mux_same_y","c":"Both fighters at the same Y: one handler per row for all six sprites, $2E4C at line Y+$12 (rows 2, pointers by patch_ptrs_both_row2) and $2EA7 at Y+$27 (rows 3, patch_ptrs_both_row3); each busy-waits for the line before it moves the sprites. Last row handler chains to the $D9 handler in $25/$26.","t":"code","b":[32,235,54],"m":"jsr","oa":14059,"o":"patch_ptrs_both_row2","x":[13012]},{"a":13066,"t":"code","b":[32,14,55],"m":"jsr","oa":14094,"o":"patch_ptrs_both_row3"},{"a":13069,"t":"code","b":[169,76],"m":"lda","o":"#$4C"},{"a":13071,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13074,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13076,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13079,"t":"code","b":[169,167],"m":"lda","o":"#$A7"},{"a":13081,"t":"code","b":[141,156,46],"m":"sta","oa":11932,"o":"irq_all_row2_next_lo"},{"a":13084,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13086,"t":"code","b":[141,161,46],"m":"sta","oa":11937,"o":"irq_all_row2_next_hi"},{"a":13089,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13091,"t":"code","b":[141,247,46],"m":"sta","oa":12023,"o":"irq_all_row3_next_lo"},{"a":13094,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13096,"t":"code","b":[141,252,46],"m":"sta","oa":12028,"o":"irq_all_row3_next_hi"},{"a":13099,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13101,"t":"code","b":[24],"m":"clc"},{"a":13102,"t":"code","b":[105,18],"m":"adc","o":"#$12"},{"a":13104,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13107,"t":"code","b":[170],"m":"tax"},{"a":13108,"t":"code","b":[232],"m":"inx"},{"a":13109,"t":"code","b":[232],"m":"inx"},{"a":13110,"t":"code","b":[142,87,46],"m":"stx","oa":11863,"o":"irq_all_row2_wait"},{"a":13113,"t":"code","b":[232],"m":"inx"},{"a":13114,"t":"code","b":[142,94,46],"m":"stx","oa":11870,"o":"irq_all_row2_y"},{"a":13117,"t":"code","b":[24],"m":"clc"},{"a":13118,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13120,"t":"code","b":[141,119,46],"m":"sta","oa":11895,"o":"irq_all_row2_line"},{"a":13123,"t":"code","b":[170],"m":"tax"},{"a":13124,"t":"code","b":[232],"m":"inx"},{"a":13125,"t":"code","b":[232],"m":"inx"},{"a":13126,"t":"code","b":[142,178,46],"m":"stx","oa":11954,"o":"irq_all_row3_wait"},{"a":13129,"t":"code","b":[232],"m":"inx"},{"a":13130,"t":"code","b":[142,185,46],"m":"stx","oa":11961,"o":"irq_all_row3_y"},{"a":13133,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13135,"t":"code","b":[141,210,46],"m":"sta","oa":11986,"o":"irq_all_row3_line"},{"a":13138,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13141,"l":"mux_back_low_near","c":"Back fighter lower by 1-$13 or $15 lines: chain $2D62 (front row 2, line $1C+$14), $2DD6 (back row 2, $1D+$14), $2D9C (front row 3, $1C+$29), $2E11 (back row 3, $1D+$29), then the $D9 handler. Each row's Y is its line + 1. Writes every vector, line and Y operand of those handlers.","t":"code","b":[32,163,54],"m":"jsr","oa":13987,"o":"patch_ptrs_front_row2","x":[13041]},{"a":13144,"t":"code","b":[32,199,54],"m":"jsr","oa":14023,"o":"patch_ptrs_back_row2"},{"a":13147,"t":"code","b":[32,181,54],"m":"jsr","oa":14005,"o":"patch_ptrs_front_row3"},{"a":13150,"t":"code","b":[32,217,54],"m":"jsr","oa":14041,"o":"patch_ptrs_back_row3"},{"a":13153,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":13155,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13158,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13160,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13163,"t":"code","b":[169,214],"m":"lda","o":"#$D6"},{"a":13165,"t":"code","b":[141,130,45],"m":"sta","oa":11650,"o":"irq_spr012_row2_next_lo"},{"a":13168,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13170,"t":"code","b":[141,150,45],"m":"sta","oa":11670,"o":"irq_spr012_row2_next_hi"},{"a":13173,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":13175,"t":"code","b":[141,246,45],"m":"sta","oa":11766,"o":"irq_spr345_row2_next_lo"},{"a":13178,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13180,"t":"code","b":[141,11,46],"m":"sta","oa":11787,"o":"irq_spr345_row2_next_hi"},{"a":13183,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":13185,"t":"code","b":[141,188,45],"m":"sta","oa":11708,"o":"irq_spr012_row3_next_lo"},{"a":13188,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13190,"t":"code","b":[141,208,45],"m":"sta","oa":11728,"o":"irq_spr012_row3_next_hi"},{"a":13193,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13195,"t":"code","b":[141,49,46],"m":"sta","oa":11825,"o":"irq_spr345_row3_next_lo"},{"a":13198,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13200,"t":"code","b":[141,70,46],"m":"sta","oa":11846,"o":"irq_spr345_row3_next_hi"},{"a":13203,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13205,"t":"code","b":[24],"m":"clc"},{"a":13206,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13208,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13211,"t":"code","b":[170],"m":"tax"},{"a":13212,"t":"code","b":[232],"m":"inx"},{"a":13213,"t":"code","b":[142,109,45],"m":"stx","oa":11629,"o":"irq_spr012_row2_y"},{"a":13216,"t":"code","b":[24],"m":"clc"},{"a":13217,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13219,"t":"code","b":[141,241,45],"m":"sta","oa":11761,"o":"irq_spr345_row2_line"},{"a":13222,"t":"code","b":[170],"m":"tax"},{"a":13223,"t":"code","b":[232],"m":"inx"},{"a":13224,"t":"code","b":[142,167,45],"m":"stx","oa":11687,"o":"irq_spr012_row3_y"},{"a":13227,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13229,"t":"code","b":[24],"m":"clc"},{"a":13230,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13232,"t":"code","b":[141,125,45],"m":"sta","oa":11645,"o":"irq_spr012_row2_line"},{"a":13235,"t":"code","b":[170],"m":"tax"},{"a":13236,"t":"code","b":[232],"m":"inx"},{"a":13237,"t":"code","b":[142,225,45],"m":"stx","oa":11745,"o":"irq_spr345_row2_y"},{"a":13240,"t":"code","b":[24],"m":"clc"},{"a":13241,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13243,"t":"code","b":[141,183,45],"m":"sta","oa":11703,"o":"irq_spr012_row3_line"},{"a":13246,"t":"code","b":[170],"m":"tax"},{"a":13247,"t":"code","b":[232],"m":"inx"},{"a":13248,"t":"code","b":[142,28,46],"m":"stx","oa":11804,"o":"irq_spr345_row3_y"},{"a":13251,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13253,"t":"code","b":[141,44,46],"m":"sta","oa":11820,"o":"irq_spr345_row3_line"},{"a":13256,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13259,"l":"mux_front_low_near","c":"Front fighter lower by 1-$13 or $15 lines: chain $2DD6 (back row 2, line $1D+$14), $2D62 (front row 2), $2E11 (back row 3), $2D9C (front row 3), then the $D9 handler; the mirror of mux_back_low_near.","t":"code","b":[32,199,54],"m":"jsr","oa":14023,"o":"patch_ptrs_back_row2","x":[13060]},{"a":13262,"t":"code","b":[32,163,54],"m":"jsr","oa":13987,"o":"patch_ptrs_front_row2"},{"a":13265,"t":"code","b":[32,217,54],"m":"jsr","oa":14041,"o":"patch_ptrs_back_row3"},{"a":13268,"t":"code","b":[32,181,54],"m":"jsr","oa":14005,"o":"patch_ptrs_front_row3"},{"a":13271,"t":"code","b":[169,214],"m":"lda","o":"#$D6"},{"a":13273,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13276,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13278,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13281,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":13283,"t":"code","b":[141,246,45],"m":"sta","oa":11766,"o":"irq_spr345_row2_next_lo"},{"a":13286,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13288,"t":"code","b":[141,11,46],"m":"sta","oa":11787,"o":"irq_spr345_row2_next_hi"},{"a":13291,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":13293,"t":"code","b":[141,130,45],"m":"sta","oa":11650,"o":"irq_spr012_row2_next_lo"},{"a":13296,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13298,"t":"code","b":[141,150,45],"m":"sta","oa":11670,"o":"irq_spr012_row2_next_hi"},{"a":13301,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":13303,"t":"code","b":[141,49,46],"m":"sta","oa":11825,"o":"irq_spr345_row3_next_lo"},{"a":13306,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13308,"t":"code","b":[141,70,46],"m":"sta","oa":11846,"o":"irq_spr345_row3_next_hi"},{"a":13311,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13313,"t":"code","b":[141,188,45],"m":"sta","oa":11708,"o":"irq_spr012_row3_next_lo"},{"a":13316,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13318,"t":"code","b":[141,208,45],"m":"sta","oa":11728,"o":"irq_spr012_row3_next_hi"},{"a":13321,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13323,"t":"code","b":[24],"m":"clc"},{"a":13324,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13326,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13329,"t":"code","b":[170],"m":"tax"},{"a":13330,"t":"code","b":[232],"m":"inx"},{"a":13331,"t":"code","b":[142,225,45],"m":"stx","oa":11745,"o":"irq_spr345_row2_y"},{"a":13334,"t":"code","b":[24],"m":"clc"},{"a":13335,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13337,"t":"code","b":[141,125,45],"m":"sta","oa":11645,"o":"irq_spr012_row2_line"},{"a":13340,"t":"code","b":[170],"m":"tax"},{"a":13341,"t":"code","b":[232],"m":"inx"},{"a":13342,"t":"code","b":[142,28,46],"m":"stx","oa":11804,"o":"irq_spr345_row3_y"},{"a":13345,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13347,"t":"code","b":[24],"m":"clc"},{"a":13348,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13350,"t":"code","b":[141,241,45],"m":"sta","oa":11761,"o":"irq_spr345_row2_line"},{"a":13353,"t":"code","b":[170],"m":"tax"},{"a":13354,"t":"code","b":[232],"m":"inx"},{"a":13355,"t":"code","b":[142,109,45],"m":"stx","oa":11629,"o":"irq_spr012_row2_y"},{"a":13358,"t":"code","b":[24],"m":"clc"},{"a":13359,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13361,"t":"code","b":[141,44,46],"m":"sta","oa":11820,"o":"irq_spr345_row3_line"},{"a":13364,"t":"code","b":[170],"m":"tax"},{"a":13365,"t":"code","b":[232],"m":"inx"},{"a":13366,"t":"code","b":[142,167,45],"m":"stx","oa":11687,"o":"irq_spr012_row3_y"},{"a":13369,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13371,"t":"code","b":[141,183,45],"m":"sta","oa":11703,"o":"irq_spr012_row3_line"},{"a":13374,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13377,"l":"mux_back_low_14","c":"Back fighter exactly $14 lines lower: back row 2 and front row 3 fall on neighbouring lines, so $2F02 moves both at once. Chain $2D62 (front row 2, $1C+$14), $2F02 ($1C+$28: back row 2 Y $1C+$29, front row 3 Y $1C+$2A), $2E11 (back row 3, $1D+$29), then the $D9 handler; pointers for $2F02 by patch_ptrs_mixed_a.","t":"code","b":[32,163,54],"m":"jsr","oa":13987,"o":"patch_ptrs_front_row2","x":[13038]},{"a":13380,"t":"code","b":[32,49,55],"m":"jsr","oa":14129,"o":"patch_ptrs_mixed_a"},{"a":13383,"t":"code","b":[32,217,54],"m":"jsr","oa":14041,"o":"patch_ptrs_back_row3"},{"a":13386,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":13388,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13391,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13393,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13396,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":13398,"t":"code","b":[141,130,45],"m":"sta","oa":11650,"o":"irq_spr012_row2_next_lo"},{"a":13401,"t":"code","b":[169,47],"m":"lda","o":"#$2F"},{"a":13403,"t":"code","b":[141,150,45],"m":"sta","oa":11670,"o":"irq_spr012_row2_next_hi"},{"a":13406,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":13408,"t":"code","b":[141,45,47],"m":"sta","oa":12077,"o":"irq_b2a3_next_lo"},{"a":13411,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13413,"t":"code","b":[141,50,47],"m":"sta","oa":12082,"o":"irq_b2a3_next_hi"},{"a":13416,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13418,"t":"code","b":[141,49,46],"m":"sta","oa":11825,"o":"irq_spr345_row3_next_lo"},{"a":13421,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13423,"t":"code","b":[141,70,46],"m":"sta","oa":11846,"o":"irq_spr345_row3_next_hi"},{"a":13426,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13428,"t":"code","b":[24],"m":"clc"},{"a":13429,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13431,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13434,"t":"code","b":[170],"m":"tax"},{"a":13435,"t":"code","b":[232],"m":"inx"},{"a":13436,"t":"code","b":[142,109,45],"m":"stx","oa":11629,"o":"irq_spr012_row2_y"},{"a":13439,"t":"code","b":[24],"m":"clc"},{"a":13440,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13442,"t":"code","b":[141,125,45],"m":"sta","oa":11645,"o":"irq_spr012_row2_line"},{"a":13445,"t":"code","b":[170],"m":"tax"},{"a":13446,"t":"code","b":[232],"m":"inx"},{"a":13447,"t":"code","b":[142,13,47],"m":"stx","oa":12045,"o":"irq_b2a3_y345"},{"a":13450,"t":"code","b":[232],"m":"inx"},{"a":13451,"t":"code","b":[142,24,47],"m":"stx","oa":12056,"o":"irq_b2a3_y012"},{"a":13454,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13456,"t":"code","b":[24],"m":"clc"},{"a":13457,"t":"code","b":[105,41],"m":"adc","o":"#$29"},{"a":13459,"t":"code","b":[141,40,47],"m":"sta","oa":12072,"o":"irq_b2a3_line"},{"a":13462,"t":"code","b":[170],"m":"tax"},{"a":13463,"t":"code","b":[232],"m":"inx"},{"a":13464,"t":"code","b":[142,28,46],"m":"stx","oa":11804,"o":"irq_spr345_row3_y"},{"a":13467,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13469,"t":"code","b":[141,44,46],"m":"sta","oa":11820,"o":"irq_spr345_row3_line"},{"a":13472,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13475,"l":"mux_front_low_14","c":"Front fighter exactly $14 lines lower: $2F59 moves back row 3 and front row 2 together. Chain $2DD6 (back row 2), $2F59 (operands $2F64/$2F6F/$2F7F, pointers by patch_ptrs_mixed_b), $2D9C (front row 3), then the $D9 handler.","t":"code","b":[32,199,54],"m":"jsr","oa":14023,"o":"patch_ptrs_back_row2","x":[13057]},{"a":13478,"t":"code","b":[32,119,55],"m":"jsr","oa":14199,"o":"patch_ptrs_mixed_b"},{"a":13481,"t":"code","b":[32,181,54],"m":"jsr","oa":14005,"o":"patch_ptrs_front_row3"},{"a":13484,"t":"code","b":[169,214],"m":"lda","o":"#$D6"},{"a":13486,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13489,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13491,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13494,"t":"code","b":[169,89],"m":"lda","o":"#$59"},{"a":13496,"t":"code","b":[141,246,45],"m":"sta","oa":11766,"o":"irq_spr345_row2_next_lo"},{"a":13499,"t":"code","b":[169,47],"m":"lda","o":"#$2F"},{"a":13501,"t":"code","b":[141,11,46],"m":"sta","oa":11787,"o":"irq_spr345_row2_next_hi"},{"a":13504,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":13506,"t":"code","b":[141,132,47],"m":"sta","oa":12164,"o":"irq_a2b3_next_lo"},{"a":13509,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13511,"t":"code","b":[141,137,47],"m":"sta","oa":12169,"o":"irq_a2b3_next_hi"},{"a":13514,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13516,"t":"code","b":[141,188,45],"m":"sta","oa":11708,"o":"irq_spr012_row3_next_lo"},{"a":13519,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13521,"t":"code","b":[141,208,45],"m":"sta","oa":11728,"o":"irq_spr012_row3_next_hi"},{"a":13524,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13526,"t":"code","b":[24],"m":"clc"},{"a":13527,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13529,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13532,"t":"code","b":[170],"m":"tax"},{"a":13533,"t":"code","b":[232],"m":"inx"},{"a":13534,"t":"code","b":[142,225,45],"m":"stx","oa":11745,"o":"irq_spr345_row2_y"},{"a":13537,"t":"code","b":[24],"m":"clc"},{"a":13538,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13540,"t":"code","b":[141,241,45],"m":"sta","oa":11761,"o":"irq_spr345_row2_line"},{"a":13543,"t":"code","b":[170],"m":"tax"},{"a":13544,"t":"code","b":[232],"m":"inx"},{"a":13545,"t":"code","b":[142,100,47],"m":"stx","oa":12132,"o":"irq_a2b3_y012"},{"a":13548,"t":"code","b":[232],"m":"inx"},{"a":13549,"t":"code","b":[142,111,47],"m":"stx","oa":12143,"o":"irq_a2b3_y345"},{"a":13552,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13554,"t":"code","b":[24],"m":"clc"},{"a":13555,"t":"code","b":[105,41],"m":"adc","o":"#$29"},{"a":13557,"t":"code","b":[141,127,47],"m":"sta","oa":12159,"o":"irq_a2b3_line"},{"a":13560,"t":"code","b":[170],"m":"tax"},{"a":13561,"t":"code","b":[232],"m":"inx"},{"a":13562,"t":"code","b":[142,167,45],"m":"stx","oa":11687,"o":"irq_spr012_row3_y"},{"a":13565,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13567,"t":"code","b":[141,183,45],"m":"sta","oa":11703,"o":"irq_spr012_row3_line"},{"a":13570,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13573,"l":"mux_back_low_far","c":"Back fighter $16 or more lines lower: the front fighter's rows finish first. Chain $2D62 (front row 2), $2D9C (front row 3), $2DD6 (back row 2), $2E11 (back row 3), then the $D9 handler.","t":"code","b":[32,163,54],"m":"jsr","oa":13987,"o":"patch_ptrs_front_row2","x":[13031]},{"a":13576,"t":"code","b":[32,181,54],"m":"jsr","oa":14005,"o":"patch_ptrs_front_row3"},{"a":13579,"t":"code","b":[32,199,54],"m":"jsr","oa":14023,"o":"patch_ptrs_back_row2"},{"a":13582,"t":"code","b":[32,217,54],"m":"jsr","oa":14041,"o":"patch_ptrs_back_row3"},{"a":13585,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":13587,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13590,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13592,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13595,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":13597,"t":"code","b":[141,130,45],"m":"sta","oa":11650,"o":"irq_spr012_row2_next_lo"},{"a":13600,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13602,"t":"code","b":[141,150,45],"m":"sta","oa":11670,"o":"irq_spr012_row2_next_hi"},{"a":13605,"t":"code","b":[169,214],"m":"lda","o":"#$D6"},{"a":13607,"t":"code","b":[141,188,45],"m":"sta","oa":11708,"o":"irq_spr012_row3_next_lo"},{"a":13610,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13612,"t":"code","b":[141,208,45],"m":"sta","oa":11728,"o":"irq_spr012_row3_next_hi"},{"a":13615,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":13617,"t":"code","b":[141,246,45],"m":"sta","oa":11766,"o":"irq_spr345_row2_next_lo"},{"a":13620,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13622,"t":"code","b":[141,11,46],"m":"sta","oa":11787,"o":"irq_spr345_row2_next_hi"},{"a":13625,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13627,"t":"code","b":[141,49,46],"m":"sta","oa":11825,"o":"irq_spr345_row3_next_lo"},{"a":13630,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13632,"t":"code","b":[141,70,46],"m":"sta","oa":11846,"o":"irq_spr345_row3_next_hi"},{"a":13635,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13637,"t":"code","b":[24],"m":"clc"},{"a":13638,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13640,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13643,"t":"code","b":[170],"m":"tax"},{"a":13644,"t":"code","b":[232],"m":"inx"},{"a":13645,"t":"code","b":[142,109,45],"m":"stx","oa":11629,"o":"irq_spr012_row2_y"},{"a":13648,"t":"code","b":[24],"m":"clc"},{"a":13649,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13651,"t":"code","b":[141,125,45],"m":"sta","oa":11645,"o":"irq_spr012_row2_line"},{"a":13654,"t":"code","b":[170],"m":"tax"},{"a":13655,"t":"code","b":[232],"m":"inx"},{"a":13656,"t":"code","b":[142,167,45],"m":"stx","oa":11687,"o":"irq_spr012_row3_y"},{"a":13659,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13661,"t":"code","b":[24],"m":"clc"},{"a":13662,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13664,"t":"code","b":[141,183,45],"m":"sta","oa":11703,"o":"irq_spr012_row3_line"},{"a":13667,"t":"code","b":[170],"m":"tax"},{"a":13668,"t":"code","b":[232],"m":"inx"},{"a":13669,"t":"code","b":[142,225,45],"m":"stx","oa":11745,"o":"irq_spr345_row2_y"},{"a":13672,"t":"code","b":[24],"m":"clc"},{"a":13673,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13675,"t":"code","b":[141,241,45],"m":"sta","oa":11761,"o":"irq_spr345_row2_line"},{"a":13678,"t":"code","b":[170],"m":"tax"},{"a":13679,"t":"code","b":[232],"m":"inx"},{"a":13680,"t":"code","b":[142,28,46],"m":"stx","oa":11804,"o":"irq_spr345_row3_y"},{"a":13683,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13685,"t":"code","b":[141,44,46],"m":"sta","oa":11820,"o":"irq_spr345_row3_line"},{"a":13688,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13691,"l":"mux_front_low_far","c":"Front fighter $16 or more lines lower: chain $2DD6 (back row 2), $2E11 (back row 3), $2D62 (front row 2), $2D9C (front row 3), then the $D9 handler.","t":"code","b":[32,199,54],"m":"jsr","oa":14023,"o":"patch_ptrs_back_row2","x":[13050]},{"a":13694,"t":"code","b":[32,217,54],"m":"jsr","oa":14041,"o":"patch_ptrs_back_row3"},{"a":13697,"t":"code","b":[32,163,54],"m":"jsr","oa":13987,"o":"patch_ptrs_front_row2"},{"a":13700,"t":"code","b":[32,181,54],"m":"jsr","oa":14005,"o":"patch_ptrs_front_row3"},{"a":13703,"t":"code","b":[169,214],"m":"lda","o":"#$D6"},{"a":13705,"t":"code","b":[141,204,47],"m":"sta","oa":12236,"o":"irq_line90_next_lo"},{"a":13708,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13710,"t":"code","b":[141,209,47],"m":"sta","oa":12241,"o":"irq_line90_next_hi"},{"a":13713,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":13715,"t":"code","b":[141,246,45],"m":"sta","oa":11766,"o":"irq_spr345_row2_next_lo"},{"a":13718,"t":"code","b":[169,46],"m":"lda","o":"#$2E"},{"a":13720,"t":"code","b":[141,11,46],"m":"sta","oa":11787,"o":"irq_spr345_row2_next_hi"},{"a":13723,"t":"code","b":[169,98],"m":"lda","o":"#$62"},{"a":13725,"t":"code","b":[141,49,46],"m":"sta","oa":11825,"o":"irq_spr345_row3_next_lo"},{"a":13728,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13730,"t":"code","b":[141,70,46],"m":"sta","oa":11846,"o":"irq_spr345_row3_next_hi"},{"a":13733,"t":"code","b":[169,156],"m":"lda","o":"#$9C"},{"a":13735,"t":"code","b":[141,130,45],"m":"sta","oa":11650,"o":"irq_spr012_row2_next_lo"},{"a":13738,"t":"code","b":[169,45],"m":"lda","o":"#$2D"},{"a":13740,"t":"code","b":[141,150,45],"m":"sta","oa":11670,"o":"irq_spr012_row2_next_hi"},{"a":13743,"t":"code","b":[165,37],"m":"lda","oa":37,"o":"after_mux_irq"},{"a":13745,"t":"code","b":[141,188,45],"m":"sta","oa":11708,"o":"irq_spr012_row3_next_lo"},{"a":13748,"t":"code","b":[165,38],"m":"lda","oa":38,"o":"after_mux_irq_hi"},{"a":13750,"t":"code","b":[141,208,45],"m":"sta","oa":11728,"o":"irq_spr012_row3_next_hi"},{"a":13753,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13755,"t":"code","b":[24],"m":"clc"},{"a":13756,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13758,"t":"code","b":[141,199,47],"m":"sta","oa":12231,"o":"irq_line90_next_line"},{"a":13761,"t":"code","b":[170],"m":"tax"},{"a":13762,"t":"code","b":[232],"m":"inx"},{"a":13763,"t":"code","b":[142,225,45],"m":"stx","oa":11745,"o":"irq_spr345_row2_y"},{"a":13766,"t":"code","b":[24],"m":"clc"},{"a":13767,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13769,"t":"code","b":[141,241,45],"m":"sta","oa":11761,"o":"irq_spr345_row2_line"},{"a":13772,"t":"code","b":[170],"m":"tax"},{"a":13773,"t":"code","b":[232],"m":"inx"},{"a":13774,"t":"code","b":[142,28,46],"m":"stx","oa":11804,"o":"irq_spr345_row3_y"},{"a":13777,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13779,"t":"code","b":[24],"m":"clc"},{"a":13780,"t":"code","b":[105,20],"m":"adc","o":"#$14"},{"a":13782,"t":"code","b":[141,44,46],"m":"sta","oa":11820,"o":"irq_spr345_row3_line"},{"a":13785,"t":"code","b":[170],"m":"tax"},{"a":13786,"t":"code","b":[232],"m":"inx"},{"a":13787,"t":"code","b":[142,109,45],"m":"stx","oa":11629,"o":"irq_spr012_row2_y"},{"a":13790,"t":"code","b":[24],"m":"clc"},{"a":13791,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":13793,"t":"code","b":[141,125,45],"m":"sta","oa":11645,"o":"irq_spr012_row2_line"},{"a":13796,"t":"code","b":[170],"m":"tax"},{"a":13797,"t":"code","b":[232],"m":"inx"},{"a":13798,"t":"code","b":[142,167,45],"m":"stx","oa":11687,"o":"irq_spr012_row3_y"},{"a":13801,"t":"code","b":[169,217],"m":"lda","o":"#$D9"},{"a":13803,"t":"code","b":[141,183,45],"m":"sta","oa":11703,"o":"irq_spr012_row3_line"},{"a":13806,"t":"code","b":[76,241,53],"m":"jmp","oa":13809,"o":"mux_set_row1"},{"a":13809,"l":"mux_set_row1","c":"Top rows of both fighters, set inside the line-0 IRQ: pointers $02/$04/$06,X to $CFF8-$CFFA (fighter $20) and $CFFB-$CFFD (fighter $21), Y $1C to sprites 0-2 and $1D to sprites 3-5, colour $22,X to $D027-$D029 / $D02A-$D02C, X $1A/$1B with columns 24 pixels apart, and the $D010 bits from xmsb_bits_spr012/345 (bits 6-7 kept). Returns from the interrupt.","t":"code","b":[88],"m":"cli","x":[13138,13256,13374,13472,13570,13688,13806]},{"a":13810,"t":"code","b":[120],"m":"sei"},{"a":13811,"t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter"},{"a":13813,"t":"code","b":[181,2],"m":"lda","oa":2,"o":"fighter_ptr_r1c1,x"},{"a":13815,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"a_CFF8"},{"a":13818,"t":"code","b":[181,4],"m":"lda","oa":4,"o":"fighter_ptr_r1c2,x"},{"a":13820,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"a_CFF9"},{"a":13823,"t":"code","b":[181,6],"m":"lda","oa":6,"o":"fighter_ptr_r1c3,x"},{"a":13825,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"a_CFFA"},{"a":13828,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":13830,"t":"code","b":[181,2],"m":"lda","oa":2,"o":"fighter_ptr_r1c1,x"},{"a":13832,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"a_CFFB"},{"a":13835,"t":"code","b":[181,4],"m":"lda","oa":4,"o":"fighter_ptr_r1c2,x"},{"a":13837,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"a_CFFC"},{"a":13840,"t":"code","b":[181,6],"m":"lda","oa":6,"o":"fighter_ptr_r1c3,x"},{"a":13842,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"a_CFFD"},{"a":13845,"t":"code","b":[88],"m":"cli"},{"a":13846,"t":"code","b":[120],"m":"sei"},{"a":13847,"t":"code","b":[165,29],"m":"lda","oa":29,"o":"mux_b_y"},{"a":13849,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":13852,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":13855,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":13858,"t":"code","b":[165,28],"m":"lda","oa":28,"o":"mux_a_y"},{"a":13860,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":13863,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":13866,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":13869,"t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter"},{"a":13871,"t":"code","b":[181,34],"m":"lda","oa":34,"o":"fighter_colour,x"},{"a":13873,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":13876,"t":"code","b":[141,40,208],"m":"sta","o":"vic_sprite1_colour"},{"a":13879,"t":"code","b":[141,41,208],"m":"sta","o":"vic_sprite2_colour"},{"a":13882,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":13884,"t":"code","b":[181,34],"m":"lda","oa":34,"o":"fighter_colour,x"},{"a":13886,"t":"code","b":[141,42,208],"m":"sta","o":"vic_sprite3_colour"},{"a":13889,"t":"code","b":[141,43,208],"m":"sta","o":"vic_sprite4_colour"},{"a":13892,"t":"code","b":[141,44,208],"m":"sta","o":"vic_sprite5_colour"},{"a":13895,"t":"code","b":[88],"m":"cli"},{"a":13896,"t":"code","b":[120],"m":"sei"},{"a":13897,"t":"code","b":[166,30],"m":"ldx","oa":30,"o":"mux_a_xhi"},{"a":13899,"t":"code","b":[165,26],"m":"lda","oa":26,"o":"mux_a_x"},{"a":13901,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":13904,"t":"code","b":[24],"m":"clc"},{"a":13905,"t":"code","b":[105,24],"m":"adc","o":"#$18"},{"a":13907,"t":"code","b":[141,2,208],"m":"sta","o":"vic_sprite1_x"},{"a":13910,"t":"code","b":[144,3],"m":"bcc","oa":13915,"o":"b_365B"},{"a":13912,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":13914,"t":"code","b":[24],"m":"clc"},{"a":13915,"l":"b_365B","t":"code","b":[105,24],"m":"adc","o":"#$18","x":[13910]},{"a":13917,"t":"code","b":[141,4,208],"m":"sta","o":"vic_sprite2_x"},{"a":13920,"t":"code","b":[144,2],"m":"bcc","oa":13924,"o":"b_3664"},{"a":13922,"t":"code","b":[162,3],"m":"ldx","o":"#$03"},{"a":13924,"l":"b_3664","t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb","x":[13920]},{"a":13927,"t":"code","b":[41,192],"m":"and","o":"#$C0"},{"a":13929,"t":"code","b":[29,155,54],"m":"ora","oa":13979,"o":"xmsb_bits_spr012,x"},{"a":13932,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":13935,"t":"code","b":[88],"m":"cli"},{"a":13936,"t":"code","b":[120],"m":"sei"},{"a":13937,"t":"code","b":[166,31],"m":"ldx","oa":31,"o":"mux_b_xhi"},{"a":13939,"t":"code","b":[165,27],"m":"lda","oa":27,"o":"mux_b_x"},{"a":13941,"t":"code","b":[141,6,208],"m":"sta","o":"vic_sprite3_x"},{"a":13944,"t":"code","b":[24],"m":"clc"},{"a":13945,"t":"code","b":[105,24],"m":"adc","o":"#$18"},{"a":13947,"t":"code","b":[141,8,208],"m":"sta","o":"vic_sprite4_x"},{"a":13950,"t":"code","b":[144,3],"m":"bcc","oa":13955,"o":"b_3683"},{"a":13952,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":13954,"t":"code","b":[24],"m":"clc"},{"a":13955,"l":"b_3683","t":"code","b":[105,24],"m":"adc","o":"#$18","x":[13950]},{"a":13957,"t":"code","b":[141,10,208],"m":"sta","o":"vic_sprite5_x"},{"a":13960,"t":"code","b":[144,2],"m":"bcc","oa":13964,"o":"b_368C"},{"a":13962,"t":"code","b":[162,3],"m":"ldx","o":"#$03"},{"a":13964,"l":"b_368C","t":"code","b":[189,159,54],"m":"lda","oa":13983,"o":"xmsb_bits_spr345,x","x":[13960]},{"a":13967,"t":"code","b":[13,16,208],"m":"ora","o":"vic_sprite_x_msb"},{"a":13970,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":13973,"t":"code","b":[104],"m":"pla"},{"a":13974,"t":"code","b":[170],"m":"tax"},{"a":13975,"t":"code","b":[104],"m":"pla"},{"a":13976,"t":"code","b":[168],"m":"tay"},{"a":13977,"t":"code","b":[104],"m":"pla"},{"a":13978,"t":"code","b":[64],"m":"rti"},{"a":13979,"l":"xmsb_bits_spr012","c":"$D010 bits for sprites 0-2 by index 0-3: 0 none, 1 all three ($07; the fighter's X high bit $1E set), 2 columns 1-2 ($06), 3 column 2 only ($04); the index is raised to 2 or 3 when adding 24 for a column carries ($3656, $3660).","t":"byte","b":[0,7,6,4],"x":[13929]},{"a":13983,"l":"xmsb_bits_spr345","c":"$D010 bits for sprites 3-5 by the same index (from $1F and the carries at $367E, $3688): $00, $38, $30, $20.","t":"byte","b":[0,56,48,32],"x":[13964]},{"a":13987,"l":"patch_ptrs_front_row2","c":"Write fighter $20's row-2 pointers ($08/$0A/$0C,X) into the $2D62 handler's operands $2D87/$2D8C/$2D91 (sprites 0-2).","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13141,13262,13377,13573,13697]},{"a":13989,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":13991,"t":"code","b":[141,135,45],"m":"sta","oa":11655,"o":"irq_spr012_row2_ptr0"},{"a":13994,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":13996,"t":"code","b":[141,140,45],"m":"sta","oa":11660,"o":"irq_spr012_row2_ptr1"},{"a":13999,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14001,"t":"code","b":[141,145,45],"m":"sta","oa":11665,"o":"irq_spr012_row2_ptr2"},{"a":14004,"t":"code","b":[96],"m":"rts"},{"a":14005,"l":"patch_ptrs_front_row3","c":"Write fighter $20's row-3 pointers ($0E/$10/$12,X) into the $2D9C handler's operands $2DC1/$2DC6/$2DCB.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13147,13268,13481,13576,13700]},{"a":14007,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14009,"t":"code","b":[141,193,45],"m":"sta","oa":11713,"o":"irq_spr012_row3_ptr0"},{"a":14012,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14014,"t":"code","b":[141,198,45],"m":"sta","oa":11718,"o":"irq_spr012_row3_ptr1"},{"a":14017,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14019,"t":"code","b":[141,203,45],"m":"sta","oa":11723,"o":"irq_spr012_row3_ptr2"},{"a":14022,"t":"code","b":[96],"m":"rts"},{"a":14023,"l":"patch_ptrs_back_row2","c":"Write fighter $21's row-2 pointers ($08/$0A/$0C,X) into the $2DD6 handler's operands $2DFC/$2E01/$2E06 (sprites 3-5).","t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter","x":[13144,13259,13475,13579,13691]},{"a":14025,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14027,"t":"code","b":[141,252,45],"m":"sta","oa":11772,"o":"irq_spr345_row2_ptr0"},{"a":14030,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14032,"t":"code","b":[141,1,46],"m":"sta","oa":11777,"o":"irq_spr345_row2_ptr1"},{"a":14035,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14037,"t":"code","b":[141,6,46],"m":"sta","oa":11782,"o":"irq_spr345_row2_ptr2"},{"a":14040,"t":"code","b":[96],"m":"rts"},{"a":14041,"l":"patch_ptrs_back_row3","c":"Write fighter $21's row-3 pointers ($0E/$10/$12,X) into the $2E11 handler's operands $2E37/$2E3C/$2E41.","t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter","x":[13150,13265,13383,13582,13694]},{"a":14043,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14045,"t":"code","b":[141,55,46],"m":"sta","oa":11831,"o":"irq_spr345_row3_ptr0"},{"a":14048,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14050,"t":"code","b":[141,60,46],"m":"sta","oa":11836,"o":"irq_spr345_row3_ptr1"},{"a":14053,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14055,"t":"code","b":[141,65,46],"m":"sta","oa":11841,"o":"irq_spr345_row3_ptr2"},{"a":14058,"t":"code","b":[96],"m":"rts"},{"a":14059,"l":"patch_ptrs_both_row2","c":"Same-height case: row-2 pointers of fighter $20 to $2E7E/$2E83/$2E88 and of fighter $21 to $2E8D/$2E92/$2E97, the operands of the six-sprite handler $2E4C.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13063]},{"a":14061,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14063,"t":"code","b":[141,126,46],"m":"sta","oa":11902,"o":"irq_all_row2_ptr0120"},{"a":14066,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14068,"t":"code","b":[141,131,46],"m":"sta","oa":11907,"o":"irq_all_row2_ptr0121"},{"a":14071,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14073,"t":"code","b":[141,136,46],"m":"sta","oa":11912,"o":"irq_all_row2_ptr0122"},{"a":14076,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14078,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14080,"t":"code","b":[141,141,46],"m":"sta","oa":11917,"o":"irq_all_row2_ptr3450"},{"a":14083,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14085,"t":"code","b":[141,146,46],"m":"sta","oa":11922,"o":"irq_all_row2_ptr3451"},{"a":14088,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14090,"t":"code","b":[141,151,46],"m":"sta","oa":11927,"o":"irq_all_row2_ptr3452"},{"a":14093,"t":"code","b":[96],"m":"rts"},{"a":14094,"l":"patch_ptrs_both_row3","c":"Same-height case: row-3 pointers of fighter $20 to $2ED9/$2EDE/$2EE3 and of fighter $21 to $2EE8/$2EED/$2EF2, in handler $2EA7.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13066]},{"a":14096,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14098,"t":"code","b":[141,217,46],"m":"sta","oa":11993,"o":"irq_all_row3_ptr0120"},{"a":14101,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14103,"t":"code","b":[141,222,46],"m":"sta","oa":11998,"o":"irq_all_row3_ptr0121"},{"a":14106,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14108,"t":"code","b":[141,227,46],"m":"sta","oa":12003,"o":"irq_all_row3_ptr0122"},{"a":14111,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14113,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14115,"t":"code","b":[141,232,46],"m":"sta","oa":12008,"o":"irq_all_row3_ptr3450"},{"a":14118,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14120,"t":"code","b":[141,237,46],"m":"sta","oa":12013,"o":"irq_all_row3_ptr3451"},{"a":14123,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14125,"t":"code","b":[141,242,46],"m":"sta","oa":12018,"o":"irq_all_row3_ptr3452"},{"a":14128,"t":"code","b":[96],"m":"rts"},{"a":14129,"l":"patch_ptrs_mixed_a","c":"For handler $2F02 (back fighter $14 lower): fighter $20's row 3 ($0E/$10/$12) to $2F49/$2F4E/$2F53 (sprites 0-2) and fighter $21's row 2 ($08/$0A/$0C) to $2F37/$2F3C/$2F41 (sprites 3-5).","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13380]},{"a":14131,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14133,"t":"code","b":[141,73,47],"m":"sta","oa":12105,"o":"irq_b2a3_ptr0120"},{"a":14136,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14138,"t":"code","b":[141,78,47],"m":"sta","oa":12110,"o":"irq_b2a3_ptr0121"},{"a":14141,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14143,"t":"code","b":[141,83,47],"m":"sta","oa":12115,"o":"irq_b2a3_ptr0122"},{"a":14146,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14148,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14150,"t":"code","b":[141,55,47],"m":"sta","oa":12087,"o":"irq_b2a3_ptr3450"},{"a":14153,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14155,"t":"code","b":[141,60,47],"m":"sta","oa":12092,"o":"irq_b2a3_ptr3451"},{"a":14158,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14160,"t":"code","b":[141,65,47],"m":"sta","oa":12097,"o":"irq_b2a3_ptr3452"},{"a":14163,"t":"code","b":[96],"m":"rts"},{"a":14164,"l":"patch_ptrs_mixed_a_unused","c":"The rows of patch_ptrs_mixed_a the other way round (fighter $20 row 2, fighter $21 row 3, same operands in $2F02). No caller found by a scan of JSR, JMP and address bytes $54 $37; unused.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter"},{"a":14166,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14168,"t":"code","b":[141,73,47],"m":"sta","oa":12105,"o":"irq_b2a3_ptr0120"},{"a":14171,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14173,"t":"code","b":[141,78,47],"m":"sta","oa":12110,"o":"irq_b2a3_ptr0121"},{"a":14176,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14178,"t":"code","b":[141,83,47],"m":"sta","oa":12115,"o":"irq_b2a3_ptr0122"},{"a":14181,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14183,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14185,"t":"code","b":[141,55,47],"m":"sta","oa":12087,"o":"irq_b2a3_ptr3450"},{"a":14188,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14190,"t":"code","b":[141,60,47],"m":"sta","oa":12092,"o":"irq_b2a3_ptr3451"},{"a":14193,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14195,"t":"code","b":[141,65,47],"m":"sta","oa":12097,"o":"irq_b2a3_ptr3452"},{"a":14198,"t":"code","b":[96],"m":"rts"},{"a":14199,"l":"patch_ptrs_mixed_b","c":"For handler $2F59 (front fighter $14 lower): fighter $20's row 2 to $2F8E/$2F93/$2F98 and fighter $21's row 3 to $2FA0/$2FA5/$2FAA.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter","x":[13478]},{"a":14201,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14203,"t":"code","b":[141,142,47],"m":"sta","oa":12174,"o":"irq_a2b3_ptr0120"},{"a":14206,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14208,"t":"code","b":[141,147,47],"m":"sta","oa":12179,"o":"irq_a2b3_ptr0121"},{"a":14211,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14213,"t":"code","b":[141,152,47],"m":"sta","oa":12184,"o":"irq_a2b3_ptr0122"},{"a":14216,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14218,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14220,"t":"code","b":[141,160,47],"m":"sta","oa":12192,"o":"irq_a2b3_ptr3450"},{"a":14223,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14225,"t":"code","b":[141,165,47],"m":"sta","oa":12197,"o":"irq_a2b3_ptr3451"},{"a":14228,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14230,"t":"code","b":[141,170,47],"m":"sta","oa":12202,"o":"irq_a2b3_ptr3452"},{"a":14233,"t":"code","b":[96],"m":"rts"},{"a":14234,"l":"patch_ptrs_mixed_b_unused","c":"The rows of patch_ptrs_mixed_b the other way round (fighter $20 row 3, fighter $21 row 2). No caller found; unused.","t":"code","b":[166,32],"m":"ldx","oa":32,"o":"mux_a_fighter"},{"a":14236,"t":"code","b":[181,14],"m":"lda","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":14238,"t":"code","b":[141,142,47],"m":"sta","oa":12174,"o":"irq_a2b3_ptr0120"},{"a":14241,"t":"code","b":[181,16],"m":"lda","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":14243,"t":"code","b":[141,147,47],"m":"sta","oa":12179,"o":"irq_a2b3_ptr0121"},{"a":14246,"t":"code","b":[181,18],"m":"lda","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":14248,"t":"code","b":[141,152,47],"m":"sta","oa":12184,"o":"irq_a2b3_ptr0122"},{"a":14251,"t":"code","b":[166,33],"m":"ldx","oa":33,"o":"mux_b_fighter"},{"a":14253,"t":"code","b":[181,8],"m":"lda","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":14255,"t":"code","b":[141,160,47],"m":"sta","oa":12192,"o":"irq_a2b3_ptr3450"},{"a":14258,"t":"code","b":[181,10],"m":"lda","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":14260,"t":"code","b":[141,165,47],"m":"sta","oa":12197,"o":"irq_a2b3_ptr3451"},{"a":14263,"t":"code","b":[181,12],"m":"lda","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":14265,"t":"code","b":[141,170,47],"m":"sta","oa":12202,"o":"irq_a2b3_ptr3452"},{"a":14268,"t":"code","b":[96],"m":"rts"},{"a":14269,"l":"fighter_animate","c":"One animation tick for fighter X (0 or 1): nothing if its animation $45,X is 0; starts it with anim_start when $47,X is 0, then anim_tick. Called from $1328, $135E, $13D5, $1427, $1A85, $1A8A, $1E35, $1E50.","t":"code","b":[181,69],"m":"lda","oa":69,"o":"anim_request,x","x":[4904,4958,5077,5159,6789,6794,7733,7760,7765,11117,11448]},{"a":14271,"t":"code","b":[240,10],"m":"beq","oa":14283,"o":"r_37CB"},{"a":14273,"t":"code","b":[181,71],"m":"lda","oa":71,"o":"anim_loaded,x"},{"a":14275,"t":"code","b":[208,3],"m":"bne","oa":14280,"o":"b_37C8"},{"a":14277,"t":"code","b":[32,133,56],"m":"jsr","oa":14469,"o":"anim_start"},{"a":14280,"l":"b_37C8","t":"code","b":[32,204,55],"m":"jsr","oa":14284,"o":"anim_tick","x":[14275]},{"a":14283,"l":"r_37CB","t":"code","b":[96],"m":"rts","x":[14271]},{"a":14284,"l":"anim_tick","c":"Count down the frame time $49,X. Not expired: $88,X = 0 and only the step's motion is applied ($3837). Expired: $88,X = 1 and the next 4-byte step is taken, forwards (offset $4D,X + 4, finished at $5B,X) or backwards when $4B,X is set (offset - 4, finished at 0). Finished: $45,X = 0, $59,X = 1, $49,X = 1. A step is read from the list at word $7720 + 2 x $45,X: frame time to $49,X, shape frame to $51,X, X step to $55,X, Y step to $57,X; then build_fighter_sprites.","t":"code","b":[214,73],"m":"dec","oa":73,"o":"anim_timer,x","x":[14280]},{"a":14286,"t":"code","b":[240,8],"m":"beq","oa":14296,"o":"anim_next_step"},{"a":14288,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":14290,"t":"code","b":[149,136],"m":"sta","oa":136,"o":"anim_new_step,x"},{"a":14292,"t":"code","b":[76,55,56],"m":"jmp","oa":14391,"o":"anim_apply_motion"},{"a":14295,"t":"gap","n":1},{"a":14296,"l":"anim_next_step","c":"Frame time expired: flag $88,X = 1, then step the offset $4D,X by 4 in the direction $4B,X, end the animation at either end of its list ($45,X = 0, $59,X = 1), or load the step at $380F. (The byte before, $37D7, is an RTS that nothing reaches.)","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[14286]},{"a":14298,"t":"code","b":[149,136],"m":"sta","oa":136,"o":"anim_new_step,x"},{"a":14300,"t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x"},{"a":14302,"t":"code","b":[240,23],"m":"beq","oa":14327,"o":"b_37F7"},{"a":14304,"t":"code","b":[181,77],"m":"lda","oa":77,"o":"anim_offset,x"},{"a":14306,"t":"code","b":[208,13],"m":"bne","oa":14321,"o":"b_37F1"},{"a":14308,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":14310,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":14312,"t":"code","b":[149,89],"m":"sta","oa":89,"o":"anim_ended,x"},{"a":14314,"t":"code","b":[149,73],"m":"sta","oa":73,"o":"anim_timer,x"},{"a":14316,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":14318,"t":"code","b":[149,136],"m":"sta","oa":136,"o":"anim_new_step,x"},{"a":14320,"t":"code","b":[96],"m":"rts"},{"a":14321,"l":"b_37F1","t":"code","b":[56],"m":"sec","x":[14306]},{"a":14322,"t":"code","b":[233,4],"m":"sbc","o":"#$04"},{"a":14324,"t":"code","b":[76,15,56],"m":"jmp","oa":14351,"o":"j_380F"},{"a":14327,"l":"b_37F7","t":"code","b":[181,77],"m":"lda","oa":77,"o":"anim_offset,x","x":[14302]},{"a":14329,"t":"code","b":[24],"m":"clc"},{"a":14330,"t":"code","b":[105,4],"m":"adc","o":"#$04"},{"a":14332,"t":"code","b":[213,91],"m":"cmp","oa":91,"o":"anim_length,x"},{"a":14334,"t":"code","b":[208,15],"m":"bne","oa":14351,"o":"j_380F"},{"a":14336,"t":"code","b":[149,77],"m":"sta","oa":77,"o":"anim_offset,x"},{"a":14338,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":14340,"t":"code","b":[149,69],"m":"sta","oa":69,"o":"anim_request,x"},{"a":14342,"t":"code","b":[149,136],"m":"sta","oa":136,"o":"anim_new_step,x"},{"a":14344,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":14346,"t":"code","b":[149,89],"m":"sta","oa":89,"o":"anim_ended,x"},{"a":14348,"t":"code","b":[149,73],"m":"sta","oa":73,"o":"anim_timer,x"},{"a":14350,"t":"code","b":[96],"m":"rts"},{"a":14351,"l":"j_380F","t":"code","b":[149,77],"m":"sta","oa":77,"o":"anim_offset,x","x":[14324,14334]},{"a":14353,"t":"code","b":[181,69],"m":"lda","oa":69,"o":"anim_request,x"},{"a":14355,"t":"code","b":[10],"m":"asl","o":"a"},{"a":14356,"t":"code","b":[168],"m":"tay"},{"a":14357,"t":"code","b":[185,32,119],"m":"lda","oa":30496,"o":"anim_list_table,y"},{"a":14360,"t":"code","b":[133,79],"m":"sta","oa":79,"o":"anim_list_ptr"},{"a":14362,"t":"code","b":[185,33,119],"m":"lda","oa":30497,"o":"anim_list_table_hi,y"},{"a":14365,"t":"code","b":[133,80],"m":"sta","oa":80,"o":"anim_list_ptr_hi"},{"a":14367,"t":"code","b":[180,77],"m":"ldy","oa":77,"o":"anim_offset,x"},{"a":14369,"t":"code","b":[177,79],"m":"lda","oa":79,"o":"(anim_list_ptr),y"},{"a":14371,"t":"code","b":[149,73],"m":"sta","oa":73,"o":"anim_timer,x"},{"a":14373,"t":"code","b":[200],"m":"iny"},{"a":14374,"t":"code","b":[177,79],"m":"lda","oa":79,"o":"(anim_list_ptr),y"},{"a":14376,"t":"code","b":[149,81],"m":"sta","oa":81,"o":"fighter_frame,x"},{"a":14378,"t":"code","b":[200],"m":"iny"},{"a":14379,"t":"code","b":[177,79],"m":"lda","oa":79,"o":"(anim_list_ptr),y"},{"a":14381,"t":"code","b":[149,85],"m":"sta","oa":85,"o":"anim_dx,x"},{"a":14383,"t":"code","b":[200],"m":"iny"},{"a":14384,"t":"code","b":[177,79],"m":"lda","oa":79,"o":"(anim_list_ptr),y"},{"a":14386,"t":"code","b":[149,87],"m":"sta","oa":87,"o":"anim_dy,x"},{"a":14388,"t":"code","b":[32,20,57],"m":"jsr","oa":14612,"o":"build_fighter_sprites"},{"a":14391,"l":"anim_apply_motion","c":"Apply the step's motion every tick: $6C,X += $57,X and screen Y $16,X = 2 x $6C,X; $6A,X moves by $55,X, forwards when the facing $53,X equals the direction flag $4B,X and backwards otherwise. For shape frames below $3B it is clamped to the limits $12E9,Y / $12EB,Y (Y = facing; also when the sum wrapped to $C8 or more). Screen X $14,X = 2 x $6A,X, high bit to $18,X.","t":"code","b":[24],"m":"clc","x":[14292]},{"a":14392,"t":"code","b":[181,108],"m":"lda","oa":108,"o":"fighter_y,x"},{"a":14394,"t":"code","b":[117,87],"m":"adc","oa":87,"o":"anim_dy,x"},{"a":14396,"t":"code","b":[149,108],"m":"sta","oa":108,"o":"fighter_y,x"},{"a":14398,"t":"code","b":[10],"m":"asl","o":"a"},{"a":14399,"t":"code","b":[149,22],"m":"sta","oa":22,"o":"fighter_spr_y,x"},{"a":14401,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":14403,"t":"code","b":[85,75],"m":"eor","oa":75,"o":"anim_reverse,x"},{"a":14405,"t":"code","b":[208,54],"m":"bne","oa":14461,"o":"b_387D"},{"a":14407,"t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x"},{"a":14409,"t":"code","b":[24],"m":"clc"},{"a":14410,"t":"code","b":[117,85],"m":"adc","oa":85,"o":"anim_dx,x"},{"a":14412,"l":"j_384C","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14466]},{"a":14414,"t":"code","b":[192,59],"m":"cpy","o":"#$3B"},{"a":14416,"t":"code","b":[176,24],"m":"bcs","oa":14442,"o":"b_386A"},{"a":14418,"t":"code","b":[180,83],"m":"ldy","oa":83,"o":"fighter_facing,x"},{"a":14420,"t":"code","b":[201,200],"m":"cmp","o":"#$C8"},{"a":14422,"t":"code","b":[176,5],"m":"bcs","oa":14429,"o":"b_385D"},{"a":14424,"t":"code","b":[217,233,18],"m":"cmp","oa":4841,"o":"x_min_by_facing,y"},{"a":14427,"t":"code","b":[176,5],"m":"bcs","oa":14434,"o":"b_3862"},{"a":14429,"l":"b_385D","t":"code","b":[185,233,18],"m":"lda","oa":4841,"o":"x_min_by_facing,y","x":[14422]},{"a":14432,"t":"code","b":[144,8],"m":"bcc","oa":14442,"o":"b_386A"},{"a":14434,"l":"b_3862","t":"code","b":[217,235,18],"m":"cmp","oa":4843,"o":"x_max_by_facing,y","x":[14427]},{"a":14437,"t":"code","b":[144,3],"m":"bcc","oa":14442,"o":"b_386A"},{"a":14439,"t":"code","b":[185,235,18],"m":"lda","oa":4843,"o":"x_max_by_facing,y"},{"a":14442,"l":"b_386A","t":"code","b":[149,106],"m":"sta","oa":106,"o":"fighter_x,x","x":[14416,14432,14437]},{"a":14444,"t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x"},{"a":14446,"t":"code","b":[10],"m":"asl","o":"a"},{"a":14447,"t":"code","b":[149,20],"m":"sta","oa":20,"o":"fighter_spr_x,x"},{"a":14449,"t":"code","b":[144,5],"m":"bcc","oa":14456,"o":"b_3878"},{"a":14451,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":14453,"t":"code","b":[149,24],"m":"sta","oa":24,"o":"fighter_spr_x_hi,x"},{"a":14455,"t":"code","b":[96],"m":"rts"},{"a":14456,"l":"b_3878","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[14449]},{"a":14458,"t":"code","b":[149,24],"m":"sta","oa":24,"o":"fighter_spr_x_hi,x"},{"a":14460,"t":"code","b":[96],"m":"rts"},{"a":14461,"l":"b_387D","t":"code","b":[181,106],"m":"lda","oa":106,"o":"fighter_x,x","x":[14405]},{"a":14463,"t":"code","b":[56],"m":"sec"},{"a":14464,"t":"code","b":[245,85],"m":"sbc","oa":85,"o":"anim_dx,x"},{"a":14466,"t":"code","b":[76,76,56],"m":"jmp","oa":14412,"o":"j_384C"},{"a":14469,"l":"anim_start","c":"Start the animation in $45,X: $59,X = $55,X = $57,X = 0, $49,X = 1 (so the first tick takes a step), $47,X = $45,X, length $5B,X = low byte of the next list's address minus this one's ($7722/$7720 words), and offset $4D,X = $FC (forwards, first step 0) or $5B,X (backwards, when $4B,X is set). Also called from $2AEA.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[10986,14277]},{"a":14471,"t":"code","b":[149,89],"m":"sta","oa":89,"o":"anim_ended,x"},{"a":14473,"t":"code","b":[149,85],"m":"sta","oa":85,"o":"anim_dx,x"},{"a":14475,"t":"code","b":[149,87],"m":"sta","oa":87,"o":"anim_dy,x"},{"a":14477,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":14479,"t":"code","b":[149,73],"m":"sta","oa":73,"o":"anim_timer,x"},{"a":14481,"t":"code","b":[181,69],"m":"lda","oa":69,"o":"anim_request,x"},{"a":14483,"t":"code","b":[149,71],"m":"sta","oa":71,"o":"anim_loaded,x"},{"a":14485,"t":"code","b":[181,69],"m":"lda","oa":69,"o":"anim_request,x"},{"a":14487,"t":"code","b":[10],"m":"asl","o":"a"},{"a":14488,"t":"code","b":[168],"m":"tay"},{"a":14489,"t":"code","b":[185,34,119],"m":"lda","oa":30498,"o":"anim_list_table_next,y"},{"a":14492,"t":"code","b":[56],"m":"sec"},{"a":14493,"t":"code","b":[249,32,119],"m":"sbc","oa":30496,"o":"anim_list_table,y"},{"a":14496,"t":"code","b":[149,91],"m":"sta","oa":91,"o":"anim_length,x"},{"a":14498,"t":"code","b":[181,75],"m":"lda","oa":75,"o":"anim_reverse,x"},{"a":14500,"t":"code","b":[208,5],"m":"bne","oa":14507,"o":"b_38AB"},{"a":14502,"t":"code","b":[169,252],"m":"lda","o":"#$FC"},{"a":14504,"t":"code","b":[149,77],"m":"sta","oa":77,"o":"anim_offset,x"},{"a":14506,"t":"code","b":[96],"m":"rts"},{"a":14507,"l":"b_38AB","t":"code","b":[181,91],"m":"lda","oa":91,"o":"anim_length,x","x":[14500]},{"a":14509,"t":"code","b":[149,77],"m":"sta","oa":77,"o":"anim_offset,x"},{"a":14511,"t":"code","b":[96],"m":"rts"},{"a":14512,"l":"cell_lo_offsets","c":"Low byte of a 64-byte sprite cell by cell number AND 3: $00 $40 $80 $C0 (the high byte comes from $7F00).","t":"byte","b":[0,64,128,192],"x":[14691,14743,14795,14847,14899,14951,15003,15055,15107,15953]},{"a":14516,"l":"sprite_ptr_presets","c":"Nine sprite pointers per buffer, copied to $7A-$82 before a build: buffer 0 $01-$09 (data at $C040), buffer 1 $0A-$12 at $38BD ($C280); buffers 2 and 3 follow at $38C6 and $38CF.","t":"byte","b":[1,2,3,4,5,6,7,8],"x":[14657]},{"a":14524,"t":"byte","b":[9,10,11,12,13,14,15,16]},{"a":14532,"t":"byte","b":[17,18]},{"a":14534,"l":"sprite_ptr_presets_2","c":"Presets for buffer 2 ($13-$1B, data at $C4C0) and at $38CF buffer 3 ($1C-$24, $C700); the operand of $3BFF assembles as this address.","t":"byte","b":[19,20,21,22,23,24,25,26],"x":[15359]},{"a":14542,"t":"byte","b":[27,28,29,30,31,32,33,34]},{"a":14550,"t":"byte","b":[35,36]},{"a":14552,"l":"sprite_ptr_presets_rev","c":"Four more sets of nine pointers with the columns reversed (03 02 01 06 05 04 ...). The preset address tables index only the first four sets, so these are not read: unused.","t":"byte","b":[3,2,1,6,5,4,9,8]},{"a":14560,"t":"byte","b":[7,12,11,10,15,14,13,18]},{"a":14568,"t":"byte","b":[17,16,21,20,19,24,23,22]},{"a":14576,"t":"byte","b":[27,26,25,30,29,28,33,32]},{"a":14584,"t":"byte","b":[31,36,35,34]},{"a":14588,"l":"preset_addr_lo","c":"Low bytes of the four preset addresses ($B4 $BD $C6 $CF = $38B4, $38BD, $38C6, $38CF) by buffer number $76,X; read by $3933 and $3BF1.","t":"byte","b":[180,189,198,207],"x":[14643,15345]},{"a":14592,"l":"preset_addr_hi","c":"High bytes ($38) of the preset addresses, read by $3939 and $3BF7; $3904-$390B hold an unread second set (low $D8 $E1 $EA $F3, high $38) that would point at sprite_ptr_presets_rev.","t":"byte","b":[56,56,56,56,216,225,234,243],"x":[14649,15351]},{"a":14600,"t":"byte","b":[56,56,56,56]},{"a":14604,"l":"sprite_buf_lo","c":"Low bytes of the four sprite buffers by buffer number: $40 $80 $C0 $00.","t":"byte","b":[64,128,192,0],"x":[14633,15301]},{"a":14608,"l":"sprite_buf_hi","c":"High bytes of the four sprite buffers: $C0 $C2 $C4 $C7, so $C040, $C280, $C4C0, $C700, 9 x 64 bytes each; fighter 0 uses buffers 0/1 and fighter 1 buffers 2/3 ($76/$77 set to 0 and 2 at $1A56).","t":"byte","b":[192,194,196,199],"x":[14638,15313]},{"a":14612,"l":"build_fighter_sprites","c":"Build fighter X's nine sprites for shape frame $51,X. With $5D non-zero, go to fighter_ptrs_direct. Otherwise flip the buffer number $76,X (double buffering), and if facing $53,X is non-zero go to the mirrored build. Each of the nine grid slots (3 columns x 3 rows) takes a cell number from its table ($7AE0, $7B2F, $7B7E, $7BCD, $7C1C, $7C6B, $7CBA, $7D09, $7D58, 79 frames each): 0 means an empty sprite (pointer 0), else 64 bytes are copied from $7F00[cell]+$5D : (cell AND 3) x $40 to the slot in the buffer ($78/$79). Ends in fighter_store_ptrs.","t":"code","b":[165,93],"m":"lda","oa":93,"o":"shape_direct","x":[6882,6887,14388]},{"a":14614,"t":"code","b":[240,3],"m":"beq","oa":14619,"o":"b_391B"},{"a":14616,"t":"code","b":[76,149,59],"m":"jmp","oa":15253,"o":"fighter_ptrs_direct"},{"a":14619,"l":"b_391B","t":"code","b":[181,118],"m":"lda","oa":118,"o":"sprite_buffer,x","x":[14614]},{"a":14621,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":14623,"t":"code","b":[149,118],"m":"sta","oa":118,"o":"sprite_buffer,x"},{"a":14625,"t":"code","b":[168],"m":"tay"},{"a":14626,"t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x"},{"a":14628,"t":"code","b":[240,3],"m":"beq","oa":14633,"o":"b_3929"},{"a":14630,"t":"code","b":[76,197,59],"m":"jmp","oa":15301,"o":"build_fighter_sprites_mirror"},{"a":14633,"l":"b_3929","t":"code","b":[185,12,57],"m":"lda","oa":14604,"o":"sprite_buf_lo,y","x":[14628]},{"a":14636,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14638,"t":"code","b":[185,16,57],"m":"lda","oa":14608,"o":"sprite_buf_hi,y"},{"a":14641,"t":"code","b":[133,121],"m":"sta","oa":121,"o":"build_dst_hi"},{"a":14643,"t":"code","b":[185,252,56],"m":"lda","oa":14588,"o":"preset_addr_lo,y"},{"a":14646,"t":"code","b":[141,66,57],"m":"sta","oa":14658,"o":"preset_src_lo"},{"a":14649,"t":"code","b":[185,0,57],"m":"lda","oa":14592,"o":"preset_addr_hi,y"},{"a":14652,"t":"code","b":[141,67,57],"m":"sta","oa":14659,"o":"preset_src_hi"},{"a":14655,"t":"code","b":[160,8],"m":"ldy","o":"#$08"},{"a":14657,"l":"b_3941","t":"code","b":[185,180,56],"m":"lda","oa":14516,"o":"sprite_ptr_presets,y","x":[14664]},{"a":14658,"t":"note","l":"preset_src_lo","c":"Operand low byte of LDA $38B4,Y at $3941: which preset set is copied to $7A-$82, written by $3936 from preset_addr_lo.","note":"inside the item at $3941","x":[14646]},{"a":14659,"t":"note","l":"preset_src_hi","c":"Operand high byte of the preset copy at $3941, written by $393C from preset_addr_hi.","note":"inside the item at $3941","x":[14652]},{"a":14660,"t":"code","b":[153,122,0],"m":"sta","oa":122,"o":"build_ptr_0,y"},{"a":14663,"t":"code","b":[136],"m":"dey"},{"a":14664,"t":"code","b":[16,247],"m":"bpl","oa":14657,"o":"b_3941"},{"a":14666,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":14668,"t":"code","b":[185,224,122],"m":"lda","oa":31456,"o":"frame_cells_slot0,y"},{"a":14671,"t":"code","b":[168],"m":"tay"},{"a":14672,"t":"code","b":[208,4],"m":"bne","oa":14678,"o":"b_3956"},{"a":14674,"t":"code","b":[133,122],"m":"sta","oa":122,"o":"build_ptr_0"},{"a":14676,"t":"code","b":[240,29],"m":"beq","oa":14707,"o":"b_3973"},{"a":14678,"l":"b_3956","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14672]},{"a":14681,"t":"code","b":[24],"m":"clc"},{"a":14682,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14684,"t":"code","b":[141,109,57],"m":"sta","oa":14701,"o":"slot0_src_hi"},{"a":14687,"t":"code","b":[152],"m":"tya"},{"a":14688,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14690,"t":"code","b":[168],"m":"tay"},{"a":14691,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14694,"t":"code","b":[141,108,57],"m":"sta","oa":14700,"o":"slot0_src_lo"},{"a":14697,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14699,"l":"b_396B","t":"code","b":[185,192,128],"m":"lda","oa":32960,"o":"shape_cell_03,y","x":[14705]},{"a":14700,"t":"note","l":"slot0_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 0 (row 0, column 0), written by $3966 from cell_lo_offsets.","note":"inside the item at $396B","x":[14694]},{"a":14701,"t":"note","l":"slot0_src_hi","c":"Operand high byte: source page for grid slot 0 (row 0, column 0), written by $395C as $7F00[cell] + $5D.","note":"inside the item at $396B","x":[14684]},{"a":14702,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14704,"t":"code","b":[136],"m":"dey"},{"a":14705,"t":"code","b":[16,248],"m":"bpl","oa":14699,"o":"b_396B"},{"a":14707,"l":"b_3973","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14676]},{"a":14709,"t":"code","b":[24],"m":"clc"},{"a":14710,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14712,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14714,"t":"code","b":[144,2],"m":"bcc","oa":14718,"o":"b_397E"},{"a":14716,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14718,"l":"b_397E","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14714]},{"a":14720,"t":"code","b":[185,47,123],"m":"lda","oa":31535,"o":"frame_cells_slot1,y"},{"a":14723,"t":"code","b":[168],"m":"tay"},{"a":14724,"t":"code","b":[208,4],"m":"bne","oa":14730,"o":"b_398A"},{"a":14726,"t":"code","b":[133,123],"m":"sta","oa":123,"o":"build_ptr_1"},{"a":14728,"t":"code","b":[240,29],"m":"beq","oa":14759,"o":"b_39A7"},{"a":14730,"l":"b_398A","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14724]},{"a":14733,"t":"code","b":[24],"m":"clc"},{"a":14734,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14736,"t":"code","b":[141,161,57],"m":"sta","oa":14753,"o":"slot1_src_hi"},{"a":14739,"t":"code","b":[152],"m":"tya"},{"a":14740,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14742,"t":"code","b":[168],"m":"tay"},{"a":14743,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14746,"t":"code","b":[141,160,57],"m":"sta","oa":14752,"o":"slot1_src_lo"},{"a":14749,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14751,"l":"b_399F","t":"code","b":[185,128,128],"m":"lda","oa":32896,"o":"shape_cell_02,y","x":[14757]},{"a":14752,"t":"note","l":"slot1_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 1 (row 0, column 1), written by $399A from cell_lo_offsets.","note":"inside the item at $399F","x":[14746]},{"a":14753,"t":"note","l":"slot1_src_hi","c":"Operand high byte: source page for grid slot 1 (row 0, column 1), written by $3990 as $7F00[cell] + $5D.","note":"inside the item at $399F","x":[14736]},{"a":14754,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14756,"t":"code","b":[136],"m":"dey"},{"a":14757,"t":"code","b":[16,248],"m":"bpl","oa":14751,"o":"b_399F"},{"a":14759,"l":"b_39A7","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14728]},{"a":14761,"t":"code","b":[24],"m":"clc"},{"a":14762,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14764,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14766,"t":"code","b":[144,2],"m":"bcc","oa":14770,"o":"b_39B2"},{"a":14768,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14770,"l":"b_39B2","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14766]},{"a":14772,"t":"code","b":[185,126,123],"m":"lda","oa":31614,"o":"frame_cells_slot2,y"},{"a":14775,"t":"code","b":[168],"m":"tay"},{"a":14776,"t":"code","b":[208,4],"m":"bne","oa":14782,"o":"b_39BE"},{"a":14778,"t":"code","b":[133,124],"m":"sta","oa":124,"o":"build_ptr_2"},{"a":14780,"t":"code","b":[240,29],"m":"beq","oa":14811,"o":"b_39DB"},{"a":14782,"l":"b_39BE","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14776]},{"a":14785,"t":"code","b":[24],"m":"clc"},{"a":14786,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14788,"t":"code","b":[141,213,57],"m":"sta","oa":14805,"o":"slot2_src_hi"},{"a":14791,"t":"code","b":[152],"m":"tya"},{"a":14792,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14794,"t":"code","b":[168],"m":"tay"},{"a":14795,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14798,"t":"code","b":[141,212,57],"m":"sta","oa":14804,"o":"slot2_src_lo"},{"a":14801,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14803,"l":"b_39D3","t":"code","b":[185,0,128],"m":"lda","oa":32768,"o":"shape_cells_00,y","x":[14809]},{"a":14804,"t":"note","l":"slot2_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 2 (row 0, column 2), written by $39CE from cell_lo_offsets.","note":"inside the item at $39D3","x":[14798]},{"a":14805,"t":"note","l":"slot2_src_hi","c":"Operand high byte: source page for grid slot 2 (row 0, column 2), written by $39C4 as $7F00[cell] + $5D.","note":"inside the item at $39D3","x":[14788]},{"a":14806,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14808,"t":"code","b":[136],"m":"dey"},{"a":14809,"t":"code","b":[16,248],"m":"bpl","oa":14803,"o":"b_39D3"},{"a":14811,"l":"b_39DB","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14780]},{"a":14813,"t":"code","b":[24],"m":"clc"},{"a":14814,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14816,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14818,"t":"code","b":[144,2],"m":"bcc","oa":14822,"o":"b_39E6"},{"a":14820,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14822,"l":"b_39E6","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14818]},{"a":14824,"t":"code","b":[185,205,123],"m":"lda","oa":31693,"o":"frame_cells_slot3,y"},{"a":14827,"t":"code","b":[168],"m":"tay"},{"a":14828,"t":"code","b":[208,4],"m":"bne","oa":14834,"o":"b_39F2"},{"a":14830,"t":"code","b":[133,125],"m":"sta","oa":125,"o":"build_ptr_3"},{"a":14832,"t":"code","b":[240,29],"m":"beq","oa":14863,"o":"b_3A0F"},{"a":14834,"l":"b_39F2","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14828]},{"a":14837,"t":"code","b":[24],"m":"clc"},{"a":14838,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14840,"t":"code","b":[141,9,58],"m":"sta","oa":14857,"o":"slot3_src_hi"},{"a":14843,"t":"code","b":[152],"m":"tya"},{"a":14844,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14846,"t":"code","b":[168],"m":"tay"},{"a":14847,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14850,"t":"code","b":[141,8,58],"m":"sta","oa":14856,"o":"slot3_src_lo"},{"a":14853,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14855,"l":"b_3A07","t":"code","b":[185,0,129],"m":"lda","oa":33024,"o":"shape_cell_04,y","x":[14861]},{"a":14856,"t":"note","l":"slot3_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 3 (row 1, column 0), written by $3A02 from cell_lo_offsets.","note":"inside the item at $3A07","x":[14850]},{"a":14857,"t":"note","l":"slot3_src_hi","c":"Operand high byte: source page for grid slot 3 (row 1, column 0), written by $39F8 as $7F00[cell] + $5D.","note":"inside the item at $3A07","x":[14840]},{"a":14858,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14860,"t":"code","b":[136],"m":"dey"},{"a":14861,"t":"code","b":[16,248],"m":"bpl","oa":14855,"o":"b_3A07"},{"a":14863,"l":"b_3A0F","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14832]},{"a":14865,"t":"code","b":[24],"m":"clc"},{"a":14866,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14868,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14870,"t":"code","b":[144,2],"m":"bcc","oa":14874,"o":"b_3A1A"},{"a":14872,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14874,"l":"b_3A1A","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14870]},{"a":14876,"t":"code","b":[185,28,124],"m":"lda","oa":31772,"o":"frame_cells_slot4,y"},{"a":14879,"t":"code","b":[168],"m":"tay"},{"a":14880,"t":"code","b":[208,4],"m":"bne","oa":14886,"o":"b_3A26"},{"a":14882,"t":"code","b":[133,126],"m":"sta","oa":126,"o":"build_ptr_4"},{"a":14884,"t":"code","b":[240,29],"m":"beq","oa":14915,"o":"b_3A43"},{"a":14886,"l":"b_3A26","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14880]},{"a":14889,"t":"code","b":[24],"m":"clc"},{"a":14890,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14892,"t":"code","b":[141,61,58],"m":"sta","oa":14909,"o":"slot4_src_hi"},{"a":14895,"t":"code","b":[152],"m":"tya"},{"a":14896,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14898,"t":"code","b":[168],"m":"tay"},{"a":14899,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14902,"t":"code","b":[141,60,58],"m":"sta","oa":14908,"o":"slot4_src_lo"},{"a":14905,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14907,"l":"b_3A3B","t":"code","b":[185,64,129],"m":"lda","oa":33088,"o":"shape_cell_05,y","x":[14913]},{"a":14908,"t":"note","l":"slot4_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 4 (row 1, column 1), written by $3A36 from cell_lo_offsets.","note":"inside the item at $3A3B","x":[14902]},{"a":14909,"t":"note","l":"slot4_src_hi","c":"Operand high byte: source page for grid slot 4 (row 1, column 1), written by $3A2C as $7F00[cell] + $5D.","note":"inside the item at $3A3B","x":[14892]},{"a":14910,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14912,"t":"code","b":[136],"m":"dey"},{"a":14913,"t":"code","b":[16,248],"m":"bpl","oa":14907,"o":"b_3A3B"},{"a":14915,"l":"b_3A43","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14884]},{"a":14917,"t":"code","b":[24],"m":"clc"},{"a":14918,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14920,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14922,"t":"code","b":[144,2],"m":"bcc","oa":14926,"o":"b_3A4E"},{"a":14924,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14926,"l":"b_3A4E","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14922]},{"a":14928,"t":"code","b":[185,107,124],"m":"lda","oa":31851,"o":"frame_cells_slot5,y"},{"a":14931,"t":"code","b":[168],"m":"tay"},{"a":14932,"t":"code","b":[208,4],"m":"bne","oa":14938,"o":"b_3A5A"},{"a":14934,"t":"code","b":[133,127],"m":"sta","oa":127,"o":"build_ptr_5"},{"a":14936,"t":"code","b":[240,29],"m":"beq","oa":14967,"o":"b_3A77"},{"a":14938,"l":"b_3A5A","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14932]},{"a":14941,"t":"code","b":[24],"m":"clc"},{"a":14942,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14944,"t":"code","b":[141,113,58],"m":"sta","oa":14961,"o":"slot5_src_hi"},{"a":14947,"t":"code","b":[152],"m":"tya"},{"a":14948,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":14950,"t":"code","b":[168],"m":"tay"},{"a":14951,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":14954,"t":"code","b":[141,112,58],"m":"sta","oa":14960,"o":"slot5_src_lo"},{"a":14957,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":14959,"l":"b_3A6F","t":"code","b":[185,0,128],"m":"lda","oa":32768,"o":"shape_cells_00,y","x":[14965]},{"a":14960,"t":"note","l":"slot5_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 5 (row 1, column 2), written by $3A6A from cell_lo_offsets.","note":"inside the item at $3A6F","x":[14954]},{"a":14961,"t":"note","l":"slot5_src_hi","c":"Operand high byte: source page for grid slot 5 (row 1, column 2), written by $3A60 as $7F00[cell] + $5D.","note":"inside the item at $3A6F","x":[14944]},{"a":14962,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":14964,"t":"code","b":[136],"m":"dey"},{"a":14965,"t":"code","b":[16,248],"m":"bpl","oa":14959,"o":"b_3A6F"},{"a":14967,"l":"b_3A77","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14936]},{"a":14969,"t":"code","b":[24],"m":"clc"},{"a":14970,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":14972,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":14974,"t":"code","b":[144,2],"m":"bcc","oa":14978,"o":"b_3A82"},{"a":14976,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":14978,"l":"b_3A82","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14974]},{"a":14980,"t":"code","b":[185,186,124],"m":"lda","oa":31930,"o":"frame_cells_slot6,y"},{"a":14983,"t":"code","b":[168],"m":"tay"},{"a":14984,"t":"code","b":[208,4],"m":"bne","oa":14990,"o":"b_3A8E"},{"a":14986,"t":"code","b":[133,128],"m":"sta","oa":128,"o":"build_ptr_6"},{"a":14988,"t":"code","b":[240,29],"m":"beq","oa":15019,"o":"b_3AAB"},{"a":14990,"l":"b_3A8E","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[14984]},{"a":14993,"t":"code","b":[24],"m":"clc"},{"a":14994,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":14996,"t":"code","b":[141,165,58],"m":"sta","oa":15013,"o":"slot6_src_hi"},{"a":14999,"t":"code","b":[152],"m":"tya"},{"a":15000,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":15002,"t":"code","b":[168],"m":"tay"},{"a":15003,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":15006,"t":"code","b":[141,164,58],"m":"sta","oa":15012,"o":"slot6_src_lo"},{"a":15009,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":15011,"l":"b_3AA3","t":"code","b":[185,192,129],"m":"lda","oa":33216,"o":"shape_cell_07,y","x":[15017]},{"a":15012,"t":"note","l":"slot6_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 6 (row 2, column 0), written by $3A9E from cell_lo_offsets.","note":"inside the item at $3AA3","x":[15006]},{"a":15013,"t":"note","l":"slot6_src_hi","c":"Operand high byte: source page for grid slot 6 (row 2, column 0), written by $3A94 as $7F00[cell] + $5D.","note":"inside the item at $3AA3","x":[14996]},{"a":15014,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":15016,"t":"code","b":[136],"m":"dey"},{"a":15017,"t":"code","b":[16,248],"m":"bpl","oa":15011,"o":"b_3AA3"},{"a":15019,"l":"b_3AAB","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[14988]},{"a":15021,"t":"code","b":[24],"m":"clc"},{"a":15022,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15024,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":15026,"t":"code","b":[144,2],"m":"bcc","oa":15030,"o":"b_3AB6"},{"a":15028,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":15030,"l":"b_3AB6","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[15026]},{"a":15032,"t":"code","b":[185,9,125],"m":"lda","oa":32009,"o":"frame_cells_slot7,y"},{"a":15035,"t":"code","b":[168],"m":"tay"},{"a":15036,"t":"code","b":[208,4],"m":"bne","oa":15042,"o":"b_3AC2"},{"a":15038,"t":"code","b":[133,129],"m":"sta","oa":129,"o":"build_ptr_7"},{"a":15040,"t":"code","b":[240,29],"m":"beq","oa":15071,"o":"b_3ADF"},{"a":15042,"l":"b_3AC2","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[15036]},{"a":15045,"t":"code","b":[24],"m":"clc"},{"a":15046,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":15048,"t":"code","b":[141,217,58],"m":"sta","oa":15065,"o":"slot7_src_hi"},{"a":15051,"t":"code","b":[152],"m":"tya"},{"a":15052,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":15054,"t":"code","b":[168],"m":"tay"},{"a":15055,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":15058,"t":"code","b":[141,216,58],"m":"sta","oa":15064,"o":"slot7_src_lo"},{"a":15061,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":15063,"l":"b_3AD7","t":"code","b":[185,0,130],"m":"lda","oa":33280,"o":"shape_cell_08,y","x":[15069]},{"a":15064,"t":"note","l":"slot7_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 7 (row 2, column 1), written by $3AD2 from cell_lo_offsets.","note":"inside the item at $3AD7","x":[15058]},{"a":15065,"t":"note","l":"slot7_src_hi","c":"Operand high byte: source page for grid slot 7 (row 2, column 1), written by $3AC8 as $7F00[cell] + $5D.","note":"inside the item at $3AD7","x":[15048]},{"a":15066,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":15068,"t":"code","b":[136],"m":"dey"},{"a":15069,"t":"code","b":[16,248],"m":"bpl","oa":15063,"o":"b_3AD7"},{"a":15071,"l":"b_3ADF","t":"code","b":[165,120],"m":"lda","oa":120,"o":"build_dst","x":[15040]},{"a":15073,"t":"code","b":[24],"m":"clc"},{"a":15074,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15076,"t":"code","b":[133,120],"m":"sta","oa":120,"o":"build_dst"},{"a":15078,"t":"code","b":[144,2],"m":"bcc","oa":15082,"o":"b_3AEA"},{"a":15080,"t":"code","b":[230,121],"m":"inc","oa":121,"o":"build_dst_hi"},{"a":15082,"l":"b_3AEA","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[15078]},{"a":15084,"t":"code","b":[185,88,125],"m":"lda","oa":32088,"o":"frame_cells_slot8,y"},{"a":15087,"t":"code","b":[168],"m":"tay"},{"a":15088,"t":"code","b":[208,4],"m":"bne","oa":15094,"o":"b_3AF6"},{"a":15090,"t":"code","b":[133,130],"m":"sta","oa":130,"o":"build_ptr_8"},{"a":15092,"t":"code","b":[240,29],"m":"beq","oa":15123,"o":"fighter_store_ptrs"},{"a":15094,"l":"b_3AF6","t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y","x":[15088]},{"a":15097,"t":"code","b":[24],"m":"clc"},{"a":15098,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":15100,"t":"code","b":[141,13,59],"m":"sta","oa":15117,"o":"slot8_src_hi"},{"a":15103,"t":"code","b":[152],"m":"tya"},{"a":15104,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":15106,"t":"code","b":[168],"m":"tay"},{"a":15107,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":15110,"t":"code","b":[141,12,59],"m":"sta","oa":15116,"o":"slot8_src_lo"},{"a":15113,"t":"code","b":[160,63],"m":"ldy","o":"#$3F"},{"a":15115,"l":"b_3B0B","t":"code","b":[185,64,147],"m":"lda","oa":37696,"o":"shape_cell_4d,y","x":[15121]},{"a":15116,"t":"note","l":"slot8_src_lo","c":"Operand low byte: source of the 64-byte copy for grid slot 8 (row 2, column 2), written by $3B06 from cell_lo_offsets.","note":"inside the item at $3B0B","x":[15110]},{"a":15117,"t":"note","l":"slot8_src_hi","c":"Operand high byte: source page for grid slot 8 (row 2, column 2), written by $3AFC as $7F00[cell] + $5D.","note":"inside the item at $3B0B","x":[15100]},{"a":15118,"t":"code","b":[145,120],"m":"sta","oa":120,"o":"(build_dst),y"},{"a":15120,"t":"code","b":[136],"m":"dey"},{"a":15121,"t":"code","b":[16,248],"m":"bpl","oa":15115,"o":"b_3B0B"},{"a":15123,"l":"fighter_store_ptrs","c":"Copy the nine built pointers $7A-$82 to fighter X's pointer slots $02,X ... $12,X (step 2: rows of three). If the shape frame $51,X is one of the eight in row4_frames, also set the fourth-row pointers $27/$29/$2B,X from row4_ptr_col0/1/2 (entries 8-15 when facing $53,X is non-zero); for other frames they keep their old values.","t":"code","b":[165,122],"m":"lda","oa":122,"o":"build_ptr_0","x":[15092,15930]},{"a":15125,"t":"code","b":[149,2],"m":"sta","oa":2,"o":"fighter_ptr_r1c1,x"},{"a":15127,"t":"code","b":[165,123],"m":"lda","oa":123,"o":"build_ptr_1"},{"a":15129,"t":"code","b":[149,4],"m":"sta","oa":4,"o":"fighter_ptr_r1c2,x"},{"a":15131,"t":"code","b":[165,124],"m":"lda","oa":124,"o":"build_ptr_2"},{"a":15133,"t":"code","b":[149,6],"m":"sta","oa":6,"o":"fighter_ptr_r1c3,x"},{"a":15135,"t":"code","b":[165,125],"m":"lda","oa":125,"o":"build_ptr_3"},{"a":15137,"t":"code","b":[149,8],"m":"sta","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":15139,"t":"code","b":[165,126],"m":"lda","oa":126,"o":"build_ptr_4"},{"a":15141,"t":"code","b":[149,10],"m":"sta","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":15143,"t":"code","b":[165,127],"m":"lda","oa":127,"o":"build_ptr_5"},{"a":15145,"t":"code","b":[149,12],"m":"sta","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":15147,"t":"code","b":[165,128],"m":"lda","oa":128,"o":"build_ptr_6"},{"a":15149,"t":"code","b":[149,14],"m":"sta","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":15151,"t":"code","b":[165,129],"m":"lda","oa":129,"o":"build_ptr_7"},{"a":15153,"t":"code","b":[149,16],"m":"sta","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":15155,"t":"code","b":[165,130],"m":"lda","oa":130,"o":"build_ptr_8"},{"a":15157,"t":"code","b":[149,18],"m":"sta","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":15159,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":15161,"l":"b_3B39","t":"code","b":[185,93,59],"m":"lda","oa":15197,"o":"row4_frames,y","x":[15169]},{"a":15164,"t":"code","b":[213,81],"m":"cmp","oa":81,"o":"fighter_frame,x"},{"a":15166,"t":"code","b":[240,4],"m":"beq","oa":15172,"o":"b_3B44"},{"a":15168,"t":"code","b":[136],"m":"dey"},{"a":15169,"t":"code","b":[16,246],"m":"bpl","oa":15161,"o":"b_3B39"},{"a":15171,"t":"code","b":[96],"m":"rts"},{"a":15172,"l":"b_3B44","t":"code","b":[181,83],"m":"lda","oa":83,"o":"fighter_facing,x","x":[15166]},{"a":15174,"t":"code","b":[240,5],"m":"beq","oa":15181,"o":"b_3B4D"},{"a":15176,"t":"code","b":[152],"m":"tya"},{"a":15177,"t":"code","b":[24],"m":"clc"},{"a":15178,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":15180,"t":"code","b":[168],"m":"tay"},{"a":15181,"l":"b_3B4D","t":"code","b":[185,101,59],"m":"lda","oa":15205,"o":"row4_ptr_col0,y","x":[15174]},{"a":15184,"t":"code","b":[149,39],"m":"sta","oa":39,"o":"fighter_row4_ptr_c1,x"},{"a":15186,"t":"code","b":[185,117,59],"m":"lda","oa":15221,"o":"row4_ptr_col1,y"},{"a":15189,"t":"code","b":[149,41],"m":"sta","oa":41,"o":"fighter_row4_ptr_c2,x"},{"a":15191,"t":"code","b":[185,133,59],"m":"lda","oa":15237,"o":"row4_ptr_col2,y"},{"a":15194,"t":"code","b":[149,43],"m":"sta","oa":43,"o":"fighter_row4_ptr_c3,x"},{"a":15196,"t":"code","b":[96],"m":"rts"},{"a":15197,"l":"row4_frames","c":"The eight shape frames that have a fourth sprite row: $0A $3A $09 $20 $15 $17 $16 $14; searched from the end by $3B39.","t":"byte","b":[10,58,9,32,21,23,22,20],"x":[15161]},{"a":15205,"l":"row4_ptr_col0","c":"Fourth-row pointer for column 0, 16 entries: 8 for row4_frames facing $53 = 0, then 8 facing the other way. Values $52-$6C, or 0 (six entries) for no sprite: pointer 0 shows $C000-$C03F, which is blank. Non-zero pointers address $C000 + 64 x pointer, under the I/O area.","t":"byte","b":[93,93,96,82,84,86,88,90],"x":[15181]},{"a":15213,"t":"byte","b":[108,108,0,0,0,0,0,0]},{"a":15221,"l":"row4_ptr_col1","c":"Fourth-row pointer for column 1, laid out as row4_ptr_col0 (values $53-$6F, none zero).","t":"byte","b":[94,94,97,83,85,87,89,91],"x":[15186]},{"a":15229,"t":"byte","b":[109,109,111,98,100,102,104,106]},{"a":15237,"l":"row4_ptr_col2","c":"Fourth-row pointer for column 2, laid out as row4_ptr_col0: entries 2-7 are zero (no sprite), mirroring entries 10-15 of column 0.","t":"byte","b":[95,95,0,0,0,0,0,0],"x":[15191]},{"a":15245,"t":"byte","b":[110,110,112,99,101,103,105,107]},{"a":15253,"l":"fighter_ptrs_direct","c":"When $5D is non-zero ($40, set at $133A and $13CD): no copying, the nine cell numbers of frame $51,X go straight to the pointer slots $02-$12,X.","t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x","x":[14616]},{"a":15255,"t":"code","b":[185,224,122],"m":"lda","oa":31456,"o":"frame_cells_slot0,y"},{"a":15258,"t":"code","b":[149,2],"m":"sta","oa":2,"o":"fighter_ptr_r1c1,x"},{"a":15260,"t":"code","b":[185,47,123],"m":"lda","oa":31535,"o":"frame_cells_slot1,y"},{"a":15263,"t":"code","b":[149,4],"m":"sta","oa":4,"o":"fighter_ptr_r1c2,x"},{"a":15265,"t":"code","b":[185,126,123],"m":"lda","oa":31614,"o":"frame_cells_slot2,y"},{"a":15268,"t":"code","b":[149,6],"m":"sta","oa":6,"o":"fighter_ptr_r1c3,x"},{"a":15270,"t":"code","b":[185,205,123],"m":"lda","oa":31693,"o":"frame_cells_slot3,y"},{"a":15273,"t":"code","b":[149,8],"m":"sta","oa":8,"o":"fighter_ptr_r2c1,x"},{"a":15275,"t":"code","b":[185,28,124],"m":"lda","oa":31772,"o":"frame_cells_slot4,y"},{"a":15278,"t":"code","b":[149,10],"m":"sta","oa":10,"o":"fighter_ptr_r2c2,x"},{"a":15280,"t":"code","b":[185,107,124],"m":"lda","oa":31851,"o":"frame_cells_slot5,y"},{"a":15283,"t":"code","b":[149,12],"m":"sta","oa":12,"o":"fighter_ptr_r2c3,x"},{"a":15285,"t":"code","b":[185,186,124],"m":"lda","oa":31930,"o":"frame_cells_slot6,y"},{"a":15288,"t":"code","b":[149,14],"m":"sta","oa":14,"o":"fighter_ptr_r3c1,x"},{"a":15290,"t":"code","b":[185,9,125],"m":"lda","oa":32009,"o":"frame_cells_slot7,y"},{"a":15293,"t":"code","b":[149,16],"m":"sta","oa":16,"o":"fighter_ptr_r3c2,x"},{"a":15295,"t":"code","b":[185,88,125],"m":"lda","oa":32088,"o":"frame_cells_slot8,y"},{"a":15298,"t":"code","b":[149,18],"m":"sta","oa":18,"o":"fighter_ptr_r3c3,x"},{"a":15300,"t":"code","b":[96],"m":"rts"},{"a":15301,"l":"build_fighter_sprites_mirror","c":"Mirrored build for a fighter facing the other way ($53,X non-zero): same buffers and presets, but the grid's columns are taken in reverse (slot 0 from the column-2 table $7B7E, etc.) and each cell is copied by copy_cell_mirrored. Keeps destination base - 2, base and base + 2 in the operands $3E66, $3E70, $3E7A, stepping them by 64 per slot. Ends at fighter_store_ptrs.","t":"code","b":[185,12,57],"m":"lda","oa":14604,"o":"sprite_buf_lo,y","x":[14630]},{"a":15304,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15307,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15310,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15313,"t":"code","b":[185,16,57],"m":"lda","oa":14608,"o":"sprite_buf_hi,y"},{"a":15316,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15319,"t":"code","b":[141,113,62],"m":"sta","oa":15985,"o":"mirror_dst_hi_b"},{"a":15322,"t":"code","b":[141,123,62],"m":"sta","oa":15995,"o":"mirror_dst_hi_c"},{"a":15325,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15328,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15331,"t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a"},{"a":15334,"t":"code","b":[208,3],"m":"bne","oa":15339,"o":"b_3BEB"},{"a":15336,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15339,"l":"b_3BEB","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15334]},{"a":15342,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15345,"t":"code","b":[185,252,56],"m":"lda","oa":14588,"o":"preset_addr_lo,y"},{"a":15348,"t":"code","b":[141,0,60],"m":"sta","oa":15360,"o":"mirror_preset_src_lo"},{"a":15351,"t":"code","b":[185,0,57],"m":"lda","oa":14592,"o":"preset_addr_hi,y"},{"a":15354,"t":"code","b":[141,1,60],"m":"sta","oa":15361,"o":"mirror_preset_src_hi"},{"a":15357,"t":"code","b":[160,8],"m":"ldy","o":"#$08"},{"a":15359,"l":"b_3BFF","t":"code","b":[185,198,56],"m":"lda","oa":14534,"o":"sprite_ptr_presets_2,y","x":[15366]},{"a":15360,"t":"note","l":"mirror_preset_src_lo","c":"Operand low byte of LDA $38C6,Y at $3BFF (the preset copy of the mirrored build), written by $3BF4 from preset_addr_lo.","note":"inside the item at $3BFF","x":[15348]},{"a":15361,"t":"note","l":"mirror_preset_src_hi","c":"Operand high byte of the mirrored preset copy, written by $3BFA from preset_addr_hi.","note":"inside the item at $3BFF","x":[15354]},{"a":15362,"t":"code","b":[153,122,0],"m":"sta","oa":122,"o":"build_ptr_0,y"},{"a":15365,"t":"code","b":[136],"m":"dey"},{"a":15366,"t":"code","b":[16,247],"m":"bpl","oa":15359,"o":"b_3BFF"},{"a":15368,"t":"code","b":[134,131],"m":"stx","oa":131,"o":"build_save_x"},{"a":15370,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15372,"t":"code","b":[185,126,123],"m":"lda","oa":31614,"o":"frame_cells_slot2,y"},{"a":15375,"t":"code","b":[208,4],"m":"bne","oa":15381,"o":"b_3C15"},{"a":15377,"t":"code","b":[133,122],"m":"sta","oa":122,"o":"build_ptr_0"},{"a":15379,"t":"code","b":[240,3],"m":"beq","oa":15384,"o":"b_3C18"},{"a":15381,"l":"b_3C15","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15375]},{"a":15384,"l":"b_3C18","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15379]},{"a":15387,"t":"code","b":[24],"m":"clc"},{"a":15388,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15390,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15393,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15396,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15399,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15402,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15405,"t":"code","b":[144,9],"m":"bcc","oa":15416,"o":"b_3C38"},{"a":15407,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15410,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15413,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15416,"l":"b_3C38","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15405]},{"a":15419,"t":"code","b":[208,3],"m":"bne","oa":15424,"o":"b_3C40"},{"a":15421,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15424,"l":"b_3C40","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15419]},{"a":15427,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15430,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15433,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15436,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15438,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15440,"t":"code","b":[185,47,123],"m":"lda","oa":31535,"o":"frame_cells_slot1,y"},{"a":15443,"t":"code","b":[208,4],"m":"bne","oa":15449,"o":"b_3C59"},{"a":15445,"t":"code","b":[133,123],"m":"sta","oa":123,"o":"build_ptr_1"},{"a":15447,"t":"code","b":[240,3],"m":"beq","oa":15452,"o":"b_3C5C"},{"a":15449,"l":"b_3C59","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15443]},{"a":15452,"l":"b_3C5C","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15447]},{"a":15455,"t":"code","b":[24],"m":"clc"},{"a":15456,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15458,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15461,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15464,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15467,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15470,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15473,"t":"code","b":[144,9],"m":"bcc","oa":15484,"o":"b_3C7C"},{"a":15475,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15478,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15481,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15484,"l":"b_3C7C","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15473]},{"a":15487,"t":"code","b":[208,3],"m":"bne","oa":15492,"o":"b_3C84"},{"a":15489,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15492,"l":"b_3C84","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15487]},{"a":15495,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15498,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15501,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15504,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15506,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15508,"t":"code","b":[185,224,122],"m":"lda","oa":31456,"o":"frame_cells_slot0,y"},{"a":15511,"t":"code","b":[208,4],"m":"bne","oa":15517,"o":"b_3C9D"},{"a":15513,"t":"code","b":[133,124],"m":"sta","oa":124,"o":"build_ptr_2"},{"a":15515,"t":"code","b":[240,3],"m":"beq","oa":15520,"o":"b_3CA0"},{"a":15517,"l":"b_3C9D","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15511]},{"a":15520,"l":"b_3CA0","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15515]},{"a":15523,"t":"code","b":[24],"m":"clc"},{"a":15524,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15526,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15529,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15532,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15535,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15538,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15541,"t":"code","b":[144,9],"m":"bcc","oa":15552,"o":"b_3CC0"},{"a":15543,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15546,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15549,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15552,"l":"b_3CC0","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15541]},{"a":15555,"t":"code","b":[208,3],"m":"bne","oa":15560,"o":"b_3CC8"},{"a":15557,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15560,"l":"b_3CC8","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15555]},{"a":15563,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15566,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15569,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15572,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15574,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15576,"t":"code","b":[185,107,124],"m":"lda","oa":31851,"o":"frame_cells_slot5,y"},{"a":15579,"t":"code","b":[208,4],"m":"bne","oa":15585,"o":"b_3CE1"},{"a":15581,"t":"code","b":[133,125],"m":"sta","oa":125,"o":"build_ptr_3"},{"a":15583,"t":"code","b":[240,3],"m":"beq","oa":15588,"o":"b_3CE4"},{"a":15585,"l":"b_3CE1","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15579]},{"a":15588,"l":"b_3CE4","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15583]},{"a":15591,"t":"code","b":[24],"m":"clc"},{"a":15592,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15594,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15597,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15600,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15603,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15606,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15609,"t":"code","b":[144,9],"m":"bcc","oa":15620,"o":"b_3D04"},{"a":15611,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15614,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15617,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15620,"l":"b_3D04","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15609]},{"a":15623,"t":"code","b":[208,3],"m":"bne","oa":15628,"o":"b_3D0C"},{"a":15625,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15628,"l":"b_3D0C","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15623]},{"a":15631,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15634,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15637,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15640,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15642,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15644,"t":"code","b":[185,28,124],"m":"lda","oa":31772,"o":"frame_cells_slot4,y"},{"a":15647,"t":"code","b":[208,4],"m":"bne","oa":15653,"o":"b_3D25"},{"a":15649,"t":"code","b":[133,126],"m":"sta","oa":126,"o":"build_ptr_4"},{"a":15651,"t":"code","b":[240,3],"m":"beq","oa":15656,"o":"b_3D28"},{"a":15653,"l":"b_3D25","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15647]},{"a":15656,"l":"b_3D28","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15651]},{"a":15659,"t":"code","b":[24],"m":"clc"},{"a":15660,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15662,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15665,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15668,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15671,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15674,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15677,"t":"code","b":[144,9],"m":"bcc","oa":15688,"o":"b_3D48"},{"a":15679,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15682,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15685,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15688,"l":"b_3D48","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15677]},{"a":15691,"t":"code","b":[208,3],"m":"bne","oa":15696,"o":"b_3D50"},{"a":15693,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15696,"l":"b_3D50","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15691]},{"a":15699,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15702,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15705,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15708,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15710,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15712,"t":"code","b":[185,205,123],"m":"lda","oa":31693,"o":"frame_cells_slot3,y"},{"a":15715,"t":"code","b":[208,4],"m":"bne","oa":15721,"o":"b_3D69"},{"a":15717,"t":"code","b":[133,127],"m":"sta","oa":127,"o":"build_ptr_5"},{"a":15719,"t":"code","b":[240,3],"m":"beq","oa":15724,"o":"b_3D6C"},{"a":15721,"l":"b_3D69","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15715]},{"a":15724,"l":"b_3D6C","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15719]},{"a":15727,"t":"code","b":[24],"m":"clc"},{"a":15728,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15730,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15733,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15736,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15739,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15742,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15745,"t":"code","b":[144,9],"m":"bcc","oa":15756,"o":"b_3D8C"},{"a":15747,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15750,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15753,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15756,"l":"b_3D8C","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15745]},{"a":15759,"t":"code","b":[208,3],"m":"bne","oa":15764,"o":"b_3D94"},{"a":15761,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15764,"l":"b_3D94","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15759]},{"a":15767,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15770,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15773,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15776,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15778,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15780,"t":"code","b":[185,88,125],"m":"lda","oa":32088,"o":"frame_cells_slot8,y"},{"a":15783,"t":"code","b":[208,4],"m":"bne","oa":15789,"o":"b_3DAD"},{"a":15785,"t":"code","b":[133,128],"m":"sta","oa":128,"o":"build_ptr_6"},{"a":15787,"t":"code","b":[240,3],"m":"beq","oa":15792,"o":"b_3DB0"},{"a":15789,"l":"b_3DAD","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15783]},{"a":15792,"l":"b_3DB0","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15787]},{"a":15795,"t":"code","b":[24],"m":"clc"},{"a":15796,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15798,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15801,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15804,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15807,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15810,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15813,"t":"code","b":[144,9],"m":"bcc","oa":15824,"o":"b_3DD0"},{"a":15815,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15818,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15821,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15824,"l":"b_3DD0","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15813]},{"a":15827,"t":"code","b":[208,3],"m":"bne","oa":15832,"o":"b_3DD8"},{"a":15829,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15832,"l":"b_3DD8","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15827]},{"a":15835,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15838,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15841,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15844,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15846,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15848,"t":"code","b":[185,9,125],"m":"lda","oa":32009,"o":"frame_cells_slot7,y"},{"a":15851,"t":"code","b":[208,4],"m":"bne","oa":15857,"o":"b_3DF1"},{"a":15853,"t":"code","b":[133,129],"m":"sta","oa":129,"o":"build_ptr_7"},{"a":15855,"t":"code","b":[240,3],"m":"beq","oa":15860,"o":"b_3DF4"},{"a":15857,"l":"b_3DF1","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15851]},{"a":15860,"l":"b_3DF4","t":"code","b":[173,112,62],"m":"lda","oa":15984,"o":"mirror_dst_lo_b","x":[15855]},{"a":15863,"t":"code","b":[24],"m":"clc"},{"a":15864,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":15866,"t":"code","b":[141,102,62],"m":"sta","oa":15974,"o":"mirror_dst_lo_a"},{"a":15869,"t":"code","b":[141,112,62],"m":"sta","oa":15984,"o":"mirror_dst_lo_b"},{"a":15872,"t":"code","b":[141,122,62],"m":"sta","oa":15994,"o":"mirror_dst_lo_c"},{"a":15875,"t":"code","b":[173,113,62],"m":"lda","oa":15985,"o":"mirror_dst_hi_b"},{"a":15878,"t":"code","b":[141,103,62],"m":"sta","oa":15975,"o":"mirror_dst_hi_a"},{"a":15881,"t":"code","b":[144,9],"m":"bcc","oa":15892,"o":"b_3E14"},{"a":15883,"t":"code","b":[238,103,62],"m":"inc","oa":15975,"o":"mirror_dst_hi_a"},{"a":15886,"t":"code","b":[238,113,62],"m":"inc","oa":15985,"o":"mirror_dst_hi_b"},{"a":15889,"t":"code","b":[238,123,62],"m":"inc","oa":15995,"o":"mirror_dst_hi_c"},{"a":15892,"l":"b_3E14","t":"code","b":[173,102,62],"m":"lda","oa":15974,"o":"mirror_dst_lo_a","x":[15881]},{"a":15895,"t":"code","b":[208,3],"m":"bne","oa":15900,"o":"b_3E1C"},{"a":15897,"t":"code","b":[206,103,62],"m":"dec","oa":15975,"o":"mirror_dst_hi_a"},{"a":15900,"l":"b_3E1C","t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a","x":[15895]},{"a":15903,"t":"code","b":[206,102,62],"m":"dec","oa":15974,"o":"mirror_dst_lo_a"},{"a":15906,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15909,"t":"code","b":[238,122,62],"m":"inc","oa":15994,"o":"mirror_dst_lo_c"},{"a":15912,"t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x"},{"a":15914,"t":"code","b":[180,81],"m":"ldy","oa":81,"o":"fighter_frame,x"},{"a":15916,"t":"code","b":[185,186,124],"m":"lda","oa":31930,"o":"frame_cells_slot6,y"},{"a":15919,"t":"code","b":[208,4],"m":"bne","oa":15925,"o":"b_3E35"},{"a":15921,"t":"code","b":[133,130],"m":"sta","oa":130,"o":"build_ptr_8"},{"a":15923,"t":"code","b":[240,3],"m":"beq","oa":15928,"o":"b_3E38"},{"a":15925,"l":"b_3E35","t":"code","b":[32,61,62],"m":"jsr","oa":15933,"o":"copy_cell_mirrored","x":[15919]},{"a":15928,"l":"b_3E38","t":"code","b":[166,131],"m":"ldx","oa":131,"o":"build_save_x","x":[15923]},{"a":15930,"t":"code","b":[76,19,59],"m":"jmp","oa":15123,"o":"fighter_store_ptrs"},{"a":15933,"l":"copy_cell_mirrored","c":"Copy cell A (64 bytes) flipped left to right: source $7F00[A]+$5D : (A AND 3) x $40 into the three LDY operands; each 3-byte row is stored in reverse byte order and every byte goes through $7E00, which reverses the order of its four bit pairs (multicolour pixels). X preserved by the caller in $83.","t":"code","b":[168],"m":"tay","x":[15381,15449,15517,15585,15653,15721,15789,15857,15925]},{"a":15934,"t":"code","b":[185,0,127],"m":"lda","oa":32512,"o":"cell_page_table,y"},{"a":15937,"t":"code","b":[24],"m":"clc"},{"a":15938,"t":"code","b":[101,93],"m":"adc","oa":93,"o":"shape_direct"},{"a":15940,"t":"code","b":[141,97,62],"m":"sta","oa":15969,"o":"mirror_src_hi_a"},{"a":15943,"t":"code","b":[141,107,62],"m":"sta","oa":15979,"o":"mirror_src_hi_b"},{"a":15946,"t":"code","b":[141,117,62],"m":"sta","oa":15989,"o":"mirror_src_hi_c"},{"a":15949,"t":"code","b":[152],"m":"tya"},{"a":15950,"t":"code","b":[41,3],"m":"and","o":"#$03"},{"a":15952,"t":"code","b":[168],"m":"tay"},{"a":15953,"t":"code","b":[185,176,56],"m":"lda","oa":14512,"o":"cell_lo_offsets,y"},{"a":15956,"t":"code","b":[141,96,62],"m":"sta","oa":15968,"o":"mirror_src_lo_a"},{"a":15959,"t":"code","b":[141,106,62],"m":"sta","oa":15978,"o":"mirror_src_lo_b"},{"a":15962,"t":"code","b":[141,116,62],"m":"sta","oa":15988,"o":"mirror_src_lo_c"},{"a":15965,"t":"code","b":[162,62],"m":"ldx","o":"#$3E"},{"a":15967,"l":"b_3E5F","t":"code","b":[188,64,130],"m":"ldy","oa":33344,"o":"shape_cell_09,x","x":[15997]},{"a":15968,"t":"note","l":"mirror_src_lo_a","c":"Operand low byte of LDY $8240,X at $3E5F (row byte 2), written by $3E54.","note":"inside the item at $3E5F","x":[15956]},{"a":15969,"t":"note","l":"mirror_src_hi_a","c":"Operand high byte of LDY at $3E5F, written by $3E44.","note":"inside the item at $3E5F","x":[15940]},{"a":15970,"t":"code","b":[185,0,126],"m":"lda","oa":32256,"o":"mirror_pairs,y"},{"a":15973,"t":"code","b":[157,190,198],"m":"sta","oa":50878,"o":"f_C6BE,x"},{"a":15974,"t":"note","l":"mirror_dst_lo_a","c":"Operand low byte of STA at $3E65: destination base - 2 (receives source byte 2 as byte 0), written at $3BC8 and stepped in $3BEB-$3E1F.","note":"inside the item at $3E65","x":[15304,15331,15339,15342,15390,15416,15424,15427,15458,15484,15492,15495,15526,15552,15560,15563,15594,15620,15628,15631,15662,15688,15696,15699,15730,15756,15764,15767,15798,15824,15832,15835,15866,15892,15900,15903]},{"a":15975,"t":"note","l":"mirror_dst_hi_a","c":"Operand high byte of STA at $3E65 (destination base - 2), written at $3BD4 and stepped by the mirrored build.","note":"inside the item at $3E65","x":[15316,15336,15402,15407,15421,15470,15475,15489,15538,15543,15557,15606,15611,15625,15674,15679,15693,15742,15747,15761,15810,15815,15829,15878,15883,15897]},{"a":15976,"t":"code","b":[202],"m":"dex"},{"a":15977,"t":"code","b":[188,64,130],"m":"ldy","oa":33344,"o":"shape_cell_09,x"},{"a":15978,"t":"note","l":"mirror_src_lo_b","c":"Operand low byte of LDY at $3E69 (row byte 1), written by $3E57.","note":"inside the item at $3E69","x":[15959]},{"a":15979,"t":"note","l":"mirror_src_hi_b","c":"Operand high byte of LDY at $3E69, written by $3E47.","note":"inside the item at $3E69","x":[15943]},{"a":15980,"t":"code","b":[185,0,126],"m":"lda","oa":32256,"o":"mirror_pairs,y"},{"a":15983,"t":"code","b":[157,192,198],"m":"sta","oa":50880,"o":"f_C6C0,x"},{"a":15984,"t":"note","l":"mirror_dst_lo_b","c":"Operand low byte of STA at $3E6F: destination base (middle byte stays in the middle), written at $3BCB, advanced by 64 per slot.","note":"inside the item at $3E6F","x":[15307,15384,15393,15452,15461,15520,15529,15588,15597,15656,15665,15724,15733,15792,15801,15860,15869]},{"a":15985,"t":"note","l":"mirror_dst_hi_b","c":"Operand high byte of STA at $3E6F (destination base), written at $3BD7.","note":"inside the item at $3E6F","x":[15319,15399,15410,15467,15478,15535,15546,15603,15614,15671,15682,15739,15750,15807,15818,15875,15886]},{"a":15986,"t":"code","b":[202],"m":"dex"},{"a":15987,"t":"code","b":[188,64,130],"m":"ldy","oa":33344,"o":"shape_cell_09,x"},{"a":15988,"t":"note","l":"mirror_src_lo_c","c":"Operand low byte of LDY at $3E73 (row byte 0), written by $3E5A.","note":"inside the item at $3E73","x":[15962]},{"a":15989,"t":"note","l":"mirror_src_hi_c","c":"Operand high byte of LDY at $3E73, written by $3E4A.","note":"inside the item at $3E73","x":[15946]},{"a":15990,"t":"code","b":[185,0,126],"m":"lda","oa":32256,"o":"mirror_pairs,y"},{"a":15993,"t":"code","b":[157,194,198],"m":"sta","oa":50882,"o":"f_C6C2,x"},{"a":15994,"t":"note","l":"mirror_dst_lo_c","c":"Operand low byte of STA at $3E79: destination base + 2 (receives source byte 0 as byte 2), written at $3BCE and $3BDD.","note":"inside the item at $3E79","x":[15310,15325,15328,15396,15430,15433,15464,15498,15501,15532,15566,15569,15600,15634,15637,15668,15702,15705,15736,15770,15773,15804,15838,15841,15872,15906,15909]},{"a":15995,"t":"note","l":"mirror_dst_hi_c","c":"Operand high byte of STA at $3E79 (destination base + 2), written at $3BDA.","note":"inside the item at $3E79","x":[15322,15413,15481,15549,15617,15685,15753,15821,15889]},{"a":15996,"t":"code","b":[202],"m":"dex"},{"a":15997,"t":"code","b":[16,224],"m":"bpl","oa":15967,"o":"b_3E5F"},{"a":15999,"t":"code","b":[96],"m":"rts"},{"a":16000,"t":"gap","n":223},{"a":16223,"l":"backdrop0_bitmap_packed","c":"Start of the packed bitmap of backdrop 0 (runs to $4AAD), stream 0 of the table at $1839, unpacked by $17BB backwards into $E640-$F53F. The first word is the offset to the stream's last byte. (Decoded by the lead.)","t":"byte","b":[78,11,0,85,168,255,133,251]},{"a":16231,"t":"byte","b":[247,251,3,85,208,170,144,85]},{"a":16239,"t":"byte","b":[248,170,144,255,160,85,176,127]},{"a":16247,"t":"byte","b":[89,127,89,127,89,123,106,8]},{"a":16255,"t":"byte","b":[85,144,255,144,85,191,87,1]},{"a":16263,"t":"byte","b":[85,135,253,1,85,135,87,1]},{"a":16271,"t":"byte","b":[170,135,234,1,85,243,86,90]},{"a":16279,"t":"byte","b":[88,153,161,5,85,130,86,154]},{"a":16287,"t":"byte","b":[41,161,102,106,150,170,168,22]},{"a":16295,"t":"byte","b":[85,86,152,105,21,15,149,130]},{"a":16303,"t":"byte","b":[90,169,170,82,102,89,106,162]},{"a":16311,"t":"byte","b":[148,150,25,162,165,13,170,136]},{"a":16319,"t":"byte","b":[255,136,85,136,255,134,250,130]},{"a":16327,"t":"byte","b":[255,130,254,249,230,166,89,150]},{"a":16335,"t":"byte","b":[6,238,130,187,238,186,187,238]},{"a":16343,"t":"byte","b":[187,234,250,254,127,255,93,247]},{"a":16351,"t":"byte","b":[221,14,170,132,250,253,125,86]},{"a":16359,"t":"byte","b":[4,255,136,85,168,255,136,170]},{"a":16367,"t":"byte","b":[133,169,164,145,3,85,130,94]},{"a":16375,"t":"byte","b":[123,207,15,63,240,224,176,252]},{"a":16383,"t":"byte","b":[128]},{"a":16384,"l":"backdrop0_bitmap_packed_4000","c":"Backdrop 0 (Fuji, pagoda and torii): the rest of its packed bitmap, which starts at $3F5F. Read backwards by bitmap_unpack ($17BB) from $4AAD down; output fills the bitmap $E640-$F53F.","t":"byte","b":[140,8,192,10,234,192,200,0]},{"a":16392,"t":"byte","b":[18,10,130,22,10,240,192,0]},{"a":16400,"t":"byte","b":[10,6,0,130,194,240,170,10]},{"a":16408,"t":"byte","b":[138,0,226,10,50,44,85,11]},{"a":16416,"t":"byte","b":[213,130,53,1,252,0,240,5]},{"a":16424,"t":"byte","b":[255,133,191,15,11,3,85,176]},{"a":16432,"t":"byte","b":[170,144,85,151,77,1,85,130]},{"a":16440,"t":"byte","b":[86,131,90,106,98,138,24,86]},{"a":16448,"t":"byte","b":[154,162,151,29,93,169,101,95]},{"a":16456,"t":"byte","b":[123,228,146,102,170,250,229,154]},{"a":16464,"t":"byte","b":[101,103,188,255,143,191,215,63]},{"a":16472,"t":"byte","b":[125,87,84,87,62,35,149,130]},{"a":16480,"t":"byte","b":[21,87,2,151,130,255,162,2]},{"a":16488,"t":"byte","b":[85,136,255,144,254,1,255,134]},{"a":16496,"t":"byte","b":[239,1,170,130,250,130,245,131]},{"a":16504,"t":"byte","b":[85,131,91,186,165,190,186,191]},{"a":16512,"t":"byte","b":[6,85,130,249,169,183,3,181]},{"a":16520,"t":"byte","b":[130,167,165,2,149,131,213,132]},{"a":16528,"t":"byte","b":[85,135,213,1,255,165,254,1]},{"a":16536,"t":"byte","b":[250,130,254,250,192,38,10,32]},{"a":16544,"t":"byte","b":[133,134,10,43,8,5,26,90]},{"a":16552,"t":"byte","b":[74,85,108,101,167,237,105,147]},{"a":16560,"t":"byte","b":[219,105,11,35,47,186,28,170]},{"a":16568,"t":"byte","b":[132,239,226,163,160,4,148,130]},{"a":16576,"t":"byte","b":[182,165,20,49,15,145,65,9]},{"a":16584,"t":"byte","b":[6,42,79,1,100,224,36,1]},{"a":16592,"t":"byte","b":[88,152,144,132,4,18,1,64]},{"a":16600,"t":"byte","b":[212,0,207,176,40,0,144,36]},{"a":16608,"t":"byte","b":[29,87,149,165,234,10,176,14]},{"a":16616,"t":"byte","b":[3,194,42,85,131,149,42,192]},{"a":16624,"t":"byte","b":[184,224,5,170,133,234,58,3]},{"a":16632,"t":"byte","b":[3,170,135,234,1,85,136,255]},{"a":16640,"t":"byte","b":[136,85,146,89,94,123,110,187]},{"a":16648,"t":"byte","b":[238,85,149,165,234,254,250,254]},{"a":16656,"t":"byte","b":[251,149,81,166,150,185,189,171]},{"a":16664,"t":"byte","b":[239,247,207,215,25,166,27,159]},{"a":16672,"t":"byte","b":[130,207,229,103,188,49,247,211]},{"a":16680,"t":"byte","b":[127,254,93,125,73,12,233,130]},{"a":16688,"t":"byte","b":[137,245,169,189,241,245,213,220]},{"a":16696,"t":"byte","b":[63,252,63,234,233,166,155,111]},{"a":16704,"t":"byte","b":[126,250,235,19,170,130,149,85]},{"a":16712,"t":"byte","b":[2,106,130,111,53,2,255,152]},{"a":16720,"t":"byte","b":[213,245,253,3,255,133,165,1]},{"a":16728,"t":"byte","b":[170,130,234,230,229,221,213,95]},{"a":16736,"t":"byte","b":[169,87,234,170,253,87,221,105]},{"a":16744,"t":"byte","b":[165,15,85,130,93,255,169,237]},{"a":16752,"t":"byte","b":[4,255,130,254,1,250,130,90]},{"a":16760,"t":"byte","b":[250,90,106,4,170,135,85,144]},{"a":16768,"t":"byte","b":[255,135,254,1,85,130,86,90]},{"a":16776,"t":"byte","b":[106,160,138,11,106,170,128,10]},{"a":16784,"t":"byte","b":[43,47,236,207,30,124,126,242]},{"a":16792,"t":"byte","b":[194,19,10,130,230,97,105,168]},{"a":16800,"t":"byte","b":[234,122,94,87,85,44,10,170]},{"a":16808,"t":"byte","b":[131,175,255,127,151,243,244,83]},{"a":16816,"t":"byte","b":[86,53,251,10,255,130,125,95]},{"a":16824,"t":"byte","b":[79,59,251,254,175,170,174,9]},{"a":16832,"t":"byte","b":[170,132,234,130,170,102,90,149]},{"a":16840,"t":"byte","b":[4,166,131,170,175,66,150,4]},{"a":16848,"t":"byte","b":[170,130,106,170,191,213,42,10]},{"a":16856,"t":"byte","b":[90,170,171,189,213,117,132,149]},{"a":16864,"t":"byte","b":[165,233,16,234,132,233,234,14]},{"a":16872,"t":"byte","b":[255,191,5,170,131,80,150,169]},{"a":16880,"t":"byte","b":[3,170,130,254,170,171,149,169]},{"a":16888,"t":"byte","b":[90,169,186,157,71,119,11,85]},{"a":16896,"t":"byte","b":[130,149,130,171,172,59,254,85]},{"a":16904,"t":"byte","b":[69,85,94,187,238,179,252,12]},{"a":16912,"t":"byte","b":[85,131,46,139,238,203,206,173]},{"a":16920,"t":"byte","b":[183,221,119,221,119,221,119,187]},{"a":16928,"t":"byte","b":[238,187,238,187,238,187,237,102]},{"a":16936,"t":"byte","b":[153,102,153,102,153,102,249,93]},{"a":16944,"t":"byte","b":[247,221,119,222,107,170,168,84]},{"a":16952,"t":"byte","b":[70,111,191,254,239,203,191,106]},{"a":16960,"t":"byte","b":[234,61,245,217,50,175,130,191]},{"a":16968,"t":"byte","b":[170,169,117,95,255,251,237,183]},{"a":16976,"t":"byte","b":[253,197,229,234,207,251,171,169]},{"a":16984,"t":"byte","b":[249,165,177,213,221,223,123,255]},{"a":16992,"t":"byte","b":[234,26,170,133,90,106,2,255]},{"a":17000,"t":"byte","b":[154,87,213,253,3,255,131,186]},{"a":17008,"t":"byte","b":[130,174,94,85,221,190,235,255]},{"a":17016,"t":"byte","b":[191,187,249,85,149,186,255,251]},{"a":17024,"t":"byte","b":[186,253,85,105,86,253,237,247]},{"a":17032,"t":"byte","b":[239,255,25,253,130,173,253,237]},{"a":17040,"t":"byte","b":[250,234,5,170,134,85,133,86]},{"a":17048,"t":"byte","b":[90,106,3,85,130,90,106,170]},{"a":17056,"t":"byte","b":[175,171,255,150,89,88,138,38]},{"a":17064,"t":"byte","b":[151,189,181,36,19,95,123,228]},{"a":17072,"t":"byte","b":[120,130,201,199,108,214,101,135]},{"a":17080,"t":"byte","b":[151,149,193,234,174,122,98,146]},{"a":17088,"t":"byte","b":[37,5,69,170,106,90,218,246]},{"a":17096,"t":"byte","b":[245,44,250,130,169,250,235,251]},{"a":17104,"t":"byte","b":[186,170,85,7,170,130,255,251]},{"a":17112,"t":"byte","b":[254,122,255,191,234,170,85,223]},{"a":17120,"t":"byte","b":[93,95,85,122,245,170,85,87]},{"a":17128,"t":"byte","b":[85,101,85,169,90,245,24,85]},{"a":17136,"t":"byte","b":[133,87,253,85,153,105,153,149]},{"a":17144,"t":"byte","b":[87,253,85,117,215,127,95,127]},{"a":17152,"t":"byte","b":[254,16,122,130,127,130,255,131]},{"a":17160,"t":"byte","b":[246,215,250,171,172,187,179,85]},{"a":17168,"t":"byte","b":[148,205,247,238,251,143,106,153]},{"a":17176,"t":"byte","b":[178,166,185,239,201,109,180,167]},{"a":17184,"t":"byte","b":[171,98,186,239,248,238,72,110]},{"a":17192,"t":"byte","b":[235,239,254,149,246,79,127,81]},{"a":17200,"t":"byte","b":[134,100,110,190,111,199,121,153]},{"a":17208,"t":"byte","b":[205,183,253,171,255,126,222,93]},{"a":17216,"t":"byte","b":[222,123,249,255,223,126,250,254]},{"a":17224,"t":"byte","b":[123,254,255,88,117,215,61,197]},{"a":17232,"t":"byte","b":[111,69,149,79,223,69,215,125]},{"a":17240,"t":"byte","b":[26,187,162,255,115,215,183,81]},{"a":17248,"t":"byte","b":[87,127,119,127,119,215,94,255]},{"a":17256,"t":"byte","b":[131,253,170,254,191,4,255,130]},{"a":17264,"t":"byte","b":[213,87,181,87,255,239,255,7]},{"a":17272,"t":"byte","b":[127,130,61,121,85,234,4,111]},{"a":17280,"t":"byte","b":[130,127,83,87,69,159,127,235]},{"a":17288,"t":"byte","b":[171,139,187,59,190,168,13,255]},{"a":17296,"t":"byte","b":[133,147,43,148,3,170,133,42]},{"a":17304,"t":"byte","b":[170,98,3,170,132,169,1,170]},{"a":17312,"t":"byte","b":[135,90,85,149,175,221,255,6]},{"a":17320,"t":"byte","b":[119,130,95,1,170,131,153,131]},{"a":17328,"t":"byte","b":[85,154,2,255,131,214,130,86]},{"a":17336,"t":"byte","b":[222,255,3,170,131,125,93,117]},{"a":17344,"t":"byte","b":[213,4,85,131,125,85,95,106]},{"a":17352,"t":"byte","b":[171,175,191,7,255,130,85,131]},{"a":17360,"t":"byte","b":[87,95,93,117,87,125,253,215]},{"a":17368,"t":"byte","b":[247,93,124,243,245,237,228,226]},{"a":17376,"t":"byte","b":[189,197,153,166,150,55,246,23]},{"a":17384,"t":"byte","b":[149,130,153,165,149,86,138,40]},{"a":17392,"t":"byte","b":[82,74,38,90,106,237,58,175]},{"a":17400,"t":"byte","b":[170,186,16,251,130,239,175,245]},{"a":17408,"l":"backdrop0_bitmap_packed_4000_4400","c":"Backdrop 0 (Fuji, pagoda and torii): the rest of its packed bitmap, which starts at $3F5F. Read backwards by bitmap_unpack ($17BB) from $4AAD down; output fills the bitmap $E640-$F53F. (continued from $4000; this part $4400-$47FF)","t":"byte","b":[253,4,254,134,85,245,127,3]},{"a":17416,"t":"byte","b":[122,132,250,1,85,130,255,170]},{"a":17424,"t":"byte","b":[2,166,130,90,170,2,102,130]},{"a":17432,"t":"byte","b":[166,1,246,130,245,131,90,131]},{"a":17440,"t":"byte","b":[91,133,85,130,255,1,170,133]},{"a":17448,"t":"byte","b":[85,90,165,3,245,133,175,1]},{"a":17456,"t":"byte","b":[191,135,148,167,158,123,126,255]},{"a":17464,"t":"byte","b":[236,251,238,103,163,191,231,189]},{"a":17472,"t":"byte","b":[183,191,126,242,62,246,20,85]},{"a":17480,"t":"byte","b":[130,90,166,89,3,149,131,87]},{"a":17488,"t":"byte","b":[125,215,191,153,106,86,85,255]},{"a":17496,"t":"byte","b":[117,255,174,12,230,130,121,253]},{"a":17504,"t":"byte","b":[255,170,191,170,213,245,119,87]},{"a":17512,"t":"byte","b":[85,245,159,249,90,150,85,181]},{"a":17520,"t":"byte","b":[93,117,93,213,178,254,186,175]},{"a":17528,"t":"byte","b":[252,190,191,175,253,9,90,253]},{"a":17536,"t":"byte","b":[181,253,237,235,206,250,186,203]},{"a":17544,"t":"byte","b":[238,255,254,234,87,35,85,254]},{"a":17552,"t":"byte","b":[187,235,173,148,232,194,149,245]},{"a":17560,"t":"byte","b":[174,139,172,180,97,26,164,167]},{"a":17568,"t":"byte","b":[117,95,206,217,17,119,110,106]},{"a":17576,"t":"byte","b":[245,221,87,125,218,157,167,21]},{"a":17584,"t":"byte","b":[95,250,84,106,130,191,173,165]},{"a":17592,"t":"byte","b":[103,123,251,170,191,38,121,164]},{"a":17600,"t":"byte","b":[185,203,231,226,230,213,84,145]},{"a":17608,"t":"byte","b":[213,100,191,242,239,69,85,90]},{"a":17616,"t":"byte","b":[86,85,21,215,31,32,169,131]},{"a":17624,"t":"byte","b":[93,85,149,213,245,234,170,7]},{"a":17632,"t":"byte","b":[187,130,234,123,85,181,170,251]},{"a":17640,"t":"byte","b":[187,235,170,9,85,131,174,239]},{"a":17648,"t":"byte","b":[174,169,4,85,130,87,126,85]},{"a":17656,"t":"byte","b":[117,87,5,85,130,125,85,183]},{"a":17664,"t":"byte","b":[169,149,86,90,106,8,170,130]},{"a":17672,"t":"byte","b":[106,125,245,215,4,255,132,250]},{"a":17680,"t":"byte","b":[149,167,90,171,173,169,170,234]},{"a":17688,"t":"byte","b":[245,215,157,174,239,106,122,154]},{"a":17696,"t":"byte","b":[57,214,19,254,191,213,223,204]},{"a":17704,"t":"byte","b":[111,187,107,170,106,37,104,153]},{"a":17712,"t":"byte","b":[170,166,170,234,214,222,253,63]},{"a":17720,"t":"byte","b":[41,123,131,187,1,123,130,127]},{"a":17728,"t":"byte","b":[95,87,3,215,130,223,215,213]},{"a":17736,"t":"byte","b":[90,106,5,255,133,85,106,162]},{"a":17744,"t":"byte","b":[102,101,85,106,165,170,243,63]},{"a":17752,"t":"byte","b":[125,253,245,85,245,90,162,40]},{"a":17760,"t":"byte","b":[127,20,255,130,127,85,138,166]},{"a":17768,"t":"byte","b":[42,5,117,130,85,117,245,165]},{"a":17776,"t":"byte","b":[41,169,6,127,130,119,131,122]},{"a":17784,"t":"byte","b":[131,154,1,170,133,255,130,118]},{"a":17792,"t":"byte","b":[89,126,91,111,191,186,165,183]},{"a":17800,"t":"byte","b":[125,221,127,251,235,14,171,130]},{"a":17808,"t":"byte","b":[215,130,255,234,2,170,130,169]},{"a":17816,"t":"byte","b":[149,251,250,169,165,6,149,131]},{"a":17824,"t":"byte","b":[157,154,86,85,4,127,131,126]},{"a":17832,"t":"byte","b":[130,245,223,93,255,4,186,130]},{"a":17840,"t":"byte","b":[185,186,218,245,221,247,191,7]},{"a":17848,"t":"byte","b":[170,132,171,155,2,170,131,169]},{"a":17856,"t":"byte","b":[171,101,151,91,171,175,255,89]},{"a":17864,"t":"byte","b":[253,10,127,131,255,1,127,130]},{"a":17872,"t":"byte","b":[91,237,170,234,173,151,215,255]},{"a":17880,"t":"byte","b":[254,255,10,106,130,255,246,185]},{"a":17888,"t":"byte","b":[136,175,63,154,181,249,212,233]},{"a":17896,"t":"byte","b":[239,81,193,170,101,153,83,119]},{"a":17904,"t":"byte","b":[85,95,31,86,169,24,159,130]},{"a":17912,"t":"byte","b":[157,245,87,122,95,127,175,179]},{"a":17920,"t":"byte","b":[169,242,250,126,183,159,141,29]},{"a":17928,"t":"byte","b":[62,117,119,62,68,151,141,29]},{"a":17936,"t":"byte","b":[126,54,218,91,127,79,124,218]},{"a":17944,"t":"byte","b":[90,150,21,153,95,82,158,183]},{"a":17952,"t":"byte","b":[212,79,103,226,93,199,232,150]},{"a":17960,"t":"byte","b":[46,186,122,204,162,42,138,170]},{"a":17968,"t":"byte","b":[191,243,235,46,183,189,53,189]},{"a":17976,"t":"byte","b":[145,91,105,73,93,87,53,85]},{"a":17984,"t":"byte","b":[117,29,143,170,76,234,130,229]},{"a":17992,"t":"byte","b":[217,213,90,218,124,213,86,85]},{"a":18000,"t":"byte","b":[84,213,81,84,122,239,191,239]},{"a":18008,"t":"byte","b":[178,202,43,226,46,223,93,71]},{"a":18016,"t":"byte","b":[87,133,36,91,108,230,225,249]},{"a":18024,"t":"byte","b":[222,255,95,255,247,49,92,246]},{"a":18032,"t":"byte","b":[114,218,43,234,130,235,250,255]},{"a":18040,"t":"byte","b":[187,47,251,238,250,239,9,165]},{"a":18048,"t":"byte","b":[131,229,245,229,165,181,234,232]},{"a":18056,"t":"byte","b":[234,233,214,234,229,217,247,220]},{"a":18064,"t":"byte","b":[247,171,174,251,234,170,63,211]},{"a":18072,"t":"byte","b":[127,207,254,171,174,250,207,59]},{"a":18080,"t":"byte","b":[255,253,245,213,89,101,252,191]},{"a":18088,"t":"byte","b":[255,87,153,86,150,106,171,46]},{"a":18096,"t":"byte","b":[254,131,86,131,126,1,218,132]},{"a":18104,"t":"byte","b":[247,132,149,130,85,130,95,254]},{"a":18112,"t":"byte","b":[250,171,4,85,130,86,107,191]},{"a":18120,"t":"byte","b":[3,255,130,239,169,95,3,255]},{"a":18128,"t":"byte","b":[130,251,255,189,253,4,255,131]},{"a":18136,"t":"byte","b":[235,187,255,175,254,191,255,221]},{"a":18144,"t":"byte","b":[255,223,215,95,223,187,255,254]},{"a":18152,"t":"byte","b":[255,247,255,223,95,237,245,249]},{"a":18160,"t":"byte","b":[254,251,246,123,254,190,191,174]},{"a":18168,"t":"byte","b":[107,213,125,215,127,191,254,186]},{"a":18176,"t":"byte","b":[175,171,213,223,125,234,186,174]},{"a":18184,"t":"byte","b":[170,218,245,95,85,53,174,130]},{"a":18192,"t":"byte","b":[171,1,170,130,86,245,253,234]},{"a":18200,"t":"byte","b":[250,190,251,190,170,85,95,206]},{"a":18208,"t":"byte","b":[179,150,149,169,42,250,252,255]},{"a":18216,"t":"byte","b":[234,202,120,118,85,95,255,242]},{"a":18224,"t":"byte","b":[28,213,130,90,117,126,191,60]},{"a":18232,"t":"byte","b":[111,110,107,87,213,247,245,253]},{"a":18240,"t":"byte","b":[42,170,190,254,202,122,214,117]},{"a":18248,"t":"byte","b":[235,237,173,151,190,246,222,50]},{"a":18256,"t":"byte","b":[225,167,18,126,40,207,253,151]},{"a":18264,"t":"byte","b":[175,63,187,15,187,88,30,235]},{"a":18272,"t":"byte","b":[181,94,27,48,151,130,159,130]},{"a":18280,"t":"byte","b":[125,197,233,84,4,85,130,87]},{"a":18288,"t":"byte","b":[130,85,255,120,238,229,213,85]},{"a":18296,"t":"byte","b":[254,58,87,254,198,182,190,201]},{"a":18304,"t":"byte","b":[251,233,53,178,213,86,73,213]},{"a":18312,"t":"byte","b":[22,213,255,70,253,103,181,157]},{"a":18320,"t":"byte","b":[166,198,99,127,111,208,190,179]},{"a":18328,"t":"byte","b":[85,101,247,119,81,125,215,46]},{"a":18336,"t":"byte","b":[166,130,150,107,211,173,199,83]},{"a":18344,"t":"byte","b":[204,183,140,254,171,170,102,170]},{"a":18352,"t":"byte","b":[169,27,189,17,170,130,153,170]},{"a":18360,"t":"byte","b":[155,190,106,85,169,119,8,255]},{"a":18368,"t":"byte","b":[134,175,131,111,1,175,130,191]},{"a":18376,"t":"byte","b":[189,191,183,157,183,157,183,157]},{"a":18384,"t":"byte","b":[119,169,213,119,221,119,221,119]},{"a":18392,"t":"byte","b":[221,255,187,238,187,238,187,239]},{"a":18400,"t":"byte","b":[191,175,245,221,119,223,31,255]},{"a":18408,"t":"byte","b":[131,239,191,2,253,132,246,130]},{"a":18416,"t":"byte","b":[253,233,2,169,134,167,136,255]},{"a":18424,"t":"byte","b":[130,239,254,239,255,239,255,250]},{"a":18432,"l":"backdrop0_bitmap_packed_4000_4800","c":"Backdrop 0 (Fuji, pagoda and torii): the rest of its packed bitmap, which starts at $3F5F. Read backwards by bitmap_unpack ($17BB) from $4AAD down; output fills the bitmap $E640-$F53F. (continued from $4000; this part $4800-$4AAD)","t":"byte","b":[174,187,170,190,235,190,170,254]},{"a":18440,"t":"byte","b":[255,187,254,255,186,239,255,187]},{"a":18448,"t":"byte","b":[23,255,132,191,171,254,191,4]},{"a":18456,"t":"byte","b":[255,131,254,175,235,255,239,191]},{"a":18464,"t":"byte","b":[255,254,235,255,190,255,235,190]},{"a":18472,"t":"byte","b":[14,119,130,255,119,221,255,235]},{"a":18480,"t":"byte","b":[126,215,127,245,223,190,255,234]},{"a":18488,"t":"byte","b":[186,255,125,215,255,117,255,20]},{"a":18496,"t":"byte","b":[254,130,253,1,254,130,253,245]},{"a":18504,"t":"byte","b":[217,3,254,130,222,254,126,222]},{"a":18512,"t":"byte","b":[221,154,6,255,130,254,255,251]},{"a":18520,"t":"byte","b":[250,255,126,207,255,251,9,255]},{"a":18528,"t":"byte","b":[130,238,255,191,239,63,163,191]},{"a":18536,"t":"byte","b":[7,255,130,253,130,191,188,239]},{"a":18544,"t":"byte","b":[243,127,125,247,238,142,255,10]},{"a":18552,"t":"byte","b":[252,130,220,223,247,253,154,158]},{"a":18560,"t":"byte","b":[6,230,130,201,1,249,131,120]},{"a":18568,"t":"byte","b":[217,218,106,234,170,183,71,107]},{"a":18576,"t":"byte","b":[166,157,250,233,167,119,213,114]},{"a":18584,"t":"byte","b":[198,121,163,196,125,127,207,79]},{"a":18592,"t":"byte","b":[255,207,126,79,127,251,235,220]},{"a":18600,"t":"byte","b":[223,250,118,255,127,247,95,189]},{"a":18608,"t":"byte","b":[138,174,179,235,45,255,130,221]},{"a":18616,"t":"byte","b":[91,95,3,159,130,223,159,155]},{"a":18624,"t":"byte","b":[123,189,5,255,130,251,190,238]},{"a":18632,"t":"byte","b":[255,254,119,247,183,247,246,151]},{"a":18640,"t":"byte","b":[219,155,255,247,111,255,170,187]},{"a":18648,"t":"byte","b":[239,250,21,186,130,250,230,153]},{"a":18656,"t":"byte","b":[169,86,102,170,239,173,150,169]},{"a":18664,"t":"byte","b":[167,237,186,154,183,95,182,102]},{"a":18672,"t":"byte","b":[149,117,235,247,89,173,86,91]},{"a":18680,"t":"byte","b":[90,229,89,170,95,105,230,215]},{"a":18688,"t":"byte","b":[106,159,86,38,107,135,123,119]},{"a":18696,"t":"byte","b":[237,183,153,165,166,153,101,238]},{"a":18704,"t":"byte","b":[187,238,187,239,14,255,131,239]},{"a":18712,"t":"byte","b":[191,2,255,142,254,1,255,135]},{"a":18720,"t":"byte","b":[170,234,250,3,255,133,87,134]},{"a":18728,"t":"byte","b":[223,255,254,3,255,131,245,1]},{"a":18736,"t":"byte","b":[85,131,255,251,2,255,130,171]},{"a":18744,"t":"byte","b":[89,2,85,130,255,251,2,255]},{"a":18752,"t":"byte","b":[130,250,149,2,101,130,255,131]},{"a":18760,"t":"byte","b":[95,191,89,105,102,5,255,130]},{"a":18768,"t":"byte","b":[254,255,253,106,89,85,255,239]},{"a":18776,"t":"byte","b":[8,255,130,154,170,2,85,130]},{"a":18784,"t":"byte","b":[127,1,255,131,150,153,154,106]},{"a":18792,"t":"byte","b":[4,255,132,103,105,149,170,4]},{"a":18800,"t":"byte","b":[255,133,187,1,170,130,183,149]},{"a":18808,"t":"byte","b":[2,157,131,151,149,173,239,255]},{"a":18816,"t":"byte","b":[5,254,131,123,127,235,234,4]},{"a":18824,"t":"byte","b":[250,130,245,131,213,85,223,253]},{"a":18832,"t":"byte","b":[255,127,153,102,169,170,187,250]},{"a":18840,"t":"byte","b":[12,255,130,123,127,95,86,223]},{"a":18848,"t":"byte","b":[237,119,254,217,254,255,191,255]},{"a":18856,"t":"byte","b":[251,255,253,255,246,251,255,190]},{"a":18864,"t":"byte","b":[222,126,158,255,127,111,247,244]},{"a":18872,"t":"byte","b":[23,69,127,199,162,34,170,130]},{"a":18880,"t":"byte","b":[81,223,255,63,191,153,169,170]},{"a":18888,"t":"byte","b":[255,253,255,246,149,102,169,170]},{"a":18896,"t":"byte","b":[235,250,110,123,254,85,153,102]},{"a":18904,"t":"byte","b":[255,238,186,250,170,175,174,87]},{"a":18912,"t":"byte","b":[190,234,171,175,191,173,249,217]},{"a":18920,"t":"byte","b":[95,255,95,245,222,165,90,170]},{"a":18928,"t":"byte","b":[125,213,50,215,130,223,101,154]},{"a":18936,"t":"byte","b":[170,87,95,127,255,245,154,10]},{"a":18944,"t":"byte","b":[170,130,245,253,213,215,189,5]},{"a":18952,"t":"byte","b":[170,131,117,223,213,85,87,181]},{"a":18960,"t":"byte","b":[6,170,130,223,117,93,117,223]},{"a":18968,"t":"byte","b":[117,90,170,253,95,119,93,91]},{"a":18976,"t":"byte","b":[122,234,170,127,247,222,166,154]},{"a":18984,"t":"byte","b":[21,170,131,119,90,106,3,170]},{"a":18992,"t":"byte","b":[133,190,217,166,153,166,169,166]},{"a":19000,"t":"byte","b":[153,8,170,131,186,238,187,238]},{"a":19008,"t":"byte","b":[187,5,170,133,187,238,187,3]},{"a":19016,"t":"byte","b":[170,133,187,238,187,3,170,132]},{"a":19024,"t":"byte","b":[174,187,238,186,4,170,132,238]},{"a":19032,"t":"byte","b":[187,238,3,170,133,238,187,238]},{"a":19040,"t":"byte","b":[170,190,169,166,169,102,153,102]},{"a":19048,"t":"byte","b":[170,234,186,238,186,238,186,238]},{"a":19056,"t":"byte","b":[186,20,170,137,186,1,170,182]},{"a":19064,"t":"byte","b":[189,1,255,131,183,85,90,170]},{"a":19072,"t":"byte","b":[254,187,239,251,255,185,101,85]},{"a":19080,"t":"byte","b":[233,13,250,130,249,165,2,149]},{"a":19088,"t":"byte","b":[130,85,171,2,170,135,187,238]},{"a":19096,"t":"byte","b":[171,3,170,133,111,86,169,3]},{"a":19104,"t":"byte","b":[170,133,255,101,150,3,170,133]},{"a":19112,"t":"byte","b":[255,170,86,3,170,133]},{"a":19118,"l":"backdrop1_bitmap_packed","c":"Backdrop 1 (lake under a volcano): packed bitmap. The first word is the offset from $4AAE to the stream's last byte ($54AB); bitmap_unpack ($17BB) reads backwards from there. Control byte n < $80: copy the n bytes below it; n >= $80: repeat the byte below it n & $7F times; 0 ends. Output is written downwards from $F53F and fills $E640-$F53F, bitmap rows 5-16.","t":"byte","b":[253,9,0,85,168,255,136,85]},{"a":19126,"t":"byte","b":[208,170,144,85,248,170,144,255]},{"a":19134,"t":"byte","b":[160,85,200,255,144,85,139,119]},{"a":19142,"t":"byte","b":[93,85,221,117,5,85,134,221]},{"a":19150,"t":"byte","b":[117,85,3,90,130,106,130,170]},{"a":19158,"t":"byte","b":[131,253,1,255,135,85,1,213]},{"a":19166,"t":"byte","b":[130,245,130,253,131,85,134,87]},{"a":19174,"t":"byte","b":[1,85,135,117,213,2,85,144]},{"a":19182,"t":"byte","b":[170,136,85,192,170,136,85,208]},{"a":19190,"t":"byte","b":[170,136,255,136,85,136,255,144]},{"a":19198,"t":"byte","b":[170,152,255,136,85,152,87,1]},{"a":19206,"t":"byte","b":[85,131,93,87,2,85,130,239]},{"a":19214,"t":"byte","b":[190,2,127,130,155,94,2,85]},{"a":19222,"t":"byte","b":[130,170,154,106,170,106,5,170]},{"a":19230,"t":"byte","b":[130,102,1,254,130,250,130,234]},{"a":19238,"t":"byte","b":[130,170,102,221,117,87,85,221]},{"a":19246,"t":"byte","b":[117,87,9,85,131,117,213,2]},{"a":19254,"t":"byte","b":[85,130,117,213,2,255,136,85]},{"a":19262,"t":"byte","b":[136,255,136,85,136,255,136,85]},{"a":19270,"t":"byte","b":[176,255,136,170,136,85,168,170]},{"a":19278,"t":"byte","b":[136,85,160,255,168,170,136,85]},{"a":19286,"t":"byte","b":[144,255,168,239,1,255,135,239]},{"a":19294,"t":"byte","b":[1,255,135,85,136,254,1,255]},{"a":19302,"t":"byte","b":[135,239,191,2,255,150,85,136]},{"a":19310,"t":"byte","b":[170,136,85,144,170,144,85,136]},{"a":19318,"t":"byte","b":[255,136,85,183,64,1,85,134]},{"a":19326,"t":"byte","b":[5,192,2,85,136,255,134,195]},{"a":19334,"t":"byte","b":[0,2,85,136,255,135,252,1]},{"a":19342,"t":"byte","b":[255,150,195,0,2,170,168,85]},{"a":19350,"t":"byte","b":[135,80,1,85,135,5,1,255]},{"a":19358,"t":"byte","b":[136,85,143,65,1,85,157,65]},{"a":19366,"t":"byte","b":[64,32,3,255,134,63,130,85]},{"a":19374,"t":"byte","b":[135,80,1,255,131,240,130,2]},{"a":19382,"t":"byte","b":[10,41,93,64,0,12,60,131]},{"a":19390,"t":"byte","b":[128,142,11,85,130,21,1,5]},{"a":19398,"t":"byte","b":[130,240,252,191,3,85,133,84]},{"a":19406,"t":"byte","b":[2,168,3,85,130,84,80,2]},{"a":19414,"t":"byte","b":[10,0,15,6,255,130,3,16]},{"a":19422,"t":"byte","b":[0,20,25,1,6,85,133,21]},{"a":19430,"t":"byte","b":[130,197,1,85,133,84,80,0]},{"a":19438,"t":"byte","b":[3,85,130,84,64,2,0,130]},{"a":19446,"t":"byte","b":[32,34,2,85,130,21,4,0]},{"a":19454,"t":"byte","b":[128,48,0,160,0,32,4,89]},{"a":19462,"t":"byte","b":[40,62,198,85,21,1,129,32]},{"a":19470,"t":"byte","b":[60,207,243,22,85,130,81,64]},{"a":19478,"t":"byte","b":[2,3,130,32,140,84,80,66]},{"a":19486,"t":"byte","b":[50,63,42,136,184,21,4,0]},{"a":19494,"t":"byte","b":[128,163,7,43,189,10,43,62]},{"a":19502,"t":"byte","b":[170,185,229,24,149,130,224,184]},{"a":19510,"t":"byte","b":[254,107,85,149,6,85,130,0]},{"a":19518,"t":"byte","b":[130,202,191,91,3,85,130,102]},{"a":19526,"t":"byte","b":[204,187,239,238,171,6,85,131]},{"a":19534,"t":"byte","b":[5,1,240,206,207,240,6,170]},{"a":19542,"t":"byte","b":[130,240,192,9,24,90,106,171]},{"a":19550,"t":"byte","b":[159,63,4,1,129,168,13,224]},{"a":19558,"t":"byte","b":[130,137,0,2,34,1,136,10]},{"a":19566,"t":"byte","b":[165,250,128,10,0,130,18,64]},{"a":19574,"t":"byte","b":[6,153,118,85,6,21,130,5]},{"a":19582,"t":"byte","b":[1,0,207,191,5,255,132,252]},{"a":19590,"t":"byte","b":[130,20,80,255,252,242,33,132]},{"a":19598,"t":"byte","b":[17,69,25,255,13,63,130,3]},{"a":19606,"t":"byte","b":[19,64,74,90,5,170,130,171]},{"a":19614,"t":"byte","b":[160,188,196,195,13,0,8,128]},{"a":19622,"t":"byte","b":[42,1,23,111,175,128,15,40]},{"a":19630,"t":"byte","b":[130,170,167,213,93,127,170,168]},{"a":19638,"t":"byte","b":[40,32,64,127,95,215,0,2]},{"a":19646,"t":"byte","b":[138,168,40,42,248,94,32,0]},{"a":19654,"t":"byte","b":[2,8,138,123,159,166,29,21]},{"a":19662,"t":"byte","b":[130,5,192,200,190,252,187,6]},{"a":19670,"t":"byte","b":[170,131,128,1,87,95,31,160]},{"a":19678,"t":"byte","b":[129,5,84,93,221,246,255,0]},{"a":19686,"t":"byte","b":[225,58,175,154,95,254,250,1]},{"a":19694,"t":"byte","b":[32,127,107,254,187,249,233,64]},{"a":19702,"t":"byte","b":[3,63,251,190,171,189,239,43]},{"a":19710,"t":"byte","b":[191,126,234,175,249,89,125,25]},{"a":19718,"t":"byte","b":[158,169,150,213,153,165,214,118]},{"a":19726,"t":"byte","b":[221,89,98,152,101,86,149,96]},{"a":19734,"t":"byte","b":[0,6,41,85,149,119,95,166]},{"a":19742,"t":"byte","b":[191,223,107,123,251,245,165,8]},{"a":19750,"t":"byte","b":[143,250,175,169,253,95,126,192]},{"a":19758,"t":"byte","b":[34,128,178,5,239,247,253,0]},{"a":19766,"t":"byte","b":[5,22,215,223,92,86,117,64]},{"a":19774,"t":"byte","b":[143,49,6,187,110,171,187,3]},{"a":19782,"t":"byte","b":[54,142,10,54,154,123,43,192]},{"a":19790,"t":"byte","b":[176,148,169,218,101,122,150,76]},{"a":19798,"t":"byte","b":[25,127,233,8,206,234,242,88]},{"a":19806,"t":"byte","b":[200,223,200,127,212,23,181,221]},{"a":19814,"t":"byte","b":[1,130,104,166,89,149,153,249]},{"a":19822,"t":"byte","b":[105,170,167,30,119,102,251,231]},{"a":19830,"t":"byte","b":[250,254,223,127,90,35,234,130]},{"a":19838,"t":"byte","b":[170,190,186,234,4,170,130,175]},{"a":19846,"t":"byte","b":[191,190,171,4,170,130,174,130]},{"a":19854,"t":"byte","b":[171,174,170,90,169,170,150,154]},{"a":19862,"t":"byte","b":[8,169,130,170,1,255,136,86]},{"a":19870,"t":"byte","b":[92,122,233,171,170,175,251,47]},{"a":19878,"t":"byte","b":[222,10,191,130,254,235,238,170]},{"a":19886,"t":"byte","b":[101,165,102,154,166,170,122,117]},{"a":19894,"t":"byte","b":[171,239,251,250,252,242,250,234]},{"a":19902,"t":"byte","b":[85,244,140,194,171,25,255,130]},{"a":19910,"t":"byte","b":[170,6,5,85,125,5,255,131]},{"a":19918,"t":"byte","b":[117,1,170,130,234,190,187,251]},{"a":19926,"t":"byte","b":[239,254,189,7,103,130,169,154]},{"a":19934,"t":"byte","b":[86,85,150,177,229,237,223,126]},{"a":19942,"t":"byte","b":[190,254,174,13,191,130,219,233]},{"a":19950,"t":"byte","b":[91,111,121,122,85,149,169,89]},{"a":19958,"t":"byte","b":[234,186,250,153,175,186,251,253]},{"a":19966,"t":"byte","b":[246,19,253,130,255,249,250,255]},{"a":19974,"t":"byte","b":[191,127,6,255,130,126,235,170]},{"a":19982,"t":"byte","b":[255,254,167,149,7,85,130,223]},{"a":19990,"t":"byte","b":[85,119,213,4,170,132,186,239]},{"a":19998,"t":"byte","b":[170,191,149,5,85,131,215,119]},{"a":20006,"t":"byte","b":[253,3,170,132,86,255,187,3]},{"a":20014,"t":"byte","b":[85,133,166,245,106,3,170,132]},{"a":20022,"t":"byte","b":[254,170,95,3,170,133,238,234]},{"a":20030,"t":"byte","b":[85,171,4,170,132,187,238,122]},{"a":20038,"t":"byte","b":[234,4,170,132,105,102,90,3]},{"a":20046,"t":"byte","b":[255,132,235,186,239,175,4,255]},{"a":20054,"t":"byte","b":[134,247,89,175,213,247,223,191]},{"a":20062,"t":"byte","b":[7,170,130,255,238,255,234,187]},{"a":20070,"t":"byte","b":[191,6,85,130,255,235,190,187]},{"a":20078,"t":"byte","b":[238,101,85,90,190,251,254,174]},{"a":20086,"t":"byte","b":[229,13,85,130,149,255,238,175]},{"a":20094,"t":"byte","b":[235,5,85,130,89,153,117,245]},{"a":20102,"t":"byte","b":[4,95,130,253,149,103,153,159]},{"a":20110,"t":"byte","b":[181,157,171,154,239,238,186,170]},{"a":20118,"t":"byte","b":[103,101,85,170,191,85,87,106]},{"a":20126,"t":"byte","b":[94,118,106,234,154,106,170,106]},{"a":20134,"t":"byte","b":[110,185,235,150,153,86,153,223]},{"a":20142,"l":"backdrop1_bitmap_packed_4eae","c":"Backdrop 1 (lake under a volcano): packed bitmap. The first word is the offset from $4AAE to the stream's last byte ($54AB); bitmap_unpack ($17BB) reads backwards from there. Control byte n < $80: copy the n bytes below it; n >= $80: repeat the byte below it n & $7F times; 0 ends. Output is written downwards from $F53F and fills $E640-$F53F, bitmap rows 5-16. (continued from $4AAE; this part $4EAE-$52AD)","t":"byte","b":[157,125,255,40,95,130,215,117]},{"a":20150,"t":"byte","b":[255,190,233,169,190,191,254,238]},{"a":20158,"t":"byte","b":[239,11,191,130,238,130,249,166]},{"a":20166,"t":"byte","b":[150,3,255,131,191,130,174,170]},{"a":20174,"t":"byte","b":[106,3,255,130,159,111,91,174]},{"a":20182,"t":"byte","b":[93,166,6,255,130,95,1,87]},{"a":20190,"t":"byte","b":[130,149,1,85,130,122,1,170]},{"a":20198,"t":"byte","b":[132,160,42,173,90,4,170,130]},{"a":20206,"t":"byte","b":[171,130,170,130,240,1,255,131]},{"a":20214,"t":"byte","b":[235,207,254,206,126,223,6,170]},{"a":20222,"t":"byte","b":[130,162,164,170,26,170,255,253]},{"a":20230,"t":"byte","b":[7,255,131,254,255,243,126,4]},{"a":20238,"t":"byte","b":[170,131,10,153,110,42,86,5]},{"a":20246,"t":"byte","b":[85,131,21,117,237,149,93,5]},{"a":20254,"t":"byte","b":[170,130,168,171,158,98,57,233]},{"a":20262,"t":"byte","b":[171,167,229,151,10,87,130,149]},{"a":20270,"t":"byte","b":[130,229,86,213,150,233,159,238]},{"a":20278,"t":"byte","b":[106,235,171,10,170,130,182,214]},{"a":20286,"t":"byte","b":[2,85,130,213,215,2,255,130]},{"a":20294,"t":"byte","b":[254,250,106,157,171,5,170,130]},{"a":20302,"t":"byte","b":[171,237,151,101,213,169,254,250]},{"a":20310,"t":"byte","b":[239,186,239,186,12,85,130,165]},{"a":20318,"t":"byte","b":[170,2,186,130,255,93,2,85]},{"a":20326,"t":"byte","b":[131,213,101,87,93,94,170,6]},{"a":20334,"t":"byte","b":[255,130,43,183,221,119,221,191]},{"a":20342,"t":"byte","b":[235,252,235,127,31,127,221,254]},{"a":20350,"t":"byte","b":[255,191,250,119,253,119,221,175]},{"a":20358,"t":"byte","b":[22,170,130,234,110,153,102,155]},{"a":20366,"t":"byte","b":[5,170,134,171,130,223,253,247]},{"a":20374,"t":"byte","b":[87,213,5,255,130,191,255,2]},{"a":20382,"t":"byte","b":[191,130,255,187,254,3,255,130]},{"a":20390,"t":"byte","b":[251,254,255,234,187,5,255,130]},{"a":20398,"t":"byte","b":[254,170,235,190,171,5,170,131]},{"a":20406,"t":"byte","b":[238,174,187,234,170,171,174,191]},{"a":20414,"t":"byte","b":[234,174,186,11,170,130,234,1]},{"a":20422,"t":"byte","b":[170,131,234,187,174,170,251,5]},{"a":20430,"t":"byte","b":[170,130,175,238,186,238,186,175]},{"a":20438,"t":"byte","b":[186,234,187,9,170,130,234,130]},{"a":20446,"t":"byte","b":[186,234,170,174,4,170,135,234]},{"a":20454,"t":"byte","b":[171,191,3,255,130,191,1,170]},{"a":20462,"t":"byte","b":[131,255,133,250,1,170,130,173]},{"a":20470,"t":"byte","b":[191,234,239,170,234,181,165,8]},{"a":20478,"t":"byte","b":[255,132,254,130,170,130,85,131]},{"a":20486,"t":"byte","b":[151,106,2,170,131,85,87,254]},{"a":20494,"t":"byte","b":[174,250,174,250,170,8,255,131]},{"a":20502,"t":"byte","b":[239,187,174,3,170,130,234,1]},{"a":20510,"t":"byte","b":[170,130,171,175,254,186,170,255]},{"a":20518,"t":"byte","b":[95,7,223,130,123,106,2,170]},{"a":20526,"t":"byte","b":[130,194,1,255,131,250,1,255]},{"a":20534,"t":"byte","b":[130,250,125,190,251,254,46,23]},{"a":20542,"t":"byte","b":[79,236,95,127,255,243,253,119]},{"a":20550,"t":"byte","b":[191,118,255,254,253,247,127,255]},{"a":20558,"t":"byte","b":[223,255,248,191,221,125,247,126]},{"a":20566,"t":"byte","b":[251,32,255,130,250,239,255,223]},{"a":20574,"t":"byte","b":[245,127,253,254,223,126,10,255]},{"a":20582,"t":"byte","b":[131,171,255,143,234,190,5,170]},{"a":20590,"t":"byte","b":[130,234,170,166,167,155,103,6]},{"a":20598,"t":"byte","b":[170,131,234,122,215,126,235,171]},{"a":20606,"t":"byte","b":[154,165,170,191,165,166,105,183]},{"a":20614,"t":"byte","b":[221,181,213,229,110,19,218,130]},{"a":20622,"t":"byte","b":[166,154,102,153,155,239,170,186]},{"a":20630,"t":"byte","b":[235,170,10,154,131,234,127,247]},{"a":20638,"t":"byte","b":[245,219,110,6,106,130,85,157]},{"a":20646,"t":"byte","b":[167,157,85,221,118,85,247,246]},{"a":20654,"t":"byte","b":[221,187,255,187,239,191,16,255]},{"a":20662,"t":"byte","b":[130,191,1,255,134,223,239,2]},{"a":20670,"t":"byte","b":[255,133,247,1,255,135,251,1]},{"a":20678,"t":"byte","b":[255,133,185,255,2,254,131,239]},{"a":20686,"t":"byte","b":[234,245,255,253,5,191,131,187]},{"a":20694,"t":"byte","b":[111,95,3,255,131,254,250,2]},{"a":20702,"t":"byte","b":[255,132,234,187,255,235,191,235]},{"a":20710,"t":"byte","b":[250,173,245,247,94,123,221,253]},{"a":20718,"t":"byte","b":[14,255,130,187,117,215,3,255]},{"a":20726,"t":"byte","b":[133,187,222,159,223,247,255,254]},{"a":20734,"t":"byte","b":[239,255,239,170,255,234,13,255]},{"a":20742,"t":"byte","b":[132,153,118,221,118,187,191,6]},{"a":20750,"t":"byte","b":[255,130,191,255,254,175,250,5]},{"a":20758,"t":"byte","b":[255,130,170,255,171,254,191,250]},{"a":20766,"t":"byte","b":[6,191,130,255,131,170,1,191]},{"a":20774,"t":"byte","b":[131,255,254,2,255,134,184,247]},{"a":20782,"t":"byte","b":[255,248,4,255,130,63,236,191]},{"a":20790,"t":"byte","b":[127,15,253,6,245,131,57,245]},{"a":20798,"t":"byte","b":[246,255,191,5,175,131,111,1]},{"a":20806,"t":"byte","b":[175,130,123,239,251,3,255,133]},{"a":20814,"t":"byte","b":[171,175,2,191,130,171,1,170]},{"a":20822,"t":"byte","b":[131,190,174,250,235,175,250,6]},{"a":20830,"t":"byte","b":[170,130,101,130,85,117,254,3]},{"a":20838,"t":"byte","b":[250,130,246,208,247,3,255,133]},{"a":20846,"t":"byte","b":[191,254,127,3,255,134,191,1]},{"a":20854,"t":"byte","b":[255,131,254,171,187,253,4,255]},{"a":20862,"t":"byte","b":[131,204,42,2,255,130,221,1]},{"a":20870,"t":"byte","b":[255,130,253,31,127,255,191,239]},{"a":20878,"t":"byte","b":[6,255,130,127,1,255,131,250]},{"a":20886,"t":"byte","b":[246,2,255,133,250,170,86,254]},{"a":20894,"t":"byte","b":[4,253,130,213,85,86,3,85]},{"a":20902,"t":"byte","b":[130,126,90,2,119,130,253,189]},{"a":20910,"t":"byte","b":[2,255,130,238,250,170,174,250]},{"a":20918,"t":"byte","b":[169,6,170,130,126,107,190,230]},{"a":20926,"t":"byte","b":[89,150,89,154,8,90,131,101]},{"a":20934,"t":"byte","b":[217,125,95,85,5,239,131,123]},{"a":20942,"t":"byte","b":[235,234,93,255,5,170,132,106]},{"a":20950,"t":"byte","b":[130,234,186,94,3,122,130,234]},{"a":20958,"t":"byte","b":[130,85,136,213,253,2,255,136]},{"a":20966,"t":"byte","b":[175,1,170,131,187,1,170,132]},{"a":20974,"t":"byte","b":[255,130,238,187,238,3,255,131]},{"a":20982,"t":"byte","b":[223,150,247,173,251,253,255,239]},{"a":20990,"t":"byte","b":[235,191,255,215,111,183,14,255]},{"a":20998,"t":"byte","b":[130,254,171,253,181,255,247,6]},{"a":21006,"t":"byte","b":[255,130,191,219,126,221,189,238]},{"a":21014,"t":"byte","b":[191,238,119,255,238,255,189,255]},{"a":21022,"t":"byte","b":[191,255,186,171,190,19,106,130]},{"a":21030,"t":"byte","b":[170,131,255,245,191,255,254,251]},{"a":21038,"t":"byte","b":[239,251,8,255,132,238,251,2]},{"a":21046,"t":"byte","b":[255,133,239,255,254,235,126,254]},{"a":21054,"t":"byte","b":[235,7,255,130,253,130,190,235]},{"a":21062,"t":"byte","b":[2,255,132,214,251,238,191,169]},{"a":21070,"t":"byte","b":[170,171,7,234,130,170,169,149]},{"a":21078,"t":"byte","b":[166,106,90,165,7,255,132,253]},{"a":21086,"t":"byte","b":[190,186,255,175,5,127,130,95]},{"a":21094,"t":"byte","b":[234,170,255,175,5,255,132,174]},{"a":21102,"t":"byte","b":[158,157,93,85,5,117,131,234]},{"a":21110,"t":"byte","b":[214,2,213,130,85,1,93,131]},{"a":21118,"t":"byte","b":[171,254,175,170,4,106,131,126]},{"a":21126,"t":"byte","b":[174,254,235,4,255,134,187,1]},{"a":21134,"t":"byte","b":[255,134,171,1,170,133,169,85]},{"a":21142,"t":"byte","b":[106,109,4,85,134,170,234,106]},{"a":21150,"t":"byte","b":[122,90,117,6,93,130,170,134]},{"a":21158,"t":"byte","b":[87,93,102,3,169,130,166,169]},{"a":21166,"l":"backdrop1_bitmap_packed_52ae","c":"Backdrop 1 (lake under a volcano): packed bitmap. The first word is the offset from $4AAE to the stream's last byte ($54AB); bitmap_unpack ($17BB) reads backwards from there. Control byte n < $80: copy the n bytes below it; n >= $80: repeat the byte below it n & $7F times; 0 ends. Output is written downwards from $F53F and fills $E640-$F53F, bitmap rows 5-16. (continued from $4AAE; this part $52AE-$54AB)","t":"byte","b":[175,3,255,130,106,150,89,86]},{"a":21174,"t":"byte","b":[117,5,127,131,169,1,170,132]},{"a":21182,"t":"byte","b":[234,1,255,130,169,1,170,133]},{"a":21190,"t":"byte","b":[245,255,125,150,4,170,131,171]},{"a":21198,"t":"byte","b":[125,253,170,234,190,175,250,234]},{"a":21206,"t":"byte","b":[165,10,170,134,190,233,154,3]},{"a":21214,"t":"byte","b":[239,130,255,254,247,111,253,247]},{"a":21222,"t":"byte","b":[255,245,215,189,238,190,235,187]},{"a":21230,"t":"byte","b":[93,247,255,239,187,175,20,191]},{"a":21238,"t":"byte","b":[130,127,238,191,235,175,231,6]},{"a":21246,"t":"byte","b":[239,130,247,175,107,167,4,239]},{"a":21254,"t":"byte","b":[130,255,130,85,130,87,93,2]},{"a":21262,"t":"byte","b":[119,131,93,171,167,95,127,5]},{"a":21270,"t":"byte","b":[255,131,191,1,170,135,149,1]},{"a":21278,"t":"byte","b":[85,135,169,174,250,238,187,254]},{"a":21286,"t":"byte","b":[186,181,119,9,170,131,169,165]},{"a":21294,"t":"byte","b":[151,125,213,85,106,7,170,131]},{"a":21302,"t":"byte","b":[234,186,2,175,130,94,93,2]},{"a":21310,"t":"byte","b":[85,131,149,169,85,106,4,170]},{"a":21318,"t":"byte","b":[134,85,149,165,3,170,132,255]},{"a":21326,"t":"byte","b":[1,170,131,234,254,2,255,130]},{"a":21334,"t":"byte","b":[125,153,101,154,166,167,247,255]},{"a":21342,"t":"byte","b":[127,9,85,130,149,247,255,170]},{"a":21350,"t":"byte","b":[235,254,6,85,130,253,255,250]},{"a":21358,"t":"byte","b":[175,255,191,125,254,229,151,127]},{"a":21366,"t":"byte","b":[11,255,131,170,130,234,1,170]},{"a":21374,"t":"byte","b":[131,157,123,2,170,135,218,154]},{"a":21382,"t":"byte","b":[150,165,4,170,130,171,1,170]},{"a":21390,"t":"byte","b":[130,95,170,234,170,4,169,130]},{"a":21398,"t":"byte","b":[170,130,94,86,117,93,87,5]},{"a":21406,"t":"byte","b":[85,130,117,130,85,246,93,117]},{"a":21414,"t":"byte","b":[213,117,87,106,170,166,170,105]},{"a":21422,"t":"byte","b":[107,110,170,190,235,254,213,159]},{"a":21430,"t":"byte","b":[127,21,255,130,170,169,255,106]},{"a":21438,"t":"byte","b":[4,170,132,106,230,254,169,4]},{"a":21446,"t":"byte","b":[170,136,175,250,2,170,130,171]},{"a":21454,"t":"byte","b":[130,174,186,235,174,4,170,133]},{"a":21462,"t":"byte","b":[230,191,2,170,135,90,223,2]},{"a":21470,"t":"byte","b":[170,130,234,1,170,131,122,151]},{"a":21478,"t":"byte","b":[169,3,170,131,169,167,126,106]},{"a":21486,"t":"byte","b":[4,170,132,255,1,170,133,182]},{"a":21494,"t":"byte","b":[165,106,154,166,5,170,131,239]},{"a":21502,"t":"byte","b":[190,250,3,170,133,102,169,153]},{"a":21510,"t":"byte","b":[166,150,154,6,170,130,171,234]},{"a":21518,"t":"byte","b":[2,170,130,171,1,170,131,175]},{"a":21526,"t":"byte","b":[250,2,238,130,174,130,170,130]},{"a":21534,"t":"byte","b":[250,1,234,130,170,133,186,1]},{"a":21542,"t":"byte","b":[170,138,191,250,234,3,170,130]},{"a":21550,"t":"byte","b":[166,169,86,3,170,133,175,1]},{"a":21558,"t":"byte","b":[170,135,165,154,2,170,134,250]},{"a":21566,"t":"byte","b":[175,170,158,175,5,170,131,190]},{"a":21574,"t":"byte","b":[234,2,170,130,165,255,2,170]},{"a":21582,"t":"byte","b":[133,169,223,190,3,170,132,167]},{"a":21590,"t":"byte","b":[254,2,170,132,159,229,191,3]},{"a":21598,"t":"byte","b":[170,133,159,1,254,130,251,1]},{"a":21606,"t":"byte","b":[170,132,234,1,170,135,191,171]},{"a":21614,"t":"byte","b":[2,170,134,234,122,213,181,175]},{"a":21622,"t":"byte","b":[5,170,134,127,234,2,170,131]},{"a":21630,"t":"byte","b":[250,175,169,255,4,170,132,175]},{"a":21638,"t":"byte","b":[170,255,86,4,170,132,234,174]},{"a":21646,"t":"byte","b":[247,3,170,133,182,175,250,3]},{"a":21654,"t":"byte","b":[170,134,106,1,170,134,169,130]},{"a":21662,"t":"byte","b":[170,134,90,127,2,255,134,229]},{"a":21670,"t":"byte","b":[149,2,255,134,170,160]},{"a":21676,"l":"backdrop2_bitmap_packed","c":"Backdrop 2 (dojo interior): packed bitmap, read backwards from $5CEB by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F.","t":"byte","b":[63,8,0,85,168,255,136,85]},{"a":21684,"t":"byte","b":[208,170,144,85,151,117,1,85]},{"a":21692,"t":"byte","b":[224,170,144,255,160,85,139,95]},{"a":21700,"t":"byte","b":[1,255,132,85,95,2,255,134]},{"a":21708,"t":"byte","b":[175,136,170,149,2,151,130,157]},{"a":21716,"t":"byte","b":[147,148,149,170,80,125,213,87]},{"a":21724,"t":"byte","b":[125,213,83,170,21,197,113,204]},{"a":21732,"t":"byte","b":[95,63,213,170,21,85,130,84]},{"a":21740,"t":"byte","b":[87,212,5,61,170,117,29,212]},{"a":21748,"t":"byte","b":[83,221,19,68,255,85,37,148]},{"a":21756,"t":"byte","b":[17,84,130,89,42,255,85,37]},{"a":21764,"t":"byte","b":[150,84,149,37,65,170,127,196]},{"a":21772,"t":"byte","b":[29,92,87,85,53,170,85,223]},{"a":21780,"t":"byte","b":[113,95,241,53,85,170,86,246]},{"a":21788,"t":"byte","b":[78,210,54,118,54,90,35,89]},{"a":21796,"t":"byte","b":[135,170,85,115,204,213,207,116]},{"a":21804,"t":"byte","b":[85,170,85,87,125,245,116,212]},{"a":21812,"t":"byte","b":[52,170,17,85,130,79,53,212]},{"a":21820,"t":"byte","b":[215,244,170,85,81,124,31,247]},{"a":21828,"t":"byte","b":[127,215,170,14,85,130,80,15]},{"a":21836,"t":"byte","b":[247,213,245,255,85,5,8,87]},{"a":21844,"t":"byte","b":[131,90,104,170,239,227,5,85]},{"a":21852,"t":"byte","b":[131,0,130,170,1,85,131,252]},{"a":21860,"t":"byte","b":[87,21,5,170,85,220,115,92]},{"a":21868,"t":"byte","b":[213,197,245,170,13,85,130,199]},{"a":21876,"t":"byte","b":[252,127,67,84,169,6,89,132]},{"a":21884,"t":"byte","b":[25,1,201,130,90,1,89,134]},{"a":21892,"t":"byte","b":[88,170,85,81,93,69,113,95]},{"a":21900,"t":"byte","b":[87,170,10,85,130,87,80,79]},{"a":21908,"t":"byte","b":[61,244,170,125,196,85,63,245]},{"a":21916,"t":"byte","b":[87,240,170,85,61,76,19,207]},{"a":21924,"t":"byte","b":[113,92,170,85,117,213,23,197]},{"a":21932,"t":"byte","b":[241,124,170,30,85,130,51,127]},{"a":21940,"t":"byte","b":[85,127,53,170,85,197,48,95]},{"a":21948,"t":"byte","b":[253,207,83,170,85,60,247,85]},{"a":21956,"t":"byte","b":[95,240,71,170,22,85,130,21]},{"a":21964,"t":"byte","b":[255,4,85,255,170,85,117,213]},{"a":21972,"t":"byte","b":[85,245,77,19,165,14,101,134]},{"a":21980,"t":"byte","b":[229,1,255,133,246,131,85,245]},{"a":21988,"t":"byte","b":[2,255,132,175,170,2,85,131]},{"a":21996,"t":"byte","b":[245,1,254,132,255,135,251,1]},{"a":22004,"t":"byte","b":[170,136,175,136,191,143,159,147]},{"a":22012,"t":"byte","b":[149,170,6,255,130,199,95,49]},{"a":22020,"t":"byte","b":[85,215,170,6,255,130,170,26]},{"a":22028,"t":"byte","b":[2,84,165,255,6,170,130,144]},{"a":22036,"t":"byte","b":[169,66,85,165,255,6,170,130]},{"a":22044,"t":"byte","b":[98,84,145,69,18,255,6,170]},{"a":22052,"t":"byte","b":[130,81,124,76,53,253,170,6]},{"a":22060,"t":"byte","b":[255,130,161,104,88,6,88,255]},{"a":22068,"t":"byte","b":[6,170,130,150,130,5,38,85]},{"a":22076,"t":"byte","b":[255,4,170,130,132,153,25,101]},{"a":22084,"t":"byte","b":[89,255,6,170,130,222,82,70]},{"a":22092,"t":"byte","b":[54,222,170,6,85,130,89,88]},{"a":22100,"t":"byte","b":[91,88,89,90,6,85,130,64]},{"a":22108,"t":"byte","b":[42,150,161,42,255,6,85,130]},{"a":22116,"t":"byte","b":[17,193,252,127,255,170,6,85]},{"a":22124,"t":"byte","b":[130,61,71,116,29,207,170,6]},{"a":22132,"t":"byte","b":[85,130,53,125,207,52,77,170]},{"a":22140,"t":"byte","b":[6,85,130,106,88,169,34,105]},{"a":22148,"t":"byte","b":[255,6,85,130,255,240,255,240]},{"a":22156,"t":"byte","b":[255,240,255,192,240,0,240,0]},{"a":22164,"t":"byte","b":[240,0,234,138,4,3,1,3]},{"a":22172,"t":"byte","b":[0,2,1,193,97,106,170,22]},{"a":22180,"t":"byte","b":[168,255,30,85,130,83,255,244]},{"a":22188,"t":"byte","b":[49,85,170,6,85,130,201,25]},{"a":22196,"t":"byte","b":[217,121,249,169,6,85,130,91]},{"a":22204,"t":"byte","b":[130,88,1,91,130,90,1,85]},{"a":22212,"t":"byte","b":[130,21,215,76,31,253,170,6]},{"a":22220,"t":"byte","b":[85,130,211,95,77,247,95,170]},{"a":22228,"t":"byte","b":[6,85,130,255,84,197,241,252]},{"a":22236,"t":"byte","b":[170,6,85,130,22,165,73,146]},{"a":22244,"t":"byte","b":[85,255,6,85,130,31,253,199]},{"a":22252,"t":"byte","b":[31,125,170,6,85,130,87,125]},{"a":22260,"t":"byte","b":[207,84,125,170,6,85,130,212]},{"a":22268,"t":"byte","b":[1,117,130,215,61,170,3,85]},{"a":22276,"t":"byte","b":[130,223,112,247,197,23,170,6]},{"a":22284,"t":"byte","b":[85,130,19,84,117,221,255,170]},{"a":22292,"t":"byte","b":[6,85,130,196,241,61,15,71]},{"a":22300,"t":"byte","b":[170,6,85,130,101,1,229,131]},{"a":22308,"t":"byte","b":[101,165,2,85,130,246,136,255]},{"a":22316,"t":"byte","b":[136,126,136,247,1,213,130,85]},{"a":22324,"t":"byte","b":[131,89,106,2,170,131,234,130]},{"a":22332,"t":"byte","b":[250,130,254,175,165,3,167,134]},{"a":22340,"t":"byte","b":[85,255,2,170,134,85,255,2]},{"a":22348,"t":"byte","b":[170,134,85,255,2,170,134,85]},{"a":22356,"t":"byte","b":[170,2,255,134,85,170,2,255]},{"a":22364,"t":"byte","b":[134,85,170,2,255,134,85,255]},{"a":22372,"t":"byte","b":[2,170,134,85,255,2,170,134]},{"a":22380,"t":"byte","b":[85,255,2,170,134,85,255,2]},{"a":22388,"t":"byte","b":[171,134,255,85,2,170,134,85]},{"a":22396,"t":"byte","b":[255,2,170,134,85,255,2,169]},{"a":22404,"t":"byte","b":[134,85,255,2,85,135,255,1]},{"a":22412,"t":"byte","b":[85,135,255,1,234,134,254,194]},{"a":22420,"t":"byte","b":[250,202,248,242,250,242,162,9]},{"a":22428,"t":"byte","b":[168,130,32,130,2,162,130,168]},{"a":22436,"t":"byte","b":[161,163,3,169,133,161,85,170]},{"a":22444,"t":"byte","b":[3,86,134,85,170,2,255,134]},{"a":22452,"t":"byte","b":[85,170,2,255,134,85,170,2]},{"a":22460,"t":"byte","b":[85,135,170,1,85,134,170,85]},{"a":22468,"t":"byte","b":[2,167,134,85,255,2,170,135]},{"a":22476,"t":"byte","b":[85,1,254,134,85,170,2,85]},{"a":22484,"t":"byte","b":[134,170,85,2,169,134,85,170]},{"a":22492,"t":"byte","b":[2,255,134,85,170,2,255,134]},{"a":22500,"t":"byte","b":[170,85,2,234,134,85,170,2]},{"a":22508,"t":"byte","b":[85,135,170,1,86,134,246,136]},{"a":22516,"t":"byte","b":[170,136,126,136,189,253,2,255]},{"a":22524,"t":"byte","b":[134,126,1,95,130,87,1,151]},{"a":22532,"t":"byte","b":[132,94,136,170,136,255,135,254]},{"a":22540,"t":"byte","b":[1,255,131,254,251,239,131,195]},{"a":22548,"t":"byte","b":[5,255,130,234,136,8,251,4]},{"a":22556,"t":"byte","b":[8,130,255,130,175,58,48,255]},{"a":22564,"t":"byte","b":[4,48,130,255,132,191,239,203]},{"a":22572,"t":"byte","b":[206,4,255,144,170,136,171,136]},{"a":22580,"t":"byte","b":[255,144,171,136,255,144,234,136]},{"a":22588,"t":"byte","b":[254,240,243,252,255,192,255,192]},{"a":22596,"t":"byte","b":[8,170,130,234,0,60,0,192]},{"a":22604,"t":"byte","b":[0,35,131,8,3,134,87,136]},{"a":22612,"t":"byte","b":[255,152,170,136,91,136,255,136]},{"a":22620,"t":"byte","b":[254,136,170,136,86,136,255,144]},{"a":22628,"t":"byte","b":[234,136,170,136,86,136,246,136]},{"a":22636,"t":"byte","b":[255,136,126,136,255,136,189,136]},{"a":22644,"t":"byte","b":[91,136,170,136,254,251,2,248]},{"a":22652,"t":"byte","b":[131,239,1,236,130,130,170,2]},{"a":22660,"t":"byte","b":[130,131,170,1,130,130,12,174]},{"a":22668,"t":"byte","b":[2,12,131,174,1,12,130,32]},{"a":22676,"t":"byte","b":[170,2,32,131,170,1,32,130]},{"a":22684,"t":"byte","b":[206,255,2,204,131,255,1,204]},{"a":22692,"t":"byte","b":[130,255,1,191,132,239,1,47]},{"a":22700,"l":"backdrop2_bitmap_packed_58ac","c":"Backdrop 2 (dojo interior): packed bitmap, read backwards from $5CEB by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F. (continued from $54AC; this part $58AC-$5CAB)","t":"byte","b":[130,255,132,254,131,255,131,239]},{"a":22708,"t":"byte","b":[1,171,131,111,95,2,171,136]},{"a":22716,"t":"byte","b":[255,144,254,136,170,136,255,136]},{"a":22724,"t":"byte","b":[191,136,85,212,213,244,253,5]},{"a":22732,"t":"byte","b":[254,131,128,0,128,0,160,85]},{"a":22740,"t":"byte","b":[95,127,2,6,10,42,106,13]},{"a":22748,"t":"byte","b":[170,131,86,136,255,144,170,144]},{"a":22756,"t":"byte","b":[91,136,255,136,254,136,170,136]},{"a":22764,"t":"byte","b":[86,136,255,144,234,136,170,136]},{"a":22772,"t":"byte","b":[86,136,246,130,247,130,245,1]},{"a":22780,"t":"byte","b":[246,131,170,130,255,130,93,1]},{"a":22788,"t":"byte","b":[158,131,189,130,253,130,125,1]},{"a":22796,"t":"byte","b":[189,131,255,136,233,136,94,136]},{"a":22804,"t":"byte","b":[255,136,184,186,2,184,130,172]},{"a":22812,"t":"byte","b":[174,2,172,130,195,255,2,195]},{"a":22820,"t":"byte","b":[131,255,1,195,130,8,251,2]},{"a":22828,"t":"byte","b":[8,131,251,1,8,130,48,255]},{"a":22836,"t":"byte","b":[2,48,131,255,48,58,204,255]},{"a":22844,"t":"byte","b":[5,204,131,255,204,140,58,186]},{"a":22852,"t":"byte","b":[5,58,130,234,132,170,144,171]},{"a":22860,"t":"byte","b":[136,170,136,255,136,254,136,170]},{"a":22868,"t":"byte","b":[136,255,136,191,136,255,136,250]},{"a":22876,"t":"byte","b":[136,170,136,86,136,255,160,94]},{"a":22884,"t":"byte","b":[136,170,136,171,136,255,136,87]},{"a":22892,"t":"byte","b":[136,170,144,234,136,255,136,87]},{"a":22900,"t":"byte","b":[136,167,136,182,136,126,136,170]},{"a":22908,"t":"byte","b":[182,150,3,182,133,233,136,173]},{"a":22916,"t":"byte","b":[136,255,136,254,130,255,134,195]},{"a":22924,"t":"byte","b":[255,131,227,251,254,6,255,130]},{"a":22932,"t":"byte","b":[8,251,2,8,131,187,234,255]},{"a":22940,"t":"byte","b":[42,106,5,42,130,43,234,2]},{"a":22948,"t":"byte","b":[106,130,173,130,167,175,159,3]},{"a":22956,"t":"byte","b":[175,130,111,1,255,136,170,136]},{"a":22964,"t":"byte","b":[255,136,171,136,255,136,170,136]},{"a":22972,"t":"byte","b":[171,136,170,144,191,136,170,136]},{"a":22980,"t":"byte","b":[175,136,170,136,86,136,255,136]},{"a":22988,"t":"byte","b":[170,136,255,144,94,136,170,136]},{"a":22996,"t":"byte","b":[171,136,255,136,86,136,255,144]},{"a":23004,"t":"byte","b":[234,136,170,136,86,136,246,130]},{"a":23012,"t":"byte","b":[245,1,247,130,246,131,158,130]},{"a":23020,"t":"byte","b":[93,1,255,130,170,131,189,130]},{"a":23028,"t":"byte","b":[125,1,253,130,189,131,170,136]},{"a":23036,"t":"byte","b":[233,136,173,136,170,154,171,130]},{"a":23044,"t":"byte","b":[175,132,151,167,2,171,130,170]},{"a":23052,"t":"byte","b":[131,186,219,218,3,154,130,170]},{"a":23060,"t":"byte","b":[131,169,1,170,132,234,132,170]},{"a":23068,"t":"byte","b":[144,171,136,85,134,255,130,85]},{"a":23076,"t":"byte","b":[133,170,130,255,1,170,131,165]},{"a":23084,"t":"byte","b":[85,95,3,255,130,170,132,90]},{"a":23092,"t":"byte","b":[85,245,255,4,170,133,90,1]},{"a":23100,"t":"byte","b":[85,130,191,134,170,130,85,132]},{"a":23108,"t":"byte","b":[87,255,254,170,4,255,131,235]},{"a":23116,"t":"byte","b":[170,150,3,85,134,149,170,234]},{"a":23124,"t":"byte","b":[255,4,86,134,170,174,2,85]},{"a":23132,"t":"byte","b":[133,95,255,250,3,85,131,87]},{"a":23140,"t":"byte","b":[127,254,234,4,170,132,234,255]},{"a":23148,"t":"byte","b":[127,3,85,135,169,170,254,3]},{"a":23156,"t":"byte","b":[91,134,170,130,85,132,87,127]},{"a":23164,"t":"byte","b":[254,250,4,170,131,191,255,213]},{"a":23172,"t":"byte","b":[3,85,134,169,170,254,255,4]},{"a":23180,"t":"byte","b":[86,133,150,170,234,3,85,133]},{"a":23188,"t":"byte","b":[87,255,254,3,85,132,95,255]},{"a":23196,"t":"byte","b":[250,170,4,255,131,87,85,169]},{"a":23204,"t":"byte","b":[3,170,130,85,132,165,170,250]},{"a":23212,"t":"byte","b":[255,4,86,133,150,170,234,3]},{"a":23220,"t":"byte","b":[167,134,87,85,2,170,136,189]},{"a":23228,"t":"byte","b":[136,170,136,189,136,245,130,250]},{"a":23236,"t":"byte","b":[130,234,130,170,130,255,130,170]},{"a":23244,"t":"byte","b":[134,255,130,170,134,255,130,170]},{"a":23252,"t":"byte","b":[134,165,130,245,1,229,131,173]},{"a":23260,"t":"byte","b":[159,2,213,131,117,87,2,86]},{"a":23268,"t":"byte","b":[130,126,1,86,130,89,130,213]},{"a":23276,"t":"byte","b":[130,214,105,2,127,130,106,132]},{"a":23284,"t":"byte","b":[170,90,2,170,130,255,134,170]},{"a":23292,"t":"byte","b":[130,255,134,85,130,255,130,234]},{"a":23300,"t":"byte","b":[130,170,130,95,131,127,1,170]},{"a":23308,"t":"byte","b":[132,255,132,170,136,254,132,255]},{"a":23316,"t":"byte","b":[132,234,132,169,130,165,130,255]},{"a":23324,"t":"byte","b":[132,191,130,255,130,85,132,255]},{"a":23332,"t":"byte","b":[132,170,132,255,132,250,132,255]},{"a":23340,"t":"byte","b":[132,170,132,235,132,85,132,255]},{"a":23348,"t":"byte","b":[132,170,136,175,132,255,132,170]},{"a":23356,"t":"byte","b":[132,255,132,170,132,255,132,171]},{"a":23364,"t":"byte","b":[131,170,215,213,3,245,130,234]},{"a":23372,"t":"byte","b":[132,255,132,170,136,255,132,170]},{"a":23380,"t":"byte","b":[132,235,132,245,1,253,131,170]},{"a":23388,"t":"byte","b":[133,106,131,255,136,170,137,234]},{"a":23396,"t":"byte","b":[130,250,1,170,136,191,1,175]},{"a":23404,"t":"byte","b":[130,171,130,170,131,255,1,127]},{"a":23412,"t":"byte","b":[130,95,130,87,130,85,1,189]},{"a":23420,"t":"byte","b":[136,255,136,213,215,214,3,234]},{"a":23428,"t":"byte","b":[130,170,156,169,130,165,130,167]},{"a":23436,"t":"byte","b":[1,150,130,85,131,149,213,245]},{"a":23444,"t":"byte","b":[254,250,213,125,87,8,85,131]},{"a":23452,"t":"byte","b":[149,173,169,166,154,90,6,170]},{"a":23460,"t":"byte","b":[132,254,131,253,1,245,130,213]},{"a":23468,"t":"byte","b":[130,255,132,191,131,255,1,254]},{"a":23476,"t":"byte","b":[131,250,130,234,130,213,1,255]},{"a":23484,"t":"byte","b":[135,170,1,255,135,170,1,255]},{"a":23492,"t":"byte","b":[135,170,169,2,165,132,166,130]},{"a":23500,"t":"byte","b":[247,1,255,135,170,1,255,135]},{"a":23508,"t":"byte","b":[170,1,255,135,170,1,255,135]},{"a":23516,"t":"byte","b":[170,1,90,135,95,1,255,135]},{"a":23524,"t":"byte","b":[170,1,255,135,170,1,255,135]},{"a":23532,"t":"byte","b":[170,154,2,150,134,215,1,255]},{"a":23540,"t":"byte","b":[135,170,1,255,135,170,1,255]},{"a":23548,"t":"byte","b":[135,170,1,106,130,90,1,154]},{"a":23556,"t":"byte","b":[132,151,1,255,135,170,136,255]},{"a":23564,"t":"byte","b":[247,2,245,130,253,131,255,1]},{"a":23572,"t":"byte","b":[170,132,234,130,122,130,127,1]},{"a":23580,"t":"byte","b":[170,135,255,1,170,135,255,1]},{"a":23588,"t":"byte","b":[250,130,254,131,255,130,85,1]},{"a":23596,"t":"byte","b":[170,135,234,1,170,136,191,1]},{"a":23604,"t":"byte","b":[175,130,171,130,170,131,107,1]},{"a":23612,"t":"byte","b":[235,135,86,1,90,130,106,1]},{"a":23620,"t":"byte","b":[170,160,169,1,170,131,150,1]},{"a":23628,"t":"byte","b":[90,131,106,1,170,131,159,175]},{"a":23636,"t":"byte","b":[2,170,134,245,234,2,170,134]},{"a":23644,"t":"byte","b":[213,165,2,170,134,253,254,2]},{"a":23652,"t":"byte","b":[170,142,191,130,165,149,150,3]},{"a":23660,"t":"byte","b":[170,131,255,130,170,134,255,130]},{"a":23668,"t":"byte","b":[170,134,255,130,170,134,251,130]},{"a":23676,"t":"byte","b":[170,134,255,130,170,134,255,130]},{"a":23684,"t":"byte","b":[154,1,90,130,170,131,255,130]},{"a":23692,"t":"byte","b":[170,134,255,130,170,134,175,130]},{"a":23700,"t":"byte","b":[170,134,255,130,170,134,255,130]},{"a":23708,"t":"byte","b":[150,131,170,131,255,130,170,134]},{"a":23716,"t":"byte","b":[235,130,170,134,255,130,170,134]},{"a":23724,"l":"backdrop2_bitmap_packed_5cac","c":"Backdrop 2 (dojo interior): packed bitmap, read backwards from $5CEB by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F. (continued from $54AC; this part $5CAC-$5CEB)","t":"byte","b":[255,130,170,134,255,130,170,134]},{"a":23732,"t":"byte","b":[235,130,170,134,255,130,165,130]},{"a":23740,"t":"byte","b":[169,1,170,131,255,130,170,130]},{"a":23748,"t":"byte","b":[106,1,170,131,255,130,170,134]},{"a":23756,"t":"byte","b":[175,130,170,134,255,130,170,134]},{"a":23764,"t":"byte","b":[255,130,166,1,165,130,170,131]},{"a":23772,"t":"byte","b":[255,130,170,134,234,130,170,150]},{"a":23780,"t":"byte","b":[189,1,173,130,169,1,170,132]},{"a":23788,"l":"backdrop3_bitmap_packed","c":"Backdrop 3 (Buddha statue and temple): packed bitmap, read backwards from $68CA by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F.","t":"byte","b":[222,11,0,255,134,86,1,170]},{"a":23796,"t":"byte","b":[135,255,87,2,170,134,223,119]},{"a":23804,"t":"byte","b":[2,170,134,87,255,2,170,134]},{"a":23812,"t":"byte","b":[255,87,2,170,134,85,1,255]},{"a":23820,"t":"byte","b":[135,85,170,2,255,134,85,1]},{"a":23828,"t":"byte","b":[170,135,234,130,255,184,85,144]},{"a":23836,"t":"byte","b":[170,133,171,175,191,3,255,133]},{"a":23844,"t":"byte","b":[111,154,89,3,255,135,191,1]},{"a":23852,"t":"byte","b":[255,199,250,1,255,134,175,170]},{"a":23860,"t":"byte","b":[2,255,150,253,252,2,255,133]},{"a":23868,"t":"byte","b":[243,127,255,3,170,134,106,98]},{"a":23876,"t":"byte","b":[2,170,132,154,10,154,165,4]},{"a":23884,"t":"byte","b":[170,133,106,170,153,3,170,133]},{"a":23892,"t":"byte","b":[169,170,153,3,255,134,251,191]},{"a":23900,"t":"byte","b":[254,251,175,250,238,239,8,238]},{"a":23908,"t":"byte","b":[130,175,191,254,3,238,130,187]},{"a":23916,"t":"byte","b":[131,239,187,186,239,4,238,130]},{"a":23924,"t":"byte","b":[186,187,255,250,239,186,239,7]},{"a":23932,"t":"byte","b":[238,131,254,1,238,130,235,239]},{"a":23940,"t":"byte","b":[187,251,235,187,170,238,254,239]},{"a":23948,"t":"byte","b":[251,11,187,130,171,239,234,3]},{"a":23956,"t":"byte","b":[187,131,190,238,174,235,239,190]},{"a":23964,"t":"byte","b":[174,191,8,238,130,159,111,171]},{"a":23972,"t":"byte","b":[90,102,89,90,153,8,85,132]},{"a":23980,"t":"byte","b":[149,169,2,170,162,255,135,240]},{"a":23988,"t":"byte","b":[1,255,132,240,192,2,0,130]},{"a":23996,"t":"byte","b":[170,133,42,202,58,3,255,132]},{"a":24004,"t":"byte","b":[254,132,102,223,182,223,126,187]},{"a":24012,"t":"byte","b":[251,239,123,158,123,174,105,255]},{"a":24020,"t":"byte","b":[243,231,149,245,165,181,237,249]},{"a":24028,"t":"byte","b":[22,253,130,170,160,255,134,252]},{"a":24036,"t":"byte","b":[130,255,134,15,0,2,255,144]},{"a":24044,"t":"byte","b":[106,171,255,119,51,115,119,55]},{"a":24052,"t":"byte","b":[85,165,170,11,203,130,11,43]},{"a":24060,"t":"byte","b":[235,127,95,175,191,188,8,191]},{"a":24068,"t":"byte","b":[131,255,130,248,186,127,146,186]},{"a":24076,"t":"byte","b":[63,170,169,8,170,130,255,191]},{"a":24084,"t":"byte","b":[92,189,234,74,122,203,250,204]},{"a":24092,"t":"byte","b":[255,59,254,175,137,170,162,165]},{"a":24100,"t":"byte","b":[216,249,175,255,63,38,107,166]},{"a":24108,"t":"byte","b":[154,101,142,175,46,173,253,254]},{"a":24116,"t":"byte","b":[166,127,162,170,166,61,118,126]},{"a":24124,"t":"byte","b":[186,122,254,170,62,215,93,203]},{"a":24132,"t":"byte","b":[229,54,119,53,170,130,85,130]},{"a":24140,"t":"byte","b":[245,215,247,93,4,170,130,169]},{"a":24148,"t":"byte","b":[85,221,117,125,223,6,170,130]},{"a":24156,"t":"byte","b":[154,85,2,223,130,253,119,2]},{"a":24164,"t":"byte","b":[170,130,102,85,125,119,87,245]},{"a":24172,"t":"byte","b":[166,170,165,85,253,117,119,150]},{"a":24180,"t":"byte","b":[14,255,130,127,85,2,153,130]},{"a":24188,"t":"byte","b":[89,101,2,255,130,87,85,150]},{"a":24196,"t":"byte","b":[166,102,169,6,255,130,125,85]},{"a":24204,"t":"byte","b":[102,169,89,166,6,255,130,119]},{"a":24212,"t":"byte","b":[85,154,165,150,214,94,218,122]},{"a":24220,"t":"byte","b":[218,246,125,221,13,170,135,234]},{"a":24228,"t":"byte","b":[1,170,140,168,162,136,2,252]},{"a":24236,"t":"byte","b":[194,32,1,0,25,40,68,12]},{"a":24244,"t":"byte","b":[0,130,20,17,44,120,8,26]},{"a":24252,"t":"byte","b":[67,66,60,12,0,2,182,142]},{"a":24260,"t":"byte","b":[14,206,2,0,1,146,152,167]},{"a":24268,"t":"byte","b":[22,169,131,41,130,5,61,254]},{"a":24276,"t":"byte","b":[90,217,150,169,7,106,130,170]},{"a":24284,"t":"byte","b":[130,45,196,178,162,247,227,146]},{"a":24292,"t":"byte","b":[132,45,249,251,91,105,169,233]},{"a":24300,"t":"byte","b":[169,16,170,132,168,163,175,188]},{"a":24308,"t":"byte","b":[170,160,35,1,0,64,112,5]},{"a":24316,"t":"byte","b":[170,42,10,197,128,48,208,4]},{"a":24324,"t":"byte","b":[20,255,133,60,32,176,240,4]},{"a":24332,"t":"byte","b":[192,130,0,40,44,32,60,20]},{"a":24340,"t":"byte","b":[6,48,130,16,1,48,0,228]},{"a":24348,"t":"byte","b":[170,6,42,130,10,130,2,1]},{"a":24356,"t":"byte","b":[0,130,170,136,153,1,145,131]},{"a":24364,"t":"byte","b":[149,169,2,170,130,4,52,4]},{"a":24372,"t":"byte","b":[196,85,87,6,95,130,191,133]},{"a":24380,"t":"byte","b":[255,131,187,60,171,189,4,171]},{"a":24388,"t":"byte","b":[130,232,170,209,149,142,117,212]},{"a":24396,"t":"byte","b":[234,8,170,130,108,191,47,139]},{"a":24404,"t":"byte","b":[4,255,131,203,254,171,170,162]},{"a":24412,"t":"byte","b":[42,170,7,255,130,72,218,214]},{"a":24420,"t":"byte","b":[209,246,245,247,49,167,90,133]},{"a":24428,"t":"byte","b":[161,90,13,255,130,223,249,229]},{"a":24436,"t":"byte","b":[246,249,63,81,229,248,175,23]},{"a":24444,"t":"byte","b":[159,111,245,221,246,247,17,154]},{"a":24452,"t":"byte","b":[130,102,1,255,133,87,247,119]},{"a":24460,"t":"byte","b":[3,170,133,221,1,119,130,170]},{"a":24468,"t":"byte","b":[133,223,87,125,3,170,133,87]},{"a":24476,"t":"byte","b":[130,221,1,170,133,119,130,221]},{"a":24484,"t":"byte","b":[1,170,133,102,85,153,3,255]},{"a":24492,"t":"byte","b":[133,153,154,166,3,255,133,170]},{"a":24500,"t":"byte","b":[105,166,3,255,131,245,130,255]},{"a":24508,"t":"byte","b":[253,213,85,90,168,160,138,233]},{"a":24516,"t":"byte","b":[165,149,80,84,64,65,15,20]},{"a":24524,"t":"byte","b":[130,70,160,48,139,40,36,127]},{"a":24532,"t":"byte","b":[15,54,155,221,117,222,127,239]},{"a":24540,"t":"byte","b":[159,92,17,117,130,121,114,210]},{"a":24548,"t":"byte","b":[89,213,92,96,114,224,9,21]},{"a":24556,"t":"byte","b":[130,70,1,61,213,65,26,162]},{"a":24564,"t":"byte","b":[42,8,95,215,143,50,248,138]},{"a":24572,"t":"byte","b":[42,10,17,253,130,217,166,164]},{"a":24580,"t":"byte","b":[168,169,165,226,200,66,194,82]},{"a":24588,"t":"byte","b":[117,93,87,62,165,93,119,150]},{"a":24596,"t":"byte","b":[170,126,86,101,167,169,174,175]},{"a":24604,"t":"byte","b":[155,159,94,243,204,255,11,128]},{"a":24612,"t":"byte","b":[160,34,162,20,212,255,201,191]},{"a":24620,"t":"byte","b":[46,15,43,28,108,223,165,103]},{"a":24628,"t":"byte","b":[151,111,175,0,67,243,255,217]},{"a":24636,"t":"byte","b":[219,92,184,44,107,101,148,53]},{"a":24644,"t":"byte","b":[197,87,109,128,32,150,94,24]},{"a":24652,"t":"byte","b":[17,151,93,1,32,4,73,80]},{"a":24660,"t":"byte","b":[217,61,99,127,15,147,163,148]},{"a":24668,"t":"byte","b":[149,105,150,94,85,133,133,106]},{"a":24676,"t":"byte","b":[170,3,175,135,160,1,255,132]},{"a":24684,"t":"byte","b":[252,192,2,32,4,255,132,63]},{"a":24692,"t":"byte","b":[1,15,130,35,170,168,3,170]},{"a":24700,"t":"byte","b":[130,190,187,2,170,131,175,191]},{"a":24708,"t":"byte","b":[243,223,4,238,130,202,199,223]},{"a":24716,"t":"byte","b":[221,61,247,245,49,245,255,252]},{"a":24724,"t":"byte","b":[235,22,218,237,31,222,111,175]},{"a":24732,"t":"byte","b":[254,234,150,201,217,117,215,101]},{"a":24740,"t":"byte","b":[109,90,154,214,54,253,210,217]},{"a":24748,"t":"byte","b":[230,36,218,130,246,181,182,3]},{"a":24756,"t":"byte","b":[169,130,105,90,118,126,86,118]},{"a":24764,"t":"byte","b":[6,230,130,90,106,2,105,132]},{"a":24772,"t":"byte","b":[170,165,151,125,117,213,215,89]},{"a":24780,"t":"byte","b":[170,85,117,87,215,93,106,94]},{"a":24788,"t":"byte","b":[219,218,221,122,151,167,22,103]},{"a":24796,"t":"byte","b":[130,239,223,221,182,213,217,6]},{"a":24804,"t":"byte","b":[230,130,223,85,127,85,101,157]},{"a":24812,"l":"backdrop3_bitmap_packed_60ec","c":"Backdrop 3 (Buddha statue and temple): packed bitmap, read backwards from $68CA by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F. (continued from $5CEC; this part $60EC-$64EB)","t":"byte","b":[89,121,8,253,130,95,151,85]},{"a":24820,"t":"byte","b":[105,101,89,95,92,163,156,10]},{"a":24828,"t":"byte","b":[159,130,156,159,8,32,42,136]},{"a":24836,"t":"byte","b":[2,168,130,11,149,193,171,180]},{"a":24844,"t":"byte","b":[186,243,239,143,70,54,109,125]},{"a":24852,"t":"byte","b":[93,250,107,238,255,237,28,254]},{"a":24860,"t":"byte","b":[130,118,106,2,168,130,255,123]},{"a":24868,"t":"byte","b":[114,10,235,43,255,169,50,242]},{"a":24876,"t":"byte","b":[248,26,8,74,42,74,240,50]},{"a":24884,"t":"byte","b":[242,194,202,234,42,234,42,25]},{"a":24892,"t":"byte","b":[170,130,162,139,2,187,131,175]},{"a":24900,"t":"byte","b":[171,43,3,42,130,139,155,186]},{"a":24908,"t":"byte","b":[101,74,226,208,7,216,130,210]},{"a":24916,"t":"byte","b":[208,255,125,86,170,10,42,8]},{"a":24924,"t":"byte","b":[8,130,94,167,135,137,169,5]},{"a":24932,"t":"byte","b":[137,130,41,1,170,130,169,233]},{"a":24940,"t":"byte","b":[2,234,130,233,130,161,170,232]},{"a":24948,"t":"byte","b":[170,234,5,232,131,175,187,173]},{"a":24956,"t":"byte","b":[185,183,5,155,130,104,186,103]},{"a":24964,"t":"byte","b":[178,242,202,11,42,140,161,133]},{"a":24972,"t":"byte","b":[150,154,13,146,130,98,136,200]},{"a":24980,"t":"byte","b":[86,125,5,161,8,129,160,178]},{"a":24988,"t":"byte","b":[148,25,215,93,97,169,102,29]},{"a":24996,"t":"byte","b":[103,49,84,216,105,154,38,234]},{"a":25004,"t":"byte","b":[110,230,9,162,130,168,160,83]},{"a":25012,"t":"byte","b":[95,92,83,92,83,80,83,160]},{"a":25020,"t":"byte","b":[8,46,40,184,160,238,160,1]},{"a":25028,"t":"byte","b":[128,62,186,175,3,40,162,255]},{"a":25036,"t":"byte","b":[179,191,10,186,238,128,162,222]},{"a":25044,"t":"byte","b":[242,54,149,138,170,168,42,165]},{"a":25052,"t":"byte","b":[170,62,250,254,247,235,203,146]},{"a":25060,"t":"byte","b":[102,144,69,218,255,254,63,245]},{"a":25068,"t":"byte","b":[252,95,245,122,168,170,162,139]},{"a":25076,"t":"byte","b":[171,83,215,253,181,191,235,191]},{"a":25084,"t":"byte","b":[174,108,170,130,190,222,190,186]},{"a":25092,"t":"byte","b":[117,213,117,85,245,9,170,131]},{"a":25100,"t":"byte","b":[215,132,87,1,170,131,125,93]},{"a":25108,"t":"byte","b":[85,117,119,5,170,131,87,131]},{"a":25116,"t":"byte","b":[85,87,2,170,131,223,130,221]},{"a":25124,"t":"byte","b":[223,173,3,170,131,213,245,213]},{"a":25132,"t":"byte","b":[215,221,5,170,131,234,186,2]},{"a":25140,"t":"byte","b":[171,130,174,1,85,132,125,1]},{"a":25148,"t":"byte","b":[85,130,117,1,170,131,175,130]},{"a":25156,"t":"byte","b":[172,175,173,3,85,131,42,1]},{"a":25164,"t":"byte","b":[170,131,232,1,255,130,213,170]},{"a":25172,"t":"byte","b":[136,168,8,34,6,255,130,85]},{"a":25180,"t":"byte","b":[84,21,80,85,69,6,255,130]},{"a":25188,"t":"byte","b":[170,162,34,138,170,43,6,247]},{"a":25196,"t":"byte","b":[130,87,1,170,130,160,138,232]},{"a":25204,"t":"byte","b":[3,255,130,213,10,138,40,42]},{"a":25212,"t":"byte","b":[162,6,255,130,85,124,127,3]},{"a":25220,"t":"byte","b":[125,130,253,189,125,119,250,5]},{"a":25228,"t":"byte","b":[222,130,238,223,95,3,103,130]},{"a":25236,"t":"byte","b":[239,111,101,91,187,154,6,153]},{"a":25244,"t":"byte","b":[130,159,1,156,130,176,173,229]},{"a":25252,"t":"byte","b":[234,235,51,11,27,103,175,159]},{"a":25260,"t":"byte","b":[127,255,61,15,114,166,234,18]},{"a":25268,"t":"byte","b":[251,131,190,130,254,132,126,254]},{"a":25276,"t":"byte","b":[2,188,130,191,123,187,171,175]},{"a":25284,"t":"byte","b":[239,6,255,130,252,130,255,1]},{"a":25292,"t":"byte","b":[170,130,85,32,160,162,170,162]},{"a":25300,"t":"byte","b":[6,255,130,85,40,136,3,170]},{"a":25308,"t":"byte","b":[131,255,130,85,170,34,42,138]},{"a":25316,"t":"byte","b":[143,6,223,130,95,160,42,3]},{"a":25324,"t":"byte","b":[170,131,255,130,85,170,10,162]},{"a":25332,"t":"byte","b":[8,162,6,255,130,85,160,130]},{"a":25340,"t":"byte","b":[170,138,8,6,87,130,255,1]},{"a":25348,"t":"byte","b":[250,132,248,1,255,130,245,10]},{"a":25356,"t":"byte","b":[128,3,40,130,42,1,255,130]},{"a":25364,"t":"byte","b":[85,34,10,138,10,34,6,255]},{"a":25372,"t":"byte","b":[130,85,42,162,34,170,162,6]},{"a":25380,"t":"byte","b":[255,130,85,207,243,252,4,255]},{"a":25388,"t":"byte","b":[130,169,130,85,1,170,132,250]},{"a":25396,"t":"byte","b":[1,255,130,245,106,2,170,132]},{"a":25404,"t":"byte","b":[255,60,81,38,153,5,170,130]},{"a":25412,"t":"byte","b":[166,253,204,84,125,5,223,130]},{"a":25420,"t":"byte","b":[127,255,138,106,85,253,125,117]},{"a":25428,"t":"byte","b":[8,127,130,191,131,238,174,2]},{"a":25436,"t":"byte","b":[85,131,174,170,255,3,86,130]},{"a":25444,"t":"byte","b":[255,131,86,130,85,166,101,3]},{"a":25452,"t":"byte","b":[255,131,85,130,170,1,102,130]},{"a":25460,"t":"byte","b":[255,131,86,130,170,1,165,130]},{"a":25468,"t":"byte","b":[170,131,165,131,127,130,170,131]},{"a":25476,"t":"byte","b":[127,130,85,238,187,3,85,131]},{"a":25484,"t":"byte","b":[255,130,170,247,119,3,170,131]},{"a":25492,"t":"byte","b":[255,130,85,1,167,130,255,131]},{"a":25500,"t":"byte","b":[167,163,167,144,132,5,170,130]},{"a":25508,"t":"byte","b":[191,148,145,148,81,69,6,170]},{"a":25516,"t":"byte","b":[130,255,17,85,69,80,69,6]},{"a":25524,"t":"byte","b":[170,130,255,84,85,81,70,22]},{"a":25532,"t":"byte","b":[6,174,130,254,1,86,131,144]},{"a":25540,"t":"byte","b":[145,2,170,130,191,133,145,149]},{"a":25548,"t":"byte","b":[255,207,6,170,130,85,195,207]},{"a":25556,"t":"byte","b":[51,4,119,131,127,131,93,95]},{"a":25564,"t":"byte","b":[155,187,231,234,229,189,8,255]},{"a":25572,"t":"byte","b":[130,153,154,166,229,166,165,74]},{"a":25580,"t":"byte","b":[194,186,239,186,189,159,85,182]},{"a":25588,"t":"byte","b":[106,245,175,234,191,106,245,127]},{"a":25596,"t":"byte","b":[170,109,230,155,108,178,235,190]},{"a":25604,"t":"byte","b":[170,206,63,61,125,246,91,111]},{"a":25612,"t":"byte","b":[170,157,185,230,150,123,250,29]},{"a":25620,"t":"byte","b":[195,48,255,130,170,130,85,1]},{"a":25628,"t":"byte","b":[255,131,170,130,255,130,85,1]},{"a":25636,"t":"byte","b":[170,131,85,130,170,130,255,1]},{"a":25644,"t":"byte","b":[85,131,90,130,186,130,250,1]},{"a":25652,"t":"byte","b":[90,131,85,130,170,130,255,84]},{"a":25660,"t":"byte","b":[81,84,69,20,6,170,130,255]},{"a":25668,"t":"byte","b":[80,5,81,21,69,6,171,130]},{"a":25676,"t":"byte","b":[255,1,81,130,84,1,82,130]},{"a":25684,"t":"byte","b":[85,130,95,1,90,131,17,84]},{"a":25692,"t":"byte","b":[2,170,130,255,1,85,131,17]},{"a":25700,"t":"byte","b":[65,2,170,130,255,68,81,3]},{"a":25708,"t":"byte","b":[85,131,170,130,255,1,85,131]},{"a":25716,"t":"byte","b":[207,243,2,169,130,85,1,255]},{"a":25724,"t":"byte","b":[131,165,130,171,170,175,165,164]},{"a":25732,"t":"byte","b":[165,69,85,168,234,255,209,117]},{"a":25740,"t":"byte","b":[93,21,117,174,170,255,117,245]},{"a":25748,"t":"byte","b":[213,117,62,234,170,207,27,85]},{"a":25756,"t":"byte","b":[130,87,125,93,3,223,130,191]},{"a":25764,"t":"byte","b":[1,125,131,170,139,169,133,170]},{"a":25772,"t":"byte","b":[130,169,1,85,133,170,136,250]},{"a":25780,"t":"byte","b":[165,2,85,134,170,191,2,255]},{"a":25788,"t":"byte","b":[132,247,255,2,85,130,213,132]},{"a":25796,"t":"byte","b":[149,213,170,3,85,135,254,1]},{"a":25804,"t":"byte","b":[85,135,230,1,106,135,85,133]},{"a":25812,"t":"byte","b":[95,131,170,132,85,132,170,132]},{"a":25820,"t":"byte","b":[255,132,170,132,255,132,85,132]},{"a":25828,"t":"byte","b":[255,132,246,245,2,246,130,89]},{"a":25836,"l":"backdrop3_bitmap_packed_64ec","c":"Backdrop 3 (Buddha statue and temple): packed bitmap, read backwards from $68CA by bitmap_unpack ($17BB) in the same format as backdrop 1's at $4AAE; fills $E640-$F53F. (continued from $5CEC; this part $64EC-$68CA)","t":"byte","b":[109,212,240,4,255,130,191,92]},{"a":25844,"t":"byte","b":[250,85,129,192,183,95,3,168]},{"a":25852,"t":"byte","b":[126,223,85,14,254,248,249,37]},{"a":25860,"t":"byte","b":[185,254,251,170,192,53,91,109]},{"a":25868,"t":"byte","b":[90,85,86,233,80,164,251,123]},{"a":25876,"t":"byte","b":[101,165,87,93,145,44,204,91]},{"a":25884,"t":"byte","b":[126,190,170,127,112,156,237,10]},{"a":25892,"t":"byte","b":[202,161,127,0,54,255,132,170]},{"a":25900,"t":"byte","b":[130,10,64,2,85,132,170,132]},{"a":25908,"t":"byte","b":[85,132,170,171,2,175,130,85]},{"a":25916,"t":"byte","b":[132,255,132,85,132,255,132,85]},{"a":25924,"t":"byte","b":[132,255,132,85,132,213,130,245]},{"a":25932,"t":"byte","b":[130,90,1,170,159,255,136,250]},{"a":25940,"t":"byte","b":[1,170,130,162,1,170,132,43]},{"a":25948,"t":"byte","b":[1,171,130,47,173,166,165,4]},{"a":25956,"t":"byte","b":[170,130,202,95,171,161,23,171]},{"a":25964,"t":"byte","b":[162,42,170,43,255,11,85,130]},{"a":25972,"t":"byte","b":[255,155,127,3,125,130,246,131]},{"a":25980,"t":"byte","b":[253,125,2,170,141,169,131,170]},{"a":25988,"t":"byte","b":[136,85,139,87,1,95,130,127]},{"a":25996,"t":"byte","b":[130,170,171,2,110,130,93,130]},{"a":26004,"t":"byte","b":[85,130,213,130,149,181,2,189]},{"a":26012,"t":"byte","b":[130,255,130,85,144,106,136,95]},{"a":26020,"t":"byte","b":[1,127,134,255,153,87,136,136]},{"a":26028,"t":"byte","b":[130,34,42,4,170,131,235,48]},{"a":26036,"t":"byte","b":[3,207,4,63,130,239,236,251]},{"a":26044,"t":"byte","b":[240,255,15,195,120,218,254,119]},{"a":26052,"t":"byte","b":[111,15,207,243,253,62,253,183]},{"a":26060,"t":"byte","b":[190,239,250,191,106,208,165,106]},{"a":26068,"t":"byte","b":[150,170,252,99,189,214,107,175]},{"a":26076,"t":"byte","b":[131,63,204,63,189,213,218,111]},{"a":26084,"t":"byte","b":[59,219,73,46,109,130,183,219]},{"a":26092,"t":"byte","b":[111,192,112,124,127,7,255,130]},{"a":26100,"t":"byte","b":[254,251,255,3,63,131,61,189]},{"a":26108,"t":"byte","b":[181,149,191,5,255,159,245,1]},{"a":26116,"t":"byte","b":[250,130,254,133,106,1,234,130]},{"a":26124,"t":"byte","b":[250,132,254,1,170,152,255,136]},{"a":26132,"t":"byte","b":[170,136,43,175,2,170,130,174]},{"a":26140,"t":"byte","b":[130,170,130,190,138,238,235,139]},{"a":26148,"t":"byte","b":[174,6,170,130,234,34,235,186]},{"a":26156,"t":"byte","b":[170,234,6,170,130,245,189,175]},{"a":26164,"t":"byte","b":[3,171,130,170,139,169,132,170]},{"a":26172,"t":"byte","b":[148,191,130,189,131,191,131,85]},{"a":26180,"t":"byte","b":[149,2,85,131,149,91,95,170]},{"a":26188,"t":"byte","b":[4,174,131,186,130,170,171,2]},{"a":26196,"t":"byte","b":[85,132,127,1,255,131,85,133]},{"a":26204,"t":"byte","b":[213,1,245,130,106,131,107,133]},{"a":26212,"t":"byte","b":[170,135,254,1,85,135,255,1]},{"a":26220,"t":"byte","b":[170,135,255,1,170,135,254,253]},{"a":26228,"t":"byte","b":[2,255,134,238,87,2,213,130]},{"a":26236,"t":"byte","b":[249,127,90,85,170,219,122,117]},{"a":26244,"t":"byte","b":[157,167,253,170,255,89,85,217]},{"a":26252,"t":"byte","b":[230,249,165,85,170,255,238,251]},{"a":26260,"t":"byte","b":[191,171,102,170,90,127,191,239]},{"a":26268,"t":"byte","b":[250,255,170,85,106,37,254,130]},{"a":26276,"t":"byte","b":[171,186,170,3,85,130,170,125]},{"a":26284,"t":"byte","b":[245,87,255,245,154,101,170,127]},{"a":26292,"t":"byte","b":[255,253,245,101,89,170,85,14]},{"a":26300,"t":"byte","b":[58,123,237,245,22,85,130,255]},{"a":26308,"t":"byte","b":[1,149,130,85,133,101,1,170]},{"a":26316,"t":"byte","b":[135,190,1,170,135,190,1,170]},{"a":26324,"t":"byte","b":[135,255,136,170,136,255,1,254]},{"a":26332,"t":"byte","b":[130,255,131,127,130,255,1,170]},{"a":26340,"t":"byte","b":[133,234,131,255,136,170,136,255]},{"a":26348,"t":"byte","b":[136,170,135,174,1,170,150,186]},{"a":26356,"t":"byte","b":[238,2,170,145,169,135,170,136]},{"a":26364,"t":"byte","b":[255,136,173,169,151,3,85,132]},{"a":26372,"t":"byte","b":[149,95,173,85,165,89,86,7]},{"a":26380,"t":"byte","b":[85,130,249,175,250,239,4,191]},{"a":26388,"t":"byte","b":[130,239,255,85,149,4,165,131]},{"a":26396,"t":"byte","b":[167,151,95,3,245,130,213,130]},{"a":26404,"t":"byte","b":[85,132,107,136,255,170,171,175]},{"a":26412,"t":"byte","b":[4,191,130,189,130,255,170,255]},{"a":26420,"t":"byte","b":[213,85,111,127,191,255,170,255]},{"a":26428,"t":"byte","b":[127,95,151,215,231,255,171,18]},{"a":26436,"t":"byte","b":[251,134,255,1,234,130,235,1]},{"a":26444,"t":"byte","b":[239,132,255,170,255,245,213,219]},{"a":26452,"t":"byte","b":[95,111,255,170,255,95,87,229]},{"a":26460,"t":"byte","b":[245,249,255,170,18,254,134,255]},{"a":26468,"t":"byte","b":[1,245,130,247,133,255,85,255]},{"a":26476,"t":"byte","b":[250,234,231,175,159,255,85,255]},{"a":26484,"t":"byte","b":[175,171,218,250,246,255,85,18]},{"a":26492,"t":"byte","b":[253,134,255,1,234,130,235,1]},{"a":26500,"t":"byte","b":[239,132,255,170,255,245,213,219]},{"a":26508,"t":"byte","b":[95,111,255,170,255,95,87,229]},{"a":26516,"t":"byte","b":[245,249,127,170,18,254,134,255]},{"a":26524,"t":"byte","b":[1,234,130,235,1,239,132,255]},{"a":26532,"t":"byte","b":[170,255,245,213,219,95,127,255]},{"a":26540,"t":"byte","b":[170,255,95,87,229,245,249,255]},{"a":26548,"t":"byte","b":[170,18,254,134,245,136,250,135]},{"a":26556,"t":"byte","b":[234,1,170,136,85,136,170,136]},{"a":26564,"t":"byte","b":[174,171,190,3,170,135,234,187]},{"a":26572,"t":"byte","b":[170,171,174,5,170,131,171,190]},{"a":26580,"t":"byte","b":[171,3,170,131,175,171,250,238]},{"a":26588,"t":"byte","b":[186,187,238,187,234,186,238,187]},{"a":26596,"t":"byte","b":[238,187,238,191,16,170,136,169]},{"a":26604,"t":"byte","b":[134,170,146,165,1,191,131,170]},{"a":26612,"t":"byte","b":[132,85,117,223,3,170,133,171]},{"a":26620,"t":"byte","b":[175,255,95,4,85,132,126,1]},{"a":26628,"t":"byte","b":[86,131,170,132,85,136,171,132]},{"a":26636,"t":"byte","b":[169,1,170,131,127,130,85,255]},{"a":26644,"t":"byte","b":[85,3,170,131,255,119,85,255]},{"a":26652,"t":"byte","b":[85,5,170,131,247,127,85,255]},{"a":26660,"t":"byte","b":[85,5,170,131,247,215,87,255]},{"a":26668,"t":"byte","b":[85,5,170,131,223,1,213,130]},{"a":26676,"t":"byte","b":[255,85,2,170,131,85,87,255]},{"a":26684,"t":"byte","b":[85,255,5,170,131,253,223,85]},{"a":26692,"t":"byte","b":[255,85,5,170,131,253,245,85]},{"a":26700,"t":"byte","b":[255,85,5,170,131,247,1,245]},{"a":26708,"t":"byte","b":[130,255,85,2,170,131,85,93]},{"a":26716,"t":"byte","b":[215,85,255,5,170,131,253,223]},{"a":26724,"t":"byte","b":[85,255,85,5,170,131,253,245]},{"a":26732,"t":"byte","b":[85,255,85,5,170,131,223,1]},{"a":26740,"t":"byte","b":[213,130,255,85,2,170,131,85]},{"a":26748,"t":"byte","b":[130,255,85,255,3,170,131,253]},{"a":26756,"t":"byte","b":[223,85,255,85,5,170,131,253]},{"a":26764,"t":"byte","b":[245,85,255,85,5,170,131,223]},{"a":26772,"t":"byte","b":[1,213,130,255,85,2,170,131]},{"a":26780,"t":"byte","b":[85,87,255,85,255,5,170,131]},{"a":26788,"t":"byte","b":[253,95,85,255,85,5,170,131]},{"a":26796,"t":"byte","b":[253,117,85,255,85,5,170,131]},{"a":26804,"t":"byte","b":[245,131,246,90,2,170,131,234]},{"a":26812,"t":"byte","b":[1,170,183,174,1,170,135,238]},{"a":26820,"t":"byte","b":[250,187,174,171,5,170,131]},{"a":26827,"l":"backdrop0_colour_packed","c":"Backdrop 0's colours, packed as nybbles (low nybble of each byte first). Read by colour_unpack ($1849/$188B) in three passes: colour RAM low nybbles from $D8C8, then screen high nybbles and screen low nybbles from $CCC8, 480 cells each (rows 5-16). A nybble n: n & 7 = 0 ends the pass; bit 3 clear copies the next n & 7 nybbles; bit 3 set repeats the next nybble n & 7 times.","t":"byte","b":[13,49,11,106,1,106,34,160]},{"a":26835,"t":"byte","b":[22,215,242,194,192,19,208,18]},{"a":26843,"t":"byte","b":[171,218,67,56,52,76,60,74]},{"a":26851,"t":"byte","b":[58,98,179,25,218,57,50,162]},{"a":26859,"t":"byte","b":[179,34,163,58,170,49,167,196]},{"a":26867,"t":"byte","b":[197,207,59,186,60,36,171,166]},{"a":26875,"t":"byte","b":[169,42,180,60,161,42,177,62]},{"a":26883,"t":"byte","b":[228,200,174,175,164,191,164,67]},{"a":26891,"t":"byte","b":[228,148,171,227,74,60,161,42]},{"a":26899,"t":"byte","b":[181,52,59,203,177,74,250,188]},{"a":26907,"t":"byte","b":[195,88,139,68,94,188,53,90]},{"a":26915,"t":"byte","b":[196,19,162,170,43,192,252,67]},{"a":26923,"t":"byte","b":[201,154,187,67,90,95,95,54]},{"a":26931,"t":"byte","b":[101,162,171,18,164,172,31,165]},{"a":26939,"t":"byte","b":[164,171,20,171,164,21,168,50]},{"a":26947,"t":"byte","b":[37,183,56,149,165,41,149,170]},{"a":26955,"t":"byte","b":[65,45,70,69,69,181,28,165]},{"a":26963,"t":"byte","b":[172,43,157,42,194,174,34,157]},{"a":26971,"t":"byte","b":[91,145,91,154,68,151,168,34]},{"a":26979,"t":"byte","b":[75,87,93,89,189,93,194,230]},{"a":26987,"t":"byte","b":[190,45,218,173,91,154,139,66]},{"a":26995,"t":"byte","b":[170,167,69,199,247,123,97,234]},{"a":27003,"t":"byte","b":[242,254,30,234,190,245,21,185]},{"a":27011,"t":"byte","b":[61,184,223,23,171,254,30,160]},{"a":27019,"t":"byte","b":[220,174,245,165,40,133,90,129]},{"a":27027,"t":"byte","b":[206,180,252,168,191,30,185,172]},{"a":27035,"t":"byte","b":[184,14,61,1,59,63,42,49]},{"a":27043,"t":"byte","b":[63,63,186,154,186,58,63,170]},{"a":27051,"t":"byte","b":[59,63,177,61,63,63,170,49]},{"a":27059,"t":"byte","b":[42,4,186,218,163,116,179,180]},{"a":27067,"t":"byte","b":[58,234,163,214,19,202,195,170]},{"a":27075,"t":"byte","b":[171,51,75,123,164,254,156,207]},{"a":27083,"t":"byte","b":[172,163,43,179,63,148,154,202]},{"a":27091,"t":"byte","b":[91,162,43,171,19,171,99,207]},{"a":27099,"t":"byte","b":[251,62,204,250,209,59,228,69]},{"a":27107,"t":"byte","b":[190,90,167,185,210,43,3,58]},{"a":27115,"t":"byte","b":[65,203,186,145,205,163,168,218]},{"a":27123,"t":"byte","b":[138,122,139,193,171,145,170,186]},{"a":27131,"t":"byte","b":[33,170,178,211,36,179,207,210]},{"a":27139,"t":"byte","b":[186,21,167,101,157,173,149,170]},{"a":27147,"t":"byte","b":[146,170,227,171,92,141,217,164]},{"a":27155,"t":"byte","b":[27,172,171,44,90,202,226,162]},{"a":27163,"t":"byte","b":[44,137,155,170,146,202,69,55]},{"a":27171,"t":"byte","b":[184,90,118,213,184,188,170,45]},{"a":27179,"t":"byte","b":[183,90,98,179,175,182,206,41]},{"a":27187,"t":"byte","b":[173,154,95,146,186,24,123,127]},{"a":27195,"t":"byte","b":[251,198,171,39,10,58,243,253]},{"a":27203,"t":"byte","b":[10,194,163,44,223,172,218,149]},{"a":27211,"t":"byte","b":[148,212,139,213,120,99,58,98]},{"a":27219,"t":"byte","b":[172,167,168,183,56,172,167,24]},{"a":27227,"t":"byte","b":[175,54,138,189,248,173,24,188]},{"a":27235,"t":"byte","b":[19,166,35,188,59,97,60,170]},{"a":27243,"t":"byte","b":[113,58,139,240,242,34,38,58]},{"a":27251,"t":"byte","b":[33,156,1,61,154,34,164,195]},{"a":27259,"t":"byte","b":[16,212,218,18,187,167,35,52]},{"a":27267,"t":"byte","b":[186,49,124,61,106,74,97,173]},{"a":27275,"t":"byte","b":[49,187,170,58,44,74,131,195]},{"a":27283,"t":"byte","b":[71,252,172,180,76,145,58,97]},{"a":27291,"t":"byte","b":[74,170,49,154,162,194,107,162]},{"a":27299,"t":"byte","b":[43,180,77,241,76,250,74,58]},{"a":27307,"t":"byte","b":[75,100,228,170,41,158,234,43]},{"a":27315,"t":"byte","b":[161,186,161,58,79,202,77,79]},{"a":27323,"t":"byte","b":[51,228,87,199,87,87,107,2]},{"a":27331,"t":"byte","b":[186,18,163,20,188,164,188,91]},{"a":27339,"t":"byte","b":[159,148,180,168,41,140,156,122]},{"a":27347,"t":"byte","b":[147,90,59,181,178,176,106,205]},{"a":27355,"t":"byte","b":[74,147,75,186,161,154,133,39]},{"a":27363,"t":"byte","b":[172,91,129,170,90,161,90,178]},{"a":27371,"t":"byte","b":[195,74,116,84,151,69,75,181]},{"a":27379,"t":"byte","b":[93,33,90,35,239,90,218,170]},{"a":27387,"t":"byte","b":[212,169,169,170,185,37,72,171]},{"a":27395,"t":"byte","b":[131,213,90,218,170,193,218,97]},{"a":27403,"t":"byte","b":[250,35,108,91,95,145,171,113]},{"a":27411,"t":"byte","b":[154,69,73,213,122,212,183,117]},{"a":27419,"t":"byte","b":[223,239,252,206,63,253,166,172]},{"a":27427,"t":"byte","b":[63,42,202,25,173,200,221,37]},{"a":27435,"t":"byte","b":[92,251,234,113,251,113,138,123]},{"a":27443,"t":"byte","b":[230,224,247,162,191,183,221,23]},{"a":27451,"t":"byte","b":[248,247,247,167,208,7]},{"a":27457,"l":"backdrop1_colour_packed","c":"Backdrop 1 (lake under a volcano): its colours, packed as nybbles in the format described at $68CB, $6B41-$6D95 (the last nybble used is the low one of $6D95). Pointed to by colour_stream_table ($1841).","t":"byte","b":[13,50,240,32,2,58,194,192]},{"a":27465,"t":"byte","b":[195,240,192,51,176,162,27,178]},{"a":27473,"t":"byte","b":[186,163,27,164,168,187,47,179]},{"a":27481,"t":"byte","b":[58,74,58,98,179,25,202,73]},{"a":27489,"t":"byte","b":[180,35,58,187,49,188,131,132]},{"a":27497,"t":"byte","b":[186,55,59,59,59,202,60,33]},{"a":27505,"t":"byte","b":[188,145,188,61,187,63,177,60]},{"a":27513,"t":"byte","b":[191,49,189,154,52,59,201,51]},{"a":27521,"t":"byte","b":[41,124,66,195,195,121,76,156]},{"a":27529,"t":"byte","b":[147,163,79,249,243,154,195,207]},{"a":27537,"t":"byte","b":[251,204,241,204,241,59,245,155]},{"a":27545,"t":"byte","b":[155,255,49,203,252,61,193,156]},{"a":27553,"t":"byte","b":[245,203,191,251,197,243,139,186]},{"a":27561,"t":"byte","b":[245,188,252,59,177,234,194,175]},{"a":27569,"t":"byte","b":[172,47,252,122,146,200,171,51]},{"a":27577,"t":"byte","b":[110,126,99,131,137,185,24,179]},{"a":27585,"t":"byte","b":[46,35,235,63,138,181,168,131]},{"a":27593,"t":"byte","b":[154,239,49,122,81,138,115,239]},{"a":27601,"t":"byte","b":[239,239,239,130,169,254,94,151]},{"a":27609,"t":"byte","b":[157,167,57,231,227,30,211,46]},{"a":27617,"t":"byte","b":[115,234,10,113,234,177,155,124]},{"a":27625,"t":"byte","b":[179,201,125,146,174,25,165,57]},{"a":27633,"t":"byte","b":[149,219,167,41,227,10,146,231]},{"a":27641,"t":"byte","b":[25,171,25,171,201,37,57,234]},{"a":27649,"t":"byte","b":[145,159,177,157,50,172,23,188]},{"a":27657,"t":"byte","b":[3,61,1,59,63,10,49,63]},{"a":27665,"t":"byte","b":[63,186,154,186,58,63,170,59]},{"a":27673,"t":"byte","b":[63,177,61,63,63,170,49,174]},{"a":27681,"t":"byte","b":[61,186,58,181,179,195,62,106]},{"a":27689,"t":"byte","b":[61,161,60,174,58,180,196,180]},{"a":27697,"t":"byte","b":[28,195,44,195,58,202,50,172]},{"a":27705,"t":"byte","b":[243,35,57,187,49,189,58,193]},{"a":27713,"t":"byte","b":[62,194,243,243,19,204,187,243]},{"a":27721,"t":"byte","b":[83,191,185,188,195,188,175,252]},{"a":27729,"t":"byte","b":[28,175,168,163,169,19,172,99]},{"a":27737,"t":"byte","b":[188,63,183,138,229,239,227,247]},{"a":27745,"t":"byte","b":[252,179,243,236,194,163,172,24]},{"a":27753,"t":"byte","b":[119,120,152,182,166,19,118,110]},{"a":27761,"t":"byte","b":[135,183,183,206,205,179,23,173]},{"a":27769,"t":"byte","b":[23,166,39,174,138,122,132,99]},{"a":27777,"t":"byte","b":[163,109,99,133,117,90,133,62]},{"a":27785,"t":"byte","b":[61,220,194,182,61,99,167,163]},{"a":27793,"t":"byte","b":[54,10,163,39,59,219,58,146]},{"a":27801,"t":"byte","b":[183,21,119,88,231,195,171,29]},{"a":27809,"t":"byte","b":[198,29,115,213,118,99,183,172]},{"a":27817,"t":"byte","b":[195,103,93,185,201,90,154,218]},{"a":27825,"t":"byte","b":[116,121,174,39,126,234,194,181]},{"a":27833,"t":"byte","b":[174,28,201,60,185,172,163,107]},{"a":27841,"t":"byte","b":[185,147,83,61,155,190,58,194]},{"a":27849,"t":"byte","b":[203,28,185,202,3,47,47,2]},{"a":27857,"t":"byte","b":[162,35,240,12,61,154,34,164]},{"a":27865,"t":"byte","b":[195,16,212,218,18,171,23,184]},{"a":27873,"t":"byte","b":[20,163,27,195,215,163,166,20]},{"a":27881,"t":"byte","b":[182,58,123,195,187,19,187,82]},{"a":27889,"t":"byte","b":[180,56,124,244,252,188,204,20]},{"a":27897,"t":"byte","b":[169,19,166,52,106,163,38,35]},{"a":27905,"t":"byte","b":[189,49,42,65,190,241,188,242]},{"a":27913,"t":"byte","b":[163,164,67,180,100,74,103,106]},{"a":27921,"t":"byte","b":[169,219,42,154,61,78,250,50]},{"a":27929,"t":"byte","b":[169,207,19,207,19,220,163,41]},{"a":27937,"t":"byte","b":[179,252,196,207,239,19,220,19]},{"a":27945,"t":"byte","b":[255,211,47,195,188,52,207,175]},{"a":27953,"t":"byte","b":[44,243,202,129,155,197,254,62]},{"a":27961,"t":"byte","b":[236,52,239,188,99,254,131,121]},{"a":27969,"t":"byte","b":[154,131,121,234,53,110,62,234]},{"a":27977,"t":"byte","b":[116,137,169,23,189,163,30,162]},{"a":27985,"t":"byte","b":[163,254,30,200,78,184,211,106]},{"a":27993,"t":"byte","b":[51,54,235,145,122,225,218,98]},{"a":28001,"t":"byte","b":[173,163,210,243,83,160,227,168]},{"a":28009,"t":"byte","b":[185,19,173,39,149,122,132,117]},{"a":28017,"t":"byte","b":[126,121,62,101,163,21,222,163]},{"a":28025,"t":"byte","b":[174,179,174,163,254,174,23,201]},{"a":28033,"t":"byte","b":[69,115,126,234,114,169,167,190]},{"a":28041,"t":"byte","b":[201,23,170,39,124,127,127,127]},{"a":28049,"t":"byte","b":[127,127,10,124,160]},{"a":28054,"l":"backdrop2_colour_packed","c":"Backdrop 2 (dojo): its colours, packed as nybbles in the format described at $68CB, $6D96-$6FDF (the last nybble used is the low one of $6FDF).","t":"byte","b":[13,50,240,32,2,58,195,144]},{"a":28062,"t":"byte","b":[59,12,15,60,1,202,49,173]},{"a":28070,"t":"byte","b":[154,171,241,173,34,195,26,207]},{"a":28078,"t":"byte","b":[250,202,204,179,25,179,169,26]},{"a":28086,"t":"byte","b":[185,26,169,39,154,174,145,175]},{"a":28094,"t":"byte","b":[194,174,44,242,155,251,156,49]},{"a":28102,"t":"byte","b":[157,122,145,254,145,254,162,127]},{"a":28110,"t":"byte","b":[252,172,146,243,47,147,250,59]},{"a":28118,"t":"byte","b":[145,122,50,169,31,195,255,79]},{"a":28126,"t":"byte","b":[236,172,183,63,63,57,252,145]},{"a":28134,"t":"byte","b":[252,49,250,161,250,255,255,203]},{"a":28142,"t":"byte","b":[170,147,159,252,146,166,25,188]},{"a":28150,"t":"byte","b":[31,243,175,19,185,163,57,243]},{"a":28158,"t":"byte","b":[115,233,201,171,201,31,169,79]},{"a":28166,"t":"byte","b":[249,249,58,251,58,251,59,145]},{"a":28174,"t":"byte","b":[59,254,204,161,156,196,240,204]},{"a":28182,"t":"byte","b":[185,103,251,249,183,155,114,175]},{"a":28190,"t":"byte","b":[169,167,25,163,23,191,44,203]},{"a":28198,"t":"byte","b":[155,116,160,217,55,124,236,23]},{"a":28206,"t":"byte","b":[220,167,28,119,124,60,249,172]},{"a":28214,"t":"byte","b":[186,179,32,203,122,203,241,204]},{"a":28222,"t":"byte","b":[241,203,241,203,244,252,188,63]},{"a":28230,"t":"byte","b":[252,163,25,188,163,171,58,160]},{"a":28238,"t":"byte","b":[219,255,255,255,175,19,12,61]},{"a":28246,"t":"byte","b":[1,59,63,10,49,63,63,186]},{"a":28254,"t":"byte","b":[154,186,59,145,59,63,63,33]},{"a":28262,"t":"byte","b":[58,63,63,145,58,170,145,170]},{"a":28270,"t":"byte","b":[175,60,63,63,63,150,227,162]},{"a":28278,"t":"byte","b":[185,243,19,233,243,83,57,57]},{"a":28286,"t":"byte","b":[169,19,169,163,25,174,27,236]},{"a":28294,"t":"byte","b":[171,19,236,51,60,204,19,204]},{"a":28302,"t":"byte","b":[19,230,83,57,190,114,188,179]},{"a":28310,"t":"byte","b":[182,166,19,188,179,60,115,226]},{"a":28318,"t":"byte","b":[243,19,171,179,121,38,188,50]},{"a":28326,"t":"byte","b":[166,211,68,195,195,63,74,49]},{"a":28334,"t":"byte","b":[74,98,163,100,75,147,236,42]},{"a":28342,"t":"byte","b":[241,59,114,127,57,55,60,183]},{"a":28350,"t":"byte","b":[28,163,188,179,23,163,23,230]},{"a":28358,"t":"byte","b":[179,57,35,191,115,169,144,55]},{"a":28366,"t":"byte","b":[171,191,57,252,167,163,31,167]},{"a":28374,"t":"byte","b":[35,127,58,250,145,58,150,147]},{"a":28382,"t":"byte","b":[35,185,207,172,47,137,75,130]},{"a":28390,"t":"byte","b":[188,20,220,20,184,164,168,36]},{"a":28398,"t":"byte","b":[195,154,50,187,19,168,172,32]},{"a":28406,"t":"byte","b":[243,75,113,76,113,75,113,75]},{"a":28414,"t":"byte","b":[113,74,122,74,246,60,252,186]},{"a":28422,"t":"byte","b":[163,168,64,10,131,205,129,204]},{"a":28430,"t":"byte","b":[129,206,138,203,129,202,58,145]},{"a":28438,"t":"byte","b":[240,242,34,32,58,2,207,208]},{"a":28446,"t":"byte","b":[163,41,66,58,12,145,170,193]},{"a":28454,"t":"byte","b":[157,170,154,159,113,155,159,159]},{"a":28462,"t":"byte","b":[234,146,162,172,185,19,185,163]},{"a":28470,"t":"byte","b":[25,186,89,154,154,234,25,250]},{"a":28478,"t":"byte","b":[73,254,185,202,251,155,251,255]},{"a":28486,"t":"byte","b":[171,157,53,63,57,154,49,154]},{"a":28494,"t":"byte","b":[234,147,162,250,158,65,250,194]},{"a":28502,"t":"byte","b":[196,191,26,175,68,63,73,58]},{"a":28510,"t":"byte","b":[145,74,58,146,126,159,172,249]},{"a":28518,"t":"byte","b":[185,175,89,156,207,164,19,127]},{"a":28526,"t":"byte","b":[41,55,105,164,35,73,58,145]},{"a":28534,"t":"byte","b":[74,58,145,235,199,251,243,150]},{"a":28542,"t":"byte","b":[170,253,97,58,243,185,58,147]},{"a":28550,"t":"byte","b":[70,250,255,49,250,199,158,186]},{"a":28558,"t":"byte","b":[124,155,170,117,159,207,250,58]},{"a":28566,"t":"byte","b":[145,250,51,185,255,145,122,58]},{"a":28574,"t":"byte","b":[145,251,163,203,252,202,252,195]},{"a":28582,"t":"byte","b":[249,58,146,183,169,23,163,41]},{"a":28590,"t":"byte","b":[247,154,129,122,154,193,250,170]},{"a":28598,"t":"byte","b":[124,148,10,167,185,76,199,135]},{"a":28606,"t":"byte","b":[203,131,124,205,122,195,199,123]},{"a":28614,"t":"byte","b":[195,207,125,170,196,7,188,31]},{"a":28622,"t":"byte","b":[204,31,188,31,188,79,252,252]},{"a":28630,"t":"byte","b":[203,124,193,125,127,127,127,127]},{"a":28638,"t":"byte","b":[127,160]},{"a":28640,"l":"backdrop3_colour_packed","c":"Backdrop 3 (Buddha): its colours, packed as nybbles in the format described at $68CB, $6FE0-$71FF, ending in the high nybble of $71FF.","t":"byte","b":[49,12,33,58,1,63,122,193]},{"a":28648,"t":"byte","b":[58,63,63,124,49,45,171,49]},{"a":28656,"t":"byte","b":[125,58,66,179,207,199,19,182]},{"a":28664,"t":"byte","b":[35,169,156,161,45,188,162,162]},{"a":28672,"t":"byte","b":[39,243,75,195,203,75,58,193]},{"a":28680,"t":"byte","b":[123,58,163,57,156,50,219,178]},{"a":28688,"t":"byte","b":[171,34,207,250,75,187,74,202]},{"a":28696,"t":"byte","b":[75,50,183,163,169,122,169,249]},{"a":28704,"t":"byte","b":[250,172,50,44,164,28,191,44]},{"a":28712,"t":"byte","b":[196,189,203,65,250,67,79,250]},{"a":28720,"t":"byte","b":[58,74,49,154,34,171,82,43]},{"a":28728,"t":"byte","b":[207,228,22,255,31,212,22,203]},{"a":28736,"t":"byte","b":[22,180,54,212,178,198,27,214]},{"a":28744,"t":"byte","b":[43,244,255,66,166,251,27,196]},{"a":28752,"t":"byte","b":[57,125,166,26,166,170,55,198]},{"a":28760,"t":"byte","b":[187,28,255,31,231,28,194,23]},{"a":28768,"t":"byte","b":[182,57,125,171,106,12,188,103]},{"a":28776,"t":"byte","b":[204,243,252,255,177,205,177,125]},{"a":28784,"t":"byte","b":[171,147,103,186,195,10,186,193]},{"a":28792,"t":"byte","b":[188,195,191,254,178,183,27,188]},{"a":28800,"t":"byte","b":[187,23,171,23,171,39,11,119]},{"a":28808,"t":"byte","b":[160,124,203,207,207,207,177,123]},{"a":28816,"t":"byte","b":[189,122,186,165,160,171,206,177]},{"a":28824,"t":"byte","b":[203,177,203,177,203,177,203,177]},{"a":28832,"t":"byte","b":[126,186,32,32,186,34,160,27]},{"a":28840,"t":"byte","b":[247,167,35,183,126,127,170,145]},{"a":28848,"t":"byte","b":[171,122,127,163,115,127,202,50]},{"a":28856,"t":"byte","b":[247,23,163,25,247,167,250,26]},{"a":28864,"t":"byte","b":[178,23,175,20,127,188,191,199]},{"a":28872,"t":"byte","b":[175,23,175,167,214,23,186,167]},{"a":28880,"t":"byte","b":[250,90,75,252,252,44,199,250]},{"a":28888,"t":"byte","b":[204,49,127,52,121,251,75,114]},{"a":28896,"t":"byte","b":[207,251,122,205,65,250,205,99]},{"a":28904,"t":"byte","b":[55,122,49,122,212,183,162,91]},{"a":28912,"t":"byte","b":[188,182,166,27,180,203,28,171]},{"a":28920,"t":"byte","b":[252,27,230,203,41,38,186,42]},{"a":28928,"t":"byte","b":[98,226,20,235,44,203,186,77]},{"a":28936,"t":"byte","b":[97,75,177,76,145,123,3,7]},{"a":28944,"t":"byte","b":[125,193,186,113,202,207,126,97]},{"a":28952,"t":"byte","b":[125,170,210,169,23,171,39,124]},{"a":28960,"t":"byte","b":[127,196,103,252,252,247,23,173]},{"a":28968,"t":"byte","b":[71,160,192,125,193,122,245,252]},{"a":28976,"t":"byte","b":[188,203,177,202,125,193,124,127]},{"a":28984,"t":"byte","b":[186,202,186,122,251,122,250,113]},{"a":28992,"t":"byte","b":[108,113,250,194,167,79,183,151]},{"a":29000,"t":"byte","b":[122,127,162,160,60,167,231,27]},{"a":29008,"t":"byte","b":[188,27,188,27,188,27,188,43]},{"a":29016,"t":"byte","b":[151,127,16,210,163,18,211,34]},{"a":29024,"t":"byte","b":[32,122,49,250,11,125,154,34]},{"a":29032,"t":"byte","b":[164,199,227,218,194,163,39,243]},{"a":29040,"t":"byte","b":[187,60,124,145,106,161,63,189]},{"a":29048,"t":"byte","b":[44,60,65,199,207,243,252,59]},{"a":29056,"t":"byte","b":[75,59,114,166,19,202,35,42]},{"a":29064,"t":"byte","b":[189,43,66,219,244,175,196,47]},{"a":29072,"t":"byte","b":[100,74,58,101,163,61,44,202]},{"a":29080,"t":"byte","b":[241,202,78,241,255,79,145,76]},{"a":29088,"t":"byte","b":[162,163,20,237,54,107,162,20]},{"a":29096,"t":"byte","b":[187,20,183,27,172,43,108,75]},{"a":29104,"t":"byte","b":[79,97,75,97,187,42,106,35]},{"a":29112,"t":"byte","b":[38,110,113,189,196,107,212,38]},{"a":29120,"t":"byte","b":[100,111,177,126,5,103,183,123]},{"a":29128,"t":"byte","b":[186,191,191,126,127,5,167,192]},{"a":29136,"t":"byte","b":[122,189,242,251,27,223,27,247]},{"a":29144,"t":"byte","b":[247,23,160,44,121,204,186,195]},{"a":29152,"t":"byte","b":[203,187,195,191,203,178,172,23]},{"a":29160,"t":"byte","b":[185,247,39,122,10,193,122,97]},{"a":29168,"t":"byte","b":[111,113,250,114,246,182,23,217]},{"a":29176,"t":"byte","b":[247,23,220,247,247,247,247,7]},{"a":29184,"l":"reach_move06_facing","c":"Reach profile for blow $06 (up-forward: high punch) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[0,0,255,255,251,251,254,255]},{"a":29192,"t":"byte","b":[251,252,128,249,128,128,128,128]},{"a":29200,"t":"byte","b":[128,10,128,255,6,128,128,128]},{"a":29208,"t":"byte","b":[252,254,254,254,128,128,250,128]},{"a":29216,"t":"byte","b":[128,6,18,0,128,128,128,128]},{"a":29224,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29232,"t":"byte","b":[0,255,255,0,128,128,128,128]},{"a":29240,"t":"byte","b":[128,128,128]},{"a":29243,"l":"reach_move07_facing","c":"Reach profile for blow $07 (down-forward while crouching) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[8,8,8,8,4,12,5,5]},{"a":29251,"t":"byte","b":[7,128,128,10,3,0,10,7]},{"a":29259,"t":"byte","b":[9,14,13,7,128,128,128,128]},{"a":29267,"t":"byte","b":[11,4,5,128,128,128,11,6]},{"a":29275,"t":"byte","b":[128,5,17,128,9,128,128,128]},{"a":29283,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29291,"t":"byte","b":[7,7,7,7,128,128,128,128]},{"a":29299,"t":"byte","b":[128,22,128]},{"a":29302,"l":"reach_move0a_facing","c":"Reach profile for blow $0A (fire + down) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[20,16,16,19,9,16,14,14]},{"a":29310,"t":"byte","b":[9,128,128,15,14,19,17,9]},{"a":29318,"t":"byte","b":[12,15,17,15,128,128,128,128]},{"a":29326,"t":"byte","b":[18,12,8,9,12,9,16,2]},{"a":29334,"t":"byte","b":[128,7,19,21,14,128,128,128]},{"a":29342,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29350,"t":"byte","b":[14,12,13,10,15,128,128,128]},{"a":29358,"t":"byte","b":[128,25,128]},{"a":29361,"l":"reach_move0b_facing","c":"Reach profile for blow $0B (fire + down-forward) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[11,9,9,11,2,10,9,9]},{"a":29369,"t":"byte","b":[3,128,128,10,9,14,9,12]},{"a":29377,"t":"byte","b":[11,11,11,9,128,128,128,128]},{"a":29385,"t":"byte","b":[10,7,3,10,6,3,10,254]},{"a":29393,"t":"byte","b":[128,2,16,128,9,128,128,128]},{"a":29401,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29409,"t":"byte","b":[7,6,11,7,10,128,128,128]},{"a":29417,"t":"byte","b":[128,23,128]},{"a":29420,"l":"reach_move0c_facing","c":"Reach profile for blow $0C (fire + forward) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[14,14,14,14,11,13,11,11]},{"a":29428,"t":"byte","b":[10,128,128,9,128,20,13,128]},{"a":29436,"t":"byte","b":[128,20,32,12,11,128,128,128]},{"a":29444,"t":"byte","b":[12,8,9,128,13,128,6,14]},{"a":29452,"t":"byte","b":[128,16,128,128,5,128,128,128]},{"a":29460,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29468,"t":"byte","b":[12,11,11,11,22,128,128,128]},{"a":29476,"t":"byte","b":[128,128,128]},{"a":29479,"l":"reach_move0d_facing","c":"Reach profile for blow $0D (fire + up-forward) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[9,9,8,8,4,128,7,8]},{"a":29487,"t":"byte","b":[4,4,4,128,128,128,128,128]},{"a":29495,"t":"byte","b":[128,15,128,8,17,128,128,128]},{"a":29503,"t":"byte","b":[4,7,7,4,128,128,128,128]},{"a":29511,"t":"byte","b":[128,128,22,9,128,128,128,128]},{"a":29519,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29527,"t":"byte","b":[5,4,4,5,128,128,128,128]},{"a":29535,"t":"byte","b":[128,128,5]},{"a":29538,"l":"reach_move0e_facing","c":"Reach profile for blow $0E (fire + up: flying kick) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[8,8,7,7,3,2,6,7]},{"a":29546,"t":"byte","b":[2,3,128,128,128,128,128,128]},{"a":29554,"t":"byte","b":[128,18,128,7,18,128,128,128]},{"a":29562,"t":"byte","b":[3,5,6,6,128,128,128,128]},{"a":29570,"t":"byte","b":[128,13,25,8,128,128,128,128]},{"a":29578,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29586,"t":"byte","b":[8,7,7,8,128,128,128,128]},{"a":29594,"t":"byte","b":[128,128,5]},{"a":29597,"l":"reach_move0f_facing","c":"Reach profile for blow $0F (fire + up-back) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[228,228,227,227,223,223,227,227]},{"a":29605,"t":"byte","b":[223,223,128,223,128,128,228,128]},{"a":29613,"t":"byte","b":[128,238,128,227,229,128,128,128]},{"a":29621,"t":"byte","b":[223,226,227,227,128,128,224,128]},{"a":29629,"t":"byte","b":[128,235,247,228,128,128,128,128]},{"a":29637,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29645,"t":"byte","b":[228,228,228,229,128,128,128,128]},{"a":29653,"t":"byte","b":[128,128,128]},{"a":29656,"l":"reach_move18_facing","c":"Reach profile for blow $18 (down-forward from standing: mid punch) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[2,2,2,2,254,2,255,255]},{"a":29664,"t":"byte","b":[254,253,128,254,128,7,1,128]},{"a":29672,"t":"byte","b":[128,9,20,255,0,128,128,128]},{"a":29680,"t":"byte","b":[1,253,253,128,128,128,253,128]},{"a":29688,"t":"byte","b":[128,2,12,128,249,128,128,128]},{"a":29696,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29704,"t":"byte","b":[1,1,1,1,10,128,128,128]},{"a":29712,"t":"byte","b":[128,128,128]},{"a":29715,"l":"reach_move11_facing","c":"Reach profile for blow $11 (fire + back) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[10,10,9,9,5,5,8,8]},{"a":29723,"t":"byte","b":[5,4,128,2,128,128,128,128]},{"a":29731,"t":"byte","b":[128,19,128,11,10,128,128,128]},{"a":29739,"t":"byte","b":[5,7,7,7,10,128,4,128]},{"a":29747,"t":"byte","b":[128,16,27,9,128,128,128,128]},{"a":29755,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29763,"t":"byte","b":[9,9,9,10,128,128,128,128]},{"a":29771,"t":"byte","b":[128,128,128]},{"a":29774,"l":"reach_move10_facing","c":"Reach profile for blow $10 (fire + down-back) when the fighters face each other (pointer in move_reach_ptr_facing $121D): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[222,222,228,228,229,237,222,222]},{"a":29782,"t":"byte","b":[229,128,128,234,224,222,223,228]},{"a":29790,"t":"byte","b":[231,234,237,222,128,128,128,128]},{"a":29798,"t":"byte","b":[237,223,228,228,231,229,235,221]},{"a":29806,"t":"byte","b":[128,226,239,222,233,128,128,128]},{"a":29814,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29822,"t":"byte","b":[227,225,230,228,234,128,128,128]},{"a":29830,"t":"byte","b":[128,244,128]},{"a":29833,"l":"reach_move06_behind","c":"Reach profile for blow $06 (up-forward: high punch) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[241,241,240,240,236,236,239,240]},{"a":29841,"t":"byte","b":[236,238,128,235,128,128,241,128]},{"a":29849,"t":"byte","b":[128,251,128,240,241,128,128,128]},{"a":29857,"t":"byte","b":[237,239,239,240,128,128,235,128]},{"a":29865,"t":"byte","b":[128,247,3,241,128,128,128,128]},{"a":29873,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29881,"t":"byte","b":[241,241,241,241,128,240,240,240]},{"a":29889,"t":"byte","b":[240,128,128]},{"a":29892,"l":"reach_move07_behind","c":"Reach profile for blow $07 (down-forward while crouching) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[233,233,233,233,230,237,230,232]},{"a":29900,"t":"byte","b":[234,128,128,235,229,238,233,235]},{"a":29908,"t":"byte","b":[235,238,240,232,128,128,128,128]},{"a":29916,"t":"byte","b":[239,228,231,233,236,234,234,231]},{"a":29924,"t":"byte","b":[128,230,242,233,234,128,128,128]},{"a":29932,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29940,"t":"byte","b":[233,233,233,233,128,230,230,231]},{"a":29948,"t":"byte","b":[231,247,128]},{"a":29951,"l":"reach_move0a_behind","c":"Reach profile for blow $0A (fire + down) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[223,222,228,228,229,237,223,222]},{"a":29959,"t":"byte","b":[230,128,128,235,226,230,224,227]},{"a":29967,"t":"byte","b":[232,235,237,222,128,128,128,128]},{"a":29975,"t":"byte","b":[237,224,228,229,232,230,236,222]},{"a":29983,"t":"byte","b":[128,227,239,223,234,128,128,128]},{"a":29991,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":29999,"t":"byte","b":[228,226,231,228,234,128,128,128]},{"a":30007,"t":"byte","b":[128,244,128]},{"a":30010,"l":"reach_move0b_behind","c":"Reach profile for blow $0B (fire + down-forward) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[231,230,233,233,233,240,231,231]},{"a":30018,"t":"byte","b":[234,128,128,240,231,238,231,233]},{"a":30026,"t":"byte","b":[234,242,242,231,128,128,128,128]},{"a":30034,"t":"byte","b":[240,233,233,233,237,235,240,229]},{"a":30042,"t":"byte","b":[128,233,246,231,239,128,128,128]},{"a":30050,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30058,"t":"byte","b":[235,235,235,232,231,128,128,128]},{"a":30066,"t":"byte","b":[128,245,128]},{"a":30069,"l":"reach_move0c_behind","c":"Reach profile for blow $0C (fire + forward) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[226,226,226,226,223,225,225,226]},{"a":30077,"t":"byte","b":[226,226,128,223,226,235,227,128]},{"a":30085,"t":"byte","b":[128,236,248,225,228,128,128,128]},{"a":30093,"t":"byte","b":[227,224,226,228,128,128,225,231]},{"a":30101,"t":"byte","b":[128,128,242,226,221,128,128,128]},{"a":30109,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30117,"t":"byte","b":[226,226,226,225,128,128,128,128]},{"a":30125,"t":"byte","b":[128,128,128]},{"a":30128,"l":"reach_move0d_behind","c":"Reach profile for blow $0D (fire + up-forward) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[232,232,231,231,227,128,230,230]},{"a":30136,"t":"byte","b":[227,226,230,128,128,128,232,128]},{"a":30144,"t":"byte","b":[128,242,128,230,244,128,128,128]},{"a":30152,"t":"byte","b":[228,231,234,232,128,128,128,128]},{"a":30160,"t":"byte","b":[128,128,251,232,128,128,128,128]},{"a":30168,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30176,"t":"byte","b":[232,231,231,232,128,128,128,128]},{"a":30184,"t":"byte","b":[128,128,128]},{"a":30187,"l":"reach_move0e_behind","c":"Reach profile for blow $0E (fire + up: flying kick) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[234,234,233,233,229,128,232,232]},{"a":30195,"t":"byte","b":[229,227,128,128,128,128,234,128]},{"a":30203,"t":"byte","b":[128,243,128,231,238,128,128,128]},{"a":30211,"t":"byte","b":[229,232,232,232,128,128,128,128]},{"a":30219,"t":"byte","b":[128,240,252,233,128,128,128,128]},{"a":30227,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30235,"t":"byte","b":[233,232,232,232,128,128,128,128]},{"a":30243,"t":"byte","b":[128,128,23]},{"a":30246,"l":"reach_move0f_behind","c":"Reach profile for blow $0F (fire + up-back) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[13,13,12,12,8,8,11,12]},{"a":30254,"t":"byte","b":[8,8,128,128,128,128,128,128]},{"a":30262,"t":"byte","b":[128,23,128,12,22,128,128,128]},{"a":30270,"t":"byte","b":[8,11,11,11,128,128,128,128]},{"a":30278,"t":"byte","b":[128,19,30,13,128,128,128,128]},{"a":30286,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30294,"t":"byte","b":[13,12,12,13,128,128,128,128]},{"a":30302,"t":"byte","b":[128,128,128]},{"a":30305,"l":"reach_move18_behind","c":"Reach profile for blow $18 (down-forward from standing: mid punch) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[238,238,238,238,234,239,238,239]},{"a":30313,"t":"byte","b":[237,128,128,235,238,248,240,241]},{"a":30321,"t":"byte","b":[128,249,128,239,240,128,128,128]},{"a":30329,"t":"byte","b":[238,235,238,243,128,128,235,128]},{"a":30337,"t":"byte","b":[128,241,255,238,233,128,128,128]},{"a":30345,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30353,"t":"byte","b":[238,238,238,238,128,128,128,128]},{"a":30361,"t":"byte","b":[128,128,128]},{"a":30364,"l":"reach_move11_behind","c":"Reach profile for blow $11 (fire + back) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[231,231,231,231,227,227,230,231]},{"a":30372,"t":"byte","b":[227,228,228,225,128,128,232,128]},{"a":30380,"t":"byte","b":[128,242,128,228,231,128,128,128]},{"a":30388,"t":"byte","b":[227,230,230,231,128,128,226,128]},{"a":30396,"t":"byte","b":[128,238,249,231,128,128,128,128]},{"a":30404,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30412,"t":"byte","b":[231,231,231,232,128,128,128,128]},{"a":30420,"t":"byte","b":[128,128,128]},{"a":30423,"l":"reach_move10_behind","c":"Reach profile for blow $10 (fire + down-back) when the defender faces the same way as the attacker, i.e. is struck from behind (pointer in move_reach_ptr_same_facing $124F): 59 bytes, one per defender shape frame 0-$3A. Each is the distance at which the blow lands squarely; the hit test ($2B70-$2C40) scores a whole point when the fighters are at that distance or nearer by up to move_full_window[move], a half point when nearer by up to move_half_window, and $80 means a defender in that frame cannot be hit.","t":"byte","b":[22,18,16,20,10,19,16,15]},{"a":30431,"t":"byte","b":[11,128,128,16,15,19,17,9]},{"a":30439,"t":"byte","b":[13,15,18,15,128,128,128,128]},{"a":30447,"t":"byte","b":[17,13,9,10,12,10,17,3]},{"a":30455,"t":"byte","b":[128,8,20,21,15,128,128,128]},{"a":30463,"t":"byte","b":[128,128,128,128,128,128,128,128]},{"a":30471,"t":"byte","b":[15,12,15,12,14,128,128,128]},{"a":30479,"t":"byte","b":[128,25,128]},{"a":30482,"t":"gap","n":14},{"a":30496,"l":"anim_list_table","c":"Animation step lists, one word per animation number (= move number, copied from $61,X at $2B4C): entries 1-31 point at $7762-$79D6, entry 0 is $0000 (no animation) and entry 32 ($79EA) marks the end of list 31. anim_start ($3885) takes a list's length as the difference of the low bytes of two consecutive words, so each list must be shorter than 256 bytes (all are).","t":"word","b":[0,0],"d":[0],"x":[14357,14493]},{"a":30497,"t":"note","l":"anim_list_table_hi","c":"Second byte of anim_list_table: fighter_animate reads each list address as $7720,Y (low) and $7721,Y (high) at $3815/$381A, so this symbol is only the table's high-byte view.","note":"inside the item at $7720","x":[14362]},{"a":30498,"l":"anim_list_table_next","c":"anim_list_table read one entry on: anim_start ($3899) subtracts the low byte at $7720,Y from the one at $7722,Y to get a list's length in bytes.","t":"word","b":[98,119,102,119,186,119,14,120],"d":[30562,30566,30650,30734],"x":[14489]},{"a":30506,"t":"word","b":[30,120,50,120,62,120,66,120],"d":[30750,30770,30782,30786]},{"a":30514,"t":"word","b":[94,120,126,120,134,120,142,120],"d":[30814,30846,30854,30862]},{"a":30522,"t":"word","b":[154,120,166,120,210,120,222,120],"d":[30874,30886,30930,30942]},{"a":30530,"t":"word","b":[238,120,254,120,2,121,6,121],"d":[30958,30974,30978,30982]},{"a":30538,"t":"word","b":[10,121,18,121,50,121,70,121],"d":[30986,30994,31026,31046]},{"a":30546,"t":"word","b":[82,121,102,121,118,121,130,121],"d":[31058,31078,31094,31106]},{"a":30554,"t":"word","b":[166,121,194,121,214,121,234,121],"d":[31142,31170,31190,31210]},{"a":30562,"l":"anim_01","c":"Animation $01 (standing): 1 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $00.","t":"byte","b":[1,0,0,0]},{"a":30566,"l":"anim_02","c":"Animation $02 (stick forward: walk forward): 21 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $00, $01, $02, $03, $30, $31, $32, $33.","t":"byte","b":[1,1,3,0,3,1,0,0]},{"a":30574,"t":"byte","b":[1,2,2,0,3,2,0,0]},{"a":30582,"t":"byte","b":[3,3,0,0,1,0,6,0]},{"a":30590,"t":"byte","b":[3,0,0,0,1,1,3,0]},{"a":30598,"t":"byte","b":[6,1,0,0,1,51,7,0]},{"a":30606,"t":"byte","b":[6,51,0,0,1,48,5,0]},{"a":30614,"t":"byte","b":[6,48,0,0,1,49,2,0]},{"a":30622,"t":"byte","b":[6,49,0,0,1,50,2,0]},{"a":30630,"t":"byte","b":[6,50,0,0,1,3,2,0]},{"a":30638,"t":"byte","b":[6,3,0,0,1,0,6,0]},{"a":30646,"t":"byte","b":[3,0,0,0]},{"a":30650,"l":"anim_03","c":"Animation $03 (stick back: walk back): 21 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $00, $01, $02, $03, $30, $31, $32, $33.","t":"byte","b":[1,3,250,0,3,3,0,0]},{"a":30658,"t":"byte","b":[3,2,0,0,1,1,254,0]},{"a":30666,"t":"byte","b":[3,1,0,0,1,0,253,0]},{"a":30674,"t":"byte","b":[3,0,0,0,1,3,250,0]},{"a":30682,"t":"byte","b":[6,3,0,0,1,50,254,0]},{"a":30690,"t":"byte","b":[6,50,0,0,1,49,254,0]},{"a":30698,"t":"byte","b":[6,49,0,0,1,48,254,0]},{"a":30706,"t":"byte","b":[6,48,0,0,1,51,251,0]},{"a":30714,"t":"byte","b":[6,51,0,0,1,1,249,0]},{"a":30722,"t":"byte","b":[6,1,0,0,1,0,253,0]},{"a":30730,"t":"byte","b":[3,0,0,0]},{"a":30734,"l":"anim_04","c":"Animation $04 (stick down: crouch): 4 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $00, $0C.","t":"byte","b":[2,0,0,0,8,12,0,0]},{"a":30742,"t":"byte","b":[1,12,0,0,7,12,0,0]},{"a":30750,"l":"anim_05","c":"Animation $05 (stick up: jump): 5 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $09, $19.","t":"byte","b":[6,25,0,0,1,9,0,248]},{"a":30758,"t":"byte","b":[25,9,0,0,1,25,0,8]},{"a":30766,"t":"byte","b":[6,25,0,0]},{"a":30770,"l":"anim_06","c":"Animation $06 (up-forward: high punch): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $06, $07.","t":"byte","b":[1,6,6,0,6,6,0,0]},{"a":30778,"t":"byte","b":[2,7,0,0]},{"a":30782,"l":"anim_07","c":"Animation $07 (down-forward while crouching): 1 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $0D.","t":"byte","b":[2,13,0,0]},{"a":30786,"l":"anim_08","c":"Animation $08 (down-back: somersault backwards): 7 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $14, $15, $16, $17, $19, $20.","t":"byte","b":[6,25,0,0,8,23,255,254]},{"a":30794,"t":"byte","b":[8,22,255,0,8,32,255,0]},{"a":30802,"t":"byte","b":[8,21,255,0,8,20,255,2]},{"a":30810,"t":"byte","b":[14,25,0,0]},{"a":30814,"l":"anim_09","c":"Animation $09 (up-back: somersault forwards): 8 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $14, $15, $16, $17, $19, $20.","t":"byte","b":[6,25,0,0,8,20,1,254]},{"a":30822,"t":"byte","b":[8,21,1,0,1,32,1,0]},{"a":30830,"t":"byte","b":[7,32,1,0,8,22,1,0]},{"a":30838,"t":"byte","b":[8,23,1,2,14,25,0,0]},{"a":30846,"l":"anim_0a","c":"Animation $0A (fire + down): 2 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $0F, $10.","t":"byte","b":[12,15,0,0,2,16,0,0]},{"a":30854,"l":"anim_0b","c":"Animation $0B (fire + down-forward): 2 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $04, $08.","t":"byte","b":[5,4,0,0,2,8,0,0]},{"a":30862,"l":"anim_0c","c":"Animation $0C (fire + forward): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $04, $05, $18.","t":"byte","b":[5,4,0,0,5,24,0,0]},{"a":30870,"t":"byte","b":[2,5,0,0]},{"a":30874,"l":"anim_0d","c":"Animation $0D (fire + up-forward): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $04, $0B, $1E.","t":"byte","b":[6,4,0,0,5,30,0,0]},{"a":30882,"t":"byte","b":[2,11,0,0]},{"a":30886,"l":"anim_0e","c":"Animation $0E (fire + up: flying kick): 11 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $04, $09, $0A, $19, $3A.","t":"byte","b":[8,25,0,0,6,4,0,0]},{"a":30894,"t":"byte","b":[1,9,0,254,5,9,1,254]},{"a":30902,"t":"byte","b":[4,10,1,0,1,10,1,2]},{"a":30910,"t":"byte","b":[10,58,0,0,2,58,0,2]},{"a":30918,"t":"byte","b":[2,9,0,2,1,25,0,2]},{"a":30926,"t":"byte","b":[5,25,0,0]},{"a":30930,"l":"anim_0f","c":"Animation $0F (fire + up-back): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $11, $12, $22.","t":"byte","b":[10,17,0,0,5,34,0,0]},{"a":30938,"t":"byte","b":[2,18,0,0]},{"a":30942,"l":"anim_10","c":"Animation $10 (fire + down-back): 4 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $34, $39.","t":"byte","b":[1,52,247,0,9,52,0,0]},{"a":30950,"t":"byte","b":[1,57,246,0,2,57,0,0]},{"a":30958,"l":"anim_11","c":"Animation $11 (fire + back): 4 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $1C, $1D, $1F, $24.","t":"byte","b":[6,28,0,0,6,29,0,0]},{"a":30966,"t":"byte","b":[6,31,0,0,2,36,0,0]},{"a":30974,"l":"anim_12","c":"Animation $12 (turn round (fire + back from standing becomes this)): 1 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $1B.","t":"byte","b":[6,27,0,0]},{"a":30978,"l":"anim_13","c":"Animation $13 (a block (from move_block_answer $118F)): 1 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $23.","t":"byte","b":[2,35,0,0]},{"a":30982,"l":"anim_14","c":"Animation $14 (the other block (from $118F)): 1 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $0E.","t":"byte","b":[2,14,0,0]},{"a":30986,"l":"anim_15","c":"Animation $15 (set by code outside the stick table; not identified): 2 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $04, $18.","t":"byte","b":[10,4,0,0,10,24,0,0]},{"a":30994,"l":"anim_16","c":"Animation $16 (a hit reaction, given to the defender at $2CA8): 8 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $29, $2A, $2B, $2C.","t":"byte","b":[1,41,227,0,8,41,0,0]},{"a":31002,"t":"byte","b":[1,42,6,0,8,42,0,0]},{"a":31010,"t":"byte","b":[1,43,247,0,8,43,0,0]},{"a":31018,"t":"byte","b":[1,44,4,0,70,44,0,0]},{"a":31026,"l":"anim_17","c":"Animation $17 (not identified): 5 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $1A, $21.","t":"byte","b":[1,26,249,0,20,26,0,0]},{"a":31034,"t":"byte","b":[1,33,1,0,30,33,0,0]},{"a":31042,"t":"byte","b":[20,26,0,0]},{"a":31046,"l":"anim_18","c":"Animation $18 (down-forward from standing: mid punch): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $06, $13.","t":"byte","b":[1,6,6,0,4,6,0,0]},{"a":31054,"t":"byte","b":[2,19,0,0]},{"a":31058,"l":"anim_19","c":"Animation $19 (not identified): 5 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $35, $36, $37, $38.","t":"byte","b":[15,54,0,0,15,53,0,0]},{"a":31066,"t":"byte","b":[45,55,0,0,50,56,0,0]},{"a":31074,"t":"byte","b":[50,55,0,0]},{"a":31078,"l":"anim_1a","c":"Animation $1A (a hit reaction, given to the defender at $2CA8): 4 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $25, $26, $27, $28.","t":"byte","b":[15,37,0,0,15,38,0,0]},{"a":31086,"t":"byte","b":[15,39,0,0,70,40,0,0]},{"a":31094,"l":"anim_1b","c":"Animation $1B (a hit reaction, given to the defender at $2CA8): 3 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $2D, $2E, $2F.","t":"byte","b":[15,45,0,0,15,46,0,0]},{"a":31102,"t":"byte","b":[70,47,0,0]},{"a":31106,"l":"anim_1c","c":"Animation $1C (the bull (bonus round, $1344)): 9 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $3B, $3C, $3D, $3E, $3F.","t":"byte","b":[4,60,0,0,1,62,250,0]},{"a":31114,"t":"byte","b":[4,62,0,0,1,61,252,0]},{"a":31122,"t":"byte","b":[4,61,0,0,1,63,251,0]},{"a":31130,"t":"byte","b":[4,63,0,0,1,59,249,0]},{"a":31138,"t":"byte","b":[4,59,0,0]},{"a":31142,"l":"anim_1d","c":"Animation $1D (the bull (bonus round)): 7 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $40, $41, $42.","t":"byte","b":[16,66,0,0,16,64,0,0]},{"a":31150,"t":"byte","b":[16,65,0,0,16,64,0,0]},{"a":31158,"t":"byte","b":[16,65,0,0,16,64,0,0]},{"a":31166,"t":"byte","b":[16,65,0,0]},{"a":31170,"l":"anim_1e","c":"Animation $1E (the bull (bonus round)): 5 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $44, $45, $46.","t":"byte","b":[4,68,0,0,1,70,250,0]},{"a":31178,"t":"byte","b":[4,70,0,0,1,69,252,0]},{"a":31186,"t":"byte","b":[4,69,0,0]},{"a":31190,"l":"anim_1f","c":"Animation $1F (the bull (bonus round)): 5 steps of 4 bytes (ticks to hold, shape frame, X step, Y step), read by fighter_animate ($37BD-$3884), forwards or backwards. Shape frames used: $48, $4C.","t":"byte","b":[1,76,251,0,4,76,0,0]},{"a":31198,"t":"byte","b":[1,72,249,0,4,72,0,0]},{"a":31206,"t":"byte","b":[1,72,255,0]},{"a":31210,"t":"gap","n":246},{"a":31456,"l":"frame_cells_slot0","c":"Shape frame to cell, sprite slot 0 of the 3 x 3 grid (row 1, column 1): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[3,3,1,1,16,25,27,32],"x":[14668,15255,15508]},{"a":31464,"t":"byte","b":[38,0,44,53,0,0,69,0]},{"a":31472,"t":"byte","b":[0,0,82,32,97,101,105,109]},{"a":31480,"t":"byte","b":[151,113,27,118,139,0,145,130]},{"a":31488,"t":"byte","b":[156,0,0,3,0,178,0,0]},{"a":31496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31504,"t":"byte","b":[3,1,1,3,0,239,244,239]},{"a":31512,"t":"byte","b":[253,0,44,0,0,0,0,0]},{"a":31520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31528,"t":"byte","b":[0,0,0,0,0,64,67]},{"a":31535,"l":"frame_cells_slot1","c":"Shape frame to cell, sprite slot 1 of the 3 x 3 grid (row 1, column 2): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[2,2,6,6,0,21,0,33],"x":[14720,15260,15440]},{"a":31543,"t":"byte","b":[0,0,45,54,0,0,70,0]},{"a":31551,"t":"byte","b":[0,88,0,0,98,103,106,83]},{"a":31559,"t":"byte","b":[0,0,0,119,140,124,0,131]},{"a":31567,"t":"byte","b":[157,167,0,2,0,0,0,0]},{"a":31575,"t":"byte","b":[0,197,0,0,0,215,0,0]},{"a":31583,"t":"byte","b":[2,6,6,2,0,0,0,0]},{"a":31591,"t":"byte","b":[0,0,45,0,0,0,0,0]},{"a":31599,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31607,"t":"byte","b":[0,0,0,0,0,0,0]},{"a":31614,"l":"frame_cells_slot2","c":"Shape frame to cell, sprite slot 2 of the 3 x 3 grid (row 1, column 3): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[14772,15265,15372]},{"a":31622,"t":"byte","b":[0,0,0,55,0,0,0,0]},{"a":31630,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31638,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31646,"t":"byte","b":[0,0,161,0,172,0,0,0]},{"a":31654,"t":"byte","b":[0,196,0,0,0,0,0,0]},{"a":31662,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31670,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31678,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31686,"t":"byte","b":[0,0,0,0,0,0,0]},{"a":31693,"l":"frame_cells_slot3","c":"Shape frame to cell, sprite slot 3 of the 3 x 3 grid (row 2, column 1): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[4,14,4,14,17,26,28,34],"x":[14824,15270,15712]},{"a":31701,"t":"byte","b":[39,49,46,56,60,64,71,78]},{"a":31709,"t":"byte","b":[73,0,92,237,99,102,107,111]},{"a":31717,"t":"byte","b":[152,114,165,120,141,125,146,132]},{"a":31725,"t":"byte","b":[0,168,159,136,173,184,179,0]},{"a":31733,"t":"byte","b":[0,0,201,206,0,216,221,224]},{"a":31741,"t":"byte","b":[4,14,4,14,93,240,245,249]},{"a":31749,"t":"byte","b":[254,0,46,113,39,41,44,44]},{"a":31757,"t":"byte","b":[147,148,149,114,40,42,45,43]},{"a":31765,"t":"byte","b":[119,88,43,46,46,65,68]},{"a":31772,"l":"frame_cells_slot4","c":"Shape frame to cell, sprite slot 4 of the 3 x 3 grid (row 2, column 2): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[5,15,5,15,18,22,0,35],"x":[14876,15275,15644]},{"a":31780,"t":"byte","b":[40,50,47,57,61,65,72,79]},{"a":31788,"t":"byte","b":[74,90,84,238,100,104,108,112]},{"a":31796,"t":"byte","b":[153,115,0,121,142,126,147,133]},{"a":31804,"t":"byte","b":[158,169,160,137,174,185,180,193]},{"a":31812,"t":"byte","b":[0,199,202,207,0,217,0,0]},{"a":31820,"t":"byte","b":[5,15,5,15,94,241,246,250]},{"a":31828,"t":"byte","b":[255,171,47,114,40,42,45,45]},{"a":31836,"t":"byte","b":[145,145,150,119,115,43,46,46]},{"a":31844,"t":"byte","b":[0,0,0,0,0,0,69]},{"a":31851,"l":"frame_cells_slot5","c":"Shape frame to cell, sprite slot 5 of the 3 x 3 grid (row 2, column 3): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[0,0,0,0,0,23,0,0],"x":[14928,15280,15576]},{"a":31859,"t":"byte","b":[0,0,48,0,0,66,0,0]},{"a":31867,"t":"byte","b":[0,89,85,0,0,0,0,0]},{"a":31875,"t":"byte","b":[154,0,0,0,0,129,148,0]},{"a":31883,"t":"byte","b":[0,0,162,0,177,0,0,194]},{"a":31891,"t":"byte","b":[0,198,203,208,0,0,0,0]},{"a":31899,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":31907,"t":"byte","b":[0,183,48,119,115,43,46,46]},{"a":31915,"t":"byte","b":[146,146,128,0,0,0,0,0]},{"a":31923,"t":"byte","b":[0,0,0,0,0,0,0]},{"a":31930,"l":"frame_cells_slot6","c":"Shape frame to cell, sprite slot 6 of the 3 x 3 grid (row 3, column 1): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[7,9,11,13,19,29,30,36],"x":[14980,15285,15916]},{"a":31938,"t":"byte","b":[41,51,0,58,62,67,7,80]},{"a":31946,"t":"byte","b":[75,0,29,36,110,0,0,0]},{"a":31954,"t":"byte","b":[29,116,166,122,143,127,149,134]},{"a":31962,"t":"byte","b":[0,170,0,7,175,186,181,191]},{"a":31970,"t":"byte","b":[188,0,0,209,212,218,222,226]},{"a":31978,"t":"byte","b":[228,230,232,234,95,247,242,251]},{"a":31986,"t":"byte","b":[251,204,0,120,116,124,127,47]},{"a":31994,"t":"byte","b":[142,142,129,121,117,125,37,140]},{"a":32002,"t":"byte","b":[118,95,126,38,141,66,70]},{"a":32009,"l":"frame_cells_slot7","c":"Shape frame to cell, sprite slot 7 of the 3 x 3 grid (row 3, column 2): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[8,10,12,8,20,24,31,37],"x":[15032,15290,15848]},{"a":32017,"t":"byte","b":[42,52,0,59,63,68,10,81]},{"a":32025,"t":"byte","b":[76,91,86,37,0,0,0,0]},{"a":32033,"t":"byte","b":[155,117,0,123,144,128,150,135]},{"a":32041,"t":"byte","b":[0,220,163,138,176,187,182,192]},{"a":32049,"t":"byte","b":[189,29,29,210,213,219,223,227]},{"a":32057,"t":"byte","b":[229,231,233,235,96,248,243,248]},{"a":32065,"t":"byte","b":[248,225,0,121,117,125,37,140]},{"a":32073,"t":"byte","b":[143,143,130,118,122,126,38,141]},{"a":32081,"t":"byte","b":[0,0,0,0,0,79,71]},{"a":32088,"l":"frame_cells_slot8","c":"Shape frame to cell, sprite slot 8 of the 3 x 3 grid (row 3, column 3): 79 bytes, one per shape frame 0-$4E. Read by the sprite builder ($3936-$3B0C): cell 0 leaves the slot blank (pointer 0, the empty sprite at $C000); any other cell is copied from $8000 + 64 x cell. For the bull (frames $3B-$4C, with $5D = $40) the byte is used as the sprite pointer itself.","t":"byte","b":[0,0,0,0,0,220,0,0],"x":[15084,15295,15780]},{"a":32096,"t":"byte","b":[43,0,0,220,0,220,0,0]},{"a":32104,"t":"byte","b":[77,0,87,0,0,0,0,0]},{"a":32112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32120,"t":"byte","b":[0,0,164,0,220,0,0,195]},{"a":32128,"t":"byte","b":[190,200,205,211,214,0,0,0]},{"a":32136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32144,"t":"byte","b":[0,236,0,118,122,126,38,141]},{"a":32152,"t":"byte","b":[144,144,131,0,0,0,0,0]},{"a":32160,"t":"byte","b":[0,0,0,0,0,0,0]},{"a":32167,"t":"gap","n":89},{"a":32256,"l":"mirror_pairs","c":"Mirror table for multicolour sprites: entry n is n with its four bit pairs in reverse order ($01 becomes $40, $1B becomes $E4). The mirrored sprite build ($3BC5-$3E7F) passes every byte through it to turn a fighter round; checked for all 256 entries. The same 256 bytes are Fist II's mirror table.","t":"byte","b":[0,64,128,192,16,80,144,208],"x":[15970,15980,15990]},{"a":32264,"t":"byte","b":[32,96,160,224,48,112,176,240]},{"a":32272,"t":"byte","b":[4,68,132,196,20,84,148,212]},{"a":32280,"t":"byte","b":[36,100,164,228,52,116,180,244]},{"a":32288,"t":"byte","b":[8,72,136,200,24,88,152,216]},{"a":32296,"t":"byte","b":[40,104,168,232,56,120,184,248]},{"a":32304,"t":"byte","b":[12,76,140,204,28,92,156,220]},{"a":32312,"t":"byte","b":[44,108,172,236,60,124,188,252]},{"a":32320,"t":"byte","b":[1,65,129,193,17,81,145,209]},{"a":32328,"t":"byte","b":[33,97,161,225,49,113,177,241]},{"a":32336,"t":"byte","b":[5,69,133,197,21,85,149,213]},{"a":32344,"t":"byte","b":[37,101,165,229,53,117,181,245]},{"a":32352,"t":"byte","b":[9,73,137,201,25,89,153,217]},{"a":32360,"t":"byte","b":[41,105,169,233,57,121,185,249]},{"a":32368,"t":"byte","b":[13,77,141,205,29,93,157,221]},{"a":32376,"t":"byte","b":[45,109,173,237,61,125,189,253]},{"a":32384,"t":"byte","b":[2,66,130,194,18,82,146,210]},{"a":32392,"t":"byte","b":[34,98,162,226,50,114,178,242]},{"a":32400,"t":"byte","b":[6,70,134,198,22,86,150,214]},{"a":32408,"t":"byte","b":[38,102,166,230,54,118,182,246]},{"a":32416,"t":"byte","b":[10,74,138,202,26,90,154,218]},{"a":32424,"t":"byte","b":[42,106,170,234,58,122,186,250]},{"a":32432,"t":"byte","b":[14,78,142,206,30,94,158,222]},{"a":32440,"t":"byte","b":[46,110,174,238,62,126,190,254]},{"a":32448,"t":"byte","b":[3,67,131,195,19,83,147,211]},{"a":32456,"t":"byte","b":[35,99,163,227,51,115,179,243]},{"a":32464,"t":"byte","b":[7,71,135,199,23,87,151,215]},{"a":32472,"t":"byte","b":[39,103,167,231,55,119,183,247]},{"a":32480,"t":"byte","b":[11,75,139,203,27,91,155,219]},{"a":32488,"t":"byte","b":[43,107,171,235,59,123,187,251]},{"a":32496,"t":"byte","b":[15,79,143,207,31,95,159,223]},{"a":32504,"t":"byte","b":[47,111,175,239,63,127,191,255]},{"a":32512,"l":"cell_page_table","c":"Page of each shape cell: entry n is $80 + n / 4, so cell n's 64 bytes start at $8000 + 64 x n (the low byte comes from cell_lo_offsets at $38B0). Read with the cell number as index by the sprite builder ($3956 and the eight like it).","t":"byte","b":[128,128,128,128,129,129,129,129],"x":[14678,14730,14782,14834,14886,14938,14990,15042,15094,15934]},{"a":32520,"t":"byte","b":[130,130,130,130,131,131,131,131]},{"a":32528,"t":"byte","b":[132,132,132,132,133,133,133,133]},{"a":32536,"t":"byte","b":[134,134,134,134,135,135,135,135]},{"a":32544,"t":"byte","b":[136,136,136,136,137,137,137,137]},{"a":32552,"t":"byte","b":[138,138,138,138,139,139,139,139]},{"a":32560,"t":"byte","b":[140,140,140,140,141,141,141,141]},{"a":32568,"t":"byte","b":[142,142,142,142,143,143,143,143]},{"a":32576,"t":"byte","b":[144,144,144,144,145,145,145,145]},{"a":32584,"t":"byte","b":[146,146,146,146,147,147,147,147]},{"a":32592,"t":"byte","b":[148,148,148,148,149,149,149,149]},{"a":32600,"t":"byte","b":[150,150,150,150,151,151,151,151]},{"a":32608,"t":"byte","b":[152,152,152,152,153,153,153,153]},{"a":32616,"t":"byte","b":[154,154,154,154,155,155,155,155]},{"a":32624,"t":"byte","b":[156,156,156,156,157,157,157,157]},{"a":32632,"t":"byte","b":[158,158,158,158,159,159,159,159]},{"a":32640,"t":"byte","b":[160,160,160,160,161,161,161,161]},{"a":32648,"t":"byte","b":[162,162,162,162,163,163,163,163]},{"a":32656,"t":"byte","b":[164,164,164,164,165,165,165,165]},{"a":32664,"t":"byte","b":[166,166,166,166,167,167,167,167]},{"a":32672,"t":"byte","b":[168,168,168,168,169,169,169,169]},{"a":32680,"t":"byte","b":[170,170,170,170,171,171,171,171]},{"a":32688,"t":"byte","b":[172,172,172,172,173,173,173,173]},{"a":32696,"t":"byte","b":[174,174,174,174,175,175,175,175]},{"a":32704,"t":"byte","b":[176,176,176,176,177,177,177,177]},{"a":32712,"t":"byte","b":[178,178,178,178,179,179,179,179]},{"a":32720,"t":"byte","b":[180,180,180,180,181,181,181,181]},{"a":32728,"t":"byte","b":[182,182,182,182,183,183,183,183]},{"a":32736,"t":"byte","b":[184,184,184,184,185,185,185,185]},{"a":32744,"t":"byte","b":[186,186,186,186,187,187,187,187]},{"a":32752,"t":"byte","b":[188,188,188,188,189,189,189,189]},{"a":32760,"t":"byte","b":[190,190,190,190,191,191,191,191]},{"a":32768,"l":"shape_cells_00","c":"Fighter shape cells $00-$0F: sixteen multicolour sprite images of 64 bytes each ($8000-$83FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[5621,14803,14959]},{"a":32776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32856,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32864,"t":"byte","b":[0,0,0,20,0,0,85,0]},{"a":32872,"t":"byte","b":[1,170,0,10,149,0,9,95]},{"a":32880,"t":"byte","b":[0,34,117,0,137,125,0,9]},{"a":32888,"t":"byte","b":[223,0,1,223,0,0,253,0]},{"a":32896,"l":"shape_cell_02","c":"Shape cell $02 ($8080-$80BF), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($399F).","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[14751]},{"a":32904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32928,"t":"byte","b":[0,0,0,0,64,0,0,128]},{"a":32936,"t":"byte","b":[0,0,64,0,0,192,0,0]},{"a":32944,"t":"byte","b":[64,0,0,112,0,0,240,0]},{"a":32952,"t":"byte","b":[0,192,0,0,64,0,0,0]},{"a":32960,"l":"shape_cell_03","c":"Shape cell $03 ($80C0-$80FF), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($396B).","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[14699]},{"a":32968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":32992,"t":"byte","b":[0,0,0,5,0,0,21,0]},{"a":33000,"t":"byte","b":[0,106,0,2,165,0,10,87]},{"a":33008,"t":"byte","b":[0,0,93,0,8,95,0,0]},{"a":33016,"t":"byte","b":[119,0,0,119,0,0,255,0]},{"a":33024,"l":"shape_cell_04","c":"Shape cell $04 ($8100-$813F), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3A07).","t":"byte","b":[0,0,255,0,2,255,0,10],"x":[14855]},{"a":33032,"t":"byte","b":[254,0,10,190,0,42,190,0]},{"a":33040,"t":"byte","b":[41,175,0,42,175,0,42,106]},{"a":33048,"t":"byte","b":[0,42,154,0,42,175,0,10]},{"a":33056,"t":"byte","b":[175,0,10,175,0,2,171,0]},{"a":33064,"t":"byte","b":[1,169,0,2,90,0,2,170]},{"a":33072,"t":"byte","b":[0,1,170,0,1,90,0,2]},{"a":33080,"t":"byte","b":[85,0,2,165,0,2,149,0]},{"a":33088,"l":"shape_cell_05","c":"Shape cell $05 ($8140-$817F), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3A3B).","t":"byte","b":[192,0,0,0,0,0,160,0],"x":[14907]},{"a":33096,"t":"byte","b":[0,168,0,0,170,0,12,170]},{"a":33104,"t":"byte","b":[128,63,175,160,255,191,175,255]},{"a":33112,"t":"byte","b":[255,175,252,255,171,240,254,171]},{"a":33120,"t":"byte","b":[192,234,169,0,168,168,0,168]},{"a":33128,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":33136,"t":"byte","b":[168,0,0,148,0,0,88,0]},{"a":33144,"t":"byte","b":[0,168,0,0,168,0,0,0]},{"a":33152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33200,"t":"byte","b":[0,0,0,192,0,0,192,0]},{"a":33208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33216,"l":"shape_cell_07","c":"Shape cell $07 ($81C0-$81FF), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3AA3).","t":"byte","b":[0,10,154,0,42,154,0,42],"x":[15011]},{"a":33224,"t":"byte","b":[154,0,170,170,0,170,170,0]},{"a":33232,"t":"byte","b":[170,170,0,170,166,0,170,144]},{"a":33240,"t":"byte","b":[2,170,64,2,170,0,2,169]},{"a":33248,"t":"byte","b":[0,10,164,0,10,164,0,10]},{"a":33256,"t":"byte","b":[160,21,10,160,85,10,145,85]},{"a":33264,"t":"byte","b":[10,69,85,53,149,85,255,85]},{"a":33272,"t":"byte","b":[65,255,84,0,253,0,0,0]},{"a":33280,"l":"shape_cell_08","c":"Shape cell $08 ($8200-$823F), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3AD7).","t":"byte","b":[106,0,0,106,128,0,154,128],"x":[15063]},{"a":33288,"t":"byte","b":[0,154,160,0,154,160,0,170]},{"a":33296,"t":"byte","b":[160,0,106,168,0,26,168,0]},{"a":33304,"t":"byte","b":[10,168,0,2,168,0,2,168]},{"a":33312,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":33320,"t":"byte","b":[170,0,80,42,64,85,42,144]},{"a":33328,"t":"byte","b":[85,106,176,85,90,255,85,91]},{"a":33336,"t":"byte","b":[255,0,87,255,0,7,192,0]},{"a":33344,"l":"shape_cell_09","c":"Shape cell $09 ($8240-$827F), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3E5F/$3E69/$3E73).","t":"byte","b":[0,10,154,0,10,90,0,42],"x":[15967,15977,15987]},{"a":33352,"t":"byte","b":[106,0,42,170,0,170,170,0]},{"a":33360,"t":"byte","b":[170,169,0,170,160,2,170,128]},{"a":33368,"t":"byte","b":[2,170,128,2,170,128,10,170]},{"a":33376,"t":"byte","b":[0,10,170,0,10,168,0,10]},{"a":33384,"t":"byte","b":[168,0,10,160,85,10,161,85]},{"a":33392,"t":"byte","b":[54,133,85,63,85,85,255,85]},{"a":33400,"t":"byte","b":[0,253,80,0,245,0,0,0]},{"a":33408,"t":"byte","b":[104,0,0,106,0,0,106,0]},{"a":33416,"t":"byte","b":[0,106,0,0,170,0,0,170]},{"a":33424,"t":"byte","b":[0,0,106,0,0,26,128,0]},{"a":33432,"t":"byte","b":[26,128,0,26,128,0,26,128]},{"a":33440,"t":"byte","b":[0,22,128,0,6,128,0,6]},{"a":33448,"t":"byte","b":[160,0,6,160,0,86,160,0]},{"a":33456,"t":"byte","b":[86,164,0,86,101,64,85,253]},{"a":33464,"t":"byte","b":[80,7,255,208,1,255,192,0]},{"a":33472,"t":"byte","b":[0,2,154,0,2,90,0,10]},{"a":33480,"t":"byte","b":[106,0,10,170,0,10,170,0]},{"a":33488,"t":"byte","b":[10,170,0,10,164,0,10,144]},{"a":33496,"t":"byte","b":[0,10,144,0,10,144,0,10]},{"a":33504,"t":"byte","b":[144,0,10,64,0,10,64,0]},{"a":33512,"t":"byte","b":[10,64,0,10,64,0,10,65]},{"a":33520,"t":"byte","b":[0,1,69,0,3,85,0,3]},{"a":33528,"t":"byte","b":[245,0,15,244,0,15,240,0]},{"a":33536,"t":"byte","b":[104,0,0,106,0,0,106,0]},{"a":33544,"t":"byte","b":[0,106,0,0,170,0,0,170]},{"a":33552,"t":"byte","b":[0,0,170,0,0,42,128,0]},{"a":33560,"t":"byte","b":[42,128,0,26,128,0,26,128]},{"a":33568,"t":"byte","b":[0,26,128,0,26,128,0,6]},{"a":33576,"t":"byte","b":[128,0,6,128,0,86,128,0]},{"a":33584,"t":"byte","b":[86,144,0,85,148,0,7,245]},{"a":33592,"t":"byte","b":[0,15,245,64,15,252,0,0]},{"a":33600,"t":"byte","b":[0,2,154,0,2,90,0,10]},{"a":33608,"t":"byte","b":[106,0,10,170,0,10,170,0]},{"a":33616,"t":"byte","b":[10,170,0,10,168,0,10,164]},{"a":33624,"t":"byte","b":[0,10,164,0,10,164,0,10]},{"a":33632,"t":"byte","b":[164,0,10,144,0,10,144,0]},{"a":33640,"t":"byte","b":[10,144,0,10,144,0,10,144]},{"a":33648,"t":"byte","b":[0,1,129,0,3,85,0,3]},{"a":33656,"t":"byte","b":[245,0,15,245,0,15,244,0]},{"a":33664,"t":"byte","b":[0,0,255,0,0,255,0,2]},{"a":33672,"t":"byte","b":[254,0,10,190,0,42,190,0]},{"a":33680,"t":"byte","b":[41,174,0,42,170,0,42,106]},{"a":33688,"t":"byte","b":[0,42,155,0,42,175,0,42]},{"a":33696,"t":"byte","b":[175,0,42,175,0,10,167,0]},{"a":33704,"t":"byte","b":[1,170,0,2,102,0,2,154]},{"a":33712,"t":"byte","b":[0,1,106,0,1,86,0,2]},{"a":33720,"t":"byte","b":[85,0,2,153,0,2,153,0]},{"a":33728,"t":"byte","b":[192,0,0,0,0,0,160,0]},{"a":33736,"t":"byte","b":[0,168,0,12,170,0,63,175]},{"a":33744,"t":"byte","b":[128,255,191,159,255,255,175,255]},{"a":33752,"t":"byte","b":[255,175,252,246,175,0,218,172]},{"a":33760,"t":"byte","b":[0,166,164,0,168,104,0,168]},{"a":33768,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":33776,"t":"byte","b":[168,0,0,148,0,0,84,0]},{"a":33784,"t":"byte","b":[0,168,0,0,168,0,0,0]},{"a":33792,"l":"shape_cells_10","c":"Fighter shape cells $10-$1F: sixteen multicolour sprite images of 64 bytes each ($8400-$87FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33824,"t":"byte","b":[0,0,0,0,0,84,0,41]},{"a":33832,"t":"byte","b":[90,0,130,170,0,10,149,0]},{"a":33840,"t":"byte","b":[41,127,0,1,117,0,1,125]},{"a":33848,"t":"byte","b":[192,1,223,192,1,223,0,0]},{"a":33856,"t":"byte","b":[3,253,0,3,255,0,2,254]},{"a":33864,"t":"byte","b":[168,10,191,170,10,175,170,42]},{"a":33872,"t":"byte","b":[171,234,42,171,234,42,170,190]},{"a":33880,"t":"byte","b":[41,170,254,42,127,253,42,191]},{"a":33888,"t":"byte","b":[254,42,191,234,10,190,106,10]},{"a":33896,"t":"byte","b":[186,170,2,170,169,0,42,165]},{"a":33904,"t":"byte","b":[0,22,90,0,37,90,0,42]},{"a":33912,"t":"byte","b":[102,0,42,102,0,42,105,0]},{"a":33920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":33928,"t":"byte","b":[0,0,0,0,128,0,0,160]},{"a":33936,"t":"byte","b":[0,0,160,0,0,168,0,0]},{"a":33944,"t":"byte","b":[175,0,0,175,192,0,127,252]},{"a":33952,"t":"byte","b":[0,15,255,0,128,63,0,64]},{"a":33960,"t":"byte","b":[63,0,64,0,0,160,0,0]},{"a":33968,"t":"byte","b":[168,0,0,170,0,0,170,128]},{"a":33976,"t":"byte","b":[0,170,160,0,170,160,0,0]},{"a":33984,"t":"byte","b":[0,41,170,0,41,169,0,41]},{"a":33992,"t":"byte","b":[164,0,42,164,0,42,144,0]},{"a":34000,"t":"byte","b":[10,144,0,10,144,0,10,144]},{"a":34008,"t":"byte","b":[0,10,144,0,10,144,0,2]},{"a":34016,"t":"byte","b":[144,0,2,164,0,2,164,0]},{"a":34024,"t":"byte","b":[2,164,0,2,164,0,2,164]},{"a":34032,"t":"byte","b":[0,0,100,0,21,213,0,85]},{"a":34040,"t":"byte","b":[253,0,23,253,0,3,252,0]},{"a":34048,"t":"byte","b":[170,160,0,22,160,0,10,160]},{"a":34056,"t":"byte","b":[0,42,128,0,42,128,0,234]},{"a":34064,"t":"byte","b":[0,0,218,192,0,246,192,0]},{"a":34072,"t":"byte","b":[63,240,0,15,240,0,3,240]},{"a":34080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34096,"t":"byte","b":[85,64,0,85,80,0,80,80]},{"a":34104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34120,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34152,"t":"byte","b":[0,0,0,0,0,0,0,252]},{"a":34160,"t":"byte","b":[0,15,255,10,191,255,170,191]},{"a":34168,"t":"byte","b":[223,170,175,0,170,172,0,0]},{"a":34176,"t":"byte","b":[170,164,0,106,88,0,153,0]},{"a":34184,"t":"byte","b":[0,164,0,0,169,2,170,170]},{"a":34192,"t":"byte","b":[106,170,170,106,170,170,106,170]},{"a":34200,"t":"byte","b":[170,106,166,169,166,170,169,154]},{"a":34208,"t":"byte","b":[169,165,106,164,166,170,128,165]},{"a":34216,"t":"byte","b":[170,0,153,169,0,105,168,0]},{"a":34224,"t":"byte","b":[170,100,0,170,100,0,170,164]},{"a":34232,"t":"byte","b":[0,42,144,0,42,144,0,0]},{"a":34240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34248,"t":"byte","b":[0,0,0,0,168,3,240,170]},{"a":34256,"t":"byte","b":[191,252,170,255,255,170,255,255]},{"a":34264,"t":"byte","b":[170,255,255,170,64,255,85,128]},{"a":34272,"t":"byte","b":[3,0,0,0,0,0,0,0]},{"a":34280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34304,"t":"byte","b":[42,144,0,42,144,0,42,144]},{"a":34312,"t":"byte","b":[0,42,144,0,42,144,0,42]},{"a":34320,"t":"byte","b":[164,0,42,164,0,10,164,0]},{"a":34328,"t":"byte","b":[10,164,0,10,164,0,10,164]},{"a":34336,"t":"byte","b":[0,2,164,0,2,164,0,2]},{"a":34344,"t":"byte","b":[164,0,64,156,0,85,253,85]},{"a":34352,"t":"byte","b":[85,253,85,21,255,85,23,255]},{"a":34360,"t":"byte","b":[0,15,255,0,15,252,0,0]},{"a":34368,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34408,"t":"byte","b":[0,0,0,84,0,1,169,0]},{"a":34416,"t":"byte","b":[134,90,0,41,245,0,133,255]},{"a":34424,"t":"byte","b":[2,7,215,10,7,221,42,0]},{"a":34432,"t":"byte","b":[5,255,170,13,247,170,3,247]},{"a":34440,"t":"byte","b":[170,3,255,106,2,221,234,10]},{"a":34448,"t":"byte","b":[247,250,10,191,106,42,170,170]},{"a":34456,"t":"byte","b":[42,170,170,42,170,170,42,106]},{"a":34464,"t":"byte","b":[170,42,154,170,42,102,170,41]},{"a":34472,"t":"byte","b":[160,170,42,144,2,10,188,0]},{"a":34480,"t":"byte","b":[10,255,0,2,127,192,2,191]},{"a":34488,"t":"byte","b":[240,0,15,240,0,3,240,0]},{"a":34496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34528,"t":"byte","b":[0,0,0,80,0,1,84,0]},{"a":34536,"t":"byte","b":[166,168,0,9,84,0,37,252]},{"a":34544,"t":"byte","b":[0,133,212,0,5,247,0,7]},{"a":34552,"t":"byte","b":[127,0,7,124,0,3,244,0]},{"a":34560,"t":"byte","b":[0,3,252,0,3,252,0,11]},{"a":34568,"t":"byte","b":[240,0,42,248,0,42,184,0]},{"a":34576,"t":"byte","b":[170,174,0,170,174,0,170,170]},{"a":34584,"t":"byte","b":[0,169,170,0,169,170,0,169]},{"a":34592,"t":"byte","b":[175,0,170,175,0,166,191,0]},{"a":34600,"t":"byte","b":[170,255,0,170,255,0,170,250]},{"a":34608,"t":"byte","b":[0,42,106,0,21,170,0,37]},{"a":34616,"t":"byte","b":[101,0,42,150,0,42,165,0]},{"a":34624,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34632,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34640,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34648,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34656,"t":"byte","b":[0,0,0,0,0,0,0,21]},{"a":34664,"t":"byte","b":[64,0,21,85,85,1,85,85]},{"a":34672,"t":"byte","b":[0,85,85,0,5,85,0,0]},{"a":34680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34688,"t":"byte","b":[0,42,166,0,42,154,0,170]},{"a":34696,"t":"byte","b":[154,0,170,106,0,170,170,0]},{"a":34704,"t":"byte","b":[170,154,0,170,134,2,170,6]},{"a":34712,"t":"byte","b":[2,169,1,10,169,0,10,164]},{"a":34720,"t":"byte","b":[0,10,164,0,42,144,0,42]},{"a":34728,"t":"byte","b":[144,0,42,64,0,42,65,85]},{"a":34736,"t":"byte","b":[42,85,85,6,149,85,61,85]},{"a":34744,"t":"byte","b":[85,255,84,0,255,64,0,0]},{"a":34752,"t":"byte","b":[80,0,0,128,0,0,160,0]},{"a":34760,"t":"byte","b":[0,160,0,0,168,0,0,170]},{"a":34768,"t":"byte","b":[0,0,170,0,0,170,128,0]},{"a":34776,"t":"byte","b":[170,128,0,106,128,0,106,128]},{"a":34784,"t":"byte","b":[0,26,128,0,26,128,0,26]},{"a":34792,"t":"byte","b":[128,0,26,128,0,26,0,0]},{"a":34800,"t":"byte","b":[106,0,0,89,0,0,127,192]},{"a":34808,"t":"byte","b":[0,127,240,0,63,252,0,0]},{"a":34816,"l":"shape_cells_20","c":"Fighter shape cells $20-$2F: sixteen multicolour sprite images of 64 bytes each ($8800-$8BFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34848,"t":"byte","b":[0,0,0,84,0,1,85,0]},{"a":34856,"t":"byte","b":[138,170,0,41,85,0,133,95]},{"a":34864,"t":"byte","b":[0,133,117,0,5,125,0,5]},{"a":34872,"t":"byte","b":[223,0,1,223,0,1,253,0]},{"a":34880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":34928,"t":"byte","b":[0,0,0,192,0,48,192,0]},{"a":34936,"t":"byte","b":[252,0,3,252,0,15,252,0]},{"a":34944,"t":"byte","b":[0,0,253,0,3,255,0,10]},{"a":34952,"t":"byte","b":[156,0,42,106,0,42,106,0]},{"a":34960,"t":"byte","b":[170,170,2,170,170,2,154,170]},{"a":34968,"t":"byte","b":[2,154,170,2,154,169,2,154]},{"a":34976,"t":"byte","b":[166,0,170,170,0,170,170,0]},{"a":34984,"t":"byte","b":[42,170,0,10,170,0,5,169]},{"a":34992,"t":"byte","b":[0,9,85,0,10,165,0,10]},{"a":35000,"t":"byte","b":[169,0,10,166,0,10,166,0]},{"a":35008,"t":"byte","b":[0,63,252,2,191,240,42,191]},{"a":35016,"t":"byte","b":[192,170,172,0,170,168,0,170]},{"a":35024,"t":"byte","b":[164,0,170,96,0,165,0,0]},{"a":35032,"t":"byte","b":[80,0,0,128,0,0,0,0]},{"a":35040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35056,"t":"byte","b":[0,0,0,64,0,0,16,0]},{"a":35064,"t":"byte","b":[0,128,0,0,128,0,0,0]},{"a":35072,"t":"byte","b":[0,10,170,0,10,170,0,10]},{"a":35080,"t":"byte","b":[170,0,42,170,0,42,170,0]},{"a":35088,"t":"byte","b":[42,166,0,42,165,0,170,145]},{"a":35096,"t":"byte","b":[2,170,145,2,170,64,2,170]},{"a":35104,"t":"byte","b":[64,10,169,0,10,169,0,10]},{"a":35112,"t":"byte","b":[164,0,42,144,0,42,129,85]},{"a":35120,"t":"byte","b":[53,149,85,63,85,85,255,213]},{"a":35128,"t":"byte","b":[85,255,245,0,63,244,0,0]},{"a":35136,"t":"byte","b":[160,0,0,168,0,0,168,0]},{"a":35144,"t":"byte","b":[0,168,0,0,170,0,0,170]},{"a":35152,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":35160,"t":"byte","b":[170,0,0,106,0,0,106,0]},{"a":35168,"t":"byte","b":[0,106,0,0,106,0,0,106]},{"a":35176,"t":"byte","b":[0,0,106,0,0,106,0,0]},{"a":35184,"t":"byte","b":[106,64,0,101,85,0,127,213]},{"a":35192,"t":"byte","b":[0,127,252,0,127,252,0,0]},{"a":35200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35216,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35232,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35240,"t":"byte","b":[84,0,1,86,0,34,170,0]},{"a":35248,"t":"byte","b":[10,165,0,33,95,0,1,117]},{"a":35256,"t":"byte","b":[0,33,125,192,1,223,192,0]},{"a":35264,"t":"byte","b":[1,223,0,1,253,0,0,255]},{"a":35272,"t":"byte","b":[0,0,254,170,0,255,170,2]},{"a":35280,"t":"byte","b":[191,170,2,171,234,10,170,171]},{"a":35288,"t":"byte","b":[42,170,175,42,154,191,42,166]},{"a":35296,"t":"byte","b":[255,42,171,254,42,171,250,10]},{"a":35304,"t":"byte","b":[169,218,10,170,106,2,169,169]},{"a":35312,"t":"byte","b":[0,22,149,0,9,85,0,10]},{"a":35320,"t":"byte","b":[169,0,2,166,0,2,166,0]},{"a":35328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35336,"t":"byte","b":[0,0,0,0,128,0,0,160]},{"a":35344,"t":"byte","b":[0,0,168,0,0,234,0,0]},{"a":35352,"t":"byte","b":[234,160,240,234,127,252,170,255]},{"a":35360,"t":"byte","b":[252,138,255,252,162,252,60,144]},{"a":35368,"t":"byte","b":[64,0,104,0,0,106,0,0]},{"a":35376,"t":"byte","b":[170,128,0,170,160,0,170,168]},{"a":35384,"t":"byte","b":[0,106,170,0,106,170,128,0]},{"a":35392,"t":"byte","b":[0,2,166,0,2,170,0,2]},{"a":35400,"t":"byte","b":[170,0,2,169,0,2,169,0]},{"a":35408,"t":"byte","b":[2,169,0,2,164,0,2,164]},{"a":35416,"t":"byte","b":[0,2,164,0,2,164,0,2]},{"a":35424,"t":"byte","b":[164,0,2,169,0,0,169,0]},{"a":35432,"t":"byte","b":[0,169,0,0,169,0,5,169]},{"a":35440,"t":"byte","b":[0,85,105,1,85,89,0,85]},{"a":35448,"t":"byte","b":[253,0,15,255,0,15,255,0]},{"a":35456,"t":"byte","b":[154,170,160,170,170,168,65,170]},{"a":35464,"t":"byte","b":[169,0,106,170,0,26,171,0]},{"a":35472,"t":"byte","b":[1,171,0,0,105,0,0,22]},{"a":35480,"t":"byte","b":[0,0,1,0,0,0,0,0]},{"a":35488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35496,"t":"byte","b":[0,0,84,0,0,85,64,0]},{"a":35504,"t":"byte","b":[85,85,85,85,85,85,80,21]},{"a":35512,"t":"byte","b":[85,64,0,5,0,0,0,0]},{"a":35520,"t":"byte","b":[0,0,0,0,0,0,192,0]},{"a":35528,"t":"byte","b":[0,240,0,0,255,0,0,255]},{"a":35536,"t":"byte","b":[192,0,63,192,0,15,192,0]},{"a":35544,"t":"byte","b":[3,192,0,0,192,0,0,0]},{"a":35552,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35560,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35568,"t":"byte","b":[0,0,0,85,0,0,85,64]},{"a":35576,"t":"byte","b":[0,85,0,0,0,0,0,0]},{"a":35584,"t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":35592,"t":"byte","b":[64,0,5,80,0,26,160,10]},{"a":35600,"t":"byte","b":[41,80,0,165,240,0,151,80]},{"a":35608,"t":"byte","b":[2,23,220,8,29,252,0,29]},{"a":35616,"t":"byte","b":[240,0,63,208,2,191,208,10]},{"a":35624,"t":"byte","b":[175,240,42,175,234,42,175,170]},{"a":35632,"t":"byte","b":[42,171,170,42,107,170,170,107]},{"a":35640,"t":"byte","b":[170,170,106,250,169,171,249,0]},{"a":35648,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35656,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35664,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35672,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35688,"t":"byte","b":[0,0,128,0,0,168,0,0]},{"a":35696,"t":"byte","b":[170,160,0,170,171,240,170,171]},{"a":35704,"t":"byte","b":[255,86,171,255,1,164,63,0]},{"a":35712,"t":"byte","b":[169,175,248,169,191,246,170,255]},{"a":35720,"t":"byte","b":[230,171,254,90,171,250,106,171]},{"a":35728,"t":"byte","b":[233,154,42,229,166,10,154,102]},{"a":35736,"t":"byte","b":[10,106,154,2,106,149,0,106]},{"a":35744,"t":"byte","b":[164,0,106,169,0,106,170,0]},{"a":35752,"t":"byte","b":[26,170,0,2,169,0,0,171]},{"a":35760,"t":"byte","b":[0,0,40,0,0,0,0,0]},{"a":35768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35776,"t":"byte","b":[0,0,15,0,0,0,160,0]},{"a":35784,"t":"byte","b":[0,170,128,0,170,168,0,170]},{"a":35792,"t":"byte","b":[170,128,170,170,168,170,170,170]},{"a":35800,"t":"byte","b":[170,170,170,90,170,170,5,106]},{"a":35808,"t":"byte","b":[170,0,22,170,128,1,106,112]},{"a":35816,"t":"byte","b":[0,26,255,0,10,255,192,0]},{"a":35824,"t":"byte","b":[255,192,0,15,192,0,3,192]},{"a":35832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35840,"l":"shape_cells_30","c":"Fighter shape cells $30-$3F: sixteen multicolour sprite images of 64 bytes each ($8C00-$8FFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35856,"t":"byte","b":[0,0,0,0,0,128,0,0]},{"a":35864,"t":"byte","b":[252,0,0,255,192,0,255,240]},{"a":35872,"t":"byte","b":[0,255,252,0,127,252,0,131]},{"a":35880,"t":"byte","b":[252,0,0,252,0,0,60,0]},{"a":35888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35904,"t":"byte","b":[0,1,64,0,5,80,0,26]},{"a":35912,"t":"byte","b":[160,0,41,80,10,37,240,0]},{"a":35920,"t":"byte","b":[151,80,0,151,220,10,29,252]},{"a":35928,"t":"byte","b":[0,29,240,0,63,208,0,191]},{"a":35936,"t":"byte","b":[240,2,175,192,10,175,232,42]},{"a":35944,"t":"byte","b":[175,170,42,171,170,42,107,170]},{"a":35952,"t":"byte","b":[170,106,170,170,107,226,169,175]},{"a":35960,"t":"byte","b":[226,169,175,234,169,191,230,0]},{"a":35968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":35992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36008,"t":"byte","b":[0,0,128,0,0,160,3,192]},{"a":36016,"t":"byte","b":[170,191,240,90,191,240,166,191]},{"a":36024,"t":"byte","b":[240,169,188,0,170,0,0,0]},{"a":36032,"t":"byte","b":[170,191,154,170,254,86,171,253]},{"a":36040,"t":"byte","b":[102,171,250,166,42,229,170,10]},{"a":36048,"t":"byte","b":[154,105,10,106,149,2,106,148]},{"a":36056,"t":"byte","b":[0,106,144,0,106,160,0,26]},{"a":36064,"t":"byte","b":[160,0,26,168,0,10,168,0]},{"a":36072,"t":"byte","b":[2,168,0,2,168,0,0,175]},{"a":36080,"t":"byte","b":[0,0,63,0,0,63,0,0]},{"a":36088,"t":"byte","b":[15,0,0,15,0,0,3,0]},{"a":36096,"t":"byte","b":[170,128,0,170,128,0,154,128]},{"a":36104,"t":"byte","b":[0,106,160,0,154,160,0,74]},{"a":36112,"t":"byte","b":[160,0,10,168,0,2,168,0]},{"a":36120,"t":"byte","b":[2,168,0,2,172,0,0,172]},{"a":36128,"t":"byte","b":[0,0,252,0,0,255,192,0]},{"a":36136,"t":"byte","b":[255,240,0,63,240,0,0,0]},{"a":36144,"t":"byte","b":[0,0,0,192,0,0,192,0]},{"a":36152,"t":"byte","b":[0,240,0,0,240,0,0,0]},{"a":36160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36208,"t":"byte","b":[0,0,0,0,0,0,1,64]},{"a":36216,"t":"byte","b":[0,133,80,0,42,160,2,0]},{"a":36224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36232,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36248,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36264,"t":"byte","b":[0,0,0,0,0,0,60,0]},{"a":36272,"t":"byte","b":[0,252,2,3,220,10,15,240]},{"a":36280,"t":"byte","b":[42,127,64,170,191,0,170,0]},{"a":36288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36304,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36320,"t":"byte","b":[0,0,60,0,3,252,0,15]},{"a":36328,"t":"byte","b":[255,0,63,255,0,159,255,0]},{"a":36336,"t":"byte","b":[167,192,0,171,0,0,168,0]},{"a":36344,"t":"byte","b":[0,160,0,0,64,0,0,0]},{"a":36352,"t":"byte","b":[37,80,42,149,240,170,23,82]},{"a":36360,"t":"byte","b":[170,23,222,169,29,254,164,29]},{"a":36368,"t":"byte","b":[250,170,15,218,170,15,250,170]},{"a":36376,"t":"byte","b":[11,234,170,43,255,170,42,191]},{"a":36384,"t":"byte","b":[218,42,165,106,170,170,170,170]},{"a":36392,"t":"byte","b":[170,170,169,170,170,170,106,170]},{"a":36400,"t":"byte","b":[170,149,169,42,64,101,41,0]},{"a":36408,"t":"byte","b":[6,41,0,2,41,0,0,0]},{"a":36416,"t":"byte","b":[172,2,169,144,10,169,64,42]},{"a":36424,"t":"byte","b":[164,0,170,152,2,170,96,10]},{"a":36432,"t":"byte","b":[170,160,106,170,128,106,170,128]},{"a":36440,"t":"byte","b":[154,170,0,154,90,0,153,88]},{"a":36448,"t":"byte","b":[0,149,160,0,154,160,0,150]},{"a":36456,"t":"byte","b":[160,0,89,128,0,106,64,0]},{"a":36464,"t":"byte","b":[170,144,0,170,144,0,170,128]},{"a":36472,"t":"byte","b":[0,170,128,0,170,128,0,0]},{"a":36480,"t":"byte","b":[10,0,0,9,0,0,7,0]},{"a":36488,"t":"byte","b":[0,15,0,0,15,192,0,15]},{"a":36496,"t":"byte","b":[192,0,3,192,0,3,192,0]},{"a":36504,"t":"byte","b":[3,112,0,3,208,0,3,240]},{"a":36512,"t":"byte","b":[0,0,192,0,0,0,0,0]},{"a":36520,"t":"byte","b":[0,0,0,1,85,5,85,85]},{"a":36528,"t":"byte","b":[21,85,85,5,85,85,0,85]},{"a":36536,"t":"byte","b":[0,0,84,3,0,20,3,0]},{"a":36544,"t":"byte","b":[170,64,0,170,64,0,170,64]},{"a":36552,"t":"byte","b":[0,170,64,0,42,160,0,42]},{"a":36560,"t":"byte","b":[144,0,42,144,0,42,144,0]},{"a":36568,"t":"byte","b":[42,144,0,42,144,0,10,144]},{"a":36576,"t":"byte","b":[0,10,144,0,10,144,0,10]},{"a":36584,"t":"byte","b":[144,0,74,144,0,90,149,85]},{"a":36592,"t":"byte","b":[90,165,85,89,213,85,63,212]},{"a":36600,"t":"byte","b":[0,255,208,0,255,192,0,0]},{"a":36608,"t":"byte","b":[0,0,3,0,1,67,0,5]},{"a":36616,"t":"byte","b":[83,0,26,163,2,169,83,8]},{"a":36624,"t":"byte","b":[149,240,2,23,80,8,23,220]},{"a":36632,"t":"byte","b":[0,29,252,0,29,240,0,15]},{"a":36640,"t":"byte","b":[208,0,47,241,0,191,130,2]},{"a":36648,"t":"byte","b":[159,230,2,171,234,10,169,234]},{"a":36656,"t":"byte","b":[10,154,106,10,106,170,10,170]},{"a":36664,"t":"byte","b":[166,10,154,168,10,154,164,0]},{"a":36672,"t":"byte","b":[192,0,0,240,0,0,112,0]},{"a":36680,"t":"byte","b":[0,240,0,0,240,0,0,240]},{"a":36688,"t":"byte","b":[0,0,240,0,0,240,0,0]},{"a":36696,"t":"byte","b":[252,0,0,252,0,0,252,0]},{"a":36704,"t":"byte","b":[0,252,0,0,116,0,0,104]},{"a":36712,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":36720,"t":"byte","b":[160,0,0,128,0,0,0,0]},{"a":36728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36736,"t":"byte","b":[10,154,164,10,166,191,10,166]},{"a":36744,"t":"byte","b":[252,6,159,254,10,127,255,2]},{"a":36752,"t":"byte","b":[127,214,0,170,153,0,170,89]},{"a":36760,"t":"byte","b":[0,170,102,0,170,105,0,42]},{"a":36768,"t":"byte","b":[105,0,26,170,0,37,170,3]},{"a":36776,"t":"byte","b":[233,154,3,234,106,3,234,106]},{"a":36784,"t":"byte","b":[3,218,154,7,245,170,7,245]},{"a":36792,"t":"byte","b":[101,1,253,85,1,125,85,0]},{"a":36800,"t":"byte","b":[0,0,0,0,0,0,192,0]},{"a":36808,"t":"byte","b":[0,192,0,0,170,0,0,170]},{"a":36816,"t":"byte","b":[128,0,170,128,0,170,128,0]},{"a":36824,"t":"byte","b":[170,128,0,166,128,0,22,128]},{"a":36832,"t":"byte","b":[0,90,128,0,106,128,0,154]},{"a":36840,"t":"byte","b":[128,0,154,128,0,154,128,0]},{"a":36848,"t":"byte","b":[154,64,0,165,0,0,127,64]},{"a":36856,"t":"byte","b":[0,127,240,0,127,240,0,0]},{"a":36864,"l":"shape_cells_40","c":"Fighter shape cells $40-$4F: sixteen multicolour sprite images of 64 bytes each ($9000-$93FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":36904,"t":"byte","b":[0,0,0,0,2,0,0,10]},{"a":36912,"t":"byte","b":[0,0,41,0,0,37,0,0]},{"a":36920,"t":"byte","b":[38,0,0,41,0,0,9,0]},{"a":36928,"t":"byte","b":[0,0,0,0,20,0,0,85]},{"a":36936,"t":"byte","b":[0,33,170,0,10,149,0,33]},{"a":36944,"t":"byte","b":[127,0,1,117,0,1,125,192]},{"a":36952,"t":"byte","b":[1,223,192,1,223,0,3,253]},{"a":36960,"t":"byte","b":[0,11,253,0,42,255,0,170]},{"a":36968,"t":"byte","b":[124,0,105,168,0,105,170,171]},{"a":36976,"t":"byte","b":[106,170,171,169,170,169,170,106]},{"a":36984,"t":"byte","b":[170,170,154,170,170,170,160,0]},{"a":36992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37008,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37032,"t":"byte","b":[0,0,0,0,0,255,192,0]},{"a":37040,"t":"byte","b":[255,252,0,255,252,0,143,252]},{"a":37048,"t":"byte","b":[0,64,60,0,0,0,0,0]},{"a":37056,"t":"byte","b":[0,0,10,0,0,2,0,0]},{"a":37064,"t":"byte","b":[1,0,0,2,0,0,2,0]},{"a":37072,"t":"byte","b":[0,2,0,0,2,0,0,10]},{"a":37080,"t":"byte","b":[0,0,10,0,0,10,0,0]},{"a":37088,"t":"byte","b":[10,0,0,26,0,0,42,2]},{"a":37096,"t":"byte","b":[128,106,62,154,170,254,165,170]},{"a":37104,"t":"byte","b":[254,170,170,253,170,170,252,170]},{"a":37112,"t":"byte","b":[169,240,102,165,60,1,85,0]},{"a":37120,"t":"byte","b":[170,168,0,170,160,0,170,160]},{"a":37128,"t":"byte","b":[0,105,176,0,149,106,0,169]},{"a":37136,"t":"byte","b":[170,128,169,170,160,170,106,160]},{"a":37144,"t":"byte","b":[170,106,160,170,169,160,170,102]},{"a":37152,"t":"byte","b":[160,169,166,160,169,138,160,164]},{"a":37160,"t":"byte","b":[10,160,144,42,128,160,42,128]},{"a":37168,"t":"byte","b":[65,90,69,149,102,85,85,95]},{"a":37176,"t":"byte","b":[212,85,95,252,0,31,252,0]},{"a":37184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37216,"t":"byte","b":[0,0,0,5,0,0,21,0]},{"a":37224,"t":"byte","b":[0,106,0,32,165,0,2,87]},{"a":37232,"t":"byte","b":[0,8,93,0,0,95,0,0]},{"a":37240,"t":"byte","b":[119,0,0,119,0,0,63,0]},{"a":37248,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37264,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37272,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37280,"t":"byte","b":[0,0,240,0,64,252,0,128]},{"a":37288,"t":"byte","b":[220,0,64,252,0,192,252,0]},{"a":37296,"t":"byte","b":[64,60,0,112,60,0,240,63]},{"a":37304,"t":"byte","b":[0,192,63,0,64,63,0,0]},{"a":37312,"t":"byte","b":[0,0,63,0,0,191,0,2]},{"a":37320,"t":"byte","b":[191,0,6,159,0,6,159,0]},{"a":37328,"t":"byte","b":[26,167,0,26,171,0,42,170]},{"a":37336,"t":"byte","b":[0,42,154,0,42,154,0,42]},{"a":37344,"t":"byte","b":[154,0,10,166,0,10,166,0]},{"a":37352,"t":"byte","b":[6,153,0,2,170,0,1,169]},{"a":37360,"t":"byte","b":[0,2,107,0,1,171,0,2]},{"a":37368,"t":"byte","b":[89,0,2,165,0,2,149,0]},{"a":37376,"t":"byte","b":[192,63,0,0,127,0,153,159]},{"a":37384,"t":"byte","b":[0,166,166,0,170,170,0,170]},{"a":37392,"t":"byte","b":[164,0,233,144,0,234,64,0]},{"a":37400,"t":"byte","b":[169,0,0,170,0,0,170,0]},{"a":37408,"t":"byte","b":[0,170,0,0,168,0,0,168]},{"a":37416,"t":"byte","b":[0,0,168,0,0,232,0,0]},{"a":37424,"t":"byte","b":[248,0,0,255,0,0,255,240]},{"a":37432,"t":"byte","b":[0,191,240,0,171,240,0,0]},{"a":37440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37472,"t":"byte","b":[0,0,2,1,0,0,133,0]},{"a":37480,"t":"byte","b":[2,21,0,0,165,0,0,26]},{"a":37488,"t":"byte","b":[0,0,21,0,0,21,0,0]},{"a":37496,"t":"byte","b":[151,0,2,159,0,10,157,0]},{"a":37504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37528,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37536,"t":"byte","b":[0,64,0,0,80,0,0,80]},{"a":37544,"t":"byte","b":[0,0,96,0,0,144,0,0]},{"a":37552,"t":"byte","b":[80,0,0,112,0,0,240,0]},{"a":37560,"t":"byte","b":[0,80,0,0,217,0,0,0]},{"a":37568,"t":"byte","b":[0,42,191,0,42,167,0,42]},{"a":37576,"t":"byte","b":[167,0,170,111,0,169,171,0]},{"a":37584,"t":"byte","b":[169,171,0,169,106,0,166,154]},{"a":37592,"t":"byte","b":[0,166,166,0,166,166,2,166]},{"a":37600,"t":"byte","b":[105,2,169,169,2,161,169,2]},{"a":37608,"t":"byte","b":[161,170,3,146,106,3,64,107]},{"a":37616,"t":"byte","b":[15,192,175,63,192,15,255,213]},{"a":37624,"t":"byte","b":[95,252,213,95,53,208,31,0]},{"a":37632,"t":"byte","b":[250,64,0,122,144,0,122,144]},{"a":37640,"t":"byte","b":[0,233,164,0,170,164,0,166]},{"a":37648,"t":"byte","b":[164,0,166,164,0,169,169,0]},{"a":37656,"t":"byte","b":[169,169,128,165,153,168,149,118]},{"a":37664,"t":"byte","b":[170,90,254,170,166,254,170,150]},{"a":37672,"t":"byte","b":[254,170,153,254,169,145,253,166]},{"a":37680,"t":"byte","b":[16,60,90,208,60,6,240,63]},{"a":37688,"t":"byte","b":[1,245,255,213,244,215,193,0]},{"a":37696,"l":"shape_cell_4d","c":"Shape cell $4D ($9340-$937F), one of the 64-byte images described at the start of its block of sixteen. The address is also the assembled value of an operand that the sprite builder rewrites before every use, so nothing actually reads here through it ($3B0B).","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[15115]},{"a":37704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37720,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37728,"t":"byte","b":[0,160,0,0,168,0,0,170]},{"a":37736,"t":"byte","b":[0,0,170,160,0,170,167,0]},{"a":37744,"t":"byte","b":[170,159,252,170,191,252,106,143]},{"a":37752,"t":"byte","b":[252,86,151,240,85,81,208,0]},{"a":37760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37776,"t":"byte","b":[0,5,0,0,21,0,0,90]},{"a":37784,"t":"byte","b":[0,2,165,0,0,151,0,2]},{"a":37792,"t":"byte","b":[93,0,0,95,0,0,119,0]},{"a":37800,"t":"byte","b":[0,119,0,0,63,0,0,63]},{"a":37808,"t":"byte","b":[0,0,191,0,2,191,0,10]},{"a":37816,"t":"byte","b":[159,0,42,175,0,42,174,0]},{"a":37824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":37840,"t":"byte","b":[0,0,64,0,0,128,0,0]},{"a":37848,"t":"byte","b":[64,0,0,192,0,0,64,0]},{"a":37856,"t":"byte","b":[0,112,0,0,240,0,0,192]},{"a":37864,"t":"byte","b":[0,0,64,0,0,192,0,0]},{"a":37872,"t":"byte","b":[168,0,0,170,0,0,170,160]},{"a":37880,"t":"byte","b":[0,170,168,0,154,168,0,0]},{"a":37888,"l":"shape_cells_50","c":"Fighter shape cells $50-$5F: sixteen multicolour sprite images of 64 bytes each ($9400-$97FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,42,174,0,170,170,0,170]},{"a":37896,"t":"byte","b":[106,0,170,106,0,169,169,0]},{"a":37904,"t":"byte","b":[169,170,0,169,169,0,169,85]},{"a":37912,"t":"byte","b":[0,166,170,2,166,170,2,164]},{"a":37920,"t":"byte","b":[90,2,164,166,2,163,169,2]},{"a":37928,"t":"byte","b":[163,105,2,147,106,2,115,170]},{"a":37936,"t":"byte","b":[0,243,234,0,243,218,15,247]},{"a":37944,"t":"byte","b":[240,15,247,253,15,125,253,0]},{"a":37952,"t":"byte","b":[154,170,0,166,171,0,160,159]},{"a":37960,"t":"byte","b":[0,64,15,192,144,159,192,154]},{"a":37968,"t":"byte","b":[171,192,102,171,240,154,171,240]},{"a":37976,"t":"byte","b":[90,171,240,102,171,192,169,154]},{"a":37984,"t":"byte","b":[0,170,106,192,170,105,192,170]},{"a":37992,"t":"byte","b":[27,240,170,63,240,169,63,240]},{"a":38000,"t":"byte","b":[164,0,0,145,85,64,5,85]},{"a":38008,"t":"byte","b":[80,84,5,80,0,0,0,0]},{"a":38016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38056,"t":"byte","b":[0,0,0,0,0,240,0,0]},{"a":38064,"t":"byte","b":[252,0,0,252,0,0,255,192]},{"a":38072,"t":"byte","b":[0,255,248,0,63,246,0,0]},{"a":38080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38120,"t":"byte","b":[0,0,0,0,0,15,0,0]},{"a":38128,"t":"byte","b":[63,0,0,255,0,0,232,160]},{"a":38136,"t":"byte","b":[0,169,168,0,166,168,0,0]},{"a":38144,"t":"byte","b":[0,2,160,0,10,170,0,42]},{"a":38152,"t":"byte","b":[170,0,42,170,0,42,170,128]},{"a":38160,"t":"byte","b":[61,170,168,63,169,170,127,169]},{"a":38168,"t":"byte","b":[170,126,150,170,254,170,170,254]},{"a":38176,"t":"byte","b":[170,171,250,170,107,246,170,107]},{"a":38184,"t":"byte","b":[246,170,27,229,170,38,170,170]},{"a":38192,"t":"byte","b":[22,169,169,25,169,102,26,169]},{"a":38200,"t":"byte","b":[106,26,170,80,6,169,16,0]},{"a":38208,"t":"byte","b":[0,128,0,0,128,0,128,40]},{"a":38216,"t":"byte","b":[0,160,22,0,168,86,64,106]},{"a":38224,"t":"byte","b":[245,128,171,213,144,171,253,80]},{"a":38232,"t":"byte","b":[175,247,80,175,119,80,191,127]},{"a":38240,"t":"byte","b":[144,127,247,128,190,245,0,170]},{"a":38248,"t":"byte","b":[144,0,169,160,0,166,160,0]},{"a":38256,"t":"byte","b":[170,168,0,170,168,0,10,168]},{"a":38264,"t":"byte","b":[0,6,170,0,2,170,128,0]},{"a":38272,"t":"byte","b":[6,169,16,6,169,16,6,169]},{"a":38280,"t":"byte","b":[16,10,169,16,10,168,0,10]},{"a":38288,"t":"byte","b":[168,0,10,168,0,10,104,0]},{"a":38296,"t":"byte","b":[1,168,0,1,168,0,1,168]},{"a":38304,"t":"byte","b":[0,2,168,0,2,168,0,2]},{"a":38312,"t":"byte","b":[168,0,2,168,0,86,168,5]},{"a":38320,"t":"byte","b":[86,165,85,85,181,85,21,253]},{"a":38328,"t":"byte","b":[85,5,255,208,1,255,192,0]},{"a":38336,"t":"byte","b":[1,170,128,0,171,192,0,111]},{"a":38344,"t":"byte","b":[240,0,19,240,0,0,252,0]},{"a":38352,"t":"byte","b":[0,63,0,0,63,0,0,63]},{"a":38360,"t":"byte","b":[0,0,15,0,0,12,0,0]},{"a":38368,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38376,"t":"byte","b":[0,0,85,80,0,85,84,0]},{"a":38384,"t":"byte","b":[85,85,0,85,85,84,80,5]},{"a":38392,"t":"byte","b":[85,0,0,5,0,0,0,0]},{"a":38400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38416,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38424,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38432,"t":"byte","b":[0,0,0,80,0,1,84,0]},{"a":38440,"t":"byte","b":[5,168,0,170,84,2,37,124]},{"a":38448,"t":"byte","b":[0,5,212,0,5,247,0,7]},{"a":38456,"t":"byte","b":[127,0,7,124,0,3,244,0]},{"a":38464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38472,"t":"byte","b":[0,0,0,0,0,0,0,128]},{"a":38480,"t":"byte","b":[0,0,128,63,0,128,15,0]},{"a":38488,"t":"byte","b":[144,255,0,167,255,0,175,255]},{"a":38496,"t":"byte","b":[0,191,240,0,191,192,0,111]},{"a":38504,"t":"byte","b":[0,0,148,0,0,32,0,0]},{"a":38512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38528,"t":"byte","b":[0,3,252,0,47,240,0,171]},{"a":38536,"t":"byte","b":[232,2,171,234,2,169,234,10]},{"a":38544,"t":"byte","b":[154,234,42,154,170,42,106,170]},{"a":38552,"t":"byte","b":[42,106,170,42,154,170,42,106]},{"a":38560,"t":"byte","b":[170,10,170,169,6,174,168,10]},{"a":38568,"t":"byte","b":[175,164,41,191,224,42,191,240]},{"a":38576,"t":"byte","b":[42,90,252,41,170,188,42,170]},{"a":38584,"t":"byte","b":[188,42,170,188,26,170,188,0]},{"a":38592,"t":"byte","b":[10,154,128,6,106,128,9,170]},{"a":38600,"t":"byte","b":[128,9,170,128,6,170,0,26]},{"a":38608,"t":"byte","b":[170,0,42,169,0,249,168,0]},{"a":38616,"t":"byte","b":[254,100,0,255,152,0,63,104]},{"a":38624,"t":"byte","b":[0,15,168,0,9,160,0,10]},{"a":38632,"t":"byte","b":[160,0,10,160,0,10,165,0]},{"a":38640,"t":"byte","b":[7,149,85,95,85,85,127,85]},{"a":38648,"t":"byte","b":[80,63,213,0,63,208,0,0]},{"a":38656,"t":"byte","b":[3,217,128,0,170,96,0,170]},{"a":38664,"t":"byte","b":[152,0,42,164,0,10,166,0]},{"a":38672,"t":"byte","b":[2,170,0,0,170,0,0,106]},{"a":38680,"t":"byte","b":[0,0,42,0,0,26,0,0]},{"a":38688,"t":"byte","b":[6,0,0,9,0,0,2,0]},{"a":38696,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38720,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38744,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38752,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38760,"t":"byte","b":[0,0,0,0,2,0,0,10]},{"a":38768,"t":"byte","b":[0,0,170,0,2,170,0,63]},{"a":38776,"t":"byte","b":[169,0,255,166,3,255,0,0]},{"a":38784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38792,"t":"byte","b":[0,0,0,0,0,5,64,0]},{"a":38800,"t":"byte","b":[42,144,0,21,100,0,63,88]},{"a":38808,"t":"byte","b":[0,53,218,0,29,212,0,63]},{"a":38816,"t":"byte","b":[212,0,63,116,10,183,116,170]},{"a":38824,"t":"byte","b":[191,240,170,175,224,170,175,224]},{"a":38832,"t":"byte","b":[170,175,160,170,191,168,106,190]},{"a":38840,"t":"byte","b":[168,42,246,168,170,218,168,0]},{"a":38848,"t":"byte","b":[3,240,36,3,192,169,0,2]},{"a":38856,"t":"byte","b":[169,0,10,170,0,42,170,0]},{"a":38864,"t":"byte","b":[42,170,0,170,170,0,170,154]},{"a":38872,"t":"byte","b":[2,170,106,2,170,90,9,169]},{"a":38880,"t":"byte","b":[154,11,168,170,15,160,170,63]},{"a":38888,"t":"byte","b":[96,42,255,0,6,255,0,0]},{"a":38896,"t":"byte","b":[252,0,0,240,5,84,0,85]},{"a":38904,"t":"byte","b":[85,85,80,21,85,0,0,0]},{"a":38912,"l":"shape_cells_60","c":"Fighter shape cells $60-$6F: sixteen multicolour sprite images of 64 bytes each ($9800-$9BFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[170,170,168,170,170,168,170,170]},{"a":38920,"t":"byte","b":[168,106,169,104,105,105,164,166]},{"a":38928,"t":"byte","b":[154,60,154,166,60,154,152,60]},{"a":38936,"t":"byte","b":[106,152,252,170,168,252,106,104]},{"a":38944,"t":"byte","b":[252,106,96,252,106,96,252,170]},{"a":38952,"t":"byte","b":[128,240,186,131,240,126,67,240]},{"a":38960,"t":"byte","b":[60,3,240,60,7,244,127,87]},{"a":38968,"t":"byte","b":[255,127,95,255,127,13,125,0]},{"a":38976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":38992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39008,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39016,"t":"byte","b":[0,0,0,0,2,0,0,10]},{"a":39024,"t":"byte","b":[0,0,26,0,0,154,0,2]},{"a":39032,"t":"byte","b":[154,0,2,166,0,10,166,0]},{"a":39040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39056,"t":"byte","b":[0,128,0,8,128,0,2,0]},{"a":39064,"t":"byte","b":[0,1,144,0,5,100,0,5]},{"a":39072,"t":"byte","b":[84,0,21,116,0,29,245,42]},{"a":39080,"t":"byte","b":[173,221,170,175,221,170,171,253]},{"a":39088,"t":"byte","b":[170,155,116,170,167,64,170,168]},{"a":39096,"t":"byte","b":[0,166,168,0,166,168,0,0]},{"a":39104,"t":"byte","b":[0,10,165,0,10,169,0,10]},{"a":39112,"t":"byte","b":[169,0,10,170,0,10,170,0]},{"a":39120,"t":"byte","b":[10,170,0,10,169,0,2,169]},{"a":39128,"t":"byte","b":[0,2,169,0,1,170,0,0]},{"a":39136,"t":"byte","b":[106,0,10,106,0,250,106,3]},{"a":39144,"t":"byte","b":[250,106,3,250,154,3,249,170]},{"a":39152,"t":"byte","b":[3,201,170,3,198,170,3,192]},{"a":39160,"t":"byte","b":[170,3,192,170,0,0,170,0]},{"a":39168,"t":"byte","b":[166,168,0,169,168,0,169,172]},{"a":39176,"t":"byte","b":[0,129,172,0,128,124,0,160]},{"a":39184,"t":"byte","b":[60,0,168,63,0,168,63,0]},{"a":39192,"t":"byte","b":[170,15,192,106,15,192,106,3]},{"a":39200,"t":"byte","b":[192,106,3,192,168,0,192,152]},{"a":39208,"t":"byte","b":[0,0,144,0,0,64,0,0]},{"a":39216,"t":"byte","b":[64,0,0,0,0,0,0,0]},{"a":39224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39232,"t":"byte","b":[0,0,0,0,0,154,0,2]},{"a":39240,"t":"byte","b":[154,0,10,154,0,10,166,0]},{"a":39248,"t":"byte","b":[10,166,0,10,166,0,42,102]},{"a":39256,"t":"byte","b":[0,42,150,0,42,165,0,42]},{"a":39264,"t":"byte","b":[169,0,42,169,0,42,170,0]},{"a":39272,"t":"byte","b":[10,170,0,10,170,0,2,170]},{"a":39280,"t":"byte","b":[0,0,171,0,0,11,0,254]},{"a":39288,"t":"byte","b":[167,3,254,175,15,254,175,0]},{"a":39296,"t":"byte","b":[63,254,175,63,254,175,63,193]},{"a":39304,"t":"byte","b":[175,0,0,47,0,0,15,0]},{"a":39312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39320,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39352,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39360,"t":"byte","b":[0,0,0,170,0,0,170,128]},{"a":39368,"t":"byte","b":[0,170,160,0,170,160,32,170]},{"a":39376,"t":"byte","b":[168,128,170,168,32,166,169,96]},{"a":39384,"t":"byte","b":[169,169,80,166,175,84,166,175]},{"a":39392,"t":"byte","b":[101,154,173,101,106,189,101,106]},{"a":39400,"t":"byte","b":[191,213,154,255,245,231,247,117]},{"a":39408,"t":"byte","b":[233,183,116,233,131,0,234,0]},{"a":39416,"t":"byte","b":[0,234,128,0,154,128,0,0]},{"a":39424,"t":"byte","b":[170,128,0,170,128,0,170,128]},{"a":39432,"t":"byte","b":[0,106,0,0,0,0,0,0]},{"a":39440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39520,"t":"byte","b":[0,0,0,2,0,0,250,0]},{"a":39528,"t":"byte","b":[0,250,0,0,250,0,0,254]},{"a":39536,"t":"byte","b":[0,0,190,0,0,190,0,0]},{"a":39544,"t":"byte","b":[191,0,0,175,0,48,47,0]},{"a":39552,"t":"byte","b":[0,0,0,0,12,0,0,12]},{"a":39560,"t":"byte","b":[0,0,60,0,0,60,0,0]},{"a":39568,"t":"byte","b":[60,0,0,60,0,2,252,0]},{"a":39576,"t":"byte","b":[10,252,0,42,252,0,170,240]},{"a":39584,"t":"byte","b":[0,170,64,0,170,128,0,170]},{"a":39592,"t":"byte","b":[128,0,170,0,0,168,0,0]},{"a":39600,"t":"byte","b":[144,0,0,168,0,0,170,128]},{"a":39608,"t":"byte","b":[0,170,160,0,170,168,0,0]},{"a":39616,"t":"byte","b":[7,116,15,23,119,15,23,255]},{"a":39624,"t":"byte","b":[15,23,255,47,23,223,111,25]},{"a":39632,"t":"byte","b":[95,175,25,94,106,25,249,170]},{"a":39640,"t":"byte","b":[9,122,169,6,90,169,2,74]},{"a":39648,"t":"byte","b":[169,2,2,166,2,2,170,8]},{"a":39656,"t":"byte","b":[128,170,8,0,42,0,0,2]},{"a":39664,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39672,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39680,"t":"byte","b":[170,170,0,234,170,0,234,170]},{"a":39688,"t":"byte","b":[128,218,170,128,230,170,128,166]},{"a":39696,"t":"byte","b":[106,128,89,154,128,89,170,128]},{"a":39704,"t":"byte","b":[169,170,128,170,106,128,170,106]},{"a":39712,"t":"byte","b":[128,170,154,128,170,166,0,170]},{"a":39720,"t":"byte","b":[170,0,170,168,0,170,128,0]},{"a":39728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39744,"t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":39752,"t":"byte","b":[64,0,5,80,0,26,160,0]},{"a":39760,"t":"byte","b":[41,80,0,149,240,2,23,80]},{"a":39768,"t":"byte","b":[0,23,220,0,29,252,0,13]},{"a":39776,"t":"byte","b":[240,0,15,208,0,11,240,0]},{"a":39784,"t":"byte","b":[41,192,0,38,128,0,170,128]},{"a":39792,"t":"byte","b":[0,170,160,0,170,160,0,170]},{"a":39800,"t":"byte","b":[175,0,170,171,0,166,171,0]},{"a":39808,"t":"byte","b":[0,0,170,0,2,170,0,1]},{"a":39816,"t":"byte","b":[170,0,1,168,0,2,104,0]},{"a":39824,"t":"byte","b":[0,228,0,0,240,0,0,240]},{"a":39832,"t":"byte","b":[0,0,252,0,0,60,0,0]},{"a":39840,"t":"byte","b":[60,0,0,60,0,0,60,0]},{"a":39848,"t":"byte","b":[0,15,0,0,15,0,0,0]},{"a":39856,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39872,"t":"byte","b":[0,165,170,0,153,175,0,169]},{"a":39880,"t":"byte","b":[191,0,169,191,0,170,107,0]},{"a":39888,"t":"byte","b":[42,154,0,42,154,0,42,154]},{"a":39896,"t":"byte","b":[0,42,90,0,42,102,0,10]},{"a":39904,"t":"byte","b":[102,0,9,170,0,10,170,0]},{"a":39912,"t":"byte","b":[2,170,0,0,170,0,0,0]},{"a":39920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39928,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":39936,"l":"shape_cells_70","c":"Fighter shape cells $70-$7F: sixteen multicolour sprite images of 64 bytes each ($9C00-$9FFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[154,168,0,106,170,0,254,170]},{"a":39944,"t":"byte","b":[0,255,234,0,255,234,0,191]},{"a":39952,"t":"byte","b":[234,192,169,170,128,170,106,176]},{"a":39960,"t":"byte","b":[164,106,188,160,170,188,160,42]},{"a":39968,"t":"byte","b":[128,144,26,128,128,26,128,64]},{"a":39976,"t":"byte","b":[6,128,0,15,192,0,15,252]},{"a":39984,"t":"byte","b":[0,15,255,0,15,255,0,3]},{"a":39992,"t":"byte","b":[252,0,0,0,0,0,0,0]},{"a":40000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40008,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40040,"t":"byte","b":[0,80,0,1,84,2,5,168]},{"a":40048,"t":"byte","b":[0,138,84,2,5,124,0,5]},{"a":40056,"t":"byte","b":[212,0,5,247,0,7,127,0]},{"a":40064,"t":"byte","b":[0,11,124,0,171,244,2,171]},{"a":40072,"t":"byte","b":[252,2,171,240,10,171,224,10]},{"a":40080,"t":"byte","b":[170,232,42,170,232,42,170,168]},{"a":40088,"t":"byte","b":[170,154,168,170,154,170,170,106]},{"a":40096,"t":"byte","b":[166,170,106,154,169,170,154,169]},{"a":40104,"t":"byte","b":[170,154,170,170,154,45,170,159]},{"a":40112,"t":"byte","b":[15,90,95,15,213,107,15,250]},{"a":40120,"t":"byte","b":[101,6,254,154,6,190,154,0]},{"a":40128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40176,"t":"byte","b":[192,0,0,240,0,0,255,0]},{"a":40184,"t":"byte","b":[0,63,0,0,15,0,0,0]},{"a":40192,"t":"byte","b":[10,190,170,10,170,106,2,170]},{"a":40200,"t":"byte","b":[106,2,170,154,0,170,154,0]},{"a":40208,"t":"byte","b":[42,166,0,26,166,0,6,166]},{"a":40216,"t":"byte","b":[0,5,165,0,37,165,0,26]},{"a":40224,"t":"byte","b":[166,0,38,162,0,106,146,2]},{"a":40232,"t":"byte","b":[170,134,10,170,70,6,170,26]},{"a":40240,"t":"byte","b":[25,169,90,95,105,103,95,245]},{"a":40248,"t":"byte","b":[95,31,253,95,7,253,31,0]},{"a":40256,"t":"byte","b":[128,0,0,128,0,0,160,0]},{"a":40264,"t":"byte","b":[0,160,0,0,160,0,0,168]},{"a":40272,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":40280,"t":"byte","b":[168,0,0,168,0,0,168,0]},{"a":40288,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":40296,"t":"byte","b":[0,0,160,0,0,160,0,0]},{"a":40304,"t":"byte","b":[144,0,0,212,0,0,244,0]},{"a":40312,"t":"byte","b":[0,252,0,0,252,0,0,0]},{"a":40320,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40352,"t":"byte","b":[80,0,1,84,0,2,170,0]},{"a":40360,"t":"byte","b":[1,86,0,3,245,0,1,125]},{"a":40368,"t":"byte","b":[0,1,221,0,3,247,0,3]},{"a":40376,"t":"byte","b":[119,0,3,127,0,3,247,0]},{"a":40384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40416,"t":"byte","b":[0,0,0,0,32,0,0,128]},{"a":40424,"t":"byte","b":[0,0,32,0,0,0,0,0]},{"a":40432,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40448,"t":"byte","b":[0,10,222,0,42,254,0,42]},{"a":40456,"t":"byte","b":[250,0,42,250,0,170,234,2]},{"a":40464,"t":"byte","b":[170,169,1,170,169,251,102,170]},{"a":40472,"t":"byte","b":[255,230,170,255,230,170,255,138]},{"a":40480,"t":"byte","b":[170,61,138,171,2,134,191,0]},{"a":40488,"t":"byte","b":[1,191,0,1,127,0,1,85]},{"a":40496,"t":"byte","b":[0,2,166,0,2,154,0,10]},{"a":40504,"t":"byte","b":[86,0,10,102,0,10,105,0]},{"a":40512,"t":"byte","b":[160,0,0,168,0,0,168,0]},{"a":40520,"t":"byte","b":[0,168,0,0,170,0,0,170]},{"a":40528,"t":"byte","b":[0,0,170,0,0,106,0,0]},{"a":40536,"t":"byte","b":[106,0,0,106,0,0,218,0]},{"a":40544,"t":"byte","b":[0,254,0,0,250,0,0,232]},{"a":40552,"t":"byte","b":[0,0,80,0,0,160,0,0]},{"a":40560,"t":"byte","b":[168,0,0,168,0,0,168,0]},{"a":40568,"t":"byte","b":[0,168,0,0,170,0,0,0]},{"a":40576,"t":"byte","b":[0,10,169,0,10,169,0,10]},{"a":40584,"t":"byte","b":[168,0,10,160,0,10,160,0]},{"a":40592,"t":"byte","b":[10,144,0,10,144,0,10,144]},{"a":40600,"t":"byte","b":[0,10,164,0,10,164,0,2]},{"a":40608,"t":"byte","b":[164,0,2,164,0,2,164,0]},{"a":40616,"t":"byte","b":[2,168,0,2,168,1,86,169]},{"a":40624,"t":"byte","b":[85,85,169,5,85,109,0,87]},{"a":40632,"t":"byte","b":[253,0,31,253,0,15,252,0]},{"a":40640,"t":"byte","b":[170,0,0,170,0,0,170,0]},{"a":40648,"t":"byte","b":[0,170,128,0,42,128,0,42]},{"a":40656,"t":"byte","b":[160,0,41,160,0,6,160,0]},{"a":40664,"t":"byte","b":[6,168,0,6,168,0,1,168]},{"a":40672,"t":"byte","b":[0,1,168,0,0,104,0,0]},{"a":40680,"t":"byte","b":[104,0,0,223,0,0,255,0]},{"a":40688,"t":"byte","b":[80,63,0,84,63,0,85,79]},{"a":40696,"t":"byte","b":[0,1,80,0,0,5,0,0]},{"a":40704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40720,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40744,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40752,"t":"byte","b":[240,0,0,240,0,0,252,0]},{"a":40760,"t":"byte","b":[0,60,0,0,60,0,0,0]},{"a":40768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":40776,"t":"byte","b":[0,0,0,0,0,42,0,0]},{"a":40784,"t":"byte","b":[170,160,2,154,168,2,166,170]},{"a":40792,"t":"byte","b":[9,169,170,15,89,170,63,246]},{"a":40800,"t":"byte","b":[170,63,246,170,15,217,170,63]},{"a":40808,"t":"byte","b":[98,106,10,128,106,0,0,150]},{"a":40816,"t":"byte","b":[0,0,25,0,0,42,0,0]},{"a":40824,"t":"byte","b":[42,0,0,42,0,0,26,0]},{"a":40832,"t":"byte","b":[58,128,0,10,160,0,6,168]},{"a":40840,"t":"byte","b":[0,6,168,5,1,154,22,1]},{"a":40848,"t":"byte","b":[106,86,42,170,85,106,170,149]},{"a":40856,"t":"byte","b":[106,170,149,106,170,165,106,170]},{"a":40864,"t":"byte","b":[165,154,170,165,154,170,168,154]},{"a":40872,"t":"byte","b":[170,168,166,170,104,166,165,168]},{"a":40880,"t":"byte","b":[166,146,168,168,1,168,160,6]},{"a":40888,"t":"byte","b":[168,128,10,160,128,10,160,0]},{"a":40896,"t":"byte","b":[0,0,26,0,0,26,0,0]},{"a":40904,"t":"byte","b":[106,0,0,170,0,0,170,0]},{"a":40912,"t":"byte","b":[0,170,0,0,170,0,0,170]},{"a":40920,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":40928,"t":"byte","b":[104,0,0,104,0,0,104,0]},{"a":40936,"t":"byte","b":[0,104,0,0,104,0,0,104]},{"a":40944,"t":"byte","b":[1,85,105,5,85,233,21,23]},{"a":40952,"t":"byte","b":[245,0,7,253,0,3,252,0]},{"a":40960,"l":"shape_cells_80","c":"Fighter shape cells $80-$8F: sixteen multicolour sprite images of 64 bytes each ($A000-$A3FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[128,11,128,128,15,64,128,15]},{"a":40968,"t":"byte","b":[128,0,15,192,0,15,192,0]},{"a":40976,"t":"byte","b":[3,192,0,3,240,0,0,240]},{"a":40984,"t":"byte","b":[0,0,240,0,0,192,0,0]},{"a":40992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41000,"t":"byte","b":[0,0,0,0,0,0,85,0]},{"a":41008,"t":"byte","b":[85,85,85,85,85,85,84,0]},{"a":41016,"t":"byte","b":[80,0,0,0,0,0,0,0]},{"a":41024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41032,"t":"byte","b":[0,64,0,0,80,0,0,144]},{"a":41040,"t":"byte","b":[0,0,144,0,0,160,0,0]},{"a":41048,"t":"byte","b":[96,0,0,152,0,0,136,0]},{"a":41056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41120,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41128,"t":"byte","b":[0,0,0,0,0,0,0,3]},{"a":41136,"t":"byte","b":[0,0,15,0,0,63,0,0]},{"a":41144,"t":"byte","b":[63,0,0,252,0,0,240,0]},{"a":41152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41192,"t":"byte","b":[0,0,0,0,0,240,0,0]},{"a":41200,"t":"byte","b":[240,0,0,240,0,0,0,0]},{"a":41208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41216,"t":"byte","b":[0,2,160,0,2,168,0,6]},{"a":41224,"t":"byte","b":[170,0,6,170,0,1,169,0]},{"a":41232,"t":"byte","b":[10,102,0,41,106,0,38,170]},{"a":41240,"t":"byte","b":[0,38,169,0,154,165,0,154]},{"a":41248,"t":"byte","b":[166,0,154,166,2,154,166,2]},{"a":41256,"t":"byte","b":[154,165,2,154,169,2,154,170]},{"a":41264,"t":"byte","b":[2,166,170,2,166,106,2,166]},{"a":41272,"t":"byte","b":[154,2,169,90,2,169,26,0]},{"a":41280,"t":"byte","b":[0,0,0,15,240,0,106,252]},{"a":41288,"t":"byte","b":[0,170,252,0,154,252,0,168]},{"a":41296,"t":"byte","b":[240,0,160,0,0,80,0,0]},{"a":41304,"t":"byte","b":[164,0,0,149,0,0,85,0]},{"a":41312,"t":"byte","b":[0,85,0,0,85,0,0,149]},{"a":41320,"t":"byte","b":[0,0,148,0,0,80,0,0]},{"a":41328,"t":"byte","b":[160,0,0,160,0,0,128,0]},{"a":41336,"t":"byte","b":[0,128,0,0,128,0,0,0]},{"a":41344,"t":"byte","b":[2,164,10,2,164,10,10,164]},{"a":41352,"t":"byte","b":[2,10,164,2,10,144,0,9]},{"a":41360,"t":"byte","b":[144,0,6,144,0,9,144,0]},{"a":41368,"t":"byte","b":[42,80,0,42,64,0,42,64]},{"a":41376,"t":"byte","b":[0,42,64,0,42,64,0,42]},{"a":41384,"t":"byte","b":[64,0,42,64,84,42,65,80]},{"a":41392,"t":"byte","b":[26,69,85,53,149,85,252,21]},{"a":41400,"t":"byte","b":[85,255,85,64,255,80,0,0]},{"a":41408,"t":"byte","b":[160,0,0,160,0,0,168,0]},{"a":41416,"t":"byte","b":[0,170,0,0,154,0,0,175]},{"a":41424,"t":"byte","b":[0,0,63,0,0,63,192,0]},{"a":41432,"t":"byte","b":[15,252,0,3,252,0,3,252]},{"a":41440,"t":"byte","b":[0,0,252,0,0,0,0,0]},{"a":41448,"t":"byte","b":[0,0,0,0,0,85,0,0]},{"a":41456,"t":"byte","b":[80,0,0,85,0,0,85,84]},{"a":41464,"t":"byte","b":[0,0,84,0,0,0,0,0]},{"a":41472,"t":"byte","b":[0,0,255,0,2,255,0,10]},{"a":41480,"t":"byte","b":[254,0,10,190,0,42,190,0]},{"a":41488,"t":"byte","b":[42,175,0,42,175,0,41,170]},{"a":41496,"t":"byte","b":[0,42,107,0,42,111,0,42]},{"a":41504,"t":"byte","b":[191,0,42,191,0,10,190,0]},{"a":41512,"t":"byte","b":[10,190,0,1,186,0,2,106]},{"a":41520,"t":"byte","b":[0,1,170,0,1,90,0,2]},{"a":41528,"t":"byte","b":[85,0,2,165,0,2,149,0]},{"a":41536,"t":"byte","b":[0,0,0,0,0,0,160,0]},{"a":41544,"t":"byte","b":[0,160,0,0,168,0,0,168]},{"a":41552,"t":"byte","b":[0,0,190,0,0,254,0,0]},{"a":41560,"t":"byte","b":[254,128,0,254,128,0,230,128]},{"a":41568,"t":"byte","b":[0,170,160,0,169,160,0,169]},{"a":41576,"t":"byte","b":[168,0,169,168,0,168,168,0]},{"a":41584,"t":"byte","b":[164,172,0,148,124,0,88,255]},{"a":41592,"t":"byte","b":[0,168,63,0,168,63,0,0]},{"a":41600,"t":"byte","b":[106,63,0,106,143,192,154,143]},{"a":41608,"t":"byte","b":[192,154,175,192,154,163,192,170]},{"a":41616,"t":"byte","b":[163,192,106,171,192,26,168,0]},{"a":41624,"t":"byte","b":[10,168,0,2,168,0,2,168]},{"a":41632,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":41640,"t":"byte","b":[170,0,80,42,0,84,42,128]},{"a":41648,"t":"byte","b":[85,42,176,85,90,255,85,91]},{"a":41656,"t":"byte","b":[255,1,87,255,0,7,192,0]},{"a":41664,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41672,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41688,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41696,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41704,"t":"byte","b":[0,0,0,0,0,0,0,5]},{"a":41712,"t":"byte","b":[0,0,26,0,0,37,0,0]},{"a":41720,"t":"byte","b":[31,0,0,53,0,0,29,0]},{"a":41728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41744,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41752,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":41776,"t":"byte","b":[64,0,0,144,0,0,96,0]},{"a":41784,"t":"byte","b":[0,216,0,0,210,0,0,0]},{"a":41792,"t":"byte","b":[0,0,63,0,0,55,0,0]},{"a":41800,"t":"byte","b":[63,0,0,14,0,3,246,0]},{"a":41808,"t":"byte","b":[3,246,0,3,254,0,0,255]},{"a":41816,"t":"byte","b":[0,0,127,0,1,103,0,42]},{"a":41824,"t":"byte","b":[170,0,170,170,0,166,170,2]},{"a":41832,"t":"byte","b":[169,170,2,169,170,2,170,106]},{"a":41840,"t":"byte","b":[1,105,154,3,217,6,15,252]},{"a":41848,"t":"byte","b":[9,15,252,1,3,244,1,0]},{"a":41856,"t":"byte","b":[208,0,0,64,0,0,64,0]},{"a":41864,"t":"byte","b":[0,160,0,0,160,0,0,160]},{"a":41872,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":41880,"t":"byte","b":[248,0,0,250,0,0,250,0]},{"a":41888,"t":"byte","b":[0,166,0,0,154,0,0,166]},{"a":41896,"t":"byte","b":[0,0,169,0,0,169,0,0]},{"a":41904,"t":"byte","b":[170,0,0,170,0,0,166,0]},{"a":41912,"t":"byte","b":[0,90,0,0,170,0,0,0]},{"a":41920,"t":"byte","b":[15,192,1,0,0,2,0,0]},{"a":41928,"t":"byte","b":[2,0,0,2,0,0,2,0]},{"a":41936,"t":"byte","b":[0,10,0,0,10,0,0,10]},{"a":41944,"t":"byte","b":[0,0,10,0,0,10,0,0]},{"a":41952,"t":"byte","b":[10,0,0,10,0,0,10,0]},{"a":41960,"t":"byte","b":[0,10,0,0,10,0,5,74]},{"a":41968,"t":"byte","b":[0,85,86,1,85,87,0,1]},{"a":41976,"t":"byte","b":[95,0,0,255,0,0,255,0]},{"a":41984,"l":"shape_cells_90","c":"Fighter shape cells $90-$9F: sixteen multicolour sprite images of 64 bytes each ($A400-$A7FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[168,0,0,168,0,0,168,0]},{"a":41992,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":42000,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":42008,"t":"byte","b":[160,0,0,160,0,0,160,0]},{"a":42016,"t":"byte","b":[0,160,0,0,160,0,0,160]},{"a":42024,"t":"byte","b":[0,0,160,0,0,160,0,0]},{"a":42032,"t":"byte","b":[160,0,0,213,0,0,213,0]},{"a":42040,"t":"byte","b":[0,244,0,0,240,0,0,0]},{"a":42048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42096,"t":"byte","b":[0,0,0,0,0,0,0,80]},{"a":42104,"t":"byte","b":[0,1,84,0,133,168,0,0]},{"a":42112,"t":"byte","b":[10,84,0,5,124,0,133,212]},{"a":42120,"t":"byte","b":[2,5,247,42,7,127,170,7]},{"a":42128,"t":"byte","b":[126,166,15,246,170,15,254,170]},{"a":42136,"t":"byte","b":[15,250,170,11,250,170,11,255]},{"a":42144,"t":"byte","b":[170,42,191,218,42,165,106,42]},{"a":42152,"t":"byte","b":[170,170,42,170,169,42,106,166]},{"a":42160,"t":"byte","b":[42,154,170,42,96,101,42,160]},{"a":42168,"t":"byte","b":[6,10,144,2,10,164,2,0]},{"a":42176,"t":"byte","b":[0,0,0,0,0,0,175,252]},{"a":42184,"t":"byte","b":[0,175,255,0,171,255,160,164]},{"a":42192,"t":"byte","b":[63,164,80,170,170,74,170,170]},{"a":42200,"t":"byte","b":[106,170,170,154,170,166,154,170]},{"a":42208,"t":"byte","b":[154,154,169,107,149,164,63,150]},{"a":42216,"t":"byte","b":[96,3,150,80,0,89,128,0]},{"a":42224,"t":"byte","b":[105,128,0,169,128,0,169,128]},{"a":42232,"t":"byte","b":[0,170,128,0,170,128,0,0]},{"a":42240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42248,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42264,"t":"byte","b":[0,0,0,240,0,0,240,0]},{"a":42272,"t":"byte","b":[0,240,0,0,192,0,0,240]},{"a":42280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42304,"t":"byte","b":[10,168,0,1,152,0,0,191]},{"a":42312,"t":"byte","b":[48,0,127,240,0,63,192,0]},{"a":42320,"t":"byte","b":[15,240,0,0,240,0,0,240]},{"a":42328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42344,"t":"byte","b":[0,0,0,0,0,0,21,85]},{"a":42352,"t":"byte","b":[5,85,85,1,85,85,0,5]},{"a":42360,"t":"byte","b":[85,0,0,80,0,0,0,0]},{"a":42368,"t":"byte","b":[170,128,0,170,64,0,170,64]},{"a":42376,"t":"byte","b":[0,170,64,0,170,96,0,170]},{"a":42384,"t":"byte","b":[144,0,170,96,0,42,160,0]},{"a":42392,"t":"byte","b":[42,144,0,42,148,0,10,164]},{"a":42400,"t":"byte","b":[0,10,164,0,10,168,0,10]},{"a":42408,"t":"byte","b":[168,0,10,168,0,90,164,5]},{"a":42416,"t":"byte","b":[90,165,85,85,245,85,95,245]},{"a":42424,"t":"byte","b":[84,255,244,0,255,240,0,0]},{"a":42432,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42472,"t":"byte","b":[21,0,0,105,64,1,170,128]},{"a":42480,"t":"byte","b":[34,85,64,9,127,192,33,117]},{"a":42488,"t":"byte","b":[192,1,247,64,1,127,202,0]},{"a":42496,"t":"byte","b":[1,125,234,1,253,234,0,255]},{"a":42504,"t":"byte","b":[234,0,247,106,2,253,234,10]},{"a":42512,"t":"byte","b":[255,250,10,191,106,42,170,170]},{"a":42520,"t":"byte","b":[42,170,170,42,170,170,42,106]},{"a":42528,"t":"byte","b":[170,42,154,170,42,70,170,41]},{"a":42536,"t":"byte","b":[128,170,10,160,2,10,144,60]},{"a":42544,"t":"byte","b":[2,191,252,2,191,252,0,191]},{"a":42552,"t":"byte","b":[252,0,3,240,0,0,0,0]},{"a":42560,"t":"byte","b":[170,128,252,106,155,255,154,191]},{"a":42568,"t":"byte","b":[255,170,191,15,169,0,0,170]},{"a":42576,"t":"byte","b":[106,0,170,106,168,170,106,170]},{"a":42584,"t":"byte","b":[170,106,166,169,166,170,169,154]},{"a":42592,"t":"byte","b":[170,165,106,170,166,170,169,165]},{"a":42600,"t":"byte","b":[170,150,153,169,10,105,168,7]},{"a":42608,"t":"byte","b":[170,100,15,170,100,0,170,164]},{"a":42616,"t":"byte","b":[0,42,144,0,42,144,0,0]},{"a":42624,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42632,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42640,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42648,"t":"byte","b":[128,0,0,128,0,0,160,0]},{"a":42656,"t":"byte","b":[0,172,0,0,172,0,0,156]},{"a":42664,"t":"byte","b":[0,0,188,0,0,240,0,0]},{"a":42672,"t":"byte","b":[192,0,0,0,0,0,0,0]},{"a":42680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42688,"t":"byte","b":[42,144,0,42,144,0,42,144]},{"a":42696,"t":"byte","b":[0,42,144,0,42,144,0,42]},{"a":42704,"t":"byte","b":[96,0,42,96,0,42,148,0]},{"a":42712,"t":"byte","b":[10,164,0,10,164,0,10,164]},{"a":42720,"t":"byte","b":[0,10,164,0,2,164,0,2]},{"a":42728,"t":"byte","b":[164,0,0,156,0,81,253,64]},{"a":42736,"t":"byte","b":[85,253,84,85,255,84,87,255]},{"a":42744,"t":"byte","b":[69,31,255,64,15,252,0,0]},{"a":42752,"t":"byte","b":[0,3,240,0,3,255,0,0]},{"a":42760,"t":"byte","b":[255,0,0,63,0,0,55,0]},{"a":42768,"t":"byte","b":[0,169,0,0,169,0,0,170]},{"a":42776,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":42784,"t":"byte","b":[175,0,0,175,0,0,47,0]},{"a":42792,"t":"byte","b":[0,47,0,0,42,0,0,42]},{"a":42800,"t":"byte","b":[0,0,42,0,0,10,0,0]},{"a":42808,"t":"byte","b":[10,0,0,2,0,0,2,0]},{"a":42816,"t":"byte","b":[0,0,0,0,42,128,0,42]},{"a":42824,"t":"byte","b":[160,0,170,160,0,170,160,1]},{"a":42832,"t":"byte","b":[170,168,1,170,168,1,170,168]},{"a":42840,"t":"byte","b":[70,170,164,70,170,148,134,170]},{"a":42848,"t":"byte","b":[90,218,169,106,250,166,170,255]},{"a":42856,"t":"byte","b":[169,170,255,250,170,191,249,170]},{"a":42864,"t":"byte","b":[175,249,170,170,250,106,168,42]},{"a":42872,"t":"byte","b":[106,168,42,106,160,42,154,0]},{"a":42880,"t":"byte","b":[160,42,154,0,42,154,0,170]},{"a":42888,"t":"byte","b":[170,0,154,168,0,154,168,0]},{"a":42896,"t":"byte","b":[106,168,0,170,160,0,170,160]},{"a":42904,"t":"byte","b":[3,234,128,15,246,0,7,252]},{"a":42912,"t":"byte","b":[0,15,116,0,63,116,0,55]},{"a":42920,"t":"byte","b":[212,128,5,212,128,15,90,0]},{"a":42928,"t":"byte","b":[5,104,0,10,148,0,5,80]},{"a":42936,"t":"byte","b":[0,1,64,0,0,0,0,0]},{"a":42944,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":42968,"t":"byte","b":[0,0,0,0,3,192,0,15]},{"a":42976,"t":"byte","b":[252,0,15,234,0,63,170,0]},{"a":42984,"t":"byte","b":[63,170,0,0,106,0,0,42]},{"a":42992,"t":"byte","b":[0,0,26,0,0,6,0,0]},{"a":43000,"t":"byte","b":[6,0,0,1,0,0,1,0]},{"a":43008,"l":"shape_cells_a0","c":"Fighter shape cells $A0-$AF: sixteen multicolour sprite images of 64 bytes each ($A800-$ABFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,42,0,0,170,0,0]},{"a":43016,"t":"byte","b":[170,0,2,169,0,10,169,0]},{"a":43024,"t":"byte","b":[10,230,0,10,250,0,3,250]},{"a":43032,"t":"byte","b":[0,7,249,0,41,250,0,169]},{"a":43040,"t":"byte","b":[250,2,170,250,2,170,250,74]},{"a":43048,"t":"byte","b":[170,250,106,170,254,154,170,190]},{"a":43056,"t":"byte","b":[106,170,158,154,170,148,170,170]},{"a":43064,"t":"byte","b":[148,170,150,97,170,90,97,0]},{"a":43072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43112,"t":"byte","b":[80,0,1,84,0,6,148,0]},{"a":43120,"t":"byte","b":[9,106,0,7,212,128,7,244]},{"a":43128,"t":"byte","b":[0,7,84,128,173,212,0,0]},{"a":43136,"t":"byte","b":[167,244,0,167,116,0,175,240]},{"a":43144,"t":"byte","b":[0,175,192,0,175,128,0,175]},{"a":43152,"t":"byte","b":[128,0,190,160,0,186,160,0]},{"a":43160,"t":"byte","b":[186,160,0,170,160,0,170,96]},{"a":43168,"t":"byte","b":[0,170,160,0,169,160,0,166]},{"a":43176,"t":"byte","b":[160,0,174,128,0,141,128,0]},{"a":43184,"t":"byte","b":[15,192,0,15,192,0,3,240]},{"a":43192,"t":"byte","b":[0,3,240,0,3,252,0,0]},{"a":43200,"t":"byte","b":[170,6,97,168,6,160,0,10]},{"a":43208,"t":"byte","b":[164,0,10,164,0,6,164,0]},{"a":43216,"t":"byte","b":[5,168,0,9,168,0,1,168]},{"a":43224,"t":"byte","b":[0,2,104,0,9,168,0,6]},{"a":43232,"t":"byte","b":[168,0,6,168,0,10,144,0]},{"a":43240,"t":"byte","b":[26,144,0,26,144,0,42,160]},{"a":43248,"t":"byte","b":[0,42,144,85,27,0,85,95]},{"a":43256,"t":"byte","b":[213,1,95,253,0,31,253,0]},{"a":43264,"t":"byte","b":[0,252,0,0,252,0,0,0]},{"a":43272,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43304,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43312,"t":"byte","b":[5,64,0,85,80,0,85,84]},{"a":43320,"t":"byte","b":[0,84,0,0,0,0,0,0]},{"a":43328,"t":"byte","b":[0,2,252,0,10,176,0,10]},{"a":43336,"t":"byte","b":[176,0,10,160,0,42,160,0]},{"a":43344,"t":"byte","b":[42,160,0,42,168,0,42,152]},{"a":43352,"t":"byte","b":[0,42,152,0,26,104,0,26]},{"a":43360,"t":"byte","b":[104,0,46,104,0,47,168,0]},{"a":43368,"t":"byte","b":[47,168,0,47,232,0,11,232]},{"a":43376,"t":"byte","b":[0,7,212,0,10,249,0,42]},{"a":43384,"t":"byte","b":[253,0,42,189,0,42,189,0]},{"a":43392,"t":"byte","b":[0,42,184,0,10,168,0,10]},{"a":43400,"t":"byte","b":[168,0,6,168,0,10,168,0]},{"a":43408,"t":"byte","b":[2,168,0,1,168,0,1,168]},{"a":43416,"t":"byte","b":[0,2,100,0,6,144,0,6]},{"a":43424,"t":"byte","b":[144,0,6,160,0,10,160,0]},{"a":43432,"t":"byte","b":[10,160,0,10,160,0,10,144]},{"a":43440,"t":"byte","b":[0,9,64,0,23,213,0,23]},{"a":43448,"t":"byte","b":[244,0,7,255,0,3,255,0]},{"a":43456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43496,"t":"byte","b":[0,0,0,80,0,1,84,0]},{"a":43504,"t":"byte","b":[6,168,0,10,84,0,37,124]},{"a":43512,"t":"byte","b":[0,133,212,0,5,247,0,0]},{"a":43520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43528,"t":"byte","b":[0,0,0,2,0,0,10,0]},{"a":43536,"t":"byte","b":[0,42,0,0,41,0,0,166]},{"a":43544,"t":"byte","b":[0,2,166,0,2,154,0,10]},{"a":43552,"t":"byte","b":[158,0,10,190,0,42,190,0]},{"a":43560,"t":"byte","b":[26,253,0,22,254,0,37,248]},{"a":43568,"t":"byte","b":[0,43,248,0,43,212,0,171]},{"a":43576,"t":"byte","b":[228,0,171,233,0,171,225,0]},{"a":43584,"t":"byte","b":[7,127,0,7,124,0,175,244]},{"a":43592,"t":"byte","b":[0,171,252,0,171,240,0,106]},{"a":43600,"t":"byte","b":[192,0,170,192,0,170,0,0]},{"a":43608,"t":"byte","b":[170,0,0,168,0,0,168,0]},{"a":43616,"t":"byte","b":[0,144,0,0,96,0,0,128]},{"a":43624,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43632,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43640,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43648,"t":"byte","b":[0,170,225,0,42,160,0,26]},{"a":43656,"t":"byte","b":[160,0,26,160,0,42,160,0]},{"a":43664,"t":"byte","b":[10,160,0,6,160,0,5,160]},{"a":43672,"t":"byte","b":[0,6,144,0,42,128,0,26]},{"a":43680,"t":"byte","b":[128,0,26,128,0,42,128,0]},{"a":43688,"t":"byte","b":[42,128,0,42,128,0,42,65]},{"a":43696,"t":"byte","b":[0,41,133,0,39,21,0,95]},{"a":43704,"t":"byte","b":[212,0,95,252,0,15,252,0]},{"a":43712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43720,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43744,"t":"byte","b":[0,0,0,1,0,0,5,0]},{"a":43752,"t":"byte","b":[0,5,0,0,9,0,0,6]},{"a":43760,"t":"byte","b":[0,0,5,0,0,13,0,0]},{"a":43768,"t":"byte","b":[15,0,0,5,0,0,103,0]},{"a":43776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43832,"t":"byte","b":[240,0,15,252,0,63,252,0]},{"a":43840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":43848,"t":"byte","b":[0,5,64,42,21,162,170,86]},{"a":43856,"t":"byte","b":[154,154,170,122,170,85,250,169]},{"a":43864,"t":"byte","b":[85,90,169,87,122,170,87,255]},{"a":43872,"t":"byte","b":[170,87,223,234,31,255,234,11]},{"a":43880,"t":"byte","b":[254,170,10,250,170,41,170,169]},{"a":43888,"t":"byte","b":[42,170,169,170,154,166,170,165]},{"a":43896,"t":"byte","b":[150,170,144,90,169,128,10,0]},{"a":43904,"t":"byte","b":[0,255,192,47,255,234,107,255]},{"a":43912,"t":"byte","b":[234,171,202,170,107,42,154,152]},{"a":43920,"t":"byte","b":[170,150,98,170,105,170,169,164]},{"a":43928,"t":"byte","b":[170,170,144,106,170,0,105,104]},{"a":43936,"t":"byte","b":[0,101,104,0,86,160,0,106]},{"a":43944,"t":"byte","b":[128,0,90,128,0,102,0,0]},{"a":43952,"t":"byte","b":[169,0,0,170,64,0,170,64]},{"a":43960,"t":"byte","b":[0,170,0,0,170,0,0,0]},{"a":43968,"t":"byte","b":[169,128,2,166,64,2,170,64]},{"a":43976,"t":"byte","b":[2,42,128,2,42,128,2,7]},{"a":43984,"t":"byte","b":[192,0,3,192,0,3,192,0]},{"a":43992,"t":"byte","b":[3,240,0,3,220,0,0,255]},{"a":44000,"t":"byte","b":[0,0,63,0,0,63,0,0]},{"a":44008,"t":"byte","b":[0,0,0,0,1,0,21,85]},{"a":44016,"t":"byte","b":[1,85,85,21,85,85,21,84]},{"a":44024,"t":"byte","b":[1,0,21,3,0,0,3,0]},{"a":44032,"l":"shape_cells_b0","c":"Fighter shape cells $B0-$BF: sixteen multicolour sprite images of 64 bytes each ($AC00-$AFFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[170,0,0,169,0,0,169,0]},{"a":44040,"t":"byte","b":[0,169,0,0,169,0,0,170]},{"a":44048,"t":"byte","b":[64,0,170,64,0,170,64,0]},{"a":44056,"t":"byte","b":[170,64,0,42,64,0,42,64]},{"a":44064,"t":"byte","b":[0,42,64,0,42,64,0,42]},{"a":44072,"t":"byte","b":[64,0,106,64,0,106,84,5]},{"a":44080,"t":"byte","b":[106,149,85,103,85,84,255,85]},{"a":44088,"t":"byte","b":[0,253,80,0,253,0,0,0]},{"a":44096,"t":"byte","b":[170,255,252,170,255,252,170,191]},{"a":44104,"t":"byte","b":[0,170,112,0,169,0,0,144]},{"a":44112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44120,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44192,"t":"byte","b":[0,0,0,0,0,1,80,0]},{"a":44200,"t":"byte","b":[5,87,0,6,119,0,25,253]},{"a":44208,"t":"byte","b":[0,37,223,0,37,223,0,149]},{"a":44216,"t":"byte","b":[253,2,151,125,8,7,127,0]},{"a":44224,"t":"byte","b":[0,0,0,0,84,0,1,85]},{"a":44232,"t":"byte","b":[0,33,85,64,138,90,128,9]},{"a":44240,"t":"byte","b":[111,64,33,157,64,1,117,192]},{"a":44248,"t":"byte","b":[1,127,192,1,95,64,1,223]},{"a":44256,"t":"byte","b":[64,1,255,224,0,255,234,0]},{"a":44264,"t":"byte","b":[175,234,0,171,250,2,170,250]},{"a":44272,"t":"byte","b":[2,170,250,10,170,186,10,166]},{"a":44280,"t":"byte","b":[154,10,154,170,10,166,170,0]},{"a":44288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44304,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44320,"t":"byte","b":[0,0,0,0,128,0,0,160]},{"a":44328,"t":"byte","b":[0,0,160,0,0,168,0,0]},{"a":44336,"t":"byte","b":[168,0,0,102,0,0,107,0]},{"a":44344,"t":"byte","b":[0,111,0,0,159,192,0,0]},{"a":44352,"t":"byte","b":[10,169,170,2,169,170,2,170]},{"a":44360,"t":"byte","b":[106,2,170,101,0,170,153,0]},{"a":44368,"t":"byte","b":[43,169,0,15,233,0,15,250]},{"a":44376,"t":"byte","b":[0,3,250,0,2,254,0,1]},{"a":44384,"t":"byte","b":[191,0,2,191,0,153,175,62]},{"a":44392,"t":"byte","b":[170,167,62,170,164,62,170,167]},{"a":44400,"t":"byte","b":[61,170,163,63,170,147,63,102]},{"a":44408,"t":"byte","b":[87,63,213,87,31,213,1,0]},{"a":44416,"t":"byte","b":[159,252,0,152,252,0,96,60]},{"a":44424,"t":"byte","b":[0,96,0,0,152,0,0,166]},{"a":44432,"t":"byte","b":[0,0,150,0,0,105,128,0]},{"a":44440,"t":"byte","b":[105,128,0,170,160,0,170,160]},{"a":44448,"t":"byte","b":[0,230,168,0,201,168,0,201]},{"a":44456,"t":"byte","b":[168,0,106,168,0,170,168,0]},{"a":44464,"t":"byte","b":[170,160,0,218,128,0,234,80]},{"a":44472,"t":"byte","b":[0,253,84,0,253,0,0,0]},{"a":44480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44512,"t":"byte","b":[0,64,128,0,82,0,0,84]},{"a":44520,"t":"byte","b":[128,0,90,0,0,164,0,0]},{"a":44528,"t":"byte","b":[84,0,0,84,0,0,214,0]},{"a":44536,"t":"byte","b":[0,246,128,0,118,160,0,0]},{"a":44544,"t":"byte","b":[0,3,255,0,10,254,0,42]},{"a":44552,"t":"byte","b":[126,0,170,175,0,170,175,2]},{"a":44560,"t":"byte","b":[170,171,2,170,171,10,166,170]},{"a":44568,"t":"byte","b":[10,102,170,10,154,170,10,170]},{"a":44576,"t":"byte","b":[170,10,162,170,10,162,170,10]},{"a":44584,"t":"byte","b":[162,170,3,226,170,3,193,170]},{"a":44592,"t":"byte","b":[3,241,106,3,255,89,0,255]},{"a":44600,"t":"byte","b":[230,0,63,229,0,15,217,0]},{"a":44608,"t":"byte","b":[160,0,0,168,0,0,168,0]},{"a":44616,"t":"byte","b":[0,170,0,0,170,0,0,154]},{"a":44624,"t":"byte","b":[128,0,170,128,0,154,160,0]},{"a":44632,"t":"byte","b":[150,144,0,81,191,0,160,191]},{"a":44640,"t":"byte","b":[252,160,191,255,144,15,255,160]},{"a":44648,"t":"byte","b":[0,255,160,0,12,144,0,0]},{"a":44656,"t":"byte","b":[80,0,0,104,0,0,106,0]},{"a":44664,"t":"byte","b":[0,154,0,0,154,0,0,0]},{"a":44672,"t":"byte","b":[0,10,154,0,10,154,0,10]},{"a":44680,"t":"byte","b":[154,0,42,154,0,42,170,0]},{"a":44688,"t":"byte","b":[42,170,0,26,169,0,42,168]},{"a":44696,"t":"byte","b":[0,90,168,1,170,160,1,170]},{"a":44704,"t":"byte","b":[160,6,170,128,10,170,128,58]},{"a":44712,"t":"byte","b":[170,0,250,168,0,250,160,21]},{"a":44720,"t":"byte","b":[246,129,85,252,149,85,253,85]},{"a":44728,"t":"byte","b":[85,255,64,1,63,0,0,0]},{"a":44736,"t":"byte","b":[154,128,0,154,128,0,170,160]},{"a":44744,"t":"byte","b":[0,106,160,0,106,160,0,106]},{"a":44752,"t":"byte","b":[168,0,26,168,0,9,168,0]},{"a":44760,"t":"byte","b":[6,168,0,9,168,0,25,168]},{"a":44768,"t":"byte","b":[0,26,104,0,26,160,0,234]},{"a":44776,"t":"byte","b":[160,0,234,128,0,234,144,0]},{"a":44784,"t":"byte","b":[234,149,64,246,85,84,253,85]},{"a":44792,"t":"byte","b":[5,255,84,0,127,80,0,0]},{"a":44800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44832,"t":"byte","b":[0,0,60,2,0,250,169,0]},{"a":44840,"t":"byte","b":[234,86,48,213,170,246,166,170]},{"a":44848,"t":"byte","b":[218,169,170,234,170,170,234,170]},{"a":44856,"t":"byte","b":[170,246,170,170,125,85,165,0]},{"a":44864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44888,"t":"byte","b":[0,0,0,0,0,0,2,160]},{"a":44896,"t":"byte","b":[10,90,150,170,106,106,170,169]},{"a":44904,"t":"byte","b":[166,169,169,150,169,149,106,169]},{"a":44912,"t":"byte","b":[106,170,171,218,170,173,255,170]},{"a":44920,"t":"byte","b":[159,255,246,159,127,253,89,0]},{"a":44928,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44936,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44944,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":44952,"t":"byte","b":[0,0,0,0,0,0,160,0]},{"a":44960,"t":"byte","b":[0,150,0,0,85,160,0,85]},{"a":44968,"t":"byte","b":[104,0,85,106,0,85,106,128]},{"a":44976,"t":"byte","b":[85,106,188,213,105,255,213,107]},{"a":44984,"t":"byte","b":[127,245,165,95,149,85,21,0]},{"a":44992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45008,"t":"byte","b":[0,2,0,0,10,0,0,10]},{"a":45016,"t":"byte","b":[0,0,26,0,0,42,0,0]},{"a":45024,"t":"byte","b":[106,0,0,170,0,1,170,0]},{"a":45032,"t":"byte","b":[2,170,58,70,170,250,154,170]},{"a":45040,"t":"byte","b":[250,154,169,234,170,166,230,170]},{"a":45048,"t":"byte","b":[166,253,170,154,125,86,85,0]},{"a":45056,"l":"shape_cells_c0","c":"Fighter shape cells $C0-$CF: sixteen multicolour sprite images of 64 bytes each ($B000-$B3FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[26,170,191,170,154,190,170,106]},{"a":45064,"t":"byte","b":[186,105,106,170,233,170,170,246]},{"a":45072,"t":"byte","b":[170,170,250,170,170,246,170,169]},{"a":45080,"t":"byte","b":[245,170,168,249,106,160,250,85]},{"a":45088,"t":"byte","b":[80,254,153,96,190,90,64,191]},{"a":45096,"t":"byte","b":[105,16,159,169,16,111,164,16]},{"a":45104,"t":"byte","b":[170,164,0,170,144,21,170,149]},{"a":45112,"t":"byte","b":[85,170,85,85,165,85,0,0]},{"a":45120,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45144,"t":"byte","b":[0,0,5,0,0,21,0,32]},{"a":45152,"t":"byte","b":[21,0,8,85,0,2,90,0]},{"a":45160,"t":"byte","b":[0,165,0,0,151,0,42,87]},{"a":45168,"t":"byte","b":[0,170,93,2,170,255,2,170]},{"a":45176,"t":"byte","b":[255,10,170,255,10,170,191,0]},{"a":45184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45208,"t":"byte","b":[0,0,0,64,0,0,80,0]},{"a":45216,"t":"byte","b":[0,80,0,0,160,0,0,80]},{"a":45224,"t":"byte","b":[0,0,240,0,0,80,0,0]},{"a":45232,"t":"byte","b":[208,0,0,240,0,0,112,0]},{"a":45240,"t":"byte","b":[0,112,0,0,232,0,0,0]},{"a":45248,"t":"byte","b":[232,0,0,170,0,0,170,0]},{"a":45256,"t":"byte","b":[0,170,128,0,154,64,0,154]},{"a":45264,"t":"byte","b":[192,0,90,252,0,6,255,0]},{"a":45272,"t":"byte","b":[1,191,240,0,63,240,0,15]},{"a":45280,"t":"byte","b":[240,0,3,240,0,0,0,0]},{"a":45288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45296,"t":"byte","b":[0,0,0,85,0,0,85,85]},{"a":45304,"t":"byte","b":[80,85,85,80,0,0,0,0]},{"a":45312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45320,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45352,"t":"byte","b":[0,0,0,0,0,188,0,0]},{"a":45360,"t":"byte","b":[190,0,0,254,160,0,254,191]},{"a":45368,"t":"byte","b":[192,250,191,252,170,191,252,0]},{"a":45376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45392,"t":"byte","b":[1,128,0,6,84,0,22,116]},{"a":45400,"t":"byte","b":[0,25,220,0,25,221,0,25]},{"a":45408,"t":"byte","b":[253,0,37,127,2,37,95,0]},{"a":45416,"t":"byte","b":[133,220,2,1,124,0,0,126]},{"a":45424,"t":"byte","b":[0,10,190,0,42,182,0,41]},{"a":45432,"t":"byte","b":[159,0,170,255,0,170,255,0]},{"a":45440,"t":"byte","b":[170,144,252,101,160,60,144,0]},{"a":45448,"t":"byte","b":[0,64,0,0,128,0,0,128]},{"a":45456,"t":"byte","b":[0,0,128,0,0,128,0,0]},{"a":45464,"t":"byte","b":[128,0,0,64,0,0,80,0]},{"a":45472,"t":"byte","b":[0,148,0,0,129,64,0,80]},{"a":45480,"t":"byte","b":[0,0,165,0,0,168,0,0]},{"a":45488,"t":"byte","b":[154,0,0,154,0,0,166,0]},{"a":45496,"t":"byte","b":[0,166,128,0,166,128,0,0]},{"a":45504,"t":"byte","b":[0,170,254,0,170,250,0,106]},{"a":45512,"t":"byte","b":[154,0,26,106,0,37,170,0]},{"a":45520,"t":"byte","b":[10,170,0,10,170,0,10,170]},{"a":45528,"t":"byte","b":[0,10,170,0,6,170,0,5]},{"a":45536,"t":"byte","b":[105,0,10,85,0,2,165,0]},{"a":45544,"t":"byte","b":[2,169,0,2,170,0,2,170]},{"a":45552,"t":"byte","b":[0,2,170,0,0,170,0,0]},{"a":45560,"t":"byte","b":[170,0,0,42,0,0,9,0]},{"a":45568,"t":"byte","b":[105,128,0,169,128,0,169,0]},{"a":45576,"t":"byte","b":[0,169,0,0,169,0,0,170]},{"a":45584,"t":"byte","b":[0,0,170,0,0,42,0,0]},{"a":45592,"t":"byte","b":[42,128,0,42,128,0,42,128]},{"a":45600,"t":"byte","b":[0,10,128,0,10,128,0,10]},{"a":45608,"t":"byte","b":[64,0,3,208,0,83,245,64]},{"a":45616,"t":"byte","b":[87,253,84,85,253,0,21,255]},{"a":45624,"t":"byte","b":[0,1,127,0,0,127,0,0]},{"a":45632,"t":"byte","b":[0,0,23,0,0,87,0,0]},{"a":45640,"t":"byte","b":[93,0,0,93,0,0,95,0]},{"a":45648,"t":"byte","b":[0,87,0,0,101,0,2,101]},{"a":45656,"t":"byte","b":[0,8,149,0,2,21,0,0]},{"a":45664,"t":"byte","b":[6,0,0,2,0,0,2,0]},{"a":45672,"t":"byte","b":[0,2,0,0,1,0,0,0]},{"a":45680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45688,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45696,"t":"byte","b":[124,0,0,119,0,48,247,0]},{"a":45704,"t":"byte","b":[252,255,42,254,255,170,254,127]},{"a":45712,"t":"byte","b":[250,250,127,254,245,122,183,249]},{"a":45720,"t":"byte","b":[170,171,250,170,171,230,169,159]},{"a":45728,"t":"byte","b":[230,170,111,233,170,111,229,170]},{"a":45736,"t":"byte","b":[175,230,170,167,230,106,170,154]},{"a":45744,"t":"byte","b":[22,169,154,1,166,170,0,0]},{"a":45752,"t":"byte","b":[170,0,0,170,0,0,38,0]},{"a":45760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45768,"t":"byte","b":[0,191,240,0,191,252,0,159]},{"a":45776,"t":"byte","b":[252,0,144,60,0,16,0,0]},{"a":45784,"t":"byte","b":[64,0,0,106,0,0,90,168]},{"a":45792,"t":"byte","b":[0,170,170,0,170,170,128,170]},{"a":45800,"t":"byte","b":[170,160,170,170,160,166,170,160]},{"a":45808,"t":"byte","b":[169,154,160,170,102,168,170,26]},{"a":45816,"t":"byte","b":[168,170,134,168,170,134,168,0]},{"a":45824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45856,"t":"byte","b":[0,0,0,10,0,0,42,0]},{"a":45864,"t":"byte","b":[0,170,0,10,170,0,218,170]},{"a":45872,"t":"byte","b":[63,246,170,63,254,170,63,242]},{"a":45880,"t":"byte","b":[169,15,214,148,7,85,85,0]},{"a":45888,"t":"byte","b":[170,134,168,106,138,168,26,130]},{"a":45896,"t":"byte","b":[168,38,129,168,26,129,144,26]},{"a":45904,"t":"byte","b":[130,192,106,3,192,170,3,240]},{"a":45912,"t":"byte","b":[170,3,252,170,0,255,106,0]},{"a":45920,"t":"byte","b":[63,216,0,15,240,0,0,240]},{"a":45928,"t":"byte","b":[0,0,240,0,0,245,85,0]},{"a":45936,"t":"byte","b":[245,85,85,245,5,85,245,1]},{"a":45944,"t":"byte","b":[5,244,0,0,244,0,0,0]},{"a":45952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":45992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46000,"t":"byte","b":[0,5,240,0,37,220,0,87]},{"a":46008,"t":"byte","b":[223,0,101,255,0,101,255,0]},{"a":46016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46056,"t":"byte","b":[0,0,0,0,15,0,0,63]},{"a":46064,"t":"byte","b":[0,10,255,0,170,252,10,170]},{"a":46072,"t":"byte","b":[176,234,170,160,250,90,0,0]},{"a":46080,"l":"shape_cells_d0","c":"Fighter shape cells $D0-$DF: sixteen multicolour sprite images of 64 bytes each ($B400-$B7FF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46112,"t":"byte","b":[0,0,0,0,192,0,0,252]},{"a":46120,"t":"byte","b":[0,0,252,0,0,252,0,0]},{"a":46128,"t":"byte","b":[240,0,0,0,0,0,0,0]},{"a":46136,"t":"byte","b":[0,42,0,0,170,128,0,0]},{"a":46144,"t":"byte","b":[0,103,255,0,101,250,0,101]},{"a":46152,"t":"byte","b":[106,0,101,234,0,149,106,0]},{"a":46160,"t":"byte","b":[37,42,0,32,42,0,128,10]},{"a":46168,"t":"byte","b":[0,128,10,0,0,2,0,0]},{"a":46176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46192,"t":"byte","b":[0,21,85,0,85,85,0,21]},{"a":46200,"t":"byte","b":[85,0,0,0,0,0,0,0]},{"a":46208,"t":"byte","b":[254,164,2,170,171,202,170,175]},{"a":46216,"t":"byte","b":[217,106,191,229,154,253,86,167]},{"a":46224,"t":"byte","b":[249,90,171,246,153,171,230,154]},{"a":46232,"t":"byte","b":[171,154,166,170,154,166,41,154]},{"a":46240,"t":"byte","b":[166,2,154,170,0,38,170,0]},{"a":46248,"t":"byte","b":[2,170,0,0,10,0,0,0]},{"a":46256,"t":"byte","b":[85,64,0,85,85,85,85,85]},{"a":46264,"t":"byte","b":[85,0,5,85,0,0,0,0]},{"a":46272,"t":"byte","b":[170,160,0,170,168,0,170,168]},{"a":46280,"t":"byte","b":[0,166,170,0,169,170,128,164]},{"a":46288,"t":"byte","b":[106,128,128,26,112,80,14,240]},{"a":46296,"t":"byte","b":[164,15,252,168,3,255,170,3]},{"a":46304,"t":"byte","b":[255,170,0,255,170,128,15,170]},{"a":46312,"t":"byte","b":[160,0,154,168,0,22,164,0]},{"a":46320,"t":"byte","b":[10,175,85,1,175,253,85,175]},{"a":46328,"t":"byte","b":[255,85,151,255,0,85,253,0]},{"a":46336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46352,"t":"byte","b":[20,0,0,95,64,1,119,112]},{"a":46360,"t":"byte","b":[1,119,240,1,127,255,1,95]},{"a":46368,"t":"byte","b":[170,1,94,170,1,90,90,0]},{"a":46376,"t":"byte","b":[106,166,0,42,170,0,42,171]},{"a":46384,"t":"byte","b":[0,42,175,0,26,191,0,22]},{"a":46392,"t":"byte","b":[159,0,5,85,0,0,21,0]},{"a":46400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46416,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46424,"t":"byte","b":[170,240,0,170,255,192,170,169]},{"a":46432,"t":"byte","b":[240,170,150,170,170,102,106,170]},{"a":46440,"t":"byte","b":[102,149,169,169,170,233,169,170]},{"a":46448,"t":"byte","b":[249,169,170,254,170,165,255,218]},{"a":46456,"t":"byte","b":[86,255,245,85,95,240,5,0]},{"a":46464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46488,"t":"byte","b":[0,0,3,0,0,3,0,0]},{"a":46496,"t":"byte","b":[15,160,0,15,170,170,175,170]},{"a":46504,"t":"byte","b":[171,175,90,175,191,165,111,191]},{"a":46512,"t":"byte","b":[170,191,189,170,255,84,170,255]},{"a":46520,"t":"byte","b":[80,153,255,64,85,95,0,0]},{"a":46528,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46536,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46544,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46552,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46560,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46568,"t":"byte","b":[0,0,5,0,0,21,64,0]},{"a":46576,"t":"byte","b":[85,80,0,87,208,0,93,112]},{"a":46584,"t":"byte","b":[0,93,208,0,119,240,0,0]},{"a":46592,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46600,"t":"byte","b":[10,0,0,42,0,0,170,0]},{"a":46608,"t":"byte","b":[0,170,0,0,170,0,0,169]},{"a":46616,"t":"byte","b":[0,2,169,0,2,169,0,2]},{"a":46624,"t":"byte","b":[166,0,10,166,0,9,166,0]},{"a":46632,"t":"byte","b":[6,250,0,22,255,0,41,255]},{"a":46640,"t":"byte","b":[0,42,191,0,42,175,0,170]},{"a":46648,"t":"byte","b":[150,0,170,153,0,170,153,0]},{"a":46656,"t":"byte","b":[119,112,0,255,112,0,191,192]},{"a":46664,"t":"byte","b":[0,175,0,0,175,0,0,191]},{"a":46672,"t":"byte","b":[0,0,190,0,0,186,128,0]},{"a":46680,"t":"byte","b":[250,128,0,234,128,0,170,160]},{"a":46688,"t":"byte","b":[0,169,168,0,166,168,0,145]},{"a":46696,"t":"byte","b":[168,0,128,175,0,192,111,192]},{"a":46704,"t":"byte","b":[192,31,240,240,3,252,252,3]},{"a":46712,"t":"byte","b":[252,188,0,252,188,0,240,0]},{"a":46720,"t":"byte","b":[0,170,154,0,170,170,0,170]},{"a":46728,"t":"byte","b":[166,0,42,154,0,42,166,0]},{"a":46736,"t":"byte","b":[42,162,0,42,129,0,26,128]},{"a":46744,"t":"byte","b":[0,38,128,0,42,128,0,106]},{"a":46752,"t":"byte","b":[128,0,170,128,1,170,0,6]},{"a":46760,"t":"byte","b":[170,0,58,168,1,58,168,21]},{"a":46768,"t":"byte","b":[57,160,85,62,65,85,63,85]},{"a":46776,"t":"byte","b":[85,63,213,64,31,212,0,0]},{"a":46784,"t":"byte","b":[96,0,0,96,0,0,168,0]},{"a":46792,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":46800,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":46808,"t":"byte","b":[170,0,0,170,0,0,106,0]},{"a":46816,"t":"byte","b":[0,106,0,0,170,0,0,170]},{"a":46824,"t":"byte","b":[0,0,170,80,0,106,85,0]},{"a":46832,"t":"byte","b":[89,85,64,125,84,84,127,208]},{"a":46840,"t":"byte","b":[0,63,240,0,31,240,0,0]},{"a":46848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46856,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46888,"t":"byte","b":[0,0,0,0,0,85,84,0]},{"a":46896,"t":"byte","b":[85,85,64,80,85,80,0,5]},{"a":46904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":46912,"t":"byte","b":[0,1,84,0,134,169,0,41]},{"a":46920,"t":"byte","b":[89,0,5,86,0,5,125,0]},{"a":46928,"t":"byte","b":[13,245,2,173,220,10,175,252]},{"a":46936,"t":"byte","b":[42,175,220,42,175,220,42,175]},{"a":46944,"t":"byte","b":[240,170,191,232,169,190,168,169]},{"a":46952,"t":"byte","b":[186,170,166,170,154,166,191,154]},{"a":46960,"t":"byte","b":[169,255,154,171,246,106,171,250]},{"a":46968,"t":"byte","b":[126,175,218,255,175,111,255,0]},{"a":46976,"t":"byte","b":[173,255,240,110,255,224,22,254]},{"a":46984,"t":"byte","b":[168,42,250,170,42,185,170,26]},{"a":46992,"t":"byte","b":[170,102,6,170,90,1,154,154]},{"a":47000,"t":"byte","b":[0,106,150,0,154,134,1,170]},{"a":47008,"t":"byte","b":[74,6,170,10,26,168,6,106]},{"a":47016,"t":"byte","b":[160,6,170,144,26,234,64,26]},{"a":47024,"t":"byte","b":[249,21,101,253,85,95,255,85]},{"a":47032,"t":"byte","b":[127,127,64,127,31,0,31,0]},{"a":47040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":47048,"t":"byte","b":[0,0,0,0,128,0,0,128]},{"a":47056,"t":"byte","b":[0,0,160,0,0,160,0,0]},{"a":47064,"t":"byte","b":[160,0,0,160,0,0,144,0]},{"a":47072,"t":"byte","b":[0,144,0,0,160,0,0,128]},{"a":47080,"t":"byte","b":[0,0,128,0,0,128,0,0]},{"a":47088,"t":"byte","b":[128,0,0,80,0,0,208,0]},{"a":47096,"t":"byte","b":[0,240,0,0,240,0,0,0]},{"a":47104,"l":"shape_cells_e0","c":"Fighter shape cells $E0-$EF: sixteen multicolour sprite images of 64 bytes each ($B800-$BBFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":47112,"t":"byte","b":[0,0,0,0,0,0,20,0]},{"a":47120,"t":"byte","b":[0,85,0,1,169,0,2,150]},{"a":47128,"t":"byte","b":[0,1,125,0,1,245,0,1]},{"a":47136,"t":"byte","b":[221,0,5,255,0,43,119,0]},{"a":47144,"t":"byte","b":[171,119,2,171,254,2,155,250]},{"a":47152,"t":"byte","b":[10,170,234,10,154,234,10,154]},{"a":47160,"t":"byte","b":[169,10,154,170,10,170,170,0]},{"a":47168,"t":"byte","b":[0,1,175,0,6,173,0,6]},{"a":47176,"t":"byte","b":[173,0,26,107,0,26,170,0]},{"a":47184,"t":"byte","b":[26,154,0,26,154,0,106,106]},{"a":47192,"t":"byte","b":[2,106,106,42,102,90,170,157]},{"a":47200,"t":"byte","b":[86,170,191,165,170,191,154,170]},{"a":47208,"t":"byte","b":[191,150,106,191,102,154,127,70]},{"a":47216,"t":"byte","b":[165,60,4,144,60,7,64,253]},{"a":47224,"t":"byte","b":[95,23,255,95,83,215,15,0]},{"a":47232,"t":"byte","b":[10,154,190,10,149,254,10,167]},{"a":47240,"t":"byte","b":[246,10,127,219,10,255,111,10]},{"a":47248,"t":"byte","b":[253,255,6,251,255,1,167,250]},{"a":47256,"t":"byte","b":[2,169,234,2,169,169,2,170]},{"a":47264,"t":"byte","b":[102,2,170,89,0,170,106,53]},{"a":47272,"t":"byte","b":[170,162,250,106,134,250,154,134]},{"a":47280,"t":"byte","b":[250,154,138,254,170,137,61,106]},{"a":47288,"t":"byte","b":[87,127,89,95,127,85,31,0]},{"a":47296,"t":"byte","b":[128,0,0,160,0,0,160,0]},{"a":47304,"t":"byte","b":[0,208,0,0,224,0,0,192]},{"a":47312,"t":"byte","b":[0,0,128,0,0,160,0,0]},{"a":47320,"t":"byte","b":[160,0,0,168,0,0,168,0]},{"a":47328,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":47336,"t":"byte","b":[0,0,144,0,0,144,0,0]},{"a":47344,"t":"byte","b":[160,0,0,128,0,0,244,0]},{"a":47352,"t":"byte","b":[0,252,0,0,252,0,0,0]},{"a":47360,"t":"byte","b":[0,2,169,0,2,166,0,2]},{"a":47368,"t":"byte","b":[166,0,1,166,0,1,170,0]},{"a":47376,"t":"byte","b":[0,106,0,0,106,0,0,106]},{"a":47384,"t":"byte","b":[0,0,154,0,2,154,0,2]},{"a":47392,"t":"byte","b":[166,0,2,166,0,10,146,0]},{"a":47400,"t":"byte","b":[10,145,0,10,161,0,10,128]},{"a":47408,"t":"byte","b":[0,9,128,0,15,85,0,15]},{"a":47416,"t":"byte","b":[85,0,15,64,0,15,0,0]},{"a":47424,"t":"byte","b":[104,0,0,152,0,0,152,0]},{"a":47432,"t":"byte","b":[0,160,0,0,96,0,0,144]},{"a":47440,"t":"byte","b":[0,0,160,0,0,160,0,0]},{"a":47448,"t":"byte","b":[160,0,0,168,0,0,168,0]},{"a":47456,"t":"byte","b":[0,168,0,0,168,0,0,170]},{"a":47464,"t":"byte","b":[0,0,170,0,0,106,80,0]},{"a":47472,"t":"byte","b":[105,85,84,165,85,85,125,21]},{"a":47480,"t":"byte","b":[0,127,0,0,255,0,0,0]},{"a":47488,"t":"byte","b":[0,2,154,0,2,154,0,2]},{"a":47496,"t":"byte","b":[166,0,2,166,0,2,170,0]},{"a":47504,"t":"byte","b":[0,170,0,0,170,0,0,106]},{"a":47512,"t":"byte","b":[0,0,106,0,2,106,0,2]},{"a":47520,"t":"byte","b":[90,0,2,106,0,2,154,0]},{"a":47528,"t":"byte","b":[10,154,0,10,154,0,58,154]},{"a":47536,"t":"byte","b":[0,58,134,0,254,90,0,253]},{"a":47544,"t":"byte","b":[95,0,253,15,0,244,15,0]},{"a":47552,"t":"byte","b":[104,0,0,104,0,0,104,0]},{"a":47560,"t":"byte","b":[0,168,0,0,96,0,0,96]},{"a":47568,"t":"byte","b":[0,0,144,0,0,144,0,0]},{"a":47576,"t":"byte","b":[128,0,0,128,0,0,128,0]},{"a":47584,"t":"byte","b":[0,128,0,0,128,0,0,128]},{"a":47592,"t":"byte","b":[0,0,128,0,0,149,85,64]},{"a":47600,"t":"byte","b":[149,69,85,85,5,84,213,0]},{"a":47608,"t":"byte","b":[0,240,0,0,240,0,0,0]},{"a":47616,"t":"byte","b":[0,2,154,0,2,154,0,2]},{"a":47624,"t":"byte","b":[153,0,2,164,0,1,168,0]},{"a":47632,"t":"byte","b":[1,164,0,2,164,0,0,164]},{"a":47640,"t":"byte","b":[0,0,169,0,0,101,0,0]},{"a":47648,"t":"byte","b":[105,0,0,170,0,0,42,0]},{"a":47656,"t":"byte","b":[0,42,0,0,42,0,0,42]},{"a":47664,"t":"byte","b":[0,5,26,0,5,95,0,1]},{"a":47672,"t":"byte","b":[127,0,0,255,0,0,253,0]},{"a":47680,"t":"byte","b":[106,0,0,90,128,0,154,128]},{"a":47688,"t":"byte","b":[0,106,128,0,26,160,0,26]},{"a":47696,"t":"byte","b":[160,0,6,160,0,6,160,0]},{"a":47704,"t":"byte","b":[1,160,0,2,160,0,9,160]},{"a":47712,"t":"byte","b":[0,6,160,0,10,160,0,26]},{"a":47720,"t":"byte","b":[128,0,42,128,0,42,149,80]},{"a":47728,"t":"byte","b":[61,85,84,127,80,0,127,192]},{"a":47736,"t":"byte","b":[0,31,192,0,5,64,0,0]},{"a":47744,"t":"byte","b":[0,10,102,0,10,102,0,9]},{"a":47752,"t":"byte","b":[170,0,42,145,0,42,162,0]},{"a":47760,"t":"byte","b":[42,130,0,42,65,0,42,65]},{"a":47768,"t":"byte","b":[0,41,1,0,41,1,0,42]},{"a":47776,"t":"byte","b":[66,0,42,130,0,26,70,0]},{"a":47784,"t":"byte","b":[42,138,0,10,138,0,10,74]},{"a":47792,"t":"byte","b":[0,9,198,0,3,222,0,31]},{"a":47800,"t":"byte","b":[223,0,31,63,0,5,127,0]},{"a":47808,"t":"byte","b":[168,0,0,168,0,0,168,0]},{"a":47816,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":47824,"t":"byte","b":[0,0,168,0,0,164,0,0]},{"a":47832,"t":"byte","b":[168,0,0,160,0,0,160,0]},{"a":47840,"t":"byte","b":[0,144,0,0,144,0,0,160]},{"a":47848,"t":"byte","b":[0,0,128,0,0,128,0,0]},{"a":47856,"t":"byte","b":[149,85,64,85,85,84,21,0]},{"a":47864,"t":"byte","b":[85,212,0,0,192,0,0,0]},{"a":47872,"t":"byte","b":[254,168,0,218,168,0,218,168]},{"a":47880,"t":"byte","b":[0,249,170,0,234,106,0,234]},{"a":47888,"t":"byte","b":[106,0,169,106,0,166,154,0]},{"a":47896,"t":"byte","b":[154,154,0,154,154,0,105,154]},{"a":47904,"t":"byte","b":[128,106,106,128,106,74,128,170]},{"a":47912,"t":"byte","b":[74,128,169,134,192,233,1,192]},{"a":47920,"t":"byte","b":[250,3,240,240,3,252,245,83]},{"a":47928,"t":"byte","b":[255,245,87,127,240,7,93,0]},{"a":47936,"t":"byte","b":[0,0,253,0,3,255,0,10]},{"a":47944,"t":"byte","b":[156,0,42,106,0,42,106,0]},{"a":47952,"t":"byte","b":[170,170,2,170,170,2,154,170]},{"a":47960,"t":"byte","b":[2,154,170,2,154,154,2,154]},{"a":47968,"t":"byte","b":[169,0,170,166,0,170,170,0]},{"a":47976,"t":"byte","b":[42,170,0,10,170,0,5,169]},{"a":47984,"t":"byte","b":[0,9,85,0,10,165,0,10]},{"a":47992,"t":"byte","b":[169,0,10,166,0,10,166,0]},{"a":48000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48008,"t":"byte","b":[0,0,0,0,128,0,0,160]},{"a":48016,"t":"byte","b":[0,60,170,0,252,170,175,252]},{"a":48024,"t":"byte","b":[170,175,252,170,175,240,170,175]},{"a":48032,"t":"byte","b":[0,42,144,0,0,160,0,0]},{"a":48040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48048,"t":"byte","b":[0,0,0,64,0,0,16,0]},{"a":48056,"t":"byte","b":[0,128,0,0,128,0,0,0]},{"a":48064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48080,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48096,"t":"byte","b":[84,0,1,85,0,1,169,0]},{"a":48104,"t":"byte","b":[6,86,0,5,253,0,5,253]},{"a":48112,"t":"byte","b":[0,5,117,0,7,255,0,1]},{"a":48120,"t":"byte","b":[255,0,1,255,0,0,220,0]},{"a":48128,"l":"shape_cells_f0","c":"Fighter shape cells $F0-$FF: sixteen multicolour sprite images of 64 bytes each ($BC00-$BFFF), parts of the fighters' poses. The sprite builder ($3936-$3B0C, mirrored $3BC5-$3E7F) copies cell n from $8000 + 64 x n into the fighter's build buffer at $C040-$C93F, using the frame tables at $7AE0. The whole set at $8000-$BFFF holds cells $01-$FF; cell $00 is never copied (a frame byte of 0 leaves the slot blank).","t":"byte","b":[0,10,254,0,170,190,2,170]},{"a":48136,"t":"byte","b":[250,2,170,250,10,170,250,42]},{"a":48144,"t":"byte","b":[170,186,42,154,186,42,90,186]},{"a":48152,"t":"byte","b":[42,106,170,41,42,170,29,42]},{"a":48160,"t":"byte","b":[170,47,42,170,31,234,170,15]},{"a":48168,"t":"byte","b":[245,170,3,223,234,0,255,234]},{"a":48176,"t":"byte","b":[0,63,154,0,21,150,0,42]},{"a":48184,"t":"byte","b":[85,0,42,170,0,42,170,0]},{"a":48192,"t":"byte","b":[0,0,0,128,0,0,160,0]},{"a":48200,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":48208,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":48216,"t":"byte","b":[170,0,0,154,128,0,138,128]},{"a":48224,"t":"byte","b":[0,134,128,0,79,128,0,79]},{"a":48232,"t":"byte","b":[0,0,127,0,0,188,0,0]},{"a":48240,"t":"byte","b":[252,0,0,252,0,0,240,0]},{"a":48248,"t":"byte","b":[0,248,0,0,244,0,0,0]},{"a":48256,"t":"byte","b":[0,42,170,0,42,170,0,42]},{"a":48264,"t":"byte","b":[170,0,42,154,0,42,134,0]},{"a":48272,"t":"byte","b":[42,134,0,42,130,0,42,130]},{"a":48280,"t":"byte","b":[0,42,130,0,42,134,0,42]},{"a":48288,"t":"byte","b":[138,0,42,138,0,42,138,0]},{"a":48296,"t":"byte","b":[42,138,0,6,138,0,15,137]},{"a":48304,"t":"byte","b":[1,95,207,21,95,223,5,127]},{"a":48312,"t":"byte","b":[223,0,127,207,0,63,71,0]},{"a":48320,"t":"byte","b":[133,0,0,160,0,0,160,0]},{"a":48328,"t":"byte","b":[0,160,0,0,160,0,0,168]},{"a":48336,"t":"byte","b":[0,0,168,0,0,168,0,0]},{"a":48344,"t":"byte","b":[168,0,0,168,0,0,160,0]},{"a":48352,"t":"byte","b":[0,160,0,0,160,0,0,128]},{"a":48360,"t":"byte","b":[0,0,128,0,0,192,0,0]},{"a":48368,"t":"byte","b":[192,0,0,212,0,0,244,0]},{"a":48376,"t":"byte","b":[0,240,0,0,240,0,0,0]},{"a":48384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48416,"t":"byte","b":[84,0,1,85,0,1,169,0]},{"a":48424,"t":"byte","b":[6,86,0,5,253,0,5,253]},{"a":48432,"t":"byte","b":[0,5,117,0,7,255,0,13]},{"a":48440,"t":"byte","b":[255,0,13,255,0,3,220,0]},{"a":48448,"t":"byte","b":[0,10,254,0,42,190,0,170]},{"a":48456,"t":"byte","b":[250,2,170,250,2,170,250,10]},{"a":48464,"t":"byte","b":[170,186,10,154,186,42,154,186]},{"a":48472,"t":"byte","b":[42,106,170,42,106,170,26,42]},{"a":48480,"t":"byte","b":[170,43,42,170,31,234,170,47]},{"a":48488,"t":"byte","b":[229,170,3,254,170,0,254,170]},{"a":48496,"t":"byte","b":[0,255,155,0,63,223,0,47]},{"a":48504,"t":"byte","b":[223,0,43,239,0,41,169,0]},{"a":48512,"t":"byte","b":[0,0,0,128,0,0,160,0]},{"a":48520,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":48528,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":48536,"t":"byte","b":[106,0,0,170,0,0,154,0]},{"a":48544,"t":"byte","b":[0,78,0,0,79,0,0,127]},{"a":48552,"t":"byte","b":[0,0,191,0,0,252,0,0]},{"a":48560,"t":"byte","b":[252,0,0,252,0,0,240,0]},{"a":48568,"t":"byte","b":[0,128,0,0,160,0,0,0]},{"a":48576,"t":"byte","b":[0,42,170,0,42,170,0,42]},{"a":48584,"t":"byte","b":[170,0,42,154,0,42,102,0]},{"a":48592,"t":"byte","b":[42,134,0,42,134,0,42,134]},{"a":48600,"t":"byte","b":[0,42,134,0,42,134,0,42]},{"a":48608,"t":"byte","b":[130,0,42,130,0,10,130,0]},{"a":48616,"t":"byte","b":[10,130,0,6,66,0,3,129]},{"a":48624,"t":"byte","b":[0,23,215,5,95,215,5,127]},{"a":48632,"t":"byte","b":[215,0,255,195,0,255,67,0]},{"a":48640,"t":"byte","b":[160,0,0,160,0,0,160,0]},{"a":48648,"t":"byte","b":[0,160,0,0,160,0,0,160]},{"a":48656,"t":"byte","b":[0,0,160,0,0,160,0,0]},{"a":48664,"t":"byte","b":[160,0,0,160,0,0,160,0]},{"a":48672,"t":"byte","b":[0,160,0,0,160,0,0,160]},{"a":48680,"t":"byte","b":[0,0,144,0,0,192,0,0]},{"a":48688,"t":"byte","b":[208,0,0,245,64,0,253,64]},{"a":48696,"t":"byte","b":[0,252,0,0,252,0,0,0]},{"a":48704,"t":"byte","b":[0,10,254,0,42,190,0,170]},{"a":48712,"t":"byte","b":[250,0,170,250,2,170,250,2]},{"a":48720,"t":"byte","b":[170,186,2,170,186,10,170,186]},{"a":48728,"t":"byte","b":[10,170,170,10,170,170,10,138]},{"a":48736,"t":"byte","b":[170,10,138,170,10,138,170,10]},{"a":48744,"t":"byte","b":[74,170,14,10,170,15,6,170]},{"a":48752,"t":"byte","b":[15,9,89,15,10,85,15,234]},{"a":48760,"t":"byte","b":[166,15,234,154,3,234,102,0]},{"a":48768,"t":"byte","b":[0,0,0,128,0,0,160,0]},{"a":48776,"t":"byte","b":[0,168,0,0,168,0,0,168]},{"a":48784,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":48792,"t":"byte","b":[170,0,0,154,128,0,138,128]},{"a":48800,"t":"byte","b":[0,138,128,0,74,128,0,74]},{"a":48808,"t":"byte","b":[128,0,74,64,0,139,192,0]},{"a":48816,"t":"byte","b":[91,192,0,163,192,0,163,192]},{"a":48824,"t":"byte","b":[0,163,192,0,163,192,0,0]},{"a":48832,"t":"byte","b":[0,234,102,0,42,105,0,41]},{"a":48840,"t":"byte","b":[169,0,41,153,0,41,166,0]},{"a":48848,"t":"byte","b":[42,134,0,42,134,0,42,134]},{"a":48856,"t":"byte","b":[0,42,134,0,42,134,0,42]},{"a":48864,"t":"byte","b":[130,0,42,130,0,10,130,0]},{"a":48872,"t":"byte","b":[10,130,0,6,66,0,3,149]},{"a":48880,"t":"byte","b":[1,87,215,1,95,215,0,127]},{"a":48888,"t":"byte","b":[211,0,255,195,0,255,67,0]},{"a":48896,"t":"byte","b":[63,166,106,15,166,154,15,154]},{"a":48904,"t":"byte","b":[154,2,153,154,2,154,106,2]},{"a":48912,"t":"byte","b":[168,106,2,168,106,2,168,106]},{"a":48920,"t":"byte","b":[2,168,106,2,168,106,2,168]},{"a":48928,"t":"byte","b":[42,2,168,42,0,168,42,0]},{"a":48936,"t":"byte","b":[168,42,0,100,41,0,56,28]},{"a":48944,"t":"byte","b":[0,60,60,0,252,63,3,252]},{"a":48952,"t":"byte","b":[63,15,252,63,15,240,63,0]},{"a":48960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":48992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49008,"t":"byte","b":[0,0,0,0,0,80,0,1]},{"a":49016,"t":"byte","b":[86,0,1,86,0,6,85,0]},{"a":49024,"t":"byte","b":[0,6,86,0,6,86,0,5]},{"a":49032,"t":"byte","b":[153,0,41,166,0,169,86,0]},{"a":49040,"t":"byte","b":[171,94,2,170,250,2,170,250]},{"a":49048,"t":"byte","b":[10,170,186,10,170,170,10,154]},{"a":49056,"t":"byte","b":[170,10,138,170,10,138,170,6]},{"a":49064,"t":"byte","b":[74,170,14,10,170,15,6,170]},{"a":49072,"t":"byte","b":[15,9,89,15,10,85,15,202]},{"a":49080,"t":"byte","b":[166,3,202,154,3,234,102,0]},{"a":49088,"t":"byte","b":[0,0,0,0,0,0,128,0]},{"a":49096,"t":"byte","b":[0,160,0,0,168,0,0,168]},{"a":49104,"t":"byte","b":[0,0,170,0,0,170,0,0]},{"a":49112,"t":"byte","b":[170,128,0,154,128,0,170,128]},{"a":49120,"t":"byte","b":[0,138,128,0,74,128,0,74]},{"a":49128,"t":"byte","b":[128,0,74,64,0,139,192,0]},{"a":49136,"t":"byte","b":[91,192,0,163,192,0,163,192]},{"a":49144,"t":"byte","b":[0,163,192,0,163,192,0,0]},{"a":49152,"l":"blank_sprite","c":"Sprite pointer 0: an empty sprite (63 zero bytes; the 64th byte, which no sprite shows, is $50). A grid slot whose frame byte is 0 gets pointer 0 and so shows nothing.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[6904]},{"a":49160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":49208,"t":"byte","b":[0,0,0,0,0,0,0,80]},{"a":49216,"t":"gap","n":2304},{"a":51520,"l":"bull_sprites_c940","c":"The bull's sprite images for pointers $25-$2F ($C940-$CBFF), just past the fighters' build buffers. In the bonus round $5D = $40 makes the sprite builder use the bull's frame-table bytes as pointers, so these are shown directly, never copied. Loaded with the game and unchanged in play.","t":"byte","b":[170,170,105,170,170,105,170,169]},{"a":51528,"t":"byte","b":[153,170,169,149,170,166,85,170]},{"a":51536,"t":"byte","b":[165,105,170,86,22,170,64,1]},{"a":51544,"t":"byte","b":[170,64,0,169,0,0,164,0]},{"a":51552,"t":"byte","b":[0,164,0,0,160,0,0,164]},{"a":51560,"t":"byte","b":[0,0,164,85,64,153,133,89]},{"a":51568,"t":"byte","b":[150,133,85,134,85,149,145,69]},{"a":51576,"t":"byte","b":[85,68,0,0,1,64,0,0]},{"a":51584,"t":"byte","b":[170,170,66,154,170,66,154,170]},{"a":51592,"t":"byte","b":[72,150,170,72,86,169,9,89]},{"a":51600,"t":"byte","b":[169,9,169,169,4,160,105,0]},{"a":51608,"t":"byte","b":[128,105,0,0,26,0,0,26]},{"a":51616,"t":"byte","b":[128,0,10,128,0,10,144,0]},{"a":51624,"t":"byte","b":[10,80,0,42,80,85,105,84]},{"a":51632,"t":"byte","b":[85,36,84,85,164,81,85,97]},{"a":51640,"t":"byte","b":[81,4,81,80,1,65,64,0]},{"a":51648,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51656,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51664,"t":"byte","b":[0,2,0,0,2,0,0,42]},{"a":51672,"t":"byte","b":[0,0,105,0,10,154,0,170]},{"a":51680,"t":"byte","b":[170,10,170,170,42,169,170,170]},{"a":51688,"t":"byte","b":[171,170,170,155,234,170,105,250]},{"a":51696,"t":"byte","b":[169,90,122,169,105,106,43,105]},{"a":51704,"t":"byte","b":[86,41,169,90,42,169,154,0]},{"a":51712,"t":"byte","b":[0,0,0,10,0,0,42,128]},{"a":51720,"t":"byte","b":[0,170,128,0,170,160,0,170]},{"a":51728,"t":"byte","b":[168,0,170,170,170,170,170,170]},{"a":51736,"t":"byte","b":[170,170,170,106,170,170,154,170]},{"a":51744,"t":"byte","b":[170,154,170,170,166,170,170,166]},{"a":51752,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":51760,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":51768,"t":"byte","b":[170,170,170,106,170,170,102,0]},{"a":51776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51792,"t":"byte","b":[0,2,0,0,10,0,0,26]},{"a":51800,"t":"byte","b":[0,2,102,0,42,153,0,170]},{"a":51808,"t":"byte","b":[170,10,170,170,42,170,169,42]},{"a":51816,"t":"byte","b":[170,169,170,171,234,170,153,234]},{"a":51824,"t":"byte","b":[170,106,250,169,105,122,171,105]},{"a":51832,"t":"byte","b":[122,169,169,90,42,169,154,0]},{"a":51840,"t":"byte","b":[0,0,0,10,0,0,42,128]},{"a":51848,"t":"byte","b":[0,170,160,0,170,160,0,170]},{"a":51856,"t":"byte","b":[168,0,170,170,128,170,170,170]},{"a":51864,"t":"byte","b":[170,170,170,170,170,170,106,170]},{"a":51872,"t":"byte","b":[170,154,170,170,154,170,170,154]},{"a":51880,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":51888,"t":"byte","b":[170,170,170,170,170,169,170,170]},{"a":51896,"t":"byte","b":[169,170,170,105,170,170,102,0]},{"a":51904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51920,"t":"byte","b":[0,0,170,0,0,170,160,0]},{"a":51928,"t":"byte","b":[170,168,0,170,170,0,170,166]},{"a":51936,"t":"byte","b":[128,170,165,160,170,169,160,170]},{"a":51944,"t":"byte","b":[169,160,170,169,160,170,170,104]},{"a":51952,"t":"byte","b":[170,170,104,170,170,72,154,170]},{"a":51960,"t":"byte","b":[74,154,170,66,154,170,66,0]},{"a":51968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":51976,"t":"byte","b":[0,0,0,0,0,0,2,0]},{"a":51984,"t":"byte","b":[0,2,0,0,2,0,0,22]},{"a":51992,"t":"byte","b":[0,2,105,0,42,154,10,170]},{"a":52000,"t":"byte","b":[170,42,170,170,170,169,170,170]},{"a":52008,"t":"byte","b":[171,170,170,155,250,170,105,250]},{"a":52016,"t":"byte","b":[169,106,122,43,105,90,41,169]},{"a":52024,"t":"byte","b":[90,42,169,90,42,169,154,0]},{"a":52032,"t":"byte","b":[0,0,0,10,0,0,42,128]},{"a":52040,"t":"byte","b":[0,170,160,0,170,160,0,170]},{"a":52048,"t":"byte","b":[168,0,170,170,128,170,170,170]},{"a":52056,"t":"byte","b":[170,170,170,106,170,170,154,170]},{"a":52064,"t":"byte","b":[170,154,170,170,154,170,170,154]},{"a":52072,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":52080,"t":"byte","b":[170,170,170,170,170,166,170,170]},{"a":52088,"t":"byte","b":[166,170,170,102,170,170,102,0]},{"a":52096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":52104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":52112,"t":"byte","b":[0,0,42,128,0,170,160,0]},{"a":52120,"t":"byte","b":[170,170,0,170,170,128,170,170]},{"a":52128,"t":"byte","b":[128,170,169,160,170,169,160,170]},{"a":52136,"t":"byte","b":[169,160,170,170,96,170,170,104]},{"a":52144,"t":"byte","b":[170,170,152,170,170,152,170,170]},{"a":52152,"t":"byte","b":[154,106,170,146,106,170,146,0]},{"a":52160,"t":"byte","b":[42,165,170,42,165,166,42,145]},{"a":52168,"t":"byte","b":[166,170,145,166,250,64,102,234]},{"a":52176,"t":"byte","b":[64,105,170,64,105,169,0,106]},{"a":52184,"t":"byte","b":[36,0,166,0,0,166,0,0]},{"a":52192,"t":"byte","b":[22,0,0,6,128,0,6,8]},{"a":52200,"t":"byte","b":[0,17,0,21,85,21,85,84]},{"a":52208,"t":"byte","b":[85,85,84,85,64,84,21,0]},{"a":52216,"t":"byte","b":[2,0,0,1,0,0,1,0]},{"a":52224,"t":"gap","n":1024,"x":[5866,6063,6438]},{"a":53248,"l":"bull_sprites_d000","c":"RAM under the I/O chips, seen only by the video chip (VIC bank 3): sprite images shown directly by pointer. $D000-$D1FF, pointers $40-$47: parts of the bull.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53264,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53272,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53280,"t":"byte","b":[0,0,21,0,0,85,64,0]},{"a":53288,"t":"byte","b":[106,64,0,149,128,0,125,96]},{"a":53296,"t":"byte","b":[0,255,72,0,117,64,0,247]},{"a":53304,"t":"byte","b":[64,0,255,192,0,255,128,0]},{"a":53312,"t":"byte","b":[0,223,160,0,189,160,0,158]},{"a":53320,"t":"byte","b":[168,0,190,168,0,187,232,2]},{"a":53328,"t":"byte","b":[171,234,2,171,234,2,171,250]},{"a":53336,"t":"byte","b":[2,170,250,2,170,254,14,170]},{"a":53344,"t":"byte","b":[254,15,170,190,15,170,189,3]},{"a":53352,"t":"byte","b":[170,164,0,106,80,0,85,88]},{"a":53360,"t":"byte","b":[2,149,104,2,102,168,2,102]},{"a":53368,"t":"byte","b":[168,9,166,168,9,169,168,0]},{"a":53376,"t":"byte","b":[10,169,168,42,169,168,42,169]},{"a":53384,"t":"byte","b":[168,42,169,168,42,154,168,42]},{"a":53392,"t":"byte","b":[138,168,170,74,168,170,74,168]},{"a":53400,"t":"byte","b":[169,2,168,169,2,169,169,6]},{"a":53408,"t":"byte","b":[170,41,21,170,41,21,170,25]},{"a":53416,"t":"byte","b":[20,170,38,84,106,15,80,106]},{"a":53424,"t":"byte","b":[63,64,22,255,64,15,255,0]},{"a":53432,"t":"byte","b":[63,0,0,255,0,0,255,0]},{"a":53440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53456,"t":"byte","b":[0,0,0,0,240,0,3,240]},{"a":53464,"t":"byte","b":[0,3,240,0,3,240,0,3]},{"a":53472,"t":"byte","b":[208,0,3,228,0,143,216,0]},{"a":53480,"t":"byte","b":[47,244,0,15,252,0,15,116]},{"a":53488,"t":"byte","b":[0,63,252,0,63,252,0,63]},{"a":53496,"t":"byte","b":[220,0,62,220,0,190,249,0]},{"a":53504,"t":"byte","b":[0,190,170,0,173,170,0,153]},{"a":53512,"t":"byte","b":[170,0,166,170,0,170,170,0]},{"a":53520,"t":"byte","b":[105,170,0,105,170,0,150,170]},{"a":53528,"t":"byte","b":[0,26,170,0,26,170,0,26]},{"a":53536,"t":"byte","b":[170,0,26,170,0,22,169,0]},{"a":53544,"t":"byte","b":[37,85,0,42,86,0,42,102]},{"a":53552,"t":"byte","b":[0,41,166,0,41,169,0,41]},{"a":53560,"t":"byte","b":[169,0,169,169,0,169,169,0]},{"a":53568,"t":"byte","b":[64,0,0,128,0,0,128,0]},{"a":53576,"t":"byte","b":[0,128,0,0,192,0,0,192]},{"a":53584,"t":"byte","b":[0,0,192,0,0,192,0,0]},{"a":53592,"t":"byte","b":[192,0,0,252,0,0,188,0]},{"a":53600,"t":"byte","b":[0,188,0,0,64,0,0,128]},{"a":53608,"t":"byte","b":[0,0,128,0,0,128,0,0]},{"a":53616,"t":"byte","b":[160,0,0,160,0,0,160,0]},{"a":53624,"t":"byte","b":[0,160,0,0,160,0,0,0]},{"a":53632,"t":"byte","b":[0,170,170,0,170,154,0,170]},{"a":53640,"t":"byte","b":[134,0,170,134,2,170,6,2]},{"a":53648,"t":"byte","b":[166,1,2,169,5,2,169,21]},{"a":53656,"t":"byte","b":[2,168,21,2,168,85,2,168]},{"a":53664,"t":"byte","b":[81,2,169,65,2,169,66,1]},{"a":53672,"t":"byte","b":[169,0,0,109,0,0,61,0]},{"a":53680,"t":"byte","b":[0,253,0,0,252,0,0,240]},{"a":53688,"t":"byte","b":[0,3,240,0,3,240,0,0]},{"a":53696,"t":"byte","b":[160,0,0,165,0,0,169,64]},{"a":53704,"t":"byte","b":[0,169,80,0,169,80,0,169]},{"a":53712,"t":"byte","b":[80,0,169,80,0,169,80,0]},{"a":53720,"t":"byte","b":[169,64,0,169,64,0,169,64]},{"a":53728,"t":"byte","b":[0,169,64,0,101,64,0,85]},{"a":53736,"t":"byte","b":[0,0,253,0,0,255,0,0]},{"a":53744,"t":"byte","b":[63,0,0,0,0,0,0,0]},{"a":53752,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53760,"l":"sprites_d200","c":"Sprite images for pointers $48-$4E ($D200-$D3BF). No frame table, pointer table or immediate load in the code was found to produce these pointers; their use is not known.","t":"byte","b":[149,85,85,149,85,85,149,85]},{"a":53768,"t":"byte","b":[85,149,85,85,149,85,85,170]},{"a":53776,"t":"byte","b":[170,170,0,0,0,0,0,0]},{"a":53784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53840,"t":"byte","b":[0,64,0,0,128,0,96,0]},{"a":53848,"t":"byte","b":[0,88,0,0,88,0,0,88]},{"a":53856,"t":"byte","b":[0,0,88,0,1,88,0,1]},{"a":53864,"t":"byte","b":[96,0,1,96,0,1,96,0]},{"a":53872,"t":"byte","b":[1,96,0,5,96,0,5,128]},{"a":53880,"t":"byte","b":[4,5,128,0,1,128,0,0]},{"a":53888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53912,"t":"byte","b":[0,0,0,0,0,0,20,0]},{"a":53920,"t":"byte","b":[0,84,0,0,85,0,0,149]},{"a":53928,"t":"byte","b":[0,0,21,0,0,37,64,0]},{"a":53936,"t":"byte","b":[5,64,0,9,80,0,1,80]},{"a":53944,"t":"byte","b":[0,2,160,0,0,0,0,0]},{"a":53952,"t":"byte","b":[0,4,4,0,0,64,0,5]},{"a":53960,"t":"byte","b":[20,0,86,37,5,85,5,149]},{"a":53968,"t":"byte","b":[86,21,149,85,37,149,90,9]},{"a":53976,"t":"byte","b":[37,160,2,42,1,16,0,0]},{"a":53984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54008,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54024,"t":"byte","b":[0,0,0,0,64,0,0,80]},{"a":54032,"t":"byte","b":[0,0,84,0,0,84,0,0]},{"a":54040,"t":"byte","b":[84,0,0,148,0,0,36,0]},{"a":54048,"t":"byte","b":[0,8,0,0,0,0,0,0]},{"a":54056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54080,"t":"byte","b":[1,4,4,0,24,8,16,16]},{"a":54088,"t":"byte","b":[0,32,84,0,0,88,0,1]},{"a":54096,"t":"byte","b":[84,0,1,88,0,5,80,0]},{"a":54104,"t":"byte","b":[5,96,16,5,64,32,37,128]},{"a":54112,"t":"byte","b":[0,37,0,0,38,0,0,36]},{"a":54120,"t":"byte","b":[0,0,40,0,0,0,0,0]},{"a":54128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54152,"t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":54160,"t":"byte","b":[0,0,5,0,0,5,0,0]},{"a":54168,"t":"byte","b":[21,64,0,21,64,0,37,64]},{"a":54176,"t":"byte","b":[0,5,80,0,5,80,0,9]},{"a":54184,"t":"byte","b":[80,0,1,80,0,1,84,0]},{"a":54192,"t":"byte","b":[2,88,0,0,80,0,0,96]},{"a":54200,"t":"byte","b":[0,0,128,0,0,0,0,0]},{"a":54208,"l":"bull_sprite_4f","c":"Sprite image for pointer $4F, part of the bull (a cell in the bull's frames $3B-$4C).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54216,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54232,"t":"byte","b":[0,0,0,64,0,0,80,0]},{"a":54240,"t":"byte","b":[0,84,0,0,84,0,0,84]},{"a":54248,"t":"byte","b":[0,0,84,0,0,80,0,0]},{"a":54256,"t":"byte","b":[80,0,0,80,0,0,64,0]},{"a":54264,"t":"byte","b":[0,64,0,0,0,0,0,0]},{"a":54272,"l":"judge_sprites","c":"Sprite images $50 and $51 ($D400-$D47F): with $5C, the images judge_decision ($1F93) puts on sprites 6 and 7 over the seated judge in the backdrop when a bout is decided (pointer $5C or $50 for sprite 6, by backdrop, and $51 for sprite 7). What they look like on screen was not checked live.","t":"byte","b":[240,0,0,240,0,0,208,0]},{"a":54280,"t":"byte","b":[0,240,0,0,240,0,0,112]},{"a":54288,"t":"byte","b":[0,0,208,0,0,216,60,0]},{"a":54296,"t":"byte","b":[152,60,0,154,63,0,170,15]},{"a":54304,"t":"byte","b":[0,170,31,0,170,24,0,170]},{"a":54312,"t":"byte","b":[104,0,166,168,0,169,160,0]},{"a":54320,"t":"byte","b":[169,160,0,234,64,0,234,0]},{"a":54328,"t":"byte","b":[0,234,0,0,170,160,0,0]},{"a":54336,"t":"byte","b":[42,64,0,170,144,0,170,144]},{"a":54344,"t":"byte","b":[0,42,64,0,42,64,0,9]},{"a":54352,"t":"byte","b":[0,0,9,0,0,0,0,0]},{"a":54360,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54368,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54400,"l":"shadow_sprites","c":"Sprite images $52-$70 ($D480-$DC3F, $5C also the judge's): the fighters' lowest sprite row, used in place of built cells. The pointer table at $3B5D gives these for the shape frames drawn off the ground, and the handler on line $D9 ($2FFF/$3039/$3073/$30C5) shows them at Y $DA. Watching the pointers live through the attract mode found $52-$70 in sprites 0-5; the images are mostly flat white strips (the shadow under a jumping fighter).","t":"byte","b":[0,0,0,0,1,85,0,1]},{"a":54408,"t":"byte","b":[85,0,0,21,0,0,0,0]},{"a":54416,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54424,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54432,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54464,"t":"byte","b":[0,0,84,84,21,85,85,85]},{"a":54472,"t":"byte","b":[85,85,85,85,5,84,0,5]},{"a":54480,"t":"byte","b":[80,0,0,0,0,0,0,0]},{"a":54488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54528,"t":"byte","b":[0,1,85,21,85,85,21,85]},{"a":54536,"t":"byte","b":[85,1,85,85,21,85,85,21]},{"a":54544,"t":"byte","b":[85,85,0,1,85,0,0,0]},{"a":54552,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54560,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54568,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54576,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54584,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54592,"t":"byte","b":[85,85,0,85,85,84,85,85]},{"a":54600,"t":"byte","b":[85,85,85,84,85,64,0,85]},{"a":54608,"t":"byte","b":[0,0,84,0,0,0,0,0]},{"a":54616,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54624,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54632,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54640,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54648,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54656,"t":"byte","b":[0,0,0,0,21,85,0,21]},{"a":54664,"t":"byte","b":[85,0,21,85,0,21,85,0]},{"a":54672,"t":"byte","b":[0,85,0,0,0,0,0,0]},{"a":54680,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54688,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54696,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54720,"t":"byte","b":[21,85,84,85,85,84,85,85]},{"a":54728,"t":"byte","b":[0,85,85,85,84,21,85,80]},{"a":54736,"t":"byte","b":[1,85,0,0,0,0,0,0]},{"a":54744,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54752,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54784,"t":"byte","b":[0,1,85,21,85,85,21,85]},{"a":54792,"t":"byte","b":[85,21,85,85,5,85,85,0]},{"a":54800,"t":"byte","b":[5,85,0,0,0,0,0,0]},{"a":54808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54848,"t":"byte","b":[85,85,0,85,85,64,85,85]},{"a":54856,"t":"byte","b":[64,85,85,64,85,84,0,85]},{"a":54864,"t":"byte","b":[64,0,0,0,0,0,0,0]},{"a":54872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54912,"t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":54920,"t":"byte","b":[85,0,5,85,1,85,85,1]},{"a":54928,"t":"byte","b":[85,85,0,0,85,0,0,5]},{"a":54936,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54944,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54976,"t":"byte","b":[0,21,0,5,85,64,85,85]},{"a":54984,"t":"byte","b":[0,85,84,0,85,85,64,64]},{"a":54992,"t":"byte","b":[5,64,64,0,0,0,0,0]},{"a":55000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55008,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55064,"t":"byte","b":[0,0,0,0,0,0,0,4]},{"a":55072,"t":"byte","b":[0,0,36,0,240,36,0,252]},{"a":55080,"t":"byte","b":[168,0,56,168,0,40,168,0]},{"a":55088,"t":"byte","b":[40,168,0,42,152,0,10,152]},{"a":55096,"t":"byte","b":[0,10,168,0,2,24,0,0]},{"a":55104,"t":"byte","b":[0,21,84,85,85,85,85,85]},{"a":55112,"t":"byte","b":[85,85,85,85,21,85,85,0]},{"a":55120,"t":"byte","b":[1,85,0,0,1,0,0,0]},{"a":55128,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55168,"t":"byte","b":[0,0,0,85,85,64,85,85]},{"a":55176,"t":"byte","b":[85,85,85,85,84,0,21,85]},{"a":55184,"t":"byte","b":[64,0,85,64,0,1,64,0]},{"a":55192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55216,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55232,"t":"byte","b":[0,0,0,0,0,0,84,0]},{"a":55240,"t":"byte","b":[0,85,84,0,85,84,0,21]},{"a":55248,"t":"byte","b":[84,0,0,0,0,0,0,0]},{"a":55256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55264,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55272,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55296,"t":"byte","b":[0,5,85,5,85,85,85,85]},{"a":55304,"t":"byte","b":[85,21,85,85,0,0,85,0]},{"a":55312,"t":"byte","b":[0,21,0,0,1,0,0,0]},{"a":55320,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55352,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55360,"t":"byte","b":[85,64,0,85,85,0,85,85]},{"a":55368,"t":"byte","b":[64,0,21,80,64,5,80,80]},{"a":55376,"t":"byte","b":[0,0,80,0,0,0,0,0]},{"a":55384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55416,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55424,"l":"shadow_sprites_d880","c":"Sprite images $62-$70 ($D880-$DC3F), the second part of the fighters' extra lowest row described at $D480 (pointers from the table at $3B5D).","t":"byte","b":[21,0,0,85,84,21,85,85]},{"a":55432,"t":"byte","b":[85,85,85,85,0,21,80,0]},{"a":55440,"t":"byte","b":[5,80,0,0,0,0,0,0]},{"a":55448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55488,"t":"byte","b":[0,0,0,85,64,0,85,64]},{"a":55496,"t":"byte","b":[0,84,0,0,0,0,0,0]},{"a":55504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55528,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55536,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55544,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55552,"t":"byte","b":[0,85,85,21,85,85,85,85]},{"a":55560,"t":"byte","b":[85,21,85,85,0,1,85,0]},{"a":55568,"t":"byte","b":[0,85,0,0,21,0,0,0]},{"a":55576,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55584,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55592,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55600,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55608,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55616,"t":"byte","b":[85,64,0,85,85,84,85,85]},{"a":55624,"t":"byte","b":[84,85,85,64,85,85,84,85]},{"a":55632,"t":"byte","b":[85,84,85,64,0,0,0,0]},{"a":55640,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55648,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55656,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55664,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55672,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55680,"t":"byte","b":[21,85,84,21,85,85,0,85]},{"a":55688,"t":"byte","b":[85,85,85,85,85,84,21,85]},{"a":55696,"t":"byte","b":[64,5,0,0,0,0,0,0]},{"a":55704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55712,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55720,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55728,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55744,"t":"byte","b":[0,0,0,85,84,0,85,84]},{"a":55752,"t":"byte","b":[0,85,84,0,85,84,0,85]},{"a":55760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55784,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55808,"t":"byte","b":[0,85,85,1,85,85,1,85]},{"a":55816,"t":"byte","b":[85,1,85,85,0,21,85,0]},{"a":55824,"t":"byte","b":[1,85,0,0,0,0,0,0]},{"a":55832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55848,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55856,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55872,"t":"byte","b":[85,64,0,85,85,84,85,85]},{"a":55880,"t":"byte","b":[84,85,85,84,85,85,80,85]},{"a":55888,"t":"byte","b":[80,0,0,0,0,0,0,0]},{"a":55896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55928,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55936,"t":"byte","b":[0,84,0,1,85,80,0,85]},{"a":55944,"t":"byte","b":[85,0,21,85,1,85,85,1]},{"a":55952,"t":"byte","b":[80,1,0,0,1,0,0,0]},{"a":55960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":55992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56000,"t":"byte","b":[0,0,0,0,0,0,85,64]},{"a":56008,"t":"byte","b":[0,85,80,0,85,85,64,85]},{"a":56016,"t":"byte","b":[85,64,85,0,0,80,0,0]},{"a":56024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56040,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56072,"t":"byte","b":[21,0,21,85,0,21,85,0]},{"a":56080,"t":"byte","b":[21,84,0,0,0,0,0,0]},{"a":56088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56104,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56112,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56120,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56128,"t":"byte","b":[0,0,0,1,85,85,85,85]},{"a":56136,"t":"byte","b":[85,85,85,85,84,0,21,0]},{"a":56144,"t":"byte","b":[1,85,0,1,85,0,1,64]},{"a":56152,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56160,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56168,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56192,"t":"byte","b":[21,84,0,85,85,85,85,85]},{"a":56200,"t":"byte","b":[85,85,85,85,85,85,84,85]},{"a":56208,"t":"byte","b":[64,0,64,0,0,0,0,0]},{"a":56216,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56232,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56248,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56256,"t":"byte","b":[0,1,85,0,85,85,1,85]},{"a":56264,"t":"byte","b":[85,5,84,0,5,80,1,0]},{"a":56272,"t":"byte","b":[0,5,0,0,5,0,0,0]},{"a":56280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56304,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56320,"t":"byte","b":[85,80,0,85,85,80,85,85]},{"a":56328,"t":"byte","b":[85,85,85,84,85,0,0,84]},{"a":56336,"t":"byte","b":[0,0,64,0,0,0,0,0]},{"a":56344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56352,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56360,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56368,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56384,"l":"bull_sprites_dc40","c":"Sprite images $71-$7F ($DC40-$DFFF): parts of the bull, pointed to directly by its frames. $77 also appeared in all eight sprite pointers at once in the attract mode.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56392,"t":"byte","b":[0,0,0,0,0,0,2,0]},{"a":56400,"t":"byte","b":[0,2,0,0,2,0,0,22]},{"a":56408,"t":"byte","b":[0,2,105,0,42,154,10,170]},{"a":56416,"t":"byte","b":[170,42,170,170,170,169,170,170]},{"a":56424,"t":"byte","b":[171,170,170,155,234,170,105,234]},{"a":56432,"t":"byte","b":[169,106,250,43,105,122,41,169]},{"a":56440,"t":"byte","b":[122,42,169,90,42,169,154,0]},{"a":56448,"t":"byte","b":[0,0,0,42,0,0,170,128]},{"a":56456,"t":"byte","b":[0,170,160,0,170,160,0,170]},{"a":56464,"t":"byte","b":[168,0,170,170,170,170,170,170]},{"a":56472,"t":"byte","b":[170,170,170,106,170,170,154,170]},{"a":56480,"t":"byte","b":[170,154,170,170,154,170,170,154]},{"a":56488,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":56496,"t":"byte","b":[170,170,170,170,170,170,170,170]},{"a":56504,"t":"byte","b":[170,170,170,105,170,170,105,0]},{"a":56512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56528,"t":"byte","b":[0,0,160,0,0,170,128,0]},{"a":56536,"t":"byte","b":[170,168,0,170,170,0,170,166]},{"a":56544,"t":"byte","b":[128,170,169,128,170,169,128,170]},{"a":56552,"t":"byte","b":[169,96,170,169,96,170,169,72]},{"a":56560,"t":"byte","b":[170,169,72,170,170,72,170,170]},{"a":56568,"t":"byte","b":[74,170,170,66,170,170,66,0]},{"a":56576,"t":"byte","b":[42,170,170,42,165,166,170,165]},{"a":56584,"t":"byte","b":[166,170,145,169,170,145,165,250]},{"a":56592,"t":"byte","b":[64,105,238,0,105,169,0,89]},{"a":56600,"t":"byte","b":[20,0,21,0,0,6,0,0]},{"a":56608,"t":"byte","b":[2,32,0,2,0,0,2,128]},{"a":56616,"t":"byte","b":[21,74,5,85,90,21,85,90]},{"a":56624,"t":"byte","b":[85,85,105,21,80,101,0,0]},{"a":56632,"t":"byte","b":[164,0,0,100,0,0,80,0]},{"a":56640,"t":"byte","b":[170,169,166,170,169,166,170,169]},{"a":56648,"t":"byte","b":[154,170,170,153,170,166,85,170]},{"a":56656,"t":"byte","b":[165,105,170,86,26,170,64,6]},{"a":56664,"t":"byte","b":[169,64,1,165,64,0,153,64]},{"a":56672,"t":"byte","b":[0,81,128,0,65,128,0,65]},{"a":56680,"t":"byte","b":[144,8,84,145,85,85,100,85]},{"a":56688,"t":"byte","b":[85,106,149,1,90,149,0,65]},{"a":56696,"t":"byte","b":[128,32,16,0,128,21,0,0]},{"a":56704,"t":"byte","b":[102,170,145,105,170,145,105,106]},{"a":56712,"t":"byte","b":[144,149,90,164,84,90,168,88]},{"a":56720,"t":"byte","b":[86,168,168,85,168,160,145,168]},{"a":56728,"t":"byte","b":[130,144,104,130,144,104,2,144]},{"a":56736,"t":"byte","b":[24,2,64,26,2,64,26,130]},{"a":56744,"t":"byte","b":[64,6,82,64,6,90,150,6]},{"a":56752,"t":"byte","b":[90,149,74,90,37,86,89,21]},{"a":56760,"t":"byte","b":[85,20,64,21,1,64,4,0]},{"a":56768,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":56784,"t":"byte","b":[0,0,160,0,0,170,128,0]},{"a":56792,"t":"byte","b":[170,168,0,170,170,0,170,170]},{"a":56800,"t":"byte","b":[128,170,170,128,170,169,128,170]},{"a":56808,"t":"byte","b":[170,96,170,170,80,170,170,72]},{"a":56816,"t":"byte","b":[170,170,68,170,170,68,170,170]},{"a":56824,"t":"byte","b":[70,170,170,66,166,170,66,0]},{"a":56832,"t":"byte","b":[42,166,170,170,166,154,170,166]},{"a":56840,"t":"byte","b":[154,250,146,166,238,65,150,170]},{"a":56848,"t":"byte","b":[65,166,41,1,166,37,0,106]},{"a":56856,"t":"byte","b":[0,0,26,128,0,169,0,0]},{"a":56864,"t":"byte","b":[164,32,0,164,0,2,160,0]},{"a":56872,"t":"byte","b":[2,80,0,86,129,5,86,149]},{"a":56880,"t":"byte","b":[85,86,165,85,69,165,21,0]},{"a":56888,"t":"byte","b":[164,0,0,16,0,0,80,0]},{"a":56896,"t":"byte","b":[170,170,105,170,170,102,169,169]},{"a":56904,"t":"byte","b":[166,169,169,165,166,169,85,166]},{"a":56912,"t":"byte","b":[149,149,153,88,101,153,64,22]},{"a":56920,"t":"byte","b":[101,64,1,150,64,0,102,128]},{"a":56928,"t":"byte","b":[0,6,128,0,6,128,0,2]},{"a":56936,"t":"byte","b":[128,0,86,160,85,85,165,89]},{"a":56944,"t":"byte","b":[85,165,86,85,105,149,5,105]},{"a":56952,"t":"byte","b":[85,5,160,32,1,80,0,0]},{"a":56960,"t":"byte","b":[154,170,65,154,170,65,166,170]},{"a":56968,"t":"byte","b":[68,169,170,144,85,170,145,90]},{"a":56976,"t":"byte","b":[106,144,104,154,160,160,90,168]},{"a":56984,"t":"byte","b":[128,86,168,64,84,168,0,88]},{"a":56992,"t":"byte","b":[160,0,152,144,0,152,128,0]},{"a":57000,"t":"byte","b":[146,128,86,98,144,86,66,144]},{"a":57008,"t":"byte","b":[90,86,144,90,84,80,101,5]},{"a":57016,"t":"byte","b":[0,41,1,0,21,0,80,0]},{"a":57024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57040,"t":"byte","b":[0,0,170,0,0,170,128,0]},{"a":57048,"t":"byte","b":[170,168,0,170,170,0,170,170]},{"a":57056,"t":"byte","b":[0,170,170,128,170,170,128,170]},{"a":57064,"t":"byte","b":[170,128,170,170,128,170,170,160]},{"a":57072,"t":"byte","b":[170,170,160,170,170,32,170,170]},{"a":57080,"t":"byte","b":[40,170,170,8,170,170,8,0]},{"a":57088,"t":"byte","b":[42,165,170,42,166,166,42,166]},{"a":57096,"t":"byte","b":[166,170,166,170,170,145,154,250]},{"a":57104,"t":"byte","b":[145,154,238,145,166,186,64,102]},{"a":57112,"t":"byte","b":[22,0,105,0,0,25,0,0]},{"a":57120,"t":"byte","b":[25,32,0,37,0,0,41,2]},{"a":57128,"t":"byte","b":[0,37,0,0,36,5,80,36]},{"a":57136,"t":"byte","b":[21,85,164,85,85,165,21,85]},{"a":57144,"t":"byte","b":[145,0,2,85,0,1,64,0]},{"a":57152,"t":"byte","b":[170,170,102,170,170,102,170,169]},{"a":57160,"t":"byte","b":[166,170,169,154,170,165,101,170]},{"a":57168,"t":"byte","b":[165,85,170,86,5,170,96,1]},{"a":57176,"t":"byte","b":[169,128,0,169,0,0,169,0]},{"a":57184,"t":"byte","b":[0,105,0,0,105,0,0,41]},{"a":57192,"t":"byte","b":[0,0,42,64,0,10,161,86]},{"a":57200,"t":"byte","b":[10,164,86,82,154,86,84,169]},{"a":57208,"t":"byte","b":[90,5,5,6,137,80,5,0]},{"a":57216,"t":"byte","b":[106,170,65,106,170,72,106,169]},{"a":57224,"t":"byte","b":[72,106,165,8,90,165,2,90]},{"a":57232,"t":"byte","b":[165,2,170,149,1,170,149,66]},{"a":57240,"t":"byte","b":[106,149,65,42,149,144,42,129]},{"a":57248,"t":"byte","b":[144,42,129,96,42,64,100,170]},{"a":57256,"t":"byte","b":[0,100,168,0,88,144,0,25]},{"a":57264,"t":"byte","b":[149,85,9,149,85,69,85,150]},{"a":57272,"t":"byte","b":[66,64,1,80,0,0,5,0]},{"a":57280,"t":"byte","b":[42,165,170,42,165,166,42,145]},{"a":57288,"t":"byte","b":[102,170,144,102,250,64,102,234]},{"a":57296,"t":"byte","b":[64,105,170,64,25,169,0,26]},{"a":57304,"t":"byte","b":[36,0,6,0,0,6,0,0]},{"a":57312,"t":"byte","b":[10,0,0,10,128,0,10,8]},{"a":57320,"t":"byte","b":[0,2,0,85,86,5,85,86]},{"a":57328,"t":"byte","b":[85,85,86,85,85,22,1,64]},{"a":57336,"t":"byte","b":[10,0,0,10,0,0,10,0]},{"a":57344,"l":"bull_sprites_e000","c":"Sprite images $80-$83 ($E000-$E0FF), parts of the bull. The same bytes are font codes $00-$1F, which the game never prints, so they show as noise if rendered as characters.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57352,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57360,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57368,"t":"byte","b":[10,128,0,170,160,0,170,170]},{"a":57376,"t":"byte","b":[0,170,170,128,170,170,128,170]},{"a":57384,"t":"byte","b":[169,160,170,169,160,170,169,160]},{"a":57392,"t":"byte","b":[170,170,96,170,170,104,170,170]},{"a":57400,"t":"byte","b":[152,170,170,152,166,170,154,0]},{"a":57408,"t":"byte","b":[10,105,90,10,217,90,10,106]},{"a":57416,"t":"byte","b":[102,10,169,102,10,169,102,42]},{"a":57424,"t":"byte","b":[169,169,42,165,169,42,150,154]},{"a":57432,"t":"byte","b":[62,146,150,30,81,150,6,65]},{"a":57440,"t":"byte","b":[166,0,0,102,128,0,106,8]},{"a":57448,"t":"byte","b":[2,153,0,22,149,21,86,148]},{"a":57456,"t":"byte","b":[85,90,85,85,105,85,21,41]},{"a":57464,"t":"byte","b":[21,0,36,0,0,0,0,0]},{"a":57472,"t":"byte","b":[170,170,105,170,170,102,170,170]},{"a":57480,"t":"byte","b":[89,170,169,165,170,166,85,170]},{"a":57488,"t":"byte","b":[165,105,170,154,150,170,153,85]},{"a":57496,"t":"byte","b":[170,101,6,170,84,1,105,64]},{"a":57504,"t":"byte","b":[0,169,0,0,168,0,0,164]},{"a":57512,"t":"byte","b":[0,0,164,5,85,165,85,89]},{"a":57520,"t":"byte","b":[105,165,85,90,165,149,86,128]},{"a":57528,"t":"byte","b":[21,21,0,0,1,64,0,0]},{"a":57536,"t":"byte","b":[102,170,146,106,170,146,154,170]},{"a":57544,"t":"byte","b":[72,150,170,72,86,169,73,89]},{"a":57552,"t":"byte","b":[169,9,165,169,4,149,170,128]},{"a":57560,"t":"byte","b":[165,170,64,224,106,64,192,106]},{"a":57568,"t":"byte","b":[64,1,169,64,22,169,80,42]},{"a":57576,"t":"byte","b":[149,84,170,81,84,153,80,80]},{"a":57584,"t":"byte","b":[149,80,0,85,85,64,85,85]},{"a":57592,"t":"byte","b":[96,85,84,82,0,0,0,0]},{"a":57600,"l":"font","c":"The game's font, codes $20-$5F in ASCII order ($41 = A), used by the text panel at the top of the screen ($D018 = $39: character base $E000). It is not the ROM font: 38 of the 64 glyphs differ from the ROM's.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":57608,"t":"byte","b":[1,5,22,22,86,85,85,85]},{"a":57616,"t":"byte","b":[64,144,164,100,169,169,105,105]},{"a":57624,"t":"byte","b":[90,26,21,6,1,0,0,0]},{"a":57632,"t":"byte","b":[105,100,164,144,64,0,0,0]},{"a":57640,"t":"byte","b":[1,5,20,20,84,85,85,85]},{"a":57648,"t":"byte","b":[64,0,0,0,0,0,64,64]},{"a":57656,"t":"byte","b":[90,26,21,4,0,0,0,0]},{"a":57664,"t":"byte","b":[64,64,0,0,0,0,0,0]},{"a":57672,"t":"byte","b":[48,24,12,12,12,24,48,0]},{"a":57680,"t":"byte","b":[0,24,126,60,126,24,0,0]},{"a":57688,"t":"byte","b":[0,24,24,126,24,24,0,0]},{"a":57696,"t":"byte","b":[0,0,0,0,0,24,24,48]},{"a":57704,"t":"byte","b":[0,0,0,126,0,0,0,0]},{"a":57712,"t":"byte","b":[0,0,0,0,0,24,24,0]},{"a":57720,"t":"byte","b":[0,6,12,24,48,96,0,0]},{"a":57728,"t":"byte","b":[60,102,110,126,118,102,60,0]},{"a":57736,"t":"byte","b":[24,56,24,24,24,24,126,0]},{"a":57744,"t":"byte","b":[60,102,6,12,24,48,126,0]},{"a":57752,"t":"byte","b":[60,102,6,28,6,102,60,0]},{"a":57760,"t":"byte","b":[12,28,60,108,126,12,12,0]},{"a":57768,"t":"byte","b":[126,96,124,6,6,102,60,0]},{"a":57776,"t":"byte","b":[28,48,96,124,102,102,60,0]},{"a":57784,"t":"byte","b":[126,6,12,24,48,48,48,0]},{"a":57792,"t":"byte","b":[60,102,102,60,102,102,60,0]},{"a":57800,"t":"byte","b":[60,102,102,62,6,12,56,0]},{"a":57808,"t":"byte","b":[0,0,24,24,0,24,24,0]},{"a":57816,"t":"byte","b":[0,0,24,24,0,24,24,48]},{"a":57824,"t":"byte","b":[12,24,48,96,48,24,12,0]},{"a":57832,"t":"byte","b":[0,0,126,0,126,0,0,0]},{"a":57840,"t":"byte","b":[48,24,12,6,12,24,48,0]},{"a":57848,"t":"byte","b":[60,102,12,24,24,0,24,0]},{"a":57856,"t":"byte","b":[60,102,110,106,110,96,60,0]},{"a":57864,"t":"byte","b":[60,102,102,126,102,102,102,0]},{"a":57872,"t":"byte","b":[124,102,102,124,102,102,124,0]},{"a":57880,"t":"byte","b":[60,102,96,96,96,102,60,0]},{"a":57888,"t":"byte","b":[120,108,102,102,102,108,120,0]},{"a":57896,"t":"byte","b":[126,96,96,124,96,96,126,0]},{"a":57904,"t":"byte","b":[126,96,96,124,96,96,96,0]},{"a":57912,"t":"byte","b":[60,102,96,110,102,102,60,0]},{"a":57920,"t":"byte","b":[102,102,102,126,102,102,102,0]},{"a":57928,"t":"byte","b":[126,24,24,24,24,24,126,0]},{"a":57936,"t":"byte","b":[62,12,12,12,12,108,56,0]},{"a":57944,"t":"byte","b":[102,108,120,112,120,108,102,0]},{"a":57952,"t":"byte","b":[96,96,96,96,96,96,126,0]},{"a":57960,"t":"byte","b":[99,119,127,107,107,99,99,0]},{"a":57968,"t":"byte","b":[102,102,118,126,110,102,102,0]},{"a":57976,"t":"byte","b":[60,102,102,102,102,102,60,0]},{"a":57984,"t":"byte","b":[124,102,102,124,96,96,96,0]},{"a":57992,"t":"byte","b":[60,102,102,102,106,108,54,0]},{"a":58000,"t":"byte","b":[124,102,102,124,108,102,102,0]},{"a":58008,"t":"byte","b":[60,102,96,60,6,102,60,0]},{"a":58016,"t":"byte","b":[126,24,24,24,24,24,24,0]},{"a":58024,"t":"byte","b":[102,102,102,102,102,102,60,0]},{"a":58032,"t":"byte","b":[102,102,102,102,102,60,24,0]},{"a":58040,"t":"byte","b":[99,99,107,107,127,119,99,0]},{"a":58048,"t":"byte","b":[102,102,60,24,60,102,102,0]},{"a":58056,"t":"byte","b":[102,102,102,60,24,24,24,0]},{"a":58064,"t":"byte","b":[126,6,12,24,48,96,126,0]},{"a":58072,"t":"byte","b":[124,96,96,96,96,96,124,0]},{"a":58080,"t":"byte","b":[0,96,48,24,12,6,0,0]},{"a":58088,"t":"byte","b":[62,6,6,6,6,6,62,0]},{"a":58096,"t":"byte","b":[24,60,102,66,0,0,0,0]},{"a":58104,"t":"byte","b":[0,0,0,0,0,0,0,255]},{"a":58112,"l":"bull_sprites_e300","c":"Sprite images $8C-$96 ($E300-$E5BF), parts of the bull; the bytes are also font codes $60-$B7, never printed. Pointers $84-$8B ($E100-$E2FF) are the font and are not used as sprites.","t":"byte","b":[170,170,105,170,170,105,170,169]},{"a":58120,"t":"byte","b":[153,170,169,149,170,166,85,170]},{"a":58128,"t":"byte","b":[165,105,170,86,22,170,64,1]},{"a":58136,"t":"byte","b":[170,64,0,169,0,0,164,0]},{"a":58144,"t":"byte","b":[0,164,0,0,160,0,0,164]},{"a":58152,"t":"byte","b":[0,0,168,5,85,105,149,89]},{"a":58160,"t":"byte","b":[90,149,85,86,85,149,81,64]},{"a":58168,"t":"byte","b":[21,144,0,5,65,64,0,0]},{"a":58176,"t":"byte","b":[170,170,66,154,170,66,154,170]},{"a":58184,"t":"byte","b":[72,150,170,72,86,169,73,89]},{"a":58192,"t":"byte","b":[169,9,169,169,4,161,170,128]},{"a":58200,"t":"byte","b":[129,170,64,1,170,64,0,106]},{"a":58208,"t":"byte","b":[64,0,105,72,0,105,65,0]},{"a":58216,"t":"byte","b":[105,128,1,161,130,81,161,129]},{"a":58224,"t":"byte","b":[85,161,128,81,161,96,86,129]},{"a":58232,"t":"byte","b":[96,22,148,82,6,128,0,0]},{"a":58240,"t":"byte","b":[0,1,106,0,22,170,0,170]},{"a":58248,"t":"byte","b":[170,2,170,170,10,250,170,10]},{"a":58256,"t":"byte","b":[158,170,10,167,170,37,170,154]},{"a":58264,"t":"byte","b":[41,169,90,42,169,154,170,165]},{"a":58272,"t":"byte","b":[102,170,150,106,170,153,154,185]},{"a":58280,"t":"byte","b":[150,150,230,89,165,214,101,106]},{"a":58288,"t":"byte","b":[217,149,101,102,85,166,85,6]},{"a":58296,"t":"byte","b":[85,20,1,80,0,1,64,0]},{"a":58304,"t":"byte","b":[170,106,170,170,170,170,170,154]},{"a":58312,"t":"byte","b":[166,170,166,166,170,165,154,170]},{"a":58320,"t":"byte","b":[105,154,170,101,154,170,166,106]},{"a":58328,"t":"byte","b":[106,166,90,170,154,90,170,166]},{"a":58336,"t":"byte","b":[86,90,165,102,149,169,102,169]},{"a":58344,"t":"byte","b":[169,85,165,105,102,105,105,105]},{"a":58352,"t":"byte","b":[170,90,149,149,86,133,85,85]},{"a":58360,"t":"byte","b":[64,0,5,64,0,0,0,0]},{"a":58368,"t":"byte","b":[170,170,0,170,170,0,170,170]},{"a":58376,"t":"byte","b":[128,154,106,128,153,106,160,154]},{"a":58384,"t":"byte","b":[170,160,153,170,160,105,106,152]},{"a":58392,"t":"byte","b":[90,106,152,86,90,138,101,86]},{"a":58400,"t":"byte","b":[134,101,86,162,149,90,162,85]},{"a":58408,"t":"byte","b":[170,146,150,169,82,106,165,130]},{"a":58416,"t":"byte","b":[90,85,137,105,85,164,41,1]},{"a":58424,"t":"byte","b":[80,20,0,84,0,0,20,0]},{"a":58432,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58480,"t":"byte","b":[0,0,0,40,0,0,170,165]},{"a":58488,"t":"byte","b":[85,154,170,170,166,170,170,0]},{"a":58496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58520,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58528,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58536,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58544,"t":"byte","b":[0,0,0,0,0,0,80,0]},{"a":58552,"t":"byte","b":[0,166,160,0,170,168,0,0]},{"a":58560,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58568,"t":"byte","b":[0,0,0,0,0,0,0,4]},{"a":58576,"t":"byte","b":[0,0,4,0,0,1,0,0]},{"a":58584,"t":"byte","b":[0,64,0,0,64,0,1,0]},{"a":58592,"t":"byte","b":[0,20,0,0,64,0,0,64]},{"a":58600,"t":"byte","b":[0,0,16,0,0,5,0,0]},{"a":58608,"t":"byte","b":[0,64,0,0,16,0,0,16]},{"a":58616,"t":"byte","b":[2,1,64,6,4,0,26,0]},{"a":58624,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58632,"t":"byte","b":[0,4,0,0,4,0,0,16]},{"a":58640,"t":"byte","b":[0,0,64,0,0,64,0,0]},{"a":58648,"t":"byte","b":[16,0,0,5,0,0,0,64]},{"a":58656,"t":"byte","b":[0,0,64,0,1,0,0,20]},{"a":58664,"t":"byte","b":[0,0,64,0,0,64,0,0]},{"a":58672,"t":"byte","b":[16,0,0,5,0,0,0,64]},{"a":58680,"t":"byte","b":[2,0,64,6,1,0,26,0]},{"a":58688,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58696,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58704,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58712,"t":"byte","b":[0,0,0,0,0,2,0,0]},{"a":58720,"t":"byte","b":[9,8,0,42,0,0,170,0]},{"a":58728,"t":"byte","b":[2,170,32,42,170,0,170,170]},{"a":58736,"t":"byte","b":[2,169,170,130,171,90,2,154]},{"a":58744,"t":"byte","b":[246,10,170,94,138,170,154,0]},{"a":58752,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58768,"t":"byte","b":[0,0,0,0,0,10,0,0]},{"a":58776,"t":"byte","b":[170,128,0,170,160,2,170,170]},{"a":58784,"t":"byte","b":[170,106,170,170,154,170,170,166]},{"a":58792,"t":"byte","b":[170,170,169,170,170,169,170,170]},{"a":58800,"t":"byte","b":[169,170,170,170,170,170,170,170]},{"a":58808,"t":"byte","b":[170,170,170,153,170,170,153,0]},{"a":58816,"l":"sprites_e5c0","c":"$E5C0-$E63F, sprite pointers $97-$98: a shape in the first 64 bytes and a run of $55 bytes. Nothing found points here; their use is not known.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":58840,"t":"byte","b":[10,128,0,170,160,0,170,170]},{"a":58848,"t":"byte","b":[0,170,170,128,170,170,128,170]},{"a":58856,"t":"byte","b":[169,160,170,169,160,170,169,160]},{"a":58864,"t":"byte","b":[170,170,96,170,170,104,170,170]},{"a":58872,"t":"byte","b":[152,170,170,152,166,170,154,0]},{"a":58880,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58888,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58896,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58904,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58912,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58920,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58928,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58936,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":58944,"t":"gap","n":3840},{"a":62784,"l":"speech_sample_table","c":"Speech sample table: four 4-byte entries, each the start and end offset of a sample from $F540 (read by speech_start at $3198-$31B3). Sample 0 $F580-$F662, sample 1 $F663-$F978, sample 2 $F979-$FCD2, sample 3 $FED3-$FFDC.","t":"byte","b":[64],"x":[7981,12696]},{"a":62785,"l":"speech_sample_table_1","c":"speech_sample_table read one byte on: speech_start takes the start offset's high byte from $F541,Y ($319F).","t":"byte","b":[0],"x":[12703]},{"a":62786,"l":"speech_sample_table_2","c":"speech_sample_table read two bytes on: the end offset's low byte, $F542,Y ($31A7).","t":"byte","b":[35],"x":[12711]},{"a":62787,"l":"speech_sample_table_3","c":"speech_sample_table read three bytes on: the end offset's high byte, $F543,Y ($31AE).","t":"byte","b":[1,35,1,57,4,57,4,147],"x":[12718]},{"a":62795,"t":"byte","b":[7,147,9,157,10]},{"a":62800,"l":"speech_table_gap","c":"48 bytes between the sample table and sample 0's data. Nothing reads them: speech_start reads only $F540-$F54F, and the first sample starts at $F580.","t":"byte","b":[189,12,57,77,187,19,50,88]},{"a":62808,"t":"byte","b":[175,8,4,16,56,66,188,18]},{"a":62816,"t":"byte","b":[56,58,17,9,180,27,53,56]},{"a":62824,"t":"byte","b":[11,4,179,31,54,91,187,32]},{"a":62832,"t":"byte","b":[47,65,189,55,52,61,189,48]},{"a":62840,"t":"byte","b":[54,54,195,52,53,55,184,16]},{"a":62848,"l":"speech_sample0","c":"Speech sample 0, $F580-$F662: one byte per volume flip, each indexing the period tables at $0200/$0300. Started by speech_say_0 ($3158). The RAM sits under the bitmap's floor rows, whose four colours are all yellow, so it never shows.","t":"byte","b":[10,53,8,47,23,117,40,136]},{"a":62856,"t":"byte","b":[7,33,16,179,12,87,56,44]},{"a":62864,"t":"byte","b":[29,38,10,14,10,14,27,17]},{"a":62872,"t":"byte","b":[16,22,8,7,9,6,5,109]},{"a":62880,"t":"byte","b":[167,200,190,230,191,237,195,4]},{"a":62888,"t":"byte","b":[13,10,11,5,8,56,6,19]},{"a":62896,"t":"byte","b":[12,230,13,64,52,8,67,11]},{"a":62904,"t":"byte","b":[14,5,25,21,60,9,6,12]},{"a":62912,"t":"byte","b":[39,41,27,99,17,194,18,16]},{"a":62920,"t":"byte","b":[10,73,8,10,14,10,47,10]},{"a":62928,"t":"byte","b":[5,7,13,9,18,4,31,63]},{"a":62936,"t":"byte","b":[6,85,4,34,9,6,4,38]},{"a":62944,"t":"byte","b":[13,10,16,5,16,4,51,21]},{"a":62952,"t":"byte","b":[24,14,17,4,23,18,7,17]},{"a":62960,"t":"byte","b":[4,68,9,185,14,101,23,11]},{"a":62968,"t":"byte","b":[22,30,16,5,31,12,30,5]},{"a":62976,"t":"byte","b":[56,42,12,16,15,24,14,74]},{"a":62984,"t":"byte","b":[12,13,6,30,11,29,11,68]},{"a":62992,"t":"byte","b":[10,22,16,32,7,19,16,32]},{"a":63000,"t":"byte","b":[41,32,7,14,6,15,9,17]},{"a":63008,"t":"byte","b":[29,18,14,17,8,32,11,16]},{"a":63016,"t":"byte","b":[13,12,8,4,16,30,10,61]},{"a":63024,"t":"byte","b":[5,16,17,77,31,48,5,19]},{"a":63032,"t":"byte","b":[29,44,9,10,9,10,15,31]},{"a":63040,"t":"byte","b":[22,40,16,13,11,14,8,12]},{"a":63048,"t":"byte","b":[14,37,14,19,5,8,20,58]},{"a":63056,"t":"byte","b":[9,34,14,12,7,14,7,9]},{"a":63064,"t":"byte","b":[4,13,11,45,9,4,17,42]},{"a":63072,"t":"byte","b":[27,49,9]},{"a":63075,"l":"speech_sample1","c":"Speech sample 1, $F663-$F978, period indices like sample 0's; started by speech_say_1 ($315E).","t":"byte","b":[4,14,7,12,109,37,77,47]},{"a":63083,"t":"byte","b":[77,46,79,45,72,45,93,46]},{"a":63091,"t":"byte","b":[49,9,72,25,77,54,74,45]},{"a":63099,"t":"byte","b":[85,45,73,50,84,43,72,8]},{"a":63107,"t":"byte","b":[154,57,88,40,81,47,79,46]},{"a":63115,"t":"byte","b":[76,46,74,55,90,49,118,17]},{"a":63123,"t":"byte","b":[91,65,74,44,83,45,78,48]},{"a":63131,"t":"byte","b":[81,45,123,22,102,59,86,43]},{"a":63139,"t":"byte","b":[83,48,84,47,85,45,61,24]},{"a":63147,"t":"byte","b":[155,60,94,33,89,46,65,13]},{"a":63155,"t":"byte","b":[4,42,90,36,4,4,146,45]},{"a":63163,"t":"byte","b":[72,50,81,49,87,49,58,27]},{"a":63171,"t":"byte","b":[6,6,136,57,84,42,89,47]},{"a":63179,"t":"byte","b":[77,49,86,45,74,55,76,13]},{"a":63187,"t":"byte","b":[34,4,129,50,83,44,80,49]},{"a":63195,"t":"byte","b":[79,54,71,48,118,49,93,43]},{"a":63203,"t":"byte","b":[90,48,76,47,92,45,74,49]},{"a":63211,"t":"byte","b":[84,49,82,50,126,39,69,31]},{"a":63219,"t":"byte","b":[4,16,113,43,79,52,88,42]},{"a":63227,"t":"byte","b":[77,50,93,49,70,50,105,50]},{"a":63235,"t":"byte","b":[84,49,90,49,79,43,93,48]},{"a":63243,"t":"byte","b":[78,48,98,46,72,51,91,52]},{"a":63251,"t":"byte","b":[77,49,98,49,80,47,91,49]},{"a":63259,"t":"byte","b":[83,46,88,45,78,49,87,52]},{"a":63267,"t":"byte","b":[75,44,98,49,66,50,97,48]},{"a":63275,"t":"byte","b":[68,54,99,51,80,44,94,52]},{"a":63283,"t":"byte","b":[74,47,92,49,73,50,91,49]},{"a":63291,"t":"byte","b":[66,49,101,49,71,44,103,47]},{"a":63299,"t":"byte","b":[70,47,106,46,64,49,105,46]},{"a":63307,"t":"byte","b":[68,51,103,44,70,57,93,45]},{"a":63315,"t":"byte","b":[72,53,94,47,69,53,94,49]},{"a":63323,"t":"byte","b":[65,49,87,54,75,47,117,46]},{"a":63331,"t":"byte","b":[59,49,108,46,64,44,112,47]},{"a":63339,"t":"byte","b":[71,48,102,48,68,52,96,47]},{"a":63347,"t":"byte","b":[73,49,95,48,71,49,98,49]},{"a":63355,"t":"byte","b":[66,51,97,49,66,51,98,48]},{"a":63363,"t":"byte","b":[67,48,105,47,70,45,110,47]},{"a":63371,"t":"byte","b":[65,45,117,46,60,49,114,45]},{"a":63379,"t":"byte","b":[62,53,106,45,66,49,111,46]},{"a":63387,"t":"byte","b":[60,48,122,46,59,61,110,40]},{"a":63395,"t":"byte","b":[69,57,100,44,73,52,100,44]},{"a":63403,"t":"byte","b":[71,51,101,49,72,49,105,49]},{"a":63411,"t":"byte","b":[64,53,107,46,62,54,109,47]},{"a":63419,"t":"byte","b":[59,63,110,45,64,51,113,47]},{"a":63427,"t":"byte","b":[65,46,123,43,59,50,121,45]},{"a":63435,"t":"byte","b":[63,49,116,45,60,53,119,45]},{"a":63443,"t":"byte","b":[62,56,115,47,59,47,129,44]},{"a":63451,"t":"byte","b":[55,54,128,42,58,49,129,43]},{"a":63459,"t":"byte","b":[59,47,49,9,66,39,53,46]},{"a":63467,"t":"byte","b":[55,13,67,40,53,47,55,17]},{"a":63475,"t":"byte","b":[67,39,53,46,58,21,68,40]},{"a":63483,"t":"byte","b":[51,43,50,16,70,39,49,47]},{"a":63491,"t":"byte","b":[56,19,69,41,64,26,55,23]},{"a":63499,"t":"byte","b":[72,40,51,37,53,24,71,37]},{"a":63507,"t":"byte","b":[52,14,68,39,75,41,66,12]},{"a":63515,"t":"byte","b":[173,44,54,55,131,45,50,53]},{"a":63523,"t":"byte","b":[140,46,50,49,67,20,59,45]},{"a":63531,"t":"byte","b":[51,45,70,28,62,40,47,30]},{"a":63539,"t":"byte","b":[96,27,73,44,171,6,75,45]},{"a":63547,"t":"byte","b":[74,33,150,47,66,46,64,22]},{"a":63555,"t":"byte","b":[58,45,58,44,75,31,59,59]},{"a":63563,"t":"byte","b":[155,27,68,52,52,41,65,25]},{"a":63571,"t":"byte","b":[73,48,62,39,60,26,67,47]},{"a":63579,"t":"byte","b":[52,43,66,33,66,45,57,29]},{"a":63587,"t":"byte","b":[83,22,74,43,60,40,64,23]},{"a":63595,"t":"byte","b":[72,43,62,42,64,24,67,47]},{"a":63603,"t":"byte","b":[56,51,62,18,67,48,61,47]},{"a":63611,"t":"byte","b":[68,20,67,49,66,39,59,23]},{"a":63619,"t":"byte","b":[68,47,63,44,58,19,71,43]},{"a":63627,"t":"byte","b":[59,44,60,20,72,41,57,48]},{"a":63635,"t":"byte","b":[60,22,65,43,84,27,59,27]},{"a":63643,"t":"byte","b":[60,42,88,25,63,23,59,49]},{"a":63651,"t":"byte","b":[84,30,61,29,60,49,71,37]},{"a":63659,"t":"byte","b":[58,24,64,47,65,40,55,23]},{"a":63667,"t":"byte","b":[66,41,77,34,62,25,61,41]},{"a":63675,"t":"byte","b":[92,13,69,17,62,41,93,32]},{"a":63683,"t":"byte","b":[60,20,55,42,29,12,54,22]},{"a":63691,"t":"byte","b":[62,27,56,58,11,4,58,34]},{"a":63699,"t":"byte","b":[51,24,61,41,91,31,53,20]},{"a":63707,"t":"byte","b":[61,39,92,32,57,21,57,38]},{"a":63715,"t":"byte","b":[36,8,64,7,70,22,61,44]},{"a":63723,"t":"byte","b":[89,33,60,24,58,40,86,29]},{"a":63731,"t":"byte","b":[67,26,60,53,70,30,69,28]},{"a":63739,"t":"byte","b":[58,54,69,30,68,32,61,49]},{"a":63747,"t":"byte","b":[71,35,72,22,64,48,69,33]},{"a":63755,"t":"byte","b":[83,19,66,43,61,29,104,21]},{"a":63763,"t":"byte","b":[63,44,89,35,80,16,59,47]},{"a":63771,"t":"byte","b":[69,48,87,25,63,46,60,44]},{"a":63779,"t":"byte","b":[81,41,66,47,55,24,138,7]},{"a":63787,"t":"byte","b":[75,49,59,38,87,9,91,58]},{"a":63795,"t":"byte","b":[56,35,190,63,54,5,147,15]},{"a":63803,"t":"byte","b":[63,55,188,66,72,45,190,37]},{"a":63811,"t":"byte","b":[57,54,197,60,102,28,180,7]},{"a":63819,"t":"byte","b":[81,58,198,61,98,40,75,10]},{"a":63827,"t":"byte","b":[92,24,92,48,176,24,29,49]},{"a":63835,"t":"byte","b":[80,42,216,52,183,53,66,46]},{"a":63843,"t":"byte","b":[182,62,68,47,181,28,9,5]},{"a":63851,"t":"byte","b":[45,59,189,33,52,57,190,9]},{"a":63859,"t":"byte","b":[63,63,190,15,60,60]},{"a":63865,"l":"speech_sample2","c":"Speech sample 2, $F979-$FCD2, period indices like sample 0's; started by speech_say_2 ($3164).","t":"byte","b":[73,20,64,32,121,57,89,107]},{"a":63873,"t":"byte","b":[116,53,102,93,105,59,106,74]},{"a":63881,"t":"byte","b":[102,62,89,66,116,91,52,45]},{"a":63889,"t":"byte","b":[153,70,15,26,192,78,113,50]},{"a":63897,"t":"byte","b":[52,59,109,31,37,35,24,49]},{"a":63905,"t":"byte","b":[115,102,149,49,91,47,57,33]},{"a":63913,"t":"byte","b":[13,49,125,99,108,34,52,67]},{"a":63921,"t":"byte","b":[102,153,75,6,51,80,49,19]},{"a":63929,"t":"byte","b":[42,31,42,62,68,41,77,16]},{"a":63937,"t":"byte","b":[4,34,43,39,109,34,57,49]},{"a":63945,"t":"byte","b":[92,52,51,44,100,32,43,48]},{"a":63953,"t":"byte","b":[47,5,64,20,44,44,34,40]},{"a":63961,"t":"byte","b":[41,24,52,34,19,52,40,28]},{"a":63969,"t":"byte","b":[48,36,48,40,34,14,58,40]},{"a":63977,"t":"byte","b":[51,44,29,8,65,43,46,48]},{"a":63985,"t":"byte","b":[38,6,57,42,52,49,56,12]},{"a":63993,"t":"byte","b":[30,37,48,55,101,37,44,49]},{"a":64001,"t":"byte","b":[45,22,41,23,56,46,50,9]},{"a":64009,"t":"byte","b":[34,38,60,44,105,47,51,55]},{"a":64017,"t":"byte","b":[67,23,18,21,58,75,56,21]},{"a":64025,"t":"byte","b":[53,29,25,51,49,31,97,53]},{"a":64033,"t":"byte","b":[49,29,98,69,59,27,70,11]},{"a":64041,"t":"byte","b":[21,54,51,31,86,83,51,33]},{"a":64049,"t":"byte","b":[106,58,45,37,89,61,53,40]},{"a":64057,"t":"byte","b":[86,55,62,45,73,58,61,43]},{"a":64065,"t":"byte","b":[89,56,51,40,74,25,7,52]},{"a":64073,"t":"byte","b":[50,29,58,24,31,43,48,33]},{"a":64081,"t":"byte","b":[58,7,43,49,47,40,90,60]},{"a":64089,"t":"byte","b":[50,39,89,59,49,42,97,56]},{"a":64097,"t":"byte","b":[49,39,68,26,10,49,51,31]},{"a":64105,"t":"byte","b":[58,24,25,44,47,36,50,25]},{"a":64113,"t":"byte","b":[31,43,45,36,48,27,37,38]},{"a":64121,"t":"byte","b":[44,33,78,15,33,45,51,35]},{"a":64129,"t":"byte","b":[76,40,33,36,44,31,51,40]},{"a":64137,"t":"byte","b":[42,30,44,31,45,37,44,33]},{"a":64145,"t":"byte","b":[44,34,48,36,39,36,44,34]},{"a":64153,"t":"byte","b":[49,41,36,36,49,34,79,41]},{"a":64161,"t":"byte","b":[24,38,48,29,56,37,34,36]},{"a":64169,"t":"byte","b":[44,30,49,34,37,37,44,34]},{"a":64177,"t":"byte","b":[49,30,39,35,44,35,50,38]},{"a":64185,"t":"byte","b":[33,36,49,33,78,44,29,37]},{"a":64193,"t":"byte","b":[44,30,58,40,43,33,42,30]},{"a":64201,"t":"byte","b":[49,40,39,34,41,31,47,33]},{"a":64209,"t":"byte","b":[41,33,42,35,50,38,38,33]},{"a":64217,"t":"byte","b":[45,33,71,39,37,35,46,34]},{"a":64225,"t":"byte","b":[57,49,42,27,45,29,54,35]},{"a":64233,"t":"byte","b":[38,33,41,29,48,37,39,34]},{"a":64241,"t":"byte","b":[41,33,46,35,42,29,43,28]},{"a":64249,"t":"byte","b":[39,24,23,19,38,32,49,32]},{"a":64257,"t":"byte","b":[72,43,38,37,43,30,49,52]},{"a":64265,"t":"byte","b":[38,28,46,26,57,35,36,34]},{"a":64273,"t":"byte","b":[42,32,45,37,40,31,43,31]},{"a":64281,"t":"byte","b":[48,47,36,29,46,23,79,33]},{"a":64289,"t":"byte","b":[38,36,42,33,57,43,34,26]},{"a":64297,"t":"byte","b":[45,28,49,42,40,29,43,31]},{"a":64305,"t":"byte","b":[43,51,39,32,44,32,51,36]},{"a":64313,"t":"byte","b":[37,31,43,28,58,41,39,29]},{"a":64321,"t":"byte","b":[49,34,69,35,24,41,39,34]},{"a":64329,"t":"byte","b":[47,38,39,31,45,31,50,41]},{"a":64337,"t":"byte","b":[42,29,46,33,72,39,31,34]},{"a":64345,"t":"byte","b":[41,33,48,41,43,26,47,28]},{"a":64353,"t":"byte","b":[50,36,42,27,44,31,53,46]},{"a":64361,"t":"byte","b":[38,31,43,33,53,38,40,33]},{"a":64369,"t":"byte","b":[44,31,50,44,40,28,49,29]},{"a":64377,"t":"byte","b":[65,42,25,40,44,29,53,32]},{"a":64385,"t":"byte","b":[44,29,44,34,47,46,43,28]},{"a":64393,"t":"byte","b":[46,34,59,38,38,32,42,33]},{"a":64401,"t":"byte","b":[49,37,40,28,46,29,50,38]},{"a":64409,"t":"byte","b":[42,29,43,29,73,35,30,37]},{"a":64417,"t":"byte","b":[41,34,53,35,38,30,45,28]},{"a":64425,"t":"byte","b":[54,44,37,27,49,30,71,34]},{"a":64433,"t":"byte","b":[33,37,40,34,50,36,39,30]},{"a":64441,"t":"byte","b":[46,31,50,35,36,29,44,29]},{"a":64449,"t":"byte","b":[62,38,34,31,41,26,78,30]},{"a":64457,"t":"byte","b":[33,33,43,29,66,37,35,27]},{"a":64465,"t":"byte","b":[48,26,73,34,28,41,43,32]},{"a":64473,"t":"byte","b":[49,34,32,35,44,31,51,35]},{"a":64481,"t":"byte","b":[36,31,42,28,83,26,25,35]},{"a":64489,"t":"byte","b":[48,19,92,33,22,37,44,30]},{"a":64497,"t":"byte","b":[66,37,33,26,50,29,56,38]},{"a":64505,"t":"byte","b":[31,32,44,32,48,34,38,29]},{"a":64513,"t":"byte","b":[43,30,55,43,36,30,44,25]},{"a":64521,"t":"byte","b":[86,25,23,39,42,26,49,39]},{"a":64529,"t":"byte","b":[7,7,29,35,46,24,78,40]},{"a":64537,"t":"byte","b":[22,40,42,33,56,32,29,40]},{"a":64545,"t":"byte","b":[46,27,60,35,34,29,46,25]},{"a":64553,"t":"byte","b":[76,30,32,37,42,27,72,31]},{"a":64561,"t":"byte","b":[26,38,45,25,53,44,35,29]},{"a":64569,"t":"byte","b":[49,27,64,44,26,38,42,29]},{"a":64577,"t":"byte","b":[65,31,26,39,43,26,62,39]},{"a":64585,"t":"byte","b":[35,29,47,27,69,36,30,37]},{"a":64593,"t":"byte","b":[41,31,61,30,28,41,44,28]},{"a":64601,"t":"byte","b":[54,38,41,29,45,28,75,37]},{"a":64609,"t":"byte","b":[27,38,43,26,73,19,32,40]},{"a":64617,"t":"byte","b":[44,25,66,39,36,27,48,28]},{"a":64625,"t":"byte","b":[76,36,29,32,37,33,49,36]},{"a":64633,"t":"byte","b":[50,38,47,30,53,39,37,31]},{"a":64641,"t":"byte","b":[39,31,66,38,26,39,42,27]},{"a":64649,"t":"byte","b":[74,18,45,39,45,28,59,39]},{"a":64657,"t":"byte","b":[37,28,45,27,75,32,23,36]},{"a":64665,"t":"byte","b":[43,28,50,44,49,35,48,34]},{"a":64673,"t":"byte","b":[55,33,30,30,42,27,42,70]},{"a":64681,"t":"byte","b":[34,33,47,30,64,34,34,35]},{"a":64689,"t":"byte","b":[44,33,47,32,59,41,45,34]},{"a":64697,"t":"byte","b":[60,31,26,34,42,26,54,49]},{"a":64705,"t":"byte","b":[31,34,48,24,63,40,40,28]},{"a":64713,"t":"byte","b":[45,30,51,37,31,35,44,26]},{"a":64721,"t":"byte","b":[49,30]},{"a":64723,"t":"gap","n":512},{"a":65235,"l":"speech_sample3","c":"Speech sample 3, $FED3-$FFDC, period indices like sample 0's; started by speech_say_3 ($316A). It ends just below the hardware vectors at $FFFA.","t":"byte","b":[193,14,73,28,153,65,6,11]},{"a":65243,"t":"byte","b":[237,52,5,40,233,43,158,31]},{"a":65251,"t":"byte","b":[49,87,70,14,146,25,176,18]},{"a":65259,"t":"byte","b":[52,57,84,18,69,5,19,12]},{"a":65267,"t":"byte","b":[238,12,89,19,86,48,69,45]},{"a":65275,"t":"byte","b":[90,67,72,37,62,51,68,8]},{"a":65283,"t":"byte","b":[11,20,9,36,87,57,70,58]},{"a":65291,"t":"byte","b":[105,19,4,6,55,16,13,10]},{"a":65299,"t":"byte","b":[28,21,48,19,4,49,56,11]},{"a":65307,"t":"byte","b":[222,163,234,44,36,62,65,13]},{"a":65315,"t":"byte","b":[47,14,7,16,172,77,35,59]},{"a":65323,"t":"byte","b":[175,13,7,11,4,77,57,33]},{"a":65331,"t":"byte","b":[234,9,150,21,48,17,233,43]},{"a":65339,"t":"byte","b":[221,43,241,13,235,16,76,34]},{"a":65347,"t":"byte","b":[148,76,66,41,93,118,107,25]},{"a":65355,"t":"byte","b":[49,22,4,30,57,9,10,11]},{"a":65363,"t":"byte","b":[58,56,56,62,75,43,4,9]},{"a":65371,"t":"byte","b":[26,9,52,32,80,17,9,8]},{"a":65379,"t":"byte","b":[10,12,9,7,81,14,8,58]},{"a":65387,"t":"byte","b":[135,77,72,37,124,56,112,78]},{"a":65395,"t":"byte","b":[152,77,228,5,4,58,7,77]},{"a":65403,"t":"byte","b":[14,4,113,4,101,29,73,31]},{"a":65411,"t":"byte","b":[115,24,5,52,55,11,128,12]},{"a":65419,"t":"byte","b":[70,20,115,34,13,10,87,13]},{"a":65427,"t":"byte","b":[204,8,8,59,85,49,184,36]},{"a":65435,"t":"byte","b":[53,9,179,56,9,18,195,61]},{"a":65443,"t":"byte","b":[158,11,7,12,66,78,180,44]},{"a":65451,"t":"byte","b":[60,9,8,12,132,35,39,20]},{"a":65459,"t":"byte","b":[143,64,105,25,115,28,39,29]},{"a":65467,"t":"byte","b":[128,54,45,32,81,20,81,56]},{"a":65475,"t":"byte","b":[35,19,62,39,16,30,179,128]},{"a":65483,"t":"byte","b":[180,32,9,55,89,54,235,6]},{"a":65491,"t":"byte","b":[90,36,183,7,56,12,230,54]},{"a":65499,"t":"byte","b":[96,5]},{"a":65501,"t":"gap","n":29},{"a":65530,"l":"hw_vectors","c":"The 6510's hardware vectors in the RAM under the KERNAL: NMI $2FF2 (written at $1973), RESET $1990 (an RTI, $1964) and IRQ, which each raster handler rewrites for the next one in the chain.","t":"word","b":[242,47,144,25,76,46],"d":[12274,6544,11852],"x":[6515]}]}