{"schema":1,"platform":"c64","game":"darkman","part":"level3","title":"Darkman","build":"PAL original, two-sided G64; level 1 load in play","symbols_sha256":"a15b9394e233d91ea23fca1ac614630d3d5c60493f918bd9351649ed5adc4c86","snapshot":{"file":"work/play.vsf","sha256":"14ff9fba1bc05b7cc8505c61f01dbd975eba035b4323de85027a231ac14b407b"},"index":[{"a":2592,"n":"level_entry","k":"routine","len":85,"c":true},{"a":2677,"n":"player_y_check","k":"routine","len":14,"c":true},{"a":2691,"n":"end_flag","k":"variable","len":1,"c":true},{"a":2692,"n":"level_setup","k":"routine","len":435,"c":true},{"a":3127,"n":"load_tile_colours","k":"routine","len":12,"c":true},{"a":3139,"n":"pad_0c43","k":"variable","len":1,"c":true},{"a":3140,"n":"irq_level_1","k":"routine","len":131,"c":true},{"a":3271,"n":"irq_counter","k":"variable","len":1,"c":true},{"a":3272,"n":"irq_toggle","k":"variable","len":1,"c":true},{"a":3273,"n":"irq_level_2","k":"routine","len":113,"c":true},{"a":3386,"n":"irq_level_3","k":"routine","len":141,"c":true},{"a":3527,"n":"pause_flag","k":"variable","len":1,"c":true},{"a":3528,"n":"scroll_x_fine","k":"variable","len":1,"c":true},{"a":3529,"n":"irq_level_4","k":"routine","len":99,"c":true},{"a":3628,"n":"random","k":"routine","len":31,"c":true},{"a":3659,"n":"random_seed","k":"variable","len":1,"c":true},{"a":3660,"n":"disabled_check","k":"routine","len":1,"c":true},{"a":3661,"n":"unused_check","k":"routine","len":15,"c":true},{"a":3676,"n":"fill_screen_cc00","k":"routine","len":18,"c":true},{"a":3694,"n":"fill_screen_c800","k":"routine","len":18,"c":true},{"a":3712,"n":"fill_colour_ram","k":"routine","len":18,"c":true},{"a":3730,"n":"delay","k":"routine","len":9,"c":true},{"a":3739,"n":"nmi_handler","k":"routine","len":8,"c":true},{"a":3747,"n":"nmi_flag","k":"variable","len":1,"c":true},{"a":3748,"n":"pad_0ea4","k":"variable","len":2,"c":true},{"a":3750,"n":"joy_port","k":"variable","len":1,"c":true},{"a":3751,"n":"draw_bottom_rows","k":"routine","len":34,"c":true},{"a":3785,"n":"counter_hundreds","k":"variable","len":1,"c":true},{"a":3786,"n":"counter_tens","k":"variable","len":1,"c":true},{"a":3787,"n":"counter_ones","k":"variable","len":1,"c":true},{"a":3788,"n":"draw_counter","k":"routine","len":40,"c":true},{"a":3828,"n":"draw_digit","k":"routine","len":21,"c":true},{"a":3849,"n":"digit_glyphs","k":"table","len":80,"c":true},{"a":3929,"n":"timer_skip","k":"variable","len":1,"c":true},{"a":3930,"n":"mask_end_flag","k":"variable","len":1,"c":true},{"a":3931,"n":"unused_timer_tick","k":"routine","len":83,"c":true},{"a":4014,"n":"map_pos","k":"variable","len":2,"c":true},{"a":4016,"n":"scroll_speed","k":"variable","len":1,"c":true},{"a":4017,"n":"level_done","k":"variable","len":1,"c":true},{"a":4018,"n":"shifted_flag","k":"variable","len":1,"c":true},{"a":4019,"n":"scroll_tmp","k":"variable","len":1,"c":true},{"a":4020,"n":"scroll_total","k":"variable","len":2,"c":true},{"a":4022,"n":"second_run","k":"variable","len":1,"c":true},{"a":4023,"n":"scroll_main","k":"routine","len":157,"c":true},{"a":4180,"n":"pad_1054","k":"variable","len":2,"c":true},{"a":4182,"n":"shift_main_left","k":"routine","len":143,"c":true},{"a":4325,"n":"half_step","k":"variable","len":1,"c":true},{"a":4326,"n":"new_column","k":"routine","len":69,"c":true},{"a":4395,"n":"draw_map_cell","k":"routine","len":69,"c":true},{"a":4464,"n":"scroll_fine_b","k":"variable","len":1,"c":true},{"a":4465,"n":"scroll_speed_b","k":"variable","len":1,"c":true},{"a":4466,"n":"scroll_accum_b","k":"variable","len":2,"c":true},{"a":4468,"n":"scroll_dir","k":"variable","len":1,"c":true},{"a":4469,"n":"scroll_count","k":"variable","len":1,"c":true},{"a":4470,"n":"scroll_script","k":"table","len":465,"c":true},{"a":4935,"n":"scroll_lower","k":"routine","len":142,"c":true},{"a":5077,"n":"shift_rows_left","k":"routine","len":32,"c":true},{"a":5109,"n":"scroll_lower_right","k":"routine","len":65,"c":true},{"a":5174,"n":"shift_rows_right","k":"routine","len":30,"c":true},{"a":5204,"n":"draw_block","k":"routine","len":32,"c":true},{"a":5236,"n":"start_rows_a","k":"table","len":200,"c":true},{"a":5436,"n":"start_rows_b","k":"table","len":200,"c":true},{"a":5636,"n":"draw_start_rows","k":"routine","len":34,"c":true},{"a":5670,"n":"player_state","k":"variable","len":1,"c":true},{"a":5671,"n":"player_routines","k":"table","len":10,"c":true},{"a":5681,"n":"player_x_prev","k":"variable","len":1,"c":true},{"a":5682,"n":"player_y_prev","k":"variable","len":1,"c":true},{"a":5683,"n":"player_x","k":"variable","len":1,"c":true},{"a":5684,"n":"player_y","k":"variable","len":1,"c":true},{"a":5685,"n":"player_update","k":"routine","len":46,"c":true},{"a":5731,"n":"player_update_pad","k":"variable","len":2,"c":true},{"a":5733,"n":"player_idle","k":"routine","len":1,"c":true},{"a":5734,"n":"walk_frame_index","k":"variable","len":1,"c":true},{"a":5735,"n":"walk_frames_left","k":"table","len":18,"c":true},{"a":5753,"n":"walk_frames_right","k":"table","len":18,"c":true},{"a":5771,"n":"walk_toggle","k":"variable","len":1,"c":true},{"a":5772,"n":"walk_left_frame","k":"routine","len":33,"c":true},{"a":5805,"n":"walk_right_frame","k":"routine","len":33,"c":true},{"a":5838,"n":"facing","k":"variable","len":1,"c":true},{"a":5839,"n":"feet_column","k":"variable","len":1,"c":true},{"a":5840,"n":"player_spare","k":"table","len":3,"c":true},{"a":5843,"n":"walk_counter","k":"variable","len":1,"c":true},{"a":5844,"n":"stand_frame","k":"routine","len":37,"c":true},{"a":5881,"n":"stand_frame_pad","k":"variable","len":1,"c":true},{"a":5882,"n":"player_walk","k":"routine","len":218,"c":true},{"a":6100,"n":"player_fall","k":"routine","len":145,"c":true},{"a":6245,"n":"jump_steps","k":"table","len":78,"c":true},{"a":6323,"n":"arc_index","k":"variable","len":1,"c":true},{"a":6324,"n":"player_jump","k":"routine","len":199,"c":true},{"a":6523,"n":"hurt_steps","k":"table","len":60,"c":true},{"a":6583,"n":"player_knockback","k":"routine","len":201,"c":true},{"a":6784,"n":"climb_frames","k":"table","len":25,"c":true},{"a":6809,"n":"climb_frame_a","k":"routine","len":33,"c":true},{"a":6842,"n":"climb_frame_b","k":"routine","len":33,"c":true},{"a":6875,"n":"player_frame","k":"variable","len":1,"c":true},{"a":6880,"n":"player_sprites","k":"routine","len":49,"c":true},{"a":6930,"n":"tile_x_low","k":"variable","len":1,"c":true},{"a":6931,"n":"tile_y","k":"variable","len":1,"c":true},{"a":6932,"n":"tile_x_high","k":"variable","len":1,"c":true},{"a":6933,"n":"pad_1b15","k":"table","len":7,"c":true},{"a":6940,"n":"row_pointers","k":"table","len":46,"c":true},{"a":6986,"n":"row_ptr_copy","k":"variable","len":2,"c":true},{"a":6988,"n":"tile_lookup","k":"routine","len":48,"c":true},{"a":7036,"n":"tile_at_feet","k":"routine","len":35,"c":true},{"a":7071,"n":"tile_ahead","k":"routine","len":57,"c":true},{"a":7128,"n":"object_tile","k":"routine","len":30,"c":true},{"a":7158,"n":"obj_state","k":"variable","len":1,"c":true},{"a":7159,"n":"obj_delay","k":"variable","len":1,"c":true},{"a":7160,"n":"obj_x","k":"variable","len":2,"c":true},{"a":7162,"n":"obj_y","k":"variable","len":1,"c":true},{"a":7163,"n":"launch_x","k":"variable","len":2,"c":true},{"a":7165,"n":"obj_fall_step","k":"variable","len":1,"c":true},{"a":7166,"n":"obj_blast_frame","k":"variable","len":1,"c":true},{"a":7167,"n":"blast_sprites","k":"table","len":30,"c":true},{"a":7197,"n":"fall_steps","k":"table","len":40,"c":true},{"a":7237,"n":"object_update","k":"routine","len":231,"c":true},{"a":7468,"n":"explosion_sprites","k":"routine","len":106,"c":true},{"a":7583,"n":"hit_y","k":"variable","len":1,"c":true},{"a":7584,"n":"hit_delay","k":"variable","len":1,"c":true},{"a":7585,"n":"hit_test","k":"routine","len":167,"c":true},{"a":7752,"n":"map_row_0","k":"table","len":256,"c":true},{"a":8008,"n":"map_row_1","k":"table","len":256,"c":true},{"a":8264,"n":"map_row_2","k":"table","len":252,"c":true},{"a":8516,"n":"map_patch_a","k":"table","len":4,"c":true},{"a":8520,"n":"map_row_3","k":"table","len":249,"c":true},{"a":8769,"n":"map_patch_b","k":"table","len":7,"c":true},{"a":8776,"n":"map_row_4","k":"table","len":256,"c":true},{"a":9032,"n":"block_chars","k":"table","len":48,"c":true},{"a":9080,"n":"pause_check","k":"routine","len":39,"c":true},{"a":9119,"n":"explosion_frame","k":"routine","len":55,"c":true},{"a":9174,"n":"timer_update","k":"routine","len":121,"c":true},{"a":9295,"n":"energy","k":"variable","len":1,"c":true},{"a":9296,"n":"energy_masks","k":"table","len":4,"c":true},{"a":9300,"n":"energy_sprite","k":"table","len":64,"c":true},{"a":9364,"n":"energy_step","k":"variable","len":1,"c":true},{"a":9365,"n":"energy_bar_draw","k":"routine","len":136,"c":true},{"a":9501,"n":"score_add","k":"routine","len":43,"c":true},{"a":9544,"n":"digit_carry","k":"variable","len":1,"c":true},{"a":9545,"n":"score_draw","k":"routine","len":19,"c":true},{"a":9564,"n":"score_draw_digit","k":"routine","len":38,"c":true},{"a":9602,"n":"key_code","k":"variable","len":1,"c":true},{"a":9603,"n":"read_keys","k":"routine","len":118,"c":true},{"a":9722,"n":"key_row_mask","k":"variable","len":1,"c":true},{"a":9723,"n":"key_column","k":"variable","len":1,"c":true},{"a":9724,"n":"key_row_bits","k":"variable","len":1,"c":true},{"a":9725,"n":"key_codes","k":"table","len":64,"c":true},{"a":9789,"n":"end_screen","k":"routine","len":158,"c":true},{"a":9947,"n":"text_game_over","k":"table","len":10,"c":true},{"a":9957,"n":"text_intro","k":"table","len":184,"c":true},{"a":10141,"n":"intro_text","k":"routine","len":134,"c":true},{"a":10275,"n":"copy_charsets","k":"routine","len":85,"c":true},{"a":10360,"n":"copy_source_a","k":"table","len":751,"c":true},{"a":11111,"n":"jsr_default_target","k":"table","len":12,"c":true},{"a":11123,"n":"copy_source_b","k":"table","len":1024,"c":true},{"a":12147,"n":"copy_source_b_tail","k":"table","len":461,"c":true},{"a":12608,"n":"timer_ones","k":"variable","len":1,"c":true},{"a":12609,"n":"timer_tens","k":"variable","len":1,"c":true},{"a":12610,"n":"timer_hundreds","k":"variable","len":1,"c":true},{"a":12611,"n":"timer_sprite_draw","k":"routine","len":40,"c":true},{"a":12651,"n":"timer_sprite_digit","k":"routine","len":23,"c":true},{"a":12674,"n":"timer_tick","k":"variable","len":1,"c":true},{"a":12675,"n":"swap_chars_35b7","k":"routine","len":64,"c":true},{"a":12739,"n":"text_lab","k":"table","len":112,"c":true},{"a":12851,"n":"image_phase","k":"variable","len":1,"c":true},{"a":12852,"n":"image_flash","k":"routine","len":89,"c":true},{"a":12941,"n":"image_a_draw","k":"routine","len":105,"c":true},{"a":13046,"n":"image_b_draw","k":"routine","len":105,"c":true},{"a":13151,"n":"image_b_rows","k":"table","len":240,"c":true},{"a":13391,"n":"image_b_colours","k":"table","len":30,"c":true},{"a":13421,"n":"image_b_chars","k":"table","len":30,"c":true},{"a":13451,"n":"image_a_rows","k":"table","len":240,"c":true},{"a":13691,"n":"image_a_colours","k":"table","len":30,"c":true},{"a":13721,"n":"image_a_chars","k":"table","len":30,"c":true},{"a":13751,"n":"chars_saved_a","k":"table","len":944,"c":true},{"a":15799,"n":"screen_a_map","k":"table","len":504,"c":true},{"a":16303,"n":"screen_b_map","k":"table","len":81,"c":true},{"a":16384,"n":"screen_b_map_tail","k":"table","len":367,"c":true},{"a":16751,"n":"rts_fill","k":"table","len":56,"c":true},{"a":16807,"n":"subject_screen","k":"routine","len":192,"c":true},{"a":16999,"n":"text_subject","k":"table","len":8,"c":true},{"a":17007,"n":"text_press_fire","k":"table","len":23,"c":true},{"a":17030,"n":"mask_main","k":"routine","len":26,"c":true},{"a":17056,"n":"match_seen_2","k":"variable","len":1,"c":true},{"a":17057,"n":"match_seen_1","k":"variable","len":1,"c":true},{"a":17058,"n":"match_seen_other","k":"variable","len":1,"c":true},{"a":17059,"n":"text_index","k":"variable","len":1,"c":true},{"a":17060,"n":"scan_delay","k":"variable","len":1,"c":true},{"a":17061,"n":"text_scanning","k":"table","len":17,"c":true},{"a":17078,"n":"scan_text_tick","k":"routine","len":43,"c":true},{"a":17121,"n":"text_mask_complete_data","k":"table","len":16,"c":true},{"a":17137,"n":"text_mask_complete","k":"routine","len":34,"c":true},{"a":17171,"n":"text_insufficient_data","k":"table","len":18,"c":true},{"a":17189,"n":"text_to_generate_mask","k":"table","len":18,"c":true},{"a":17207,"n":"text_insufficient","k":"routine","len":34,"c":true},{"a":17241,"n":"text_generate_mask","k":"routine","len":34,"c":true},{"a":17275,"n":"scan_toggle","k":"variable","len":1,"c":true},{"a":17276,"n":"scan_countdown","k":"variable","len":1,"c":true},{"a":17277,"n":"scan_wait","k":"routine","len":147,"c":true},{"a":17424,"n":"mask_finish","k":"routine","len":79,"c":true},{"a":17503,"n":"mask_report","k":"routine","len":45,"c":true},{"a":17548,"n":"dissolve_pattern","k":"routine","len":73,"c":true},{"a":17621,"n":"draw_subject_chars","k":"routine","len":99,"c":true},{"a":17720,"n":"clear_text_area","k":"routine","len":81,"c":true},{"a":17801,"n":"swap_font_a","k":"routine","len":57,"c":true},{"a":17858,"n":"swap_font_b","k":"routine","len":34,"c":true},{"a":17892,"n":"swap_font_c","k":"routine","len":72,"c":true},{"a":17964,"n":"draw_block_3x3","k":"routine","len":20,"c":true},{"a":17984,"n":"draw_row_3","k":"routine","len":18,"c":true},{"a":18002,"n":"draw_slice_blocks","k":"routine","len":109,"c":true},{"a":18111,"n":"fire_held","k":"variable","len":1,"c":true},{"a":18112,"n":"flash_count","k":"variable","len":1,"c":true},{"a":18113,"n":"slice_number","k":"variable","len":1,"c":true},{"a":18114,"n":"capture_mark","k":"variable","len":1,"c":true},{"a":18115,"n":"pad_46c3","k":"variable","len":1,"c":true},{"a":18116,"n":"capture_delay","k":"variable","len":1,"c":true},{"a":18117,"n":"fire_capture","k":"routine","len":153,"c":true},{"a":18270,"n":"slice_type","k":"variable","len":1,"c":true},{"a":18271,"n":"match_check","k":"routine","len":44,"c":true},{"a":18315,"n":"match_row_61","k":"routine","len":81,"c":true},{"a":18396,"n":"match_row_b1","k":"routine","len":29,"c":true},{"a":18425,"n":"match_row_a1","k":"routine","len":29,"c":true},{"a":18454,"n":"cursor_column","k":"variable","len":1,"c":true},{"a":18455,"n":"copy_glyph","k":"routine","len":76,"c":true},{"a":18531,"n":"glyph_offset","k":"variable","len":2,"c":true},{"a":18533,"n":"glyph_dest_table","k":"table","len":24,"c":true},{"a":18557,"n":"cursor_y","k":"variable","len":1,"c":true},{"a":18558,"n":"cursor_x","k":"variable","len":1,"c":true},{"a":18560,"n":"cursor_home","k":"routine","len":11,"c":true},{"a":18571,"n":"scan_path","k":"table","len":13,"c":true},{"a":18584,"n":"scan_durations","k":"table","len":3,"c":true},{"a":18587,"n":"scan_index","k":"variable","len":1,"c":true},{"a":18588,"n":"scan_timer","k":"variable","len":1,"c":true},{"a":18589,"n":"scan_done","k":"variable","len":1,"c":true},{"a":18590,"n":"match_flags","k":"table","len":13,"c":true},{"a":18603,"n":"slice_types","k":"table","len":13,"c":true},{"a":18616,"n":"scan_started","k":"variable","len":1,"c":true},{"a":18617,"n":"scan_reversed","k":"variable","len":1,"c":true},{"a":18618,"n":"scan_cursor","k":"routine","len":284,"c":true},{"a":18902,"n":"blink_colour","k":"variable","len":1,"c":true},{"a":18903,"n":"blink_count","k":"variable","len":1,"c":true},{"a":18904,"n":"cursor_phase","k":"variable","len":1,"c":true},{"a":18905,"n":"sound_1c","k":"routine","len":16,"c":true},{"a":18921,"n":"cursor_move","k":"routine","len":179,"c":true},{"a":19100,"n":"mask_obj_state","k":"table","len":5,"c":true},{"a":19105,"n":"mask_obj_delay","k":"table","len":5,"c":true},{"a":19110,"n":"mask_obj_value_a","k":"table","len":5,"c":true},{"a":19115,"n":"mask_obj_value_b","k":"table","len":5,"c":true},{"a":19120,"n":"mask_obj_ptr_lo","k":"table","len":5,"c":true},{"a":19125,"n":"mask_obj_ptr_hi","k":"table","len":5,"c":true},{"a":19130,"n":"mask_obj_counter","k":"table","len":5,"c":true},{"a":19135,"n":"mask_obj_ptr_init_lo","k":"table","len":5,"c":true},{"a":19140,"n":"mask_obj_ptr_init_hi","k":"table","len":5,"c":true},{"a":19145,"n":"mask_strip_steps","k":"table","len":24,"c":true},{"a":19169,"n":"mask_strip_offsets","k":"table","len":48,"c":true},{"a":19217,"n":"mask_obj_choice_a","k":"table","len":3,"c":true},{"a":19220,"n":"mask_obj_choice_b","k":"table","len":3,"c":true},{"a":19223,"n":"random_of_3","k":"routine","len":18,"c":true},{"a":19241,"n":"random_of_5","k":"routine","len":30,"c":true},{"a":19271,"n":"objects_spawn","k":"routine","len":113,"c":true},{"a":19384,"n":"target_object","k":"variable","len":1,"c":true},{"a":19385,"n":"objects_run","k":"routine","len":28,"c":true},{"a":19413,"n":"mask_obj_handlers","k":"table","len":8,"c":true},{"a":19421,"n":"object_idle","k":"routine","len":1,"c":true},{"a":19422,"n":"object_flip_toggle","k":"variable","len":1,"c":true},{"a":19423,"n":"object_source_lo","k":"variable","len":1,"c":true},{"a":19424,"n":"object_source_hi","k":"variable","len":1,"c":true},{"a":19425,"n":"object_return","k":"routine","len":1,"c":true},{"a":19426,"n":"object_flip","k":"routine","len":207,"c":true},{"a":19634,"n":"strip_offset","k":"variable","len":2,"c":true},{"a":19636,"n":"object_slide_in","k":"routine","len":148,"c":true},{"a":19784,"n":"shift_cells_right","k":"routine","len":85,"c":true},{"a":19869,"n":"shift_temp","k":"variable","len":1,"c":true},{"a":19870,"n":"shift_cells_left","k":"routine","len":58,"c":true},{"a":19928,"n":"object_slide_out","k":"routine","len":97,"c":true},{"a":20025,"n":"screen_a_draw","k":"routine","len":107,"c":true},{"a":20132,"n":"screen_b_draw","k":"routine","len":107,"c":true},{"a":20239,"n":"text_pos","k":"variable","len":1,"c":true},{"a":20240,"n":"text_skip_count","k":"variable","len":1,"c":true},{"a":20241,"n":"lab_text","k":"routine","len":138,"c":true},{"a":20379,"n":"typing_done","k":"variable","len":1,"c":true},{"a":20380,"n":"mask_setup","k":"routine","len":474,"c":true},{"a":20854,"n":"mask_unused","k":"variable","len":1,"c":true},{"a":20855,"n":"irq_mask_1","k":"routine","len":100,"c":true},{"a":20955,"n":"irq_mask_2","k":"routine","len":103,"c":true},{"a":21058,"n":"irq_mask_3","k":"routine","len":120,"c":true},{"a":21178,"n":"result_shown","k":"variable","len":1,"c":true},{"a":21179,"n":"mask_sprites","k":"routine","len":101,"c":true},{"a":21280,"n":"timer_draw","k":"routine","len":40,"c":true},{"a":21320,"n":"timer_draw_digit","k":"routine","len":21,"c":true},{"a":21341,"n":"mask_timer_tick","k":"routine","len":91,"c":true},{"a":21432,"n":"char_colour_table","k":"table","len":256,"c":true},{"a":21688,"n":"font_saved_a","k":"table","len":272,"c":true},{"a":21960,"n":"font_saved_b","k":"table","len":512,"c":true},{"a":22472,"n":"mask_strip_data","k":"table","len":480,"c":true},{"a":22952,"n":"story_screen","k":"routine","len":17,"c":true},{"a":22969,"n":"continue_text","k":"routine","len":75,"c":true},{"a":23044,"n":"continue_count","k":"variable","len":1,"c":true},{"a":23045,"n":"text_press_fire_b","k":"table","len":23,"c":true},{"a":23068,"n":"text_credits","k":"table","len":23,"c":true},{"a":23091,"n":"continue_flag","k":"variable","len":1,"c":true},{"a":23092,"n":"continue_screen","k":"routine","len":144,"c":true},{"a":23236,"n":"story_text_type","k":"routine","len":148,"c":true},{"a":23384,"n":"story_text","k":"table","len":239,"c":true},{"a":23623,"n":"tile_chars_top","k":"table","len":158,"c":true},{"a":23781,"n":"tile_chars_bottom","k":"table","len":127,"c":true},{"a":23908,"n":"bottom_chars","k":"table","len":200,"c":true},{"a":24108,"n":"bottom_colours","k":"table","len":200,"c":true},{"a":24308,"n":"tile_colour_src","k":"table","len":256,"c":true},{"a":57344,"n":"player_shapes_a","k":"table","len":1024,"c":true},{"a":58368,"n":"player_shapes_b","k":"table","len":256,"c":true},{"a":58624,"n":"climb_shapes","k":"table","len":192,"c":true},{"a":58816,"n":"walk_right_shapes","k":"table","len":384,"c":true},{"a":59200,"n":"walk_left_shapes","k":"table","len":384,"c":true},{"a":59584,"n":"attack_shapes","k":"table","len":1024,"c":true},{"a":60608,"n":"attack_shapes_b","k":"table","len":960,"c":true},{"a":61568,"n":"shapes_unreferenced","k":"table","len":192,"c":true},{"a":62464,"n":"explosion_shapes","k":"table","len":576,"c":true},{"a":63040,"n":"object_shape","k":"table","len":64,"c":true},{"a":63104,"n":"cursor_shape","k":"table","len":64,"c":true},{"a":63168,"n":"invisible_shapes","k":"table","len":256,"c":true},{"a":63424,"n":"panel_bitmap","k":"table","len":256,"c":true},{"a":63680,"n":"image_row_0","k":"table","len":48,"c":true},{"a":63728,"n":"panel_bitmap_1","k":"table","len":232,"c":true},{"a":63960,"n":"timer_glyph_hundreds","k":"table","len":8,"c":true},{"a":63968,"n":"timer_cell_gap","k":"table","len":8,"c":true},{"a":63976,"n":"timer_glyph_tens","k":"table","len":8,"c":true},{"a":63984,"n":"timer_glyph_ones","k":"table","len":8,"c":true},{"a":63992,"n":"panel_bitmap_2","k":"table","len":8,"c":true},{"a":64000,"n":"image_row_1","k":"table","len":48,"c":true},{"a":64048,"n":"panel_bitmap_3","k":"table","len":40,"c":true},{"a":64088,"n":"score_glyphs","k":"table","len":56,"c":true},{"a":64144,"n":"panel_bitmap_4","k":"table","len":56,"c":true},{"a":64200,"n":"energy_sprite_dest","k":"table","len":64,"c":true},{"a":64264,"n":"panel_bitmap_5","k":"table","len":56,"c":true},{"a":64320,"n":"image_row_2","k":"table","len":48,"c":true},{"a":64368,"n":"panel_bitmap_6","k":"table","len":272,"c":true},{"a":64640,"n":"image_row_3","k":"table","len":48,"c":true},{"a":64688,"n":"panel_bitmap_7","k":"table","len":272,"c":true},{"a":64960,"n":"image_row_4","k":"table","len":48,"c":true},{"a":65024,"n":"dissolve_buffer","k":"table","len":256,"c":true},{"a":65280,"n":"jump_shapes_b","k":"table","len":128,"c":true},{"a":65408,"n":"blank_sprite","k":"table","len":64,"c":true}],"records":[{"a":0,"t":"gap","n":2592},{"a":2592,"l":"level_entry","c":"Entry of the level 3 file, jumped to by the resident loader. Jumps to the main loop at $0A23, which calls the setup $0A84 and then repeats from $0A26: $0E4C, the counter digits $0ECC, $2549, $2495, $0A75, $3143 and the pause check $2378. It jumps to $4286 when $0FB1 is set or, with $0A11 non-zero, when the key code $2582 is $20. With the NMI flag $0EA3 set it calls $263D and goes to $0A6C. With the end flag $0A83 set it calls $263D, runs $5A34 when $0A12 is non-zero (a non-zero $5A33 then restarts at $0A23), and goes to $0A6C, which calls $B828 and jumps to the resident loader at $0404.","t":"code","b":[76,35,10],"m":"jmp","oa":2595,"o":"$0A23"},{"a":2595,"t":"code","b":[32,132,10],"m":"jsr","oa":2692,"o":"level_setup","x":[2592,2666]},{"a":2598,"t":"code","b":[32,76,14],"m":"jsr","oa":3660,"o":"disabled_check","x":[2650]},{"a":2601,"t":"code","b":[32,204,14],"m":"jsr","oa":3788,"o":"draw_counter"},{"a":2604,"t":"code","b":[32,73,37],"m":"jsr","oa":9545,"o":"score_draw"},{"a":2607,"t":"code","b":[32,149,36],"m":"jsr","oa":9365,"o":"energy_bar_draw"},{"a":2610,"t":"code","b":[32,117,10],"m":"jsr","oa":2677,"o":"player_y_check"},{"a":2613,"t":"code","b":[32,67,49],"m":"jsr","oa":12611,"o":"timer_sprite_draw"},{"a":2616,"t":"code","b":[32,120,35],"m":"jsr","oa":9080,"o":"pause_check"},{"a":2619,"t":"code","b":[173,177,15],"m":"lda","oa":4017,"o":"level_done"},{"a":2622,"t":"code","b":[208,50],"m":"bne","oa":2674,"o":"$0A72"},{"a":2624,"t":"code","b":[173,17,10],"m":"lda","oa":2577,"o":"skip_flag"},{"a":2627,"t":"code","b":[240,7],"m":"beq","oa":2636,"o":"$0A4C"},{"a":2629,"t":"code","b":[173,130,37],"m":"lda","oa":9602,"o":"key_code"},{"a":2632,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":2634,"t":"code","b":[240,38],"m":"beq","oa":2674,"o":"$0A72"},{"a":2636,"t":"code","b":[173,163,14],"m":"lda","oa":3747,"o":"nmi_flag","x":[2627]},{"a":2639,"t":"code","b":[240,6],"m":"beq","oa":2647,"o":"$0A57"},{"a":2641,"t":"code","b":[32,61,38],"m":"jsr","oa":9789,"o":"end_screen"},{"a":2644,"t":"code","b":[76,108,10],"m":"jmp","oa":2668,"o":"$0A6C"},{"a":2647,"t":"code","b":[173,131,10],"m":"lda","oa":2691,"o":"end_flag","x":[2639]},{"a":2650,"t":"code","b":[240,202],"m":"beq","oa":2598,"o":"$0A26"},{"a":2652,"t":"code","b":[32,61,38],"m":"jsr","oa":9789,"o":"end_screen"},{"a":2655,"t":"code","b":[173,18,10],"m":"lda","oa":2578,"o":"credits"},{"a":2658,"t":"code","b":[240,8],"m":"beq","oa":2668,"o":"$0A6C"},{"a":2660,"t":"code","b":[32,52,90],"m":"jsr","oa":23092,"o":"continue_screen"},{"a":2663,"t":"code","b":[173,51,90],"m":"lda","oa":23091,"o":"continue_flag"},{"a":2666,"t":"code","b":[208,183],"m":"bne","oa":2595,"o":"$0A23"},{"a":2668,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all","x":[2644,2658]},{"a":2671,"t":"code","b":[76,4,4],"m":"jmp","oa":1028,"o":"$0404"},{"a":2674,"t":"code","b":[76,134,66],"m":"jmp","oa":17030,"o":"mask_main","x":[2622,2634]},{"a":2677,"l":"player_y_check","c":"Sets the end flag $0A83 to 1 when the player's Y position $1634 is $A0 or more; otherwise returns at once. Called once per pass by the main loop at $0A32.","t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y","x":[2610]},{"a":2680,"t":"code","b":[201,160],"m":"cmp","o":"#$A0"},{"a":2682,"t":"code","b":[176,1],"m":"bcs","oa":2685,"o":"$0A7D"},{"a":2684,"t":"code","b":[96],"m":"rts"},{"a":2685,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[2682]},{"a":2687,"t":"code","b":[141,131,10],"m":"sta","oa":2691,"o":"end_flag"},{"a":2690,"t":"code","b":[96],"m":"rts"},{"a":2691,"l":"end_flag","c":"Set to 1 to end the main loop: by $0A75 when the player is low enough, by $1DA1 when the energy runs out and by $23D6 when the countdown reaches zero. Cleared by $0A84. The main loop tests it at $0A57.","t":"byte","b":[0],"x":[2647,2687,2809,7695,9224]},{"a":2692,"l":"level_setup","c":"One-time setup, called by the main loop at $0A23 (again after a restart). Disables interrupts, switches $01 to $35, sets VIC bank, $D018, $D011 and $D016, patches the map cells at $2145-$2147, $2241, $2242 and $2245-$2247 from $2144 and $2244, clears $FF80-$FFBF and the flags $0DC7, $0A83, $0FB1, $0FB6 and $0EA3, and sets start values ($244F=$21, $0ECA=0, $0ECB=5, $1626=1, player X/Y $1633/$1634=$F0/$5F, $1BFB=$E8, $3142=9, $0FAE/$0FAF=$1E5C, $16/$17=$1176). It ORs $08 into the 256 bytes at $BF00, clears $002A-$0100, fills screen and colour RAM through $0E5C and $0E80, builds the first screen with $4589, $279D, $2823, $0EA7, $1454 and $1604, starts the sound driver at $B0C8, installs the NMI vector $0E9B and the raster interrupt $0C44 (first line $82) and ends with CLI.","t":"code","b":[120],"m":"sei","x":[2595]},{"a":2693,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":2696,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":2698,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":2701,"t":"code","b":[169,53],"m":"lda","o":"#$35"},{"a":2703,"t":"code","b":[133,1],"m":"sta","oa":1,"o":"processor_port"},{"a":2705,"t":"code","b":[173,2,221],"m":"lda","o":"cia2_ddr_a"},{"a":2708,"t":"code","b":[9,3],"m":"ora","o":"#$03"},{"a":2710,"t":"code","b":[141,2,221],"m":"sta","o":"cia2_ddr_a"},{"a":2713,"t":"code","b":[173,0,221],"m":"lda","o":"cia2_port_a"},{"a":2716,"t":"code","b":[41,252],"m":"and","o":"#$FC"},{"a":2718,"t":"code","b":[141,0,221],"m":"sta","o":"cia2_port_a"},{"a":2721,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":2723,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":2726,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":2729,"t":"code","b":[41,216],"m":"and","o":"#$D8"},{"a":2731,"t":"code","b":[9,83],"m":"ora","o":"#$53"},{"a":2733,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":2736,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":2739,"t":"code","b":[41,248],"m":"and","o":"#$F8"},{"a":2741,"t":"code","b":[9,24],"m":"ora","o":"#$18"},{"a":2743,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":2746,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":2748,"t":"code","b":[141,66,49],"m":"sta","oa":12610,"o":"timer_hundreds"},{"a":2751,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2753,"t":"code","b":[141,65,49],"m":"sta","oa":12609,"o":"timer_tens"},{"a":2756,"t":"code","b":[141,64,49],"m":"sta","oa":12608,"o":"timer_ones"},{"a":2759,"t":"code","b":[173,68,33],"m":"lda","oa":8516,"o":"map_patch_a"},{"a":2762,"t":"code","b":[141,69,33],"m":"sta","oa":8517,"o":"$2145"},{"a":2765,"t":"code","b":[141,70,33],"m":"sta","oa":8518,"o":"$2146"},{"a":2768,"t":"code","b":[141,71,33],"m":"sta","oa":8519,"o":"$2147"},{"a":2771,"t":"code","b":[141,65,34],"m":"sta","oa":8769,"o":"map_patch_b"},{"a":2774,"t":"code","b":[141,66,34],"m":"sta","oa":8770,"o":"$2242"},{"a":2777,"t":"code","b":[173,68,34],"m":"lda","oa":8772,"o":"$2244"},{"a":2780,"t":"code","b":[141,69,34],"m":"sta","oa":8773,"o":"$2245"},{"a":2783,"t":"code","b":[141,70,34],"m":"sta","oa":8774,"o":"$2246"},{"a":2786,"t":"code","b":[141,71,34],"m":"sta","oa":8775,"o":"$2247"},{"a":2789,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":2791,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2793,"t":"code","b":[153,128,255],"m":"sta","oa":65408,"o":"blank_sprite,y","x":[2799]},{"a":2796,"t":"code","b":[200],"m":"iny"},{"a":2797,"t":"code","b":[192,64],"m":"cpy","o":"#$40"},{"a":2799,"t":"code","b":[208,248],"m":"bne","oa":2793,"o":"$0AE9"},{"a":2801,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2803,"t":"code","b":[141,199,13],"m":"sta","oa":3527,"o":"pause_flag"},{"a":2806,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":2809,"t":"code","b":[141,131,10],"m":"sta","oa":2691,"o":"end_flag"},{"a":2812,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":2815,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":2818,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":2820,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":2823,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":2825,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":2828,"t":"code","b":[169,33],"m":"lda","o":"#$21"},{"a":2830,"t":"code","b":[141,79,36],"m":"sta","oa":9295,"o":"energy"},{"a":2833,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":2835,"t":"code","b":[141,166,14],"m":"sta","oa":3750,"o":"joy_port"},{"a":2838,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2840,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":2843,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":2845,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":2848,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":2850,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":2853,"t":"code","b":[169,240],"m":"lda","o":"#$F0"},{"a":2855,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":2858,"t":"code","b":[169,95],"m":"lda","o":"#$5F"},{"a":2860,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":2863,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2865,"t":"code","b":[141,252,27],"m":"sta","oa":7164,"o":"$1BFC"},{"a":2868,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":2871,"t":"code","b":[169,64],"m":"lda","o":"#$40"},{"a":2873,"t":"code","b":[141,247,27],"m":"sta","oa":7159,"o":"obj_delay"},{"a":2876,"t":"code","b":[169,232],"m":"lda","o":"#$E8"},{"a":2878,"t":"code","b":[141,251,27],"m":"sta","oa":7163,"o":"launch_x"},{"a":2881,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2883,"t":"code","b":[141,117,17],"m":"sta","oa":4469,"o":"scroll_count"},{"a":2886,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":2889,"t":"code","b":[141,177,15],"m":"sta","oa":4017,"o":"level_done"},{"a":2892,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":2894,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":2897,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":2899,"t":"code","b":[141,34,208],"m":"sta","o":"vic_background1"},{"a":2902,"t":"code","b":[32,55,12],"m":"jsr","oa":3127,"o":"load_tile_colours"},{"a":2905,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2907,"t":"code","b":[141,182,15],"m":"sta","oa":4022,"o":"second_run"},{"a":2910,"t":"code","b":[141,27,208],"m":"sta","o":"vic_sprite_priority"},{"a":2913,"t":"code","b":[141,23,208],"m":"sta","o":"vic_sprite_expand_y"},{"a":2916,"t":"code","b":[141,29,208],"m":"sta","o":"vic_sprite_expand_x"},{"a":2919,"t":"code","b":[141,163,14],"m":"sta","oa":3747,"o":"nmi_flag"},{"a":2922,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":2924,"t":"code","b":[185,0,191],"m":"lda","oa":48896,"o":"$BF00,y","x":[2933]},{"a":2927,"t":"code","b":[9,8],"m":"ora","o":"#$08"},{"a":2929,"t":"code","b":[153,0,191],"m":"sta","oa":48896,"o":"$BF00,y"},{"a":2932,"t":"code","b":[200],"m":"iny"},{"a":2933,"t":"code","b":[208,245],"m":"bne","oa":2924,"o":"$0B6C"},{"a":2935,"t":"code","b":[160,41],"m":"ldy","o":"#$29"},{"a":2937,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":2939,"t":"code","b":[153,1,0],"m":"sta","oa":1,"o":"processor_port,y","x":[2943]},{"a":2942,"t":"code","b":[200],"m":"iny"},{"a":2943,"t":"code","b":[208,250],"m":"bne","oa":2939,"o":"$0B7B"},{"a":2945,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":2947,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":2950,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":2952,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":2955,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":2957,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":2960,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":2963,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":2966,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":2968,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":2971,"t":"code","b":[32,157,39],"m":"jsr","oa":10141,"o":"intro_text"},{"a":2974,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":2977,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":2979,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":2982,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":2985,"t":"code","b":[32,35,40],"m":"jsr","oa":10275,"o":"copy_charsets"},{"a":2988,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":2991,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":2993,"t":"code","b":[9,16],"m":"ora","o":"#$10"},{"a":2995,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":2998,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3000,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":3003,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":3005,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":3008,"t":"code","b":[32,167,14],"m":"jsr","oa":3751,"o":"draw_bottom_rows"},{"a":3011,"t":"code","b":[32,84,20],"m":"jsr","oa":5204,"o":"draw_block"},{"a":3014,"t":"code","b":[32,4,22],"m":"jsr","oa":5636,"o":"draw_start_rows"},{"a":3017,"t":"code","b":[169,92],"m":"lda","o":"#$5C"},{"a":3019,"t":"code","b":[141,174,15],"m":"sta","oa":4014,"o":"map_pos"},{"a":3022,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":3024,"t":"code","b":[141,175,15],"m":"sta","oa":4015,"o":"$0FAF"},{"a":3027,"t":"code","b":[169,118],"m":"lda","o":"#$76"},{"a":3029,"t":"code","b":[133,22],"m":"sta","oa":22,"o":"serial_byte"},{"a":3031,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":3033,"t":"code","b":[133,23],"m":"sta","oa":23,"o":"$17"},{"a":3035,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3037,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":3040,"t":"code","b":[169,172],"m":"lda","o":"#$AC"},{"a":3042,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":3045,"t":"code","b":[141,2,208],"m":"sta","o":"vic_sprite1_x"},{"a":3048,"t":"code","b":[169,96],"m":"lda","o":"#$60"},{"a":3050,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":3053,"t":"code","b":[169,117],"m":"lda","o":"#$75"},{"a":3055,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":3058,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":3060,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":3063,"t":"code","b":[141,40,208],"m":"sta","o":"vic_sprite1_colour"},{"a":3066,"t":"code","b":[32,200,176],"m":"jsr","oa":45256,"o":"music_init"},{"a":3069,"t":"code","b":[169,155],"m":"lda","o":"#$9B"},{"a":3071,"t":"code","b":[141,250,255],"m":"sta","oa":65530,"o":"$FFFA"},{"a":3074,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":3076,"t":"code","b":[141,251,255],"m":"sta","oa":65531,"o":"$FFFB"},{"a":3079,"t":"code","b":[169,68],"m":"lda","o":"#$44"},{"a":3081,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":3084,"t":"code","b":[169,12],"m":"lda","o":"#$0C"},{"a":3086,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":3089,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3091,"t":"code","b":[141,26,208],"m":"sta","o":"vic_irq_enable"},{"a":3094,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":3096,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":3099,"t":"code","b":[169,130],"m":"lda","o":"#$82"},{"a":3101,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":3104,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3107,"t":"code","b":[41,127],"m":"and","o":"#$7F"},{"a":3109,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":3112,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3114,"t":"code","b":[141,14,220],"m":"sta","o":"cia1_control_a"},{"a":3117,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":3119,"t":"code","b":[141,13,220],"m":"sta","o":"cia1_interrupt"},{"a":3122,"t":"code","b":[173,13,220],"m":"lda","o":"cia1_interrupt"},{"a":3125,"t":"code","b":[88],"m":"cli"},{"a":3126,"t":"code","b":[96],"m":"rts"},{"a":3127,"l":"load_tile_colours","c":"Copies 256 bytes from $5EF4 to $BF00 (the table that gives a character its colour). Called once by $0A84 at $0B56.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[2902]},{"a":3129,"t":"code","b":[185,244,94],"m":"lda","oa":24308,"o":"tile_colour_src,y","x":[3136]},{"a":3132,"t":"code","b":[153,0,191],"m":"sta","oa":48896,"o":"$BF00,y"},{"a":3135,"t":"code","b":[200],"m":"iny"},{"a":3136,"t":"code","b":[208,247],"m":"bne","oa":3129,"o":"$0C39"},{"a":3138,"t":"code","b":[96],"m":"rts"},{"a":3139,"l":"pad_0c43","c":"1 zero byte just before irq_level_1 ($0C44): padding. No traced code reads them.","t":"byte","b":[0]},{"a":3140,"l":"irq_level_1","c":"Raster interrupt 1 of 4 of the level chain: the first vector set by $0A84 (line $82 then), later set to line $C6 by $0DC9. Keeps A, X and Y in the operands of the LDA/LDX/LDY #$00 before the RTI ($0CC1, $0CC3, $0CC5), puts $30 in the high nibble of $D018 and ORs $4F into $D011, writes $DB into all eight sprite pointers $CFF8-$CFFF, sets the border and sprite multicolours $D025/$D026 to 0 and acknowledges $D019. It stores the joystick port $DC00 in $0EA6, sets the low nibble of $D018 to 8, toggles $0CC8 and on every second frame counts $0CC7 down to 0, then sets raster line $CD and the vector $0CC9.","t":"code","b":[141,193,12],"m":"sta","oa":3265,"o":"$0CC1"},{"a":3143,"t":"code","b":[142,195,12],"m":"stx","oa":3267,"o":"$0CC3"},{"a":3146,"t":"code","b":[140,197,12],"m":"sty","oa":3269,"o":"$0CC5"},{"a":3149,"t":"code","b":[173,24,208],"m":"lda","o":"vic_memory"},{"a":3152,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":3154,"t":"code","b":[9,48],"m":"ora","o":"#$30"},{"a":3156,"t":"code","b":[168],"m":"tay"},{"a":3157,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3160,"t":"code","b":[9,79],"m":"ora","o":"#$4F"},{"a":3162,"t":"code","b":[234],"m":"nop"},{"a":3163,"t":"code","b":[234],"m":"nop"},{"a":3164,"t":"code","b":[234],"m":"nop"},{"a":3165,"t":"code","b":[234],"m":"nop"},{"a":3166,"t":"code","b":[234],"m":"nop"},{"a":3167,"t":"code","b":[140,24,208],"m":"sty","o":"vic_memory"},{"a":3170,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":3173,"t":"code","b":[169,219],"m":"lda","o":"#$DB"},{"a":3175,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":3178,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"$CFF9"},{"a":3181,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"$CFFA"},{"a":3184,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"$CFFB"},{"a":3187,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"$CFFC"},{"a":3190,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"$CFFD"},{"a":3193,"t":"code","b":[141,254,207],"m":"sta","oa":53246,"o":"$CFFE"},{"a":3196,"t":"code","b":[141,255,207],"m":"sta","oa":53247,"o":"$CFFF"},{"a":3199,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":3201,"t":"code","b":[142,32,208],"m":"stx","o":"vic_border"},{"a":3204,"t":"code","b":[142,37,208],"m":"stx","o":"vic_sprite_mc0"},{"a":3207,"t":"code","b":[142,38,208],"m":"stx","o":"vic_sprite_mc1"},{"a":3210,"t":"code","b":[232],"m":"inx"},{"a":3211,"t":"code","b":[142,25,208],"m":"stx","o":"vic_irq_status"},{"a":3214,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":3217,"t":"code","b":[141,166,14],"m":"sta","oa":3750,"o":"joy_port"},{"a":3220,"t":"code","b":[169,205],"m":"lda","o":"#$CD"},{"a":3222,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":3225,"t":"code","b":[173,24,208],"m":"lda","o":"vic_memory"},{"a":3228,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":3230,"t":"code","b":[9,8],"m":"ora","o":"#$08"},{"a":3232,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":3235,"t":"code","b":[173,200,12],"m":"lda","oa":3272,"o":"irq_toggle"},{"a":3238,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":3240,"t":"code","b":[141,200,12],"m":"sta","oa":3272,"o":"irq_toggle"},{"a":3243,"t":"code","b":[240,9],"m":"beq","oa":3254,"o":"$0CB6"},{"a":3245,"t":"code","b":[174,199,12],"m":"ldx","oa":3271,"o":"irq_counter"},{"a":3248,"t":"code","b":[240,4],"m":"beq","oa":3254,"o":"$0CB6"},{"a":3250,"t":"code","b":[202],"m":"dex"},{"a":3251,"t":"code","b":[142,199,12],"m":"stx","oa":3271,"o":"irq_counter"},{"a":3254,"t":"code","b":[169,201],"m":"lda","o":"#$C9","x":[3243,3248]},{"a":3256,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":3259,"t":"code","b":[169,12],"m":"lda","o":"#$0C"},{"a":3261,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":3264,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":3266,"t":"code","b":[162,43],"m":"ldx","o":"#$2B"},{"a":3268,"t":"code","b":[160,3],"m":"ldy","o":"#$03"},{"a":3270,"t":"code","b":[64],"m":"rti"},{"a":3271,"l":"irq_counter","c":"Counted down by 1 on every second frame while it is not zero, by the raster interrupts $0C44 and $5177. No other reader in the dumped code.","t":"byte","b":[0],"x":[3245,3251,20929,20935]},{"a":3272,"l":"irq_toggle","c":"Toggled between 0 and 1 every frame by the raster interrupts $0C44 and $5177; $0CC7 is counted down when it becomes 0.","t":"byte","b":[1],"x":[3235,3240,20919,20924]},{"a":3273,"l":"irq_level_2","c":"Raster interrupt 2 of 4 of the level chain, on line $CD (set by $0C44). Keeps A, X and Y in the operands at $0D34, $0D36 and $0D38, ORs $2F into $D011 and $17 into $D016 and writes both back after a run of NOPs for timing, acknowledges $D019, sets raster line $14 and the vector $0D3A, and clears bit 6 of $D011. It then runs the main scroll step $0FB7 and copies the player position: X $1633 to the sprite X registers $D000, $D002 and $D004, Y $1634 to $D001 and $D005, and Y plus $15 to $D003.","t":"code","b":[141,52,13],"m":"sta","oa":3380,"o":"$0D34"},{"a":3276,"t":"code","b":[142,54,13],"m":"stx","oa":3382,"o":"$0D36"},{"a":3279,"t":"code","b":[140,56,13],"m":"sty","oa":3384,"o":"$0D38"},{"a":3282,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3285,"t":"code","b":[9,47],"m":"ora","o":"#$2F"},{"a":3287,"t":"code","b":[168],"m":"tay"},{"a":3288,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":3291,"t":"code","b":[9,23],"m":"ora","o":"#$17"},{"a":3293,"t":"code","b":[170],"m":"tax"},{"a":3294,"t":"code","b":[234],"m":"nop"},{"a":3295,"t":"code","b":[234],"m":"nop"},{"a":3296,"t":"code","b":[234],"m":"nop"},{"a":3297,"t":"code","b":[234],"m":"nop"},{"a":3298,"t":"code","b":[234],"m":"nop"},{"a":3299,"t":"code","b":[234],"m":"nop"},{"a":3300,"t":"code","b":[234],"m":"nop"},{"a":3301,"t":"code","b":[234],"m":"nop"},{"a":3302,"t":"code","b":[234],"m":"nop"},{"a":3303,"t":"code","b":[234],"m":"nop"},{"a":3304,"t":"code","b":[234],"m":"nop"},{"a":3305,"t":"code","b":[234],"m":"nop"},{"a":3306,"t":"code","b":[234],"m":"nop"},{"a":3307,"t":"code","b":[234],"m":"nop"},{"a":3308,"t":"code","b":[234],"m":"nop"},{"a":3309,"t":"code","b":[234],"m":"nop"},{"a":3310,"t":"code","b":[234],"m":"nop"},{"a":3311,"t":"code","b":[234],"m":"nop"},{"a":3312,"t":"code","b":[234],"m":"nop"},{"a":3313,"t":"code","b":[234],"m":"nop"},{"a":3314,"t":"code","b":[234],"m":"nop"},{"a":3315,"t":"code","b":[140,17,208],"m":"sty","o":"vic_control1"},{"a":3318,"t":"code","b":[142,22,208],"m":"stx","o":"vic_control2"},{"a":3321,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":3323,"t":"code","b":[142,25,208],"m":"stx","o":"vic_irq_status"},{"a":3326,"t":"code","b":[169,20],"m":"lda","o":"#$14"},{"a":3328,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":3331,"t":"code","b":[169,58],"m":"lda","o":"#$3A"},{"a":3333,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":3336,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":3338,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":3341,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3344,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":3346,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":3349,"t":"code","b":[32,183,15],"m":"jsr","oa":4023,"o":"scroll_main"},{"a":3352,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":3355,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":3358,"t":"code","b":[141,2,208],"m":"sta","o":"vic_sprite1_x"},{"a":3361,"t":"code","b":[141,4,208],"m":"sta","o":"vic_sprite2_x"},{"a":3364,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":3367,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":3370,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":3373,"t":"code","b":[24],"m":"clc"},{"a":3374,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":3376,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":3379,"t":"code","b":[169,136],"m":"lda","o":"#$88"},{"a":3381,"t":"code","b":[162,5],"m":"ldx","o":"#$05"},{"a":3383,"t":"code","b":[160,5],"m":"ldy","o":"#$05"},{"a":3385,"t":"code","b":[64],"m":"rti"},{"a":3386,"l":"irq_level_3","c":"Raster interrupt 3 of 4 of the level chain, on line $14 (set by $0CC9). Keeps A, X and Y in the operands at $0DC1, $0DC3 and $0DC5, acknowledges $D019, masks $D011 with $90 and sets $D016 to its high nibble ORed with the fine scroll $1170. It runs the timer $23D6 and the player sprites $1AE0, sets the low nibble of $D018 to 2, writes the colours $D022=7, $D023=2, $D025=$0B, $D026=8 and later $D025=1, $D026=8, $D029=9, $D027=$D028=0, turns all sprites on ($D015=$FF), clears bit 6 of $D011 and sets sprite 2 double height ($D017=4). It then runs the object update $1C45, reads the keyboard with $2583 into $2582, and sets line $5A and the vector $0DC9.","t":"code","b":[141,193,13],"m":"sta","oa":3521,"o":"$0DC1"},{"a":3389,"t":"code","b":[142,195,13],"m":"stx","oa":3523,"o":"$0DC3"},{"a":3392,"t":"code","b":[140,197,13],"m":"sty","oa":3525,"o":"$0DC5"},{"a":3395,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3397,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":3400,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3403,"t":"code","b":[41,144],"m":"and","o":"#$90"},{"a":3405,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":3408,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":3411,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":3413,"t":"code","b":[13,112,17],"m":"ora","oa":4464,"o":"scroll_fine_b"},{"a":3416,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":3419,"t":"code","b":[32,214,35],"m":"jsr","oa":9174,"o":"timer_update"},{"a":3422,"t":"code","b":[32,224,26],"m":"jsr","oa":6880,"o":"player_sprites"},{"a":3425,"t":"code","b":[173,24,208],"m":"lda","o":"vic_memory"},{"a":3428,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":3430,"t":"code","b":[9,2],"m":"ora","o":"#$02"},{"a":3432,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":3435,"t":"code","b":[162,7],"m":"ldx","o":"#$07"},{"a":3437,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":3439,"t":"code","b":[142,34,208],"m":"stx","o":"vic_background1"},{"a":3442,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":3445,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":3447,"t":"code","b":[141,37,208],"m":"sta","o":"vic_sprite_mc0"},{"a":3450,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":3452,"t":"code","b":[141,38,208],"m":"sta","o":"vic_sprite_mc1"},{"a":3455,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":3457,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":3460,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":3463,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":3465,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":3468,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":3470,"t":"code","b":[141,41,208],"m":"sta","o":"vic_sprite2_colour"},{"a":3473,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3475,"t":"code","b":[141,37,208],"m":"sta","o":"vic_sprite_mc0"},{"a":3478,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":3480,"t":"code","b":[141,38,208],"m":"sta","o":"vic_sprite_mc1"},{"a":3483,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":3485,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":3488,"t":"code","b":[141,40,208],"m":"sta","o":"vic_sprite1_colour"},{"a":3491,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":3493,"t":"code","b":[141,23,208],"m":"sta","o":"vic_sprite_expand_y"},{"a":3496,"t":"code","b":[32,69,28],"m":"jsr","oa":7237,"o":"object_update"},{"a":3499,"t":"code","b":[32,131,37],"m":"jsr","oa":9603,"o":"read_keys"},{"a":3502,"t":"code","b":[141,130,37],"m":"sta","oa":9602,"o":"key_code"},{"a":3505,"t":"code","b":[169,90],"m":"lda","o":"#$5A"},{"a":3507,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":3510,"t":"code","b":[169,201],"m":"lda","o":"#$C9"},{"a":3512,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":3515,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":3517,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":3520,"t":"code","b":[169,136],"m":"lda","o":"#$88"},{"a":3522,"t":"code","b":[162,4],"m":"ldx","o":"#$04"},{"a":3524,"t":"code","b":[160,12],"m":"ldy","o":"#$0C"},{"a":3526,"t":"code","b":[64],"m":"rti"},{"a":3527,"l":"pause_flag","c":"1 while the game is paused, else 0: set and cleared by $2378. Tested by $0FB7, $1347, $1635, $1C45, $23D6 and the raster interrupt at $0DC9.","t":"byte","b":[0],"x":[2803,3608,4023,4935,5685,7242,9089,9115,9202]},{"a":3528,"l":"scroll_x_fine","c":"Fine horizontal scroll value 0 to 7 for the main scroller: $0FB7 takes $0FB0 off it (wrapping through 7) and the raster interrupt at $0DC9 ORs it into $D016.","t":"byte","b":[6],"x":[3555,4130,4151]},{"a":3529,"l":"irq_level_4","c":"Raster interrupt 4 of 4 of the level chain, on line $5A (set by $0D3A). Keeps A, X and Y in the operands at $0E26, $0E28 and $0E2A, acknowledges $D019, sets $D016 to its high nibble ORed with the fine scroll $0DC8, $D018 to $30, $D022=$0F, $D023=$0B and all sprites multicolour ($D01C=$FF). It runs the explosion $239F and the sound driver $B176, sets line $C6 and the vector $0C44, then runs the second scroller $1347 and the player update $1635, and the hit test $1DA1 unless the pause flag $0DC7 is set. It ends by setting the border $D020 to 0.","t":"code","b":[141,38,14],"m":"sta","oa":3622,"o":"$0E26"},{"a":3532,"t":"code","b":[142,40,14],"m":"stx","oa":3624,"o":"$0E28"},{"a":3535,"t":"code","b":[140,42,14],"m":"sty","oa":3626,"o":"$0E2A"},{"a":3538,"t":"code","b":[234],"m":"nop"},{"a":3539,"t":"code","b":[234],"m":"nop"},{"a":3540,"t":"code","b":[234],"m":"nop"},{"a":3541,"t":"code","b":[234],"m":"nop"},{"a":3542,"t":"code","b":[234],"m":"nop"},{"a":3543,"t":"code","b":[234],"m":"nop"},{"a":3544,"t":"code","b":[234],"m":"nop"},{"a":3545,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3547,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":3550,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":3553,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":3555,"t":"code","b":[13,200,13],"m":"ora","oa":3528,"o":"scroll_x_fine"},{"a":3558,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":3561,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":3563,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":3566,"t":"code","b":[162,15],"m":"ldx","o":"#$0F"},{"a":3568,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":3570,"t":"code","b":[142,34,208],"m":"stx","o":"vic_background1"},{"a":3573,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":3576,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":3578,"t":"code","b":[141,28,208],"m":"sta","o":"vic_sprite_multicolour"},{"a":3581,"t":"code","b":[32,159,35],"m":"jsr","oa":9119,"o":"explosion_frame"},{"a":3584,"t":"code","b":[32,118,177],"m":"jsr","oa":45430,"o":"music_play"},{"a":3587,"t":"code","b":[169,198],"m":"lda","o":"#$C6"},{"a":3589,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":3592,"t":"code","b":[169,68],"m":"lda","o":"#$44"},{"a":3594,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":3597,"t":"code","b":[169,12],"m":"lda","o":"#$0C"},{"a":3599,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":3602,"t":"code","b":[32,71,19],"m":"jsr","oa":4935,"o":"scroll_lower"},{"a":3605,"t":"code","b":[32,53,22],"m":"jsr","oa":5685,"o":"player_update"},{"a":3608,"t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag"},{"a":3611,"t":"code","b":[208,3],"m":"bne","oa":3616,"o":"$0E20"},{"a":3613,"t":"code","b":[32,161,29],"m":"jsr","oa":7585,"o":"hit_test"},{"a":3616,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[3611]},{"a":3618,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":3621,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":3623,"t":"code","b":[162,7],"m":"ldx","o":"#$07"},{"a":3625,"t":"code","b":[160,16],"m":"ldy","o":"#$10"},{"a":3627,"t":"code","b":[64],"m":"rti"},{"a":3628,"l":"random","c":"Returns a pseudo-random byte in A. Stores the low three bits of CIA 1 timer A ($DC04) into $0E3D, the offset byte of the branch at $0E3C, adds the timer high byte $DC05 and the seed $0E4B, and takes that branch (carry is set), which skips 0 to 7 of the nine ROL A at $0E3E-$0E46. The result is stored back in the seed $0E4B and returned. Called by $1C45.","t":"code","b":[173,4,220],"m":"lda","o":"cia1_timer_a_lo","x":[7272,17552,19225,19243,19303]},{"a":3631,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":3633,"t":"code","b":[141,61,14],"m":"sta","oa":3645,"o":"$0E3D"},{"a":3636,"t":"code","b":[173,75,14],"m":"lda","oa":3659,"o":"random_seed"},{"a":3639,"t":"code","b":[24],"m":"clc"},{"a":3640,"t":"code","b":[109,5,220],"m":"adc","o":"cia1_timer_a_hi"},{"a":3643,"t":"code","b":[56],"m":"sec"},{"a":3644,"t":"code","b":[176,2],"m":"bcs","oa":3648,"o":"$0E40"},{"a":3646,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3647,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3648,"t":"code","b":[42],"m":"rol","o":"a","x":[3644]},{"a":3649,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3650,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3651,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3652,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3653,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3654,"t":"code","b":[42],"m":"rol","o":"a"},{"a":3655,"t":"code","b":[141,75,14],"m":"sta","oa":3659,"o":"random_seed"},{"a":3658,"t":"code","b":[96],"m":"rts"},{"a":3659,"l":"random_seed","c":"Seed byte of the random routine $0E2C: read, and replaced by each result.","t":"byte","b":[99],"x":[3636,3655]},{"a":3660,"l":"disabled_check","c":"A bare RTS; it does nothing. Called by the main loop at $0A26 once per pass.","t":"code","b":[96],"m":"rts","x":[2598,17033,17484]},{"a":3661,"l":"unused_check","c":"Reads $DD00 (CIA 2 port A) and returns when bit 2 of it is set. When the bit is clear it removes three bytes from the stack (three PLA), disables interrupts and jumps to $0810. No traced code calls or jumps here: the main loop calls $0E4C, which is a bare RTS, so these 15 bytes are never run. The bytes do not say what the check was meant to guard.","t":"code","b":[173,0,221],"m":"lda","o":"cia2_port_a"},{"a":3664,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":3666,"t":"code","b":[240,1],"m":"beq","oa":3669,"o":"$0E55"},{"a":3668,"t":"code","b":[96],"m":"rts"},{"a":3669,"t":"code","b":[104],"m":"pla","x":[3666]},{"a":3670,"t":"code","b":[104],"m":"pla"},{"a":3671,"t":"code","b":[104],"m":"pla"},{"a":3672,"t":"code","b":[120],"m":"sei"},{"a":3673,"t":"code","b":[76,16,8],"m":"jmp","oa":2064,"o":"$0810"},{"a":3676,"l":"fill_screen_cc00","c":"Fills the 1,024 bytes $CC00-$CFFF with the value in A. Called by $0A84 with $97 and with 0.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[2947,3000,9853,9940,16827,20694,20737,23152,23229,23258]},{"a":3678,"t":"code","b":[153,0,204],"m":"sta","oa":52224,"o":"$CC00,y","x":[3691]},{"a":3681,"t":"code","b":[153,0,205],"m":"sta","oa":52480,"o":"$CD00,y"},{"a":3684,"t":"code","b":[153,0,206],"m":"sta","oa":52736,"o":"$CE00,y"},{"a":3687,"t":"code","b":[153,0,207],"m":"sta","oa":52992,"o":"$CF00,y"},{"a":3690,"t":"code","b":[200],"m":"iny"},{"a":3691,"t":"code","b":[208,241],"m":"bne","oa":3678,"o":"$0E5E"},{"a":3693,"t":"code","b":[96],"m":"rts"},{"a":3694,"l":"fill_screen_c800","c":"Fills the 1,024 bytes $C800-$CBFF with the value in A. No caller in the dumped code.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[16934,20742]},{"a":3696,"t":"code","b":[153,0,200],"m":"sta","oa":51200,"o":"$C800,y","x":[3709]},{"a":3699,"t":"code","b":[153,0,201],"m":"sta","oa":51456,"o":"$C900,y"},{"a":3702,"t":"code","b":[153,0,202],"m":"sta","oa":51712,"o":"$CA00,y"},{"a":3705,"t":"code","b":[153,0,203],"m":"sta","oa":51968,"o":"$CB00,y"},{"a":3708,"t":"code","b":[200],"m":"iny"},{"a":3709,"t":"code","b":[208,241],"m":"bne","oa":3696,"o":"$0E70"},{"a":3711,"t":"code","b":[96],"m":"rts"},{"a":3712,"l":"fill_colour_ram","c":"Fills colour RAM $D800-$DBFF with the value in A. Called by $0A84 with 7 and with $0E.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[2952,3005,9858,16832,20699,23157,23263]},{"a":3714,"t":"code","b":[153,0,216],"m":"sta","o":"colour_ram,y","x":[3727]},{"a":3717,"t":"code","b":[153,0,217],"m":"sta","o":"$D900,y"},{"a":3720,"t":"code","b":[153,0,218],"m":"sta","o":"$DA00,y"},{"a":3723,"t":"code","b":[153,0,219],"m":"sta","o":"$DB00,y"},{"a":3726,"t":"code","b":[200],"m":"iny"},{"a":3727,"t":"code","b":[208,241],"m":"bne","oa":3714,"o":"$0E82"},{"a":3729,"t":"code","b":[96],"m":"rts"},{"a":3730,"l":"delay","c":"Delay loop: A is the outer count and the inner loop runs 256 times for each. Called twice by $0A84 with $FF.","t":"code","b":[168],"m":"tay","x":[2820,2825,9899,9904,9909,9914,9919,9924,10187,10271,12859,12864,12869,12932,12937,16817,16822,16968,17139,17209,17243,17323,17465,17470,17475,17489,17494,17499,17602,20243,20261,20295,20375,23178,23183,23251,23295,23375,23380]},{"a":3731,"t":"code","b":[170],"m":"tax","x":[3736]},{"a":3732,"t":"code","b":[202],"m":"dex","x":[3733]},{"a":3733,"t":"code","b":[208,253],"m":"bne","oa":3732,"o":"$0E94"},{"a":3735,"t":"code","b":[136],"m":"dey"},{"a":3736,"t":"code","b":[208,249],"m":"bne","oa":3731,"o":"$0E93"},{"a":3738,"t":"code","b":[96],"m":"rts"},{"a":3739,"l":"nmi_handler","c":"Non-maskable interrupt (vector $FFFA, set by $0A84): sets the flag $0EA3 to 1 and returns with A preserved. The main loop at $0A4C sees the flag, calls $263D and leaves for the loader at $0404.","t":"code","b":[72],"m":"pha"},{"a":3740,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":3742,"t":"code","b":[141,163,14],"m":"sta","oa":3747,"o":"nmi_flag"},{"a":3745,"t":"code","b":[104],"m":"pla"},{"a":3746,"t":"code","b":[64],"m":"rti"},{"a":3747,"l":"nmi_flag","c":"Set to 1 by the NMI handler $0E9B, cleared by $0A84 and by mask_setup ($4F9C, at $506A). The main loop tests it at $0A4C.","t":"byte","b":[0],"x":[2636,2919,3742,20586]},{"a":3748,"l":"pad_0ea4","c":"2 zero bytes after nmi_flag: padding. No traced code reads them.","t":"byte","b":[0,0]},{"a":3750,"l":"joy_port","c":"$0A84 stores $FF here and the raster interrupt at $0C44 stores $DC00 each frame. No other reader in the dumped code.","t":"byte","b":[255],"x":[2835,3217,5899,5930,6030,6065,6072,6100,6128,6388,6416,18144,18157,18932,18968,19001,19037,20433,20901]},{"a":3751,"l":"draw_bottom_rows","c":"Copies 200 bytes from $5D64 to $CEF7 (screen matrix) and 200 bytes from $5E2C to $DAF7 (colour RAM), then clears 40 bytes at $CFC0 and at $DBC0. Called by $0A84 at $0BC0.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[3008,9943,17442,20748,23232]},{"a":3753,"t":"code","b":[185,44,94],"m":"lda","oa":24108,"o":"bottom_colours,y","x":[3768]},{"a":3756,"t":"code","b":[153,247,218],"m":"sta","o":"$DAF7,y"},{"a":3759,"t":"code","b":[185,100,93],"m":"lda","oa":23908,"o":"bottom_chars,y"},{"a":3762,"t":"code","b":[153,247,206],"m":"sta","oa":52983,"o":"$CEF7,y"},{"a":3765,"t":"code","b":[200],"m":"iny"},{"a":3766,"t":"code","b":[192,200],"m":"cpy","o":"#$C8"},{"a":3768,"t":"code","b":[208,239],"m":"bne","oa":3753,"o":"$0EA9"},{"a":3770,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":3772,"t":"code","b":[152],"m":"tya"},{"a":3773,"t":"code","b":[153,192,207],"m":"sta","oa":53184,"o":"$CFC0,y","x":[3782]},{"a":3776,"t":"code","b":[153,192,219],"m":"sta","o":"$DBC0,y"},{"a":3779,"t":"code","b":[200],"m":"iny"},{"a":3780,"t":"code","b":[192,40],"m":"cpy","o":"#$28"},{"a":3782,"t":"code","b":[208,245],"m":"bne","oa":3773,"o":"$0EBD"},{"a":3784,"t":"code","b":[96],"m":"rts"},{"a":3785,"l":"counter_hundreds","c":"First of the three counter digits drawn by $0ECC (at $F9F0).","t":"byte","b":[0],"x":[3828,3931,3962,3970,3976,20466,21320,21341,21380,21388,21394]},{"a":3786,"l":"counter_tens","c":"Second counter digit, drawn at $F9E8; $0A84 sets it to 0.","t":"byte","b":[0],"x":[2840,3936,3979,3987,3993,20469,21346,21397,21405,21411]},{"a":3787,"l":"counter_ones","c":"Third counter digit, drawn at $F9D8; $0A84 sets it to 5.","t":"byte","b":[5],"x":[2845,3941,3996,4004,4010,20474,21351,21414,21422,21428]},{"a":3788,"l":"draw_counter","c":"Draws the three counter digits with $0EF4: $0ECB at $F9D8, $0ECA at $F9E8 and $0EC9 at $F9F0 (it sets $DB/$DC to those addresses and X to 2, 1, 0). Called by the main loop at $0A29 every pass.","t":"code","b":[169,216],"m":"lda","o":"#$D8","x":[2601]},{"a":3790,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":3792,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":3794,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":3796,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":3798,"t":"code","b":[32,244,14],"m":"jsr","oa":3828,"o":"draw_digit"},{"a":3801,"t":"code","b":[169,232],"m":"lda","o":"#$E8"},{"a":3803,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":3805,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":3807,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":3809,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":3811,"t":"code","b":[32,244,14],"m":"jsr","oa":3828,"o":"draw_digit"},{"a":3814,"t":"code","b":[169,240],"m":"lda","o":"#$F0"},{"a":3816,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":3818,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":3820,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":3822,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":3824,"t":"code","b":[32,244,14],"m":"jsr","oa":3828,"o":"draw_digit"},{"a":3827,"t":"code","b":[96],"m":"rts"},{"a":3828,"l":"draw_digit","c":"X is the index into the digit variables at $0EC9. Takes the digit there times 8 as an index into the glyph table $0F09 and copies 8 bytes to the address in $DB/$DC. Called three times by $0ECC.","t":"code","b":[189,201,14],"m":"lda","oa":3785,"o":"counter_hundreds,x","x":[3798,3811,3824]},{"a":3831,"t":"code","b":[10],"m":"asl","o":"a"},{"a":3832,"t":"code","b":[10],"m":"asl","o":"a"},{"a":3833,"t":"code","b":[10],"m":"asl","o":"a"},{"a":3834,"t":"code","b":[170],"m":"tax"},{"a":3835,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":3837,"t":"code","b":[189,9,15],"m":"lda","oa":3849,"o":"digit_glyphs,x","x":[3846]},{"a":3840,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":3842,"t":"code","b":[232],"m":"inx"},{"a":3843,"t":"code","b":[200],"m":"iny"},{"a":3844,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":3846,"t":"code","b":[208,245],"m":"bne","oa":3837,"o":"$0EFD"},{"a":3848,"t":"code","b":[96],"m":"rts"},{"a":3849,"l":"digit_glyphs","c":"Ten glyphs of 8 bytes, one per digit 0 to 9, copied by $0EF4 into character memory.","t":"byte","b":[168,136,136,136,136,136,168,0],"x":[3837,9575,12660,17838,17845,21329]},{"a":3857,"t":"byte","b":[160,32,32,32,32,32,32,0]},{"a":3865,"t":"byte","b":[168,8,8,168,128,128,168,0]},{"a":3873,"t":"byte","b":[168,8,8,40,8,8,168,0]},{"a":3881,"t":"byte","b":[128,128,136,136,168,8,8,0]},{"a":3889,"t":"byte","b":[168,128,168,8,8,8,168,0]},{"a":3897,"t":"byte","b":[160,128,128,168,136,136,168,0]},{"a":3905,"t":"byte","b":[168,8,8,8,8,8,8,0]},{"a":3913,"t":"byte","b":[168,136,136,168,136,136,168,0]},{"a":3921,"t":"byte","b":[168,136,136,168,8,8,168,0]},{"a":3929,"l":"timer_skip","c":"Skip toggle of the mask game timer: $535D finds 0, sets it to 1 and counts the timer down; finds 1 and sets it back to 0 without counting. So the timer drops on every second call. The unreached copy of the routine at $0F5B uses it too.","t":"byte","b":[0],"x":[3947,3953,3959,21365,21371,21377]},{"a":3930,"l":"mask_end_flag","c":"Set to 1 when the mask game is over: by $46C5 after the twelfth capture and by $535D when the timer reaches 0 (both also run $4880). Cleared by $4F9C. Tested by $4286, by the raster interrupts $51DB and $5242. Switches from the player phase to the scan phase.","t":"byte","b":[0],"x":[17039,18258,20551,21034,21142,21358]},{"a":3931,"l":"unused_timer_tick","c":"A copy of mask_timer_tick ($535D) that nothing calls. It counts the three digits $0EC9, $0ECA and $0ECB down by one on every second call, using the skip toggle $0F59 and borrowing from the next digit as $535D does. The difference is the end: when all three digits are 0 it only returns, where $535D sets the mask game's end flag $0F5A to 1 and runs $4880.","t":"code","b":[173,201,14],"m":"lda","oa":3785,"o":"counter_hundreds"},{"a":3934,"t":"code","b":[208,11],"m":"bne","oa":3947,"o":"$0F6B"},{"a":3936,"t":"code","b":[173,202,14],"m":"lda","oa":3786,"o":"counter_tens"},{"a":3939,"t":"code","b":[208,6],"m":"bne","oa":3947,"o":"$0F6B"},{"a":3941,"t":"code","b":[173,203,14],"m":"lda","oa":3787,"o":"counter_ones"},{"a":3944,"t":"code","b":[208,1],"m":"bne","oa":3947,"o":"$0F6B"},{"a":3946,"t":"code","b":[96],"m":"rts"},{"a":3947,"t":"code","b":[174,89,15],"m":"ldx","oa":3929,"o":"timer_skip","x":[3934,3939,3944]},{"a":3950,"t":"code","b":[240,5],"m":"beq","oa":3957,"o":"$0F75"},{"a":3952,"t":"code","b":[202],"m":"dex"},{"a":3953,"t":"code","b":[142,89,15],"m":"stx","oa":3929,"o":"timer_skip"},{"a":3956,"t":"code","b":[96],"m":"rts"},{"a":3957,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[3950]},{"a":3959,"t":"code","b":[141,89,15],"m":"sta","oa":3929,"o":"timer_skip"},{"a":3962,"t":"code","b":[173,201,14],"m":"lda","oa":3785,"o":"counter_hundreds"},{"a":3965,"t":"code","b":[240,7],"m":"beq","oa":3974,"o":"$0F86"},{"a":3967,"t":"code","b":[56],"m":"sec"},{"a":3968,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":3970,"t":"code","b":[141,201,14],"m":"sta","oa":3785,"o":"counter_hundreds"},{"a":3973,"t":"code","b":[96],"m":"rts"},{"a":3974,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[3965]},{"a":3976,"t":"code","b":[141,201,14],"m":"sta","oa":3785,"o":"counter_hundreds"},{"a":3979,"t":"code","b":[173,202,14],"m":"lda","oa":3786,"o":"counter_tens"},{"a":3982,"t":"code","b":[240,7],"m":"beq","oa":3991,"o":"$0F97"},{"a":3984,"t":"code","b":[56],"m":"sec"},{"a":3985,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":3987,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":3990,"t":"code","b":[96],"m":"rts"},{"a":3991,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[3982]},{"a":3993,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":3996,"t":"code","b":[173,203,14],"m":"lda","oa":3787,"o":"counter_ones"},{"a":3999,"t":"code","b":[240,7],"m":"beq","oa":4008,"o":"$0FA8"},{"a":4001,"t":"code","b":[56],"m":"sec"},{"a":4002,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":4004,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":4007,"t":"code","b":[96],"m":"rts"},{"a":4008,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[3999]},{"a":4010,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":4013,"t":"code","b":[96],"m":"rts"},{"a":4014,"l":"map_pos","c":"Map position, low byte then high byte: $0A84 sets $1E5C, $10E6 adds 1 on every second call, $0FB7 resets it to $1E48 and tests it for $1F47 and $1F21. $10E6 passes it to $112B as the pointer $10/$11.","t":"byte","b":[92,30],"x":[3019,4040,4057,4086,4336,4342,4353]},{"a":4016,"l":"scroll_speed","c":"Pixels scrolled per frame; the snapshot holds 2. Cleared to 0 by $1635 each frame and by $0FB7 at the end of the level; subtracted by $0FB7, $1347 and $13F5.","t":"byte","b":[0],"x":[4071,4098,4133,4158,5055,5152,5692,5963,6000,6158,6187,6446,6494,6585,6700,6755]},{"a":4017,"l":"level_done","c":"Set to 1 by $0FB7 when the map position reaches its end in the second run; cleared by $0A84. The main loop tests it at $0A3B and jumps to $4286.","t":"byte","b":[0],"x":[2619,2889,4076]},{"a":4018,"l":"shifted_flag","c":"Cleared by $0FB7 each call and set to 1 by $1056 when the screen has just been moved one character.","t":"byte","b":[0],"x":[4126,4184]},{"a":4019,"l":"scroll_tmp","c":"Scratch byte of $0FB7 and $1347 for the wrap of the fine scroll.","t":"byte","b":[0],"x":[4140,4146,5037,5043]},{"a":4020,"l":"scroll_total","c":"16-bit total, low byte then high byte: $0FB7 adds $0FB0 to it each call. No other reader in the dumped code.","t":"byte","b":[2,0],"x":[4155,4161]},{"a":4022,"l":"second_run","c":"0 in the first run through the map, 1 after $0FB7 has reset the position to $1E48; $0A84 clears it.","t":"byte","b":[0],"x":[2907,4028,4064,4081]},{"a":4023,"l":"scroll_main","c":"Main scroll step, called by the raster interrupt at $0CC9 (at $0D15); returns at once while paused ($0DC7). When the map position $0FAE/$0FAF reaches $1F47 in the first run ($0FB6=0), it sets $0FB6 to 1 and resets the position to $1E48; in the second run it sets $0FB1 to 1 and $0FB0 to 0 at $1F21. Otherwise it takes the speed $0FB0 off the object X $1BF8/$1BF9 (stops the object when below $0F), takes it off the fine scroll $0DC8 (wrapping 0 to 7 and calling $1056 on a wrap, which sets $0FB2) and adds it to the 16-bit $0FB4/$0FB5.","t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag","x":[3349]},{"a":4026,"t":"code","b":[208,51],"m":"bne","oa":4079,"o":"$0FEF"},{"a":4028,"t":"code","b":[174,182,15],"m":"ldx","oa":4022,"o":"second_run"},{"a":4031,"t":"code","b":[240,17],"m":"beq","oa":4050,"o":"$0FD2"},{"a":4033,"t":"code","b":[173,175,15],"m":"lda","oa":4015,"o":"$0FAF"},{"a":4036,"t":"code","b":[201,31],"m":"cmp","o":"#$1F"},{"a":4038,"t":"code","b":[208,54],"m":"bne","oa":4094,"o":"$0FFE"},{"a":4040,"t":"code","b":[173,174,15],"m":"lda","oa":4014,"o":"map_pos"},{"a":4043,"t":"code","b":[201,33],"m":"cmp","o":"#$21"},{"a":4045,"t":"code","b":[144,47],"m":"bcc","oa":4094,"o":"$0FFE"},{"a":4047,"t":"code","b":[76,229,15],"m":"jmp","oa":4069,"o":"$0FE5"},{"a":4050,"t":"code","b":[173,175,15],"m":"lda","oa":4015,"o":"$0FAF","x":[4031]},{"a":4053,"t":"code","b":[201,31],"m":"cmp","o":"#$1F"},{"a":4055,"t":"code","b":[208,37],"m":"bne","oa":4094,"o":"$0FFE"},{"a":4057,"t":"code","b":[173,174,15],"m":"lda","oa":4014,"o":"map_pos"},{"a":4060,"t":"code","b":[201,71],"m":"cmp","o":"#$47"},{"a":4062,"t":"code","b":[144,30],"m":"bcc","oa":4094,"o":"$0FFE"},{"a":4064,"t":"code","b":[174,182,15],"m":"ldx","oa":4022,"o":"second_run"},{"a":4067,"t":"code","b":[240,11],"m":"beq","oa":4080,"o":"$0FF0"},{"a":4069,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[4047]},{"a":4071,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":4074,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":4076,"t":"code","b":[141,177,15],"m":"sta","oa":4017,"o":"level_done"},{"a":4079,"t":"code","b":[96],"m":"rts","x":[4026]},{"a":4080,"t":"code","b":[232],"m":"inx","x":[4067]},{"a":4081,"t":"code","b":[142,182,15],"m":"stx","oa":4022,"o":"second_run"},{"a":4084,"t":"code","b":[169,72],"m":"lda","o":"#$48"},{"a":4086,"t":"code","b":[141,174,15],"m":"sta","oa":4014,"o":"map_pos"},{"a":4089,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":4091,"t":"code","b":[141,175,15],"m":"sta","oa":4015,"o":"$0FAF"},{"a":4094,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x","x":[4038,4045,4055,4062]},{"a":4097,"t":"code","b":[56],"m":"sec"},{"a":4098,"t":"code","b":[237,176,15],"m":"sbc","oa":4016,"o":"scroll_speed"},{"a":4101,"t":"code","b":[141,248,27],"m":"sta","oa":7160,"o":"obj_x"},{"a":4104,"t":"code","b":[168],"m":"tay"},{"a":4105,"t":"code","b":[173,249,27],"m":"lda","oa":7161,"o":"$1BF9"},{"a":4108,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":4110,"t":"code","b":[141,249,27],"m":"sta","oa":7161,"o":"$1BF9"},{"a":4113,"t":"code","b":[208,9],"m":"bne","oa":4124,"o":"$101C"},{"a":4115,"t":"code","b":[192,15],"m":"cpy","o":"#$0F"},{"a":4117,"t":"code","b":[176,5],"m":"bcs","oa":4124,"o":"$101C"},{"a":4119,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":4121,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":4124,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[4113,4117]},{"a":4126,"t":"code","b":[140,178,15],"m":"sty","oa":4018,"o":"shifted_flag"},{"a":4129,"t":"code","b":[56],"m":"sec"},{"a":4130,"t":"code","b":[173,200,13],"m":"lda","oa":3528,"o":"scroll_x_fine"},{"a":4133,"t":"code","b":[237,176,15],"m":"sbc","oa":4016,"o":"scroll_speed"},{"a":4136,"t":"code","b":[16,13],"m":"bpl","oa":4151,"o":"$1037"},{"a":4138,"t":"code","b":[73,255],"m":"eor","o":"#$FF"},{"a":4140,"t":"code","b":[141,179,15],"m":"sta","oa":4019,"o":"scroll_tmp"},{"a":4143,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":4145,"t":"code","b":[56],"m":"sec"},{"a":4146,"t":"code","b":[237,179,15],"m":"sbc","oa":4019,"o":"scroll_tmp"},{"a":4149,"t":"code","b":[160,1],"m":"ldy","o":"#$01"},{"a":4151,"t":"code","b":[141,200,13],"m":"sta","oa":3528,"o":"scroll_x_fine","x":[4136]},{"a":4154,"t":"code","b":[24],"m":"clc"},{"a":4155,"t":"code","b":[173,180,15],"m":"lda","oa":4020,"o":"scroll_total"},{"a":4158,"t":"code","b":[109,176,15],"m":"adc","oa":4016,"o":"scroll_speed"},{"a":4161,"t":"code","b":[141,180,15],"m":"sta","oa":4020,"o":"scroll_total"},{"a":4164,"t":"code","b":[173,181,15],"m":"lda","oa":4021,"o":"$0FB5"},{"a":4167,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":4169,"t":"code","b":[141,181,15],"m":"sta","oa":4021,"o":"$0FB5"},{"a":4172,"t":"code","b":[192,0],"m":"cpy","o":"#$00"},{"a":4174,"t":"code","b":[240,3],"m":"beq","oa":4179,"o":"$1053"},{"a":4176,"t":"code","b":[32,86,16],"m":"jsr","oa":4182,"o":"shift_main_left"},{"a":4179,"t":"code","b":[96],"m":"rts","x":[4174]},{"a":4180,"l":"pad_1054","c":"2 zero bytes before shift_main_left ($1056): padding. No traced code reads them.","t":"byte","b":[0,0]},{"a":4182,"l":"shift_main_left","c":"Sets $0FB2 to 1 and moves 38 characters one place to the left in ten rows of the screen matrix ($CD68, $CD90 ... $CED0, step $28) and in the same ten rows of colour RAM ($D968 ... $DAD0), then calls $10E6 to build the new column. Called by $0FB7.","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[4176]},{"a":4184,"t":"code","b":[141,178,15],"m":"sta","oa":4018,"o":"shifted_flag"},{"a":4187,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":4189,"t":"code","b":[185,105,205],"m":"lda","oa":52585,"o":"$CD69,y","x":[4252]},{"a":4192,"t":"code","b":[153,104,205],"m":"sta","oa":52584,"o":"$CD68,y"},{"a":4195,"t":"code","b":[185,145,205],"m":"lda","oa":52625,"o":"$CD91,y"},{"a":4198,"t":"code","b":[153,144,205],"m":"sta","oa":52624,"o":"$CD90,y"},{"a":4201,"t":"code","b":[185,185,205],"m":"lda","oa":52665,"o":"$CDB9,y"},{"a":4204,"t":"code","b":[153,184,205],"m":"sta","oa":52664,"o":"$CDB8,y"},{"a":4207,"t":"code","b":[185,225,205],"m":"lda","oa":52705,"o":"$CDE1,y"},{"a":4210,"t":"code","b":[153,224,205],"m":"sta","oa":52704,"o":"$CDE0,y"},{"a":4213,"t":"code","b":[185,9,206],"m":"lda","oa":52745,"o":"$CE09,y"},{"a":4216,"t":"code","b":[153,8,206],"m":"sta","oa":52744,"o":"$CE08,y"},{"a":4219,"t":"code","b":[185,49,206],"m":"lda","oa":52785,"o":"$CE31,y"},{"a":4222,"t":"code","b":[153,48,206],"m":"sta","oa":52784,"o":"$CE30,y"},{"a":4225,"t":"code","b":[185,89,206],"m":"lda","oa":52825,"o":"$CE59,y"},{"a":4228,"t":"code","b":[153,88,206],"m":"sta","oa":52824,"o":"$CE58,y"},{"a":4231,"t":"code","b":[185,129,206],"m":"lda","oa":52865,"o":"$CE81,y"},{"a":4234,"t":"code","b":[153,128,206],"m":"sta","oa":52864,"o":"$CE80,y"},{"a":4237,"t":"code","b":[185,169,206],"m":"lda","oa":52905,"o":"$CEA9,y"},{"a":4240,"t":"code","b":[153,168,206],"m":"sta","oa":52904,"o":"$CEA8,y"},{"a":4243,"t":"code","b":[185,209,206],"m":"lda","oa":52945,"o":"$CED1,y"},{"a":4246,"t":"code","b":[153,208,206],"m":"sta","oa":52944,"o":"$CED0,y"},{"a":4249,"t":"code","b":[200],"m":"iny"},{"a":4250,"t":"code","b":[192,38],"m":"cpy","o":"#$26"},{"a":4252,"t":"code","b":[208,191],"m":"bne","oa":4189,"o":"$105D"},{"a":4254,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":4256,"t":"code","b":[185,105,217],"m":"lda","o":"$D969,y","x":[4319]},{"a":4259,"t":"code","b":[153,104,217],"m":"sta","o":"$D968,y"},{"a":4262,"t":"code","b":[185,145,217],"m":"lda","o":"$D991,y"},{"a":4265,"t":"code","b":[153,144,217],"m":"sta","o":"$D990,y"},{"a":4268,"t":"code","b":[185,185,217],"m":"lda","o":"$D9B9,y"},{"a":4271,"t":"code","b":[153,184,217],"m":"sta","o":"$D9B8,y"},{"a":4274,"t":"code","b":[185,225,217],"m":"lda","o":"$D9E1,y"},{"a":4277,"t":"code","b":[153,224,217],"m":"sta","o":"$D9E0,y"},{"a":4280,"t":"code","b":[185,9,218],"m":"lda","o":"$DA09,y"},{"a":4283,"t":"code","b":[153,8,218],"m":"sta","o":"$DA08,y"},{"a":4286,"t":"code","b":[185,49,218],"m":"lda","o":"$DA31,y"},{"a":4289,"t":"code","b":[153,48,218],"m":"sta","o":"$DA30,y"},{"a":4292,"t":"code","b":[185,89,218],"m":"lda","o":"$DA59,y"},{"a":4295,"t":"code","b":[153,88,218],"m":"sta","o":"$DA58,y"},{"a":4298,"t":"code","b":[185,129,218],"m":"lda","o":"$DA81,y"},{"a":4301,"t":"code","b":[153,128,218],"m":"sta","o":"$DA80,y"},{"a":4304,"t":"code","b":[185,169,218],"m":"lda","o":"$DAA9,y"},{"a":4307,"t":"code","b":[153,168,218],"m":"sta","o":"$DAA8,y"},{"a":4310,"t":"code","b":[185,209,218],"m":"lda","o":"$DAD1,y"},{"a":4313,"t":"code","b":[153,208,218],"m":"sta","o":"$DAD0,y"},{"a":4316,"t":"code","b":[200],"m":"iny"},{"a":4317,"t":"code","b":[192,38],"m":"cpy","o":"#$26"},{"a":4319,"t":"code","b":[208,191],"m":"bne","oa":4256,"o":"$10A0"},{"a":4321,"t":"code","b":[32,230,16],"m":"jsr","oa":4326,"o":"new_column"},{"a":4324,"t":"code","b":[96],"m":"rts"},{"a":4325,"l":"half_step","c":"Toggled between 0 and 1 by $10E6; $112B adds it to the table index, and the map position advances when it becomes 0.","t":"byte","b":[1],"x":[4326,4331,4401]},{"a":4326,"l":"new_column","c":"Toggles $10E5 between 0 and 1; when it becomes 0 it adds 1 to the map position $0FAE/$0FAF. Points $10/$11 at the map position, $12/$13 at $CD8E and $14/$15 at $D98E and calls $112B five times, which writes column 38 of rows 9 to 18 in the screen matrix and colour RAM. Called by $1056.","t":"code","b":[173,229,16],"m":"lda","oa":4325,"o":"half_step","x":[4321]},{"a":4329,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":4331,"t":"code","b":[141,229,16],"m":"sta","oa":4325,"o":"half_step"},{"a":4334,"t":"code","b":[208,17],"m":"bne","oa":4353,"o":"$1101"},{"a":4336,"t":"code","b":[173,174,15],"m":"lda","oa":4014,"o":"map_pos"},{"a":4339,"t":"code","b":[24],"m":"clc"},{"a":4340,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":4342,"t":"code","b":[141,174,15],"m":"sta","oa":4014,"o":"map_pos"},{"a":4345,"t":"code","b":[173,175,15],"m":"lda","oa":4015,"o":"$0FAF"},{"a":4348,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":4350,"t":"code","b":[141,175,15],"m":"sta","oa":4015,"o":"$0FAF"},{"a":4353,"t":"code","b":[173,174,15],"m":"lda","oa":4014,"o":"map_pos","x":[4334]},{"a":4356,"t":"code","b":[133,16],"m":"sta","oa":16,"o":"$10"},{"a":4358,"t":"code","b":[173,175,15],"m":"lda","oa":4015,"o":"$0FAF"},{"a":4361,"t":"code","b":[133,17],"m":"sta","oa":17,"o":"$11"},{"a":4363,"t":"code","b":[162,142],"m":"ldx","o":"#$8E"},{"a":4365,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":4367,"t":"code","b":[134,18],"m":"stx","oa":18,"o":"$12"},{"a":4369,"t":"code","b":[132,19],"m":"sty","oa":19,"o":"$13"},{"a":4371,"t":"code","b":[162,142],"m":"ldx","o":"#$8E"},{"a":4373,"t":"code","b":[160,217],"m":"ldy","o":"#$D9"},{"a":4375,"t":"code","b":[134,20],"m":"stx","oa":20,"o":"load_pointer_lo"},{"a":4377,"t":"code","b":[132,21],"m":"sty","oa":21,"o":"load_pointer_hi"},{"a":4379,"t":"code","b":[32,43,17],"m":"jsr","oa":4395,"o":"draw_map_cell"},{"a":4382,"t":"code","b":[32,43,17],"m":"jsr","oa":4395,"o":"draw_map_cell"},{"a":4385,"t":"code","b":[32,43,17],"m":"jsr","oa":4395,"o":"draw_map_cell"},{"a":4388,"t":"code","b":[32,43,17],"m":"jsr","oa":4395,"o":"draw_map_cell"},{"a":4391,"t":"code","b":[32,43,17],"m":"jsr","oa":4395,"o":"draw_map_cell"},{"a":4394,"t":"code","b":[96],"m":"rts"},{"a":4395,"l":"draw_map_cell","c":"Draws one map cell. The map byte at ($10) times 2 plus $10E5 indexes the character tables $5C47 (written to ($12)) and $5CE5 (written to ($12)+$28); the colour of each character from the table $BF00 is written to ($14) and ($14)+$28. Then adds $50 to $12/$13 and $14/$15 and increments $11. Called five times by $10E6.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[4379,4382,4385,4388,4391]},{"a":4397,"t":"code","b":[177,16],"m":"lda","oa":16,"o":"($10),y"},{"a":4399,"t":"code","b":[10],"m":"asl","o":"a"},{"a":4400,"t":"code","b":[24],"m":"clc"},{"a":4401,"t":"code","b":[109,229,16],"m":"adc","oa":4325,"o":"half_step"},{"a":4404,"t":"code","b":[170],"m":"tax"},{"a":4405,"t":"code","b":[189,71,92],"m":"lda","oa":23623,"o":"tile_chars_top,x"},{"a":4408,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":4410,"t":"code","b":[145,18],"m":"sta","oa":18,"o":"($12),y"},{"a":4412,"t":"code","b":[168],"m":"tay"},{"a":4413,"t":"code","b":[185,0,191],"m":"lda","oa":48896,"o":"$BF00,y"},{"a":4416,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":4418,"t":"code","b":[145,20],"m":"sta","oa":20,"o":"(load_pointer_lo),y"},{"a":4420,"t":"code","b":[189,229,92],"m":"lda","oa":23781,"o":"tile_chars_bottom,x"},{"a":4423,"t":"code","b":[160,40],"m":"ldy","o":"#$28"},{"a":4425,"t":"code","b":[145,18],"m":"sta","oa":18,"o":"($12),y"},{"a":4427,"t":"code","b":[168],"m":"tay"},{"a":4428,"t":"code","b":[185,0,191],"m":"lda","oa":48896,"o":"$BF00,y"},{"a":4431,"t":"code","b":[160,40],"m":"ldy","o":"#$28"},{"a":4433,"t":"code","b":[145,20],"m":"sta","oa":20,"o":"(load_pointer_lo),y"},{"a":4435,"t":"code","b":[24],"m":"clc"},{"a":4436,"t":"code","b":[165,18],"m":"lda","oa":18,"o":"$12"},{"a":4438,"t":"code","b":[105,80],"m":"adc","o":"#$50"},{"a":4440,"t":"code","b":[133,18],"m":"sta","oa":18,"o":"$12"},{"a":4442,"t":"code","b":[165,19],"m":"lda","oa":19,"o":"$13"},{"a":4444,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":4446,"t":"code","b":[133,19],"m":"sta","oa":19,"o":"$13"},{"a":4448,"t":"code","b":[24],"m":"clc"},{"a":4449,"t":"code","b":[165,20],"m":"lda","oa":20,"o":"load_pointer_lo"},{"a":4451,"t":"code","b":[105,80],"m":"adc","o":"#$50"},{"a":4453,"t":"code","b":[133,20],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":4455,"t":"code","b":[165,21],"m":"lda","oa":21,"o":"load_pointer_hi"},{"a":4457,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":4459,"t":"code","b":[133,21],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":4461,"t":"code","b":[230,17],"m":"inc","oa":17,"o":"$11"},{"a":4463,"t":"code","b":[96],"m":"rts"},{"a":4464,"l":"scroll_fine_b","c":"Fine scroll 0 to 7 of the second scroller ($1347, $13F5); the raster interrupt at $0D3A ORs it into $D016.","t":"byte","b":[0],"x":[3413,5027,5048,5130,5145]},{"a":4465,"l":"scroll_speed_b","c":"Speed of the current step of the second scroller, loaded from the table $1176 by $1347.","t":"byte","b":[1],"x":[4981,5010,5030,5113,5133]},{"a":4466,"l":"scroll_accum_b","c":"16-bit value, low byte then high byte, changed by $0FB0 in each step of $1347 and $13F5. No other reader in the dumped code.","t":"byte","b":[254,255],"x":[5052,5058,5149,5155]},{"a":4468,"l":"scroll_dir","c":"Direction of the current step of the second scroller, loaded from the table $1176: 0 scrolls through $1347's own code, non-zero calls $13F5.","t":"byte","b":[1],"x":[4975,4997]},{"a":4469,"l":"scroll_count","c":"Frames left in the current step of the second scroller; $1347 loads the next table entry when it is 0.","t":"byte","b":[26],"x":[2883,4940,4987,4990,4994]},{"a":4470,"l":"scroll_script","c":"Entries of three bytes (direction, speed, count) read through the pointer $16/$17 by $1347; the table ends with $FF $FF $FF at $1344 and a first byte with bit 7 set sends the pointer back to $1176.","t":"byte","b":[1,4,8,1,3,8,1,2]},{"a":4478,"t":"byte","b":[8,1,1,8,1,0,8,0]},{"a":4486,"t":"byte","b":[1,200,1,2,10,1,3,10]},{"a":4494,"t":"byte","b":[1,4,8,1,5,8,1,3]},{"a":4502,"t":"byte","b":[8,1,2,8,1,1,14,0]},{"a":4510,"t":"byte","b":[0,10,0,1,14,0,2,12]},{"a":4518,"t":"byte","b":[0,3,10,0,1,10,1,2]},{"a":4526,"t":"byte","b":[10,1,1,10,0,1,120,1]},{"a":4534,"t":"byte","b":[1,20,1,2,60,1,1,30]},{"a":4542,"t":"byte","b":[0,1,10,0,1,20,0,0]},{"a":4550,"t":"byte","b":[20,1,1,30,0,0,10,0]},{"a":4558,"t":"byte","b":[1,10,0,2,10,0,1,8]},{"a":4566,"t":"byte","b":[0,0,8,1,1,10,1,2]},{"a":4574,"t":"byte","b":[10,1,2,8,1,1,8,0]},{"a":4582,"t":"byte","b":[0,40,0,1,10,0,2,10]},{"a":4590,"t":"byte","b":[0,3,10,0,2,20,0,1]},{"a":4598,"t":"byte","b":[30,0,0,10,1,1,10,1]},{"a":4606,"t":"byte","b":[2,11,1,3,20,1,2,10]},{"a":4614,"t":"byte","b":[1,1,10,0,0,5,0,1]},{"a":4622,"t":"byte","b":[10,0,2,10,0,3,30,0]},{"a":4630,"t":"byte","b":[2,15,0,1,10,0,0,80]},{"a":4638,"t":"byte","b":[1,1,1,1,0,1,1,1]},{"a":4646,"t":"byte","b":[4,1,2,10,1,2,40,1]},{"a":4654,"t":"byte","b":[1,38,0,0,5,0,1,27]},{"a":4662,"t":"byte","b":[1,1,4,1,2,4,1,3]},{"a":4670,"t":"byte","b":[4,1,2,4,1,1,4,1]},{"a":4678,"t":"byte","b":[0,4,0,1,4,0,2,4]},{"a":4686,"t":"byte","b":[0,3,4,0,4,20,0,0]},{"a":4694,"t":"byte","b":[40,1,1,40,0,0,50,1]},{"a":4702,"t":"byte","b":[4,10,0,0,50,0,1,150]},{"a":4710,"t":"byte","b":[0,0,50,1,1,5,1,2]},{"a":4718,"t":"byte","b":[5,1,3,5,1,4,5,1]},{"a":4726,"t":"byte","b":[5,5,1,6,5,1,7,5]},{"a":4734,"t":"byte","b":[1,8,5,0,0,80,0,2]},{"a":4742,"t":"byte","b":[20,0,0,50,0,2,20,0]},{"a":4750,"t":"byte","b":[0,50,0,2,20,0,0,50]},{"a":4758,"t":"byte","b":[0,2,20,1,1,160,0,1]},{"a":4766,"t":"byte","b":[5,0,2,5,0,3,5,0]},{"a":4774,"t":"byte","b":[4,5,0,5,5,0,6,5]},{"a":4782,"t":"byte","b":[0,5,5,0,4,5,0,3]},{"a":4790,"t":"byte","b":[5,0,2,5,0,1,5,0]},{"a":4798,"t":"byte","b":[0,60,1,1,80,0,0,60]},{"a":4806,"t":"byte","b":[0,1,30,0,2,20,0,0]},{"a":4814,"t":"byte","b":[50,1,1,3,1,2,3,1]},{"a":4822,"t":"byte","b":[3,3,1,4,3,1,5,3]},{"a":4830,"t":"byte","b":[1,6,3,1,7,3,1,7]},{"a":4838,"t":"byte","b":[3,1,6,3,1,5,3,1]},{"a":4846,"t":"byte","b":[4,3,1,3,3,1,2,3]},{"a":4854,"t":"byte","b":[1,1,3,0,1,160,0,0]},{"a":4862,"t":"byte","b":[30,1,2,40,0,0,30,0]},{"a":4870,"t":"byte","b":[2,40,1,1,2,1,2,2]},{"a":4878,"t":"byte","b":[1,3,2,1,4,2,1,5]},{"a":4886,"t":"byte","b":[2,1,6,2,1,7,2,1]},{"a":4894,"t":"byte","b":[8,2,1,7,2,1,6,2]},{"a":4902,"t":"byte","b":[1,5,2,1,4,2,1,3]},{"a":4910,"t":"byte","b":[2,1,2,2,1,1,2,0]},{"a":4918,"t":"byte","b":[0,200,0,1,150,0,0,100]},{"a":4926,"t":"byte","b":[1,4,30,0,0,50,255,255]},{"a":4934,"t":"byte","b":[255]},{"a":4935,"l":"scroll_lower","c":"Second scroller, called by the raster interrupt at $0DC9 (at $0E12); returns at once while paused ($0DC7). When the count $1175 is 0 it advances the pointer $16/$17 by 3 into the table at $1176 (a first byte with bit 7 set sends it back to $1176) and loads the direction $1174, the speed $1171 and the count $1175; then it decrements $1175. A non-zero $1174 calls $13F5. Otherwise it takes the speed off $1BFB/$1BFC and off the fine scroll $1170 (wrapping 0 to 7 and calling $13D5 on a wrap), and adds $0FB0 to $1172/$1173.","t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag","x":[3602]},{"a":4938,"t":"code","b":[208,65],"m":"bne","oa":5005,"o":"$138D"},{"a":4940,"t":"code","b":[173,117,17],"m":"lda","oa":4469,"o":"scroll_count"},{"a":4943,"t":"code","b":[208,45],"m":"bne","oa":4990,"o":"$137E"},{"a":4945,"t":"code","b":[24],"m":"clc"},{"a":4946,"t":"code","b":[165,22],"m":"lda","oa":22,"o":"serial_byte"},{"a":4948,"t":"code","b":[105,3],"m":"adc","o":"#$03"},{"a":4950,"t":"code","b":[133,22],"m":"sta","oa":22,"o":"serial_byte"},{"a":4952,"t":"code","b":[165,23],"m":"lda","oa":23,"o":"$17"},{"a":4954,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":4956,"t":"code","b":[133,23],"m":"sta","oa":23,"o":"$17"},{"a":4958,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[4972]},{"a":4960,"t":"code","b":[177,22],"m":"lda","oa":22,"o":"(serial_byte),y"},{"a":4962,"t":"code","b":[16,11],"m":"bpl","oa":4975,"o":"$136F"},{"a":4964,"t":"code","b":[169,118],"m":"lda","o":"#$76"},{"a":4966,"t":"code","b":[133,22],"m":"sta","oa":22,"o":"serial_byte"},{"a":4968,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":4970,"t":"code","b":[133,23],"m":"sta","oa":23,"o":"$17"},{"a":4972,"t":"code","b":[76,94,19],"m":"jmp","oa":4958,"o":"$135E"},{"a":4975,"t":"code","b":[141,116,17],"m":"sta","oa":4468,"o":"scroll_dir","x":[4962]},{"a":4978,"t":"code","b":[200],"m":"iny"},{"a":4979,"t":"code","b":[177,22],"m":"lda","oa":22,"o":"(serial_byte),y"},{"a":4981,"t":"code","b":[141,113,17],"m":"sta","oa":4465,"o":"scroll_speed_b"},{"a":4984,"t":"code","b":[200],"m":"iny"},{"a":4985,"t":"code","b":[177,22],"m":"lda","oa":22,"o":"(serial_byte),y"},{"a":4987,"t":"code","b":[141,117,17],"m":"sta","oa":4469,"o":"scroll_count"},{"a":4990,"t":"code","b":[174,117,17],"m":"ldx","oa":4469,"o":"scroll_count","x":[4943]},{"a":4993,"t":"code","b":[202],"m":"dex"},{"a":4994,"t":"code","b":[142,117,17],"m":"stx","oa":4469,"o":"scroll_count"},{"a":4997,"t":"code","b":[173,116,17],"m":"lda","oa":4468,"o":"scroll_dir"},{"a":5000,"t":"code","b":[240,4],"m":"beq","oa":5006,"o":"$138E"},{"a":5002,"t":"code","b":[32,245,19],"m":"jsr","oa":5109,"o":"scroll_lower_right"},{"a":5005,"t":"code","b":[96],"m":"rts","x":[4938]},{"a":5006,"t":"code","b":[173,251,27],"m":"lda","oa":7163,"o":"launch_x","x":[5000]},{"a":5009,"t":"code","b":[56],"m":"sec"},{"a":5010,"t":"code","b":[237,113,17],"m":"sbc","oa":4465,"o":"scroll_speed_b"},{"a":5013,"t":"code","b":[141,251,27],"m":"sta","oa":7163,"o":"launch_x"},{"a":5016,"t":"code","b":[173,252,27],"m":"lda","oa":7164,"o":"$1BFC"},{"a":5019,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":5021,"t":"code","b":[141,252,27],"m":"sta","oa":7164,"o":"$1BFC"},{"a":5024,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":5026,"t":"code","b":[56],"m":"sec"},{"a":5027,"t":"code","b":[173,112,17],"m":"lda","oa":4464,"o":"scroll_fine_b"},{"a":5030,"t":"code","b":[237,113,17],"m":"sbc","oa":4465,"o":"scroll_speed_b"},{"a":5033,"t":"code","b":[16,13],"m":"bpl","oa":5048,"o":"$13B8"},{"a":5035,"t":"code","b":[73,255],"m":"eor","o":"#$FF"},{"a":5037,"t":"code","b":[141,179,15],"m":"sta","oa":4019,"o":"scroll_tmp"},{"a":5040,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":5042,"t":"code","b":[56],"m":"sec"},{"a":5043,"t":"code","b":[237,179,15],"m":"sbc","oa":4019,"o":"scroll_tmp"},{"a":5046,"t":"code","b":[160,1],"m":"ldy","o":"#$01"},{"a":5048,"t":"code","b":[141,112,17],"m":"sta","oa":4464,"o":"scroll_fine_b","x":[5033]},{"a":5051,"t":"code","b":[24],"m":"clc"},{"a":5052,"t":"code","b":[173,114,17],"m":"lda","oa":4466,"o":"scroll_accum_b"},{"a":5055,"t":"code","b":[109,176,15],"m":"adc","oa":4016,"o":"scroll_speed"},{"a":5058,"t":"code","b":[141,114,17],"m":"sta","oa":4466,"o":"scroll_accum_b"},{"a":5061,"t":"code","b":[173,115,17],"m":"lda","oa":4467,"o":"$1173"},{"a":5064,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":5066,"t":"code","b":[141,115,17],"m":"sta","oa":4467,"o":"$1173"},{"a":5069,"t":"code","b":[192,0],"m":"cpy","o":"#$00"},{"a":5071,"t":"code","b":[240,3],"m":"beq","oa":5076,"o":"$13D4"},{"a":5073,"t":"code","b":[32,213,19],"m":"jsr","oa":5077,"o":"shift_rows_left"},{"a":5076,"t":"code","b":[96],"m":"rts","x":[5071]},{"a":5077,"l":"shift_rows_left","c":"Moves 38 characters one place to the left in four rows of the screen matrix ($CC28, $CC50, $CC78, $CCA0). Called by $1347 when the fine scroll $1170 wraps.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[5073]},{"a":5079,"t":"code","b":[185,41,204],"m":"lda","oa":52265,"o":"$CC29,y","x":[5106]},{"a":5082,"t":"code","b":[153,40,204],"m":"sta","oa":52264,"o":"$CC28,y"},{"a":5085,"t":"code","b":[185,81,204],"m":"lda","oa":52305,"o":"$CC51,y"},{"a":5088,"t":"code","b":[153,80,204],"m":"sta","oa":52304,"o":"$CC50,y"},{"a":5091,"t":"code","b":[185,121,204],"m":"lda","oa":52345,"o":"$CC79,y"},{"a":5094,"t":"code","b":[153,120,204],"m":"sta","oa":52344,"o":"$CC78,y"},{"a":5097,"t":"code","b":[185,161,204],"m":"lda","oa":52385,"o":"$CCA1,y"},{"a":5100,"t":"code","b":[153,160,204],"m":"sta","oa":52384,"o":"$CCA0,y"},{"a":5103,"t":"code","b":[200],"m":"iny"},{"a":5104,"t":"code","b":[192,38],"m":"cpy","o":"#$26"},{"a":5106,"t":"code","b":[208,227],"m":"bne","oa":5079,"o":"$13D7"},{"a":5108,"t":"code","b":[96],"m":"rts"},{"a":5109,"l":"scroll_lower_right","c":"Scroll step for a non-zero direction $1174, called by $1347. Adds the speed $1171 to $1BFB/$1BFC and to the fine scroll $1170 (wrapping at 8 and calling $1436 on a wrap), and takes $0FB0 off $1172/$1173.","t":"code","b":[173,251,27],"m":"lda","oa":7163,"o":"launch_x","x":[5002]},{"a":5112,"t":"code","b":[24],"m":"clc"},{"a":5113,"t":"code","b":[109,113,17],"m":"adc","oa":4465,"o":"scroll_speed_b"},{"a":5116,"t":"code","b":[141,251,27],"m":"sta","oa":7163,"o":"launch_x"},{"a":5119,"t":"code","b":[173,252,27],"m":"lda","oa":7164,"o":"$1BFC"},{"a":5122,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":5124,"t":"code","b":[141,252,27],"m":"sta","oa":7164,"o":"$1BFC"},{"a":5127,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":5129,"t":"code","b":[24],"m":"clc"},{"a":5130,"t":"code","b":[173,112,17],"m":"lda","oa":4464,"o":"scroll_fine_b"},{"a":5133,"t":"code","b":[109,113,17],"m":"adc","oa":4465,"o":"scroll_speed_b"},{"a":5136,"t":"code","b":[201,8],"m":"cmp","o":"#$08"},{"a":5138,"t":"code","b":[144,5],"m":"bcc","oa":5145,"o":"$1419"},{"a":5140,"t":"code","b":[56],"m":"sec"},{"a":5141,"t":"code","b":[233,8],"m":"sbc","o":"#$08"},{"a":5143,"t":"code","b":[160,1],"m":"ldy","o":"#$01"},{"a":5145,"t":"code","b":[141,112,17],"m":"sta","oa":4464,"o":"scroll_fine_b","x":[5138]},{"a":5148,"t":"code","b":[56],"m":"sec"},{"a":5149,"t":"code","b":[173,114,17],"m":"lda","oa":4466,"o":"scroll_accum_b"},{"a":5152,"t":"code","b":[237,176,15],"m":"sbc","oa":4016,"o":"scroll_speed"},{"a":5155,"t":"code","b":[141,114,17],"m":"sta","oa":4466,"o":"scroll_accum_b"},{"a":5158,"t":"code","b":[173,115,17],"m":"lda","oa":4467,"o":"$1173"},{"a":5161,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":5163,"t":"code","b":[141,115,17],"m":"sta","oa":4467,"o":"$1173"},{"a":5166,"t":"code","b":[192,0],"m":"cpy","o":"#$00"},{"a":5168,"t":"code","b":[240,3],"m":"beq","oa":5173,"o":"$1435"},{"a":5170,"t":"code","b":[32,54,20],"m":"jsr","oa":5174,"o":"shift_rows_right"},{"a":5173,"t":"code","b":[96],"m":"rts","x":[5168]},{"a":5174,"l":"shift_rows_right","c":"Moves 38 characters one place to the right in four rows of the screen matrix ($CC28, $CC50, $CC78, $CCA0), from column $25 down to 0. Called by $13F5.","t":"code","b":[160,37],"m":"ldy","o":"#$25","x":[5170]},{"a":5176,"t":"code","b":[185,40,204],"m":"lda","oa":52264,"o":"$CC28,y","x":[5201]},{"a":5179,"t":"code","b":[153,41,204],"m":"sta","oa":52265,"o":"$CC29,y"},{"a":5182,"t":"code","b":[185,80,204],"m":"lda","oa":52304,"o":"$CC50,y"},{"a":5185,"t":"code","b":[153,81,204],"m":"sta","oa":52305,"o":"$CC51,y"},{"a":5188,"t":"code","b":[185,120,204],"m":"lda","oa":52344,"o":"$CC78,y"},{"a":5191,"t":"code","b":[153,121,204],"m":"sta","oa":52345,"o":"$CC79,y"},{"a":5194,"t":"code","b":[185,160,204],"m":"lda","oa":52384,"o":"$CCA0,y"},{"a":5197,"t":"code","b":[153,161,204],"m":"sta","oa":52385,"o":"$CCA1,y"},{"a":5200,"t":"code","b":[136],"m":"dey"},{"a":5201,"t":"code","b":[16,229],"m":"bpl","oa":5176,"o":"$1438"},{"a":5203,"t":"code","b":[96],"m":"rts"},{"a":5204,"l":"draw_block","c":"Copies four rows of 12 bytes from $2348, $2354, $2360 and $236C to $CC3C, $CC64, $CC8C and $CCB4 in the screen matrix. Called once by $0A84 at $0BC3.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[3011]},{"a":5206,"t":"code","b":[185,72,35],"m":"lda","oa":9032,"o":"block_chars,y","x":[5233]},{"a":5209,"t":"code","b":[153,60,204],"m":"sta","oa":52284,"o":"$CC3C,y"},{"a":5212,"t":"code","b":[185,84,35],"m":"lda","oa":9044,"o":"$2354,y"},{"a":5215,"t":"code","b":[153,100,204],"m":"sta","oa":52324,"o":"$CC64,y"},{"a":5218,"t":"code","b":[185,96,35],"m":"lda","oa":9056,"o":"$2360,y"},{"a":5221,"t":"code","b":[153,140,204],"m":"sta","oa":52364,"o":"$CC8C,y"},{"a":5224,"t":"code","b":[185,108,35],"m":"lda","oa":9068,"o":"$236C,y"},{"a":5227,"t":"code","b":[153,180,204],"m":"sta","oa":52404,"o":"$CCB4,y"},{"a":5230,"t":"code","b":[200],"m":"iny"},{"a":5231,"t":"code","b":[192,12],"m":"cpy","o":"#$0C"},{"a":5233,"t":"code","b":[208,227],"m":"bne","oa":5206,"o":"$1456"},{"a":5235,"t":"code","b":[96],"m":"rts"},{"a":5236,"l":"start_rows_a","c":"200 bytes copied to $CD68 by $1604, with colours from $BF00 to $D968.","t":"byte","b":[1,0,1,0,1,0,1,0],"x":[5638]},{"a":5244,"t":"byte","b":[1,106,107,0,1,0,1,0]},{"a":5252,"t":"byte","b":[1,0,1,0,1,0,1,0]},{"a":5260,"t":"byte","b":[1,0,1,0,1,0,1,88]},{"a":5268,"t":"byte","b":[89,90,91,0,1,0,1,0]},{"a":5276,"t":"byte","b":[41,40,41,40,41,40,41,40]},{"a":5284,"t":"byte","b":[41,146,147,40,41,40,41,40]},{"a":5292,"t":"byte","b":[41,40,41,40,41,40,41,40]},{"a":5300,"t":"byte","b":[41,40,41,40,41,40,41,128]},{"a":5308,"t":"byte","b":[129,130,131,40,41,40,41,0]},{"a":5316,"t":"byte","b":[3,12,13,14,15,2,3,2]},{"a":5324,"t":"byte","b":[3,2,3,2,3,2,3,2]},{"a":5332,"t":"byte","b":[3,4,5,2,3,2,3,2]},{"a":5340,"t":"byte","b":[3,2,3,2,3,2,3,2]},{"a":5348,"t":"byte","b":[3,4,5,2,3,4,5,0]},{"a":5356,"t":"byte","b":[43,52,53,54,55,42,43,42]},{"a":5364,"t":"byte","b":[43,42,43,42,43,42,43,42]},{"a":5372,"t":"byte","b":[43,44,45,42,43,42,43,42]},{"a":5380,"t":"byte","b":[43,42,43,42,43,42,43,42]},{"a":5388,"t":"byte","b":[43,44,45,42,43,44,45,0]},{"a":5396,"t":"byte","b":[35,108,109,110,111,34,35,34]},{"a":5404,"t":"byte","b":[35,34,35,80,81,34,35,34]},{"a":5412,"t":"byte","b":[35,34,35,34,35,34,35,82]},{"a":5420,"t":"byte","b":[83,34,35,34,35,34,35,80]},{"a":5428,"t":"byte","b":[81,34,35,34,35,82,83,0]},{"a":5436,"l":"start_rows_b","c":"200 bytes copied to $CE30 by $1604, with colours from $BF00 to $DA30.","t":"byte","b":[75,148,149,150,151,74,75,74],"x":[5651]},{"a":5444,"t":"byte","b":[75,74,75,120,121,74,75,74]},{"a":5452,"t":"byte","b":[75,74,75,74,75,74,75,122]},{"a":5460,"t":"byte","b":[123,74,75,74,75,74,75,120]},{"a":5468,"t":"byte","b":[121,74,75,74,75,122,123,0]},{"a":5476,"t":"byte","b":[83,108,109,110,111,34,35,34]},{"a":5484,"t":"byte","b":[35,34,35,82,83,80,81,34]},{"a":5492,"t":"byte","b":[35,34,35,34,35,82,83,36]},{"a":5500,"t":"byte","b":[37,80,81,34,35,34,35,34]},{"a":5508,"t":"byte","b":[35,112,113,112,113,114,115,0]},{"a":5516,"t":"byte","b":[123,148,149,150,151,74,75,74]},{"a":5524,"t":"byte","b":[75,74,75,122,123,120,121,74]},{"a":5532,"t":"byte","b":[75,74,75,74,75,122,123,76]},{"a":5540,"t":"byte","b":[77,120,121,74,75,74,75,74]},{"a":5548,"t":"byte","b":[75,152,153,152,153,154,155,0]},{"a":5556,"t":"byte","b":[35,108,109,110,111,114,115,114]},{"a":5564,"t":"byte","b":[115,114,115,36,37,34,35,80]},{"a":5572,"t":"byte","b":[81,34,35,34,35,34,35,82]},{"a":5580,"t":"byte","b":[83,34,35,80,81,34,35,34]},{"a":5588,"t":"byte","b":[35,114,115,114,115,114,115,0]},{"a":5596,"t":"byte","b":[75,148,149,150,151,154,155,154]},{"a":5604,"t":"byte","b":[155,154,155,76,77,74,75,120]},{"a":5612,"t":"byte","b":[121,74,75,74,75,74,75,122]},{"a":5620,"t":"byte","b":[123,74,75,120,121,74,75,74]},{"a":5628,"t":"byte","b":[75,154,155,154,155,154,155,0]},{"a":5636,"l":"draw_start_rows","c":"Copies 200 bytes from $1474 to $CD68 and 200 bytes from $153C to $CE30 in the screen matrix, and writes the colour of each character, taken from the table $BF00, to $D968 and $DA30. Called once by $0A84 at $0BC6.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[3014]},{"a":5638,"t":"code","b":[185,116,20],"m":"lda","oa":5236,"o":"start_rows_a,y","x":[5667]},{"a":5641,"t":"code","b":[153,104,205],"m":"sta","oa":52584,"o":"$CD68,y"},{"a":5644,"t":"code","b":[170],"m":"tax"},{"a":5645,"t":"code","b":[189,0,191],"m":"lda","oa":48896,"o":"$BF00,x"},{"a":5648,"t":"code","b":[153,104,217],"m":"sta","o":"$D968,y"},{"a":5651,"t":"code","b":[185,60,21],"m":"lda","oa":5436,"o":"start_rows_b,y"},{"a":5654,"t":"code","b":[153,48,206],"m":"sta","oa":52784,"o":"$CE30,y"},{"a":5657,"t":"code","b":[170],"m":"tax"},{"a":5658,"t":"code","b":[189,0,191],"m":"lda","oa":48896,"o":"$BF00,x"},{"a":5661,"t":"code","b":[153,48,218],"m":"sta","o":"$DA30,y"},{"a":5664,"t":"code","b":[200],"m":"iny"},{"a":5665,"t":"code","b":[192,200],"m":"cpy","o":"#$C8"},{"a":5667,"t":"code","b":[208,225],"m":"bne","oa":5638,"o":"$1606"},{"a":5669,"t":"code","b":[96],"m":"rts"},{"a":5670,"l":"player_state","c":"Selects the player routine: $1635 calls the one at $1627 + 2 x this value. $0A84 sets it to 1; $1DA1 sets it to 4 on a hit unless it is 3; $1AE0 and $1DA1 treat 3 and 4 specially.","t":"byte","b":[1],"x":[2850,5707,6026,6039,6223,6345,6385,6464,6497,6609,6649,6718,6758,6880,7614,7734,7743]},{"a":5671,"l":"player_routines","c":"Five routine addresses, low byte first: $1665, $16FA, $17D4, $18B4 and $19B7. $1635 writes the one selected by $1626 into the operand of the JSR at $165C.","t":"byte","b":[101,22,250,22,212,23,180,24],"x":[5712]},{"a":5679,"t":"byte","b":[183,25]},{"a":5681,"l":"player_x_prev","c":"Copy of the player X $1633 made by $1635 before it calls the player routine.","t":"byte","b":[240],"x":[5698,5992,6179,6486,6747]},{"a":5682,"l":"player_y_prev","c":"Copy of the player Y $1634 made by $1635 before it calls the player routine.","t":"byte","b":[95],"x":[5704,6652]},{"a":5683,"l":"player_x","c":"Player X position. $0A84 sets it to $F0; the raster interrupt at $0CC9 writes it to the sprite X registers $D000, $D002 and $D004; $1DA1 compares it with the object X.","t":"byte","b":[240],"x":[2855,3352,5695,5914,5924,5945,5955,5995,6112,6122,6140,6150,6182,6400,6410,6428,6438,6489,6666,6676,6682,6692,6750,7042,7077,7633,7639,7649]},{"a":5684,"l":"player_y","c":"Player Y position. $0A84 sets it to $5F; the raster interrupt at $0CC9 writes it to $D001 and $D005 and plus $15 to $D003; $0A75 tests it against $A0.","t":"byte","b":[95],"x":[2677,2860,3364,5701,5882,5887,6190,6196,6328,6334,6358,6592,6598,6622,6655,6740,7059,7094,7621]},{"a":5685,"l":"player_update","c":"Called by the raster interrupt at $0DC9 (at $0E15). Unless paused ($0DC7), it clears $0FB0, copies the player X/Y $1633/$1634 to $1631/$1632 and calls the routine whose address is in the word table at $1627 selected by $1626 (the address is written into the operand of the JSR at $165C). It always ends by calling $1AE0.","t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag","x":[3605]},{"a":5688,"t":"code","b":[208,37],"m":"bne","oa":5727,"o":"$165F"},{"a":5690,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5692,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":5695,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":5698,"t":"code","b":[141,49,22],"m":"sta","oa":5681,"o":"player_x_prev"},{"a":5701,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":5704,"t":"code","b":[141,50,22],"m":"sta","oa":5682,"o":"player_y_prev"},{"a":5707,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state"},{"a":5710,"t":"code","b":[10],"m":"asl","o":"a"},{"a":5711,"t":"code","b":[168],"m":"tay"},{"a":5712,"t":"code","b":[185,39,22],"m":"lda","oa":5671,"o":"player_routines,y"},{"a":5715,"t":"code","b":[141,93,22],"m":"sta","oa":5725,"o":"$165D"},{"a":5718,"t":"code","b":[185,40,22],"m":"lda","oa":5672,"o":"$1628,y"},{"a":5721,"t":"code","b":[141,94,22],"m":"sta","oa":5726,"o":"$165E"},{"a":5724,"t":"code","b":[32,250,22],"m":"jsr","oa":5882,"o":"player_walk"},{"a":5727,"t":"code","b":[32,224,26],"m":"jsr","oa":6880,"o":"player_sprites","x":[5688]},{"a":5730,"t":"code","b":[96],"m":"rts"},{"a":5731,"l":"player_update_pad","c":"Two zero bytes between the RTS that ends player_update ($1635) and player_idle. Nothing reads them.","t":"byte","b":[0,0]},{"a":5733,"l":"player_idle","c":"Routine for player state 0 in the table player_routines ($1627): a bare RTS. $1635 would run it if $1626 were 0; the traced code sets $1626 only to 1, 2, 3 or 4, so it is not run.","t":"code","b":[96],"m":"rts"},{"a":5734,"l":"walk_frame_index","c":"Position 0 to 17 in the two walking-frame tables $1667 and $1679. $168C and $16AD add 1 to it on every second call and wrap it from 18 to 0. The unreached routines $1A99 and $1ABA use it the same way with a wrap at 12.","t":"byte","b":[0],"x":[5782,5792,5795,5815,5825,5828,6819,6829,6832,6852,6862,6865]},{"a":5735,"l":"walk_frames_left","c":"18 sprite pointers, three of each of $9D, $9E, $9F, $A0, $A1 and $A2: the frames of the player walking left. $168C copies the entry at the index $1666 to the frame number $1ADB. The shapes are at $E740 (walk_left_shapes); $A0 is also the standing frame facing left (stored by the state routines).","t":"byte","b":[157,157,157,158,158,158,159,159],"x":[5798]},{"a":5743,"t":"byte","b":[159,160,160,160,161,161,161,162]},{"a":5751,"t":"byte","b":[162,162]},{"a":5753,"l":"walk_frames_right","c":"18 sprite pointers, three of each of $97, $98, $99, $9A, $9B and $9C: the frames of the player walking right. $16AD copies the entry at the index $1666 to the frame number $1ADB. The shapes are at $E5C0 (walk_right_shapes); $9A is also the standing frame facing right.","t":"byte","b":[151,151,151,152,152,152,153,153],"x":[5831]},{"a":5761,"t":"byte","b":[153,154,154,154,155,155,155,156]},{"a":5769,"t":"byte","b":[156,156]},{"a":5771,"l":"walk_toggle","c":"Flips between 0 and 1 on each call of $168C and $16AD (and of $1A99 and $1ABA). The frame index $1666 moves on only when the flip makes it 1, so the index advances on every second call and each frame lasts six calls (the tables repeat each pointer three times).","t":"byte","b":[0],"x":[5772,5777,5805,5810,6809,6814,6842,6847]},{"a":5772,"l":"walk_left_frame","c":"Next frame of the walk to the left. Flips $168B and, when it becomes 1, adds 1 to $1666 (back to 0 at 18). Then stores the pointer at $1667 plus $1666 in the frame number $1ADB. Called by player_walk ($16FA) at $1717 when the joystick is pushed left.","t":"code","b":[173,139,22],"m":"lda","oa":5771,"o":"walk_toggle","x":[5911]},{"a":5775,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":5777,"t":"code","b":[141,139,22],"m":"sta","oa":5771,"o":"walk_toggle"},{"a":5780,"t":"code","b":[240,13],"m":"beq","oa":5795,"o":"$16A3"},{"a":5782,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index"},{"a":5785,"t":"code","b":[232],"m":"inx"},{"a":5786,"t":"code","b":[224,18],"m":"cpx","o":"#$12"},{"a":5788,"t":"code","b":[144,2],"m":"bcc","oa":5792,"o":"$16A0"},{"a":5790,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":5792,"t":"code","b":[142,102,22],"m":"stx","oa":5734,"o":"walk_frame_index","x":[5788]},{"a":5795,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index","x":[5780]},{"a":5798,"t":"code","b":[189,103,22],"m":"lda","oa":5735,"o":"walk_frames_left,x"},{"a":5801,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":5804,"t":"code","b":[96],"m":"rts"},{"a":5805,"l":"walk_right_frame","c":"Next frame of the walk to the right, built like $168C with the table $1679. Called by player_walk ($16FA) at $1736 when the joystick is pushed right.","t":"code","b":[173,139,22],"m":"lda","oa":5771,"o":"walk_toggle","x":[5942]},{"a":5808,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":5810,"t":"code","b":[141,139,22],"m":"sta","oa":5771,"o":"walk_toggle"},{"a":5813,"t":"code","b":[240,13],"m":"beq","oa":5828,"o":"$16C4"},{"a":5815,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index"},{"a":5818,"t":"code","b":[232],"m":"inx"},{"a":5819,"t":"code","b":[224,18],"m":"cpx","o":"#$12"},{"a":5821,"t":"code","b":[144,2],"m":"bcc","oa":5825,"o":"$16C1"},{"a":5823,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":5825,"t":"code","b":[142,102,22],"m":"stx","oa":5734,"o":"walk_frame_index","x":[5821]},{"a":5828,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index","x":[5813]},{"a":5831,"t":"code","b":[189,121,22],"m":"lda","oa":5753,"o":"walk_frames_right,x"},{"a":5834,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":5837,"t":"code","b":[96],"m":"rts"},{"a":5838,"l":"facing","c":"Direction the player faces: 1 after the joystick was pushed left, 0 after right (set by $16FA, $17D4 and $18B4). Read by $1B9F, which looks 8 pixels further on when it is 0, by the state routines to choose the standing frame ($A0 left, $9A right) and the jump frame ($F9 left, $F8 right), and by $19B7, which moves the player 2 pixels away from the way he faces.","t":"byte","b":[0],"x":[5844,5908,5939,6049,6081,6109,6137,6226,6397,6425,6451,6504,6661,6705,6765,7102]},{"a":5839,"l":"feet_column","c":"Column index of the character at the player's feet (the Y register that $1B7C returns), stored by $16FA at $1776. No traced code reads it.","t":"byte","b":[28],"x":[6006]},{"a":5840,"l":"player_spare","c":"Three bytes, all 0 in the snapshot, that no traced code writes. $16D1 is read by $16FA at $17AC, where the branch it feeds goes to the next instruction anyway, so it has no effect.","t":"byte","b":[0,0,0]},{"a":5843,"l":"walk_counter","c":"Counter that $16FA counts down by 1 on each call while it is not 0. No traced code sets it, it is 0 in the snapshot, and nothing else reads it.","t":"byte","b":[0],"x":[5890,5896]},{"a":5844,"l":"stand_frame","c":"Sets the three bytes $1ADC, $1ADD and $1ADE to $92, $B6 and $C0 when the facing $16CE is 0 and to $93, $B7 and $C1 otherwise. No traced code calls it, and nothing reads those three bytes.","t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":5847,"t":"code","b":[208,16],"m":"bne","oa":5865,"o":"$16E9"},{"a":5849,"t":"code","b":[169,146],"m":"lda","o":"#$92"},{"a":5851,"t":"code","b":[141,220,26],"m":"sta","oa":6876,"o":"$1ADC"},{"a":5854,"t":"code","b":[169,182],"m":"lda","o":"#$B6"},{"a":5856,"t":"code","b":[141,221,26],"m":"sta","oa":6877,"o":"$1ADD"},{"a":5859,"t":"code","b":[169,192],"m":"lda","o":"#$C0"},{"a":5861,"t":"code","b":[141,222,26],"m":"sta","oa":6878,"o":"$1ADE"},{"a":5864,"t":"code","b":[96],"m":"rts"},{"a":5865,"t":"code","b":[169,147],"m":"lda","o":"#$93","x":[5847]},{"a":5867,"t":"code","b":[141,220,26],"m":"sta","oa":6876,"o":"$1ADC"},{"a":5870,"t":"code","b":[169,183],"m":"lda","o":"#$B7"},{"a":5872,"t":"code","b":[141,221,26],"m":"sta","oa":6877,"o":"$1ADD"},{"a":5875,"t":"code","b":[169,193],"m":"lda","o":"#$C1"},{"a":5877,"t":"code","b":[141,222,26],"m":"sta","oa":6878,"o":"$1ADE"},{"a":5880,"t":"code","b":[96],"m":"rts"},{"a":5881,"l":"stand_frame_pad","c":"A zero byte between stand_frame and player_walk. Nothing reads it.","t":"byte","b":[0]},{"a":5882,"l":"player_walk","c":"Player state 1, on the ground: the routine for $1626 = 1 that $1635 runs through the table at $1627. Sets the low three bits of the player Y $1634 and counts $16D3 down. Joystick left (bit 2 of $0EA6 clear): facing $16CE = 1, runs $168C and takes 2 off the player X $1633 unless the result would be below $78. Right (bit 3 clear): $16CE = 0, runs $16AD and adds 2, unless the result would reach $E6, where it sets the scroll speed $0FB0 to 3 and leaves X as it is. Then $1B9F reads the character ahead, one screen row up: a code from 2 to $53 blocks the move (X is put back from $1631, scroll speed 0). $1B7C reads the feet column and the character one row below: a code from 2 to $21 is floor, any other code sets the state to 2 (falling). On floor, joystick up (bit 0 clear) sets the state to 3 (jump), clears the jump index $18B3 and sets the frame $1ADB to $F8 (facing right) or $F9 (left). With no direction pushed ($0EA6 AND $0F = $0F) the frame becomes the standing frame $9A (right) or $A0 (left).","t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y","x":[5724]},{"a":5885,"t":"code","b":[9,7],"m":"ora","o":"#$07"},{"a":5887,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":5890,"t":"code","b":[174,211,22],"m":"ldx","oa":5843,"o":"walk_counter"},{"a":5893,"t":"code","b":[240,4],"m":"beq","oa":5899,"o":"$170B"},{"a":5895,"t":"code","b":[202],"m":"dex"},{"a":5896,"t":"code","b":[142,211,22],"m":"stx","oa":5843,"o":"walk_counter"},{"a":5899,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[5893]},{"a":5902,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":5904,"t":"code","b":[208,24],"m":"bne","oa":5930,"o":"$172A"},{"a":5906,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":5908,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":5911,"t":"code","b":[32,140,22],"m":"jsr","oa":5772,"o":"walk_left_frame"},{"a":5914,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":5917,"t":"code","b":[56],"m":"sec"},{"a":5918,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":5920,"t":"code","b":[201,120],"m":"cmp","o":"#$78"},{"a":5922,"t":"code","b":[144,42],"m":"bcc","oa":5966,"o":"$174E"},{"a":5924,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":5927,"t":"code","b":[76,78,23],"m":"jmp","oa":5966,"o":"$174E"},{"a":5930,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[5904]},{"a":5933,"t":"code","b":[41,8],"m":"and","o":"#$08"},{"a":5935,"t":"code","b":[208,29],"m":"bne","oa":5966,"o":"$174E"},{"a":5937,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":5939,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":5942,"t":"code","b":[32,173,22],"m":"jsr","oa":5805,"o":"walk_right_frame"},{"a":5945,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":5948,"t":"code","b":[24],"m":"clc"},{"a":5949,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":5951,"t":"code","b":[201,230],"m":"cmp","o":"#$E6"},{"a":5953,"t":"code","b":[176,6],"m":"bcs","oa":5961,"o":"$1749"},{"a":5955,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":5958,"t":"code","b":[76,78,23],"m":"jmp","oa":5966,"o":"$174E"},{"a":5961,"t":"code","b":[169,3],"m":"lda","o":"#$03","x":[5953]},{"a":5963,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":5966,"t":"code","b":[32,159,27],"m":"jsr","oa":7071,"o":"tile_ahead","x":[5922,5927,5935,5958]},{"a":5969,"t":"code","b":[56],"m":"sec"},{"a":5970,"t":"code","b":[165,221],"m":"lda","oa":221,"o":"$DD"},{"a":5972,"t":"code","b":[233,40],"m":"sbc","o":"#$28"},{"a":5974,"t":"code","b":[133,221],"m":"sta","oa":221,"o":"$DD"},{"a":5976,"t":"code","b":[165,222],"m":"lda","oa":222,"o":"$DE"},{"a":5978,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":5980,"t":"code","b":[133,222],"m":"sta","oa":222,"o":"$DE"},{"a":5982,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":5984,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":5986,"t":"code","b":[144,15],"m":"bcc","oa":6003,"o":"$1773"},{"a":5988,"t":"code","b":[201,84],"m":"cmp","o":"#$54"},{"a":5990,"t":"code","b":[176,11],"m":"bcs","oa":6003,"o":"$1773"},{"a":5992,"t":"code","b":[173,49,22],"m":"lda","oa":5681,"o":"player_x_prev"},{"a":5995,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":5998,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6000,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6003,"t":"code","b":[32,124,27],"m":"jsr","oa":7036,"o":"tile_at_feet","x":[5986,5990]},{"a":6006,"t":"code","b":[140,207,22],"m":"sty","oa":5839,"o":"feet_column"},{"a":6009,"t":"code","b":[152],"m":"tya"},{"a":6010,"t":"code","b":[24],"m":"clc"},{"a":6011,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6013,"t":"code","b":[168],"m":"tay"},{"a":6014,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":6016,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6018,"t":"code","b":[144,4],"m":"bcc","oa":6024,"o":"$1788"},{"a":6020,"t":"code","b":[201,34],"m":"cmp","o":"#$22"},{"a":6022,"t":"code","b":[144,6],"m":"bcc","oa":6030,"o":"$178E"},{"a":6024,"t":"code","b":[169,2],"m":"lda","o":"#$02","x":[6018]},{"a":6026,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6029,"t":"code","b":[96],"m":"rts"},{"a":6030,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[6022]},{"a":6033,"t":"code","b":[41,1],"m":"and","o":"#$01"},{"a":6035,"t":"code","b":[208,23],"m":"bne","oa":6060,"o":"$17AC"},{"a":6037,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":6039,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6042,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6044,"t":"code","b":[141,179,24],"m":"sta","oa":6323,"o":"arc_index"},{"a":6047,"t":"code","b":[162,248],"m":"ldx","o":"#$F8"},{"a":6049,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6052,"t":"code","b":[240,2],"m":"beq","oa":6056,"o":"$17A8"},{"a":6054,"t":"code","b":[162,249],"m":"ldx","o":"#$F9"},{"a":6056,"t":"code","b":[142,219,26],"m":"stx","oa":6875,"o":"player_frame","x":[6052]},{"a":6059,"t":"code","b":[96],"m":"rts"},{"a":6060,"t":"code","b":[172,209,22],"m":"ldy","oa":5841,"o":"$16D1","x":[6035]},{"a":6063,"t":"code","b":[208,7],"m":"bne","oa":6072,"o":"$17B8"},{"a":6065,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port"},{"a":6068,"t":"code","b":[41,2],"m":"and","o":"#$02"},{"a":6070,"t":"code","b":[208,0],"m":"bne","oa":6072,"o":"$17B8"},{"a":6072,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[6063,6070]},{"a":6075,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":6077,"t":"code","b":[201,15],"m":"cmp","o":"#$0F"},{"a":6079,"t":"code","b":[208,18],"m":"bne","oa":6099,"o":"$17D3"},{"a":6081,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6084,"t":"code","b":[208,8],"m":"bne","oa":6094,"o":"$17CE"},{"a":6086,"t":"code","b":[169,154],"m":"lda","o":"#$9A"},{"a":6088,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6091,"t":"code","b":[76,211,23],"m":"jmp","oa":6099,"o":"$17D3"},{"a":6094,"t":"code","b":[169,160],"m":"lda","o":"#$A0","x":[6084]},{"a":6096,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6099,"t":"code","b":[96],"m":"rts","x":[6079,6091]},{"a":6100,"l":"player_fall","c":"Player state 2, falling: the routine for $1626 = 2. Moves left and right as $16FA does (limits $78 and $E6, scroll speed 3 at the right edge), then reads the character ahead in the row below the feet row ($1B9F, one row down): a code from 2 to $22 blocks the move (X from $1631, scroll speed 0). Adds 4 to the player Y each call; once Y is $3C or more it reads the character one row below the feet with $1B7C, and a code from 2 to $21 lands the player (state 1). The frame $1ADB is the standing frame $9A (facing right) or $A0 (left).","t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port"},{"a":6103,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":6105,"t":"code","b":[208,21],"m":"bne","oa":6128,"o":"$17F0"},{"a":6107,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6109,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":6112,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":6115,"t":"code","b":[56],"m":"sec"},{"a":6116,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":6118,"t":"code","b":[201,120],"m":"cmp","o":"#$78"},{"a":6120,"t":"code","b":[144,39],"m":"bcc","oa":6161,"o":"$1811"},{"a":6122,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6125,"t":"code","b":[76,17,24],"m":"jmp","oa":6161,"o":"$1811"},{"a":6128,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[6105]},{"a":6131,"t":"code","b":[41,8],"m":"and","o":"#$08"},{"a":6133,"t":"code","b":[208,26],"m":"bne","oa":6161,"o":"$1811"},{"a":6135,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6137,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":6140,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":6143,"t":"code","b":[24],"m":"clc"},{"a":6144,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":6146,"t":"code","b":[201,230],"m":"cmp","o":"#$E6"},{"a":6148,"t":"code","b":[176,6],"m":"bcs","oa":6156,"o":"$180C"},{"a":6150,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6153,"t":"code","b":[76,17,24],"m":"jmp","oa":6161,"o":"$1811"},{"a":6156,"t":"code","b":[169,3],"m":"lda","o":"#$03","x":[6148]},{"a":6158,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6161,"t":"code","b":[32,159,27],"m":"jsr","oa":7071,"o":"tile_ahead","x":[6120,6125,6133,6153]},{"a":6164,"t":"code","b":[152],"m":"tya"},{"a":6165,"t":"code","b":[24],"m":"clc"},{"a":6166,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6168,"t":"code","b":[168],"m":"tay"},{"a":6169,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":6171,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6173,"t":"code","b":[144,15],"m":"bcc","oa":6190,"o":"$182E"},{"a":6175,"t":"code","b":[201,35],"m":"cmp","o":"#$23"},{"a":6177,"t":"code","b":[176,11],"m":"bcs","oa":6190,"o":"$182E"},{"a":6179,"t":"code","b":[173,49,22],"m":"lda","oa":5681,"o":"player_x_prev"},{"a":6182,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6185,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6187,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6190,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y","x":[6173,6177]},{"a":6193,"t":"code","b":[24],"m":"clc"},{"a":6194,"t":"code","b":[105,4],"m":"adc","o":"#$04"},{"a":6196,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":6199,"t":"code","b":[201,60],"m":"cmp","o":"#$3C"},{"a":6201,"t":"code","b":[144,23],"m":"bcc","oa":6226,"o":"$1852"},{"a":6203,"t":"code","b":[32,124,27],"m":"jsr","oa":7036,"o":"tile_at_feet"},{"a":6206,"t":"code","b":[152],"m":"tya"},{"a":6207,"t":"code","b":[24],"m":"clc"},{"a":6208,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6210,"t":"code","b":[168],"m":"tay"},{"a":6211,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":6213,"t":"code","b":[201,34],"m":"cmp","o":"#$22"},{"a":6215,"t":"code","b":[176,9],"m":"bcs","oa":6226,"o":"$1852"},{"a":6217,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6219,"t":"code","b":[144,5],"m":"bcc","oa":6226,"o":"$1852"},{"a":6221,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6223,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6226,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing","x":[6201,6215,6219]},{"a":6229,"t":"code","b":[208,8],"m":"bne","oa":6239,"o":"$185F"},{"a":6231,"t":"code","b":[169,154],"m":"lda","o":"#$9A"},{"a":6233,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6236,"t":"code","b":[76,100,24],"m":"jmp","oa":6244,"o":"$1864"},{"a":6239,"t":"code","b":[169,160],"m":"lda","o":"#$A0","x":[6229]},{"a":6241,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6244,"t":"code","b":[96],"m":"rts","x":[6236]},{"a":6245,"l":"jump_steps","c":"39 signed steps for the player Y, each stored as a 16-bit value with the low byte first (the high byte is the sign, $FF or 0, and $18B4 reads only the low byte, adding it to $1634 and moving the index $18B3 on by 2). The steps run -4, -4, -3, -3, -3, -2, -3, -2, -2, -2, -2, -1, -2, -1, -1, -1, -1, 0, -1, 0 and then back up through 1 to 4. They add up to 0, so the player ends where he began, after rising 38 pixels.","t":"byte","b":[252,255,252,255,253,255,253,255],"x":[6331]},{"a":6253,"t":"byte","b":[253,255,254,255,253,255,254,255]},{"a":6261,"t":"byte","b":[254,255,254,255,254,255,255,255]},{"a":6269,"t":"byte","b":[254,255,255,255,255,255,255,255]},{"a":6277,"t":"byte","b":[255,255,0,0,255,255,0,0]},{"a":6285,"t":"byte","b":[1,0,0,0,1,0,1,0]},{"a":6293,"t":"byte","b":[1,0,1,0,2,0,1,0]},{"a":6301,"t":"byte","b":[2,0,2,0,2,0,2,0]},{"a":6309,"t":"byte","b":[3,0,2,0,3,0,3,0]},{"a":6317,"t":"byte","b":[3,0,4,0,4,0]},{"a":6323,"l":"arc_index","c":"Index into the step table of the arc the player is in: jump_steps ($1865) in state 3 and hurt_steps ($197B) in state 4, moved on by 2 each frame by $18B4 and $19B7. Cleared by $178E when the jump starts and by $1DA1 when the player is hit.","t":"byte","b":[0],"x":[6044,6324,6351,6588,6615,7748]},{"a":6324,"l":"player_jump","c":"Player state 3, jumping: the routine for $1626 = 3. Adds the step at $1865 plus the index $18B3 to the player Y and moves the index on by 2; at $4E (the end of the table) it sets the state to 1. From index $29, once Y is $46 or more, it reads the character one row below the feet ($1B7C) and a code from 2 to $21 lands the player (state 1). The joystick moves X as in $16FA (limits $78 and $E6, scroll speed 3 at the right edge) and sets the facing. The frame $1ADB is $F8 (right) or $F9 (left), and the standing frame again after landing. The character ahead (in the row below the feet row while in the air, in the feet row itself after landing) blocks the move when its code is 2 to $22 (X from $1631, scroll speed 0).","t":"code","b":[172,179,24],"m":"ldy","oa":6323,"o":"arc_index"},{"a":6327,"t":"code","b":[24],"m":"clc"},{"a":6328,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":6331,"t":"code","b":[121,101,24],"m":"adc","oa":6245,"o":"jump_steps,y"},{"a":6334,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":6337,"t":"code","b":[200],"m":"iny"},{"a":6338,"t":"code","b":[200],"m":"iny"},{"a":6339,"t":"code","b":[192,78],"m":"cpy","o":"#$4E"},{"a":6341,"t":"code","b":[144,8],"m":"bcc","oa":6351,"o":"$18CF"},{"a":6343,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6345,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6348,"t":"code","b":[76,244,24],"m":"jmp","oa":6388,"o":"$18F4"},{"a":6351,"t":"code","b":[140,179,24],"m":"sty","oa":6323,"o":"arc_index","x":[6341]},{"a":6354,"t":"code","b":[192,41],"m":"cpy","o":"#$29"},{"a":6356,"t":"code","b":[144,30],"m":"bcc","oa":6388,"o":"$18F4"},{"a":6358,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":6361,"t":"code","b":[201,70],"m":"cmp","o":"#$46"},{"a":6363,"t":"code","b":[144,23],"m":"bcc","oa":6388,"o":"$18F4"},{"a":6365,"t":"code","b":[32,124,27],"m":"jsr","oa":7036,"o":"tile_at_feet"},{"a":6368,"t":"code","b":[152],"m":"tya"},{"a":6369,"t":"code","b":[24],"m":"clc"},{"a":6370,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6372,"t":"code","b":[168],"m":"tay"},{"a":6373,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":6375,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6377,"t":"code","b":[144,9],"m":"bcc","oa":6388,"o":"$18F4"},{"a":6379,"t":"code","b":[201,34],"m":"cmp","o":"#$22"},{"a":6381,"t":"code","b":[176,5],"m":"bcs","oa":6388,"o":"$18F4"},{"a":6383,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6385,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6388,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[6348,6356,6363,6377,6381]},{"a":6391,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":6393,"t":"code","b":[208,21],"m":"bne","oa":6416,"o":"$1910"},{"a":6395,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6397,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":6400,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":6403,"t":"code","b":[56],"m":"sec"},{"a":6404,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":6406,"t":"code","b":[201,120],"m":"cmp","o":"#$78"},{"a":6408,"t":"code","b":[144,39],"m":"bcc","oa":6449,"o":"$1931"},{"a":6410,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6413,"t":"code","b":[76,49,25],"m":"jmp","oa":6449,"o":"$1931"},{"a":6416,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[6393]},{"a":6419,"t":"code","b":[41,8],"m":"and","o":"#$08"},{"a":6421,"t":"code","b":[208,26],"m":"bne","oa":6449,"o":"$1931"},{"a":6423,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6425,"t":"code","b":[141,206,22],"m":"sta","oa":5838,"o":"facing"},{"a":6428,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":6431,"t":"code","b":[24],"m":"clc"},{"a":6432,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":6434,"t":"code","b":[201,230],"m":"cmp","o":"#$E6"},{"a":6436,"t":"code","b":[176,6],"m":"bcs","oa":6444,"o":"$192C"},{"a":6438,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6441,"t":"code","b":[76,49,25],"m":"jmp","oa":6449,"o":"$1931"},{"a":6444,"t":"code","b":[169,3],"m":"lda","o":"#$03","x":[6436]},{"a":6446,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6449,"t":"code","b":[162,248],"m":"ldx","o":"#$F8","x":[6408,6413,6421,6441]},{"a":6451,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6454,"t":"code","b":[240,2],"m":"beq","oa":6458,"o":"$193A"},{"a":6456,"t":"code","b":[162,249],"m":"ldx","o":"#$F9"},{"a":6458,"t":"code","b":[142,219,26],"m":"stx","oa":6875,"o":"player_frame","x":[6454]},{"a":6461,"t":"code","b":[32,159,27],"m":"jsr","oa":7071,"o":"tile_ahead"},{"a":6464,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state"},{"a":6467,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":6469,"t":"code","b":[240,5],"m":"beq","oa":6476,"o":"$194C"},{"a":6471,"t":"code","b":[152],"m":"tya"},{"a":6472,"t":"code","b":[24],"m":"clc"},{"a":6473,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6475,"t":"code","b":[168],"m":"tay"},{"a":6476,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y","x":[6469]},{"a":6478,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6480,"t":"code","b":[144,15],"m":"bcc","oa":6497,"o":"$1961"},{"a":6482,"t":"code","b":[201,35],"m":"cmp","o":"#$23"},{"a":6484,"t":"code","b":[176,11],"m":"bcs","oa":6497,"o":"$1961"},{"a":6486,"t":"code","b":[173,49,22],"m":"lda","oa":5681,"o":"player_x_prev"},{"a":6489,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6492,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6494,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6497,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state","x":[6480,6484]},{"a":6500,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":6502,"t":"code","b":[208,18],"m":"bne","oa":6522,"o":"$197A"},{"a":6504,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6507,"t":"code","b":[208,8],"m":"bne","oa":6517,"o":"$1975"},{"a":6509,"t":"code","b":[169,154],"m":"lda","o":"#$9A"},{"a":6511,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6514,"t":"code","b":[76,122,25],"m":"jmp","oa":6522,"o":"$197A"},{"a":6517,"t":"code","b":[169,160],"m":"lda","o":"#$A0","x":[6507]},{"a":6519,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6522,"t":"code","b":[96],"m":"rts","x":[6502,6514]},{"a":6523,"l":"hurt_steps","c":"30 signed steps for the player Y, stored like jump_steps (16-bit, low byte first, only the low byte used): -6 four times, -5, -5, -4, -4, -3, -3, -2, -2, -1, -1, 0, 0 and then back up through 1 to 6, ending with 6 four times. They add up to 0, after a rise of 54 pixels. $19B7 reads them with the index $18B3.","t":"byte","b":[250,255,250,255,250,255,250,255],"x":[6595]},{"a":6531,"t":"byte","b":[251,255,251,255,252,255,252,255]},{"a":6539,"t":"byte","b":[253,255,253,255,254,255,254,255]},{"a":6547,"t":"byte","b":[255,255,255,255,0,0,0,0]},{"a":6555,"t":"byte","b":[1,0,1,0,2,0,2,0]},{"a":6563,"t":"byte","b":[3,0,3,0,4,0,4,0]},{"a":6571,"t":"byte","b":[5,0,5,0,6,0,6,0]},{"a":6579,"t":"byte","b":[6,0,6,0]},{"a":6583,"l":"player_knockback","c":"Player state 4, thrown back after a hit: the routine for $1626 = 4, which $1DA1 sets (clearing $18B3) when the falling object hurts the player outside state 3. Clears the scroll speed, adds the step at $197B plus the index $18B3 to the player Y and moves the index on by 2. At $3C it sets the state to 1. From index $20, once Y is $46 or more and the character ahead in the row below the feet row has a code from 2 to $22, it lands: state 1, Y put back from $1632. The joystick is not read. X moves 2 pixels away from the way the player faces ($16CE; to the left while it is 0, with the limits $78 and $E6, and scroll speed 3 at the right edge). The frame $1ADB is changed only on landing, to the standing frame $9A or $A0; player_sprites builds the three sprites for states 3 and 4 from $1ADB, $1ADB+2 and $1ADB+4. It blocks the move into a wall as $16FA does.","t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6585,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6588,"t":"code","b":[172,179,24],"m":"ldy","oa":6323,"o":"arc_index"},{"a":6591,"t":"code","b":[24],"m":"clc"},{"a":6592,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":6595,"t":"code","b":[121,123,25],"m":"adc","oa":6523,"o":"hurt_steps,y"},{"a":6598,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":6601,"t":"code","b":[200],"m":"iny"},{"a":6602,"t":"code","b":[200],"m":"iny"},{"a":6603,"t":"code","b":[192,60],"m":"cpy","o":"#$3C"},{"a":6605,"t":"code","b":[144,8],"m":"bcc","oa":6615,"o":"$19D7"},{"a":6607,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6609,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6612,"t":"code","b":[76,5,26],"m":"jmp","oa":6661,"o":"$1A05"},{"a":6615,"t":"code","b":[140,179,24],"m":"sty","oa":6323,"o":"arc_index","x":[6605]},{"a":6618,"t":"code","b":[192,32],"m":"cpy","o":"#$20"},{"a":6620,"t":"code","b":[144,39],"m":"bcc","oa":6661,"o":"$1A05"},{"a":6622,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":6625,"t":"code","b":[201,70],"m":"cmp","o":"#$46"},{"a":6627,"t":"code","b":[144,32],"m":"bcc","oa":6661,"o":"$1A05"},{"a":6629,"t":"code","b":[32,159,27],"m":"jsr","oa":7071,"o":"tile_ahead"},{"a":6632,"t":"code","b":[152],"m":"tya"},{"a":6633,"t":"code","b":[24],"m":"clc"},{"a":6634,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6636,"t":"code","b":[168],"m":"tay"},{"a":6637,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":6639,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6641,"t":"code","b":[144,18],"m":"bcc","oa":6661,"o":"$1A05"},{"a":6643,"t":"code","b":[201,35],"m":"cmp","o":"#$23"},{"a":6645,"t":"code","b":[176,14],"m":"bcs","oa":6661,"o":"$1A05"},{"a":6647,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":6649,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":6652,"t":"code","b":[173,50,22],"m":"lda","oa":5682,"o":"player_y_prev"},{"a":6655,"t":"code","b":[141,52,22],"m":"sta","oa":5684,"o":"player_y"},{"a":6658,"t":"code","b":[76,102,26],"m":"jmp","oa":6758,"o":"$1A66"},{"a":6661,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing","x":[6612,6620,6627,6641,6645]},{"a":6664,"t":"code","b":[208,16],"m":"bne","oa":6682,"o":"$1A1A"},{"a":6666,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":6669,"t":"code","b":[56],"m":"sec"},{"a":6670,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":6672,"t":"code","b":[201,120],"m":"cmp","o":"#$78"},{"a":6674,"t":"code","b":[144,27],"m":"bcc","oa":6703,"o":"$1A2F"},{"a":6676,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6679,"t":"code","b":[76,47,26],"m":"jmp","oa":6703,"o":"$1A2F"},{"a":6682,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x","x":[6664]},{"a":6685,"t":"code","b":[24],"m":"clc"},{"a":6686,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":6688,"t":"code","b":[201,230],"m":"cmp","o":"#$E6"},{"a":6690,"t":"code","b":[176,6],"m":"bcs","oa":6698,"o":"$1A2A"},{"a":6692,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6695,"t":"code","b":[76,47,26],"m":"jmp","oa":6703,"o":"$1A2F"},{"a":6698,"t":"code","b":[169,3],"m":"lda","o":"#$03","x":[6690]},{"a":6700,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6703,"t":"code","b":[162,248],"m":"ldx","o":"#$F8","x":[6674,6679,6695]},{"a":6705,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6708,"t":"code","b":[240,2],"m":"beq","oa":6712,"o":"$1A38"},{"a":6710,"t":"code","b":[162,249],"m":"ldx","o":"#$F9"},{"a":6712,"t":"code","b":[142,219,26],"m":"stx","oa":6875,"o":"player_frame","x":[6708]},{"a":6715,"t":"code","b":[32,159,27],"m":"jsr","oa":7071,"o":"tile_ahead"},{"a":6718,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state"},{"a":6721,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":6723,"t":"code","b":[240,5],"m":"beq","oa":6730,"o":"$1A4A"},{"a":6725,"t":"code","b":[152],"m":"tya"},{"a":6726,"t":"code","b":[24],"m":"clc"},{"a":6727,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":6729,"t":"code","b":[168],"m":"tay"},{"a":6730,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y","x":[6723]},{"a":6732,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":6734,"t":"code","b":[144,22],"m":"bcc","oa":6758,"o":"$1A66"},{"a":6736,"t":"code","b":[201,35],"m":"cmp","o":"#$23"},{"a":6738,"t":"code","b":[176,18],"m":"bcs","oa":6758,"o":"$1A66"},{"a":6740,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":6743,"t":"code","b":[201,70],"m":"cmp","o":"#$46"},{"a":6745,"t":"code","b":[144,11],"m":"bcc","oa":6758,"o":"$1A66"},{"a":6747,"t":"code","b":[173,49,22],"m":"lda","oa":5681,"o":"player_x_prev"},{"a":6750,"t":"code","b":[141,51,22],"m":"sta","oa":5683,"o":"player_x"},{"a":6753,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":6755,"t":"code","b":[141,176,15],"m":"sta","oa":4016,"o":"scroll_speed"},{"a":6758,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state","x":[6658,6734,6738,6745]},{"a":6761,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":6763,"t":"code","b":[208,18],"m":"bne","oa":6783,"o":"$1A7F"},{"a":6765,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":6768,"t":"code","b":[208,8],"m":"bne","oa":6778,"o":"$1A7A"},{"a":6770,"t":"code","b":[169,154],"m":"lda","o":"#$9A"},{"a":6772,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6775,"t":"code","b":[76,127,26],"m":"jmp","oa":6783,"o":"$1A7F"},{"a":6778,"t":"code","b":[169,160],"m":"lda","o":"#$A0","x":[6768]},{"a":6780,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6783,"t":"code","b":[96],"m":"rts","x":[6763,6775]},{"a":6784,"l":"climb_frames","c":"A zero byte at $1A80, then two tables of 12 sprite pointers that $1A99 and $1ABA read: $1A81 holds $94, $94, $94, $95, $95, $95, $96, $96, $96, $95, $95, $95 and $1A8D the same pointers in the reverse order. They are the climbing frames, whose shapes are at $E500 (climb_shapes); no traced level 3 code calls the two routines.","t":"byte","b":[0,148,148,148,149,149,149,150]},{"a":6792,"t":"byte","b":[150,150,149,149,149,150,150,150]},{"a":6800,"t":"byte","b":[149,149,149,148,148,148,149,149]},{"a":6808,"t":"byte","b":[149]},{"a":6809,"l":"climb_frame_a","c":"Next frame of a climb: flips $168B and, when it becomes 1, adds 1 to $1666 (back to 0 at 12), then stores the pointer at $1A81 plus $1666 in the frame number $1ADB. No traced code calls it.","t":"code","b":[173,139,22],"m":"lda","oa":5771,"o":"walk_toggle"},{"a":6812,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":6814,"t":"code","b":[141,139,22],"m":"sta","oa":5771,"o":"walk_toggle"},{"a":6817,"t":"code","b":[240,13],"m":"beq","oa":6832,"o":"$1AB0"},{"a":6819,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index"},{"a":6822,"t":"code","b":[232],"m":"inx"},{"a":6823,"t":"code","b":[224,12],"m":"cpx","o":"#$0C"},{"a":6825,"t":"code","b":[144,2],"m":"bcc","oa":6829,"o":"$1AAD"},{"a":6827,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6829,"t":"code","b":[142,102,22],"m":"stx","oa":5734,"o":"walk_frame_index","x":[6825]},{"a":6832,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index","x":[6817]},{"a":6835,"t":"code","b":[189,129,26],"m":"lda","oa":6785,"o":"$1A81,x"},{"a":6838,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6841,"t":"code","b":[96],"m":"rts"},{"a":6842,"l":"climb_frame_b","c":"The same as $1A99 with the table $1A8D (the pointers in the reverse order). No traced code calls it.","t":"code","b":[173,139,22],"m":"lda","oa":5771,"o":"walk_toggle"},{"a":6845,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":6847,"t":"code","b":[141,139,22],"m":"sta","oa":5771,"o":"walk_toggle"},{"a":6850,"t":"code","b":[240,13],"m":"beq","oa":6865,"o":"$1AD1"},{"a":6852,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index"},{"a":6855,"t":"code","b":[232],"m":"inx"},{"a":6856,"t":"code","b":[224,12],"m":"cpx","o":"#$0C"},{"a":6858,"t":"code","b":[144,2],"m":"bcc","oa":6862,"o":"$1ACE"},{"a":6860,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":6862,"t":"code","b":[142,102,22],"m":"stx","oa":5734,"o":"walk_frame_index","x":[6858]},{"a":6865,"t":"code","b":[174,102,22],"m":"ldx","oa":5734,"o":"walk_frame_index","x":[6850]},{"a":6868,"t":"code","b":[189,141,26],"m":"lda","oa":6797,"o":"$1A8D,x"},{"a":6871,"t":"code","b":[141,219,26],"m":"sta","oa":6875,"o":"player_frame"},{"a":6874,"t":"code","b":[96],"m":"rts"},{"a":6875,"l":"player_frame","c":"Sprite pointer base for the player: $1AE0 builds $CFF8-$CFFA from it.","t":"byte","b":[154],"x":[5801,5834,6056,6088,6096,6233,6241,6458,6511,6519,6712,6772,6780,6838,6871,6891,6910]},{"a":6876,"t":"gap","n":4,"x":[5851,5867]},{"a":6880,"l":"player_sprites","c":"Sets the sprite pointers $CFF8, $CFF9 and $CFFA from the frame number $1ADB. When $1626 is 3 or 4: $CFFA=$1ADB, $CFF8=$1ADB+2 and $CFF9=$1ADB+4. Otherwise: $CFF8=$1ADB, $CFF9=$1ADB+$0D and $CFFA=$1ADB+$0D-$24. Called by the raster interrupt at $0D3A (at $0D5E) and by $1635.","t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state","x":[3422,5727]},{"a":6883,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":6885,"t":"code","b":[240,23],"m":"beq","oa":6910,"o":"$1AFE"},{"a":6887,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":6889,"t":"code","b":[240,19],"m":"beq","oa":6910,"o":"$1AFE"},{"a":6891,"t":"code","b":[173,219,26],"m":"lda","oa":6875,"o":"player_frame"},{"a":6894,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":6897,"t":"code","b":[24],"m":"clc"},{"a":6898,"t":"code","b":[105,13],"m":"adc","o":"#$0D"},{"a":6900,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"$CFF9"},{"a":6903,"t":"code","b":[56],"m":"sec"},{"a":6904,"t":"code","b":[233,36],"m":"sbc","o":"#$24"},{"a":6906,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"$CFFA"},{"a":6909,"t":"code","b":[96],"m":"rts"},{"a":6910,"t":"code","b":[173,219,26],"m":"lda","oa":6875,"o":"player_frame","x":[6885,6889]},{"a":6913,"t":"code","b":[141,250,207],"m":"sta","oa":53242,"o":"$CFFA"},{"a":6916,"t":"code","b":[24],"m":"clc"},{"a":6917,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":6919,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":6922,"t":"code","b":[24],"m":"clc"},{"a":6923,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":6925,"t":"code","b":[141,249,207],"m":"sta","oa":53241,"o":"$CFF9"},{"a":6928,"t":"code","b":[96],"m":"rts"},{"a":6929,"t":"gap","n":1},{"a":6930,"l":"tile_x_low","c":"Low byte of the X position for the lookup $1B4C; set by $1BD8.","t":"byte","b":[248],"x":[7015,7047,7082,7108,7113,7134]},{"a":6931,"l":"tile_y","c":"Y position for the lookup $1B4C; set by $1BD8.","t":"byte","b":[117],"x":[6989,7064,7099,7151]},{"a":6932,"l":"tile_x_high","c":"High byte of the X position for the lookup $1B4C; set by $1BD8.","t":"byte","b":[0],"x":[7021,7038,7050,7055,7073,7085,7090,7116,7121,7142]},{"a":6933,"l":"pad_1b15","c":"7 zero bytes after tile_x_high: padding. No traced code reads them.","t":"byte","b":[0,0,0,0,0,0,0]},{"a":6940,"l":"row_pointers","c":"23 addresses, low byte first, $CC00 to $CF70 in steps of $28: the rows of the screen matrix, indexed by $1B4C.","t":"byte","b":[0,204,40,204,80,204,120,204],"x":[6999]},{"a":6948,"t":"byte","b":[160,204,200,204,240,204,24,205]},{"a":6956,"t":"byte","b":[64,205,104,205,144,205,184,205]},{"a":6964,"t":"byte","b":[224,205,8,206,48,206,88,206]},{"a":6972,"t":"byte","b":[128,206,168,206,208,206,248,206]},{"a":6980,"t":"byte","b":[32,207,72,207,112,207]},{"a":6986,"l":"row_ptr_copy","c":"$1B4C stores the row address it has just read from $1B1C here. No other reader in the dumped code.","t":"byte","b":[144,205],"x":[7004]},{"a":6988,"l":"tile_lookup","c":"Returns in A the character in the screen matrix at the position given by $1B12 (X low), $1B14 (X high) and $1B13 (Y). The row is (Y-$24)/8, whose address comes from the pointer table $1B1C (copied to $DD/$DE and $1B4A/$1B4B); the column is X/8, plus $20 if $1B14 is non-zero, minus 3. Y is left set to that column. Called by $1BD8.","t":"code","b":[56],"m":"sec","x":[7067,7124,7154]},{"a":6989,"t":"code","b":[173,19,27],"m":"lda","oa":6931,"o":"tile_y"},{"a":6992,"t":"code","b":[233,36],"m":"sbc","o":"#$24"},{"a":6994,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6995,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6996,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":6997,"t":"code","b":[10],"m":"asl","o":"a"},{"a":6998,"t":"code","b":[168],"m":"tay"},{"a":6999,"t":"code","b":[185,28,27],"m":"lda","oa":6940,"o":"row_pointers,y"},{"a":7002,"t":"code","b":[133,221],"m":"sta","oa":221,"o":"$DD"},{"a":7004,"t":"code","b":[141,74,27],"m":"sta","oa":6986,"o":"row_ptr_copy"},{"a":7007,"t":"code","b":[185,29,27],"m":"lda","oa":6941,"o":"$1B1D,y"},{"a":7010,"t":"code","b":[133,222],"m":"sta","oa":222,"o":"$DE"},{"a":7012,"t":"code","b":[141,75,27],"m":"sta","oa":6987,"o":"$1B4B"},{"a":7015,"t":"code","b":[173,18,27],"m":"lda","oa":6930,"o":"tile_x_low"},{"a":7018,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7019,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7020,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7021,"t":"code","b":[172,20,27],"m":"ldy","oa":6932,"o":"tile_x_high"},{"a":7024,"t":"code","b":[240,3],"m":"beq","oa":7029,"o":"$1B75"},{"a":7026,"t":"code","b":[24],"m":"clc"},{"a":7027,"t":"code","b":[105,32],"m":"adc","o":"#$20"},{"a":7029,"t":"code","b":[168],"m":"tay","x":[7024]},{"a":7030,"t":"code","b":[136],"m":"dey"},{"a":7031,"t":"code","b":[136],"m":"dey"},{"a":7032,"t":"code","b":[136],"m":"dey"},{"a":7033,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":7035,"t":"code","b":[96],"m":"rts"},{"a":7036,"l":"tile_at_feet","c":"Looks up the screen character under the player's feet: sets the position for $1B4C to X = player X $1633 + 8 (with the carry into the high byte $1B14) and Y = player Y $1634 + $16, then calls $1B4C, which returns the character in A, the column index in Y and the row address in $DD/$DE. Called by $16FA, $17D4 and $18B4.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[6003,6203,6365]},{"a":7038,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7041,"t":"code","b":[24],"m":"clc"},{"a":7042,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":7045,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":7047,"t":"code","b":[141,18,27],"m":"sta","oa":6930,"o":"tile_x_low"},{"a":7050,"t":"code","b":[173,20,27],"m":"lda","oa":6932,"o":"tile_x_high"},{"a":7053,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":7055,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7058,"t":"code","b":[24],"m":"clc"},{"a":7059,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":7062,"t":"code","b":[105,22],"m":"adc","o":"#$16"},{"a":7064,"t":"code","b":[141,19,27],"m":"sta","oa":6931,"o":"tile_y"},{"a":7067,"t":"code","b":[32,76,27],"m":"jsr","oa":6988,"o":"tile_lookup"},{"a":7070,"t":"code","b":[96],"m":"rts"},{"a":7071,"l":"tile_ahead","c":"As $1B7C, but when the player faces right ($16CE = 0) it adds another 8 to X, so that it looks at the character in front of him. Returns as $1B4C does. Called by $16FA, $17D4, $18B4, $19B7 and $1A3B.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[5966,6161,6461,6629,6715]},{"a":7073,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7076,"t":"code","b":[24],"m":"clc"},{"a":7077,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x"},{"a":7080,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":7082,"t":"code","b":[141,18,27],"m":"sta","oa":6930,"o":"tile_x_low"},{"a":7085,"t":"code","b":[173,20,27],"m":"lda","oa":6932,"o":"tile_x_high"},{"a":7088,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":7090,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7093,"t":"code","b":[24],"m":"clc"},{"a":7094,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":7097,"t":"code","b":[105,22],"m":"adc","o":"#$16"},{"a":7099,"t":"code","b":[141,19,27],"m":"sta","oa":6931,"o":"tile_y"},{"a":7102,"t":"code","b":[173,206,22],"m":"lda","oa":5838,"o":"facing"},{"a":7105,"t":"code","b":[208,17],"m":"bne","oa":7124,"o":"$1BD4"},{"a":7107,"t":"code","b":[24],"m":"clc"},{"a":7108,"t":"code","b":[173,18,27],"m":"lda","oa":6930,"o":"tile_x_low"},{"a":7111,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":7113,"t":"code","b":[141,18,27],"m":"sta","oa":6930,"o":"tile_x_low"},{"a":7116,"t":"code","b":[173,20,27],"m":"lda","oa":6932,"o":"tile_x_high"},{"a":7119,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":7121,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7124,"t":"code","b":[32,76,27],"m":"jsr","oa":6988,"o":"tile_lookup","x":[7105]},{"a":7127,"t":"code","b":[96],"m":"rts"},{"a":7128,"l":"object_tile","c":"Sets the lookup position from the object: $1B12=$1BF8+8, $1B14=$1BF9 and $1B13=$1BFA+6, then calls $1B4C. Called by $1C45 at $1CEC.","t":"code","b":[24],"m":"clc","x":[7404]},{"a":7129,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x"},{"a":7132,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":7134,"t":"code","b":[141,18,27],"m":"sta","oa":6930,"o":"tile_x_low"},{"a":7137,"t":"code","b":[173,249,27],"m":"lda","oa":7161,"o":"$1BF9"},{"a":7140,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":7142,"t":"code","b":[141,20,27],"m":"sta","oa":6932,"o":"tile_x_high"},{"a":7145,"t":"code","b":[24],"m":"clc"},{"a":7146,"t":"code","b":[173,250,27],"m":"lda","oa":7162,"o":"obj_y"},{"a":7149,"t":"code","b":[105,6],"m":"adc","o":"#$06"},{"a":7151,"t":"code","b":[141,19,27],"m":"sta","oa":6931,"o":"tile_y"},{"a":7154,"t":"code","b":[32,76,27],"m":"jsr","oa":6988,"o":"tile_lookup"},{"a":7157,"t":"code","b":[96],"m":"rts"},{"a":7158,"l":"obj_state","c":"State of the falling object: 0 idle, 1 falling, 2 exploding; run by $1C45, tested by $0FB7, $1DA1 and $239F.","t":"byte","b":[2],"x":[2868,4121,7250,7285,7333,7391,7419,7600,9119]},{"a":7159,"l":"obj_delay","c":"Frames to wait in state 0; $1C45 counts it down and then sets it from $0E2C shifted right five times; $0A84 sets $40.","t":"byte","b":[3],"x":[2873,7255,7261,7280]},{"a":7160,"l":"obj_x","c":"Object X, low byte then high byte ($1BF9). $1C45 sets it from $1BFB/$1BFC and adds 3 per frame; $0FB7 subtracts the scroll speed.","t":"byte","b":[60,1],"x":[4094,4101,7129,7291,7345,7351,7438,7503,7542,7630,7653]},{"a":7162,"l":"obj_y","c":"Object Y: set to $34 and increased by $1C45 with the steps in $1C1D; also used by $1D2C, $1BD8 and $1DA1.","t":"byte","b":[118],"x":[7146,7266,7302,7379,7382,7397,7432,7469,7659,7682]},{"a":7163,"l":"launch_x","c":"Position, low byte then high byte, copied to the object X when it starts; $0A84 sets $E8, and $1347 and $13F5 change it with the second scroller.","t":"byte","b":[232,0],"x":[2878,5006,5013,5109,5116,7288]},{"a":7165,"l":"obj_fall_step","c":"Index into the table $1C1D, set to 0 when the object starts and increased each frame by $1C45.","t":"byte","b":[24],"x":[7307,7362,7366,7375]},{"a":7166,"l":"obj_blast_frame","c":"Frame of the explosion: index into the table $1BFF; set to 0 by $1C45 when state 2 starts and increased each frame; used by $239F and $1DA1.","t":"byte","b":[15],"x":[7320,7324,7424,7607,9129]},{"a":7167,"l":"blast_sprites","c":"Sprite pointers for the explosion frames; $1C45 reads indexes up to $1A and $239F writes the entry to $CFFB-$CFFF.","t":"byte","b":[208,208,208,209,209,209,210,210],"x":[7336,9132]},{"a":7175,"t":"byte","b":[210,211,211,211,212,212,212,213]},{"a":7183,"t":"byte","b":[213,213,214,214,214,215,215,215]},{"a":7191,"t":"byte","b":[216,216,216,216,216,216]},{"a":7197,"l":"fall_steps","c":"Y steps for the object per frame, indexed by $1BFD; the first byte after the table ($1C45) has bit 7 set, which stops the index.","t":"byte","b":[0,0,0,0,1,1,1,1],"x":[7369]},{"a":7205,"t":"byte","b":[2,2,2,2,3,3,3,3]},{"a":7213,"t":"byte","b":[4,4,4,4,5,5,5,5]},{"a":7221,"t":"byte","b":[6,6,6,6,7,7,7,7]},{"a":7229,"t":"byte","b":[8,8,8,8,8,8,8,8]},{"a":7237,"l":"object_update","c":"Per-frame update of the falling object, called by the raster interrupt at $0D3A (at $0DA8). Sets the sprite pointer $CFFB to $D9; while paused it only updates the sprite registers. State $1BF6 = 0: counts down $1BF7, then picks a new delay from $0E2C, sets the state to 1, copies $1BFB/$1BFC to $1BF8/$1BF9, sets Y $1BFA to $34 and plays sound $20 with $B0EE. State 1: X goes up by 3, Y goes up by the step from $1C1D indexed by $1BFD; at Y $C8 it ends; from Y $64 it looks up the tile with $1BD8 and a character from 2 to $21 sets the state to 2 and plays sound $14. State 2: steps $1BFE and takes the sprite pointer from $1BFF, ending at $1B. Finishes by writing sprite 3 X/Y ($D006/$D007, bit 3 of $D010) from $1BF8-$1BFA.","t":"code","b":[169,217],"m":"lda","o":"#$D9","x":[3496]},{"a":7239,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"$CFFB"},{"a":7242,"t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag"},{"a":7245,"t":"code","b":[240,3],"m":"beq","oa":7250,"o":"$1C52"},{"a":7247,"t":"code","b":[76,8,29],"m":"jmp","oa":7432,"o":"$1D08"},{"a":7250,"t":"code","b":[173,246,27],"m":"lda","oa":7158,"o":"obj_state","x":[7245]},{"a":7253,"t":"code","b":[208,61],"m":"bne","oa":7316,"o":"$1C94"},{"a":7255,"t":"code","b":[174,247,27],"m":"ldx","oa":7159,"o":"obj_delay"},{"a":7258,"t":"code","b":[240,12],"m":"beq","oa":7272,"o":"$1C68"},{"a":7260,"t":"code","b":[202],"m":"dex"},{"a":7261,"t":"code","b":[142,247,27],"m":"stx","oa":7159,"o":"obj_delay"},{"a":7264,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7266,"t":"code","b":[141,250,27],"m":"sta","oa":7162,"o":"obj_y"},{"a":7269,"t":"code","b":[76,8,29],"m":"jmp","oa":7432,"o":"$1D08"},{"a":7272,"t":"code","b":[32,44,14],"m":"jsr","oa":3628,"o":"random","x":[7258]},{"a":7275,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7276,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7277,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7278,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7279,"t":"code","b":[74],"m":"lsr","o":"a"},{"a":7280,"t":"code","b":[141,247,27],"m":"sta","oa":7159,"o":"obj_delay"},{"a":7283,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":7285,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":7288,"t":"code","b":[173,251,27],"m":"lda","oa":7163,"o":"launch_x"},{"a":7291,"t":"code","b":[141,248,27],"m":"sta","oa":7160,"o":"obj_x"},{"a":7294,"t":"code","b":[173,252,27],"m":"lda","oa":7164,"o":"$1BFC"},{"a":7297,"t":"code","b":[141,249,27],"m":"sta","oa":7161,"o":"$1BF9"},{"a":7300,"t":"code","b":[169,52],"m":"lda","o":"#$34"},{"a":7302,"t":"code","b":[141,250,27],"m":"sta","oa":7162,"o":"obj_y"},{"a":7305,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7307,"t":"code","b":[141,253,27],"m":"sta","oa":7165,"o":"obj_fall_step"},{"a":7310,"t":"code","b":[162,32],"m":"ldx","o":"#$20"},{"a":7312,"t":"code","b":[32,238,176],"m":"jsr","oa":45294,"o":"play_sound"},{"a":7315,"t":"code","b":[96],"m":"rts"},{"a":7316,"t":"code","b":[201,2],"m":"cmp","o":"#$02","x":[7253]},{"a":7318,"t":"code","b":[208,25],"m":"bne","oa":7345,"o":"$1CB1"},{"a":7320,"t":"code","b":[174,254,27],"m":"ldx","oa":7166,"o":"obj_blast_frame"},{"a":7323,"t":"code","b":[232],"m":"inx"},{"a":7324,"t":"code","b":[142,254,27],"m":"stx","oa":7166,"o":"obj_blast_frame"},{"a":7327,"t":"code","b":[224,27],"m":"cpx","o":"#$1B"},{"a":7329,"t":"code","b":[144,5],"m":"bcc","oa":7336,"o":"$1CA8"},{"a":7331,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7333,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":7336,"t":"code","b":[189,255,27],"m":"lda","oa":7167,"o":"blast_sprites,x","x":[7329]},{"a":7339,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"$CFFB"},{"a":7342,"t":"code","b":[76,8,29],"m":"jmp","oa":7432,"o":"$1D08"},{"a":7345,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x","x":[7318]},{"a":7348,"t":"code","b":[24],"m":"clc"},{"a":7349,"t":"code","b":[105,3],"m":"adc","o":"#$03"},{"a":7351,"t":"code","b":[141,248,27],"m":"sta","oa":7160,"o":"obj_x"},{"a":7354,"t":"code","b":[173,249,27],"m":"lda","oa":7161,"o":"$1BF9"},{"a":7357,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":7359,"t":"code","b":[141,249,27],"m":"sta","oa":7161,"o":"$1BF9"},{"a":7362,"t":"code","b":[174,253,27],"m":"ldx","oa":7165,"o":"obj_fall_step"},{"a":7365,"t":"code","b":[232],"m":"inx"},{"a":7366,"t":"code","b":[142,253,27],"m":"stx","oa":7165,"o":"obj_fall_step"},{"a":7369,"t":"code","b":[189,29,28],"m":"lda","oa":7197,"o":"fall_steps,x"},{"a":7372,"t":"code","b":[16,4],"m":"bpl","oa":7378,"o":"$1CD2"},{"a":7374,"t":"code","b":[202],"m":"dex"},{"a":7375,"t":"code","b":[142,253,27],"m":"stx","oa":7165,"o":"obj_fall_step"},{"a":7378,"t":"code","b":[24],"m":"clc","x":[7372]},{"a":7379,"t":"code","b":[109,250,27],"m":"adc","oa":7162,"o":"obj_y"},{"a":7382,"t":"code","b":[141,250,27],"m":"sta","oa":7162,"o":"obj_y"},{"a":7385,"t":"code","b":[201,200],"m":"cmp","o":"#$C8"},{"a":7387,"t":"code","b":[144,8],"m":"bcc","oa":7397,"o":"$1CE5"},{"a":7389,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7391,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":7394,"t":"code","b":[76,8,29],"m":"jmp","oa":7432,"o":"$1D08"},{"a":7397,"t":"code","b":[173,250,27],"m":"lda","oa":7162,"o":"obj_y","x":[7387]},{"a":7400,"t":"code","b":[201,100],"m":"cmp","o":"#$64"},{"a":7402,"t":"code","b":[144,28],"m":"bcc","oa":7432,"o":"$1D08"},{"a":7404,"t":"code","b":[32,216,27],"m":"jsr","oa":7128,"o":"object_tile"},{"a":7407,"t":"code","b":[177,221],"m":"lda","oa":221,"o":"($DD),y"},{"a":7409,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":7411,"t":"code","b":[144,19],"m":"bcc","oa":7432,"o":"$1D08"},{"a":7413,"t":"code","b":[201,34],"m":"cmp","o":"#$22"},{"a":7415,"t":"code","b":[176,15],"m":"bcs","oa":7432,"o":"$1D08"},{"a":7417,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":7419,"t":"code","b":[141,246,27],"m":"sta","oa":7158,"o":"obj_state"},{"a":7422,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7424,"t":"code","b":[141,254,27],"m":"sta","oa":7166,"o":"obj_blast_frame"},{"a":7427,"t":"code","b":[162,20],"m":"ldx","o":"#$14"},{"a":7429,"t":"code","b":[32,238,176],"m":"jsr","oa":45294,"o":"play_sound"},{"a":7432,"t":"code","b":[173,250,27],"m":"lda","oa":7162,"o":"obj_y","x":[7247,7269,7342,7394,7402,7411,7415]},{"a":7435,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":7438,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x"},{"a":7441,"t":"code","b":[141,6,208],"m":"sta","o":"vic_sprite3_x"},{"a":7444,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":7447,"t":"code","b":[174,249,27],"m":"ldx","oa":7161,"o":"$1BF9"},{"a":7450,"t":"code","b":[240,5],"m":"beq","oa":7457,"o":"$1D21"},{"a":7452,"t":"code","b":[9,8],"m":"ora","o":"#$08"},{"a":7454,"t":"code","b":[76,35,29],"m":"jmp","oa":7459,"o":"$1D23"},{"a":7457,"t":"code","b":[41,247],"m":"and","o":"#$F7","x":[7450]},{"a":7459,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb","x":[7454]},{"a":7462,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":7464,"t":"code","b":[141,42,208],"m":"sta","o":"vic_sprite3_colour"},{"a":7467,"t":"code","b":[96],"m":"rts"},{"a":7468,"l":"explosion_sprites","c":"Positions sprites 4 to 7 around the object: Y is $1BFA+7 for sprites 4 and 5 and $1BFA-7 for sprites 6 and 7; X is $1BF8-7 (sprites 4 and 6) and $1BF8+7 (sprites 5 and 7), with the high bits of $D010 handled for $1BF9 zero and non-zero. Called by $239F.","t":"code","b":[24],"m":"clc","x":[9150]},{"a":7469,"t":"code","b":[173,250,27],"m":"lda","oa":7162,"o":"obj_y"},{"a":7472,"t":"code","b":[105,7],"m":"adc","o":"#$07"},{"a":7474,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":7477,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":7480,"t":"code","b":[56],"m":"sec"},{"a":7481,"t":"code","b":[233,14],"m":"sbc","o":"#$0E"},{"a":7483,"t":"code","b":[141,13,208],"m":"sta","o":"vic_sprite6_y"},{"a":7486,"t":"code","b":[141,15,208],"m":"sta","o":"vic_sprite7_y"},{"a":7489,"t":"code","b":[174,249,27],"m":"ldx","oa":7161,"o":"$1BF9"},{"a":7492,"t":"code","b":[208,40],"m":"bne","oa":7534,"o":"$1D6E"},{"a":7494,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":7497,"t":"code","b":[41,7],"m":"and","o":"#$07"},{"a":7499,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":7502,"t":"code","b":[56],"m":"sec"},{"a":7503,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x"},{"a":7506,"t":"code","b":[233,7],"m":"sbc","o":"#$07"},{"a":7508,"t":"code","b":[141,8,208],"m":"sta","o":"vic_sprite4_x"},{"a":7511,"t":"code","b":[141,12,208],"m":"sta","o":"vic_sprite6_x"},{"a":7514,"t":"code","b":[24],"m":"clc"},{"a":7515,"t":"code","b":[105,14],"m":"adc","o":"#$0E"},{"a":7517,"t":"code","b":[141,10,208],"m":"sta","o":"vic_sprite5_x"},{"a":7520,"t":"code","b":[141,14,208],"m":"sta","o":"vic_sprite7_x"},{"a":7523,"t":"code","b":[144,8],"m":"bcc","oa":7533,"o":"$1D6D"},{"a":7525,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":7528,"t":"code","b":[9,160],"m":"ora","o":"#$A0"},{"a":7530,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":7533,"t":"code","b":[96],"m":"rts","x":[7523]},{"a":7534,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb","x":[7492]},{"a":7537,"t":"code","b":[9,248],"m":"ora","o":"#$F8"},{"a":7539,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":7542,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x"},{"a":7545,"t":"code","b":[24],"m":"clc"},{"a":7546,"t":"code","b":[105,7],"m":"adc","o":"#$07"},{"a":7548,"t":"code","b":[141,10,208],"m":"sta","o":"vic_sprite5_x"},{"a":7551,"t":"code","b":[141,14,208],"m":"sta","o":"vic_sprite7_x"},{"a":7554,"t":"code","b":[56],"m":"sec"},{"a":7555,"t":"code","b":[233,14],"m":"sbc","o":"#$0E"},{"a":7557,"t":"code","b":[141,8,208],"m":"sta","o":"vic_sprite4_x"},{"a":7560,"t":"code","b":[141,12,208],"m":"sta","o":"vic_sprite6_x"},{"a":7563,"t":"code","b":[16,8],"m":"bpl","oa":7573,"o":"$1D95"},{"a":7565,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":7568,"t":"code","b":[41,175],"m":"and","o":"#$AF"},{"a":7570,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":7573,"t":"code","b":[96],"m":"rts","x":[7563]},{"a":7574,"t":"gap","n":9},{"a":7583,"l":"hit_y","c":"The player's Y plus $15, stored by $1DA1 for the distance test.","t":"byte","b":[116],"x":[7627,7662,7668,7678]},{"a":7584,"l":"hit_delay","c":"Frames left before the next hit counts; $1DA1 sets it to $0A and counts it down.","t":"byte","b":[0],"x":[7585,7591,7716]},{"a":7585,"l":"hit_test","c":"Called by the raster interrupt at $0DC9 (at $0E1D) when not paused. While $1DA0 is non-zero it only counts it down. It continues only when $1BF9 is 0, $1BF6 is 2, $1BFE is below 8 and $1626 is not 4, and when the object is within $19 of the player's X and within $28 of the player's Y plus $15. Then, if the energy $244F is 4 or less it sets the end flag $0A83; otherwise it takes 4 off $244F, sets $1DA0 to $0A, plays sound 0 with $B0EE, and sets $1626 to 4 and $18B3 to 0 unless $1626 is 3.","t":"code","b":[174,160,29],"m":"ldx","oa":7584,"o":"hit_delay","x":[3613]},{"a":7588,"t":"code","b":[240,5],"m":"beq","oa":7595,"o":"$1DAB"},{"a":7590,"t":"code","b":[202],"m":"dex"},{"a":7591,"t":"code","b":[142,160,29],"m":"stx","oa":7584,"o":"hit_delay"},{"a":7594,"t":"code","b":[96],"m":"rts","x":[7598,7605,7612,7619]},{"a":7595,"t":"code","b":[173,249,27],"m":"lda","oa":7161,"o":"$1BF9","x":[7588]},{"a":7598,"t":"code","b":[208,250],"m":"bne","oa":7594,"o":"$1DAA"},{"a":7600,"t":"code","b":[173,246,27],"m":"lda","oa":7158,"o":"obj_state"},{"a":7603,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":7605,"t":"code","b":[208,243],"m":"bne","oa":7594,"o":"$1DAA"},{"a":7607,"t":"code","b":[173,254,27],"m":"lda","oa":7166,"o":"obj_blast_frame"},{"a":7610,"t":"code","b":[201,8],"m":"cmp","o":"#$08"},{"a":7612,"t":"code","b":[176,236],"m":"bcs","oa":7594,"o":"$1DAA"},{"a":7614,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state"},{"a":7617,"t":"code","b":[201,4],"m":"cmp","o":"#$04"},{"a":7619,"t":"code","b":[240,229],"m":"beq","oa":7594,"o":"$1DAA"},{"a":7621,"t":"code","b":[173,52,22],"m":"lda","oa":5684,"o":"player_y"},{"a":7624,"t":"code","b":[24],"m":"clc"},{"a":7625,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":7627,"t":"code","b":[141,159,29],"m":"sta","oa":7583,"o":"hit_y"},{"a":7630,"t":"code","b":[173,248,27],"m":"lda","oa":7160,"o":"obj_x"},{"a":7633,"t":"code","b":[205,51,22],"m":"cmp","oa":5683,"o":"player_x"},{"a":7636,"t":"code","b":[144,11],"m":"bcc","oa":7649,"o":"$1DE1"},{"a":7638,"t":"code","b":[56],"m":"sec"},{"a":7639,"t":"code","b":[237,51,22],"m":"sbc","oa":5683,"o":"player_x"},{"a":7642,"t":"code","b":[201,25],"m":"cmp","o":"#$19","x":[7656]},{"a":7644,"t":"code","b":[144,13],"m":"bcc","oa":7659,"o":"$1DEB"},{"a":7646,"t":"code","b":[76,71,30],"m":"jmp","oa":7751,"o":"$1E47"},{"a":7649,"t":"code","b":[173,51,22],"m":"lda","oa":5683,"o":"player_x","x":[7636]},{"a":7652,"t":"code","b":[56],"m":"sec"},{"a":7653,"t":"code","b":[237,248,27],"m":"sbc","oa":7160,"o":"obj_x"},{"a":7656,"t":"code","b":[76,218,29],"m":"jmp","oa":7642,"o":"$1DDA"},{"a":7659,"t":"code","b":[173,250,27],"m":"lda","oa":7162,"o":"obj_y","x":[7644]},{"a":7662,"t":"code","b":[205,159,29],"m":"cmp","oa":7583,"o":"hit_y"},{"a":7665,"t":"code","b":[144,11],"m":"bcc","oa":7678,"o":"$1DFE"},{"a":7667,"t":"code","b":[56],"m":"sec"},{"a":7668,"t":"code","b":[237,159,29],"m":"sbc","oa":7583,"o":"hit_y"},{"a":7671,"t":"code","b":[201,40],"m":"cmp","o":"#$28","x":[7685]},{"a":7673,"t":"code","b":[144,13],"m":"bcc","oa":7688,"o":"$1E08"},{"a":7675,"t":"code","b":[76,71,30],"m":"jmp","oa":7751,"o":"$1E47"},{"a":7678,"t":"code","b":[173,159,29],"m":"lda","oa":7583,"o":"hit_y","x":[7665]},{"a":7681,"t":"code","b":[56],"m":"sec"},{"a":7682,"t":"code","b":[237,250,27],"m":"sbc","oa":7162,"o":"obj_y"},{"a":7685,"t":"code","b":[76,247,29],"m":"jmp","oa":7671,"o":"$1DF7"},{"a":7688,"t":"code","b":[174,79,36],"m":"ldx","oa":9295,"o":"energy","x":[7673]},{"a":7691,"t":"code","b":[208,6],"m":"bne","oa":7699,"o":"$1E13"},{"a":7693,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[7700,7703,7706,7709]},{"a":7695,"t":"code","b":[141,131,10],"m":"sta","oa":2691,"o":"end_flag"},{"a":7698,"t":"code","b":[96],"m":"rts"},{"a":7699,"t":"code","b":[202],"m":"dex","x":[7691]},{"a":7700,"t":"code","b":[240,247],"m":"beq","oa":7693,"o":"$1E0D"},{"a":7702,"t":"code","b":[202],"m":"dex"},{"a":7703,"t":"code","b":[240,244],"m":"beq","oa":7693,"o":"$1E0D"},{"a":7705,"t":"code","b":[202],"m":"dex"},{"a":7706,"t":"code","b":[240,241],"m":"beq","oa":7693,"o":"$1E0D"},{"a":7708,"t":"code","b":[202],"m":"dex"},{"a":7709,"t":"code","b":[240,238],"m":"beq","oa":7693,"o":"$1E0D"},{"a":7711,"t":"code","b":[142,79,36],"m":"stx","oa":9295,"o":"energy"},{"a":7714,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":7716,"t":"code","b":[141,160,29],"m":"sta","oa":7584,"o":"hit_delay"},{"a":7719,"t":"code","b":[142,51,30],"m":"stx","oa":7731,"o":"$1E33"},{"a":7722,"t":"code","b":[140,53,30],"m":"sty","oa":7733,"o":"$1E35"},{"a":7725,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":7727,"t":"code","b":[32,238,176],"m":"jsr","oa":45294,"o":"play_sound"},{"a":7730,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":7732,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":7734,"t":"code","b":[173,38,22],"m":"lda","oa":5670,"o":"player_state"},{"a":7737,"t":"code","b":[201,3],"m":"cmp","o":"#$03"},{"a":7739,"t":"code","b":[240,10],"m":"beq","oa":7751,"o":"$1E47"},{"a":7741,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":7743,"t":"code","b":[141,38,22],"m":"sta","oa":5670,"o":"player_state"},{"a":7746,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":7748,"t":"code","b":[141,179,24],"m":"sta","oa":6323,"o":"arc_index"},{"a":7751,"t":"code","b":[96],"m":"rts","x":[7646,7675,7739]},{"a":7752,"l":"map_row_0","c":"Row 0, the top row, of the level map: 256 cells of one byte, left to right. The map is five such rows, each 256 bytes after the last, so the cell below $1E48+n is $1F48+n. $10E6 draws one character column at a time at screen column 38 from the position in $0FAE/$0FAF ($1E5C at the start, $1F47 at the end of the first run through the map, in which the position is reset to $1E48 for a second run that ends at $1F21): $112B reads this row's cell, then adds $100 to the pointer for the next row, and draws each cell as two characters one above the other from the tables $5C47 and $5CE5, the left or right pair by $10E5. Row 0 lands on screen rows 9 and 10. In the bytes 219 of the 256 cells are 0; the others are mostly pairs of neighbours (18 and 19, 1C and 1D) and short platform runs.","t":"byte","b":[0,0,0,0,0,33,0,0]},{"a":7760,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7768,"t":"byte","b":[24,25,0,0,0,40,0,0]},{"a":7776,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7784,"t":"byte","b":[0,0,0,0,0,0,33,0]},{"a":7792,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7800,"t":"byte","b":[0,0,0,0,0,0,28,29]},{"a":7808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7840,"t":"byte","b":[0,0,0,0,0,0,0,24]},{"a":7848,"t":"byte","b":[25,0,0,0,33,0,0,0]},{"a":7856,"t":"byte","b":[0,0,0,24,25,0,0,0]},{"a":7864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7896,"t":"byte","b":[0,0,0,0,40,0,0,0]},{"a":7904,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7912,"t":"byte","b":[0,0,0,0,24,25,24,25]},{"a":7920,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7928,"t":"byte","b":[0,0,0,0,0,33,0,0]},{"a":7936,"t":"byte","b":[0,0,0,4,1,8,9,1]},{"a":7944,"t":"byte","b":[8,9,8,9,1,2,1,1]},{"a":7952,"t":"byte","b":[1,3,0,0,28,29,0,0]},{"a":7960,"t":"byte","b":[0,0,0,24,25,0,0,0]},{"a":7968,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":7992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8000,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8008,"l":"map_row_1","c":"Row 1 of the level map (see $1E48): 256 cells drawn on screen rows 11 and 12 by $112B. Cell value 0 is empty and 134 of the 256 cells are 0; value 1 (35 cells) and 2 (17 cells) form runs, 0B (19 cells) appears in groups.","t":"byte","b":[1,6,7,1,1,1,1,1]},{"a":8016,"t":"byte","b":[1,2,1,1,1,1,1,1]},{"a":8024,"t":"byte","b":[1,2,1,2,1,1,1,1]},{"a":8032,"t":"byte","b":[1,2,1,1,3,0,0,0]},{"a":8040,"t":"byte","b":[0,0,0,24,25,0,32,0]},{"a":8048,"t":"byte","b":[0,0,0,0,0,0,24,25]},{"a":8056,"t":"byte","b":[0,0,0,0,0,0,28,29]},{"a":8064,"t":"byte","b":[0,0,28,29,0,0,0,0]},{"a":8072,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8080,"t":"byte","b":[0,0,0,24,25,0,0,0]},{"a":8088,"t":"byte","b":[0,0,0,0,40,40,0,0]},{"a":8096,"t":"byte","b":[0,0,0,0,4,1,1,1]},{"a":8104,"t":"byte","b":[8,9,6,7,1,1,2,1]},{"a":8112,"t":"byte","b":[1,1,2,1,1,1,8,9]},{"a":8120,"t":"byte","b":[6,7,2,1,1,3,0,0]},{"a":8128,"t":"byte","b":[0,0,0,0,33,0,0,0]},{"a":8136,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8144,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8152,"t":"byte","b":[0,0,0,11,11,11,11,11]},{"a":8160,"t":"byte","b":[11,11,11,11,0,0,0,0]},{"a":8168,"t":"byte","b":[2,2,2,2,2,2,2,2]},{"a":8176,"t":"byte","b":[2,2,47,0,0,0,12,11]},{"a":8184,"t":"byte","b":[11,11,11,11,11,11,11,11]},{"a":8192,"t":"byte","b":[11,12,0,0,17,21,17,17]},{"a":8200,"t":"byte","b":[20,17,20,17,20,17,17,17]},{"a":8208,"t":"byte","b":[17,39,0,0,28,29,0,0]},{"a":8216,"t":"byte","b":[0,0,0,26,27,0,0,33]},{"a":8224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8232,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8248,"t":"byte","b":[40,0,0,0,0,0,0,0]},{"a":8256,"t":"byte","b":[0,0,0,0,0,0,0,4]},{"a":8264,"l":"map_row_2","c":"Row 2 of the level map (see $1E48): 256 cells drawn on screen rows 13 and 14 by $112B. This block ends at $2143; the last four cells of the row, $2144 to $2147, are map_patch_a. Value 11 is the commonest (54 cells) and 83 cells are 0.","t":"byte","b":[17,34,35,17,17,17,20,17]},{"a":8272,"t":"byte","b":[17,17,17,17,21,17,17,17]},{"a":8280,"t":"byte","b":[20,17,17,21,17,20,20,17]},{"a":8288,"t":"byte","b":[17,20,17,17,0,0,0,0]},{"a":8296,"t":"byte","b":[0,0,0,26,27,0,32,33]},{"a":8304,"t":"byte","b":[0,0,0,0,0,0,26,27]},{"a":8312,"t":"byte","b":[0,0,0,0,0,0,28,29]},{"a":8320,"t":"byte","b":[0,0,28,29,0,33,33,40]},{"a":8328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8336,"t":"byte","b":[0,0,0,26,27,0,24,25]},{"a":8344,"t":"byte","b":[0,0,4,1,1,8,9,1]},{"a":8352,"t":"byte","b":[1,3,0,0,0,20,21,17]},{"a":8360,"t":"byte","b":[17,21,34,35,17,17,20,17]},{"a":8368,"t":"byte","b":[21,17,17,17,17,20,17,17]},{"a":8376,"t":"byte","b":[34,35,17,20,17,0,0,0]},{"a":8384,"t":"byte","b":[0,0,0,24,32,33,25,0]},{"a":8392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":8400,"t":"byte","b":[4,6,1,1,1,1,1,1]},{"a":8408,"t":"byte","b":[6,3,0,19,17,17,37,37]},{"a":8416,"t":"byte","b":[37,17,17,17,42,43,44,45]},{"a":8424,"t":"byte","b":[17,17,21,37,37,37,37,21]},{"a":8432,"t":"byte","b":[55,21,39,0,0,0,0,17]},{"a":8440,"t":"byte","b":[17,17,17,17,17,17,17,17]},{"a":8448,"t":"byte","b":[17,47,0,0,17,20,55,56]},{"a":8456,"t":"byte","b":[53,54,21,17,17,20,20,17]},{"a":8464,"t":"byte","b":[17,38,0,0,4,1,1,1]},{"a":8472,"t":"byte","b":[1,1,1,1,1,1,1,10]},{"a":8480,"t":"byte","b":[5,1,3,0,0,0,13,14]},{"a":8488,"t":"byte","b":[14,15,16,14,16,0,0,0]},{"a":8496,"t":"byte","b":[0,13,14,15,16,13,14,15]},{"a":8504,"t":"byte","b":[16,0,0,0,0,0,0,0]},{"a":8512,"t":"byte","b":[0,0,11,11]},{"a":8516,"l":"map_patch_a","c":"Map cells: $0A84 copies the value at $2144 to $2145-$2147.","t":"byte","b":[11,11,11,11],"x":[2759]},{"a":8520,"l":"map_row_3","c":"Row 3 of the level map (see $1E48): 256 cells drawn on screen rows 15 and 16 by $112B. This block ends at $2240; the last seven cells of the row, $2241 to $2247, are map_patch_b. Value 11 is the commonest (60 cells) and 40 cells are 0.","t":"byte","b":[21,34,35,17,17,17,21,20]},{"a":8528,"t":"byte","b":[17,17,17,21,18,20,17,17]},{"a":8536,"t":"byte","b":[17,36,36,37,22,17,21,37]},{"a":8544,"t":"byte","b":[37,37,17,21,0,0,0,4]},{"a":8552,"t":"byte","b":[1,8,9,1,1,1,10,5]},{"a":8560,"t":"byte","b":[1,2,1,8,9,2,1,1]},{"a":8568,"t":"byte","b":[1,8,9,3,0,0,28,4]},{"a":8576,"t":"byte","b":[1,1,1,8,9,8,9,1]},{"a":8584,"t":"byte","b":[2,2,1,8,9,8,9,1]},{"a":8592,"t":"byte","b":[2,1,1,1,2,1,1,8]},{"a":8600,"t":"byte","b":[9,1,1,20,21,20,22,17]},{"a":8608,"t":"byte","b":[17,39,0,0,0,17,17,21]},{"a":8616,"t":"byte","b":[17,17,34,35,33,17,17,17]},{"a":8624,"t":"byte","b":[17,21,17,20,17,17,21,20]},{"a":8632,"t":"byte","b":[34,35,20,17,17,0,0,0]},{"a":8640,"t":"byte","b":[0,40,0,26,32,32,27,0]},{"a":8648,"t":"byte","b":[0,11,11,11,11,11,0,0]},{"a":8656,"t":"byte","b":[0,34,21,20,17,21,17,17]},{"a":8664,"t":"byte","b":[34,0,0,22,17,17,17,17]},{"a":8672,"t":"byte","b":[18,17,17,17,0,0,0,0]},{"a":8680,"t":"byte","b":[22,17,17,23,20,23,18,54]},{"a":8688,"t":"byte","b":[55,41,39,0,0,0,0,17]},{"a":8696,"t":"byte","b":[17,17,17,17,17,17,17,17]},{"a":8704,"t":"byte","b":[17,39,0,0,20,19,18,58]},{"a":8712,"t":"byte","b":[53,54,55,20,21,17,17,18]},{"a":8720,"t":"byte","b":[17,38,0,0,28,21,17,33]},{"a":8728,"t":"byte","b":[17,17,21,17,17,21,17,32]},{"a":8736,"t":"byte","b":[52,21,42,43,44,45,48,48]},{"a":8744,"t":"byte","b":[49,50,51,50,51,42,43,44]},{"a":8752,"t":"byte","b":[45,48,49,50,51,48,49,50]},{"a":8760,"t":"byte","b":[51,42,43,46,0,0,0,0]},{"a":8768,"t":"byte","b":[0]},{"a":8769,"l":"map_patch_b","c":"Map cells: $0A84 copies $2244 to $2245-$2247 and the value at $2144 to $2241 and $2242.","t":"byte","b":[11,11,17,17,17,17,17],"x":[2771]},{"a":8776,"l":"map_row_4","c":"Row 4, the bottom row, of the level map (see $1E48): 256 cells drawn on screen rows 17 and 18 by $112B. Value 11 is the commonest (75 cells) and 43 cells are 0; the greatest value in the five rows is $3A, which $112B turns into the index 2 x $3A + 1 in the character tables.","t":"byte","b":[17,34,35,37,37,37,18,17]},{"a":8784,"t":"byte","b":[20,17,17,17,21,17,20,17]},{"a":8792,"t":"byte","b":[17,37,37,37,17,21,17,37]},{"a":8800,"t":"byte","b":[36,37,20,17,0,0,0,0]},{"a":8808,"t":"byte","b":[17,20,21,17,17,17,32,52]},{"a":8816,"t":"byte","b":[21,17,17,17,21,17,17,17]},{"a":8824,"t":"byte","b":[20,17,17,0,0,0,28,29]},{"a":8832,"t":"byte","b":[17,20,17,17,17,17,20,21]},{"a":8840,"t":"byte","b":[17,21,17,17,17,17,17,17]},{"a":8848,"t":"byte","b":[17,20,21,20,17,20,17,17]},{"a":8856,"t":"byte","b":[17,17,17,21,23,17,20,17]},{"a":8864,"t":"byte","b":[17,38,0,0,0,17,37,37]},{"a":8872,"t":"byte","b":[41,17,34,35,32,52,20,18]},{"a":8880,"t":"byte","b":[37,37,37,21,20,17,17,17]},{"a":8888,"t":"byte","b":[34,35,37,37,20,0,0,4]},{"a":8896,"t":"byte","b":[1,1,2,1,1,10,1,3]},{"a":8904,"t":"byte","b":[0,17,17,17,17,18,0,0]},{"a":8912,"t":"byte","b":[0,34,17,17,21,23,17,20]},{"a":8920,"t":"byte","b":[34,0,0,30,28,29,28,29]},{"a":8928,"t":"byte","b":[29,28,29,31,0,0,0,0]},{"a":8936,"t":"byte","b":[30,28,29,28,29,28,29,28]},{"a":8944,"t":"byte","b":[29,31,38,0,0,0,0,17]},{"a":8952,"t":"byte","b":[17,37,37,17,17,17,17,17]},{"a":8960,"t":"byte","b":[17,38,0,0,17,17,21,18]},{"a":8968,"t":"byte","b":[58,54,55,22,20,17,17,21]},{"a":8976,"t":"byte","b":[17,39,0,0,28,20,17,33]},{"a":8984,"t":"byte","b":[52,17,41,20,17,17,17,32]},{"a":8992,"t":"byte","b":[52,18,0,0,0,0,48,48]},{"a":9000,"t":"byte","b":[49,50,51,50,51,0,0,0]},{"a":9008,"t":"byte","b":[0,48,49,50,51,48,49,50]},{"a":9016,"t":"byte","b":[51,0,0,0,0,0,4,1]},{"a":9024,"t":"byte","b":[2,1,1,1,2,8,9,8]},{"a":9032,"l":"block_chars","c":"Four rows of 12 characters at $2348, $2354, $2360 and $236C, copied to the screen matrix by $1454.","t":"byte","b":[2,3,4,5,6,7,8,9],"x":[5206]},{"a":9040,"t":"byte","b":[10,11,0,0,0,12,13,14]},{"a":9048,"t":"byte","b":[15,16,17,18,19,20,21,22]},{"a":9056,"t":"byte","b":[0,0,23,24,25,26,27,28],"x":[5218]},{"a":9064,"t":"byte","b":[29,30,31,32,0,0,0,33]},{"a":9072,"t":"byte","b":[34,35,36,37,38,39,40,0]},{"a":9080,"l":"pause_check","c":"Pause: when the key code $2582 is $50, sets $0DC7 to 1, waits for the key to be released, pressed again and released again, and clears $0DC7. Called by the main loop at $0A38 every pass.","t":"code","b":[173,130,37],"m":"lda","oa":9602,"o":"key_code","x":[2616]},{"a":9083,"t":"code","b":[201,80],"m":"cmp","o":"#$50"},{"a":9085,"t":"code","b":[208,31],"m":"bne","oa":9118,"o":"$239E"},{"a":9087,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9089,"t":"code","b":[141,199,13],"m":"sta","oa":3527,"o":"pause_flag"},{"a":9092,"t":"code","b":[173,130,37],"m":"lda","oa":9602,"o":"key_code","x":[9097]},{"a":9095,"t":"code","b":[201,80],"m":"cmp","o":"#$50"},{"a":9097,"t":"code","b":[240,249],"m":"beq","oa":9092,"o":"$2384"},{"a":9099,"t":"code","b":[173,130,37],"m":"lda","oa":9602,"o":"key_code","x":[9104]},{"a":9102,"t":"code","b":[201,80],"m":"cmp","o":"#$50"},{"a":9104,"t":"code","b":[208,249],"m":"bne","oa":9099,"o":"$238B"},{"a":9106,"t":"code","b":[173,130,37],"m":"lda","oa":9602,"o":"key_code","x":[9111]},{"a":9109,"t":"code","b":[201,80],"m":"cmp","o":"#$50"},{"a":9111,"t":"code","b":[240,249],"m":"beq","oa":9106,"o":"$2392"},{"a":9113,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9115,"t":"code","b":[141,199,13],"m":"sta","oa":3527,"o":"pause_flag"},{"a":9118,"t":"code","b":[96],"m":"rts","x":[9085]},{"a":9119,"l":"explosion_frame","c":"Called by the raster interrupt at $0DC9 (at $0DFD). Returns when $1BF6 is 0. In state 2 it writes the sprite pointer $1BFF[$1BFE] to $CFFB-$CFFF and calls $1D2C. In states 1 and 2 it then sets the colour of sprites 3 to 7 ($D02A-$D02E) to 2.","t":"code","b":[173,246,27],"m":"lda","oa":7158,"o":"obj_state","x":[3581]},{"a":9122,"t":"code","b":[208,1],"m":"bne","oa":9125,"o":"$23A5"},{"a":9124,"t":"code","b":[96],"m":"rts"},{"a":9125,"t":"code","b":[201,2],"m":"cmp","o":"#$02","x":[9122]},{"a":9127,"t":"code","b":[208,27],"m":"bne","oa":9156,"o":"$23C4"},{"a":9129,"t":"code","b":[174,254,27],"m":"ldx","oa":7166,"o":"obj_blast_frame"},{"a":9132,"t":"code","b":[189,255,27],"m":"lda","oa":7167,"o":"blast_sprites,x"},{"a":9135,"t":"code","b":[141,251,207],"m":"sta","oa":53243,"o":"$CFFB"},{"a":9138,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"$CFFC"},{"a":9141,"t":"code","b":[141,253,207],"m":"sta","oa":53245,"o":"$CFFD"},{"a":9144,"t":"code","b":[141,254,207],"m":"sta","oa":53246,"o":"$CFFE"},{"a":9147,"t":"code","b":[141,255,207],"m":"sta","oa":53247,"o":"$CFFF"},{"a":9150,"t":"code","b":[32,44,29],"m":"jsr","oa":7468,"o":"explosion_sprites"},{"a":9153,"t":"code","b":[76,196,35],"m":"jmp","oa":9156,"o":"$23C4"},{"a":9156,"t":"code","b":[169,2],"m":"lda","o":"#$02","x":[9127,9153]},{"a":9158,"t":"code","b":[141,42,208],"m":"sta","o":"vic_sprite3_colour"},{"a":9161,"t":"code","b":[141,43,208],"m":"sta","o":"vic_sprite4_colour"},{"a":9164,"t":"code","b":[141,44,208],"m":"sta","o":"vic_sprite5_colour"},{"a":9167,"t":"code","b":[141,45,208],"m":"sta","o":"vic_sprite6_colour"},{"a":9170,"t":"code","b":[141,46,208],"m":"sta","o":"vic_sprite7_colour"},{"a":9173,"t":"code","b":[96],"m":"rts"},{"a":9174,"l":"timer_update","c":"Called by the raster interrupt at $0D3A (at $0D5B). Sets sprite 4 colour $D02B to 1, its position $D008/$D009 to $1E/$3C with bit 4 of $D010 set, and its pointer $CFFC to $FE. Unless paused ($0DC7): when $3140-$3142 are all zero it sets the end flag $0A83; otherwise every 7th call (counter $3182) it takes 1 off the three-digit decimal count $3140 (ones), $3141 (tens), $3142 (hundreds), borrowing 9 into the next digit.","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[3419]},{"a":9176,"t":"code","b":[141,43,208],"m":"sta","o":"vic_sprite4_colour"},{"a":9179,"t":"code","b":[169,60],"m":"lda","o":"#$3C"},{"a":9181,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":9184,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":9186,"t":"code","b":[141,8,208],"m":"sta","o":"vic_sprite4_x"},{"a":9189,"t":"code","b":[173,16,208],"m":"lda","o":"vic_sprite_x_msb"},{"a":9192,"t":"code","b":[9,16],"m":"ora","o":"#$10"},{"a":9194,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":9197,"t":"code","b":[169,254],"m":"lda","o":"#$FE"},{"a":9199,"t":"code","b":[141,252,207],"m":"sta","oa":53244,"o":"$CFFC"},{"a":9202,"t":"code","b":[173,199,13],"m":"lda","oa":3527,"o":"pause_flag"},{"a":9205,"t":"code","b":[208,20],"m":"bne","oa":9227,"o":"$240B"},{"a":9207,"t":"code","b":[173,64,49],"m":"lda","oa":12608,"o":"timer_ones"},{"a":9210,"t":"code","b":[208,16],"m":"bne","oa":9228,"o":"$240C"},{"a":9212,"t":"code","b":[173,65,49],"m":"lda","oa":12609,"o":"timer_tens"},{"a":9215,"t":"code","b":[208,11],"m":"bne","oa":9228,"o":"$240C"},{"a":9217,"t":"code","b":[173,66,49],"m":"lda","oa":12610,"o":"timer_hundreds"},{"a":9220,"t":"code","b":[208,6],"m":"bne","oa":9228,"o":"$240C"},{"a":9222,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":9224,"t":"code","b":[141,131,10],"m":"sta","oa":2691,"o":"end_flag"},{"a":9227,"t":"code","b":[96],"m":"rts","x":[9205]},{"a":9228,"t":"code","b":[174,130,49],"m":"ldx","oa":12674,"o":"timer_tick","x":[9210,9215,9220]},{"a":9231,"t":"code","b":[240,5],"m":"beq","oa":9238,"o":"$2416"},{"a":9233,"t":"code","b":[202],"m":"dex"},{"a":9234,"t":"code","b":[142,130,49],"m":"stx","oa":12674,"o":"timer_tick"},{"a":9237,"t":"code","b":[96],"m":"rts"},{"a":9238,"t":"code","b":[169,6],"m":"lda","o":"#$06","x":[9231]},{"a":9240,"t":"code","b":[141,130,49],"m":"sta","oa":12674,"o":"timer_tick"},{"a":9243,"t":"code","b":[173,64,49],"m":"lda","oa":12608,"o":"timer_ones"},{"a":9246,"t":"code","b":[240,7],"m":"beq","oa":9255,"o":"$2427"},{"a":9248,"t":"code","b":[56],"m":"sec"},{"a":9249,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":9251,"t":"code","b":[141,64,49],"m":"sta","oa":12608,"o":"timer_ones"},{"a":9254,"t":"code","b":[96],"m":"rts"},{"a":9255,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[9246]},{"a":9257,"t":"code","b":[141,64,49],"m":"sta","oa":12608,"o":"timer_ones"},{"a":9260,"t":"code","b":[173,65,49],"m":"lda","oa":12609,"o":"timer_tens"},{"a":9263,"t":"code","b":[240,7],"m":"beq","oa":9272,"o":"$2438"},{"a":9265,"t":"code","b":[56],"m":"sec"},{"a":9266,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":9268,"t":"code","b":[141,65,49],"m":"sta","oa":12609,"o":"timer_tens"},{"a":9271,"t":"code","b":[96],"m":"rts"},{"a":9272,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[9263]},{"a":9274,"t":"code","b":[141,65,49],"m":"sta","oa":12609,"o":"timer_tens"},{"a":9277,"t":"code","b":[173,66,49],"m":"lda","oa":12610,"o":"timer_hundreds"},{"a":9280,"t":"code","b":[240,7],"m":"beq","oa":9289,"o":"$2449"},{"a":9282,"t":"code","b":[56],"m":"sec"},{"a":9283,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":9285,"t":"code","b":[141,66,49],"m":"sta","oa":12610,"o":"timer_hundreds"},{"a":9288,"t":"code","b":[96],"m":"rts"},{"a":9289,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[9280]},{"a":9291,"t":"code","b":[141,66,49],"m":"sta","oa":12610,"o":"timer_hundreds"},{"a":9294,"t":"code","b":[96],"m":"rts"},{"a":9295,"l":"energy","c":"Player energy: $0A84 sets $21; $1DA1 takes 4 off per hit and sets the end flag $0A83 when it is 4 or less.","t":"byte","b":[33],"x":[2830,7688,7711,9417,20753]},{"a":9296,"l":"energy_masks","c":"Four AND masks $FC, $F0, $C0 and $00, taken in turn by $2495 to clear pixel pairs of the energy bar.","t":"byte","b":[252,240,192,0],"x":[9440,9452,9464]},{"a":9300,"l":"energy_sprite","c":"64-byte buffer built by $2495 (patterns $FF,$FF,$AA,$AA,$55,$55 in each group of 8) and copied to $FAC8-$FB07. The first byte, $2454, is not written.","t":"byte","b":[0,255,255,170,170,85,85,0],"x":[9489]},{"a":9308,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9316,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9324,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9332,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9340,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9348,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9356,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":9364,"l":"energy_step","c":"Step counter of $2495: starts as the energy $244F and counts up to $21.","t":"byte","b":[33],"x":[9420,9427,9434]},{"a":9365,"l":"energy_bar_draw","c":"Draws the energy bar. Writes character $1D into the eight cells $CF59-$CF60 with colour 5 in $DB59-$DB60, fills the 64-byte buffer $2454-$2493 with the byte pairs $FF,$FF,$AA,$AA,$55,$55 at the start of each group of 8, then clears pixel pairs from the last group backwards with the masks at $2450-$2453, once for each point the energy $244F is below $21 (the step counter is $2494). It finally copies the buffer to $FAC8-$FB07. Called by the main loop at $0A2F and by $4428 and $5114.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[2607,17448,20756]},{"a":9367,"t":"code","b":[169,29],"m":"lda","o":"#$1D","x":[9380]},{"a":9369,"t":"code","b":[153,89,207],"m":"sta","oa":53081,"o":"$CF59,y"},{"a":9372,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":9374,"t":"code","b":[153,89,219],"m":"sta","o":"$DB59,y"},{"a":9377,"t":"code","b":[200],"m":"iny"},{"a":9378,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":9380,"t":"code","b":[208,241],"m":"bne","oa":9367,"o":"$2497"},{"a":9382,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":9384,"t":"code","b":[169,255],"m":"lda","o":"#$FF","x":[9415]},{"a":9386,"t":"code","b":[153,85,36],"m":"sta","oa":9301,"o":"$2455,y"},{"a":9389,"t":"code","b":[153,86,36],"m":"sta","oa":9302,"o":"$2456,y"},{"a":9392,"t":"code","b":[169,170],"m":"lda","o":"#$AA"},{"a":9394,"t":"code","b":[153,87,36],"m":"sta","oa":9303,"o":"$2457,y"},{"a":9397,"t":"code","b":[153,88,36],"m":"sta","oa":9304,"o":"$2458,y"},{"a":9400,"t":"code","b":[169,85],"m":"lda","o":"#$55"},{"a":9402,"t":"code","b":[153,89,36],"m":"sta","oa":9305,"o":"$2459,y"},{"a":9405,"t":"code","b":[153,90,36],"m":"sta","oa":9306,"o":"$245A,y"},{"a":9408,"t":"code","b":[152],"m":"tya"},{"a":9409,"t":"code","b":[24],"m":"clc"},{"a":9410,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":9412,"t":"code","b":[168],"m":"tay"},{"a":9413,"t":"code","b":[192,64],"m":"cpy","o":"#$40"},{"a":9415,"t":"code","b":[144,223],"m":"bcc","oa":9384,"o":"$24A8"},{"a":9417,"t":"code","b":[173,79,36],"m":"lda","oa":9295,"o":"energy"},{"a":9420,"t":"code","b":[141,148,36],"m":"sta","oa":9364,"o":"energy_step"},{"a":9423,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":9425,"t":"code","b":[160,56],"m":"ldy","o":"#$38"},{"a":9427,"t":"code","b":[173,148,36],"m":"lda","oa":9364,"o":"energy_step","x":[9476,9485]},{"a":9430,"t":"code","b":[201,33],"m":"cmp","o":"#$21"},{"a":9432,"t":"code","b":[240,53],"m":"beq","oa":9487,"o":"$250F"},{"a":9434,"t":"code","b":[238,148,36],"m":"inc","oa":9364,"o":"energy_step"},{"a":9437,"t":"code","b":[185,85,36],"m":"lda","oa":9301,"o":"$2455,y"},{"a":9440,"t":"code","b":[61,80,36],"m":"and","oa":9296,"o":"energy_masks,x"},{"a":9443,"t":"code","b":[153,85,36],"m":"sta","oa":9301,"o":"$2455,y"},{"a":9446,"t":"code","b":[153,86,36],"m":"sta","oa":9302,"o":"$2456,y"},{"a":9449,"t":"code","b":[185,87,36],"m":"lda","oa":9303,"o":"$2457,y"},{"a":9452,"t":"code","b":[61,80,36],"m":"and","oa":9296,"o":"energy_masks,x"},{"a":9455,"t":"code","b":[153,87,36],"m":"sta","oa":9303,"o":"$2457,y"},{"a":9458,"t":"code","b":[153,88,36],"m":"sta","oa":9304,"o":"$2458,y"},{"a":9461,"t":"code","b":[185,89,36],"m":"lda","oa":9305,"o":"$2459,y"},{"a":9464,"t":"code","b":[61,80,36],"m":"and","oa":9296,"o":"energy_masks,x"},{"a":9467,"t":"code","b":[153,89,36],"m":"sta","oa":9305,"o":"$2459,y"},{"a":9470,"t":"code","b":[153,90,36],"m":"sta","oa":9306,"o":"$245A,y"},{"a":9473,"t":"code","b":[232],"m":"inx"},{"a":9474,"t":"code","b":[224,4],"m":"cpx","o":"#$04"},{"a":9476,"t":"code","b":[144,205],"m":"bcc","oa":9427,"o":"$24D3"},{"a":9478,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":9480,"t":"code","b":[152],"m":"tya"},{"a":9481,"t":"code","b":[56],"m":"sec"},{"a":9482,"t":"code","b":[233,8],"m":"sbc","o":"#$08"},{"a":9484,"t":"code","b":[168],"m":"tay"},{"a":9485,"t":"code","b":[16,196],"m":"bpl","oa":9427,"o":"$24D3"},{"a":9487,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[9432]},{"a":9489,"t":"code","b":[185,84,36],"m":"lda","oa":9300,"o":"energy_sprite,y","x":[9498]},{"a":9492,"t":"code","b":[153,200,250],"m":"sta","oa":64200,"o":"energy_sprite_dest,y"},{"a":9495,"t":"code","b":[200],"m":"iny"},{"a":9496,"t":"code","b":[192,64],"m":"cpy","o":"#$40"},{"a":9498,"t":"code","b":[208,245],"m":"bne","oa":9489,"o":"$2511"},{"a":9500,"t":"code","b":[96],"m":"rts"},{"a":9501,"l":"score_add","c":"Adds the value in A to the decimal digit at $0A00 plus X, then carries leftwards: a digit of 10 or more has 10 taken off and 1 is added to the digit before it (carry kept in $2548), until the digit at $0A00 has been done. Y is kept (saved on the stack); X ends at 0. The digits at $0A00-$0A06 are the seven digits drawn by $2549; their storage is in the resident code, not in this file. Called once, by $4FEA with A=3 and X=2.","t":"code","b":[141,72,37],"m":"sta","oa":9544,"o":"digit_carry","x":[20458]},{"a":9504,"t":"code","b":[152],"m":"tya"},{"a":9505,"t":"code","b":[72],"m":"pha"},{"a":9506,"t":"code","b":[189,0,10],"m":"lda","oa":2560,"o":"score_digits,x","x":[9538]},{"a":9509,"t":"code","b":[24],"m":"clc"},{"a":9510,"t":"code","b":[109,72,37],"m":"adc","oa":9544,"o":"digit_carry"},{"a":9513,"t":"code","b":[201,10],"m":"cmp","o":"#$0A"},{"a":9515,"t":"code","b":[16,5],"m":"bpl","oa":9522,"o":"$2532"},{"a":9517,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":9519,"t":"code","b":[76,55,37],"m":"jmp","oa":9527,"o":"$2537"},{"a":9522,"t":"code","b":[160,1],"m":"ldy","o":"#$01","x":[9515]},{"a":9524,"t":"code","b":[56],"m":"sec"},{"a":9525,"t":"code","b":[233,10],"m":"sbc","o":"#$0A"},{"a":9527,"t":"code","b":[157,0,10],"m":"sta","oa":2560,"o":"score_digits,x","x":[9519]},{"a":9530,"t":"code","b":[140,72,37],"m":"sty","oa":9544,"o":"digit_carry"},{"a":9533,"t":"code","b":[224,0],"m":"cpx","o":"#$00"},{"a":9535,"t":"code","b":[240,4],"m":"beq","oa":9541,"o":"$2545"},{"a":9537,"t":"code","b":[202],"m":"dex"},{"a":9538,"t":"code","b":[76,34,37],"m":"jmp","oa":9506,"o":"$2522"},{"a":9541,"t":"code","b":[104],"m":"pla","x":[9535]},{"a":9542,"t":"code","b":[168],"m":"tay"},{"a":9543,"t":"code","b":[96],"m":"rts"},{"a":9544,"l":"digit_carry","c":"Scratch byte of $251D: the value to add, then the carry (0 or 1) to the next digit.","t":"byte","b":[0],"x":[9501,9510,9530]},{"a":9545,"l":"score_draw","c":"Draws the seven digits at $0A00-$0A06: sets the pointer $DB/$DC to $FA58 and calls $255C for X=0 to 6, so that the seven glyphs fill $FA58-$FA8F in character memory. Called by the main loop at $0A2C and by $4FED.","t":"code","b":[169,88],"m":"lda","o":"#$58","x":[2604,20461]},{"a":9547,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":9549,"t":"code","b":[169,250],"m":"lda","o":"#$FA"},{"a":9551,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":9553,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":9555,"t":"code","b":[32,92,37],"m":"jsr","oa":9564,"o":"score_draw_digit","x":[9561]},{"a":9558,"t":"code","b":[232],"m":"inx"},{"a":9559,"t":"code","b":[224,7],"m":"cpx","o":"#$07"},{"a":9561,"t":"code","b":[208,248],"m":"bne","oa":9555,"o":"$2553"},{"a":9563,"t":"code","b":[96],"m":"rts"},{"a":9564,"l":"score_draw_digit","c":"Copies the 8-byte glyph of the digit at $0A00 plus X (glyph table $0F09, digit times 8) to the address in $DB/$DC, then adds 8 to $DB/$DC. X is kept. Called seven times by $2549.","t":"code","b":[138],"m":"txa","x":[9555]},{"a":9565,"t":"code","b":[72],"m":"pha"},{"a":9566,"t":"code","b":[189,0,10],"m":"lda","oa":2560,"o":"score_digits,x"},{"a":9569,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9570,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9571,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9572,"t":"code","b":[170],"m":"tax"},{"a":9573,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":9575,"t":"code","b":[189,9,15],"m":"lda","oa":3849,"o":"digit_glyphs,x","x":[9584]},{"a":9578,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":9580,"t":"code","b":[232],"m":"inx"},{"a":9581,"t":"code","b":[200],"m":"iny"},{"a":9582,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":9584,"t":"code","b":[208,245],"m":"bne","oa":9575,"o":"$2567"},{"a":9586,"t":"code","b":[24],"m":"clc"},{"a":9587,"t":"code","b":[165,219],"m":"lda","oa":219,"o":"$DB"},{"a":9589,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":9591,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":9593,"t":"code","b":[165,220],"m":"lda","oa":220,"o":"$DC"},{"a":9595,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":9597,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":9599,"t":"code","b":[104],"m":"pla"},{"a":9600,"t":"code","b":[170],"m":"tax"},{"a":9601,"t":"code","b":[96],"m":"rts"},{"a":9602,"l":"key_code","c":"Key code from $2583, stored here by the raster interrupt at $0D3A (at $0DAE); $FF means no key. The main loop compares it with $20 at $0A45 and $2378 with $50.","t":"byte","b":[255],"x":[2629,3502,9080,9092,9099,9106,9839,23127]},{"a":9603,"l":"read_keys","c":"Reads the keyboard through CIA 1 ($DC00/$DC01) and returns a key code in A, or $FF for no key. It returns $FF at once when ($DC00 AND $DC01 AND $1F) is not $1F, i.e. a joystick line is pulled low. Otherwise it selects each of the 8 columns in turn with the mask $25FA, counts them in $25FB, and for the first low row bit takes the code from the table $25FD at (row x 8 + column); a negative table value ($FF) goes on scanning. The code is returned only if the joystick check still passes; the index is also stored in $02A7. Called by the raster interrupt at $0D3A (at $0DAB), which stores the result in $2582.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[3499]},{"a":9605,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":9608,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":9611,"t":"code","b":[45,1,220],"m":"and","o":"cia1_port_b"},{"a":9614,"t":"code","b":[41,31],"m":"and","o":"#$1F"},{"a":9616,"t":"code","b":[201,31],"m":"cmp","o":"#$1F"},{"a":9618,"t":"code","b":[208,96],"m":"bne","oa":9716,"o":"$25F4"},{"a":9620,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9622,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":9625,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9627,"t":"code","b":[141,251,37],"m":"sta","oa":9723,"o":"key_column"},{"a":9630,"t":"code","b":[169,254],"m":"lda","o":"#$FE"},{"a":9632,"t":"code","b":[141,250,37],"m":"sta","oa":9722,"o":"key_row_mask"},{"a":9635,"t":"code","b":[173,250,37],"m":"lda","oa":9722,"o":"key_row_mask","x":[9659]},{"a":9638,"t":"code","b":[141,0,220],"m":"sta","o":"cia1_port_a"},{"a":9641,"t":"code","b":[162,7],"m":"ldx","o":"#$07"},{"a":9643,"t":"code","b":[173,1,220],"m":"lda","o":"cia1_port_b"},{"a":9646,"t":"code","b":[106],"m":"ror","o":"a","x":[9650]},{"a":9647,"t":"code","b":[144,20],"m":"bcc","oa":9669,"o":"$25C5"},{"a":9649,"t":"code","b":[202],"m":"dex","x":[9713]},{"a":9650,"t":"code","b":[16,250],"m":"bpl","oa":9646,"o":"$25AE"},{"a":9652,"t":"code","b":[238,251,37],"m":"inc","oa":9723,"o":"key_column"},{"a":9655,"t":"code","b":[56],"m":"sec"},{"a":9656,"t":"code","b":[46,250,37],"m":"rol","oa":9722,"o":"key_row_mask"},{"a":9659,"t":"code","b":[176,230],"m":"bcs","oa":9635,"o":"$25A3"},{"a":9661,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[9718]},{"a":9663,"t":"code","b":[141,2,220],"m":"sta","o":"cia1_ddr_a"},{"a":9666,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9668,"t":"code","b":[96],"m":"rts"},{"a":9669,"t":"code","b":[141,252,37],"m":"sta","oa":9724,"o":"key_row_bits","x":[9647]},{"a":9672,"t":"code","b":[138],"m":"txa"},{"a":9673,"t":"code","b":[73,7],"m":"eor","o":"#$07"},{"a":9675,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9676,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9677,"t":"code","b":[10],"m":"asl","o":"a"},{"a":9678,"t":"code","b":[13,251,37],"m":"ora","oa":9723,"o":"key_column"},{"a":9681,"t":"code","b":[168],"m":"tay"},{"a":9682,"t":"code","b":[185,253,37],"m":"lda","oa":9725,"o":"key_codes,y"},{"a":9685,"t":"code","b":[140,167,2],"m":"sty","oa":679,"o":"$02A7"},{"a":9688,"t":"code","b":[48,20],"m":"bmi","oa":9710,"o":"$25EE"},{"a":9690,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":9692,"t":"code","b":[142,2,220],"m":"stx","o":"cia1_ddr_a"},{"a":9695,"t":"code","b":[170],"m":"tax"},{"a":9696,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":9699,"t":"code","b":[45,1,220],"m":"and","o":"cia1_port_b"},{"a":9702,"t":"code","b":[41,31],"m":"and","o":"#$1F"},{"a":9704,"t":"code","b":[201,31],"m":"cmp","o":"#$1F"},{"a":9706,"t":"code","b":[208,8],"m":"bne","oa":9716,"o":"$25F4"},{"a":9708,"t":"code","b":[138],"m":"txa"},{"a":9709,"t":"code","b":[96],"m":"rts"},{"a":9710,"t":"code","b":[173,252,37],"m":"lda","oa":9724,"o":"key_row_bits","x":[9688]},{"a":9713,"t":"code","b":[76,177,37],"m":"jmp","oa":9649,"o":"$25B1"},{"a":9716,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[9618,9706]},{"a":9718,"t":"code","b":[76,189,37],"m":"jmp","oa":9661,"o":"$25BD"},{"a":9721,"t":"gap","n":1},{"a":9722,"l":"key_row_mask","c":"Column select mask written to $DC00 by $2583; starts at $FE and is rotated left.","t":"byte","b":[255],"x":[9632,9635,9656]},{"a":9723,"l":"key_column","c":"Column number 0 to 7 counted by $2583; the low three bits of the index into $25FD.","t":"byte","b":[8],"x":[9627,9652,9678]},{"a":9724,"l":"key_row_bits","c":"Value read from $DC01 by $2583 when a key was found.","t":"byte","b":[0],"x":[9669,9710]},{"a":9725,"l":"key_codes","c":"64 key codes in the order (row x 8 + column), ASCII for letters and digits; $FF means no code. Read by $2583.","t":"byte","b":[1,51,53,55,57,255,255,49],"x":[9682]},{"a":9733,"t":"byte","b":[0,87,82,89,73,80,255,255]},{"a":9741,"t":"byte","b":[255,65,68,71,74,76,255,255]},{"a":9749,"t":"byte","b":[255,52,54,56,48,255,255,50]},{"a":9757,"t":"byte","b":[255,90,67,66,77,255,255,32]},{"a":9765,"t":"byte","b":[255,83,70,72,75,255,255,255]},{"a":9773,"t":"byte","b":[255,69,84,85,79,255,255,81]},{"a":9781,"t":"byte","b":[255,255,88,86,78,255,255,127]},{"a":9789,"l":"end_screen","c":"Shows the end-of-level screen. Sets bit 6 of $D011, disables interrupts, stops the sound with $B828, sets $D018=$30, text mode with multicolour in $D011/$D016, turns the sprites off ($D015=0), clears the key code $2582 and the border and background. It swaps the character data with $4589, fills the screen $CC00 with $97 and colour RAM with 9, then writes the text at $26DB (screen codes 7 1 13 5 ... read as GAME OVER; $20 gives $97, other codes get $75 added) to $CD50 and waits six times $FF with the delay $0E92. It then restores the swap, clears the screen to 0 and redraws the bottom rows with $0EA7. Called by the main loop at $0A51 and $0A5C.","t":"code","b":[173,17,208],"m":"lda","o":"vic_control1","x":[2641,2652]},{"a":9792,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":9794,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":9797,"t":"code","b":[120],"m":"sei"},{"a":9798,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":9801,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":9803,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":9806,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all"},{"a":9809,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":9811,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":9814,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":9817,"t":"code","b":[41,216],"m":"and","o":"#$D8"},{"a":9819,"t":"code","b":[9,19],"m":"ora","o":"#$13"},{"a":9821,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":9824,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":9827,"t":"code","b":[41,248],"m":"and","o":"#$F8"},{"a":9829,"t":"code","b":[9,24],"m":"ora","o":"#$18"},{"a":9831,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":9834,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9836,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":9839,"t":"code","b":[141,130,37],"m":"sta","oa":9602,"o":"key_code"},{"a":9842,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":9845,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":9848,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":9851,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":9853,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":9856,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":9858,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":9861,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":9864,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":9866,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":9869,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":9871,"t":"code","b":[185,219,38],"m":"lda","oa":9947,"o":"text_game_over,y","x":[9894]},{"a":9874,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":9876,"t":"code","b":[240,19],"m":"beq","oa":9897,"o":"$26A9"},{"a":9878,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":9880,"t":"code","b":[208,5],"m":"bne","oa":9887,"o":"$269F"},{"a":9882,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":9884,"t":"code","b":[76,162,38],"m":"jmp","oa":9890,"o":"$26A2"},{"a":9887,"t":"code","b":[24],"m":"clc","x":[9880]},{"a":9888,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":9890,"t":"code","b":[153,80,205],"m":"sta","oa":52560,"o":"$CD50,y","x":[9884]},{"a":9893,"t":"code","b":[200],"m":"iny"},{"a":9894,"t":"code","b":[76,143,38],"m":"jmp","oa":9871,"o":"$268F"},{"a":9897,"t":"code","b":[169,255],"m":"lda","o":"#$FF","x":[9876]},{"a":9899,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9902,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9904,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9907,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9909,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9912,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9914,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9917,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9919,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9922,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":9924,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":9927,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":9930,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":9932,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":9935,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":9938,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":9940,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":9943,"t":"code","b":[32,167,14],"m":"jsr","oa":3751,"o":"draw_bottom_rows"},{"a":9946,"t":"code","b":[96],"m":"rts"},{"a":9947,"l":"text_game_over","c":"Screen-code text GAME OVER (letters are codes 1-26) ending in $FF; written to $CD50 by $263D.","t":"byte","b":[7,1,13,5,32,15,22,5],"x":[9871]},{"a":9955,"t":"byte","b":[18,255]},{"a":9957,"l":"text_intro","c":"Story text typed by $279D: lines of screen codes (1-26 are letters, $20 a space, $1B a stop-like mark) each ending in $FF, with a last $FF at the end. Not decoded here beyond the letters.","t":"byte","b":[32,12,5,22,5,12,32,20],"x":[10195,10228]},{"a":9965,"t":"byte","b":[8,18,5,5,27,32,32,255]},{"a":9973,"t":"byte","b":[32,4,1,18,11,13,1,14]},{"a":9981,"t":"byte","b":[32,19,5,5,19,32,20,8]},{"a":9989,"t":"byte","b":[1,20,32,32,20,8,9,19]},{"a":9997,"t":"byte","b":[255,32,16,12,1,3,5,32]},{"a":10005,"t":"byte","b":[3,1,14,32,32,14,15,32]},{"a":10013,"t":"byte","b":[12,15,14,7,5,18,32,2]},{"a":10021,"t":"byte","b":[5,255,32,8,9,19,32,8]},{"a":10029,"t":"byte","b":[15,13,5,27,32,8,5,32]},{"a":10037,"t":"byte","b":[13,21,19,20,32,32,12,5]},{"a":10045,"t":"byte","b":[1,16,255,32,1,3,18,15]},{"a":10053,"t":"byte","b":[19,19,32,20,8,5,32,32]},{"a":10061,"t":"byte","b":[18,15,15,6,20,15,16,19]},{"a":10069,"t":"byte","b":[32,20,15,255,32,8,9,19]},{"a":10077,"t":"byte","b":[32,32,12,1,2,32,20,15]},{"a":10085,"t":"byte","b":[32,4,5,19,20,18,15,25]},{"a":10093,"t":"byte","b":[32,32,9,20,255,32,2,5]},{"a":10101,"t":"byte","b":[6,15,18,5,32,9,20,32]},{"a":10109,"t":"byte","b":[9,19,32,4,9,19,3,15]},{"a":10117,"t":"byte","b":[22,5,18,5,4,27,255,32]},{"a":10125,"t":"byte","b":[5,14,4,32,15,6,32,12]},{"a":10133,"t":"byte","b":[9,14,5,27,27,27,255,255]},{"a":10141,"l":"intro_text","c":"Types out the story text at $26E5 on the screen from $CCCE (pointer $14/$15), one character every $32 delay units, two screen rows ($50 bytes) for each line ending in $FF; the text ends with a second $FF. A $20 code gives $97 (blank), others get $75 added. After the first 30 characters ($4F10 counts down from $1E) the fire button ($DC00 bit 4) stops it. Otherwise it waits for fire at the end. It sets $4F9B to 1 and waits $FA delay units. $4F0F is the text index. Called by the setup $0A84 at $0B9B.","t":"code","b":[169,206],"m":"lda","o":"#$CE","x":[2971]},{"a":10143,"t":"code","b":[141,20,0],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":10146,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":10148,"t":"code","b":[141,21,0],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":10151,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10153,"t":"code","b":[141,15,79],"m":"sta","oa":20239,"o":"text_pos"},{"a":10156,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":10158,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":10160,"t":"code","b":[141,16,79],"m":"sta","oa":20240,"o":"text_skip_count"},{"a":10163,"t":"code","b":[174,16,79],"m":"ldx","oa":20240,"o":"text_skip_count","x":[10221,10254]},{"a":10166,"t":"code","b":[240,7],"m":"beq","oa":10175,"o":"$27BF"},{"a":10168,"t":"code","b":[202],"m":"dex"},{"a":10169,"t":"code","b":[142,16,79],"m":"stx","oa":20240,"o":"text_skip_count"},{"a":10172,"t":"code","b":[76,198,39],"m":"jmp","oa":10182,"o":"$27C6"},{"a":10175,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[10166]},{"a":10178,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10180,"t":"code","b":[240,82],"m":"beq","oa":10264,"o":"$2818"},{"a":10182,"t":"code","b":[140,207,39],"m":"sty","oa":10191,"o":"$27CF","x":[10172]},{"a":10185,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":10187,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":10190,"t":"code","b":[160,15],"m":"ldy","o":"#$0F"},{"a":10192,"t":"code","b":[174,15,79],"m":"ldx","oa":20239,"o":"text_pos"},{"a":10195,"t":"code","b":[189,229,38],"m":"lda","oa":9957,"o":"text_intro,x"},{"a":10198,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":10200,"t":"code","b":[240,22],"m":"beq","oa":10224,"o":"$27F0"},{"a":10202,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":10204,"t":"code","b":[208,5],"m":"bne","oa":10211,"o":"$27E3"},{"a":10206,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":10208,"t":"code","b":[76,230,39],"m":"jmp","oa":10214,"o":"$27E6"},{"a":10211,"t":"code","b":[24],"m":"clc","x":[10204]},{"a":10212,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":10214,"t":"code","b":[145,20],"m":"sta","oa":20,"o":"(load_pointer_lo),y","x":[10208]},{"a":10216,"t":"code","b":[200],"m":"iny"},{"a":10217,"t":"code","b":[232],"m":"inx"},{"a":10218,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":10221,"t":"code","b":[76,179,39],"m":"jmp","oa":10163,"o":"$27B3"},{"a":10224,"t":"code","b":[232],"m":"inx","x":[10200]},{"a":10225,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":10228,"t":"code","b":[189,229,38],"m":"lda","oa":9957,"o":"text_intro,x"},{"a":10231,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":10233,"t":"code","b":[240,22],"m":"beq","oa":10257,"o":"$2811"},{"a":10235,"t":"code","b":[24],"m":"clc"},{"a":10236,"t":"code","b":[173,20,0],"m":"lda","oa":20,"o":"load_pointer_lo"},{"a":10239,"t":"code","b":[105,80],"m":"adc","o":"#$50"},{"a":10241,"t":"code","b":[141,20,0],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":10244,"t":"code","b":[173,21,0],"m":"lda","oa":21,"o":"load_pointer_hi"},{"a":10247,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":10249,"t":"code","b":[141,21,0],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":10252,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":10254,"t":"code","b":[76,179,39],"m":"jmp","oa":10163,"o":"$27B3"},{"a":10257,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[10233,10262]},{"a":10260,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":10262,"t":"code","b":[208,249],"m":"bne","oa":10257,"o":"$2811"},{"a":10264,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[10180]},{"a":10266,"t":"code","b":[141,155,79],"m":"sta","oa":20379,"o":"typing_done"},{"a":10269,"t":"code","b":[169,250],"m":"lda","o":"#$FA"},{"a":10271,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":10274,"t":"code","b":[96],"m":"rts"},{"a":10275,"l":"copy_charsets","c":"Copies 8 pages ($0800 bytes) from $29C0 to $C000 and then 4 pages ($0400 bytes) from $2878 to $C800, using the pointers $14/$15 (source) and $16/$17 (destination). The first source runs on to $31BF, past the variables and code at $3140-$3182, and the two sources overlap from $29C0. Called by the setup $0A84 at $0BA9.","t":"code","b":[169,192],"m":"lda","o":"#$C0","x":[2985]},{"a":10277,"t":"code","b":[141,20,0],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":10280,"t":"code","b":[169,41],"m":"lda","o":"#$29"},{"a":10282,"t":"code","b":[141,21,0],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":10285,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10287,"t":"code","b":[141,22,0],"m":"sta","oa":22,"o":"serial_byte"},{"a":10290,"t":"code","b":[169,192],"m":"lda","o":"#$C0"},{"a":10292,"t":"code","b":[141,23,0],"m":"sta","oa":23,"o":"$0017"},{"a":10295,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":10297,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[10315]},{"a":10299,"t":"code","b":[177,20],"m":"lda","oa":20,"o":"(load_pointer_lo),y","x":[10304]},{"a":10301,"t":"code","b":[145,22],"m":"sta","oa":22,"o":"(serial_byte),y"},{"a":10303,"t":"code","b":[200],"m":"iny"},{"a":10304,"t":"code","b":[208,249],"m":"bne","oa":10299,"o":"$283B"},{"a":10306,"t":"code","b":[238,21,0],"m":"inc","oa":21,"o":"load_pointer_hi"},{"a":10309,"t":"code","b":[238,23,0],"m":"inc","oa":23,"o":"$0017"},{"a":10312,"t":"code","b":[232],"m":"inx"},{"a":10313,"t":"code","b":[224,8],"m":"cpx","o":"#$08"},{"a":10315,"t":"code","b":[208,236],"m":"bne","oa":10297,"o":"$2839"},{"a":10317,"t":"code","b":[169,120],"m":"lda","o":"#$78"},{"a":10319,"t":"code","b":[141,20,0],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":10322,"t":"code","b":[169,40],"m":"lda","o":"#$28"},{"a":10324,"t":"code","b":[141,21,0],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":10327,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":10329,"t":"code","b":[141,22,0],"m":"sta","oa":22,"o":"serial_byte"},{"a":10332,"t":"code","b":[169,200],"m":"lda","o":"#$C8"},{"a":10334,"t":"code","b":[141,23,0],"m":"sta","oa":23,"o":"$0017"},{"a":10337,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":10339,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[10357]},{"a":10341,"t":"code","b":[177,20],"m":"lda","oa":20,"o":"(load_pointer_lo),y","x":[10346]},{"a":10343,"t":"code","b":[145,22],"m":"sta","oa":22,"o":"(serial_byte),y"},{"a":10345,"t":"code","b":[200],"m":"iny"},{"a":10346,"t":"code","b":[208,249],"m":"bne","oa":10341,"o":"$2865"},{"a":10348,"t":"code","b":[238,21,0],"m":"inc","oa":21,"o":"load_pointer_hi"},{"a":10351,"t":"code","b":[238,23,0],"m":"inc","oa":23,"o":"$0017"},{"a":10354,"t":"code","b":[232],"m":"inx"},{"a":10355,"t":"code","b":[224,4],"m":"cpx","o":"#$04"},{"a":10357,"t":"code","b":[208,236],"m":"bne","oa":10339,"o":"$2863"},{"a":10359,"t":"code","b":[96],"m":"rts"},{"a":10360,"l":"copy_source_a","c":"Read by $2823: the bytes $2878-$29BF are the start of the 1,024-byte copy to $C800, and $29C0 onward is the start of the 2,048-byte copy to $C000. The contents are probably character data; not decoded.","t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":10368,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":10376,"t":"byte","b":[149,249,255,255,255,255,255,255]},{"a":10384,"t":"byte","b":[86,86,149,229,229,245,249,249]},{"a":10392,"t":"byte","b":[169,169,169,169,169,169,170,106]},{"a":10400,"t":"byte","b":[169,169,169,169,169,106,106,106]},{"a":10408,"t":"byte","b":[85,80,80,88,88,84,84,84]},{"a":10416,"t":"byte","b":[85,41,0,0,43,163,68,164]},{"a":10424,"t":"byte","b":[85,85,41,1,241,241,193,225]},{"a":10432,"t":"byte","b":[95,85,85,130,0,255,255,243]},{"a":10440,"t":"byte","b":[255,175,86,85,16,24,228,7]},{"a":10448,"t":"byte","b":[255,255,255,111,155,39,10,1]},{"a":10456,"t":"byte","b":[249,253,254,254,255,255,255,255]},{"a":10464,"t":"byte","b":[106,106,106,90,90,150,214,229]},{"a":10472,"t":"byte","b":[90,154,150,166,165,169,170,170]},{"a":10480,"t":"byte","b":[86,86,150,150,149,165,105,154]},{"a":10488,"t":"byte","b":[20,8,34,36,41,42,42,138]},{"a":10496,"t":"byte","b":[16,170,152,161,9,168,162,129]},{"a":10504,"t":"byte","b":[3,91,163,15,63,255,255,255]},{"a":10512,"t":"byte","b":[4,6,9,193,241,193,194,192]},{"a":10520,"t":"byte","b":[210,240,244,252,60,188,64,96]},{"a":10528,"t":"byte","b":[191,127,175,31,27,39,38,149]},{"a":10536,"t":"byte","b":[255,255,255,255,255,255,255,175]},{"a":10544,"t":"byte","b":[249,254,255,255,255,255,255,255]},{"a":10552,"t":"byte","b":[106,90,149,229,250,255,250,252]},{"a":10560,"t":"byte","b":[169,170,170,86,85,230,231,166]},{"a":10568,"t":"byte","b":[136,138,138,162,96,150,15,15]},{"a":10576,"t":"byte","b":[41,41,129,161,161,40,40,40]},{"a":10584,"t":"byte","b":[63,143,143,128,0,160,85,250]},{"a":10592,"t":"byte","b":[192,240,240,240,0,0,170,85]},{"a":10600,"t":"byte","b":[85,169,170,43,43,40,168,90]},{"a":10608,"t":"byte","b":[85,85,170,240,192,2,42,175]},{"a":10616,"t":"byte","b":[91,87,171,43,175,191,255,255]},{"a":10624,"t":"byte","b":[255,255,255,245,255,255,255,255]},{"a":10632,"t":"byte","b":[198,245,245,85,149,255,255,255]},{"a":10640,"t":"byte","b":[10,0,191,127,85,165,255,255]},{"a":10648,"t":"byte","b":[136,8,192,200,97,84,233,255]},{"a":10656,"t":"byte","b":[255,170,0,255,63,149,85,254]},{"a":10664,"t":"byte","b":[115,112,96,96,95,90,85,149]},{"a":10672,"t":"byte","b":[255,250,160,3,255,229,87,111]},{"a":10680,"t":"byte","b":[255,191,255,255,255,255,255,255]},{"a":10688,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":10696,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":10704,"t":"byte","b":[0,255,85,255,255,255,255,170]},{"a":10712,"t":"byte","b":[0,255,85,255,255,255,255,170]},{"a":10720,"t":"byte","b":[0,254,87,206,222,254,206,152]},{"a":10728,"t":"byte","b":[0,255,85,207,223,255,207,154]},{"a":10736,"t":"byte","b":[47,149,191,191,179,183,191,42]},{"a":10744,"t":"byte","b":[248,86,252,252,204,220,252,168]},{"a":10752,"t":"byte","b":[47,149,63,63,51,55,63,42]},{"a":10760,"t":"byte","b":[248,86,254,254,206,222,254,168]},{"a":10768,"t":"byte","b":[0,255,85,255,255,255,255,170]},{"a":10776,"t":"byte","b":[0,255,85,255,255,255,255,170]},{"a":10784,"t":"byte","b":[42,117,255,213,245,229,213,85]},{"a":10792,"t":"byte","b":[170,85,254,86,94,90,86,86]},{"a":10800,"t":"byte","b":[128,143,53,63,63,63,63,42]},{"a":10808,"t":"byte","b":[0,255,85,255,255,255,255,170]},{"a":10816,"t":"byte","b":[0,255,85,255,254,250,224,0]},{"a":10824,"t":"byte","b":[0,255,85,234,168,162,168,10]},{"a":10832,"t":"byte","b":[0,255,85,170,128,32,128,2]},{"a":10840,"t":"byte","b":[0,255,85,171,2,11,165,215]},{"a":10848,"t":"byte","b":[8,149,127,191,53,17,29,21]},{"a":10856,"t":"byte","b":[0,86,253,254,84,68,116,84]},{"a":10864,"t":"byte","b":[170,247,85,170,140,238,238,230]},{"a":10872,"t":"byte","b":[170,125,85,170,142,230,238,230]},{"a":10880,"t":"byte","b":[170,247,85,170,140,238,238,230]},{"a":10888,"t":"byte","b":[170,125,85,170,142,230,238,230]},{"a":10896,"t":"byte","b":[0,31,63,63,63,63,63,63]},{"a":10904,"t":"byte","b":[0,255,253,255,253,247,221,247]},{"a":10912,"t":"byte","b":[0,255,221,119,221,119,221,117]},{"a":10920,"t":"byte","b":[0,221,213,85,85,85,85,86]},{"a":10928,"t":"byte","b":[0,213,89,102,89,102,153,102]},{"a":10936,"t":"byte","b":[0,102,153,102,154,102,154,106]},{"a":10944,"t":"byte","b":[0,106,170,168,170,168,162,136]},{"a":10952,"t":"byte","b":[0,162,34,130,2,130,2,0]},{"a":10960,"t":"byte","b":[238,238,238,238,238,238,238,238]},{"a":10968,"t":"byte","b":[238,238,238,238,238,238,238,238]},{"a":10976,"t":"byte","b":[0,106,86,181,149,108,71,73]},{"a":10984,"t":"byte","b":[0,0,128,96,88,86,98,138]},{"a":10992,"t":"byte","b":[238,238,238,238,238,247,125,168]},{"a":11000,"t":"byte","b":[238,238,238,238,246,93,135,0]},{"a":11008,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":11016,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":11024,"t":"byte","b":[0,128,136,136,72,100,102,110]},{"a":11032,"t":"byte","b":[0,8,136,136,132,70,102,230]},{"a":11040,"t":"byte","b":[0,128,136,136,72,100,102,110]},{"a":11048,"t":"byte","b":[0,8,136,136,132,70,102,230]},{"a":11056,"t":"byte","b":[0,2,8,35,143,63,255,255]},{"a":11064,"t":"byte","b":[0,63,255,255,255,255,255,255]},{"a":11072,"t":"byte","b":[0,252,255,255,255,255,255,255]},{"a":11080,"t":"byte","b":[0,128,32,200,242,252,255,255]},{"a":11088,"t":"byte","b":[0,0,136,136,132,132,134,134]},{"a":11096,"t":"byte","b":[0,8,136,136,132,70,102,230]},{"a":11104,"t":"byte","b":[0,8,130,131,192,224,224]},{"a":11111,"l":"jsr_default_target","c":"12 bytes (E2 00 08 08 0A 8E EE BE ...) that the operand of the JSR at $4BCC points at until $4BB9 patches it. They are not code and are never run as written: $4BB9 overwrites the operand with a handler address from the table $4BD5 before every call. They also lie in the source of the $2823 copy.","t":"byte","b":[226,0,8,8,10,142,238,190],"x":[19404]},{"a":11119,"t":"byte","b":[62,0,0,0]},{"a":11123,"l":"copy_source_b","c":"Read by $2823 as part of both copies (the 2,048 bytes from $29C0 run to $31BF, and the 1,024 from $2878 to $2C77); contents not decoded.","t":"byte","b":[0,0,136,136,138,0,136,136]},{"a":11131,"t":"byte","b":[136,72,102,102,102,8,8,136]},{"a":11139,"t":"byte","b":[136,134,70,102,110,130,136,68]},{"a":11147,"t":"byte","b":[68,102,102,230,238,239,187,42]},{"a":11155,"t":"byte","b":[128,72,100,100,102,126,232,160]},{"a":11163,"t":"byte","b":[8,136,68,70,102,0,46,55]},{"a":11171,"t":"byte","b":[55,55,55,55,55,0,0,128]},{"a":11179,"t":"byte","b":[128,136,136,140,140,110,96,0]},{"a":11187,"t":"byte","b":[8,132,68,70,110,110,96,0]},{"a":11195,"t":"byte","b":[8,132,68,78,110,102,96,207]},{"a":11203,"t":"byte","b":[255,255,255,255,255,102,96,207]},{"a":11211,"t":"byte","b":[255,255,255,255,255,0,54,53]},{"a":11219,"t":"byte","b":[61,61,61,30,40,0,86,85]},{"a":11227,"t":"byte","b":[255,253,239,253,170,0,136,102]},{"a":11235,"t":"byte","b":[109,237,172,229,138,0,0,170]},{"a":11243,"t":"byte","b":[85,85,84,85,170,0,10,134]},{"a":11251,"t":"byte","b":[70,133,68,133,138,0,0,170]},{"a":11259,"t":"byte","b":[102,153,100,153,170,0,0,8]},{"a":11267,"t":"byte","b":[8,6,136,6,136,0,0,0]},{"a":11275,"t":"byte","b":[130,32,130,34,130,238,238,238]},{"a":11283,"t":"byte","b":[238,238,238,238,238,238,238,238]},{"a":11291,"t":"byte","b":[238,238,238,238,238,226,232,228]},{"a":11299,"t":"byte","b":[236,238,238,238,238,38,38,174]},{"a":11307,"t":"byte","b":[110,238,238,238,238,0,157,127]},{"a":11315,"t":"byte","b":[247,129,72,196,238,8,156,247]},{"a":11323,"t":"byte","b":[210,198,38,174,238,8,68,100]},{"a":11331,"t":"byte","b":[230,38,102,110,238,136,70,102]},{"a":11339,"t":"byte","b":[110,98,102,102,230,238,238,238]},{"a":11347,"t":"byte","b":[238,238,238,238,238,238,238,238]},{"a":11355,"t":"byte","b":[238,238,230,230,230,238,238,238]},{"a":11363,"t":"byte","b":[174,138,238,238,166,238,238,238]},{"a":11371,"t":"byte","b":[238,110,238,238,238,255,255,127]},{"a":11379,"t":"byte","b":[127,111,110,111,103,255,238,254]},{"a":11387,"t":"byte","b":[238,238,238,102,110,0,63,31]},{"a":11395,"t":"byte","b":[37,63,31,31,31,0,255,221]},{"a":11403,"t":"byte","b":[85,253,247,221,119,0,245,86]},{"a":11411,"t":"byte","b":[24,86,90,102,90,0,164,140]},{"a":11419,"t":"byte","b":[0,164,140,140,140,0,252,252]},{"a":11427,"t":"byte","b":[252,252,252,252,252,0,86,117]},{"a":11435,"t":"byte","b":[126,125,125,125,150,0,128,160]},{"a":11443,"t":"byte","b":[64,162,64,162,128,0,63,63]},{"a":11451,"t":"byte","b":[63,63,63,63,63,85,88,84]},{"a":11459,"t":"byte","b":[101,65,76,79,79,85,0,255]},{"a":11467,"t":"byte","b":[63,79,80,22,197,85,0,255]},{"a":11475,"t":"byte","b":[252,241,5,148,83,85,37,21]},{"a":11483,"t":"byte","b":[89,65,49,241,241,21,20,228]},{"a":11491,"t":"byte","b":[197,241,252,255,255,85,0,255]},{"a":11499,"t":"byte","b":[63,79,80,22,197,85,0,255]},{"a":11507,"t":"byte","b":[252,241,5,148,83,84,20,27]},{"a":11515,"t":"byte","b":[83,79,63,255,255,55,55,55]},{"a":11523,"t":"byte","b":[55,55,55,55,55,140,140,140]},{"a":11531,"t":"byte","b":[140,140,140,140,140,0,55,55]},{"a":11539,"t":"byte","b":[55,55,55,55,55,0,172,140]},{"a":11547,"t":"byte","b":[140,140,140,140,140,226,226,224]},{"a":11555,"t":"byte","b":[224,226,227,233,239,46,62,158]},{"a":11563,"t":"byte","b":[254,110,206,142,14,134,70,198]},{"a":11571,"t":"byte","b":[134,6,134,134,134,238,238,238]},{"a":11579,"t":"byte","b":[238,238,238,238,238,0,0,34]},{"a":11587,"t":"byte","b":[8,42,59,46,59,0,2,34]},{"a":11595,"t":"byte","b":[138,169,185,237,185,0,0,0]},{"a":11603,"t":"byte","b":[0,0,0,0,0,0,2,2]},{"a":11611,"t":"byte","b":[1,1,1,1,1,231,231,231]},{"a":11619,"t":"byte","b":[231,231,231,231,231,143,143,143]},{"a":11627,"t":"byte","b":[143,143,143,143,143,31,157,157]},{"a":11635,"t":"byte","b":[157,157,157,157,38,91,99,99]},{"a":11643,"t":"byte","b":[99,99,99,99,131,238,238,238]},{"a":11651,"t":"byte","b":[238,238,238,238,238,230,238,238]},{"a":11659,"t":"byte","b":[238,238,238,238,238,238,110,110]},{"a":11667,"t":"byte","b":[230,38,102,102,136,102,102,102]},{"a":11675,"t":"byte","b":[110,98,102,102,136,8,42,166]},{"a":11683,"t":"byte","b":[110,238,238,238,238,238,238,110]},{"a":11691,"t":"byte","b":[238,238,238,238,238,230,230,230]},{"a":11699,"t":"byte","b":[238,238,238,238,238,102,110,238]},{"a":11707,"t":"byte","b":[238,238,238,238,238,37,31,31]},{"a":11715,"t":"byte","b":[31,37,31,31,31,85,247,221]},{"a":11723,"t":"byte","b":[119,89,247,221,119,160,86,102]},{"a":11731,"t":"byte","b":[90,128,86,90,102,0,164,140]},{"a":11739,"t":"byte","b":[140,0,164,140,140,252,252,252]},{"a":11747,"t":"byte","b":[252,252,252,252,252,150,125,125]},{"a":11755,"t":"byte","b":[125,125,125,125,125,130,98,98]},{"a":11763,"t":"byte","b":[98,98,98,98,98,63,63,63]},{"a":11771,"t":"byte","b":[63,63,63,63,63,79,79,79]},{"a":11779,"t":"byte","b":[76,65,101,84,83,201,197,22]},{"a":11787,"t":"byte","b":[80,79,63,255,255,99,83,148]},{"a":11795,"t":"byte","b":[5,241,252,255,255,241,241,241]},{"a":11803,"t":"byte","b":[49,65,89,21,197,255,255,255]},{"a":11811,"t":"byte","b":[255,255,255,255,255,241,252,255]},{"a":11819,"t":"byte","b":[255,255,255,255,255,79,63,255]},{"a":11827,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":11835,"t":"byte","b":[255,255,255,255,255,46,55,55]},{"a":11843,"t":"byte","b":[55,55,55,55,55,0,140,140]},{"a":11851,"t":"byte","b":[140,140,140,140,140,46,55,55]},{"a":11859,"t":"byte","b":[55,55,55,55,55,0,140,140]},{"a":11867,"t":"byte","b":[140,140,140,140,140,230,238,235]},{"a":11875,"t":"byte","b":[227,226,224,224,226,14,14,14]},{"a":11883,"t":"byte","b":[142,206,238,190,62,134,134,134]},{"a":11891,"t":"byte","b":[70,198,134,6,134,238,238,238]},{"a":11899,"t":"byte","b":[238,238,238,238,238,47,63,63]},{"a":11907,"t":"byte","b":[63,63,63,0,37,253,253,253]},{"a":11915,"t":"byte","b":[253,253,253,1,85,0,0,0]},{"a":11923,"t":"byte","b":[0,0,0,0,37,1,3,1]},{"a":11931,"t":"byte","b":[3,3,3,11,255,231,231,231]},{"a":11939,"t":"byte","b":[231,231,231,231,231,143,143,143]},{"a":11947,"t":"byte","b":[143,143,143,143,143,192,230,231]},{"a":11955,"t":"byte","b":[231,231,231,231,231,15,15,143]},{"a":11963,"t":"byte","b":[143,143,143,143,143,255,255,255]},{"a":11971,"t":"byte","b":[255,255,255,255,224,255,255,255]},{"a":11979,"t":"byte","b":[255,255,255,255,15,0,10,6]},{"a":11987,"t":"byte","b":[38,46,174,110,110,110,238,238]},{"a":11995,"t":"byte","b":[238,238,238,238,238,63,99,26]},{"a":12003,"t":"byte","b":[201,252,255,255,0,255,255,15]},{"a":12011,"t":"byte","b":[106,37,240,255,0,255,255,255]},{"a":12019,"t":"byte","b":[15,106,165,240,0,255,255,255]},{"a":12027,"t":"byte","b":[255,128,89,9,1,255,255,255]},{"a":12035,"t":"byte","b":[255,0,101,96,64,255,255,255]},{"a":12043,"t":"byte","b":[252,169,90,15,0,255,255,240]},{"a":12051,"t":"byte","b":[41,88,15,255,0,252,201,164]},{"a":12059,"t":"byte","b":[99,63,255,255,0,255,255,255]},{"a":12067,"t":"byte","b":[255,63,127,127,64,255,255,255]},{"a":12075,"t":"byte","b":[255,255,255,255,0,255,255,255]},{"a":12083,"t":"byte","b":[255,255,255,255,192,255,255,255]},{"a":12091,"t":"byte","b":[255,255,255,255,15,40,30,61]},{"a":12099,"t":"byte","b":[61,61,61,61,61,0,255,253]},{"a":12107,"t":"byte","b":[239,253,255,253,255,0,223,221]},{"a":12115,"t":"byte","b":[156,221,93,221,93,0,221,85]},{"a":12123,"t":"byte","b":[84,85,85,85,85,0,109,165]},{"a":12131,"t":"byte","b":[100,165,102,165,102,0,86,153]},{"a":12139,"t":"byte","b":[100,153,102,153,102,0,138,6]},{"a":12147,"l":"copy_source_b_tail","c":"The last 461 bytes of copy_source_b ($2B73-$313F), read by $2823 with the rest of it; contents not decoded.","t":"byte","b":[136,6,136,6,136,0,162,34]},{"a":12155,"t":"byte","b":[130,34,130,34,130,132,132,132]},{"a":12163,"t":"byte","b":[132,132,132,132,132,238,238,238]},{"a":12171,"t":"byte","b":[238,238,238,238,238,0,0,0]},{"a":12179,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":12187,"t":"byte","b":[0,0,0,0,0,170,168,168]},{"a":12195,"t":"byte","b":[138,130,128,128,128,170,0,0]},{"a":12203,"t":"byte","b":[0,128,160,40,10,170,0,0]},{"a":12211,"t":"byte","b":[0,2,10,40,160,170,42,42]},{"a":12219,"t":"byte","b":[162,130,2,2,2,0,0,2]},{"a":12227,"t":"byte","b":[11,15,47,47,43,0,0,128]},{"a":12235,"t":"byte","b":[224,252,252,254,252,63,255,255]},{"a":12243,"t":"byte","b":[255,159,109,142,12,12,207,15]},{"a":12251,"t":"byte","b":[39,203,195,195,67,0,0,0]},{"a":12259,"t":"byte","b":[0,0,0,3,3,0,0,0]},{"a":12267,"t":"byte","b":[0,0,0,0,192,0,0,0]},{"a":12275,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":12283,"t":"byte","b":[0,0,0,0,0,183,182,136]},{"a":12291,"t":"byte","b":[182,182,182,182,182,163,51,3]},{"a":12299,"t":"byte","b":[35,51,51,51,51,238,238,238]},{"a":12307,"t":"byte","b":[238,238,238,238,238,238,238,238]},{"a":12315,"t":"byte","b":[238,238,238,238,238,47,181,47]},{"a":12323,"t":"byte","b":[43,10,10,2,0,252,86,252]},{"a":12331,"t":"byte","b":[252,252,168,168,0,255,85,255]},{"a":12339,"t":"byte","b":[255,255,170,170,0,247,85,247]},{"a":12347,"t":"byte","b":[247,247,174,174,10,207,101,207]},{"a":12355,"t":"byte","b":[207,207,138,138,128,255,85,255]},{"a":12363,"t":"byte","b":[255,255,170,170,0,239,117,239]},{"a":12371,"t":"byte","b":[239,207,138,138,0,255,85,255]},{"a":12379,"t":"byte","b":[255,255,170,170,0,207,101,207]},{"a":12387,"t":"byte","b":[207,207,138,138,128,252,84,252]},{"a":12395,"t":"byte","b":[252,252,168,168,0,231,231,231]},{"a":12403,"t":"byte","b":[231,231,231,231,231,143,143,143]},{"a":12411,"t":"byte","b":[143,143,143,143,143,61,61,61]},{"a":12419,"t":"byte","b":[61,61,61,30,40,253,255,253]},{"a":12427,"t":"byte","b":[255,253,239,253,170,221,109,221]},{"a":12435,"t":"byte","b":[109,221,172,229,138,85,85,85]},{"a":12443,"t":"byte","b":[85,85,84,85,170,165,102,165]},{"a":12451,"t":"byte","b":[102,165,100,165,170,153,102,153]},{"a":12459,"t":"byte","b":[102,153,100,153,170,6,136,6]},{"a":12467,"t":"byte","b":[136,6,136,6,136,34,130,34]},{"a":12475,"t":"byte","b":[130,34,130,34,130,132,132,132]},{"a":12483,"t":"byte","b":[132,132,132,132,132,238,238,238]},{"a":12491,"t":"byte","b":[238,238,238,238,238,0,0,0]},{"a":12499,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":12507,"t":"byte","b":[0,0,0,0,0,128,128,128]},{"a":12515,"t":"byte","b":[128,130,170,168,168,10,10,40]},{"a":12523,"t":"byte","b":[160,128,0,0,0,160,160,40]},{"a":12531,"t":"byte","b":[10,2,0,0,0,2,2,2]},{"a":12539,"t":"byte","b":[2,130,170,42,42,43,11,47]},{"a":12547,"t":"byte","b":[46,9,10,2,2,254,250,166]},{"a":12555,"t":"byte","b":[152,168,160,0,0,12,12,140]},{"a":12563,"t":"byte","b":[4,8,8,0,0,130,1,2]},{"a":12571,"t":"byte","b":[32,0,0,0,0,2,0,0]},{"a":12579,"t":"byte","b":[48,32,0,0,0,128,128,0]},{"a":12587,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":12595,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":12603,"t":"byte","b":[0,0,0,0,0]},{"a":12608,"l":"timer_ones","c":"Ones digit of the countdown that $23D6 decrements; $0A84 sets it to 0.","t":"byte","b":[6],"x":[2756,9207,9243,9251,9257,12651]},{"a":12609,"l":"timer_tens","c":"Tens digit of the countdown; $0A84 sets it to 0.","t":"byte","b":[0],"x":[2753,9212,9260,9268,9274]},{"a":12610,"l":"timer_hundreds","c":"Hundreds digit of the countdown; $0A84 sets it to 9.","t":"byte","b":[8],"x":[2748,9217,9277,9285,9291]},{"a":12611,"l":"timer_sprite_draw","c":"Draws the three countdown digits $3142, $3141 and $3140 as glyphs in sprite data: calls $316B with the destination $FF80 and X=2 (hundreds), $FF81 and X=1, and $FF82 and X=0. The three bytes of each sprite line hold one digit each. Called by the main loop at $0A35.","t":"code","b":[169,128],"m":"lda","o":"#$80","x":[2613]},{"a":12613,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":12615,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12617,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":12619,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":12621,"t":"code","b":[32,107,49],"m":"jsr","oa":12651,"o":"timer_sprite_digit"},{"a":12624,"t":"code","b":[169,129],"m":"lda","o":"#$81"},{"a":12626,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":12628,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12630,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":12632,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":12634,"t":"code","b":[32,107,49],"m":"jsr","oa":12651,"o":"timer_sprite_digit"},{"a":12637,"t":"code","b":[169,130],"m":"lda","o":"#$82"},{"a":12639,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":12641,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12643,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":12645,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":12647,"t":"code","b":[32,107,49],"m":"jsr","oa":12651,"o":"timer_sprite_digit"},{"a":12650,"t":"code","b":[96],"m":"rts"},{"a":12651,"l":"timer_sprite_digit","c":"Takes the digit at $3140 plus X, multiplies it by 8 and copies the eight glyph bytes from the table $0F09 to every third byte from ($DB), the first eight lines of a sprite. Called three times by $3143.","t":"code","b":[189,64,49],"m":"lda","oa":12608,"o":"timer_ones,x","x":[12621,12634,12647]},{"a":12654,"t":"code","b":[10],"m":"asl","o":"a"},{"a":12655,"t":"code","b":[10],"m":"asl","o":"a"},{"a":12656,"t":"code","b":[10],"m":"asl","o":"a"},{"a":12657,"t":"code","b":[170],"m":"tax"},{"a":12658,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":12660,"t":"code","b":[189,9,15],"m":"lda","oa":3849,"o":"digit_glyphs,x","x":[12671]},{"a":12663,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":12665,"t":"code","b":[232],"m":"inx"},{"a":12666,"t":"code","b":[200],"m":"iny"},{"a":12667,"t":"code","b":[200],"m":"iny"},{"a":12668,"t":"code","b":[200],"m":"iny"},{"a":12669,"t":"code","b":[192,24],"m":"cpy","o":"#$18"},{"a":12671,"t":"code","b":[208,243],"m":"bne","oa":12660,"o":"$3174"},{"a":12673,"t":"code","b":[96],"m":"rts"},{"a":12674,"l":"timer_tick","c":"Call counter of $23D6: counts down from 6 and the countdown digits change when it is 0.","t":"byte","b":[0],"x":[9228,9234,9240]},{"a":12675,"l":"swap_chars_35b7","c":"Exchanges four blocks of $EC bytes: $35B7 with $C000, $36A3 with $C0EC, $378F with $C1D8 and $387B with $C2C4 (it reads both, writes each to the other). Called by the setup $4F9C at $50AD.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[20653]},{"a":12677,"t":"code","b":[185,183,53],"m":"lda","oa":13751,"o":"chars_saved_a,y","x":[12736]},{"a":12680,"t":"code","b":[72],"m":"pha"},{"a":12681,"t":"code","b":[185,0,192],"m":"lda","oa":49152,"o":"$C000,y"},{"a":12684,"t":"code","b":[153,183,53],"m":"sta","oa":13751,"o":"chars_saved_a,y"},{"a":12687,"t":"code","b":[104],"m":"pla"},{"a":12688,"t":"code","b":[153,0,192],"m":"sta","oa":49152,"o":"$C000,y"},{"a":12691,"t":"code","b":[185,163,54],"m":"lda","oa":13987,"o":"$36A3,y"},{"a":12694,"t":"code","b":[72],"m":"pha"},{"a":12695,"t":"code","b":[185,236,192],"m":"lda","oa":49388,"o":"$C0EC,y"},{"a":12698,"t":"code","b":[153,163,54],"m":"sta","oa":13987,"o":"$36A3,y"},{"a":12701,"t":"code","b":[104],"m":"pla"},{"a":12702,"t":"code","b":[153,236,192],"m":"sta","oa":49388,"o":"$C0EC,y"},{"a":12705,"t":"code","b":[185,143,55],"m":"lda","oa":14223,"o":"$378F,y"},{"a":12708,"t":"code","b":[72],"m":"pha"},{"a":12709,"t":"code","b":[185,216,193],"m":"lda","oa":49624,"o":"$C1D8,y"},{"a":12712,"t":"code","b":[153,143,55],"m":"sta","oa":14223,"o":"$378F,y"},{"a":12715,"t":"code","b":[104],"m":"pla"},{"a":12716,"t":"code","b":[153,216,193],"m":"sta","oa":49624,"o":"$C1D8,y"},{"a":12719,"t":"code","b":[185,123,56],"m":"lda","oa":14459,"o":"$387B,y"},{"a":12722,"t":"code","b":[72],"m":"pha"},{"a":12723,"t":"code","b":[185,196,194],"m":"lda","oa":49860,"o":"$C2C4,y"},{"a":12726,"t":"code","b":[153,123,56],"m":"sta","oa":14459,"o":"$387B,y"},{"a":12729,"t":"code","b":[104],"m":"pla"},{"a":12730,"t":"code","b":[153,196,194],"m":"sta","oa":49860,"o":"$C2C4,y"},{"a":12733,"t":"code","b":[200],"m":"iny"},{"a":12734,"t":"code","b":[192,236],"m":"cpy","o":"#$EC"},{"a":12736,"t":"code","b":[208,195],"m":"bne","oa":12677,"o":"$3185"},{"a":12738,"t":"code","b":[96],"m":"rts"},{"a":12739,"l":"text_lab","c":"Screen-code text typed by $4F11: lines ending in $FF and a last $FF; includes the words DARKMAN, WAREHOUSE and LAB. Not decoded further.","t":"byte","b":[32,4,1,18,11,13,1,14],"x":[20303,20336]},{"a":12747,"t":"byte","b":[32,1,18,18,9,22,5,19]},{"a":12755,"t":"byte","b":[32,1,20,32,8,9,19,255]},{"a":12763,"t":"byte","b":[32,23,1,18,5,8,15,21]},{"a":12771,"t":"byte","b":[19,5,32,32,12,1,2,27]},{"a":12779,"t":"byte","b":[32,32,20,8,5,18,5,255]},{"a":12787,"t":"byte","b":[32,9,19,32,32,20,9,13]},{"a":12795,"t":"byte","b":[5,32,6,15,18,32,32,15]},{"a":12803,"t":"byte","b":[14,5,32,13,15,18,5,255]},{"a":12811,"t":"byte","b":[32,4,9,19,7,21,9,19]},{"a":12819,"t":"byte","b":[5,27,27,27,255,32,32,32]},{"a":12827,"t":"byte","b":[32,32,32,32,32,32,255,32]},{"a":12835,"t":"byte","b":[5,14,4,32,15,6,32,12]},{"a":12843,"t":"byte","b":[9,14,5,27,27,27,255,255]},{"a":12851,"l":"image_phase","c":"Toggled by $3234 on each pass: one value draws the picture, the other clears it.","t":"byte","b":[0],"x":[12881,12886]},{"a":12852,"l":"image_flash","c":"Flashes the picture drawn by $328D. If $0A10 (resident) is 0 it waits three times $FF and returns. Otherwise it repeats $FF times: toggles $3233; one phase draws the picture with $328D, the other clears the five 48-byte rows $F8C0, $FA00, $FB40, $FC80 and $FDC0. It ends by drawing the picture and waiting twice $FF. Called by $4449.","t":"code","b":[173,16,10],"m":"lda","oa":2576,"o":"mask_result","x":[17481]},{"a":12855,"t":"code","b":[208,18],"m":"bne","oa":12875,"o":"$324B"},{"a":12857,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12859,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":12862,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12864,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":12867,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12869,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":12872,"t":"code","b":[76,140,50],"m":"jmp","oa":12940,"o":"$328C"},{"a":12875,"t":"code","b":[162,255],"m":"ldx","o":"#$FF","x":[12855]},{"a":12877,"t":"code","b":[138],"m":"txa","x":[12924]},{"a":12878,"t":"code","b":[72],"m":"pha"},{"a":12879,"t":"code","b":[104],"m":"pla"},{"a":12880,"t":"code","b":[170],"m":"tax"},{"a":12881,"t":"code","b":[173,51,50],"m":"lda","oa":12851,"o":"image_phase"},{"a":12884,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":12886,"t":"code","b":[141,51,50],"m":"sta","oa":12851,"o":"image_phase"},{"a":12889,"t":"code","b":[240,6],"m":"beq","oa":12897,"o":"$3261"},{"a":12891,"t":"code","b":[32,141,50],"m":"jsr","oa":12941,"o":"image_a_draw"},{"a":12894,"t":"code","b":[76,121,50],"m":"jmp","oa":12921,"o":"$3279"},{"a":12897,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[12889]},{"a":12899,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[12919]},{"a":12901,"t":"code","b":[153,192,248],"m":"sta","oa":63680,"o":"image_row_0,y"},{"a":12904,"t":"code","b":[153,0,250],"m":"sta","oa":64000,"o":"image_row_1,y"},{"a":12907,"t":"code","b":[153,64,251],"m":"sta","oa":64320,"o":"image_row_2,y"},{"a":12910,"t":"code","b":[153,128,252],"m":"sta","oa":64640,"o":"image_row_3,y"},{"a":12913,"t":"code","b":[153,192,253],"m":"sta","oa":64960,"o":"image_row_4,y"},{"a":12916,"t":"code","b":[200],"m":"iny"},{"a":12917,"t":"code","b":[192,48],"m":"cpy","o":"#$30"},{"a":12919,"t":"code","b":[208,234],"m":"bne","oa":12899,"o":"$3263"},{"a":12921,"t":"code","b":[202],"m":"dex","x":[12894]},{"a":12922,"t":"code","b":[240,3],"m":"beq","oa":12927,"o":"$327F"},{"a":12924,"t":"code","b":[76,77,50],"m":"jmp","oa":12877,"o":"$324D"},{"a":12927,"t":"code","b":[32,141,50],"m":"jsr","oa":12941,"o":"image_a_draw","x":[12922]},{"a":12930,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12932,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":12935,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":12937,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":12940,"t":"code","b":[96],"m":"rts","x":[12872]},{"a":12941,"l":"image_a_draw","c":"Draws picture A, 6 characters wide and 5 high. Copies five rows of 48 bytes from $348B, $34BB, $34EB, $351B and $354B to the character data $F8C0, $FA00, $FB40, $FC80 and $FDC0, then for six cells in each of five screen rows copies colours from $357B, $3581, $3587, $358D, $3593 to colour RAM $DB18, $DB40, $DB68, $DB90, $DBB8 and character codes from $3599, $359F, $35A5, $35AB, $35B1 to the screen $CF18, $CF40, $CF68, $CF90, $CFB8. Called by $3234 (twice).","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[12891,12927]},{"a":12943,"t":"code","b":[185,139,52],"m":"lda","oa":13451,"o":"image_a_rows,y","x":[12976]},{"a":12946,"t":"code","b":[153,192,248],"m":"sta","oa":63680,"o":"image_row_0,y"},{"a":12949,"t":"code","b":[185,187,52],"m":"lda","oa":13499,"o":"$34BB,y"},{"a":12952,"t":"code","b":[153,0,250],"m":"sta","oa":64000,"o":"image_row_1,y"},{"a":12955,"t":"code","b":[185,235,52],"m":"lda","oa":13547,"o":"$34EB,y"},{"a":12958,"t":"code","b":[153,64,251],"m":"sta","oa":64320,"o":"image_row_2,y"},{"a":12961,"t":"code","b":[185,27,53],"m":"lda","oa":13595,"o":"$351B,y"},{"a":12964,"t":"code","b":[153,128,252],"m":"sta","oa":64640,"o":"image_row_3,y"},{"a":12967,"t":"code","b":[185,75,53],"m":"lda","oa":13643,"o":"$354B,y"},{"a":12970,"t":"code","b":[153,192,253],"m":"sta","oa":64960,"o":"image_row_4,y"},{"a":12973,"t":"code","b":[200],"m":"iny"},{"a":12974,"t":"code","b":[192,48],"m":"cpy","o":"#$30"},{"a":12976,"t":"code","b":[208,221],"m":"bne","oa":12943,"o":"$328F"},{"a":12978,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":12980,"t":"code","b":[185,123,53],"m":"lda","oa":13691,"o":"image_a_colours,y","x":[13043]},{"a":12983,"t":"code","b":[153,24,219],"m":"sta","o":"$DB18,y"},{"a":12986,"t":"code","b":[185,129,53],"m":"lda","oa":13697,"o":"$3581,y"},{"a":12989,"t":"code","b":[153,64,219],"m":"sta","o":"$DB40,y"},{"a":12992,"t":"code","b":[185,135,53],"m":"lda","oa":13703,"o":"$3587,y"},{"a":12995,"t":"code","b":[153,104,219],"m":"sta","o":"$DB68,y"},{"a":12998,"t":"code","b":[185,141,53],"m":"lda","oa":13709,"o":"$358D,y"},{"a":13001,"t":"code","b":[153,144,219],"m":"sta","o":"$DB90,y"},{"a":13004,"t":"code","b":[185,147,53],"m":"lda","oa":13715,"o":"$3593,y"},{"a":13007,"t":"code","b":[153,184,219],"m":"sta","o":"$DBB8,y"},{"a":13010,"t":"code","b":[185,153,53],"m":"lda","oa":13721,"o":"image_a_chars,y"},{"a":13013,"t":"code","b":[153,24,207],"m":"sta","oa":53016,"o":"$CF18,y"},{"a":13016,"t":"code","b":[185,159,53],"m":"lda","oa":13727,"o":"$359F,y"},{"a":13019,"t":"code","b":[153,64,207],"m":"sta","oa":53056,"o":"$CF40,y"},{"a":13022,"t":"code","b":[185,165,53],"m":"lda","oa":13733,"o":"$35A5,y"},{"a":13025,"t":"code","b":[153,104,207],"m":"sta","oa":53096,"o":"$CF68,y"},{"a":13028,"t":"code","b":[185,171,53],"m":"lda","oa":13739,"o":"$35AB,y"},{"a":13031,"t":"code","b":[153,144,207],"m":"sta","oa":53136,"o":"$CF90,y"},{"a":13034,"t":"code","b":[185,177,53],"m":"lda","oa":13745,"o":"$35B1,y"},{"a":13037,"t":"code","b":[153,184,207],"m":"sta","oa":53176,"o":"$CFB8,y"},{"a":13040,"t":"code","b":[200],"m":"iny"},{"a":13041,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":13043,"t":"code","b":[208,191],"m":"bne","oa":12980,"o":"$32B4"},{"a":13045,"t":"code","b":[96],"m":"rts"},{"a":13046,"l":"image_b_draw","c":"Draws picture B in the same layout as $328D: five rows of 48 bytes from $335F, $338F, $33BF, $33EF and $341F to $F8C0, $FA00, $FB40, $FC80 and $FDC0, colours from $344F ... $3467 to $DB18 ... $DBB8 and character codes from $346D ... $3485 to $CF18 ... $CFB8 (six cells per row). Called by $4425 and $5117.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[17445,20759]},{"a":13048,"t":"code","b":[185,95,51],"m":"lda","oa":13151,"o":"image_b_rows,y","x":[13081]},{"a":13051,"t":"code","b":[153,192,248],"m":"sta","oa":63680,"o":"image_row_0,y"},{"a":13054,"t":"code","b":[185,143,51],"m":"lda","oa":13199,"o":"$338F,y"},{"a":13057,"t":"code","b":[153,0,250],"m":"sta","oa":64000,"o":"image_row_1,y"},{"a":13060,"t":"code","b":[185,191,51],"m":"lda","oa":13247,"o":"$33BF,y"},{"a":13063,"t":"code","b":[153,64,251],"m":"sta","oa":64320,"o":"image_row_2,y"},{"a":13066,"t":"code","b":[185,239,51],"m":"lda","oa":13295,"o":"$33EF,y"},{"a":13069,"t":"code","b":[153,128,252],"m":"sta","oa":64640,"o":"image_row_3,y"},{"a":13072,"t":"code","b":[185,31,52],"m":"lda","oa":13343,"o":"$341F,y"},{"a":13075,"t":"code","b":[153,192,253],"m":"sta","oa":64960,"o":"image_row_4,y"},{"a":13078,"t":"code","b":[200],"m":"iny"},{"a":13079,"t":"code","b":[192,48],"m":"cpy","o":"#$30"},{"a":13081,"t":"code","b":[208,221],"m":"bne","oa":13048,"o":"$32F8"},{"a":13083,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":13085,"t":"code","b":[185,79,52],"m":"lda","oa":13391,"o":"image_b_colours,y","x":[13148]},{"a":13088,"t":"code","b":[153,24,219],"m":"sta","o":"$DB18,y"},{"a":13091,"t":"code","b":[185,85,52],"m":"lda","oa":13397,"o":"$3455,y"},{"a":13094,"t":"code","b":[153,64,219],"m":"sta","o":"$DB40,y"},{"a":13097,"t":"code","b":[185,91,52],"m":"lda","oa":13403,"o":"$345B,y"},{"a":13100,"t":"code","b":[153,104,219],"m":"sta","o":"$DB68,y"},{"a":13103,"t":"code","b":[185,97,52],"m":"lda","oa":13409,"o":"$3461,y"},{"a":13106,"t":"code","b":[153,144,219],"m":"sta","o":"$DB90,y"},{"a":13109,"t":"code","b":[185,103,52],"m":"lda","oa":13415,"o":"$3467,y"},{"a":13112,"t":"code","b":[153,184,219],"m":"sta","o":"$DBB8,y"},{"a":13115,"t":"code","b":[185,109,52],"m":"lda","oa":13421,"o":"image_b_chars,y"},{"a":13118,"t":"code","b":[153,24,207],"m":"sta","oa":53016,"o":"$CF18,y"},{"a":13121,"t":"code","b":[185,115,52],"m":"lda","oa":13427,"o":"$3473,y"},{"a":13124,"t":"code","b":[153,64,207],"m":"sta","oa":53056,"o":"$CF40,y"},{"a":13127,"t":"code","b":[185,121,52],"m":"lda","oa":13433,"o":"$3479,y"},{"a":13130,"t":"code","b":[153,104,207],"m":"sta","oa":53096,"o":"$CF68,y"},{"a":13133,"t":"code","b":[185,127,52],"m":"lda","oa":13439,"o":"$347F,y"},{"a":13136,"t":"code","b":[153,144,207],"m":"sta","oa":53136,"o":"$CF90,y"},{"a":13139,"t":"code","b":[185,133,52],"m":"lda","oa":13445,"o":"$3485,y"},{"a":13142,"t":"code","b":[153,184,207],"m":"sta","oa":53176,"o":"$CFB8,y"},{"a":13145,"t":"code","b":[200],"m":"iny"},{"a":13146,"t":"code","b":[192,6],"m":"cpy","o":"#$06"},{"a":13148,"t":"code","b":[208,191],"m":"bne","oa":13085,"o":"$331D"},{"a":13150,"t":"code","b":[96],"m":"rts"},{"a":13151,"l":"image_b_rows","c":"Picture B pixel data: five rows of 48 bytes at $335F, $338F, $33BF, $33EF and $341F, copied to $F8C0, $FA00, $FB40, $FC80 and $FDC0 by $32F6.","t":"byte","b":[0,47,63,53,53,53,53,53],"x":[13048]},{"a":13159,"t":"byte","b":[0,170,170,245,245,245,244,244]},{"a":13167,"t":"byte","b":[0,170,170,0,12,48,0,15]},{"a":13175,"t":"byte","b":[0,170,170,0,0,0,0,192]},{"a":13183,"t":"byte","b":[0,170,170,175,111,111,47,31]},{"a":13191,"t":"byte","b":[0,172,168,88,88,88,88,88]},{"a":13199,"t":"byte","b":[47,47,37,36,32,32,32,32],"x":[13054]},{"a":13207,"t":"byte","b":[172,240,192,0,3,13,5,5]},{"a":13215,"t":"byte","b":[181,0,0,10,63,159,190,160]},{"a":13223,"t":"byte","b":[173,0,0,64,208,208,80,64]},{"a":13231,"t":"byte","b":[10,51,0,0,0,0,0,3]},{"a":13239,"t":"byte","b":[172,172,28,12,12,28,92,76]},{"a":13247,"t":"byte","b":[44,47,47,47,47,47,47,45],"x":[13060]},{"a":13255,"t":"byte","b":[11,74,90,90,90,90,122,250]},{"a":13263,"t":"byte","b":[0,0,128,170,171,191,191,42]},{"a":13271,"t":"byte","b":[128,192,192,96,104,104,106,0]},{"a":13279,"t":"byte","b":[8,13,13,45,45,61,61,63]},{"a":13287,"t":"byte","b":[44,172,172,172,172,172,172,172]},{"a":13295,"t":"byte","b":[47,44,32,32,32,32,32,32],"x":[13066]},{"a":13303,"t":"byte","b":[139,11,35,50,56,44,46,11]},{"a":13311,"t":"byte","b":[191,191,190,40,191,63,11,128]},{"a":13319,"t":"byte","b":[168,170,184,0,168,162,137,0]},{"a":13327,"t":"byte","b":[42,43,43,108,224,128,0,0]},{"a":13335,"t":"byte","b":[184,168,104,104,40,24,8,8]},{"a":13343,"t":"byte","b":[32,32,42,58,0,0,0,0],"x":[13072]},{"a":13351,"t":"byte","b":[10,2,255,255,0,0,0,0]},{"a":13359,"t":"byte","b":[128,160,255,255,0,0,0,0]},{"a":13367,"t":"byte","b":[0,0,170,170,0,0,0,0]},{"a":13375,"t":"byte","b":[0,0,170,170,0,0,0,0]},{"a":13383,"t":"byte","b":[8,8,168,172,0,0,0,0]},{"a":13391,"l":"image_b_colours","c":"Picture B colours: five rows of 6 bytes ($344F, $3455, $345B, $3461, $3467), copied to colour RAM $DB18 ... by $32F6.","t":"byte","b":[241,185,187,251,152,255,249,171],"x":[13085]},{"a":13399,"t":"byte","b":[172,236,187,209,9,75,12,172]},{"a":13407,"t":"byte","b":[129,33,251,252,252,252,44,248]},{"a":13415,"t":"byte","b":[255,241,241,241,129,255],"x":[13109]},{"a":13421,"l":"image_b_chars","c":"Picture B character codes: five rows of 6 bytes ($346D, $3473, $3479, $347F, $3485), copied to the screen $CF18 ... by $32F6.","t":"byte","b":[159,177,177,177,193,129,177,201],"x":[13115]},{"a":13429,"t":"byte","b":[251,191,184,184,177,156,155,251]},{"a":13437,"t":"byte","b":[140,136,17,27,27,27,177,241]},{"a":13445,"t":"byte","b":[145,155,155,145,145,145],"x":[13139]},{"a":13451,"l":"image_a_rows","c":"Picture A pixel data: five rows of 48 bytes at $348B, $34BB, $34EB, $351B and $354B, copied to $F8C0, $FA00, $FB40, $FC80 and $FDC0 by $328D.","t":"byte","b":[0,47,63,53,53,53,53,53],"x":[12943]},{"a":13459,"t":"byte","b":[0,170,170,255,255,252,240,192]},{"a":13467,"t":"byte","b":[0,170,170,255,192,0,0,0]},{"a":13475,"t":"byte","b":[0,170,170,255,3,0,0,0]},{"a":13483,"t":"byte","b":[0,170,170,255,255,63,15,15]},{"a":13491,"t":"byte","b":[0,172,168,88,88,88,88,88]},{"a":13499,"t":"byte","b":[47,47,47,47,47,47,47,47],"x":[12949]},{"a":13507,"t":"byte","b":[128,0,0,128,131,131,131,143]},{"a":13515,"t":"byte","b":[0,0,128,160,175,170,191,254]},{"a":13523,"t":"byte","b":[0,0,2,11,253,191,255,251]},{"a":13531,"t":"byte","b":[10,2,2,194,194,194,194,210]},{"a":13539,"t":"byte","b":[172,172,172,172,172,172,172,172]},{"a":13547,"t":"byte","b":[47,47,47,47,47,47,47,47],"x":[12955]},{"a":13555,"t":"byte","b":[143,143,143,140,141,141,141,131]},{"a":13563,"t":"byte","b":[191,11,160,200,168,250,234,170]},{"a":13571,"t":"byte","b":[186,240,207,200,191,174,170,106]},{"a":13579,"t":"byte","b":[177,225,161,225,161,33,161,177]},{"a":13587,"t":"byte","b":[172,172,172,172,172,172,172,172]},{"a":13595,"t":"byte","b":[47,47,47,47,47,47,47,47],"x":[12961]},{"a":13603,"t":"byte","b":[128,163,163,163,163,168,168,170]},{"a":13611,"t":"byte","b":[184,190,186,171,160,171,172,47]},{"a":13619,"t":"byte","b":[47,191,191,127,11,254,190,248]},{"a":13627,"t":"byte","b":[163,99,79,143,143,63,63,255]},{"a":13635,"t":"byte","b":[172,172,172,172,172,172,172,172]},{"a":13643,"t":"byte","b":[47,47,42,26,0,0,0,0],"x":[12967]},{"a":13651,"t":"byte","b":[170,170,255,255,0,0,0,0]},{"a":13659,"t":"byte","b":[143,160,85,85,0,0,0,0]},{"a":13667,"t":"byte","b":[163,15,85,85,0,0,0,0]},{"a":13675,"t":"byte","b":[170,170,255,255,0,0,0,0]},{"a":13683,"t":"byte","b":[172,172,252,244,0,0,0,0]},{"a":13691,"l":"image_a_colours","c":"Picture A colours: five rows of 6 bytes ($357B, $3581, $3587, $358D, $3593), copied to colour RAM $DB18 ... by $328D.","t":"byte","b":[193,189,157,77,173,15,253,249],"x":[12980]},{"a":13699,"t":"byte","b":[250,250,10,241,157,185,10,217]},{"a":13707,"t":"byte","b":[9,65,77,249,250,250,253,241]},{"a":13715,"t":"byte","b":[253,209,41,253,241,1],"x":[13004]},{"a":13721,"l":"image_a_chars","c":"Picture A character codes: five rows of 6 bytes ($3599, $359F, $35A5, $35AB, $35B1), copied to the screen $CF18 ... by $328D.","t":"byte","b":[223,209,209,209,209,209,161,173],"x":[13010]},{"a":13729,"t":"byte","b":[169,25,157,157,17,173,169,26]},{"a":13737,"t":"byte","b":[218,221,145,157,153,25,169,173]},{"a":13745,"t":"byte","b":[241,253,29,25,29,253],"x":[13034]},{"a":13751,"l":"chars_saved_a","c":"Four blocks of $EC bytes ($35B7, $36A3, $378F, $387B) exchanged with $C000, $C0EC, $C1D8 and $C2C4 by $3183. $4252 and $5099 also clear five blocks of 72 bytes at $35B7, $35FF, $3647, $368F and $36D7. Probably character data; not decoded.","t":"byte","b":[252,204,204,204,204,204,252,0],"x":[12677,12684,16978,20633]},{"a":13759,"t":"byte","b":[240,48,48,48,48,48,48,0]},{"a":13767,"t":"byte","b":[252,12,12,252,192,192,252,0]},{"a":13775,"t":"byte","b":[252,12,12,60,12,12,252,0]},{"a":13783,"t":"byte","b":[192,192,204,204,252,12,12,0]},{"a":13791,"t":"byte","b":[252,192,252,12,12,12,252,0]},{"a":13799,"t":"byte","b":[240,192,192,252,204,204,252,0]},{"a":13807,"t":"byte","b":[252,12,12,12,12,12,12,0]},{"a":13815,"t":"byte","b":[252,204,204,252,204,204,252,0]},{"a":13823,"t":"byte","b":[252,204,204,204,204,204,252,0],"x":[16981,20636]},{"a":13831,"t":"byte","b":[240,48,48,48,48,48,48,0]},{"a":13839,"t":"byte","b":[252,12,12,252,192,192,252,0]},{"a":13847,"t":"byte","b":[252,12,12,60,12,12,252,0]},{"a":13855,"t":"byte","b":[192,192,204,204,252,12,12,0]},{"a":13863,"t":"byte","b":[252,192,252,12,12,12,252,0]},{"a":13871,"t":"byte","b":[240,192,192,252,204,204,252,0]},{"a":13879,"t":"byte","b":[252,12,12,12,12,12,12,0]},{"a":13887,"t":"byte","b":[252,204,204,252,204,204,252,0]},{"a":13895,"t":"byte","b":[252,204,204,204,204,204,252,0],"x":[16984,20639]},{"a":13903,"t":"byte","b":[240,48,48,48,48,48,48,0]},{"a":13911,"t":"byte","b":[252,12,12,252,192,192,252,0]},{"a":13919,"t":"byte","b":[252,12,12,60,12,12,252,0]},{"a":13927,"t":"byte","b":[192,192,204,204,252,12,12,0]},{"a":13935,"t":"byte","b":[252,192,252,12,12,12,252,0]},{"a":13943,"t":"byte","b":[240,192,192,252,204,204,252,0]},{"a":13951,"t":"byte","b":[252,12,12,12,12,12,12,0]},{"a":13959,"t":"byte","b":[252,204,204,252,204,204,252,0]},{"a":13967,"t":"byte","b":[252,204,204,204,204,204,252,0],"x":[16987,20642]},{"a":13975,"t":"byte","b":[240,48,48,48,48,48,48,0]},{"a":13983,"t":"byte","b":[252,12,12,252,192,192,252,0]},{"a":13991,"t":"byte","b":[252,12,12,60,12,12,252,0]},{"a":13999,"t":"byte","b":[192,192,204,204,252,12,12,0]},{"a":14007,"t":"byte","b":[252,192,252,12,12,12,252,0]},{"a":14015,"t":"byte","b":[240,192,192,252,204,204,252,0]},{"a":14023,"t":"byte","b":[252,12,12,12,12,12,12,0]},{"a":14031,"t":"byte","b":[252,204,204,252,204,204,252,0]},{"a":14039,"t":"byte","b":[252,204,204,204,204,204,252,0],"x":[16990,20645]},{"a":14047,"t":"byte","b":[240,48,48,48,48,48,48,0]},{"a":14055,"t":"byte","b":[252,12,12,252,192,192,252,0]},{"a":14063,"t":"byte","b":[252,12,12,60,12,12,252,0]},{"a":14071,"t":"byte","b":[192,192,204,204,252,12,12,0]},{"a":14079,"t":"byte","b":[252,192,252,12,12,12,252,0]},{"a":14087,"t":"byte","b":[240,192,192,252,204,204,252,0]},{"a":14095,"t":"byte","b":[252,12,12,12,12,12,12,0]},{"a":14103,"t":"byte","b":[252,204,204,252,204,204,252,0]},{"a":14111,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14119,"t":"byte","b":[170,255,255,0,48,45,45,45]},{"a":14127,"t":"byte","b":[170,255,255,0,195,182,182,182]},{"a":14135,"t":"byte","b":[170,255,255,0,2,222,219,219]},{"a":14143,"t":"byte","b":[170,207,239,0,240,240,192,204]},{"a":14151,"t":"byte","b":[45,45,45,45,45,45,45,45]},{"a":14159,"t":"byte","b":[182,182,182,182,182,182,187,187]},{"a":14167,"t":"byte","b":[239,239,188,188,240,243,195,207]},{"a":14175,"t":"byte","b":[12,60,44,108,108,108,108,108]},{"a":14183,"t":"byte","b":[45,45,45,45,46,46,43,43]},{"a":14191,"t":"byte","b":[175,175,188,188,240,243,198,198]},{"a":14199,"t":"byte","b":[11,27,27,219,219,219,219,219]},{"a":14207,"t":"byte","b":[108,108,108,108,108,108,108,108]},{"a":14215,"t":"byte","b":[47,47,188,170,255,207,255,0]},{"a":14223,"t":"byte","b":[22,54,54,170,255,255,255,0],"x":[12705,12712]},{"a":14231,"t":"byte","b":[219,219,219,170,255,255,255,0]},{"a":14239,"t":"byte","b":[108,108,110,170,255,255,255,0]},{"a":14247,"t":"byte","b":[102,85,68,17,68,17,68,0]},{"a":14255,"t":"byte","b":[78,9,69,9,68,5,4,0]},{"a":14263,"t":"byte","b":[38,21,4,1,0,1,0,0]},{"a":14271,"t":"byte","b":[36,16,16,16,16,16,16,0]},{"a":14279,"t":"byte","b":[0,0,0,0,0,0,4,0]},{"a":14287,"t":"byte","b":[0,0,0,1,0,1,90,0]},{"a":14295,"t":"byte","b":[4,17,69,17,69,86,239,0]},{"a":14303,"t":"byte","b":[88,92,104,108,172,188,252,0]},{"a":14311,"t":"byte","b":[0,0,0,0,1,0,0,1]},{"a":14319,"t":"byte","b":[22,25,41,57,57,41,41,16]},{"a":14327,"t":"byte","b":[144,1,0,1,0,1,0,1]},{"a":14335,"t":"byte","b":[62,57,57,41,57,41,41,16]},{"a":14343,"t":"byte","b":[78,9,69,0,64,16,68,16]},{"a":14351,"t":"byte","b":[187,85,85,0,184,84,0,0]},{"a":14359,"t":"byte","b":[191,85,85,0,0,0,0,0]},{"a":14367,"t":"byte","b":[170,85,85,0,184,84,0,0]},{"a":14375,"t":"byte","b":[133,65,64,1,0,1,0,0]},{"a":14383,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14391,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14399,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14407,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14415,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14423,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14431,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14439,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14447,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14455,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14463,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14471,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14479,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14487,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14495,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14503,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14511,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14519,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14527,"t":"byte","b":[127,255,234,234,234,234,234,234]},{"a":14535,"t":"byte","b":[255,255,170,170,170,170,170,170]},{"a":14543,"t":"byte","b":[253,254,169,169,169,169,169,169]},{"a":14551,"t":"byte","b":[234,234,234,234,234,234,234,234]},{"a":14559,"t":"byte","b":[170,170,170,165,149,145,149,148]},{"a":14567,"t":"byte","b":[170,170,170,90,90,106,174,190]},{"a":14575,"t":"byte","b":[169,169,169,169,169,169,169,169]},{"a":14583,"t":"byte","b":[150,154,171,175,170,170,170,170]},{"a":14591,"t":"byte","b":[254,254,254,250,170,170,170,170]},{"a":14599,"t":"byte","b":[255,255,170,170,170,170,170,170]},{"a":14607,"t":"byte","b":[255,255,255,255,170,170,170,170]},{"a":14615,"t":"byte","b":[254,254,254,254,254,254,254,254]},{"a":14623,"t":"byte","b":[149,149,149,149,149,149,149,149]},{"a":14631,"t":"byte","b":[255,255,255,255,170,170,170,190]},{"a":14639,"t":"byte","b":[234,234,234,234,234,234,149,21]},{"a":14647,"t":"byte","b":[169,169,169,169,169,169,85,84]},{"a":14655,"t":"byte","b":[170,170,170,85,85,85,85,85]},{"a":14663,"t":"byte","b":[170,170,170,170,170,170,85,85]},{"a":14671,"t":"byte","b":[190,190,190,130,150,170,85,85]},{"a":14679,"t":"byte","b":[190,190,190,130,150,170,85,85]},{"a":14687,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":14695,"t":"gap","n":1104},{"a":15799,"l":"screen_a_map","c":"Screen A: 18 rows of 28 character codes, drawn to $CC2E ... by $4E39. A tile map; not decoded.","t":"byte","b":[63,62,63,62,63,62,63,62],"x":[20049]},{"a":15807,"t":"byte","b":[63,62,63,62,63,62,63,62]},{"a":15815,"t":"byte","b":[63,62,63,62,63,62,63,62]},{"a":15823,"t":"byte","b":[63,62,63,62,62,63,62,63]},{"a":15831,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":15839,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":15847,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":15855,"t":"byte","b":[62,62,63,62,63,62,63,62]},{"a":15863,"t":"byte","b":[63,62,63,62,63,62,63,62]},{"a":15871,"t":"byte","b":[63,62,63,62,63,62,63,62]},{"a":15879,"t":"byte","b":[63,62,63,62,62,63,65,66]},{"a":15887,"t":"byte","b":[67,68,69,63,62,63,65,66]},{"a":15895,"t":"byte","b":[67,68,69,63,62,63,65,66]},{"a":15903,"t":"byte","b":[67,68,69,63,62,63,62,63]},{"a":15911,"t":"byte","b":[63,62,70,45,45,45,71,62]},{"a":15919,"t":"byte","b":[63,62,70,45,45,45,71,62]},{"a":15927,"t":"byte","b":[63,62,70,45,45,45,71,62]},{"a":15935,"t":"byte","b":[63,62,63,62,62,63,72,0]},{"a":15943,"t":"byte","b":[1,2,73,63,62,63,72,9]},{"a":15951,"t":"byte","b":[10,11,73,63,62,63,72,18]},{"a":15959,"t":"byte","b":[19,20,73,62,62,63,62,63]},{"a":15967,"t":"byte","b":[63,62,72,3,4,5,73,62]},{"a":15975,"t":"byte","b":[63,62,72,12,13,14,73,62]},{"a":15983,"t":"byte","b":[63,62,72,21,22,23,73,62]},{"a":15991,"t":"byte","b":[63,62,63,62,62,63,72,6]},{"a":15999,"t":"byte","b":[7,8,73,63,62,63,72,15]},{"a":16007,"t":"byte","b":[16,17,73,63,62,63,72,24]},{"a":16015,"t":"byte","b":[25,26,73,62,62,63,62,63]},{"a":16023,"t":"byte","b":[63,74,75,76,76,76,77,78]},{"a":16031,"t":"byte","b":[63,74,75,76,76,76,77,78]},{"a":16039,"t":"byte","b":[63,74,75,76,76,76,77,78]},{"a":16047,"t":"byte","b":[63,62,63,62,62,63,62,63]},{"a":16055,"t":"byte","b":[62,63,62,63,62,63,62,46]},{"a":16063,"t":"byte","b":[47,48,49,63,62,63,62,63]},{"a":16071,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":16079,"t":"byte","b":[63,62,46,47,48,49,64,62]},{"a":16087,"t":"byte","b":[63,62,63,50,51,52,53,64]},{"a":16095,"t":"byte","b":[63,62,63,62,63,62,63,62]},{"a":16103,"t":"byte","b":[63,62,63,62,62,63,50,51]},{"a":16111,"t":"byte","b":[52,53,45,64,62,63,62,54]},{"a":16119,"t":"byte","b":[55,56,57,45,64,62,62,63]},{"a":16127,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":16135,"t":"byte","b":[63,62,54,55,56,57,45,45]},{"a":16143,"t":"byte","b":[64,62,63,58,59,60,61,45]},{"a":16151,"t":"byte","b":[45,64,63,62,63,62,63,62]},{"a":16159,"t":"byte","b":[63,62,63,62,62,63,58,59]},{"a":16167,"t":"byte","b":[60,61,45,45,45,64,62,46]},{"a":16175,"t":"byte","b":[47,48,49,36,37,38,64,63]},{"a":16183,"t":"byte","b":[62,63,62,63,62,63,62,63]},{"a":16191,"t":"byte","b":[63,62,46,47,48,49,45,45]},{"a":16199,"t":"byte","b":[45,45,64,50,51,52,53,39]},{"a":16207,"t":"byte","b":[40,41,45,64,63,62,63,62]},{"a":16215,"t":"byte","b":[63,62,63,62,62,63,50,51]},{"a":16223,"t":"byte","b":[52,53,27,28,29,45,45,54]},{"a":16231,"t":"byte","b":[55,56,57,42,43,44,45,45]},{"a":16239,"t":"byte","b":[64,63,62,63,62,63,62,63]},{"a":16247,"t":"byte","b":[63,62,54,55,56,57,30,31]},{"a":16255,"t":"byte","b":[32,45,45,58,59,60,61,46]},{"a":16263,"t":"byte","b":[47,48,49,45,45,64,63,62]},{"a":16271,"t":"byte","b":[63,62,63,62,62,63,58,59]},{"a":16279,"t":"byte","b":[60,61,33,34,35,45,45,46]},{"a":16287,"t":"byte","b":[47,48,49,50,51,52,53,45]},{"a":16295,"t":"byte","b":[45,45,64,63,62,63,62,63]},{"a":16303,"l":"screen_b_map","c":"Screen B: 16 rows of 28 character codes, drawn to $CC2E ... by $4EA4. A tile map; not decoded.","t":"byte","b":[97,98,98,98,98,98,98,98],"x":[20156]},{"a":16311,"t":"byte","b":[98,98,98,98,98,98,98,98]},{"a":16319,"t":"byte","b":[98,98,98,98,98,98,98,98]},{"a":16327,"t":"byte","b":[98,98,98,99,100,101,113,113]},{"a":16335,"t":"byte","b":[113,113,113,113,113,113,113,113]},{"a":16343,"t":"byte","b":[113,113,113,113,113,113,113,113]},{"a":16351,"t":"byte","b":[113,113,113,113,113,113,102,103]},{"a":16359,"t":"byte","b":[100,109,96,96,96,96,96,96]},{"a":16367,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16375,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16383,"t":"byte","b":[96]},{"a":16384,"l":"screen_b_map_tail","c":"The last 111 bytes of screen_b_map ($3FAF-$416E): its rows from $4000 on, drawn by $4EA4 with the rest of the map.","t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16392,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16400,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16408,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16416,"t":"byte","b":[109,96,96,96,96,96,96,96]},{"a":16424,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16432,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16440,"t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16448,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16456,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16464,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16472,"t":"byte","b":[109,96,96,96,96,96,96,96]},{"a":16480,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16488,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16496,"t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16504,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16512,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16520,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16528,"t":"byte","b":[109,96,96,96,96,96,96,96]},{"a":16536,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16544,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16552,"t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16560,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16568,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16576,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16584,"t":"byte","b":[109,96,96,96,96,96,96,96]},{"a":16592,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16600,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16608,"t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16616,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16624,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16632,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16640,"t":"byte","b":[109,96,96,96,96,96,96,96]},{"a":16648,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16656,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16664,"t":"byte","b":[96,108,103,100,109,96,96,96]},{"a":16672,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16680,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16688,"t":"byte","b":[96,96,96,96,96,108,103,100]},{"a":16696,"t":"byte","b":[104,107,107,107,107,107,107,107]},{"a":16704,"t":"byte","b":[107,107,107,107,107,107,107,107]},{"a":16712,"t":"byte","b":[107,107,107,107,107,107,107,110]},{"a":16720,"t":"byte","b":[110,105,103,111,114,114,114,114]},{"a":16728,"t":"byte","b":[114,114,114,114,114,114,114,114]},{"a":16736,"t":"byte","b":[114,114,114,114,114,114,114,114]},{"a":16744,"t":"byte","b":[114,114,114,115,116,114,112]},{"a":16751,"l":"rts_fill","c":"56 bytes of $60, the RTS opcode, between the end of screen_b_map ($416E) and subject_screen ($41A7). No traced code reads them, calls them or jumps into them; why they are there is open.","t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16759,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16767,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16775,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16783,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16791,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16799,"t":"byte","b":[96,96,96,96,96,96,96,96]},{"a":16807,"l":"subject_screen","c":"Shows the SUBJECT screen of the mask game. Turns bit 6 of $D011 on, waits twice $FF, fills the screen with $50 and colour RAM with 9, sets $D022=$0B and $D023=$0C, swaps character data with $45C2 and draws the 8 by 8 block of characters 0-63 with $44D5. It writes the 8 characters at $4267 (+$75) to $CC60 (colour 7) and the 23 characters at $426F to $CF51 (colour 5), turns bit 6 off, waits for fire to be released and pressed again ($DC00 bit 4), then fills $C800 with 0, sets sprite pointer $CFF8=$DA, moves all eight sprites to Y=$FF, waits, swaps back with $45C2 and clears the five 72-byte blocks at $35B7, $35FF, $3647, $368F and $36D7. Called by $50F1.","t":"code","b":[173,17,208],"m":"lda","o":"vic_control1","x":[20721]},{"a":16810,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":16812,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":16815,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":16817,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":16820,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":16822,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":16825,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":16827,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":16830,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":16832,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":16835,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":16837,"t":"code","b":[141,34,208],"m":"sta","o":"vic_background1"},{"a":16840,"t":"code","b":[169,12],"m":"lda","o":"#$0C"},{"a":16842,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":16845,"t":"code","b":[32,194,69],"m":"jsr","oa":17858,"o":"swap_font_b"},{"a":16848,"t":"code","b":[32,213,68],"m":"jsr","oa":17621,"o":"draw_subject_chars"},{"a":16851,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":16853,"t":"code","b":[185,103,66],"m":"lda","oa":16999,"o":"text_subject,y","x":[16870]},{"a":16856,"t":"code","b":[24],"m":"clc"},{"a":16857,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":16859,"t":"code","b":[153,96,204],"m":"sta","oa":52320,"o":"$CC60,y"},{"a":16862,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":16864,"t":"code","b":[153,96,216],"m":"sta","o":"$D860,y"},{"a":16867,"t":"code","b":[200],"m":"iny"},{"a":16868,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":16870,"t":"code","b":[208,237],"m":"bne","oa":16853,"o":"$41D5"},{"a":16872,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":16874,"t":"code","b":[185,111,66],"m":"lda","oa":17007,"o":"text_press_fire,y","x":[16900]},{"a":16877,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":16879,"t":"code","b":[208,5],"m":"bne","oa":16886,"o":"$41F6"},{"a":16881,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":16883,"t":"code","b":[76,249,65],"m":"jmp","oa":16889,"o":"$41F9"},{"a":16886,"t":"code","b":[24],"m":"clc","x":[16879]},{"a":16887,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":16889,"t":"code","b":[153,81,207],"m":"sta","oa":53073,"o":"$CF51,y","x":[16883]},{"a":16892,"t":"code","b":[169,5],"m":"lda","o":"#$05"},{"a":16894,"t":"code","b":[153,81,219],"m":"sta","o":"$DB51,y"},{"a":16897,"t":"code","b":[200],"m":"iny"},{"a":16898,"t":"code","b":[192,23],"m":"cpy","o":"#$17"},{"a":16900,"t":"code","b":[208,228],"m":"bne","oa":16874,"o":"$41EA"},{"a":16902,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":16905,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":16907,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":16910,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[16915]},{"a":16913,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":16915,"t":"code","b":[240,249],"m":"beq","oa":16910,"o":"$420E"},{"a":16917,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[16922]},{"a":16920,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":16922,"t":"code","b":[208,249],"m":"bne","oa":16917,"o":"$4215"},{"a":16924,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":16927,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":16929,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":16932,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":16934,"t":"code","b":[32,110,14],"m":"jsr","oa":3694,"o":"fill_screen_c800"},{"a":16937,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":16939,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":16942,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":16944,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":16947,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":16950,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":16953,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":16956,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":16959,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":16962,"t":"code","b":[141,13,208],"m":"sta","o":"vic_sprite6_y"},{"a":16965,"t":"code","b":[141,15,208],"m":"sta","o":"vic_sprite7_y"},{"a":16968,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":16971,"t":"code","b":[32,194,69],"m":"jsr","oa":17858,"o":"swap_font_b"},{"a":16974,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":16976,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":16978,"t":"code","b":[153,183,53],"m":"sta","oa":13751,"o":"chars_saved_a,y","x":[16996]},{"a":16981,"t":"code","b":[153,255,53],"m":"sta","oa":13823,"o":"$35FF,y"},{"a":16984,"t":"code","b":[153,71,54],"m":"sta","oa":13895,"o":"$3647,y"},{"a":16987,"t":"code","b":[153,143,54],"m":"sta","oa":13967,"o":"$368F,y"},{"a":16990,"t":"code","b":[153,215,54],"m":"sta","oa":14039,"o":"$36D7,y"},{"a":16993,"t":"code","b":[200],"m":"iny"},{"a":16994,"t":"code","b":[192,72],"m":"cpy","o":"#$48"},{"a":16996,"t":"code","b":[208,236],"m":"bne","oa":16978,"o":"$4252"},{"a":16998,"t":"code","b":[96],"m":"rts"},{"a":16999,"l":"text_subject","c":"Screen-code text SUBJECT: (letters as codes 1-26, then $1C) written to $CC60 by $41A7 with $75 added to each code.","t":"byte","b":[19,21,2,10,5,3,20,28],"x":[16853]},{"a":17007,"l":"text_press_fire","c":"Screen-code text PRESS FIRE TO CONTINUE: written to $CF51 by $41A7 ($20 gives $50, others get $75 added).","t":"byte","b":[16,18,5,19,19,32,6,9],"x":[16874]},{"a":17015,"t":"byte","b":[18,5,32,20,15,32,3,15]},{"a":17023,"t":"byte","b":[14,20,9,14,21,5,27]},{"a":17030,"l":"mask_main","c":"Entry of the mask game, jumped to by the main loop at $0A72 when the level-done flag $0FB1 is set (or, with $0A11 non-zero, when the key code is $20). Calls the setup $4F9C once, then repeats: $0E4C, the timer display $5320 and a test of $0F5A. When $0F5A is non-zero it runs the finish $4410, stops the sound with $B828 and jumps to the resident loader at $0407.","t":"code","b":[32,156,79],"m":"jsr","oa":20380,"o":"mask_setup","x":[2674]},{"a":17033,"t":"code","b":[32,76,14],"m":"jsr","oa":3660,"o":"disabled_check","x":[17053]},{"a":17036,"t":"code","b":[32,32,83],"m":"jsr","oa":21280,"o":"timer_draw"},{"a":17039,"t":"code","b":[173,90,15],"m":"lda","oa":3930,"o":"mask_end_flag"},{"a":17042,"t":"code","b":[240,9],"m":"beq","oa":17053,"o":"$429D"},{"a":17044,"t":"code","b":[32,16,68],"m":"jsr","oa":17424,"o":"mask_finish"},{"a":17047,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all"},{"a":17050,"t":"code","b":[76,7,4],"m":"jmp","oa":1031,"o":"next_level_load"},{"a":17053,"t":"code","b":[76,137,66],"m":"jmp","oa":17033,"o":"$4289","x":[17042]},{"a":17056,"l":"match_seen_2","c":"Set to 1 by $437D when a matched slice has type 2 in $48AB; cleared by $4F9C and $437D.","t":"byte","b":[0],"x":[17333,17358,17386,20512]},{"a":17057,"l":"match_seen_1","c":"Set to 1 by $437D when a matched slice has type 1 in $48AB; cleared by $4F9C and $437D.","t":"byte","b":[0],"x":[17336,17370,17397,20515]},{"a":17058,"l":"match_seen_other","c":"Set to 1 by $437D when a matched slice has a type other than 1 and 2; cleared by $4F9C and $437D.","t":"byte","b":[0],"x":[17339,17378,17402,17413,20518]},{"a":17059,"l":"text_index","c":"Index into the word being typed by $42B6, $42F1, $4337 and $4359; cleared by $4F9C and $445F.","t":"byte","b":[0],"x":[17095,17117,17142,17164,17212,17234,17246,17268,17505,17541,20536]},{"a":17060,"l":"scan_delay","c":"Delay count of $42B6: counts down from $46 between letters.","t":"byte","b":[0],"x":[17078,17084,17092]},{"a":17061,"l":"text_scanning","c":"Text SCANNING followed by eight dots (code $7B) and $FF, in ASCII-like codes (a is $61, $7B draws a dot, $82 a space; $15 is added to get the screen code). Typed by $42B6.","t":"byte","b":[115,99,97,110,110,105,110,103],"x":[17098]},{"a":17069,"t":"byte","b":[123,123,123,123,123,123,123,123]},{"a":17077,"t":"byte","b":[255]},{"a":17078,"l":"scan_text_tick","c":"Types the word at $42A5 on the screen. While $42A4 is not zero it only counts it down. Otherwise it reloads it with $46 and, unless the next character at $42A5 plus the index $42A3 is $FF, writes it plus $15 to $CE3C plus the index with colour 9 at $DA3C plus the index, and increments the index. Called by $437D at $43A6.","t":"code","b":[174,164,66],"m":"ldx","oa":17060,"o":"scan_delay","x":[17318]},{"a":17081,"t":"code","b":[240,7],"m":"beq","oa":17090,"o":"$42C2"},{"a":17083,"t":"code","b":[202],"m":"dex"},{"a":17084,"t":"code","b":[142,164,66],"m":"stx","oa":17060,"o":"scan_delay"},{"a":17087,"t":"code","b":[76,224,66],"m":"jmp","oa":17120,"o":"$42E0"},{"a":17090,"t":"code","b":[169,70],"m":"lda","o":"#$46","x":[17081]},{"a":17092,"t":"code","b":[141,164,66],"m":"sta","oa":17060,"o":"scan_delay"},{"a":17095,"t":"code","b":[174,163,66],"m":"ldx","oa":17059,"o":"text_index"},{"a":17098,"t":"code","b":[189,165,66],"m":"lda","oa":17061,"o":"text_scanning,x"},{"a":17101,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":17103,"t":"code","b":[240,15],"m":"beq","oa":17120,"o":"$42E0"},{"a":17105,"t":"code","b":[24],"m":"clc"},{"a":17106,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":17108,"t":"code","b":[157,60,206],"m":"sta","oa":52796,"o":"$CE3C,x"},{"a":17111,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":17113,"t":"code","b":[157,60,218],"m":"sta","o":"$DA3C,x"},{"a":17116,"t":"code","b":[232],"m":"inx"},{"a":17117,"t":"code","b":[142,163,66],"m":"stx","oa":17059,"o":"text_index"},{"a":17120,"t":"code","b":[96],"m":"rts","x":[17087,17103]},{"a":17121,"l":"text_mask_complete_data","c":"Text MASK, two spaces, COMPLETE and a stop in ASCII-like codes ending in $FF; typed by $42F1.","t":"byte","b":[109,97,115,107,130,130,99,111],"x":[17145]},{"a":17129,"t":"byte","b":[109,112,108,101,116,101,123,255]},{"a":17137,"l":"text_mask_complete","c":"Prints the text at $42E1 (mask, two spaces, complete and a stop) at $CE3D with colour $0F at $DA3D, one character at a time with a delay of $32 each, using the index $42A3 and adding $15 to each code; ends at $FF. It calls itself by a jump to repeat. Called by $445F at $447A.","t":"code","b":[169,50],"m":"lda","o":"#$32","x":[17167,17530]},{"a":17139,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17142,"t":"code","b":[174,163,66],"m":"ldx","oa":17059,"o":"text_index"},{"a":17145,"t":"code","b":[189,225,66],"m":"lda","oa":17121,"o":"text_mask_complete_data,x"},{"a":17148,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":17150,"t":"code","b":[240,18],"m":"beq","oa":17170,"o":"$4312"},{"a":17152,"t":"code","b":[24],"m":"clc"},{"a":17153,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":17155,"t":"code","b":[157,61,206],"m":"sta","oa":52797,"o":"$CE3D,x"},{"a":17158,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":17160,"t":"code","b":[157,61,218],"m":"sta","o":"$DA3D,x"},{"a":17163,"t":"code","b":[232],"m":"inx"},{"a":17164,"t":"code","b":[142,163,66],"m":"stx","oa":17059,"o":"text_index"},{"a":17167,"t":"code","b":[76,241,66],"m":"jmp","oa":17137,"o":"text_mask_complete"},{"a":17170,"t":"code","b":[96],"m":"rts","x":[17150]},{"a":17171,"l":"text_insufficient_data","c":"Text INSUFFICIENT DATA ending in $FF (ASCII-like codes, $82 a space); typed by $4337.","t":"byte","b":[105,110,115,117,102,102,105,99],"x":[17215]},{"a":17179,"t":"byte","b":[105,101,110,116,130,100,97,116]},{"a":17187,"t":"byte","b":[97,255]},{"a":17189,"l":"text_to_generate_mask","c":"Text TO GENERATE MASK and a stop ending in $FF (ASCII-like codes); typed by $4359.","t":"byte","b":[116,111,130,103,101,110,101,114],"x":[17249]},{"a":17197,"t":"byte","b":[97,116,101,130,109,97,115,107]},{"a":17205,"t":"byte","b":[123,255]},{"a":17207,"l":"text_insufficient","c":"Prints the text at $4313 (insufficient data) at $CD24 with colour $0F at $D924, one character at a time with a delay of $32, using the index $42A3 and adding $15; ends at $FF. Called by $445F at $4480.","t":"code","b":[169,50],"m":"lda","o":"#$32","x":[17237,17536]},{"a":17209,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17212,"t":"code","b":[174,163,66],"m":"ldx","oa":17059,"o":"text_index"},{"a":17215,"t":"code","b":[189,19,67],"m":"lda","oa":17171,"o":"text_insufficient_data,x"},{"a":17218,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":17220,"t":"code","b":[240,18],"m":"beq","oa":17240,"o":"$4358"},{"a":17222,"t":"code","b":[24],"m":"clc"},{"a":17223,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":17225,"t":"code","b":[157,36,205],"m":"sta","oa":52516,"o":"$CD24,x"},{"a":17228,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":17230,"t":"code","b":[157,36,217],"m":"sta","o":"$D924,x"},{"a":17233,"t":"code","b":[232],"m":"inx"},{"a":17234,"t":"code","b":[142,163,66],"m":"stx","oa":17059,"o":"text_index"},{"a":17237,"t":"code","b":[76,55,67],"m":"jmp","oa":17207,"o":"text_insufficient"},{"a":17240,"t":"code","b":[96],"m":"rts","x":[17220]},{"a":17241,"l":"text_generate_mask","c":"Prints the text at $4325 (to generate mask) at $CD74 with colour $0F at $D974, one character at a time with a delay of $32, using the index $42A3 and adding $15; ends at $FF. Called by $445F at $4488.","t":"code","b":[169,50],"m":"lda","o":"#$32","x":[17271,17544]},{"a":17243,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17246,"t":"code","b":[174,163,66],"m":"ldx","oa":17059,"o":"text_index"},{"a":17249,"t":"code","b":[189,37,67],"m":"lda","oa":17189,"o":"text_to_generate_mask,x"},{"a":17252,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":17254,"t":"code","b":[240,18],"m":"beq","oa":17274,"o":"$437A"},{"a":17256,"t":"code","b":[24],"m":"clc"},{"a":17257,"t":"code","b":[105,21],"m":"adc","o":"#$15"},{"a":17259,"t":"code","b":[157,116,205],"m":"sta","oa":52596,"o":"$CD74,x"},{"a":17262,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":17264,"t":"code","b":[157,116,217],"m":"sta","o":"$D974,x"},{"a":17267,"t":"code","b":[232],"m":"inx"},{"a":17268,"t":"code","b":[142,163,66],"m":"stx","oa":17059,"o":"text_index"},{"a":17271,"t":"code","b":[76,89,67],"m":"jmp","oa":17241,"o":"text_generate_mask"},{"a":17274,"t":"code","b":[96],"m":"rts","x":[17254]},{"a":17275,"l":"scan_toggle","c":"Toggled by $437D each time its countdown ends; selects which way round the two colours at $DA9E/$DA9F go.","t":"byte","b":[0],"x":[17298,17303]},{"a":17276,"l":"scan_countdown","c":"Countdown of $437D: reloaded with $D2 each time it reaches 0.","t":"byte","b":[0],"x":[17277,17283,17291]},{"a":17277,"l":"scan_wait","c":"Waits for the scan to finish and rates it. Every $D3 calls it toggles $437B and swaps the colours $0D and $0A in colour RAM bytes $DA9E and $DA9F; each call runs $42B6 and waits $0A, and repeats until $489D is non-zero. It then checks the twelve match flags $489E-$48A9: for each set one the type in $48AB is tested and $42A0 (type 2), $42A1 (type 1) or $42A2 (other) is set to 1. It stores in $0A10: 0 if $42A0 is clear; otherwise 0, 1 or 2 depending on whether $42A1 and $42A2 are clear, set or both set (0 when both clear, 1 when one is set, 2 when both are). Called by $4410.","t":"code","b":[174,124,67],"m":"ldx","oa":17276,"o":"scan_countdown","x":[17329,17460]},{"a":17280,"t":"code","b":[240,7],"m":"beq","oa":17289,"o":"$4389"},{"a":17282,"t":"code","b":[202],"m":"dex"},{"a":17283,"t":"code","b":[142,124,67],"m":"stx","oa":17276,"o":"scan_countdown"},{"a":17286,"t":"code","b":[76,166,67],"m":"jmp","oa":17318,"o":"$43A6"},{"a":17289,"t":"code","b":[162,210],"m":"ldx","o":"#$D2","x":[17280]},{"a":17291,"t":"code","b":[142,124,67],"m":"stx","oa":17276,"o":"scan_countdown"},{"a":17294,"t":"code","b":[162,13],"m":"ldx","o":"#$0D"},{"a":17296,"t":"code","b":[160,10],"m":"ldy","o":"#$0A"},{"a":17298,"t":"code","b":[173,123,67],"m":"lda","oa":17275,"o":"scan_toggle"},{"a":17301,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":17303,"t":"code","b":[141,123,67],"m":"sta","oa":17275,"o":"scan_toggle"},{"a":17306,"t":"code","b":[240,4],"m":"beq","oa":17312,"o":"$43A0"},{"a":17308,"t":"code","b":[162,10],"m":"ldx","o":"#$0A"},{"a":17310,"t":"code","b":[160,13],"m":"ldy","o":"#$0D"},{"a":17312,"t":"code","b":[142,159,218],"m":"stx","o":"$DA9F","x":[17306]},{"a":17315,"t":"code","b":[140,158,218],"m":"sty","o":"$DA9E"},{"a":17318,"t":"code","b":[32,182,66],"m":"jsr","oa":17078,"o":"scan_text_tick","x":[17286]},{"a":17321,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":17323,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17326,"t":"code","b":[173,157,72],"m":"lda","oa":18589,"o":"scan_done"},{"a":17329,"t":"code","b":[240,202],"m":"beq","oa":17277,"o":"scan_wait"},{"a":17331,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":17333,"t":"code","b":[141,160,66],"m":"sta","oa":17056,"o":"match_seen_2"},{"a":17336,"t":"code","b":[141,161,66],"m":"sta","oa":17057,"o":"match_seen_1"},{"a":17339,"t":"code","b":[141,162,66],"m":"sta","oa":17058,"o":"match_seen_other"},{"a":17342,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17344,"t":"code","b":[185,158,72],"m":"lda","oa":18590,"o":"match_flags,y","x":[17384]},{"a":17347,"t":"code","b":[240,32],"m":"beq","oa":17381,"o":"$43E5"},{"a":17349,"t":"code","b":[185,171,72],"m":"lda","oa":18603,"o":"slice_types,y"},{"a":17352,"t":"code","b":[201,2],"m":"cmp","o":"#$02"},{"a":17354,"t":"code","b":[208,8],"m":"bne","oa":17364,"o":"$43D4"},{"a":17356,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":17358,"t":"code","b":[141,160,66],"m":"sta","oa":17056,"o":"match_seen_2"},{"a":17361,"t":"code","b":[76,229,67],"m":"jmp","oa":17381,"o":"$43E5"},{"a":17364,"t":"code","b":[201,1],"m":"cmp","o":"#$01","x":[17354]},{"a":17366,"t":"code","b":[208,8],"m":"bne","oa":17376,"o":"$43E0"},{"a":17368,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":17370,"t":"code","b":[141,161,66],"m":"sta","oa":17057,"o":"match_seen_1"},{"a":17373,"t":"code","b":[76,229,67],"m":"jmp","oa":17381,"o":"$43E5"},{"a":17376,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[17366]},{"a":17378,"t":"code","b":[141,162,66],"m":"sta","oa":17058,"o":"match_seen_other"},{"a":17381,"t":"code","b":[200],"m":"iny","x":[17347,17361,17373]},{"a":17382,"t":"code","b":[192,12],"m":"cpy","o":"#$0C"},{"a":17384,"t":"code","b":[208,214],"m":"bne","oa":17344,"o":"$43C0"},{"a":17386,"t":"code","b":[173,160,66],"m":"lda","oa":17056,"o":"match_seen_2"},{"a":17389,"t":"code","b":[208,6],"m":"bne","oa":17397,"o":"$43F5"},{"a":17391,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[17405]},{"a":17393,"t":"code","b":[141,16,10],"m":"sta","oa":2576,"o":"mask_result"},{"a":17396,"t":"code","b":[96],"m":"rts"},{"a":17397,"t":"code","b":[173,161,66],"m":"lda","oa":17057,"o":"match_seen_1","x":[17389]},{"a":17400,"t":"code","b":[208,11],"m":"bne","oa":17413,"o":"$4405"},{"a":17402,"t":"code","b":[173,162,66],"m":"lda","oa":17058,"o":"match_seen_other"},{"a":17405,"t":"code","b":[240,240],"m":"beq","oa":17391,"o":"$43EF"},{"a":17407,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[17416]},{"a":17409,"t":"code","b":[141,16,10],"m":"sta","oa":2576,"o":"mask_result"},{"a":17412,"t":"code","b":[96],"m":"rts"},{"a":17413,"t":"code","b":[173,162,66],"m":"lda","oa":17058,"o":"match_seen_other","x":[17400]},{"a":17416,"t":"code","b":[240,245],"m":"beq","oa":17407,"o":"$43FF"},{"a":17418,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":17420,"t":"code","b":[141,16,10],"m":"sta","oa":2576,"o":"mask_result"},{"a":17423,"t":"code","b":[96],"m":"rts"},{"a":17424,"l":"mask_finish","c":"Closes the mask game. Fills $CEA8-$CEF7 with $50, stops the sound ($B828), then runs $4EA4, $0EA7, $32F6, the energy bar $2495, the swaps $4589 and $45E4, the 12 blocks $4652 and $437D, waits three times $FF, runs $445F, $3234 and $0E4C and waits three more times $FF. Called by $4294.","t":"code","b":[169,80],"m":"lda","o":"#$50","x":[17044]},{"a":17426,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17428,"t":"code","b":[153,168,206],"m":"sta","oa":52904,"o":"$CEA8,y","x":[17434]},{"a":17431,"t":"code","b":[200],"m":"iny"},{"a":17432,"t":"code","b":[192,80],"m":"cpy","o":"#$50"},{"a":17434,"t":"code","b":[208,248],"m":"bne","oa":17428,"o":"$4414"},{"a":17436,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all"},{"a":17439,"t":"code","b":[32,164,78],"m":"jsr","oa":20132,"o":"screen_b_draw"},{"a":17442,"t":"code","b":[32,167,14],"m":"jsr","oa":3751,"o":"draw_bottom_rows"},{"a":17445,"t":"code","b":[32,246,50],"m":"jsr","oa":13046,"o":"image_b_draw"},{"a":17448,"t":"code","b":[32,149,36],"m":"jsr","oa":9365,"o":"energy_bar_draw"},{"a":17451,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":17454,"t":"code","b":[32,228,69],"m":"jsr","oa":17892,"o":"swap_font_c"},{"a":17457,"t":"code","b":[32,82,70],"m":"jsr","oa":18002,"o":"draw_slice_blocks"},{"a":17460,"t":"code","b":[32,125,67],"m":"jsr","oa":17277,"o":"scan_wait"},{"a":17463,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17465,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17468,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17470,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17473,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17475,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17478,"t":"code","b":[32,95,68],"m":"jsr","oa":17503,"o":"mask_report"},{"a":17481,"t":"code","b":[32,52,50],"m":"jsr","oa":12852,"o":"image_flash"},{"a":17484,"t":"code","b":[32,76,14],"m":"jsr","oa":3660,"o":"disabled_check"},{"a":17487,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17489,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17492,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17494,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17497,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":17499,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17502,"t":"code","b":[96],"m":"rts"},{"a":17503,"l":"mask_report","c":"Reports the result. Clears $42A3, runs $4538 and $45C2. If $0A10 (resident) is 0 it prints the two texts $4337 and $4359 (the index $42A3 is cleared between them). Otherwise it sets $52BA to 1, draws the block $44D5, runs the dissolve $448C and prints $42F1. Called by $4446.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[17478]},{"a":17505,"t":"code","b":[141,163,66],"m":"sta","oa":17059,"o":"text_index"},{"a":17508,"t":"code","b":[32,56,69],"m":"jsr","oa":17720,"o":"clear_text_area"},{"a":17511,"t":"code","b":[32,194,69],"m":"jsr","oa":17858,"o":"swap_font_b"},{"a":17514,"t":"code","b":[173,16,10],"m":"lda","oa":2576,"o":"mask_result"},{"a":17517,"t":"code","b":[240,17],"m":"beq","oa":17536,"o":"$4480"},{"a":17519,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":17521,"t":"code","b":[141,186,82],"m":"sta","oa":21178,"o":"result_shown"},{"a":17524,"t":"code","b":[32,213,68],"m":"jsr","oa":17621,"o":"draw_subject_chars"},{"a":17527,"t":"code","b":[32,140,68],"m":"jsr","oa":17548,"o":"dissolve_pattern"},{"a":17530,"t":"code","b":[32,241,66],"m":"jsr","oa":17137,"o":"text_mask_complete"},{"a":17533,"t":"code","b":[76,139,68],"m":"jmp","oa":17547,"o":"$448B"},{"a":17536,"t":"code","b":[32,55,67],"m":"jsr","oa":17207,"o":"text_insufficient","x":[17517]},{"a":17539,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":17541,"t":"code","b":[141,163,66],"m":"sta","oa":17059,"o":"text_index"},{"a":17544,"t":"code","b":[32,89,67],"m":"jsr","oa":17241,"o":"text_generate_mask"},{"a":17547,"t":"code","b":[96],"m":"rts","x":[17533]},{"a":17548,"l":"dissolve_pattern","c":"Erodes the buffer $FE00-$FEFF in 30 rounds. In each round, for each of the 256 bytes, it takes a random byte from $0E2C and picks the mask $FC (below $40), $F3 (below $80), $CF (below $C4) or $3F, stores it in the operand of the AND at $44B6 (the byte $44B7) and ANDs that one byte with it; after each round it waits $32. At the end it clears the 256 bytes to 0. Called by $445F at $4477.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[17527]},{"a":17550,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[17610]},{"a":17552,"t":"code","b":[32,44,14],"m":"jsr","oa":3628,"o":"random","x":[17596]},{"a":17555,"t":"code","b":[201,64],"m":"cmp","o":"#$40"},{"a":17557,"t":"code","b":[176,5],"m":"bcs","oa":17564,"o":"$449C"},{"a":17559,"t":"code","b":[169,252],"m":"lda","o":"#$FC"},{"a":17561,"t":"code","b":[76,176,68],"m":"jmp","oa":17584,"o":"$44B0"},{"a":17564,"t":"code","b":[201,128],"m":"cmp","o":"#$80","x":[17557]},{"a":17566,"t":"code","b":[176,5],"m":"bcs","oa":17573,"o":"$44A5"},{"a":17568,"t":"code","b":[169,243],"m":"lda","o":"#$F3"},{"a":17570,"t":"code","b":[76,176,68],"m":"jmp","oa":17584,"o":"$44B0"},{"a":17573,"t":"code","b":[201,196],"m":"cmp","o":"#$C4","x":[17566]},{"a":17575,"t":"code","b":[176,5],"m":"bcs","oa":17582,"o":"$44AE"},{"a":17577,"t":"code","b":[169,207],"m":"lda","o":"#$CF"},{"a":17579,"t":"code","b":[76,176,68],"m":"jmp","oa":17584,"o":"$44B0"},{"a":17582,"t":"code","b":[169,63],"m":"lda","o":"#$3F","x":[17575]},{"a":17584,"t":"code","b":[141,183,68],"m":"sta","oa":17591,"o":"$44B7","x":[17561,17570,17579]},{"a":17587,"t":"code","b":[185,0,254],"m":"lda","oa":65024,"o":"dissolve_buffer,y"},{"a":17590,"t":"code","b":[41,0],"m":"and","o":"#$00"},{"a":17592,"t":"code","b":[153,0,254],"m":"sta","oa":65024,"o":"dissolve_buffer,y"},{"a":17595,"t":"code","b":[200],"m":"iny"},{"a":17596,"t":"code","b":[208,210],"m":"bne","oa":17552,"o":"$4490"},{"a":17598,"t":"code","b":[138],"m":"txa"},{"a":17599,"t":"code","b":[72],"m":"pha"},{"a":17600,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":17602,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":17605,"t":"code","b":[104],"m":"pla"},{"a":17606,"t":"code","b":[170],"m":"tax"},{"a":17607,"t":"code","b":[232],"m":"inx"},{"a":17608,"t":"code","b":[224,30],"m":"cpx","o":"#$1E"},{"a":17610,"t":"code","b":[208,194],"m":"bne","oa":17550,"o":"$448E"},{"a":17612,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":17614,"t":"code","b":[153,0,254],"m":"sta","oa":65024,"o":"dissolve_buffer,y","x":[17618]},{"a":17617,"t":"code","b":[200],"m":"iny"},{"a":17618,"t":"code","b":[208,250],"m":"bne","oa":17614,"o":"$44CE"},{"a":17620,"t":"code","b":[96],"m":"rts"},{"a":17621,"l":"draw_subject_chars","c":"Writes the character codes 0 to 63 in order into an 8 by 8 block on the screen, eight per row, with the rows at $CCD8, $CD00, $CD28, $CD50, $CD78, $CDA0, $CDC8 and $CDF0. Called by $41A7 and by $445F at $4474.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[16848,17524]},{"a":17623,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17625,"t":"code","b":[138],"m":"txa","x":[17633]},{"a":17626,"t":"code","b":[153,216,204],"m":"sta","oa":52440,"o":"$CCD8,y"},{"a":17629,"t":"code","b":[232],"m":"inx"},{"a":17630,"t":"code","b":[200],"m":"iny"},{"a":17631,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17633,"t":"code","b":[208,246],"m":"bne","oa":17625,"o":"$44D9"},{"a":17635,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17637,"t":"code","b":[138],"m":"txa","x":[17645]},{"a":17638,"t":"code","b":[153,0,205],"m":"sta","oa":52480,"o":"$CD00,y"},{"a":17641,"t":"code","b":[232],"m":"inx"},{"a":17642,"t":"code","b":[200],"m":"iny"},{"a":17643,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17645,"t":"code","b":[208,246],"m":"bne","oa":17637,"o":"$44E5"},{"a":17647,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17649,"t":"code","b":[138],"m":"txa","x":[17657]},{"a":17650,"t":"code","b":[153,40,205],"m":"sta","oa":52520,"o":"$CD28,y"},{"a":17653,"t":"code","b":[232],"m":"inx"},{"a":17654,"t":"code","b":[200],"m":"iny"},{"a":17655,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17657,"t":"code","b":[208,246],"m":"bne","oa":17649,"o":"$44F1"},{"a":17659,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17661,"t":"code","b":[138],"m":"txa","x":[17669]},{"a":17662,"t":"code","b":[153,80,205],"m":"sta","oa":52560,"o":"$CD50,y"},{"a":17665,"t":"code","b":[232],"m":"inx"},{"a":17666,"t":"code","b":[200],"m":"iny"},{"a":17667,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17669,"t":"code","b":[208,246],"m":"bne","oa":17661,"o":"$44FD"},{"a":17671,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17673,"t":"code","b":[138],"m":"txa","x":[17681]},{"a":17674,"t":"code","b":[153,120,205],"m":"sta","oa":52600,"o":"$CD78,y"},{"a":17677,"t":"code","b":[232],"m":"inx"},{"a":17678,"t":"code","b":[200],"m":"iny"},{"a":17679,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17681,"t":"code","b":[208,246],"m":"bne","oa":17673,"o":"$4509"},{"a":17683,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17685,"t":"code","b":[138],"m":"txa","x":[17693]},{"a":17686,"t":"code","b":[153,160,205],"m":"sta","oa":52640,"o":"$CDA0,y"},{"a":17689,"t":"code","b":[232],"m":"inx"},{"a":17690,"t":"code","b":[200],"m":"iny"},{"a":17691,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17693,"t":"code","b":[208,246],"m":"bne","oa":17685,"o":"$4515"},{"a":17695,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17697,"t":"code","b":[138],"m":"txa","x":[17705]},{"a":17698,"t":"code","b":[153,200,205],"m":"sta","oa":52680,"o":"$CDC8,y"},{"a":17701,"t":"code","b":[232],"m":"inx"},{"a":17702,"t":"code","b":[200],"m":"iny"},{"a":17703,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17705,"t":"code","b":[208,246],"m":"bne","oa":17697,"o":"$4521"},{"a":17707,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17709,"t":"code","b":[138],"m":"txa","x":[17717]},{"a":17710,"t":"code","b":[153,240,205],"m":"sta","oa":52720,"o":"$CDF0,y"},{"a":17713,"t":"code","b":[232],"m":"inx"},{"a":17714,"t":"code","b":[200],"m":"iny"},{"a":17715,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":17717,"t":"code","b":[208,246],"m":"bne","oa":17709,"o":"$452D"},{"a":17719,"t":"code","b":[96],"m":"rts"},{"a":17720,"l":"clear_text_area","c":"Fills an 18-wide area of 12 screen rows from $CC83 (step $28) with $50, and the first 11 rows of it in colour RAM from $D883 with 9. Called by $445F.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[17508]},{"a":17722,"t":"code","b":[169,80],"m":"lda","o":"#$50","x":[17798]},{"a":17724,"t":"code","b":[153,131,204],"m":"sta","oa":52355,"o":"$CC83,y"},{"a":17727,"t":"code","b":[153,171,204],"m":"sta","oa":52395,"o":"$CCAB,y"},{"a":17730,"t":"code","b":[153,211,204],"m":"sta","oa":52435,"o":"$CCD3,y"},{"a":17733,"t":"code","b":[153,251,204],"m":"sta","oa":52475,"o":"$CCFB,y"},{"a":17736,"t":"code","b":[153,35,205],"m":"sta","oa":52515,"o":"$CD23,y"},{"a":17739,"t":"code","b":[153,75,205],"m":"sta","oa":52555,"o":"$CD4B,y"},{"a":17742,"t":"code","b":[153,115,205],"m":"sta","oa":52595,"o":"$CD73,y"},{"a":17745,"t":"code","b":[153,155,205],"m":"sta","oa":52635,"o":"$CD9B,y"},{"a":17748,"t":"code","b":[153,195,205],"m":"sta","oa":52675,"o":"$CDC3,y"},{"a":17751,"t":"code","b":[153,235,205],"m":"sta","oa":52715,"o":"$CDEB,y"},{"a":17754,"t":"code","b":[153,19,206],"m":"sta","oa":52755,"o":"$CE13,y"},{"a":17757,"t":"code","b":[153,59,206],"m":"sta","oa":52795,"o":"$CE3B,y"},{"a":17760,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":17762,"t":"code","b":[153,131,216],"m":"sta","o":"$D883,y"},{"a":17765,"t":"code","b":[153,171,216],"m":"sta","o":"$D8AB,y"},{"a":17768,"t":"code","b":[153,211,216],"m":"sta","o":"$D8D3,y"},{"a":17771,"t":"code","b":[153,251,216],"m":"sta","o":"$D8FB,y"},{"a":17774,"t":"code","b":[153,35,217],"m":"sta","o":"$D923,y"},{"a":17777,"t":"code","b":[153,75,217],"m":"sta","o":"$D94B,y"},{"a":17780,"t":"code","b":[153,115,217],"m":"sta","o":"$D973,y"},{"a":17783,"t":"code","b":[153,155,217],"m":"sta","o":"$D99B,y"},{"a":17786,"t":"code","b":[153,195,217],"m":"sta","o":"$D9C3,y"},{"a":17789,"t":"code","b":[153,235,217],"m":"sta","o":"$D9EB,y"},{"a":17792,"t":"code","b":[153,19,218],"m":"sta","o":"$DA13,y"},{"a":17795,"t":"code","b":[200],"m":"iny"},{"a":17796,"t":"code","b":[192,18],"m":"cpy","o":"#$12"},{"a":17798,"t":"code","b":[208,178],"m":"bne","oa":17722,"o":"$453A"},{"a":17800,"t":"code","b":[96],"m":"rts"},{"a":17801,"l":"swap_font_a","c":"Exchanges two blocks of $88 bytes, $54B8 with $C3B0 and $5540 with $C438, and then $50 bytes of the digit glyph table $0F09 with $C4C0. Swapping twice puts everything back. Called by the level code ($0B90, $0BA6, $2678, $26CF), by $442B, $50E3, $50FC, $59A8, $59B6, $5A6B and $5AB8.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[2960,2982,9848,9935,17451,20707,20732,22952,22966,23147,23224]},{"a":17803,"t":"code","b":[185,184,84],"m":"lda","oa":21688,"o":"font_saved_a,y","x":[17834]},{"a":17806,"t":"code","b":[72],"m":"pha"},{"a":17807,"t":"code","b":[185,176,195],"m":"lda","oa":50096,"o":"$C3B0,y"},{"a":17810,"t":"code","b":[153,184,84],"m":"sta","oa":21688,"o":"font_saved_a,y"},{"a":17813,"t":"code","b":[104],"m":"pla"},{"a":17814,"t":"code","b":[153,176,195],"m":"sta","oa":50096,"o":"$C3B0,y"},{"a":17817,"t":"code","b":[185,64,85],"m":"lda","oa":21824,"o":"$5540,y"},{"a":17820,"t":"code","b":[72],"m":"pha"},{"a":17821,"t":"code","b":[185,56,196],"m":"lda","oa":50232,"o":"$C438,y"},{"a":17824,"t":"code","b":[153,64,85],"m":"sta","oa":21824,"o":"$5540,y"},{"a":17827,"t":"code","b":[104],"m":"pla"},{"a":17828,"t":"code","b":[153,56,196],"m":"sta","oa":50232,"o":"$C438,y"},{"a":17831,"t":"code","b":[200],"m":"iny"},{"a":17832,"t":"code","b":[192,136],"m":"cpy","o":"#$88"},{"a":17834,"t":"code","b":[208,223],"m":"bne","oa":17803,"o":"$458B"},{"a":17836,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17838,"t":"code","b":[185,9,15],"m":"lda","oa":3849,"o":"digit_glyphs,y","x":[17855]},{"a":17841,"t":"code","b":[72],"m":"pha"},{"a":17842,"t":"code","b":[185,192,196],"m":"lda","oa":50368,"o":"$C4C0,y"},{"a":17845,"t":"code","b":[153,9,15],"m":"sta","oa":3849,"o":"digit_glyphs,y"},{"a":17848,"t":"code","b":[104],"m":"pla"},{"a":17849,"t":"code","b":[153,192,196],"m":"sta","oa":50368,"o":"$C4C0,y"},{"a":17852,"t":"code","b":[200],"m":"iny"},{"a":17853,"t":"code","b":[192,80],"m":"cpy","o":"#$50"},{"a":17855,"t":"code","b":[208,237],"m":"bne","oa":17838,"o":"$45AE"},{"a":17857,"t":"code","b":[96],"m":"rts"},{"a":17858,"l":"swap_font_b","c":"Exchanges 256 bytes of $55C8 with $C000 and 256 bytes of $56C8 with $C100. Called by $41CD, $424B and $4467.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[16845,16971,17511]},{"a":17860,"t":"code","b":[185,200,85],"m":"lda","oa":21960,"o":"font_saved_b,y","x":[17889]},{"a":17863,"t":"code","b":[72],"m":"pha"},{"a":17864,"t":"code","b":[185,0,192],"m":"lda","oa":49152,"o":"$C000,y"},{"a":17867,"t":"code","b":[153,200,85],"m":"sta","oa":21960,"o":"font_saved_b,y"},{"a":17870,"t":"code","b":[104],"m":"pla"},{"a":17871,"t":"code","b":[153,0,192],"m":"sta","oa":49152,"o":"$C000,y"},{"a":17874,"t":"code","b":[185,200,86],"m":"lda","oa":22216,"o":"$56C8,y"},{"a":17877,"t":"code","b":[72],"m":"pha"},{"a":17878,"t":"code","b":[185,0,193],"m":"lda","oa":49408,"o":"$C100,y"},{"a":17881,"t":"code","b":[153,200,86],"m":"sta","oa":22216,"o":"$56C8,y"},{"a":17884,"t":"code","b":[104],"m":"pla"},{"a":17885,"t":"code","b":[153,0,193],"m":"sta","oa":49408,"o":"$C100,y"},{"a":17888,"t":"code","b":[200],"m":"iny"},{"a":17889,"t":"code","b":[208,225],"m":"bne","oa":17860,"o":"$45C4"},{"a":17891,"t":"code","b":[96],"m":"rts"},{"a":17892,"l":"swap_font_c","c":"Exchanges 256 bytes of $C800 with $C000, $68 bytes of $C900 with $C100, 256 bytes of $C968 with $C600 and 256 bytes of $CA68 with $C700. Called by $442E.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[17454]},{"a":17894,"t":"code","b":[185,0,200],"m":"lda","oa":51200,"o":"$C800,y","x":[17909]},{"a":17897,"t":"code","b":[72],"m":"pha"},{"a":17898,"t":"code","b":[185,0,192],"m":"lda","oa":49152,"o":"$C000,y"},{"a":17901,"t":"code","b":[153,0,200],"m":"sta","oa":51200,"o":"$C800,y"},{"a":17904,"t":"code","b":[104],"m":"pla"},{"a":17905,"t":"code","b":[153,0,192],"m":"sta","oa":49152,"o":"$C000,y"},{"a":17908,"t":"code","b":[200],"m":"iny"},{"a":17909,"t":"code","b":[208,239],"m":"bne","oa":17894,"o":"$45E6"},{"a":17911,"t":"code","b":[185,0,201],"m":"lda","oa":51456,"o":"$C900,y","x":[17928]},{"a":17914,"t":"code","b":[72],"m":"pha"},{"a":17915,"t":"code","b":[185,0,193],"m":"lda","oa":49408,"o":"$C100,y"},{"a":17918,"t":"code","b":[153,0,201],"m":"sta","oa":51456,"o":"$C900,y"},{"a":17921,"t":"code","b":[104],"m":"pla"},{"a":17922,"t":"code","b":[153,0,193],"m":"sta","oa":49408,"o":"$C100,y"},{"a":17925,"t":"code","b":[200],"m":"iny"},{"a":17926,"t":"code","b":[192,104],"m":"cpy","o":"#$68"},{"a":17928,"t":"code","b":[208,237],"m":"bne","oa":17911,"o":"$45F7"},{"a":17930,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17932,"t":"code","b":[185,104,201],"m":"lda","oa":51560,"o":"$C968,y","x":[17961]},{"a":17935,"t":"code","b":[72],"m":"pha"},{"a":17936,"t":"code","b":[185,0,198],"m":"lda","oa":50688,"o":"$C600,y"},{"a":17939,"t":"code","b":[153,104,201],"m":"sta","oa":51560,"o":"$C968,y"},{"a":17942,"t":"code","b":[104],"m":"pla"},{"a":17943,"t":"code","b":[153,0,198],"m":"sta","oa":50688,"o":"$C600,y"},{"a":17946,"t":"code","b":[185,104,202],"m":"lda","oa":51816,"o":"$CA68,y"},{"a":17949,"t":"code","b":[72],"m":"pha"},{"a":17950,"t":"code","b":[185,0,199],"m":"lda","oa":50944,"o":"$C700,y"},{"a":17953,"t":"code","b":[153,104,202],"m":"sta","oa":51816,"o":"$CA68,y"},{"a":17956,"t":"code","b":[104],"m":"pla"},{"a":17957,"t":"code","b":[153,0,199],"m":"sta","oa":50944,"o":"$C700,y"},{"a":17960,"t":"code","b":[200],"m":"iny"},{"a":17961,"t":"code","b":[208,225],"m":"bne","oa":17932,"o":"$460C"},{"a":17963,"t":"code","b":[96],"m":"rts"},{"a":17964,"l":"draw_block_3x3","c":"Draws a block of 3 by 3 consecutive character codes starting with A at the screen address X (low) and Y (high), three rows $28 apart, by calling $4640 for the offsets 0, $28 and $50. Called twelve times by $4652.","t":"code","b":[134,219],"m":"stx","oa":219,"o":"$DB","x":[18008,18017,18026,18035,18044,18053,18062,18071,18080,18089,18098,18107]},{"a":17966,"t":"code","b":[132,220],"m":"sty","oa":220,"o":"$DC"},{"a":17968,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":17970,"t":"code","b":[32,64,70],"m":"jsr","oa":17984,"o":"draw_row_3"},{"a":17973,"t":"code","b":[160,40],"m":"ldy","o":"#$28"},{"a":17975,"t":"code","b":[32,64,70],"m":"jsr","oa":17984,"o":"draw_row_3"},{"a":17978,"t":"code","b":[160,80],"m":"ldy","o":"#$50"},{"a":17980,"t":"code","b":[32,64,70],"m":"jsr","oa":17984,"o":"draw_row_3"},{"a":17983,"t":"code","b":[96],"m":"rts"},{"a":17984,"l":"draw_row_3","c":"Writes A, A+1 and A+2 to ($DB),Y and the next two bytes and returns with A+3 in A. Called three times by $462C.","t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y","x":[17970,17975,17980]},{"a":17986,"t":"code","b":[200],"m":"iny"},{"a":17987,"t":"code","b":[24],"m":"clc"},{"a":17988,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":17990,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":17992,"t":"code","b":[200],"m":"iny"},{"a":17993,"t":"code","b":[24],"m":"clc"},{"a":17994,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":17996,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":17998,"t":"code","b":[24],"m":"clc"},{"a":17999,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":18001,"t":"code","b":[96],"m":"rts"},{"a":18002,"l":"draw_slice_blocks","c":"Draws twelve 3 by 3 character blocks with $462C: four in each of three rows, at $CC83, $CC88, $CC8D and $CC92 (first codes $00, $09, $12, $1B), at $CD23, $CD28, $CD2D and $CD32 (first codes $24, $C0, $C9, $D2) and at $CDC3, $CDC8, $CDCD and $CDD2 (first codes $DB, $E4, $ED, $F6). Called by $4431.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[17457]},{"a":18004,"t":"code","b":[162,131],"m":"ldx","o":"#$83"},{"a":18006,"t":"code","b":[160,204],"m":"ldy","o":"#$CC"},{"a":18008,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18011,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":18013,"t":"code","b":[162,136],"m":"ldx","o":"#$88"},{"a":18015,"t":"code","b":[160,204],"m":"ldy","o":"#$CC"},{"a":18017,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18020,"t":"code","b":[169,18],"m":"lda","o":"#$12"},{"a":18022,"t":"code","b":[162,141],"m":"ldx","o":"#$8D"},{"a":18024,"t":"code","b":[160,204],"m":"ldy","o":"#$CC"},{"a":18026,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18029,"t":"code","b":[169,27],"m":"lda","o":"#$1B"},{"a":18031,"t":"code","b":[162,146],"m":"ldx","o":"#$92"},{"a":18033,"t":"code","b":[160,204],"m":"ldy","o":"#$CC"},{"a":18035,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18038,"t":"code","b":[169,36],"m":"lda","o":"#$24"},{"a":18040,"t":"code","b":[162,35],"m":"ldx","o":"#$23"},{"a":18042,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18044,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18047,"t":"code","b":[169,192],"m":"lda","o":"#$C0"},{"a":18049,"t":"code","b":[162,40],"m":"ldx","o":"#$28"},{"a":18051,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18053,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18056,"t":"code","b":[169,201],"m":"lda","o":"#$C9"},{"a":18058,"t":"code","b":[162,45],"m":"ldx","o":"#$2D"},{"a":18060,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18062,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18065,"t":"code","b":[169,210],"m":"lda","o":"#$D2"},{"a":18067,"t":"code","b":[162,50],"m":"ldx","o":"#$32"},{"a":18069,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18071,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18074,"t":"code","b":[169,219],"m":"lda","o":"#$DB"},{"a":18076,"t":"code","b":[162,195],"m":"ldx","o":"#$C3"},{"a":18078,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18080,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18083,"t":"code","b":[169,228],"m":"lda","o":"#$E4"},{"a":18085,"t":"code","b":[162,200],"m":"ldx","o":"#$C8"},{"a":18087,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18089,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18092,"t":"code","b":[169,237],"m":"lda","o":"#$ED"},{"a":18094,"t":"code","b":[162,205],"m":"ldx","o":"#$CD"},{"a":18096,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18098,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18101,"t":"code","b":[169,246],"m":"lda","o":"#$F6"},{"a":18103,"t":"code","b":[162,210],"m":"ldx","o":"#$D2"},{"a":18105,"t":"code","b":[160,205],"m":"ldy","o":"#$CD"},{"a":18107,"t":"code","b":[32,44,70],"m":"jsr","oa":17964,"o":"draw_block_3x3"},{"a":18110,"t":"code","b":[96],"m":"rts"},{"a":18111,"l":"fire_held","c":"1 while fire is held after a capture; $46C5 clears it when fire is released.","t":"byte","b":[0],"x":[18139,18153,18176]},{"a":18112,"l":"flash_count","c":"Frames left of the capture flash: set to 4 by $46C5, counted down by the raster interrupt $5242 which uses colours 1/1 for $D022/$D023 while it is non-zero; cleared by $46C5 at the end.","t":"byte","b":[0],"x":[18181,18263,21097,21103]},{"a":18113,"l":"slice_number","c":"Number of captures made so far, 0 to 12: index into the tables $4865, $489E and $48AB. Cleared by $4F9C and incremented by $46C5.","t":"byte","b":[0],"x":[18189,18245,18249,18271,20548]},{"a":18114,"l":"capture_mark","c":"Set to $11 by $46C5 on a capture and to 0 by $4F9C. No reader in the dumped code.","t":"byte","b":[0],"x":[18186,20530]},{"a":18115,"l":"pad_46c3","c":"1 zero byte after capture_mark: padding. No traced code reads them.","t":"byte","b":[0]},{"a":18116,"l":"capture_delay","c":"Countdown set to $0D by $46C5 after a capture; at 1 it triggers $B828 and $B0C8.","t":"byte","b":[0],"x":[18117,18132,18136,18171]},{"a":18117,"l":"fire_capture","c":"Handles the fire button for the mask game, called by the raster interrupt $5242 while $0F5A is zero. It counts $46C4 down (at 1 it calls $B828 and $B0C8) and holds $46BF until fire ($0EA6 bit 4) is released. On a new press it plays sound $18 with $B0EE, sets $46C4=$0D, $46BF=1, $46C0=4 and $46C2=$11, picks the destination from the table $4865 by 2 times the slice number $46C1 and copies the glyphs of the 3 by 3 characters at ($0E) with $4817 into it. It then runs $475F and adds 1 to $46C1; at 12 it sets $0F5A to 1, clears $46C0 and runs $4880.","t":"code","b":[174,196,70],"m":"ldx","oa":18116,"o":"capture_delay","x":[21153]},{"a":18120,"t":"code","b":[240,17],"m":"beq","oa":18139,"o":"$46DB"},{"a":18122,"t":"code","b":[224,1],"m":"cpx","o":"#$01"},{"a":18124,"t":"code","b":[208,9],"m":"bne","oa":18135,"o":"$46D7"},{"a":18126,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all"},{"a":18129,"t":"code","b":[32,200,176],"m":"jsr","oa":45256,"o":"music_init"},{"a":18132,"t":"code","b":[174,196,70],"m":"ldx","oa":18116,"o":"capture_delay"},{"a":18135,"t":"code","b":[202],"m":"dex","x":[18124]},{"a":18136,"t":"code","b":[142,196,70],"m":"stx","oa":18116,"o":"capture_delay"},{"a":18139,"t":"code","b":[173,191,70],"m":"lda","oa":18111,"o":"fire_held","x":[18120]},{"a":18142,"t":"code","b":[240,13],"m":"beq","oa":18157,"o":"$46ED"},{"a":18144,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port"},{"a":18147,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":18149,"t":"code","b":[240,5],"m":"beq","oa":18156,"o":"$46EC"},{"a":18151,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18153,"t":"code","b":[141,191,70],"m":"sta","oa":18111,"o":"fire_held"},{"a":18156,"t":"code","b":[96],"m":"rts","x":[18149,18162]},{"a":18157,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[18142]},{"a":18160,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":18162,"t":"code","b":[208,248],"m":"bne","oa":18156,"o":"$46EC"},{"a":18164,"t":"code","b":[162,24],"m":"ldx","o":"#$18"},{"a":18166,"t":"code","b":[32,238,176],"m":"jsr","oa":45294,"o":"play_sound"},{"a":18169,"t":"code","b":[169,13],"m":"lda","o":"#$0D"},{"a":18171,"t":"code","b":[141,196,70],"m":"sta","oa":18116,"o":"capture_delay"},{"a":18174,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18176,"t":"code","b":[141,191,70],"m":"sta","oa":18111,"o":"fire_held"},{"a":18179,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":18181,"t":"code","b":[141,192,70],"m":"sta","oa":18112,"o":"flash_count"},{"a":18184,"t":"code","b":[169,17],"m":"lda","o":"#$11"},{"a":18186,"t":"code","b":[141,194,70],"m":"sta","oa":18114,"o":"capture_mark"},{"a":18189,"t":"code","b":[173,193,70],"m":"lda","oa":18113,"o":"slice_number"},{"a":18192,"t":"code","b":[10],"m":"asl","o":"a"},{"a":18193,"t":"code","b":[168],"m":"tay"},{"a":18194,"t":"code","b":[185,101,72],"m":"lda","oa":18533,"o":"glyph_dest_table,y"},{"a":18197,"t":"code","b":[141,16,0],"m":"sta","oa":16,"o":"$0010"},{"a":18200,"t":"code","b":[185,102,72],"m":"lda","oa":18534,"o":"$4866,y"},{"a":18203,"t":"code","b":[141,17,0],"m":"sta","oa":17,"o":"$0011"},{"a":18206,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":18208,"t":"code","b":[177,14],"m":"lda","oa":14,"o":"($0E),y","x":[18216]},{"a":18210,"t":"code","b":[32,23,72],"m":"jsr","oa":18455,"o":"copy_glyph"},{"a":18213,"t":"code","b":[200],"m":"iny"},{"a":18214,"t":"code","b":[192,3],"m":"cpy","o":"#$03"},{"a":18216,"t":"code","b":[208,246],"m":"bne","oa":18208,"o":"$4720"},{"a":18218,"t":"code","b":[160,40],"m":"ldy","o":"#$28"},{"a":18220,"t":"code","b":[177,14],"m":"lda","oa":14,"o":"($0E),y","x":[18228]},{"a":18222,"t":"code","b":[32,23,72],"m":"jsr","oa":18455,"o":"copy_glyph"},{"a":18225,"t":"code","b":[200],"m":"iny"},{"a":18226,"t":"code","b":[192,43],"m":"cpy","o":"#$2B"},{"a":18228,"t":"code","b":[208,246],"m":"bne","oa":18220,"o":"$472C"},{"a":18230,"t":"code","b":[160,80],"m":"ldy","o":"#$50"},{"a":18232,"t":"code","b":[177,14],"m":"lda","oa":14,"o":"($0E),y","x":[18240]},{"a":18234,"t":"code","b":[32,23,72],"m":"jsr","oa":18455,"o":"copy_glyph"},{"a":18237,"t":"code","b":[200],"m":"iny"},{"a":18238,"t":"code","b":[192,83],"m":"cpy","o":"#$53"},{"a":18240,"t":"code","b":[208,246],"m":"bne","oa":18232,"o":"$4738"},{"a":18242,"t":"code","b":[32,95,71],"m":"jsr","oa":18271,"o":"match_check"},{"a":18245,"t":"code","b":[174,193,70],"m":"ldx","oa":18113,"o":"slice_number"},{"a":18248,"t":"code","b":[232],"m":"inx"},{"a":18249,"t":"code","b":[142,193,70],"m":"stx","oa":18113,"o":"slice_number"},{"a":18252,"t":"code","b":[224,12],"m":"cpx","o":"#$0C"},{"a":18254,"t":"code","b":[208,13],"m":"bne","oa":18269,"o":"$475D"},{"a":18256,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18258,"t":"code","b":[141,90,15],"m":"sta","oa":3930,"o":"mask_end_flag"},{"a":18261,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18263,"t":"code","b":[141,192,70],"m":"sta","oa":18112,"o":"flash_count"},{"a":18266,"t":"code","b":[32,128,72],"m":"jsr","oa":18560,"o":"cursor_home"},{"a":18269,"t":"code","b":[96],"m":"rts","x":[18254]},{"a":18270,"l":"slice_type","c":"Type stored by $475F into $48AB for the slice: set to 2 by $4B47; the object code at $4BE2 toggles it between 0 and 1 and sets it to 2.","t":"byte","b":[0],"x":[18279,19298,19470,19620,19953]},{"a":18271,"l":"match_check","c":"Judges the capture. For the slice number $46C1 it clears the match flag at $489E, stores $475E in $48AB and loads $4BB8. Then, by the cursor Y $487D, it calls $478B for $61, $47DC for $B1 and $47F9 for $A1 (any other Y gives no match).","t":"code","b":[174,193,70],"m":"ldx","oa":18113,"o":"slice_number","x":[18242]},{"a":18274,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18276,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18279,"t":"code","b":[173,94,71],"m":"lda","oa":18270,"o":"slice_type"},{"a":18282,"t":"code","b":[157,171,72],"m":"sta","oa":18603,"o":"slice_types,x"},{"a":18285,"t":"code","b":[172,184,75],"m":"ldy","oa":19384,"o":"target_object"},{"a":18288,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":18291,"t":"code","b":[201,97],"m":"cmp","o":"#$61"},{"a":18293,"t":"code","b":[208,4],"m":"bne","oa":18299,"o":"$477B"},{"a":18295,"t":"code","b":[32,139,71],"m":"jsr","oa":18315,"o":"match_row_61"},{"a":18298,"t":"code","b":[96],"m":"rts"},{"a":18299,"t":"code","b":[201,177],"m":"cmp","o":"#$B1","x":[18293]},{"a":18301,"t":"code","b":[208,4],"m":"bne","oa":18307,"o":"$4783"},{"a":18303,"t":"code","b":[32,220,71],"m":"jsr","oa":18396,"o":"match_row_b1"},{"a":18306,"t":"code","b":[96],"m":"rts"},{"a":18307,"t":"code","b":[201,161],"m":"cmp","o":"#$A1","x":[18301]},{"a":18309,"t":"code","b":[208,3],"m":"bne","oa":18314,"o":"$478A"},{"a":18311,"t":"code","b":[32,249,71],"m":"jsr","oa":18425,"o":"match_row_a1"},{"a":18314,"t":"code","b":[96],"m":"rts","x":[18309]},{"a":18315,"l":"match_row_61","c":"Match test for cursor Y $61, called by $475F. By the cursor X $487E it sets $4816 and tests: $61 gives 0 and needs $4BB8=0 and $4ABA below 5; $A1 gives 1 with $4BB8=1 and $4ABB below 5; $E1 gives 2 with $4BB8=2 and $4ABC below 5. When all hold it sets the match flag $489E plus X to 1.","t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x","x":[18295]},{"a":18318,"t":"code","b":[201,97],"m":"cmp","o":"#$61"},{"a":18320,"t":"code","b":[208,22],"m":"bne","oa":18344,"o":"$47A8"},{"a":18322,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18324,"t":"code","b":[141,22,72],"m":"sta","oa":18454,"o":"cursor_column"},{"a":18327,"t":"code","b":[192,0],"m":"cpy","o":"#$00"},{"a":18329,"t":"code","b":[208,12],"m":"bne","oa":18343,"o":"$47A7"},{"a":18331,"t":"code","b":[173,186,74],"m":"lda","oa":19130,"o":"mask_obj_counter"},{"a":18334,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":18336,"t":"code","b":[176,5],"m":"bcs","oa":18343,"o":"$47A7"},{"a":18338,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18340,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18343,"t":"code","b":[96],"m":"rts","x":[18329,18336,18355,18362,18381,18388]},{"a":18344,"t":"code","b":[201,161],"m":"cmp","o":"#$A1","x":[18320]},{"a":18346,"t":"code","b":[208,22],"m":"bne","oa":18370,"o":"$47C2"},{"a":18348,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18350,"t":"code","b":[141,22,72],"m":"sta","oa":18454,"o":"cursor_column"},{"a":18353,"t":"code","b":[192,1],"m":"cpy","o":"#$01"},{"a":18355,"t":"code","b":[208,242],"m":"bne","oa":18343,"o":"$47A7"},{"a":18357,"t":"code","b":[173,187,74],"m":"lda","oa":19131,"o":"$4ABB"},{"a":18360,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":18362,"t":"code","b":[176,235],"m":"bcs","oa":18343,"o":"$47A7"},{"a":18364,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18366,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18369,"t":"code","b":[96],"m":"rts"},{"a":18370,"t":"code","b":[201,225],"m":"cmp","o":"#$E1","x":[18346]},{"a":18372,"t":"code","b":[208,21],"m":"bne","oa":18395,"o":"$47DB"},{"a":18374,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":18376,"t":"code","b":[141,22,72],"m":"sta","oa":18454,"o":"cursor_column"},{"a":18379,"t":"code","b":[192,2],"m":"cpy","o":"#$02"},{"a":18381,"t":"code","b":[208,216],"m":"bne","oa":18343,"o":"$47A7"},{"a":18383,"t":"code","b":[173,188,74],"m":"lda","oa":19132,"o":"$4ABC"},{"a":18386,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":18388,"t":"code","b":[176,209],"m":"bcs","oa":18343,"o":"$47A7"},{"a":18390,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18392,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18395,"t":"code","b":[96],"m":"rts","x":[18372]},{"a":18396,"l":"match_row_b1","c":"Match test for cursor Y $B1, called by $475F: when the cursor X $487E is $79 it sets $4816 to 3 and, if $4BB8 is 3 and $4ABD is below 5, sets the match flag $489E plus X to 1.","t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x","x":[18303]},{"a":18399,"t":"code","b":[201,121],"m":"cmp","o":"#$79"},{"a":18401,"t":"code","b":[208,21],"m":"bne","oa":18424,"o":"$47F8"},{"a":18403,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":18405,"t":"code","b":[141,22,72],"m":"sta","oa":18454,"o":"cursor_column"},{"a":18408,"t":"code","b":[192,3],"m":"cpy","o":"#$03"},{"a":18410,"t":"code","b":[208,12],"m":"bne","oa":18424,"o":"$47F8"},{"a":18412,"t":"code","b":[173,189,74],"m":"lda","oa":19133,"o":"$4ABD"},{"a":18415,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":18417,"t":"code","b":[176,5],"m":"bcs","oa":18424,"o":"$47F8"},{"a":18419,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18421,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18424,"t":"code","b":[96],"m":"rts","x":[18401,18410,18417]},{"a":18425,"l":"match_row_a1","c":"Match test for cursor Y $A1, called by $475F: when the cursor X $487E is $C1 it sets $4816 to 4 and, if $4BB8 is 4 and $4ABE is below 5, sets the match flag $489E plus X to 1.","t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x","x":[18311]},{"a":18428,"t":"code","b":[201,193],"m":"cmp","o":"#$C1"},{"a":18430,"t":"code","b":[208,21],"m":"bne","oa":18453,"o":"$4815"},{"a":18432,"t":"code","b":[169,4],"m":"lda","o":"#$04"},{"a":18434,"t":"code","b":[141,22,72],"m":"sta","oa":18454,"o":"cursor_column"},{"a":18437,"t":"code","b":[192,4],"m":"cpy","o":"#$04"},{"a":18439,"t":"code","b":[208,12],"m":"bne","oa":18453,"o":"$4815"},{"a":18441,"t":"code","b":[173,190,74],"m":"lda","oa":19134,"o":"$4ABE"},{"a":18444,"t":"code","b":[201,5],"m":"cmp","o":"#$05"},{"a":18446,"t":"code","b":[176,5],"m":"bcs","oa":18453,"o":"$4815"},{"a":18448,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18450,"t":"code","b":[157,158,72],"m":"sta","oa":18590,"o":"match_flags,x"},{"a":18453,"t":"code","b":[96],"m":"rts","x":[18430,18439,18446]},{"a":18454,"l":"cursor_column","c":"Position code 0 to 4 set by the match tests $478B, $47DC and $47F9 and compared in $4B47.","t":"byte","b":[0],"x":[18324,18350,18376,18405,18434,19356,19363]},{"a":18455,"l":"copy_glyph","c":"Copies the 8 bytes of character A (from $C000 plus 8 times A, built in $4863/$4864 and $12/$13) to ($10) and adds 8 to $10/$11. Y is kept. Called by $46C5, three times in each of three rows.","t":"code","b":[141,99,72],"m":"sta","oa":18531,"o":"glyph_offset","x":[18210,18222,18234]},{"a":18458,"t":"code","b":[152],"m":"tya"},{"a":18459,"t":"code","b":[72],"m":"pha"},{"a":18460,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18462,"t":"code","b":[141,100,72],"m":"sta","oa":18532,"o":"$4864"},{"a":18465,"t":"code","b":[173,99,72],"m":"lda","oa":18531,"o":"glyph_offset"},{"a":18468,"t":"code","b":[10],"m":"asl","o":"a"},{"a":18469,"t":"code","b":[46,100,72],"m":"rol","oa":18532,"o":"$4864"},{"a":18472,"t":"code","b":[10],"m":"asl","o":"a"},{"a":18473,"t":"code","b":[46,100,72],"m":"rol","oa":18532,"o":"$4864"},{"a":18476,"t":"code","b":[10],"m":"asl","o":"a"},{"a":18477,"t":"code","b":[46,100,72],"m":"rol","oa":18532,"o":"$4864"},{"a":18480,"t":"code","b":[141,99,72],"m":"sta","oa":18531,"o":"glyph_offset"},{"a":18483,"t":"code","b":[24],"m":"clc"},{"a":18484,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18486,"t":"code","b":[109,99,72],"m":"adc","oa":18531,"o":"glyph_offset"},{"a":18489,"t":"code","b":[141,18,0],"m":"sta","oa":18,"o":"$0012"},{"a":18492,"t":"code","b":[169,192],"m":"lda","o":"#$C0"},{"a":18494,"t":"code","b":[109,100,72],"m":"adc","oa":18532,"o":"$4864"},{"a":18497,"t":"code","b":[141,19,0],"m":"sta","oa":19,"o":"$0013"},{"a":18500,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":18502,"t":"code","b":[177,18],"m":"lda","oa":18,"o":"($12),y","x":[18509]},{"a":18504,"t":"code","b":[145,16],"m":"sta","oa":16,"o":"($10),y"},{"a":18506,"t":"code","b":[200],"m":"iny"},{"a":18507,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":18509,"t":"code","b":[208,247],"m":"bne","oa":18502,"o":"$4846"},{"a":18511,"t":"code","b":[24],"m":"clc"},{"a":18512,"t":"code","b":[173,16,0],"m":"lda","oa":16,"o":"$0010"},{"a":18515,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":18517,"t":"code","b":[141,16,0],"m":"sta","oa":16,"o":"$0010"},{"a":18520,"t":"code","b":[173,17,0],"m":"lda","oa":17,"o":"$0011"},{"a":18523,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":18525,"t":"code","b":[141,17,0],"m":"sta","oa":17,"o":"$0011"},{"a":18528,"t":"code","b":[104],"m":"pla"},{"a":18529,"t":"code","b":[168],"m":"tay"},{"a":18530,"t":"code","b":[96],"m":"rts"},{"a":18531,"l":"glyph_offset","c":"Scratch of $4817: the character code times 8, low byte then high byte.","t":"byte","b":[0,0],"x":[18455,18465,18480,18486]},{"a":18533,"l":"glyph_dest_table","c":"Twelve addresses, low byte first: $C800 plus 72 for each slice ($C800, $C848, $C890 ... $CB18). $46C5 uses the entry for the slice number as the destination of the captured glyphs.","t":"byte","b":[0,200,72,200,144,200,216,200],"x":[18194]},{"a":18541,"t":"byte","b":[32,201,104,201,176,201,248,201]},{"a":18549,"t":"byte","b":[64,202,136,202,208,202,24,203]},{"a":18557,"l":"cursor_y","c":"Cursor sprite Y. Set by $4F9C ($71), moved by $49E9 (joystick), $48BA (scan) and $4880 ($49); written to $D001; $475F tests it for $61, $B1 and $A1.","t":"byte","b":[0],"x":[18288,18567,18695,18830,18835,18865,18940,18949,18976,18985,19081,20443]},{"a":18558,"l":"cursor_x","c":"Cursor sprite X. Set by $4F9C ($B1), moved by $49E9, $48BA and $4880 ($70); written to $D000; tested by the match routines.","t":"byte","b":[0],"x":[18315,18396,18425,18562,18814,18819,18846,18851,18859,19009,19018,19045,19054,19075,20438]},{"a":18559,"t":"gap","n":1},{"a":18560,"l":"cursor_home","c":"Places the cursor: sets X $487E to $70 and Y $487D to $49. Called by $46C5 and $535D.","t":"code","b":[169,112],"m":"lda","o":"#$70","x":[18266,21361]},{"a":18562,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":18565,"t":"code","b":[169,73],"m":"lda","o":"#$49"},{"a":18567,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":18570,"t":"code","b":[96],"m":"rts"},{"a":18571,"l":"scan_path","c":"Path of the scan cursor, read by $48BA: 0 moves X by +2, 1 moves Y by +2, 2 moves X by -2, bit 7 set ($FF) ends it. The bytes are 0,0,0,1,2,2,2,1,0,0,0,3,$FF.","t":"byte","b":[0,0,0,1,2,2,2,1],"x":[18778,18788,18808]},{"a":18579,"t":"byte","b":[0,0,0,3,255]},{"a":18584,"l":"scan_durations","c":"Frames for each path value 0, 1, 2: $14, $10 and $14. The value 3 in the path reads $489B instead.","t":"byte","b":[20,16,20],"x":[18782]},{"a":18587,"l":"scan_index","c":"Index into the path $488B; cleared by $4F9C.","t":"byte","b":[0],"x":[18716,18754,18771,18775,18805,20545]},{"a":18588,"l":"scan_timer","c":"Frames left in the current scan step.","t":"byte","b":[0],"x":[18711,18746,18749,18785,18802,20479]},{"a":18589,"l":"scan_done","c":"Set to 1 by $48BA when the path ends; $437D waits for it. Cleared by $4F9C.","t":"byte","b":[0],"x":[17326,18688,18795,20542]},{"a":18590,"l":"match_flags","c":"One flag for each slice (13 cleared by $4F9C): 1 when $475F judged the capture a match. $48BA reverses the entries 4 to 7; $437D reads entries 0 to 11.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[17344,18276,18340,18366,18392,18421,18450,18726,18758,20496]},{"a":18598,"t":"byte","b":[0,0,0,0,0]},{"a":18603,"l":"slice_types","c":"One byte for each slice (13 cleared by $4F9C): the value of $475E when it was captured. $437D tests 2 and 1; $48BA reverses the entries 4 to 7.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[17349,18282,20499]},{"a":18611,"t":"byte","b":[0,0,0,0,0]},{"a":18616,"l":"scan_started","c":"Set to 1 by $48BA at its first step; cleared by $4F9C.","t":"byte","b":[0],"x":[18706,18723,20527]},{"a":18617,"l":"scan_reversed","c":"Set to 1 by $48BA once it has reversed the entries 4 to 7; cleared by $4F9C.","t":"byte","b":[0],"x":[18618,18625,20524]},{"a":18618,"l":"scan_cursor","c":"Moves the cursor along the scan path once the game is over, called by the raster interrupt $51DB while $0F5A is set. The first time it reverses the entries $48A2-$48A5 and $48AF-$48B2. Once $489D is set it moves the cursor Y to 0. While the blink count $49D7 runs it only updates the sprite. Otherwise it steps through the path $488B (0 moves X by +2, 1 moves Y by +2, 2 moves X by -2; a value with bit 7 set ends it and sets $489D), using the durations $4898 in $489C and the index $489B. When it reaches a step whose match flag in $489E is set it plays $49D9 and sets $49D7 to $0A. It writes the sprite 0 position ($D000, $D001, pointer $CFF8=$DA, colour $D027), and while $49D7 runs it counts it down and toggles $49D6 as the colour.","t":"code","b":[173,185,72],"m":"lda","oa":18617,"o":"scan_reversed","x":[21048]},{"a":18621,"t":"code","b":[208,65],"m":"bne","oa":18688,"o":"$4900"},{"a":18623,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18625,"t":"code","b":[141,185,72],"m":"sta","oa":18617,"o":"scan_reversed"},{"a":18628,"t":"code","b":[173,162,72],"m":"lda","oa":18594,"o":"$48A2"},{"a":18631,"t":"code","b":[72],"m":"pha"},{"a":18632,"t":"code","b":[173,163,72],"m":"lda","oa":18595,"o":"$48A3"},{"a":18635,"t":"code","b":[72],"m":"pha"},{"a":18636,"t":"code","b":[173,164,72],"m":"lda","oa":18596,"o":"$48A4"},{"a":18639,"t":"code","b":[72],"m":"pha"},{"a":18640,"t":"code","b":[173,165,72],"m":"lda","oa":18597,"o":"$48A5"},{"a":18643,"t":"code","b":[141,162,72],"m":"sta","oa":18594,"o":"$48A2"},{"a":18646,"t":"code","b":[104],"m":"pla"},{"a":18647,"t":"code","b":[141,163,72],"m":"sta","oa":18595,"o":"$48A3"},{"a":18650,"t":"code","b":[104],"m":"pla"},{"a":18651,"t":"code","b":[141,164,72],"m":"sta","oa":18596,"o":"$48A4"},{"a":18654,"t":"code","b":[104],"m":"pla"},{"a":18655,"t":"code","b":[141,165,72],"m":"sta","oa":18597,"o":"$48A5"},{"a":18658,"t":"code","b":[173,175,72],"m":"lda","oa":18607,"o":"$48AF"},{"a":18661,"t":"code","b":[72],"m":"pha"},{"a":18662,"t":"code","b":[173,176,72],"m":"lda","oa":18608,"o":"$48B0"},{"a":18665,"t":"code","b":[72],"m":"pha"},{"a":18666,"t":"code","b":[173,177,72],"m":"lda","oa":18609,"o":"$48B1"},{"a":18669,"t":"code","b":[72],"m":"pha"},{"a":18670,"t":"code","b":[173,178,72],"m":"lda","oa":18610,"o":"$48B2"},{"a":18673,"t":"code","b":[141,175,72],"m":"sta","oa":18607,"o":"$48AF"},{"a":18676,"t":"code","b":[104],"m":"pla"},{"a":18677,"t":"code","b":[141,176,72],"m":"sta","oa":18608,"o":"$48B0"},{"a":18680,"t":"code","b":[104],"m":"pla"},{"a":18681,"t":"code","b":[141,177,72],"m":"sta","oa":18609,"o":"$48B1"},{"a":18684,"t":"code","b":[104],"m":"pla"},{"a":18685,"t":"code","b":[141,178,72],"m":"sta","oa":18610,"o":"$48B2"},{"a":18688,"t":"code","b":[173,157,72],"m":"lda","oa":18589,"o":"scan_done","x":[18621]},{"a":18691,"t":"code","b":[240,8],"m":"beq","oa":18701,"o":"$490D"},{"a":18693,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":18695,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":18698,"t":"code","b":[76,166,73],"m":"jmp","oa":18854,"o":"$49A6","x":[18704]},{"a":18701,"t":"code","b":[173,215,73],"m":"lda","oa":18903,"o":"blink_count","x":[18691]},{"a":18704,"t":"code","b":[208,248],"m":"bne","oa":18698,"o":"$490A"},{"a":18706,"t":"code","b":[173,184,72],"m":"lda","oa":18616,"o":"scan_started"},{"a":18709,"t":"code","b":[208,38],"m":"bne","oa":18749,"o":"$493D"},{"a":18711,"t":"code","b":[173,156,72],"m":"lda","oa":18588,"o":"scan_timer"},{"a":18714,"t":"code","b":[208,33],"m":"bne","oa":18749,"o":"$493D"},{"a":18716,"t":"code","b":[174,155,72],"m":"ldx","oa":18587,"o":"scan_index"},{"a":18719,"t":"code","b":[208,28],"m":"bne","oa":18749,"o":"$493D"},{"a":18721,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18723,"t":"code","b":[141,184,72],"m":"sta","oa":18616,"o":"scan_started"},{"a":18726,"t":"code","b":[189,158,72],"m":"lda","oa":18590,"o":"match_flags,x"},{"a":18729,"t":"code","b":[240,13],"m":"beq","oa":18744,"o":"$4938"},{"a":18731,"t":"code","b":[32,217,73],"m":"jsr","oa":18905,"o":"sound_1c"},{"a":18734,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":18736,"t":"code","b":[141,215,73],"m":"sta","oa":18903,"o":"blink_count"},{"a":18739,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":18741,"t":"code","b":[76,90,73],"m":"jmp","oa":18778,"o":"$495A"},{"a":18744,"t":"code","b":[169,20],"m":"lda","o":"#$14","x":[18729]},{"a":18746,"t":"code","b":[141,156,72],"m":"sta","oa":18588,"o":"scan_timer"},{"a":18749,"t":"code","b":[174,156,72],"m":"ldx","oa":18588,"o":"scan_timer","x":[18709,18714,18719]},{"a":18752,"t":"code","b":[208,47],"m":"bne","oa":18801,"o":"$4971"},{"a":18754,"t":"code","b":[174,155,72],"m":"ldx","oa":18587,"o":"scan_index"},{"a":18757,"t":"code","b":[232],"m":"inx"},{"a":18758,"t":"code","b":[189,158,72],"m":"lda","oa":18590,"o":"match_flags,x"},{"a":18761,"t":"code","b":[240,8],"m":"beq","oa":18771,"o":"$4953"},{"a":18763,"t":"code","b":[32,217,73],"m":"jsr","oa":18905,"o":"sound_1c"},{"a":18766,"t":"code","b":[169,10],"m":"lda","o":"#$0A"},{"a":18768,"t":"code","b":[141,215,73],"m":"sta","oa":18903,"o":"blink_count"},{"a":18771,"t":"code","b":[174,155,72],"m":"ldx","oa":18587,"o":"scan_index","x":[18761]},{"a":18774,"t":"code","b":[232],"m":"inx"},{"a":18775,"t":"code","b":[142,155,72],"m":"stx","oa":18587,"o":"scan_index"},{"a":18778,"t":"code","b":[189,139,72],"m":"lda","oa":18571,"o":"scan_path,x","x":[18741]},{"a":18781,"t":"code","b":[168],"m":"tay"},{"a":18782,"t":"code","b":[185,152,72],"m":"lda","oa":18584,"o":"scan_durations,y"},{"a":18785,"t":"code","b":[141,156,72],"m":"sta","oa":18588,"o":"scan_timer"},{"a":18788,"t":"code","b":[189,139,72],"m":"lda","oa":18571,"o":"scan_path,x"},{"a":18791,"t":"code","b":[16,61],"m":"bpl","oa":18854,"o":"$49A6"},{"a":18793,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18795,"t":"code","b":[141,157,72],"m":"sta","oa":18589,"o":"scan_done"},{"a":18798,"t":"code","b":[76,166,73],"m":"jmp","oa":18854,"o":"$49A6"},{"a":18801,"t":"code","b":[202],"m":"dex","x":[18752]},{"a":18802,"t":"code","b":[142,156,72],"m":"stx","oa":18588,"o":"scan_timer"},{"a":18805,"t":"code","b":[174,155,72],"m":"ldx","oa":18587,"o":"scan_index"},{"a":18808,"t":"code","b":[189,139,72],"m":"lda","oa":18571,"o":"scan_path,x"},{"a":18811,"t":"code","b":[208,12],"m":"bne","oa":18825,"o":"$4989"},{"a":18813,"t":"code","b":[24],"m":"clc"},{"a":18814,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":18817,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":18819,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":18822,"t":"code","b":[76,166,73],"m":"jmp","oa":18854,"o":"$49A6"},{"a":18825,"t":"code","b":[201,1],"m":"cmp","o":"#$01","x":[18811]},{"a":18827,"t":"code","b":[208,12],"m":"bne","oa":18841,"o":"$4999"},{"a":18829,"t":"code","b":[24],"m":"clc"},{"a":18830,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":18833,"t":"code","b":[105,2],"m":"adc","o":"#$02"},{"a":18835,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":18838,"t":"code","b":[76,166,73],"m":"jmp","oa":18854,"o":"$49A6"},{"a":18841,"t":"code","b":[201,2],"m":"cmp","o":"#$02","x":[18827]},{"a":18843,"t":"code","b":[208,9],"m":"bne","oa":18854,"o":"$49A6"},{"a":18845,"t":"code","b":[56],"m":"sec"},{"a":18846,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":18849,"t":"code","b":[233,2],"m":"sbc","o":"#$02"},{"a":18851,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":18854,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[18698,18791,18798,18822,18838,18843]},{"a":18856,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":18859,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":18862,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":18865,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":18868,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":18871,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":18873,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":18876,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":18878,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":18881,"t":"code","b":[174,215,73],"m":"ldx","oa":18903,"o":"blink_count"},{"a":18884,"t":"code","b":[240,15],"m":"beq","oa":18901,"o":"$49D5"},{"a":18886,"t":"code","b":[202],"m":"dex"},{"a":18887,"t":"code","b":[142,215,73],"m":"stx","oa":18903,"o":"blink_count"},{"a":18890,"t":"code","b":[173,214,73],"m":"lda","oa":18902,"o":"blink_colour"},{"a":18893,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":18895,"t":"code","b":[141,214,73],"m":"sta","oa":18902,"o":"blink_colour"},{"a":18898,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":18901,"t":"code","b":[96],"m":"rts","x":[18884]},{"a":18902,"l":"blink_colour","c":"Colour 0 or 1 of the cursor sprite while it blinks, toggled by $48BA and written to $D027.","t":"byte","b":[0],"x":[18890,18895]},{"a":18903,"l":"blink_count","c":"Frames left of the cursor blink; set to $0A by $48BA after the sound $49D9; cleared by $4F9C.","t":"byte","b":[0],"x":[18701,18736,18768,18881,18887,20533]},{"a":18904,"l":"cursor_phase","c":"Toggled on each call of $49E9, which only moves the cursor when it becomes 0.","t":"byte","b":[0],"x":[18921,18926]},{"a":18905,"l":"sound_1c","c":"Plays sound effect $1C with $B0EE and keeps X and Y: it stores them in the operands of the LDY #$00 and LDX #$00 at $49E4 and $49E6, which it then runs. Called by $48BA twice.","t":"code","b":[142,231,73],"m":"stx","oa":18919,"o":"$49E7","x":[18731,18763]},{"a":18908,"t":"code","b":[140,229,73],"m":"sty","oa":18917,"o":"$49E5"},{"a":18911,"t":"code","b":[162,28],"m":"ldx","o":"#$1C"},{"a":18913,"t":"code","b":[32,238,176],"m":"jsr","oa":45294,"o":"play_sound"},{"a":18916,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":18918,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":18920,"t":"code","b":[96],"m":"rts"},{"a":18921,"l":"cursor_move","c":"Moves the cursor with the joystick copy $0EA6, called by the raster interrupt $51DB while $0F5A is zero. It toggles $49D8 and acts only when that gives 0. Up (bit 0) takes 8 off the Y $487D down to $3C and $28 off the pointer $0E/$0F; down (bit 1) adds 8 up to $B4 and $28; left (bit 2) takes 8 off the X $487E down to $46 and 1 off the pointer; right (bit 3) adds 8 up to $F6 and 1. It then writes X and Y to $D000/$D001 (with $D010=0), sets the pointer $CFF8=$DA and the colour $D027=1.","t":"code","b":[173,216,73],"m":"lda","oa":18904,"o":"cursor_phase","x":[21039]},{"a":18924,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":18926,"t":"code","b":[141,216,73],"m":"sta","oa":18904,"o":"cursor_phase"},{"a":18929,"t":"code","b":[240,1],"m":"beq","oa":18932,"o":"$49F4"},{"a":18931,"t":"code","b":[96],"m":"rts"},{"a":18932,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[18929]},{"a":18935,"t":"code","b":[41,1],"m":"and","o":"#$01"},{"a":18937,"t":"code","b":[208,29],"m":"bne","oa":18968,"o":"$4A18"},{"a":18939,"t":"code","b":[56],"m":"sec"},{"a":18940,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":18943,"t":"code","b":[233,8],"m":"sbc","o":"#$08"},{"a":18945,"t":"code","b":[201,60],"m":"cmp","o":"#$3C"},{"a":18947,"t":"code","b":[144,52],"m":"bcc","oa":19001,"o":"$4A39"},{"a":18949,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":18952,"t":"code","b":[56],"m":"sec"},{"a":18953,"t":"code","b":[165,14],"m":"lda","oa":14,"o":"$0E"},{"a":18955,"t":"code","b":[233,40],"m":"sbc","o":"#$28"},{"a":18957,"t":"code","b":[133,14],"m":"sta","oa":14,"o":"$0E"},{"a":18959,"t":"code","b":[165,15],"m":"lda","oa":15,"o":"$0F"},{"a":18961,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":18963,"t":"code","b":[133,15],"m":"sta","oa":15,"o":"$0F"},{"a":18965,"t":"code","b":[76,57,74],"m":"jmp","oa":19001,"o":"$4A39"},{"a":18968,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[18937]},{"a":18971,"t":"code","b":[41,2],"m":"and","o":"#$02"},{"a":18973,"t":"code","b":[208,26],"m":"bne","oa":19001,"o":"$4A39"},{"a":18975,"t":"code","b":[24],"m":"clc"},{"a":18976,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":18979,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":18981,"t":"code","b":[201,180],"m":"cmp","o":"#$B4"},{"a":18983,"t":"code","b":[176,16],"m":"bcs","oa":19001,"o":"$4A39"},{"a":18985,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":18988,"t":"code","b":[24],"m":"clc"},{"a":18989,"t":"code","b":[165,14],"m":"lda","oa":14,"o":"$0E"},{"a":18991,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":18993,"t":"code","b":[133,14],"m":"sta","oa":14,"o":"$0E"},{"a":18995,"t":"code","b":[165,15],"m":"lda","oa":15,"o":"$0F"},{"a":18997,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":18999,"t":"code","b":[133,15],"m":"sta","oa":15,"o":"$0F"},{"a":19001,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[18947,18965,18973,18983]},{"a":19004,"t":"code","b":[41,4],"m":"and","o":"#$04"},{"a":19006,"t":"code","b":[208,29],"m":"bne","oa":19037,"o":"$4A5D"},{"a":19008,"t":"code","b":[56],"m":"sec"},{"a":19009,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":19012,"t":"code","b":[233,8],"m":"sbc","o":"#$08"},{"a":19014,"t":"code","b":[201,70],"m":"cmp","o":"#$46"},{"a":19016,"t":"code","b":[144,52],"m":"bcc","oa":19070,"o":"$4A7E"},{"a":19018,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":19021,"t":"code","b":[56],"m":"sec"},{"a":19022,"t":"code","b":[165,14],"m":"lda","oa":14,"o":"$0E"},{"a":19024,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":19026,"t":"code","b":[133,14],"m":"sta","oa":14,"o":"$0E"},{"a":19028,"t":"code","b":[165,15],"m":"lda","oa":15,"o":"$0F"},{"a":19030,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":19032,"t":"code","b":[133,15],"m":"sta","oa":15,"o":"$0F"},{"a":19034,"t":"code","b":[76,126,74],"m":"jmp","oa":19070,"o":"$4A7E"},{"a":19037,"t":"code","b":[173,166,14],"m":"lda","oa":3750,"o":"joy_port","x":[19006]},{"a":19040,"t":"code","b":[41,8],"m":"and","o":"#$08"},{"a":19042,"t":"code","b":[208,26],"m":"bne","oa":19070,"o":"$4A7E"},{"a":19044,"t":"code","b":[24],"m":"clc"},{"a":19045,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":19048,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":19050,"t":"code","b":[201,246],"m":"cmp","o":"#$F6"},{"a":19052,"t":"code","b":[176,16],"m":"bcs","oa":19070,"o":"$4A7E"},{"a":19054,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":19057,"t":"code","b":[24],"m":"clc"},{"a":19058,"t":"code","b":[165,14],"m":"lda","oa":14,"o":"$0E"},{"a":19060,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":19062,"t":"code","b":[133,14],"m":"sta","oa":14,"o":"$0E"},{"a":19064,"t":"code","b":[165,15],"m":"lda","oa":15,"o":"$0F"},{"a":19066,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19068,"t":"code","b":[133,15],"m":"sta","oa":15,"o":"$0F"},{"a":19070,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[19016,19034,19042,19052]},{"a":19072,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":19075,"t":"code","b":[173,126,72],"m":"lda","oa":18558,"o":"cursor_x"},{"a":19078,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":19081,"t":"code","b":[173,125,72],"m":"lda","oa":18557,"o":"cursor_y"},{"a":19084,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":19087,"t":"code","b":[169,218],"m":"lda","o":"#$DA"},{"a":19089,"t":"code","b":[141,248,207],"m":"sta","oa":53240,"o":"$CFF8"},{"a":19092,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":19094,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":19097,"t":"code","b":[177,14],"m":"lda","oa":14,"o":"($0E),y"},{"a":19099,"t":"code","b":[96],"m":"rts"},{"a":19100,"l":"mask_obj_state","c":"State of each of the five objects: set to 1 by $4B47, 3 by the handler at $4CAB. $4BB9 uses it to pick the handler from the table $4BD5.","t":"byte","b":[0,0,0,0,0],"x":[19271,19313,19387,19629,19766,20017,20589]},{"a":19105,"l":"mask_obj_delay","c":"Delay of each object: a random value 0 to 31 set by $4B47; the handlers at $4BE2 and $4CB4 count it down.","t":"byte","b":[0,0,0,0,0],"x":[19308,19426,19437,19636,19644,19771]},{"a":19110,"l":"mask_obj_value_a","c":"Per-object byte set by $4B47 from the table $4B11 ($40, $58 or $70 by $4B17), and $10 for the chosen object. No reader in the dumped routines.","t":"byte","b":[0,0,0,0,0],"x":[19333,19380,19666]},{"a":19115,"l":"mask_obj_value_b","c":"Per-object byte set by $4B47 from the table $4B14 ($58), and $58 for the chosen object. No reader in the dumped routines.","t":"byte","b":[0,0,0,0,0],"x":[19327,19375,19674]},{"a":19120,"l":"mask_obj_ptr_lo","c":"Low bytes of the per-object character-data pointer, copied from $4ABF by $4B47.","t":"byte","b":[0,0,0,0,0],"x":[19339,19452,19510,19683,19716,19929,19981]},{"a":19125,"l":"mask_obj_ptr_hi","c":"High bytes of the per-object character-data pointer, copied from $4AC4 by $4B47.","t":"byte","b":[0,0,0,0,0],"x":[19345,19457,19515,19690,19721,19936,19986]},{"a":19130,"l":"mask_obj_counter","c":"Per-object counter cleared by $4B47; the match tests $478B ... require it below 5.","t":"byte","b":[0,0,0,0,0],"x":[18331,19318,19648,19755,19776,19780,20006,20021]},{"a":19135,"l":"mask_obj_ptr_init_lo","c":"Initial pointer low bytes $00, $48, $90, $D8, $20 (steps of 72), read by $4B47.","t":"byte","b":[0,72,144,216,32],"x":[19336]},{"a":19140,"l":"mask_obj_ptr_init_hi","c":"Initial pointer high bytes $C0, $C0, $C0, $C0, $C1: with $4ABF the addresses $C000, $C048, $C090, $C0D8, $C120, read by $4B47.","t":"byte","b":[192,192,192,192,193],"x":[19342]},{"a":19145,"l":"mask_strip_steps","c":"24 bytes in three descending runs: $37 down to $30, $1F down to $18 and $07 down to $00. No traced code reads them. The first value equals the constant $37 added at $4CE6, which is the only link seen; what the table is for is open.","t":"byte","b":[55,54,53,52,51,50,49,48]},{"a":19153,"t":"byte","b":[31,30,29,28,27,26,25,24]},{"a":19161,"t":"byte","b":[7,6,5,4,3,2,1,0]},{"a":19169,"l":"mask_strip_offsets","c":"24 offsets of two bytes (low, high), one for each step of an object's slide-in: 0 to 7, then $90 to $97, then $120 to $127. object_slide_in ($4CB4) reads the pair for the step in $4ABA,x (at $4CC5 and $4CCB) and adds it to the object's base address $4AA6/$4AAB, which is $5840, $5858 or $5870 (or $5810 for the chosen object), so the three groups of eight steps read the picture bytes at $5810 to $5887, $58A0 to $5917 and $5930 to $59A7.","t":"byte","b":[0,0,1,0,2,0,3,0],"x":[19653]},{"a":19177,"t":"byte","b":[4,0,5,0,6,0,7,0]},{"a":19185,"t":"byte","b":[144,0,145,0,146,0,147,0]},{"a":19193,"t":"byte","b":[148,0,149,0,150,0,151,0]},{"a":19201,"t":"byte","b":[32,1,33,1,34,1,35,1]},{"a":19209,"t":"byte","b":[36,1,37,1,38,1,39,1]},{"a":19217,"l":"mask_obj_choice_a","c":"Values $40, $58, $70, one chosen by $4B17 for $4AA6.","t":"byte","b":[64,88,112],"x":[19330]},{"a":19220,"l":"mask_obj_choice_b","c":"Values $58, $58, $58, one chosen by $4B17 for $4AAB.","t":"byte","b":[88,88,88],"x":[19324]},{"a":19223,"l":"random_of_3","c":"Returns X=0, 1 or 2 from a random byte ($0E2C): 0 below $55, 1 below $AA, else 2. Called by $4B47.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[19321]},{"a":19225,"t":"code","b":[32,44,14],"m":"jsr","oa":3628,"o":"random"},{"a":19228,"t":"code","b":[201,85],"m":"cmp","o":"#$55"},{"a":19230,"t":"code","b":[176,1],"m":"bcs","oa":19233,"o":"$4B21"},{"a":19232,"t":"code","b":[96],"m":"rts"},{"a":19233,"t":"code","b":[232],"m":"inx","x":[19230]},{"a":19234,"t":"code","b":[201,170],"m":"cmp","o":"#$AA"},{"a":19236,"t":"code","b":[176,1],"m":"bcs","oa":19239,"o":"$4B27"},{"a":19238,"t":"code","b":[96],"m":"rts"},{"a":19239,"t":"code","b":[232],"m":"inx","x":[19236]},{"a":19240,"t":"code","b":[96],"m":"rts"},{"a":19241,"l":"random_of_5","c":"Returns X=0 to 4 from a random byte ($0E2C): 0 below $32, 1 below $64, 2 below $96, 3 below $C8, else 4. Called by $4B47.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[19353]},{"a":19243,"t":"code","b":[32,44,14],"m":"jsr","oa":3628,"o":"random"},{"a":19246,"t":"code","b":[201,50],"m":"cmp","o":"#$32"},{"a":19248,"t":"code","b":[176,1],"m":"bcs","oa":19251,"o":"$4B33"},{"a":19250,"t":"code","b":[96],"m":"rts"},{"a":19251,"t":"code","b":[232],"m":"inx","x":[19248]},{"a":19252,"t":"code","b":[201,100],"m":"cmp","o":"#$64"},{"a":19254,"t":"code","b":[176,1],"m":"bcs","oa":19257,"o":"$4B39"},{"a":19256,"t":"code","b":[96],"m":"rts"},{"a":19257,"t":"code","b":[232],"m":"inx","x":[19254]},{"a":19258,"t":"code","b":[201,150],"m":"cmp","o":"#$96"},{"a":19260,"t":"code","b":[176,1],"m":"bcs","oa":19263,"o":"$4B3F"},{"a":19262,"t":"code","b":[96],"m":"rts"},{"a":19263,"t":"code","b":[232],"m":"inx","x":[19260]},{"a":19264,"t":"code","b":[201,200],"m":"cmp","o":"#$C8"},{"a":19266,"t":"code","b":[176,1],"m":"bcs","oa":19269,"o":"$4B45"},{"a":19268,"t":"code","b":[96],"m":"rts"},{"a":19269,"t":"code","b":[232],"m":"inx","x":[19266]},{"a":19270,"t":"code","b":[96],"m":"rts"},{"a":19271,"l":"objects_spawn","c":"Starts five objects when all five states $4A9C-$4AA0 are 0. Sets $475E to 2 and, for each: delay $4AA1 = random and $1F, state $4A9C = 1, $4ABA = 0, the values $4AAB and $4AA6 from the tables $4B14 and $4B11 chosen with $4B17, and the pointer $4AB0/$4AB5 copied from $4ABF/$4AC4. It then picks X with $4B29 (changed to 1, then 2, while equal to $4816), stores it in $4BB8 and sets $4AAB plus X to $58 and $4AA6 plus X to $10. Called by the raster interrupt $5242 while $0F5A is zero.","t":"code","b":[173,156,74],"m":"lda","oa":19100,"o":"mask_obj_state","x":[21147]},{"a":19274,"t":"code","b":[208,107],"m":"bne","oa":19383,"o":"$4BB7"},{"a":19276,"t":"code","b":[173,157,74],"m":"lda","oa":19101,"o":"$4A9D"},{"a":19279,"t":"code","b":[208,102],"m":"bne","oa":19383,"o":"$4BB7"},{"a":19281,"t":"code","b":[173,158,74],"m":"lda","oa":19102,"o":"$4A9E"},{"a":19284,"t":"code","b":[208,97],"m":"bne","oa":19383,"o":"$4BB7"},{"a":19286,"t":"code","b":[173,159,74],"m":"lda","oa":19103,"o":"$4A9F"},{"a":19289,"t":"code","b":[208,92],"m":"bne","oa":19383,"o":"$4BB7"},{"a":19291,"t":"code","b":[173,160,74],"m":"lda","oa":19104,"o":"$4AA0"},{"a":19294,"t":"code","b":[208,87],"m":"bne","oa":19383,"o":"$4BB7"},{"a":19296,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":19298,"t":"code","b":[141,94,71],"m":"sta","oa":18270,"o":"slice_type"},{"a":19301,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":19303,"t":"code","b":[32,44,14],"m":"jsr","oa":3628,"o":"random","x":[19351]},{"a":19306,"t":"code","b":[41,31],"m":"and","o":"#$1F"},{"a":19308,"t":"code","b":[153,161,74],"m":"sta","oa":19105,"o":"mask_obj_delay,y"},{"a":19311,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":19313,"t":"code","b":[153,156,74],"m":"sta","oa":19100,"o":"mask_obj_state,y"},{"a":19316,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":19318,"t":"code","b":[153,186,74],"m":"sta","oa":19130,"o":"mask_obj_counter,y"},{"a":19321,"t":"code","b":[32,23,75],"m":"jsr","oa":19223,"o":"random_of_3"},{"a":19324,"t":"code","b":[189,20,75],"m":"lda","oa":19220,"o":"mask_obj_choice_b,x"},{"a":19327,"t":"code","b":[153,171,74],"m":"sta","oa":19115,"o":"mask_obj_value_b,y"},{"a":19330,"t":"code","b":[189,17,75],"m":"lda","oa":19217,"o":"mask_obj_choice_a,x"},{"a":19333,"t":"code","b":[153,166,74],"m":"sta","oa":19110,"o":"mask_obj_value_a,y"},{"a":19336,"t":"code","b":[185,191,74],"m":"lda","oa":19135,"o":"mask_obj_ptr_init_lo,y"},{"a":19339,"t":"code","b":[153,176,74],"m":"sta","oa":19120,"o":"mask_obj_ptr_lo,y"},{"a":19342,"t":"code","b":[185,196,74],"m":"lda","oa":19140,"o":"mask_obj_ptr_init_hi,y"},{"a":19345,"t":"code","b":[153,181,74],"m":"sta","oa":19125,"o":"mask_obj_ptr_hi,y"},{"a":19348,"t":"code","b":[200],"m":"iny"},{"a":19349,"t":"code","b":[192,5],"m":"cpy","o":"#$05"},{"a":19351,"t":"code","b":[208,206],"m":"bne","oa":19303,"o":"$4B67"},{"a":19353,"t":"code","b":[32,41,75],"m":"jsr","oa":19241,"o":"random_of_5"},{"a":19356,"t":"code","b":[236,22,72],"m":"cpx","oa":18454,"o":"cursor_column"},{"a":19359,"t":"code","b":[208,9],"m":"bne","oa":19370,"o":"$4BAA"},{"a":19361,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":19363,"t":"code","b":[236,22,72],"m":"cpx","oa":18454,"o":"cursor_column"},{"a":19366,"t":"code","b":[208,2],"m":"bne","oa":19370,"o":"$4BAA"},{"a":19368,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":19370,"t":"code","b":[142,184,75],"m":"stx","oa":19384,"o":"target_object","x":[19359,19366]},{"a":19373,"t":"code","b":[169,88],"m":"lda","o":"#$58"},{"a":19375,"t":"code","b":[157,171,74],"m":"sta","oa":19115,"o":"mask_obj_value_b,x"},{"a":19378,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":19380,"t":"code","b":[157,166,74],"m":"sta","oa":19110,"o":"mask_obj_value_a,x"},{"a":19383,"t":"code","b":[96],"m":"rts","x":[19274,19279,19284,19289,19294]},{"a":19384,"l":"target_object","c":"Index 0 to 4 of the chosen object, set by $4B47 and used by $475F and the match tests.","t":"byte","b":[0],"x":[18285,19370,19440,19946]},{"a":19385,"l":"objects_run","c":"Runs the five objects. For X=0 to 4 it takes the state $4A9C plus X, multiplies it by 2, reads the address from the table $4BD5 and stores it in the operand of the JSR at $4BCC (which points at $2B67 until patched), then calls it. Called by the raster interrupt $5242 while $0F5A is zero.","t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[21150]},{"a":19387,"t":"code","b":[189,156,74],"m":"lda","oa":19100,"o":"mask_obj_state,x","x":[19410]},{"a":19390,"t":"code","b":[10],"m":"asl","o":"a"},{"a":19391,"t":"code","b":[168],"m":"tay"},{"a":19392,"t":"code","b":[185,213,75],"m":"lda","oa":19413,"o":"mask_obj_handlers,y"},{"a":19395,"t":"code","b":[141,205,75],"m":"sta","oa":19405,"o":"$4BCD"},{"a":19398,"t":"code","b":[185,214,75],"m":"lda","oa":19414,"o":"$4BD6,y"},{"a":19401,"t":"code","b":[141,206,75],"m":"sta","oa":19406,"o":"$4BCE"},{"a":19404,"t":"code","b":[32,103,43],"m":"jsr","oa":11111,"o":"jsr_default_target"},{"a":19407,"t":"code","b":[232],"m":"inx"},{"a":19408,"t":"code","b":[224,5],"m":"cpx","o":"#$05"},{"a":19410,"t":"code","b":[208,231],"m":"bne","oa":19387,"o":"$4BBB"},{"a":19412,"t":"code","b":[96],"m":"rts"},{"a":19413,"l":"mask_obj_handlers","c":"Handler addresses by object state 0 to 3: $4BDD, $4CB4, $4BE2, $4DD8. $4BB9 patches the chosen one into a JSR. State 4 would read the bytes after the table.","t":"byte","b":[221,75,180,76,226,75,216,77],"x":[19392]},{"a":19421,"l":"object_idle","c":"Handler for object state 0 ($4A9C,x = 0): a bare RTS. $4BB9 picks the handler from the table $4BD5.","t":"code","b":[96],"m":"rts"},{"a":19422,"l":"object_flip_toggle","c":"Toggles between 0 and 1 each time $4BE2 flips the picture; the value is copied to $475E.","t":"byte","b":[0],"x":[19462,19467]},{"a":19423,"l":"object_source_lo","c":"Low byte of the source address that $4BE2 reads the picture from ($F8 or $28 after the toggle, or $10).","t":"byte","b":[0],"x":[19481,19498,19520,19608]},{"a":19424,"l":"object_source_hi","c":"High byte of the same source address ($57 or $58).","t":"byte","b":[0],"x":[19488,19505,19525,19615]},{"a":19425,"l":"object_return","c":"A bare RTS that object_flip ($4BE2) branches to when the object is not the one the cursor $4BB8 points at.","t":"code","b":[96],"m":"rts","x":[19443]},{"a":19426,"l":"object_flip","c":"Handler for object state 2. Counts the delay $4AA1,x down; at 0 it sets state 3 ($4CAB). While counting, only the object that the cursor $4BB8 points at acts: at count $32 it toggles $4BDE (copied to $475E), takes the source $57F8 or $5828 and, at count $14, the source $5810 with $475E=2. It then copies 24 rows of three bytes (rows $90 apart in the source, $18 apart at the object's screen position $4AB0/$4AB5,x) to the screen.","t":"code","b":[189,161,74],"m":"lda","oa":19105,"o":"mask_obj_delay,x"},{"a":19429,"t":"code","b":[208,3],"m":"bne","oa":19434,"o":"$4BEA"},{"a":19431,"t":"code","b":[76,171,76],"m":"jmp","oa":19627,"o":"$4CAB"},{"a":19434,"t":"code","b":[56],"m":"sec","x":[19429]},{"a":19435,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":19437,"t":"code","b":[157,161,74],"m":"sta","oa":19105,"o":"mask_obj_delay,x"},{"a":19440,"t":"code","b":[236,184,75],"m":"cpx","oa":19384,"o":"target_object"},{"a":19443,"t":"code","b":[208,236],"m":"bne","oa":19425,"o":"object_return"},{"a":19445,"t":"code","b":[201,50],"m":"cmp","o":"#$32"},{"a":19447,"t":"code","b":[240,3],"m":"beq","oa":19452,"o":"$4BFC"},{"a":19449,"t":"code","b":[76,144,76],"m":"jmp","oa":19600,"o":"$4C90"},{"a":19452,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x","x":[19447]},{"a":19455,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19457,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19460,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19462,"t":"code","b":[173,222,75],"m":"lda","oa":19422,"o":"object_flip_toggle"},{"a":19465,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":19467,"t":"code","b":[141,222,75],"m":"sta","oa":19422,"o":"object_flip_toggle"},{"a":19470,"t":"code","b":[141,94,71],"m":"sta","oa":18270,"o":"slice_type"},{"a":19473,"t":"code","b":[201,1],"m":"cmp","o":"#$01"},{"a":19475,"t":"code","b":[208,17],"m":"bne","oa":19494,"o":"$4C26"},{"a":19477,"t":"code","b":[169,248],"m":"lda","o":"#$F8"},{"a":19479,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19481,"t":"code","b":[141,223,75],"m":"sta","oa":19423,"o":"object_source_lo"},{"a":19484,"t":"code","b":[169,87],"m":"lda","o":"#$57"},{"a":19486,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19488,"t":"code","b":[141,224,75],"m":"sta","oa":19424,"o":"object_source_hi"},{"a":19491,"t":"code","b":[76,52,76],"m":"jmp","oa":19508,"o":"$4C34"},{"a":19494,"t":"code","b":[169,40],"m":"lda","o":"#$28","x":[19475]},{"a":19496,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19498,"t":"code","b":[141,223,75],"m":"sta","oa":19423,"o":"object_source_lo"},{"a":19501,"t":"code","b":[169,88],"m":"lda","o":"#$58"},{"a":19503,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19505,"t":"code","b":[141,224,75],"m":"sta","oa":19424,"o":"object_source_hi"},{"a":19508,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[19491,19623]},{"a":19510,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x","x":[19597]},{"a":19513,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19515,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19518,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19520,"t":"code","b":[173,223,75],"m":"lda","oa":19423,"o":"object_source_lo"},{"a":19523,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19525,"t":"code","b":[173,224,75],"m":"lda","oa":19424,"o":"object_source_hi"},{"a":19528,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19530,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19532,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19534,"t":"code","b":[24],"m":"clc"},{"a":19535,"t":"code","b":[165,10],"m":"lda","oa":10,"o":"$0A"},{"a":19537,"t":"code","b":[105,144],"m":"adc","o":"#$90"},{"a":19539,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19541,"t":"code","b":[165,11],"m":"lda","oa":11,"o":"$0B"},{"a":19543,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19545,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19547,"t":"code","b":[24],"m":"clc"},{"a":19548,"t":"code","b":[165,12],"m":"lda","oa":12,"o":"$0C"},{"a":19550,"t":"code","b":[105,24],"m":"adc","o":"#$18"},{"a":19552,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19554,"t":"code","b":[165,13],"m":"lda","oa":13,"o":"$0D"},{"a":19556,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19558,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19560,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19562,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19564,"t":"code","b":[24],"m":"clc"},{"a":19565,"t":"code","b":[165,10],"m":"lda","oa":10,"o":"$0A"},{"a":19567,"t":"code","b":[105,144],"m":"adc","o":"#$90"},{"a":19569,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19571,"t":"code","b":[165,11],"m":"lda","oa":11,"o":"$0B"},{"a":19573,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19575,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19577,"t":"code","b":[24],"m":"clc"},{"a":19578,"t":"code","b":[165,12],"m":"lda","oa":12,"o":"$0C"},{"a":19580,"t":"code","b":[105,24],"m":"adc","o":"#$18"},{"a":19582,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19584,"t":"code","b":[165,13],"m":"lda","oa":13,"o":"$0D"},{"a":19586,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19588,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19590,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19592,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19594,"t":"code","b":[200],"m":"iny"},{"a":19595,"t":"code","b":[192,24],"m":"cpy","o":"#$18"},{"a":19597,"t":"code","b":[208,167],"m":"bne","oa":19510,"o":"$4C36"},{"a":19599,"t":"code","b":[96],"m":"rts"},{"a":19600,"t":"code","b":[201,20],"m":"cmp","o":"#$14","x":[19449]},{"a":19602,"t":"code","b":[208,22],"m":"bne","oa":19626,"o":"$4CAA"},{"a":19604,"t":"code","b":[169,16],"m":"lda","o":"#$10"},{"a":19606,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19608,"t":"code","b":[141,223,75],"m":"sta","oa":19423,"o":"object_source_lo"},{"a":19611,"t":"code","b":[169,88],"m":"lda","o":"#$58"},{"a":19613,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19615,"t":"code","b":[141,224,75],"m":"sta","oa":19424,"o":"object_source_hi"},{"a":19618,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":19620,"t":"code","b":[141,94,71],"m":"sta","oa":18270,"o":"slice_type"},{"a":19623,"t":"code","b":[76,52,76],"m":"jmp","oa":19508,"o":"$4C34"},{"a":19626,"t":"code","b":[96],"m":"rts","x":[19602]},{"a":19627,"t":"code","b":[169,3],"m":"lda","o":"#$03","x":[19431]},{"a":19629,"t":"code","b":[157,156,74],"m":"sta","oa":19100,"o":"mask_obj_state,x"},{"a":19632,"t":"code","b":[96],"m":"rts"},{"a":19633,"t":"gap","n":1},{"a":19634,"l":"strip_offset","c":"Two bytes written by $4CB4 from the table at $4AE1: the offset of the picture strip for this step. Read back at $4CD5 and $4CDA and added to the object's base address $4AA6/$4AAB,x.","t":"byte","b":[0,0],"x":[19656,19669]},{"a":19636,"l":"object_slide_in","c":"Handler for object state 1. Counts the delay $4AA1,x down; at 0 it copies one byte of the picture strip chosen by the step $4ABA,x (offset from the table $4AE1, two bytes per step) into three rows of the object's screen position, then calls $4D9E for nine cells to shift them left by a byte. It adds 1 to the step; at $18 it sets state 2, the delay $3C and the step 0.","t":"code","b":[189,161,74],"m":"lda","oa":19105,"o":"mask_obj_delay,x"},{"a":19639,"t":"code","b":[240,7],"m":"beq","oa":19648,"o":"$4CC0"},{"a":19641,"t":"code","b":[56],"m":"sec"},{"a":19642,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":19644,"t":"code","b":[157,161,74],"m":"sta","oa":19105,"o":"mask_obj_delay,x"},{"a":19647,"t":"code","b":[96],"m":"rts"},{"a":19648,"t":"code","b":[189,186,74],"m":"lda","oa":19130,"o":"mask_obj_counter,x","x":[19639]},{"a":19651,"t":"code","b":[10],"m":"asl","o":"a"},{"a":19652,"t":"code","b":[168],"m":"tay"},{"a":19653,"t":"code","b":[185,225,74],"m":"lda","oa":19169,"o":"mask_strip_offsets,y"},{"a":19656,"t":"code","b":[141,178,76],"m":"sta","oa":19634,"o":"strip_offset"},{"a":19659,"t":"code","b":[185,226,74],"m":"lda","oa":19170,"o":"$4AE2,y"},{"a":19662,"t":"code","b":[141,179,76],"m":"sta","oa":19635,"o":"$4CB3"},{"a":19665,"t":"code","b":[24],"m":"clc"},{"a":19666,"t":"code","b":[189,166,74],"m":"lda","oa":19110,"o":"mask_obj_value_a,x"},{"a":19669,"t":"code","b":[109,178,76],"m":"adc","oa":19634,"o":"strip_offset"},{"a":19672,"t":"code","b":[133,10],"m":"sta","oa":10,"o":"$0A"},{"a":19674,"t":"code","b":[189,171,74],"m":"lda","oa":19115,"o":"mask_obj_value_b,x"},{"a":19677,"t":"code","b":[109,179,76],"m":"adc","oa":19635,"o":"$4CB3"},{"a":19680,"t":"code","b":[133,11],"m":"sta","oa":11,"o":"$0B"},{"a":19682,"t":"code","b":[24],"m":"clc"},{"a":19683,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x"},{"a":19686,"t":"code","b":[105,55],"m":"adc","o":"#$37"},{"a":19688,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19690,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19693,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19695,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19697,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":19699,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19701,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19703,"t":"code","b":[160,8],"m":"ldy","o":"#$08"},{"a":19705,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19707,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19709,"t":"code","b":[160,16],"m":"ldy","o":"#$10"},{"a":19711,"t":"code","b":[177,10],"m":"lda","oa":10,"o":"($0A),y"},{"a":19713,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19715,"t":"code","b":[24],"m":"clc"},{"a":19716,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x"},{"a":19719,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19721,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19724,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19726,"t":"code","b":[142,41,77],"m":"stx","oa":19753,"o":"$4D29"},{"a":19729,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":19731,"t":"code","b":[32,158,77],"m":"jsr","oa":19870,"o":"shift_cells_left","x":[19750]},{"a":19734,"t":"code","b":[24],"m":"clc"},{"a":19735,"t":"code","b":[165,12],"m":"lda","oa":12,"o":"$0C"},{"a":19737,"t":"code","b":[105,8],"m":"adc","o":"#$08"},{"a":19739,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19741,"t":"code","b":[165,13],"m":"lda","oa":13,"o":"$0D"},{"a":19743,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19745,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19747,"t":"code","b":[232],"m":"inx"},{"a":19748,"t":"code","b":[224,9],"m":"cpx","o":"#$09"},{"a":19750,"t":"code","b":[208,235],"m":"bne","oa":19731,"o":"$4D13"},{"a":19752,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":19754,"t":"code","b":[24],"m":"clc"},{"a":19755,"t":"code","b":[189,186,74],"m":"lda","oa":19130,"o":"mask_obj_counter,x"},{"a":19758,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":19760,"t":"code","b":[201,24],"m":"cmp","o":"#$18"},{"a":19762,"t":"code","b":[144,16],"m":"bcc","oa":19780,"o":"$4D44"},{"a":19764,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":19766,"t":"code","b":[157,156,74],"m":"sta","oa":19100,"o":"mask_obj_state,x"},{"a":19769,"t":"code","b":[169,60],"m":"lda","o":"#$3C"},{"a":19771,"t":"code","b":[157,161,74],"m":"sta","oa":19105,"o":"mask_obj_delay,x"},{"a":19774,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":19776,"t":"code","b":[157,186,74],"m":"sta","oa":19130,"o":"mask_obj_counter,x"},{"a":19779,"t":"code","b":[96],"m":"rts"},{"a":19780,"t":"code","b":[157,186,74],"m":"sta","oa":19130,"o":"mask_obj_counter,x","x":[19762]},{"a":19783,"t":"code","b":[96],"m":"rts"},{"a":19784,"l":"shift_cells_right","c":"Shifts the eight bytes at ($0C) one place right (byte n to n+1, from the last to the first), then puts the byte at ($0C)-$18+7 into the first. Called nine times by $4DD8 with X counting the cells.","t":"code","b":[160,6],"m":"ldy","o":"#$06","x":[19958]},{"a":19786,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19788,"t":"code","b":[200],"m":"iny"},{"a":19789,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19791,"t":"code","b":[160,5],"m":"ldy","o":"#$05"},{"a":19793,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19795,"t":"code","b":[200],"m":"iny"},{"a":19796,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19798,"t":"code","b":[160,4],"m":"ldy","o":"#$04"},{"a":19800,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19802,"t":"code","b":[200],"m":"iny"},{"a":19803,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19805,"t":"code","b":[160,3],"m":"ldy","o":"#$03"},{"a":19807,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19809,"t":"code","b":[200],"m":"iny"},{"a":19810,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19812,"t":"code","b":[160,2],"m":"ldy","o":"#$02"},{"a":19814,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19816,"t":"code","b":[200],"m":"iny"},{"a":19817,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19819,"t":"code","b":[160,1],"m":"ldy","o":"#$01"},{"a":19821,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19823,"t":"code","b":[200],"m":"iny"},{"a":19824,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19826,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":19828,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19830,"t":"code","b":[200],"m":"iny"},{"a":19831,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19833,"t":"code","b":[56],"m":"sec"},{"a":19834,"t":"code","b":[165,12],"m":"lda","oa":12,"o":"$0C"},{"a":19836,"t":"code","b":[72],"m":"pha"},{"a":19837,"t":"code","b":[233,24],"m":"sbc","o":"#$18"},{"a":19839,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19841,"t":"code","b":[165,13],"m":"lda","oa":13,"o":"$0D"},{"a":19843,"t":"code","b":[72],"m":"pha"},{"a":19844,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":19846,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19848,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":19850,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19852,"t":"code","b":[141,157,77],"m":"sta","oa":19869,"o":"shift_temp"},{"a":19855,"t":"code","b":[104],"m":"pla"},{"a":19856,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19858,"t":"code","b":[104],"m":"pla"},{"a":19859,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19861,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":19863,"t":"code","b":[173,157,77],"m":"lda","oa":19869,"o":"shift_temp"},{"a":19866,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19868,"t":"code","b":[96],"m":"rts"},{"a":19869,"l":"shift_temp","c":"Holds the byte that $4D48 carries from the cell above into the first byte of the cell.","t":"byte","b":[0],"x":[19852,19863]},{"a":19870,"l":"shift_cells_left","c":"Shifts the eight bytes at ($0C) one place left (byte n+1 to n), then puts the byte at ($0C)+$18 into the last one (at +7). Called nine times by $4CB4 with X counting the cells.","t":"code","b":[160,1],"m":"ldy","o":"#$01","x":[19731]},{"a":19872,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19874,"t":"code","b":[136],"m":"dey"},{"a":19875,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19877,"t":"code","b":[160,2],"m":"ldy","o":"#$02"},{"a":19879,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19881,"t":"code","b":[136],"m":"dey"},{"a":19882,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19884,"t":"code","b":[160,3],"m":"ldy","o":"#$03"},{"a":19886,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19888,"t":"code","b":[136],"m":"dey"},{"a":19889,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19891,"t":"code","b":[160,4],"m":"ldy","o":"#$04"},{"a":19893,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19895,"t":"code","b":[136],"m":"dey"},{"a":19896,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19898,"t":"code","b":[160,5],"m":"ldy","o":"#$05"},{"a":19900,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19902,"t":"code","b":[136],"m":"dey"},{"a":19903,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19905,"t":"code","b":[160,6],"m":"ldy","o":"#$06"},{"a":19907,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19909,"t":"code","b":[136],"m":"dey"},{"a":19910,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19912,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":19914,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19916,"t":"code","b":[136],"m":"dey"},{"a":19917,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19919,"t":"code","b":[160,24],"m":"ldy","o":"#$18"},{"a":19921,"t":"code","b":[177,12],"m":"lda","oa":12,"o":"($0C),y"},{"a":19923,"t":"code","b":[160,7],"m":"ldy","o":"#$07"},{"a":19925,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19927,"t":"code","b":[96],"m":"rts"},{"a":19928,"l":"object_slide_out","c":"Handler for object state 3. Calls $4D48 for nine cells starting at the object's screen position plus $40 and going down by 8, then clears three bytes at the position. For the object that the cursor $4BB8 points at it sets $475E to 2. It adds 1 to the step $4ABA,x; at $15 it sets the state back to 0.","t":"code","b":[24],"m":"clc"},{"a":19929,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x"},{"a":19932,"t":"code","b":[105,64],"m":"adc","o":"#$40"},{"a":19934,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19936,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19939,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":19941,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19943,"t":"code","b":[142,12,78],"m":"stx","oa":19980,"o":"$4E0C"},{"a":19946,"t":"code","b":[236,184,75],"m":"cpx","oa":19384,"o":"target_object"},{"a":19949,"t":"code","b":[208,5],"m":"bne","oa":19956,"o":"$4DF4"},{"a":19951,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":19953,"t":"code","b":[141,94,71],"m":"sta","oa":18270,"o":"slice_type"},{"a":19956,"t":"code","b":[162,0],"m":"ldx","o":"#$00","x":[19949]},{"a":19958,"t":"code","b":[32,72,77],"m":"jsr","oa":19784,"o":"shift_cells_right","x":[19977]},{"a":19961,"t":"code","b":[56],"m":"sec"},{"a":19962,"t":"code","b":[165,12],"m":"lda","oa":12,"o":"$0C"},{"a":19964,"t":"code","b":[233,8],"m":"sbc","o":"#$08"},{"a":19966,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19968,"t":"code","b":[165,13],"m":"lda","oa":13,"o":"$0D"},{"a":19970,"t":"code","b":[233,0],"m":"sbc","o":"#$00"},{"a":19972,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19974,"t":"code","b":[232],"m":"inx"},{"a":19975,"t":"code","b":[224,9],"m":"cpx","o":"#$09"},{"a":19977,"t":"code","b":[208,235],"m":"bne","oa":19958,"o":"$4DF6"},{"a":19979,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":19981,"t":"code","b":[189,176,74],"m":"lda","oa":19120,"o":"mask_obj_ptr_lo,x"},{"a":19984,"t":"code","b":[133,12],"m":"sta","oa":12,"o":"$0C"},{"a":19986,"t":"code","b":[189,181,74],"m":"lda","oa":19125,"o":"mask_obj_ptr_hi,x"},{"a":19989,"t":"code","b":[133,13],"m":"sta","oa":13,"o":"$0D"},{"a":19991,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":19993,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":19995,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":19997,"t":"code","b":[160,8],"m":"ldy","o":"#$08"},{"a":19999,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":20001,"t":"code","b":[160,16],"m":"ldy","o":"#$10"},{"a":20003,"t":"code","b":[145,12],"m":"sta","oa":12,"o":"($0C),y"},{"a":20005,"t":"code","b":[24],"m":"clc"},{"a":20006,"t":"code","b":[189,186,74],"m":"lda","oa":19130,"o":"mask_obj_counter,x"},{"a":20009,"t":"code","b":[105,1],"m":"adc","o":"#$01"},{"a":20011,"t":"code","b":[201,21],"m":"cmp","o":"#$15"},{"a":20013,"t":"code","b":[144,6],"m":"bcc","oa":20021,"o":"$4E35"},{"a":20015,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20017,"t":"code","b":[157,156,74],"m":"sta","oa":19100,"o":"mask_obj_state,x"},{"a":20020,"t":"code","b":[96],"m":"rts"},{"a":20021,"t":"code","b":[157,186,74],"m":"sta","oa":19130,"o":"mask_obj_counter,x","x":[20013]},{"a":20024,"t":"code","b":[96],"m":"rts"},{"a":20025,"l":"screen_a_draw","c":"Draws screen A. Copies 18 rows of 28 bytes from $3DB7 to the screen from $CC2E (rows $28 apart, the pointers are in the operands at $4E52 and $4E55), then colours the three screen pages: each byte of $CC00-$CEFF is looked up in the table $53B8 and the result stored in colour RAM $D800-$DAFF. Called by $4F9C at $5109.","t":"code","b":[169,46],"m":"lda","o":"#$2E","x":[20745]},{"a":20027,"t":"code","b":[141,85,78],"m":"sta","oa":20053,"o":"$4E55"},{"a":20030,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":20032,"t":"code","b":[141,86,78],"m":"sta","oa":20054,"o":"$4E56"},{"a":20035,"t":"code","b":[169,183],"m":"lda","o":"#$B7"},{"a":20037,"t":"code","b":[141,82,78],"m":"sta","oa":20050,"o":"$4E52"},{"a":20040,"t":"code","b":[169,61],"m":"lda","o":"#$3D"},{"a":20042,"t":"code","b":[141,83,78],"m":"sta","oa":20051,"o":"$4E53"},{"a":20045,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":20047,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[20097]},{"a":20049,"t":"code","b":[185,183,61],"m":"lda","oa":15799,"o":"screen_a_map,y","x":[20058]},{"a":20052,"t":"code","b":[153,0,204],"m":"sta","oa":52224,"o":"$CC00,y"},{"a":20055,"t":"code","b":[200],"m":"iny"},{"a":20056,"t":"code","b":[192,28],"m":"cpy","o":"#$1C"},{"a":20058,"t":"code","b":[208,245],"m":"bne","oa":20049,"o":"$4E51"},{"a":20060,"t":"code","b":[24],"m":"clc"},{"a":20061,"t":"code","b":[173,85,78],"m":"lda","oa":20053,"o":"$4E55"},{"a":20064,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":20066,"t":"code","b":[141,85,78],"m":"sta","oa":20053,"o":"$4E55"},{"a":20069,"t":"code","b":[173,86,78],"m":"lda","oa":20054,"o":"$4E56"},{"a":20072,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":20074,"t":"code","b":[141,86,78],"m":"sta","oa":20054,"o":"$4E56"},{"a":20077,"t":"code","b":[24],"m":"clc"},{"a":20078,"t":"code","b":[173,82,78],"m":"lda","oa":20050,"o":"$4E52"},{"a":20081,"t":"code","b":[105,28],"m":"adc","o":"#$1C"},{"a":20083,"t":"code","b":[141,82,78],"m":"sta","oa":20050,"o":"$4E52"},{"a":20086,"t":"code","b":[173,83,78],"m":"lda","oa":20051,"o":"$4E53"},{"a":20089,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":20091,"t":"code","b":[141,83,78],"m":"sta","oa":20051,"o":"$4E53"},{"a":20094,"t":"code","b":[232],"m":"inx"},{"a":20095,"t":"code","b":[224,18],"m":"cpx","o":"#$12"},{"a":20097,"t":"code","b":[208,204],"m":"bne","oa":20047,"o":"$4E4F"},{"a":20099,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20101,"t":"code","b":[190,0,204],"m":"ldx","oa":52224,"o":"$CC00,y","x":[20129]},{"a":20104,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20107,"t":"code","b":[153,0,216],"m":"sta","o":"colour_ram,y"},{"a":20110,"t":"code","b":[190,0,205],"m":"ldx","oa":52480,"o":"$CD00,y"},{"a":20113,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20116,"t":"code","b":[153,0,217],"m":"sta","o":"$D900,y"},{"a":20119,"t":"code","b":[190,0,206],"m":"ldx","oa":52736,"o":"$CE00,y"},{"a":20122,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20125,"t":"code","b":[153,0,218],"m":"sta","o":"$DA00,y"},{"a":20128,"t":"code","b":[200],"m":"iny"},{"a":20129,"t":"code","b":[208,226],"m":"bne","oa":20101,"o":"$4E85"},{"a":20131,"t":"code","b":[96],"m":"rts"},{"a":20132,"l":"screen_b_draw","c":"Draws screen B. Copies 16 rows of 28 bytes from $3FAF to the screen from $CC2E (rows $28 apart), then colours the three pages through the table $53B8 into $D800-$DAFF as $4E39 does. Called by $4410 at $441F.","t":"code","b":[169,46],"m":"lda","o":"#$2E","x":[17439]},{"a":20134,"t":"code","b":[141,192,78],"m":"sta","oa":20160,"o":"$4EC0"},{"a":20137,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":20139,"t":"code","b":[141,193,78],"m":"sta","oa":20161,"o":"$4EC1"},{"a":20142,"t":"code","b":[169,175],"m":"lda","o":"#$AF"},{"a":20144,"t":"code","b":[141,189,78],"m":"sta","oa":20157,"o":"$4EBD"},{"a":20147,"t":"code","b":[169,63],"m":"lda","o":"#$3F"},{"a":20149,"t":"code","b":[141,190,78],"m":"sta","oa":20158,"o":"$4EBE"},{"a":20152,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":20154,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[20204]},{"a":20156,"t":"code","b":[185,175,63],"m":"lda","oa":16303,"o":"screen_b_map,y","x":[20165]},{"a":20159,"t":"code","b":[153,0,204],"m":"sta","oa":52224,"o":"$CC00,y"},{"a":20162,"t":"code","b":[200],"m":"iny"},{"a":20163,"t":"code","b":[192,28],"m":"cpy","o":"#$1C"},{"a":20165,"t":"code","b":[208,245],"m":"bne","oa":20156,"o":"$4EBC"},{"a":20167,"t":"code","b":[24],"m":"clc"},{"a":20168,"t":"code","b":[173,192,78],"m":"lda","oa":20160,"o":"$4EC0"},{"a":20171,"t":"code","b":[105,40],"m":"adc","o":"#$28"},{"a":20173,"t":"code","b":[141,192,78],"m":"sta","oa":20160,"o":"$4EC0"},{"a":20176,"t":"code","b":[173,193,78],"m":"lda","oa":20161,"o":"$4EC1"},{"a":20179,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":20181,"t":"code","b":[141,193,78],"m":"sta","oa":20161,"o":"$4EC1"},{"a":20184,"t":"code","b":[24],"m":"clc"},{"a":20185,"t":"code","b":[173,189,78],"m":"lda","oa":20157,"o":"$4EBD"},{"a":20188,"t":"code","b":[105,28],"m":"adc","o":"#$1C"},{"a":20190,"t":"code","b":[141,189,78],"m":"sta","oa":20157,"o":"$4EBD"},{"a":20193,"t":"code","b":[173,190,78],"m":"lda","oa":20158,"o":"$4EBE"},{"a":20196,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":20198,"t":"code","b":[141,190,78],"m":"sta","oa":20158,"o":"$4EBE"},{"a":20201,"t":"code","b":[232],"m":"inx"},{"a":20202,"t":"code","b":[224,16],"m":"cpx","o":"#$10"},{"a":20204,"t":"code","b":[208,204],"m":"bne","oa":20154,"o":"$4EBA"},{"a":20206,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20208,"t":"code","b":[190,0,204],"m":"ldx","oa":52224,"o":"$CC00,y","x":[20236]},{"a":20211,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20214,"t":"code","b":[153,0,216],"m":"sta","o":"colour_ram,y"},{"a":20217,"t":"code","b":[190,0,205],"m":"ldx","oa":52480,"o":"$CD00,y"},{"a":20220,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20223,"t":"code","b":[153,0,217],"m":"sta","o":"$D900,y"},{"a":20226,"t":"code","b":[190,0,206],"m":"ldx","oa":52736,"o":"$CE00,y"},{"a":20229,"t":"code","b":[189,184,83],"m":"lda","oa":21432,"o":"char_colour_table,x"},{"a":20232,"t":"code","b":[153,0,218],"m":"sta","o":"$DA00,y"},{"a":20235,"t":"code","b":[200],"m":"iny"},{"a":20236,"t":"code","b":[208,226],"m":"bne","oa":20208,"o":"$4EF0"},{"a":20238,"t":"code","b":[96],"m":"rts"},{"a":20239,"l":"text_pos","c":"Text index of the typing routines $279D and $4F11; cleared at their start.","t":"byte","b":[183],"x":[10153,10192,10218,10225,20256,20300,20326,20333,23246,23300,23326,23333]},{"a":20240,"l":"text_skip_count","c":"Counts down from $1E in $279D and $4F11; at 0 the fire button can stop the typing.","t":"byte","b":[0],"x":[10160,10163,10169,20268,20271,20277,23268,23271,23277]},{"a":20241,"l":"lab_text","c":"Types the text at $31C3 (a space code gives 0 here) on the screen from $CCCE, with the same method as $279D: delays of $3C and $14 first, then one character every $32 delay units and 2 rows per line, fire stops it after 30 characters, and at the end it waits for fire. It sets $4F9B to 1 and waits $FA. It uses the index $4F0F and the count $4F10. Called by $4F9C at $50EE.","t":"code","b":[169,60],"m":"lda","o":"#$3C","x":[20718]},{"a":20243,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":20246,"t":"code","b":[169,206],"m":"lda","o":"#$CE"},{"a":20248,"t":"code","b":[133,20],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":20250,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":20252,"t":"code","b":[133,21],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":20254,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20256,"t":"code","b":[141,15,79],"m":"sta","oa":20239,"o":"text_pos"},{"a":20259,"t":"code","b":[169,20],"m":"lda","o":"#$14"},{"a":20261,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":20264,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20266,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":20268,"t":"code","b":[141,16,79],"m":"sta","oa":20240,"o":"text_skip_count"},{"a":20271,"t":"code","b":[174,16,79],"m":"ldx","oa":20240,"o":"text_skip_count","x":[20329,20358]},{"a":20274,"t":"code","b":[240,7],"m":"beq","oa":20283,"o":"$4F3B"},{"a":20276,"t":"code","b":[202],"m":"dex"},{"a":20277,"t":"code","b":[142,16,79],"m":"stx","oa":20240,"o":"text_skip_count"},{"a":20280,"t":"code","b":[76,66,79],"m":"jmp","oa":20290,"o":"$4F42"},{"a":20283,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[20274]},{"a":20286,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":20288,"t":"code","b":[240,78],"m":"beq","oa":20368,"o":"$4F90"},{"a":20290,"t":"code","b":[140,75,79],"m":"sty","oa":20299,"o":"$4F4B","x":[20280]},{"a":20293,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":20295,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":20298,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20300,"t":"code","b":[174,15,79],"m":"ldx","oa":20239,"o":"text_pos"},{"a":20303,"t":"code","b":[189,195,49],"m":"lda","oa":12739,"o":"text_lab,x"},{"a":20306,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":20308,"t":"code","b":[240,22],"m":"beq","oa":20332,"o":"$4F6C"},{"a":20310,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":20312,"t":"code","b":[208,5],"m":"bne","oa":20319,"o":"$4F5F"},{"a":20314,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20316,"t":"code","b":[76,98,79],"m":"jmp","oa":20322,"o":"$4F62"},{"a":20319,"t":"code","b":[24],"m":"clc","x":[20312]},{"a":20320,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":20322,"t":"code","b":[145,20],"m":"sta","oa":20,"o":"(load_pointer_lo),y","x":[20316]},{"a":20324,"t":"code","b":[200],"m":"iny"},{"a":20325,"t":"code","b":[232],"m":"inx"},{"a":20326,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":20329,"t":"code","b":[76,47,79],"m":"jmp","oa":20271,"o":"$4F2F"},{"a":20332,"t":"code","b":[232],"m":"inx","x":[20308]},{"a":20333,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":20336,"t":"code","b":[189,195,49],"m":"lda","oa":12739,"o":"text_lab,x"},{"a":20339,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":20341,"t":"code","b":[240,18],"m":"beq","oa":20361,"o":"$4F89"},{"a":20343,"t":"code","b":[24],"m":"clc"},{"a":20344,"t":"code","b":[165,20],"m":"lda","oa":20,"o":"load_pointer_lo"},{"a":20346,"t":"code","b":[105,80],"m":"adc","o":"#$50"},{"a":20348,"t":"code","b":[133,20],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":20350,"t":"code","b":[165,21],"m":"lda","oa":21,"o":"load_pointer_hi"},{"a":20352,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":20354,"t":"code","b":[133,21],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":20356,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20358,"t":"code","b":[76,47,79],"m":"jmp","oa":20271,"o":"$4F2F"},{"a":20361,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[20341,20366]},{"a":20364,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":20366,"t":"code","b":[208,249],"m":"bne","oa":20361,"o":"$4F89"},{"a":20368,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[20288]},{"a":20370,"t":"code","b":[141,155,79],"m":"sta","oa":20379,"o":"typing_done"},{"a":20373,"t":"code","b":[169,250],"m":"lda","o":"#$FA"},{"a":20375,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":20378,"t":"code","b":[96],"m":"rts"},{"a":20379,"l":"typing_done","c":"Set to 1 by $279D, $4F11 and $4F9C, cleared by $4F9C near its end. No reader in the dumped code.","t":"byte","b":[1],"x":[10266,20370,20382,20767,23370]},{"a":20380,"l":"mask_setup","c":"Setup of the mask game, called by $4286. Sets $4F9B=1, interrupts off, $01=$35, VIC bank 3, $D018=$30, the cursor X $487E=$B1 and Y $487D=$71, the pointer $0E/$0F=$CD53, adds 3 to score digit 2 with $251D and draws the score, sets the timer digits $0EC9=9, $0ECA=9, $0ECB=3, fills $FE00-$FEFF with $AA, clears the state tables $489E and $48AB (13 bytes each) and many flags, stops the sound, sets bit 3 of every byte of the colour table $53B8 and 9 in its first $2D bytes, clears $35B7-$36FE, swaps with $3183, clears $002A-$0100 and the SID registers, then shows the texts $4F11 and $41A7, draws screen A ($4E39), the picture $32F6 and the energy bar, sets sprites 0 and 1, the NMI vector to $0E9B and the IRQ vector to $5177 on line $CD, and enables the raster interrupt.","t":"code","b":[169,1],"m":"lda","o":"#$01","x":[17030]},{"a":20382,"t":"code","b":[141,155,79],"m":"sta","oa":20379,"o":"typing_done"},{"a":20385,"t":"code","b":[120],"m":"sei"},{"a":20386,"t":"code","b":[169,53],"m":"lda","o":"#$35"},{"a":20388,"t":"code","b":[133,1],"m":"sta","oa":1,"o":"processor_port"},{"a":20390,"t":"code","b":[173,2,221],"m":"lda","o":"cia2_ddr_a"},{"a":20393,"t":"code","b":[9,3],"m":"ora","o":"#$03"},{"a":20395,"t":"code","b":[141,2,221],"m":"sta","o":"cia2_ddr_a"},{"a":20398,"t":"code","b":[173,0,221],"m":"lda","o":"cia2_port_a"},{"a":20401,"t":"code","b":[41,252],"m":"and","o":"#$FC"},{"a":20403,"t":"code","b":[141,0,221],"m":"sta","o":"cia2_port_a"},{"a":20406,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":20408,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":20411,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20414,"t":"code","b":[41,216],"m":"and","o":"#$D8"},{"a":20416,"t":"code","b":[9,83],"m":"ora","o":"#$53"},{"a":20418,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":20421,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":20424,"t":"code","b":[41,248],"m":"and","o":"#$F8"},{"a":20426,"t":"code","b":[9,24],"m":"ora","o":"#$18"},{"a":20428,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":20431,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":20433,"t":"code","b":[141,166,14],"m":"sta","oa":3750,"o":"joy_port"},{"a":20436,"t":"code","b":[169,177],"m":"lda","o":"#$B1"},{"a":20438,"t":"code","b":[141,126,72],"m":"sta","oa":18558,"o":"cursor_x"},{"a":20441,"t":"code","b":[169,113],"m":"lda","o":"#$71"},{"a":20443,"t":"code","b":[141,125,72],"m":"sta","oa":18557,"o":"cursor_y"},{"a":20446,"t":"code","b":[169,83],"m":"lda","o":"#$53"},{"a":20448,"t":"code","b":[133,14],"m":"sta","oa":14,"o":"$0E"},{"a":20450,"t":"code","b":[169,205],"m":"lda","o":"#$CD"},{"a":20452,"t":"code","b":[133,15],"m":"sta","oa":15,"o":"$0F"},{"a":20454,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":20456,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":20458,"t":"code","b":[32,29,37],"m":"jsr","oa":9501,"o":"score_add"},{"a":20461,"t":"code","b":[32,73,37],"m":"jsr","oa":9545,"o":"score_draw"},{"a":20464,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":20466,"t":"code","b":[141,201,14],"m":"sta","oa":3785,"o":"counter_hundreds"},{"a":20469,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":20472,"t":"code","b":[169,3],"m":"lda","o":"#$03"},{"a":20474,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":20477,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20479,"t":"code","b":[141,156,72],"m":"sta","oa":18588,"o":"scan_timer"},{"a":20482,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20484,"t":"code","b":[169,170],"m":"lda","o":"#$AA"},{"a":20486,"t":"code","b":[153,0,254],"m":"sta","oa":65024,"o":"dissolve_buffer,y","x":[20490]},{"a":20489,"t":"code","b":[200],"m":"iny"},{"a":20490,"t":"code","b":[208,250],"m":"bne","oa":20486,"o":"$5006"},{"a":20492,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20494,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20496,"t":"code","b":[153,158,72],"m":"sta","oa":18590,"o":"match_flags,y","x":[20505]},{"a":20499,"t":"code","b":[153,171,72],"m":"sta","oa":18603,"o":"slice_types,y"},{"a":20502,"t":"code","b":[200],"m":"iny"},{"a":20503,"t":"code","b":[192,13],"m":"cpy","o":"#$0D"},{"a":20505,"t":"code","b":[208,245],"m":"bne","oa":20496,"o":"$5010"},{"a":20507,"t":"code","b":[32,40,184],"m":"jsr","oa":47144,"o":"silence_all"},{"a":20510,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20512,"t":"code","b":[141,160,66],"m":"sta","oa":17056,"o":"match_seen_2"},{"a":20515,"t":"code","b":[141,161,66],"m":"sta","oa":17057,"o":"match_seen_1"},{"a":20518,"t":"code","b":[141,162,66],"m":"sta","oa":17058,"o":"match_seen_other"},{"a":20521,"t":"code","b":[141,118,81],"m":"sta","oa":20854,"o":"mask_unused"},{"a":20524,"t":"code","b":[141,185,72],"m":"sta","oa":18617,"o":"scan_reversed"},{"a":20527,"t":"code","b":[141,184,72],"m":"sta","oa":18616,"o":"scan_started"},{"a":20530,"t":"code","b":[141,194,70],"m":"sta","oa":18114,"o":"capture_mark"},{"a":20533,"t":"code","b":[141,215,73],"m":"sta","oa":18903,"o":"blink_count"},{"a":20536,"t":"code","b":[141,163,66],"m":"sta","oa":17059,"o":"text_index"},{"a":20539,"t":"code","b":[141,186,82],"m":"sta","oa":21178,"o":"result_shown"},{"a":20542,"t":"code","b":[141,157,72],"m":"sta","oa":18589,"o":"scan_done"},{"a":20545,"t":"code","b":[141,155,72],"m":"sta","oa":18587,"o":"scan_index"},{"a":20548,"t":"code","b":[141,193,70],"m":"sta","oa":18113,"o":"slice_number"},{"a":20551,"t":"code","b":[141,90,15],"m":"sta","oa":3930,"o":"mask_end_flag"},{"a":20554,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":20557,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":20560,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20562,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":20565,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":20567,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":20570,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":20572,"t":"code","b":[141,34,208],"m":"sta","o":"vic_background1"},{"a":20575,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20577,"t":"code","b":[141,27,208],"m":"sta","o":"vic_sprite_priority"},{"a":20580,"t":"code","b":[141,23,208],"m":"sta","o":"vic_sprite_expand_y"},{"a":20583,"t":"code","b":[141,29,208],"m":"sta","o":"vic_sprite_expand_x"},{"a":20586,"t":"code","b":[141,163,14],"m":"sta","oa":3747,"o":"nmi_flag"},{"a":20589,"t":"code","b":[141,156,74],"m":"sta","oa":19100,"o":"mask_obj_state"},{"a":20592,"t":"code","b":[141,157,74],"m":"sta","oa":19101,"o":"$4A9D"},{"a":20595,"t":"code","b":[141,158,74],"m":"sta","oa":19102,"o":"$4A9E"},{"a":20598,"t":"code","b":[141,159,74],"m":"sta","oa":19103,"o":"$4A9F"},{"a":20601,"t":"code","b":[141,160,74],"m":"sta","oa":19104,"o":"$4AA0"},{"a":20604,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20606,"t":"code","b":[185,184,83],"m":"lda","oa":21432,"o":"char_colour_table,y","x":[20615]},{"a":20609,"t":"code","b":[9,8],"m":"ora","o":"#$08"},{"a":20611,"t":"code","b":[153,184,83],"m":"sta","oa":21432,"o":"char_colour_table,y"},{"a":20614,"t":"code","b":[200],"m":"iny"},{"a":20615,"t":"code","b":[208,245],"m":"bne","oa":20606,"o":"$507E"},{"a":20617,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20619,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":20621,"t":"code","b":[153,184,83],"m":"sta","oa":21432,"o":"char_colour_table,y","x":[20627]},{"a":20624,"t":"code","b":[200],"m":"iny"},{"a":20625,"t":"code","b":[192,45],"m":"cpy","o":"#$2D"},{"a":20627,"t":"code","b":[208,248],"m":"bne","oa":20621,"o":"$508D"},{"a":20629,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20631,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20633,"t":"code","b":[153,183,53],"m":"sta","oa":13751,"o":"chars_saved_a,y","x":[20651]},{"a":20636,"t":"code","b":[153,255,53],"m":"sta","oa":13823,"o":"$35FF,y"},{"a":20639,"t":"code","b":[153,71,54],"m":"sta","oa":13895,"o":"$3647,y"},{"a":20642,"t":"code","b":[153,143,54],"m":"sta","oa":13967,"o":"$368F,y"},{"a":20645,"t":"code","b":[153,215,54],"m":"sta","oa":14039,"o":"$36D7,y"},{"a":20648,"t":"code","b":[200],"m":"iny"},{"a":20649,"t":"code","b":[192,72],"m":"cpy","o":"#$48"},{"a":20651,"t":"code","b":[208,236],"m":"bne","oa":20633,"o":"$5099"},{"a":20653,"t":"code","b":[32,131,49],"m":"jsr","oa":12675,"o":"swap_chars_35b7"},{"a":20656,"t":"code","b":[160,41],"m":"ldy","o":"#$29"},{"a":20658,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20660,"t":"code","b":[153,1,0],"m":"sta","oa":1,"o":"processor_port,y","x":[20664]},{"a":20663,"t":"code","b":[200],"m":"iny"},{"a":20664,"t":"code","b":[208,250],"m":"bne","oa":20660,"o":"$50B4"},{"a":20666,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20668,"t":"code","b":[152],"m":"tya"},{"a":20669,"t":"code","b":[153,0,212],"m":"sta","o":"sid_v1_freq_lo,y","x":[20675]},{"a":20672,"t":"code","b":[200],"m":"iny"},{"a":20673,"t":"code","b":[192,26],"m":"cpy","o":"#$1A"},{"a":20675,"t":"code","b":[208,248],"m":"bne","oa":20669,"o":"$50BD"},{"a":20677,"t":"code","b":[169,143],"m":"lda","o":"#$8F"},{"a":20679,"t":"code","b":[141,24,212],"m":"sta","o":"sid_filter_mode_volume"},{"a":20682,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":20685,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":20687,"t":"code","b":[9,16],"m":"ora","o":"#$10"},{"a":20689,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":20692,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20694,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":20697,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":20699,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":20702,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":20704,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":20707,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":20710,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20713,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":20715,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":20718,"t":"code","b":[32,17,79],"m":"jsr","oa":20241,"o":"lab_text"},{"a":20721,"t":"code","b":[32,167,65],"m":"jsr","oa":16807,"o":"subject_screen"},{"a":20724,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20727,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":20729,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":20732,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":20735,"t":"code","b":[169,80],"m":"lda","o":"#$50"},{"a":20737,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":20740,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20742,"t":"code","b":[32,110,14],"m":"jsr","oa":3694,"o":"fill_screen_c800"},{"a":20745,"t":"code","b":[32,57,78],"m":"jsr","oa":20025,"o":"screen_a_draw"},{"a":20748,"t":"code","b":[32,167,14],"m":"jsr","oa":3751,"o":"draw_bottom_rows"},{"a":20751,"t":"code","b":[169,33],"m":"lda","o":"#$21"},{"a":20753,"t":"code","b":[141,79,36],"m":"sta","oa":9295,"o":"energy"},{"a":20756,"t":"code","b":[32,149,36],"m":"jsr","oa":9365,"o":"energy_bar_draw"},{"a":20759,"t":"code","b":[32,246,50],"m":"jsr","oa":13046,"o":"image_b_draw"},{"a":20762,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20764,"t":"code","b":[141,16,208],"m":"sta","o":"vic_sprite_x_msb"},{"a":20767,"t":"code","b":[141,155,79],"m":"sta","oa":20379,"o":"typing_done"},{"a":20770,"t":"code","b":[169,172],"m":"lda","o":"#$AC"},{"a":20772,"t":"code","b":[141,0,208],"m":"sta","o":"vic_sprite0_x"},{"a":20775,"t":"code","b":[141,2,208],"m":"sta","o":"vic_sprite1_x"},{"a":20778,"t":"code","b":[169,96],"m":"lda","o":"#$60"},{"a":20780,"t":"code","b":[141,1,208],"m":"sta","o":"vic_sprite0_y"},{"a":20783,"t":"code","b":[169,117],"m":"lda","o":"#$75"},{"a":20785,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":20788,"t":"code","b":[169,2],"m":"lda","o":"#$02"},{"a":20790,"t":"code","b":[141,39,208],"m":"sta","o":"vic_sprite0_colour"},{"a":20793,"t":"code","b":[141,40,208],"m":"sta","o":"vic_sprite1_colour"},{"a":20796,"t":"code","b":[169,155],"m":"lda","o":"#$9B"},{"a":20798,"t":"code","b":[141,250,255],"m":"sta","oa":65530,"o":"$FFFA"},{"a":20801,"t":"code","b":[169,14],"m":"lda","o":"#$0E"},{"a":20803,"t":"code","b":[141,251,255],"m":"sta","oa":65531,"o":"$FFFB"},{"a":20806,"t":"code","b":[169,119],"m":"lda","o":"#$77"},{"a":20808,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":20811,"t":"code","b":[169,81],"m":"lda","o":"#$51"},{"a":20813,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":20816,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":20818,"t":"code","b":[141,26,208],"m":"sta","o":"vic_irq_enable"},{"a":20821,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":20823,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":20826,"t":"code","b":[169,205],"m":"lda","o":"#$CD"},{"a":20828,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":20831,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20834,"t":"code","b":[41,127],"m":"and","o":"#$7F"},{"a":20836,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":20839,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":20841,"t":"code","b":[141,14,220],"m":"sta","o":"cia1_control_a"},{"a":20844,"t":"code","b":[169,127],"m":"lda","o":"#$7F"},{"a":20846,"t":"code","b":[141,13,220],"m":"sta","o":"cia1_interrupt"},{"a":20849,"t":"code","b":[173,13,220],"m":"lda","o":"cia1_interrupt"},{"a":20852,"t":"code","b":[88],"m":"cli"},{"a":20853,"t":"code","b":[96],"m":"rts"},{"a":20854,"l":"mask_unused","c":"Cleared by $4F9C; no reader in the dumped code.","t":"byte","b":[0],"x":[20521]},{"a":20855,"l":"irq_mask_1","c":"Raster interrupt 1 of 3 of the mask game chain (first run on line $CD from the setup $4F9C, afterwards on line $C7 set by $5242). Keeps A, X and Y in the operands at $51D5, $51D7 and $51D9, sets $D018 and $D011 as $0C44 does, clears the border and sprite multicolours, acknowledges $D019, copies the joystick port $DC00 to $0EA6, sets line $CD and the low nibble of $D018 to 8, toggles $0CC8 and counts $0CC7 down on every second frame, and sets the vector $51DB.","t":"code","b":[141,213,81],"m":"sta","oa":20949,"o":"$51D5"},{"a":20858,"t":"code","b":[142,215,81],"m":"stx","oa":20951,"o":"$51D7"},{"a":20861,"t":"code","b":[140,217,81],"m":"sty","oa":20953,"o":"$51D9"},{"a":20864,"t":"code","b":[173,24,208],"m":"lda","o":"vic_memory"},{"a":20867,"t":"code","b":[41,15],"m":"and","o":"#$0F"},{"a":20869,"t":"code","b":[9,48],"m":"ora","o":"#$30"},{"a":20871,"t":"code","b":[168],"m":"tay"},{"a":20872,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20875,"t":"code","b":[9,79],"m":"ora","o":"#$4F"},{"a":20877,"t":"code","b":[140,24,208],"m":"sty","o":"vic_memory"},{"a":20880,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":20883,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":20885,"t":"code","b":[142,32,208],"m":"stx","o":"vic_border"},{"a":20888,"t":"code","b":[142,37,208],"m":"stx","o":"vic_sprite_mc0"},{"a":20891,"t":"code","b":[142,38,208],"m":"stx","o":"vic_sprite_mc1"},{"a":20894,"t":"code","b":[232],"m":"inx"},{"a":20895,"t":"code","b":[142,25,208],"m":"stx","o":"vic_irq_status"},{"a":20898,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":20901,"t":"code","b":[141,166,14],"m":"sta","oa":3750,"o":"joy_port"},{"a":20904,"t":"code","b":[169,205],"m":"lda","o":"#$CD"},{"a":20906,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":20909,"t":"code","b":[173,24,208],"m":"lda","o":"vic_memory"},{"a":20912,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":20914,"t":"code","b":[9,8],"m":"ora","o":"#$08"},{"a":20916,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":20919,"t":"code","b":[173,200,12],"m":"lda","oa":3272,"o":"irq_toggle"},{"a":20922,"t":"code","b":[73,1],"m":"eor","o":"#$01"},{"a":20924,"t":"code","b":[141,200,12],"m":"sta","oa":3272,"o":"irq_toggle"},{"a":20927,"t":"code","b":[240,9],"m":"beq","oa":20938,"o":"$51CA"},{"a":20929,"t":"code","b":[174,199,12],"m":"ldx","oa":3271,"o":"irq_counter"},{"a":20932,"t":"code","b":[240,4],"m":"beq","oa":20938,"o":"$51CA"},{"a":20934,"t":"code","b":[202],"m":"dex"},{"a":20935,"t":"code","b":[142,199,12],"m":"stx","oa":3271,"o":"irq_counter"},{"a":20938,"t":"code","b":[169,219],"m":"lda","o":"#$DB","x":[20927,20932]},{"a":20940,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":20943,"t":"code","b":[169,81],"m":"lda","o":"#$51"},{"a":20945,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":20948,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":20950,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":20952,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":20954,"t":"code","b":[64],"m":"rti"},{"a":20955,"l":"irq_mask_2","c":"Raster interrupt 2 of 3 of the mask game chain, on line $CD (set by $5177). Keeps A, X and Y in the operands at $523C, $523E and $5240, writes $D011 ORed with $2F and $D016 ORed with $17 after a run of NOPs, acknowledges $D019, sets line $FD and the vector $5242, clears bit 6 of $D011 and runs the sound driver $B176. While $0F5A is zero it runs $49E9 (cursor) and $535D (timer); otherwise $48BA (scan).","t":"code","b":[141,60,82],"m":"sta","oa":21052,"o":"$523C"},{"a":20958,"t":"code","b":[142,62,82],"m":"stx","oa":21054,"o":"$523E"},{"a":20961,"t":"code","b":[140,64,82],"m":"sty","oa":21056,"o":"$5240"},{"a":20964,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":20967,"t":"code","b":[9,47],"m":"ora","o":"#$2F"},{"a":20969,"t":"code","b":[168],"m":"tay"},{"a":20970,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":20973,"t":"code","b":[9,23],"m":"ora","o":"#$17"},{"a":20975,"t":"code","b":[170],"m":"tax"},{"a":20976,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":20979,"t":"code","b":[234],"m":"nop"},{"a":20980,"t":"code","b":[234],"m":"nop"},{"a":20981,"t":"code","b":[234],"m":"nop"},{"a":20982,"t":"code","b":[234],"m":"nop"},{"a":20983,"t":"code","b":[234],"m":"nop"},{"a":20984,"t":"code","b":[234],"m":"nop"},{"a":20985,"t":"code","b":[234],"m":"nop"},{"a":20986,"t":"code","b":[234],"m":"nop"},{"a":20987,"t":"code","b":[234],"m":"nop"},{"a":20988,"t":"code","b":[234],"m":"nop"},{"a":20989,"t":"code","b":[234],"m":"nop"},{"a":20990,"t":"code","b":[234],"m":"nop"},{"a":20991,"t":"code","b":[234],"m":"nop"},{"a":20992,"t":"code","b":[234],"m":"nop"},{"a":20993,"t":"code","b":[234],"m":"nop"},{"a":20994,"t":"code","b":[234],"m":"nop"},{"a":20995,"t":"code","b":[234],"m":"nop"},{"a":20996,"t":"code","b":[234],"m":"nop"},{"a":20997,"t":"code","b":[140,17,208],"m":"sty","o":"vic_control1"},{"a":21000,"t":"code","b":[142,22,208],"m":"stx","o":"vic_control2"},{"a":21003,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":21005,"t":"code","b":[142,25,208],"m":"stx","o":"vic_irq_status"},{"a":21008,"t":"code","b":[169,253],"m":"lda","o":"#$FD"},{"a":21010,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":21013,"t":"code","b":[169,66],"m":"lda","o":"#$42"},{"a":21015,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":21018,"t":"code","b":[169,82],"m":"lda","o":"#$52"},{"a":21020,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":21023,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":21026,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":21028,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":21031,"t":"code","b":[32,118,177],"m":"jsr","oa":45430,"o":"music_play"},{"a":21034,"t":"code","b":[173,90,15],"m":"lda","oa":3930,"o":"mask_end_flag"},{"a":21037,"t":"code","b":[208,9],"m":"bne","oa":21048,"o":"$5238"},{"a":21039,"t":"code","b":[32,233,73],"m":"jsr","oa":18921,"o":"cursor_move"},{"a":21042,"t":"code","b":[32,93,83],"m":"jsr","oa":21341,"o":"mask_timer_tick"},{"a":21045,"t":"code","b":[76,59,82],"m":"jmp","oa":21051,"o":"$523B"},{"a":21048,"t":"code","b":[32,186,72],"m":"jsr","oa":18618,"o":"scan_cursor","x":[21037]},{"a":21051,"t":"code","b":[169,0],"m":"lda","o":"#$00","x":[21045]},{"a":21053,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":21055,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":21057,"t":"code","b":[64],"m":"rti"},{"a":21058,"l":"irq_mask_3","c":"Raster interrupt 3 of 3 of the mask game chain, on line $FD (set by $51DB). Keeps A, X and Y in the operands at $52B4, $52B6 and $52B8, acknowledges $D019, masks $D016 with $F0, $D011 with $90 and sets $D018=$30. It sets $D022/$D023 to $0B/$0C, or 1/1 while the flash count $46C0 is non-zero (and counts it down), sets $D025=$0B and $D026=8, turns all sprites on, clears bit 6 of $D011 and runs $52BB. While $0F5A is zero it runs $4B47, $4BB9 and $46C5. It ends (the tail from $52A4, whose STA $FFFE is at $52AB) by setting line $C7 and the vector $5177.","t":"code","b":[141,180,82],"m":"sta","oa":21172,"o":"$52B4"},{"a":21061,"t":"code","b":[142,182,82],"m":"stx","oa":21174,"o":"$52B6"},{"a":21064,"t":"code","b":[140,184,82],"m":"sty","oa":21176,"o":"$52B8"},{"a":21067,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":21069,"t":"code","b":[141,25,208],"m":"sta","o":"vic_irq_status"},{"a":21072,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":21075,"t":"code","b":[41,240],"m":"and","o":"#$F0"},{"a":21077,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":21080,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":21083,"t":"code","b":[41,144],"m":"and","o":"#$90"},{"a":21085,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":21088,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":21090,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":21093,"t":"code","b":[162,11],"m":"ldx","o":"#$0B"},{"a":21095,"t":"code","b":[169,12],"m":"lda","o":"#$0C"},{"a":21097,"t":"code","b":[172,192,70],"m":"ldy","oa":18112,"o":"flash_count"},{"a":21100,"t":"code","b":[240,8],"m":"beq","oa":21110,"o":"$5276"},{"a":21102,"t":"code","b":[136],"m":"dey"},{"a":21103,"t":"code","b":[140,192,70],"m":"sty","oa":18112,"o":"flash_count"},{"a":21106,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":21108,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":21110,"t":"code","b":[142,34,208],"m":"stx","o":"vic_background1","x":[21100]},{"a":21113,"t":"code","b":[141,35,208],"m":"sta","o":"vic_background2"},{"a":21116,"t":"code","b":[169,11],"m":"lda","o":"#$0B"},{"a":21118,"t":"code","b":[141,37,208],"m":"sta","o":"vic_sprite_mc0"},{"a":21121,"t":"code","b":[169,8],"m":"lda","o":"#$08"},{"a":21123,"t":"code","b":[141,38,208],"m":"sta","o":"vic_sprite_mc1"},{"a":21126,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":21128,"t":"code","b":[141,21,208],"m":"sta","o":"vic_sprite_enable"},{"a":21131,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":21134,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":21136,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":21139,"t":"code","b":[32,187,82],"m":"jsr","oa":21179,"o":"mask_sprites"},{"a":21142,"t":"code","b":[173,90,15],"m":"lda","oa":3930,"o":"mask_end_flag"},{"a":21145,"t":"code","b":[208,9],"m":"bne","oa":21156,"o":"$52A4"},{"a":21147,"t":"code","b":[32,71,75],"m":"jsr","oa":19271,"o":"objects_spawn"},{"a":21150,"t":"code","b":[32,185,75],"m":"jsr","oa":19385,"o":"objects_run"},{"a":21153,"t":"code","b":[32,197,70],"m":"jsr","oa":18117,"o":"fire_capture"},{"a":21156,"t":"code","b":[169,199],"m":"lda","o":"#$C7","x":[21145]},{"a":21158,"t":"code","b":[141,18,208],"m":"sta","o":"vic_raster"},{"a":21161,"t":"code","b":[169,119],"m":"lda","o":"#$77"},{"a":21163,"t":"code","b":[141,254,255],"m":"sta","oa":65534,"o":"$FFFE"},{"a":21166,"t":"code","b":[169,81],"m":"lda","o":"#$51"},{"a":21168,"t":"code","b":[141,255,255],"m":"sta","oa":65535,"o":"$FFFF"},{"a":21171,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":21173,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":21175,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":21177,"t":"code","b":[64],"m":"rti"},{"a":21178,"l":"result_shown","c":"Set to 1 by $445F when the mask was made, cleared by $4F9C. $52BB places sprites 1 to 4 when it is non-zero.","t":"byte","b":[0],"x":[17521,20539,21193]},{"a":21179,"l":"mask_sprites","c":"Sets up sprites 1 to 7 for the result. Clears the sprite colours $D028-$D02B. If $52BA is 0 it sets the Y of sprites 1 to 7 ($D003 ... $D00F) to 0 and returns. Otherwise it places sprites 1 and 2 at Y $50 and sprites 3 and 4 at Y $7A, sprites 1 and 3 at X $8C and sprites 2 and 4 at X $BC, makes sprites 1 to 4 double width and height ($D017, $D01D = $1E) and sets their pointers $CFF9-$CFFC to $F8-$FB. Called by the raster interrupt $5242.","t":"code","b":[169,0],"m":"lda","o":"#$00","x":[21139]},{"a":21181,"t":"code","b":[141,40,208],"m":"sta","o":"vic_sprite1_colour"},{"a":21184,"t":"code","b":[141,41,208],"m":"sta","o":"vic_sprite2_colour"},{"a":21187,"t":"code","b":[141,42,208],"m":"sta","o":"vic_sprite3_colour"},{"a":21190,"t":"code","b":[141,43,208],"m":"sta","o":"vic_sprite4_colour"},{"a":21193,"t":"code","b":[173,186,82],"m":"lda","oa":21178,"o":"result_shown"},{"a":21196,"t":"code","b":[208,24],"m":"bne","oa":21222,"o":"$52E6"},{"a":21198,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":21200,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":21203,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":21206,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":21209,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":21212,"t":"code","b":[141,11,208],"m":"sta","o":"vic_sprite5_y"},{"a":21215,"t":"code","b":[141,13,208],"m":"sta","o":"vic_sprite6_y"},{"a":21218,"t":"code","b":[141,15,208],"m":"sta","o":"vic_sprite7_y"},{"a":21221,"t":"code","b":[96],"m":"rts"},{"a":21222,"t":"code","b":[169,80],"m":"lda","o":"#$50","x":[21196]},{"a":21224,"t":"code","b":[141,3,208],"m":"sta","o":"vic_sprite1_y"},{"a":21227,"t":"code","b":[141,5,208],"m":"sta","o":"vic_sprite2_y"},{"a":21230,"t":"code","b":[169,122],"m":"lda","o":"#$7A"},{"a":21232,"t":"code","b":[141,7,208],"m":"sta","o":"vic_sprite3_y"},{"a":21235,"t":"code","b":[141,9,208],"m":"sta","o":"vic_sprite4_y"},{"a":21238,"t":"code","b":[169,140],"m":"lda","o":"#$8C"},{"a":21240,"t":"code","b":[141,2,208],"m":"sta","o":"vic_sprite1_x"},{"a":21243,"t":"code","b":[141,6,208],"m":"sta","o":"vic_sprite3_x"},{"a":21246,"t":"code","b":[169,188],"m":"lda","o":"#$BC"},{"a":21248,"t":"code","b":[141,4,208],"m":"sta","o":"vic_sprite2_x"},{"a":21251,"t":"code","b":[141,8,208],"m":"sta","o":"vic_sprite4_x"},{"a":21254,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":21256,"t":"code","b":[141,23,208],"m":"sta","o":"vic_sprite_expand_y"},{"a":21259,"t":"code","b":[141,29,208],"m":"sta","o":"vic_sprite_expand_x"},{"a":21262,"t":"code","b":[162,248],"m":"ldx","o":"#$F8"},{"a":21264,"t":"code","b":[142,249,207],"m":"stx","oa":53241,"o":"$CFF9"},{"a":21267,"t":"code","b":[232],"m":"inx"},{"a":21268,"t":"code","b":[142,250,207],"m":"stx","oa":53242,"o":"$CFFA"},{"a":21271,"t":"code","b":[232],"m":"inx"},{"a":21272,"t":"code","b":[142,251,207],"m":"stx","oa":53243,"o":"$CFFB"},{"a":21275,"t":"code","b":[232],"m":"inx"},{"a":21276,"t":"code","b":[142,252,207],"m":"stx","oa":53244,"o":"$CFFC"},{"a":21279,"t":"code","b":[96],"m":"rts"},{"a":21280,"l":"timer_draw","c":"Draws the three timer digits $0ECB, $0ECA and $0EC9 at $F9D8, $F9E8 and $F9F0 with $5348 (X=2, 1, 0). Called by $4286 on every pass.","t":"code","b":[169,216],"m":"lda","o":"#$D8","x":[17036]},{"a":21282,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":21284,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":21286,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":21288,"t":"code","b":[162,2],"m":"ldx","o":"#$02"},{"a":21290,"t":"code","b":[32,72,83],"m":"jsr","oa":21320,"o":"timer_draw_digit"},{"a":21293,"t":"code","b":[169,232],"m":"lda","o":"#$E8"},{"a":21295,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":21297,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":21299,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":21301,"t":"code","b":[162,1],"m":"ldx","o":"#$01"},{"a":21303,"t":"code","b":[32,72,83],"m":"jsr","oa":21320,"o":"timer_draw_digit"},{"a":21306,"t":"code","b":[169,240],"m":"lda","o":"#$F0"},{"a":21308,"t":"code","b":[133,219],"m":"sta","oa":219,"o":"$DB"},{"a":21310,"t":"code","b":[169,249],"m":"lda","o":"#$F9"},{"a":21312,"t":"code","b":[133,220],"m":"sta","oa":220,"o":"$DC"},{"a":21314,"t":"code","b":[162,0],"m":"ldx","o":"#$00"},{"a":21316,"t":"code","b":[32,72,83],"m":"jsr","oa":21320,"o":"timer_draw_digit"},{"a":21319,"t":"code","b":[96],"m":"rts"},{"a":21320,"l":"timer_draw_digit","c":"Takes the digit at $0EC9 plus X, multiplies by 8 and copies the 8 glyph bytes from the table $0F09 to ($DB). Called three times by $5320.","t":"code","b":[189,201,14],"m":"lda","oa":3785,"o":"counter_hundreds,x","x":[21290,21303,21316]},{"a":21323,"t":"code","b":[10],"m":"asl","o":"a"},{"a":21324,"t":"code","b":[10],"m":"asl","o":"a"},{"a":21325,"t":"code","b":[10],"m":"asl","o":"a"},{"a":21326,"t":"code","b":[170],"m":"tax"},{"a":21327,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":21329,"t":"code","b":[189,9,15],"m":"lda","oa":3849,"o":"digit_glyphs,x","x":[21338]},{"a":21332,"t":"code","b":[145,219],"m":"sta","oa":219,"o":"($DB),y"},{"a":21334,"t":"code","b":[232],"m":"inx"},{"a":21335,"t":"code","b":[200],"m":"iny"},{"a":21336,"t":"code","b":[192,8],"m":"cpy","o":"#$08"},{"a":21338,"t":"code","b":[208,245],"m":"bne","oa":21329,"o":"$5351"},{"a":21340,"t":"code","b":[96],"m":"rts"},{"a":21341,"l":"mask_timer_tick","c":"Counts the three-digit timer $0ECB/$0ECA/$0EC9 down, called by the raster interrupt $51DB while $0F5A is zero. When all three digits are 0 it sets $0F5A to 1 and runs $4880. Otherwise it acts on every second call, using $0F59 (0 gives 1 and a decrement, 1 gives 0): $0EC9 goes down by 1 and when it was 0 becomes 9 and takes 1 off $0ECA, which borrows from $0ECB in the same way. So $0EC9 is the least significant digit.","t":"code","b":[173,201,14],"m":"lda","oa":3785,"o":"counter_hundreds","x":[21042]},{"a":21344,"t":"code","b":[208,19],"m":"bne","oa":21365,"o":"$5375"},{"a":21346,"t":"code","b":[173,202,14],"m":"lda","oa":3786,"o":"counter_tens"},{"a":21349,"t":"code","b":[208,14],"m":"bne","oa":21365,"o":"$5375"},{"a":21351,"t":"code","b":[173,203,14],"m":"lda","oa":3787,"o":"counter_ones"},{"a":21354,"t":"code","b":[208,9],"m":"bne","oa":21365,"o":"$5375"},{"a":21356,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":21358,"t":"code","b":[141,90,15],"m":"sta","oa":3930,"o":"mask_end_flag"},{"a":21361,"t":"code","b":[32,128,72],"m":"jsr","oa":18560,"o":"cursor_home"},{"a":21364,"t":"code","b":[96],"m":"rts"},{"a":21365,"t":"code","b":[174,89,15],"m":"ldx","oa":3929,"o":"timer_skip","x":[21344,21349,21354]},{"a":21368,"t":"code","b":[240,5],"m":"beq","oa":21375,"o":"$537F"},{"a":21370,"t":"code","b":[202],"m":"dex"},{"a":21371,"t":"code","b":[142,89,15],"m":"stx","oa":3929,"o":"timer_skip"},{"a":21374,"t":"code","b":[96],"m":"rts"},{"a":21375,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[21368]},{"a":21377,"t":"code","b":[141,89,15],"m":"sta","oa":3929,"o":"timer_skip"},{"a":21380,"t":"code","b":[173,201,14],"m":"lda","oa":3785,"o":"counter_hundreds"},{"a":21383,"t":"code","b":[240,7],"m":"beq","oa":21392,"o":"$5390"},{"a":21385,"t":"code","b":[56],"m":"sec"},{"a":21386,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":21388,"t":"code","b":[141,201,14],"m":"sta","oa":3785,"o":"counter_hundreds"},{"a":21391,"t":"code","b":[96],"m":"rts"},{"a":21392,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[21383]},{"a":21394,"t":"code","b":[141,201,14],"m":"sta","oa":3785,"o":"counter_hundreds"},{"a":21397,"t":"code","b":[173,202,14],"m":"lda","oa":3786,"o":"counter_tens"},{"a":21400,"t":"code","b":[240,7],"m":"beq","oa":21409,"o":"$53A1"},{"a":21402,"t":"code","b":[56],"m":"sec"},{"a":21403,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":21405,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":21408,"t":"code","b":[96],"m":"rts"},{"a":21409,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[21400]},{"a":21411,"t":"code","b":[141,202,14],"m":"sta","oa":3786,"o":"counter_tens"},{"a":21414,"t":"code","b":[173,203,14],"m":"lda","oa":3787,"o":"counter_ones"},{"a":21417,"t":"code","b":[240,7],"m":"beq","oa":21426,"o":"$53B2"},{"a":21419,"t":"code","b":[56],"m":"sec"},{"a":21420,"t":"code","b":[233,1],"m":"sbc","o":"#$01"},{"a":21422,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":21425,"t":"code","b":[96],"m":"rts"},{"a":21426,"t":"code","b":[169,9],"m":"lda","o":"#$09","x":[21417]},{"a":21428,"t":"code","b":[141,203,14],"m":"sta","oa":3787,"o":"counter_ones"},{"a":21431,"t":"code","b":[96],"m":"rts"},{"a":21432,"l":"char_colour_table","c":"Colour of each screen code, used by $4E39 and $4EA4 to colour the screen. $4F9C sets bit 3 in every byte and 9 in the first $2D entries.","t":"byte","b":[241,177,161,161,1,129,129,1],"x":[20104,20113,20122,20211,20220,20229,20606,20611,20621]},{"a":21440,"t":"byte","b":[129,162,130,242,82,242,2,242]},{"a":21448,"t":"byte","b":[242,2,243,35,19,99,83,131]},{"a":21456,"t":"byte","b":[179,3,83,4,148,116,164,4]},{"a":21464,"t":"byte","b":[244,132,180,180,213,149,245,181]},{"a":21472,"t":"byte","b":[5,181,213,5,245,53,245,245]},{"a":21480,"t":"byte","b":[5,245,245,165,5,245,165,5]},{"a":21488,"t":"byte","b":[245,181,5,21,37,37,181,209]},{"a":21496,"t":"byte","b":[241,33,161,49,161,241,225,241]},{"a":21504,"t":"byte","b":[177,241,161,1,193,145,161,129]},{"a":21512,"t":"byte","b":[241,145,241,1,241,241,241,241]},{"a":21520,"t":"byte","b":[241,241,241,65,241,177,241,241]},{"a":21528,"t":"byte","b":[241,241,241,241,241,241,241,241]},{"a":21536,"t":"byte","b":[33,241,241,241,17,241,241,241]},{"a":21544,"t":"byte","b":[241,241,241,245,242,2,242,34]},{"a":21552,"t":"byte","b":[242,242,242,242,242,226,242,242]},{"a":21560,"t":"byte","b":[242,242,242,242,242,162,242,242]},{"a":21568,"t":"byte","b":[242,242,242,242,242,242,242,178]},{"a":21576,"t":"byte","b":[242,210,242,242,242,242,242,178]},{"a":21584,"t":"byte","b":[242,242,242,242,66,34,178,66]},{"a":21592,"t":"byte","b":[242,178,242,66,242,50,146,2]},{"a":21600,"t":"byte","b":[2,162,162,242,178,242,34,2]},{"a":21608,"t":"byte","b":[2,34,162,242,162,162,210,242]},{"a":21616,"t":"byte","b":[242,242,194,210,178,130,98,178]},{"a":21624,"t":"byte","b":[242,162,18,210,242,130,2,210]},{"a":21632,"t":"byte","b":[242,66,146,242,194,242,146,242]},{"a":21640,"t":"byte","b":[242,66,210,66,2,162,242,66]},{"a":21648,"t":"byte","b":[50,162,242,82,162,2,242,242]},{"a":21656,"t":"byte","b":[18,98,242,146,2,2,34,2]},{"a":21664,"t":"byte","b":[242,2,242,242,34,2,2,34]},{"a":21672,"t":"byte","b":[210,242,162,242,162,130,82,210]},{"a":21680,"t":"byte","b":[146,130,162,2,146,2,178,242]},{"a":21688,"l":"font_saved_a","c":"Two blocks of $88 bytes ($54B8, $5540) exchanged with $C3B0 and $C438 by $4589. Character data; not decoded.","t":"byte","b":[252,204,204,204,252,204,204,0],"x":[17803,17810]},{"a":21696,"t":"byte","b":[252,204,204,240,204,204,252,0]},{"a":21704,"t":"byte","b":[252,204,192,192,192,204,252,0]},{"a":21712,"t":"byte","b":[252,204,204,204,204,204,252,0]},{"a":21720,"t":"byte","b":[252,192,192,240,192,192,252,0]},{"a":21728,"t":"byte","b":[252,192,192,240,192,192,192,0]},{"a":21736,"t":"byte","b":[252,204,192,204,204,204,252,0]},{"a":21744,"t":"byte","b":[204,204,204,252,204,204,204,0]},{"a":21752,"t":"byte","b":[252,48,48,48,48,48,252,0]},{"a":21760,"t":"byte","b":[252,48,48,48,48,48,192,0]},{"a":21768,"t":"byte","b":[204,204,204,240,204,204,204,0]},{"a":21776,"t":"byte","b":[192,192,192,192,192,192,252,0]},{"a":21784,"t":"byte","b":[204,204,252,204,204,204,204,0]},{"a":21792,"t":"byte","b":[252,204,204,204,204,204,204,0]},{"a":21800,"t":"byte","b":[252,204,204,204,204,204,252,0]},{"a":21808,"t":"byte","b":[252,204,204,252,192,192,192,0]},{"a":21816,"t":"byte","b":[252,204,204,252,12,12,12,0]},{"a":21824,"t":"byte","b":[252,204,204,240,204,204,204,0],"x":[17817,17824]},{"a":21832,"t":"byte","b":[252,204,192,252,12,204,252,0]},{"a":21840,"t":"byte","b":[252,48,48,48,48,48,48,0]},{"a":21848,"t":"byte","b":[204,204,204,204,204,204,252,0]},{"a":21856,"t":"byte","b":[204,204,204,204,204,48,48,0]},{"a":21864,"t":"byte","b":[204,204,204,204,204,252,204,0]},{"a":21872,"t":"byte","b":[204,204,204,48,204,204,204,0]},{"a":21880,"t":"byte","b":[204,204,204,252,12,204,252,0]},{"a":21888,"t":"byte","b":[252,12,48,48,192,192,252,0]},{"a":21896,"t":"byte","b":[0,0,0,0,0,48,48,0]},{"a":21904,"t":"byte","b":[0,48,48,0,48,48,0,0]},{"a":21912,"t":"byte","b":[0,0,60,48,60,0,0,0]},{"a":21920,"t":"byte","b":[0,252,252,0,252,252,0,0]},{"a":21928,"t":"byte","b":[252,204,12,60,48,0,48,0]},{"a":21936,"t":"byte","b":[0,0,0,252,252,0,0,0]},{"a":21944,"t":"byte","b":[48,48,48,48,48,0,48,0]},{"a":21952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":21960,"l":"font_saved_b","c":"Two blocks of 256 bytes ($55C8, $56C8) exchanged with $C000 and $C100 by $45C2. Character data; not decoded.","t":"byte","b":[85,0,90,0,89,0,85,0],"x":[17860,17867]},{"a":21968,"t":"byte","b":[85,0,105,0,169,0,85,0]},{"a":21976,"t":"byte","b":[85,0,85,0,149,0,85,0]},{"a":21984,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":21992,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22000,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22008,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22016,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22024,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22032,"t":"byte","b":[85,0,85,0,85,0,84,0]},{"a":22040,"t":"byte","b":[85,0,85,0,64,0,0,0]},{"a":22048,"t":"byte","b":[85,0,0,0,0,0,0,0]},{"a":22056,"t":"byte","b":[85,0,0,0,0,0,0,0]},{"a":22064,"t":"byte","b":[85,0,21,0,1,0,0,0]},{"a":22072,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22080,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22088,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22096,"t":"byte","b":[80,0,80,0,64,0,64,0]},{"a":22104,"t":"byte","b":[0,0,0,0,6,26,26,42]},{"a":22112,"t":"byte","b":[0,0,0,0,64,128,164,191]},{"a":22120,"t":"byte","b":[0,0,0,0,0,6,111,255]},{"a":22128,"t":"byte","b":[0,0,0,0,100,253,254,255]},{"a":22136,"t":"byte","b":[21,0,5,0,5,0,1,64]},{"a":22144,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22152,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22160,"t":"byte","b":[64,0,64,0,80,0,80,0]},{"a":22168,"t":"byte","b":[26,38,26,42,27,107,106,164]},{"a":22176,"t":"byte","b":[239,186,239,171,238,251,255,111]},{"a":22184,"t":"byte","b":[255,239,255,255,191,254,251,233]},{"a":22192,"t":"byte","b":[255,255,255,255,255,255,255,27]},{"a":22200,"t":"byte","b":[65,0,1,0,65,64,129,192]},{"a":22208,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22216,"t":"byte","b":[85,0,85,0,85,0,85,0],"x":[17874,17881]},{"a":22224,"t":"byte","b":[80,0,84,0,84,0,84,0]},{"a":22232,"t":"byte","b":[144,170,163,191,190,191,191,111]},{"a":22240,"t":"byte","b":[27,166,118,122,170,234,234,170]},{"a":22248,"t":"byte","b":[228,146,235,247,250,251,254,254]},{"a":22256,"t":"byte","b":[7,175,114,127,175,255,255,255]},{"a":22264,"t":"byte","b":[193,192,197,192,197,192,197,192]},{"a":22272,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22280,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22288,"t":"byte","b":[84,0,84,0,84,0,85,0]},{"a":22296,"t":"byte","b":[154,102,154,106,90,42,26,42]},{"a":22304,"t":"byte","b":[170,187,187,248,254,254,250,250]},{"a":22312,"t":"byte","b":[255,255,255,139,159,239,239,111]},{"a":22320,"t":"byte","b":[255,255,255,255,255,255,255,255]},{"a":22328,"t":"byte","b":[197,192,133,128,149,0,21,0]},{"a":22336,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22344,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22352,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22360,"t":"byte","b":[26,26,70,6,81,1,84,0]},{"a":22368,"t":"byte","b":[187,134,163,169,171,175,111,47]},{"a":22376,"t":"byte","b":[171,84,246,107,255,255,255,127]},{"a":22384,"t":"byte","b":[254,190,248,232,241,224,197,0]},{"a":22392,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22400,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22408,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22416,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22424,"t":"byte","b":[85,0,85,0,85,0,85,0]},{"a":22432,"t":"byte","b":[75,0,85,0,85,0,85,0]},{"a":22440,"t":"byte","b":[184,0,85,0,85,0,85,0]},{"a":22448,"t":"byte","b":[85,0,106,0,102,0,85,0]},{"a":22456,"t":"byte","b":[85,0,153,0,102,0,85,0]},{"a":22464,"t":"byte","b":[85,0,85,0,149,0,85,0]},{"a":22472,"l":"mask_strip_data","c":"Picture bytes of the mask game's objects. object_slide_in ($4CB4) reads three bytes from here at each step: the address is the object's base ($5810, $5840, $5858 or $5870, set by $4B47 from the tables $4B11 and $4B14) plus the offset from mask_strip_offsets, and the bytes at +0, +8 and +$10 go to three rows of the object's character data. In use are $5810 to $5887, $58A0 to $5917 and $5930 to $59A7 (eight steps of 24 bytes each, in each of the three groups). No traced code reads $57C8 to $580F, $5888 to $589F or $5918 to $592F.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22480,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22488,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22496,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22504,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22512,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":22520,"t":"byte","b":[0,0,0,0,0,1,4,4]},{"a":22528,"t":"byte","b":[0,0,0,0,85,0,0,0]},{"a":22536,"t":"byte","b":[0,0,0,0,64,16,4,4]},{"a":22544,"t":"byte","b":[0,0,0,0,0,1,4,4]},{"a":22552,"t":"byte","b":[0,0,0,0,85,0,0,7]},{"a":22560,"t":"byte","b":[0,0,0,0,64,16,16,132]},{"a":22568,"t":"byte","b":[0,0,0,0,1,4,16,16]},{"a":22576,"t":"byte","b":[0,0,0,0,85,0,0,0]},{"a":22584,"t":"byte","b":[0,0,0,0,0,64,16,16]},{"a":22592,"t":"byte","b":[0,0,0,0,1,4,16,16]},{"a":22600,"t":"byte","b":[0,0,0,0,85,1,4,8]},{"a":22608,"t":"byte","b":[0,0,0,0,0,64,64,16]},{"a":22616,"t":"byte","b":[0,0,0,0,0,1,4,4]},{"a":22624,"t":"byte","b":[0,0,0,0,85,0,0,0]},{"a":22632,"t":"byte","b":[0,0,0,0,64,16,4,132]},{"a":22640,"t":"byte","b":[0,0,0,0,0,0,1,1]},{"a":22648,"t":"byte","b":[0,0,0,0,20,85,149,246]},{"a":22656,"t":"byte","b":[0,0,0,0,0,0,64,80]},{"a":22664,"t":"byte","b":[16,16,16,19,19,19,19,19]},{"a":22672,"t":"byte","b":[15,47,63,63,123,180,254,239]},{"a":22680,"t":"byte","b":[212,244,244,244,244,196,228,244]},{"a":22688,"t":"byte","b":[17,19,19,19,19,19,7,6]},{"a":22696,"t":"byte","b":[255,255,255,191,136,221,239,239]},{"a":22704,"t":"byte","b":[196,212,228,244,180,244,244,228]},{"a":22712,"t":"byte","b":[23,31,31,31,31,19,27,31]},{"a":22720,"t":"byte","b":[240,248,252,252,237,30,191,251]},{"a":22728,"t":"byte","b":[4,4,4,196,196,196,196,196]},{"a":22736,"t":"byte","b":[64,65,95,111,124,127,111,111]},{"a":22744,"t":"byte","b":[60,253,255,254,184,255,255,223]},{"a":22752,"t":"byte","b":[16,16,16,132,196,196,196,196]},{"a":22760,"t":"byte","b":[18,19,19,16,17,19,7,7]},{"a":22768,"t":"byte","b":[6,250,254,195,8,12,239,255]},{"a":22776,"t":"byte","b":[129,145,161,1,17,52,244,244]},{"a":22784,"t":"byte","b":[7,7,27,31,63,63,63,47]},{"a":22792,"t":"byte","b":[254,255,255,255,255,255,140,255]},{"a":22800,"t":"byte","b":[144,164,164,232,232,232,184,248]},{"a":22808,"t":"byte","b":[18,5,4,28,127,255,255,255]},{"a":22816,"t":"byte","b":[255,255,190,63,11,128,208,240]},{"a":22824,"t":"byte","b":[116,244,52,240,224,52,189,255]},{"a":22832,"t":"byte","b":[2,1,1,6,63,255,255,255]},{"a":22840,"t":"byte","b":[247,255,217,255,127,149,192,192]},{"a":22848,"t":"byte","b":[224,208,208,212,126,191,255,255]},{"a":22856,"t":"byte","b":[29,31,28,15,11,28,126,255]},{"a":22864,"t":"byte","b":[255,255,190,252,224,2,7,15]},{"a":22872,"t":"byte","b":[132,80,16,52,253,255,255,255]},{"a":22880,"t":"byte","b":[95,75,3,16,208,208,208,208]},{"a":22888,"t":"byte","b":[255,155,254,185,0,0,1,3]},{"a":22896,"t":"byte","b":[132,68,20,52,125,253,253,253]},{"a":22904,"t":"byte","b":[7,2,2,9,63,127,255,255]},{"a":22912,"t":"byte","b":[243,255,197,187,126,128,192,192]},{"a":22920,"t":"byte","b":[228,160,144,136,61,191,255,255]},{"a":22928,"t":"byte","b":[31,15,11,7,62,255,255,255]},{"a":22936,"t":"byte","b":[191,247,255,243,251,62,209,255]},{"a":22944,"t":"byte","b":[164,224,224,160,156,191,255,255]},{"a":22952,"l":"story_screen","c":"Swaps the character data with swap_font_a ($4589), runs the story-text routine $5AC4, ORs $40 into $D011 and swaps the characters back with $4589; continue_text ($59B9) follows. No traced code calls it.","t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":22955,"t":"code","b":[32,196,90],"m":"jsr","oa":23236,"o":"story_text_type"},{"a":22958,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":22961,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":22963,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":22966,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":22969,"l":"continue_text","c":"Draws the continue screen: the text at $5A05 at $CD49 and the text at $5A1C at $CF8C (a $20 code gives $97, others get $75 added; both end at $FF), then the digit $0A12 plus $98 at $CF94 and the countdown digit $5A04 plus $98 at $CE1C. Called by $5A34.","t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[23173]},{"a":22971,"t":"code","b":[185,5,90],"m":"lda","oa":23045,"o":"text_press_fire_b,y","x":[22994]},{"a":22974,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":22976,"t":"code","b":[240,19],"m":"beq","oa":22997,"o":"$59D5"},{"a":22978,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":22980,"t":"code","b":[208,5],"m":"bne","oa":22987,"o":"$59CB"},{"a":22982,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":22984,"t":"code","b":[76,206,89],"m":"jmp","oa":22990,"o":"$59CE"},{"a":22987,"t":"code","b":[24],"m":"clc","x":[22980]},{"a":22988,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":22990,"t":"code","b":[153,73,205],"m":"sta","oa":52553,"o":"$CD49,y","x":[22984]},{"a":22993,"t":"code","b":[200],"m":"iny"},{"a":22994,"t":"code","b":[76,187,89],"m":"jmp","oa":22971,"o":"$59BB"},{"a":22997,"t":"code","b":[160,0],"m":"ldy","o":"#$00","x":[22976]},{"a":22999,"t":"code","b":[185,28,90],"m":"lda","oa":23068,"o":"text_credits,y","x":[23022]},{"a":23002,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":23004,"t":"code","b":[240,19],"m":"beq","oa":23025,"o":"$59F1"},{"a":23006,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":23008,"t":"code","b":[208,5],"m":"bne","oa":23015,"o":"$59E7"},{"a":23010,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":23012,"t":"code","b":[76,234,89],"m":"jmp","oa":23018,"o":"$59EA"},{"a":23015,"t":"code","b":[24],"m":"clc","x":[23008]},{"a":23016,"t":"code","b":[105,117],"m":"adc","o":"#$75"},{"a":23018,"t":"code","b":[153,140,207],"m":"sta","oa":53132,"o":"$CF8C,y","x":[23012]},{"a":23021,"t":"code","b":[200],"m":"iny"},{"a":23022,"t":"code","b":[76,215,89],"m":"jmp","oa":22999,"o":"$59D7"},{"a":23025,"t":"code","b":[173,18,10],"m":"lda","oa":2578,"o":"credits","x":[23004]},{"a":23028,"t":"code","b":[24],"m":"clc"},{"a":23029,"t":"code","b":[105,152],"m":"adc","o":"#$98"},{"a":23031,"t":"code","b":[141,148,207],"m":"sta","oa":53140,"o":"$CF94"},{"a":23034,"t":"code","b":[173,4,90],"m":"lda","oa":23044,"o":"continue_count"},{"a":23037,"t":"code","b":[24],"m":"clc"},{"a":23038,"t":"code","b":[105,152],"m":"adc","o":"#$98"},{"a":23040,"t":"code","b":[141,28,206],"m":"sta","oa":52764,"o":"$CE1C"},{"a":23043,"t":"code","b":[96],"m":"rts"},{"a":23044,"l":"continue_count","c":"Countdown digit 9 to 0 of the continue screen, shown by $59B9 and counted down by $5A34.","t":"byte","b":[0],"x":[23034,23170,23204,23210]},{"a":23045,"l":"text_press_fire_b","c":"Screen-code text PRESS FIRE TO CONTINUE ending in $FF, drawn by $59B9 at $CD49.","t":"byte","b":[16,18,5,19,19,32,6,9],"x":[22971]},{"a":23053,"t":"byte","b":[18,5,32,20,15,32,3,15]},{"a":23061,"t":"byte","b":[14,20,9,14,21,5,255]},{"a":23068,"l":"text_credits","c":"Screen-code text CREDITS followed by spaces and $FF, drawn by $59B9 at $CF8C.","t":"byte","b":[3,18,5,4,9,20,19,32],"x":[22999]},{"a":23076,"t":"byte","b":[32,32,32,32,32,32,32,32]},{"a":23084,"t":"byte","b":[32,32,32,32,32,32,255]},{"a":23091,"l":"continue_flag","c":"Read by the main loop at $0A67 after the call of $5A34; when non-zero the main loop restarts at $0A23. $5A34 itself is not annotated here.","t":"byte","b":[0],"x":[2663,23124,23198]},{"a":23092,"l":"continue_screen","c":"Continue screen, called by the main loop at $0A64 when $0A12 is non-zero. Disables interrupts, sets $01=$35, the video registers as in $263D, clears $5A33 and the key code $2582, the border and background and the seven digits $0A00-$0A06, swaps with $4589, fills the screen with $97 and colour RAM with $0F. It counts $5A04 down from 9 (with $59B9 and two $FF waits for each step); if fire is pressed it takes 1 off $0A12, sets $5A33 to 1 and stops. When the count reaches 0 it stops with $5A33 still 0. It swaps back, clears the screen and runs $0EA7.","t":"code","b":[120],"m":"sei","x":[2660]},{"a":23093,"t":"code","b":[169,53],"m":"lda","o":"#$35"},{"a":23095,"t":"code","b":[133,1],"m":"sta","oa":1,"o":"processor_port"},{"a":23097,"t":"code","b":[169,48],"m":"lda","o":"#$30"},{"a":23099,"t":"code","b":[141,24,208],"m":"sta","o":"vic_memory"},{"a":23102,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":23105,"t":"code","b":[41,216],"m":"and","o":"#$D8"},{"a":23107,"t":"code","b":[9,19],"m":"ora","o":"#$13"},{"a":23109,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":23112,"t":"code","b":[173,22,208],"m":"lda","o":"vic_control2"},{"a":23115,"t":"code","b":[41,248],"m":"and","o":"#$F8"},{"a":23117,"t":"code","b":[9,24],"m":"ora","o":"#$18"},{"a":23119,"t":"code","b":[141,22,208],"m":"sta","o":"vic_control2"},{"a":23122,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":23124,"t":"code","b":[141,51,90],"m":"sta","oa":23091,"o":"continue_flag"},{"a":23127,"t":"code","b":[141,130,37],"m":"sta","oa":9602,"o":"key_code"},{"a":23130,"t":"code","b":[141,32,208],"m":"sta","o":"vic_border"},{"a":23133,"t":"code","b":[141,33,208],"m":"sta","o":"vic_background0"},{"a":23136,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":23138,"t":"code","b":[152],"m":"tya"},{"a":23139,"t":"code","b":[153,0,10],"m":"sta","oa":2560,"o":"score_digits,y","x":[23145]},{"a":23142,"t":"code","b":[200],"m":"iny"},{"a":23143,"t":"code","b":[192,7],"m":"cpy","o":"#$07"},{"a":23145,"t":"code","b":[208,248],"m":"bne","oa":23139,"o":"$5A63"},{"a":23147,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":23150,"t":"code","b":[169,151],"m":"lda","o":"#$97"},{"a":23152,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":23155,"t":"code","b":[169,15],"m":"lda","o":"#$0F"},{"a":23157,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":23160,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1"},{"a":23163,"t":"code","b":[41,191],"m":"and","o":"#$BF"},{"a":23165,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":23168,"t":"code","b":[169,9],"m":"lda","o":"#$09"},{"a":23170,"t":"code","b":[141,4,90],"m":"sta","oa":23044,"o":"continue_count"},{"a":23173,"t":"code","b":[32,185,89],"m":"jsr","oa":22969,"o":"continue_text","x":[23213]},{"a":23176,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":23178,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23181,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":23183,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23186,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a"},{"a":23189,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":23191,"t":"code","b":[208,11],"m":"bne","oa":23204,"o":"$5AA4"},{"a":23193,"t":"code","b":[206,18,10],"m":"dec","oa":2578,"o":"credits"},{"a":23196,"t":"code","b":[169,1],"m":"lda","o":"#$01"},{"a":23198,"t":"code","b":[141,51,90],"m":"sta","oa":23091,"o":"continue_flag"},{"a":23201,"t":"code","b":[76,176,90],"m":"jmp","oa":23216,"o":"$5AB0"},{"a":23204,"t":"code","b":[174,4,90],"m":"ldx","oa":23044,"o":"continue_count","x":[23191]},{"a":23207,"t":"code","b":[240,7],"m":"beq","oa":23216,"o":"$5AB0"},{"a":23209,"t":"code","b":[202],"m":"dex"},{"a":23210,"t":"code","b":[142,4,90],"m":"stx","oa":23044,"o":"continue_count"},{"a":23213,"t":"code","b":[76,133,90],"m":"jmp","oa":23173,"o":"$5A85"},{"a":23216,"t":"code","b":[173,17,208],"m":"lda","o":"vic_control1","x":[23201,23207]},{"a":23219,"t":"code","b":[9,64],"m":"ora","o":"#$40"},{"a":23221,"t":"code","b":[141,17,208],"m":"sta","o":"vic_control1"},{"a":23224,"t":"code","b":[32,137,69],"m":"jsr","oa":17801,"o":"swap_font_a"},{"a":23227,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":23229,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":23232,"t":"code","b":[32,167,14],"m":"jsr","oa":3751,"o":"draw_bottom_rows"},{"a":23235,"t":"code","b":[96],"m":"rts"},{"a":23236,"l":"story_text_type","c":"Types the story text at $5B58 on the screen, one character at a time. Sets the screen pointer $14/$15 to $CC56 and the index $4F0F to 0, waits, fills the screen $CC00 with 0 and colour RAM with 7, and sets the counter $4F10 to $1E. Each character takes a delay of $32 ($0E92): a $20 code gives 0 and any other code gets $66 added. While $4F10 is above 0 the fire button ($DC00 bit 4) is ignored; after $1E characters a press of fire jumps to the end. A $FF ends a line (the pointer moves down $50 bytes, two screen rows) and a second $FF ends the text; the routine then waits for a fire press, sets $4F9B to 1 and waits twice $FF. Called only by $59A8, which nothing calls.","t":"code","b":[169,86],"m":"lda","o":"#$56","x":[22955]},{"a":23238,"t":"code","b":[133,20],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":23240,"t":"code","b":[169,204],"m":"lda","o":"#$CC"},{"a":23242,"t":"code","b":[133,21],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":23244,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":23246,"t":"code","b":[141,15,79],"m":"sta","oa":20239,"o":"text_pos"},{"a":23249,"t":"code","b":[169,20],"m":"lda","o":"#$14"},{"a":23251,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23254,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":23256,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":23258,"t":"code","b":[32,92,14],"m":"jsr","oa":3676,"o":"fill_screen_cc00"},{"a":23261,"t":"code","b":[169,7],"m":"lda","o":"#$07"},{"a":23263,"t":"code","b":[32,128,14],"m":"jsr","oa":3712,"o":"fill_colour_ram"},{"a":23266,"t":"code","b":[169,30],"m":"lda","o":"#$1E"},{"a":23268,"t":"code","b":[141,16,79],"m":"sta","oa":20240,"o":"text_skip_count"},{"a":23271,"t":"code","b":[174,16,79],"m":"ldx","oa":20240,"o":"text_skip_count","x":[23329,23358]},{"a":23274,"t":"code","b":[240,7],"m":"beq","oa":23283,"o":"$5AF3"},{"a":23276,"t":"code","b":[202],"m":"dex"},{"a":23277,"t":"code","b":[142,16,79],"m":"stx","oa":20240,"o":"text_skip_count"},{"a":23280,"t":"code","b":[76,250,90],"m":"jmp","oa":23290,"o":"$5AFA"},{"a":23283,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[23274]},{"a":23286,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":23288,"t":"code","b":[240,78],"m":"beq","oa":23368,"o":"$5B48"},{"a":23290,"t":"code","b":[140,3,91],"m":"sty","oa":23299,"o":"$5B03","x":[23280]},{"a":23293,"t":"code","b":[169,50],"m":"lda","o":"#$32"},{"a":23295,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23298,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":23300,"t":"code","b":[174,15,79],"m":"ldx","oa":20239,"o":"text_pos"},{"a":23303,"t":"code","b":[189,88,91],"m":"lda","oa":23384,"o":"story_text,x"},{"a":23306,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":23308,"t":"code","b":[240,22],"m":"beq","oa":23332,"o":"$5B24"},{"a":23310,"t":"code","b":[201,32],"m":"cmp","o":"#$20"},{"a":23312,"t":"code","b":[208,5],"m":"bne","oa":23319,"o":"$5B17"},{"a":23314,"t":"code","b":[169,0],"m":"lda","o":"#$00"},{"a":23316,"t":"code","b":[76,26,91],"m":"jmp","oa":23322,"o":"$5B1A"},{"a":23319,"t":"code","b":[24],"m":"clc","x":[23312]},{"a":23320,"t":"code","b":[105,102],"m":"adc","o":"#$66"},{"a":23322,"t":"code","b":[145,20],"m":"sta","oa":20,"o":"(load_pointer_lo),y","x":[23316]},{"a":23324,"t":"code","b":[200],"m":"iny"},{"a":23325,"t":"code","b":[232],"m":"inx"},{"a":23326,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":23329,"t":"code","b":[76,231,90],"m":"jmp","oa":23271,"o":"$5AE7"},{"a":23332,"t":"code","b":[232],"m":"inx","x":[23308]},{"a":23333,"t":"code","b":[142,15,79],"m":"stx","oa":20239,"o":"text_pos"},{"a":23336,"t":"code","b":[189,88,91],"m":"lda","oa":23384,"o":"story_text,x"},{"a":23339,"t":"code","b":[201,255],"m":"cmp","o":"#$FF"},{"a":23341,"t":"code","b":[240,18],"m":"beq","oa":23361,"o":"$5B41"},{"a":23343,"t":"code","b":[24],"m":"clc"},{"a":23344,"t":"code","b":[165,20],"m":"lda","oa":20,"o":"load_pointer_lo"},{"a":23346,"t":"code","b":[105,80],"m":"adc","o":"#$50"},{"a":23348,"t":"code","b":[133,20],"m":"sta","oa":20,"o":"load_pointer_lo"},{"a":23350,"t":"code","b":[165,21],"m":"lda","oa":21,"o":"load_pointer_hi"},{"a":23352,"t":"code","b":[105,0],"m":"adc","o":"#$00"},{"a":23354,"t":"code","b":[133,21],"m":"sta","oa":21,"o":"load_pointer_hi"},{"a":23356,"t":"code","b":[160,0],"m":"ldy","o":"#$00"},{"a":23358,"t":"code","b":[76,231,90],"m":"jmp","oa":23271,"o":"$5AE7"},{"a":23361,"t":"code","b":[173,0,220],"m":"lda","o":"cia1_port_a","x":[23341,23366]},{"a":23364,"t":"code","b":[41,16],"m":"and","o":"#$10"},{"a":23366,"t":"code","b":[208,249],"m":"bne","oa":23361,"o":"$5B41"},{"a":23368,"t":"code","b":[169,1],"m":"lda","o":"#$01","x":[23288]},{"a":23370,"t":"code","b":[141,155,79],"m":"sta","oa":20379,"o":"typing_done"},{"a":23373,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":23375,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23378,"t":"code","b":[169,255],"m":"lda","o":"#$FF"},{"a":23380,"t":"code","b":[32,146,14],"m":"jsr","oa":3730,"o":"delay"},{"a":23383,"t":"code","b":[96],"m":"rts"},{"a":23384,"l":"story_text","c":"Screen-code text typed by $5AC4: letters are the codes 1 to 26, $20 is a space, $1B is a stop (shown here as a full stop) and $FF ends a line; the last line is followed by a second $FF. The nine lines are \" LEVEL TWO.\", \" DARKMAN IS DISCOVERED BEFORE\", \" HIS PLAN IS  HALF GROWN. HIS\", \" FIANCE JULIE HAS BEEN SEIZED\", \" BY  STRACK  AND  DARKMAN  IS\", \" CORNERED IN  HIS LAIR. FIRED\", \" BY GRIEF DARKMAN FIGHTS WITH\", \" INHUMAN FEROCITY TO ESCAPE..\", \" END OF LINE...\".","t":"byte","b":[32,12,5,22,5,12,32,20],"x":[23303,23336]},{"a":23392,"t":"byte","b":[23,15,27,255,32,4,1,18]},{"a":23400,"t":"byte","b":[11,13,1,14,32,9,19,32]},{"a":23408,"t":"byte","b":[4,9,19,3,15,22,5,18]},{"a":23416,"t":"byte","b":[5,4,32,2,5,6,15,18]},{"a":23424,"t":"byte","b":[5,255,32,8,9,19,32,16]},{"a":23432,"t":"byte","b":[12,1,14,32,9,19,32,32]},{"a":23440,"t":"byte","b":[8,1,12,6,32,7,18,15]},{"a":23448,"t":"byte","b":[23,14,27,32,8,9,19,255]},{"a":23456,"t":"byte","b":[32,6,9,1,14,3,5,32]},{"a":23464,"t":"byte","b":[10,21,12,9,5,32,8,1]},{"a":23472,"t":"byte","b":[19,32,2,5,5,14,32,19]},{"a":23480,"t":"byte","b":[5,9,26,5,4,255,32,2]},{"a":23488,"t":"byte","b":[25,32,32,19,20,18,1,3]},{"a":23496,"t":"byte","b":[11,32,32,1,14,4,32,32]},{"a":23504,"t":"byte","b":[4,1,18,11,13,1,14,32]},{"a":23512,"t":"byte","b":[32,9,19,255,32,3,15,18]},{"a":23520,"t":"byte","b":[14,5,18,5,4,32,9,14]},{"a":23528,"t":"byte","b":[32,32,8,9,19,32,12,1]},{"a":23536,"t":"byte","b":[9,18,27,32,6,9,18,5]},{"a":23544,"t":"byte","b":[4,255,32,2,25,32,7,18]},{"a":23552,"t":"byte","b":[9,5,6,32,4,1,18,11]},{"a":23560,"t":"byte","b":[13,1,14,32,6,9,7,8]},{"a":23568,"t":"byte","b":[20,19,32,23,9,20,8,255]},{"a":23576,"t":"byte","b":[32,9,14,8,21,13,1,14]},{"a":23584,"t":"byte","b":[32,6,5,18,15,3,9,20]},{"a":23592,"t":"byte","b":[25,32,20,15,32,5,19,3]},{"a":23600,"t":"byte","b":[1,16,5,27,27,255,32,5]},{"a":23608,"t":"byte","b":[14,4,32,15,6,32,12,9]},{"a":23616,"t":"byte","b":[14,5,27,27,27,255,255]},{"a":23623,"l":"tile_chars_top","c":"Upper character of each map cell half, indexed by 2 x map byte + $10E5 in $112B; it ends at the next table, so its true length may be shorter.","t":"byte","b":[0,1,2,3,4,5,6,7],"x":[4405]},{"a":23631,"t":"byte","b":[8,9,10,11,12,13,14,15]},{"a":23639,"t":"byte","b":[16,17,18,19,20,21,22,23]},{"a":23647,"t":"byte","b":[24,25,26,27,28,29,30,31]},{"a":23655,"t":"byte","b":[32,33,34,35,36,37,38,39]},{"a":23663,"t":"byte","b":[80,81,82,83,84,85,86,87]},{"a":23671,"t":"byte","b":[88,89,90,91,92,93,94,95]},{"a":23679,"t":"byte","b":[96,97,98,99,100,101,102,103]},{"a":23687,"t":"byte","b":[104,105,106,107,108,109,110,111]},{"a":23695,"t":"byte","b":[112,113,114,115,116,117,118,119]},{"a":23703,"t":"byte","b":[160,161,162,163,164,165,166,167]},{"a":23711,"t":"byte","b":[168,169,170,171,172,173,174,175]},{"a":23719,"t":"byte","b":[176,177,178,179,180,181,182,183]},{"a":23727,"t":"byte","b":[184,185,186,187,188,189,190,191]},{"a":23735,"t":"byte","b":[192,193,194,195,196,197,198,199]},{"a":23743,"t":"byte","b":[240,241,242,243,244,245,246,248]},{"a":23751,"t":"byte","b":[255,0,255,0,255,0,255,0]},{"a":23759,"t":"byte","b":[255,0,255,0,255,0,255,0]},{"a":23767,"t":"byte","b":[255,0,255,0,255,0,255,0]},{"a":23775,"t":"byte","b":[255,0,255,0,255,0]},{"a":23781,"l":"tile_chars_bottom","c":"Lower character of each map cell half, indexed like $5C47 in $112B; it ends at the next table, so its true length may be shorter.","t":"byte","b":[40,41,42,43,44,45,46,47],"x":[4420]},{"a":23789,"t":"byte","b":[48,49,50,51,52,53,54,55]},{"a":23797,"t":"byte","b":[56,57,58,59,60,61,62,63]},{"a":23805,"t":"byte","b":[64,65,66,67,68,69,70,71]},{"a":23813,"t":"byte","b":[72,73,74,75,76,77,78,79]},{"a":23821,"t":"byte","b":[120,121,122,123,124,125,126,127]},{"a":23829,"t":"byte","b":[128,129,130,131,132,133,134,135]},{"a":23837,"t":"byte","b":[136,137,138,139,140,141,142,143]},{"a":23845,"t":"byte","b":[144,145,146,147,148,149,150,151]},{"a":23853,"t":"byte","b":[152,153,154,155,156,157,158,159]},{"a":23861,"t":"byte","b":[200,201,202,203,204,205,206,207]},{"a":23869,"t":"byte","b":[208,209,210,211,212,213,214,215]},{"a":23877,"t":"byte","b":[216,217,218,219,220,221,222,223]},{"a":23885,"t":"byte","b":[224,225,226,227,228,229,230,231]},{"a":23893,"t":"byte","b":[232,233,234,235,236,237,238,239]},{"a":23901,"t":"byte","b":[249,250,251,252,253,254,255]},{"a":23908,"l":"bottom_chars","c":"200 bytes copied to $CEF7 by $0EA7.","t":"byte","b":[0,139,184,28,188,189,178,178],"x":[3759]},{"a":23916,"t":"byte","b":[188,28,191,188,187,185,184,139]},{"a":23924,"t":"byte","b":[139,140,156,155,156,188,188,203]},{"a":23932,"t":"byte","b":[191,191,191,203,207,207,204,203]},{"a":23940,"t":"byte","b":[203,175,177,177,177,161,161,161]},{"a":23948,"t":"byte","b":[161,137,137,251,27,194,29,17]},{"a":23956,"t":"byte","b":[17,17,17,203,203,203,185,139]},{"a":23964,"t":"byte","b":[184,27,251,27,251,207,204,28]},{"a":23972,"t":"byte","b":[251,251,31,188,188,91,91,91]},{"a":23980,"t":"byte","b":[91,177,202,251,191,186,186,186]},{"a":23988,"t":"byte","b":[186,139,139,191,191,191,191,191]},{"a":23996,"t":"byte","b":[191,191,191,188,191,187,137,139]},{"a":24004,"t":"byte","b":[137,193,193,193,193,193,193,193]},{"a":24012,"t":"byte","b":[193,193,193,203,193,47,44,44]},{"a":24020,"t":"byte","b":[43,177,172,171,251,246,250,250]},{"a":24028,"t":"byte","b":[250,137,139,252,113,113,113,113]},{"a":24036,"t":"byte","b":[113,113,113,27,22,25,152,184]},{"a":24044,"t":"byte","b":[184,188,188,191,191,252,252,188]},{"a":24052,"t":"byte","b":[191,187,43,44,188,191,188,188]},{"a":24060,"t":"byte","b":[187,177,187,187,107,102,22,22]},{"a":24068,"t":"byte","b":[22,27,185,43,135,129,129,129]},{"a":24076,"t":"byte","b":[129,129,129,98,150,98,137,185]},{"a":24084,"t":"byte","b":[185,187,187,22,30,207,251,251]},{"a":24092,"t":"byte","b":[251,251,251,38,43,43,43,43]},{"a":24100,"t":"byte","b":[43,33,43,43,33,33,33,33]},{"a":24108,"l":"bottom_colours","c":"200 bytes copied to colour RAM $DAF7 by $0EA7.","t":"byte","b":[0,9,9,15,207,5,185,9],"x":[3753]},{"a":24116,"t":"byte","b":[107,15,12,15,15,8,9,9]},{"a":24124,"t":"byte","b":[9,11,11,12,11,207,11,191]},{"a":24132,"t":"byte","b":[12,12,12,15,1,204,15,44]},{"a":24140,"t":"byte","b":[12,1,10,11,11,6,15,15]},{"a":24148,"t":"byte","b":[15,11,11,12,12,1,188,12]},{"a":24156,"t":"byte","b":[140,12,172,15,12,12,168,9]},{"a":24164,"t":"byte","b":[9,15,12,15,44,11,11,15]},{"a":24172,"t":"byte","b":[12,12,235,15,15,177,241,129]},{"a":24180,"t":"byte","b":[81,10,251,44,12,11,161,1]},{"a":24188,"t":"byte","b":[1,9,9,1,1,1,1,1]},{"a":24196,"t":"byte","b":[177,1,129,15,1,1,203,9]},{"a":24204,"t":"byte","b":[11,175,15,15,15,15,47,15]},{"a":24212,"t":"byte","b":[15,15,15,15,15,12,15,11]},{"a":24220,"t":"byte","b":[11,10,11,12,12,10,1,1]},{"a":24228,"t":"byte","b":[1,11,9,11,12,60,12,12]},{"a":24236,"t":"byte","b":[12,12,12,14,14,178,11,9]},{"a":24244,"t":"byte","b":[9,11,15,1,12,11,11,191]},{"a":24252,"t":"byte","b":[12,140,6,15,15,12,11,11]},{"a":24260,"t":"byte","b":[11,11,44,12,12,12,106,10]},{"a":24268,"t":"byte","b":[10,9,8,9,33,7,7,7]},{"a":24276,"t":"byte","b":[183,7,135,9,2,9,194,8]},{"a":24284,"t":"byte","b":[187,9,108,14,6,11,12,12]},{"a":24292,"t":"byte","b":[44,12,6,11,9,9,9,201]},{"a":24300,"t":"byte","b":[9,191,1,1,1,1,15,15]},{"a":24308,"l":"tile_colour_src","c":"256 bytes copied to $BF00 by $0C37.","t":"byte","b":[22,22,18,18,18,18,194,242],"x":[3129]},{"a":24316,"t":"byte","b":[18,210,18,2,17,65,18,18]},{"a":24324,"t":"byte","b":[34,18,98,162,129,17,247,39]},{"a":24332,"t":"byte","b":[55,7,1,1,225,1,97,241]},{"a":24340,"t":"byte","b":[1,33,1,1,97,1,17,1]},{"a":24348,"t":"byte","b":[6,6,1,1,1,17,6,22]},{"a":24356,"t":"byte","b":[6,22,6,17,5,181,5,101]},{"a":24364,"t":"byte","b":[1,1,2,2,4,102,1,1]},{"a":24372,"t":"byte","b":[22,6,17,1,1,33,1,1]},{"a":24380,"t":"byte","b":[1,1,1,193,1,17,1,1]},{"a":24388,"t":"byte","b":[1,1,1,1,1,1,178,2]},{"a":24396,"t":"byte","b":[129,1,161,3,22,1,177,6]},{"a":24404,"t":"byte","b":[6,22,6,6,6,102,6,38]},{"a":24412,"t":"byte","b":[4,22,4,6,5,21,1,1]},{"a":24420,"t":"byte","b":[3,3,3,3,22,6,17,6]},{"a":24428,"t":"byte","b":[1,17,1,1,1,17,17,17]},{"a":24436,"t":"byte","b":[17,17,17,19,102,17,193,22]},{"a":24444,"t":"byte","b":[22,22,22,22,22,22,22,22]},{"a":24452,"t":"byte","b":[20,22,20,6,21,101,17,193]},{"a":24460,"t":"byte","b":[19,3,19,17,22,6,22,22]},{"a":24468,"t":"byte","b":[22,22,17,17,6,22,102,22]},{"a":24476,"t":"byte","b":[22,22,22,22,22,22,22,22]},{"a":24484,"t":"byte","b":[161,17,17,17,17,177,17,17]},{"a":24492,"t":"byte","b":[17,17,17,17,17,17,129,17]},{"a":24500,"t":"byte","b":[22,22,22,22,22,246,102,166]},{"a":24508,"t":"byte","b":[19,230,1,17,245,101,133,133]},{"a":24516,"t":"byte","b":[53,21,21,21,229,5,54,22]},{"a":24524,"t":"byte","b":[129,1,161,33,1,225,1,241]},{"a":24532,"t":"byte","b":[1,129,1,1,1,17,1,193]},{"a":24540,"t":"byte","b":[6,22,6,22,6,22,6,22]},{"a":24548,"t":"byte","b":[6,182,6,6,22,22,6,22]},{"a":24556,"t":"byte","b":[6,182,6,6,6,22,6,6]},{"a":24564,"t":"gap","n":32780},{"a":57344,"l":"player_shapes_a","c":"Sprite shapes for pointers $80 to $8F (1,024 bytes; pointer p is at $C000 + 64 x p). player_sprites ($1AE0) draws the player as three sprites with the pointers F ($CFF8), F+$0D ($CFF9) and F-$17 ($CFFA), F being the frame number $1ADB. This block holds the third sprite: $80 to $85 when walking or standing facing right (F = $97 to $9C, standing $9A giving $83) and $86 to $8B facing left (F = $9D to $A2, standing $A0 giving $89). No traced level 3 code sets $8C to $8F.","t":"byte","b":[0,0,0,0,8,128,0,34]},{"a":57352,"t":"byte","b":[0,0,130,128,2,0,128,0]},{"a":57360,"t":"byte","b":[160,160,10,40,160,10,168,128]},{"a":57368,"t":"byte","b":[8,160,160,8,40,160,8,40]},{"a":57376,"t":"byte","b":[160,8,32,160,0,32,168,8]},{"a":57384,"t":"byte","b":[128,32,8,128,32,42,0,8]},{"a":57392,"t":"byte","b":[32,8,8,40,40,8,2,170]},{"a":57400,"t":"byte","b":[40,128,0,8,160,0,0,6]},{"a":57408,"t":"byte","b":[0,34,0,0,136,0,2,10]},{"a":57416,"t":"byte","b":[0,8,2,0,34,130,160,40]},{"a":57424,"t":"byte","b":[32,128,42,168,128,34,160,128]},{"a":57432,"t":"byte","b":[32,160,128,42,168,128,10,0]},{"a":57440,"t":"byte","b":[128,8,32,128,10,128,128,10]},{"a":57448,"t":"byte","b":[128,128,42,160,0,42,128,128]},{"a":57456,"t":"byte","b":[2,2,128,32,2,0,0,0]},{"a":57464,"t":"byte","b":[0,8,40,0,0,2,0,11]},{"a":57472,"t":"byte","b":[0,0,0,0,42,0,2,138]},{"a":57480,"t":"byte","b":[0,0,0,0,2,2,32,8]},{"a":57488,"t":"byte","b":[160,128,34,168,128,42,168,128]},{"a":57496,"t":"byte","b":[34,160,128,32,168,128,40,168]},{"a":57504,"t":"byte","b":[128,32,40,128,0,40,32,2]},{"a":57512,"t":"byte","b":[160,0,2,160,0,2,160,0]},{"a":57520,"t":"byte","b":[10,168,0,8,136,0,10,160]},{"a":57528,"t":"byte","b":[0,2,128,0,0,32,0,32]},{"a":57536,"t":"byte","b":[0,0,0,0,8,128,0,34]},{"a":57544,"t":"byte","b":[0,0,128,0,0,0,136,0]},{"a":57552,"t":"byte","b":[160,160,10,136,128,42,168,160]},{"a":57560,"t":"byte","b":[42,160,160,40,168,160,40,168]},{"a":57568,"t":"byte","b":[136,40,168,160,0,168,0,2]},{"a":57576,"t":"byte","b":[168,0,10,160,0,34,160,0]},{"a":57584,"t":"byte","b":[40,128,0,42,8,0,10,160]},{"a":57592,"t":"byte","b":[0,10,128,8,160,0,0,167]},{"a":57600,"t":"byte","b":[0,34,0,0,136,0,2,0]},{"a":57608,"t":"byte","b":[0,0,2,0,2,130,160,42]},{"a":57616,"t":"byte","b":[160,32,168,160,160,130,160,160]},{"a":57624,"t":"byte","b":[162,160,136,162,32,160,2,160]},{"a":57632,"t":"byte","b":[128,10,160,128,42,160,128,42]},{"a":57640,"t":"byte","b":[128,128,10,128,128,10,128,128]},{"a":57648,"t":"byte","b":[8,162,0,42,130,128,42,0]},{"a":57656,"t":"byte","b":[0,40,0,0,0,2,0,106]},{"a":57664,"t":"byte","b":[0,0,0,0,42,0,2,128]},{"a":57672,"t":"byte","b":[0,0,0,0,10,2,128,8]},{"a":57680,"t":"byte","b":[128,128,34,160,128,170,160,128]},{"a":57688,"t":"byte","b":[130,160,128,162,160,128,162,160]},{"a":57696,"t":"byte","b":[160,128,128,128,2,128,32,2]},{"a":57704,"t":"byte","b":[128,40,2,160,8,10,0,8]},{"a":57712,"t":"byte","b":[10,128,40,40,0,168,42,40]},{"a":57720,"t":"byte","b":[0,40,0,0,0,32,0,160]},{"a":57728,"t":"byte","b":[0,0,0,2,32,0,0,136]},{"a":57736,"t":"byte","b":[0,2,130,0,2,0,128,10]},{"a":57744,"t":"byte","b":[10,0,10,40,160,2,42,160]},{"a":57752,"t":"byte","b":[10,10,32,10,40,32,10,40]},{"a":57760,"t":"byte","b":[32,10,8,32,42,8,0,8]},{"a":57768,"t":"byte","b":[2,32,8,2,32,32,0,168]},{"a":57776,"t":"byte","b":[32,32,8,32,40,40,40,170]},{"a":57784,"t":"byte","b":[128,32,0,2,0,0,10,105]},{"a":57792,"t":"byte","b":[0,136,0,0,34,0,0,160]},{"a":57800,"t":"byte","b":[128,0,128,32,10,130,136,2]},{"a":57808,"t":"byte","b":[8,40,2,42,168,2,10,136]},{"a":57816,"t":"byte","b":[2,10,8,2,42,168,2,0]},{"a":57824,"t":"byte","b":[160,2,8,32,2,2,160,2]},{"a":57832,"t":"byte","b":[2,160,0,10,168,2,2,168]},{"a":57840,"t":"byte","b":[2,128,128,0,128,8,0,0]},{"a":57848,"t":"byte","b":[0,0,40,32,0,128,0,96]},{"a":57856,"t":"byte","b":[0,0,0,0,168,0,0,162]},{"a":57864,"t":"byte","b":[128,0,0,0,8,128,128,2]},{"a":57872,"t":"byte","b":[10,32,2,42,136,2,42,168]},{"a":57880,"t":"byte","b":[2,10,136,2,42,8,2,42]},{"a":57888,"t":"byte","b":[40,2,40,8,8,40,0,0]},{"a":57896,"t":"byte","b":[10,128,0,10,128,0,10,128]},{"a":57904,"t":"byte","b":[0,42,160,0,34,32,0,10]},{"a":57912,"t":"byte","b":[160,0,2,128,0,8,0,153]},{"a":57920,"t":"byte","b":[0,0,0,2,32,0,0,136]},{"a":57928,"t":"byte","b":[0,0,2,0,34,0,0,10]},{"a":57936,"t":"byte","b":[10,0,2,34,160,10,42,168]},{"a":57944,"t":"byte","b":[10,10,168,10,42,40,34,42]},{"a":57952,"t":"byte","b":[40,10,42,40,0,42,0,0]},{"a":57960,"t":"byte","b":[42,128,0,10,160,0,10,136]},{"a":57968,"t":"byte","b":[0,2,40,0,32,168,0,10]},{"a":57976,"t":"byte","b":[160,32,2,160,0,0,10,240]},{"a":57984,"t":"byte","b":[0,136,0,0,34,0,0,0]},{"a":57992,"t":"byte","b":[128,0,128,0,10,130,128,8]},{"a":58000,"t":"byte","b":[10,168,10,10,42,10,10,130]},{"a":58008,"t":"byte","b":[34,10,138,10,8,138,2,10]},{"a":58016,"t":"byte","b":[128,2,10,160,2,10,168,2]},{"a":58024,"t":"byte","b":[2,168,2,2,160,2,2,160]},{"a":58032,"t":"byte","b":[0,138,32,2,130,168,0,0]},{"a":58040,"t":"byte","b":[168,0,0,40,0,128,0,204]},{"a":58048,"t":"byte","b":[0,0,0,0,168,0,0,2]},{"a":58056,"t":"byte","b":[128,0,0,0,2,128,160,2]},{"a":58064,"t":"byte","b":[2,32,2,10,136,2,10,170]},{"a":58072,"t":"byte","b":[2,10,130,2,10,138,10,10]},{"a":58080,"t":"byte","b":[138,2,2,2,8,2,128,40]},{"a":58088,"t":"byte","b":[2,128,32,10,128,32,0,160]},{"a":58096,"t":"byte","b":[40,2,160,42,0,40,0,40]},{"a":58104,"t":"byte","b":[168,0,0,40,0,8,0,200]},{"a":58112,"t":"byte","b":[0,136,0,2,32,0,8,40]},{"a":58120,"t":"byte","b":[0,32,8,40,42,34,8,34]},{"a":58128,"t":"byte","b":[130,168,32,34,160,34,32,160]},{"a":58136,"t":"byte","b":[42,128,32,10,168,160,10,168]},{"a":58144,"t":"byte","b":[136,10,160,32,10,160,0,10]},{"a":58152,"t":"byte","b":[160,40,10,160,40,2,168,32]},{"a":58160,"t":"byte","b":[2,128,32,2,128,160,0,34]},{"a":58168,"t":"byte","b":[128,0,130,0,0,0,0,173]},{"a":58176,"t":"byte","b":[0,34,0,0,8,128,0,40]},{"a":58184,"t":"byte","b":[32,40,32,8,32,136,168,42]},{"a":58192,"t":"byte","b":[130,136,10,136,8,10,8,136]},{"a":58200,"t":"byte","b":[8,2,168,10,42,160,34,42]},{"a":58208,"t":"byte","b":[160,8,10,160,0,10,160,40]},{"a":58216,"t":"byte","b":[10,160,40,10,160,8,42,128]},{"a":58224,"t":"byte","b":[8,2,128,10,2,128,2,136]},{"a":58232,"t":"byte","b":[0,0,130,0,0,0,0,166]},{"a":58240,"t":"byte","b":[0,0,0,0,0,168,0,10]},{"a":58248,"t":"byte","b":[0,0,0,0,0,40,2,0]},{"a":58256,"t":"byte","b":[162,40,2,138,136,8,42,168]},{"a":58264,"t":"byte","b":[40,138,40,42,128,8,10,8]},{"a":58272,"t":"byte","b":[128,42,160,0,10,160,128,34]},{"a":58280,"t":"byte","b":[168,160,42,160,0,8,160,40]},{"a":58288,"t":"byte","b":[2,168,8,10,160,8,10,128]},{"a":58296,"t":"byte","b":[0,10,0,10,0,0,128,232]},{"a":58304,"t":"byte","b":[0,0,0,42,0,0,0,160]},{"a":58312,"t":"byte","b":[0,0,0,0,128,40,0,40]},{"a":58320,"t":"byte","b":[138,0,34,162,128,42,168,32]},{"a":58328,"t":"byte","b":[40,162,40,32,2,168,2,32]},{"a":58336,"t":"byte","b":[160,0,10,168,2,10,160,10]},{"a":58344,"t":"byte","b":[42,136,0,10,168,40,10,32]},{"a":58352,"t":"byte","b":[32,42,128,32,10,160,0,2]},{"a":58360,"t":"byte","b":[160,160,0,160,2,0,0,13]},{"a":58368,"l":"player_shapes_b","c":"Sprite shapes for pointers $90 to $93 (256 bytes). No traced level 3 code sets these pointers; the shapes belong to the player's frames in the level file but this level does not display them.","t":"byte","b":[0,0,0,0,0,128,0,2]},{"a":58376,"t":"byte","b":[32,0,40,128,0,32,0,0]},{"a":58384,"t":"byte","b":[34,0,0,42,32,0,160,130]},{"a":58392,"t":"byte","b":[0,170,162,0,168,42,0,138]},{"a":58400,"t":"byte","b":[128,2,170,160,2,162,160,10]},{"a":58408,"t":"byte","b":[170,160,8,170,168,32,170,170]},{"a":58416,"t":"byte","b":[160,170,168,128,170,168,0,42]},{"a":58424,"t":"byte","b":[160,0,42,0,160,0,0,133]},{"a":58432,"t":"byte","b":[0,0,0,2,0,0,8,128]},{"a":58440,"t":"byte","b":[0,2,40,0,0,8,0,0]},{"a":58448,"t":"byte","b":[136,0,8,168,0,130,10,0]},{"a":58456,"t":"byte","b":[138,170,0,168,42,0,2,162]},{"a":58464,"t":"byte","b":[0,10,170,128,10,138,128,10]},{"a":58472,"t":"byte","b":[170,160,42,170,32,170,170,8]},{"a":58480,"t":"byte","b":[42,170,10,42,170,2,10,168]},{"a":58488,"t":"byte","b":[0,0,168,0,0,0,10,204]},{"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,2,160]},{"a":58520,"t":"byte","b":[0,40,0,2,128,0,8,160]},{"a":58528,"t":"byte","b":[42,34,40,160,34,40,168,40]},{"a":58536,"t":"byte","b":[170,40,42,32,168,8,2,40]},{"a":58544,"t":"byte","b":[32,136,42,170,32,42,170,128]},{"a":58552,"t":"byte","b":[40,170,128,160,0,0,8,170]},{"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,0]},{"a":58576,"t":"byte","b":[0,0,0,0,0,10,128,0]},{"a":58584,"t":"byte","b":[0,40,0,0,2,128,168,10]},{"a":58592,"t":"byte","b":[32,10,40,136,42,40,136,40]},{"a":58600,"t":"byte","b":[170,40,42,8,168,40,128,32]},{"a":58608,"t":"byte","b":[168,34,8,168,8,170,40,2]},{"a":58616,"t":"byte","b":[170,10,2,170,32,0,0,166]},{"a":58624,"l":"climb_shapes","c":"Sprite shapes for pointers $94 to $96 (192 bytes), the climbing frames. Only the unreached routines $1A99 and $1ABA (tables at $1A81 and $1A8D) store these pointers in the frame number $1ADB; level 3 has no traced call to them.","t":"byte","b":[0,0,0,0,0,0,0,2]},{"a":58632,"t":"byte","b":[160,40,32,0,168,42,168,136]},{"a":58640,"t":"byte","b":[34,168,168,170,32,42,170,136]},{"a":58648,"t":"byte","b":[10,170,160,10,170,168,0,170]},{"a":58656,"t":"byte","b":[168,2,170,40,2,170,160,10]},{"a":58664,"t":"byte","b":[170,160,10,170,160,10,162,160]},{"a":58672,"t":"byte","b":[10,10,160,10,130,160,10,128]},{"a":58680,"t":"byte","b":[128,8,0,0,0,0,0,68]},{"a":58688,"t":"byte","b":[0,0,0,0,0,0,0,10]},{"a":58696,"t":"byte","b":[128,0,0,0,0,170,128,10]},{"a":58704,"t":"byte","b":[42,160,34,170,136,10,170,160]},{"a":58712,"t":"byte","b":[42,170,168,42,42,168,0,170]},{"a":58720,"t":"byte","b":[160,2,170,160,2,170,160,2]},{"a":58728,"t":"byte","b":[170,168,10,170,168,10,170,136]},{"a":58736,"t":"byte","b":[10,170,136,10,170,168,10,162]},{"a":58744,"t":"byte","b":[168,2,0,32,0,0,0,189]},{"a":58752,"t":"byte","b":[0,0,0,0,0,0,0,42]},{"a":58760,"t":"byte","b":[40,0,2,40,2,170,168,0]},{"a":58768,"t":"byte","b":[170,168,8,170,34,34,170,162]},{"a":58776,"t":"byte","b":[40,170,168,40,168,168,40,170]},{"a":58784,"t":"byte","b":[128,40,170,128,10,170,128,10]},{"a":58792,"t":"byte","b":[170,160,10,42,128,8,42,160]},{"a":58800,"t":"byte","b":[8,160,160,10,128,160,2,2]},{"a":58808,"t":"byte","b":[160,0,0,160,0,0,0,126]},{"a":58816,"l":"walk_right_shapes","c":"Sprite shapes for pointers $97 to $9C (384 bytes): the first sprite ($CFF8, pointer F) of the player walking right. walk_frames_right ($1679) lists them, three entries each, and $9A is also the standing frame facing right.","t":"byte","b":[0,0,0,0,0,0,0,61]},{"a":58824,"t":"byte","b":[192,0,163,0,0,168,128,0]},{"a":58832,"t":"byte","b":[143,112,2,52,0,0,155,128]},{"a":58840,"t":"byte","b":[10,149,232,44,181,62,11,45]},{"a":58848,"t":"byte","b":[8,2,203,160,8,138,136,35]},{"a":58856,"t":"byte","b":[226,56,43,34,56,32,14,56]},{"a":58864,"t":"byte","b":[35,14,8,35,142,8,35,142]},{"a":58872,"t":"byte","b":[8,35,130,8,35,130,8,39]},{"a":58880,"t":"byte","b":[0,247,0,2,140,0,2,162]},{"a":58888,"t":"byte","b":[0,2,61,192,8,208,0,2]},{"a":58896,"t":"byte","b":[110,0,10,87,128,34,212,224]},{"a":58904,"t":"byte","b":[140,180,200,11,46,32,34,234]},{"a":58912,"t":"byte","b":[160,143,138,32,163,58,32,128]},{"a":58920,"t":"byte","b":[2,32,140,14,32,140,14,32]},{"a":58928,"t":"byte","b":[142,14,0,142,14,0,128,130]},{"a":58936,"t":"byte","b":[0,35,34,0,32,154,0,185]},{"a":58944,"t":"byte","b":[0,0,0,0,247,0,2,140]},{"a":58952,"t":"byte","b":[0,2,162,0,2,61,192,8]},{"a":58960,"t":"byte","b":[208,0,2,110,0,46,87,160]},{"a":58968,"t":"byte","b":[190,212,200,44,182,192,11,46]},{"a":58976,"t":"byte","b":[160,34,202,32,143,138,32,172]},{"a":58984,"t":"byte","b":[50,32,128,50,32,140,14,32]},{"a":58992,"t":"byte","b":[140,14,32,140,14,32,142,14]},{"a":59000,"t":"byte","b":[32,142,2,32,142,2,56,48]},{"a":59008,"t":"byte","b":[0,0,0,0,0,0,0,61]},{"a":59016,"t":"byte","b":[192,0,163,0,0,168,128,0]},{"a":59024,"t":"byte","b":[143,112,2,38,128,0,155,128]},{"a":59032,"t":"byte","b":[11,149,232,47,181,50,11,45]},{"a":59040,"t":"byte","b":[8,2,203,160,8,186,32,35]},{"a":59048,"t":"byte","b":[50,32,47,2,32,0,142,0]},{"a":59056,"t":"byte","b":[128,14,0,142,14,8,142,2]},{"a":59064,"t":"byte","b":[8,130,2,10,130,2,39,201]},{"a":59072,"t":"byte","b":[0,247,0,2,140,0,2,162]},{"a":59080,"t":"byte","b":[0,2,61,192,8,154,0,2]},{"a":59088,"t":"byte","b":[110,0,10,87,128,46,212,224]},{"a":59096,"t":"byte","b":[188,180,200,11,46,32,2,42]},{"a":59104,"t":"byte","b":[160,176,138,128,2,10,0,10]},{"a":59112,"t":"byte","b":[10,8,58,10,8,56,10,10]},{"a":59120,"t":"byte","b":[8,10,39,8,202,33,8,202]},{"a":59128,"t":"byte","b":[45,168,202,10,120,10,32,185]},{"a":59136,"t":"byte","b":[0,0,0,0,247,0,2,140]},{"a":59144,"t":"byte","b":[0,2,162,0,2,61,192,8]},{"a":59152,"t":"byte","b":[154,0,2,110,0,42,87,160]},{"a":59160,"t":"byte","b":[178,212,248,44,180,32,11,46]},{"a":59168,"t":"byte","b":[128,34,42,32,140,138,32,188]},{"a":59176,"t":"byte","b":[10,32,0,10,32,8,10,32]},{"a":59184,"t":"byte","b":[56,10,32,56,202,32,8,202]},{"a":59192,"t":"byte","b":[40,8,10,28,11,10,4,165]},{"a":59200,"l":"walk_left_shapes","c":"Sprite shapes for pointers $9D to $A2 (384 bytes): the first sprite ($CFF8, pointer F) of the player walking left. walk_frames_left ($1667) lists them, three entries each, and $A0 is also the standing frame facing left.","t":"byte","b":[0,0,0,0,0,0,3,124]},{"a":59208,"t":"byte","b":[0,0,202,0,2,42,0,13]},{"a":59216,"t":"byte","b":[242,0,0,28,128,2,230,0]},{"a":59224,"t":"byte","b":[43,86,160,188,94,56,32,120]},{"a":59232,"t":"byte","b":[224,10,227,128,34,162,32,44]},{"a":59240,"t":"byte","b":[139,200,44,136,232,44,176,8]},{"a":59248,"t":"byte","b":[32,176,200,32,178,200,32,178]},{"a":59256,"t":"byte","b":[200,32,130,200,32,130,200,10]},{"a":59264,"t":"byte","b":[0,223,0,0,50,128,0,138]},{"a":59272,"t":"byte","b":[128,3,124,128,0,7,32,0]},{"a":59280,"t":"byte","b":[185,128,2,213,160,11,23,136]},{"a":59288,"t":"byte","b":[35,30,50,8,184,224,10,171]},{"a":59296,"t":"byte","b":[136,8,162,242,8,172,202,8]},{"a":59304,"t":"byte","b":[128,2,8,176,50,8,176,50]},{"a":59312,"t":"byte","b":[0,176,178,0,176,178,0,130]},{"a":59320,"t":"byte","b":[2,0,136,200,0,166,8,162]},{"a":59328,"t":"byte","b":[0,0,0,0,223,0,0,50]},{"a":59336,"t":"byte","b":[128,0,138,128,3,124,128,0]},{"a":59344,"t":"byte","b":[7,32,0,185,128,10,213,184]},{"a":59352,"t":"byte","b":[35,23,190,3,158,56,10,184]},{"a":59360,"t":"byte","b":[224,8,163,136,8,162,242,8]},{"a":59368,"t":"byte","b":[140,58,8,140,2,8,176,50]},{"a":59376,"t":"byte","b":[8,176,50,8,176,50,8,176]},{"a":59384,"t":"byte","b":[178,8,128,178,44,128,178,133]},{"a":59392,"t":"byte","b":[0,0,0,0,0,0,3,124]},{"a":59400,"t":"byte","b":[0,0,202,0,2,42,0,13]},{"a":59408,"t":"byte","b":[242,0,2,152,128,2,230,0]},{"a":59416,"t":"byte","b":[43,86,224,140,94,248,32,120]},{"a":59424,"t":"byte","b":[224,10,227,128,8,174,32,8]},{"a":59432,"t":"byte","b":[140,200,8,128,248,0,178,0]},{"a":59440,"t":"byte","b":[0,176,2,32,176,178,32,128]},{"a":59448,"t":"byte","b":[178,160,128,130,216,128,130,4]},{"a":59456,"t":"byte","b":[0,223,0,0,50,128,0,138]},{"a":59464,"t":"byte","b":[128,3,124,128,0,166,32,0]},{"a":59472,"t":"byte","b":[185,128,2,213,160,11,23,184]},{"a":59480,"t":"byte","b":[35,30,62,8,184,224,10,168]},{"a":59488,"t":"byte","b":[128,2,162,14,0,160,128,32]},{"a":59496,"t":"byte","b":[160,160,32,160,172,160,160,44]},{"a":59504,"t":"byte","b":[216,160,32,72,163,32,120,163]},{"a":59512,"t":"byte","b":[32,160,163,42,8,160,45,224]},{"a":59520,"t":"byte","b":[0,0,0,0,223,0,0,50]},{"a":59528,"t":"byte","b":[128,0,138,128,3,124,128,0]},{"a":59536,"t":"byte","b":[166,32,0,185,128,10,213,168]},{"a":59544,"t":"byte","b":[47,23,142,8,30,56,2,184]},{"a":59552,"t":"byte","b":[224,8,168,136,8,162,50,8]},{"a":59560,"t":"byte","b":[160,62,8,160,0,8,160,32]},{"a":59568,"t":"byte","b":[8,160,44,8,163,44,40,163]},{"a":59576,"t":"byte","b":[32,52,160,32,16,160,224,185]},{"a":59584,"l":"attack_shapes","c":"Sprite shapes for pointers $A3 to $B2 (1,024 bytes). $A4 to $A9 are the second sprite ($CFF9, pointer F+$0D) of the player walking or standing facing right and $AA to $AF the second sprite facing left (standing frames $A7 and $AD). No traced level 3 code sets $A3 or $B0 to $B2.","t":"byte","b":[3,220,0,10,48,0,10,136]},{"a":59592,"t":"byte","b":[40,8,247,30,35,64,22,9]},{"a":59600,"t":"byte","b":[184,182,41,94,162,139,83,130]},{"a":59608,"t":"byte","b":[130,216,178,44,138,178,138,40]},{"a":59616,"t":"byte","b":[130,188,168,2,175,136,8,143]},{"a":59624,"t":"byte","b":[136,8,140,170,8,143,199,160]},{"a":59632,"t":"byte","b":[128,37,160,160,45,128,42,170]},{"a":59640,"t":"byte","b":[8,32,2,200,32,2,42,134]},{"a":59648,"t":"byte","b":[35,130,8,34,138,14,43,138]},{"a":59656,"t":"byte","b":[6,37,186,6,37,138,128,35]},{"a":59664,"t":"byte","b":[170,136,42,42,136,35,42,136]},{"a":59672,"t":"byte","b":[35,170,136,3,170,160,12,170]},{"a":59680,"t":"byte","b":[160,142,162,160,190,162,160,178]},{"a":59688,"t":"byte","b":[130,160,138,130,160,170,0,160]},{"a":59696,"t":"byte","b":[168,40,136,162,130,162,32,0]},{"a":59704,"t":"byte","b":[170,40,0,168,136,0,160,0]},{"a":59712,"t":"byte","b":[8,122,0,10,90,0,2,202]},{"a":59720,"t":"byte","b":[0,32,170,0,32,58,32,32]},{"a":59728,"t":"byte","b":[58,32,32,58,224,0,58,224]},{"a":59736,"t":"byte","b":[128,202,224,128,234,32,179,42]},{"a":59744,"t":"byte","b":[224,188,170,32,190,168,32,138]},{"a":59752,"t":"byte","b":[168,128,170,168,128,42,170,0]},{"a":59760,"t":"byte","b":[42,168,0,34,160,0,40,136]},{"a":59768,"t":"byte","b":[0,8,170,0,0,168,128,1]},{"a":59776,"t":"byte","b":[130,2,24,9,130,24,7,130]},{"a":59784,"t":"byte","b":[32,37,130,128,45,130,128,10]},{"a":59792,"t":"byte","b":[14,160,8,14,160,8,14,168]},{"a":59800,"t":"byte","b":[8,14,168,8,14,168,8,14]},{"a":59808,"t":"byte","b":[168,8,14,160,0,2,160,35]},{"a":59816,"t":"byte","b":[50,128,35,58,0,32,8,0]},{"a":59824,"t":"byte","b":[32,192,0,8,32,0,10,128]},{"a":59832,"t":"byte","b":[0,10,160,0,10,136,0,96]},{"a":59840,"t":"byte","b":[130,2,33,130,2,45,170,2]},{"a":59848,"t":"byte","b":[138,158,2,160,150,2,128,182]},{"a":59856,"t":"byte","b":[2,128,40,2,128,32,14,128]},{"a":59864,"t":"byte","b":[32,14,128,12,14,128,12,14]},{"a":59872,"t":"byte","b":[160,143,62,160,131,254,160,131]},{"a":59880,"t":"byte","b":[242,160,160,242,160,172,58,160]},{"a":59888,"t":"byte","b":[160,202,170,160,32,162,168,128]},{"a":59896,"t":"byte","b":[170,42,0,168,136,0,160,153]},{"a":59904,"t":"byte","b":[88,10,32,216,10,32,160,10]},{"a":59912,"t":"byte","b":[32,32,10,32,0,10,32,0]},{"a":59920,"t":"byte","b":[58,32,0,58,32,32,58,32]},{"a":59928,"t":"byte","b":[32,58,32,44,58,32,32,58]},{"a":59936,"t":"byte","b":[32,35,10,224,35,232,224,0]},{"a":59944,"t":"byte","b":[235,32,131,40,128,131,170,0]},{"a":59952,"t":"byte","b":[140,168,0,130,168,0,138,170]},{"a":59960,"t":"byte","b":[0,32,168,128,0,170,128,88]},{"a":59968,"t":"byte","b":[8,58,52,46,58,40,150,58]},{"a":59976,"t":"byte","b":[32,158,58,136,180,58,136,40]},{"a":59984,"t":"byte","b":[58,136,8,58,160,8,10,162]},{"a":59992,"t":"byte","b":[8,234,162,0,234,162,0,234]},{"a":60000,"t":"byte","b":[162,32,234,162,32,42,130,3]},{"a":60008,"t":"byte","b":[170,0,3,170,8,131,138,160]},{"a":60016,"t":"byte","b":[128,130,128,142,168,0,34,128]},{"a":60024,"t":"byte","b":[0,10,160,0,10,136,0,204]},{"a":60032,"t":"byte","b":[32,130,200,176,162,136,144,162]},{"a":60040,"t":"byte","b":[232,144,174,88,2,162,88,34]},{"a":60048,"t":"byte","b":[170,200,34,168,168,34,168,200]},{"a":60056,"t":"byte","b":[34,170,200,10,170,192,10,170]},{"a":60064,"t":"byte","b":[48,10,138,178,10,138,190,10]},{"a":60072,"t":"byte","b":[130,142,10,130,162,10,0,170]},{"a":60080,"t":"byte","b":[34,40,42,138,130,138,170,0]},{"a":60088,"t":"byte","b":[8,42,0,40,10,0,34,246]},{"a":60096,"t":"byte","b":[0,173,32,0,165,160,0,163]},{"a":60104,"t":"byte","b":[128,0,170,8,8,172,8,8]},{"a":60112,"t":"byte","b":[172,8,11,172,8,11,172,0]},{"a":60120,"t":"byte","b":[11,163,2,8,171,2,11,168]},{"a":60128,"t":"byte","b":[206,8,170,62,8,42,190,2]},{"a":60136,"t":"byte","b":[42,162,2,42,170,0,170,168]},{"a":60144,"t":"byte","b":[0,42,168,0,10,136,0,34]},{"a":60152,"t":"byte","b":[40,0,170,32,2,42,0,44]},{"a":60160,"t":"byte","b":[36,128,130,36,130,96,8,130]},{"a":60168,"t":"byte","b":[208,2,130,88,2,130,120,10]},{"a":60176,"t":"byte","b":[176,160,10,176,32,42,176,32]},{"a":60184,"t":"byte","b":[42,176,32,42,176,32,42,176]},{"a":60192,"t":"byte","b":[32,10,176,32,10,128,0,2]},{"a":60200,"t":"byte","b":[140,200,0,172,200,0,32,8]},{"a":60208,"t":"byte","b":[0,3,8,0,8,32,0,2]},{"a":60216,"t":"byte","b":[160,0,10,160,0,34,160,233]},{"a":60224,"t":"byte","b":[72,128,130,120,128,130,162,128]},{"a":60232,"t":"byte","b":[170,10,128,182,2,128,150,2]},{"a":60240,"t":"byte","b":[128,158,2,128,40,2,176,8]},{"a":60248,"t":"byte","b":[2,176,8,2,176,48,10,176]},{"a":60256,"t":"byte","b":[48,10,188,242,10,191,194,10]},{"a":60264,"t":"byte","b":[143,194,10,143,10,10,172,58]},{"a":60272,"t":"byte","b":[170,163,10,138,8,10,170,2]},{"a":60280,"t":"byte","b":[42,42,0,168,10,0,34,233]},{"a":60288,"t":"byte","b":[8,160,37,8,160,39,8,160]},{"a":60296,"t":"byte","b":[10,8,160,8,8,160,0,8]},{"a":60304,"t":"byte","b":[172,0,8,172,0,8,172,8]},{"a":60312,"t":"byte","b":[8,172,8,8,172,56,8,172]},{"a":60320,"t":"byte","b":[8,11,160,200,11,43,200,8]},{"a":60328,"t":"byte","b":[235,0,2,40,194,0,170,194]},{"a":60336,"t":"byte","b":[0,42,50,0,42,130,0,170]},{"a":60344,"t":"byte","b":[162,2,42,8,2,170,0,133]},{"a":60352,"t":"byte","b":[28,172,32,40,172,184,8,172]},{"a":60360,"t":"byte","b":[150,34,172,182,34,172,30,34]},{"a":60368,"t":"byte","b":[172,40,10,172,32,138,160,32]},{"a":60376,"t":"byte","b":[138,171,32,138,171,0,138,171]},{"a":60384,"t":"byte","b":[0,138,171,8,130,168,8,0]},{"a":60392,"t":"byte","b":[170,192,32,170,192,10,162,194]},{"a":60400,"t":"byte","b":[2,130,2,0,42,178,0,2]},{"a":60408,"t":"byte","b":[136,0,10,160,0,34,160,133]},{"a":60416,"t":"byte","b":[14,162,130,14,138,162,14,170]},{"a":60424,"t":"byte","b":[170,14,170,170,62,168,170,254]},{"a":60432,"t":"byte","b":[160,10,14,136,0,14,160,0]},{"a":60440,"t":"byte","b":[14,136,0,2,160,0,50,128]},{"a":60448,"t":"byte","b":[0,58,160,0,58,128,0,58]},{"a":60456,"t":"byte","b":[32,0,58,128,0,200,128,0]},{"a":60464,"t":"byte","b":[234,0,0,40,128,0,170,0]},{"a":60472,"t":"byte","b":[0,170,128,0,170,128,0,177]},{"a":60480,"t":"byte","b":[0,55,192,0,12,160,40,34]},{"a":60488,"t":"byte","b":[160,180,223,32,148,1,200,158]},{"a":60496,"t":"byte","b":[46,96,138,181,104,130,197,226]},{"a":60504,"t":"byte","b":[142,39,130,142,162,56,130,40]},{"a":60512,"t":"byte","b":[162,128,42,62,32,34,250,32]},{"a":60520,"t":"byte","b":[34,242,32,170,50,10,211,242]},{"a":60528,"t":"byte","b":[10,88,2,2,120,10,32,170]},{"a":60536,"t":"byte","b":[168,35,128,8,168,128,8,247]},{"a":60544,"t":"byte","b":[0,0,0,0,3,220,0,10]},{"a":60552,"t":"byte","b":[48,0,10,136,0,8,247,0]},{"a":60560,"t":"byte","b":[34,232,0,9,184,0,41,86]},{"a":60568,"t":"byte","b":[0,139,111,2,242,236,0,172]},{"a":60576,"t":"byte","b":[146,2,10,136,8,48,238,8]},{"a":60584,"t":"byte","b":[248,34,35,200,40,35,224,0]},{"a":60592,"t":"byte","b":[2,160,128,143,40,128,128,158]},{"a":60600,"t":"byte","b":[224,128,22,96,32,182,104,32]},{"a":60608,"l":"attack_shapes_b","c":"Sprite shapes for pointers $B3 to $C1 (960 bytes), the rest of the player's frames in the level file. No traced level 3 code sets these pointers.","t":"byte","b":[0,0,0,55,192,0,12,160]},{"a":60616,"t":"byte","b":[0,34,160,0,223,32,0,43]},{"a":60624,"t":"byte","b":[136,0,46,96,0,149,104,0]},{"a":60632,"t":"byte","b":[249,226,0,59,143,128,134,58]},{"a":60640,"t":"byte","b":[0,34,160,128,187,12,32,136]},{"a":60648,"t":"byte","b":[47,32,40,35,200,0,11,200]},{"a":60656,"t":"byte","b":[2,10,128,2,40,242,11,182]},{"a":60664,"t":"byte","b":[2,9,148,2,41,158,8,46]},{"a":60672,"t":"byte","b":[0,0,0,0,0,0,3,208]},{"a":60680,"t":"byte","b":[0,14,48,0,42,128,0,40]},{"a":60688,"t":"byte","b":[220,0,130,48,0,43,96,0]},{"a":60696,"t":"byte","b":[137,80,0,254,80,0,143,176]},{"a":60704,"t":"byte","b":[0,40,224,0,42,128,0,128]},{"a":60712,"t":"byte","b":[160,47,15,42,165,207,236,229]},{"a":60720,"t":"byte","b":[192,204,237,8,15,224,10,128]},{"a":60728,"t":"byte","b":[160,2,170,128,50,32,0,141]},{"a":60736,"t":"byte","b":[0,0,0,0,0,0,0,7]},{"a":60744,"t":"byte","b":[192,0,12,176,0,2,168,0]},{"a":60752,"t":"byte","b":[55,40,0,12,130,0,9,232]},{"a":60760,"t":"byte","b":[0,5,98,0,5,191,0,14]},{"a":60768,"t":"byte","b":[242,0,11,40,0,2,168,248]},{"a":60776,"t":"byte","b":[10,2,90,168,240,91,59,243]},{"a":60784,"t":"byte","b":[123,51,3,11,240,32,10,2]},{"a":60792,"t":"byte","b":[160,2,170,128,0,8,140,185]},{"a":60800,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60808,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60816,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60824,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60832,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60840,"t":"byte","b":[15,112,0,40,192,0,42,32]},{"a":60848,"t":"byte","b":[0,163,220,2,137,160,8,166]},{"a":60856,"t":"byte","b":[224,2,37,122,10,45,112,40]},{"a":60864,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60872,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60880,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60888,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60896,"t":"byte","b":[0,0,0,0,0,0,0,13]},{"a":60904,"t":"byte","b":[240,0,3,40,0,8,168,0]},{"a":60912,"t":"byte","b":[55,202,0,10,98,128,11,154]},{"a":60920,"t":"byte","b":[32,173,88,128,13,120,160,201]},{"a":60928,"t":"byte","b":[0,0,0,0,0,0,40,0]},{"a":60936,"t":"byte","b":[0,180,47,112,150,40,48,158]},{"a":60944,"t":"byte","b":[42,0,162,170,168,130,141,112]},{"a":60952,"t":"byte","b":[130,140,8,50,160,242,50,140]},{"a":60960,"t":"byte","b":[62,50,170,2,11,3,200,131]},{"a":60968,"t":"byte","b":[192,248,128,0,240,128,8,62]},{"a":60976,"t":"byte","b":[32,0,14,32,8,14,32,2]},{"a":60984,"t":"byte","b":[2,8,136,10,10,2,2,2]},{"a":60992,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":61000,"t":"byte","b":[0,0,189,192,0,160,192,0]},{"a":61008,"t":"byte","b":[168,0,2,170,160,0,181,192]},{"a":61016,"t":"byte","b":[2,0,32,10,51,248,10,128]},{"a":61024,"t":"byte","b":[248,0,160,0,44,3,56,12]},{"a":61032,"t":"byte","b":[8,48,176,32,14,176,8,14]},{"a":61040,"t":"byte","b":[128,32,2,128,136,2,140,160]},{"a":61048,"t":"byte","b":[50,34,136,8,10,0,40,4]},{"a":61056,"t":"byte","b":[0,0,0,0,0,160,0,2]},{"a":61064,"t":"byte","b":[248,2,247,88,2,131,96,2]},{"a":61072,"t":"byte","b":[160,130,10,170,130,2,212,130]},{"a":61080,"t":"byte","b":[10,0,130,8,63,34,10,3]},{"a":61088,"t":"byte","b":[34,42,128,130,35,195,206,47]},{"a":61096,"t":"byte","b":[0,252,143,32,60,140,8,12]},{"a":61104,"t":"byte","b":[130,32,2,130,8,2,130,130]},{"a":61112,"t":"byte","b":[0,162,34,8,130,128,168,31]},{"a":61120,"t":"byte","b":[130,138,176,138,162,176,170,170]},{"a":61128,"t":"byte","b":[176,170,170,176,170,42,188,160]},{"a":61136,"t":"byte","b":[10,191,0,34,176,0,10,176]},{"a":61144,"t":"byte","b":[0,34,176,0,10,128,0,2]},{"a":61152,"t":"byte","b":[140,0,10,172,0,2,172,0]},{"a":61160,"t":"byte","b":[8,172,0,2,172,0,2,35]},{"a":61168,"t":"byte","b":[0,0,171,0,2,40,0,0]},{"a":61176,"t":"byte","b":[170,0,2,170,0,2,170,205]},{"a":61184,"t":"byte","b":[42,162,40,32,170,160,128,10]},{"a":61192,"t":"byte","b":[128,176,10,0,176,58,0,136]},{"a":61200,"t":"byte","b":[50,32,136,14,128,131,14,184]},{"a":61208,"t":"byte","b":[0,14,184,35,14,184,47,14]},{"a":61216,"t":"byte","b":[128,47,2,174,44,58,162,44]},{"a":61224,"t":"byte","b":[10,162,32,202,160,32,42,168]},{"a":61232,"t":"byte","b":[32,42,168,0,170,168,10,42]},{"a":61240,"t":"byte","b":[162,0,10,168,0,10,32,50]},{"a":61248,"t":"byte","b":[40,138,168,10,170,8,2,160]},{"a":61256,"t":"byte","b":[2,0,160,14,0,172,14,8]},{"a":61264,"t":"byte","b":[140,34,2,176,34,46,176,194]},{"a":61272,"t":"byte","b":[46,176,0,46,176,200,2,176]},{"a":61280,"t":"byte","b":[248,186,128,248,138,172,56,138]},{"a":61288,"t":"byte","b":[160,56,10,163,8,42,168,8]},{"a":61296,"t":"byte","b":[42,168,8,42,170,0,138,168]},{"a":61304,"t":"byte","b":[160,42,160,0,8,160,0,32]},{"a":61312,"t":"byte","b":[0,48,160,0,0,32,0,12]},{"a":61320,"t":"byte","b":[128,0,12,32,8,12,0,0]},{"a":61328,"t":"byte","b":[12,40,2,3,8,34,0,32]},{"a":61336,"t":"byte","b":[34,0,10,10,0,2,138,0]},{"a":61344,"t":"byte","b":[8,138,0,2,10,0,10,42]},{"a":61352,"t":"byte","b":[0,32,42,128,8,170,128,0]},{"a":61360,"t":"byte","b":[168,0,32,160,0,170,168,34]},{"a":61368,"t":"byte","b":[170,40,8,168,138,0,160,37]},{"a":61376,"t":"byte","b":[10,12,0,8,0,0,2,48]},{"a":61384,"t":"byte","b":[0,8,48,0,0,48,32,40]},{"a":61392,"t":"byte","b":[48,0,32,192,128,8,0,136]},{"a":61400,"t":"byte","b":[160,0,136,128,0,160,32,0]},{"a":61408,"t":"byte","b":[162,128,0,162,160,0,160,8]},{"a":61416,"t":"byte","b":[0,168,32,2,168,0,2,170]},{"a":61424,"t":"byte","b":[8,0,42,170,0,10,170,136]},{"a":61432,"t":"byte","b":[42,42,32,40,10,0,162,53]},{"a":61440,"t":"byte","b":[35,139,66,44,178,40,14,138]},{"a":61448,"t":"byte","b":[136,140,170,0,140,130,14,130]},{"a":61456,"t":"byte","b":[0,142,131,0,130,3,138,50]},{"a":61464,"t":"byte","b":[32,173,0,34,229,136,41,100]},{"a":61472,"t":"byte","b":[162,137,98,172,139,42,131,2]},{"a":61480,"t":"byte","b":[170,163,0,138,128,2,42,162]},{"a":61488,"t":"byte","b":[8,170,130,2,42,136,136,170]},{"a":61496,"t":"byte","b":[40,170,2,170,170,2,162,205]},{"a":61504,"t":"byte","b":[129,226,200,40,142,56,34,162]},{"a":61512,"t":"byte","b":[176,0,170,50,176,130,50,178]},{"a":61520,"t":"byte","b":[0,130,130,0,194,140,162,192]},{"a":61528,"t":"byte","b":[0,122,8,34,91,136,138,25]},{"a":61536,"t":"byte","b":[104,58,137,98,194,168,226,202]},{"a":61544,"t":"byte","b":[170,128,2,162,0,138,168,128]},{"a":61552,"t":"byte","b":[130,170,32,34,168,128,40,170]},{"a":61560,"t":"byte","b":[34,170,128,170,138,128,170,185]},{"a":61568,"l":"shapes_unreferenced","c":"Sprite shapes for pointers $C2 to $C4 (192 bytes). No traced level 3 code sets these pointers.","t":"byte","b":[10,0,2,8,130,130,10,0]},{"a":61576,"t":"byte","b":[160,8,12,136,10,3,40,8]},{"a":61584,"t":"byte","b":[0,136,0,0,40,0,0,8]},{"a":61592,"t":"byte","b":[32,0,40,32,12,8,32,44]},{"a":61600,"t":"byte","b":[40,32,224,8,32,235,40,32]},{"a":61608,"t":"byte","b":[235,8,32,40,8,35,42,32]},{"a":61616,"t":"byte","b":[32,170,128,34,170,0,2,160]},{"a":61624,"t":"byte","b":[0,10,160,0,2,128,0,145]},{"a":61632,"t":"byte","b":[10,128,8,10,0,8,8,128]},{"a":61640,"t":"byte","b":[8,10,0,8,8,51,8,10]},{"a":61648,"t":"byte","b":[12,194,8,128,2,10,32,2]},{"a":61656,"t":"byte","b":[0,136,2,34,32,178,32,192]},{"a":61664,"t":"byte","b":[50,35,48,50,32,200,50,32]},{"a":61672,"t":"byte","b":[48,2,32,200,2,32,8,2]},{"a":61680,"t":"byte","b":[32,8,8,8,170,136,2,162]},{"a":61688,"t":"byte","b":[160,0,162,128,0,162,128,2]},{"a":61696,"t":"byte","b":[142,32,32,130,130,32,170,0]},{"a":61704,"t":"byte","b":[32,18,48,32,40,192,160,34]},{"a":61712,"t":"byte","b":[0,32,40,48,128,32,192,32]},{"a":61720,"t":"byte","b":[35,192,32,35,192,0,35,200]},{"a":61728,"t":"byte","b":[32,35,11,0,35,43,32,35]},{"a":61736,"t":"byte","b":[43,0,32,43,32,8,168,0]},{"a":61744,"t":"byte","b":[2,170,0,0,170,0,0,10]},{"a":61752,"t":"byte","b":[128,0,10,160,0,2,128,173]},{"a":61760,"t":"gap","n":704},{"a":62464,"l":"explosion_shapes","c":"Sprite shapes for pointers $D0 to $D8 (576 bytes): the frames of the explosion. blast_sprites ($1BFF) lists them, three entries each (six for $D8), and $239F writes the entry for the frame $1BFE to the pointers of sprites 3 to 7 ($CFFB to $CFFF). $D0 draws a filled disc; the later shapes thin out, and $D8 has only 6 non-zero bytes.","t":"byte","b":[0,190,0,3,85,192,13,85]},{"a":62472,"t":"byte","b":[112,37,85,88,53,85,92,21]},{"a":62480,"t":"byte","b":[85,84,149,85,86,213,85,87]},{"a":62488,"t":"byte","b":[85,85,85,85,85,85,85,85]},{"a":62496,"t":"byte","b":[85,85,85,85,85,85,85,213]},{"a":62504,"t":"byte","b":[85,87,149,85,86,21,85,84]},{"a":62512,"t":"byte","b":[53,85,92,37,85,88,13,85]},{"a":62520,"t":"byte","b":[112,3,85,192,0,190,0,0]},{"a":62528,"t":"byte","b":[0,0,0,0,0,0,11,255]},{"a":62536,"t":"byte","b":[224,37,125,88,53,117,94,149]},{"a":62544,"t":"byte","b":[117,86,149,127,94,213,123,94]},{"a":62552,"t":"byte","b":[215,223,250,215,87,232,253,87]},{"a":62560,"t":"byte","b":[120,249,87,124,189,85,92,223]},{"a":62568,"t":"byte","b":[93,92,158,213,88,151,213,120]},{"a":62576,"t":"byte","b":[39,213,120,45,245,240,2,171]},{"a":62584,"t":"byte","b":[224,0,42,128,0,0,0,0]},{"a":62592,"t":"byte","b":[0,0,0,0,2,128,11,235]},{"a":62600,"t":"byte","b":[224,45,85,120,53,127,88,157]},{"a":62608,"t":"byte","b":[235,252,223,171,236,251,95,232]},{"a":62616,"t":"byte","b":[237,87,168,173,85,168,37,85]},{"a":62624,"t":"byte","b":[224,37,85,224,37,85,224,37]},{"a":62632,"t":"byte","b":[117,224,173,85,240,191,151,152]},{"a":62640,"t":"byte","b":[186,254,88,46,171,120,43,181]},{"a":62648,"t":"byte","b":[96,10,47,128,0,0,0,0]},{"a":62656,"t":"byte","b":[0,0,0,0,0,0,2,183]},{"a":62664,"t":"byte","b":[128,9,85,224,37,171,96,54]},{"a":62672,"t":"byte","b":[250,248,159,255,184,155,94,168]},{"a":62680,"t":"byte","b":[189,95,160,45,93,224,45,127]},{"a":62688,"t":"byte","b":[96,43,251,96,46,235,104,38]},{"a":62696,"t":"byte","b":[173,104,45,181,232,43,175,184]},{"a":62704,"t":"byte","b":[10,170,240,130,171,224,160,10]},{"a":62712,"t":"byte","b":[128,32,0,0,0,0,0,0]},{"a":62720,"t":"byte","b":[0,0,0,0,0,0,0,174]},{"a":62728,"t":"byte","b":[128,11,85,192,47,170,224,38]},{"a":62736,"t":"byte","b":[250,176,187,94,176,173,122,32]},{"a":62744,"t":"byte","b":[45,251,128,39,235,224,47,171]},{"a":62752,"t":"byte","b":[96,10,139,96,46,11,224,47]},{"a":62760,"t":"byte","b":[41,184,43,174,184,10,42,160]},{"a":62768,"t":"byte","b":[0,2,224,0,10,128,2,2]},{"a":62776,"t":"byte","b":[0,128,0,0,0,0,0,255]},{"a":62784,"t":"byte","b":[0,0,0,0,0,0,0,170]},{"a":62792,"t":"byte","b":[0,2,255,128,11,170,192,10]},{"a":62800,"t":"byte","b":[254,160,43,215,32,42,170,0]},{"a":62808,"t":"byte","b":[42,171,128,42,137,224,10,10]},{"a":62816,"t":"byte","b":[224,11,130,224,13,194,160,11]},{"a":62824,"t":"byte","b":[139,128,2,10,128,0,2,0]},{"a":62832,"t":"byte","b":[0,0,0,0,0,32,0,0]},{"a":62840,"t":"byte","b":[0,0,2,0,2,0,0,255]},{"a":62848,"t":"byte","b":[0,0,0,0,0,0,0,40]},{"a":62856,"t":"byte","b":[0,0,190,0,2,170,128,2]},{"a":62864,"t":"byte","b":[182,0,16,171,0,0,42,0]},{"a":62872,"t":"byte","b":[2,174,0,2,138,128,10,122]},{"a":62880,"t":"byte","b":[128,9,82,128,11,82,128,2]},{"a":62888,"t":"byte","b":[138,128,0,2,0,0,0,0]},{"a":62896,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62904,"t":"byte","b":[0,0,0,32,0,0,0,255]},{"a":62912,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62920,"t":"byte","b":[0,0,0,0,0,40,0,0]},{"a":62928,"t":"byte","b":[0,0,0,0,0,0,14,0]},{"a":62936,"t":"byte","b":[128,47,0,0,183,128,0,150]},{"a":62944,"t":"byte","b":[128,2,254,0,0,184,0,0]},{"a":62952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62960,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62968,"t":"byte","b":[0,0,0,0,0,0,0,255]},{"a":62976,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62984,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":62992,"t":"byte","b":[0,0,0,8,0,0,8,0]},{"a":63000,"t":"byte","b":[0,14,0,0,38,0,0,44]},{"a":63008,"t":"byte","b":[0,0,32,0,0,0,0,0]},{"a":63016,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63024,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63032,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63040,"l":"object_shape","c":"Sprite shape for pointer $D9 (64 bytes): the falling object. object_update ($1C45) writes $D9 to sprite 3's pointer $CFFB. Only 5 of its bytes are non-zero: a small blob in the middle of the sprite.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63048,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63064,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63072,"t":"byte","b":[0,0,8,0,0,38,0,0]},{"a":63080,"t":"byte","b":[46,0,0,42,0,0,8,0]},{"a":63088,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63096,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63104,"l":"cursor_shape","c":"Sprite shape for pointer $DA (64 bytes): a rectangular outline. $422B, $49B9 and $4A91, in the mask game, write $DA to sprite 0's pointer $CFF8; $49B9 also sets that sprite's colour to 1.","t":"byte","b":[255,255,255,128,16,1,128,16]},{"a":63112,"t":"byte","b":[1,128,0,1,128,0,1,128]},{"a":63120,"t":"byte","b":[0,1,128,0,1,128,0,1]},{"a":63128,"t":"byte","b":[128,0,1,128,0,1,240,0]},{"a":63136,"t":"byte","b":[15,128,0,1,128,0,1,128]},{"a":63144,"t":"byte","b":[0,1,128,0,1,128,0,1]},{"a":63152,"t":"byte","b":[128,0,1,128,0,1,128,16]},{"a":63160,"t":"byte","b":[1,128,16,1,255,255,255,0]},{"a":63168,"l":"invisible_shapes","c":"Sprite shapes for pointers $DB to $DE (256 bytes), all zero, so they draw nothing. $0C65 writes $DB to all eight sprite pointers $CFF8 to $CFFF every frame, so a sprite shows nothing until the level code gives it another pointer.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63176,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63184,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63192,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63200,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63208,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63216,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63224,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63232,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63240,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63248,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63256,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63264,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63272,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63280,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63288,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63296,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63304,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63312,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63320,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63328,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63336,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63344,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63352,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63360,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63368,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63384,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63392,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63400,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63408,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63416,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63424,"l":"panel_bitmap","c":"The status panel's bitmap. From raster line $CD the interrupt $0CC9 turns on bitmap mode ($D011 bit 5), and the low nibble of $D018 set by $0C44 puts the bitmap at $E000 (multicolour); the panel is the text rows 19 to 24, 40 cells wide, 8 bytes a cell and 320 a row. This is row 19, columns 0 to 31 (256 bytes), which comes with the level file; no traced routine writes it.","t":"byte","b":[0,45,175,190,171,175,235,251]},{"a":63432,"t":"byte","b":[0,173,171,235,235,237,253,189]},{"a":63440,"t":"byte","b":[0,162,139,141,141,143,136,163]},{"a":63448,"t":"byte","b":[0,160,200,200,36,100,212,80]},{"a":63456,"t":"byte","b":[0,8,13,7,2,2,1,1]},{"a":63464,"t":"byte","b":[0,8,8,56,44,32,176,144]},{"a":63472,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63480,"t":"byte","b":[0,2,2,2,2,2,2,3]},{"a":63488,"t":"byte","b":[0,162,139,141,136,141,139,162]},{"a":63496,"t":"byte","b":[0,179,173,188,0,180,213,83]},{"a":63504,"t":"byte","b":[0,186,186,186,186,185,165,133]},{"a":63512,"t":"byte","b":[0,0,0,0,0,0,128,128]},{"a":63520,"t":"byte","b":[0,11,2,0,0,0,0,0]},{"a":63528,"t":"byte","b":[0,189,173,173,189,237,47,47]},{"a":63536,"t":"byte","b":[0,175,174,170,170,171,175,189]},{"a":63544,"t":"byte","b":[0,170,170,170,170,170,234,234]},{"a":63552,"t":"byte","b":[0,186,255,255,255,255,255,255]},{"a":63560,"t":"byte","b":[0,176,252,204,236,220,252,252]},{"a":63568,"t":"byte","b":[0,0,0,191,10,10,2,2]},{"a":63576,"t":"byte","b":[0,0,0,171,255,255,255,255]},{"a":63584,"t":"byte","b":[0,42,186,208,144,130,65,64]},{"a":63592,"t":"byte","b":[0,179,172,12,0,0,12,48]},{"a":63600,"t":"byte","b":[0,191,149,170,0,42,0,8]},{"a":63608,"t":"byte","b":[0,170,255,85,0,85,0,1]},{"a":63616,"t":"byte","b":[0,170,255,85,0,85,0,0]},{"a":63624,"t":"byte","b":[0,128,218,79,5,64,1,5]},{"a":63632,"t":"byte","b":[0,2,253,85,171,11,167,159]},{"a":63640,"t":"byte","b":[0,170,171,170,174,174,190,0]},{"a":63648,"t":"byte","b":[0,175,187,174,187,174,187,0]},{"a":63656,"t":"byte","b":[0,170,170,170,234,170,234,0]},{"a":63664,"t":"byte","b":[0,184,234,186,238,250,234,0]},{"a":63672,"t":"byte","b":[0,136,32,136,34,136,162,8]},{"a":63680,"l":"image_row_0","c":"Row 0 of the 48-byte pixel rows of pictures A and B, written by $328D and $32F6 and cleared by $3234.","t":"byte","b":[0,47,63,53,53,53,53,53],"x":[12901,12946,13051]},{"a":63688,"t":"byte","b":[0,170,170,245,245,245,244,244]},{"a":63696,"t":"byte","b":[0,170,170,0,12,48,0,15]},{"a":63704,"t":"byte","b":[0,170,170,0,0,0,0,192]},{"a":63712,"t":"byte","b":[0,170,170,245,245,53,53,53]},{"a":63720,"t":"byte","b":[0,172,168,88,88,88,88,88]},{"a":63728,"l":"panel_bitmap_1","c":"Row 19, columns 38 and 39, and row 20, columns 0 to 26 of the panel bitmap (232 bytes; see panel_bitmap): bytes that no traced routine writes.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63736,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63744,"t":"byte","b":[163,190,186,249,245,181,249,190]},{"a":63752,"t":"byte","b":[175,107,91,90,86,90,106,174]},{"a":63760,"t":"byte","b":[176,39,7,7,12,3,14,14]},{"a":63768,"t":"byte","b":[8,232,252,252,0,85,255,0]},{"a":63776,"t":"byte","b":[2,8,8,32,32,255,85,0]},{"a":63784,"t":"byte","b":[32,32,224,176,128,85,255,0]},{"a":63792,"t":"byte","b":[0,0,0,0,0,170,255,0]},{"a":63800,"t":"byte","b":[0,0,0,0,0,170,255,0]},{"a":63808,"t":"byte","b":[0,0,0,0,0,170,255,0]},{"a":63816,"t":"byte","b":[0,0,0,0,0,170,255,0]},{"a":63824,"t":"byte","b":[10,2,2,0,0,224,96,146]},{"a":63832,"t":"byte","b":[160,160,168,172,178,10,42,63]},{"a":63840,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":63848,"t":"byte","b":[46,30,11,3,3,11,14,14]},{"a":63856,"t":"byte","b":[181,245,253,253,251,234,234,170]},{"a":63864,"t":"byte","b":[181,183,181,213,213,213,85,85]},{"a":63872,"t":"byte","b":[170,170,170,170,170,254,87,84]},{"a":63880,"t":"byte","b":[168,168,168,168,168,168,253,0]},{"a":63888,"t":"byte","b":[2,0,46,55,55,151,85,0]},{"a":63896,"t":"byte","b":[170,42,2,130,130,194,95,0]},{"a":63904,"t":"byte","b":[188,191,191,191,191,191,85,0]},{"a":63912,"t":"byte","b":[0,0,0,0,0,0,170,0]},{"a":63920,"t":"byte","b":[8,12,4,4,12,8,170,0]},{"a":63928,"t":"byte","b":[10,43,41,173,189,191,255,0]},{"a":63936,"t":"byte","b":[2,11,11,47,63,63,255,0]},{"a":63944,"t":"byte","b":[187,255,255,255,192,42,149,21]},{"a":63952,"t":"byte","b":[191,111,91,91,91,91,91,91]},{"a":63960,"l":"timer_glyph_hundreds","c":"Glyph of the counter's left digit ($0ECB), written by $5348.","t":"byte","b":[168,128,168,8,8,8,168,0]},{"a":63968,"l":"timer_cell_gap","c":"Row 20, column 28 of the panel bitmap, between the counter digits timer_glyph_hundreds ($F9D8) and timer_glyph_tens ($F9E8): 8 bytes of which only the second and sixth ($B6) are not 0. No traced routine writes them.","t":"byte","b":[0,182,0,0,0,182,0,0]},{"a":63976,"l":"timer_glyph_tens","c":"Glyph of the counter's middle digit ($0ECA), written by $5348.","t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":63984,"l":"timer_glyph_ones","c":"Glyph of the counter's right digit ($0EC9), written by $5348.","t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":63992,"l":"panel_bitmap_2","c":"Row 20, column 31 of the panel bitmap (8 bytes), after the last counter digit timer_glyph_ones ($F9F0): bytes that no traced routine writes.","t":"byte","b":[34,40,34,40,34,40,34,40]},{"a":64000,"l":"image_row_1","c":"Row 1 of the pixel rows of pictures A and B (see $F8C0).","t":"byte","b":[47,47,37,36,32,32,32,32],"x":[12904,12952,13057]},{"a":64008,"t":"byte","b":[172,240,192,0,3,13,5,5]},{"a":64016,"t":"byte","b":[181,0,0,10,63,159,190,160]},{"a":64024,"t":"byte","b":[173,0,0,64,208,208,80,64]},{"a":64032,"t":"byte","b":[10,51,0,0,0,0,0,3]},{"a":64040,"t":"byte","b":[172,172,28,12,12,28,92,76]},{"a":64048,"l":"panel_bitmap_3","c":"Row 20, columns 38 and 39, and row 21, columns 0 to 2 of the panel bitmap (40 bytes): bytes that no traced routine writes.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64056,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64064,"t":"byte","b":[138,2,139,173,173,173,165,237]},{"a":64072,"t":"byte","b":[45,181,237,101,117,85,117,237]},{"a":64080,"t":"byte","b":[8,12,12,12,8,8,0,4]},{"a":64088,"l":"score_glyphs","c":"Seven digit glyphs of 8 bytes, written by $2549.","t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64096,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64104,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64112,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64120,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64128,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64136,"t":"byte","b":[168,136,136,136,136,136,168,0]},{"a":64144,"l":"panel_bitmap_4","c":"Row 21, columns 10 to 16 of the panel bitmap (56 bytes), between the score digits score_glyphs ($FA58) and the energy bar cells energy_sprite_dest ($FAC8): bytes that no traced routine writes.","t":"byte","b":[34,55,7,12,4,51,0,17]},{"a":64152,"t":"byte","b":[42,42,63,127,127,63,42,21]},{"a":64160,"t":"byte","b":[0,128,128,128,128,128,128,0]},{"a":64168,"t":"byte","b":[42,43,43,59,14,14,1,1]},{"a":64176,"t":"byte","b":[170,170,170,170,170,234,235,251]},{"a":64184,"t":"byte","b":[191,255,255,255,191,191,111,95]},{"a":64192,"t":"byte","b":[168,168,168,168,168,252,252,84]},{"a":64200,"l":"energy_sprite_dest","c":"Destination of the energy bar buffer $2454, copied by $2495.","t":"byte","b":[0,255,255,170,170,85,85,0],"x":[9492]},{"a":64208,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64216,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64224,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64232,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64240,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64248,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64256,"t":"byte","b":[0,255,255,170,170,85,85,0]},{"a":64264,"l":"panel_bitmap_5","c":"Row 21, columns 25 to 31 of the panel bitmap (56 bytes), after the energy bar cells: bytes that no traced routine writes.","t":"byte","b":[42,42,42,42,42,63,63,21]},{"a":64272,"t":"byte","b":[43,43,41,9,10,2,2,0]},{"a":64280,"t":"byte","b":[170,235,251,251,254,126,127,63]},{"a":64288,"t":"byte","b":[170,187,165,181,174,187,175,187]},{"a":64296,"t":"byte","b":[186,234,86,86,170,170,170,170]},{"a":64304,"t":"byte","b":[187,239,187,239,187,239,191,236]},{"a":64312,"t":"byte","b":[162,136,34,136,32,136,32,128]},{"a":64320,"l":"image_row_2","c":"Row 2 of the pixel rows of pictures A and B (see $F8C0).","t":"byte","b":[44,47,47,47,47,47,47,45],"x":[12907,12958,13063]},{"a":64328,"t":"byte","b":[11,74,90,90,90,90,122,250]},{"a":64336,"t":"byte","b":[0,0,128,170,171,191,191,42]},{"a":64344,"t":"byte","b":[128,192,192,96,104,104,106,0]},{"a":64352,"t":"byte","b":[8,11,11,43,43,43,43,42]},{"a":64360,"t":"byte","b":[44,172,172,172,172,172,172,172]},{"a":64368,"l":"panel_bitmap_6","c":"Row 21, columns 38 and 39, and row 22, columns 0 to 31 of the panel bitmap (272 bytes): bytes that no traced routine writes.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64376,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64384,"t":"byte","b":[174,111,107,91,90,90,168,239]},{"a":64392,"t":"byte","b":[171,138,130,171,175,189,189,237]},{"a":64400,"t":"byte","b":[11,9,15,0,0,0,0,0]},{"a":64408,"t":"byte","b":[0,170,255,0,63,42,42,25]},{"a":64416,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64424,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64432,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64440,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64448,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64456,"t":"byte","b":[0,170,255,0,255,170,170,153]},{"a":64464,"t":"byte","b":[179,114,160,0,0,0,0,0]},{"a":64472,"t":"byte","b":[0,42,63,21,0,0,0,0]},{"a":64480,"t":"byte","b":[0,0,0,0,0,0,0,11]},{"a":64488,"t":"byte","b":[2,2,14,5,53,23,7,9]},{"a":64496,"t":"byte","b":[190,183,215,213,87,85,87,95]},{"a":64504,"t":"byte","b":[181,213,85,85,85,85,85,85]},{"a":64512,"t":"byte","b":[168,254,255,0,192,255,255,255]},{"a":64520,"t":"byte","b":[0,174,85,1,1,84,84,84]},{"a":64528,"t":"byte","b":[0,175,85,68,29,46,46,4]},{"a":64536,"t":"byte","b":[0,174,85,20,4,64,64,0]},{"a":64544,"t":"byte","b":[0,170,255,192,127,127,127,112]},{"a":64552,"t":"byte","b":[0,170,255,0,240,240,252,12]},{"a":64560,"t":"byte","b":[0,174,93,8,4,1,6,0]},{"a":64568,"t":"byte","b":[0,170,255,85,1,84,249,31]},{"a":64576,"t":"byte","b":[0,47,10,0,0,8,12,12]},{"a":64584,"t":"byte","b":[42,170,34,196,196,228,185,62]},{"a":64592,"t":"byte","b":[2,3,3,2,0,0,0,64]},{"a":64600,"t":"byte","b":[175,207,219,134,1,0,5,5]},{"a":64608,"t":"byte","b":[175,191,239,191,255,31,80,85]},{"a":64616,"t":"byte","b":[171,174,171,174,187,175,0,51]},{"a":64624,"t":"byte","b":[191,252,179,204,240,192,0,0]},{"a":64632,"t":"byte","b":[0,128,0,0,0,0,0,0]},{"a":64640,"l":"image_row_3","c":"Row 3 of the pixel rows of pictures A and B (see $F8C0).","t":"byte","b":[47,44,32,32,32,32,32,32],"x":[12910,12964,13069]},{"a":64648,"t":"byte","b":[139,11,35,50,56,44,46,11]},{"a":64656,"t":"byte","b":[191,191,190,40,191,63,11,128]},{"a":64664,"t":"byte","b":[168,170,184,0,168,161,133,0]},{"a":64672,"t":"byte","b":[42,40,40,160,160,128,0,0]},{"a":64680,"t":"byte","b":[180,164,164,36,36,4,36,4]},{"a":64688,"l":"panel_bitmap_7","c":"Row 22, columns 38 and 39, and row 23, columns 0 to 31 of the panel bitmap (272 bytes): bytes that no traced routine writes.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64696,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64704,"t":"byte","b":[171,171,250,250,190,42,2,0]},{"a":64712,"t":"byte","b":[171,170,155,111,171,85,69,0]},{"a":64720,"t":"byte","b":[128,192,80,151,13,0,128,0]},{"a":64728,"t":"byte","b":[46,46,29,25,25,25,0,0]},{"a":64736,"t":"byte","b":[187,187,187,153,221,221,0,0]},{"a":64744,"t":"byte","b":[187,187,187,187,191,221,0,0]},{"a":64752,"t":"byte","b":[187,185,157,157,157,221,0,0]},{"a":64760,"t":"byte","b":[187,187,187,251,217,221,0,0]},{"a":64768,"t":"byte","b":[187,187,187,185,157,221,0,0]},{"a":64776,"t":"byte","b":[187,185,153,157,221,221,0,0]},{"a":64784,"t":"byte","b":[176,37,56,10,3,0,0,0]},{"a":64792,"t":"byte","b":[170,130,0,3,253,0,0,0]},{"a":64800,"t":"byte","b":[44,224,144,197,0,0,0,0]},{"a":64808,"t":"byte","b":[182,37,21,90,42,0,0,0]},{"a":64816,"t":"byte","b":[171,150,149,85,85,0,0,0]},{"a":64824,"t":"byte","b":[175,191,191,255,239,0,0,0]},{"a":64832,"t":"byte","b":[186,170,186,186,190,0,0,0]},{"a":64840,"t":"byte","b":[168,136,184,168,160,0,0,0]},{"a":64848,"t":"byte","b":[181,181,181,181,134,181,46,0]},{"a":64856,"t":"byte","b":[176,176,176,176,128,176,192,0]},{"a":64864,"t":"byte","b":[179,179,179,179,177,0,0,0]},{"a":64872,"t":"byte","b":[168,184,248,218,218,0,0,0]},{"a":64880,"t":"byte","b":[0,2,11,0,0,0,0,0]},{"a":64888,"t":"byte","b":[11,170,246,11,131,2,0,0]},{"a":64896,"t":"byte","b":[8,32,48,48,32,0,0,0]},{"a":64904,"t":"byte","b":[11,0,0,0,0,0,0,0]},{"a":64912,"t":"byte","b":[172,107,25,2,2,3,8,8]},{"a":64920,"t":"byte","b":[10,2,192,112,16,44,4,4]},{"a":64928,"t":"byte","b":[170,170,170,170,42,0,0,0]},{"a":64936,"t":"byte","b":[136,162,168,162,168,0,0,0]},{"a":64944,"t":"byte","b":[128,32,136,34,136,0,0,0]},{"a":64952,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":64960,"l":"image_row_4","c":"Row 4 of the pixel rows of pictures A and B (see $F8C0).","t":"byte","b":[32,32,42,58,0,0,0,0],"x":[12913,12970,13075]},{"a":64968,"t":"byte","b":[10,2,255,255,0,0,0,0]},{"a":64976,"t":"byte","b":[128,160,255,255,0,0,0,0]},{"a":64984,"t":"byte","b":[0,0,170,170,0,0,0,0]},{"a":64992,"t":"byte","b":[0,0,170,170,0,0,0,0]},{"a":65000,"t":"byte","b":[8,8,168,172,0,0,0,0]},{"a":65008,"t":"gap","n":16},{"a":65024,"l":"dissolve_buffer","c":"256 bytes filled with $AA by $4F9C and eroded by $448C with random AND masks, then cleared.","t":"byte","b":[0,0,136,0,2,32,0,8],"x":[17587,17592,17614,20486]},{"a":65032,"t":"byte","b":[40,0,32,0,0,10,40,10]},{"a":65040,"t":"byte","b":[136,0,8,42,0,2,168,0]},{"a":65048,"t":"byte","b":[10,170,32,0,42,32,2,170]},{"a":65056,"t":"byte","b":[32,2,162,32,2,168,32,10]},{"a":65064,"t":"byte","b":[136,40,10,32,8,42,130,0]},{"a":65072,"t":"byte","b":[40,10,128,32,170,128,160,10]},{"a":65080,"t":"byte","b":[8,128,0,40,128,0,0,173]},{"a":65088,"t":"byte","b":[34,0,0,8,128,0,40,32]},{"a":65096,"t":"byte","b":[0,0,8,0,40,160,0,0]},{"a":65104,"t":"byte","b":[34,160,0,168,32,0,42,128]},{"a":65112,"t":"byte","b":[8,170,160,8,168,0,8,170]},{"a":65120,"t":"byte","b":[128,8,138,128,8,42,128,40]},{"a":65128,"t":"byte","b":[34,160,32,8,160,0,130,168]},{"a":65136,"t":"byte","b":[2,160,40,2,170,8,32,160]},{"a":65144,"t":"byte","b":[10,40,0,2,0,0,2,20]},{"a":65152,"t":"byte","b":[0,3,220,0,10,48,0,10]},{"a":65160,"t":"byte","b":[136,0,8,247,0,35,64,0]},{"a":65168,"t":"byte","b":[9,184,0,169,92,2,203,94]},{"a":65176,"t":"byte","b":[0,178,210,2,172,136,8,162]},{"a":65184,"t":"byte","b":[168,35,42,170,43,226,106,35]},{"a":65192,"t":"byte","b":[140,105,44,242,233,44,2,171]},{"a":65200,"t":"byte","b":[32,8,170,8,32,136,10,160]},{"a":65208,"t":"byte","b":[128,2,131,128,2,3,128,240]},{"a":65216,"t":"byte","b":[55,192,0,12,160,0,34,160]},{"a":65224,"t":"byte","b":[0,223,32,0,1,200,0,46]},{"a":65232,"t":"byte","b":[96,0,53,106,0,181,227,128]},{"a":65240,"t":"byte","b":[135,142,0,34,58,128,42,138]},{"a":65248,"t":"byte","b":[32,170,168,200,169,139,232,105]},{"a":65256,"t":"byte","b":[50,200,107,143,56,234,128,56]},{"a":65264,"t":"byte","b":[170,32,8,34,8,32,2,10]},{"a":65272,"t":"byte","b":[160,2,194,128,2,192,128,13]},{"a":65280,"l":"jump_shapes_b","c":"Sprite shapes for pointers $FC and $FD (128 bytes, 64 each), after the 256 bytes of dissolve_buffer, whose start is the shape for $F8. player_sprites ($1AE0) uses $F8, $FA and $FC for the jumping or thrown-back player facing right and $F9, $FB and $FD facing left (F, F+2 and F+4 from the frame number $1ADB); the result sprites of mask_sprites ($52BB) use $F8 to $FC.","t":"byte","b":[0,0,128,0,12,128,8,14]},{"a":65288,"t":"byte","b":[128,8,2,160,8,50,128,8]},{"a":65296,"t":"byte","b":[50,136,0,58,160,32,202,162]},{"a":65304,"t":"byte","b":[32,234,170,143,42,170,128,168]},{"a":65312,"t":"byte","b":[170,178,168,42,130,160,42,10]},{"a":65320,"t":"byte","b":[128,40,42,0,168,136,160,168]},{"a":65328,"t":"byte","b":[40,10,163,32,0,162,224,0]},{"a":65336,"t":"byte","b":[136,0,0,160,128,0,0,249]},{"a":65344,"t":"byte","b":[2,0,0,2,48,0,2,176]},{"a":65352,"t":"byte","b":[32,10,128,32,2,140,32,34]},{"a":65360,"t":"byte","b":[140,32,10,172,0,138,163,8]},{"a":65368,"t":"byte","b":[170,171,8,170,168,242,170,42]},{"a":65376,"t":"byte","b":[2,168,42,142,168,10,130,40]},{"a":65384,"t":"byte","b":[2,160,42,0,168,42,10,34]},{"a":65392,"t":"byte","b":[202,160,40,138,0,8,34,0]},{"a":65400,"t":"byte","b":[11,10,0,0,0,0,2,240]},{"a":65408,"l":"blank_sprite","c":"64 bytes cleared by $0A84; the sprite pointer $FE, written to $CFFC by $23D6, points here.","t":"byte","b":[168,168,160,136,136,128,136,136],"x":[2793]},{"a":65416,"t":"byte","b":[128,168,136,168,136,136,136,136]},{"a":65424,"t":"byte","b":[136,136,168,168,168,0,0,0]},{"a":65432,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65440,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65448,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65456,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65464,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65472,"t":"gap","n":64}]}