{"schema":1,"platform":"spectrum","game":"valhalla","title":"Valhalla","build":"original Legend release (TOSEC: Valhalla (1983)(Legend).tzx), a tape of four ROM-speed files: a BASIC loader, the loading screen, 12,185 bytes of machine code at $D066 and the game's BASIC program saved with its variables, autostarting at line 9800","symbols_sha256":"7ed6d5e8f0809e5657d4588daff677e998dff8cbe23c9a02707f59741bf740ce","snapshot":{"file":"work/entry.sna","sha256":"55177a0e4ff099443f41213d4967805346f5ae7127d3879abe663d20b10697e0"},"index":[{"a":23755,"n":"rem_code","k":"routine","len":5,"c":true},{"a":23760,"n":"scroll_text","k":"routine","len":19,"c":true},{"a":23779,"n":"rem_filler","k":"table","len":13,"c":true},{"a":23792,"n":"save_game","k":"routine","len":27,"c":true},{"a":23819,"n":"load_game","k":"routine","len":26,"c":true},{"a":23845,"n":"restore_trap","k":"routine","len":11,"c":true},{"a":23856,"n":"rem_end","k":"table","len":2,"c":true},{"a":23858,"n":"build_stamp","k":"routine","len":26,"c":true},{"a":23884,"n":"gx","k":"routine","len":15,"c":true},{"a":23899,"n":"fn_words","k":"routine","len":164,"c":true},{"a":24063,"n":"fn_the","k":"routine","len":85,"c":true},{"a":24148,"n":"fn_article","k":"routine","len":198,"c":true},{"a":24346,"n":"fn_article_n","k":"routine","len":29,"c":true},{"a":24375,"n":"fn_has","k":"routine","len":96,"c":true},{"a":24471,"n":"fn_carries","k":"routine","len":166,"c":true},{"a":24637,"n":"fn_lies_at","k":"routine","len":96,"c":true},{"a":24733,"n":"fn_numbers","k":"routine","len":149,"c":true},{"a":24882,"n":"fn_qualities","k":"routine","len":193,"c":true},{"a":25075,"n":"fn_money_here","k":"routine","len":41,"c":true},{"a":25116,"n":"fn_tests","k":"routine","len":79,"c":true},{"a":25195,"n":"fn_strength","k":"routine","len":26,"c":true},{"a":25221,"n":"fn_full_strength","k":"routine","len":32,"c":true},{"a":25253,"n":"fn_verb","k":"routine","len":70,"c":true},{"a":25323,"n":"synt","k":"routine","len":59,"c":true},{"a":25382,"n":"read_parse","k":"routine","len":151,"c":true},{"a":25533,"n":"parse_errors","k":"routine","len":26,"c":true},{"a":25559,"n":"mary","k":"routine","len":120,"c":true},{"a":25679,"n":"mary_slap","k":"routine","len":127,"c":true},{"a":25806,"n":"rf","k":"routine","len":26,"c":true},{"a":25832,"n":"rf_ask","k":"routine","len":143,"c":true},{"a":25975,"n":"rf_accept","k":"routine","len":12,"c":true},{"a":25987,"n":"step_left","k":"routine","len":55,"c":true},{"a":26042,"n":"step_walk","k":"routine","len":35,"c":true},{"a":26077,"n":"step_right","k":"routine","len":55,"c":true},{"a":26132,"n":"step_right_walk","k":"routine","len":12,"c":true},{"a":26144,"n":"verb_go","k":"routine","len":131,"c":true},{"a":26275,"n":"go_direction","k":"routine","len":118,"c":true},{"a":26393,"n":"go_to_thing","k":"routine","len":239,"c":true},{"a":26632,"n":"verb_offer","k":"routine","len":274,"c":true},{"a":26906,"n":"trade_new","k":"routine","len":31,"c":true},{"a":26937,"n":"trade_check","k":"routine","len":285,"c":true},{"a":27222,"n":"trade_offer","k":"routine","len":169,"c":true},{"a":27391,"n":"trade_deal","k":"routine","len":193,"c":true},{"a":27584,"n":"verb_take","k":"routine","len":172,"c":true},{"a":27756,"n":"take_walk","k":"routine","len":215,"c":true},{"a":27971,"n":"take_object","k":"routine","len":131,"c":true},{"a":28102,"n":"take_money","k":"routine","len":31,"c":true},{"a":28133,"n":"take_beside","k":"routine","len":289,"c":true},{"a":28422,"n":"verb_attack","k":"routine","len":120,"c":true},{"a":28542,"n":"attack_goodness","k":"routine","len":83,"c":true},{"a":28625,"n":"fight","k":"routine","len":62,"c":true},{"a":28687,"n":"fight_strength","k":"routine","len":201,"c":true},{"a":28888,"n":"fight_blows","k":"routine","len":77,"c":true},{"a":28965,"n":"fight_drawn","k":"routine","len":115,"c":true},{"a":29080,"n":"fight_defeat","k":"routine","len":101,"c":true},{"a":29181,"n":"fight_kill","k":"routine","len":72,"c":true},{"a":29253,"n":"fight_blow","k":"routine","len":193,"c":true},{"a":29446,"n":"verb_drop","k":"routine","len":326,"c":true},{"a":29772,"n":"drop_money","k":"routine","len":31,"c":true},{"a":29803,"n":"verb_throw","k":"routine","len":76,"c":true},{"a":29879,"n":"throw_check","k":"routine","len":147,"c":true},{"a":30026,"n":"throw_damage","k":"routine","len":130,"c":true},{"a":30156,"n":"throw_magic","k":"routine","len":36,"c":true},{"a":30192,"n":"throw_fly","k":"routine","len":379,"c":true},{"a":30571,"n":"verb_jump","k":"routine","len":130,"c":true},{"a":30701,"n":"verb_put","k":"routine","len":296,"c":true},{"a":30997,"n":"verb_drink","k":"routine","len":131,"c":true},{"a":31128,"n":"verb_give","k":"routine","len":269,"c":true},{"a":31397,"n":"verb_buy","k":"routine","len":264,"c":true},{"a":31661,"n":"verb_sell","k":"routine","len":175,"c":true},{"a":31836,"n":"verb_eat","k":"routine","len":137,"c":true},{"a":31973,"n":"verb_open","k":"routine","len":251,"c":true},{"a":32224,"n":"open_walk","k":"routine","len":19,"c":true},{"a":32243,"n":"open_draw","k":"routine","len":109,"c":true},{"a":32352,"n":"verb_summon","k":"routine","len":112,"c":true},{"a":32464,"n":"verb_close","k":"routine","len":186,"c":true},{"a":32650,"n":"verb_unlock","k":"routine","len":13,"c":true},{"a":32663,"n":"verb_lock","k":"routine","len":13,"c":true},{"a":32676,"n":"ver","k":"routine","len":50,"c":true},{"a":32726,"n":"bput","k":"routine","len":42,"c":true},{"a":32768,"n":"bput_end","k":"table","len":2,"c":true},{"a":32770,"n":"bput_slot","k":"routine","len":150,"c":true},{"a":32920,"n":"bput_store","k":"routine","len":46,"c":true},{"a":32966,"n":"bget","k":"routine","len":205,"c":true},{"a":33171,"n":"mput","k":"routine","len":72,"c":true},{"a":33243,"n":"mget","k":"routine","len":84,"c":true},{"a":33327,"n":"mfi","k":"routine","len":175,"c":true},{"a":33502,"n":"blist","k":"routine","len":283,"c":true},{"a":33785,"n":"csa","k":"routine","len":55,"c":true},{"a":33840,"n":"css","k":"routine","len":38,"c":true},{"a":33878,"n":"moba","k":"routine","len":41,"c":true},{"a":33919,"n":"mobs","k":"routine","len":103,"c":true},{"a":34022,"n":"moma","k":"routine","len":41,"c":true},{"a":34063,"n":"moms","k":"routine","len":70,"c":true},{"a":34133,"n":"mo","k":"routine","len":25,"c":true},{"a":34158,"n":"mprop","k":"routine","len":97,"c":true},{"a":34255,"n":"mprop_special","k":"routine","len":246,"c":true},{"a":34501,"n":"mnex","k":"routine","len":133,"c":true},{"a":34634,"n":"cango","k":"routine","len":200,"c":true},{"a":34834,"n":"mdesc","k":"routine","len":288,"c":true},{"a":35122,"n":"world_name","k":"routine","len":93,"c":true},{"a":35215,"n":"de","k":"routine","len":33,"c":true},{"a":35248,"n":"character_turn","k":"routine","len":95,"c":true},{"a":35343,"n":"turn_pick","k":"routine","len":176,"c":true},{"a":35519,"n":"turn_mood","k":"routine","len":135,"c":true},{"a":35654,"n":"turn_action","k":"routine","len":42,"c":true},{"a":35696,"n":"turn_leave","k":"routine","len":57,"c":true},{"a":35753,"n":"turn_take","k":"routine","len":142,"c":true},{"a":35895,"n":"turn_drop","k":"routine","len":55,"c":true},{"a":35950,"n":"turn_attack","k":"routine","len":116,"c":true},{"a":36066,"n":"turn_give","k":"routine","len":64,"c":true},{"a":36130,"n":"turn_step","k":"routine","len":45,"c":true},{"a":36175,"n":"np","k":"routine","len":56,"c":true},{"a":36231,"n":"pr","k":"routine","len":162,"c":true},{"a":36393,"n":"show_text","k":"routine","len":32,"c":true},{"a":36425,"n":"lf","k":"routine","len":15,"c":true},{"a":36440,"n":"refuses","k":"routine","len":23,"c":true},{"a":36463,"n":"rp2","k":"routine","len":50,"c":true},{"a":36513,"n":"rep","k":"routine","len":179,"c":true},{"a":36692,"n":"rep_slot","k":"routine","len":46,"c":true},{"a":36738,"n":"nloc","k":"routine","len":121,"c":true},{"a":36859,"n":"nloc_objects","k":"routine","len":279,"c":true},{"a":37138,"n":"nloc_characters","k":"routine","len":159,"c":true},{"a":37297,"n":"valhalla","k":"routine","len":123,"c":true},{"a":37420,"n":"efi","k":"routine","len":105,"c":true},{"a":37525,"n":"klepto","k":"routine","len":544,"c":true},{"a":38069,"n":"v0","k":"routine","len":62,"c":true},{"a":38131,"n":"dov","k":"routine","len":97,"c":true},{"a":38228,"n":"comings_and_goings","k":"routine","len":411,"c":true},{"a":38639,"n":"die","k":"routine","len":32,"c":true},{"a":38671,"n":"die_scatter","k":"routine","len":151,"c":true},{"a":38822,"n":"die_hell","k":"routine","len":153,"c":true},{"a":38975,"n":"die_body","k":"routine","len":120,"c":true},{"a":39095,"n":"gap","k":"routine","len":405,"c":true},{"a":39500,"n":"dep","k":"routine","len":115,"c":true},{"a":39615,"n":"arr","k":"routine","len":169,"c":true},{"a":39784,"n":"cmd_l","k":"routine","len":12,"c":true},{"a":39796,"n":"cmd_r","k":"routine","len":12,"c":true},{"a":39808,"n":"cmd_pause","k":"routine","len":125,"c":true},{"a":39933,"n":"cmd_save","k":"routine","len":46,"c":true},{"a":39979,"n":"cmd_list","k":"routine","len":16,"c":true},{"a":39995,"n":"cmd_who","k":"routine","len":9,"c":true},{"a":40004,"n":"who_line","k":"routine","len":115,"c":true},{"a":40119,"n":"who_container","k":"routine","len":218,"c":true},{"a":40337,"n":"who_name","k":"routine","len":113,"c":true},{"a":40450,"n":"cmd_load","k":"routine","len":256,"c":true},{"a":40706,"n":"cmd_print","k":"routine","len":12,"c":true},{"a":40718,"n":"cmd_noprint","k":"routine","len":12,"c":true},{"a":40730,"n":"cmd_copy","k":"routine","len":8,"c":true},{"a":40738,"n":"cmd_what","k":"routine","len":18,"c":true},{"a":40756,"n":"cmd_where","k":"routine","len":171,"c":true},{"a":40927,"n":"cmd_help","k":"routine","len":33,"c":true},{"a":40960,"n":"help_end","k":"table","len":6,"c":true},{"a":40966,"n":"help_ways","k":"routine","len":481,"c":true},{"a":41447,"n":"help_more","k":"routine","len":110,"c":true},{"a":41557,"n":"cmd_how","k":"routine","len":137,"c":true},{"a":41694,"n":"gfx_none","k":"routine","len":6,"c":true},{"a":41700,"n":"gter","k":"routine","len":167,"c":true},{"a":41867,"n":"gter_features","k":"routine","len":73,"c":true},{"a":41940,"n":"gter_feature","k":"routine","len":390,"c":true},{"a":42330,"n":"gp","k":"routine","len":72,"c":true},{"a":42402,"n":"gm","k":"routine","len":131,"c":true},{"a":42533,"n":"glie","k":"routine","len":28,"c":true},{"a":42561,"n":"geat","k":"routine","len":53,"c":true},{"a":42614,"n":"geatp","k":"routine","len":75,"c":true},{"a":42689,"n":"gdrink","k":"routine","len":51,"c":true},{"a":42740,"n":"gdrinkp","k":"routine","len":75,"c":true},{"a":42815,"n":"ggeto","k":"routine","len":22,"c":true},{"a":42837,"n":"gget","k":"routine","len":69,"c":true},{"a":42906,"n":"gdropo","k":"routine","len":22,"c":true},{"a":42928,"n":"gdrop","k":"routine","len":50,"c":true},{"a":42978,"n":"gfx_ret_1","k":"routine","len":6,"c":true},{"a":42984,"n":"garmd","k":"routine","len":22,"c":true},{"a":43006,"n":"gfx_ret_2","k":"routine","len":6,"c":true},{"a":43012,"n":"garmo","k":"routine","len":22,"c":true},{"a":43034,"n":"gfx_ret_3","k":"routine","len":6,"c":true},{"a":43040,"n":"gemb","k":"routine","len":19,"c":true},{"a":43059,"n":"gfire","k":"routine","len":30,"c":true},{"a":43089,"n":"gturn","k":"routine","len":55,"c":true},{"a":43144,"n":"mx","k":"routine","len":33,"c":true},{"a":43177,"n":"main_flag","k":"routine","len":23,"c":true},{"a":43200,"n":"main_comings","k":"routine","len":24,"c":true},{"a":43224,"n":"main_command","k":"routine","len":100,"c":true},{"a":43324,"n":"main_hunger","k":"routine","len":165,"c":true},{"a":43489,"n":"main_do","k":"routine","len":163,"c":true},{"a":43652,"n":"start","k":"routine","len":91,"c":true},{"a":43743,"n":"error_messages","k":"routine","len":364,"c":true},{"a":44107,"n":"error_messages_2","k":"routine","len":271,"c":true},{"a":44378,"n":"text_area","k":"table","len":646,"c":true},{"a":45024,"n":"dictionary","k":"table","len":437,"c":true},{"a":45461,"n":"dict_objects","k":"table","len":671,"c":true},{"a":46132,"n":"dict_verbs","k":"table","len":506,"c":true},{"a":46638,"n":"dict_little_words","k":"table","len":341,"c":true},{"a":46979,"n":"dict_places","k":"table","len":858,"c":true},{"a":47837,"n":"consts_first","k":"variable","len":18,"c":true},{"a":47855,"n":"objects_table","k":"table","len":308,"c":true},{"a":48163,"n":"characters_table","k":"table","len":788,"c":true},{"a":48951,"n":"map_table","k":"table","len":201,"c":true},{"a":49152,"n":"map_hell","k":"table","len":617,"c":true},{"a":49769,"n":"map_midgard","k":"table","len":648,"c":true},{"a":50417,"n":"facings","k":"table","len":201,"c":true},{"a":50618,"n":"screen_columns","k":"table","len":138,"c":true},{"a":50756,"n":"special_places","k":"table","len":332,"c":true},{"a":51088,"n":"work_vars","k":"variable","len":125,"c":true},{"a":51213,"n":"consts_k_l","k":"variable","len":126,"c":true},{"a":51339,"n":"consts_named","k":"variable","len":56,"c":true},{"a":51395,"n":"game_state","k":"variable","len":43,"c":true},{"a":51438,"n":"routine_names_1","k":"variable","len":71,"c":true},{"a":51509,"n":"exits_open","k":"table","len":46,"c":true},{"a":51555,"n":"exits_special","k":"table","len":46,"c":true},{"a":51601,"n":"leftover_for","k":"variable","len":19,"c":true},{"a":51620,"n":"compass","k":"variable","len":63,"c":true},{"a":51683,"n":"here_and_exits","k":"variable","len":25,"c":true},{"a":51708,"n":"mc_addresses","k":"variable","len":66,"c":true},{"a":51774,"n":"routine_names_2","k":"variable","len":135,"c":true},{"a":51909,"n":"blank_pair","k":"table","len":18,"c":true},{"a":51927,"n":"routine_names_3","k":"variable","len":284,"c":true},{"a":52211,"n":"vars_end","k":"variable","len":1,"c":true},{"a":53350,"n":"parse_result","k":"table","len":13,"c":true},{"a":53363,"n":"parse_command","k":"routine","len":285,"c":true},{"a":53648,"n":"parse_error","k":"routine","len":4,"c":true},{"a":53652,"n":"parse_next_word","k":"routine","len":32,"c":true},{"a":53684,"n":"parse_number","k":"routine","len":15,"c":true},{"a":53699,"n":"parse_end","k":"routine","len":16,"c":true},{"a":53715,"n":"stale_variables","k":"table","len":222,"c":true},{"a":53937,"n":"matched_entry","k":"variable","len":2,"c":true},{"a":53939,"n":"enter_flag","k":"variable","len":1,"c":true},{"a":53940,"n":"input_vars","k":"table","len":41,"c":true},{"a":53981,"n":"input_line","k":"table","len":68,"c":true},{"a":54049,"n":"word_buffer","k":"table","len":64,"c":true},{"a":54113,"n":"word_list","k":"table","len":300,"c":true},{"a":54413,"n":"input_init","k":"routine","len":41,"c":true},{"a":54454,"n":"print_input_line","k":"routine","len":23,"c":true},{"a":54477,"n":"print_lower_text","k":"routine","len":36,"c":true},{"a":54513,"n":"toggle_cursor","k":"routine","len":43,"c":true},{"a":54556,"n":"cursor_text","k":"table","len":5,"c":true},{"a":54561,"n":"print_chars","k":"routine","len":10,"c":true},{"a":54571,"n":"key_pressed","k":"routine","len":131,"c":true},{"a":54702,"n":"key_refused","k":"routine","len":24,"c":true},{"a":54726,"n":"unused_d5c6","k":"variable","len":1,"c":true},{"a":54727,"n":"clear_word_buffer","k":"routine","len":22,"c":true},{"a":54749,"n":"escape_to_basic","k":"routine","len":8,"c":true},{"a":54757,"n":"cursor_left","k":"routine","len":23,"c":true},{"a":54780,"n":"cursor_right","k":"routine","len":26,"c":true},{"a":54806,"n":"clear_line","k":"routine","len":40,"c":true},{"a":54846,"n":"delete_left","k":"routine","len":40,"c":true},{"a":54886,"n":"insert_char","k":"routine","len":51,"c":true},{"a":54937,"n":"cursor_up","k":"routine","len":26,"c":true},{"a":54963,"n":"cursor_down","k":"routine","len":30,"c":true},{"a":54993,"n":"recall_line","k":"routine","len":26,"c":true},{"a":55019,"n":"print_text_window","k":"routine","len":59,"c":true},{"a":55078,"n":"scroll_text_back","k":"routine","len":26,"c":true},{"a":55104,"n":"scroll_text_on","k":"routine","len":19,"c":true},{"a":55123,"n":"add_number_entry","k":"routine","len":49,"c":true},{"a":55172,"n":"enter_pressed","k":"routine","len":110,"c":true},{"a":55282,"n":"zero_byte","k":"variable","len":1,"c":true},{"a":55283,"n":"read_digit","k":"routine","len":30,"c":true},{"a":55313,"n":"check_digit","k":"routine","len":11,"c":true},{"a":55324,"n":"end_of_word","k":"routine","len":90,"c":true},{"a":55414,"n":"highlight_word","k":"routine","len":82,"c":true},{"a":55496,"n":"show_bad_word","k":"routine","len":111,"c":true},{"a":55607,"n":"find_word","k":"routine","len":201,"c":true},{"a":55808,"n":"times_ten","k":"routine","len":17,"c":true},{"a":55825,"n":"next_entry","k":"routine","len":43,"c":true},{"a":55868,"n":"break_trap","k":"routine","len":35,"c":true},{"a":55903,"n":"stale_da5f","k":"table","len":11,"c":true},{"a":55914,"n":"shade_sky","k":"routine","len":3,"c":true},{"a":55917,"n":"shade_area","k":"routine","len":49,"c":true},{"a":55966,"n":"cell_address","k":"routine","len":18,"c":true},{"a":55984,"n":"rng_state","k":"table","len":4,"c":true},{"a":55988,"n":"random","k":"routine","len":39,"c":true},{"a":56027,"n":"draw_ridge","k":"routine","len":70,"c":true},{"a":56097,"n":"ridge_new_run","k":"routine","len":44,"c":true},{"a":56141,"n":"ridge_columns","k":"routine","len":29,"c":true},{"a":56170,"n":"ridge_y","k":"variable","len":2,"c":true},{"a":56172,"n":"bit_mask","k":"routine","len":14,"c":true},{"a":56186,"n":"ridge_step","k":"routine","len":22,"c":true},{"a":56208,"n":"fill_column","k":"routine","len":26,"c":true},{"a":56234,"n":"plot_pixel","k":"routine","len":52,"c":true},{"a":56286,"n":"scatter_dots","k":"routine","len":21,"c":true},{"a":56307,"n":"scatter_box","k":"routine","len":70,"c":true},{"a":56377,"n":"scatter_strokes","k":"routine","len":76,"c":true},{"a":56453,"n":"saved_hl_alt","k":"table","len":3,"c":true},{"a":56456,"n":"draw_stroke","k":"routine","len":69,"c":true},{"a":56525,"n":"scatter_dashes","k":"routine","len":33,"c":true},{"a":56558,"n":"draw_dash","k":"routine","len":36,"c":true},{"a":56594,"n":"draw_glyph","k":"routine","len":40,"c":true},{"a":56634,"n":"paint_land","k":"routine","len":3,"c":true},{"a":56637,"n":"paint_rows","k":"routine","len":3,"c":true},{"a":56640,"n":"paint_box","k":"routine","len":42,"c":true},{"a":56682,"n":"set_plot_xor","k":"routine","len":7,"c":true},{"a":56689,"n":"set_plot_or","k":"routine","len":5,"c":true},{"a":56694,"n":"set_plot_test","k":"routine","len":5,"c":true},{"a":56699,"n":"fill_shape","k":"routine","len":92,"c":true},{"a":56791,"n":"fill_state","k":"variable","len":2,"c":true},{"a":56793,"n":"mirror_chars","k":"routine","len":6,"c":true},{"a":56799,"n":"mirror_bytes","k":"routine","len":16,"c":true},{"a":56815,"n":"toggle_ridge_fill","k":"routine","len":17,"c":true},{"a":56832,"n":"fill_column_address","k":"variable","len":2,"c":true},{"a":56834,"n":"ridge_outline","k":"routine","len":7,"c":true},{"a":56841,"n":"clear_box","k":"routine","len":44,"c":true},{"a":56885,"n":"seed_random","k":"routine","len":36,"c":true},{"a":56921,"n":"clear_picture","k":"routine","len":11,"c":true},{"a":56932,"n":"gfx_return","k":"routine","len":8,"c":true},{"a":56940,"n":"gfx_saved_sp","k":"table","len":4,"c":true},{"a":56944,"n":"attr_address","k":"routine","len":18,"c":true},{"a":56962,"n":"cell_of_point","k":"routine","len":19,"c":true},{"a":56981,"n":"point_of_cell","k":"routine","len":16,"c":true},{"a":56997,"n":"mirror_top_third","k":"routine","len":41,"c":true},{"a":57038,"n":"saved_attr_t","k":"variable","len":2,"c":true},{"a":57040,"n":"draw_line","k":"routine","len":20,"c":true},{"a":57060,"n":"draw_line_regs","k":"routine","len":68,"c":true},{"a":57128,"n":"unused_df28","k":"table","len":3,"c":true},{"a":57131,"n":"blank_box","k":"routine","len":10,"c":true},{"a":57141,"n":"bank_address","k":"variable","len":2,"c":true},{"a":57143,"n":"bank_size","k":"variable","len":1,"c":true},{"a":57144,"n":"draw_xy","k":"variable","len":2,"c":true},{"a":57146,"n":"flag_position","k":"variable","len":2,"c":true},{"a":57148,"n":"hall_colours","k":"table","len":4,"c":true},{"a":57152,"n":"new_hall_style","k":"routine","len":11,"c":true},{"a":57163,"n":"pick_hall_colours","k":"routine","len":16,"c":true},{"a":57179,"n":"pick_wall_colours","k":"routine","len":53,"c":true},{"a":57232,"n":"castle_tiles","k":"table","len":80,"c":true},{"a":57312,"n":"draw_tile","k":"routine","len":73,"c":true},{"a":57385,"n":"texture_box","k":"routine","len":36,"c":true},{"a":57421,"n":"texture_cell","k":"routine","len":15,"c":true},{"a":57436,"n":"draw_wall_tile","k":"routine","len":22,"c":true},{"a":57458,"n":"tower_size","k":"table","len":5,"c":true},{"a":57463,"n":"draw_tower","k":"routine","len":179,"c":true},{"a":57642,"n":"castle_x","k":"variable","len":2,"c":true},{"a":57644,"n":"castle_start","k":"routine","len":26,"c":true},{"a":57670,"n":"draw_battlements","k":"routine","len":98,"c":true},{"a":57768,"n":"battlement_texture","k":"routine","len":15,"c":true},{"a":57783,"n":"terrain_forest","k":"routine","len":13,"c":true},{"a":57796,"n":"forest_treetops_args","k":"table","len":6,"c":true},{"a":57802,"n":"forest_rows","k":"routine","len":15,"c":true},{"a":57817,"n":"forest_first_line_foliage_args","k":"table","len":6,"c":true},{"a":57823,"n":"forest_line_2","k":"routine","len":3,"c":true},{"a":57826,"n":"forest_second_line_foliage_args","k":"table","len":6,"c":true},{"a":57832,"n":"forest_line_3","k":"routine","len":3,"c":true},{"a":57835,"n":"forest_third_line_foliage_args","k":"table","len":6,"c":true},{"a":57841,"n":"forest_line_4","k":"routine","len":3,"c":true},{"a":57844,"n":"forest_foot_trees_args","k":"table","len":6,"c":true},{"a":57850,"n":"forest_trunks","k":"routine","len":51,"c":true},{"a":57901,"n":"forest_foliage","k":"routine","len":102,"c":true},{"a":58003,"n":"forest_floor","k":"routine","len":3,"c":true},{"a":58006,"n":"forest_undergrowth_args","k":"table","len":6,"c":true},{"a":58012,"n":"forest_floor_2","k":"routine","len":3,"c":true},{"a":58015,"n":"forest_ground_args","k":"table","len":6,"c":true},{"a":58021,"n":"forest_colours","k":"routine","len":30,"c":true},{"a":58051,"n":"gfx_terrain","k":"routine","len":141,"c":true},{"a":58192,"n":"terrain_now","k":"variable","len":2,"c":true},{"a":58194,"n":"terrain_table","k":"table","len":16,"c":true},{"a":58210,"n":"view_table","k":"table","len":16,"c":true},{"a":58226,"n":"terrain_icy","k":"routine","len":41,"c":true},{"a":58267,"n":"icy_waste_first_line_args","k":"table","len":6,"c":true},{"a":58273,"n":"icy_line_2","k":"routine","len":3,"c":true},{"a":58276,"n":"icy_waste_second_line_args","k":"table","len":6,"c":true},{"a":58282,"n":"icy_done","k":"routine","len":3,"c":true},{"a":58285,"n":"paint_sky","k":"routine","len":2,"c":true},{"a":58287,"n":"paint_sky_a","k":"routine","len":3,"c":true},{"a":58290,"n":"paint_from_top","k":"routine","len":6,"c":true},{"a":58296,"n":"view_icy","k":"routine","len":6,"c":true},{"a":58302,"n":"view_icy_waste_args","k":"table","len":6,"c":true},{"a":58308,"n":"view_icy_end","k":"routine","len":1,"c":true},{"a":58309,"n":"terrain_marsh","k":"routine","len":19,"c":true},{"a":58328,"n":"marsh_first_pool_line_args","k":"table","len":6,"c":true},{"a":58334,"n":"marsh_line_2","k":"routine","len":3,"c":true},{"a":58337,"n":"marsh_second_pool_line_args","k":"table","len":6,"c":true},{"a":58343,"n":"marsh_dots","k":"routine","len":6,"c":true},{"a":58349,"n":"marsh_first_dots_args","k":"table","len":6,"c":true},{"a":58355,"n":"marsh_dots_2","k":"routine","len":3,"c":true},{"a":58358,"n":"marsh_second_dots_args","k":"table","len":6,"c":true},{"a":58364,"n":"marsh_dots_3","k":"routine","len":3,"c":true},{"a":58367,"n":"marsh_third_dots_args","k":"table","len":6,"c":true},{"a":58373,"n":"marsh_pools","k":"routine","len":86,"c":true},{"a":58459,"n":"pool_state","k":"variable","len":2,"c":true},{"a":58461,"n":"view_marsh","k":"routine","len":3,"c":true},{"a":58464,"n":"view_marsh_args","k":"table","len":6,"c":true},{"a":58470,"n":"view_marsh_end","k":"routine","len":1,"c":true},{"a":58471,"n":"terrain_plain","k":"routine","len":40,"c":true},{"a":58511,"n":"plain_first_dots_args","k":"table","len":6,"c":true},{"a":58517,"n":"plain_dots_2","k":"routine","len":3,"c":true},{"a":58520,"n":"plain_second_dots_args","k":"table","len":6,"c":true},{"a":58526,"n":"plain_end","k":"routine","len":1,"c":true},{"a":58527,"n":"view_plain","k":"routine","len":11,"c":true},{"a":58538,"n":"terrain_lakes","k":"routine","len":24,"c":true},{"a":58562,"n":"lakes_water_args","k":"table","len":6,"c":true},{"a":58568,"n":"lakes_shore","k":"routine","len":22,"c":true},{"a":58590,"n":"lakes_shore_args","k":"table","len":6,"c":true},{"a":58596,"n":"lakes_grass","k":"routine","len":16,"c":true},{"a":58612,"n":"view_lakes","k":"routine","len":28,"c":true},{"a":58640,"n":"view_lakes_args","k":"table","len":6,"c":true},{"a":58646,"n":"view_lakes_end","k":"routine","len":1,"c":true},{"a":58647,"n":"terrain_mountains","k":"routine","len":21,"c":true},{"a":58668,"n":"mountains_foothills_args","k":"table","len":6,"c":true},{"a":58674,"n":"mountains_dots","k":"routine","len":3,"c":true},{"a":58677,"n":"mountains_slopes_args","k":"table","len":6,"c":true},{"a":58683,"n":"mountains_lines","k":"routine","len":9,"c":true},{"a":58692,"n":"mountains_lines_slopes_args","k":"table","len":6,"c":true},{"a":58698,"n":"mountains_lines_end","k":"routine","len":6,"c":true},{"a":58704,"n":"view_mountains","k":"routine","len":13,"c":true},{"a":58717,"n":"view_mountains_far_peaks_args","k":"table","len":6,"c":true},{"a":58723,"n":"view_mountains_2","k":"routine","len":9,"c":true},{"a":58732,"n":"view_mountains_nearer_range_args","k":"table","len":6,"c":true},{"a":58738,"n":"view_mountains_end","k":"routine","len":1,"c":true},{"a":58739,"n":"view_forest","k":"routine","len":8,"c":true},{"a":58747,"n":"view_forest_args","k":"table","len":6,"c":true},{"a":58753,"n":"view_forest_end","k":"routine","len":1,"c":true},{"a":58754,"n":"terrain_cave","k":"routine","len":27,"c":true},{"a":58781,"n":"cave_walls_args","k":"table","len":6,"c":true},{"a":58787,"n":"cave_columns","k":"routine","len":44,"c":true},{"a":58831,"n":"cave_roof_args","k":"table","len":6,"c":true},{"a":58837,"n":"cave_roof_2","k":"routine","len":9,"c":true},{"a":58846,"n":"cave_lower_edge_roof_args","k":"table","len":6,"c":true},{"a":58852,"n":"cave_floor","k":"routine","len":8,"c":true},{"a":58860,"n":"cave_floor_args","k":"table","len":6,"c":true},{"a":58866,"n":"cave_end","k":"routine","len":1,"c":true},{"a":58867,"n":"terrain_hall","k":"routine","len":33,"c":true},{"a":58900,"n":"hall_room","k":"routine","len":10,"c":true},{"a":58910,"n":"hall_dots_wall_args","k":"table","len":6,"c":true},{"a":58916,"n":"hall_paint","k":"routine","len":77,"c":true},{"a":58993,"n":"hall_flat","k":"routine","len":14,"c":true},{"a":59007,"n":"hall_style_0_ceiling_edge_args","k":"table","len":4,"c":true},{"a":59011,"n":"hall_flat_beams","k":"routine","len":17,"c":true},{"a":59028,"n":"hall_style_0_beam_end_args","k":"table","len":4,"c":true},{"a":59032,"n":"hall_flat_beam","k":"routine","len":3,"c":true},{"a":59035,"n":"hall_style_0_beam_args","k":"table","len":4,"c":true},{"a":59039,"n":"hall_flat_end","k":"routine","len":17,"c":true},{"a":59056,"n":"hall_rafters","k":"routine","len":19,"c":true},{"a":59075,"n":"hall_style_1_first_rafter_args","k":"table","len":4,"c":true},{"a":59079,"n":"hall_rafters_2","k":"routine","len":3,"c":true},{"a":59082,"n":"hall_style_1_second_rafter_args","k":"table","len":4,"c":true},{"a":59086,"n":"hall_rafters_3","k":"routine","len":3,"c":true},{"a":59089,"n":"hall_style_1_ridge_args","k":"table","len":4,"c":true},{"a":59093,"n":"hall_rafters_fan","k":"routine","len":28,"c":true},{"a":59121,"n":"hall_trusses","k":"routine","len":3,"c":true},{"a":59124,"n":"hall_style_2_line_1_args","k":"table","len":4,"c":true},{"a":59128,"n":"hall_trusses_2","k":"routine","len":3,"c":true},{"a":59131,"n":"hall_style_2_line_2_args","k":"table","len":4,"c":true},{"a":59135,"n":"hall_trusses_3","k":"routine","len":3,"c":true},{"a":59138,"n":"hall_style_2_line_3_args","k":"table","len":4,"c":true},{"a":59142,"n":"hall_trusses_4","k":"routine","len":3,"c":true},{"a":59145,"n":"hall_style_2_line_4_args","k":"table","len":4,"c":true},{"a":59149,"n":"hall_trusses_5","k":"routine","len":3,"c":true},{"a":59152,"n":"hall_style_2_line_5_args","k":"table","len":4,"c":true},{"a":59156,"n":"hall_trusses_6","k":"routine","len":3,"c":true},{"a":59159,"n":"hall_style_2_line_6_args","k":"table","len":4,"c":true},{"a":59163,"n":"hall_trusses_7","k":"routine","len":3,"c":true},{"a":59166,"n":"hall_style_2_line_7_args","k":"table","len":4,"c":true},{"a":59170,"n":"hall_trusses_8","k":"routine","len":3,"c":true},{"a":59173,"n":"hall_style_2_line_8_args","k":"table","len":4,"c":true},{"a":59177,"n":"hall_trusses_9","k":"routine","len":3,"c":true},{"a":59180,"n":"hall_style_2_line_9_args","k":"table","len":4,"c":true},{"a":59184,"n":"hall_trusses_10","k":"routine","len":3,"c":true},{"a":59187,"n":"hall_style_2_line_10_args","k":"table","len":4,"c":true},{"a":59191,"n":"hall_trusses_fill","k":"routine","len":13,"c":true},{"a":59204,"n":"hall_style_2_line_11_args","k":"table","len":4,"c":true},{"a":59208,"n":"hall_trusses_12","k":"routine","len":3,"c":true},{"a":59211,"n":"hall_style_2_line_12_args","k":"table","len":4,"c":true},{"a":59215,"n":"hall_trusses_end","k":"routine","len":19,"c":true},{"a":59234,"n":"hall_vault","k":"routine","len":3,"c":true},{"a":59237,"n":"hall_style_3_first_stretch_curve_args","k":"table","len":4,"c":true},{"a":59241,"n":"hall_vault_2","k":"routine","len":3,"c":true},{"a":59244,"n":"hall_style_3_second_stretch_args","k":"table","len":4,"c":true},{"a":59248,"n":"hall_vault_fill","k":"routine","len":23,"c":true},{"a":59271,"n":"hall_style_3_rib_1_args","k":"table","len":4,"c":true},{"a":59275,"n":"hall_vault_3","k":"routine","len":3,"c":true},{"a":59278,"n":"hall_style_3_rib_2_args","k":"table","len":4,"c":true},{"a":59282,"n":"hall_vault_4","k":"routine","len":3,"c":true},{"a":59285,"n":"hall_style_3_rib_3_args","k":"table","len":4,"c":true},{"a":59289,"n":"hall_vault_5","k":"routine","len":3,"c":true},{"a":59292,"n":"hall_style_3_rib_4_args","k":"table","len":4,"c":true},{"a":59296,"n":"hall_vault_end","k":"routine","len":36,"c":true},{"a":59332,"n":"glyph_banks","k":"table","len":16,"c":true},{"a":59348,"n":"figure_shapes","k":"table","len":14,"c":true},{"a":59362,"n":"shape_0","k":"table","len":44,"c":true},{"a":59406,"n":"shape_1","k":"table","len":29,"c":true},{"a":59435,"n":"shape_2","k":"table","len":45,"c":true},{"a":59480,"n":"shape_3","k":"table","len":29,"c":true},{"a":59509,"n":"shape_4","k":"table","len":21,"c":true},{"a":59530,"n":"shape_5","k":"table","len":16,"c":true},{"a":59546,"n":"shape_6","k":"table","len":16,"c":true},{"a":59562,"n":"figure_records","k":"table","len":195,"c":true},{"a":59757,"n":"bank_0","k":"table","len":136,"c":true},{"a":59893,"n":"bank_1","k":"table","len":72,"c":true},{"a":59965,"n":"bank_2","k":"table","len":96,"c":true},{"a":60061,"n":"bank_3","k":"table","len":72,"c":true},{"a":60133,"n":"bank_4","k":"table","len":80,"c":true},{"a":60213,"n":"bank_5","k":"table","len":24,"c":true},{"a":60237,"n":"bank_6","k":"table","len":49,"c":true},{"a":60286,"n":"carry_tables","k":"table","len":14,"c":true},{"a":60300,"n":"object_codes","k":"table","len":17,"c":true},{"a":60317,"n":"carry_shape_0","k":"table","len":17,"c":true},{"a":60334,"n":"carry_shape_1","k":"table","len":9,"c":true},{"a":60343,"n":"carry_none","k":"table","len":5,"c":true},{"a":60348,"n":"object_glyphs","k":"table","len":128,"c":true},{"a":60476,"n":"unused_ec3c","k":"table","len":8,"c":true},{"a":60484,"n":"lying_glyphs","k":"table","len":151,"c":true},{"a":60635,"n":"window_glyphs","k":"table","len":32,"c":true},{"a":60667,"n":"tall_window_glyphs","k":"table","len":64,"c":true},{"a":60731,"n":"cupboard_open_lists","k":"table","len":67,"c":true},{"a":60798,"n":"cupboard_shut_lists","k":"table","len":112,"c":true},{"a":60910,"n":"door_glyphs","k":"table","len":32,"c":true},{"a":60942,"n":"gate_lists","k":"table","len":129,"c":true},{"a":61071,"n":"figure_walk","k":"routine","len":176,"c":true},{"a":61247,"n":"walk_steps","k":"variable","len":2,"c":true},{"a":61249,"n":"walk_next_frame","k":"routine","len":23,"c":true},{"a":61272,"n":"walk_pause","k":"routine","len":52,"c":true},{"a":61324,"n":"figure_put","k":"routine","len":30,"c":true},{"a":61354,"n":"check_figure","k":"routine","len":12,"c":true},{"a":61366,"n":"figure_vars","k":"table","len":3,"c":true},{"a":61369,"n":"find_figure","k":"routine","len":47,"c":true},{"a":61416,"n":"figure_shape","k":"table","len":4,"c":true},{"a":61420,"n":"select_bank","k":"routine","len":45,"c":true},{"a":61465,"n":"turn_figure","k":"routine","len":148,"c":true},{"a":61613,"n":"show_carried","k":"routine","len":31,"c":true},{"a":61644,"n":"show_optional","k":"routine","len":64,"c":true},{"a":61708,"n":"part_position","k":"routine","len":48,"c":true},{"a":61756,"n":"draw_object_glyph","k":"routine","len":28,"c":true},{"a":61784,"n":"draw_shape_copy","k":"routine","len":96,"c":true},{"a":61880,"n":"draw_bank_glyph","k":"routine","len":26,"c":true},{"a":61906,"n":"draw_figure","k":"routine","len":71,"c":true},{"a":61977,"n":"gfx_put","k":"routine","len":36,"c":true},{"a":62013,"n":"object_offset","k":"routine","len":22,"c":true},{"a":62035,"n":"object_vars","k":"table","len":5,"c":true},{"a":62040,"n":"object_glyph","k":"routine","len":96,"c":true},{"a":62136,"n":"object_xy","k":"variable","len":2,"c":true},{"a":62138,"n":"read_position","k":"routine","len":29,"c":true},{"a":62167,"n":"turn_object","k":"routine","len":21,"c":true},{"a":62188,"n":"draw_off","k":"variable","len":1,"c":true},{"a":62189,"n":"gfx_get_drop","k":"routine","len":280,"c":true},{"a":62469,"n":"gfx_lie","k":"routine","len":195,"c":true},{"a":62664,"n":"lie_vars","k":"table","len":6,"c":true},{"a":62670,"n":"gfx_appear","k":"routine","len":77,"c":true},{"a":62747,"n":"appear_patch","k":"table","len":7,"c":true},{"a":62754,"n":"fade_cells","k":"routine","len":83,"c":true},{"a":62837,"n":"fade_cell","k":"routine","len":38,"c":true},{"a":62875,"n":"fade_vars","k":"table","len":3,"c":true},{"a":62878,"n":"gfx_move","k":"routine","len":191,"c":true},{"a":63069,"n":"gfx_16","k":"routine","len":41,"c":true},{"a":63110,"n":"missile_glyphs","k":"table","len":18,"c":true},{"a":63128,"n":"gfx_missile","k":"routine","len":65,"c":true},{"a":63193,"n":"move_draw","k":"variable","len":1,"c":true},{"a":63194,"n":"gfx_blush","k":"routine","len":66,"c":true},{"a":63260,"n":"blush_cell","k":"variable","len":2,"c":true},{"a":63262,"n":"figure_setup","k":"routine","len":29,"c":true},{"a":63291,"n":"gfx_arms","k":"routine","len":116,"c":true},{"a":63407,"n":"graphics","k":"routine","len":46,"c":true},{"a":63453,"n":"gfx_table","k":"table","len":44,"c":true},{"a":63497,"n":"gfx_speed","k":"routine","len":5,"c":true},{"a":63502,"n":"gfx_random","k":"routine","len":9,"c":true},{"a":63511,"n":"gfx_fight","k":"routine","len":97,"c":true},{"a":63608,"n":"fight_blow","k":"variable","len":1,"c":true},{"a":63609,"n":"blow_up","k":"routine","len":7,"c":true},{"a":63616,"n":"blow_up_bits","k":"table","len":3,"c":true},{"a":63619,"n":"blow_down","k":"routine","len":7,"c":true},{"a":63626,"n":"blow_down_bits","k":"table","len":3,"c":true},{"a":63629,"n":"blow_other_up","k":"routine","len":7,"c":true},{"a":63636,"n":"blow_other_up_bits","k":"table","len":3,"c":true},{"a":63639,"n":"blow_other_down","k":"routine","len":7,"c":true},{"a":63646,"n":"blow_other_down_bits","k":"table","len":3,"c":true},{"a":63649,"n":"set_blow","k":"routine","len":18,"c":true},{"a":63667,"n":"gfx_eat","k":"routine","len":66,"c":true},{"a":63733,"n":"meal_objects","k":"variable","len":2,"c":true},{"a":63735,"n":"gfx_drink","k":"routine","len":18,"c":true},{"a":63753,"n":"arm_frame","k":"table","len":11,"c":true},{"a":63764,"n":"meal_start","k":"routine","len":48,"c":true},{"a":63812,"n":"meal_arm","k":"routine","len":33,"c":true},{"a":63845,"n":"meal_vars","k":"table","len":3,"c":true},{"a":63848,"n":"turn_frames","k":"routine","len":47,"c":true},{"a":63895,"n":"draw_frame","k":"routine","len":43,"c":true},{"a":63938,"n":"play_frames","k":"routine","len":52,"c":true},{"a":63990,"n":"frames_vars","k":"table","len":3,"c":true},{"a":63993,"n":"first_frame","k":"routine","len":32,"c":true},{"a":64025,"n":"eat_frames","k":"table","len":81,"c":true},{"a":64106,"n":"drink_frames","k":"table","len":101,"c":true},{"a":64207,"n":"gfx_feature","k":"routine","len":34,"c":true},{"a":64241,"n":"feature_table","k":"table","len":30,"c":true},{"a":64271,"n":"chest_shut_list","k":"table","len":19,"c":true},{"a":64290,"n":"chest_open_list","k":"table","len":19,"c":true},{"a":64309,"n":"feature_chest_shut","k":"routine","len":8,"c":true},{"a":64317,"n":"feature_chest_open","k":"routine","len":6,"c":true},{"a":64323,"n":"draw_glyph_list","k":"routine","len":10,"c":true},{"a":64333,"n":"glyph_list_at_cell","k":"routine","len":15,"c":true},{"a":64348,"n":"glyph_list_loop","k":"routine","len":33,"c":true},{"a":64381,"n":"feature_xy","k":"variable","len":2,"c":true},{"a":64383,"n":"draw_flag","k":"routine","len":51,"c":true},{"a":64434,"n":"flag_glyphs","k":"table","len":16,"c":true},{"a":64450,"n":"gfx_dark","k":"routine","len":9,"c":true},{"a":64459,"n":"gfx_flag","k":"routine","len":55,"c":true},{"a":64514,"n":"feature_black_sky","k":"routine","len":9,"c":true},{"a":64523,"n":"feature_hut","k":"routine","len":59,"c":true},{"a":64582,"n":"feature_castle_0","k":"routine","len":7,"c":true},{"a":64589,"n":"castle_0_tower_args","k":"table","len":3,"c":true},{"a":64592,"n":"castle_0_top","k":"routine","len":3,"c":true},{"a":64595,"n":"castle_0_battlements_args","k":"variable","len":2,"c":true},{"a":64597,"n":"castle_0_end","k":"routine","len":11,"c":true},{"a":64608,"n":"feature_castle_1","k":"routine","len":8,"c":true},{"a":64616,"n":"castle_1_left_tower_args","k":"table","len":3,"c":true},{"a":64619,"n":"castle_1_middle","k":"routine","len":3,"c":true},{"a":64622,"n":"castle_1_middle_tower_args","k":"table","len":3,"c":true},{"a":64625,"n":"castle_1_right","k":"routine","len":3,"c":true},{"a":64628,"n":"castle_1_right_tower_args","k":"table","len":3,"c":true},{"a":64631,"n":"castle_1_top","k":"routine","len":3,"c":true},{"a":64634,"n":"castle_1_left_battlements_args","k":"variable","len":2,"c":true},{"a":64636,"n":"castle_1_top_2","k":"routine","len":3,"c":true},{"a":64639,"n":"castle_1_right_battlements_args","k":"variable","len":2,"c":true},{"a":64641,"n":"castle_1_end","k":"routine","len":11,"c":true},{"a":64652,"n":"feature_castle_2","k":"routine","len":8,"c":true},{"a":64660,"n":"castle_2_keep_args","k":"table","len":3,"c":true},{"a":64663,"n":"castle_2_wall","k":"routine","len":3,"c":true},{"a":64666,"n":"castle_2_wall_args","k":"table","len":3,"c":true},{"a":64669,"n":"castle_2_top","k":"routine","len":3,"c":true},{"a":64672,"n":"castle_2_wall_battlements_args","k":"variable","len":2,"c":true},{"a":64674,"n":"castle_2_top_2","k":"routine","len":3,"c":true},{"a":64677,"n":"castle_2_keep_battlements_args","k":"variable","len":2,"c":true},{"a":64679,"n":"castle_2_end","k":"routine","len":11,"c":true},{"a":64690,"n":"feature_castle_3","k":"routine","len":8,"c":true},{"a":64698,"n":"castle_3_left_tower_args","k":"table","len":3,"c":true},{"a":64701,"n":"castle_3_wall","k":"routine","len":3,"c":true},{"a":64704,"n":"castle_3_wall_args","k":"table","len":3,"c":true},{"a":64707,"n":"castle_3_right","k":"routine","len":3,"c":true},{"a":64710,"n":"castle_3_right_tower_args","k":"table","len":3,"c":true},{"a":64713,"n":"castle_3_top","k":"routine","len":3,"c":true},{"a":64716,"n":"castle_3_left_battlements_args","k":"variable","len":2,"c":true},{"a":64718,"n":"castle_3_top_2","k":"routine","len":3,"c":true},{"a":64721,"n":"castle_3_right_battlements_args","k":"variable","len":2,"c":true},{"a":64723,"n":"castle_3_end","k":"routine","len":11,"c":true},{"a":64734,"n":"feature_door","k":"routine","len":48,"c":true},{"a":64782,"n":"door_frames","k":"table","len":16,"c":true},{"a":64798,"n":"feature_tall_window","k":"routine","len":61,"c":true},{"a":64859,"n":"feature_window","k":"routine","len":49,"c":true},{"a":64908,"n":"draw_gate","k":"routine","len":11,"c":true},{"a":64919,"n":"feature_gate","k":"routine","len":46,"c":true},{"a":64965,"n":"feature_cupboard_open","k":"routine","len":66,"c":true},{"a":65031,"n":"feature_cupboard_shut","k":"routine","len":55,"c":true},{"a":65086,"n":"gfx_reset_figure","k":"routine","len":30,"c":true},{"a":65116,"n":"signature","k":"table","len":13,"c":true},{"a":65129,"n":"interrupt","k":"routine","len":184,"c":true},{"a":65313,"n":"unused_ff21","k":"table","len":223,"c":true}],"records":[{"a":0,"t":"gap","n":23755},{"a":23755,"l":"rem_code","c":"Line 1, a REM whose text is machine code, called by address from the BASIC: three routines, at 23760, 23792 and 23819: thirteen letters x of filler after the first, and one more at 23856 ($5D30).","t":"text","b":[0,1,99,0,234],"d":"1 REM ","enc":"basic"},{"a":23760,"l":"scroll_text","c":"USR 23760 (lines 5010, 5016): scrolls the text area up a line, copying characters 33 to 640 of n$ (the first variable, its text at VARS + 6) down over 1 to 608, so the new line can go in at 609.","t":"code","b":[42,75,92],"m":"ld","oa":23627,"o":"hl,($5C4B)"},{"a":23763,"t":"code","b":[1,6,0],"m":"ld","o":"bc,$0006"},{"a":23766,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":23767,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":23768,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":23769,"t":"code","b":[1,32,0],"m":"ld","o":"bc,$0020"},{"a":23772,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":23773,"t":"code","b":[1,96,2],"m":"ld","o":"bc,$0260"},{"a":23776,"t":"code","b":[237,176],"m":"ldir"},{"a":23778,"t":"code","b":[201],"m":"ret"},{"a":23779,"l":"rem_filler","c":"Thirteen letters \"x\", filler that puts the next routine at 23792.","t":"byte","b":[120,120,120,120,120,120,120,120]},{"a":23787,"t":"byte","b":[120,120,120,120,120]},{"a":23792,"l":"save_game","c":"USR 23792 (\"save\", line 6050): saves the first 6,378 bytes of the variables ($18EA from VARS: n$, d$, the simple variables l, o and z, p$, c$, m$, d() and g$: everything before s$) to tape as one block with no header, through the ROM's SA-BYTES ($04C2) with flag $FF. The simple variables after s$, the food tally fo among them, are not saved. Before it, the low byte of the error handler's address, in the slot ERR_SP points to, is set to $25, the old address kept at $FFFA; after it, the address is put back.","t":"code","b":[42,61,92],"m":"ld","oa":23613,"o":"hl,($5C3D)"},{"a":23795,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":23796,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":23797,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":23798,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":23799,"t":"code","b":[54,37],"m":"ld","o":"(hl),$25"},{"a":23801,"t":"code","b":[237,83,250,255],"m":"ld","oa":65530,"o":"($FFFA),de"},{"a":23805,"t":"code","b":[62,255],"m":"ld","o":"a,$FF"},{"a":23807,"t":"code","b":[221,42,75,92],"m":"ld","oa":23627,"o":"ix,($5C4B)"},{"a":23811,"t":"code","b":[17,234,24],"m":"ld","o":"de,$18EA"},{"a":23814,"t":"code","b":[205,194,4],"m":"call","oa":1218,"o":"$04C2"},{"a":23817,"t":"code","b":[24,26],"m":"jr","oa":23845,"o":"restore_trap"},{"a":23819,"l":"load_game","c":"USR 23819 (\"load\", line 6255): the same, loading the block back over the variables with the ROM's LD-BYTES ($0556, carry set for LOAD).","t":"code","b":[42,61,92],"m":"ld","oa":23613,"o":"hl,($5C3D)"},{"a":23822,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":23823,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":23824,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":23825,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":23826,"t":"code","b":[54,37],"m":"ld","o":"(hl),$25"},{"a":23828,"t":"code","b":[237,83,250,255],"m":"ld","oa":65530,"o":"($FFFA),de"},{"a":23832,"t":"code","b":[55],"m":"scf"},{"a":23833,"t":"code","b":[62,255],"m":"ld","o":"a,$FF"},{"a":23835,"t":"code","b":[221,42,75,92],"m":"ld","oa":23627,"o":"ix,($5C4B)"},{"a":23839,"t":"code","b":[17,234,24],"m":"ld","o":"de,$18EA"},{"a":23842,"t":"code","b":[205,86,5],"m":"call","oa":1366,"o":"$0556"},{"a":23845,"l":"restore_trap","c":"Puts back the error handler's address saved at $FFFA, then returns (the last two bytes, LD (HL),D and RET, sit at $5D2E). This is where an error during the tape operation was meant to come: the routines change only the handler's low byte, to $25. In play the handler is break_trap, $DA3C, so an error goes to $DA25 instead, in the middle of find_word: BREAK pressed during \"save\" or \"load\" resets the Spectrum, and the game is lost (seen in play, both ways).","t":"code","b":[237,91,250,255],"m":"ld","oa":65530,"o":"de,($FFFA)","x":[23817]},{"a":23849,"t":"code","b":[42,61,92],"m":"ld","oa":23613,"o":"hl,($5C3D)"},{"a":23852,"t":"code","b":[115],"m":"ld","o":"(hl),e"},{"a":23853,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":23854,"t":"code","b":[114],"m":"ld","o":"(hl),d"},{"a":23855,"t":"code","b":[201],"m":"ret"},{"a":23856,"l":"rem_end","c":"The end of line 1: a last \"x\" and the line's ENTER.","t":"text","b":[120,13],"d":"x","enc":"basic"},{"a":23858,"l":"build_stamp","c":"Line 10: REM LEGEND (c) 1983 021083, the publisher, the year and, as day, month and year, 2 October 1983, the release date.","t":"text","b":[0,10,22,0,234,76,69,71,69,78,68,32,127,32,49,57,56,51,32,48,50,49,48,56,51,13],"d":"10 REM LEGEND \u00a9 1983 021083","enc":"basic"},{"a":23884,"l":"gx","c":"gx (15): every graphics command but one goes through here; line 6260, after \"load\", runs the same LET itself to send command 14. The caller has built the command in x$; LET x$=STR$ USR gi runs it (graphics), and the assignment that follows leaves x$ holding the number USR returned.","t":"text","b":[0,15,11,0,241,120,36,61,193,192,103,105,58,254,13],"d":"15 LET x$=STR$ USR gi: RETURN ","enc":"basic"},{"a":23899,"l":"fn_words","c":"The functions, defined once and used everywhere but FN n$. FN w$(n): word n of the dictionary d$, its first byte its length; FN n$(x,y) a byte of two nibbles, which no line uses; FN d$(x) a number as two bytes, high first; FN u and FN n the high and low nibbles of a character's code.","t":"text","b":[0,30,160,0,206,119,36,40,110,14,0,0,118,0,0,41,61,100,36,40,110,44,122,204,175,100,36,40,110,41,43,108,41,58,206,110,36,40,120,14,121,41,61,194,120,44,121,14,61,194,40,120,121,41,61,194,40,120,42,108,54,43,121,41,58,206,100,36,40,120,14,0,0,50,0,0,41,61,174,34,194,186,40,120,47,50,53,54,41,43,194,40,120,45,186,40,120,47,50,53,54,41,42,50,53,54,41,34,58,206,117,40,120,36,14,0,20,190,1,0,41,61,186,40,175,120,36,47,108,54,41,58,206,110,40,120,36,14,41,194,204,1,0,41,61,175,120,36,45,40,186,40,175,120,36,47,108,54,41,41,42,108,54,13],"d":"30 DEF FN w$(n)=d$(n,z TO CODE d$(n)+l): DEF FN n$(x,y)=CHR$ (x*l6+y): DEF FN d$(x)=VAL$ \"CHR$ INT (x/256)+CHR$ (x-INT (x/256)*256)\": DEF FN u(x$)=INT (CODE x$/l6): DEF FN n(x$)=CODE x$-(INT (CODE x$/l6))*l6","enc":"basic"},{"a":24063,"l":"fn_the","c":"FN t$(x): an object with \"the\" before it (none for a quest object, whose name has a capital), or an amount of crowns (ca) with \"s\" after it for money (word 97).","t":"text","b":[0,32,81,0,206,116,36,40,120,14,0,0,80,0,0,41,61,40,34,116,104,101,32,34,198,40,100,36,40,120,44,122,41,62,34,90,34,198,120,62,108,99,198,120,201,109,116,41,41,43,40,40,193,99,97,43,34,32,34,41,198,120,61,109,116,41,43,168,119,36,40,120,41,43,40,34,115,34,198,120,61,109,116,41,13],"d":"32 DEF FN t$(x)=(\"the \" AND (d$(x,z)>\"Z\" AND x>lc AND x<>mt))+((STR$ ca+\" \") AND x=mt)+FN w$(x)+(\"s\" AND x=mt)","enc":"basic"},{"a":24148,"l":"fn_article","c":"FN a$(x$): a word with its article: \"some food\", \"some wine\", \"some lightning\", \"an axe\", \"a sword\"; names (capitals) and \"you\" take none.","t":"text","b":[0,35,194,0,206,97,36,40,120,36,14,0,144,179,4,0,41,61,40,34,115,111,109,101,34,198,40,120,36,61,34,102,111,111,100,34,197,120,36,61,34,119,105,110,101,34,197,120,36,61,34,108,105,103,104,116,110,105,110,103,34,41,41,43,40,34,97,34,198,40,120,36,201,34,102,111,111,100,34,198,120,36,201,34,119,105,110,101,34,198,120,36,201,34,108,105,103,104,116,110,105,110,103,34,198,120,36,62,34,90,34,198,120,36,201,34,121,111,117,34,41,41,43,40,34,110,34,198,40,120,36,40,108,41,61,34,97,34,197,120,36,40,108,41,61,34,101,34,197,120,36,40,108,41,61,34,105,34,197,120,36,40,108,41,61,34,111,34,41,41,43,40,34,32,34,198,40,120,36,62,34,90,34,198,120,36,201,34,121,111,117,34,41,41,43,120,36,13],"d":"35 DEF FN a$(x$)=(\"some\" AND (x$=\"food\" OR x$=\"wine\" OR x$=\"lightning\"))+(\"a\" AND (x$<>\"food\" AND x$<>\"wine\" AND x$<>\"lightning\" AND x$>\"Z\" AND x$<>\"you\"))+(\"n\" AND (x$(l)=\"a\" OR x$(l)=\"e\" OR x$(l)=\"i\" OR x$(l)=\"o\"))+(\" \" AND (x$>\"Z\" AND x$<>\"you\"))+x$","enc":"basic"},{"a":24346,"l":"fn_article_n","c":"FN b$(n): word n with its article.","t":"text","b":[0,36,25,0,206,98,36,40,110,14,0,0,85,0,0,41,61,168,97,36,40,168,119,36,40,110,41,41,13],"d":"36 DEF FN b$(n)=FN a$(FN w$(n))","enc":"basic"},{"a":24375,"l":"fn_has","c":"FN h$(n): \"you have\" or \"Thor has\"; FN i$(n): \"you are\" or \"Thor is\".","t":"text","b":[0,37,92,0,206,104,36,40,110,14,0,0,24,0,0,41,61,168,119,36,40,110,41,43,40,34,32,104,97,118,101,34,198,110,61,108,41,43,40,34,32,104,97,115,34,198,110,62,108,41,58,206,105,36,40,110,14,0,0,1,0,0,41,61,168,119,36,40,110,41,43,40,34,32,97,114,101,34,198,110,61,108,41,43,40,34,32,105,115,34,198,110,62,108,41,13],"d":"37 DEF FN h$(n)=FN w$(n)+(\" have\" AND n=l)+(\" has\" AND n>l): DEF FN i$(n)=FN w$(n)+(\" are\" AND n=l)+(\" is\" AND n>l)","enc":"basic"},{"a":24471,"l":"fn_carries","c":"FN a(n,t): true when character n carries object t in any of the twelve slots of c$(n).","t":"text","b":[0,38,162,0,206,97,40,110,14,0,0,1,0,0,44,116,14,0,0,70,0,0,41,61,175,99,36,40,110,44,108,41,61,116,197,175,99,36,40,110,44,122,41,61,116,197,175,99,36,40,110,44,107,51,41,61,116,197,175,99,36,40,110,44,107,52,41,61,116,197,175,99,36,40,110,44,107,53,41,61,116,197,175,99,36,40,110,44,107,54,41,61,116,197,175,99,36,40,110,44,107,55,41,61,116,197,175,99,36,40,110,44,107,56,41,61,116,197,175,99,36,40,110,44,107,57,41,61,116,197,175,99,36,40,110,44,108,48,41,61,116,197,175,99,36,40,110,44,108,49,41,61,116,197,175,99,36,40,110,44,108,50,41,61,116,13],"d":"38 DEF FN a(n,t)=CODE c$(n,l)=t OR CODE c$(n,z)=t OR CODE c$(n,k3)=t OR CODE c$(n,k4)=t OR CODE c$(n,k5)=t OR CODE c$(n,k6)=t OR CODE c$(n,k7)=t OR CODE c$(n,k8)=t OR CODE c$(n,k9)=t OR CODE c$(n,l0)=t OR CODE c$(n,l1)=t OR CODE c$(n,l2)=t","enc":"basic"},{"a":24637,"l":"fn_lies_at","c":"FN v(h,t): true when object t lies at location h, in one of the six object slots of m$(h).","t":"text","b":[0,39,92,0,206,118,40,104,14,116,41,61,109,104,44,116,14,61,109,36,40,116,41,61,109,36,40,104,44,107,54,41,61,194,116,197,109,36,40,104,44,107,56,41,61,194,116,197,109,36,40,104,44,108,48,41,61,194,116,197,109,36,40,104,44,108,50,41,61,194,116,197,109,36,40,104,44,108,52,41,61,194,116,197,109,36,40,104,44,108,54,41,61,194,116,13],"d":"39 DEF FN v(h,t)=m$(h,k6)=CHR$ t OR m$(h,k8)=CHR$ t OR m$(h,l0)=CHR$ t OR m$(h,l2)=CHR$ t OR m$(h,l4)=CHR$ t OR m$(h,l6)=CHR$ t","enc":"basic"},{"a":24733,"l":"fn_numbers","c":"FN r(x): a random number from 1 to x. FN s(n) and FN t(n), the first byte of p$(n), are never used; FN w(n) and FN j(n), its second and third, are an object's weight and value, or a character's load. FN l(n) and FN x(n): character n's location and column, c$(n,13) and c$(n,14).","t":"text","b":[0,42,145,0,206,114,40,120,14,0,0,38,0,0,41,61,186,40,165,42,120,41,43,108,58,206,115,40,110,14,61,175,112,36,110,41,61,175,112,36,40,110,41,58,206,119,40,110,14,0,0,34,0,0,41,61,175,112,36,40,110,44,122,41,58,206,106,40,110,14,0,0,71,0,0,41,61,175,112,36,40,110,44,107,51,41,58,206,116,40,110,14,61,168,115,40,110,41,61,168,115,40,110,41,58,206,108,40,110,14,0,0,1,0,0,41,61,175,99,36,40,110,44,108,51,41,58,206,120,40,110,14,0,0,24,0,0,41,61,175,99,36,40,110,44,108,52,41,13],"d":"42 DEF FN r(x)=INT (RND*x)+l: DEF FN s(n)=CODE p$(n): DEF FN w(n)=CODE p$(n,z): DEF FN j(n)=CODE p$(n,k3): DEF FN t(n)=FN s(n): DEF FN l(n)=CODE c$(n,l3): DEF FN x(n)=CODE c$(n,l4)","enc":"basic"},{"a":24882,"l":"fn_qualities","c":"FN m(n): character n's crowns, two bytes of c$(n); then the qualities, the nibbles of c$(n,17) to c$(n,19), which match the inlay's table: FN g goodness (0 the worst, 15 the best), FN h charisma, FN y strength (the cap on c$(n,20): FN s$ makes it y x 16 + 15), FN b bravery, FN i brains, and FN p, which the inlay does not list: how readily the character moves on. No line uses FN b, so bravery changes nothing.","t":"text","b":[0,50,189,0,206,109,40,110,14,0,0,24,0,0,41,61,176,34,175,99,36,40,110,44,49,53,41,42,50,53,54,43,175,99,36,40,110,44,49,54,41,34,58,206,103,40,110,14,0,0,24,0,0,41,61,168,117,40,99,36,40,110,44,108,55,41,41,58,206,104,40,110,14,0,0,1,0,0,41,61,168,110,40,99,36,40,110,44,108,55,41,41,58,206,121,40,110,14,0,0,24,0,0,41,61,168,117,40,99,36,40,110,44,108,56,41,41,58,206,98,40,110,14,61,168,110,40,110,41,61,168,110,40,99,36,40,110,44,108,56,41,41,58,206,105,40,110,14,0,0,24,0,0,41,61,168,117,40,99,36,40,110,44,108,57,41,41,58,206,112,40,110,14,0,0,21,0,0,41,61,168,110,40,99,36,40,110,44,108,57,41,41,13],"d":"50 DEF FN m(n)=VAL \"CODE c$(n,15)*256+CODE c$(n,16)\": DEF FN g(n)=FN u(c$(n,l7)): DEF FN h(n)=FN n(c$(n,l7)): DEF FN y(n)=FN u(c$(n,l8)): DEF FN b(n)=FN n(c$(n,l8)): DEF FN i(n)=FN u(c$(n,l9)): DEF FN p(n)=FN n(c$(n,l9))","enc":"basic"},{"a":25075,"l":"fn_money_here","c":"FN q(h): the crowns lying at location h, two bytes of m$(h).","t":"text","b":[0,57,37,0,206,113,40,104,14,0,0,70,0,0,41,61,176,34,175,109,36,40,104,44,52,41,42,50,53,54,43,175,109,36,40,104,44,53,41,34,13],"d":"57 DEF FN q(h)=VAL \"CODE m$(h,4)*256+CODE m$(h,5)\"","enc":"basic"},{"a":25116,"l":"fn_tests","c":"FN o(): true when a command lacks an object or has a word in a slot the verb does not take; FN z(): true when it has any object at all. FN f(x,y): how far apart characters x and y are in goodness (co is 1), the measure of how much they dislike each other.","t":"text","b":[0,59,75,0,206,111,40,41,61,195,98,197,105,109,197,115,111,197,99,197,101,120,58,206,102,40,120,14,0,0,1,0,0,44,121,14,0,0,24,0,0,41,61,189,40,168,103,40,120,41,45,168,103,40,121,41,41,47,99,111,58,206,122,40,41,61,98,197,105,109,197,115,111,197,99,197,101,120,13],"d":"59 DEF FN o()=NOT b OR im OR so OR c OR ex: DEF FN f(x,y)=ABS (FN g(x)-FN g(y))/co: DEF FN z()=b OR im OR so OR c OR ex","enc":"basic"},{"a":25195,"l":"fn_strength","c":"FN k(n): character n's strength now, c$(n,20).","t":"text","b":[0,62,22,0,206,107,40,110,14,0,0,24,0,0,41,61,175,99,36,40,110,44,122,48,41,13],"d":"62 DEF FN k(n)=CODE c$(n,z0)","enc":"basic"},{"a":25221,"l":"fn_full_strength","c":"FN s$(n): character n's full strength as a character, FN y(n) x 16 + 15.","t":"text","b":[0,63,28,0,206,115,36,40,110,14,0,0,24,0,0,41,61,194,40,168,121,40,110,41,42,108,54,43,108,53,41,13],"d":"63 DEF FN s$(n)=CHR$ (FN y(n)*l6+l5)","enc":"basic"},{"a":25253,"l":"fn_verb","c":"FN v$(n,x$): a verb with its subject: \"you go\", \"Thor goes\", \"Thor gets\".","t":"text","b":[0,64,66,0,206,118,36,40,110,14,0,0,24,0,0,44,120,36,14,0,187,180,4,0,41,61,168,119,36,40,110,41,43,34,32,34,43,120,36,43,40,34,101,34,198,40,120,36,61,34,103,111,34,198,110,62,108,41,41,43,40,34,115,34,198,110,62,108,41,13],"d":"64 DEF FN v$(n,x$)=FN w$(n)+\" \"+x$+(\"e\" AND (x$=\"go\" AND n>l))+(\"s\" AND n>l)","enc":"basic"},{"a":25323,"l":"synt","c":"synt (100): reads the typed command. USR syntad runs parse_command, the flag at fad is cleared, and a game command (sc, the parse_result's slot 10) jumps to line sc x 50 - 700: l 5900, r 5950, pause 6000, save 6050, list 6100, who 6200, load 6250, print 6300, noprint 6350, copy 6400, what 6450, where 6500, help 6550, how 6600.","t":"text","b":[0,100,55,0,241,101,61,192,115,121,110,116,97,100,58,244,102,97,100,44,111,58,241,115,99,61,190,40,114,97,100,43,108,48,41,58,250,115,99,203,241,110,61,108,58,236,176,34,115,99,42,53,48,45,55,48,48,34,13],"d":"100 LET e=USR syntad: POKE fad,o: LET sc=PEEK (rad+l0): IF sc THEN LET n=l: GO TO VAL \"sc*50-700\"","enc":"basic"},{"a":25382,"l":"read_parse","c":"With no parser error, PEEKs the subject, verb, object and the rest from parse_result into s, v, b, im, so, c, ex and ca. A subject that is also the object (\"Thor, hit Thor\") sets e to 1, which answers \"what?\".","t":"text","b":[0,110,147,0,250,195,101,203,241,115,61,190,114,97,100,58,241,118,61,190,40,114,97,100,43,108,41,58,241,98,61,190,40,114,97,100,43,122,41,58,241,105,109,61,190,40,114,97,100,43,107,51,41,58,241,115,111,61,190,40,114,97,100,43,107,52,41,58,241,99,61,190,40,114,97,100,43,107,53,41,58,241,101,120,61,190,40,114,97,100,43,107,54,41,58,241,99,97,61,190,40,114,97,100,43,107,56,41,43,50,53,54,14,0,0,0,1,0,42,190,40,114,97,100,43,107,57,41,58,241,101,61,115,61,98,197,115,61,99,197,115,61,115,111,58,250,195,101,203,254,13],"d":"110 IF NOT e THEN LET s=PEEK rad: LET v=PEEK (rad+l): LET b=PEEK (rad+z): LET im=PEEK (rad+k3): LET so=PEEK (rad+k4): LET c=PEEK (rad+k5): LET ex=PEEK (rad+k6): LET ca=PEEK (rad+k8)+256*PEEK (rad+k9): LET e=s=b OR s=c OR s=so: IF NOT e THEN RETURN ","enc":"basic"},{"a":25533,"l":"parse_errors","c":"Any error but 4 answers \"what?\".","t":"text","b":[0,115,22,0,250,101,201,107,52,203,241,120,36,61,34,119,104,97,116,63,34,58,236,112,114,13],"d":"115 IF e<>k4 THEN LET x$=\"what?\": GO TO pr","enc":"basic"},{"a":25559,"l":"mary","c":"Error 4, a swear word: \"Mary is not amused...\". Mary (character 23) is brought on at the edge if she is elsewhere, and walks up to you.","t":"text","b":[0,120,116,0,241,110,61,176,34,50,51,34,58,241,120,36,61,34,77,97,114,121,32,105,115,32,110,111,116,32,97,109,117,115,101,100,46,46,46,34,58,237,112,114,58,241,103,61,110,58,241,120,61,168,120,40,110,41,58,241,121,61,168,120,40,108,41,58,241,100,61,120,60,121,58,241,120,50,61,121,45,100,43,195,100,58,250,104,201,168,108,40,110,41,203,237,101,102,105,58,241,120,50,61,121,45,100,43,195,100,58,241,121,61,111,58,237,103,112,13],"d":"120 LET n=VAL \"23\": LET x$=\"Mary is not amused...\": GO SUB pr: LET g=n: LET x=FN x(n): LET y=FN x(l): LET d=x<y: LET x2=y-d+NOT d: IF h<>FN l(n) THEN GO SUB efi: LET x2=y-d+NOT d: LET y=o: GO SUB gp","enc":"basic"},{"a":25679,"l":"mary_slap","c":"Mary puts out her arms, with a low beep, and lowers them; you blush (gemb); she walks back and turns, and is taken off again if she was not here.","t":"text","b":[0,122,117,0,241,121,61,111,58,241,120,49,61,120,58,237,103,109,58,241,120,61,120,50,58,237,103,97,114,109,111,58,215,108,47,108,48,44,45,108,48,58,237,103,97,114,109,100,58,241,116,61,120,58,241,103,61,108,58,241,120,61,168,120,40,108,41,58,237,103,101,109,98,58,241,120,50,61,120,49,58,241,120,49,61,116,58,241,103,61,110,58,237,103,109,58,241,100,61,195,100,58,250,104,201,168,108,40,110,41,203,241,120,61,120,50,58,237,103,112,13],"d":"122 LET y=o: LET x1=x: GO SUB gm: LET x=x2: GO SUB garmo: BEEP l/l0,-l0: GO SUB garmd: LET t=x: LET g=l: LET x=FN x(l): GO SUB gemb: LET x2=x1: LET x1=t: LET g=n: GO SUB gm: LET d=NOT d: IF h<>FN l(n) THEN LET x=x2: GO SUB gp","enc":"basic"},{"a":25800,"t":"text","b":[0,125,2,0,254,13],"d":"125 RETURN ","enc":"basic"},{"a":25806,"l":"rf","c":"rf (200): will the character told to act do it? Acting for yourself (s = ll), or on a command already agreed (iv), passes at once.","t":"text","b":[0,200,22,0,241,101,61,111,58,250,105,118,197,115,61,108,108,203,241,105,118,61,108,58,254,13],"d":"200 LET e=o: IF iv OR s=ll THEN LET iv=l: RETURN ","enc":"basic"},{"a":25832,"l":"rf_ask","c":"\"You ask Thor to get the axe.\" (rp2), a pause, then a refusal (\"Thor refuses to get the axe.\") one time in three; or, when you are the one asking and the character is the last one asked, by you or by another character, or the last you dealt with in a trade (la, also set by line 1129), whatever it answered, eleven times in twelve, since a second test refuses seven in eight of the asks the first lets through; or always when FN f, how far apart the two are in goodness, less half the asker's charisma, is above 2. A refusal gives back 4 of the 5 strength the command cost.","t":"text","b":[0,210,139,0,241,110,49,61,115,58,241,115,61,108,108,58,241,120,36,61,34,97,115,107,34,43,40,34,115,34,198,115,62,108,41,43,34,32,34,43,168,119,36,40,110,49,41,58,237,114,112,50,58,241,115,61,110,49,58,241,105,118,61,108,58,242,119,119,58,250,165,60,108,47,107,51,197,40,108,108,61,108,198,40,115,61,108,97,198,165,62,108,47,107,56,41,41,197,168,102,40,108,108,44,115,41,45,168,104,40,108,108,41,47,122,62,122,203,241,108,97,61,115,58,237,114,112,50,45,107,53,58,241,109,61,107,52,58,236,99,115,97,13],"d":"210 LET n1=s: LET s=ll: LET x$=\"ask\"+(\"s\" AND s>l)+\" \"+FN w$(n1): GO SUB rp2: LET s=n1: LET iv=l: PAUSE ww: IF RND<l/k3 OR (ll=l AND (s=la AND RND>l/k8)) OR FN f(ll,s)-FN h(ll)/z>z THEN LET la=s: GO SUB rp2-k5: LET m=k4: GO TO csa","enc":"basic"},{"a":25975,"l":"rf_accept","c":"Notes who was asked last (la) and returns.","t":"text","b":[0,215,8,0,241,108,97,61,115,58,254,13],"d":"215 LET la=s: RETURN ","enc":"basic"},{"a":25987,"l":"step_left","c":"Steps character n left (the command \"l\", line 5900): looks left along g$(1) from its own column for the first free one; if there is none, e = 1.","t":"text","b":[2,88,51,0,241,101,61,111,58,241,103,61,110,58,241,120,49,61,168,120,40,103,41,58,235,106,61,120,49,204,108,205,45,108,58,250,175,103,36,40,108,44,106,41,203,243,106,58,241,101,61,108,58,254,13],"d":"600 LET e=o: LET g=n: LET x1=FN x(g): FOR j=x1 TO l STEP -l: IF CODE g$(l,j) THEN NEXT j: LET e=l: RETURN ","enc":"basic"},{"a":26042,"l":"step_walk","c":"Walks n to the free column (gm) and records it in c$(n,14).","t":"text","b":[2,98,31,0,241,120,50,61,106,45,108,58,241,121,61,111,58,241,99,36,40,103,44,108,52,41,61,194,120,50,58,236,103,109,13],"d":"610 LET x2=j-l: LET y=o: LET c$(g,l4)=CHR$ x2: GO TO gm","enc":"basic"},{"a":26077,"l":"step_right","c":"Steps character n right (\"r\", line 5950), as step_left.","t":"text","b":[2,108,51,0,241,101,61,111,58,241,103,61,110,58,241,120,49,61,168,120,40,103,41,58,235,106,61,120,49,43,122,204,119,119,58,250,175,103,36,40,108,44,106,41,203,243,106,58,241,101,61,108,58,254,13],"d":"620 LET e=o: LET g=n: LET x1=FN x(g): FOR j=x1+z TO ww: IF CODE g$(l,j) THEN NEXT j: LET e=l: RETURN ","enc":"basic"},{"a":26132,"l":"step_right_walk","c":"Joins step_left's walk.","t":"text","b":[2,118,8,0,236,176,34,54,49,48,34,13],"d":"630 GO TO VAL \"610\"","enc":"basic"},{"a":26144,"l":"verb_go","c":"Verb 101, \"go\" (101 x 50 - 4000 = 1050, run from 1055): \"go to Thor\" and \"go north\" alike. A character must be here (error 6); a compass word typed short (\"n\" to \"nw\", words 40-47) is made the long one (88-95).","t":"text","b":[4,31,21,0,250,99,198,195,116,203,241,116,61,99,58,241,98,61,116,58,241,99,61,111,13],"d":"1055 IF c AND NOT t THEN LET t=c: LET b=t: LET c=o","enc":"basic"},{"a":26169,"t":"text","b":[4,33,16,0,250,168,111,40,41,197,116,62,108,110,203,236,118,101,114,13],"d":"1057 IF FN o() OR t>ln THEN GO TO ver","enc":"basic"},{"a":26189,"t":"text","b":[4,36,35,0,241,99,61,116,58,241,98,61,111,58,250,116,199,108,99,203,250,168,108,40,116,41,201,104,203,241,101,61,107,54,58,236,100,101,13],"d":"1060 LET c=t: LET b=o: IF t<=lc THEN IF FN l(t)<>h THEN LET e=k6: GO TO de","enc":"basic"},{"a":26228,"t":"text","b":[4,38,30,0,250,99,200,175,34,40,34,198,99,199,175,34,47,34,203,241,99,61,99,43,175,34,48,34,58,241,116,61,99,13],"d":"1062 IF c>=CODE \"(\" AND c<=CODE \"/\" THEN LET c=c+CODE \"0\": LET t=c","enc":"basic"},{"a":26262,"t":"text","b":[4,39,9,0,237,114,102,58,250,101,203,254,13],"d":"1063 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":26275,"l":"go_direction","c":"A direction: can the mover go that way (cango), to which location (mnex); the move is reported (rep); then you arrive at the new location (nloc), or another character departs (dep).","t":"text","b":[4,41,23,0,250,116,60,110,110,197,116,62,110,119,203,236,49,48,56,48,14,0,0,56,4,0,13],"d":"1065 IF t<nn OR t>nw THEN GO TO 1080","enc":"basic"},{"a":26302,"t":"text","b":[4,43,19,0,241,100,105,114,61,116,58,237,99,97,110,103,111,58,250,101,203,254,13],"d":"1067 LET dir=t: GO SUB cango: IF e THEN RETURN ","enc":"basic"},{"a":26325,"t":"text","b":[4,46,11,0,237,109,110,101,120,58,250,101,203,254,13],"d":"1070 GO SUB mnex: IF e THEN RETURN ","enc":"basic"},{"a":26340,"t":"text","b":[4,53,35,0,237,114,101,112,58,250,115,61,108,203,241,112,104,61,104,58,241,104,61,110,120,58,237,110,108,111,99,58,241,101,61,108,58,254,13],"d":"1077 GO SUB rep: IF s=l THEN LET ph=h: LET h=nx: GO SUB nloc: LET e=l: RETURN ","enc":"basic"},{"a":26379,"t":"text","b":[4,54,10,0,241,101,61,108,58,236,100,101,112,13],"d":"1078 LET e=l: GO TO dep","enc":"basic"},{"a":26393,"l":"go_to_thing","c":"\"go to\" a character or an object here: finds its column (an object's with mfi) and walks next to it, on the near side, or past anyone standing there to the next free column.","t":"text","b":[4,56,42,0,241,120,49,61,168,120,40,110,41,58,241,121,61,108,58,250,116,199,108,99,203,241,120,61,168,120,40,116,41,58,236,49,48,56,54,14,0,0,62,4,0,13],"d":"1080 LET x1=FN x(n): LET y=l: IF t<=lc THEN LET x=FN x(t): GO TO 1086","enc":"basic"},{"a":26439,"t":"text","b":[4,58,10,0,237,109,102,105,58,250,101,203,254,13],"d":"1082 GO SUB mfi: IF e THEN RETURN ","enc":"basic"},{"a":26453,"t":"text","b":[4,62,64,0,241,100,49,61,120,49,62,120,58,241,100,49,61,100,49,45,195,100,49,58,241,120,50,61,120,43,100,49,58,241,112,61,175,103,36,40,108,44,120,50,43,108,41,58,250,112,61,110,197,195,112,203,236,49,48,57,53,14,0,0,71,4,0,13],"d":"1086 LET d1=x1>x: LET d1=d1-NOT d1: LET x2=x+d1: LET p=CODE g$(l,x2+l): IF p=n OR NOT p THEN GO TO 1095","enc":"basic"},{"a":26521,"t":"text","b":[4,63,8,0,241,119,61,120,50,43,108,13],"d":"1087 LET w=x2+l","enc":"basic"},{"a":26533,"t":"text","b":[4,64,37,0,241,119,61,119,43,100,49,58,250,119,60,108,197,119,62,119,119,203,241,100,49,61,45,100,49,58,241,119,61,119,43,100,49,43,100,49,13],"d":"1088 LET w=w+d1: IF w<l OR w>ww THEN LET d1=-d1: LET w=w+d1+d1","enc":"basic"},{"a":26574,"t":"text","b":[4,65,19,0,250,175,103,36,40,108,44,119,41,203,236,176,34,49,48,56,56,34,13],"d":"1089 IF CODE g$(l,w) THEN GO TO VAL \"1088\"","enc":"basic"},{"a":26597,"t":"text","b":[4,66,8,0,241,120,50,61,119,45,108,13],"d":"1090 LET x2=w-l","enc":"basic"},{"a":26609,"t":"text","b":[4,71,19,0,241,121,61,111,58,237,103,109,58,241,120,61,120,50,58,236,109,111,13],"d":"1095 LET y=o: GO SUB gm: LET x=x2: GO TO mo","enc":"basic"},{"a":26632,"l":"verb_offer","c":"Verb 102, \"offer\" (1100, run from 1102), the start and the haggling of a trade. Only you can trade: anyone else told to refuses (5040). The object goes before the character if typed the other way round; the offer is pt. While a trade is under way (neg) the seller must be the same (ven: \"You are dealing with ...\") and so must the goods (vt: \"You are trying to buy ...\").","t":"text","b":[4,78,13,0,250,115,62,108,203,236,114,112,50,45,107,53,13],"d":"1102 IF s>l THEN GO TO rp2-k5","enc":"basic"},{"a":26649,"t":"text","b":[4,79,26,0,250,98,199,108,99,198,99,62,108,99,203,241,116,61,99,58,241,99,61,98,58,241,98,61,116,13],"d":"1103 IF b<=lc AND c>lc THEN LET t=c: LET c=b: LET b=t","enc":"basic"},{"a":26679,"t":"text","b":[4,80,12,0,250,105,109,197,115,111,203,236,118,101,114,13],"d":"1104 IF im OR so THEN GO TO ver","enc":"basic"},{"a":26695,"t":"text","b":[4,81,21,0,241,112,116,61,98,58,250,195,110,101,103,203,236,176,34,49,49,50,48,34,13],"d":"1105 LET pt=b: IF NOT neg THEN GO TO VAL \"1120\"","enc":"basic"},{"a":26720,"t":"text","b":[4,83,9,0,250,195,98,203,236,118,101,114,13],"d":"1107 IF NOT b THEN GO TO ver","enc":"basic"},{"a":26733,"t":"text","b":[4,85,75,0,250,99,198,99,201,118,101,110,203,241,101,61,108,58,241,120,36,61,34,89,111,117,32,97,114,101,32,100,101,97,108,105,110,103,32,119,105,116,104,32,34,43,168,119,36,40,118,101,110,41,43,34,44,32,110,111,116,32,34,43,168,119,36,40,99,41,43,34,46,34,58,236,112,114,13],"d":"1109 IF c AND c<>ven THEN LET e=l: LET x$=\"You are dealing with \"+FN w$(ven)+\", not \"+FN w$(c)+\".\": GO TO pr","enc":"basic"},{"a":26812,"t":"text","b":[4,86,77,0,250,101,120,198,101,120,201,118,116,203,241,101,61,108,58,241,120,36,61,34,89,111,117,32,97,114,101,32,116,114,121,105,110,103,32,116,111,32,98,117,121,32,34,43,168,116,36,40,118,116,41,43,34,44,32,110,111,116,32,34,43,168,116,36,40,101,120,41,43,34,46,34,58,236,112,114,13],"d":"1110 IF ex AND ex<>vt THEN LET e=l: LET x$=\"You are trying to buy \"+FN t$(vt)+\", not \"+FN t$(ex)+\".\": GO TO pr","enc":"basic"},{"a":26893,"t":"text","b":[4,91,9,0,236,176,34,49,49,51,48,34,13],"d":"1115 GO TO VAL \"1130\"","enc":"basic"},{"a":26906,"l":"trade_new","c":"A new trade, \"offer the sword to Thor for the axe\". Without \"for\" it is a gift (line 1750).","t":"text","b":[4,96,9,0,250,195,99,203,236,118,101,114,13],"d":"1120 IF NOT c THEN GO TO ver","enc":"basic"},{"a":26919,"t":"text","b":[4,97,14,0,250,195,101,120,203,236,176,34,49,55,53,48,34,13],"d":"1121 IF NOT ex THEN GO TO VAL \"1750\"","enc":"basic"},{"a":26937,"l":"trade_check","c":"The goods vt must not be money (\"You can't buy money.\") and the seller ven must be a character (\"Don't be silly.\"), here, and carrying them. The price vtv is the goods' value FN j, raised by f/32, where f is how far the seller is from you in goodness; when f is above 9 the seller may refuse outright, if RND x f is above 9.","t":"text","b":[4,98,57,0,241,118,101,110,61,99,58,241,118,116,61,101,120,58,250,118,116,61,109,116,203,241,101,61,108,58,241,120,36,61,34,89,111,117,32,99,97,110,39,116,32,98,117,121,32,109,111,110,101,121,46,34,58,236,112,114,13],"d":"1122 LET ven=c: LET vt=ex: IF vt=mt THEN LET e=l: LET x$=\"You can't buy money.\": GO TO pr","enc":"basic"},{"a":26998,"t":"text","b":[4,102,45,0,250,118,101,110,62,108,99,197,118,116,199,108,99,203,241,120,36,61,34,68,111,110,39,116,32,98,101,32,115,105,108,108,121,46,34,58,241,101,61,108,58,236,112,114,13],"d":"1126 IF ven>lc OR vt<=lc THEN LET x$=\"Don't be silly.\": LET e=l: GO TO pr","enc":"basic"},{"a":27047,"t":"text","b":[4,103,28,0,250,168,108,40,118,101,110,41,201,104,203,241,116,61,118,101,110,58,241,101,61,107,54,58,236,100,101,13],"d":"1127 IF FN l(ven)<>h THEN LET t=ven: LET e=k6: GO TO de","enc":"basic"},{"a":27079,"t":"text","b":[4,104,36,0,250,195,168,97,40,118,101,110,44,118,116,41,203,241,110,61,118,101,110,58,241,116,61,118,116,58,241,101,61,107,51,58,236,100,101,13],"d":"1128 IF NOT FN a(ven,vt) THEN LET n=ven: LET t=vt: LET e=k3: GO TO de","enc":"basic"},{"a":27119,"t":"text","b":[4,105,99,0,241,108,97,61,118,101,110,58,241,102,61,168,102,40,108,44,118,101,110,41,58,241,118,116,118,61,168,106,40,118,116,41,42,40,108,43,102,47,119,119,41,58,250,165,42,102,62,107,57,203,241,101,61,108,58,241,110,101,103,61,111,58,241,120,36,61,168,119,36,40,118,101,110,41,43,34,32,114,101,102,117,115,101,115,32,116,111,32,115,101,108,108,46,34,58,236,112,114,13],"d":"1129 LET la=ven: LET f=FN f(l,ven): LET vtv=FN j(vt)*(l+f/ww): IF RND*f>k9 THEN LET e=l: LET neg=o: LET x$=FN w$(ven)+\" refuses to sell.\": GO TO pr","enc":"basic"},{"a":27222,"l":"trade_offer","c":"The offer's worth ptv is its value, or the crowns offered: nothing offered is \"You must offer something.\", too little \"Thor says: the sword is not enough\". Another \"offer\" carries on the same trade.","t":"text","b":[4,106,45,0,241,110,101,103,61,108,58,241,112,116,118,61,111,58,250,112,116,203,241,112,116,118,61,168,106,40,112,116,41,58,250,112,116,61,109,116,203,241,112,116,118,61,99,97,13],"d":"1130 LET neg=l: LET ptv=o: IF pt THEN LET ptv=FN j(pt): IF pt=mt THEN LET ptv=ca","enc":"basic"},{"a":27271,"t":"text","b":[4,107,46,0,250,195,112,116,203,241,120,36,61,34,89,111,117,32,109,117,115,116,32,111,102,102,101,114,32,115,111,109,101,116,104,105,110,103,46,34,58,241,101,61,108,58,236,112,114,13],"d":"1131 IF NOT pt THEN LET x$=\"You must offer something.\": LET e=l: GO TO pr","enc":"basic"},{"a":27321,"t":"text","b":[4,108,66,0,250,112,116,118,60,118,116,118,203,241,101,61,108,58,241,120,36,61,168,119,36,40,118,101,110,41,43,34,32,115,97,121,115,58,32,34,43,168,116,36,40,112,116,41,43,34,32,105,115,32,110,111,116,32,101,110,111,117,103,104,34,58,236,110,112,13],"d":"1132 IF ptv<vtv THEN LET e=l: LET x$=FN w$(ven)+\" says: \"+FN t$(pt)+\" is not enough\": GO TO np","enc":"basic"},{"a":27391,"l":"trade_deal","c":"\"Thor accepts.\": you give your offer to the seller and the seller gives the goods to you, both through dov as the verb \"give\" (115), so the usual checks of carrying and weight apply; if the seller cannot give, it gives your offer back.","t":"text","b":[4,111,84,0,241,120,36,61,168,119,36,40,118,101,110,41,43,34,32,97,99,99,101,112,116,115,46,34,58,241,110,101,103,61,111,58,237,112,114,58,237,118,48,58,241,115,61,108,58,241,98,61,112,116,58,241,99,61,118,101,110,58,241,99,97,61,112,116,118,58,241,118,61,175,34,115,34,58,237,100,111,118,58,250,101,203,254,13],"d":"1135 LET x$=FN w$(ven)+\" accepts.\": LET neg=o: GO SUB pr: GO SUB v0: LET s=l: LET b=pt: LET c=ven: LET ca=ptv: LET v=CODE \"s\": GO SUB dov: IF e THEN RETURN ","enc":"basic"},{"a":27479,"t":"text","b":[4,116,95,0,241,118,61,175,34,115,34,58,241,115,61,118,101,110,58,241,98,61,118,116,58,241,99,97,61,118,116,118,58,241,99,61,108,58,237,100,111,118,58,250,101,203,241,101,112,61,111,58,241,118,61,175,34,115,34,58,241,115,61,118,101,110,58,241,99,61,108,58,241,98,61,112,116,58,241,99,97,61,112,116,118,58,237,100,111,118,58,241,101,112,61,108,58,254,13],"d":"1140 LET v=CODE \"s\": LET s=ven: LET b=vt: LET ca=vtv: LET c=l: GO SUB dov: IF e THEN LET ep=o: LET v=CODE \"s\": LET s=ven: LET c=l: LET b=pt: LET ca=ptv: GO SUB dov: LET ep=l: RETURN ","enc":"basic"},{"a":27578,"t":"text","b":[4,121,2,0,254,13],"d":"1145 RETURN ","enc":"basic"},{"a":27584,"l":"verb_take","c":"Verbs 103 \"get\" and 104 \"take\" (1150 and 1200, both run from 1201): picks up an object here, or takes it out of the open chest or cupboard (\"take the key from the chest\"; a shut one is \"the chest is shut\"). A character can't be taken (error 17, \"You can't get Thor\"), and money goes to line 1231.","t":"text","b":[4,177,19,0,241,118,36,61,34,103,101,116,34,58,241,103,114,61,103,103,101,116,13],"d":"1201 LET v$=\"get\": LET gr=gget","enc":"basic"},{"a":27607,"t":"text","b":[4,178,47,0,250,115,111,198,115,111,61,99,116,203,250,195,111,112,203,241,101,61,108,58,241,120,36,61,168,116,36,40,99,116,41,43,34,32,105,115,32,115,104,117,116,34,58,236,110,112,13],"d":"1202 IF so AND so=ct THEN IF NOT op THEN LET e=l: LET x$=FN t$(ct)+\" is shut\": GO TO np","enc":"basic"},{"a":27658,"t":"text","b":[4,179,13,0,250,115,111,61,99,116,203,241,115,111,61,111,13],"d":"1203 IF so=ct THEN LET so=o","enc":"basic"},{"a":27675,"t":"text","b":[4,180,11,0,250,168,111,40,41,203,236,118,101,114,13],"d":"1204 IF FN o() THEN GO TO ver","enc":"basic"},{"a":27690,"t":"text","b":[4,181,16,0,250,116,199,108,99,203,241,101,61,108,55,58,236,100,101,13],"d":"1205 IF t<=lc THEN LET e=l7: GO TO de","enc":"basic"},{"a":27710,"t":"text","b":[4,182,9,0,237,114,102,58,250,101,203,254,13],"d":"1206 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":27723,"t":"text","b":[4,185,15,0,250,116,61,109,116,203,236,176,34,49,50,51,49,34,13],"d":"1209 IF t=mt THEN GO TO VAL \"1231\"","enc":"basic"},{"a":27742,"t":"text","b":[4,186,10,0,237,109,102,105,58,250,101,203,254,13],"d":"1210 GO SUB mfi: IF e THEN RETURN ","enc":"basic"},{"a":27756,"l":"take_walk","c":"Walks to the object, first moving aside a character who stands on it, and turns to face it.","t":"text","b":[4,188,47,0,241,110,49,61,110,58,241,110,61,175,103,36,40,108,44,120,43,108,41,58,250,110,198,110,201,110,49,203,237,176,34,54,48,48,34,58,250,101,203,237,176,34,54,50,48,34,13],"d":"1212 LET n1=n: LET n=CODE g$(l,x+l): IF n AND n<>n1 THEN GO SUB VAL \"600\": IF e THEN GO SUB VAL \"620\"","enc":"basic"},{"a":27807,"t":"text","b":[4,189,76,0,241,110,61,110,49,58,241,103,61,110,58,241,119,61,120,58,241,120,49,61,168,120,40,110,41,58,241,100,49,61,40,120,49,60,119,41,45,40,120,49,62,119,41,58,241,120,50,61,119,45,100,49,58,250,100,62,108,198,175,103,36,40,108,44,120,50,43,108,41,203,241,120,50,61,119,13],"d":"1213 LET n=n1: LET g=n: LET w=x: LET x1=FN x(n): LET d1=(x1<w)-(x1>w): LET x2=w-d1: IF d>l AND CODE g$(l,x2+l) THEN LET x2=w","enc":"basic"},{"a":27887,"t":"text","b":[4,190,19,0,241,121,61,111,58,237,103,109,58,241,120,61,120,50,58,237,109,111,13],"d":"1214 LET y=o: GO SUB gm: LET x=x2: GO SUB mo","enc":"basic"},{"a":27910,"t":"text","b":[4,192,14,0,250,120,61,119,203,236,176,34,49,50,52,48,34,13],"d":"1216 IF x=w THEN GO TO VAL \"1240\"","enc":"basic"},{"a":27928,"t":"text","b":[4,196,19,0,250,40,120,60,119,41,201,100,40,110,41,203,237,103,116,117,114,110,13],"d":"1220 IF (x<w)<>d(n) THEN GO SUB gturn","enc":"basic"},{"a":27951,"t":"text","b":[4,198,16,0,241,120,61,119,58,250,105,110,203,241,120,61,99,111,110,13],"d":"1222 LET x=w: IF in THEN LET x=con","enc":"basic"},{"a":27971,"l":"take_object","c":"Takes the object off the ground (mget) and, for get and take, into the hands (bput), putting it back if bput refuses it (too heavy, no free slot, or a second weapon, shield or helmet); then draws the pick-up (gr: gget, or geatp and gdrinkp when eat and drink come this way for food and wine lying here).","t":"text","b":[4,201,38,0,237,109,103,101,116,58,250,118,36,61,34,103,101,116,34,203,237,98,112,117,116,58,250,101,203,237,109,112,117,116,58,241,101,61,108,58,254,13],"d":"1225 GO SUB mget: IF v$=\"get\" THEN GO SUB bput: IF e THEN GO SUB mput: LET e=l: RETURN ","enc":"basic"},{"a":28013,"t":"text","b":[4,202,42,0,241,120,61,119,58,241,121,61,111,58,250,105,110,203,241,122,36,61,103,36,40,122,44,120,43,108,41,58,241,103,61,116,58,241,100,61,111,58,237,103,112,13],"d":"1226 LET x=w: LET y=o: IF in THEN LET z$=g$(z,x+l): LET g=t: LET d=o: GO SUB gp","enc":"basic"},{"a":28059,"t":"text","b":[4,203,33,0,241,120,61,120,50,58,241,103,61,110,58,237,103,114,58,250,105,110,203,241,103,36,40,122,44,119,43,108,41,61,122,36,13],"d":"1227 LET x=x2: LET g=n: GO SUB gr: IF in THEN LET g$(z,w+l)=z$","enc":"basic"},{"a":28096,"t":"text","b":[4,204,2,0,254,13],"d":"1228 RETURN ","enc":"basic"},{"a":28102,"l":"take_money","c":"Money: the crowns are taken from the location (moms) and given to the taker (moba), which gives the wrong amount: see line 3410.","t":"text","b":[4,207,17,0,241,109,61,99,97,58,237,109,111,109,115,58,250,101,203,254,13],"d":"1231 LET m=ca: GO SUB moms: IF e THEN RETURN ","enc":"basic"},{"a":28123,"t":"text","b":[4,208,6,0,236,109,111,98,97,13],"d":"1232 GO TO moba","enc":"basic"},{"a":28133,"l":"take_beside","c":"The object is at the taker's own column: the same, without the walk.","t":"text","b":[4,216,11,0,250,105,110,203,241,120,61,99,111,110,13],"d":"1240 IF in THEN LET x=con","enc":"basic"},{"a":28148,"t":"text","b":[4,217,38,0,237,109,103,101,116,58,250,118,36,61,34,103,101,116,34,203,237,98,112,117,116,58,250,101,203,237,109,112,117,116,58,241,101,61,108,58,254,13],"d":"1241 GO SUB mget: IF v$=\"get\" THEN GO SUB bput: IF e THEN GO SUB mput: LET e=l: RETURN ","enc":"basic"},{"a":28190,"t":"text","b":[4,218,47,0,241,120,61,119,58,241,121,61,111,58,241,103,61,116,58,250,105,110,203,241,122,36,61,103,36,40,122,44,120,43,108,41,58,241,103,61,116,58,241,100,61,111,58,237,103,112,13],"d":"1242 LET x=w: LET y=o: LET g=t: IF in THEN LET z$=g$(z,x+l): LET g=t: LET d=o: GO SUB gp","enc":"basic"},{"a":28241,"t":"text","b":[4,219,73,0,241,112,61,120,43,100,40,110,41,45,195,100,40,110,41,58,241,112,61,112,43,40,112,60,111,41,42,119,119,58,241,100,61,175,103,36,40,122,44,120,43,108,44,122,41,58,237,103,112,58,241,120,36,61,194,122,43,194,103,43,194,112,43,194,111,43,194,100,58,237,103,120,13],"d":"1243 LET p=x+d(n)-NOT d(n): LET p=p+(p<o)*ww: LET d=CODE g$(z,x+l,z): GO SUB gp: LET x$=CHR$ z+CHR$ g+CHR$ p+CHR$ o+CHR$ d: GO SUB gx","enc":"basic"},{"a":28318,"t":"text","b":[4,220,18,0,250,105,110,203,241,103,36,40,122,44,120,43,108,41,61,122,36,13],"d":"1244 IF in THEN LET g$(z,x+l)=z$","enc":"basic"},{"a":28340,"t":"text","b":[4,223,37,0,250,118,36,61,34,103,101,116,34,203,241,120,36,61,194,107,55,43,194,110,43,194,116,43,194,120,43,194,111,43,194,100,58,236,103,120,13],"d":"1247 IF v$=\"get\" THEN LET x$=CHR$ k7+CHR$ n+CHR$ t+CHR$ x+CHR$ o+CHR$ d: GO TO gx","enc":"basic"},{"a":28381,"t":"text","b":[4,225,37,0,241,120,36,61,194,40,107,54,45,40,118,36,61,34,101,97,116,34,41,41,43,194,110,43,194,120,43,194,111,43,194,100,58,236,103,120,13],"d":"1249 LET x$=CHR$ (k6-(v$=\"eat\"))+CHR$ n+CHR$ x+CHR$ o+CHR$ d: GO TO gx","enc":"basic"},{"a":28422,"l":"verb_attack","c":"Verbs 105 \"hit\", 106 \"attack\" and 107 \"kill\" (1250, 1300 and 1350, all run from 1351), all the same: the victim b must be a character and here, and a weapon named with \"with\" must be carried (error 3).","t":"text","b":[5,71,17,0,250,195,98,197,115,111,197,99,197,101,120,203,236,118,101,114,13],"d":"1351 IF NOT b OR so OR c OR ex THEN GO TO ver","enc":"basic"},{"a":28443,"t":"text","b":[5,72,11,0,250,98,62,108,99,203,236,118,101,114,13],"d":"1352 IF b>lc THEN GO TO ver","enc":"basic"},{"a":28458,"t":"text","b":[5,73,24,0,250,168,108,40,98,41,201,104,203,241,116,61,98,58,241,101,61,107,54,58,236,100,101,13],"d":"1353 IF FN l(b)<>h THEN LET t=b: LET e=k6: GO TO de","enc":"basic"},{"a":28486,"t":"text","b":[5,74,31,0,250,105,109,203,250,195,168,97,40,110,44,105,109,41,203,241,116,61,105,109,58,241,101,61,107,51,58,236,100,101,13],"d":"1354 IF im THEN IF NOT FN a(n,im) THEN LET t=im: LET e=k3: GO TO de","enc":"basic"},{"a":28521,"t":"text","b":[5,75,17,0,241,118,61,175,34,106,34,58,237,114,102,58,250,101,203,254,13],"d":"1355 LET v=CODE \"j\": GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":28542,"l":"attack_goodness","c":"When you gave the command the attack is reported, and one time in two the attacker's goodness moves a step (16 in c$(s,17)): up if the victim is bad (goodness under 8), down if it is good. A step down from goodness 0 would be CHR$ of a negative number.","t":"text","b":[5,76,79,0,250,108,108,61,108,203,237,114,101,112,58,250,165,60,108,47,122,203,241,100,61,168,103,40,98,41,60,107,56,58,241,100,61,100,45,195,100,58,241,120,61,100,42,108,54,43,175,99,36,40,115,44,108,55,41,58,250,120,198,120,60,175,34,255,34,203,241,99,36,40,115,44,108,55,41,61,194,120,13],"d":"1356 IF ll=l THEN GO SUB rep: IF RND<l/z THEN LET d=FN g(b)<k8: LET d=d-NOT d: LET x=d*l6+CODE c$(s,l7): IF x AND x<CODE \" COPY \" THEN LET c$(s,l7)=CHR$ x","enc":"basic"},{"a":28625,"l":"fight","c":"The fight: the two are brought face to face (gap). If either has no weapon in slot 1, or its p$ starts above \"9\" (Gore, Nidhog, Nasher and Raven), the attacker first steps aside (4600); the fight goes on all the same.","t":"text","b":[5,80,58,0,241,97,36,61,34,34,58,237,103,97,112,58,250,195,175,99,36,40,115,41,197,195,175,99,36,40,98,41,197,112,36,40,115,41,62,34,57,34,197,112,36,40,98,41,62,34,57,34,203,237,176,34,52,54,48,48,34,13],"d":"1360 LET a$=\"\": GO SUB gap: IF NOT CODE c$(s) OR NOT CODE c$(b) OR p$(s)>\"9\" OR p$(b)>\"9\" THEN GO SUB VAL \"4600\"","enc":"basic"},{"a":28687,"l":"fight_strength","c":"Each side's score is its strength plus 40 for its weapon and 40 more if the weapon's number is above 66. The attacker's weapon is the object named with \"with\", so \"attack Thor\" alone is bare hands even with a sword carried, and anything numbered above 66 counts as the better weapon: a sword or Skalir, but food, wine or a key too; an axe, Felstrong or lightning gets 40. The defender's is whatever is in its slot 1. The side behind then adds 32 for a shield and 64 for a helmet, if it holds a weapon.","t":"text","b":[5,82,91,0,241,121,36,61,34,40,119,62,111,41,42,52,48,43,40,119,62,54,54,41,42,52,48,34,58,241,119,61,105,109,58,241,115,97,61,168,107,40,115,41,43,176,121,36,58,241,119,61,175,99,36,40,98,41,58,241,115,100,61,168,107,40,98,41,43,176,121,36,58,241,120,61,98,58,241,121,61,111,58,250,115,97,60,115,100,203,241,120,61,115,13],"d":"1362 LET y$=\"(w>o)*40+(w>66)*40\": LET w=im: LET sa=FN k(s)+VAL y$: LET w=CODE c$(b): LET sd=FN k(b)+VAL y$: LET x=b: LET y=o: IF sa<sd THEN LET x=s","enc":"basic"},{"a":28782,"t":"text","b":[5,83,18,0,250,175,99,36,40,120,44,122,41,203,241,121,61,121,43,119,119,13],"d":"1363 IF CODE c$(x,z) THEN LET y=y+ww","enc":"basic"},{"a":28804,"t":"text","b":[5,84,22,0,250,175,99,36,40,120,44,107,51,41,203,241,121,61,121,43,119,119,43,119,119,13],"d":"1364 IF CODE c$(x,k3) THEN LET y=y+ww+ww","enc":"basic"},{"a":28830,"t":"text","b":[5,85,18,0,250,195,175,99,36,40,120,41,203,236,176,34,49,51,54,56,34,13],"d":"1365 IF NOT CODE c$(x) THEN GO TO VAL \"1368\"","enc":"basic"},{"a":28852,"t":"text","b":[5,86,14,0,250,120,61,115,203,241,115,97,61,115,97,43,121,13],"d":"1366 IF x=s THEN LET sa=sa+y","enc":"basic"},{"a":28870,"t":"text","b":[5,87,14,0,250,120,61,98,203,241,115,100,61,115,100,43,121,13],"d":"1367 IF x=b THEN LET sd=sd+y","enc":"basic"},{"a":28888,"l":"fight_blows","c":"Two or three rounds of blows, each side's figure striking (1380). The outcome is already settled by the scores: the winner w and the loser d, with no luck in it.","t":"text","b":[5,90,73,0,235,114,61,108,204,122,43,40,165,62,108,47,122,41,58,241,110,61,115,58,237,176,34,49,51,56,48,34,58,241,110,61,98,58,237,176,34,49,51,56,48,34,58,243,114,58,241,119,61,115,58,241,100,61,98,58,250,115,97,60,115,100,203,241,119,61,100,58,241,100,61,115,13],"d":"1370 FOR r=l TO z+(RND>l/z): LET n=s: GO SUB VAL \"1380\": LET n=b: GO SUB VAL \"1380\": NEXT r: LET w=s: LET d=b: IF sa<sd THEN LET w=d: LET d=s","enc":"basic"},{"a":28965,"l":"fight_drawn","c":"Scores within 20: \"The fight is drawn.\", both lose 32 strength, and the weaker turns round and steps aside twice.","t":"text","b":[5,92,111,0,241,109,61,189,40,115,97,45,115,100,41,58,250,109,60,122,48,203,241,109,61,119,119,58,241,110,61,119,58,237,99,115,115,58,241,110,61,100,58,237,99,115,115,58,241,120,36,61,34,84,104,101,32,102,105,103,104,116,32,105,115,32,100,114,97,119,110,46,34,58,241,115,61,110,58,237,112,114,58,237,103,116,117,114,110,58,237,176,34,52,54,48,48,34,58,237,176,34,52,54,48,48,34,58,241,101,61,108,58,254,13],"d":"1372 LET m=ABS (sa-sd): IF m<z0 THEN LET m=ww: LET n=w: GO SUB css: LET n=d: GO SUB css: LET x$=\"The fight is drawn.\": LET s=n: GO SUB pr: GO SUB gturn: GO SUB VAL \"4600\": GO SUB VAL \"4600\": LET e=l: RETURN ","enc":"basic"},{"a":29080,"l":"fight_defeat","c":"A win by less than 64 over another character: \"Thor defeats Gripe\", the winner loses 32 strength and the loser 64, and the loser goes off to a random location (4110).","t":"text","b":[5,94,97,0,250,100,62,108,198,109,60,119,119,43,119,119,203,241,110,61,119,58,241,109,61,119,119,58,237,99,115,115,58,241,110,61,100,58,241,109,61,119,119,43,119,119,58,237,99,115,115,58,241,120,36,61,168,118,36,40,119,44,34,100,101,102,101,97,116,34,41,43,34,32,34,43,168,119,36,40,100,41,58,237,110,112,58,241,101,61,108,58,236,176,34,52,49,49,48,34,13],"d":"1374 IF d>l AND m<ww+ww THEN LET n=w: LET m=ww: GO SUB css: LET n=d: LET m=ww+ww: GO SUB css: LET x$=FN v$(w,\"defeat\")+\" \"+FN w$(d): GO SUB np: LET e=l: GO TO VAL \"4110\"","enc":"basic"},{"a":29181,"l":"fight_kill","c":"A win by 64 or more, or any loss of 20 or more by you: \"Thor kills Gripe\", the winner loses 32 strength and the loser dies (5615).","t":"text","b":[5,96,68,0,241,109,61,119,119,58,241,110,61,119,58,237,99,115,115,58,241,110,61,100,58,241,120,36,61,168,118,36,40,119,44,34,107,105,108,108,34,41,43,34,32,34,43,168,119,36,40,100,41,58,237,110,112,58,241,101,61,108,58,236,176,34,53,54,49,53,34,13],"d":"1376 LET m=ww: LET n=w: GO SUB css: LET n=d: LET x$=FN v$(w,\"kill\")+\" \"+FN w$(d): GO SUB np: LET e=l: GO TO VAL \"5615\"","enc":"basic"},{"a":29253,"l":"fight_blow","c":"One blow: the fighter's figure swings its weapon (graphics command 11 with a random 1 to 3), steps forward and back, with a short beep.","t":"text","b":[5,100,183,0,241,120,61,168,120,40,110,41,58,241,103,61,110,58,241,120,36,61,194,108,49,43,194,103,43,194,168,114,40,107,51,41,43,194,120,58,237,103,120,58,241,121,36,61,194,122,43,194,110,43,194,120,43,194,111,43,194,100,40,110,41,58,241,120,36,61,121,36,58,237,103,120,58,241,120,49,61,120,58,241,120,61,120,43,100,40,110,41,45,195,100,40,110,41,58,241,121,36,40,107,51,41,61,194,120,58,241,120,36,61,121,36,58,237,103,120,58,237,103,97,114,109,100,58,215,46,48,49,14,122,35,215,10,61,44,111,58,237,103,97,114,109,111,58,241,120,36,61,121,36,58,237,103,120,58,241,120,61,120,49,58,241,121,36,40,107,51,41,61,194,120,58,241,120,36,61,121,36,58,237,103,120,13],"d":"1380 LET x=FN x(n): LET g=n: LET x$=CHR$ l1+CHR$ g+CHR$ FN r(k3)+CHR$ x: GO SUB gx: LET y$=CHR$ z+CHR$ n+CHR$ x+CHR$ o+CHR$ d(n): LET x$=y$: GO SUB gx: LET x1=x: LET x=x+d(n)-NOT d(n): LET y$(k3)=CHR$ x: LET x$=y$: GO SUB gx: GO SUB garmd: BEEP .01,o: GO SUB garmo: LET x$=y$: GO SUB gx: LET x=x1: LET y$(k3)=CHR$ x: LET x$=y$: GO SUB gx","enc":"basic"},{"a":29440,"t":"text","b":[5,110,2,0,254,13],"d":"1390 RETURN ","enc":"basic"},{"a":29446,"l":"verb_drop","c":"Verb 108 \"drop\" (1400, run from 1402): money goes to 1430; otherwise the object leaves the hands (bget) and goes on the ground in the first free column ahead, the character stepping over if it must.","t":"text","b":[5,122,11,0,250,168,111,40,41,203,236,118,101,114,13],"d":"1402 IF FN o() THEN GO TO ver","enc":"basic"},{"a":29461,"t":"text","b":[5,123,9,0,237,114,102,58,250,101,203,254,13],"d":"1403 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":29474,"t":"text","b":[5,125,15,0,250,116,61,109,116,203,236,176,34,49,52,51,48,34,13],"d":"1405 IF t=mt THEN GO TO VAL \"1430\"","enc":"basic"},{"a":29493,"t":"text","b":[5,130,11,0,237,98,103,101,116,58,250,101,203,254,13],"d":"1410 GO SUB bget: IF e THEN RETURN ","enc":"basic"},{"a":29508,"t":"text","b":[5,131,5,0,241,121,61,111,13],"d":"1411 LET y=o","enc":"basic"},{"a":29517,"t":"text","b":[5,132,55,0,241,100,49,61,100,40,110,41,45,195,100,40,110,41,58,241,119,61,168,120,40,110,41,43,100,49,58,250,119,60,108,197,119,62,119,119,45,122,203,237,103,116,117,114,110,58,236,176,34,49,52,49,50,34,13],"d":"1412 LET d1=d(n)-NOT d(n): LET w=FN x(n)+d1: IF w<l OR w>ww-z THEN GO SUB gturn: GO TO VAL \"1412\"","enc":"basic"},{"a":29576,"t":"text","b":[5,133,22,0,250,195,175,103,36,40,122,44,119,43,108,41,203,236,176,34,49,52,49,56,34,13],"d":"1413 IF NOT CODE g$(z,w+l) THEN GO TO VAL \"1418\"","enc":"basic"},{"a":29602,"t":"text","b":[5,134,7,0,241,119,61,119,43,108,13],"d":"1414 LET w=w+l","enc":"basic"},{"a":29613,"t":"text","b":[5,135,37,0,241,119,61,119,43,100,49,58,250,119,60,108,197,119,62,119,119,203,241,100,49,61,45,100,49,58,241,119,61,119,43,100,49,43,100,49,13],"d":"1415 LET w=w+d1: IF w<l OR w>ww THEN LET d1=-d1: LET w=w+d1+d1","enc":"basic"},{"a":29654,"t":"text","b":[5,136,31,0,250,175,103,36,40,122,44,119,41,197,175,103,36,40,108,44,119,45,100,49,41,203,236,176,34,49,52,49,53,34,13],"d":"1416 IF CODE g$(z,w) OR CODE g$(l,w-d1) THEN GO TO VAL \"1415\"","enc":"basic"},{"a":29689,"t":"text","b":[5,137,40,0,241,119,61,119,45,108,58,241,120,49,61,168,120,40,110,41,58,241,120,50,61,119,45,100,49,58,237,103,109,58,241,120,61,120,50,58,237,109,111,13],"d":"1417 LET w=w-l: LET x1=FN x(n): LET x2=w-d1: GO SUB gm: LET x=x2: GO SUB mo","enc":"basic"},{"a":29733,"t":"text","b":[5,138,35,0,241,120,61,168,120,40,110,41,58,241,100,61,100,40,110,41,58,237,103,100,114,111,112,58,241,120,61,119,58,236,109,112,117,116,13],"d":"1418 LET x=FN x(n): LET d=d(n): GO SUB gdrop: LET x=w: GO TO mput","enc":"basic"},{"a":29772,"l":"drop_money","c":"Money: the crowns are taken from the dropper (mobs) and left at the location (moma).","t":"text","b":[5,150,17,0,241,109,61,99,97,58,237,109,111,98,115,58,250,101,203,254,13],"d":"1430 LET m=ca: GO SUB mobs: IF e THEN RETURN ","enc":"basic"},{"a":29793,"t":"text","b":[5,155,6,0,236,109,111,109,97,13],"d":"1435 GO TO moma","enc":"basic"},{"a":29803,"l":"verb_throw","c":"Verb 109 \"throw\" (1450, run from 1452): throws an object at a character or another object (1455). A character hit fights back: it attacks the thrower with its own weapon (1350).","t":"text","b":[5,172,66,0,237,176,34,49,52,53,53,34,58,250,195,101,198,99,199,108,99,203,241,118,61,175,34,106,34,58,241,98,61,115,58,241,115,61,99,58,241,99,61,111,58,241,105,109,61,175,99,36,40,115,41,58,237,114,101,112,58,236,176,34,49,51,53,48,34,13],"d":"1452 GO SUB VAL \"1455\": IF NOT e AND c<=lc THEN LET v=CODE \"j\": LET b=s: LET s=c: LET c=o: LET im=CODE c$(s): GO SUB rep: GO TO VAL \"1350\"","enc":"basic"},{"a":29873,"t":"text","b":[5,174,2,0,254,13],"d":"1454 RETURN ","enc":"basic"},{"a":29879,"l":"throw_check","c":"Needs an object and a target, neither of them money; the object leaves the hands, then the target must be here. A target character that is not here gives the object back to the hands (bput, line 1462), but every later check that fails loses it: after a refusal (rf), a target object not found (mfi) or a throw from too close, it is never put down again.","t":"text","b":[5,175,31,0,250,195,98,197,195,99,197,105,109,197,115,111,197,101,120,197,99,61,109,116,197,98,61,109,116,203,236,118,101,114,13],"d":"1455 IF NOT b OR NOT c OR im OR so OR ex OR c=mt OR b=mt THEN GO TO ver","enc":"basic"},{"a":29914,"t":"text","b":[5,180,11,0,237,98,103,101,116,58,250,101,203,254,13],"d":"1460 GO SUB bget: IF e THEN RETURN ","enc":"basic"},{"a":29929,"t":"text","b":[5,182,36,0,250,99,199,108,99,203,250,168,108,40,99,41,201,104,203,237,98,112,117,116,58,241,101,61,107,54,58,241,116,61,99,58,236,100,101,13],"d":"1462 IF c<=lc THEN IF FN l(c)<>h THEN GO SUB bput: LET e=k6: LET t=c: GO TO de","enc":"basic"},{"a":29969,"t":"text","b":[5,183,9,0,237,114,102,58,250,101,203,254,13],"d":"1463 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":29982,"t":"text","b":[5,184,15,0,250,99,199,108,99,203,241,120,61,168,120,40,99,41,13],"d":"1464 IF c<=lc THEN LET x=FN x(c)","enc":"basic"},{"a":30001,"t":"text","b":[5,185,21,0,250,99,62,108,99,203,241,116,61,99,58,237,109,102,105,58,250,101,203,254,13],"d":"1465 IF c>lc THEN LET t=c: GO SUB mfi: IF e THEN RETURN ","enc":"basic"},{"a":30026,"l":"throw_damage","c":"Faces the target; the damage m is 10 for a sword or Skalir, 20 for an axe or Felstrong, 30 for lightning, 40 for a fireball and 2 for anything else, taken from a character's strength at once.","t":"text","b":[5,191,37,0,241,120,49,61,168,120,40,110,41,58,241,120,50,61,120,58,250,40,120,49,60,120,50,41,201,100,40,110,41,203,237,103,116,117,114,110,13],"d":"1471 LET x1=FN x(n): LET x2=x: IF (x1<x2)<>d(n) THEN GO SUB gturn","enc":"basic"},{"a":30067,"t":"text","b":[5,192,65,0,241,109,61,176,34,40,98,61,54,55,197,98,61,54,57,41,42,49,48,43,40,98,61,54,51,197,98,61,54,52,41,42,50,48,43,40,98,61,54,54,41,42,51,48,43,40,98,61,56,55,41,42,52,48,34,58,250,195,109,203,241,109,61,122,13],"d":"1472 LET m=VAL \"(b=67 OR b=69)*10+(b=63 OR b=64)*20+(b=66)*30+(b=87)*40\": IF NOT m THEN LET m=z","enc":"basic"},{"a":30136,"t":"text","b":[5,193,16,0,250,99,199,108,99,203,241,110,61,99,58,237,99,115,115,13],"d":"1473 IF c<=lc THEN LET n=c: GO SUB css","enc":"basic"},{"a":30156,"l":"throw_magic","c":"Lightning (66) or a fireball (87) flies as a missile (gfire, w = 1 for lightning) and is not put down anywhere.","t":"text","b":[5,195,32,0,250,98,61,175,34,66,34,197,98,61,175,34,87,34,203,241,119,61,98,61,175,34,66,34,58,236,103,102,105,114,101,13],"d":"1475 IF b=CODE \"B\" OR b=CODE \"W\" THEN LET w=b=CODE \"B\": GO TO gfire","enc":"basic"},{"a":30192,"l":"throw_fly","c":"A target under 2 columns away is \"too close to throw\", but the damage has been done and the object is gone (seen in play: food thrown at Thor from beside him vanished and Thor lost 2 strength). Otherwise the object flies to the target's column, or the nearest free one, with a beep, and lands there (mput).","t":"text","b":[5,202,62,0,250,189,40,120,50,45,120,49,41,60,122,203,241,120,36,61,168,105,36,40,115,41,43,34,32,116,111,111,32,99,108,111,115,101,32,116,111,32,116,104,114,111,119,32,34,43,168,116,36,40,98,41,58,241,101,61,108,58,236,110,112,13],"d":"1482 IF ABS (x2-x1)<z THEN LET x$=FN i$(s)+\" too close to throw \"+FN t$(b): LET e=l: GO TO np","enc":"basic"},{"a":30258,"t":"text","b":[5,204,114,0,241,120,61,120,49,58,241,100,61,40,120,60,120,50,41,45,40,120,62,120,50,41,58,241,120,49,61,120,49,43,100,58,241,100,61,100,62,111,58,241,121,61,108,58,241,116,61,98,58,237,103,100,114,111,112,58,241,103,61,116,58,250,195,175,103,36,40,122,44,120,50,43,108,41,203,237,103,109,58,215,108,47,108,48,44,45,108,48,58,241,120,61,120,50,58,237,103,112,58,241,121,61,111,58,237,103,112,58,236,109,112,117,116,13],"d":"1484 LET x=x1: LET d=(x<x2)-(x>x2): LET x1=x1+d: LET d=d>o: LET y=l: LET t=b: GO SUB gdrop: LET g=t: IF NOT CODE g$(z,x2+l) THEN GO SUB gm: BEEP l/l0,-l0: LET x=x2: GO SUB gp: LET y=o: GO SUB gp: GO TO mput","enc":"basic"},{"a":30376,"t":"text","b":[5,206,16,0,241,97,61,100,45,195,100,58,241,119,61,120,50,43,108,13],"d":"1486 LET a=d-NOT d: LET w=x2+l","enc":"basic"},{"a":30396,"t":"text","b":[5,207,34,0,241,119,61,119,43,97,58,250,119,62,119,119,197,195,119,203,241,97,61,45,97,45,188,97,58,236,176,34,49,52,56,55,34,13],"d":"1487 LET w=w+a: IF w>ww OR NOT w THEN LET a=-a-SGN a: GO TO VAL \"1487\"","enc":"basic"},{"a":30434,"t":"text","b":[5,208,28,0,250,175,103,36,40,122,44,119,41,203,241,97,61,45,97,45,188,97,58,236,176,34,49,52,56,55,34,13],"d":"1488 IF CODE g$(z,w) THEN LET a=-a-SGN a: GO TO VAL \"1487\"","enc":"basic"},{"a":30466,"t":"text","b":[5,215,101,0,241,119,61,119,45,108,58,241,100,61,120,50,60,119,58,241,122,36,61,103,36,40,122,44,120,50,43,108,41,58,237,103,109,58,215,108,47,108,48,44,45,108,48,58,241,120,49,61,120,50,58,241,120,50,61,119,58,237,103,109,58,241,103,36,40,122,44,120,49,43,108,41,61,122,36,58,241,120,61,120,50,58,237,103,112,58,241,121,61,111,58,237,103,112,58,236,109,112,117,116,13],"d":"1495 LET w=w-l: LET d=x2<w: LET z$=g$(z,x2+l): GO SUB gm: BEEP l/l0,-l0: LET x1=x2: LET x2=w: GO SUB gm: LET g$(z,x1+l)=z$: LET x=x2: GO SUB gp: LET y=o: GO SUB gp: GO TO mput","enc":"basic"},{"a":30571,"l":"verb_jump","c":"Verb 110 \"jump\" (1500, run from 1505), with no object: through a ringway. Needs the ring (85; Drapnir does not count) and a ringway here (wh, m$(h,3): \"There is no ringway here.\"); then the move is as for going (1077).","t":"text","b":[5,225,11,0,250,168,122,40,41,203,236,118,101,114,13],"d":"1505 IF FN z() THEN GO TO ver","enc":"basic"},{"a":30586,"t":"text","b":[5,230,28,0,241,116,61,175,34,85,34,58,250,195,168,97,40,110,44,116,41,203,241,101,61,107,51,58,236,100,101,13],"d":"1510 LET t=CODE \"U\": IF NOT FN a(n,t) THEN LET e=k3: GO TO de","enc":"basic"},{"a":30618,"t":"text","b":[5,232,9,0,237,114,102,58,250,101,203,254,13],"d":"1512 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":30631,"t":"text","b":[5,235,46,0,250,195,119,104,203,241,101,61,108,58,241,120,36,61,34,84,104,101,114,101,32,105,115,32,110,111,32,114,105,110,103,119,97,121,32,104,101,114,101,46,34,58,236,112,114,13],"d":"1515 IF NOT wh THEN LET e=l: LET x$=\"There is no ringway here.\": GO TO pr","enc":"basic"},{"a":30681,"t":"text","b":[5,240,16,0,241,110,120,61,119,104,58,236,176,34,49,48,55,55,34,13],"d":"1520 LET nx=wh: GO TO VAL \"1077\"","enc":"basic"},{"a":30701,"l":"verb_put","c":"Verb 112 \"put\" (1600, run from 1605): \"put the key in the chest\". The container must be the chest (68) or the cupboard (73), else error 5, and the one here must be open; the object must be carried, and not money. The putter walks to the container and the object goes in (mput with the column con, 255, that marks the inside).","t":"text","b":[6,69,21,0,250,195,98,197,195,99,197,105,109,197,115,111,197,101,120,203,236,118,101,114,13],"d":"1605 IF NOT b OR NOT c OR im OR so OR ex THEN GO TO ver","enc":"basic"},{"a":30726,"t":"text","b":[6,74,25,0,250,99,201,175,34,68,34,198,99,201,175,34,73,34,203,241,101,61,107,53,58,236,100,101,13],"d":"1610 IF c<>CODE \"D\" AND c<>CODE \"I\" THEN LET e=k5: GO TO de","enc":"basic"},{"a":30755,"t":"text","b":[6,76,21,0,250,98,199,108,99,197,98,61,109,116,203,241,101,61,108,55,58,236,100,101,13],"d":"1612 IF b<=lc OR b=mt THEN LET e=l7: GO TO de","enc":"basic"},{"a":30780,"t":"text","b":[6,77,39,0,250,99,116,198,195,111,112,203,241,120,36,61,168,116,36,40,99,41,43,34,32,105,115,32,115,104,117,116,34,58,241,101,61,108,58,236,110,112,13],"d":"1613 IF ct AND NOT op THEN LET x$=FN t$(c)+\" is shut\": LET e=l: GO TO np","enc":"basic"},{"a":30823,"t":"text","b":[6,79,9,0,237,114,102,58,250,101,203,254,13],"d":"1615 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":30836,"t":"text","b":[6,80,20,0,250,195,168,97,40,110,44,98,41,203,241,101,61,107,51,58,236,100,101,13],"d":"1616 IF NOT FN a(n,b) THEN LET e=k3: GO TO de","enc":"basic"},{"a":30860,"t":"text","b":[6,81,19,0,241,116,61,99,58,237,176,34,49,48,56,48,34,58,250,101,203,254,13],"d":"1617 LET t=c: GO SUB VAL \"1080\": IF e THEN RETURN ","enc":"basic"},{"a":30883,"t":"text","b":[6,84,23,0,241,116,61,98,58,241,120,61,99,111,110,58,237,109,112,117,116,58,250,101,203,254,13],"d":"1620 LET t=b: LET x=con: GO SUB mput: IF e THEN RETURN ","enc":"basic"},{"a":30910,"t":"text","b":[6,89,83,0,237,98,103,101,116,58,241,120,36,61,194,107,56,43,194,110,43,194,116,43,194,168,120,40,110,41,43,194,111,43,194,100,40,110,41,58,237,103,120,58,241,120,36,61,194,122,43,194,116,43,194,40,168,120,40,110,41,43,100,40,110,41,45,195,100,40,110,41,41,43,194,111,43,194,100,40,110,41,58,236,103,120,13],"d":"1625 GO SUB bget: LET x$=CHR$ k8+CHR$ n+CHR$ t+CHR$ FN x(n)+CHR$ o+CHR$ d(n): GO SUB gx: LET x$=CHR$ z+CHR$ t+CHR$ (FN x(n)+d(n)-NOT d(n))+CHR$ o+CHR$ d(n): GO TO gx","enc":"basic"},{"a":30997,"l":"verb_drink","c":"Verb 114 \"drink\" (1700, run from 1705): only wine (70), and \"drink\" alone means wine. Wine carried is drunk at once (gdrink); wine lying here is fetched first, as \"get\" fetches (gdrinkp).","t":"text","b":[6,169,22,0,241,120,61,175,34,70,34,58,250,195,116,203,241,116,61,120,58,241,98,61,116,13],"d":"1705 LET x=CODE \"F\": IF NOT t THEN LET t=x: LET b=t","enc":"basic"},{"a":31023,"t":"text","b":[6,171,15,0,250,116,201,120,203,241,101,61,108,55,58,236,100,101,13],"d":"1707 IF t<>x THEN LET e=l7: GO TO de","enc":"basic"},{"a":31042,"t":"text","b":[6,172,9,0,237,114,102,58,250,101,203,254,13],"d":"1708 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":31055,"t":"text","b":[6,174,32,0,250,168,97,40,110,44,116,41,203,237,98,103,101,116,58,241,120,61,168,120,40,110,41,58,236,103,100,114,105,110,107,13],"d":"1710 IF FN a(n,t) THEN GO SUB bget: LET x=FN x(n): GO TO gdrink","enc":"basic"},{"a":31091,"t":"text","b":[6,179,33,0,241,103,114,61,103,100,114,105,110,107,112,58,241,118,36,61,34,100,114,105,110,107,34,58,236,176,34,49,50,48,50,34,13],"d":"1715 LET gr=gdrinkp: LET v$=\"drink\": GO TO VAL \"1202\"","enc":"basic"},{"a":31128,"l":"verb_give","c":"Verb 115 \"give\" (1750, run from 1752): \"give the axe to Thor\". The receiver must be here and the giver must carry the object; the gift is the giver dropping it (verb 108) and the receiver taking it (verb 104), through dov; if the receiver cannot take it, the giver picks it up again.","t":"text","b":[6,216,26,0,250,116,199,108,99,198,99,62,108,99,203,241,116,61,99,58,241,99,61,98,58,241,98,61,116,13],"d":"1752 IF t<=lc AND c>lc THEN LET t=c: LET c=b: LET b=t","enc":"basic"},{"a":31158,"t":"text","b":[6,219,31,0,250,195,98,197,195,99,197,98,199,108,99,197,99,62,108,99,197,105,109,197,115,111,197,101,120,203,236,118,101,114,13],"d":"1755 IF NOT b OR NOT c OR b<=lc OR c>lc OR im OR so OR ex THEN GO TO ver","enc":"basic"},{"a":31193,"t":"text","b":[6,221,9,0,237,114,102,58,250,101,203,254,13],"d":"1757 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":31206,"t":"text","b":[6,224,26,0,250,116,201,109,116,203,250,195,168,97,40,110,44,116,41,203,241,101,61,107,51,58,236,100,101,13],"d":"1760 IF t<>mt THEN IF NOT FN a(n,t) THEN LET e=k3: GO TO de","enc":"basic"},{"a":31236,"t":"text","b":[6,229,24,0,250,168,108,40,99,41,201,104,203,241,116,61,99,58,241,101,61,107,54,58,236,100,101,13],"d":"1765 IF FN l(c)<>h THEN LET t=c: LET e=k6: GO TO de","enc":"basic"},{"a":31264,"t":"text","b":[6,234,22,0,241,98,50,61,98,58,241,98,61,99,58,237,103,97,112,58,241,98,61,98,50,13],"d":"1770 LET b2=b: LET b=c: GO SUB gap: LET b=b2","enc":"basic"},{"a":31290,"t":"text","b":[6,250,35,0,241,115,50,61,115,58,241,99,50,61,99,58,241,99,61,111,58,241,118,61,175,34,108,34,58,237,100,111,118,58,250,101,203,254,13],"d":"1786 LET s2=s: LET c2=c: LET c=o: LET v=CODE \"l\": GO SUB dov: IF e THEN RETURN ","enc":"basic"},{"a":31329,"t":"text","b":[6,254,58,0,241,115,61,99,50,58,241,99,61,111,58,241,118,61,175,34,104,34,58,237,100,111,118,58,250,101,203,241,101,50,61,101,112,58,241,101,112,61,111,58,241,115,61,115,50,58,237,100,111,118,58,241,101,112,61,101,50,13],"d":"1790 LET s=c2: LET c=o: LET v=CODE \"h\": GO SUB dov: IF e THEN LET e2=ep: LET ep=o: LET s=s2: GO SUB dov: LET ep=e2","enc":"basic"},{"a":31391,"t":"text","b":[7,3,2,0,254,13],"d":"1795 RETURN ","enc":"basic"},{"a":31397,"l":"verb_buy","c":"Verb 116 \"buy\" (1800, run from 1805): \"buy the axe from Thor for the sword\" is the trade at 1125. Another character told to buy from you (\"Thor, buy the sword\", 1820) is you selling: the buyer must be here, and pays the goods' value less f/32 for how far it is from you in goodness, without haggling (1135).","t":"text","b":[7,13,14,0,250,115,62,108,203,236,176,34,49,56,50,48,34,13],"d":"1805 IF s>l THEN GO TO VAL \"1820\"","enc":"basic"},{"a":31415,"t":"text","b":[7,15,18,0,250,105,109,197,99,197,195,98,197,195,115,111,203,236,118,101,114,13],"d":"1807 IF im OR c OR NOT b OR NOT so THEN GO TO ver","enc":"basic"},{"a":31437,"t":"text","b":[7,18,30,0,241,118,116,61,98,58,241,112,116,61,101,120,58,241,118,101,110,61,115,111,58,236,176,34,49,49,50,53,34,13],"d":"1810 LET vt=b: LET pt=ex: LET ven=so: GO TO VAL \"1125\"","enc":"basic"},{"a":31471,"t":"text","b":[7,28,17,0,250,115,111,61,109,101,197,195,115,111,203,241,115,111,61,108,13],"d":"1820 IF so=me OR NOT so THEN LET so=l","enc":"basic"},{"a":31492,"t":"text","b":[7,32,9,0,237,114,102,58,250,101,203,254,13],"d":"1824 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":31505,"t":"text","b":[7,33,14,0,250,115,111,62,108,203,236,114,112,50,45,107,53,13],"d":"1825 IF so>l THEN GO TO rp2-k5","enc":"basic"},{"a":31523,"t":"text","b":[7,35,24,0,250,168,108,40,115,41,201,104,203,241,110,61,115,58,241,101,61,107,54,58,236,100,101,13],"d":"1827 IF FN l(s)<>h THEN LET n=s: LET e=k6: GO TO de","enc":"basic"},{"a":31551,"t":"text","b":[7,36,25,0,250,195,168,97,40,108,44,116,41,203,241,110,61,108,58,241,101,61,107,51,58,236,100,101,13],"d":"1828 IF NOT FN a(l,t) THEN LET n=l: LET e=k3: GO TO de","enc":"basic"},{"a":31580,"t":"text","b":[7,37,27,0,241,118,101,110,61,115,58,241,118,116,61,109,116,58,241,112,116,61,98,58,241,112,116,118,61,111,13],"d":"1829 LET ven=s: LET vt=mt: LET pt=b: LET ptv=o","enc":"basic"},{"a":31611,"t":"text","b":[7,38,46,0,241,102,61,168,102,40,108,44,118,101,110,41,58,241,118,116,118,61,186,40,168,106,40,112,116,41,42,40,108,45,102,47,119,119,41,41,58,236,176,34,49,49,51,53,34,13],"d":"1830 LET f=FN f(l,ven): LET vtv=INT (FN j(pt)*(l-f/ww)): GO TO VAL \"1135\"","enc":"basic"},{"a":31661,"l":"verb_sell","c":"Verb 117 \"sell\" (1850, run from 1856): you selling to a character is that character buying from you (1820); a character told to sell to you is you buying (1125).","t":"text","b":[7,64,26,0,250,98,199,108,99,198,99,62,108,99,203,241,98,61,99,58,241,99,61,116,58,241,116,61,98,13],"d":"1856 IF b<=lc AND c>lc THEN LET b=c: LET c=t: LET t=b","enc":"basic"},{"a":31691,"t":"text","b":[7,66,37,0,250,115,61,99,197,98,199,108,99,197,99,62,108,99,197,40,101,120,198,101,120,199,108,99,41,197,105,109,197,115,111,203,236,118,101,114,13],"d":"1858 IF s=c OR b<=lc OR c>lc OR (ex AND ex<=lc) OR im OR so THEN GO TO ver","enc":"basic"},{"a":31732,"t":"text","b":[7,68,38,0,250,115,61,108,203,241,115,61,99,58,241,99,61,111,58,241,118,61,175,34,116,34,58,241,115,111,61,108,58,236,176,34,49,56,50,48,34,13],"d":"1860 IF s=l THEN LET s=c: LET c=o: LET v=CODE \"t\": LET so=l: GO TO VAL \"1820\"","enc":"basic"},{"a":31774,"t":"text","b":[7,73,12,0,250,99,198,99,201,108,203,236,118,101,114,13],"d":"1865 IF c AND c<>l THEN GO TO ver","enc":"basic"},{"a":31790,"t":"text","b":[7,75,9,0,237,114,102,58,250,101,203,254,13],"d":"1867 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":31803,"t":"text","b":[7,78,29,0,241,118,116,61,98,58,241,112,116,61,101,120,58,241,118,101,110,61,115,58,236,176,34,49,49,50,53,34,13],"d":"1870 LET vt=b: LET pt=ex: LET ven=s: GO TO VAL \"1125\"","enc":"basic"},{"a":31836,"l":"verb_eat","c":"Verb 118 \"eat\" (1900, run from 1905): only food (96), and \"eat\" alone means food; carried or lying here, as for drink.","t":"text","b":[7,113,22,0,241,120,61,175,34,96,34,58,250,195,116,203,241,116,61,120,58,241,98,61,116,13],"d":"1905 LET x=CODE \"\u00a3\": IF NOT t THEN LET t=x: LET b=t","enc":"basic"},{"a":31862,"t":"text","b":[7,115,15,0,250,116,201,120,203,241,101,61,108,55,58,236,100,101,13],"d":"1907 IF t<>x THEN LET e=l7: GO TO de","enc":"basic"},{"a":31881,"t":"text","b":[7,116,9,0,237,114,102,58,250,101,203,254,13],"d":"1908 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":31894,"t":"text","b":[7,118,30,0,250,168,97,40,110,44,116,41,203,237,98,103,101,116,58,241,120,61,168,120,40,110,41,58,236,103,101,97,116,13],"d":"1910 IF FN a(n,t) THEN GO SUB bget: LET x=FN x(n): GO TO geat","enc":"basic"},{"a":31928,"t":"text","b":[7,123,35,0,241,105,118,61,108,58,241,103,114,61,103,101,97,116,112,58,241,118,36,61,34,101,97,116,34,58,236,176,34,49,50,48,50,34,13],"d":"1915 LET iv=l: LET gr=geatp: LET v$=\"eat\": GO TO VAL \"1202\"","enc":"basic"},{"a":31967,"t":"text","b":[7,128,2,0,254,13],"d":"1920 RETURN ","enc":"basic"},{"a":31973,"l":"verb_open","c":"Verb 119 \"open\" (1950, run from 1955; \"unlock\" comes here too): needs the key (80: Ofnir does not count), and the chest or the cupboard here, shut (\"is already open\"). The opener needs (35 - sp) x 6 strength, from 0 to 204 at the special places that have one. At locations 4, 6, 37, 44 and 81 that is more than your full strength, 175, so there someone stronger, with a key of its own, must be told to open it.","t":"text","b":[7,163,36,0,241,105,109,61,175,34,80,34,58,250,195,168,97,40,110,44,105,109,41,203,241,116,61,105,109,58,241,101,61,107,51,58,236,100,101,13],"d":"1955 LET im=CODE \"P\": IF NOT FN a(n,im) THEN LET t=im: LET e=k3: GO TO de","enc":"basic"},{"a":32013,"t":"text","b":[7,168,17,0,241,105,109,61,111,58,250,168,111,40,41,203,236,118,101,114,13],"d":"1960 LET im=o: IF FN o() THEN GO TO ver","enc":"basic"},{"a":32034,"t":"text","b":[7,173,25,0,250,98,201,175,34,68,34,198,98,201,175,34,73,34,203,241,101,61,108,55,58,236,100,101,13],"d":"1965 IF b<>CODE \"D\" AND b<>CODE \"I\" THEN LET e=l7: GO TO de","enc":"basic"},{"a":32063,"t":"text","b":[7,174,16,0,250,99,116,201,98,203,241,101,61,107,54,58,236,100,101,13],"d":"1966 IF ct<>b THEN LET e=k6: GO TO de","enc":"basic"},{"a":32083,"t":"text","b":[7,175,43,0,250,111,112,203,241,120,36,61,168,116,36,40,98,41,43,34,32,105,115,32,97,108,114,101,97,100,121,32,111,112,101,110,34,58,241,101,61,108,58,236,110,112,13],"d":"1967 IF op THEN LET x$=FN t$(b)+\" is already open\": LET e=l: GO TO np","enc":"basic"},{"a":32130,"t":"text","b":[7,176,9,0,237,114,102,58,250,101,203,254,13],"d":"1968 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":32143,"t":"text","b":[7,177,77,0,250,176,34,40,51,53,45,115,112,41,42,54,34,62,168,107,40,110,41,203,241,120,36,61,168,105,36,40,110,41,43,34,32,110,111,116,32,115,116,114,111,110,103,32,101,110,111,117,103,104,32,116,111,32,111,112,101,110,32,34,43,168,116,36,40,98,41,58,241,101,61,108,58,236,110,112,13],"d":"1969 IF VAL \"(35-sp)*6\">FN k(n) THEN LET x$=FN i$(n)+\" not strong enough to open \"+FN t$(b): LET e=l: GO TO np","enc":"basic"},{"a":32224,"l":"open_walk","c":"Walks to the container.","t":"text","b":[7,178,15,0,241,111,112,61,108,58,237,176,34,49,48,56,48,34,13],"d":"1970 LET op=l: GO SUB VAL \"1080\"","enc":"basic"},{"a":32243,"l":"open_draw","c":"Redraws the container: graphics command 18 with its feature for the new state and then for the old (5 shut and 6 open for the cupboard, 8 and 9 for the chest), with a beep.","t":"text","b":[7,188,105,0,241,120,36,61,174,34,194,49,56,43,194,40,40,53,43,40,99,116,61,54,56,41,42,51,43,111,112,41,42,49,54,43,186,40,99,120,47,122,41,41,34,58,237,103,120,58,241,120,36,61,174,34,194,49,56,43,194,40,40,53,43,40,99,116,61,54,56,41,42,51,43,195,111,112,41,42,49,54,43,186,40,99,120,47,122,41,41,34,58,215,176,34,46,48,53,34,44,45,108,53,58,236,103,120,13],"d":"1980 LET x$=VAL$ \"CHR$ 18+CHR$ ((5+(ct=68)*3+op)*16+INT (cx/z))\": GO SUB gx: LET x$=VAL$ \"CHR$ 18+CHR$ ((5+(ct=68)*3+NOT op)*16+INT (cx/z))\": BEEP VAL \".05\",-l5: GO TO gx","enc":"basic"},{"a":32352,"l":"verb_summon","c":"Verb 120 \"summon\" (2000, run from 2002): calls a character to you; only you can summon. \"Sorry..\" when a$, the other characters here as last counted, is empty or holds more than six: the summons needs company, but not a crowd. Otherwise the character arrives (arr) if it is not here.","t":"text","b":[7,210,21,0,241,101,61,108,58,250,168,111,40,41,197,98,62,108,99,203,236,118,101,114,13],"d":"2002 LET e=l: IF FN o() OR b>lc THEN GO TO ver","enc":"basic"},{"a":32377,"t":"text","b":[7,212,13,0,250,115,62,108,203,236,114,112,50,45,107,53,13],"d":"2004 IF s>l THEN GO TO rp2-k5","enc":"basic"},{"a":32394,"t":"text","b":[7,213,32,0,250,97,36,61,34,34,197,177,97,36,62,107,54,203,241,120,36,61,34,83,111,114,114,121,46,46,34,58,236,110,112,13],"d":"2005 IF a$=\"\" OR LEN a$>k6 THEN LET x$=\"Sorry..\": GO TO np","enc":"basic"},{"a":32430,"t":"text","b":[7,218,24,0,237,114,101,112,58,250,168,108,40,98,41,201,104,203,241,110,61,98,58,236,97,114,114,13],"d":"2010 GO SUB rep: IF FN l(b)<>h THEN LET n=b: GO TO arr","enc":"basic"},{"a":32458,"t":"text","b":[7,223,2,0,254,13],"d":"2015 RETURN ","enc":"basic"},{"a":32464,"l":"verb_close","c":"Verbs 121 \"close\" and 122 \"shut\" (2050 and 2100, both run from 2102; \"lock\" comes here too): the chest or the cupboard here, open (\"is already shut\"); a key named with \"with\" is allowed. The closer walks to it and it is redrawn shut.","t":"text","b":[8,54,17,0,250,105,109,198,105,109,201,175,34,80,34,203,236,118,101,114,13],"d":"2102 IF im AND im<>CODE \"P\" THEN GO TO ver","enc":"basic"},{"a":32485,"t":"text","b":[8,57,17,0,241,105,109,61,111,58,250,168,111,40,41,203,236,118,101,114,13],"d":"2105 LET im=o: IF FN o() THEN GO TO ver","enc":"basic"},{"a":32506,"t":"text","b":[8,67,25,0,250,98,201,175,34,68,34,198,98,201,175,34,73,34,203,241,101,61,108,55,58,236,100,101,13],"d":"2115 IF b<>CODE \"D\" AND b<>CODE \"I\" THEN LET e=l7: GO TO de","enc":"basic"},{"a":32535,"t":"text","b":[8,68,16,0,250,99,116,201,98,203,241,101,61,107,54,58,236,100,101,13],"d":"2116 IF ct<>b THEN LET e=k6: GO TO de","enc":"basic"},{"a":32555,"t":"text","b":[8,69,44,0,250,195,111,112,203,241,120,36,61,168,116,36,40,98,41,43,34,32,105,115,32,97,108,114,101,97,100,121,32,115,104,117,116,34,58,241,101,61,108,58,236,110,112,13],"d":"2117 IF NOT op THEN LET x$=FN t$(b)+\" is already shut\": LET e=l: GO TO np","enc":"basic"},{"a":32603,"t":"text","b":[8,70,9,0,237,114,102,58,250,101,203,254,13],"d":"2118 GO SUB rf: IF e THEN RETURN ","enc":"basic"},{"a":32616,"t":"text","b":[8,72,24,0,241,111,112,61,111,58,237,176,34,49,48,56,48,34,58,236,176,34,49,57,56,48,34,13],"d":"2120 LET op=o: GO SUB VAL \"1080\": GO TO VAL \"1980\"","enc":"basic"},{"a":32644,"t":"text","b":[8,77,2,0,254,13],"d":"2125 RETURN ","enc":"basic"},{"a":32650,"l":"verb_unlock","c":"Verb 123 \"unlock\" is \"open\".","t":"text","b":[8,102,9,0,236,176,34,49,57,53,48,34,13],"d":"2150 GO TO VAL \"1950\"","enc":"basic"},{"a":32663,"l":"verb_lock","c":"Verb 124 \"lock\" is \"close\".","t":"text","b":[8,152,9,0,236,176,34,50,49,48,48,34,13],"d":"2200 GO TO VAL \"2100\"","enc":"basic"},{"a":32676,"l":"ver","c":"ver (2900): a command the verb cannot use: \"This doesn't make sense:-\", then the command as it was understood (rep).","t":"text","b":[11,84,46,0,241,101,61,108,58,241,120,36,61,34,84,104,105,115,32,100,111,101,115,110,39,116,32,109,97,107,101,32,115,101,110,115,101,58,45,34,58,237,112,114,58,236,114,101,112,13],"d":"2900 LET e=l: LET x$=\"This doesn't make sense:-\": GO SUB pr: GO TO rep","enc":"basic"},{"a":32726,"l":"bput","c":"bput (3100, run from 3110): character n takes object t into its hands. Refused (error 1, \"can't carry\") when the object weighs nothing (the chest and the cupboard) or its weight on top of the load p$(n,2) is more than n's strength. A weapon (axe, Felstrong, sword, Skalir) goes in slot 1, a shield (shield, Skornir) in 2, a helmet (Grimnir, helmet) in 3, anything else in the first free slot from 4 to 12.","t":"text","b":[12,38,40,0,241,101,61,111,58,250,195,168,119,40,116,41,197,168,119,40,116,41,43,168,119,40,110,41,62,168,107,40,110,41,203,241,101,61,108,58,236,100],"d":"3110 LET e=o: IF NOT FN w(t) OR FN w(t)+FN w(n)>FN k(n) THEN LET e=l: GO TO d","enc":"basic"},{"a":32768,"l":"bput_end","c":"The last two bytes of line 3110, where the program crosses $8000.","t":"text","b":[101,13],"d":"e","enc":"basic"},{"a":32770,"l":"bput_slot","c":"Which slot: one each for a weapon, a shield and a helmet; a second weapon, shield or helmet is error 7, a full set of slots error 2.","t":"text","b":[12,40,73,0,241,106,61,176,34,40,116,61,54,51,197,116,61,54,52,197,116,61,54,55,197,116,61,54,57,41,43,40,50,198,40,116,61,54,53,197,116,61,55,50,41,41,43,40,51,198,40,116,61,56,50,197,116,61,56,51,41,41,34,58,250,195,106,203,236,176,34,51,49,50,48,34,13],"d":"3112 LET j=VAL \"(t=63 OR t=64 OR t=67 OR t=69)+(2 AND (t=65 OR t=72))+(3 AND (t=82 OR t=83))\": IF NOT j THEN GO TO VAL \"3120\"","enc":"basic"},{"a":32847,"t":"text","b":[12,42,20,0,250,195,175,99,36,40,110,44,106,41,203,236,176,34,51,49,51,48,34,13],"d":"3114 IF NOT CODE c$(n,j) THEN GO TO VAL \"3130\"","enc":"basic"},{"a":32871,"t":"text","b":[12,44,10,0,241,101,61,107,55,58,236,100,101,13],"d":"3116 LET e=k7: GO TO de","enc":"basic"},{"a":32885,"t":"text","b":[12,48,31,0,235,106,61,107,52,204,98,115,58,250,175,99,36,40,110,44,106,41,203,243,106,58,241,101,61,122,58,236,100,101,13],"d":"3120 FOR j=k4 TO bs: IF CODE c$(n,j) THEN NEXT j: LET e=z: GO TO de","enc":"basic"},{"a":32920,"l":"bput_store","c":"Puts the object in its slot and adds its weight to the load, p$(n,2).","t":"text","b":[12,58,36,0,241,99,36,40,110,44,106,41,61,194,116,58,241,112,36,40,110,44,122,41,61,194,40,168,119,40,110,41,43,168,119,40,116,41,41,13],"d":"3130 LET c$(n,j)=CHR$ t: LET p$(n,z)=CHR$ (FN w(n)+FN w(t))","enc":"basic"},{"a":32960,"t":"text","b":[12,63,2,0,254,13],"d":"3135 RETURN ","enc":"basic"},{"a":32966,"l":"bget","c":"bget (3150): character n gives up object t from its hands: from slot 1-3 for a weapon, shield or helmet, otherwise from 4-12; error 3 if it has not got it. Takes the weight off the load.","t":"text","b":[12,80,78,0,241,101,61,111,58,241,106,61,176,34,40,116,61,54,51,197,116,61,54,52,197,116,61,54,55,197,116,61,54,57,41,43,40,50,198,40,116,61,54,53,197,116,61,55,50,41,41,43,40,51,198,40,116,61,56,50,197,116,61,56,51,41,41,34,58,250,195,106,203,236,176,34,51,49,54,48,34,13],"d":"3152 LET e=o: LET j=VAL \"(t=63 OR t=64 OR t=67 OR t=69)+(2 AND (t=65 OR t=72))+(3 AND (t=82 OR t=83))\": IF NOT j THEN GO TO VAL \"3160\"","enc":"basic"},{"a":33048,"t":"text","b":[12,82,21,0,250,175,99,36,40,110,44,106,41,61,116,203,236,176,34,51,49,55,48,34,13],"d":"3154 IF CODE c$(n,j)=t THEN GO TO VAL \"3170\"","enc":"basic"},{"a":33073,"t":"text","b":[12,84,10,0,241,101,61,107,51,58,236,100,101,13],"d":"3156 LET e=k3: GO TO de","enc":"basic"},{"a":33087,"t":"text","b":[12,88,34,0,235,106,61,107,52,204,98,115,58,250,175,99,36,40,110,44,106,41,201,116,203,243,106,58,241,101,61,107,51,58,236,100,101,13],"d":"3160 FOR j=k4 TO bs: IF CODE c$(n,j)<>t THEN NEXT j: LET e=k3: GO TO de","enc":"basic"},{"a":33125,"t":"text","b":[12,98,36,0,241,99,36,40,110,44,106,41,61,194,111,58,241,112,36,40,110,44,122,41,61,194,40,168,119,40,110,41,45,168,119,40,116,41,41,13],"d":"3170 LET c$(n,j)=CHR$ o: LET p$(n,z)=CHR$ (FN w(n)-FN w(t))","enc":"basic"},{"a":33165,"t":"text","b":[12,103,2,0,254,13],"d":"3175 RETURN ","enc":"basic"},{"a":33171,"l":"mput","c":"mput (3200): puts object t on the ground at column x of the location, in the first free pair of m$(h,6-17). When all six are taken, Klepto comes (5300).","t":"text","b":[12,138,43,0,241,101,61,111,58,235,106,61,107,54,204,108,54,205,122,58,250,175,109,36,40,104,44,106,41,203,243,106,58,241,121,61,120,58,236,176,34,53,51,48,48,34,13],"d":"3210 LET e=o: FOR j=k6 TO l6 STEP z: IF CODE m$(h,j) THEN NEXT j: LET y=x: GO TO VAL \"5300\"","enc":"basic"},{"a":33218,"t":"text","b":[12,148,21,0,241,109,36,40,104,44,106,204,106,43,108,41,61,194,116,43,194,120,58,254,13],"d":"3220 LET m$(h,j TO j+l)=CHR$ t+CHR$ x: RETURN ","enc":"basic"},{"a":33243,"l":"mget","c":"mget (3250): takes object t at column x off the location's list; error 6 if it is not there.","t":"text","b":[12,188,55,0,241,101,61,111,58,241,120,36,61,194,116,43,194,120,58,235,106,61,107,54,204,108,54,205,122,58,250,109,36,40,104,44,106,204,106,43,108,41,201,120,36,203,243,106,58,241,101,61,107,54,58,236,100,101,13],"d":"3260 LET e=o: LET x$=CHR$ t+CHR$ x: FOR j=k6 TO l6 STEP z: IF m$(h,j TO j+l)<>x$ THEN NEXT j: LET e=k6: GO TO de","enc":"basic"},{"a":33302,"t":"text","b":[12,208,21,0,241,109,36,40,104,44,106,204,106,43,108,41,61,194,111,43,194,111,58,254,13],"d":"3280 LET m$(h,j TO j+l)=CHR$ o+CHR$ o: RETURN ","enc":"basic"},{"a":33327,"l":"mfi","c":"mfi (3285): finds object t at the location, the copy nearest character n. One inside an open container counts as at the container's column (cx) and sets in; one in a shut container is not found. Error 6 if there is none.","t":"text","b":[12,215,64,0,241,101,61,111,58,241,105,110,61,111,58,241,120,61,45,108,58,241,100,61,119,119,58,241,119,61,168,120,40,110,41,58,235,106,61,107,54,204,108,54,205,122,58,250,175,109,36,40,104,44,106,41,201,116,203,236,176,34,51,50,57,53,34,13],"d":"3287 LET e=o: LET in=o: LET x=-l: LET d=ww: LET w=FN x(n): FOR j=k6 TO l6 STEP z: IF CODE m$(h,j)<>t THEN GO TO VAL \"3295\"","enc":"basic"},{"a":33395,"t":"text","b":[12,216,46,0,241,121,61,175,109,36,40,104,44,106,43,108,41,58,250,121,61,99,111,110,198,111,112,203,241,121,61,99,120,58,250,189,40,119,45,121,41,60,100,203,241,105,110,61,108,13],"d":"3288 LET y=CODE m$(h,j+l): IF y=con AND op THEN LET y=cx: IF ABS (w-y)<d THEN LET in=l","enc":"basic"},{"a":33445,"t":"text","b":[12,218,25,0,250,189,40,119,45,121,41,60,100,203,241,120,61,121,58,241,100,61,189,40,119,45,121,41,13],"d":"3290 IF ABS (w-y)<d THEN LET x=y: LET d=ABS (w-y)","enc":"basic"},{"a":33474,"t":"text","b":[12,223,18,0,243,106,58,250,120,60,111,203,241,101,61,107,54,58,236,100,101,13],"d":"3295 NEXT j: IF x<o THEN LET e=k6: GO TO de","enc":"basic"},{"a":33496,"t":"text","b":[12,224,2,0,254,13],"d":"3296 RETURN ","enc":"basic"},{"a":33502,"l":"blist","c":"blist (3300): \"You have ...\" or \"Thor has ...\": the objects character n carries, with articles, and its crowns, or \"nothing\".","t":"text","b":[12,248,36,0,241,121,61,111,58,241,120,36,61,168,104,36,40,110,41,43,34,32,34,58,250,110,61,108,203,241,120,36,40,108,41,61,34,89,34,13],"d":"3320 LET y=o: LET x$=FN h$(n)+\" \": IF n=l THEN LET x$(l)=\"Y\"","enc":"basic"},{"a":33542,"t":"text","b":[12,249,33,0,235,106,61,108,204,98,115,58,241,120,61,175,99,36,40,110,44,106,41,58,250,195,120,203,236,176,34,51,51,51,48,34,13],"d":"3321 FOR j=l TO bs: LET x=CODE c$(n,j): IF NOT x THEN GO TO VAL \"3330\"","enc":"basic"},{"a":33579,"t":"text","b":[12,250,43,0,241,121,61,108,58,241,120,36,61,120,36,43,168,98,36,40,120,41,43,34,44,32,34,58,250,177,120,36,62,108,110,203,237,112,114,58,241,120,36,61,34,34,13],"d":"3322 LET y=l: LET x$=x$+FN b$(x)+\", \": IF LEN x$>ln THEN GO SUB pr: LET x$=\"\"","enc":"basic"},{"a":33626,"t":"text","b":[13,2,35,0,243,106,58,241,120,61,168,109,40,110,41,58,241,121,36,61,34,34,58,250,120,198,121,203,241,121,36,61,34,97,110,100,32,34,13],"d":"3330 NEXT j: LET x=FN m(n): LET y$=\"\": IF x AND y THEN LET y$=\"and \"","enc":"basic"},{"a":33665,"t":"text","b":[13,12,40,0,250,120,203,241,121,61,108,58,241,120,36,61,120,36,43,121,36,43,193,120,43,34,32,99,114,111,119,110,34,43,40,34,115,34,198,120,62,108,41,13],"d":"3340 IF x THEN LET y=l: LET x$=x$+y$+STR$ x+\" crown\"+(\"s\" AND x>l)","enc":"basic"},{"a":33709,"t":"text","b":[13,13,28,0,250,121,198,195,120,203,241,120,36,61,120,36,43,34,97,110,100,32,110,111,32,109,111,110,101,121,34,13],"d":"3341 IF y AND NOT x THEN LET x$=x$+\"and no money\"","enc":"basic"},{"a":33741,"t":"text","b":[13,14,21,0,250,195,121,203,241,120,36,61,120,36,43,34,110,111,116,104,105,110,103,34,13],"d":"3342 IF NOT y THEN LET x$=x$+\"nothing\"","enc":"basic"},{"a":33766,"t":"text","b":[13,16,15,0,241,120,36,61,120,36,43,34,46,34,58,236,112,114,13],"d":"3344 LET x$=x$+\".\": GO TO pr","enc":"basic"},{"a":33785,"l":"csa","c":"csa (3350, run from 3355): adds m to character n's strength, up to its full strength.","t":"text","b":[13,27,32,0,241,113,61,168,107,40,110,41,43,109,58,241,112,61,175,168,115,36,40,110,41,58,250,113,62,112,203,241,113,61,112,13],"d":"3355 LET q=FN k(n)+m: LET p=CODE FN s$(n): IF q>p THEN LET q=p","enc":"basic"},{"a":33821,"t":"text","b":[13,32,15,0,241,99,36,40,110,44,122,48,41,61,194,113,58,254,13],"d":"3360 LET c$(n,z0)=CHR$ q: RETURN ","enc":"basic"},{"a":33840,"l":"css","c":"css (3375, run from 3380): takes m from its strength, down to 0.","t":"text","b":[13,52,21,0,241,113,61,168,107,40,110,41,45,109,58,250,113,60,111,203,241,113,61,111,13],"d":"3380 LET q=FN k(n)-m: IF q<o THEN LET q=o","enc":"basic"},{"a":33865,"t":"text","b":[13,57,9,0,236,176,34,51,51,54,48,34,13],"d":"3385 GO TO VAL \"3360\"","enc":"basic"},{"a":33878,"l":"moba","c":"moba (3400, run from 3410): meant to add m crowns to character n, it adds n, the character's own number. So you get 1 crown however many you pick up (\"You get 50 crowns.\" then \"You have 151 crowns.\", seen in play), a character paid in a trade gets its number, and the rest of the money leaves the game.","t":"text","b":[13,82,11,0,241,120,61,168,109,40,110,41,43,110,13],"d":"3410 LET x=FN m(n)+n","enc":"basic"},{"a":33893,"t":"text","b":[13,92,22,0,241,99,36,40,110,44,108,53,204,108,54,41,61,168,100,36,40,120,41,58,254,13],"d":"3420 LET c$(n,l5 TO l6)=FN d$(x): RETURN ","enc":"basic"},{"a":33919,"l":"mobs","c":"mobs (3450, run from 3455): takes m crowns from character n: error 10 if it has none, 9 if you have too few; another character short of money refuses.","t":"text","b":[13,127,23,0,241,101,61,111,58,250,195,168,109,40,110,41,203,241,101,61,108,48,58,236,100,101,13],"d":"3455 LET e=o: IF NOT FN m(n) THEN LET e=l0: GO TO de","enc":"basic"},{"a":33946,"t":"text","b":[13,132,25,0,241,120,61,168,109,40,110,41,45,109,58,250,120,200,111,203,236,176,34,51,52,50,48,34,13],"d":"3460 LET x=FN m(n)-m: IF x>=o THEN GO TO VAL \"3420\"","enc":"basic"},{"a":33975,"t":"text","b":[13,137,15,0,250,110,61,108,203,241,101,61,107,57,58,236,100,101,13],"d":"3465 IF n=l THEN LET e=k9: GO TO de","enc":"basic"},{"a":33994,"t":"text","b":[13,142,24,0,241,120,36,61,34,114,101,102,117,115,101,115,34,58,241,101,61,108,58,236,114,112,50,13],"d":"3470 LET x$=\"refuses\": LET e=l: GO TO rp2","enc":"basic"},{"a":34022,"l":"moma","c":"moma (3500, run from 3510): adds m crowns to the location.","t":"text","b":[13,182,11,0,241,120,61,168,113,40,104,41,43,109,13],"d":"3510 LET x=FN q(h)+m","enc":"basic"},{"a":34037,"t":"text","b":[13,192,22,0,241,109,36,40,104,44,107,52,204,107,53,41,61,168,100,36,40,120,41,58,254,13],"d":"3520 LET m$(h,k4 TO k5)=FN d$(x): RETURN ","enc":"basic"},{"a":34063,"l":"moms","c":"moms (3550, run from 3555): takes m crowns from the location: error 12 if there are none, 13 if too few.","t":"text","b":[13,227,23,0,241,101,61,111,58,250,195,168,113,40,104,41,203,241,101,61,108,50,58,236,100,101,13],"d":"3555 LET e=o: IF NOT FN q(h) THEN LET e=l2: GO TO de","enc":"basic"},{"a":34090,"t":"text","b":[13,232,26,0,241,120,61,168,113,40,104,41,45,109,58,250,120,60,111,203,241,101,61,108,51,58,236,100,101,13],"d":"3560 LET x=FN q(h)-m: IF x<o THEN LET e=l3: GO TO de","enc":"basic"},{"a":34120,"t":"text","b":[13,242,9,0,236,176,34,51,53,50,48,34,13],"d":"3570 GO TO VAL \"3520\"","enc":"basic"},{"a":34133,"l":"mo","c":"mo (3600, run from 3610): sets character n's location and column, c$(n,13) and c$(n,14), to h and x.","t":"text","b":[14,26,21,0,241,99,36,40,110,44,108,51,204,108,52,41,61,194,104,43,194,120,58,254,13],"d":"3610 LET c$(n,l3 TO l4)=CHR$ h+CHR$ x: RETURN ","enc":"basic"},{"a":34158,"l":"mprop","c":"mprop (3750, run from 3760): reads location h from m$: its terrain te, its ringway wh, and its exits, the bits of m$(h,2) unpacked into c(1-8), north from the top bit round to northwest at the bottom.","t":"text","b":[14,176,93,0,241,115,112,61,111,58,241,116,101,61,175,109,36,40,104,41,58,241,119,104,61,175,109,36,40,104,44,107,51,41,58,241,120,61,175,109,36,40,104,44,122,41,58,233,99,40,107,56,41,58,235,106,61,107,56,204,108,205,45,108,58,241,120,61,120,47,122,58,241,99,40,106,41,61,40,120,62,186,120,41,58,241,120,61,186,120,58,250,120,203,243,106,13],"d":"3760 LET sp=o: LET te=CODE m$(h): LET wh=CODE m$(h,k3): LET x=CODE m$(h,z): DIM c(k8): FOR j=k8 TO l STEP -l: LET x=x/z: LET c(j)=(x>INT x): LET x=INT x: IF x THEN NEXT j","enc":"basic"},{"a":34255,"l":"mprop_special","c":"No terrain is a plain (3). A terrain byte above 128 is a special place, sp = te - 128, with its own row of s$: its real terrain, the object or character needed (o1) and the one forbidden (o2) to take its other exits, those in k(1-8). The terrain to the north, tb, is read for the picture's distance: off the map or nothing is a plain, a hall counts as mountains.","t":"text","b":[14,178,12,0,250,195,116,101,203,241,116,101,61,107,51,13],"d":"3762 IF NOT te THEN LET te=k3","enc":"basic"},{"a":34271,"t":"text","b":[14,181,129,0,241,119,61,175,34,128,34,58,250,116,101,62,119,203,241,115,112,61,116,101,45,119,58,241,116,101,61,175,115,36,40,115,112,41,58,241,111,49,61,175,115,36,40,115,112,44,107,51,41,58,241,111,50,61,175,115,36,40,115,112,44,107,52,41,58,241,120,61,175,115,36,40,115,112,44,107,53,41,58,233,107,40,107,56,41,58,235,106,61,107,56,204,108,205,45,108,58,241,120,61,120,47,122,58,241,107,40,106,41,61,40,120,62,186,120,41,58,241,120,61,186,120,58,250,120,203,243,106,13],"d":"3765 LET w=CODE \"{0x80}\": IF te>w THEN LET sp=te-w: LET te=CODE s$(sp): LET o1=CODE s$(sp,k3): LET o2=CODE s$(sp,k4): LET x=CODE s$(sp,k5): DIM k(k8): FOR j=k8 TO l STEP -l: LET x=x/z: LET k(j)=(x>INT x): LET x=INT x: IF x THEN NEXT j","enc":"basic"},{"a":34404,"t":"text","b":[14,186,53,0,241,116,98,61,107,51,58,250,104,199,109,98,42,109,98,45,109,98,203,241,116,98,61,175,109,36,40,104,43,109,98,41,58,250,116,98,62,119,203,241,116,98,61,175,115,36,40,116,98,45,119,41,13],"d":"3770 LET tb=k3: IF h<=mb*mb-mb THEN LET tb=CODE m$(h+mb): IF tb>w THEN LET tb=CODE s$(tb-w)","enc":"basic"},{"a":34461,"t":"text","b":[14,187,14,0,250,116,98,61,107,56,203,241,116,98,61,107,54,13],"d":"3771 IF tb=k8 THEN LET tb=k6","enc":"basic"},{"a":34479,"t":"text","b":[14,188,12,0,250,195,116,98,203,241,116,98,61,107,51,13],"d":"3772 IF NOT tb THEN LET tb=k3","enc":"basic"},{"a":34495,"t":"text","b":[14,191,2,0,254,13],"d":"3775 RETURN ","enc":"basic"},{"a":34501,"l":"mnex","c":"mnex (3800, run from 3810): nx, the location one step in direction dir: the map is 9 by 9 (mb), numbered 1 to 81 from the south; north adds 9, east adds 1. Off the top or the bottom is error 14.","t":"text","b":[14,226,123,0,241,101,61,111,58,241,120,61,100,105,114,58,241,110,120,61,104,43,109,98,42,40,40,120,61,110,110,197,120,61,110,119,197,120,61,110,101,41,45,40,120,61,115,115,197,120,61,115,119,197,120,61,115,101,41,41,43,40,120,61,101,97,197,120,61,110,101,197,120,61,115,101,41,45,40,120,61,119,101,197,120,61,110,119,197,120,61,115,119,41,58,250,110,120,60,108,197,110,120,62,109,98,42,109,98,203,241,101,61,108,52,58,241,116,98,61,107,51,58,236,100,101,13],"d":"3810 LET e=o: LET x=dir: LET nx=h+mb*((x=nn OR x=nw OR x=ne)-(x=ss OR x=sw OR x=se))+(x=ea OR x=ne OR x=se)-(x=we OR x=nw OR x=sw): IF nx<l OR nx>mb*mb THEN LET e=l4: LET tb=k3: GO TO de","enc":"basic"},{"a":34628,"t":"text","b":[14,246,2,0,254,13],"d":"3830 RETURN ","enc":"basic"},{"a":34634,"l":"cango","c":"cango (3850, run from 3860): may character n leave by direction dir? An open exit (c) always; a special place's other exits (k) only with o1 carried or present and o2 neither carried nor present; otherwise error 14, \"the way north is blocked\".","t":"text","b":[15,20,20,0,241,101,61,111,58,250,99,40,100,105,114,45,110,110,43,108,41,203,254,13],"d":"3860 LET e=o: IF c(dir-nn+l) THEN RETURN ","enc":"basic"},{"a":34658,"t":"text","b":[15,25,35,0,250,40,195,115,112,41,197,40,115,112,198,195,107,40,100,105,114,45,110,110,43,108,41,41,203,241,101,61,108,52,58,236,100,101,13],"d":"3865 IF (NOT sp) OR (sp AND NOT k(dir-nn+l)) THEN LET e=l4: GO TO de","enc":"basic"},{"a":34697,"t":"text","b":[15,30,28,0,250,111,49,62,108,99,203,250,195,168,97,40,110,44,111,49,41,203,241,101,61,108,52,58,236,100,101,13],"d":"3870 IF o1>lc THEN IF NOT FN a(n,o1) THEN LET e=l4: GO TO de","enc":"basic"},{"a":34729,"t":"text","b":[15,32,30,0,250,111,49,198,111,49,199,108,99,203,250,168,108,40,111,49,41,201,104,203,241,101,61,108,52,58,236,100,101,13],"d":"3872 IF o1 AND o1<=lc THEN IF FN l(o1)<>h THEN LET e=l4: GO TO de","enc":"basic"},{"a":34763,"t":"text","b":[15,33,27,0,250,111,50,62,108,99,203,250,168,97,40,110,44,111,50,41,203,241,101,61,108,52,58,236,100,101,13],"d":"3873 IF o2>lc THEN IF FN a(n,o2) THEN LET e=l4: GO TO de","enc":"basic"},{"a":34794,"t":"text","b":[15,34,30,0,250,111,50,198,111,50,199,108,99,203,250,168,108,40,111,50,41,61,104,203,241,101,61,108,52,58,236,100,101,13],"d":"3874 IF o2 AND o2<=lc THEN IF FN l(o2)=h THEN LET e=l4: GO TO de","enc":"basic"},{"a":34828,"t":"text","b":[15,39,2,0,254,13],"d":"3879 RETURN ","enc":"basic"},{"a":34834,"l":"mdesc","c":"mdesc (3900, run from 3902): \"You are in Valheim, which is in an area of lakes in Asgard.\": the special place's name, \"hall\" after a name that ends in 's (\"Krank's hall\"), the terrain (none for a hall), and the world.","t":"text","b":[15,62,22,0,237,108,102,58,241,120,36,61,168,105,36,40,108,41,43,34,32,105,110,32,34,13],"d":"3902 GO SUB lf: LET x$=FN i$(l)+\" in \"","enc":"basic"},{"a":34860,"t":"text","b":[15,65,89,0,250,115,112,203,241,112,61,175,115,36,40,115,112,44,122,41,58,250,112,203,241,122,36,61,168,119,36,40,112,41,58,250,122,36,62,34,34,203,241,120,36,61,120,36,43,122,36,43,40,34,32,104,97,108,108,34,198,122,36,40,177,122,36,45,108,41,61,34,39,34,41,43,34,44,32,119,104,105,99,104,32,105,115,32,105,110,32,34,13],"d":"3905 IF sp THEN LET p=CODE s$(sp,z): IF p THEN LET z$=FN w$(p): IF z$>\"\" THEN LET x$=x$+z$+(\" hall\" AND z$(LEN z$-l)=\"'\")+\", which is in \"","enc":"basic"},{"a":34953,"t":"text","b":[15,70,165,0,250,116,101,60,107,56,203,241,120,36,61,120,36,43,40,34,97,110,32,105,99,121,32,119,97,115,116,101,34,198,116,101,61,108,41,43,40,34,97,32,109,97,114,115,104,34,198,116,101,61,122,41,43,40,34,97,32,112,108,97,105,110,34,198,116,101,61,107,51,41,43,40,34,97,110,32,97,114,101,97,32,111,102,32,108,97,107,101,115,34,198,116,101,61,107,52,41,43,40,34,97,32,102,111,114,101,115,116,34,198,116,101,61,107,53,41,43,40,34,116,104,101,32,109,111,117,110,116,97,105,110,115,34,198,116,101,61,107,54,41,43,40,34,97,32,99,97,118,101,34,198,116,101,61,107,55,41,43,34,32,105,110,32,34,13],"d":"3910 IF te<k8 THEN LET x$=x$+(\"an icy waste\" AND te=l)+(\"a marsh\" AND te=z)+(\"a plain\" AND te=k3)+(\"an area of lakes\" AND te=k4)+(\"a forest\" AND te=k5)+(\"the mountains\" AND te=k6)+(\"a cave\" AND te=k7)+\" in \"","enc":"basic"},{"a":35122,"l":"world_name","c":"The world: Hell for locations 1 to 45, Midgard for 46 on, except Asgard where the column of the location, (h - 1) mod 9, is above 4: the map's east side.","t":"text","b":[15,75,71,0,241,121,36,61,34,72,101,108,108,34,58,250,104,62,175,34,45,34,203,241,121,36,61,34,77,105,100,103,97,114,100,34,58,250,40,104,45,108,41,45,186,40,40,104,45,108,41,47,109,98,41,42,109,98,62,107,52,203,241,121,36,61,34,65,115,103,97,114,100,34,13],"d":"3915 LET y$=\"Hell\": IF h>CODE \"-\" THEN LET y$=\"Midgard\": IF (h-l)-INT ((h-l)/mb)*mb>k4 THEN LET y$=\"Asgard\"","enc":"basic"},{"a":35197,"t":"text","b":[15,82,14,0,241,120,36,61,120,36,43,121,36,58,236,110,112,13],"d":"3922 LET x$=x$+y$: GO TO np","enc":"basic"},{"a":35215,"l":"de","c":"de (3980): reports error e unless ep is clear, as it is while a character takes, eats or drinks something on its own (line 4223), for the give-backs of lines 1140 and 1790, on Klepto's journey (5312) and in the comings and goings (5520): RESTORE to line 9900 + e and READ the message, an expression the READ works out.","t":"text","b":[15,140,23,0,250,101,112,203,229,176,34,57,57,48,48,43,101,34,58,227,120,36,58,236,110,112,13],"d":"3980 IF ep THEN RESTORE VAL \"9900+e\": READ x$: GO TO np","enc":"basic"},{"a":35242,"t":"text","b":[15,150,2,0,254,13],"d":"3990 RETURN ","enc":"basic"},{"a":35248,"l":"character_turn","c":"4000 (run from 4010), up to ten times a pass of the main loop: another character's turn. First a random character not here may arrive (arr): one that was at the location you just left, if its FN p beats RND x 8 and it either likes or loathes you (FN f under 5 or over 11), or one whose home, kept in p$(n,3), is here (the location it starts at, for all but Idun, Snake and Raven).","t":"text","b":[15,170,91,0,241,110,61,168,114,40,108,99,45,108,41,43,108,58,241,112,61,175,112,36,40,110,44,107,51,41,58,250,168,108,40,110,41,201,104,203,241,102,61,168,102,40,108,44,110,41,58,250,40,168,108,40,110,41,61,112,104,198,168,112,40,110,41,62,165,42,107,56,198,40,102,60,107,53,197,102,62,108,49,41,41,197,112,61,104,203,236,97,114,114,13],"d":"4010 LET n=FN r(lc-l)+l: LET p=CODE p$(n,k3): IF FN l(n)<>h THEN LET f=FN f(l,n): IF (FN l(n)=ph AND FN p(n)>RND*k8 AND (f<k5 OR f>l1)) OR p=h THEN GO TO arr","enc":"basic"},{"a":35343,"l":"turn_pick","c":"Otherwise, if there are characters here (a$), a random one acts on its own, s; it has an object here in view, b (never a quest object, whose name has a capital), one it carries, t, and two others here, n1 and n2.","t":"text","b":[15,180,13,0,241,120,61,177,97,36,58,250,195,120,203,254,13],"d":"4020 LET x=LEN a$: IF NOT x THEN RETURN ","enc":"basic"},{"a":35360,"t":"text","b":[15,190,72,0,237,118,48,58,241,105,118,61,108,58,241,115,61,175,97,36,40,168,114,40,120,41,41,58,241,108,108,61,115,58,241,98,61,175,109,36,40,104,44,107,52,43,168,114,40,107,54,41,42,122,41,58,241,116,61,175,99,36,40,115,44,168,114,40,107,57,41,43,107,51,41,13],"d":"4030 GO SUB v0: LET iv=l: LET s=CODE a$(FN r(x)): LET ll=s: LET b=CODE m$(h,k4+FN r(k6)*z): LET t=CODE c$(s,FN r(k9)+k3)","enc":"basic"},{"a":35436,"t":"text","b":[15,195,21,0,250,98,203,250,100,36,40,98,44,122,41,60,34,97,34,203,241,98,61,111,13],"d":"4035 IF b THEN IF d$(b,z)<\"a\" THEN LET b=o","enc":"basic"},{"a":35461,"t":"text","b":[15,200,54,0,235,106,61,108,204,107,51,58,241,110,49,61,175,97,36,40,168,114,40,120,41,41,58,241,110,50,61,175,97,36,40,168,114,40,120,41,41,58,250,110,49,61,115,197,110,50,61,115,203,243,106,58,254,13],"d":"4040 FOR j=l TO k3: LET n1=CODE a$(FN r(x)): LET n2=CODE a$(FN r(x)): IF n1=s OR n2=s THEN NEXT j: RETURN ","enc":"basic"},{"a":35519,"l":"turn_mood","c":"One time in four you are n1. n1 is made the one s likes more (the nearer in goodness), n2 the one it likes less. A clever character (brains, FN i, above 7; one time in ten the opposite) does not drop things; but one time in two a random character here is picked as ll and, unless that is the clever one itself, tells it what to do instead, and then it may refuse (rf), and may drop.","t":"text","b":[15,205,14,0,250,165,60,108,47,107,52,203,241,110,49,61,108,13],"d":"4045 IF RND<l/k4 THEN LET n1=l","enc":"basic"},{"a":35537,"t":"text","b":[15,210,38,0,250,168,102,40,115,44,110,49,41,62,168,102,40,115,44,110,50,41,203,241,119,61,110,49,58,241,110,49,61,110,50,58,241,110,50,61,119,13],"d":"4050 IF FN f(s,n1)>FN f(s,n2) THEN LET w=n1: LET n1=n2: LET n2=w","enc":"basic"},{"a":35579,"t":"text","b":[15,215,26,0,241,102,61,168,105,40,115,41,62,107,55,58,250,165,60,108,47,108,48,203,241,102,61,195,102,13],"d":"4055 LET f=FN i(s)>k7: IF RND<l/l0 THEN LET f=NOT f","enc":"basic"},{"a":35609,"t":"text","b":[15,217,41,0,250,102,198,165,60,108,47,122,203,241,108,108,61,175,97,36,40,168,114,40,120,41,41,58,250,115,201,108,108,203,241,105,118,61,111,58,241,102,61,111,13],"d":"4057 IF f AND RND<l/z THEN LET ll=CODE a$(FN r(x)): IF s<>ll THEN LET iv=o: LET f=o","enc":"basic"},{"a":35654,"l":"turn_action","c":"Unless a command is waiting, picks the action at random: line 4100, 4200, 4300, 4400, 4500 or 4600.","t":"text","b":[15,220,8,0,250,190,102,97,100,203,254,13],"d":"4060 IF PEEK fad THEN RETURN ","enc":"basic"},{"a":35666,"t":"text","b":[15,230,26,0,249,58,241,110,61,115,58,236,176,34,52,48,48,48,43,168,114,40,54,41,42,49,48,48,34,13],"d":"4070 RANDOMIZE : LET n=s: GO TO VAL \"4000+FN r(6)*100\"","enc":"basic"},{"a":35696,"l":"turn_leave","c":"4100: one time in two, leaves for a random location anywhere (dep). Line 4110 also sends off a defeated character, and each one that congratulates you at Valhalla.","t":"text","b":[16,9,11,0,249,58,250,165,60,108,47,122,203,254,13],"d":"4105 RANDOMIZE : IF RND<l/z THEN RETURN ","enc":"basic"},{"a":35711,"t":"text","b":[16,14,29,0,241,110,120,61,168,114,40,109,98,42,109,98,41,58,250,110,120,61,104,203,236,176,34,52,49,49,48,34,13],"d":"4110 LET nx=FN r(mb*mb): IF nx=h THEN GO TO VAL \"4110\"","enc":"basic"},{"a":35744,"t":"text","b":[16,19,5,0,236,100,101,112,13],"d":"4115 GO TO dep","enc":"basic"},{"a":35753,"l":"turn_take","c":"4200: picks up the object in view, or drinks it if it is wine, or eats it if it is food; with nothing in view, steps aside. Klepto (24) leaves axes and swords lying. Errors are not shown when it acts on its own.","t":"text","b":[16,109,28,0,250,115,61,176,34,50,52,34,203,250,40,98,61,175,34,63,34,197,98,61,175,34,67,34,41,203,254,13],"d":"4205 IF s=VAL \"24\" THEN IF (b=CODE \"?\" OR b=CODE \"C\") THEN RETURN ","enc":"basic"},{"a":35785,"t":"text","b":[16,114,13,0,250,195,98,203,236,176,34,52,54,48,48,34,13],"d":"4210 IF NOT b THEN GO TO VAL \"4600\"","enc":"basic"},{"a":35802,"t":"text","b":[16,124,24,0,241,118,61,175,34,103,34,58,250,98,61,175,34,70,34,203,241,118,61,175,34,114,34,13],"d":"4220 LET v=CODE \"g\": IF b=CODE \"F\" THEN LET v=CODE \"r\"","enc":"basic"},{"a":35830,"t":"text","b":[16,126,16,0,250,98,61,175,34,96,34,203,241,118,61,175,34,118,34,13],"d":"4222 IF b=CODE \"\u00a3\" THEN LET v=CODE \"v\"","enc":"basic"},{"a":35850,"t":"text","b":[16,127,12,0,250,115,61,108,108,203,241,101,112,61,111,13],"d":"4223 IF s=ll THEN LET ep=o","enc":"basic"},{"a":35866,"t":"text","b":[16,129,16,0,237,100,111,118,58,241,101,112,61,108,58,250,101,203,254,13],"d":"4225 GO SUB dov: LET ep=l: IF e THEN RETURN ","enc":"basic"},{"a":35886,"t":"text","b":[16,134,5,0,236,114,101,112,13],"d":"4230 GO TO rep","enc":"basic"},{"a":35895,"l":"turn_drop","c":"4300: drops something it carries, unless it is clever (then it steps aside).","t":"text","b":[16,214,15,0,250,102,197,195,116,203,236,176,34,52,54,48,48,34,13],"d":"4310 IF f OR NOT t THEN GO TO VAL \"4600\"","enc":"basic"},{"a":35914,"t":"text","b":[16,224,23,0,241,118,61,175,34,108,34,58,241,98,61,116,58,237,100,111,118,58,250,101,203,254,13],"d":"4320 LET v=CODE \"l\": LET b=t: GO SUB dov: IF e THEN RETURN ","enc":"basic"},{"a":35941,"t":"text","b":[16,234,5,0,236,114,101,112,13],"d":"4330 GO TO rep","enc":"basic"},{"a":35950,"l":"turn_attack","c":"4400: attacks n2 if it dislikes it enough (FN f of 7 or more) and n2 did not tell it to act, else steps aside; one time in three, when acting on its own, it throws something it carries at n2 instead.","t":"text","b":[17,58,32,0,241,98,61,110,50,58,250,168,102,40,110,44,98,41,60,107,55,197,108,108,61,98,203,236,176,34,52,54,48,48,34,13],"d":"4410 LET b=n2: IF FN f(n,b)<k7 OR ll=b THEN GO TO VAL \"4600\"","enc":"basic"},{"a":35986,"t":"text","b":[17,63,19,0,241,118,61,175,34,106,34,58,250,115,201,108,108,203,236,100,111,118,13],"d":"4415 LET v=CODE \"j\": IF s<>ll THEN GO TO dov","enc":"basic"},{"a":36009,"t":"text","b":[17,68,21,0,250,195,116,197,165,62,108,47,107,51,203,237,114,101,112,58,236,100,111,118,13],"d":"4420 IF NOT t OR RND>l/k3 THEN GO SUB rep: GO TO dov","enc":"basic"},{"a":36034,"t":"text","b":[17,78,28,0,241,118,61,175,34,109,34,58,241,99,61,98,58,241,98,61,116,58,237,114,101,112,58,236,100,111,118,13],"d":"4430 LET v=CODE \"m\": LET c=b: LET b=t: GO SUB rep: GO TO dov","enc":"basic"},{"a":36066,"l":"turn_give","c":"4500: gives something it carries to n1, if it likes n1 enough (FN f of 3 or less).","t":"text","b":[17,158,23,0,241,99,61,110,49,58,250,195,116,197,168,102,40,115,44,99,41,62,107,51,203,254,13],"d":"4510 LET c=n1: IF NOT t OR FN f(s,c)>k3 THEN RETURN ","enc":"basic"},{"a":36093,"t":"text","b":[17,168,24,0,241,98,61,116,58,241,118,61,175,34,115,34,58,250,115,61,108,108,203,237,114,101,112,13],"d":"4520 LET b=t: LET v=CODE \"s\": IF s=ll THEN GO SUB rep","enc":"basic"},{"a":36121,"t":"text","b":[17,178,5,0,236,100,111,118,13],"d":"4530 GO TO dov","enc":"basic"},{"a":36130,"l":"turn_step","c":"4600: steps aside, left or right as it faces, or the other way if that is blocked.","t":"text","b":[18,2,35,0,237,176,34,54,48,48,43,50,48,42,100,40,115,41,34,58,250,101,203,237,176,34,54,50,48,45,100,40,115,41,42,50,48,34,13],"d":"4610 GO SUB VAL \"600+20*d(s)\": IF e THEN GO SUB VAL \"620-d(s)*20\"","enc":"basic"},{"a":36169,"t":"text","b":[18,12,2,0,254,13],"d":"4620 RETURN ","enc":"basic"},{"a":36175,"l":"np","c":"np (5000, run from 5007): ends a sentence with a full stop and a capital, then prints it.","t":"text","b":[19,143,52,0,241,120,36,61,120,36,43,34,46,34,58,250,120,36,40,108,41,200,34,97,34,198,120,36,40,108,41,199,34,122,34,203,241,120,36,40,108,41,61,194,40,175,120,36,40,108,41,45,119,119,41,13],"d":"5007 LET x$=x$+\".\": IF x$(l)>=\"a\" AND x$(l)<=\"z\" THEN LET x$(l)=CHR$ (CODE x$(l)-ww)","enc":"basic"},{"a":36231,"l":"pr","c":"pr (5010): prints x$ in the text window. A line of 32 or less scrolls n$ (USR 23760) and goes in at 609; a longer one is cut at the last space among its first 33 characters (after 32 if there is none) and printed a line at a time.","t":"text","b":[19,146,51,0,241,114,61,176,34,54,48,57,34,58,250,177,120,36,60,119,119,43,108,203,249,192,176,34,50,51,55,54,48,34,58,241,110,36,40,114,204,41,61,120,36,58,236,176,34,53,48,50,48,34,13],"d":"5010 LET r=VAL \"609\": IF LEN x$<ww+l THEN RANDOMIZE USR VAL \"23760\": LET n$(r TO )=x$: GO TO VAL \"5020\"","enc":"basic"},{"a":36286,"t":"text","b":[19,150,45,0,241,102,61,108,58,235,107,61,119,119,43,108,204,122,205,45,108,58,250,120,36,40,107,41,201,34,32,34,203,243,107,58,241,107,61,119,119,43,108,58,241,102,61,111,13],"d":"5014 LET f=l: FOR k=ww+l TO z STEP -l: IF x$(k)<>\" \" THEN NEXT k: LET k=ww+l: LET f=o","enc":"basic"},{"a":36335,"t":"text","b":[19,152,54,0,249,192,176,34,50,51,55,54,48,34,58,241,110,36,40,114,204,41,61,120,36,40,204,107,45,108,41,58,241,120,36,61,120,36,40,107,43,102,204,41,58,237,176,34,53,48,50,48,34,58,236,112,114,13],"d":"5016 RANDOMIZE USR VAL \"23760\": LET n$(r TO )=x$( TO k-l): LET x$=x$(k+f TO ): GO SUB VAL \"5020\": GO TO pr","enc":"basic"},{"a":36393,"l":"show_text","c":"Shows the text area (USR priad) and, after \"print\", copies the line to the printer.","t":"text","b":[19,156,20,0,249,192,112,114,105,97,100,58,250,112,102,203,224,110,36,40,114,204,41,13],"d":"5020 RANDOMIZE USR priad: IF pf THEN LPRINT n$(r TO )","enc":"basic"},{"a":36417,"t":"text","b":[19,157,4,0,249,58,254,13],"d":"5021 RANDOMIZE : RETURN ","enc":"basic"},{"a":36425,"l":"lf","c":"lf (5030): an empty line.","t":"text","b":[19,166,11,0,241,120,36,61,34,34,58,236,112,114,13],"d":"5030 LET x$=\"\": GO TO pr","enc":"basic"},{"a":36440,"l":"refuses","c":"\"Thor refuses\", e = 1.","t":"text","b":[19,176,19,0,241,101,61,108,58,241,120,36,61,34,114,101,102,117,115,101,115,34,13],"d":"5040 LET e=l: LET x$=\"refuses\"","enc":"basic"},{"a":36463,"l":"rp2","c":"rp2 (5045): \"Thor refuses to give the axe to Odin\", or \"You ask Thor to ...\": the subject, x$, \"to\" and the verb, then the rest of the command as rep gives it.","t":"text","b":[19,181,46,0,241,102,61,111,58,241,120,36,61,168,119,36,40,115,41,43,34,32,34,43,120,36,43,34,32,116,111,32,34,43,168,119,36,40,118,41,58,236,176,34,53,48,53,51,34,13],"d":"5045 LET f=o: LET x$=FN w$(s)+\" \"+x$+\" to \"+FN w$(v): GO TO VAL \"5053\"","enc":"basic"},{"a":36513,"l":"rep","c":"rep (5050): reports a command as a sentence, \"Thor gets the axe from the chest.\": the subject and the verb (FN v$), then each word of the command after its preposition (\"with\", \"from\", \"to\", or \"at\" for throw and \"in\" for put, \"for\").","t":"text","b":[19,186,23,0,241,102,61,108,58,241,120,36,61,168,118,36,40,115,44,168,119,36,40,118,41,41,13],"d":"5050 LET f=l: LET x$=FN v$(s,FN w$(v))","enc":"basic"},{"a":36540,"t":"text","b":[19,189,97,0,241,121,61,176,34,53,48,54,48,34,58,241,120,61,98,58,241,121,36,61,34,34,58,237,121,58,241,120,61,105,109,58,241,121,36,61,34,119,105,116,104,34,58,237,121,58,241,120,61,115,111,58,241,121,36,61,34,102,114,111,109,34,58,237,121,58,241,120,61,99,58,241,121,36,61,34,116,111,34,58,250,118,61,175,34,109,34,203,241,121,36,61,34,97,116,34,13],"d":"5053 LET y=VAL \"5060\": LET x=b: LET y$=\"\": GO SUB y: LET x=im: LET y$=\"with\": GO SUB y: LET x=so: LET y$=\"from\": GO SUB y: LET x=c: LET y$=\"to\": IF v=CODE \"m\" THEN LET y$=\"at\"","enc":"basic"},{"a":36641,"t":"text","b":[19,190,17,0,250,118,61,175,34,112,34,203,241,121,36,61,34,105,110,34,13],"d":"5054 IF v=CODE \"p\" THEN LET y$=\"in\"","enc":"basic"},{"a":36662,"t":"text","b":[19,191,26,0,237,121,58,241,120,61,101,120,58,241,121,36,61,34,102,111,114,34,58,237,121,58,236,110,112,13],"d":"5055 GO SUB y: LET x=ex: LET y$=\"for\": GO SUB y: GO TO np","enc":"basic"},{"a":36692,"l":"rep_slot","c":"Adds one word to the report: \"with the sword\".","t":"text","b":[19,196,36,0,250,120,203,241,120,36,61,120,36,43,40,34,32,34,198,121,36,62,34,34,41,43,121,36,43,34,32,34,43,168,116,36,40,120,41,13],"d":"5060 IF x THEN LET x$=x$+(\" \" AND y$>\"\")+y$+\" \"+FN t$(x)","enc":"basic"},{"a":36732,"t":"text","b":[19,201,2,0,254,13],"d":"5065 RETURN ","enc":"basic"},{"a":36738,"l":"nloc","c":"nloc (5100, run from 5105): you arrive at a location. Clears the waiting flag, any trade, help's flag and the container (open ones close behind you), puts you at a random column, reads the location (mprop), draws its picture (gter) and describes it (mdesc).","t":"text","b":[19,241,117,0,244,102,97,100,44,111,58,241,97,36,61,34,34,58,241,104,101,61,111,58,241,110,101,103,61,111,58,241,99,116,61,111,58,241,111,112,61,111,58,241,99,36,40,108,44,108,51,204,108,52,41,61,194,104,43,194,186,40,165,42,119,119,41,58,237,109,112,114,111,112,58,237,103,116,101,114,58,237,109,100,101,115,99,58,235,107,61,108,204,122,58,235,106,61,108,204,119,119,58,241,103,36,40,107,44,106,41,61,111,36,58,243,106,58,243,107,13],"d":"5105 POKE fad,o: LET a$=\"\": LET he=o: LET neg=o: LET ct=o: LET op=o: LET c$(l,l3 TO l4)=CHR$ h+CHR$ INT (RND*ww): GO SUB mprop: GO SUB gter: GO SUB mdesc: FOR k=l TO z: FOR j=l TO ww: LET g$(k,j)=o$: NEXT j: NEXT k","enc":"basic"},{"a":36859,"l":"nloc_objects","c":"Draws the objects lying here, moving any that would share a column. An empty slot is filled one time in three, while the food tally fo is under 100, with new food or wine: fo starts at 230, eating takes 2 off it and drinking 1, so once enough has gone the world's food and drink grow back. The first chest or cupboard here becomes the location's container.","t":"text","b":[19,246,16,0,241,121,61,111,58,235,106,61,107,54,204,108,54,205,122,13],"d":"5110 LET y=o: FOR j=k6 TO l6 STEP z","enc":"basic"},{"a":36879,"t":"text","b":[19,248,108,0,241,103,61,175,109,36,40,104,44,106,41,58,241,120,61,175,109,36,40,104,44,106,43,108,41,58,250,195,103,198,165,62,122,47,107,51,198,102,111,60,108,110,203,241,120,61,168,114,40,122,41,58,241,109,36,40,104,44,106,204,106,43,108,41,61,194,176,34,55,48,43,50,54,42,40,120,61,49,41,34,43,194,186,40,165,42,119,119,41,58,241,102,111,61,102,111,43,120,58,236,176,34,53,49,49,50,34,13],"d":"5112 LET g=CODE m$(h,j): LET x=CODE m$(h,j+l): IF NOT g AND RND>z/k3 AND fo<ln THEN LET x=FN r(z): LET m$(h,j TO j+l)=CHR$ VAL \"70+26*(x=1)\"+CHR$ INT (RND*ww): LET fo=fo+x: GO TO VAL \"5112\"","enc":"basic"},{"a":36991,"t":"text","b":[19,249,16,0,250,120,61,99,111,110,203,236,176,34,53,49,50,48,34,13],"d":"5113 IF x=con THEN GO TO VAL \"5120\"","enc":"basic"},{"a":37011,"t":"text","b":[19,250,41,0,250,175,103,36,40,122,44,120,43,108,41,203,241,109,36,40,104,44,106,43,108,41,61,194,186,40,165,42,119,119,41,58,236,176,34,53,49,49,50,34,13],"d":"5114 IF CODE g$(z,x+l) THEN LET m$(h,j+l)=CHR$ INT (RND*ww): GO TO VAL \"5112\"","enc":"basic"},{"a":37056,"t":"text","b":[19,252,58,0,250,195,99,116,203,250,103,61,175,34,68,34,197,103,61,175,34,73,34,203,241,99,116,61,103,58,241,99,120,61,120,58,241,103,36,40,122,44,120,43,108,41,61,194,103,43,194,111,58,236,176,34,53,49,50,48,34,13],"d":"5116 IF NOT ct THEN IF g=CODE \"D\" OR g=CODE \"I\" THEN LET ct=g: LET cx=x: LET g$(z,x+l)=CHR$ g+CHR$ o: GO TO VAL \"5120\"","enc":"basic"},{"a":37118,"t":"text","b":[19,254,16,0,250,103,203,241,100,61,165,62,108,47,122,58,237,103,112,13],"d":"5118 IF g THEN LET d=RND>l/z: GO SUB gp","enc":"basic"},{"a":37138,"l":"nloc_characters","c":"Draws the characters here, each at a free column; every one but you is put back to full strength. Then lists them (\"who\") unless a command is waiting.","t":"text","b":[20,0,34,0,243,106,58,241,121,61,111,58,235,103,61,108,204,108,99,58,250,168,108,40,103,41,201,104,203,236,176,34,53,49,51,48,34,13],"d":"5120 NEXT j: LET y=o: FOR g=l TO lc: IF FN l(g)<>h THEN GO TO VAL \"5130\"","enc":"basic"},{"a":37176,"t":"text","b":[20,1,49,0,241,120,61,168,120,40,103,41,58,250,175,103,36,40,108,44,120,43,108,41,203,241,99,36,40,103,44,108,52,41,61,194,186,40,165,42,119,119,41,58,236,176,34,53,49,50,49,34,13],"d":"5121 LET x=FN x(g): IF CODE g$(l,x+l) THEN LET c$(g,l4)=CHR$ INT (RND*ww): GO TO VAL \"5121\"","enc":"basic"},{"a":37229,"t":"text","b":[20,2,25,0,250,103,62,108,203,241,99,36,40,103,44,98,115,43,107,56,41,61,168,115,36,40,103,41,13],"d":"5122 IF g>l THEN LET c$(g,bs+k8)=FN s$(g)","enc":"basic"},{"a":37258,"t":"text","b":[20,5,12,0,241,100,61,100,40,103,41,58,237,103,112,13],"d":"5125 LET d=d(g): GO SUB gp","enc":"basic"},{"a":37274,"t":"text","b":[20,10,19,0,243,103,58,250,195,190,102,97,100,203,237,176,34,54,50,48,48,34,13],"d":"5130 NEXT g: IF NOT PEEK fad THEN GO SUB VAL \"6200\"","enc":"basic"},{"a":37297,"l":"valhalla","c":"Location 80 (\"P\"), Valhalla, the end: characters 2 to 37 come in turn, each \"congratulates you.\" and leaves for somewhere else (4110), until you type a command.","t":"text","b":[20,15,10,0,250,104,201,175,34,80,34,203,254,13],"d":"5135 IF h<>CODE \"P\" THEN RETURN ","enc":"basic"},{"a":37311,"t":"text","b":[20,20,33,0,237,108,102,58,235,105,61,122,204,108,99,45,122,58,241,110,61,105,58,250,168,108,40,110,41,201,104,203,237,97,114,114,13],"d":"5140 GO SUB lf: FOR i=z TO lc-z: LET n=i: IF FN l(n)<>h THEN GO SUB arr","enc":"basic"},{"a":37348,"t":"text","b":[20,22,58,0,241,120,36,61,168,119,36,40,110,41,43,34,32,99,111,110,103,114,97,116,117,108,97,116,101,115,32,121,111,117,46,34,58,237,112,114,58,249,58,237,176,34,52,49,49,48,34,58,250,195,190,102,97,100,203,243,105,13],"d":"5142 LET x$=FN w$(n)+\" congratulates you.\": GO SUB pr: RANDOMIZE : GO SUB VAL \"4110\": IF NOT PEEK fad THEN NEXT i","enc":"basic"},{"a":37410,"t":"text","b":[20,30,6,0,237,108,102,58,254,13],"d":"5150 GO SUB lf: RETURN ","enc":"basic"},{"a":37420,"l":"efi","c":"efi (5200, run from 5205): the column a figure comes in at or goes out by: the first free one from the screen's edge nearer column y, at least 2 from y, with d facing it towards y.","t":"text","b":[20,85,35,0,241,121,61,121,43,108,58,241,120,61,108,58,241,119,61,108,58,250,121,62,108,54,203,241,119,61,45,108,58,241,120,61,119,119,13],"d":"5205 LET y=y+l: LET x=l: LET w=l: IF y>l6 THEN LET w=-l: LET x=ww","enc":"basic"},{"a":37459,"t":"text","b":[20,90,35,0,250,175,103,36,40,108,44,120,41,197,189,40,120,45,121,41,60,122,203,241,120,61,120,43,119,58,236,176,34,53,50,49,48,34,13],"d":"5210 IF CODE g$(l,x) OR ABS (x-y)<z THEN LET x=x+w: GO TO VAL \"5210\"","enc":"basic"},{"a":37498,"t":"text","b":[20,95,23,0,241,120,61,120,45,108,58,241,121,61,121,45,108,58,241,100,61,121,62,120,58,254,13],"d":"5215 LET x=x-l: LET y=y-l: LET d=y>x: RETURN ","enc":"basic"},{"a":37525,"l":"klepto","c":"5300: an object put down where all six slots are taken. Klepto (24) comes, \"Klepto steals the axe\", and carries it off to a random neighbouring location with a free slot (further if there is none), where he stays and it can be found again. A quest object (its name has a capital) is not the one he takes while an ordinary object lies there: it goes into that slot in place of the ordinary object, and he takes that; only when every slot holds a quest object or the container does he take whatever is in the last.","t":"text","b":[20,180,29,0,241,97,36,61,34,34,58,250,100,36,40,116,44,122,41,62,34,90,34,203,236,176,34,53,51,48,57,34,13],"d":"5300 LET a$=\"\": IF d$(t,z)>\"Z\" THEN GO TO VAL \"5309\"","enc":"basic"},{"a":37558,"t":"text","b":[20,185,74,0,241,122,36,61,194,116,43,194,121,58,235,106,61,107,54,204,108,54,205,122,58,241,116,61,175,109,36,40,104,44,106,41,58,241,121,61,175,109,36,40,104,44,106,43,108,41,58,250,116,61,99,116,197,100,36,40,116,44,122,41,60,34,97,34,203,243,106,58,241,106,61,108,54,13],"d":"5305 LET z$=CHR$ t+CHR$ y: FOR j=k6 TO l6 STEP z: LET t=CODE m$(h,j): LET y=CODE m$(h,j+l): IF t=ct OR d$(t,z)<\"a\" THEN NEXT j: LET j=l6","enc":"basic"},{"a":37636,"t":"text","b":[20,186,29,0,241,109,36,40,104,44,106,204,106,43,108,41,61,122,36,58,250,121,61,99,111,110,203,241,121,61,99,120,13],"d":"5306 LET m$(h,j TO j+l)=z$: IF y=con THEN LET y=cx","enc":"basic"},{"a":37669,"t":"text","b":[20,189,70,0,241,110,61,176,34,50,52,34,58,241,103,61,110,58,241,120,61,168,120,40,110,41,58,241,120,50,61,121,45,188,40,121,45,120,41,58,250,104,201,168,108,40,110,41,203,237,101,102,105,58,241,120,50,61,121,45,100,43,195,100,58,241,121,61,111,58,237,103,112,13],"d":"5309 LET n=VAL \"24\": LET g=n: LET x=FN x(n): LET x2=y-SGN (y-x): IF h<>FN l(n) THEN GO SUB efi: LET x2=y-d+NOT d: LET y=o: GO SUB gp","enc":"basic"},{"a":37743,"t":"text","b":[20,190,107,0,241,101,61,107,52,58,237,100,101,58,241,121,61,111,58,241,120,49,61,120,58,241,122,36,61,103,36,40,108,44,120,50,43,108,41,58,237,103,109,58,241,120,61,120,50,58,237,103,103,101,116,58,241,120,50,61,120,49,58,241,120,49,61,120,58,241,103,61,110,58,237,103,109,58,241,103,36,40,108,44,120,49,43,108,41,61,122,36,58,241,120,61,120,50,58,241,100,61,100,40,110,41,58,237,103,112,13],"d":"5310 LET e=k4: GO SUB de: LET y=o: LET x1=x: LET z$=g$(l,x2+l): GO SUB gm: LET x=x2: GO SUB gget: LET x2=x1: LET x1=x: LET g=n: GO SUB gm: LET g$(l,x1+l)=z$: LET x=x2: LET d=d(n): GO SUB gp","enc":"basic"},{"a":37854,"t":"text","b":[20,192,22,0,237,103,100,114,111,112,111,58,249,58,241,101,112,61,111,58,241,111,104,61,104,13],"d":"5312 GO SUB gdropo: RANDOMIZE : LET ep=o: LET oh=h","enc":"basic"},{"a":37880,"t":"text","b":[20,195,40,0,241,100,105,114,61,110,110,43,186,40,165,42,107,56,41,58,237,109,110,101,120,58,250,101,197,111,104,61,110,120,203,236,176,34,53,51,49,53,34,13],"d":"5315 LET dir=nn+INT (RND*k8): GO SUB mnex: IF e OR oh=nx THEN GO TO VAL \"5315\"","enc":"basic"},{"a":37924,"t":"text","b":[20,196,39,0,241,104,61,110,120,58,235,106,61,107,54,204,108,54,205,122,58,250,175,109,36,40,104,44,106,41,203,243,106,58,236,176,34,53,51,49,53,34,13],"d":"5316 LET h=nx: FOR j=k6 TO l6 STEP z: IF CODE m$(h,j) THEN NEXT j: GO TO VAL \"5315\"","enc":"basic"},{"a":37967,"t":"text","b":[20,197,43,0,241,120,61,186,40,165,42,119,119,41,58,235,107,61,107,55,204,108,55,205,122,58,250,175,109,36,40,104,44,107,41,61,120,203,236,176,34,53,51,49,55,34,13],"d":"5317 LET x=INT (RND*ww): FOR k=k7 TO l7 STEP z: IF CODE m$(h,k)=x THEN GO TO VAL \"5317\"","enc":"basic"},{"a":38014,"t":"text","b":[20,200,51,0,241,109,36,40,104,44,106,204,106,43,108,41,61,194,116,43,194,120,58,241,110,61,176,34,50,52,34,58,237,109,111,58,241,101,112,61,108,58,241,104,61,111,104,58,241,101,61,108,58,254,13],"d":"5320 LET m$(h,j TO j+l)=CHR$ t+CHR$ x: LET n=VAL \"24\": GO SUB mo: LET ep=l: LET h=oh: LET e=l: RETURN ","enc":"basic"},{"a":38069,"l":"v0","c":"v0 (5400, run from 5405): clears the parsed command.","t":"text","b":[21,29,58,0,241,115,61,111,58,241,118,61,111,58,241,98,61,111,58,241,105,109,61,111,58,241,115,111,61,111,58,241,99,61,111,58,241,101,120,61,111,58,241,99,97,61,111,58,241,113,117,61,111,58,241,115,99,61,111,58,254,13],"d":"5405 LET s=o: LET v=o: LET b=o: LET im=o: LET so=o: LET c=o: LET ex=o: LET ca=o: LET qu=o: LET sc=o: RETURN ","enc":"basic"},{"a":38131,"l":"dov","c":"dov (5450): does verb v for character s (n): a character with no strength dies \"of hunger\"; otherwise the command costs it 5 strength (css) and the verb's line, v x 50 - 4000, runs.","t":"text","b":[21,74,49,0,241,110,61,115,58,241,103,61,110,58,241,116,61,98,58,241,113,61,168,107,40,110,41,58,250,195,113,203,241,121,36,61,34,111,102,32,104,117,110,103,101,114,34,58,236,100,105,101,13],"d":"5450 LET n=s: LET g=n: LET t=b: LET q=FN k(n): IF NOT q THEN LET y$=\"of hunger\": GO TO die","enc":"basic"},{"a":38184,"t":"text","b":[21,79,34,0,241,109,61,107,53,58,237,99,115,115,58,241,104,61,168,108,40,110,41,58,236,176,34,53,48,42,118,45,52,48,48,48,34,13],"d":"5455 LET m=k5: GO SUB css: LET h=FN l(n): GO TO VAL \"50*v-4000\"","enc":"basic"},{"a":38222,"t":"text","b":[21,80,2,0,254,13],"d":"5456 RETURN ","enc":"basic"},{"a":38228,"l":"comings_and_goings","c":"5500, every pass of the main loop: who is here (a$, the characters in g$(1)). Then, one time in two: with you alone or with one other, a character from elsewhere arrives; with five or more others, one leaves for a neighbouring location, more likely a restless one (FN p) that is not too good; with two to four, nothing.","t":"text","b":[21,124,16,0,250,97,36,62,34,34,203,236,176,34,53,53,49,50,34,13],"d":"5500 IF a$>\"\" THEN GO TO VAL \"5512\"","enc":"basic"},{"a":38248,"t":"text","b":[21,126,42,0,241,97,36,61,34,34,58,235,106,61,108,204,119,119,58,241,120,61,175,103,36,40,108,44,106,41,58,250,120,62,108,203,241,97,36,61,97,36,43,194,120,13],"d":"5502 LET a$=\"\": FOR j=l TO ww: LET x=CODE g$(l,j): IF x>l THEN LET a$=a$+CHR$ x","enc":"basic"},{"a":38294,"t":"text","b":[21,129,15,0,250,190,102,97,100,203,241,97,36,61,34,34,58,254,13],"d":"5505 IF PEEK fad THEN LET a$=\"\": RETURN ","enc":"basic"},{"a":38313,"t":"text","b":[21,134,3,0,243,106,13],"d":"5510 NEXT j","enc":"basic"},{"a":38320,"t":"text","b":[21,136,24,0,241,121,61,107,51,45,177,97,36,58,250,165,60,108,47,122,197,121,61,188,121,203,254,13],"d":"5512 LET y=k3-LEN a$: IF RND<l/z OR y=SGN y THEN RETURN ","enc":"basic"},{"a":38348,"t":"text","b":[21,139,14,0,250,121,62,111,203,236,176,34,53,53,50,52,34,13],"d":"5515 IF y>o THEN GO TO VAL \"5524\"","enc":"basic"},{"a":38366,"t":"text","b":[21,141,14,0,241,112,61,186,40,165,42,108,49,41,43,107,51,13],"d":"5517 LET p=INT (RND*l1)+k3","enc":"basic"},{"a":38384,"t":"text","b":[21,142,47,0,235,106,61,108,204,107,56,58,241,110,61,175,97,36,40,186,40,165,42,177,97,36,41,43,108,41,58,250,168,112,40,110,41,60,112,197,168,103,40,110,41,62,112,203,243,106,13],"d":"5518 FOR j=l TO k8: LET n=CODE a$(INT (RND*LEN a$)+l): IF FN p(n)<p OR FN g(n)>p THEN NEXT j","enc":"basic"},{"a":38435,"t":"text","b":[21,143,10,0,241,104,48,61,168,108,40,110,41,13],"d":"5519 LET h0=FN l(n)","enc":"basic"},{"a":38449,"t":"text","b":[21,144,58,0,241,111,104,61,104,58,241,100,105,114,61,186,40,165,42,107,56,41,43,110,110,58,241,104,61,104,48,58,241,101,112,61,111,58,237,109,110,101,120,58,241,104,61,111,104,58,250,101,203,236,176,34,53,53,50,48,34,13],"d":"5520 LET oh=h: LET dir=INT (RND*k8)+nn: LET h=h0: LET ep=o: GO SUB mnex: LET h=oh: IF e THEN GO TO VAL \"5520\"","enc":"basic"},{"a":38511,"t":"text","b":[21,145,17,0,241,101,112,61,108,58,250,104,48,61,104,203,236,100,101,112,13],"d":"5521 LET ep=l: IF h0=h THEN GO TO dep","enc":"basic"},{"a":38532,"t":"text","b":[21,146,11,0,250,104,61,110,120,203,236,97,114,114,13],"d":"5522 IF h=nx THEN GO TO arr","enc":"basic"},{"a":38547,"t":"text","b":[21,147,28,0,241,99,36,40,110,44,108,51,204,108,52,41,61,194,110,120,43,194,186,40,165,42,119,119,41,58,254,13],"d":"5523 LET c$(n,l3 TO l4)=CHR$ nx+CHR$ INT (RND*ww): RETURN ","enc":"basic"},{"a":38579,"t":"text","b":[21,148,8,0,250,190,102,97,100,203,254,13],"d":"5524 IF PEEK fad THEN RETURN ","enc":"basic"},{"a":38591,"t":"text","b":[21,149,35,0,235,106,61,108,204,107,57,58,241,110,61,186,40,165,42,108,99,41,43,108,58,250,168,108,40,110,41,61,104,203,243,106,58,254,13],"d":"5525 FOR j=l TO k9: LET n=INT (RND*lc)+l: IF FN l(n)=h THEN NEXT j: RETURN ","enc":"basic"},{"a":38630,"t":"text","b":[21,150,5,0,236,97,114,114,13],"d":"5526 GO TO arr","enc":"basic"},{"a":38639,"l":"die","c":"die (5600, run from 5610): \"You die of hunger\".","t":"text","b":[21,234,28,0,241,120,36,61,168,118,36,40,110,44,34,100,105,101,34,41,43,34,32,34,43,121,36,58,237,110,112,13],"d":"5610 LET x$=FN v$(n,\"die\")+\" \"+y$: GO SUB np","enc":"basic"},{"a":38671,"l":"die_scatter","c":"The dead character keeps its weapon, shield and helmet (slots 1-3) and its crowns; everything in slots 4-12, Ofnir and Drapnir included, goes to random locations with room.","t":"text","b":[21,239,34,0,235,106,61,107,52,204,98,115,58,241,116,61,175,99,36,40,110,44,106,41,58,250,195,116,203,236,176,34,53,54,49,57,34,13],"d":"5615 FOR j=k4 TO bs: LET t=CODE c$(n,j): IF NOT t THEN GO TO VAL \"5619\"","enc":"basic"},{"a":38709,"t":"text","b":[21,240,27,0,241,113,61,168,114,40,109,98,42,109,98,41,58,250,113,61,104,203,236,176,34,53,54,49,54,34,13],"d":"5616 LET q=FN r(mb*mb): IF q=h THEN GO TO VAL \"5616\"","enc":"basic"},{"a":38740,"t":"text","b":[21,241,33,0,235,107,61,107,54,204,108,54,205,122,58,250,175,109,36,40,113,44,107,41,203,243,107,58,236,176,34,53,54,49,54,34,13],"d":"5617 FOR k=k6 TO l6 STEP z: IF CODE m$(q,k) THEN NEXT k: GO TO VAL \"5616\"","enc":"basic"},{"a":38777,"t":"text","b":[21,242,34,0,237,176,34,51,49,55,48,34,58,241,109,36,40,113,44,107,204,107,43,108,41,61,194,116,43,194,186,40,165,42,119,119,41,13],"d":"5618 GO SUB VAL \"3170\": LET m$(q,k TO k+l)=CHR$ t+CHR$ INT (RND*ww)","enc":"basic"},{"a":38815,"t":"text","b":[21,243,3,0,243,106,13],"d":"5619 NEXT j","enc":"basic"},{"a":38822,"l":"die_hell","c":"Four low beeps; the dead are taken to another location: you to location 30, 39 or 21, all in Hell, at random; the others anywhere.","t":"text","b":[21,244,52,0,241,97,36,61,34,34,58,241,121,61,45,108,50,58,215,108,47,122,44,121,58,242,122,58,215,108,47,122,44,121,58,242,122,58,215,108,47,107,54,44,121,58,242,122,58,215,108,47,122,44,121,13],"d":"5620 LET a$=\"\": LET y=-l2: BEEP l/z,y: PAUSE z: BEEP l/z,y: PAUSE z: BEEP l/k6,y: PAUSE z: BEEP l/z,y","enc":"basic"},{"a":38878,"t":"text","b":[21,245,55,0,250,110,61,108,203,241,122,36,61,174,34,194,51,48,43,194,51,57,43,194,50,49,34,58,241,110,120,61,175,122,36,40,168,114,40,107,51,41,41,58,250,110,120,61,104,203,236,176,34,53,54,50,49,34,13],"d":"5621 IF n=l THEN LET z$=VAL$ \"CHR$ 30+CHR$ 39+CHR$ 21\": LET nx=CODE z$(FN r(k3)): IF nx=h THEN GO TO VAL \"5621\"","enc":"basic"},{"a":38937,"t":"text","b":[21,246,34,0,250,110,62,108,203,241,110,120,61,168,114,40,109,98,42,109,98,41,58,250,110,120,61,104,203,236,176,34,53,54,50,50,34,13],"d":"5622 IF n>l THEN LET nx=FN r(mb*mb): IF nx=h THEN GO TO VAL \"5622\"","enc":"basic"},{"a":38975,"l":"die_body","c":"The body lies down (glie) for a moment and is taken away; the dead are back at full strength (csa 1024, capped) at the new location, and for you the new location is drawn (nloc).","t":"text","b":[21,249,44,0,241,103,61,110,58,241,120,61,168,120,40,110,41,58,241,121,61,111,58,241,100,61,100,40,110,41,58,237,103,112,58,237,103,108,105,101,58,242,119,119,42,107,51,13],"d":"5625 LET g=n: LET x=FN x(n): LET y=o: LET d=d(n): GO SUB gp: GO SUB glie: PAUSE ww*k3","enc":"basic"},{"a":39023,"t":"text","b":[21,254,56,0,241,109,61,119,119,42,119,119,58,237,99,115,97,58,241,99,36,40,110,44,108,51,41,61,194,110,120,58,241,101,61,108,58,250,110,61,108,203,241,112,104,61,111,58,241,104,61,110,120,58,236,110,108,111,99,13],"d":"5630 LET m=ww*ww: GO SUB csa: LET c$(n,l3)=CHR$ nx: LET e=l: IF n=l THEN LET ph=o: LET h=nx: GO TO nloc","enc":"basic"},{"a":39083,"t":"text","b":[22,8,8,0,237,103,108,105,101,58,254,13],"d":"5640 GO SUB glie: RETURN ","enc":"basic"},{"a":39095,"l":"gap","c":"gap (5650, run from 5655): brings attacker s and victim b two columns apart, moving them if they must, and turns them to face each other.","t":"text","b":[22,23,86,0,241,97,116,116,61,168,120,40,115,41,58,241,100,101,102,61,168,120,40,98,41,58,250,189,40,97,116,116,45,100,101,102,41,61,122,203,241,120,61,189,40,40,97,116,116,43,100,101,102,41,47,122,41,43,108,58,250,195,175,103,36,40,108,44,120,41,198,195,175,103,36,40,122,44,120,41,203,236,176,34,53,54,57,48,34,13],"d":"5655 LET att=FN x(s): LET def=FN x(b): IF ABS (att-def)=z THEN LET x=ABS ((att+def)/z)+l: IF NOT CODE g$(l,x) AND NOT CODE g$(z,x) THEN GO TO VAL \"5690\"","enc":"basic"},{"a":39185,"t":"text","b":[22,28,23,0,241,119,61,100,101,102,43,108,58,241,100,61,100,40,98,41,45,195,100,40,98,41,13],"d":"5660 LET w=def+l: LET d=d(b)-NOT d(b)","enc":"basic"},{"a":39212,"t":"text","b":[22,33,22,0,250,119,43,100,60,122,197,119,43,100,62,119,119,45,108,203,241,100,61,45,100,13],"d":"5665 IF w+d<z OR w+d>ww-l THEN LET d=-d","enc":"basic"},{"a":39238,"t":"text","b":[22,38,74,0,250,40,175,103,36,40,108,44,119,41,198,175,103,36,40,108,44,119,41,201,98,41,197,175,103,36,40,108,44,119,43,100,41,197,175,103,36,40,122,44,119,43,100,41,197,175,103,36,40,108,44,119,43,100,43,100,41,203,241,119,61,119,43,100,58,236,176,34,53,54,54,53,34,13],"d":"5670 IF (CODE g$(l,w) AND CODE g$(l,w)<>b) OR CODE g$(l,w+d) OR CODE g$(z,w+d) OR CODE g$(l,w+d+d) THEN LET w=w+d: GO TO VAL \"5665\"","enc":"basic"},{"a":39316,"t":"text","b":[22,43,105,0,241,121,61,111,58,241,103,61,98,58,241,120,49,61,100,101,102,58,241,100,101,102,61,119,45,108,58,241,120,50,61,100,101,102,58,237,103,109,58,241,99,36,40,98,44,108,52,41,61,194,120,50,58,241,103,61,115,58,241,120,49,61,97,116,116,58,241,97,116,116,61,100,101,102,43,100,43,100,58,241,120,50,61,97,116,116,58,237,103,109,58,241,99,36,40,115,44,108,52,41,61,194,120,50,13],"d":"5675 LET y=o: LET g=b: LET x1=def: LET def=w-l: LET x2=def: GO SUB gm: LET c$(b,l4)=CHR$ x2: LET g=s: LET x1=att: LET att=def+d+d: LET x2=att: GO SUB gm: LET c$(s,l4)=CHR$ x2","enc":"basic"},{"a":39425,"t":"text","b":[22,58,28,0,250,100,40,115,41,201,40,97,116,116,60,100,101,102,41,203,241,110,61,115,58,237,103,116,117,114,110,13],"d":"5690 IF d(s)<>(att<def) THEN LET n=s: GO SUB gturn","enc":"basic"},{"a":39457,"t":"text","b":[22,60,33,0,250,100,40,98,41,201,40,100,101,102,60,97,116,116,41,203,241,110,61,98,58,237,103,116,117,114,110,58,241,110,61,115,13],"d":"5692 IF d(b)<>(def<att) THEN LET n=b: GO SUB gturn: LET n=s","enc":"basic"},{"a":39494,"t":"text","b":[22,62,2,0,254,13],"d":"5694 RETURN ","enc":"basic"},{"a":39500,"l":"dep","c":"dep (5700, run from 5705): character n departs: walks off at the nearer edge (efi), \"Thor leaves.\", its new location nx and a random column recorded.","t":"text","b":[22,73,111,0,241,97,36,61,34,34,58,241,121,61,168,120,40,110,41,58,237,101,102,105,58,241,120,49,61,121,58,241,121,61,111,58,241,103,61,110,58,241,120,50,61,120,58,237,103,109,58,241,100,61,100,40,110,41,58,237,103,112,58,241,99,36,40,110,44,108,51,204,108,52,41,61,194,110,120,43,194,186,40,165,42,119,119,41,58,241,120,36,61,168,119,36,40,110,41,43,34,32,108,101,97,118,101,115,46,34,58,236,112,114,13],"d":"5705 LET a$=\"\": LET y=FN x(n): GO SUB efi: LET x1=y: LET y=o: LET g=n: LET x2=x: GO SUB gm: LET d=d(n): GO SUB gp: LET c$(n,l3 TO l4)=CHR$ nx+CHR$ INT (RND*ww): LET x$=FN w$(n)+\" leaves.\": GO TO pr","enc":"basic"},{"a":39615,"l":"arr","c":"arr (5750): character n arrives at a free column, \"Thor arrives.\", at full strength (c$(n,20) set to FN s$), walking in from the nearer edge.","t":"text","b":[22,118,28,0,241,121,61,186,40,165,42,119,119,41,58,250,175,103,36,40,108,44,121,43,108,41,203,236,97,114,114,13],"d":"5750 LET y=INT (RND*ww): IF CODE g$(l,y+l) THEN GO TO arr","enc":"basic"},{"a":39647,"t":"text","b":[22,123,17,0,250,97,36,62,34,34,203,241,97,36,61,97,36,43,194,110,13],"d":"5755 IF a$>\"\" THEN LET a$=a$+CHR$ n","enc":"basic"},{"a":39668,"t":"text","b":[22,128,112,0,241,120,36,61,168,119,36,40,110,41,43,34,32,97,114,114,105,118,101,115,46,34,58,237,112,114,58,241,99,36,40,110,44,98,115,43,107,56,41,61,168,115,36,40,110,41,58,237,101,102,105,58,241,103,61,110,58,241,120,49,61,120,58,241,120,50,61,121,58,241,121,61,111,58,241,100,61,100,40,110,41,58,237,103,112,58,237,103,109,58,241,99,36,40,110,44,108,51,204,108,52,41,61,194,104,43,194,120,50,58,254,13],"d":"5760 LET x$=FN w$(n)+\" arrives.\": GO SUB pr: LET c$(n,bs+k8)=FN s$(n): GO SUB efi: LET g=n: LET x1=x: LET x2=y: LET y=o: LET d=d(n): GO SUB gp: GO SUB gm: LET c$(n,l3 TO l4)=CHR$ h+CHR$ x2: RETURN ","enc":"basic"},{"a":39784,"l":"cmd_l","c":"\"l\": step left (600).","t":"text","b":[23,12,8,0,236,176,34,54,48,48,34,13],"d":"5900 GO TO VAL \"600\"","enc":"basic"},{"a":39796,"l":"cmd_r","c":"\"r\": step right (620).","t":"text","b":[23,62,8,0,236,176,34,54,50,48,34,13],"d":"5950 GO TO VAL \"620\"","enc":"basic"},{"a":39808,"l":"cmd_pause","c":"\"pause\" (6000, run from 6020): shows VALHALLA and \"Enter any command to continue...\" and waits for the flag at fad.","t":"text","b":[23,132,92,0,237,108,102,58,241,120,36,61,34,32,32,32,32,32,32,32,32,32,32,32,32,86,65,76,72,65,76,76,65,34,58,237,112,114,58,241,112,97,61,108,58,237,108,102,58,241,120,36,61,34,69,110,116,101,114,32,97,110,121,32,99,111,109,109,97,110,100,32,116,111,32,99,111,110,116,105,110,117,101,46,46,46,34,58,237,112,114,58,237,108,102,13],"d":"6020 GO SUB lf: LET x$=\"            VALHALLA\": GO SUB pr: LET pa=l: GO SUB lf: LET x$=\"Enter any command to continue...\": GO SUB pr: GO SUB lf","enc":"basic"},{"a":39904,"t":"text","b":[23,142,12,0,250,190,102,97,100,203,236,115,121,110,116,13],"d":"6030 IF PEEK fad THEN GO TO synt","enc":"basic"},{"a":39920,"t":"text","b":[23,152,9,0,236,176,34,54,48,51,48,34,13],"d":"6040 GO TO VAL \"6030\"","enc":"basic"},{"a":39933,"l":"cmd_save","c":"\"save\": USR 23792 saves the world to tape at once, then \"Game position saved.\"","t":"text","b":[23,162,42,0,249,192,176,34,50,51,55,57,50,34,58,241,120,36,61,34,71,97,109,101,32,112,111,115,105,116,105,111,110,32,115,97,118,101,100,46,34,58,236,112,114,13],"d":"6050 RANDOMIZE USR VAL \"23792\": LET x$=\"Game position saved.\": GO TO pr","enc":"basic"},{"a":39979,"l":"cmd_list","c":"\"list\": what you carry (blist).","t":"text","b":[23,212,12,0,241,110,61,108,58,236,98,108,105,115,116,13],"d":"6100 LET n=l: GO TO blist","enc":"basic"},{"a":39995,"l":"cmd_who","c":"\"who\": the characters here (g$(1)), their names printed by column, each with an up arrow pointing at its figure.","t":"text","b":[24,56,5,0,241,97,61,108,13],"d":"6200 LET a=l","enc":"basic"},{"a":40004,"l":"who_line","c":"Builds the line of names, a new line when one would overlap.","t":"text","b":[24,66,97,0,237,108,102,58,241,112,61,111,58,241,121,61,111,58,241,121,36,61,34,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,34,58,241,120,36,61,121,36,58,235,106,61,108,204,119,119,58,241,120,61,175,103,36,40,97,44,106,41,58,250,120,203,241,121,61,108,58,237,176,34,54,50,51,48,34,13],"d":"6210 GO SUB lf: LET p=o: LET y=o: LET y$=\"                                \": LET x$=y$: FOR j=l TO ww: LET x=CODE g$(a,j): IF x THEN LET y=l: GO SUB VAL \"6230\"","enc":"basic"},{"a":40105,"t":"text","b":[24,76,10,0,243,106,58,250,112,203,237,112,114,13],"d":"6220 NEXT j: IF p THEN GO SUB pr","enc":"basic"},{"a":40119,"l":"who_container","c":"For \"what\" (6450, a = 2) the objects, and for an open container what is in it: \"In the chest, a key\".","t":"text","b":[24,77,26,0,250,97,61,108,197,40,195,99,116,41,197,40,195,111,112,41,203,236,176,34,54,50,50,53,34,13],"d":"6221 IF a=l OR (NOT ct) OR (NOT op) THEN GO TO VAL \"6225\"","enc":"basic"},{"a":40149,"t":"text","b":[24,78,72,0,241,120,36,61,34,34,58,235,106,61,107,54,204,108,54,205,122,58,241,120,61,175,109,36,40,104,44,106,41,58,250,120,198,175,109,36,40,104,44,106,43,108,41,61,99,111,110,203,241,121,61,108,58,241,120,36,61,120,36,43,34,44,32,34,43,168,98,36,40,120,41,13],"d":"6222 LET x$=\"\": FOR j=k6 TO l6 STEP z: LET x=CODE m$(h,j): IF x AND CODE m$(h,j+l)=con THEN LET y=l: LET x$=x$+\", \"+FN b$(x)","enc":"basic"},{"a":40225,"t":"text","b":[24,79,26,0,243,106,58,250,120,36,61,34,34,203,241,120,36,61,34,44,32,110,111,116,104,105,110,103,34,13],"d":"6223 NEXT j: IF x$=\"\" THEN LET x$=\", nothing\"","enc":"basic"},{"a":40255,"t":"text","b":[24,80,29,0,241,120,36,61,34,73,110,32,116,104,101,32,34,43,168,119,36,40,99,116,41,43,120,36,58,237,110,112,13],"d":"6224 LET x$=\"In the \"+FN w$(ct)+x$: GO SUB np","enc":"basic"},{"a":40288,"t":"text","b":[24,81,37,0,250,195,121,203,241,120,36,61,34,84,104,101,114,101,32,105,115,32,110,111,116,104,105,110,103,32,104,101,114,101,46,34,58,237,112,114,13],"d":"6225 IF NOT y THEN LET x$=\"There is nothing here.\": GO SUB pr","enc":"basic"},{"a":40329,"t":"text","b":[24,82,4,0,236,108,102,13],"d":"6226 GO TO lf","enc":"basic"},{"a":40337,"l":"who_name","c":"Places one name: \"^Thor\" from its column, or \"Thor^\" when it would run off the right.","t":"text","b":[24,86,58,0,241,113,61,106,58,241,122,36,61,34,94,34,43,168,119,36,40,120,41,58,250,113,43,177,122,36,62,119,119,43,108,203,241,122,36,61,122,36,40,122,204,41,43,34,94,34,58,241,113,61,106,45,177,122,36,43,108,13],"d":"6230 LET q=j: LET z$=\"^\"+FN w$(x): IF q+LEN z$>ww+l THEN LET z$=z$(z TO )+\"^\": LET q=j-LEN z$+l","enc":"basic"},{"a":40399,"t":"text","b":[24,88,21,0,250,113,60,112,203,237,112,114,58,241,120,36,61,121,36,58,241,112,61,111,13],"d":"6232 IF q<p THEN GO SUB pr: LET x$=y$: LET p=o","enc":"basic"},{"a":40424,"t":"text","b":[24,91,22,0,241,120,36,40,113,204,41,61,122,36,58,241,112,61,113,43,177,122,36,58,254,13],"d":"6235 LET x$(q TO )=z$: LET p=q+LEN z$: RETURN ","enc":"basic"},{"a":40450,"l":"cmd_load","c":"\"load\" (6250, run from 6255): \"Play the tape.\", USR 23819 loads the saved world, then every figure is rebuilt (graphics command 14 and the weapon, shield and helmet it carries, its name shown meanwhile) and the game goes on at your location.","t":"text","b":[24,111,108,0,241,120,36,61,34,80,108,97,121,32,116,104,101,32,116,97,112,101,46,34,58,237,112,114,58,249,192,176,34,50,51,56,49,57,34,58,241,120,36,61,34,83,84,79,80,32,84,72,69,32,84,65,80,69,46,32,80,108,101,97,115,101,32,119,97,105,116,32,102,111,114,32,99,104,97,114,97,99,116,101,114,115,32,116,111,32,98,101,32,114,101,45,99,114,101,97,116,101,100,46,46,46,34,58,237,112,114,13],"d":"6255 LET x$=\"Play the tape.\": GO SUB pr: RANDOMIZE USR VAL \"23819\": LET x$=\"STOP THE TAPE. Please wait for characters to be re-created...\": GO SUB pr","enc":"basic"},{"a":40562,"t":"text","b":[24,116,67,0,237,108,102,58,235,105,61,108,204,108,99,58,241,103,61,105,58,241,120,36,61,194,108,52,43,194,103,58,241,120,36,61,193,192,103,105,58,235,106,61,108,204,107,51,58,241,116,61,175,99,36,40,103,44,106,41,58,250,116,203,237,103,103,101,116,111,13],"d":"6260 GO SUB lf: FOR i=l TO lc: LET g=i: LET x$=CHR$ l4+CHR$ g: LET x$=STR$ USR gi: FOR j=l TO k3: LET t=CODE c$(g,j): IF t THEN GO SUB ggeto","enc":"basic"},{"a":40633,"t":"text","b":[24,121,50,0,243,106,58,241,110,36,40,176,34,54,48,57,34,204,41,61,168,119,36,40,103,41,58,249,192,112,114,105,97,100,58,243,105,58,241,110,36,40,176,34,54,48,57,34,204,41,61,34,34,13],"d":"6265 NEXT j: LET n$(VAL \"609\" TO )=FN w$(g): RANDOMIZE USR priad: NEXT i: LET n$(VAL \"609\" TO )=\"\"","enc":"basic"},{"a":40687,"t":"text","b":[24,146,15,0,241,104,61,168,108,40,108,41,58,236,110,108,111,99,13],"d":"6290 LET h=FN l(l): GO TO nloc","enc":"basic"},{"a":40706,"l":"cmd_print","c":"\"print\": every line of text also goes to the ZX printer (pf).","t":"text","b":[24,156,8,0,241,112,102,61,108,58,254,13],"d":"6300 LET pf=l: RETURN ","enc":"basic"},{"a":40718,"l":"cmd_noprint","c":"\"noprint\".","t":"text","b":[24,206,8,0,241,112,102,61,111,58,254,13],"d":"6350 LET pf=o: RETURN ","enc":"basic"},{"a":40730,"l":"cmd_copy","c":"\"copy\": COPY, the screen to the printer.","t":"text","b":[25,0,4,0,255,58,254,13],"d":"6400 COPY : RETURN ","enc":"basic"},{"a":40738,"l":"cmd_what","c":"\"what\": the objects here (6210 with a = 2).","t":"text","b":[25,50,14,0,241,97,61,122,58,236,176,34,54,50,49,48,34,13],"d":"6450 LET a=z: GO TO VAL \"6210\"","enc":"basic"},{"a":40756,"l":"cmd_where","c":"\"where\": the location (mdesc), the ways out (\"You can go east, or southeast\") and a ringway if there is one.","t":"text","b":[25,100,7,0,237,109,100,101,115,99,13],"d":"6500 GO SUB mdesc","enc":"basic"},{"a":40767,"t":"text","b":[25,110,91,0,241,120,36,61,34,89,111,117,32,99,97,110,32,103,111,32,34,58,241,121,36,61,34,34,58,241,121,61,111,58,235,106,61,110,110,204,110,119,58,250,99,40,106,45,110,110,43,108,41,203,241,120,36,61,120,36,43,121,36,43,40,34,44,32,34,198,121,36,62,34,34,41,58,241,121,36,61,168,119,36,40,106,41,58,241,121,61,121,43,108,13],"d":"6510 LET x$=\"You can go \": LET y$=\"\": LET y=o: FOR j=nn TO nw: IF c(j-nn+l) THEN LET x$=x$+y$+(\", \" AND y$>\"\"): LET y$=FN w$(j): LET y=y+l","enc":"basic"},{"a":40862,"t":"text","b":[25,115,12,0,243,106,58,237,176,34,54,53,54,55,34,13],"d":"6515 NEXT j: GO SUB VAL \"6567\"","enc":"basic"},{"a":40878,"t":"text","b":[25,116,39,0,250,119,104,203,241,120,36,61,34,84,104,101,114,101,32,105,115,32,97,32,114,105,110,103,119,97,121,32,104,101,114,101,46,34,58,237,112,114,13],"d":"6516 IF wh THEN LET x$=\"There is a ringway here.\": GO SUB pr","enc":"basic"},{"a":40921,"t":"text","b":[25,117,2,0,254,13],"d":"6517 RETURN ","enc":"basic"},{"a":40927,"l":"cmd_help","c":"\"help\": \"Sorry..\" one time in two, and nineteen times in twenty once help has been given here.","t":"text","b":[25,150,35,0,250,104,101,198,165,62,108,47,108,48,197,165,62,108,47,122,203,241,120,36,61,34,83,111,114,114,121,46,46],"d":"6550 IF he AND RND>l/l0 OR RND>l/z THEN LET x$=\"Sorry..","enc":"basic"},{"a":40960,"l":"help_end","c":"The last six bytes of line 6550, where the program crosses $A000.","t":"text","b":[34,58,236,110,112,13],"d":"\": GO TO np","enc":"basic"},{"a":40966,"l":"help_ways","c":"A special place's other exits: \"You need Ofnir if you wish to go north\", \"You need Odin's help ...\". The text for a forbidden object or character (\"you must not have a helmet\", \"Krank must not be present\") is never shown: with o2 alone line 6563 writes over it with \"You can go \", and where there are both o1 and o2 the exits are skipped altogether (both seen in play, with o1 and o2 set by hand).","t":"text","b":[25,155,26,0,241,104,101,61,108,58,250,195,115,112,197,111,49,198,111,50,203,236,176,34,54,53,55,49,34,13],"d":"6555 LET he=l: IF NOT sp OR o1 AND o2 THEN GO TO VAL \"6571\"","enc":"basic"},{"a":40996,"t":"text","b":[25,160,81,0,241,120,36,61,34,34,58,250,111,49,203,241,120,36,61,34,89,111,117,32,110,101,101,100,32,34,43,168,98,36,40,111,49,41,43,34,32,34,58,250,111,49,60,108,99,203,241,120,36,61,34,89,111,117,32,110,101,101,100,32,34,43,168,119,36,40,111,49,41,43,34,39,115,32,104,101,108,112,32,34,13],"d":"6560 LET x$=\"\": IF o1 THEN LET x$=\"You need \"+FN b$(o1)+\" \": IF o1<lc THEN LET x$=\"You need \"+FN w$(o1)+\"'s help \"","enc":"basic"},{"a":41081,"t":"text","b":[25,161,93,0,250,111,50,203,241,120,36,61,40,40,34,121,111,117,32,109,117,115,116,32,110,111,116,32,104,97,118,101,32,34,43,168,98,36,40,111,50,41,43,34,32,34,41,198,111,50,62,108,99,41,43,40,40,168,119,36,40,111,50,41,43,34,32,109,117,115,116,32,110,111,116,32,98,101,32,112,114,101,115,101,110,116,32,34,41,198,111,50,199,108,99,41,13],"d":"6561 IF o2 THEN LET x$=((\"you must not have \"+FN b$(o2)+\" \") AND o2>lc)+((FN w$(o2)+\" must not be present \") AND o2<=lc)","enc":"basic"},{"a":41178,"t":"text","b":[25,162,35,0,250,111,49,197,111,50,203,241,120,36,61,120,36,43,34,105,102,32,121,111,117,32,119,105,115,104,32,116,111,32,103,111,32,34,13],"d":"6562 IF o1 OR o2 THEN LET x$=x$+\"if you wish to go \"","enc":"basic"},{"a":41217,"t":"text","b":[25,163,23,0,250,195,111,49,203,241,120,36,61,34,89,111,117,32,99,97,110,32,103,111,32,34,13],"d":"6563 IF NOT o1 THEN LET x$=\"You can go \"","enc":"basic"},{"a":41244,"t":"text","b":[25,164,73,0,241,121,36,61,34,34,58,241,121,61,111,58,235,106,61,110,110,204,110,119,58,250,107,40,106,45,110,110,43,108,41,203,241,120,36,61,120,36,43,121,36,43,40,34,44,32,34,198,121,36,62,34,34,41,58,241,121,36,61,168,119,36,40,106,41,58,241,121,61,121,43,108,13],"d":"6564 LET y$=\"\": LET y=o: FOR j=nn TO nw: IF k(j-nn+l) THEN LET x$=x$+y$+(\", \" AND y$>\"\"): LET y$=FN w$(j): LET y=y+l","enc":"basic"},{"a":41321,"t":"text","b":[25,165,15,0,243,106,58,250,121,203,237,176,34,54,53,54,56,34,13],"d":"6565 NEXT j: IF y THEN GO SUB VAL \"6568\"","enc":"basic"},{"a":41340,"t":"text","b":[25,166,9,0,236,176,34,54,53,55,49,34,13],"d":"6566 GO TO VAL \"6571\"","enc":"basic"},{"a":41353,"t":"text","b":[25,167,38,0,250,195,121,203,241,120,36,61,34,116,104,101,114,101,32,105,115,32,110,111,32,111,98,118,105,111,117,115,32,119,97,121,32,111,117,116,34,13],"d":"6567 IF NOT y THEN LET x$=\"there is no obvious way out\"","enc":"basic"},{"a":41395,"t":"text","b":[25,168,15,0,250,121,61,108,203,241,120,36,61,120,36,43,121,36,13],"d":"6568 IF y=l THEN LET x$=x$+y$","enc":"basic"},{"a":41414,"t":"text","b":[25,169,21,0,250,121,62,108,203,241,120,36,61,120,36,43,34,111,114,32,34,43,121,36,13],"d":"6569 IF y>l THEN LET x$=x$+\"or \"+y$","enc":"basic"},{"a":41439,"t":"text","b":[25,170,4,0,236,110,112,13],"d":"6570 GO TO np","enc":"basic"},{"a":41447,"l":"help_more","c":"What a random character here carries (blist), and where the ringway leads.","t":"text","b":[25,171,30,0,250,97,36,62,34,34,203,241,110,61,175,97,36,40,168,114,40,177,97,36,41,41,58,237,98,108,105,115,116,13],"d":"6571 IF a$>\"\" THEN LET n=CODE a$(FN r(LEN a$)): GO SUB blist","enc":"basic"},{"a":41481,"t":"text","b":[25,175,66,0,250,119,104,203,241,120,36,61,34,84,104,101,32,114,105,110,103,119,97,121,32,108,101,97,100,115,32,116,111,32,34,58,241,104,61,119,104,58,237,109,112,114,111,112,58,237,109,100,50,58,241,104,61,168,108,40,108,41,58,237,109,112,114,111,112,13],"d":"6575 IF wh THEN LET x$=\"The ringway leads to \": LET h=wh: GO SUB mprop: GO SUB md2: LET h=FN l(l): GO SUB mprop","enc":"basic"},{"a":41551,"t":"text","b":[25,195,2,0,254,13],"d":"6595 RETURN ","enc":"basic"},{"a":41557,"l":"cmd_how","c":"\"how\": \"You are feeling strong\": strength over full strength, weak under a half, \"very\" above three quarters or under a quarter.","t":"text","b":[25,210,38,0,237,176,34,54,54,51,48,34,58,241,120,36,61,168,105,36,40,110,41,43,34,32,102,101,101,108,105,110,103,34,43,120,36,58,236,110,112,13],"d":"6610 GO SUB VAL \"6630\": LET x$=FN i$(n)+\" feeling\"+x$: GO TO np","enc":"basic"},{"a":41599,"t":"text","b":[25,230,50,0,241,113,61,168,107,40,110,41,47,175,168,115,36,40,110,41,58,241,120,36,61,34,32,115,116,114,111,110,103,34,58,250,113,60,108,47,122,203,241,120,36,61,34,32,119,101,97,107,34,13],"d":"6630 LET q=FN k(n)/CODE FN s$(n): LET x$=\" strong\": IF q<l/z THEN LET x$=\" weak\"","enc":"basic"},{"a":41653,"t":"text","b":[25,232,31,0,250,113,62,107,51,47,107,52,197,113,60,108,47,107,52,203,241,120,36,61,34,32,118,101,114,121,34,43,120,36,13],"d":"6632 IF q>k3/k4 OR q<l/k4 THEN LET x$=\" very\"+x$","enc":"basic"},{"a":41688,"t":"text","b":[25,235,2,0,254,13],"d":"6635 RETURN ","enc":"basic"},{"a":41694,"l":"gfx_none","c":"A RETURN no line reaches, the last of the game commands.","t":"text","b":[27,87,2,0,254,13],"d":"6999 RETURN ","enc":"basic"},{"a":41700,"l":"gter","c":"gter (7010): the location's picture. Seeds RND from the location, so a place looks the same at every visit; sends dark buildings (command 19) for Hell and locations 56, 57, 65, 66 and 81, then the picture (command 1) with the location's halves, its terrain and the terrain north; in a hall, tall windows at random.","t":"text","b":[27,98,55,0,249,104,42,108,110,42,107,53,58,250,176,34,104,60,52,54,197,104,61,53,54,197,104,61,53,55,197,104,61,54,53,197,104,61,54,54,197,104,61,56,49,34,203,241,120,36,61,194,108,57,58,237,103,120,13],"d":"7010 RANDOMIZE h*ln*k5: IF VAL \"h<46 OR h=56 OR h=57 OR h=65 OR h=66 OR h=81\" THEN LET x$=CHR$ l9: GO SUB gx","enc":"basic"},{"a":41759,"t":"text","b":[27,99,43,0,241,121,36,61,194,108,56,58,241,120,36,61,194,108,43,194,168,117,40,194,104,41,43,194,168,110,40,194,104,41,43,194,116,101,43,194,116,98,58,237,103,120,13],"d":"7011 LET y$=CHR$ l8: LET x$=CHR$ l+CHR$ FN u(CHR$ h)+CHR$ FN n(CHR$ h)+CHR$ te+CHR$ tb: GO SUB gx","enc":"basic"},{"a":41806,"t":"text","b":[27,100,57,0,250,116,101,61,107,56,203,235,106,61,168,114,40,107,51,41,204,108,52,58,241,120,36,61,121,36,43,194,40,108,49,42,108,54,43,106,41,58,237,103,120,58,241,106,61,106,43,168,114,40,107,52,41,58,243,106,13],"d":"7012 IF te=k8 THEN FOR j=FN r(k3) TO l4: LET x$=y$+CHR$ (l1*l6+j): GO SUB gx: LET j=j+FN r(k4): NEXT j","enc":"basic"},{"a":41867,"l":"gter_features","c":"The location's scene feature, m$(h,18), and a special place's four, s$(sp,6-9).","t":"text","b":[27,103,29,0,241,120,61,175,109,36,40,104,44,108,56,41,58,237,176,34,55,48,50,48,34,58,250,195,115,112,203,254,13],"d":"7015 LET x=CODE m$(h,l8): GO SUB VAL \"7020\": IF NOT sp THEN RETURN ","enc":"basic"},{"a":41900,"t":"text","b":[27,106,36,0,235,106,61,107,54,204,107,57,58,241,120,61,175,115,36,40,115,112,44,106,41,58,237,176,34,55,48,50,48,34,58,243,106,58,254,13],"d":"7018 FOR j=k6 TO k9: LET x=CODE s$(sp,j): GO SUB VAL \"7020\": NEXT j: RETURN ","enc":"basic"},{"a":41940,"l":"gter_feature","c":"Sends one feature (command 18); a castle (features 0-3) gets windows along its front, tall ones among them on castles 0, 1 and 3 (castle 2's are all plain), a hut (4) a window one time in two and a door one time in four.","t":"text","b":[27,108,17,0,250,120,203,241,120,36,61,121,36,43,194,120,58,237,103,120,13],"d":"7020 IF x THEN LET x$=y$+CHR$ x: GO SUB gx","enc":"basic"},{"a":41961,"t":"text","b":[27,109,13,0,250,195,120,197,120,62,175,34,79,34,203,254,13],"d":"7021 IF NOT x OR x>CODE \"O\" THEN RETURN ","enc":"basic"},{"a":41978,"t":"text","b":[27,110,46,0,241,112,61,168,117,40,194,120,41,58,241,120,61,168,110,40,194,120,41,58,241,119,61,107,52,43,107,52,42,40,112,62,111,41,58,250,112,61,122,203,241,119,61,107,53,13],"d":"7022 LET p=FN u(CHR$ x): LET x=FN n(CHR$ x): LET w=k4+k4*(p>o): IF p=z THEN LET w=k5","enc":"basic"},{"a":42028,"t":"text","b":[27,111,15,0,250,112,61,107,52,203,236,176,34,55,48,51,53,34,13],"d":"7023 IF p=k4 THEN GO TO VAL \"7035\"","enc":"basic"},{"a":42047,"t":"text","b":[27,112,30,0,235,107,61,108,204,119,58,241,121,61,165,60,108,47,122,58,250,112,60,122,198,107,61,122,203,241,121,61,108,13],"d":"7024 FOR k=l TO w: LET y=RND<l/z: IF p<z AND k=z THEN LET y=l","enc":"basic"},{"a":42081,"t":"text","b":[27,113,45,0,250,40,112,61,108,198,40,107,61,107,51,197,107,61,107,52,41,41,197,40,112,61,107,51,198,107,62,107,51,198,107,60,107,55,41,203,236,176,34,55,48,51,48,34,13],"d":"7025 IF (p=l AND (k=k3 OR k=k4)) OR (p=k3 AND k>k3 AND k<k7) THEN GO TO VAL \"7030\"","enc":"basic"},{"a":42130,"t":"text","b":[27,114,29,0,250,112,61,122,203,241,121,61,111,58,250,107,61,122,197,107,61,107,51,203,236,176,34,55,48,51,48,34,13],"d":"7026 IF p=z THEN LET y=o: IF k=z OR k=k3 THEN GO TO VAL \"7030\"","enc":"basic"},{"a":42163,"t":"text","b":[27,115,27,0,250,112,61,107,51,203,241,121,61,108,58,250,107,61,107,51,197,107,61,107,55,203,241,121,61,111,13],"d":"7027 IF p=k3 THEN LET y=l: IF k=k3 OR k=k7 THEN LET y=o","enc":"basic"},{"a":42194,"t":"text","b":[27,116,15,0,250,112,61,108,198,107,61,107,53,203,241,121,61,111,13],"d":"7028 IF p=l AND k=k5 THEN LET y=o","enc":"basic"},{"a":42213,"t":"text","b":[27,117,29,0,241,120,36,61,194,108,56,43,194,40,40,108,48,43,121,41,42,108,54,43,107,43,120,41,58,237,103,120,13],"d":"7029 LET x$=CHR$ l8+CHR$ ((l0+y)*l6+k+x): GO SUB gx","enc":"basic"},{"a":42246,"t":"text","b":[27,118,5,0,243,107,58,254,13],"d":"7030 NEXT k: RETURN ","enc":"basic"},{"a":42255,"t":"text","b":[27,123,29,0,250,165,60,108,47,122,203,241,120,36,61,194,108,56,43,194,176,34,49,54,48,43,120,34,58,237,103,120,13],"d":"7035 IF RND<l/z THEN LET x$=CHR$ l8+CHR$ VAL \"160+x\": GO SUB gx","enc":"basic"},{"a":42288,"t":"text","b":[27,125,32,0,250,165,60,108,47,107,52,203,241,120,36,61,194,108,56,43,194,176,34,49,49,50,43,120,43,108,34,58,237,103,120,13],"d":"7037 IF RND<l/k4 THEN LET x$=CHR$ l8+CHR$ VAL \"112+x+l\": GO SUB gx","enc":"basic"},{"a":42324,"t":"text","b":[27,127,2,0,254,13],"d":"7039 RETURN ","enc":"basic"},{"a":42330,"l":"gp","c":"gp (7050): puts character or object g at column x (command 2) and records it in g$, row 1 for characters, 2 for objects. Drawing is XOR, so putting it again takes it away; the record's first byte then goes back to 0, but its second still takes d.","t":"text","b":[27,138,68,0,241,120,36,61,194,122,43,194,103,43,194,120,43,194,121,43,194,100,58,237,103,120,58,241,113,61,40,103,62,108,99,41,43,108,58,241,103,36,40,113,44,120,43,108,41,61,194,40,103,198,195,175,103,36,40,113,44,120,43,108,41,41,43,194,100,58,254,13],"d":"7050 LET x$=CHR$ z+CHR$ g+CHR$ x+CHR$ y+CHR$ d: GO SUB gx: LET q=(g>lc)+l: LET g$(q,x+l)=CHR$ (g AND NOT CODE g$(q,x+l))+CHR$ d: RETURN ","enc":"basic"},{"a":42402,"l":"gm","c":"gm (7100): moves g from column x1 to x2 (command 3) and moves its entry in g$; a character's facing is recorded in d(g).","t":"text","b":[27,188,9,0,250,120,49,61,120,50,203,254,13],"d":"7100 IF x1=x2 THEN RETURN ","enc":"basic"},{"a":42415,"t":"text","b":[27,189,63,0,241,120,36,61,194,107,51,43,194,103,43,194,120,49,43,194,120,50,43,194,121,43,103,36,40,122,44,120,49,43,108,44,122,41,58,237,103,120,58,241,113,61,103,62,108,99,58,250,195,113,203,241,100,40,103,41,61,120,49,60,120,50,13],"d":"7101 LET x$=CHR$ k3+CHR$ g+CHR$ x1+CHR$ x2+CHR$ y+g$(z,x1+l,z): GO SUB gx: LET q=g>lc: IF NOT q THEN LET d(g)=x1<x2","enc":"basic"},{"a":42482,"t":"text","b":[27,190,47,0,241,113,61,113,43,108,58,241,103,36,40,113,44,120,50,43,108,41,61,103,36,40,113,44,120,49,43,108,41,58,241,103,36,40,113,44,120,49,43,108,41,61,111,36,58,254,13],"d":"7102 LET q=q+l: LET g$(q,x2+l)=g$(q,x1+l): LET g$(q,x1+l)=o$: RETURN ","enc":"basic"},{"a":42533,"l":"glie","c":"glie (7120): g lying down (command 4).","t":"text","b":[27,208,24,0,241,120,36,61,194,107,52,43,194,103,43,194,120,43,194,121,43,194,100,58,236,103,120,13],"d":"7120 LET x$=CHR$ k4+CHR$ g+CHR$ x+CHR$ y+CHR$ d: GO TO gx","enc":"basic"},{"a":42561,"l":"geat","c":"geat (7150): g eats the food it carries (command 5): 64 strength back, and 2 off the food tally fo.","t":"text","b":[27,238,18,0,241,120,36,61,194,107,53,43,194,103,43,194,120,58,237,103,120,13],"d":"7150 LET x$=CHR$ k5+CHR$ g+CHR$ x: GO SUB gx","enc":"basic"},{"a":42583,"t":"text","b":[27,248,27,0,241,102,111,61,102,111,45,122,58,241,109,61,119,119,42,122,58,241,110,61,103,58,236,99,115,97,13],"d":"7160 LET fo=fo-z: LET m=ww*z: LET n=g: GO TO csa","enc":"basic"},{"a":42614,"l":"geatp","c":"geatp (7170): g eats food lying beside it.","t":"text","b":[28,2,71,0,241,112,61,120,43,100,40,103,41,42,122,58,241,100,61,175,103,36,40,122,44,112,44,122,41,58,241,120,36,61,194,107,53,43,194,103,43,194,120,43,194,121,43,194,100,58,241,103,36,40,122,44,112,41,61,111,36,58,237,103,120,58,236,176,34,55,49,54,48,34,13],"d":"7170 LET p=x+d(g)*z: LET d=CODE g$(z,p,z): LET x$=CHR$ k5+CHR$ g+CHR$ x+CHR$ y+CHR$ d: LET g$(z,p)=o$: GO SUB gx: GO TO VAL \"7160\"","enc":"basic"},{"a":42689,"l":"gdrink","c":"gdrink (7200): g drinks the wine it carries (command 6): 32 strength back, and 1 off fo.","t":"text","b":[28,32,18,0,241,120,36,61,194,107,54,43,194,103,43,194,120,58,237,103,120,13],"d":"7200 LET x$=CHR$ k6+CHR$ g+CHR$ x: GO SUB gx","enc":"basic"},{"a":42711,"t":"text","b":[28,42,25,0,241,102,111,61,102,111,45,108,58,241,109,61,119,119,58,241,110,61,103,58,236,99,115,97,13],"d":"7210 LET fo=fo-l: LET m=ww: LET n=g: GO TO csa","enc":"basic"},{"a":42740,"l":"gdrinkp","c":"gdrinkp (7220): g drinks wine lying beside it.","t":"text","b":[28,52,71,0,241,112,61,120,43,100,40,103,41,42,122,58,241,100,61,175,103,36,40,122,44,112,44,122,41,58,241,103,36,40,122,44,112,41,61,111,36,58,241,120,36,61,194,107,54,43,194,103,43,194,120,43,194,121,43,194,100,58,237,103,120,58,236,176,34,55,50,49,48,34,13],"d":"7220 LET p=x+d(g)*z: LET d=CODE g$(z,p,z): LET g$(z,p)=o$: LET x$=CHR$ k6+CHR$ g+CHR$ x+CHR$ y+CHR$ d: GO SUB gx: GO TO VAL \"7210\"","enc":"basic"},{"a":42815,"l":"ggeto","c":"ggeto (7250): g carries t, the record only (command 7, three bytes).","t":"text","b":[28,82,18,0,241,120,36,61,194,107,55,43,194,103,43,194,116,58,236,103,120,13],"d":"7250 LET x$=CHR$ k7+CHR$ g+CHR$ t: GO TO gx","enc":"basic"},{"a":42837,"l":"gget","c":"gget (7270): g picks up t from beside it (command 7).","t":"text","b":[28,102,65,0,241,112,61,120,43,100,40,103,41,42,122,58,241,100,61,175,103,36,40,122,44,112,44,122,41,58,241,103,36,40,122,44,112,41,61,111,36,58,241,120,36,61,194,107,55,43,194,103,43,194,116,43,194,120,43,194,121,43,194,100,58,236,103,120,13],"d":"7270 LET p=x+d(g)*z: LET d=CODE g$(z,p,z): LET g$(z,p)=o$: LET x$=CHR$ k7+CHR$ g+CHR$ t+CHR$ x+CHR$ y+CHR$ d: GO TO gx","enc":"basic"},{"a":42906,"l":"gdropo","c":"gdropo (7300): g no longer carries t, the record only (command 8, three bytes).","t":"text","b":[28,132,18,0,241,120,36,61,194,107,56,43,194,103,43,194,116,58,236,103,120,13],"d":"7300 LET x$=CHR$ k8+CHR$ g+CHR$ t: GO TO gx","enc":"basic"},{"a":42928,"l":"gdrop","c":"gdrop (7320): g drops t beside it (command 8), recorded in g$(2).","t":"text","b":[28,152,46,0,241,103,36,40,122,44,120,43,100,43,100,41,61,194,116,43,194,100,58,241,120,36,61,194,107,56,43,194,103,43,194,116,43,194,120,43,194,121,43,194,100,58,236,103,120,13],"d":"7320 LET g$(z,x+d+d)=CHR$ t+CHR$ d: LET x$=CHR$ k8+CHR$ g+CHR$ t+CHR$ x+CHR$ y+CHR$ d: GO TO gx","enc":"basic"},{"a":42978,"l":"gfx_ret_1","c":"A RETURN between gdrop and garmd that no line reaches.","t":"text","b":[28,182,2,0,254,13],"d":"7350 RETURN ","enc":"basic"},{"a":42984,"l":"garmd","c":"garmd (7370): g's arms down (command 9).","t":"text","b":[28,202,18,0,241,120,36,61,194,107,57,43,194,103,43,194,120,58,236,103,120,13],"d":"7370 LET x$=CHR$ k9+CHR$ g+CHR$ x: GO TO gx","enc":"basic"},{"a":43006,"l":"gfx_ret_2","c":"Another RETURN no line reaches.","t":"text","b":[28,232,2,0,254,13],"d":"7400 RETURN ","enc":"basic"},{"a":43012,"l":"garmo","c":"garmo (7420): g's arms out (command 10).","t":"text","b":[28,252,18,0,241,120,36,61,194,108,48,43,194,103,43,194,120,58,236,103,120,13],"d":"7420 LET x$=CHR$ l0+CHR$ g+CHR$ x: GO TO gx","enc":"basic"},{"a":43034,"l":"gfx_ret_3","c":"A third unreached RETURN.","t":"text","b":[29,46,2,0,254,13],"d":"7470 RETURN ","enc":"basic"},{"a":43040,"l":"gemb","c":"gemb (7550): the figure at column x blushes (command 13).","t":"text","b":[29,126,15,0,241,120,36,61,194,108,51,43,194,120,58,236,103,120,13],"d":"7550 LET x$=CHR$ l3+CHR$ x: GO TO gx","enc":"basic"},{"a":43059,"l":"gfire","c":"gfire (7750): lightning (w = 1) or a fireball flies from x1 to x2 (command 17).","t":"text","b":[30,70,26,0,241,120,36,61,194,108,55,43,194,119,43,194,120,49,43,194,120,50,43,194,108,58,236,103,120,13],"d":"7750 LET x$=CHR$ l7+CHR$ w+CHR$ x1+CHR$ x2+CHR$ l: GO TO gx","enc":"basic"},{"a":43089,"l":"gturn","c":"gturn (7820): character n turns round: drawn again (XOR, so it vanishes), then drawn facing the other way.","t":"text","b":[30,140,51,0,241,103,61,110,58,241,120,61,168,120,40,110,41,58,241,121,61,111,58,241,100,61,100,40,110,41,58,237,103,112,58,241,100,61,195,100,58,241,100,40,110,41,61,100,58,237,103,112,58,254,13],"d":"7820 LET g=n: LET x=FN x(n): LET y=o: LET d=d(n): GO SUB gp: LET d=NOT d: LET d(n)=d: GO SUB gp: RETURN ","enc":"basic"},{"a":43144,"l":"mx","c":"mx (8000, run from 8100): the main loop. Up to ten other characters' turns (4000), stopping as soon as a command is waiting.","t":"text","b":[31,164,29,0,249,58,235,105,61,108,204,108,48,58,250,195,190,102,97,100,203,237,176,34,52,48,48,48,34,58,243,105,13],"d":"8100 RANDOMIZE : FOR i=l TO l0: IF NOT PEEK fad THEN GO SUB VAL \"4000\": NEXT i","enc":"basic"},{"a":43177,"l":"main_flag","c":"One time in two, the castle's flag flaps (command 20).","t":"text","b":[31,174,19,0,250,165,60,108,47,122,203,241,120,36,61,194,122,48,58,237,103,120,13],"d":"8110 IF RND<l/z THEN LET x$=CHR$ z0: GO SUB gx","enc":"basic"},{"a":43200,"l":"main_comings","c":"The comings and goings (5500); round again unless a command is waiting.","t":"text","b":[31,184,20,0,237,176,34,53,53,48,48,34,58,250,195,190,102,97,100,203,236,109,120,13],"d":"8120 GO SUB VAL \"5500\": IF NOT PEEK fad THEN GO TO mx","enc":"basic"},{"a":43224,"l":"main_command","c":"A command is waiting: parse it (synt); a game command or an error goes back to the loop. \"me\" means you. A command whose subject is also its object is \"what?\".","t":"text","b":[32,128,28,0,241,101,61,111,58,241,115,101,110,61,111,58,237,115,121,110,116,58,250,101,197,115,99,203,236,109,120,13],"d":"8320 LET e=o: LET sen=o: GO SUB synt: IF e OR sc THEN GO TO mx","enc":"basic"},{"a":43256,"t":"text","b":[32,138,11,0,250,98,61,109,101,203,241,98,61,108,13],"d":"8330 IF b=me THEN LET b=l","enc":"basic"},{"a":43271,"t":"text","b":[32,143,11,0,250,99,61,109,101,203,241,99,61,108,13],"d":"8335 IF c=me THEN LET c=l","enc":"basic"},{"a":43286,"t":"text","b":[32,145,34,0,250,115,61,98,197,115,61,99,197,115,61,115,111,203,241,120,36,61,34,119,104,97,116,63,34,58,237,112,114,58,236,109,120,13],"d":"8337 IF s=b OR s=c OR s=so THEN LET x$=\"what?\": GO SUB pr: GO TO mx","enc":"basic"},{"a":43324,"l":"main_hunger","c":"Your strength is checked in steps of 175/4: on falling into a lower step below 87 (\"W\"), \"You are getting weak - you need to eat or drink.\"; at 0 you die of hunger.","t":"text","b":[32,209,118,0,241,120,61,176,34,49,55,53,47,52,34,58,241,110,61,108,58,241,113,61,168,107,40,108,41,58,250,186,40,113,47,120,41,60,186,40,108,113,47,120,41,198,113,60,175,34,87,34,203,237,176,34,54,54,51,48,34,58,241,120,36,61,34,89,111,117,32,97,114,101,32,103,101,116,116,105,110,103,34,43,120,36,43,34,32,45,32,121,111,117,32,110,101,101,100,32,116,111,32,101,97,116,32,111,114,32,100,114,105,110,107,46,34,58,237,112,114,13],"d":"8401 LET x=VAL \"175/4\": LET n=l: LET q=FN k(l): IF INT (q/x)<INT (lq/x) AND q<CODE \"W\" THEN GO SUB VAL \"6630\": LET x$=\"You are getting\"+x$+\" - you need to eat or drink.\": GO SUB pr","enc":"basic"},{"a":43446,"t":"text","b":[32,210,39,0,241,108,113,61,113,58,250,115,61,108,198,195,113,203,241,121,36,61,34,111,102,32,104,117,110,103,101,114,34,58,237,100,105,101,58,236,109,120,13],"d":"8402 LET lq=q: IF s=l AND NOT q THEN LET y$=\"of hunger\": GO SUB die: GO TO mx","enc":"basic"},{"a":43489,"l":"main_do","c":"A command with no verb that starts with an object or a direction is \"go\" to it (\"north\"), or \"offer\" it while a trade is under way; a subject that is not a character, or is not here, is an error. Then the verb (dov), told by you (ll = 1), and its report (rep).","t":"text","b":[32,211,33,0,250,195,118,198,115,62,108,99,203,241,118,61,176,34,49,48,49,34,43,110,101,103,58,241,98,61,115,58,241,115,61,108,13],"d":"8403 IF NOT v AND s>lc THEN LET v=VAL \"101\"+neg: LET b=s: LET s=l","enc":"basic"},{"a":43526,"t":"text","b":[32,213,8,0,250,195,118,203,236,109,120,13],"d":"8405 IF NOT v THEN GO TO mx","enc":"basic"},{"a":43538,"t":"text","b":[32,214,14,0,250,115,61,108,203,236,176,34,56,52,50,48,34,13],"d":"8406 IF s=l THEN GO TO VAL \"8420\"","enc":"basic"},{"a":43556,"t":"text","b":[32,215,15,0,250,115,62,108,99,203,237,118,101,114,58,236,109,120,13],"d":"8407 IF s>lc THEN GO SUB ver: GO TO mx","enc":"basic"},{"a":43575,"t":"text","b":[32,218,28,0,250,168,108,40,115,41,201,104,203,241,101,61,107,54,58,241,116,61,115,58,237,100,101,58,236,109,120,13],"d":"8410 IF FN l(s)<>h THEN LET e=k6: LET t=s: GO SUB de: GO TO mx","enc":"basic"},{"a":43607,"t":"text","b":[32,228,33,0,241,108,108,61,108,58,241,105,118,61,111,58,237,100,111,118,58,250,195,101,203,237,114,101,112,58,241,97,36,61,34,34,13],"d":"8420 LET ll=l: LET iv=o: GO SUB dov: IF NOT e THEN GO SUB rep: LET a$=\"\"","enc":"basic"},{"a":43644,"t":"text","b":[32,238,4,0,236,109,120,13],"d":"8430 GO TO mx","enc":"basic"},{"a":43652,"l":"start","c":"9800, where the tape starts the program: DF_SZ = 2, clear the flags, black paper and border, CLS, you at your location, USR ioad (input_init), USR priad (print_text_window), the first location (nloc) and the main loop.","t":"text","b":[38,72,87,0,244,176,34,50,51,54,53,57,34,44,122,58,244,102,97,100,44,111,58,241,97,36,61,34,34,58,218,111,58,231,111,58,251,58,237,118,48,58,241,104,61,168,108,40,108,41,58,241,112,104,61,104,58,249,192,105,111,97,100,58,244,102,97,100,43,108,44,111,58,249,192,112,114,105,97,100,58,237,110,108,111,99,58,236,109,120,13],"d":"9800 POKE VAL \"23659\",z: POKE fad,o: LET a$=\"\": PAPER o: BORDER o: CLS : GO SUB v0: LET h=FN l(l): LET ph=h: RANDOMIZE USR ioad: POKE fad+l,o: RANDOMIZE USR priad: GO SUB nloc: GO TO mx","enc":"basic"},{"a":43743,"l":"error_messages","c":"The error messages, read by de: one DATA line for each error number e at 9900 + e, each an expression READ works out with the current variables: 1 \"Thor can't carry the axe\", 2 \"... no room to carry ...\", 3 \"Thor has no axe\", 4 \"Klepto steals ...\", 5 \"... is not a container\", 6 \"... is not here\", 7 \"... a weapon already\".","t":"text","b":[38,173,31,0,228,168,119,36,40,110,41,43,34,32,99,97,110,39,116,32,99,97,114,114,121,32,34,43,168,116,36,40,116,41,13],"d":"9901 DATA FN w$(n)+\" can't carry \"+FN t$(t)","enc":"basic"},{"a":43778,"t":"text","b":[38,174,36,0,228,168,104,36,40,110,41,43,34,32,110,111,32,114,111,111,109,32,116,111,32,99,97,114,114,121,32,34,43,168,98,36,40,116,41,13],"d":"9902 DATA FN h$(n)+\" no room to carry \"+FN b$(t)","enc":"basic"},{"a":43818,"t":"text","b":[38,175,22,0,228,168,104,36,40,110,41,43,34,32,110,111,32,34,43,168,119,36,40,116,41,13],"d":"9903 DATA FN h$(n)+\" no \"+FN w$(t)","enc":"basic"},{"a":43844,"t":"text","b":[38,176,25,0,228,34,75,108,101,112,116,111,32,115,116,101,97,108,115,32,34,43,168,116,36,40,116,41,13],"d":"9904 DATA \"Klepto steals \"+FN t$(t)","enc":"basic"},{"a":43873,"t":"text","b":[38,177,30,0,228,168,98,36,40,99,41,43,34,32,105,115,32,110,111,116,32,97,32,99,111,110,116,97,105,110,101,114,34,13],"d":"9905 DATA FN b$(c)+\" is not a container\"","enc":"basic"},{"a":43907,"t":"text","b":[38,178,71,0,228,40,40,168,119,36,40,116,41,43,34,32,105,115,32,110,111,116,32,104,101,114,101,34,41,198,116,199,108,99,41,43,40,40,34,116,104,101,114,101,32,105,115,32,110,111,32,34,43,168,119,36,40,116,41,43,34,32,104,101,114,101,34,41,198,116,62,108,99,41,13],"d":"9906 DATA ((FN w$(t)+\" is not here\") AND t<=lc)+((\"there is no \"+FN w$(t)+\" here\") AND t>lc)","enc":"basic"},{"a":43982,"t":"text","b":[38,179,121,0,228,174,34,168,104,36,40,110,41,43,34,34,32,34,34,43,40,34,34,97,32,119,101,97,112,111,110,34,34,198,40,116,61,54,51,197,116,61,54,52,197,116,61,54,55,197,116,61,54,57,41,41,43,40,34,34,97,32,115,104,105,101,108,100,34,34,198,40,116,61,54,53,197,116,61,55,50,41,41,43,40,34,34,97,32,104,101,108,109,101,116,34,34,198,40,116,61,56,50,197,116,61,56,51,41,41,43,34,34,32,97,108,114,101,97,100,121,34,34,34,13],"d":"9907 DATA VAL$ \"FN h$(n)+\"\" \"\"+(\"\"a weapon\"\" AND (t=63 OR t=64 OR t=67 OR t=69))+(\"\"a shield\"\" AND (t=65 OR t=72))+(\"\"a helmet\"\" AND (t=82 OR t=83))+\"\" already\"\"\"","enc":"basic"},{"a":44107,"l":"error_messages_2","c":"Errors 9 to 18: 9 \"you have only 5 crowns\", 10 \"... no money\", 12 \"there is no money here\", 13 \"there are only ... crowns here\", 14 \"the way north is blocked\", 17 \"... can't get ...\", 18 \"... not strong enough\", which no line raises (opening has a message of its own). 8, 11, 15 and 16 have no line and are not raised either.","t":"text","b":[38,181,34,0,228,168,104,36,40,110,41,43,34,32,111,110,108,121,32,34,43,193,168,109,40,110,41,43,34,32,99,114,111,119,110,115,34,13],"d":"9909 DATA FN h$(n)+\" only \"+STR$ FN m(n)+\" crowns\"","enc":"basic"},{"a":44145,"t":"text","b":[38,182,20,0,228,168,104,36,40,110,41,43,34,32,110,111,32,109,111,110,101,121,34,13],"d":"9910 DATA FN h$(n)+\" no money\"","enc":"basic"},{"a":44169,"t":"text","b":[38,184,26,0,228,34,116,104,101,114,101,32,105,115,32,110,111,32,109,111,110,101,121,32,104,101,114,101,34,13],"d":"9912 DATA \"there is no money here\"","enc":"basic"},{"a":44199,"t":"text","b":[38,185,41,0,228,34,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,34,43,193,168,113,40,104,41,43,34,32,99,114,111,119,110,115,32,104,101,114,101,34,13],"d":"9913 DATA \"there are only \"+STR$ FN q(h)+\" crowns here\"","enc":"basic"},{"a":44244,"t":"text","b":[38,186,35,0,228,34,116,104,101,32,119,97,121,32,34,43,168,119,36,40,100,105,114,41,43,34,32,105,115,32,98,108,111,99,107,101,100,34,13],"d":"9914 DATA \"the way \"+FN w$(dir)+\" is blocked\"","enc":"basic"},{"a":44283,"t":"text","b":[38,189,58,0,228,168,98,36,40,110,41,43,34,32,99,97,110,39,116,32,34,43,168,119,36,40,118,41,43,34,32,34,43,40,168,98,36,40,116,41,198,116,201,109,116,41,43,40,34,109,111,110,101,121,34,198,116,61,109,116,41,13],"d":"9917 DATA FN b$(n)+\" can't \"+FN w$(v)+\" \"+(FN b$(t) AND t<>mt)+(\"money\" AND t=mt)","enc":"basic"},{"a":44345,"t":"text","b":[38,190,29,0,228,168,105,36,40,110,41,43,34,32,110,111,116,32,115,116,114,111,110,103,32,101,110,111,117,103,104,34,13],"d":"9918 DATA FN i$(n)+\" not strong enough\"","enc":"basic"},{"a":44378,"l":"text_area","c":"n$(640): the text window's text area, 20 lines of 32 characters, five of them on screen at a time (print_text_window). A new line goes in at 609 after scroll_text has moved the rest up a line. Blank on the tape.","t":"text","b":[206,131,2,1,128,2],"d":"DIM n$(640)","enc":"basic"},{"a":44384,"t":"text","b":[32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32],"d":"n$=\"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \"","enc":"basic"},{"a":45024,"l":"dictionary","c":"d$(255,11): the dictionary, one word to a row, its number the row: a length byte, the word, and in the last byte its class, which parse_command reads to file it. Words 1 to 39 are the characters, \"you\" first.","t":"text","b":[196,250,10,2,255,0,11,0],"d":"DIM d$(255,11)","enc":"basic"},{"a":45032,"t":"text","b":[3,121,111,117,32,32,32,32,32,32,1],"d":"d$(1)=\"{0x03}you      {0x01}\"","enc":"basic"},{"a":45043,"t":"text","b":[4,76,111,107,105,32,32,32,32,32,1],"d":"d$(2)=\"{0x04}Loki     {0x01}\"","enc":"basic"},{"a":45054,"t":"text","b":[4,79,100,105,110,32,32,32,32,32,1],"d":"d$(3)=\"{0x04}Odin     {0x01}\"","enc":"basic"},{"a":45065,"t":"text","b":[4,84,104,111,114,32,32,32,32,32,1],"d":"d$(4)=\"{0x04}Thor     {0x01}\"","enc":"basic"},{"a":45076,"t":"text","b":[6,66,111,108,100,105,114,32,32,32,1],"d":"d$(5)=\"{0x06}Boldir   {0x01}\"","enc":"basic"},{"a":45087,"t":"text","b":[4,83,97,103,97,32,32,32,32,32,1],"d":"d$(6)=\"{0x04}Saga     {0x01}\"","enc":"basic"},{"a":45098,"t":"text","b":[3,75,111,110,32,32,32,32,32,32,1],"d":"d$(7)=\"{0x03}Kon      {0x01}\"","enc":"basic"},{"a":45109,"t":"text","b":[3,75,105,114,32,32,32,32,32,32,1],"d":"d$(8)=\"{0x03}Kir      {0x01}\"","enc":"basic"},{"a":45120,"t":"text","b":[5,84,104,117,100,100,32,32,32,32,1],"d":"d$(9)=\"{0x05}Thudd    {0x01}\"","enc":"basic"},{"a":45131,"t":"text","b":[3,72,101,108,32,32,32,32,32,32,1],"d":"d$(10)=\"{0x03}Hel      {0x01}\"","enc":"basic"},{"a":45142,"t":"text","b":[5,84,97,108,105,115,32,32,32,32,1],"d":"d$(11)=\"{0x05}Talis    {0x01}\"","enc":"basic"},{"a":45153,"t":"text","b":[4,71,111,114,101,32,32,32,32,32,1],"d":"d$(12)=\"{0x04}Gore     {0x01}\"","enc":"basic"},{"a":45164,"t":"text","b":[6,78,105,100,104,111,103,32,32,32,1],"d":"d$(13)=\"{0x06}Nidhog   {0x01}\"","enc":"basic"},{"a":45175,"t":"text","b":[4,73,100,117,110,32,32,32,32,32,1],"d":"d$(14)=\"{0x04}Idun     {0x01}\"","enc":"basic"},{"a":45186,"t":"text","b":[7,72,101,105,109,100,97,108,32,32,1],"d":"d$(15)=\"{0x07}Heimdal  {0x01}\"","enc":"basic"},{"a":45197,"t":"text","b":[5,66,114,97,103,105,32,32,32,32,1],"d":"d$(16)=\"{0x05}Bragi    {0x01}\"","enc":"basic"},{"a":45208,"t":"text","b":[6,68,114,117,100,103,101,32,32,32,1],"d":"d$(17)=\"{0x06}Drudge   {0x01}\"","enc":"basic"},{"a":45219,"t":"text","b":[5,71,114,105,112,101,32,32,32,32,1],"d":"d$(18)=\"{0x05}Gripe    {0x01}\"","enc":"basic"},{"a":45230,"t":"text","b":[5,65,108,118,105,110,32,32,32,32,1],"d":"d$(19)=\"{0x05}Alvin    {0x01}\"","enc":"basic"},{"a":45241,"t":"text","b":[6,78,97,115,104,101,114,32,32,32,1],"d":"d$(20)=\"{0x06}Nasher   {0x01}\"","enc":"basic"},{"a":45252,"t":"text","b":[6,82,97,110,107,108,101,32,32,32,1],"d":"d$(21)=\"{0x06}Rankle   {0x01}\"","enc":"basic"},{"a":45263,"t":"text","b":[5,66,111,111,103,105,32,32,32,32,1],"d":"d$(22)=\"{0x05}Boogi    {0x01}\"","enc":"basic"},{"a":45274,"t":"text","b":[4,77,97,114,121,32,32,32,32,32,1],"d":"d$(23)=\"{0x04}Mary     {0x01}\"","enc":"basic"},{"a":45285,"t":"text","b":[6,75,108,101,112,116,111,32,32,32,1],"d":"d$(24)=\"{0x06}Klepto   {0x01}\"","enc":"basic"},{"a":45296,"t":"text","b":[2,79,100,32,32,32,32,32,32,32,1],"d":"d$(25)=\"{0x02}Od       {0x01}\"","enc":"basic"},{"a":45307,"t":"text","b":[3,84,121,114,32,32,32,32,32,32,1],"d":"d$(26)=\"{0x03}Tyr      {0x01}\"","enc":"basic"},{"a":45318,"t":"text","b":[6,77,105,115,116,114,97,32,32,32,1],"d":"d$(27)=\"{0x06}Mistra   {0x01}\"","enc":"basic"},{"a":45329,"t":"text","b":[4,83,110,111,114,32,32,32,32,32,1],"d":"d$(28)=\"{0x04}Snor     {0x01}\"","enc":"basic"},{"a":45340,"t":"text","b":[4,71,108,117,116,32,32,32,32,32,1],"d":"d$(29)=\"{0x04}Glut     {0x01}\"","enc":"basic"},{"a":45351,"t":"text","b":[5,71,114,117,110,116,32,32,32,32,1],"d":"d$(30)=\"{0x05}Grunt    {0x01}\"","enc":"basic"},{"a":45362,"t":"text","b":[5,75,114,97,110,107,32,32,32,32,1],"d":"d$(31)=\"{0x05}Krank    {0x01}\"","enc":"basic"},{"a":45373,"t":"text","b":[5,75,108,111,117,116,32,32,32,32,1],"d":"d$(32)=\"{0x05}Klout    {0x01}\"","enc":"basic"},{"a":45384,"t":"text","b":[4,76,101,101,114,32,32,32,32,32,1],"d":"d$(33)=\"{0x04}Leer     {0x01}\"","enc":"basic"},{"a":45395,"t":"text","b":[3,66,117,103,32,32,32,32,32,32,1],"d":"d$(34)=\"{0x03}Bug      {0x01}\"","enc":"basic"},{"a":45406,"t":"text","b":[5,83,107,97,100,105,32,32,32,32,1],"d":"d$(35)=\"{0x05}Skadi    {0x01}\"","enc":"basic"},{"a":45417,"t":"text","b":[7,70,114,97,110,116,105,99,32,32,1],"d":"d$(36)=\"{0x07}Frantic  {0x01}\"","enc":"basic"},{"a":45428,"t":"text","b":[6,71,97,115,116,114,111,32,32,32,1],"d":"d$(37)=\"{0x06}Gastro   {0x01}\"","enc":"basic"},{"a":45439,"t":"text","b":[5,83,110,97,107,101,32,32,32,32,1],"d":"d$(38)=\"{0x05}Snake    {0x01}\"","enc":"basic"},{"a":45450,"t":"text","b":[5,82,97,118,101,110,32,32,32,32,1],"d":"d$(39)=\"{0x05}Raven    {0x01}\"","enc":"basic"},{"a":45461,"l":"dict_objects","c":"Words 40 to 100: the short compass words \"n\" to \"nw\" (40-47), the objects from 63 (axe) to 97 (crown), the long compass words 88-95 and \"me\" (99); the rows between are blank.","t":"text","b":[1,110,32,32,32,32,32,32,32,32,1],"d":"d$(40)=\"{0x01}n        {0x01}\"","enc":"basic"},{"a":45472,"t":"text","b":[2,110,101,32,32,32,32,32,32,32,1],"d":"d$(41)=\"{0x02}ne       {0x01}\"","enc":"basic"},{"a":45483,"t":"text","b":[1,101,32,32,32,32,32,32,32,32,1],"d":"d$(42)=\"{0x01}e        {0x01}\"","enc":"basic"},{"a":45494,"t":"text","b":[2,115,101,32,32,32,32,32,32,32,1],"d":"d$(43)=\"{0x02}se       {0x01}\"","enc":"basic"},{"a":45505,"t":"text","b":[1,115,32,32,32,32,32,32,32,32,1],"d":"d$(44)=\"{0x01}s        {0x01}\"","enc":"basic"},{"a":45516,"t":"text","b":[2,115,119,32,32,32,32,32,32,32,1],"d":"d$(45)=\"{0x02}sw       {0x01}\"","enc":"basic"},{"a":45527,"t":"text","b":[1,119,32,32,32,32,32,32,32,32,1],"d":"d$(46)=\"{0x01}w        {0x01}\"","enc":"basic"},{"a":45538,"t":"text","b":[2,110,119,32,32,32,32,32,32,32,1],"d":"d$(47)=\"{0x02}nw       {0x01}\"","enc":"basic"},{"a":45549,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(48)=\"{0x00}          \"","enc":"basic"},{"a":45560,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(49)=\"{0x00}          \"","enc":"basic"},{"a":45571,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(50)=\"{0x00}          \"","enc":"basic"},{"a":45582,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(51)=\"{0x00}          \"","enc":"basic"},{"a":45593,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(52)=\"{0x00}          \"","enc":"basic"},{"a":45604,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(53)=\"{0x00}          \"","enc":"basic"},{"a":45615,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(54)=\"{0x00}          \"","enc":"basic"},{"a":45626,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(55)=\"{0x00}          \"","enc":"basic"},{"a":45637,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(56)=\"{0x00}          \"","enc":"basic"},{"a":45648,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(57)=\"{0x00}          \"","enc":"basic"},{"a":45659,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(58)=\"{0x00}          \"","enc":"basic"},{"a":45670,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(59)=\"{0x00}          \"","enc":"basic"},{"a":45681,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(60)=\"{0x00}          \"","enc":"basic"},{"a":45692,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(61)=\"{0x00}          \"","enc":"basic"},{"a":45703,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(62)=\"{0x00}          \"","enc":"basic"},{"a":45714,"t":"text","b":[3,97,120,101,32,32,32,32,32,32,1],"d":"d$(63)=\"{0x03}axe      {0x01}\"","enc":"basic"},{"a":45725,"t":"text","b":[9,70,101,108,115,116,114,111,110,103,1],"d":"d$(64)=\"{0x09}Felstrong{0x01}\"","enc":"basic"},{"a":45736,"t":"text","b":[6,115,104,105,101,108,100,32,32,32,1],"d":"d$(65)=\"{0x06}shield   {0x01}\"","enc":"basic"},{"a":45747,"t":"text","b":[9,108,105,103,104,116,110,105,110,103,1],"d":"d$(66)=\"{0x09}lightning{0x01}\"","enc":"basic"},{"a":45758,"t":"text","b":[5,115,119,111,114,100,32,32,32,32,1],"d":"d$(67)=\"{0x05}sword    {0x01}\"","enc":"basic"},{"a":45769,"t":"text","b":[5,99,104,101,115,116,32,32,32,32,1],"d":"d$(68)=\"{0x05}chest    {0x01}\"","enc":"basic"},{"a":45780,"t":"text","b":[6,83,107,97,108,105,114,32,32,32,1],"d":"d$(69)=\"{0x06}Skalir   {0x01}\"","enc":"basic"},{"a":45791,"t":"text","b":[4,119,105,110,101,32,32,32,32,32,1],"d":"d$(70)=\"{0x04}wine     {0x01}\"","enc":"basic"},{"a":45802,"t":"text","b":[5,106,101,119,101,108,32,32,32,32,1],"d":"d$(71)=\"{0x05}jewel    {0x01}\"","enc":"basic"},{"a":45813,"t":"text","b":[7,83,107,111,114,110,105,114,32,32,1],"d":"d$(72)=\"{0x07}Skornir  {0x01}\"","enc":"basic"},{"a":45824,"t":"text","b":[8,99,117,112,98,111,97,114,100,32,1],"d":"d$(73)=\"{0x08}cupboard {0x01}\"","enc":"basic"},{"a":45835,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(74)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":45846,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(75)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":45857,"t":"text","b":[5,115,116,111,110,101,32,32,32,32,1],"d":"d$(76)=\"{0x05}stone    {0x01}\"","enc":"basic"},{"a":45868,"t":"text","b":[4,114,111,99,107,32,32,32,32,32,1],"d":"d$(77)=\"{0x04}rock     {0x01}\"","enc":"basic"},{"a":45879,"t":"text","b":[7,68,114,97,112,110,105,114,32,32,1],"d":"d$(78)=\"{0x07}Drapnir  {0x01}\"","enc":"basic"},{"a":45890,"t":"text","b":[5,79,102,110,105,114,32,32,32,32,1],"d":"d$(79)=\"{0x05}Ofnir    {0x01}\"","enc":"basic"},{"a":45901,"t":"text","b":[3,107,101,121,32,32,32,32,32,32,1],"d":"d$(80)=\"{0x03}key      {0x01}\"","enc":"basic"},{"a":45912,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(81)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":45923,"t":"text","b":[7,71,114,105,109,110,105,114,32,32,1],"d":"d$(82)=\"{0x07}Grimnir  {0x01}\"","enc":"basic"},{"a":45934,"t":"text","b":[6,104,101,108,109,101,116,32,32,32,1],"d":"d$(83)=\"{0x06}helmet   {0x01}\"","enc":"basic"},{"a":45945,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(84)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":45956,"t":"text","b":[4,114,105,110,103,32,32,32,32,32,1],"d":"d$(85)=\"{0x04}ring     {0x01}\"","enc":"basic"},{"a":45967,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(86)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":45978,"t":"text","b":[8,102,105,114,101,98,97,108,108,32,1],"d":"d$(87)=\"{0x08}fireball {0x01}\"","enc":"basic"},{"a":45989,"t":"text","b":[5,110,111,114,116,104,32,32,32,32,1],"d":"d$(88)=\"{0x05}north    {0x01}\"","enc":"basic"},{"a":46000,"t":"text","b":[9,110,111,114,116,104,101,97,115,116,1],"d":"d$(89)=\"{0x09}northeast{0x01}\"","enc":"basic"},{"a":46011,"t":"text","b":[4,101,97,115,116,32,32,32,32,32,1],"d":"d$(90)=\"{0x04}east     {0x01}\"","enc":"basic"},{"a":46022,"t":"text","b":[9,115,111,117,116,104,101,97,115,116,1],"d":"d$(91)=\"{0x09}southeast{0x01}\"","enc":"basic"},{"a":46033,"t":"text","b":[5,115,111,117,116,104,32,32,32,32,1],"d":"d$(92)=\"{0x05}south    {0x01}\"","enc":"basic"},{"a":46044,"t":"text","b":[9,115,111,117,116,104,119,101,115,116,1],"d":"d$(93)=\"{0x09}southwest{0x01}\"","enc":"basic"},{"a":46055,"t":"text","b":[4,119,101,115,116,32,32,32,32,32,1],"d":"d$(94)=\"{0x04}west     {0x01}\"","enc":"basic"},{"a":46066,"t":"text","b":[9,110,111,114,116,104,119,101,115,116,1],"d":"d$(95)=\"{0x09}northwest{0x01}\"","enc":"basic"},{"a":46077,"t":"text","b":[4,102,111,111,100,32,32,32,32,32,1],"d":"d$(96)=\"{0x04}food     {0x01}\"","enc":"basic"},{"a":46088,"t":"text","b":[5,99,114,111,119,110,32,32,32,32,1],"d":"d$(97)=\"{0x05}crown    {0x01}\"","enc":"basic"},{"a":46099,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,1],"d":"d$(98)=\"{0x00}         {0x01}\"","enc":"basic"},{"a":46110,"t":"text","b":[2,109,101,32,32,32,32,32,32,32,1],"d":"d$(99)=\"{0x02}me       {0x01}\"","enc":"basic"},{"a":46121,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(100)=\"{0x00}          \"","enc":"basic"},{"a":46132,"l":"dict_verbs","c":"Words 101 to 146: the verbs \"go\" (101) to \"lock\" (124), class 2, then the game commands \"l\" (132) to \"how\" (146), class 7. A verb's number picks its line, 50 x v - 4000; a command's, 50 x sc - 700.","t":"text","b":[2,103,111,32,32,32,32,32,32,32,2],"d":"d$(101)=\"{0x02}go       {0x02}\"","enc":"basic"},{"a":46143,"t":"text","b":[5,111,102,102,101,114,32,32,32,32,2],"d":"d$(102)=\"{0x05}offer    {0x02}\"","enc":"basic"},{"a":46154,"t":"text","b":[3,103,101,116,32,32,32,32,32,32,2],"d":"d$(103)=\"{0x03}get      {0x02}\"","enc":"basic"},{"a":46165,"t":"text","b":[4,116,97,107,101,32,32,32,32,32,2],"d":"d$(104)=\"{0x04}take     {0x02}\"","enc":"basic"},{"a":46176,"t":"text","b":[3,104,105,116,32,32,32,32,32,32,2],"d":"d$(105)=\"{0x03}hit      {0x02}\"","enc":"basic"},{"a":46187,"t":"text","b":[6,97,116,116,97,99,107,32,32,32,2],"d":"d$(106)=\"{0x06}attack   {0x02}\"","enc":"basic"},{"a":46198,"t":"text","b":[4,107,105,108,108,32,32,32,32,32,2],"d":"d$(107)=\"{0x04}kill     {0x02}\"","enc":"basic"},{"a":46209,"t":"text","b":[4,100,114,111,112,32,32,32,32,32,2],"d":"d$(108)=\"{0x04}drop     {0x02}\"","enc":"basic"},{"a":46220,"t":"text","b":[5,116,104,114,111,119,32,32,32,32,2],"d":"d$(109)=\"{0x05}throw    {0x02}\"","enc":"basic"},{"a":46231,"t":"text","b":[4,106,117,109,112,32,32,32,32,32,2],"d":"d$(110)=\"{0x04}jump     {0x02}\"","enc":"basic"},{"a":46242,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(111)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46253,"t":"text","b":[3,112,117,116,32,32,32,32,32,32,2],"d":"d$(112)=\"{0x03}put      {0x02}\"","enc":"basic"},{"a":46264,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(113)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46275,"t":"text","b":[5,100,114,105,110,107,32,32,32,32,2],"d":"d$(114)=\"{0x05}drink    {0x02}\"","enc":"basic"},{"a":46286,"t":"text","b":[4,103,105,118,101,32,32,32,32,32,2],"d":"d$(115)=\"{0x04}give     {0x02}\"","enc":"basic"},{"a":46297,"t":"text","b":[3,98,117,121,32,32,32,32,32,32,2],"d":"d$(116)=\"{0x03}buy      {0x02}\"","enc":"basic"},{"a":46308,"t":"text","b":[4,115,101,108,108,32,32,32,32,32,2],"d":"d$(117)=\"{0x04}sell     {0x02}\"","enc":"basic"},{"a":46319,"t":"text","b":[3,101,97,116,32,32,32,32,32,32,2],"d":"d$(118)=\"{0x03}eat      {0x02}\"","enc":"basic"},{"a":46330,"t":"text","b":[4,111,112,101,110,32,32,32,32,32,2],"d":"d$(119)=\"{0x04}open     {0x02}\"","enc":"basic"},{"a":46341,"t":"text","b":[6,115,117,109,109,111,110,32,32,32,2],"d":"d$(120)=\"{0x06}summon   {0x02}\"","enc":"basic"},{"a":46352,"t":"text","b":[5,99,108,111,115,101,32,32,32,32,2],"d":"d$(121)=\"{0x05}close    {0x02}\"","enc":"basic"},{"a":46363,"t":"text","b":[4,115,104,117,116,32,32,32,32,32,2],"d":"d$(122)=\"{0x04}shut     {0x02}\"","enc":"basic"},{"a":46374,"t":"text","b":[6,117,110,108,111,99,107,32,32,32,2],"d":"d$(123)=\"{0x06}unlock   {0x02}\"","enc":"basic"},{"a":46385,"t":"text","b":[4,108,111,99,107,32,32,32,32,32,2],"d":"d$(124)=\"{0x04}lock     {0x02}\"","enc":"basic"},{"a":46396,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(125)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46407,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(126)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46418,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(127)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46429,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(128)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46440,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(129)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46451,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(130)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46462,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,2],"d":"d$(131)=\"{0x00}         {0x02}\"","enc":"basic"},{"a":46473,"t":"text","b":[1,108,32,32,32,32,32,32,32,32,7],"d":"d$(132)=\"{0x01}l        {0x07}\"","enc":"basic"},{"a":46484,"t":"text","b":[1,114,32,32,32,32,32,32,32,32,7],"d":"d$(133)=\"{0x01}r        {0x07}\"","enc":"basic"},{"a":46495,"t":"text","b":[5,112,97,117,115,101,32,32,32,32,7],"d":"d$(134)=\"{0x05}pause    {0x07}\"","enc":"basic"},{"a":46506,"t":"text","b":[4,115,97,118,101,32,32,32,32,32,7],"d":"d$(135)=\"{0x04}save     {0x07}\"","enc":"basic"},{"a":46517,"t":"text","b":[4,108,105,115,116,32,32,32,32,32,7],"d":"d$(136)=\"{0x04}list     {0x07}\"","enc":"basic"},{"a":46528,"t":"text","b":[0,0,0,0,0,0,0,0,0,0,0],"d":"d$(137)=\"{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":46539,"t":"text","b":[3,119,104,111,32,32,32,32,32,32,7],"d":"d$(138)=\"{0x03}who      {0x07}\"","enc":"basic"},{"a":46550,"t":"text","b":[4,108,111,97,100,32,32,32,32,32,7],"d":"d$(139)=\"{0x04}load     {0x07}\"","enc":"basic"},{"a":46561,"t":"text","b":[5,112,114,105,110,116,32,32,32,32,7],"d":"d$(140)=\"{0x05}print    {0x07}\"","enc":"basic"},{"a":46572,"t":"text","b":[7,110,111,112,114,105,110,116,32,32,7],"d":"d$(141)=\"{0x07}noprint  {0x07}\"","enc":"basic"},{"a":46583,"t":"text","b":[4,99,111,112,121,32,32,32,32,32,7],"d":"d$(142)=\"{0x04}copy     {0x07}\"","enc":"basic"},{"a":46594,"t":"text","b":[4,119,104,97,116,32,32,32,32,32,7],"d":"d$(143)=\"{0x04}what     {0x07}\"","enc":"basic"},{"a":46605,"t":"text","b":[5,119,104,101,114,101,32,32,32,32,7],"d":"d$(144)=\"{0x05}where    {0x07}\"","enc":"basic"},{"a":46616,"t":"text","b":[4,104,101,108,112,32,32,32,32,32,7],"d":"d$(145)=\"{0x04}help     {0x07}\"","enc":"basic"},{"a":46627,"t":"text","b":[3,104,111,119,32,32,32,32,32,32,7],"d":"d$(146)=\"{0x03}how      {0x07}\"","enc":"basic"},{"a":46638,"l":"dict_little_words","c":"Words 147 to 177: the prepositions (\"with\", \"to\", \"from\", \"for\", class 3) and the words the parser lets pass (\"the\", \"please\", \"hallo\", \"thankyou\", class 5).","t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(147)=\"{0x00}          \"","enc":"basic"},{"a":46649,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(148)=\"{0x00}          \"","enc":"basic"},{"a":46660,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(149)=\"{0x00}          \"","enc":"basic"},{"a":46671,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(150)=\"{0x00}          \"","enc":"basic"},{"a":46682,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(151)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46693,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(152)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46704,"t":"text","b":[4,119,105,116,104,32,32,32,32,32,3],"d":"d$(153)=\"{0x04}with     {0x03}\"","enc":"basic"},{"a":46715,"t":"text","b":[2,116,111,32,32,32,32,32,32,32,3],"d":"d$(154)=\"{0x02}to       {0x03}\"","enc":"basic"},{"a":46726,"t":"text","b":[4,102,114,111,109,32,32,32,32,32,3],"d":"d$(155)=\"{0x04}from     {0x03}\"","enc":"basic"},{"a":46737,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(156)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46748,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(157)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46759,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(158)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46770,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,3],"d":"d$(159)=\"{0x00}         {0x03}\"","enc":"basic"},{"a":46781,"t":"text","b":[3,102,111,114,32,32,32,32,32,32,3],"d":"d$(160)=\"{0x03}for      {0x03}\"","enc":"basic"},{"a":46792,"t":"text","b":[3,97,110,100,32,32,32,32,32,32,5],"d":"d$(161)=\"{0x03}and      {0x05}\"","enc":"basic"},{"a":46803,"t":"text","b":[3,116,104,101,32,32,32,32,32,32,5],"d":"d$(162)=\"{0x03}the      {0x05}\"","enc":"basic"},{"a":46814,"t":"text","b":[1,97,32,32,32,32,32,32,32,32,5],"d":"d$(163)=\"{0x01}a        {0x05}\"","enc":"basic"},{"a":46825,"t":"text","b":[2,97,110,32,32,32,32,32,32,32,5],"d":"d$(164)=\"{0x02}an       {0x05}\"","enc":"basic"},{"a":46836,"t":"text","b":[3,110,111,119,32,32,32,32,32,32,5],"d":"d$(165)=\"{0x03}now      {0x05}\"","enc":"basic"},{"a":46847,"t":"text","b":[3,103,111,116,32,32,32,32,32,32,5],"d":"d$(166)=\"{0x03}got      {0x05}\"","enc":"basic"},{"a":46858,"t":"text","b":[4,104,101,114,101,32,32,32,32,32,5],"d":"d$(167)=\"{0x04}here     {0x05}\"","enc":"basic"},{"a":46869,"t":"text","b":[2,97,116,32,32,32,32,32,32,32,5],"d":"d$(168)=\"{0x02}at       {0x05}\"","enc":"basic"},{"a":46880,"t":"text","b":[3,111,102,102,32,32,32,32,32,32,5],"d":"d$(169)=\"{0x03}off      {0x05}\"","enc":"basic"},{"a":46891,"t":"text","b":[4,121,111,117,114,32,32,32,32,32,5],"d":"d$(170)=\"{0x04}your     {0x05}\"","enc":"basic"},{"a":46902,"t":"text","b":[2,109,121,32,32,32,32,32,32,32,5],"d":"d$(171)=\"{0x02}my       {0x05}\"","enc":"basic"},{"a":46913,"t":"text","b":[2,105,110,32,32,32,32,32,32,32,5],"d":"d$(172)=\"{0x02}in       {0x05}\"","enc":"basic"},{"a":46924,"t":"text","b":[4,105,110,116,111,32,32,32,32,32,5],"d":"d$(173)=\"{0x04}into     {0x05}\"","enc":"basic"},{"a":46935,"t":"text","b":[6,112,108,101,97,115,101,32,32,32,5],"d":"d$(174)=\"{0x06}please   {0x05}\"","enc":"basic"},{"a":46946,"t":"text","b":[5,104,97,108,108,111,32,32,32,32,5],"d":"d$(175)=\"{0x05}hallo    {0x05}\"","enc":"basic"},{"a":46957,"t":"text","b":[8,116,104,97,110,107,121,111,117,32,5],"d":"d$(176)=\"{0x08}thankyou {0x05}\"","enc":"basic"},{"a":46968,"t":"text","b":[7,103,111,111,100,98,121,101,32,32,5],"d":"d$(177)=\"{0x07}goodbye  {0x05}\"","enc":"basic"},{"a":46979,"l":"dict_places","c":"Words 178 to 255: the special places' names (\"Ecstasy\", \"Krank's\", \"VALHALLA\", \"Asnir\", \"Hellgate\"), and from 241 the fourteen swear words, class 6, that bring Mary.","t":"text","b":[7,69,99,115,116,97,115,121,32,32,5],"d":"d$(178)=\"{0x07}Ecstasy  {0x05}\"","enc":"basic"},{"a":46990,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(179)=\"{0x00}          \"","enc":"basic"},{"a":47001,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(180)=\"{0x00}          \"","enc":"basic"},{"a":47012,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(181)=\"{0x00}          \"","enc":"basic"},{"a":47023,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(182)=\"{0x00}          \"","enc":"basic"},{"a":47034,"t":"text","b":[7,75,114,97,110,107,39,115,32,32,5],"d":"d$(183)=\"{0x07}Krank's  {0x05}\"","enc":"basic"},{"a":47045,"t":"text","b":[8,86,65,76,72,65,76,76,65,32,5],"d":"d$(184)=\"{0x08}VALHALLA {0x05}\"","enc":"basic"},{"a":47056,"t":"text","b":[6,76,111,107,105,39,115,32,32,32,5],"d":"d$(185)=\"{0x06}Loki's   {0x05}\"","enc":"basic"},{"a":47067,"t":"text","b":[6,84,104,111,114,39,115,32,32,32,5],"d":"d$(186)=\"{0x06}Thor's   {0x05}\"","enc":"basic"},{"a":47078,"t":"text","b":[8,69,108,128,86,105,110,111,115,32,5],"d":"d$(187)=\"{0x08}El{0x80}Vinos {0x05}\"","enc":"basic"},{"a":47089,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(188)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47100,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(189)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47111,"t":"text","b":[5,65,115,110,105,114,32,32,32,32,5],"d":"d$(190)=\"{0x05}Asnir    {0x05}\"","enc":"basic"},{"a":47122,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(191)=\"{0x00}          \"","enc":"basic"},{"a":47133,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(192)=\"{0x00}          \"","enc":"basic"},{"a":47144,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(193)=\"{0x00}          \"","enc":"basic"},{"a":47155,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(194)=\"{0x00}          \"","enc":"basic"},{"a":47166,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(195)=\"{0x00}          \"","enc":"basic"},{"a":47177,"t":"text","b":[7,84,114,111,117,98,108,101,32,32,5],"d":"d$(196)=\"{0x07}Trouble  {0x05}\"","enc":"basic"},{"a":47188,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(197)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47199,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(198)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47210,"t":"text","b":[8,75,108,101,112,116,111,39,115,32,5],"d":"d$(199)=\"{0x08}Klepto's {0x05}\"","enc":"basic"},{"a":47221,"t":"text","b":[7,68,101,115,112,97,105,114,32,32,5],"d":"d$(200)=\"{0x07}Despair  {0x05}\"","enc":"basic"},{"a":47232,"t":"text","b":[8,72,101,108,108,103,97,116,101,32,5],"d":"d$(201)=\"{0x08}Hellgate {0x05}\"","enc":"basic"},{"a":47243,"t":"text","b":[7,75,114,97,110,107,39,115,32,32,5],"d":"d$(202)=\"{0x07}Krank's  {0x05}\"","enc":"basic"},{"a":47254,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(203)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47265,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(204)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47276,"t":"text","b":[7,86,97,108,104,101,105,109,32,32,5],"d":"d$(205)=\"{0x07}Valheim  {0x05}\"","enc":"basic"},{"a":47287,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(206)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47298,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(207)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47309,"t":"text","b":[5,72,101,108,39,115,32,32,32,32,5],"d":"d$(208)=\"{0x05}Hel's    {0x05}\"","enc":"basic"},{"a":47320,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(209)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47331,"t":"text","b":[8,116,104,101,128,80,105,116,115,32,5],"d":"d$(210)=\"{0x08}the{0x80}Pits {0x05}\"","enc":"basic"},{"a":47342,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,5],"d":"d$(211)=\"{0x00}         {0x05}\"","enc":"basic"},{"a":47353,"t":"text","b":[8,82,97,110,107,108,101,39,115,32,5],"d":"d$(212)=\"{0x08}Rankle's {0x05}\"","enc":"basic"},{"a":47364,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(213)=\"{0x00}          \"","enc":"basic"},{"a":47375,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(214)=\"{0x00}          \"","enc":"basic"},{"a":47386,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(215)=\"{0x00}          \"","enc":"basic"},{"a":47397,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(216)=\"{0x00}          \"","enc":"basic"},{"a":47408,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(217)=\"{0x00}          \"","enc":"basic"},{"a":47419,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(218)=\"{0x00}          \"","enc":"basic"},{"a":47430,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(219)=\"{0x00}          \"","enc":"basic"},{"a":47441,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(220)=\"{0x00}          \"","enc":"basic"},{"a":47452,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(221)=\"{0x00}          \"","enc":"basic"},{"a":47463,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(222)=\"{0x00}          \"","enc":"basic"},{"a":47474,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(223)=\"{0x00}          \"","enc":"basic"},{"a":47485,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(224)=\"{0x00}          \"","enc":"basic"},{"a":47496,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(225)=\"{0x00}          \"","enc":"basic"},{"a":47507,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(226)=\"{0x00}          \"","enc":"basic"},{"a":47518,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(227)=\"{0x00}          \"","enc":"basic"},{"a":47529,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(228)=\"{0x00}          \"","enc":"basic"},{"a":47540,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(229)=\"{0x00}          \"","enc":"basic"},{"a":47551,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(230)=\"{0x00}          \"","enc":"basic"},{"a":47562,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(231)=\"{0x00}          \"","enc":"basic"},{"a":47573,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(232)=\"{0x00}          \"","enc":"basic"},{"a":47584,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(233)=\"{0x00}          \"","enc":"basic"},{"a":47595,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(234)=\"{0x00}          \"","enc":"basic"},{"a":47606,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(235)=\"{0x00}          \"","enc":"basic"},{"a":47617,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(236)=\"{0x00}          \"","enc":"basic"},{"a":47628,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(237)=\"{0x00}          \"","enc":"basic"},{"a":47639,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(238)=\"{0x00}          \"","enc":"basic"},{"a":47650,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(239)=\"{0x00}          \"","enc":"basic"},{"a":47661,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(240)=\"{0x00}          \"","enc":"basic"},{"a":47672,"t":"text","b":[4,119,97,110,107,32,32,32,32,32,6],"d":"d$(241)=\"{0x04}wank     {0x06}\"","enc":"basic"},{"a":47683,"t":"text","b":[6,98,117,103,103,101,114,32,32,32,6],"d":"d$(242)=\"{0x06}bugger   {0x06}\"","enc":"basic"},{"a":47694,"t":"text","b":[4,102,117,99,107,32,32,32,32,32,6],"d":"d$(243)=\"{0x04}fuck     {0x06}\"","enc":"basic"},{"a":47705,"t":"text","b":[6,102,117,99,107,101,114,32,32,32,6],"d":"d$(244)=\"{0x06}fucker   {0x06}\"","enc":"basic"},{"a":47716,"t":"text","b":[7,102,117,99,107,105,110,103,32,32,6],"d":"d$(245)=\"{0x07}fucking  {0x06}\"","enc":"basic"},{"a":47727,"t":"text","b":[4,99,117,110,116,32,32,32,32,32,6],"d":"d$(246)=\"{0x04}cunt     {0x06}\"","enc":"basic"},{"a":47738,"t":"text","b":[4,115,104,105,116,32,32,32,32,32,6],"d":"d$(247)=\"{0x04}shit     {0x06}\"","enc":"basic"},{"a":47749,"t":"text","b":[6,119,97,110,107,101,114,32,32,32,6],"d":"d$(248)=\"{0x06}wanker   {0x06}\"","enc":"basic"},{"a":47760,"t":"text","b":[4,99,114,97,112,32,32,32,32,32,6],"d":"d$(249)=\"{0x04}crap     {0x06}\"","enc":"basic"},{"a":47771,"t":"text","b":[4,114,97,112,101,32,32,32,32,32,6],"d":"d$(250)=\"{0x04}rape     {0x06}\"","enc":"basic"},{"a":47782,"t":"text","b":[5,115,99,114,101,119,32,32,32,32,6],"d":"d$(251)=\"{0x05}screw    {0x06}\"","enc":"basic"},{"a":47793,"t":"text","b":[4,100,97,109,110,32,32,32,32,32,6],"d":"d$(252)=\"{0x04}damn     {0x06}\"","enc":"basic"},{"a":47804,"t":"text","b":[6,98,108,111,111,100,121,32,32,32,6],"d":"d$(253)=\"{0x06}bloody   {0x06}\"","enc":"basic"},{"a":47815,"t":"text","b":[4,112,105,115,115,32,32,32,32,32,6],"d":"d$(254)=\"{0x04}piss     {0x06}\"","enc":"basic"},{"a":47826,"t":"text","b":[0,32,32,32,32,32,32,32,32,32,32],"d":"d$(255)=\"{0x00}          \"","enc":"basic"},{"a":47837,"l":"consts_first","c":"l = 1, o = 0, z = 2: the commonest numbers, kept as variables. A number written in a line takes its digits and six hidden bytes more, a variable's name one or two, so the program names nearly every number it uses.","t":"text","b":[108,0,0,1,0,0],"d":"l=1","enc":"basic"},{"a":47843,"t":"text","b":[111,0,0,0,0,0],"d":"o=0","enc":"basic"},{"a":47849,"t":"text","b":[122,0,0,2,0,0],"d":"z=2","enc":"basic"},{"a":47855,"l":"objects_table","c":"p$(100,3): three bytes for each word. For an object, its first byte 0, its weight and its value (Grimnir weighs 20 and is worth 255, food 2 and 5); a chest and a cupboard weigh nothing and so can't be carried. For a character, a byte only the fight reads, its load, and its home, a location it may come back to (line 4010); for all but Idun, Snake and Raven it is where it starts.","t":"text","b":[208,49,1,2,100,0,3,0],"d":"DIM p$(100,3)","enc":"basic"},{"a":47863,"t":"text","b":[51,0,71],"d":"p$(1)=\"3{0x00}G\"","enc":"basic"},{"a":47866,"t":"text","b":[51,37,71],"d":"p$(2)=\"3%G\"","enc":"basic"},{"a":47869,"t":"text","b":[51,43,69],"d":"p$(3)=\"3+E\"","enc":"basic"},{"a":47872,"t":"text","b":[51,38,71],"d":"p$(4)=\"3&G\"","enc":"basic"},{"a":47875,"t":"text","b":[51,30,70],"d":"p$(5)=\"3{0x1E}F\"","enc":"basic"},{"a":47878,"t":"text","b":[52,36,62],"d":"p$(6)=\"4$>\"","enc":"basic"},{"a":47881,"t":"text","b":[53,19,48],"d":"p$(7)=\"5{0x13}0\"","enc":"basic"},{"a":47884,"t":"text","b":[52,37,52],"d":"p$(8)=\"4%4\"","enc":"basic"},{"a":47887,"t":"text","b":[54,9,58],"d":"p$(9)=\"6{0x09}:\"","enc":"basic"},{"a":47890,"t":"text","b":[52,27,21],"d":"p$(10)=\"4{0x1B}{0x15}\"","enc":"basic"},{"a":47893,"t":"text","b":[52,23,51],"d":"p$(11)=\"4{0x17}3\"","enc":"basic"},{"a":47896,"t":"text","b":[59,5,31],"d":"p$(12)=\";{0x05}{0x1F}\"","enc":"basic"},{"a":47899,"t":"text","b":[62,7,39],"d":"p$(13)=\">{0x07}'\"","enc":"basic"},{"a":47902,"t":"text","b":[52,15,53],"d":"p$(14)=\"4{0x0F}5\"","enc":"basic"},{"a":47905,"t":"text","b":[51,22,60],"d":"p$(15)=\"3{0x16}<\"","enc":"basic"},{"a":47908,"t":"text","b":[51,26,49],"d":"p$(16)=\"3{0x1A}1\"","enc":"basic"},{"a":47911,"t":"text","b":[55,4,55],"d":"p$(17)=\"7{0x04}7\"","enc":"basic"},{"a":47914,"t":"text","b":[54,9,38],"d":"p$(18)=\"6{0x09}&\"","enc":"basic"},{"a":47917,"t":"text","b":[53,19,75],"d":"p$(19)=\"5{0x13}K\"","enc":"basic"},{"a":47920,"t":"text","b":[62,9,49],"d":"p$(20)=\">{0x09}1\"","enc":"basic"},{"a":47923,"t":"text","b":[53,10,40],"d":"p$(21)=\"5{0x0A}(\"","enc":"basic"},{"a":47926,"t":"text","b":[54,11,64],"d":"p$(22)=\"6{0x0B}@\"","enc":"basic"},{"a":47929,"t":"text","b":[53,12,66],"d":"p$(23)=\"5{0x0C}B\"","enc":"basic"},{"a":47932,"t":"text","b":[53,13,23],"d":"p$(24)=\"5{0x0D}{0x17}\"","enc":"basic"},{"a":47935,"t":"text","b":[54,26,50],"d":"p$(25)=\"6{0x1A}2\"","enc":"basic"},{"a":47938,"t":"text","b":[54,29,21],"d":"p$(26)=\"6{0x1D}{0x15}\"","enc":"basic"},{"a":47941,"t":"text","b":[51,7,69],"d":"p$(27)=\"3{0x07}E\"","enc":"basic"},{"a":47944,"t":"text","b":[52,11,76],"d":"p$(28)=\"4{0x0B}L\"","enc":"basic"},{"a":47947,"t":"text","b":[53,8,39],"d":"p$(29)=\"5{0x08}'\"","enc":"basic"},{"a":47950,"t":"text","b":[54,10,47],"d":"p$(30)=\"6{0x0A}/\"","enc":"basic"},{"a":47953,"t":"text","b":[54,12,65],"d":"p$(31)=\"6{0x0C}A\"","enc":"basic"},{"a":47956,"t":"text","b":[53,7,68],"d":"p$(32)=\"5{0x07}D\"","enc":"basic"},{"a":47959,"t":"text","b":[55,11,71],"d":"p$(33)=\"7{0x0B}G\"","enc":"basic"},{"a":47962,"t":"text","b":[54,12,47],"d":"p$(34)=\"6{0x0C}/\"","enc":"basic"},{"a":47965,"t":"text","b":[51,8,71],"d":"p$(35)=\"3{0x08}G\"","enc":"basic"},{"a":47968,"t":"text","b":[53,6,67],"d":"p$(36)=\"5{0x06}C\"","enc":"basic"},{"a":47971,"t":"text","b":[54,4,29],"d":"p$(37)=\"6{0x04}{0x1D}\"","enc":"basic"},{"a":47974,"t":"text","b":[51,0,0],"d":"p$(38)=\"3{0x00}{0x00}\"","enc":"basic"},{"a":47977,"t":"text","b":[59,0,0],"d":"p$(39)=\";{0x00}{0x00}\"","enc":"basic"},{"a":47980,"t":"text","b":[61,0,0],"d":"p$(40)=\"={0x00}{0x00}\"","enc":"basic"},{"a":47983,"t":"text","b":[61,0,0],"d":"p$(41)=\"={0x00}{0x00}\"","enc":"basic"},{"a":47986,"t":"text","b":[32,32,32],"d":"p$(42)=\"   \"","enc":"basic"},{"a":47989,"t":"text","b":[32,32,32],"d":"p$(43)=\"   \"","enc":"basic"},{"a":47992,"t":"text","b":[32,32,32],"d":"p$(44)=\"   \"","enc":"basic"},{"a":47995,"t":"text","b":[32,32,32],"d":"p$(45)=\"   \"","enc":"basic"},{"a":47998,"t":"text","b":[32,32,32],"d":"p$(46)=\"   \"","enc":"basic"},{"a":48001,"t":"text","b":[32,32,32],"d":"p$(47)=\"   \"","enc":"basic"},{"a":48004,"t":"text","b":[32,32,32],"d":"p$(48)=\"   \"","enc":"basic"},{"a":48007,"t":"text","b":[32,32,32],"d":"p$(49)=\"   \"","enc":"basic"},{"a":48010,"t":"text","b":[32,32,32],"d":"p$(50)=\"   \"","enc":"basic"},{"a":48013,"t":"text","b":[32,32,32],"d":"p$(51)=\"   \"","enc":"basic"},{"a":48016,"t":"text","b":[32,32,32],"d":"p$(52)=\"   \"","enc":"basic"},{"a":48019,"t":"text","b":[32,32,32],"d":"p$(53)=\"   \"","enc":"basic"},{"a":48022,"t":"text","b":[32,32,32],"d":"p$(54)=\"   \"","enc":"basic"},{"a":48025,"t":"text","b":[32,32,32],"d":"p$(55)=\"   \"","enc":"basic"},{"a":48028,"t":"text","b":[32,32,32],"d":"p$(56)=\"   \"","enc":"basic"},{"a":48031,"t":"text","b":[32,32,32],"d":"p$(57)=\"   \"","enc":"basic"},{"a":48034,"t":"text","b":[32,32,32],"d":"p$(58)=\"   \"","enc":"basic"},{"a":48037,"t":"text","b":[32,32,32],"d":"p$(59)=\"   \"","enc":"basic"},{"a":48040,"t":"text","b":[32,32,32],"d":"p$(60)=\"   \"","enc":"basic"},{"a":48043,"t":"text","b":[32,32,32],"d":"p$(61)=\"   \"","enc":"basic"},{"a":48046,"t":"text","b":[32,32,32],"d":"p$(62)=\"   \"","enc":"basic"},{"a":48049,"t":"text","b":[0,5,10],"d":"p$(63)=\"{0x00}{0x05}{0x0A}\"","enc":"basic"},{"a":48052,"t":"text","b":[0,12,180],"d":"p$(64)=\"{0x00}{0x0C}TAN \"","enc":"basic"},{"a":48055,"t":"text","b":[0,12,10],"d":"p$(65)=\"{0x00}{0x0C}{0x0A}\"","enc":"basic"},{"a":48058,"t":"text","b":[0,1,5],"d":"p$(66)=\"{0x00}{0x01}{0x05}\"","enc":"basic"},{"a":48061,"t":"text","b":[0,8,35],"d":"p$(67)=\"{0x00}{0x08}#\"","enc":"basic"},{"a":48064,"t":"text","b":[0,0,0],"d":"p$(68)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48067,"t":"text","b":[0,14,242],"d":"p$(69)=\"{0x00}{0x0E}PAUSE \"","enc":"basic"},{"a":48070,"t":"text","b":[0,1,1],"d":"p$(70)=\"{0x00}{0x01}{0x01}\"","enc":"basic"},{"a":48073,"t":"text","b":[0,1,50],"d":"p$(71)=\"{0x00}{0x01}2\"","enc":"basic"},{"a":48076,"t":"text","b":[0,20,210],"d":"p$(72)=\"{0x00}{0x14}ERASE \"","enc":"basic"},{"a":48079,"t":"text","b":[0,0,0],"d":"p$(73)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48082,"t":"text","b":[0,0,0],"d":"p$(74)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48085,"t":"text","b":[0,0,0],"d":"p$(75)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48088,"t":"text","b":[0,1,0],"d":"p$(76)=\"{0x00}{0x01}{0x00}\"","enc":"basic"},{"a":48091,"t":"text","b":[0,4,0],"d":"p$(77)=\"{0x00}{0x04}{0x00}\"","enc":"basic"},{"a":48094,"t":"text","b":[0,7,220],"d":"p$(78)=\"{0x00}{0x07}BRIGHT \"","enc":"basic"},{"a":48097,"t":"text","b":[0,2,200],"d":"p$(79)=\"{0x00}{0x02}>=\"","enc":"basic"},{"a":48100,"t":"text","b":[0,1,25],"d":"p$(80)=\"{0x00}{0x01}{0x19}\"","enc":"basic"},{"a":48103,"t":"text","b":[0,0,0],"d":"p$(81)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48106,"t":"text","b":[0,20,255],"d":"p$(82)=\"{0x00}{0x14}COPY \"","enc":"basic"},{"a":48109,"t":"text","b":[0,10,20],"d":"p$(83)=\"{0x00}{0x0A}{0x14}\"","enc":"basic"},{"a":48112,"t":"text","b":[0,1,1],"d":"p$(84)=\"{0x00}{0x01}{0x01}\"","enc":"basic"},{"a":48115,"t":"text","b":[0,5,40],"d":"p$(85)=\"{0x00}{0x05}(\"","enc":"basic"},{"a":48118,"t":"text","b":[0,0,0],"d":"p$(86)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48121,"t":"text","b":[0,1,10],"d":"p$(87)=\"{0x00}{0x01}{0x0A}\"","enc":"basic"},{"a":48124,"t":"text","b":[0,0,0],"d":"p$(88)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48127,"t":"text","b":[0,0,0],"d":"p$(89)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48130,"t":"text","b":[0,0,0],"d":"p$(90)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48133,"t":"text","b":[0,0,0],"d":"p$(91)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48136,"t":"text","b":[0,0,0],"d":"p$(92)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48139,"t":"text","b":[0,0,0],"d":"p$(93)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48142,"t":"text","b":[0,0,0],"d":"p$(94)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48145,"t":"text","b":[0,0,0],"d":"p$(95)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48148,"t":"text","b":[0,2,5],"d":"p$(96)=\"{0x00}{0x02}{0x05}\"","enc":"basic"},{"a":48151,"t":"text","b":[0,1,0],"d":"p$(97)=\"{0x00}{0x01}{0x00}\"","enc":"basic"},{"a":48154,"t":"text","b":[0,0,0],"d":"p$(98)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48157,"t":"text","b":[0,0,0],"d":"p$(99)=\"{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48160,"t":"text","b":[32,32,32],"d":"p$(100)=\"   \"","enc":"basic"},{"a":48163,"l":"characters_table","c":"c$(39,20): the 39 characters, you first: twelve slots of objects (1 the weapon, 2 the shield, 3 the helmet, 4-12 the rest), the location (13), the column on screen (14), crowns (15-16, high byte first), the qualities as nibbles (17-19: goodness and charisma, strength and bravery, brains and how readily it moves on) and the strength now (20). You start with 200 crowns, nothing else, and 175 strength.","t":"text","b":[195,17,3,2,39,0,20,0],"d":"DIM c$(39,20)","enc":"basic"},{"a":48171,"t":"text","b":[0,0,0,0,0,0,0,0,0,0,0,0,71,16,0,200,250,172,255,175],"d":"c$(1)=\"{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}G{0x10}{0x00}>= IF AT COPY CODE \"","enc":"basic"},{"a":48191,"t":"text","b":[63,65,83,96,96,70,70,80,87,87,71,0,71,10,0,200,31,203,255,207],"d":"c$(2)=\"?AS\u00a3\u00a3FFPWWG{0x00}G{0x0A}{0x00}>={0x1F}THEN COPY CAT \"","enc":"basic"},{"a":48211,"t":"text","b":[67,65,83,96,96,70,80,85,66,71,0,0,69,18,0,200,221,188,239,191],"d":"c$(3)=\"CAS\u00a3\u00a3FPUBG{0x00}{0x00}E{0x12}{0x00}>= INVERSE SGN LOAD IN \"","enc":"basic"},{"a":48231,"t":"text","b":[63,65,83,96,70,70,96,70,96,80,66,0,71,4,0,150,252,221,93,223],"d":"c$(4)=\"?AS\u00a3FF\u00a3F\u00a3PB{0x00}G{0x04}{0x00}{UDG-G} DRAW INVERSE ] OUT \"","enc":"basic"},{"a":48251,"t":"text","b":[67,0,83,96,96,70,70,85,71,0,0,0,70,8,0,100,255,188,153,191],"d":"c$(5)=\"C{0x00}S\u00a3\u00a3FFUG{0x00}{0x00}{0x00}F{0x08}{0x00}d COPY SGN {UDG-J}IN \"","enc":"basic"},{"a":48271,"t":"text","b":[67,65,0,96,96,96,70,70,85,80,87,87,62,19,0,200,238,140,222,143],"d":"c$(6)=\"CA{0x00}\u00a3\u00a3\u00a3FFUPWW>{0x13}{0x00}>= INPUT {0x8C} OVER {0x8F}\"","enc":"basic"},{"a":48291,"t":"text","b":[67,0,0,96,80,85,87,71,71,0,0,0,48,26,0,80,43,131,185,143],"d":"c$(7)=\"C{0x00}{0x00}\u00a3PUWGG{0x00}{0x00}{0x00}0{0x1A}{0x00}P+{0x83}EXP {0x8F}\"","enc":"basic"},{"a":48311,"t":"text","b":[67,65,83,70,66,71,77,0,0,0,0,0,52,4,0,100,238,154,152,159],"d":"c$(8)=\"CASFBGM{0x00}{0x00}{0x00}{0x00}{0x00}4{0x04}{0x00}d INPUT {UDG-K}{UDG-I}{UDG-P}\"","enc":"basic"},{"a":48331,"t":"text","b":[63,0,0,70,70,87,71,0,0,0,0,0,58,14,0,10,100,91,120,95],"d":"c$(9)=\"?{0x00}{0x00}FFWG{0x00}{0x00}{0x00}{0x00}{0x00}:{0x0E}{0x00}{0x0A}d[x_\"","enc":"basic"},{"a":48351,"t":"text","b":[63,65,0,96,70,80,87,87,87,87,71,71,21,3,0,200,25,202,235,207],"d":"c$(10)=\"?A{0x00}\u00a3FPWWWWGG{0x15}{0x03}{0x00}>={0x19}LINE FOR CAT \"","enc":"basic"},{"a":48371,"t":"text","b":[67,0,0,96,96,96,70,70,85,87,71,0,51,16,0,100,174,121,170,127],"d":"c$(11)=\"C{0x00}{0x00}\u00a3\u00a3\u00a3FFUWG{0x00}3{0x10}{0x00}dVAL$ ySCREEN$ \u00a9\"","enc":"basic"},{"a":48391,"t":"text","b":[0,0,0,96,87,71,71,0,0,0,0,0,31,7,0,50,36,152,73,159],"d":"c$(12)=\"{0x00}{0x00}{0x00}\u00a3WGG{0x00}{0x00}{0x00}{0x00}{0x00}{0x1F}{0x07}{0x00}2${UDG-I}I{UDG-P}\"","enc":"basic"},{"a":48411,"t":"text","b":[0,0,0,80,70,66,87,87,87,71,0,0,39,12,0,60,53,204,98,207],"d":"c$(13)=\"{0x00}{0x00}{0x00}PFBWWWG{0x00}{0x00}'{0x0C}{0x00}<5 TO b CAT \"","enc":"basic"},{"a":48431,"t":"text","b":[0,0,0,96,96,96,96,70,85,71,0,0,71,31,0,20,245,69,69,79],"d":"c$(14)=\"{0x00}{0x00}{0x00}\u00a3\u00a3\u00a3\u00a3FUG{0x00}{0x00}G{0x1F}{0x00}{0x14}PRINT EEO\"","enc":"basic"},{"a":48451,"t":"text","b":[67,0,83,96,70,70,0,0,0,0,0,0,60,0,0,70,186,133,135,143],"d":"c$(15)=\"C{0x00}S\u00a3FF{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}<{0x00}{0x00}FINT {0x85}{0x87}{0x8F}\"","enc":"basic"},{"a":48471,"t":"text","b":[67,65,0,96,96,70,71,0,0,0,0,0,49,8,0,90,198,104,131,111],"d":"c$(16)=\"CA{0x00}\u00a3\u00a3FG{0x00}{0x00}{0x00}{0x00}{0x00}1{0x08}{0x00}Z AND h{0x83}o\"","enc":"basic"},{"a":48491,"t":"text","b":[0,0,0,96,71,71,0,0,0,0,0,0,55,20,0,40,179,116,58,127],"d":"c$(17)=\"{0x00}{0x00}{0x00}\u00a3GG{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}7{0x14}{0x00}(COS t:\u00a9\"","enc":"basic"},{"a":48511,"t":"text","b":[63,0,0,96,87,87,0,0,0,0,0,0,38,22,0,150,50,200,88,207],"d":"c$(18)=\"?{0x00}{0x00}\u00a3WW{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}&{0x16}{0x00}{UDG-G}2>=X CAT \"","enc":"basic"},{"a":48531,"t":"text","b":[67,0,0,96,96,70,70,85,0,0,0,0,75,9,0,80,172,67,110,79],"d":"c$(19)=\"C{0x00}{0x00}\u00a3\u00a3FFU{0x00}{0x00}{0x00}{0x00}K{0x09}{0x00}PAT CnO\"","enc":"basic"},{"a":48551,"t":"text","b":[0,0,0,96,96,87,71,71,71,71,0,0,49,11,0,20,17,97,20,111],"d":"c$(20)=\"{0x00}{0x00}{0x00}\u00a3\u00a3WGGGG{0x00}{0x00}1{0x0B}{0x00}{0x14}{0x11}a{0x14}o\"","enc":"basic"},{"a":48571,"t":"text","b":[63,0,0,70,80,87,87,87,0,0,0,0,40,2,0,60,33,188,187,191],"d":"c$(21)=\"?{0x00}{0x00}FPWWW{0x00}{0x00}{0x00}{0x00}({0x02}{0x00}<!SGN SQR IN \"","enc":"basic"},{"a":48591,"t":"text","b":[63,0,0,96,96,70,71,0,0,0,0,0,64,4,0,10,122,19,60,31],"d":"c$(22)=\"?{0x00}{0x00}\u00a3\u00a3FG{0x00}{0x00}{0x00}{0x00}{0x00}@{0x04}{0x00}{0x0A}z{0x13}<{0x1F}\"","enc":"basic"},{"a":48611,"t":"text","b":[0,0,0,70,70,70,70,70,70,66,71,77,66,5,0,90,209,50,150,63],"d":"c$(23)=\"{0x00}{0x00}{0x00}FFFFFFBGMB{0x05}{0x00}Z MOVE 2{UDG-G}?\"","enc":"basic"},{"a":48631,"t":"text","b":[0,0,0,96,70,85,70,96,80,0,71,0,23,17,0,180,124,71,214,79],"d":"c$(24)=\"{0x00}{0x00}{0x00}\u00a3FUF\u00a3P{0x00}G{0x00}{0x17}{0x11}{0x00}TAN |G VERIFY O\"","enc":"basic"},{"a":48651,"t":"text","b":[0,65,83,70,80,66,71,0,0,0,0,0,50,20,0,120,232,50,227,63],"d":"c$(25)=\"{0x00}ASFPBG{0x00}{0x00}{0x00}{0x00}{0x00}2{0x14}{0x00}x CONTINUE 2 READ ?\"","enc":"basic"},{"a":48671,"t":"text","b":[63,65,83,96,0,0,0,0,0,0,0,0,21,30,0,70,183,205,21,207],"d":"c$(26)=\"?AS\u00a3{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x15}{0x1E}{0x00}FATN STEP {0x15}CAT \"","enc":"basic"},{"a":48691,"t":"text","b":[0,0,0,96,96,96,71,0,0,0,0,0,69,31,0,30,157,135,118,143],"d":"c$(27)=\"{0x00}{0x00}{0x00}\u00a3\u00a3\u00a3G{0x00}{0x00}{0x00}{0x00}{0x00}E{0x1F}{0x00}{0x1E}{UDG-N}{0x87}v{0x8F}\"","enc":"basic"},{"a":48711,"t":"text","b":[67,0,0,70,70,70,0,0,0,0,0,0,76,4,0,10,152,115,36,127],"d":"c$(28)=\"C{0x00}{0x00}FFF{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}L{0x04}{0x00}{0x0A}{UDG-I}s$\u00a9\"","enc":"basic"},{"a":48731,"t":"text","b":[63,0,0,70,71,71,0,0,0,0,0,0,39,16,0,10,133,132,68,143],"d":"c$(29)=\"?{0x00}{0x00}FGG{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}'{0x10}{0x00}{0x0A}{0x85}{0x84}D{0x8F}\"","enc":"basic"},{"a":48751,"t":"text","b":[67,0,0,87,87,0,0,0,0,0,0,0,47,13,0,40,91,205,147,207],"d":"c$(30)=\"C{0x00}{0x00}WW{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}/{0x0D}{0x00}([ STEP {UDG-D} CAT \"","enc":"basic"},{"a":48771,"t":"text","b":[63,0,0,96,70,80,87,87,87,0,0,0,65,1,0,150,34,206,237,207],"d":"c$(31)=\"?{0x00}{0x00}\u00a3FPWWW{0x00}{0x00}{0x00}A{0x01}{0x00}{UDG-G}\" DEF FN GO SUB CAT \"","enc":"basic"},{"a":48791,"t":"text","b":[0,0,0,96,96,70,70,87,0,0,0,0,68,11,0,20,213,188,71,191],"d":"c$(32)=\"{0x00}{0x00}{0x00}\u00a3\u00a3FFW{0x00}{0x00}{0x00}{0x00}D{0x0B}{0x00}{0x14}MERGE SGN GIN \"","enc":"basic"},{"a":48811,"t":"text","b":[67,0,0,70,87,71,0,0,0,0,0,0,71,8,0,100,70,119,136,127],"d":"c$(33)=\"C{0x00}{0x00}FWG{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}G{0x08}{0x00}dFw{0x88}\u00a9\"","enc":"basic"},{"a":48831,"t":"text","b":[0,0,0,96,96,96,85,71,0,0,0,0,47,12,0,60,169,136,92,143],"d":"c$(34)=\"{0x00}{0x00}{0x00}\u00a3\u00a3\u00a3UG{0x00}{0x00}{0x00}{0x00}/{0x0C}{0x00}<POINT {0x88}\\{0x8F}\"","enc":"basic"},{"a":48851,"t":"text","b":[0,0,0,96,96,96,87,87,0,0,0,0,71,27,0,20,221,167,54,175],"d":"c$(35)=\"{0x00}{0x00}{0x00}\u00a3\u00a3\u00a3WW{0x00}{0x00}{0x00}{0x00}G{0x1B}{0x00}{0x14}INVERSE PI6CODE \"","enc":"basic"},{"a":48871,"t":"text","b":[0,0,0,85,71,0,0,0,0,0,0,0,67,10,0,50,49,174,181,175],"d":"c$(36)=\"{0x00}{0x00}{0x00}UG{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}C{0x0A}{0x00}21VAL$ ASN CODE \"","enc":"basic"},{"a":48891,"t":"text","b":[0,0,0,96,80,71,0,0,0,0,0,0,29,19,0,90,20,154,172,159],"d":"c$(37)=\"{0x00}{0x00}{0x00}\u00a3PG{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x1D}{0x13}{0x00}Z{0x14}{UDG-K}AT {UDG-P}\"","enc":"basic"},{"a":48911,"t":"text","b":[0,0,0,0,0,0,0,0,0,0,0,0,69,10,0,0,109,118,161,127],"d":"c$(38)=\"{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}E{0x0A}{0x00}{0x00}mv{UDG-R}\u00a9\"","enc":"basic"},{"a":48931,"t":"text","b":[0,0,0,0,0,0,0,0,0,0,0,0,70,12,0,0,186,50,194,63],"d":"c$(39)=\"{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}F{0x0C}{0x00}{0x00}INT 2CHR$ ?\"","enc":"basic"},{"a":48951,"l":"map_table","c":"m$(81,18): the 81 locations, 1 in the south-west corner. Each row: the terrain (1 icy waste, 2 marsh, 3 plain, 4 lakes, 5 forest, 6 mountains, 7 cave, 8 hall; 128 + n for special place n), the exits as bits, the location a ringway leads to, the crowns lying here (two bytes), six pairs of object and column, and a scene feature for the picture.","t":"text","b":[205,183,5,2,81,0,18,0],"d":"DIM m$(81,18)","enc":"basic"},{"a":48959,"t":"text","b":[149,0,59,0,0,68,12,83,255,80,255,96,14,70,30,0,0,0],"d":"m$(1)=\"{UDG-F}{0x00};{0x00}{0x00}D{0x0C}S COPY P COPY \u00a3{0x0E}F{0x1E}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48977,"t":"text","b":[7,34,1,0,0,70,1,67,10,0,0,0,0,0,0,0,0,0],"d":"m$(2)=\"{0x07}\"{0x01}{0x00}{0x00}F{0x01}C{0x0A}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":48995,"t":"text","b":[148,2,0,0,0,68,30,65,255,0,0,0,0,0,0,0,0,0],"d":"m$(3)=\"{UDG-E}{0x02}{0x00}{0x00}{0x00}D{0x1E}A COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49013,"t":"text","b":[132,2,59,0,0,73,8,72,255,96,255,70,29,0,0,0,0,0],"d":"m$(4)=\"{0x84}{0x02};{0x00}{0x00}I{0x08}H COPY \u00a3 COPY F{0x1D}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49031,"t":"text","b":[1,32,24,0,0,96,5,63,29,0,0,0,0,0,0,0,0,72],"d":"m$(5)=\"{0x01} {0x18}{0x00}{0x00}\u00a3{0x05}?{0x1D}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}H\"","enc":"basic"},{"a":49049,"t":"text","b":[130,128,71,0,0,73,12,64,255,70,27,0,0,0,0,0,0,0],"d":"m$(6)=\"{0x82}{0x80}G{0x00}{0x00}I{0x0C}@ COPY F{0x1B}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49067,"t":"text","b":[1,224,0,0,0,83,24,0,0,0,0,0,0,0,0,0,0,69],"d":"m$(7)=\"{0x01}LPRINT {0x00}{0x00}{0x00}S{0x18}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}E\"","enc":"basic"},{"a":49085,"t":"text","b":[144,3,21,0,0,68,2,96,255,96,255,96,255,0,0,0,0,66],"d":"m$(8)=\"{UDG-A}{0x03}{0x15}{0x00}{0x00}D{0x02}\u00a3 COPY \u00a3 COPY \u00a3 COPY {0x00}{0x00}{0x00}{0x00}B\"","enc":"basic"},{"a":49103,"t":"text","b":[3,130,18,0,0,65,1,0,0,0,0,0,0,0,0,0,0,71],"d":"m$(9)=\"{0x03}{0x82}{0x12}{0x00}{0x00}A{0x01}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}G\"","enc":"basic"},{"a":49121,"t":"text","b":[7,96,66,0,0,67,18,0,0,0,0,0,0,0,0,0,0,0],"d":"m$(10)=\"{0x07}\u00a3B{0x00}{0x00}C{0x12}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49139,"t":"text","b":[161,2,22,0,0,68,7,83,12,0,0,0,0],"d":"m$(11)=\"{UDG-R}{0x02}{0x16}{0x00}{0x00}D{0x07}S{0x0C}{0x00}{0x00}{0x00}{0x00}","enc":"basic"},{"a":49152,"l":"map_hell","c":"m$ on through Hell, locations 1 to 45 (the label is where the variables cross $C000, in location 11's row).","t":"text","b":[0,0,0,0,0],"d":"{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49157,"t":"text","b":[7,130,19,0,0,63,11,67,5,83,16,65,28,0,0,0,0,0],"d":"m$(12)=\"{0x07}{0x82}{0x13}{0x00}{0x00}?{0x0B}C{0x05}S{0x10}A{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49175,"t":"text","b":[6,32,0,0,0,70,21,65,9,0,0,0,0,0,0,0,0,64],"d":"m$(13)=\"{0x06} {0x00}{0x00}{0x00}F{0x15}A{0x09}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}@\"","enc":"basic"},{"a":49193,"t":"text","b":[141,0,71,0,0,68,30,96,255,70,255,0,0,0,0,0,0,72],"d":"m$(14)=\"{0x8D}{0x00}G{0x00}{0x00}D{0x1E}\u00a3 COPY F COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}H\"","enc":"basic"},{"a":49211,"t":"text","b":[146,2,0,0,0,85,28,0,0,0,0,0,0,0,0,0,0,77],"d":"m$(15)=\"{UDG-C}{0x02}{0x00}{0x00}{0x00}U{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}M\"","enc":"basic"},{"a":49229,"t":"text","b":[1,120,66,0,0,63,1,85,13,67,7,83,2,65,0,0,0,66],"d":"m$(16)=\"{0x01}xB{0x00}{0x00}?{0x01}U{0x0D}C{0x07}S{0x02}A{0x00}{0x00}{0x00}B\"","enc":"basic"},{"a":49247,"t":"text","b":[145,128,66,0,0,68,17,80,31,0,0,0,0,0,0,0,0,77],"d":"m$(17)=\"{UDG-B}{0x80}B{0x00}{0x00}D{0x11}P{0x1F}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}M\"","enc":"basic"},{"a":49265,"t":"text","b":[6,140,0,0,0,70,25,0,0,0,0,0,0,0,0,0,0,67],"d":"m$(18)=\"{0x06}{0x8C}{0x00}{0x00}{0x00}F{0x19}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}C\"","enc":"basic"},{"a":49283,"t":"text","b":[162,0,12,0,0,68,13,63,20,0,0,0,0,0,0,0,0,119],"d":"m$(19)=\"{UDG-S}{0x00}{0x0C}{0x00}{0x00}D{0x0D}?{0x14}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}w\"","enc":"basic"},{"a":49301,"t":"text","b":[1,164,46,0,0,96,19,70,23,65,24,0,0,0,0,0,0,65],"d":"m$(20)=\"{0x01}{UDG-U}.{0x00}{0x00}\u00a3{0x13}F{0x17}A{0x18}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}A\"","enc":"basic"},{"a":49319,"t":"text","b":[160,65,0,0,0,68,17,85,30,0,0,0,0,0,0,0,0,19],"d":"m$(21)=\"{UDG-Q}A{0x00}{0x00}{0x00}D{0x11}U{0x1E}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x13}\"","enc":"basic"},{"a":49337,"t":"text","b":[2,34,0,0,0,80,19,83,8,67,16,0,0,0,0,0,0,76],"d":"m$(22)=\"{0x02}\"{0x00}{0x00}{0x00}P{0x13}S{0x08}C{0x10}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}L\"","enc":"basic"},{"a":49355,"t":"text","b":[2,130,50,0,0,96,10,85,31,0,0,0,0,0,0,0,0,50],"d":"m$(23)=\"{0x02}{0x82}2{0x00}{0x00}\u00a3{0x0A}U{0x1F}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}2\"","enc":"basic"},{"a":49373,"t":"text","b":[142,0,71,0,0,68,24,63,22,67,28,0,0,0,0,0,0,0],"d":"m$(24)=\"{0x8E}{0x00}G{0x00}{0x00}D{0x18}?{0x16}C{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49391,"t":"text","b":[143,0,71,0,0,73,21,85,3,0,0,0,0,0,0,0,0,0],"d":"m$(25)=\"{0x8F}{0x00}G{0x00}{0x00}I{0x15}U{0x03}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49409,"t":"text","b":[7,10,0,0,0,96,29,96,5,67,16,0,0,0,0,0,0,0],"d":"m$(26)=\"{0x07}{0x0A}{0x00}{0x00}{0x00}\u00a3{0x1D}\u00a3{0x05}C{0x10}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49427,"t":"text","b":[140,10,0,0,0,68,14,63,12,65,21,0,0,0,0,0,0,66],"d":"m$(27)=\"{0x8C}{0x0A}{0x00}{0x00}{0x00}D{0x0E}?{0x0C}A{0x15}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}B\"","enc":"basic"},{"a":49445,"t":"text","b":[151,8,10,0,0,73,10,70,255,70,255,70,255,0,0,0,0,119],"d":"m$(28)=\"{UDG-H}{0x08}{0x0A}{0x00}{0x00}I{0x0A}F COPY F COPY F COPY {0x00}{0x00}{0x00}{0x00}w\"","enc":"basic"},{"a":49463,"t":"text","b":[1,208,46,0,0,80,14,63,18,0,0,0,0,0,0,0,0,51],"d":"m$(29)=\"{0x01}FORMAT .{0x00}{0x00}P{0x0E}?{0x12}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}3\"","enc":"basic"},{"a":49481,"t":"text","b":[159,136,48,0,0,96,2,70,29,73,24,85,255,0,0,0,0,119],"d":"m$(30)=\"{UDG-P}{0x88}0{0x00}{0x00}\u00a3{0x02}F{0x1D}I{0x18}U COPY {0x00}{0x00}{0x00}{0x00}w\"","enc":"basic"},{"a":49499,"t":"text","b":[1,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52],"d":"m$(31)=\"{0x01}{0x85}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}4\"","enc":"basic"},{"a":49517,"t":"text","b":[150,8,0,0,0,73,21,67,25,63,1,65,28,0,0,0,0,119],"d":"m$(32)=\"{UDG-G}{0x08}{0x00}{0x00}{0x00}I{0x15}C{0x19}?{0x01}A{0x1C}{0x00}{0x00}{0x00}{0x00}w\"","enc":"basic"},{"a":49535,"t":"text","b":[2,96,71,0,0,70,7,80,21,0,0,0,0,0,0,0,0,67],"d":"m$(33)=\"{0x02}\u00a3G{0x00}{0x00}F{0x07}P{0x15}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}C\"","enc":"basic"},{"a":49553,"t":"text","b":[2,162,71,0,0,80,26,63,19,0,0,0,0,0,0,0,0,71],"d":"m$(34)=\"{0x02}{UDG-S}G{0x00}{0x00}P{0x1A}?{0x13}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}G\"","enc":"basic"},{"a":49571,"t":"text","b":[164,3,71,0,0,65,24,83,15,0,0,0,0,0,0,0,0,76],"d":"m$(35)=\"{UDG-U}{0x03}G{0x00}{0x00}A{0x18}S{0x0F}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}L\"","enc":"basic"},{"a":49589,"t":"text","b":[6,136,0,0,0,67,16,0,0,0,0,0,0,0,0,0,0,77],"d":"m$(36)=\"{0x06}{0x88}{0x00}{0x00}{0x00}C{0x10}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}M\"","enc":"basic"},{"a":49607,"t":"text","b":[133,32,0,0,0,68,7,78,255,85,10,0,0,0,0,0,0,126],"d":"m$(37)=\"{0x85} {0x00}{0x00}{0x00}D{0x07}N COPY U{0x0A}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}~\"","enc":"basic"},{"a":49625,"t":"text","b":[8,8,0,0,0,85,31,0,0,0,0,0,0,0,0,0,0,0],"d":"m$(38)=\"{0x08}{0x08}{0x00}{0x00}{0x00}U{0x1F}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49643,"t":"text","b":[1,149,0,0,0,67,28,63,6,0,0,0,0,0,0,0,0,74],"d":"m$(39)=\"{0x01}{UDG-F}{0x00}{0x00}{0x00}C{0x1C}?{0x06}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}J\"","enc":"basic"},{"a":49661,"t":"text","b":[163,8,6,0,0,73,5,67,255,83,255,0,0,0,0,0,0,119],"d":"m$(40)=\"{UDG-T}{0x08}{0x06}{0x00}{0x00}I{0x05}C COPY S COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}w\"","enc":"basic"},{"a":49679,"t":"text","b":[147,8,70,0,0,70,0,68,21,96,255,67,15,0,0,0,0,126],"d":"m$(41)=\"{UDG-D}{0x08}F{0x00}{0x00}F{0x00}D{0x15}\u00a3 COPY C{0x0F}{0x00}{0x00}{0x00}{0x00}~\"","enc":"basic"},{"a":49697,"t":"text","b":[7,130,43,0,0,80,6,80,15,63,7,0,0,0,0,0,0,0],"d":"m$(42)=\"{0x07}{0x82}+{0x00}{0x00}P{0x06}P{0x0F}?{0x07}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49715,"t":"text","b":[1,221,66,0,0,96,3,63,21,83,29,65,24,0,0,0,0,70],"d":"m$(43)=\"{0x01}INVERSE B{0x00}{0x00}\u00a3{0x03}?{0x15}S{0x1D}A{0x18}{0x00}{0x00}{0x00}{0x00}F\"","enc":"basic"},{"a":49733,"t":"text","b":[131,143,71,0,0,68,9,85,17,69,255,96,255,70,3,0,0,77],"d":"m$(44)=\"{0x83}{0x8F}G{0x00}{0x00}D{0x09}U{0x11}E COPY \u00a3 COPY F{0x03}{0x00}{0x00}M\"","enc":"basic"},{"a":49751,"t":"text","b":[5,137,0,0,0,67,7,63,13,0,0,0,0,0,0,0,0,77],"d":"m$(45)=\"{0x05}{0x89}{0x00}{0x00}{0x00}C{0x07}?{0x0D}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}M\"","enc":"basic"},{"a":49769,"l":"map_midgard","c":"m$ rows 46 to 81: Midgard, and Asgard on its east side; you start in row 71, Valheim, and row 80 is Valhalla.","t":"text","b":[7,0,31,0,0,70,28,70,29,85,1,0,0,0,0,0,0,0],"d":"m$(46)=\"{0x07}{0x00}{0x1F}{0x00}{0x00}F{0x1C}F{0x1D}U{0x01}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49787,"t":"text","b":[2,177,0,0,0,85,15,63,18,0,0,0,0,0,0,0,0,75],"d":"m$(47)=\"{0x02}LEN {0x00}{0x00}{0x00}U{0x0F}?{0x12}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}K\"","enc":"basic"},{"a":49805,"t":"text","b":[152,11,0,0,0,68,14,67,255,0,0,0,0,0,0,0,0,65],"d":"m$(48)=\"{UDG-I}{0x0B}{0x00}{0x00}{0x00}D{0x0E}C COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}A\"","enc":"basic"},{"a":49823,"t":"text","b":[2,160,47,0,0,96,28,70,17,67,12,0,0,0,0,0,0,68],"d":"m$(49)=\"{0x02}{UDG-Q}/{0x00}{0x00}\u00a3{0x1C}F{0x11}C{0x0C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}D\"","enc":"basic"},{"a":49841,"t":"text","b":[158,35,21,0,0,65,13,0,0,0,0,0,0,0,0,0,0,10],"d":"m$(50)=\"{UDG-O}#{0x15}{0x00}{0x00}A{0x0D}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x0A}\"","enc":"basic"},{"a":49859,"t":"text","b":[157,98,68,0,0,70,255,68,17,85,255,0,0,0,0,0,0,50],"d":"m$(51)=\"{UDG-N}bD{0x00}{0x00}F COPY D{0x11}U COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}2\"","enc":"basic"},{"a":49877,"t":"text","b":[4,162,0,0,0,80,27,67,12,0,0,0,0,0,0,0,0,0],"d":"m$(52)=\"{0x04}{UDG-S}{0x00}{0x00}{0x00}P{0x1B}C{0x0C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49895,"t":"text","b":[6,131,56,0,0,96,19,70,9,80,28,0,0,0,0,0,0,18],"d":"m$(53)=\"{0x06}{0x83}8{0x00}{0x00}\u00a3{0x13}F{0x09}P{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x12}\"","enc":"basic"},{"a":49913,"t":"text","b":[2,138,0,0,0,80,14,0,0,0,0,0,0,0,0,0,0,67],"d":"m$(54)=\"{0x02}{0x8A}{0x00}{0x00}{0x00}P{0x0E}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}C\"","enc":"basic"},{"a":49931,"t":"text","b":[5,176,58,0,0,80,14,83,0,0,0,0,0,0,0,0,0,65],"d":"m$(55)=\"{0x05}VAL :{0x00}{0x00}P{0x0E}S{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}A\"","enc":"basic"},{"a":49949,"t":"text","b":[154,27,39,0,0,70,16,70,2,0,0,0,0,0,0,0,0,52],"d":"m$(56)=\"{UDG-K}{0x1B}'{0x00}{0x00}F{0x10}F{0x02}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}4\"","enc":"basic"},{"a":49967,"t":"text","b":[8,0,21,0,0,80,1,63,8,67,24,83,21,0,0,0,0,0],"d":"m$(57)=\"{0x08}{0x00}{0x15}{0x00}{0x00}P{0x01}?{0x08}C{0x18}S{0x15}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":49985,"t":"text","b":[3,216,29,0,0,65,10,0,0,0,0,0,0,0,0,0,0,70],"d":"m$(58)=\"{0x03}CIRCLE {0x1D}{0x00}{0x00}A{0x0A}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}F\"","enc":"basic"},{"a":50003,"t":"text","b":[8,8,1,0,0,80,16,65,24,0,0,0,0,0,0,0,0,0],"d":"m$(59)=\"{0x08}{0x08}{0x01}{0x00}{0x00}P{0x10}A{0x18}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50021,"t":"text","b":[8,136,66,0,0,63,12,63,30,63,29,0,0,0,0,0,0,120],"d":"m$(60)=\"{0x08}{0x88}B{0x00}{0x00}?{0x0C}?{0x1E}?{0x1D}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}x\"","enc":"basic"},{"a":50039,"t":"text","b":[5,221,0,0,0,96,17,70,3,0,0,0,0,0,0,0,0,0],"d":"m$(61)=\"{0x05}INVERSE {0x00}{0x00}{0x00}\u00a3{0x11}F{0x03}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50057,"t":"text","b":[8,136,0,0,0,80,5,67,7,0,0,0,0,0,0,0,0,118],"d":"m$(62)=\"{0x08}{0x88}{0x00}{0x00}{0x00}P{0x05}C{0x07}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}v\"","enc":"basic"},{"a":50075,"t":"text","b":[139,13,9,0,0,68,18,96,255,70,255,0,0,0,0,0,0,20],"d":"m$(63)=\"{0x8B}{0x0D}{0x09}{0x00}{0x00}D{0x12}\u00a3 COPY F COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x14}\"","enc":"basic"},{"a":50093,"t":"text","b":[4,88,67,0,0,80,28,0,0,0,0,0,0,0,0,0,0,0],"d":"m$(64)=\"{0x04}XC{0x00}{0x00}P{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50111,"t":"text","b":[153,8,39,0,0,73,4,96,255,70,255,85,22,0,0,0,0,0],"d":"m$(65)=\"{UDG-J}{0x08}'{0x00}{0x00}I{0x04}\u00a3 COPY F COPY U{0x16}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50129,"t":"text","b":[138,0,0,0,0,68,5,70,255,70,255,70,255,70,255,0,0,118],"d":"m$(66)=\"{0x8A}{0x00}{0x00}{0x00}{0x00}D{0x05}F COPY F COPY F COPY F COPY {0x00}{0x00}v\"","enc":"basic"},{"a":50147,"t":"text","b":[5,169,0,0,0,80,3,63,23,0,0,0,0,0,0,0,0,67],"d":"m$(67)=\"{0x05}POINT {0x00}{0x00}{0x00}P{0x03}?{0x17}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}C\"","enc":"basic"},{"a":50165,"t":"text","b":[2,135,48,0,0,96,27,65,23,0,0,0,0,0,0,0,0,37],"d":"m$(68)=\"{0x02}{0x87}0{0x00}{0x00}\u00a3{0x1B}A{0x17}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}%\"","enc":"basic"},{"a":50183,"t":"text","b":[155,48,51,0,0,96,31,70,21,68,9,70,255,85,255,0,0,48],"d":"m$(69)=\"{UDG-L}03{0x00}{0x00}\u00a3{0x1F}F{0x15}D{0x09}F COPY U COPY {0x00}{0x00}0\"","enc":"basic"},{"a":50201,"t":"text","b":[6,170,53,0,0,67,1,70,11,0,0,0,0,0,0,0,0,19],"d":"m$(70)=\"{0x06}SCREEN$ 5{0x00}{0x00}C{0x01}F{0x0B}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x13}\"","enc":"basic"},{"a":50219,"t":"text","b":[156,6,14,0,0,96,30,70,24,0,0,0,0,0,0,0,0,16],"d":"m$(71)=\"{UDG-M}{0x06}{0x0E}{0x00}{0x00}\u00a3{0x1E}F{0x18}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x10}\"","enc":"basic"},{"a":50237,"t":"text","b":[136,10,27,0,0,73,22,96,255,96,255,0,0,0,0,0,0,114],"d":"m$(72)=\"{0x88}{0x0A}{0x1B}{0x00}{0x00}I{0x16}\u00a3 COPY \u00a3 COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}r\"","enc":"basic"},{"a":50255,"t":"text","b":[134,16,71,0,0,68,3,79,255,0,0,0,0,0,0,0,0,0],"d":"m$(73)=\"{0x86}{0x10}G{0x00}{0x00}D{0x03}O COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50273,"t":"text","b":[2,36,48,0,0,96,21,0,0,0,0,0,0,0,0,0,0,0],"d":"m$(74)=\"{0x02}$0{0x00}{0x00}\u00a3{0x15}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50291,"t":"text","b":[6,50,46,0,0,85,11,65,29,0,0,0,0,0,0,0,0,65],"d":"m$(75)=\"{0x06}2.{0x00}{0x00}U{0x0B}A{0x1D}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}A\"","enc":"basic"},{"a":50309,"t":"text","b":[4,26,66,0,0,67,8,80,28,0,0,0,0,0,0,0,0,77],"d":"m$(76)=\"{0x04}{0x1A}B{0x00}{0x00}C{0x08}P{0x1C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}M\"","enc":"basic"},{"a":50327,"t":"text","b":[8,8,21,0,0,96,1,70,7,80,3,83,11,0,0,0,0,0],"d":"m$(77)=\"{0x08}{0x08}{0x15}{0x00}{0x00}\u00a3{0x01}F{0x07}P{0x03}S{0x0B}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50345,"t":"text","b":[8,8,50,0,0,96,9,63,12,0,0,0,0,0,0,0,0,0],"d":"m$(78)=\"{0x08}{0x08}2{0x00}{0x00}\u00a3{0x09}?{0x0C}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50363,"t":"text","b":[137,8,0,0,0,70,5,68,18,96,255,0,0,0,0,0,0,0],"d":"m$(79)=\"{0x89}{0x08}{0x00}{0x00}{0x00}F{0x05}D{0x12}\u00a3 COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50381,"t":"text","b":[135,62,0,0,0,68,7,96,255,96,255,70,255,0,0,0,0,114],"d":"m$(80)=\"{0x87}>{0x00}{0x00}{0x00}D{0x07}\u00a3 COPY \u00a3 COPY F COPY {0x00}{0x00}{0x00}{0x00}r\"","enc":"basic"},{"a":50399,"t":"text","b":[129,0,21,0,0,68,23,82,255,70,255,0,0,0,0,0,0,0],"d":"m$(81)=\"{0x81}{0x00}{0x15}{0x00}{0x00}D{0x17}R COPY F COPY {0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50417,"l":"facings","c":"d(39): which way each character faces, 1 for right.","t":"text","b":[132,198,0,1,39,0],"d":"DIM d(39)","enc":"basic"},{"a":50423,"t":"text","b":[0,0,1,0,0],"d":"d(1)=1","enc":"basic"},{"a":50428,"t":"text","b":[0,0,1,0,0],"d":"d(2)=1","enc":"basic"},{"a":50433,"t":"text","b":[0,0,1,0,0],"d":"d(3)=1","enc":"basic"},{"a":50438,"t":"text","b":[0,0,0,0,0],"d":"d(4)=0","enc":"basic"},{"a":50443,"t":"text","b":[0,0,1,0,0],"d":"d(5)=1","enc":"basic"},{"a":50448,"t":"text","b":[0,0,1,0,0],"d":"d(6)=1","enc":"basic"},{"a":50453,"t":"text","b":[0,0,1,0,0],"d":"d(7)=1","enc":"basic"},{"a":50458,"t":"text","b":[0,0,1,0,0],"d":"d(8)=1","enc":"basic"},{"a":50463,"t":"text","b":[0,0,0,0,0],"d":"d(9)=0","enc":"basic"},{"a":50468,"t":"text","b":[0,0,1,0,0],"d":"d(10)=1","enc":"basic"},{"a":50473,"t":"text","b":[0,0,0,0,0],"d":"d(11)=0","enc":"basic"},{"a":50478,"t":"text","b":[0,0,0,0,0],"d":"d(12)=0","enc":"basic"},{"a":50483,"t":"text","b":[0,0,0,0,0],"d":"d(13)=0","enc":"basic"},{"a":50488,"t":"text","b":[0,0,0,0,0],"d":"d(14)=0","enc":"basic"},{"a":50493,"t":"text","b":[0,0,0,0,0],"d":"d(15)=0","enc":"basic"},{"a":50498,"t":"text","b":[0,0,0,0,0],"d":"d(16)=0","enc":"basic"},{"a":50503,"t":"text","b":[0,0,0,0,0],"d":"d(17)=0","enc":"basic"},{"a":50508,"t":"text","b":[0,0,0,0,0],"d":"d(18)=0","enc":"basic"},{"a":50513,"t":"text","b":[0,0,0,0,0],"d":"d(19)=0","enc":"basic"},{"a":50518,"t":"text","b":[0,0,1,0,0],"d":"d(20)=1","enc":"basic"},{"a":50523,"t":"text","b":[0,0,0,0,0],"d":"d(21)=0","enc":"basic"},{"a":50528,"t":"text","b":[0,0,1,0,0],"d":"d(22)=1","enc":"basic"},{"a":50533,"t":"text","b":[0,0,1,0,0],"d":"d(23)=1","enc":"basic"},{"a":50538,"t":"text","b":[0,0,1,0,0],"d":"d(24)=1","enc":"basic"},{"a":50543,"t":"text","b":[0,0,0,0,0],"d":"d(25)=0","enc":"basic"},{"a":50548,"t":"text","b":[0,0,0,0,0],"d":"d(26)=0","enc":"basic"},{"a":50553,"t":"text","b":[0,0,0,0,0],"d":"d(27)=0","enc":"basic"},{"a":50558,"t":"text","b":[0,0,0,0,0],"d":"d(28)=0","enc":"basic"},{"a":50563,"t":"text","b":[0,0,1,0,0],"d":"d(29)=1","enc":"basic"},{"a":50568,"t":"text","b":[0,0,1,0,0],"d":"d(30)=1","enc":"basic"},{"a":50573,"t":"text","b":[0,0,0,0,0],"d":"d(31)=0","enc":"basic"},{"a":50578,"t":"text","b":[0,0,1,0,0],"d":"d(32)=1","enc":"basic"},{"a":50583,"t":"text","b":[0,0,0,0,0],"d":"d(33)=0","enc":"basic"},{"a":50588,"t":"text","b":[0,0,1,0,0],"d":"d(34)=1","enc":"basic"},{"a":50593,"t":"text","b":[0,0,0,0,0],"d":"d(35)=0","enc":"basic"},{"a":50598,"t":"text","b":[0,0,0,0,0],"d":"d(36)=0","enc":"basic"},{"a":50603,"t":"text","b":[0,0,0,0,0],"d":"d(37)=0","enc":"basic"},{"a":50608,"t":"text","b":[0,0,0,0,0],"d":"d(38)=0","enc":"basic"},{"a":50613,"t":"text","b":[0,0,1,0,0],"d":"d(39)=1","enc":"basic"},{"a":50618,"l":"screen_columns","c":"g$(2,32,2): the screen's 32 columns: row 1 the character standing at each and its facing, row 2 the object. who, what, step_left and the walks read it.","t":"text","b":[199,135,0,3,2,0,32,0,2,0],"d":"DIM g$(2,32,2)","enc":"basic"},{"a":50628,"t":"text","b":[32,32],"d":"g$(1,1)=\"  \"","enc":"basic"},{"a":50630,"t":"text","b":[32,32],"d":"g$(1,2)=\"  \"","enc":"basic"},{"a":50632,"t":"text","b":[32,32],"d":"g$(1,3)=\"  \"","enc":"basic"},{"a":50634,"t":"text","b":[32,32],"d":"g$(1,4)=\"  \"","enc":"basic"},{"a":50636,"t":"text","b":[32,32],"d":"g$(1,5)=\"  \"","enc":"basic"},{"a":50638,"t":"text","b":[32,32],"d":"g$(1,6)=\"  \"","enc":"basic"},{"a":50640,"t":"text","b":[32,32],"d":"g$(1,7)=\"  \"","enc":"basic"},{"a":50642,"t":"text","b":[32,32],"d":"g$(1,8)=\"  \"","enc":"basic"},{"a":50644,"t":"text","b":[32,32],"d":"g$(1,9)=\"  \"","enc":"basic"},{"a":50646,"t":"text","b":[32,32],"d":"g$(1,10)=\"  \"","enc":"basic"},{"a":50648,"t":"text","b":[32,32],"d":"g$(1,11)=\"  \"","enc":"basic"},{"a":50650,"t":"text","b":[32,32],"d":"g$(1,12)=\"  \"","enc":"basic"},{"a":50652,"t":"text","b":[32,32],"d":"g$(1,13)=\"  \"","enc":"basic"},{"a":50654,"t":"text","b":[32,32],"d":"g$(1,14)=\"  \"","enc":"basic"},{"a":50656,"t":"text","b":[32,32],"d":"g$(1,15)=\"  \"","enc":"basic"},{"a":50658,"t":"text","b":[32,32],"d":"g$(1,16)=\"  \"","enc":"basic"},{"a":50660,"t":"text","b":[32,32],"d":"g$(1,17)=\"  \"","enc":"basic"},{"a":50662,"t":"text","b":[32,32],"d":"g$(1,18)=\"  \"","enc":"basic"},{"a":50664,"t":"text","b":[32,32],"d":"g$(1,19)=\"  \"","enc":"basic"},{"a":50666,"t":"text","b":[32,32],"d":"g$(1,20)=\"  \"","enc":"basic"},{"a":50668,"t":"text","b":[32,32],"d":"g$(1,21)=\"  \"","enc":"basic"},{"a":50670,"t":"text","b":[32,32],"d":"g$(1,22)=\"  \"","enc":"basic"},{"a":50672,"t":"text","b":[32,32],"d":"g$(1,23)=\"  \"","enc":"basic"},{"a":50674,"t":"text","b":[32,32],"d":"g$(1,24)=\"  \"","enc":"basic"},{"a":50676,"t":"text","b":[32,32],"d":"g$(1,25)=\"  \"","enc":"basic"},{"a":50678,"t":"text","b":[32,32],"d":"g$(1,26)=\"  \"","enc":"basic"},{"a":50680,"t":"text","b":[32,32],"d":"g$(1,27)=\"  \"","enc":"basic"},{"a":50682,"t":"text","b":[32,32],"d":"g$(1,28)=\"  \"","enc":"basic"},{"a":50684,"t":"text","b":[32,32],"d":"g$(1,29)=\"  \"","enc":"basic"},{"a":50686,"t":"text","b":[32,32],"d":"g$(1,30)=\"  \"","enc":"basic"},{"a":50688,"t":"text","b":[32,32],"d":"g$(1,31)=\"  \"","enc":"basic"},{"a":50690,"t":"text","b":[32,32],"d":"g$(1,32)=\"  \"","enc":"basic"},{"a":50692,"t":"text","b":[32,32],"d":"g$(2,1)=\"  \"","enc":"basic"},{"a":50694,"t":"text","b":[32,32],"d":"g$(2,2)=\"  \"","enc":"basic"},{"a":50696,"t":"text","b":[32,32],"d":"g$(2,3)=\"  \"","enc":"basic"},{"a":50698,"t":"text","b":[32,32],"d":"g$(2,4)=\"  \"","enc":"basic"},{"a":50700,"t":"text","b":[32,32],"d":"g$(2,5)=\"  \"","enc":"basic"},{"a":50702,"t":"text","b":[32,32],"d":"g$(2,6)=\"  \"","enc":"basic"},{"a":50704,"t":"text","b":[32,32],"d":"g$(2,7)=\"  \"","enc":"basic"},{"a":50706,"t":"text","b":[32,32],"d":"g$(2,8)=\"  \"","enc":"basic"},{"a":50708,"t":"text","b":[32,32],"d":"g$(2,9)=\"  \"","enc":"basic"},{"a":50710,"t":"text","b":[32,32],"d":"g$(2,10)=\"  \"","enc":"basic"},{"a":50712,"t":"text","b":[32,32],"d":"g$(2,11)=\"  \"","enc":"basic"},{"a":50714,"t":"text","b":[32,32],"d":"g$(2,12)=\"  \"","enc":"basic"},{"a":50716,"t":"text","b":[32,32],"d":"g$(2,13)=\"  \"","enc":"basic"},{"a":50718,"t":"text","b":[32,32],"d":"g$(2,14)=\"  \"","enc":"basic"},{"a":50720,"t":"text","b":[32,32],"d":"g$(2,15)=\"  \"","enc":"basic"},{"a":50722,"t":"text","b":[32,32],"d":"g$(2,16)=\"  \"","enc":"basic"},{"a":50724,"t":"text","b":[32,32],"d":"g$(2,17)=\"  \"","enc":"basic"},{"a":50726,"t":"text","b":[32,32],"d":"g$(2,18)=\"  \"","enc":"basic"},{"a":50728,"t":"text","b":[32,32],"d":"g$(2,19)=\"  \"","enc":"basic"},{"a":50730,"t":"text","b":[32,32],"d":"g$(2,20)=\"  \"","enc":"basic"},{"a":50732,"t":"text","b":[32,32],"d":"g$(2,21)=\"  \"","enc":"basic"},{"a":50734,"t":"text","b":[32,32],"d":"g$(2,22)=\"  \"","enc":"basic"},{"a":50736,"t":"text","b":[32,32],"d":"g$(2,23)=\"  \"","enc":"basic"},{"a":50738,"t":"text","b":[32,32],"d":"g$(2,24)=\"  \"","enc":"basic"},{"a":50740,"t":"text","b":[32,32],"d":"g$(2,25)=\"  \"","enc":"basic"},{"a":50742,"t":"text","b":[32,32],"d":"g$(2,26)=\"  \"","enc":"basic"},{"a":50744,"t":"text","b":[32,32],"d":"g$(2,27)=\"  \"","enc":"basic"},{"a":50746,"t":"text","b":[32,32],"d":"g$(2,28)=\"  \"","enc":"basic"},{"a":50748,"t":"text","b":[32,32],"d":"g$(2,29)=\"  \"","enc":"basic"},{"a":50750,"t":"text","b":[32,32],"d":"g$(2,30)=\"  \"","enc":"basic"},{"a":50752,"t":"text","b":[32,32],"d":"g$(2,31)=\"  \"","enc":"basic"},{"a":50754,"t":"text","b":[32,32],"d":"g$(2,32)=\"  \"","enc":"basic"},{"a":50756,"l":"special_places","c":"s$(36,9): the 36 special places. Each row: the real terrain, the name's word, the object or character needed (o1) and the one forbidden (o2) for the exits in the next byte's bits, and up to four scene features.","t":"text","b":[211,73,1,2,36,0,9,0],"d":"DIM s$(36,9)","enc":"basic"},{"a":50764,"t":"text","b":[8,178,82,0,12,155,0,0,0],"d":"s$(1)=\"{0x08}SIN R{0x00}{0x0C}{UDG-L}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50773,"t":"text","b":[7,179,80,64,2,102,0,0,0],"d":"s$(2)=\"{0x07}COS P@{0x02}f{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50782,"t":"text","b":[6,180,0,0,0,148,0,0,0],"d":"s$(3)=\"{0x06}TAN {0x00}{0x00}{0x00}{UDG-E}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50791,"t":"text","b":[8,181,0,0,0,100,0,0,0],"d":"s$(4)=\"{0x08}ASN {0x00}{0x00}{0x00}d{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50800,"t":"text","b":[8,182,0,0,0,147,0,0,0],"d":"s$(5)=\"{0x08}ACS {0x00}{0x00}{0x00}{UDG-D}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50809,"t":"text","b":[8,183,0,0,0,145,0,0,0],"d":"s$(6)=\"{0x08}ATN {0x00}{0x00}{0x00}{UDG-B}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50818,"t":"text","b":[8,184,0,0,0,126,147,0,0],"d":"s$(7)=\"{0x08}LN {0x00}{0x00}{0x00}~{UDG-D}{0x00}{0x00}\"","enc":"basic"},{"a":50827,"t":"text","b":[8,185,72,2,128,120,107,0,0],"d":"s$(8)=\"{0x08}EXP H{0x02}{0x80}xk{0x00}{0x00}\"","enc":"basic"},{"a":50836,"t":"text","b":[8,186,82,0,32,153,0,0,0],"d":"s$(9)=\"{0x08}INT R{0x00} {UDG-J}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50845,"t":"text","b":[8,187,0,83,241,146,0,0,0],"d":"s$(10)=\"{0x08}SQR {0x00}S LET {UDG-C}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50854,"t":"text","b":[4,188,0,72,128,153,0,0,0],"d":"s$(11)=\"{0x04}SGN {0x00}H{0x80}{UDG-J}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50863,"t":"text","b":[4,189,69,70,128,151,0,0,0],"d":"s$(12)=\"{0x04}ABS EF{0x80}{UDG-H}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50872,"t":"text","b":[6,190,69,0,34,159,0,0,0],"d":"s$(13)=\"{0x06}PEEK E{0x00}\"{UDG-P}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50881,"t":"text","b":[7,191,72,0,32,160,0,0,0],"d":"s$(14)=\"{0x07}IN H{0x00} {UDG-Q}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50890,"t":"text","b":[7,192,64,0,48,106,0,0,0],"d":"s$(15)=\"{0x07}USR @{0x00}0j{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50899,"t":"text","b":[2,193,0,96,32,74,145,0,0],"d":"s$(16)=\"{0x02}STR$ {0x00}\u00a3 J{UDG-B}{0x00}{0x00}\"","enc":"basic"},{"a":50908,"t":"text","b":[3,194,69,0,6,152,0,0,0],"d":"s$(17)=\"{0x03}CHR$ E{0x00}{0x06}{UDG-I}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50917,"t":"text","b":[6,195,72,85,8,67,0,0,0],"d":"s$(18)=\"{0x06}NOT HU{0x08}C{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50926,"t":"text","b":[8,196,70,85,32,154,0,0,0],"d":"s$(19)=\"{0x08}BIN FU {UDG-K}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50935,"t":"text","b":[8,197,65,83,32,159,0,0,0],"d":"s$(20)=\"{0x08}OR AS {UDG-P}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50944,"t":"text","b":[7,198,78,79,32,150,0,0,0],"d":"s$(21)=\"{0x07}AND NO {UDG-G}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50953,"t":"text","b":[8,199,72,78,128,106,0,0,0],"d":"s$(22)=\"{0x08}<=HN{0x80}j{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50962,"t":"text","b":[8,200,96,79,128,101,0,0,0],"d":"s$(23)=\"{0x08}>=\u00a3O{0x80}e{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50971,"t":"text","b":[2,201,79,0,128,39,151,0,0],"d":"s$(24)=\"{0x02}<>O{0x00}{0x80}'{UDG-H}{0x00}{0x00}\"","enc":"basic"},{"a":50980,"t":"text","b":[8,202,0,31,193,98,0,0,0],"d":"s$(25)=\"{0x08}LINE {0x00}{0x1F}STR$ b{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50989,"t":"text","b":[3,203,5,0,128,0,0,0,0],"d":"s$(26)=\"{0x03}THEN{0x05}{0x00}{0x80}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":50998,"t":"text","b":[5,204,3,0,128,77,148,0,0],"d":"s$(27)=\"{0x05}TO {0x03}{0x00}{0x80}M{UDG-E}{0x00}{0x00}\"","enc":"basic"},{"a":51007,"t":"text","b":[4,205,82,0,128,41,0,0,0],"d":"s$(28)=\"{0x04}STEP R{0x00}{0x80}){0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51016,"t":"text","b":[4,206,0,63,128,152,0,0,0],"d":"s$(29)=\"{0x04}DEF FN {0x00}?{0x80}{UDG-I}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51025,"t":"text","b":[6,207,79,0,128,0,0,0,0],"d":"s$(30)=\"{0x06}CAT O{0x00}{0x80}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51034,"t":"text","b":[8,208,0,0,0,108,0,0,0],"d":"s$(31)=\"{0x08}FORMAT {0x00}{0x00}{0x00}l{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51043,"t":"text","b":[1,209,79,0,166,152,0,0,0],"d":"s$(32)=\"{0x01}MOVE O{0x00}INKEY${UDG-I}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51052,"t":"text","b":[7,210,0,79,32,147,0,0,0],"d":"s$(33)=\"{0x07}ERASE {0x00}O {UDG-D}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51061,"t":"text","b":[8,211,10,0,168,126,150,0,0],"d":"s$(34)=\"{0x08}OPEN #{0x0A}{0x00}FN ~{UDG-G}{0x00}{0x00}\"","enc":"basic"},{"a":51070,"t":"text","b":[8,212,72,0,128,98,0,0,0],"d":"s$(35)=\"{0x08}CLOSE #H{0x00}{0x80}b{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51079,"t":"text","b":[2,213,67,80,128,0,0,0,0],"d":"s$(36)=\"{0x02}MERGE CP{0x80}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51088,"l":"work_vars","c":"The working variables, in the order they were first made, which is not the order this program sets them (line 110 and v0 set im and so before c): n, g, x, y, a, d and w, the command's parts as read from parse_result (s, v, b, c, so, im, ex, ca and sc), then p, q, e (the error) and t (the object).","t":"text","b":[110,0,0,1,0,0],"d":"n=1","enc":"basic"},{"a":51094,"t":"text","b":[103,0,0,1,0,0],"d":"g=1","enc":"basic"},{"a":51100,"t":"text","b":[120,0,0,1,0,0],"d":"x=1","enc":"basic"},{"a":51106,"t":"text","b":[121,0,0,0,0,0],"d":"y=0","enc":"basic"},{"a":51112,"t":"text","b":[97,0,0,0,0,0],"d":"a=0","enc":"basic"},{"a":51118,"t":"text","b":[100,0,0,0,0,0],"d":"d=0","enc":"basic"},{"a":51124,"t":"text","b":[119,0,0,0,0,0],"d":"w=0","enc":"basic"},{"a":51130,"t":"text","b":[115,0,0,0,0,0],"d":"s=0","enc":"basic"},{"a":51136,"t":"text","b":[118,0,0,0,0,0],"d":"v=0","enc":"basic"},{"a":51142,"t":"text","b":[98,0,0,0,0,0],"d":"b=0","enc":"basic"},{"a":51148,"t":"text","b":[99,0,0,0,0,0],"d":"c=0","enc":"basic"},{"a":51154,"t":"text","b":[179,239,0,0,0,0,0],"d":"so=0","enc":"basic"},{"a":51161,"t":"text","b":[169,237,0,0,0,0,0],"d":"im=0","enc":"basic"},{"a":51168,"t":"text","b":[165,248,0,0,0,0,0],"d":"ex=0","enc":"basic"},{"a":51175,"t":"text","b":[163,225,0,0,0,0,0],"d":"ca=0","enc":"basic"},{"a":51182,"t":"text","b":[179,227,0,0,0,0,0],"d":"sc=0","enc":"basic"},{"a":51189,"t":"text","b":[112,0,0,0,0,0],"d":"p=0","enc":"basic"},{"a":51195,"t":"text","b":[113,0,0,0,0,0],"d":"q=0","enc":"basic"},{"a":51201,"t":"text","b":[101,0,0,0,0,0],"d":"e=0","enc":"basic"},{"a":51207,"t":"text","b":[116,0,0,0,0,0],"d":"t=0","enc":"basic"},{"a":51213,"l":"consts_k_l","c":"k3 to k9 and l0 to l9 and z0: the numbers 3 to 20.","t":"text","b":[171,179,0,0,3,0,0],"d":"k3=3","enc":"basic"},{"a":51220,"t":"text","b":[171,180,0,0,4,0,0],"d":"k4=4","enc":"basic"},{"a":51227,"t":"text","b":[171,181,0,0,5,0,0],"d":"k5=5","enc":"basic"},{"a":51234,"t":"text","b":[171,182,0,0,6,0,0],"d":"k6=6","enc":"basic"},{"a":51241,"t":"text","b":[171,183,0,0,7,0,0],"d":"k7=7","enc":"basic"},{"a":51248,"t":"text","b":[171,184,0,0,8,0,0],"d":"k8=8","enc":"basic"},{"a":51255,"t":"text","b":[171,185,0,0,9,0,0],"d":"k9=9","enc":"basic"},{"a":51262,"t":"text","b":[172,176,0,0,10,0,0],"d":"l0=10","enc":"basic"},{"a":51269,"t":"text","b":[172,177,0,0,11,0,0],"d":"l1=11","enc":"basic"},{"a":51276,"t":"text","b":[172,178,0,0,12,0,0],"d":"l2=12","enc":"basic"},{"a":51283,"t":"text","b":[172,179,0,0,13,0,0],"d":"l3=13","enc":"basic"},{"a":51290,"t":"text","b":[172,180,0,0,14,0,0],"d":"l4=14","enc":"basic"},{"a":51297,"t":"text","b":[172,181,0,0,15,0,0],"d":"l5=15","enc":"basic"},{"a":51304,"t":"text","b":[172,182,0,0,16,0,0],"d":"l6=16","enc":"basic"},{"a":51311,"t":"text","b":[172,183,0,0,17,0,0],"d":"l7=17","enc":"basic"},{"a":51318,"t":"text","b":[172,184,0,0,18,0,0],"d":"l8=18","enc":"basic"},{"a":51325,"t":"text","b":[172,185,0,0,19,0,0],"d":"l9=19","enc":"basic"},{"a":51332,"t":"text","b":[186,176,0,0,20,0,0],"d":"z0=20","enc":"basic"},{"a":51339,"l":"consts_named","c":"gi = 63407, the graphics entry; gx = 15, its line; co = 1; ww = 32, the width; bs = 12, the slots; lc = 39, the last character; ln = 100, the last object; mb = 9, the map's side.","t":"text","b":[167,233,0,0,175,247,0],"d":"gi=63407","enc":"basic"},{"a":51346,"t":"text","b":[167,248,0,0,15,0,0],"d":"gx=15","enc":"basic"},{"a":51353,"t":"text","b":[163,239,0,0,1,0,0],"d":"co=1","enc":"basic"},{"a":51360,"t":"text","b":[183,247,0,0,32,0,0],"d":"ww=32","enc":"basic"},{"a":51367,"t":"text","b":[162,243,0,0,12,0,0],"d":"bs=12","enc":"basic"},{"a":51374,"t":"text","b":[172,227,0,0,39,0,0],"d":"lc=39","enc":"basic"},{"a":51381,"t":"text","b":[172,238,0,0,100,0,0],"d":"ln=100","enc":"basic"},{"a":51388,"t":"text","b":[173,226,0,0,9,0,0],"d":"mb=9","enc":"basic"},{"a":51395,"l":"game_state","c":"ep = 1 (report errors), pf = 0 (no printer), neg = 0 (no trade under way), la = 0 (nobody asked yet), he = 0 (no help given here), and fo = 230, the food tally that decides when food and wine grow back.","t":"text","b":[165,240,0,0,1,0,0],"d":"ep=1","enc":"basic"},{"a":51402,"t":"text","b":[176,230,0,0,0,0,0],"d":"pf=0","enc":"basic"},{"a":51409,"t":"text","b":[174,101,231,0,0,0,0,0],"d":"neg=0","enc":"basic"},{"a":51417,"t":"text","b":[172,225,0,0,0,0,0],"d":"la=0","enc":"basic"},{"a":51424,"t":"text","b":[168,229,0,0,0,0,0],"d":"he=0","enc":"basic"},{"a":51431,"t":"text","b":[166,239,0,0,230,0,0],"d":"fo=230","enc":"basic"},{"a":51438,"l":"routine_names_1","c":"The first routine names: gp 7050, gm 7100, mo 3600, np 5000, pr 5010, lf 5030, dov 5450, rf 200, with iv = 0 and de 3980.","t":"text","b":[167,240,0,0,138,27,0],"d":"gp=7050","enc":"basic"},{"a":51445,"t":"text","b":[167,237,0,0,188,27,0],"d":"gm=7100","enc":"basic"},{"a":51452,"t":"text","b":[173,239,0,0,16,14,0],"d":"mo=3600","enc":"basic"},{"a":51459,"t":"text","b":[174,240,0,0,136,19,0],"d":"np=5000","enc":"basic"},{"a":51466,"t":"text","b":[176,242,0,0,146,19,0],"d":"pr=5010","enc":"basic"},{"a":51473,"t":"text","b":[172,230,0,0,166,19,0],"d":"lf=5030","enc":"basic"},{"a":51480,"t":"text","b":[164,111,246,0,0,74,21,0],"d":"dov=5450","enc":"basic"},{"a":51488,"t":"text","b":[178,230,0,0,200,0,0],"d":"rf=200","enc":"basic"},{"a":51495,"t":"text","b":[169,246,0,0,0,0,0],"d":"iv=0","enc":"basic"},{"a":51502,"t":"text","b":[164,229,0,0,140,15,0],"d":"de=3980","enc":"basic"},{"a":51509,"l":"exits_open","c":"c(8): the location's ordinary exits, north to northwest, filled by mprop. Zeros on the tape.","t":"text","b":[131,43,0,1,8,0],"d":"DIM c(8)","enc":"basic"},{"a":51515,"t":"text","b":[0,0,0,0,0],"d":"c(1)=0","enc":"basic"},{"a":51520,"t":"text","b":[0,0,0,0,0],"d":"c(2)=0","enc":"basic"},{"a":51525,"t":"text","b":[0,0,0,0,0],"d":"c(3)=0","enc":"basic"},{"a":51530,"t":"text","b":[0,0,0,0,0],"d":"c(4)=0","enc":"basic"},{"a":51535,"t":"text","b":[0,0,0,0,0],"d":"c(5)=0","enc":"basic"},{"a":51540,"t":"text","b":[0,0,0,0,0],"d":"c(6)=0","enc":"basic"},{"a":51545,"t":"text","b":[0,0,0,0,0],"d":"c(7)=0","enc":"basic"},{"a":51550,"t":"text","b":[0,0,0,0,0],"d":"c(8)=0","enc":"basic"},{"a":51555,"l":"exits_special","c":"k(8): a special place's other exits, those that need o1 and forbid o2.","t":"text","b":[139,43,0,1,8,0],"d":"DIM k(8)","enc":"basic"},{"a":51561,"t":"text","b":[0,0,0,0,0],"d":"k(1)=0","enc":"basic"},{"a":51566,"t":"text","b":[0,0,0,0,0],"d":"k(2)=0","enc":"basic"},{"a":51571,"t":"text","b":[0,0,0,0,0],"d":"k(3)=0","enc":"basic"},{"a":51576,"t":"text","b":[0,0,0,0,0],"d":"k(4)=0","enc":"basic"},{"a":51581,"t":"text","b":[0,0,0,0,0],"d":"k(5)=0","enc":"basic"},{"a":51586,"t":"text","b":[0,0,0,0,0],"d":"k(6)=0","enc":"basic"},{"a":51591,"t":"text","b":[0,0,0,0,0],"d":"k(7)=0","enc":"basic"},{"a":51596,"t":"text","b":[0,0,0,0,0],"d":"k(8)=0","enc":"basic"},{"a":51601,"l":"leftover_for","c":"i = 13, the end of a FOR loop to 12 that ran as a direct command (its line, 65534, is the edit line), left by whoever prepared the tape. The main loop's FOR i at line 8100 makes i again as soon as the game starts; lines 5140 (Valhalla) and 6260 (load) use it too.","t":"text","b":[233,0,0,13,0,0,0,0,12,0,0,0,0,1,0,0,254,255,2],"d":"i=13 (FOR i: limit 12, step 1, loops to line 65534 statement 2)","enc":"basic"},{"a":51620,"l":"compass","c":"nn = 88 to nw = 95: the long compass words' numbers, north round to northwest; then ll = 1, the one giving orders.","t":"text","b":[174,238,0,0,88,0,0],"d":"nn=88","enc":"basic"},{"a":51627,"t":"text","b":[174,229,0,0,89,0,0],"d":"ne=89","enc":"basic"},{"a":51634,"t":"text","b":[165,225,0,0,90,0,0],"d":"ea=90","enc":"basic"},{"a":51641,"t":"text","b":[179,229,0,0,91,0,0],"d":"se=91","enc":"basic"},{"a":51648,"t":"text","b":[179,243,0,0,92,0,0],"d":"ss=92","enc":"basic"},{"a":51655,"t":"text","b":[179,247,0,0,93,0,0],"d":"sw=93","enc":"basic"},{"a":51662,"t":"text","b":[183,229,0,0,94,0,0],"d":"we=94","enc":"basic"},{"a":51669,"t":"text","b":[174,247,0,0,95,0,0],"d":"nw=95","enc":"basic"},{"a":51676,"t":"text","b":[172,236,0,0,1,0,0],"d":"ll=1","enc":"basic"},{"a":51683,"l":"here_and_exits","c":"a$, the characters here as last counted (empty), o1 and o2 for a special place, and con = 255, the column that marks the inside of a container.","t":"text","b":[65,0,0],"d":"a$=\"\"","enc":"basic"},{"a":51686,"t":"text","b":[175,177,0,0,0,0,0],"d":"o1=0","enc":"basic"},{"a":51693,"t":"text","b":[175,178,0,0,0,0,0],"d":"o2=0","enc":"basic"},{"a":51700,"t":"text","b":[163,111,238,0,0,255,0,0],"d":"con=255","enc":"basic"},{"a":51708,"l":"mc_addresses","c":"The machine code's addresses: rad 53350 (parse_result), syntad 53363 (parse_command), ioad 54413 (input_init), priad 55019 (print_text_window), fad 53939 (enter_flag), and two no line uses, tokad 54113 (word_list) and brkad 54749 (escape_to_basic).","t":"text","b":[178,97,228,0,0,102,208,0],"d":"rad=53350","enc":"basic"},{"a":51716,"t":"text","b":[179,121,110,116,97,228,0,0,115,208,0],"d":"syntad=53363","enc":"basic"},{"a":51727,"t":"text","b":[169,111,97,228,0,0,141,212,0],"d":"ioad=54413","enc":"basic"},{"a":51736,"t":"text","b":[176,114,105,97,228,0,0,235,214,0],"d":"priad=55019","enc":"basic"},{"a":51746,"t":"text","b":[166,97,228,0,0,179,210,0],"d":"fad=53939","enc":"basic"},{"a":51754,"t":"text","b":[180,111,107,97,228,0,0,97,211,0],"d":"tokad=54113","enc":"basic"},{"a":51764,"t":"text","b":[162,114,107,97,228,0,0,221,213,0],"d":"brkad=54749","enc":"basic"},{"a":51774,"l":"routine_names_2","c":"mt = 97 (money), me = 99, then more routine names: mx 8000, synt 100, ver 2900, and the carrying and money routines from bput 3100 to moma 3500.","t":"text","b":[173,244,0,0,97,0,0],"d":"mt=97","enc":"basic"},{"a":51781,"t":"text","b":[173,229,0,0,99,0,0],"d":"me=99","enc":"basic"},{"a":51788,"t":"text","b":[173,248,0,0,64,31,0],"d":"mx=8000","enc":"basic"},{"a":51795,"t":"text","b":[179,121,110,244,0,0,100,0,0],"d":"synt=100","enc":"basic"},{"a":51804,"t":"text","b":[182,101,242,0,0,84,11,0],"d":"ver=2900","enc":"basic"},{"a":51812,"t":"text","b":[162,112,117,244,0,0,28,12,0],"d":"bput=3100","enc":"basic"},{"a":51821,"t":"text","b":[162,103,101,244,0,0,78,12,0],"d":"bget=3150","enc":"basic"},{"a":51830,"t":"text","b":[173,112,117,244,0,0,128,12,0],"d":"mput=3200","enc":"basic"},{"a":51839,"t":"text","b":[173,103,101,244,0,0,178,12,0],"d":"mget=3250","enc":"basic"},{"a":51848,"t":"text","b":[173,102,233,0,0,213,12,0],"d":"mfi=3285","enc":"basic"},{"a":51856,"t":"text","b":[162,108,105,115,244,0,0,228,12,0],"d":"blist=3300","enc":"basic"},{"a":51866,"t":"text","b":[163,115,225,0,0,22,13,0],"d":"csa=3350","enc":"basic"},{"a":51874,"t":"text","b":[163,115,243,0,0,47,13,0],"d":"css=3375","enc":"basic"},{"a":51882,"t":"text","b":[173,111,98,225,0,0,72,13,0],"d":"moba=3400","enc":"basic"},{"a":51891,"t":"text","b":[173,111,98,243,0,0,122,13,0],"d":"mobs=3450","enc":"basic"},{"a":51900,"t":"text","b":[173,111,109,225,0,0,172,13,0],"d":"moma=3500","enc":"basic"},{"a":51909,"l":"blank_pair","c":"o$(12): twelve zero bytes; LET g$(k,j)=o$ copies two of them, to clear a column.","t":"text","b":[207,15,0,1,12,0],"d":"DIM o$(12)","enc":"basic"},{"a":51915,"t":"text","b":[0,0,0,0,0,0,0,0,0,0,0,0],"d":"o$=\"{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}{0x00}\"","enc":"basic"},{"a":51927,"l":"routine_names_3","c":"The rest of the routine names: moms, the graphics from gter 7010 to gturn 7820, the location routines mprop to md2, and rep, rp2, v0, gap, nloc, efi, die, dep and arr; then lq = 255, your strength when it was last checked.","t":"text","b":[173,111,109,243,0,0,222,13,0],"d":"moms=3550","enc":"basic"},{"a":51936,"t":"text","b":[167,116,101,242,0,0,98,27,0],"d":"gter=7010","enc":"basic"},{"a":51945,"t":"text","b":[167,108,105,229,0,0,208,27,0],"d":"glie=7120","enc":"basic"},{"a":51954,"t":"text","b":[167,101,97,244,0,0,238,27,0],"d":"geat=7150","enc":"basic"},{"a":51963,"t":"text","b":[167,101,97,116,240,0,0,2,28,0],"d":"geatp=7170","enc":"basic"},{"a":51973,"t":"text","b":[167,100,114,105,110,235,0,0,32,28,0],"d":"gdrink=7200","enc":"basic"},{"a":51984,"t":"text","b":[167,100,114,105,110,107,240,0,0,52,28,0],"d":"gdrinkp=7220","enc":"basic"},{"a":51996,"t":"text","b":[167,103,101,116,239,0,0,82,28,0],"d":"ggeto=7250","enc":"basic"},{"a":52006,"t":"text","b":[167,103,101,244,0,0,102,28,0],"d":"gget=7270","enc":"basic"},{"a":52015,"t":"text","b":[167,100,114,111,112,239,0,0,132,28,0],"d":"gdropo=7300","enc":"basic"},{"a":52026,"t":"text","b":[167,100,114,111,240,0,0,152,28,0],"d":"gdrop=7320","enc":"basic"},{"a":52036,"t":"text","b":[167,97,114,109,228,0,0,202,28,0],"d":"garmd=7370","enc":"basic"},{"a":52046,"t":"text","b":[167,97,114,109,239,0,0,252,28,0],"d":"garmo=7420","enc":"basic"},{"a":52056,"t":"text","b":[167,101,109,226,0,0,126,29,0],"d":"gemb=7550","enc":"basic"},{"a":52065,"t":"text","b":[167,102,105,114,229,0,0,70,30,0],"d":"gfire=7750","enc":"basic"},{"a":52075,"t":"text","b":[167,116,117,114,238,0,0,140,30,0],"d":"gturn=7820","enc":"basic"},{"a":52085,"t":"text","b":[173,112,114,111,240,0,0,166,14,0],"d":"mprop=3750","enc":"basic"},{"a":52095,"t":"text","b":[173,110,101,248,0,0,216,14,0],"d":"mnex=3800","enc":"basic"},{"a":52104,"t":"text","b":[163,97,110,103,239,0,0,10,15,0],"d":"cango=3850","enc":"basic"},{"a":52114,"t":"text","b":[173,100,101,115,227,0,0,60,15,0],"d":"mdesc=3900","enc":"basic"},{"a":52124,"t":"text","b":[173,100,178,0,0,65,15,0],"d":"md2=3905","enc":"basic"},{"a":52132,"t":"text","b":[178,101,240,0,0,186,19,0],"d":"rep=5050","enc":"basic"},{"a":52140,"t":"text","b":[178,112,178,0,0,181,19,0],"d":"rp2=5045","enc":"basic"},{"a":52148,"t":"text","b":[182,176,0,0,24,21,0],"d":"v0=5400","enc":"basic"},{"a":52155,"t":"text","b":[167,97,240,0,0,18,22,0],"d":"gap=5650","enc":"basic"},{"a":52163,"t":"text","b":[174,108,111,227,0,0,236,19,0],"d":"nloc=5100","enc":"basic"},{"a":52172,"t":"text","b":[165,102,233,0,0,80,20,0],"d":"efi=5200","enc":"basic"},{"a":52180,"t":"text","b":[164,105,229,0,0,224,21,0],"d":"die=5600","enc":"basic"},{"a":52188,"t":"text","b":[164,101,240,0,0,68,22,0],"d":"dep=5700","enc":"basic"},{"a":52196,"t":"text","b":[161,114,242,0,0,118,22,0],"d":"arr=5750","enc":"basic"},{"a":52204,"t":"text","b":[172,241,0,0,255,0,0],"d":"lq=255","enc":"basic"},{"a":52211,"l":"vars_end","c":"$80, the end of the variables, written by LOAD after the 28,456 bytes of the tape's file.","t":"text","b":[128],"d":"(end of the variables)","enc":"basic"},{"a":52212,"t":"gap","n":1138},{"a":53350,"l":"parse_result","c":"The parser's answer, which BASIC reads with PEEK from rad (53350, this address): +0 the subject s (a character told to act: \"Thor get axe\"), +1 the verb v, +2 the object b, +3 im (after \"with\", unless the verb before it is buy or sell), +4 so (after \"from\"), +5 c (after \"to\", or a second noun), +6 ex (after \"for\", or after \"with\" following buy or sell), +7 a slot for word class 4, which no word in the dictionary has, +8 and +9 ca, a number typed (an amount of crowns), low byte first, +10 sc, a game command (\"save\", \"who\", \"l\"), +11 the code of the word before the current one, +12 $FF once the last word has been read. Each slot holds a word's code, its index in the dictionary d$. parse_command clears all 13 bytes first.","t":"byte","b":[0,0,0,0,0,0,0,0],"x":[53466,53477,53699,53708]},{"a":53358,"t":"byte","b":[0,0,137,0,0],"x":[53409,53602,53690]},{"a":53363,"l":"parse_command","c":"Parser, USR syntad (53363) from line 100. Clears parse_result, then reads the word list the ENTER key built at word_list, five bytes a word, and files each word by its class (the 11th byte of its dictionary entry): a name or an object (class 1) before the verb becomes the subject, after it the object and then c; a verb (class 2) the verb; a preposition (class 3) sends the next word to im (\"with\", code 153, but ex when the verb already read is buy or sell, 116 or 117), so (\"from\", 155), c (\"to\", 154) or ex (any other: \"for\", 160); a game command (class 7) goes to sc and ends the parse; a swear word (class 6) ends it with error 4, which line 120 answers with Mary (line 115 answers every other error with \"what?\"). A number becomes the noun 97 (\"crown\") with the amount in ca, and the word \"crowns\" after it is passed over; \"crown\" with no number before it is error 3. A second verb or one noun too many is error 1, a second subject 5, a preposition at the end 2, a preposition followed by anything but a noun 6 (a number counts as a noun there only where the word goes to ex). Returns BC = 0 or the error, which BASIC takes as e.","t":"code","b":[33,102,208],"m":"ld","o":"hl,$D066"},{"a":53366,"t":"code","b":[6,13],"m":"ld","o":"b,$0D"},{"a":53368,"t":"code","b":[175],"m":"xor","o":"a"},{"a":53369,"t":"code","b":[119],"m":"ld","o":"(hl),a","x":[53371]},{"a":53370,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53371,"t":"code","b":[16,252],"m":"djnz","oa":53369,"o":"$D079"},{"a":53373,"t":"code","b":[33,97,211],"m":"ld","o":"hl,$D361"},{"a":53376,"t":"code","b":[205,148,209],"m":"call","oa":53652,"o":"parse_next_word","x":[53397,53452,53480,53493,53510,53527,53591,53639]},{"a":53379,"t":"code","b":[58,114,208],"m":"ld","oa":53362,"o":"a,($D072)"},{"a":53382,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53384,"t":"code","b":[194,195,209],"m":"jp","oa":53699,"o":"nz,parse_end"},{"a":53387,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53388,"t":"code","b":[254,97],"m":"cp","o":"$61"},{"a":53390,"t":"code","b":[32,12],"m":"jr","oa":53404,"o":"nz,$D09C"},{"a":53392,"t":"code","b":[58,113,208],"m":"ld","oa":53361,"o":"a,($D071)"},{"a":53395,"t":"code","b":[254,97],"m":"cp","o":"$61"},{"a":53397,"t":"code","b":[40,233],"m":"jr","oa":53376,"o":"z,$D080"},{"a":53399,"t":"code","b":[30,3],"m":"ld","o":"e,$03"},{"a":53401,"t":"code","b":[195,144,209],"m":"jp","oa":53648,"o":"parse_error"},{"a":53404,"t":"code","b":[121],"m":"ld","o":"a,c","x":[53390]},{"a":53405,"t":"code","b":[254,255],"m":"cp","o":"$FF"},{"a":53407,"t":"code","b":[32,18],"m":"jr","oa":53427,"o":"nz,$D0B3"},{"a":53409,"t":"code","b":[58,110,208],"m":"ld","oa":53358,"o":"a,($D06E)"},{"a":53412,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":53413,"t":"code","b":[58,111,208],"m":"ld","oa":53359,"o":"a,($D06F)"},{"a":53416,"t":"code","b":[162],"m":"and","o":"d"},{"a":53417,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53419,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":53421,"t":"code","b":[194,144,209],"m":"jp","oa":53648,"o":"nz,parse_error"},{"a":53424,"t":"code","b":[205,180,209],"m":"call","oa":53684,"o":"parse_number"},{"a":53427,"t":"code","b":[121],"m":"ld","o":"a,c","x":[53407]},{"a":53428,"t":"code","b":[254,1],"m":"cp","o":"$01"},{"a":53430,"t":"code","b":[40,27],"m":"jr","oa":53459,"o":"z,$D0D3"},{"a":53432,"t":"code","b":[254,2],"m":"cp","o":"$02"},{"a":53434,"t":"code","b":[40,77],"m":"jr","oa":53513,"o":"z,$D109"},{"a":53436,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":53438,"t":"code","b":[40,90],"m":"jr","oa":53530,"o":"z,$D11A"},{"a":53440,"t":"code","b":[254,4],"m":"cp","o":"$04"},{"a":53442,"t":"code","b":[202,122,209],"m":"jp","oa":53626,"o":"z,$D17A"},{"a":53445,"t":"code","b":[254,7],"m":"cp","o":"$07"},{"a":53447,"t":"code","b":[202,138,209],"m":"jp","oa":53642,"o":"z,$D18A"},{"a":53450,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":53452,"t":"code","b":[32,178],"m":"jr","oa":53376,"o":"nz,$D080"},{"a":53454,"t":"code","b":[30,4],"m":"ld","o":"e,$04"},{"a":53456,"t":"code","b":[195,144,209],"m":"jp","oa":53648,"o":"parse_error"},{"a":53459,"t":"code","b":[58,103,208],"m":"ld","oa":53351,"o":"a,($D067)","x":[53430]},{"a":53462,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53464,"t":"code","b":[32,16],"m":"jr","oa":53482,"o":"nz,$D0EA"},{"a":53466,"t":"code","b":[58,102,208],"m":"ld","oa":53350,"o":"a,(parse_result)"},{"a":53469,"t":"code","b":[30,5],"m":"ld","o":"e,$05"},{"a":53471,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53473,"t":"code","b":[194,144,209],"m":"jp","oa":53648,"o":"nz,parse_error"},{"a":53476,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53477,"t":"code","b":[50,102,208],"m":"ld","oa":53350,"o":"(parse_result),a"},{"a":53480,"t":"code","b":[24,150],"m":"jr","oa":53376,"o":"$D080"},{"a":53482,"t":"code","b":[58,104,208],"m":"ld","oa":53352,"o":"a,($D068)","x":[53464]},{"a":53485,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53487,"t":"code","b":[32,7],"m":"jr","oa":53496,"o":"nz,$D0F8"},{"a":53489,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53490,"t":"code","b":[50,104,208],"m":"ld","oa":53352,"o":"($D068),a"},{"a":53493,"t":"code","b":[195,128,208],"m":"jp","oa":53376,"o":"$D080"},{"a":53496,"t":"code","b":[58,107,208],"m":"ld","oa":53355,"o":"a,($D06B)","x":[53487]},{"a":53499,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53501,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":53503,"t":"code","b":[194,144,209],"m":"jp","oa":53648,"o":"nz,parse_error"},{"a":53506,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53507,"t":"code","b":[50,107,208],"m":"ld","oa":53355,"o":"($D06B),a"},{"a":53510,"t":"code","b":[195,128,208],"m":"jp","oa":53376,"o":"$D080"},{"a":53513,"t":"code","b":[58,103,208],"m":"ld","oa":53351,"o":"a,($D067)","x":[53434]},{"a":53516,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53518,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":53520,"t":"code","b":[194,144,209],"m":"jp","oa":53648,"o":"nz,parse_error"},{"a":53523,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53524,"t":"code","b":[50,103,208],"m":"ld","oa":53351,"o":"($D067),a"},{"a":53527,"t":"code","b":[195,128,208],"m":"jp","oa":53376,"o":"$D080"},{"a":53530,"t":"code","b":[205,148,209],"m":"call","oa":53652,"o":"parse_next_word","x":[53438]},{"a":53533,"t":"code","b":[58,114,208],"m":"ld","oa":53362,"o":"a,($D072)"},{"a":53536,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53538,"t":"code","b":[30,2],"m":"ld","o":"e,$02"},{"a":53540,"t":"code","b":[32,106],"m":"jr","oa":53648,"o":"nz,parse_error"},{"a":53542,"t":"code","b":[229],"m":"push","o":"hl"},{"a":53543,"t":"code","b":[58,113,208],"m":"ld","oa":53361,"o":"a,($D071)"},{"a":53546,"t":"code","b":[33,105,208],"m":"ld","o":"hl,$D069"},{"a":53549,"t":"code","b":[254,153],"m":"cp","o":"$99"},{"a":53551,"t":"code","b":[40,14],"m":"jr","oa":53567,"o":"z,$D13F"},{"a":53553,"t":"code","b":[33,106,208],"m":"ld","o":"hl,$D06A"},{"a":53556,"t":"code","b":[254,155],"m":"cp","o":"$9B"},{"a":53558,"t":"code","b":[40,7],"m":"jr","oa":53567,"o":"z,$D13F"},{"a":53560,"t":"code","b":[33,107,208],"m":"ld","o":"hl,$D06B"},{"a":53563,"t":"code","b":[254,154],"m":"cp","o":"$9A"},{"a":53565,"t":"code","b":[32,27],"m":"jr","oa":53594,"o":"nz,$D15A"},{"a":53567,"t":"code","b":[254,153],"m":"cp","o":"$99","x":[53551,53558]},{"a":53569,"t":"code","b":[32,11],"m":"jr","oa":53582,"o":"nz,$D14E"},{"a":53571,"t":"code","b":[58,103,208],"m":"ld","oa":53351,"o":"a,($D067)"},{"a":53574,"t":"code","b":[254,116],"m":"cp","o":"$74"},{"a":53576,"t":"code","b":[40,16],"m":"jr","oa":53594,"o":"z,$D15A"},{"a":53578,"t":"code","b":[254,117],"m":"cp","o":"$75"},{"a":53580,"t":"code","b":[40,12],"m":"jr","oa":53594,"o":"z,$D15A"},{"a":53582,"t":"code","b":[112],"m":"ld","o":"(hl),b","x":[53569,53600,53624]},{"a":53583,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":53584,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":53585,"t":"code","b":[30,6],"m":"ld","o":"e,$06"},{"a":53587,"t":"code","b":[254,1],"m":"cp","o":"$01"},{"a":53589,"t":"code","b":[32,57],"m":"jr","oa":53648,"o":"nz,parse_error"},{"a":53591,"t":"code","b":[195,128,208],"m":"jp","oa":53376,"o":"$D080"},{"a":53594,"t":"code","b":[121],"m":"ld","o":"a,c","x":[53565,53576,53580]},{"a":53595,"t":"code","b":[254,255],"m":"cp","o":"$FF"},{"a":53597,"t":"code","b":[33,108,208],"m":"ld","o":"hl,$D06C"},{"a":53600,"t":"code","b":[32,236],"m":"jr","oa":53582,"o":"nz,$D14E"},{"a":53602,"t":"code","b":[58,110,208],"m":"ld","oa":53358,"o":"a,($D06E)"},{"a":53605,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":53606,"t":"code","b":[58,111,208],"m":"ld","oa":53359,"o":"a,($D06F)"},{"a":53609,"t":"code","b":[162],"m":"and","o":"d"},{"a":53610,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53612,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":53614,"t":"code","b":[32,32],"m":"jr","oa":53648,"o":"nz,parse_error"},{"a":53616,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":53617,"t":"code","b":[205,180,209],"m":"call","oa":53684,"o":"parse_number"},{"a":53620,"t":"code","b":[229],"m":"push","o":"hl"},{"a":53621,"t":"code","b":[33,108,208],"m":"ld","o":"hl,$D06C"},{"a":53624,"t":"code","b":[24,212],"m":"jr","oa":53582,"o":"$D14E"},{"a":53626,"t":"code","b":[58,109,208],"m":"ld","oa":53357,"o":"a,($D06D)","x":[53442]},{"a":53629,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53631,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":53633,"t":"code","b":[32,13],"m":"jr","oa":53648,"o":"nz,parse_error"},{"a":53635,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53636,"t":"code","b":[50,109,208],"m":"ld","oa":53357,"o":"($D06D),a"},{"a":53639,"t":"code","b":[195,128,208],"m":"jp","oa":53376,"o":"$D080"},{"a":53642,"t":"code","b":[120],"m":"ld","o":"a,b","x":[53447]},{"a":53643,"t":"code","b":[50,112,208],"m":"ld","oa":53360,"o":"($D070),a"},{"a":53646,"t":"code","b":[24,63],"m":"jr","oa":53711,"o":"$D1CF"},{"a":53648,"l":"parse_error","c":"Returns from the parser with BC = the error number in E.","t":"code","b":[6,0],"m":"ld","o":"b,$00","x":[53401,53421,53456,53473,53503,53520,53540,53589,53614,53633]},{"a":53650,"t":"code","b":[75],"m":"ld","o":"c,e"},{"a":53651,"t":"code","b":[201],"m":"ret"},{"a":53652,"l":"parse_next_word","c":"Steps HL to the next entry of word_list, skipping the noise words (class 5: \"the\", \"please\", the place names) and the copies the matcher adds with code $FF; returns C = the class and B = the code, keeps the code before in parse_result+11, and sets parse_result+12 to $FF when the class is 0, the end of the list.","t":"code","b":[80],"m":"ld","o":"d,b","x":[53376,53530]},{"a":53653,"t":"code","b":[35],"m":"inc","o":"hl","x":[53663,53668]},{"a":53654,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53655,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":53656,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53657,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53658,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":53659,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53660,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":53661,"t":"code","b":[254,5],"m":"cp","o":"$05"},{"a":53663,"t":"code","b":[40,244],"m":"jr","oa":53653,"o":"z,$D195"},{"a":53665,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":53666,"t":"code","b":[254,255],"m":"cp","o":"$FF"},{"a":53668,"t":"code","b":[40,239],"m":"jr","oa":53653,"o":"z,$D195"},{"a":53670,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":53671,"t":"code","b":[50,113,208],"m":"ld","oa":53361,"o":"($D071),a"},{"a":53674,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":53675,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53677,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":53678,"t":"code","b":[62,255],"m":"ld","o":"a,$FF"},{"a":53680,"t":"code","b":[50,114,208],"m":"ld","oa":53362,"o":"($D072),a"},{"a":53683,"t":"code","b":[201],"m":"ret"},{"a":53684,"l":"parse_number","c":"A number in the word list: its value (the entry's last two bytes) goes to ca at parse_result+8, and the word becomes the noun 97, \"crown\" (B = $61, C = 1).","t":"code","b":[43],"m":"dec","o":"hl","x":[53424,53617]},{"a":53685,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":53686,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":53687,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53688,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":53689,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":53690,"t":"code","b":[237,83,110,208],"m":"ld","oa":53358,"o":"($D06E),de"},{"a":53694,"t":"code","b":[6,97],"m":"ld","o":"b,$61"},{"a":53696,"t":"code","b":[14,1],"m":"ld","o":"c,$01"},{"a":53698,"t":"code","b":[201],"m":"ret"},{"a":53699,"l":"parse_end","c":"The end of the list: a command with no subject is the player's, so the subject is set to 1 (\"you\"); returns BC = 0, no error.","t":"code","b":[58,102,208],"m":"ld","oa":53350,"o":"a,(parse_result)","x":[53384]},{"a":53702,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":53704,"t":"code","b":[32,5],"m":"jr","oa":53711,"o":"nz,$D1CF"},{"a":53706,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":53708,"t":"code","b":[50,102,208],"m":"ld","oa":53350,"o":"(parse_result),a"},{"a":53711,"t":"code","b":[1,0,0],"m":"ld","o":"bc,$0000","x":[53646,53704]},{"a":53714,"t":"code","b":[201],"m":"ret"},{"a":53715,"l":"stale_variables","c":"Unused. 222 bytes that nothing in the game reads or writes (no address in the machine code or the BASIC points here, and the play snapshots leave them as the tape has them). From $D200 they hold an older copy of matched_entry, enter_flag and the input editor's variables at input_vars (its flag byte $C1 at $D203), with the words \"quitt the axe at Nidhogg\" in its line buffer: memory the authors' machine held when the file was saved.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53723,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53731,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53739,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53747,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53755,"t":"byte","b":[0,0,0,0,0,226,174,0]},{"a":53763,"t":"byte","b":[193,0,0,0,46,208,4,4]},{"a":53771,"t":"byte","b":[98,168,0,0,180,210,226,174]},{"a":53779,"t":"byte","b":[137,137,0,0,4,130,166,0]},{"a":53787,"t":"byte","b":[4,4,58,208,78,0,1,20]},{"a":53795,"t":"byte","b":[192,80,182,92,1,92,16,7]},{"a":53803,"t":"byte","b":[113,117,105,116,116,32,116,104]},{"a":53811,"t":"byte","b":[101,32,97,120,101,32,97,116]},{"a":53819,"t":"byte","b":[32,78,105,100,104,111,103,103]},{"a":53827,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53835,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53843,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53851,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53859,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53867,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53875,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53883,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53891,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53899,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53907,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53915,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53923,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":53931,"t":"byte","b":[0,0,0,0,4,4]},{"a":53937,"l":"matched_entry","c":"Address of the dictionary entry the matcher accepted last (d$ is 11 bytes an entry); the ENTER handler reads its 11th byte, the word's class.","t":"byte","b":[170,181],"x":[55368,55794]},{"a":53939,"l":"enter_flag","c":"fad (53939): bit 1 is set by ENTER when a line is waiting for BASIC, and cleared again if a word in it is not in the dictionary; the BASIC main loop reads it with PEEK fad (any bit) and clears it with POKE fad,0 once the line is parsed. While bit 1 is set the interrupt passes no keys to the editor. Bit 0, when set, makes ENTER ignored; nothing in the game sets it.","t":"byte","b":[0],"x":[65217]},{"a":53940,"l":"input_vars","c":"The input editor's variables, reached through IX = $D2B4. +0 flags: bit 0 a line was cleared by CAPS SHIFT 1 and can be fetched back, bit 2 a word is being collected, bit 3 the matcher has used its one spelling allowance, bit 5 a number is being read, bit 6 the cursor is showing, bit 7 SYMBOL SHIFT S and BREAK may leave the game (ioad sets it, line 9800 clears it with POKE fad+1,0). +1 ($D2B5) the cursor's position in the line, +2 ($D2B6) the line's length, +3 ($D2B7) the length of the word being read; $D2B8 a copy of SP; $D2BA and $D2BB the position and length saved by CAPS SHIFT 1; $D2BC the start of the five text-window lines shown, inside n$; $D2BE the number being read; $D2C0 where the next entry of word_list goes; $D2C2 the dictionary entry being tried; $D2C4, $D2C5, $D2C7, $D2C8 and $D2CD the matcher's counts; $D2C9 the start of n$'s text, VARS+6; $D2CB (IX+$17) more flags: bit 0 clear the input lines before printing, bits 3-5 which kind of misspelling has been allowed; $D2CC (IX+$18) the position of the last digit read (each digit overwrites it); $D2D2-$D2DC the ROM's print settings, saved by the interrupt.","t":"byte","b":[193,0,0,0,56,208,4,4],"x":[54429,65196,65201]},{"a":53948,"t":"byte","b":[47,175,0,0,102,211,170,181],"x":[55034,55053,55078,55099,55104]},{"a":53956,"t":"byte","b":[137,137,0,0,4,79,173,0],"x":[55348,55788,55804,55861]},{"a":53964,"t":"byte","b":[16,4,0,0,0,0,7,0]},{"a":53972,"t":"byte","b":[182,92,1,94,16,7,0,125],"x":[65164,65271]},{"a":53980,"t":"byte","b":[52]},{"a":53981,"l":"input_line","c":"The line being typed, as the keys gave it: up to 63 characters (the editor refuses a 64th).","t":"byte","b":[113,117,105,116,113,115,99,98]},{"a":53989,"t":"byte","b":[99,98,99,98,99,98,99,98]},{"a":53997,"t":"byte","b":[99,98,99,98,99,98,99,98]},{"a":54005,"t":"byte","b":[99,98,99,98,99,98,99,98]},{"a":54013,"t":"byte","b":[99,98,99,98,99,98,98,99]},{"a":54021,"t":"byte","b":[98,50,98,98,98,98,98,98]},{"a":54029,"t":"byte","b":[98,98,98,98,98,98,98,120]},{"a":54037,"t":"byte","b":[98,120,98,120,98,98,98,98]},{"a":54045,"t":"byte","b":[0,0,0,0]},{"a":54049,"l":"word_buffer","c":"The word being looked up, lower case (OR $20 on each letter), up to 64 bytes; cleared by clear_word_buffer before each word.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54057,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54065,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54073,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54081,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54089,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54097,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54105,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54113,"l":"word_list","c":"tokad (54113): the line as the ENTER handler leaves it for the parser, five bytes a word: where the word ends in the line (the position just after its last letter), its length, its class, 0, and its code, the index of its entry in d$. A number is entered as the position just after its last digit, a byte that is 0 (1 when the digits follow letters directly), $FF, and its value, low byte first. ENTER clears 300 bytes here before it starts. At the hand-over it holds the entries of the authors' last command.","t":"byte","b":[4,4,7,0,137,0,0,0]},{"a":54121,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54129,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54137,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54145,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54153,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54161,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54169,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54177,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54185,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54193,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54201,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54209,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54217,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54225,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54233,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54241,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54249,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54257,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54265,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54273,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54281,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54289,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54297,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54305,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54313,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54321,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54329,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54337,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54345,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54353,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54361,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54369,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54377,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54385,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54393,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54401,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":54409,"t":"byte","b":[0,0,0,0]},{"a":54413,"l":"input_init","c":"ioad (54413), USR from line 9800: sets the ROM's keyboard to lower case (FLAGS bit 3 and FLAGS2 bit 3), sets the input editor's flag byte to $80 (escape allowed), sets MODE ($5C41) to 0 and the lower screen's height DF_SZ ($5C6B) to 7 lines, puts break_trap at the address ERR_SP points to, so an error report comes there first, and switches to interrupt mode 2 with I = 9: the vector is the word at $09FF in the ROM, $FE69, the address of interrupt.","t":"code","b":[243],"m":"di"},{"a":54414,"t":"code","b":[253,203,1,222],"m":"set","o":"3,(iy+$01)"},{"a":54418,"t":"code","b":[253,203,48,158],"m":"res","o":"3,(iy+$30)"},{"a":54422,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":54424,"t":"code","b":[50,65,92],"m":"ld","oa":23617,"o":"($5C41),a"},{"a":54427,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":54429,"t":"code","b":[50,180,210],"m":"ld","oa":53940,"o":"(input_vars),a"},{"a":54432,"t":"code","b":[62,7],"m":"ld","o":"a,$07"},{"a":54434,"t":"code","b":[50,107,92],"m":"ld","oa":23659,"o":"($5C6B),a"},{"a":54437,"t":"code","b":[42,61,92],"m":"ld","oa":23613,"o":"hl,($5C3D)"},{"a":54440,"t":"code","b":[1,60,218],"m":"ld","o":"bc,$DA3C"},{"a":54443,"t":"code","b":[113],"m":"ld","o":"(hl),c"},{"a":54444,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":54445,"t":"code","b":[112],"m":"ld","o":"(hl),b"},{"a":54446,"t":"code","b":[62,9],"m":"ld","o":"a,$09"},{"a":54448,"t":"code","b":[237,71],"m":"ld","o":"i,a"},{"a":54450,"t":"code","b":[237,94],"m":"im","o":"2"},{"a":54452,"t":"code","b":[251],"m":"ei"},{"a":54453,"t":"code","b":[201],"m":"ret"},{"a":54454,"l":"print_input_line","c":"Prints the input line in the lower screen: opens channel K (stream 0), clears the input lines first if the line has just been shortened or emptied (bit 0 of $D2CB, set by CAPS SHIFT 0, CAPS SHIFT 1 and the end of ENTER), and prints. The caller pushes the text's address and length; B is the line offset.","t":"code","b":[175],"m":"xor","o":"a","x":[55571,65248]},{"a":54455,"t":"code","b":[197],"m":"push","o":"bc"},{"a":54456,"t":"code","b":[205,1,22],"m":"call","oa":5633,"o":"$1601"},{"a":54459,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":54460,"t":"code","b":[221,203,23,70],"m":"bit","o":"0,(ix+$17)"},{"a":54464,"t":"code","b":[40,11],"m":"jr","oa":54477,"o":"z,print_lower_text"},{"a":54466,"t":"code","b":[205,68,14],"m":"call","oa":3652,"o":"$0E44"},{"a":54469,"t":"code","b":[221,203,23,134],"m":"res","o":"0,(ix+$17)"},{"a":54473,"t":"code","b":[221,203,0,182],"m":"res","o":"6,(ix+$00)"},{"a":54477,"l":"print_lower_text","c":"Sets the print position in the lower screen with the ROM's CL-SET ($0DD9), row from $11 + B, then prints the number of characters and the address the caller pushed (read through a copy of SP in IX).","t":"code","b":[62,17],"m":"ld","o":"a,$11","x":[54464,55063]},{"a":54479,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":54480,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":54481,"t":"code","b":[14,33],"m":"ld","o":"c,$21"},{"a":54483,"t":"code","b":[205,217,13],"m":"call","oa":3545,"o":"$0DD9"},{"a":54486,"t":"code","b":[237,115,184,210],"m":"ld","oa":53944,"o":"($D2B8),sp"},{"a":54490,"t":"code","b":[221,42,184,210],"m":"ld","oa":53944,"o":"ix,($D2B8)"},{"a":54494,"t":"code","b":[221,70,2],"m":"ld","o":"b,(ix+$02)"},{"a":54497,"t":"code","b":[221,110,4],"m":"ld","o":"l,(ix+$04)"},{"a":54500,"t":"code","b":[221,102,5],"m":"ld","o":"h,(ix+$05)"},{"a":54503,"t":"code","b":[221,33,180,210],"m":"ld","o":"ix,$D2B4"},{"a":54507,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":54508,"t":"code","b":[167],"m":"and","o":"a"},{"a":54509,"t":"code","b":[196,33,213],"m":"call","oa":54561,"o":"nz,print_chars"},{"a":54512,"t":"code","b":[201],"m":"ret"},{"a":54513,"l":"toggle_cursor","c":"Draws or removes the cursor: prints the five bytes at cursor_text, an underline with OVER 1, at the cursor's position in the two-line input area. The interrupt calls it every 16 frames, which makes it flash.","t":"code","b":[197],"m":"push","o":"bc","x":[54766,54776,54792,54802,54941,54959,54967,54989,55182,55520,65204]},{"a":54514,"t":"code","b":[229],"m":"push","o":"hl"},{"a":54515,"t":"code","b":[175],"m":"xor","o":"a"},{"a":54516,"t":"code","b":[205,1,22],"m":"call","oa":5633,"o":"$1601"},{"a":54519,"t":"code","b":[33,33,19],"m":"ld","o":"hl,$1321"},{"a":54522,"t":"code","b":[237,75,181,210],"m":"ld","oa":53941,"o":"bc,($D2B5)"},{"a":54526,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":54528,"t":"code","b":[167],"m":"and","o":"a"},{"a":54529,"t":"code","b":[237,66],"m":"sbc","o":"hl,bc"},{"a":54531,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":54532,"t":"code","b":[254,18],"m":"cp","o":"$12"},{"a":54534,"t":"code","b":[32,4],"m":"jr","oa":54540,"o":"nz,$D50C"},{"a":54536,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":54537,"t":"code","b":[198,32],"m":"add","o":"a,$20"},{"a":54539,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":54540,"t":"code","b":[68],"m":"ld","o":"b,h","x":[54534]},{"a":54541,"t":"code","b":[77],"m":"ld","o":"c,l"},{"a":54542,"t":"code","b":[205,217,13],"m":"call","oa":3545,"o":"$0DD9"},{"a":54545,"t":"code","b":[6,5],"m":"ld","o":"b,$05"},{"a":54547,"t":"code","b":[33,28,213],"m":"ld","o":"hl,$D51C"},{"a":54550,"t":"code","b":[205,33,213],"m":"call","oa":54561,"o":"print_chars"},{"a":54553,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":54554,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":54555,"t":"code","b":[201],"m":"ret"},{"a":54556,"l":"cursor_text","c":"The cursor as the ROM prints it: OVER 1 ($15,$01), \"_\", OVER 0.","t":"byte","b":[21,1,95,21,0]},{"a":54561,"l":"print_chars","c":"Prints B characters from HL with RST $10.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[54509,54550,54568]},{"a":54562,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":54563,"t":"code","b":[229],"m":"push","o":"hl"},{"a":54564,"t":"code","b":[197],"m":"push","o":"bc"},{"a":54565,"t":"code","b":[215],"m":"rst","o":"$10"},{"a":54566,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":54567,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":54568,"t":"code","b":[16,247],"m":"djnz","oa":54561,"o":"print_chars"},{"a":54570,"t":"code","b":[201],"m":"ret"},{"a":54571,"l":"key_pressed","c":"The editor's key handler, called from the interrupt with A = the ROM's LAST_K. CAPS SHIFT 2 (code 6) fetches back the cleared line, CAPS SHIFT 1 (7) clears it, CAPS SHIFT 5 and 8 (8, 9) move the cursor left and right, CAPS SHIFT 6 and 7 (10, 11) move it a whole screen line, CAPS SHIFT 0 (12) deletes to the left, ENTER (13) ends the line, SYMBOL SHIFT S (\"NOT\", $C3) leaves for BASIC when allowed, SYMBOL SHIFT Q (\"<=\", $C7) and A (\"STOP\", $E2) scroll the text window back and forward, SYMBOL SHIFT Z (\":\") redraws it. Letters, digits, space and ! \" , - . ; ? are inserted at the cursor; any other key gets the low error beep. Each accepted key ends with the short click.","t":"code","b":[221,33,180,210],"m":"ld","o":"ix,$D2B4","x":[65227]},{"a":54575,"t":"code","b":[253,203,1,174],"m":"res","o":"5,(iy+$01)"},{"a":54579,"t":"code","b":[33,183,213],"m":"ld","o":"hl,$D5B7"},{"a":54582,"t":"code","b":[229],"m":"push","o":"hl"},{"a":54583,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":54585,"t":"code","b":[202,209,214],"m":"jp","oa":54993,"o":"z,recall_line"},{"a":54588,"t":"code","b":[254,7],"m":"cp","o":"$07"},{"a":54590,"t":"code","b":[202,22,214],"m":"jp","oa":54806,"o":"z,clear_line"},{"a":54593,"t":"code","b":[254,8],"m":"cp","o":"$08"},{"a":54595,"t":"code","b":[202,229,213],"m":"jp","oa":54757,"o":"z,cursor_left"},{"a":54598,"t":"code","b":[254,9],"m":"cp","o":"$09"},{"a":54600,"t":"code","b":[202,252,213],"m":"jp","oa":54780,"o":"z,cursor_right"},{"a":54603,"t":"code","b":[254,10],"m":"cp","o":"$0A"},{"a":54605,"t":"code","b":[202,179,214],"m":"jp","oa":54963,"o":"z,cursor_down"},{"a":54608,"t":"code","b":[254,11],"m":"cp","o":"$0B"},{"a":54610,"t":"code","b":[202,153,214],"m":"jp","oa":54937,"o":"z,cursor_up"},{"a":54613,"t":"code","b":[254,12],"m":"cp","o":"$0C"},{"a":54615,"t":"code","b":[202,62,214],"m":"jp","oa":54846,"o":"z,delete_left"},{"a":54618,"t":"code","b":[254,13],"m":"cp","o":"$0D"},{"a":54620,"t":"code","b":[202,132,215],"m":"jp","oa":55172,"o":"z,enter_pressed"},{"a":54623,"t":"code","b":[254,195],"m":"cp","o":"$C3"},{"a":54625,"t":"code","b":[202,221,213],"m":"jp","oa":54749,"o":"z,escape_to_basic"},{"a":54628,"t":"code","b":[254,199],"m":"cp","o":"$C7"},{"a":54630,"t":"code","b":[202,38,215],"m":"jp","oa":55078,"o":"z,scroll_text_back"},{"a":54633,"t":"code","b":[254,226],"m":"cp","o":"$E2"},{"a":54635,"t":"code","b":[202,64,215],"m":"jp","oa":55104,"o":"z,scroll_text_on"},{"a":54638,"t":"code","b":[254,58],"m":"cp","o":"$3A"},{"a":54640,"t":"code","b":[202,235,214],"m":"jp","oa":55019,"o":"z,print_text_window"},{"a":54643,"t":"code","b":[221,203,0,134],"m":"res","o":"0,(ix+$00)"},{"a":54647,"t":"code","b":[254,32],"m":"cp","o":"$20"},{"a":54649,"t":"code","b":[56,51],"m":"jr","oa":54702,"o":"c,key_refused"},{"a":54651,"t":"code","b":[254,35],"m":"cp","o":"$23"},{"a":54653,"t":"code","b":[218,102,214],"m":"jp","oa":54886,"o":"c,insert_char"},{"a":54656,"t":"code","b":[254,44],"m":"cp","o":"$2C"},{"a":54658,"t":"code","b":[56,42],"m":"jr","oa":54702,"o":"c,key_refused"},{"a":54660,"t":"code","b":[254,47],"m":"cp","o":"$2F"},{"a":54662,"t":"code","b":[218,102,214],"m":"jp","oa":54886,"o":"c,insert_char"},{"a":54665,"t":"code","b":[254,48],"m":"cp","o":"$30"},{"a":54667,"t":"code","b":[56,33],"m":"jr","oa":54702,"o":"c,key_refused"},{"a":54669,"t":"code","b":[254,58],"m":"cp","o":"$3A"},{"a":54671,"t":"code","b":[218,102,214],"m":"jp","oa":54886,"o":"c,insert_char"},{"a":54674,"t":"code","b":[254,59],"m":"cp","o":"$3B"},{"a":54676,"t":"code","b":[202,102,214],"m":"jp","oa":54886,"o":"z,insert_char"},{"a":54679,"t":"code","b":[254,63],"m":"cp","o":"$3F"},{"a":54681,"t":"code","b":[202,102,214],"m":"jp","oa":54886,"o":"z,insert_char"},{"a":54684,"t":"code","b":[254,65],"m":"cp","o":"$41"},{"a":54686,"t":"code","b":[56,14],"m":"jr","oa":54702,"o":"c,key_refused"},{"a":54688,"t":"code","b":[254,91],"m":"cp","o":"$5B"},{"a":54690,"t":"code","b":[218,102,214],"m":"jp","oa":54886,"o":"c,insert_char"},{"a":54693,"t":"code","b":[254,97],"m":"cp","o":"$61"},{"a":54695,"t":"code","b":[56,5],"m":"jr","oa":54702,"o":"c,key_refused"},{"a":54697,"t":"code","b":[254,123],"m":"cp","o":"$7B"},{"a":54699,"t":"code","b":[218,102,214],"m":"jp","oa":54886,"o":"c,insert_char"},{"a":54702,"l":"key_refused","c":"A key the editor does not take: a beep of DE = $28 cycles at HL = $0428 through the ROM's BEEPER ($03B5).","t":"code","b":[225],"m":"pop","o":"hl","x":[54649,54658,54667,54686,54695]},{"a":54703,"t":"code","b":[17,40,0],"m":"ld","o":"de,$0028"},{"a":54706,"t":"code","b":[33,40,4],"m":"ld","o":"hl,$0428"},{"a":54709,"t":"code","b":[24,6],"m":"jr","oa":54717,"o":"$D5BD"},{"a":54711,"c":"Every accepted key returns here: the click, DE = 7 cycles at HL = $0197.","t":"code","b":[17,7,0],"m":"ld","o":"de,$0007"},{"a":54714,"t":"code","b":[33,151,1],"m":"ld","o":"hl,$0197"},{"a":54717,"t":"code","b":[205,181,3],"m":"call","oa":949,"o":"$03B5","x":[54709]},{"a":54720,"t":"code","b":[243],"m":"di"},{"a":54721,"t":"code","b":[221,33,180,210],"m":"ld","o":"ix,$D2B4"},{"a":54725,"t":"code","b":[201],"m":"ret"},{"a":54726,"l":"unused_d5c6","c":"Unused byte between two routines.","t":"byte","b":[0]},{"a":54727,"l":"clear_word_buffer","c":"Clears the 64 bytes of word_buffer by copying the zero at zero_byte over and over (LDI with HL stepped back each time).","t":"code","b":[197],"m":"push","o":"bc","x":[55237]},{"a":54728,"t":"code","b":[213],"m":"push","o":"de"},{"a":54729,"t":"code","b":[229],"m":"push","o":"hl"},{"a":54730,"t":"code","b":[17,33,211],"m":"ld","o":"de,$D321"},{"a":54733,"t":"code","b":[33,242,215],"m":"ld","o":"hl,$D7F2"},{"a":54736,"t":"code","b":[1,64,0],"m":"ld","o":"bc,$0040"},{"a":54739,"t":"code","b":[237,160],"m":"ldi","x":[54742]},{"a":54741,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":54742,"t":"code","b":[234,211,213],"m":"jp","oa":54739,"o":"pe,$D5D3"},{"a":54745,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":54746,"t":"code","b":[209],"m":"pop","o":"de"},{"a":54747,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":54748,"t":"code","b":[201],"m":"ret"},{"a":54749,"l":"escape_to_basic","c":"brkad (54749), SYMBOL SHIFT S: if bit 7 of the editor's flags allows it, switches to interrupt mode 1, so the ROM's handler runs and the game's keyboard stops; line 9800 clears the bit, so in play the key does nothing.","t":"code","b":[221,203,0,126],"m":"bit","o":"7,(ix+$00)","x":[54625]},{"a":54753,"t":"code","b":[200],"m":"ret","o":"z"},{"a":54754,"t":"code","b":[237,86],"m":"im","o":"1"},{"a":54756,"t":"code","b":[201],"m":"ret"},{"a":54757,"l":"cursor_left","c":"CAPS SHIFT 5: moves the cursor one character left, if it is not at the start.","t":"code","b":[175],"m":"xor","o":"a","x":[54595]},{"a":54758,"t":"code","b":[221,190,1],"m":"cp","o":"(ix+$01)"},{"a":54761,"t":"code","b":[200],"m":"ret","o":"z"},{"a":54762,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54766,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54769,"t":"code","b":[221,53,1],"m":"dec","o":"(ix+$01)"},{"a":54772,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54776,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54779,"t":"code","b":[201],"m":"ret"},{"a":54780,"l":"cursor_right","c":"CAPS SHIFT 8: moves the cursor one character right, up to the end of the line.","t":"code","b":[221,86,2],"m":"ld","o":"d,(ix+$02)","x":[54600]},{"a":54783,"t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)"},{"a":54786,"t":"code","b":[186],"m":"cp","o":"d"},{"a":54787,"t":"code","b":[240],"m":"ret","o":"p"},{"a":54788,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54792,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54795,"t":"code","b":[221,52,1],"m":"inc","o":"(ix+$01)"},{"a":54798,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54802,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54805,"t":"code","b":[201],"m":"ret"},{"a":54806,"l":"clear_line","c":"CAPS SHIFT 1: empties the input line, keeping its position and length for CAPS SHIFT 2. Also the end of the ENTER handler, which clears the line once its words are listed.","t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)","x":[54590,55251]},{"a":54809,"t":"code","b":[50,186,210],"m":"ld","oa":53946,"o":"($D2BA),a"},{"a":54812,"t":"code","b":[58,182,210],"m":"ld","oa":53942,"o":"a,($D2B6)"},{"a":54815,"t":"code","b":[50,187,210],"m":"ld","oa":53947,"o":"($D2BB),a"},{"a":54818,"t":"code","b":[221,203,0,198],"m":"set","o":"0,(ix+$00)"},{"a":54822,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":54824,"t":"code","b":[50,182,210],"m":"ld","oa":53942,"o":"($D2B6),a"},{"a":54827,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a"},{"a":54830,"t":"code","b":[253,203,1,238],"m":"set","o":"5,(iy+$01)"},{"a":54834,"t":"code","b":[221,203,23,198],"m":"set","o":"0,(ix+$17)"},{"a":54838,"t":"code","b":[221,203,0,110],"m":"bit","o":"5,(ix+$00)"},{"a":54842,"t":"code","b":[196,83,215],"m":"call","oa":55123,"o":"nz,add_number_entry"},{"a":54845,"t":"code","b":[201],"m":"ret"},{"a":54846,"l":"delete_left","c":"CAPS SHIFT 0: deletes the character left of the cursor and closes the gap.","t":"code","b":[58,182,210],"m":"ld","oa":53942,"o":"a,($D2B6)","x":[54615,55576,55579,55586,55589]},{"a":54849,"t":"code","b":[221,110,1],"m":"ld","o":"l,(ix+$01)"},{"a":54852,"t":"code","b":[45],"m":"dec","o":"l"},{"a":54853,"t":"code","b":[248],"m":"ret","o":"m"},{"a":54854,"t":"code","b":[221,53,2],"m":"dec","o":"(ix+$02)"},{"a":54857,"t":"code","b":[221,53,1],"m":"dec","o":"(ix+$01)"},{"a":54860,"t":"code","b":[44],"m":"inc","o":"l"},{"a":54861,"t":"code","b":[253,203,1,238],"m":"set","o":"5,(iy+$01)"},{"a":54865,"t":"code","b":[221,203,23,198],"m":"set","o":"0,(ix+$17)"},{"a":54869,"t":"code","b":[38,0],"m":"ld","o":"h,$00"},{"a":54871,"t":"code","b":[149],"m":"sub","o":"l"},{"a":54872,"t":"code","b":[200],"m":"ret","o":"z"},{"a":54873,"t":"code","b":[1,221,210],"m":"ld","o":"bc,$D2DD"},{"a":54876,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":54877,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":54878,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":54879,"t":"code","b":[27],"m":"dec","o":"de"},{"a":54880,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":54881,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":54883,"t":"code","b":[237,176],"m":"ldir"},{"a":54885,"t":"code","b":[201],"m":"ret"},{"a":54886,"l":"insert_char","c":"Inserts the character in A at the cursor, moving the rest of the line right; refused at 63 characters.","t":"code","b":[71],"m":"ld","o":"b,a","x":[54653,54662,54671,54676,54681,54690,54699,55529,55534,55552,55557]},{"a":54887,"t":"code","b":[253,203,1,238],"m":"set","o":"5,(iy+$01)"},{"a":54891,"t":"code","b":[42,182,210],"m":"ld","oa":53942,"o":"hl,($D2B6)"},{"a":54894,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":54895,"t":"code","b":[38,0],"m":"ld","o":"h,$00"},{"a":54897,"t":"code","b":[254,63],"m":"cp","o":"$3F"},{"a":54899,"t":"code","b":[208],"m":"ret","o":"nc"},{"a":54900,"t":"code","b":[197],"m":"push","o":"bc"},{"a":54901,"t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)"},{"a":54904,"t":"code","b":[149],"m":"sub","o":"l"},{"a":54905,"t":"code","b":[237,68],"m":"neg"},{"a":54907,"t":"code","b":[60],"m":"inc","o":"a"},{"a":54908,"t":"code","b":[1,221,210],"m":"ld","o":"bc,$D2DD"},{"a":54911,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":54912,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":54913,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":54914,"t":"code","b":[19],"m":"inc","o":"de"},{"a":54915,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":54916,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":54918,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":54920,"t":"code","b":[40,6],"m":"jr","oa":54928,"o":"z,$D690"},{"a":54922,"t":"code","b":[237,184],"m":"lddr"},{"a":54924,"t":"code","b":[221,203,0,182],"m":"res","o":"6,(ix+$00)"},{"a":54928,"t":"code","b":[221,52,2],"m":"inc","o":"(ix+$02)","x":[54920]},{"a":54931,"t":"code","b":[221,52,1],"m":"inc","o":"(ix+$01)"},{"a":54934,"t":"code","b":[241],"m":"pop","o":"af"},{"a":54935,"t":"code","b":[18],"m":"ld","o":"(de),a"},{"a":54936,"t":"code","b":[201],"m":"ret"},{"a":54937,"l":"cursor_up","c":"CAPS SHIFT 7: the cursor 32 characters back (one screen line), or to the start.","t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)","x":[54610]},{"a":54941,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54944,"t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)"},{"a":54947,"t":"code","b":[214,32],"m":"sub","o":"$20"},{"a":54949,"t":"code","b":[48,1],"m":"jr","oa":54952,"o":"nc,$D6A8"},{"a":54951,"t":"code","b":[175],"m":"xor","o":"a"},{"a":54952,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a","x":[54949]},{"a":54955,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54959,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54962,"t":"code","b":[201],"m":"ret"},{"a":54963,"l":"cursor_down","c":"CAPS SHIFT 6: the cursor 32 characters on, or to the end.","t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)","x":[54605]},{"a":54967,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54970,"t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)"},{"a":54973,"t":"code","b":[198,32],"m":"add","o":"a,$20"},{"a":54975,"t":"code","b":[221,70,2],"m":"ld","o":"b,(ix+$02)"},{"a":54978,"t":"code","b":[184],"m":"cp","o":"b"},{"a":54979,"t":"code","b":[56,1],"m":"jr","oa":54982,"o":"c,$D6C6"},{"a":54981,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":54982,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a","x":[54979]},{"a":54985,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":54989,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":54992,"t":"code","b":[201],"m":"ret"},{"a":54993,"l":"recall_line","c":"CAPS SHIFT 2: gives back the line CAPS SHIFT 1 cleared (bit 0 of the flags), with its length and cursor position.","t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)","x":[54585,55451]},{"a":54997,"t":"code","b":[200],"m":"ret","o":"z"},{"a":54998,"t":"code","b":[58,186,210],"m":"ld","oa":53946,"o":"a,($D2BA)"},{"a":55001,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a"},{"a":55004,"t":"code","b":[58,187,210],"m":"ld","oa":53947,"o":"a,($D2BB)"},{"a":55007,"t":"code","b":[50,182,210],"m":"ld","oa":53942,"o":"($D2B6),a"},{"a":55010,"t":"code","b":[253,203,1,238],"m":"set","o":"5,(iy+$01)"},{"a":55014,"t":"code","b":[221,203,0,182],"m":"res","o":"6,(ix+$00)"},{"a":55018,"t":"code","b":[201],"m":"ret"},{"a":55019,"l":"print_text_window","c":"priad (55019), USR from line 5020 after each new line of text, from lines 6265 and 9800, and SYMBOL SHIFT Z: prints the five lines of the 20-line text area n$ that $D2BC points to, 160 characters, in the lower screen, with the ROM's print settings saved around it. This entry first points $D2BC at the last five lines (n$ starts 6 bytes into the variables; +$1E0 is line 16 of 20).","t":"code","b":[243],"m":"di","x":[54640]},{"a":55020,"t":"code","b":[42,75,92],"m":"ld","oa":23627,"o":"hl,($5C4B)"},{"a":55023,"t":"code","b":[17,6,0],"m":"ld","o":"de,$0006"},{"a":55026,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55027,"t":"code","b":[34,201,210],"m":"ld","oa":53961,"o":"($D2C9),hl"},{"a":55030,"t":"code","b":[17,224,1],"m":"ld","o":"de,$01E0"},{"a":55033,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55034,"t":"code","b":[34,188,210],"m":"ld","oa":53948,"o":"($D2BC),hl"},{"a":55037,"t":"code","b":[217],"m":"exx","x":[55096,55102]},{"a":55038,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55039,"t":"code","b":[213],"m":"push","o":"de"},{"a":55040,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55041,"t":"code","b":[175],"m":"xor","o":"a"},{"a":55042,"t":"code","b":[205,1,22],"m":"call","oa":5633,"o":"$1601"},{"a":55045,"t":"code","b":[253,110,87],"m":"ld","o":"l,(iy+$57)"},{"a":55048,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55049,"t":"code","b":[253,203,87,214],"m":"set","o":"2,(iy+$57)"},{"a":55053,"t":"code","b":[42,188,210],"m":"ld","oa":53948,"o":"hl,($D2BC)"},{"a":55056,"t":"code","b":[1,160,0],"m":"ld","o":"bc,$00A0"},{"a":55059,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55060,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55061,"t":"code","b":[6,7],"m":"ld","o":"b,$07"},{"a":55063,"t":"code","b":[205,205,212],"m":"call","oa":54477,"o":"print_lower_text"},{"a":55066,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55067,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55068,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55069,"t":"code","b":[253,117,87],"m":"ld","o":"(iy+$57),l"},{"a":55072,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55073,"t":"code","b":[209],"m":"pop","o":"de"},{"a":55074,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55075,"t":"code","b":[217],"m":"exx"},{"a":55076,"t":"code","b":[251],"m":"ei"},{"a":55077,"t":"code","b":[201],"m":"ret"},{"a":55078,"l":"scroll_text_back","c":"SYMBOL SHIFT Q: moves the shown part of n$ one line (32 characters) towards its start, unless it is there, and prints it.","t":"code","b":[42,188,210],"m":"ld","oa":53948,"o":"hl,($D2BC)","x":[54630]},{"a":55081,"t":"code","b":[17,32,0],"m":"ld","o":"de,$0020"},{"a":55084,"t":"code","b":[167],"m":"and","o":"a"},{"a":55085,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":55087,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55088,"t":"code","b":[237,91,201,210],"m":"ld","oa":53961,"o":"de,($D2C9)"},{"a":55092,"t":"code","b":[167],"m":"and","o":"a","x":[55121]},{"a":55093,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":55095,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55096,"t":"code","b":[218,253,214],"m":"jp","oa":55037,"o":"c,$D6FD"},{"a":55099,"t":"code","b":[34,188,210],"m":"ld","oa":53948,"o":"($D2BC),hl"},{"a":55102,"t":"code","b":[24,189],"m":"jr","oa":55037,"o":"$D6FD"},{"a":55104,"l":"scroll_text_on","c":"SYMBOL SHIFT A: moves the shown part one line towards the end, unless the last line is showing, and prints it.","t":"code","b":[42,188,210],"m":"ld","oa":53948,"o":"hl,($D2BC)","x":[54635]},{"a":55107,"t":"code","b":[17,32,0],"m":"ld","o":"de,$0020"},{"a":55110,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55111,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55112,"t":"code","b":[237,91,201,210],"m":"ld","oa":53961,"o":"de,($D2C9)"},{"a":55116,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":55117,"t":"code","b":[1,224,1],"m":"ld","o":"bc,$01E0"},{"a":55120,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":55121,"t":"code","b":[24,225],"m":"jr","oa":55092,"o":"$D734"},{"a":55123,"l":"add_number_entry","c":"Ends a number: adds its entry to word_list (the position just after its last digit, a byte that is 0 or 1 rather than its length, $FF, value) and clears the number being read.","t":"code","b":[229],"m":"push","o":"hl","x":[54842,55265]},{"a":55124,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55125,"t":"code","b":[213],"m":"push","o":"de"},{"a":55126,"t":"code","b":[221,94,24],"m":"ld","o":"e,(ix+$18)"},{"a":55129,"t":"code","b":[28],"m":"inc","o":"e"},{"a":55130,"t":"code","b":[237,75,190,210],"m":"ld","oa":53950,"o":"bc,($D2BE)"},{"a":55134,"t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":55137,"t":"code","b":[34,190,210],"m":"ld","oa":53950,"o":"($D2BE),hl"},{"a":55140,"t":"code","b":[42,192,210],"m":"ld","oa":53952,"o":"hl,($D2C0)"},{"a":55143,"t":"code","b":[221,86,3],"m":"ld","o":"d,(ix+$03)"},{"a":55146,"t":"code","b":[115],"m":"ld","o":"(hl),e"},{"a":55147,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55148,"t":"code","b":[114],"m":"ld","o":"(hl),d"},{"a":55149,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55150,"t":"code","b":[54,255],"m":"ld","o":"(hl),$FF"},{"a":55152,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55153,"t":"code","b":[113],"m":"ld","o":"(hl),c"},{"a":55154,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55155,"t":"code","b":[112],"m":"ld","o":"(hl),b"},{"a":55156,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55157,"t":"code","b":[34,192,210],"m":"ld","oa":53952,"o":"($D2C0),hl"},{"a":55160,"t":"code","b":[209],"m":"pop","o":"de"},{"a":55161,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55162,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55163,"t":"code","b":[221,203,0,174],"m":"res","o":"5,(ix+$00)"},{"a":55167,"t":"code","b":[221,54,3,0],"m":"ld","o":"(ix+$03),$00"},{"a":55171,"t":"code","b":[201],"m":"ret"},{"a":55172,"l":"enter_pressed","c":"ENTER: ignored on an empty line. Sets bit 1 of enter_flag, clears 300 bytes of word_list, then reads the line word by word: letters are lower-cased into word_buffer, digits build a number, and at each other character the word collected is looked up in the dictionary (find_word). A word the dictionary has is added to word_list with its class and code; the first one it has not stops the reading and is shown in red (show_bad_word). At the end of the line the line is cleared, leaving the list for BASIC.","t":"code","b":[58,182,210],"m":"ld","oa":53942,"o":"a,($D2B6)","x":[54620]},{"a":55175,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":55177,"t":"code","b":[200],"m":"ret","o":"z"},{"a":55178,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":55182,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":55185,"t":"code","b":[221,203,255,70],"m":"bit","o":"0,(ix-$01)"},{"a":55189,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":55190,"t":"code","b":[221,203,255,206],"m":"set","o":"1,(ix-$01)"},{"a":55194,"t":"code","b":[17,97,211],"m":"ld","o":"de,$D361"},{"a":55197,"t":"code","b":[237,83,192,210],"m":"ld","oa":53952,"o":"($D2C0),de"},{"a":55201,"t":"code","b":[1,44,1],"m":"ld","o":"bc,$012C"},{"a":55204,"t":"code","b":[33,242,215],"m":"ld","o":"hl,$D7F2"},{"a":55207,"t":"code","b":[237,160],"m":"ldi","x":[55210]},{"a":55209,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":55210,"t":"code","b":[234,167,215],"m":"jp","oa":55207,"o":"pe,$D7A7"},{"a":55213,"t":"code","b":[33,221,210],"m":"ld","o":"hl,$D2DD"},{"a":55216,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":55218,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":55219,"c":"The next word: clears word_buffer and the counts.","t":"code","b":[17,33,211],"m":"ld","o":"de,$D321","x":[55411]},{"a":55222,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":55224,"t":"code","b":[50,199,210],"m":"ld","oa":53959,"o":"($D2C7),a"},{"a":55227,"t":"code","b":[221,203,0,110],"m":"bit","o":"5,(ix+$00)"},{"a":55231,"t":"code","b":[40,1],"m":"jr","oa":55234,"o":"z,$D7C2"},{"a":55233,"t":"code","b":[60],"m":"inc","o":"a"},{"a":55234,"t":"code","b":[50,183,210],"m":"ld","oa":53943,"o":"($D2B7),a","x":[55231]},{"a":55237,"t":"code","b":[205,199,213],"m":"call","oa":54727,"o":"clear_word_buffer"},{"a":55240,"t":"code","b":[221,203,0,150],"m":"res","o":"2,(ix+$00)"},{"a":55244,"t":"code","b":[27],"m":"dec","o":"de"},{"a":55245,"c":"Reads one character: a letter goes into the word, a digit into the number (read_digit), anything else ends the word (end_of_word).","t":"code","b":[120],"m":"ld","o":"a,b","x":[55280,55330]},{"a":55246,"t":"code","b":[221,190,2],"m":"cp","o":"(ix+$02)"},{"a":55249,"t":"code","b":[40,73],"m":"jr","oa":55324,"o":"z,end_of_word"},{"a":55251,"t":"code","b":[210,22,214],"m":"jp","oa":54806,"o":"nc,clear_line"},{"a":55254,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55255,"t":"code","b":[19],"m":"inc","o":"de"},{"a":55256,"t":"code","b":[62,64],"m":"ld","o":"a,$40"},{"a":55258,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55259,"t":"code","b":[48,52],"m":"jr","oa":55313,"o":"nc,check_digit"},{"a":55261,"t":"code","b":[221,203,0,110],"m":"bit","o":"5,(ix+$00)"},{"a":55265,"t":"code","b":[196,83,215],"m":"call","oa":55123,"o":"nz,add_number_entry"},{"a":55268,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55269,"t":"code","b":[246,32],"m":"or","o":"$20"},{"a":55271,"t":"code","b":[18],"m":"ld","o":"(de),a"},{"a":55272,"t":"code","b":[4],"m":"inc","o":"b"},{"a":55273,"t":"code","b":[221,52,3],"m":"inc","o":"(ix+$03)"},{"a":55276,"t":"code","b":[221,203,0,214],"m":"set","o":"2,(ix+$00)"},{"a":55280,"t":"code","b":[24,219],"m":"jr","oa":55245,"o":"$D7CD"},{"a":55282,"l":"zero_byte","c":"A zero, copied over word_buffer and word_list to clear them.","t":"byte","b":[0]},{"a":55283,"l":"read_digit","c":"Adds the digit at HL to the number being read: number = number x 10 + digit, in $D2BE.","t":"code","b":[197],"m":"push","o":"bc","x":[55321]},{"a":55284,"t":"code","b":[221,112,24],"m":"ld","o":"(ix+$18),b"},{"a":55287,"t":"code","b":[221,203,0,238],"m":"set","o":"5,(ix+$00)"},{"a":55291,"t":"code","b":[205,0,218],"m":"call","oa":55808,"o":"times_ten"},{"a":55294,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55295,"t":"code","b":[214,48],"m":"sub","o":"$30"},{"a":55297,"t":"code","b":[237,75,190,210],"m":"ld","oa":53950,"o":"bc,($D2BE)"},{"a":55301,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":55302,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":55303,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":55304,"t":"code","b":[206,0],"m":"adc","o":"a,$00"},{"a":55306,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":55307,"t":"code","b":[237,67,190,210],"m":"ld","oa":53950,"o":"($D2BE),bc"},{"a":55311,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55312,"t":"code","b":[201],"m":"ret"},{"a":55313,"l":"check_digit","c":"A character that is not a letter: a digit goes to read_digit.","t":"code","b":[62,47],"m":"ld","o":"a,$2F","x":[55259]},{"a":55315,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55316,"t":"code","b":[48,6],"m":"jr","oa":55324,"o":"nc,end_of_word"},{"a":55318,"t":"code","b":[62,58],"m":"ld","o":"a,$3A"},{"a":55320,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55321,"t":"code","b":[212,243,215],"m":"call","oa":55283,"o":"nc,read_digit"},{"a":55324,"l":"end_of_word","c":"The end of a word: if letters were collected, looks the word up in the dictionary, d$ (VARS + $028E is its first entry's length byte), and adds an entry to word_list: where it ends (the position just after its last letter), its length, its class, 0 and its code; when the match allowed a final \"s\" a second entry follows with code $FF. A word not found goes to show_bad_word.","t":"code","b":[27],"m":"dec","o":"de","x":[55249,55316]},{"a":55325,"t":"code","b":[4],"m":"inc","o":"b"},{"a":55326,"t":"code","b":[221,203,0,86],"m":"bit","o":"2,(ix+$00)"},{"a":55330,"t":"code","b":[40,169],"m":"jr","oa":55245,"o":"z,$D7CD"},{"a":55332,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55333,"t":"code","b":[42,75,92],"m":"ld","oa":23627,"o":"hl,($5C4B)"},{"a":55336,"t":"code","b":[17,142,2],"m":"ld","o":"de,$028E"},{"a":55339,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55340,"t":"code","b":[34,194,210],"m":"ld","oa":53954,"o":"($D2C2),hl"},{"a":55343,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":55345,"t":"code","b":[50,197,210],"m":"ld","oa":53957,"o":"($D2C5),a"},{"a":55348,"t":"code","b":[50,196,210],"m":"ld","oa":53956,"o":"($D2C4),a"},{"a":55351,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":55352,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55353,"t":"code","b":[205,55,217],"m":"call","oa":55607,"o":"find_word"},{"a":55356,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55357,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":55359,"t":"code","b":[32,4],"m":"jr","oa":55365,"o":"nz,$D845"},{"a":55361,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55362,"t":"code","b":[195,200,216],"m":"jp","oa":55496,"o":"show_bad_word"},{"a":55365,"t":"code","b":[58,183,210],"m":"ld","oa":53943,"o":"a,($D2B7)","x":[55359]},{"a":55368,"t":"code","b":[42,177,210],"m":"ld","oa":53937,"o":"hl,(matched_entry)"},{"a":55371,"t":"code","b":[17,10,0],"m":"ld","o":"de,$000A"},{"a":55374,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55375,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":55376,"t":"code","b":[221,94,16],"m":"ld","o":"e,(ix+$10)"},{"a":55379,"t":"code","b":[5],"m":"dec","o":"b"},{"a":55380,"t":"code","b":[42,192,210],"m":"ld","oa":53952,"o":"hl,($D2C0)"},{"a":55383,"t":"code","b":[112],"m":"ld","o":"(hl),b","x":[55404]},{"a":55384,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55385,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":55386,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55387,"t":"code","b":[113],"m":"ld","o":"(hl),c"},{"a":55388,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55389,"t":"code","b":[54,0],"m":"ld","o":"(hl),$00"},{"a":55391,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55392,"t":"code","b":[115],"m":"ld","o":"(hl),e"},{"a":55393,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55394,"t":"code","b":[30,255],"m":"ld","o":"e,$FF"},{"a":55396,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)"},{"a":55400,"t":"code","b":[221,203,0,142],"m":"res","o":"1,(ix+$00)"},{"a":55404,"t":"code","b":[32,233],"m":"jr","oa":55383,"o":"nz,$D857"},{"a":55406,"t":"code","b":[4],"m":"inc","o":"b"},{"a":55407,"t":"code","b":[34,192,210],"m":"ld","oa":53952,"o":"($D2C0),hl"},{"a":55410,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55411,"t":"code","b":[195,179,215],"m":"jp","oa":55219,"o":"$D7B3"},{"a":55414,"l":"highlight_word","c":"Not called: no address in the game points here, and the BASIC never uses 55414. Saves the ROM's print settings, brings back the line CAPS SHIFT 1 cleared (recall_line, called before IX is set), finds entry number L (from the LD L,$00 at $D88D, which nothing changes) of word_list, sets the cursor there and, only if a line was brought back, shows that word in red, as show_bad_word does.","t":"code","b":[243],"m":"di"},{"a":55415,"t":"code","b":[217],"m":"exx"},{"a":55416,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55417,"t":"code","b":[213],"m":"push","o":"de"},{"a":55418,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55419,"t":"code","b":[58,143,92],"m":"ld","oa":23695,"o":"a,($5C8F)"},{"a":55422,"t":"code","b":[50,210,210],"m":"ld","oa":53970,"o":"($D2D2),a"},{"a":55425,"t":"code","b":[58,144,92],"m":"ld","oa":23696,"o":"a,($5C90)"},{"a":55428,"t":"code","b":[50,211,210],"m":"ld","oa":53971,"o":"($D2D3),a"},{"a":55431,"t":"code","b":[58,145,92],"m":"ld","oa":23697,"o":"a,($5C91)"},{"a":55434,"t":"code","b":[50,218,210],"m":"ld","oa":53978,"o":"($D2DA),a"},{"a":55437,"t":"code","b":[46,0],"m":"ld","o":"l,$00"},{"a":55439,"t":"code","b":[38,0],"m":"ld","o":"h,$00"},{"a":55441,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":55442,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55443,"t":"code","b":[41],"m":"add","o":"hl,hl"},{"a":55444,"t":"code","b":[41],"m":"add","o":"hl,hl"},{"a":55445,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55446,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":55447,"t":"code","b":[1,97,211],"m":"ld","o":"bc,$D361"},{"a":55450,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":55451,"t":"code","b":[205,209,214],"m":"call","oa":54993,"o":"recall_line"},{"a":55454,"t":"code","b":[245],"m":"push","o":"af"},{"a":55455,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55456,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a"},{"a":55459,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55460,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55461,"t":"code","b":[50,183,210],"m":"ld","oa":53943,"o":"($D2B7),a"},{"a":55464,"t":"code","b":[221,33,180,210],"m":"ld","o":"ix,$D2B4"},{"a":55468,"t":"code","b":[241],"m":"pop","o":"af"},{"a":55469,"t":"code","b":[196,217,216],"m":"call","oa":55513,"o":"nz,$D8D9"},{"a":55472,"t":"code","b":[58,210,210],"m":"ld","oa":53970,"o":"a,($D2D2)"},{"a":55475,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":55478,"t":"code","b":[58,211,210],"m":"ld","oa":53971,"o":"a,($D2D3)"},{"a":55481,"t":"code","b":[50,144,92],"m":"ld","oa":23696,"o":"($5C90),a"},{"a":55484,"t":"code","b":[58,218,210],"m":"ld","oa":53978,"o":"a,($D2DA)"},{"a":55487,"t":"code","b":[50,145,92],"m":"ld","oa":23697,"o":"($5C91),a"},{"a":55490,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55491,"t":"code","b":[209],"m":"pop","o":"de"},{"a":55492,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55493,"t":"code","b":[217],"m":"exx"},{"a":55494,"t":"code","b":[251],"m":"ei"},{"a":55495,"t":"code","b":[201],"m":"ret"},{"a":55496,"l":"show_bad_word","c":"A word that is not in the dictionary: puts the cursor after it, inserts PAPER 2 (red) before it and PAPER 0 after it, prints the line and takes the codes out again, so the word stays red on the screen while the line can be edited. Clears bit 1 of enter_flag: BASIC never sees the line.","t":"code","b":[1,221,210],"m":"ld","o":"bc,$D2DD","x":[55362]},{"a":55499,"t":"code","b":[62,64],"m":"ld","o":"a,$40"},{"a":55501,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55502,"t":"code","b":[245],"m":"push","o":"af"},{"a":55503,"t":"code","b":[167],"m":"and","o":"a"},{"a":55504,"t":"code","b":[237,66],"m":"sbc","o":"hl,bc"},{"a":55506,"t":"code","b":[241],"m":"pop","o":"af"},{"a":55507,"t":"code","b":[48,1],"m":"jr","oa":55510,"o":"nc,$D8D6"},{"a":55509,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55510,"t":"code","b":[221,117,1],"m":"ld","o":"(ix+$01),l","x":[55507]},{"a":55513,"t":"code","b":[213],"m":"push","o":"de","x":[55469]},{"a":55514,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55515,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55516,"t":"code","b":[221,203,0,118],"m":"bit","o":"6,(ix+$00)"},{"a":55520,"t":"code","b":[196,241,212],"m":"call","oa":54513,"o":"nz,toggle_cursor"},{"a":55523,"t":"code","b":[221,203,255,142],"m":"res","o":"1,(ix-$01)"},{"a":55527,"t":"code","b":[62,17],"m":"ld","o":"a,$11"},{"a":55529,"t":"code","b":[205,102,214],"m":"call","oa":54886,"o":"insert_char"},{"a":55532,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":55534,"t":"code","b":[205,102,214],"m":"call","oa":54886,"o":"insert_char"},{"a":55537,"t":"code","b":[58,181,210],"m":"ld","oa":53941,"o":"a,($D2B5)"},{"a":55540,"t":"code","b":[245],"m":"push","o":"af"},{"a":55541,"t":"code","b":[221,70,3],"m":"ld","o":"b,(ix+$03)"},{"a":55544,"t":"code","b":[144],"m":"sub","o":"b"},{"a":55545,"t":"code","b":[61],"m":"dec","o":"a"},{"a":55546,"t":"code","b":[61],"m":"dec","o":"a"},{"a":55547,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a"},{"a":55550,"t":"code","b":[62,17],"m":"ld","o":"a,$11"},{"a":55552,"t":"code","b":[205,102,214],"m":"call","oa":54886,"o":"insert_char"},{"a":55555,"t":"code","b":[62,2],"m":"ld","o":"a,$02"},{"a":55557,"t":"code","b":[205,102,214],"m":"call","oa":54886,"o":"insert_char"},{"a":55560,"t":"code","b":[237,75,182,210],"m":"ld","oa":53942,"o":"bc,($D2B6)"},{"a":55564,"t":"code","b":[33,221,210],"m":"ld","o":"hl,$D2DD"},{"a":55567,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55568,"t":"code","b":[197],"m":"push","o":"bc"},{"a":55569,"t":"code","b":[6,2],"m":"ld","o":"b,$02"},{"a":55571,"t":"code","b":[205,182,212],"m":"call","oa":54454,"o":"print_input_line"},{"a":55574,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55575,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55576,"t":"code","b":[205,62,214],"m":"call","oa":54846,"o":"delete_left"},{"a":55579,"t":"code","b":[205,62,214],"m":"call","oa":54846,"o":"delete_left"},{"a":55582,"t":"code","b":[241],"m":"pop","o":"af"},{"a":55583,"t":"code","b":[50,181,210],"m":"ld","oa":53941,"o":"($D2B5),a"},{"a":55586,"t":"code","b":[205,62,214],"m":"call","oa":54846,"o":"delete_left"},{"a":55589,"t":"code","b":[205,62,214],"m":"call","oa":54846,"o":"delete_left"},{"a":55592,"t":"code","b":[253,203,1,174],"m":"res","o":"5,(iy+$01)"},{"a":55596,"t":"code","b":[0],"m":"nop"},{"a":55597,"t":"code","b":[0],"m":"nop"},{"a":55598,"t":"code","b":[0],"m":"nop"},{"a":55599,"t":"code","b":[0],"m":"nop"},{"a":55600,"t":"code","b":[0],"m":"nop"},{"a":55601,"t":"code","b":[0],"m":"nop"},{"a":55602,"t":"code","b":[0],"m":"nop"},{"a":55603,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55604,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55605,"t":"code","b":[209],"m":"pop","o":"de"},{"a":55606,"t":"code","b":[201],"m":"ret"},{"a":55607,"l":"find_word","c":"Looks up the word in word_buffer (length at +3 of the editor's variables) in the dictionary, from the entry DE points to: the first byte of each 11-byte entry is its word's length, then the word, padded with spaces, then its class. Each entry is compared letter by letter, allowing one wrong, missing or extra letter (bits 3-5 of $D2CB record which); an entry matched with no allowance is returned at once, otherwise the search goes on through all 255 entries keeping the entry with most letters matched, which is accepted at the end if that count is within two of the typed word's length. Returns A = the entry's number, its code, or 0; matched_entry points at the entry.","t":"code","b":[62,0],"m":"ld","o":"a,$00","x":[55353,55845]},{"a":55609,"t":"code","b":[50,200,210],"m":"ld","oa":53960,"o":"($D2C8),a"},{"a":55612,"t":"code","b":[50,205,210],"m":"ld","oa":53965,"o":"($D2CD),a"},{"a":55615,"t":"code","b":[58,203,210],"m":"ld","oa":53963,"o":"a,($D2CB)"},{"a":55618,"t":"code","b":[230,199],"m":"and","o":"$C7"},{"a":55620,"t":"code","b":[50,203,210],"m":"ld","oa":53963,"o":"($D2CB),a"},{"a":55623,"t":"code","b":[26],"m":"ld","o":"a,(de)"},{"a":55624,"t":"code","b":[19],"m":"inc","o":"de"},{"a":55625,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":55626,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":55628,"t":"code","b":[33,33,211],"m":"ld","o":"hl,$D321"},{"a":55631,"t":"code","b":[221,52,17],"m":"inc","o":"(ix+$11)"},{"a":55634,"t":"code","b":[26],"m":"ld","o":"a,(de)","x":[55745]},{"a":55635,"t":"code","b":[246,32],"m":"or","o":"$20"},{"a":55637,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":55638,"t":"code","b":[58,200,210],"m":"ld","oa":53960,"o":"a,($D2C8)"},{"a":55641,"t":"code","b":[221,190,3],"m":"cp","o":"(ix+$03)"},{"a":55644,"t":"code","b":[40,101],"m":"jr","oa":55747,"o":"z,$D9C3"},{"a":55646,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":55647,"t":"code","b":[254,27],"m":"cp","o":"$1B"},{"a":55649,"t":"code","b":[40,102],"m":"jr","oa":55753,"o":"z,$D9C9"},{"a":55651,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":55652,"t":"code","b":[185],"m":"cp","o":"c"},{"a":55653,"t":"code","b":[48,98],"m":"jr","oa":55753,"o":"nc,$D9C9"},{"a":55655,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":55656,"t":"code","b":[58,205,210],"m":"ld","oa":53965,"o":"a,($D2CD)"},{"a":55659,"t":"code","b":[185],"m":"cp","o":"c"},{"a":55660,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":55661,"t":"code","b":[48,90],"m":"jr","oa":55753,"o":"nc,$D9C9"},{"a":55663,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":55664,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55665,"t":"code","b":[40,70],"m":"jr","oa":55737,"o":"z,$D9B9"},{"a":55667,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":55668,"t":"code","b":[58,205,210],"m":"ld","oa":53965,"o":"a,($D2CD)"},{"a":55671,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":55673,"t":"code","b":[202,17,218],"m":"jp","oa":55825,"o":"z,next_entry"},{"a":55676,"t":"code","b":[221,203,0,94],"m":"bit","o":"3,(ix+$00)"},{"a":55680,"t":"code","b":[221,203,0,222],"m":"set","o":"3,(ix+$00)"},{"a":55684,"t":"code","b":[40,55],"m":"jr","oa":55741,"o":"z,$D9BD"},{"a":55686,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":55687,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":55689,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":55690,"t":"code","b":[40,15],"m":"jr","oa":55707,"o":"z,$D99B"},{"a":55692,"t":"code","b":[221,203,23,94],"m":"bit","o":"3,(ix+$17)"},{"a":55696,"t":"code","b":[32,9],"m":"jr","oa":55707,"o":"nz,$D99B"},{"a":55698,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":55699,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55700,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55701,"t":"code","b":[221,203,23,222],"m":"set","o":"3,(ix+$17)"},{"a":55705,"t":"code","b":[40,34],"m":"jr","oa":55741,"o":"z,$D9BD"},{"a":55707,"t":"code","b":[221,203,23,102],"m":"bit","o":"4,(ix+$17)","x":[55690,55696]},{"a":55711,"t":"code","b":[32,8],"m":"jr","oa":55721,"o":"nz,$D9A9"},{"a":55713,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55714,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55715,"t":"code","b":[221,203,23,230],"m":"set","o":"4,(ix+$17)"},{"a":55719,"t":"code","b":[40,17],"m":"jr","oa":55738,"o":"z,$D9BA"},{"a":55721,"t":"code","b":[221,203,23,110],"m":"bit","o":"5,(ix+$17)","x":[55711]},{"a":55725,"t":"code","b":[32,98],"m":"jr","oa":55825,"o":"nz,next_entry"},{"a":55727,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":55728,"t":"code","b":[190],"m":"cp","o":"(hl)"},{"a":55729,"t":"code","b":[221,203,23,238],"m":"set","o":"5,(ix+$17)"},{"a":55733,"t":"code","b":[40,3],"m":"jr","oa":55738,"o":"z,$D9BA"},{"a":55735,"t":"code","b":[24,88],"m":"jr","oa":55825,"o":"next_entry"},{"a":55737,"t":"code","b":[35],"m":"inc","o":"hl","x":[55665]},{"a":55738,"t":"code","b":[221,52,20],"m":"inc","o":"(ix+$14)","x":[55719,55733]},{"a":55741,"t":"code","b":[19],"m":"inc","o":"de","x":[55684,55705]},{"a":55742,"t":"code","b":[221,52,25],"m":"inc","o":"(ix+$19)"},{"a":55745,"t":"code","b":[24,143],"m":"jr","oa":55634,"o":"$D952"},{"a":55747,"t":"code","b":[58,200,210],"m":"ld","oa":53960,"o":"a,($D2C8)","x":[55644]},{"a":55750,"t":"code","b":[185],"m":"cp","o":"c"},{"a":55751,"t":"code","b":[40,22],"m":"jr","oa":55775,"o":"z,$D9DF"},{"a":55753,"t":"code","b":[221,203,0,222],"m":"set","o":"3,(ix+$00)","x":[55649,55653,55661]},{"a":55757,"t":"code","b":[58,199,210],"m":"ld","oa":53959,"o":"a,($D2C7)"},{"a":55760,"t":"code","b":[221,190,20],"m":"cp","o":"(ix+$14)"},{"a":55763,"t":"code","b":[210,17,218],"m":"jp","oa":55825,"o":"nc,next_entry"},{"a":55766,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55767,"t":"code","b":[254,115],"m":"cp","o":"$73"},{"a":55769,"t":"code","b":[221,203,0,206],"m":"set","o":"1,(ix+$00)"},{"a":55773,"t":"code","b":[40,4],"m":"jr","oa":55779,"o":"z,$D9E3"},{"a":55775,"t":"code","b":[221,203,0,142],"m":"res","o":"1,(ix+$00)","x":[55751]},{"a":55779,"t":"code","b":[58,200,210],"m":"ld","oa":53960,"o":"a,($D2C8)","x":[55773]},{"a":55782,"t":"code","b":[50,199,210],"m":"ld","oa":53959,"o":"($D2C7),a"},{"a":55785,"t":"code","b":[58,197,210],"m":"ld","oa":53957,"o":"a,($D2C5)"},{"a":55788,"t":"code","b":[50,196,210],"m":"ld","oa":53956,"o":"($D2C4),a"},{"a":55791,"t":"code","b":[42,194,210],"m":"ld","oa":53954,"o":"hl,($D2C2)"},{"a":55794,"t":"code","b":[34,177,210],"m":"ld","oa":53937,"o":"(matched_entry),hl"},{"a":55797,"t":"code","b":[221,203,0,94],"m":"bit","o":"3,(ix+$00)"},{"a":55801,"t":"code","b":[194,17,218],"m":"jp","oa":55825,"o":"nz,next_entry"},{"a":55804,"t":"code","b":[58,196,210],"m":"ld","oa":53956,"o":"a,($D2C4)"},{"a":55807,"t":"code","b":[201],"m":"ret"},{"a":55808,"l":"times_ten","c":"Multiplies the number being read at $D2BE by ten.","t":"code","b":[197],"m":"push","o":"bc","x":[55291]},{"a":55809,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55810,"t":"code","b":[42,190,210],"m":"ld","oa":53950,"o":"hl,($D2BE)"},{"a":55813,"t":"code","b":[41],"m":"add","o":"hl,hl"},{"a":55814,"t":"code","b":[229],"m":"push","o":"hl"},{"a":55815,"t":"code","b":[41],"m":"add","o":"hl,hl"},{"a":55816,"t":"code","b":[41],"m":"add","o":"hl,hl"},{"a":55817,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55818,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":55819,"t":"code","b":[34,190,210],"m":"ld","oa":53950,"o":"($D2BE),hl"},{"a":55822,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":55823,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":55824,"t":"code","b":[201],"m":"ret"},{"a":55825,"l":"next_entry","c":"Moves to the next dictionary entry (11 bytes on) and tries again, up to entry 255; at the end, returns the best near match found if the number of letters it matched is within two of the word's length, else 0.","t":"code","b":[17,11,0],"m":"ld","o":"de,$000B","x":[55673,55725,55735,55763,55801]},{"a":55828,"t":"code","b":[42,194,210],"m":"ld","oa":53954,"o":"hl,($D2C2)"},{"a":55831,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":55832,"t":"code","b":[34,194,210],"m":"ld","oa":53954,"o":"($D2C2),hl"},{"a":55835,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":55836,"t":"code","b":[221,203,0,158],"m":"res","o":"3,(ix+$00)"},{"a":55840,"t":"code","b":[58,197,210],"m":"ld","oa":53957,"o":"a,($D2C5)"},{"a":55843,"t":"code","b":[254,255],"m":"cp","o":"$FF"},{"a":55845,"t":"code","b":[218,55,217],"m":"jp","oa":55607,"o":"c,find_word"},{"a":55848,"t":"code","b":[58,199,210],"m":"ld","oa":53959,"o":"a,($D2C7)"},{"a":55851,"t":"code","b":[221,150,3],"m":"sub","o":"(ix+$03)"},{"a":55854,"t":"code","b":[210,51,218],"m":"jp","oa":55859,"o":"nc,$DA33"},{"a":55857,"t":"code","b":[237,68],"m":"neg"},{"a":55859,"t":"code","b":[254,3],"m":"cp","o":"$03","x":[55854]},{"a":55861,"t":"code","b":[58,196,210],"m":"ld","oa":53956,"o":"a,($D2C4)"},{"a":55864,"t":"code","b":[56,1],"m":"jr","oa":55867,"o":"c,$DA3B"},{"a":55866,"t":"code","b":[175],"m":"xor","o":"a"},{"a":55867,"t":"code","b":[201],"m":"ret","x":[55864]},{"a":55868,"l":"break_trap","c":"Where a BASIC error comes first (input_init puts this address where ERR_SP points). Error code $14 (\"L BREAK into program\") is ignored unless the escape is allowed: the trap puts itself back and carries on with the next statement at the ROM's STMT-R-1 ($1B7D). Any other error, or BREAK when allowed, switches to interrupt mode 1 and goes to the ROM's error report at $1303.","t":"code","b":[253,126,0],"m":"ld","o":"a,(iy+$00)"},{"a":55871,"t":"code","b":[254,20],"m":"cp","o":"$14"},{"a":55873,"t":"code","b":[32,12],"m":"jr","oa":55887,"o":"nz,$DA4F"},{"a":55875,"t":"code","b":[221,229],"m":"push","o":"ix"},{"a":55877,"t":"code","b":[221,33,180,210],"m":"ld","o":"ix,$D2B4"},{"a":55881,"t":"code","b":[221,203,0,126],"m":"bit","o":"7,(ix+$00)"},{"a":55885,"t":"code","b":[40,7],"m":"jr","oa":55894,"o":"z,$DA56"},{"a":55887,"t":"code","b":[237,86],"m":"im","o":"1","x":[55873]},{"a":55889,"t":"code","b":[221,225],"m":"pop","o":"ix"},{"a":55891,"t":"code","b":[195,3,19],"m":"jp","oa":4867,"o":"$1303"},{"a":55894,"t":"code","b":[221,33,60,218],"m":"ld","o":"ix,$DA3C","x":[55885]},{"a":55898,"t":"code","b":[221,227],"m":"ex","o":"(sp),ix"},{"a":55900,"t":"code","b":[195,125,27],"m":"jp","oa":7037,"o":"$1B7D"},{"a":55903,"l":"stale_da5f","c":"Unused: 11 bytes that nothing reaches, the end of an older copy of cursor_text and print_chars ($5F,$15,$00, then LD A,(HL) / INC HL / PUSH HL / PUSH BC / RST $10 / POP BC / POP HL / DJNZ).","t":"byte","b":[95,21,0,126,35,229,197,215]},{"a":55911,"t":"byte","b":[193,225,16]},{"a":55914,"l":"shade_sky","c":"Shades the top six character rows, the sky, from the cell in HL: shade_area with a size of 6 rows by 32 columns.","t":"code","b":[17,32,6],"m":"ld","o":"de,$0620","x":[58726,58840]},{"a":55917,"l":"shade_area","c":"Shades a block of character cells, row H and column L, D rows by E columns: each pixel line is ANDed with $55 and $AA in turn, which leaves a checkerboard of what was drawn there, half its pixels.","t":"code","b":[125],"m":"ld","o":"a,l","x":[57808,59265]},{"a":55918,"t":"code","b":[50,150,218],"m":"ld","oa":55958,"o":"($DA96),a"},{"a":55921,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":55922,"t":"code","b":[50,145,218],"m":"ld","oa":55953,"o":"($DA91),a"},{"a":55925,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":55926,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":55927,"t":"code","b":[50,154,218],"m":"ld","oa":55962,"o":"($DA9A),a"},{"a":55930,"t":"code","b":[68],"m":"ld","o":"b,h","x":[55954,55963]},{"a":55931,"t":"code","b":[77],"m":"ld","o":"c,l"},{"a":55932,"t":"code","b":[205,158,218],"m":"call","oa":55966,"o":"cell_address"},{"a":55935,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":55936,"t":"code","b":[6,8],"m":"ld","o":"b,$08"},{"a":55938,"t":"code","b":[14,85],"m":"ld","o":"c,$55"},{"a":55940,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[55947]},{"a":55941,"t":"code","b":[161],"m":"and","o":"c"},{"a":55942,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":55943,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":55944,"t":"code","b":[47],"m":"cpl"},{"a":55945,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":55946,"t":"code","b":[36],"m":"inc","o":"h"},{"a":55947,"t":"code","b":[16,247],"m":"djnz","oa":55940,"o":"$DA84"},{"a":55949,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":55950,"t":"code","b":[44],"m":"inc","o":"l"},{"a":55951,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":55952,"t":"code","b":[254,32],"m":"cp","o":"$20"},{"a":55954,"t":"code","b":[194,122,218],"m":"jp","oa":55930,"o":"nz,$DA7A"},{"a":55957,"t":"code","b":[46,0],"m":"ld","o":"l,$00"},{"a":55959,"t":"code","b":[36],"m":"inc","o":"h"},{"a":55960,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":55961,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":55963,"t":"code","b":[32,221],"m":"jr","oa":55930,"o":"nz,$DA7A"},{"a":55965,"t":"code","b":[201],"m":"ret"},{"a":55966,"l":"cell_address","c":"DE = the screen address of the top pixel line of the character cell at row B, column C (rows 0-23).","t":"code","b":[120],"m":"ld","o":"a,b","x":[55932,56856,57368,64408]},{"a":55967,"t":"code","b":[245],"m":"push","o":"af"},{"a":55968,"t":"code","b":[230,24],"m":"and","o":"$18"},{"a":55970,"t":"code","b":[246,64],"m":"or","o":"$40"},{"a":55972,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":55973,"t":"code","b":[241],"m":"pop","o":"af"},{"a":55974,"t":"code","b":[15],"m":"rrca"},{"a":55975,"t":"code","b":[15],"m":"rrca"},{"a":55976,"t":"code","b":[15],"m":"rrca"},{"a":55977,"t":"code","b":[230,224],"m":"and","o":"$E0"},{"a":55979,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":55980,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":55981,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":55982,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":55983,"t":"code","b":[201],"m":"ret"},{"a":55984,"l":"rng_state","c":"The 32-bit state of random, low byte first. The scene drawers read its bytes as random numbers; seed_random sets it from the location before a picture is drawn, so a location always looks the same.","t":"byte","b":[18,132,46,41],"x":[56100,56340,56894,57859,58390,58947,63505,64537,64750]},{"a":55988,"l":"random","c":"Steps the shift register in rng_state 16 times: each step the new bit is the exclusive or of two bits of the top byte (bits 3 and 6 of $DAB3), shifted in at the bottom, and bit 7 of the top byte is kept clear.","t":"code","b":[6,16],"m":"ld","o":"b,$10","x":[56097,56336,56918,57158,57656,57855,58380,58790,58867,58870,63502,64523,64734]},{"a":55990,"t":"code","b":[33,179,218],"m":"ld","o":"hl,$DAB3"},{"a":55993,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":55994,"t":"code","b":[31],"m":"rra","x":[56024]},{"a":55995,"t":"code","b":[31],"m":"rra"},{"a":55996,"t":"code","b":[31],"m":"rra"},{"a":55997,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":55999,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56000,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":56001,"t":"code","b":[7],"m":"rlca"},{"a":56002,"t":"code","b":[7],"m":"rlca"},{"a":56003,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":56005,"t":"code","b":[169],"m":"xor","o":"c"},{"a":56006,"t":"code","b":[31],"m":"rra"},{"a":56007,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":56008,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":56009,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":56010,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56011,"t":"code","b":[6,3],"m":"ld","o":"b,$03"},{"a":56013,"t":"code","b":[203,22],"m":"rl","o":"(hl)","x":[56016]},{"a":56015,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":56016,"t":"code","b":[16,251],"m":"djnz","oa":56013,"o":"$DACD"},{"a":56018,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56019,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":56020,"t":"code","b":[23],"m":"rla"},{"a":56021,"t":"code","b":[230,127],"m":"and","o":"$7F"},{"a":56023,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":56024,"t":"code","b":[16,224],"m":"djnz","oa":55994,"o":"$DABA"},{"a":56026,"t":"code","b":[201],"m":"ret"},{"a":56027,"l":"draw_ridge","c":"Draws a skyline across the whole width, 256 columns from x = 0: six bytes follow the CALL (the routine returns past them), giving how many columns share a height, the longest run in one direction, counted in columns, the lowest and highest y, the spread of a step and the starting y. A run's step moves the height as the run starts and again every time a height's columns are done, so where a run ends on a step the height moves twice between two columns. Each column is filled from its height down to the y in fill_bottom with fill_column (or one pixel drawn, after toggle_ridge_fill).","t":"code","b":[225],"m":"pop","o":"hl","x":[57793,57814,57823,57832,57841,58264,58273,58299,58325,58334,58461,58587,58665,58689,58714,58729,58744,58828,58843,58857]},{"a":56028,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":56029,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":56030,"t":"code","b":[1,6,0],"m":"ld","o":"bc,$0006"},{"a":56033,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":56034,"t":"code","b":[229],"m":"push","o":"hl"},{"a":56035,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56036,"t":"code","b":[237,115,110,222],"m":"ld","oa":56942,"o":"($DE6E),sp"},{"a":56040,"t":"code","b":[249],"m":"ld","o":"sp,hl"},{"a":56041,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56042,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56043,"t":"code","b":[209],"m":"pop","o":"de"},{"a":56044,"t":"code","b":[237,123,110,222],"m":"ld","oa":56942,"o":"sp,($DE6E)"},{"a":56048,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":56049,"t":"code","b":[50,42,219],"m":"ld","oa":56106,"o":"($DB2A),a"},{"a":56052,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56055,"t":"code","b":[50,40,219],"m":"ld","oa":56104,"o":"($DB28),a"},{"a":56058,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56059,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56060,"t":"code","b":[50,67,219],"m":"ld","oa":56131,"o":"($DB43),a"},{"a":56063,"t":"code","b":[50,128,219],"m":"ld","oa":56192,"o":"($DB80),a"},{"a":56066,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56067,"t":"code","b":[50,71,219],"m":"ld","oa":56135,"o":"($DB47),a"},{"a":56070,"t":"code","b":[50,132,219],"m":"ld","oa":56196,"o":"($DB84),a"},{"a":56073,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":56074,"t":"code","b":[50,106,219],"m":"ld","oa":56170,"o":"(ridge_y),a"},{"a":56077,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56078,"t":"code","b":[203,63],"m":"srl","o":"a"},{"a":56080,"t":"code","b":[50,57,219],"m":"ld","oa":56121,"o":"($DB39),a"},{"a":56083,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56084,"t":"code","b":[50,53,219],"m":"ld","oa":56117,"o":"($DB35),a"},{"a":56087,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56090,"t":"code","b":[50,51,219],"m":"ld","oa":56115,"o":"($DB33),a"},{"a":56093,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":56094,"t":"code","b":[50,78,219],"m":"ld","oa":56142,"o":"($DB4E),a"},{"a":56097,"l":"ridge_new_run","c":"Picks a new run: a length (random below the limit, plus one) and a step (random below the spread, less half the spread), retrying until the height moved by that step is inside the limits, and moves it at once, before the run's first column.","t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[56107,56118,56132,56136,56167,56193,56197,56205]},{"a":56100,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":56103,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":56105,"t":"code","b":[254,10],"m":"cp","o":"$0A"},{"a":56107,"t":"code","b":[48,244],"m":"jr","oa":56097,"o":"nc,ridge_new_run"},{"a":56109,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56110,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56111,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":56114,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":56116,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":56118,"t":"code","b":[48,233],"m":"jr","oa":56097,"o":"nc,ridge_new_run"},{"a":56120,"t":"code","b":[214,1],"m":"sub","o":"$01"},{"a":56122,"t":"code","b":[50,126,219],"m":"ld","oa":56190,"o":"($DB7E),a"},{"a":56125,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":56126,"t":"code","b":[58,106,219],"m":"ld","oa":56170,"o":"a,(ridge_y)"},{"a":56129,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":56130,"t":"code","b":[254,156],"m":"cp","o":"$9C"},{"a":56132,"t":"code","b":[48,219],"m":"jr","oa":56097,"o":"nc,ridge_new_run"},{"a":56134,"t":"code","b":[254,129],"m":"cp","o":"$81"},{"a":56136,"t":"code","b":[56,215],"m":"jr","oa":56097,"o":"c,ridge_new_run"},{"a":56138,"t":"code","b":[50,106,219],"m":"ld","oa":56170,"o":"(ridge_y),a"},{"a":56141,"l":"ridge_columns","c":"Draws the columns of one step at the current height; ends when x wraps past 255.","t":"code","b":[22,3],"m":"ld","o":"d,$03","x":[56203]},{"a":56143,"t":"code","b":[58,106,219],"m":"ld","oa":56170,"o":"a,(ridge_y)","x":[56165]},{"a":56146,"t":"code","b":[213],"m":"push","o":"de"},{"a":56147,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56148,"t":"code","b":[58,107,219],"m":"ld","oa":56171,"o":"a,($DB6B)"},{"a":56151,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56152,"t":"code","b":[205,144,219],"m":"call","oa":56208,"o":"fill_column"},{"a":56155,"t":"code","b":[209],"m":"pop","o":"de"},{"a":56156,"t":"code","b":[33,107,219],"m":"ld","o":"hl,$DB6B"},{"a":56159,"t":"code","b":[52],"m":"inc","o":"(hl)"},{"a":56160,"t":"code","b":[200],"m":"ret","o":"z"},{"a":56161,"t":"code","b":[21],"m":"dec","o":"d"},{"a":56162,"t":"code","b":[40,22],"m":"jr","oa":56186,"o":"z,ridge_step"},{"a":56164,"t":"code","b":[29],"m":"dec","o":"e"},{"a":56165,"t":"code","b":[32,232],"m":"jr","oa":56143,"o":"nz,$DB4F"},{"a":56167,"t":"code","b":[195,33,219],"m":"jp","oa":56097,"o":"ridge_new_run"},{"a":56170,"l":"ridge_y","c":"draw_ridge's current height (y, counted up from the bottom of the upper screen as PLOT counts it) and, at $DB6B, its column, which wraps to 0 at the end of each skyline.","t":"byte","b":[150,0],"x":[56074,56126,56138,56143,56186,56199]},{"a":56172,"l":"bit_mask","c":"A = the mask of every bit up to the highest set bit of A ($0A gives $0F): the random-number users AND a random byte with it and retry while the result is too big.","t":"code","b":[197],"m":"push","o":"bc","x":[56052,56087,56311,56321,56398,56409,56529]},{"a":56173,"t":"code","b":[14,255],"m":"ld","o":"c,$FF"},{"a":56175,"t":"code","b":[7],"m":"rlca","x":[56180]},{"a":56176,"t":"code","b":[56,5],"m":"jr","oa":56183,"o":"c,$DB77"},{"a":56178,"t":"code","b":[203,57],"m":"srl","o":"c"},{"a":56180,"t":"code","b":[195,111,219],"m":"jp","oa":56175,"o":"$DB6F"},{"a":56183,"t":"code","b":[121],"m":"ld","o":"a,c","x":[56176]},{"a":56184,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56185,"t":"code","b":[201],"m":"ret"},{"a":56186,"l":"ridge_step","c":"The end of a step: moves the height by the run's step, if that stays inside the limits, and counts down the run.","t":"code","b":[58,106,219],"m":"ld","oa":56170,"o":"a,(ridge_y)","x":[56162]},{"a":56189,"t":"code","b":[198,1],"m":"add","o":"a,$01"},{"a":56191,"t":"code","b":[254,156],"m":"cp","o":"$9C"},{"a":56193,"t":"code","b":[48,158],"m":"jr","oa":56097,"o":"nc,ridge_new_run"},{"a":56195,"t":"code","b":[254,129],"m":"cp","o":"$81"},{"a":56197,"t":"code","b":[56,154],"m":"jr","oa":56097,"o":"c,ridge_new_run"},{"a":56199,"t":"code","b":[50,106,219],"m":"ld","oa":56170,"o":"(ridge_y),a"},{"a":56202,"t":"code","b":[29],"m":"dec","o":"e"},{"a":56203,"t":"code","b":[32,192],"m":"jr","oa":56141,"o":"nz,ridge_columns"},{"a":56205,"t":"code","b":[195,33,219],"m":"jp","oa":56097,"o":"ridge_new_run"},{"a":56208,"l":"fill_column","c":"Draws a vertical line in column C from y = B down to the y held in fill_bottom, the operand of the LD D at $DB90 (the scene drawers set it: $80 by default, the bottom of the sky; $28 for the forest and the cave floor, $50 for the lakes' shore, $68 for the mountains).","t":"code","b":[22,128],"m":"ld","o":"d,$80","x":[56152]},{"a":56210,"t":"code","b":[121],"m":"ld","o":"a,c","x":[59317]},{"a":56211,"t":"code","b":[50,161,219],"m":"ld","oa":56225,"o":"($DBA1),a"},{"a":56214,"t":"code","b":[21],"m":"dec","o":"d"},{"a":56215,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":56216,"t":"code","b":[50,165,219],"m":"ld","oa":56229,"o":"($DBA5),a"},{"a":56219,"t":"code","b":[96],"m":"ld","o":"h,b","x":[56230]},{"a":56220,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56223,"t":"code","b":[68],"m":"ld","o":"b,h"},{"a":56224,"t":"code","b":[14,255],"m":"ld","o":"c,$FF"},{"a":56226,"t":"code","b":[5],"m":"dec","o":"b"},{"a":56227,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56228,"t":"code","b":[254,127],"m":"cp","o":"$7F"},{"a":56230,"t":"code","b":[194,155,219],"m":"jp","oa":56219,"o":"nz,$DB9B"},{"a":56233,"t":"code","b":[201],"m":"ret"},{"a":56234,"l":"plot_pixel","c":"Plots the pixel at x = C, y = B in PLOT's coordinates (y counted up from row 21), straight into the screen without touching the attributes. The instruction at $DBDA is rewritten by set_plot_xor, set_plot_or and set_plot_test, and directly by fill_shape, so the pixel is flipped (XOR, the default), set (OR), or only tested (AND, Z when clear).","t":"code","b":[17,0,0],"m":"ld","o":"de,$0000","x":[56220,56364,56570,56609,56727,56784,57912,57931,58074]},{"a":56237,"t":"code","b":[62,175],"m":"ld","o":"a,$AF"},{"a":56239,"t":"code","b":[144],"m":"sub","o":"b"},{"a":56240,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56241,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":56243,"t":"code","b":[246,64],"m":"or","o":"$40"},{"a":56245,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56246,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56247,"t":"code","b":[230,192],"m":"and","o":"$C0"},{"a":56249,"t":"code","b":[31],"m":"rra"},{"a":56250,"t":"code","b":[31],"m":"rra"},{"a":56251,"t":"code","b":[31],"m":"rra"},{"a":56252,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":56253,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":56254,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56255,"t":"code","b":[230,56],"m":"and","o":"$38"},{"a":56257,"t":"code","b":[23],"m":"rla"},{"a":56258,"t":"code","b":[23],"m":"rla"},{"a":56259,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56260,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56261,"t":"code","b":[230,248],"m":"and","o":"$F8"},{"a":56263,"t":"code","b":[31],"m":"rra"},{"a":56264,"t":"code","b":[31],"m":"rra"},{"a":56265,"t":"code","b":[31],"m":"rra"},{"a":56266,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":56267,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56268,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56269,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":56271,"t":"code","b":[7],"m":"rlca"},{"a":56272,"t":"code","b":[7],"m":"rlca"},{"a":56273,"t":"code","b":[7],"m":"rlca"},{"a":56274,"t":"code","b":[47],"m":"cpl"},{"a":56275,"t":"code","b":[50,216,219],"m":"ld","oa":56280,"o":"($DBD8),a"},{"a":56278,"t":"code","b":[175],"m":"xor","o":"a"},{"a":56279,"t":"code","b":[203,199],"m":"set","o":"0,a"},{"a":56281,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56282,"t":"code","b":[174],"m":"xor","o":"(hl)","x":[56685,56724,56733]},{"a":56283,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":56284,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56285,"t":"code","b":[201],"m":"ret"},{"a":56286,"l":"scatter_dots","c":"Scatters dots: six bytes follow the CALL, the number of dots, the lowest y and x, and the ranges of y and x. Each dot is a random position in the box, drawn by the routine whose address is at $DC2D: plot_pixel, or the stroke and dash drawers that borrow this loop.","t":"code","b":[225],"m":"pop","o":"hl","x":[58003,58012,58346,58355,58364,58508,58517,58559,58637,58674,58778,58907]},{"a":56287,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":56288,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":56289,"t":"code","b":[1,6,0],"m":"ld","o":"bc,$0006"},{"a":56292,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":56293,"t":"code","b":[229],"m":"push","o":"hl"},{"a":56294,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56295,"t":"code","b":[237,115,110,222],"m":"ld","oa":56942,"o":"($DE6E),sp"},{"a":56299,"t":"code","b":[249],"m":"ld","o":"sp,hl"},{"a":56300,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56301,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56302,"t":"code","b":[209],"m":"pop","o":"de"},{"a":56303,"t":"code","b":[237,123,110,222],"m":"ld","oa":56942,"o":"sp,($DE6E)"},{"a":56307,"l":"scatter_box","c":"scatter_dots with the box in registers: HL dots, x from B over a range of D, y from C over a range of E.","t":"code","b":[122],"m":"ld","o":"a,d","x":[56432,56548,57431,57592,57615,57639,57978,57996,58818]},{"a":56308,"t":"code","b":[50,26,220],"m":"ld","oa":56346,"o":"($DC1A),a"},{"a":56311,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56314,"t":"code","b":[50,24,220],"m":"ld","oa":56344,"o":"($DC18),a"},{"a":56317,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56318,"t":"code","b":[50,38,220],"m":"ld","oa":56358,"o":"($DC26),a"},{"a":56321,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56324,"t":"code","b":[50,36,220],"m":"ld","oa":56356,"o":"($DC24),a"},{"a":56327,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56328,"t":"code","b":[50,30,220],"m":"ld","oa":56350,"o":"($DC1E),a"},{"a":56331,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56332,"t":"code","b":[50,42,220],"m":"ld","oa":56362,"o":"($DC2A),a"},{"a":56335,"t":"code","b":[229],"m":"push","o":"hl","x":[56347,56359,56373,56522,56591]},{"a":56336,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random"},{"a":56339,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56340,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":56343,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":56345,"t":"code","b":[254,8],"m":"cp","o":"$08"},{"a":56347,"t":"code","b":[48,242],"m":"jr","oa":56335,"o":"nc,$DC0F"},{"a":56349,"t":"code","b":[198,192],"m":"add","o":"a,$C0"},{"a":56351,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56352,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":56355,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":56357,"t":"code","b":[254,8],"m":"cp","o":"$08"},{"a":56359,"t":"code","b":[48,230],"m":"jr","oa":56335,"o":"nc,$DC0F"},{"a":56361,"t":"code","b":[198,152],"m":"add","o":"a,$98"},{"a":56363,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56364,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56367,"t":"code","b":[17,1,0],"m":"ld","o":"de,$0001"},{"a":56370,"t":"code","b":[167],"m":"and","o":"a"},{"a":56371,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":56373,"t":"code","b":[194,15,220],"m":"jp","oa":56335,"o":"nz,$DC0F"},{"a":56376,"t":"code","b":[201],"m":"ret"},{"a":56377,"l":"scatter_strokes","c":"Scatters IX short strokes, grass and reeds: x from B over D, y from C over E; each stroke rises 1 to H+1 pixels and leans up to L/2 pixels to either side, drawn by the ROM's DRAW ($24BA) with the attribute byte ATTR_T set to $20 (green paper) and put back after.","t":"code","b":[58,143,92],"m":"ld","oa":23695,"o":"a,($5C8F)","x":[58489,58505,58609]},{"a":56380,"t":"code","b":[50,135,220],"m":"ld","oa":56455,"o":"($DC87),a"},{"a":56383,"t":"code","b":[217],"m":"exx"},{"a":56384,"t":"code","b":[34,133,220],"m":"ld","oa":56453,"o":"(saved_hl_alt),hl"},{"a":56387,"t":"code","b":[217],"m":"exx"},{"a":56388,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":56389,"t":"code","b":[50,146,220],"m":"ld","oa":56466,"o":"($DC92),a"},{"a":56392,"t":"code","b":[203,63],"m":"srl","o":"a"},{"a":56394,"t":"code","b":[50,150,220],"m":"ld","oa":56470,"o":"($DC96),a"},{"a":56397,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":56398,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56401,"t":"code","b":[50,144,220],"m":"ld","oa":56464,"o":"($DC90),a"},{"a":56404,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":56405,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56406,"t":"code","b":[50,183,220],"m":"ld","oa":56503,"o":"($DCB7),a"},{"a":56409,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56412,"t":"code","b":[50,181,220],"m":"ld","oa":56501,"o":"($DCB5),a"},{"a":56415,"t":"code","b":[221,229],"m":"push","o":"ix"},{"a":56417,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56418,"t":"code","b":[50,174,220],"m":"ld","oa":56494,"o":"($DCAE),a"},{"a":56421,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":56422,"t":"code","b":[50,170,220],"m":"ld","oa":56490,"o":"($DCAA),a"},{"a":56425,"t":"code","b":[33,136,220],"m":"ld","o":"hl,$DC88"},{"a":56428,"t":"code","b":[34,45,220],"m":"ld","oa":56365,"o":"($DC2D),hl"},{"a":56431,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56432,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":56435,"t":"code","b":[33,170,219],"m":"ld","o":"hl,$DBAA"},{"a":56438,"t":"code","b":[34,45,220],"m":"ld","oa":56365,"o":"($DC2D),hl"},{"a":56441,"t":"code","b":[217],"m":"exx"},{"a":56442,"t":"code","b":[42,133,220],"m":"ld","oa":56453,"o":"hl,(saved_hl_alt)"},{"a":56445,"t":"code","b":[217],"m":"exx"},{"a":56446,"t":"code","b":[58,135,220],"m":"ld","oa":56455,"o":"a,($DC87)"},{"a":56449,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":56452,"t":"code","b":[201],"m":"ret"},{"a":56453,"l":"saved_hl_alt","c":"scatter_strokes keeps here the HL' that the ROM's calculator must find unchanged on the return to BASIC ($DC85), and the attribute ATTR_T it overrides ($DC87).","t":"byte","b":[88,39,56],"x":[56384,56442]},{"a":56456,"l":"draw_stroke","c":"One stroke for scatter_strokes: sets the ROM's COORDS to the dot, picks a lean and a length from rng_state and draws the line up from it; a stroke whose top would lean outside the box's x range is retried at another position (its height is not checked against the box).","t":"code","b":[237,67,125,92],"m":"ld","oa":23677,"o":"($5C7D),bc"},{"a":56460,"t":"code","b":[58,179,218],"m":"ld","oa":55987,"o":"a,($DAB3)"},{"a":56463,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":56465,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":56467,"t":"code","b":[48,52],"m":"jr","oa":56521,"o":"nc,$DCC9"},{"a":56469,"t":"code","b":[214,1],"m":"sub","o":"$01"},{"a":56471,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":56472,"t":"code","b":[250,160,220],"m":"jp","oa":56480,"o":"m,$DCA0"},{"a":56475,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":56477,"t":"code","b":[195,164,220],"m":"jp","oa":56484,"o":"$DCA4"},{"a":56480,"t":"code","b":[30,255],"m":"ld","o":"e,$FF","x":[56472]},{"a":56482,"t":"code","b":[237,68],"m":"neg"},{"a":56484,"t":"code","b":[79],"m":"ld","o":"c,a","x":[56477]},{"a":56485,"t":"code","b":[58,125,92],"m":"ld","oa":23677,"o":"a,($5C7D)"},{"a":56488,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":56489,"t":"code","b":[254,254],"m":"cp","o":"$FE"},{"a":56491,"t":"code","b":[48,28],"m":"jr","oa":56521,"o":"nc,$DCC9"},{"a":56493,"t":"code","b":[254,0],"m":"cp","o":"$00"},{"a":56495,"t":"code","b":[56,24],"m":"jr","oa":56521,"o":"c,$DCC9"},{"a":56497,"t":"code","b":[58,179,218],"m":"ld","oa":55987,"o":"a,($DAB3)"},{"a":56500,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":56502,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":56504,"t":"code","b":[48,15],"m":"jr","oa":56521,"o":"nc,$DCC9"},{"a":56506,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56507,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56508,"t":"code","b":[22,1],"m":"ld","o":"d,$01"},{"a":56510,"t":"code","b":[229],"m":"push","o":"hl"},{"a":56511,"t":"code","b":[62,32],"m":"ld","o":"a,$20"},{"a":56513,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":56516,"t":"code","b":[205,186,36],"m":"call","oa":9402,"o":"$24BA"},{"a":56519,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56520,"t":"code","b":[201],"m":"ret"},{"a":56521,"t":"code","b":[241],"m":"pop","o":"af","x":[56467,56491,56495,56504]},{"a":56522,"t":"code","b":[195,15,220],"m":"jp","oa":56335,"o":"$DC0F"},{"a":56525,"l":"scatter_dashes","c":"Scatters HL horizontal dashes, ripples and furrows, of 1 to A+1 pixels: x from B over D, y from C over E, each dash running right and stopping at the right edge of the box; a dash cut short there is not counted, so another is drawn in its place.","t":"code","b":[60],"m":"inc","o":"a","x":[58258,58454,58579,58634,58965,59053]},{"a":56526,"t":"code","b":[50,244,220],"m":"ld","oa":56564,"o":"($DCF4),a"},{"a":56529,"t":"code","b":[205,108,219],"m":"call","oa":56172,"o":"bit_mask"},{"a":56532,"t":"code","b":[50,242,220],"m":"ld","oa":56562,"o":"($DCF2),a"},{"a":56535,"t":"code","b":[229],"m":"push","o":"hl"},{"a":56536,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56537,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":56538,"t":"code","b":[50,3,221],"m":"ld","oa":56579,"o":"($DD03),a"},{"a":56541,"t":"code","b":[33,238,220],"m":"ld","o":"hl,$DCEE"},{"a":56544,"t":"code","b":[34,45,220],"m":"ld","oa":56365,"o":"($DC2D),hl"},{"a":56547,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56548,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":56551,"t":"code","b":[33,170,219],"m":"ld","o":"hl,$DBAA"},{"a":56554,"t":"code","b":[34,45,220],"m":"ld","oa":56365,"o":"($DC2D),hl"},{"a":56557,"t":"code","b":[201],"m":"ret"},{"a":56558,"l":"draw_dash","c":"One dash for scatter_dashes: its length from rng_state, then one pixel at a time to the right.","t":"code","b":[58,178,218],"m":"ld","oa":55986,"o":"a,($DAB2)"},{"a":56561,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":56563,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":56565,"t":"code","b":[48,23],"m":"jr","oa":56590,"o":"nc,$DD0E"},{"a":56567,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56568,"t":"code","b":[245],"m":"push","o":"af","x":[56585]},{"a":56569,"t":"code","b":[197],"m":"push","o":"bc"},{"a":56570,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56573,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56574,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56575,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56576,"t":"code","b":[56,11],"m":"jr","oa":56589,"o":"c,$DD0D"},{"a":56578,"t":"code","b":[254,254],"m":"cp","o":"$FE"},{"a":56580,"t":"code","b":[48,7],"m":"jr","oa":56589,"o":"nc,$DD0D"},{"a":56582,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56583,"t":"code","b":[241],"m":"pop","o":"af"},{"a":56584,"t":"code","b":[61],"m":"dec","o":"a"},{"a":56585,"t":"code","b":[194,248,220],"m":"jp","oa":56568,"o":"nz,$DCF8"},{"a":56588,"t":"code","b":[201],"m":"ret"},{"a":56589,"t":"code","b":[241],"m":"pop","o":"af","x":[56576,56580]},{"a":56590,"t":"code","b":[241],"m":"pop","o":"af","x":[56565]},{"a":56591,"t":"code","b":[195,15,220],"m":"jp","oa":56335,"o":"$DC0F"},{"a":56594,"l":"draw_glyph","c":"Draws the 8 by 8 pattern at HL with plot_pixel, its bottom row at y = B and left edge at x = C: the eight bytes are read from the last to the first, one set bit at a time, so a glyph can sit at any pixel position.","t":"code","b":[17,7,0],"m":"ld","o":"de,$0007","x":[61775,61899,62010,62255,62606,62997,63013,63031,63066,63716,63919,64361,64431,64489,64511,64765,64843,64856,64905]},{"a":56597,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":56598,"t":"code","b":[28],"m":"inc","o":"e"},{"a":56599,"t":"code","b":[213],"m":"push","o":"de","x":[56630]},{"a":56600,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":56601,"t":"code","b":[30,128],"m":"ld","o":"e,$80"},{"a":56603,"t":"code","b":[122],"m":"ld","o":"a,d","x":[56619]},{"a":56604,"t":"code","b":[163],"m":"and","o":"e"},{"a":56605,"t":"code","b":[40,7],"m":"jr","oa":56614,"o":"z,$DD26"},{"a":56607,"t":"code","b":[213],"m":"push","o":"de"},{"a":56608,"t":"code","b":[197],"m":"push","o":"bc"},{"a":56609,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56612,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56613,"t":"code","b":[209],"m":"pop","o":"de"},{"a":56614,"t":"code","b":[203,59],"m":"srl","o":"e","x":[56605]},{"a":56616,"t":"code","b":[56,4],"m":"jr","oa":56622,"o":"c,$DD2E"},{"a":56618,"t":"code","b":[12],"m":"inc","o":"c"},{"a":56619,"t":"code","b":[195,27,221],"m":"jp","oa":56603,"o":"$DD1B"},{"a":56622,"t":"code","b":[121],"m":"ld","o":"a,c","x":[56616]},{"a":56623,"t":"code","b":[214,7],"m":"sub","o":"$07"},{"a":56625,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56626,"t":"code","b":[4],"m":"inc","o":"b"},{"a":56627,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":56628,"t":"code","b":[209],"m":"pop","o":"de"},{"a":56629,"t":"code","b":[29],"m":"dec","o":"e"},{"a":56630,"t":"code","b":[194,23,221],"m":"jp","oa":56599,"o":"nz,$DD17"},{"a":56633,"t":"code","b":[201],"m":"ret"},{"a":56634,"l":"paint_land","c":"Paints the land, rows 6 to 16, all 32 columns, with the attribute in A.","t":"code","b":[17,32,11],"m":"ld","o":"de,$0B20","x":[57785,58228,58311,58473,58540,58649,58770]},{"a":56637,"l":"paint_rows","c":"Paints rows from 6, D rows by E columns, with the attribute in A.","t":"code","b":[33,0,6],"m":"ld","o":"hl,$0600","x":[58026,58236,58244,58319,58548,58556,58657]},{"a":56640,"l":"paint_box","c":"Fills the attributes of a block of cells, row H, column L, D rows by E columns, with the attribute in C (from A).","t":"code","b":[79],"m":"ld","o":"c,a","x":[57133,58037,58048,58150,58293,58535,58620,58923,58935,64579]},{"a":56641,"t":"code","b":[213],"m":"push","o":"de"},{"a":56642,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":56643,"t":"code","b":[17,0,22],"m":"ld","o":"de,$1600"},{"a":56646,"t":"code","b":[7],"m":"rlca"},{"a":56647,"t":"code","b":[7],"m":"rlca"},{"a":56648,"t":"code","b":[7],"m":"rlca"},{"a":56649,"t":"code","b":[167],"m":"and","o":"a"},{"a":56650,"t":"code","b":[23],"m":"rla"},{"a":56651,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":56653,"t":"code","b":[23],"m":"rla"},{"a":56654,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":56656,"t":"code","b":[133],"m":"add","o":"a,l"},{"a":56657,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56658,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":56659,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56660,"t":"code","b":[66],"m":"ld","o":"b,d"},{"a":56661,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":56663,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56664,"t":"code","b":[113],"m":"ld","o":"(hl),c","x":[56669,56679]},{"a":56665,"t":"code","b":[29],"m":"dec","o":"e"},{"a":56666,"t":"code","b":[40,4],"m":"jr","oa":56672,"o":"z,$DD60"},{"a":56668,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":56669,"t":"code","b":[195,88,221],"m":"jp","oa":56664,"o":"$DD58"},{"a":56672,"t":"code","b":[95],"m":"ld","o":"e,a","x":[56666]},{"a":56673,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":56675,"t":"code","b":[30,33],"m":"ld","o":"e,$21"},{"a":56677,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":56678,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56679,"t":"code","b":[16,239],"m":"djnz","oa":56664,"o":"$DD58"},{"a":56681,"t":"code","b":[201],"m":"ret"},{"a":56682,"l":"set_plot_xor","c":"plot_pixel flips its pixel: XOR (HL), LD (HL),A at $DBDA.","t":"code","b":[33,174,119],"m":"ld","o":"hl,$77AE","x":[61127,61348,62004,62237,63320,63550,63583,63702,64309,64317,64472]},{"a":56685,"t":"code","b":[34,218,219],"m":"ld","oa":56282,"o":"($DBDA),hl","x":[56692,56697]},{"a":56688,"t":"code","b":[201],"m":"ret"},{"a":56689,"l":"set_plot_or","c":"plot_pixel sets its pixel: OR (HL), LD (HL),A.","t":"code","b":[33,182,119],"m":"ld","o":"hl,$77B6","x":[57922,57944,58066,64229,64492,64985,65050]},{"a":56692,"t":"code","b":[24,247],"m":"jr","oa":56685,"o":"$DD6D"},{"a":56694,"l":"set_plot_test","c":"plot_pixel only tests its pixel: AND (HL) and a NOP, so A is the pixel's bit and Z means clear.","t":"code","b":[33,166,0],"m":"ld","o":"hl,$00A6","x":[57908]},{"a":56697,"t":"code","b":[24,242],"m":"jr","oa":56685,"o":"$DD6D"},{"a":56699,"l":"fill_shape","c":"Fills the inside of outlines, column by column, from x = H to x = L: going down from y = E to y = D + 1 (y = D itself is not reached), each set pixel met turns filling on or off, and pixels are set while it is on. A gives the state each column starts in.","t":"code","b":[50,215,221],"m":"ld","oa":56791,"o":"(fill_state),a","x":[57893,59198,59256]},{"a":56702,"t":"code","b":[50,216,221],"m":"ld","oa":56792,"o":"($DDD8),a"},{"a":56705,"t":"code","b":[44],"m":"inc","o":"l"},{"a":56706,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":56707,"t":"code","b":[50,191,221],"m":"ld","oa":56767,"o":"($DDBF),a"},{"a":56710,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":56711,"t":"code","b":[50,187,221],"m":"ld","oa":56763,"o":"($DDBB),a"},{"a":56714,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56715,"t":"code","b":[76],"m":"ld","o":"c,h"},{"a":56716,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":56717,"t":"code","b":[50,172,221],"m":"ld","oa":56748,"o":"($DDAC),a"},{"a":56720,"t":"code","b":[197],"m":"push","o":"bc","x":[56752,56770]},{"a":56721,"t":"code","b":[33,166,0],"m":"ld","o":"hl,$00A6"},{"a":56724,"t":"code","b":[34,218,219],"m":"ld","oa":56282,"o":"($DBDA),hl"},{"a":56727,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56730,"t":"code","b":[33,182,119],"m":"ld","o":"hl,$77B6"},{"a":56733,"t":"code","b":[34,218,219],"m":"ld","oa":56282,"o":"($DBDA),hl"},{"a":56736,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56737,"t":"code","b":[32,34],"m":"jr","oa":56773,"o":"nz,$DDC5"},{"a":56739,"t":"code","b":[58,215,221],"m":"ld","oa":56791,"o":"a,(fill_state)","x":[56780]},{"a":56742,"t":"code","b":[167],"m":"and","o":"a"},{"a":56743,"t":"code","b":[32,38],"m":"jr","oa":56783,"o":"nz,$DDCF"},{"a":56745,"t":"code","b":[120],"m":"ld","o":"a,b","x":[56788]},{"a":56746,"t":"code","b":[61],"m":"dec","o":"a"},{"a":56747,"t":"code","b":[254,83],"m":"cp","o":"$53"},{"a":56749,"t":"code","b":[40,4],"m":"jr","oa":56755,"o":"z,$DDB3"},{"a":56751,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56752,"t":"code","b":[195,144,221],"m":"jp","oa":56720,"o":"$DD90"},{"a":56755,"t":"code","b":[58,216,221],"m":"ld","oa":56792,"o":"a,($DDD8)","x":[56749]},{"a":56758,"t":"code","b":[50,215,221],"m":"ld","oa":56791,"o":"(fill_state),a"},{"a":56761,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56762,"t":"code","b":[6,98],"m":"ld","o":"b,$62"},{"a":56764,"t":"code","b":[60],"m":"inc","o":"a"},{"a":56765,"t":"code","b":[216],"m":"ret","o":"c"},{"a":56766,"t":"code","b":[254,255],"m":"cp","o":"$FF"},{"a":56768,"t":"code","b":[208],"m":"ret","o":"nc"},{"a":56769,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56770,"t":"code","b":[195,144,221],"m":"jp","oa":56720,"o":"$DD90"},{"a":56773,"t":"code","b":[58,215,221],"m":"ld","oa":56791,"o":"a,(fill_state)","x":[56737]},{"a":56776,"t":"code","b":[47],"m":"cpl"},{"a":56777,"t":"code","b":[50,215,221],"m":"ld","oa":56791,"o":"(fill_state),a"},{"a":56780,"t":"code","b":[195,163,221],"m":"jp","oa":56739,"o":"$DDA3"},{"a":56783,"t":"code","b":[197],"m":"push","o":"bc","x":[56743]},{"a":56784,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":56787,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56788,"t":"code","b":[195,169,221],"m":"jp","oa":56745,"o":"$DDA9"},{"a":56791,"l":"fill_state","c":"fill_shape's on-off flag for the column being filled, and the state each column starts in.","t":"byte","b":[0,0],"x":[56699,56739,56758,56773,56777]},{"a":56793,"l":"mirror_chars","c":"Mirrors B character patterns at HL left to right, 8B bytes, reversing the bits of each byte.","t":"code","b":[203,32],"m":"sla","o":"b","x":[57347,61519,61608,62185,62540,63882]},{"a":56795,"t":"code","b":[203,32],"m":"sla","o":"b"},{"a":56797,"t":"code","b":[203,32],"m":"sla","o":"b"},{"a":56799,"l":"mirror_bytes","c":"Reverses the bits of B bytes from HL.","t":"code","b":[197],"m":"push","o":"bc","x":[56812]},{"a":56800,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":56801,"t":"code","b":[1,0,8],"m":"ld","o":"bc,$0800"},{"a":56804,"t":"code","b":[23],"m":"rla","x":[56807]},{"a":56805,"t":"code","b":[203,25],"m":"rr","o":"c"},{"a":56807,"t":"code","b":[16,251],"m":"djnz","oa":56804,"o":"$DDE4"},{"a":56809,"t":"code","b":[113],"m":"ld","o":"(hl),c"},{"a":56810,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":56811,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":56812,"t":"code","b":[16,241],"m":"djnz","oa":56799,"o":"mirror_bytes"},{"a":56814,"t":"code","b":[201],"m":"ret"},{"a":56815,"l":"toggle_ridge_fill","c":"Switches draw_ridge between filled hills (each column drawn with fill_column) and a bare outline (one pixel a column, with plot_pixel), by rewriting the CALL at $DB58.","t":"code","b":[58,0,222],"m":"ld","oa":56832,"o":"a,(fill_column_address)","x":[57811,57901,58261,58282,58322,58343,58683,58701]},{"a":56818,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":56819,"t":"code","b":[58,89,219],"m":"ld","oa":56153,"o":"a,($DB59)"},{"a":56822,"t":"code","b":[188],"m":"cp","o":"h"},{"a":56823,"t":"code","b":[40,9],"m":"jr","oa":56834,"o":"z,ridge_outline"},{"a":56825,"t":"code","b":[33,144,219],"m":"ld","o":"hl,$DB90"},{"a":56828,"t":"code","b":[34,89,219],"m":"ld","oa":56153,"o":"($DB59),hl"},{"a":56831,"t":"code","b":[201],"m":"ret"},{"a":56832,"l":"fill_column_address","c":"The address of fill_column, which toggle_ridge_fill compares with the CALL at $DB58.","t":"byte","b":[144,219],"x":[56815]},{"a":56834,"l":"ridge_outline","c":"toggle_ridge_fill's other half: the CALL at $DB58 becomes CALL plot_pixel.","t":"code","b":[33,170,219],"m":"ld","o":"hl,$DBAA","x":[56823]},{"a":56837,"t":"code","b":[34,89,219],"m":"ld","oa":56153,"o":"($DB59),hl"},{"a":56840,"t":"code","b":[201],"m":"ret"},{"a":56841,"l":"clear_box","c":"Clears the pixels of a block of cells, row H, column L, D rows by E columns.","t":"code","b":[125],"m":"ld","o":"a,l","x":[57138]},{"a":56842,"t":"code","b":[50,44,222],"m":"ld","oa":56876,"o":"($DE2C),a"},{"a":56845,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":56846,"t":"code","b":[50,39,222],"m":"ld","oa":56871,"o":"($DE27),a"},{"a":56849,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":56850,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":56851,"t":"code","b":[50,48,222],"m":"ld","oa":56880,"o":"($DE30),a"},{"a":56854,"t":"code","b":[68],"m":"ld","o":"b,h","x":[56872,56881]},{"a":56855,"t":"code","b":[77],"m":"ld","o":"c,l"},{"a":56856,"t":"code","b":[205,158,218],"m":"call","oa":55966,"o":"cell_address"},{"a":56859,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56860,"t":"code","b":[6,8],"m":"ld","o":"b,$08"},{"a":56862,"t":"code","b":[175],"m":"xor","o":"a"},{"a":56863,"t":"code","b":[119],"m":"ld","o":"(hl),a","x":[56865]},{"a":56864,"t":"code","b":[36],"m":"inc","o":"h"},{"a":56865,"t":"code","b":[16,252],"m":"djnz","oa":56863,"o":"$DE1F"},{"a":56867,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":56868,"t":"code","b":[44],"m":"inc","o":"l"},{"a":56869,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":56870,"t":"code","b":[254,27],"m":"cp","o":"$1B"},{"a":56872,"t":"code","b":[194,22,222],"m":"jp","oa":56854,"o":"nz,$DE16"},{"a":56875,"t":"code","b":[46,26],"m":"ld","o":"l,$1A"},{"a":56877,"t":"code","b":[36],"m":"inc","o":"h"},{"a":56878,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":56879,"t":"code","b":[254,7],"m":"cp","o":"$07"},{"a":56881,"t":"code","b":[194,22,222],"m":"jp","oa":56854,"o":"nz,$DE16"},{"a":56884,"t":"code","b":[201],"m":"ret"},{"a":56885,"l":"seed_random","c":"Sets rng_state from B and C, the two halves of the location's number that the BASIC sends with the picture command, mixing each with shifts and its complement (a zero becomes $0A or $ED), then steps random once.","t":"code","b":[120],"m":"ld","o":"a,b","x":[58060]},{"a":56886,"t":"code","b":[167],"m":"and","o":"a"},{"a":56887,"t":"code","b":[23],"m":"rla"},{"a":56888,"t":"code","b":[23],"m":"rla"},{"a":56889,"t":"code","b":[152],"m":"sbc","o":"a,b"},{"a":56890,"t":"code","b":[32,2],"m":"jr","oa":56894,"o":"nz,$DE3E"},{"a":56892,"t":"code","b":[62,10],"m":"ld","o":"a,$0A"},{"a":56894,"t":"code","b":[50,176,218],"m":"ld","oa":55984,"o":"(rng_state),a","x":[56890]},{"a":56897,"t":"code","b":[47],"m":"cpl"},{"a":56898,"t":"code","b":[50,178,218],"m":"ld","oa":55986,"o":"($DAB2),a"},{"a":56901,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":56902,"t":"code","b":[15],"m":"rrca"},{"a":56903,"t":"code","b":[31],"m":"rra"},{"a":56904,"t":"code","b":[137],"m":"adc","o":"a,c"},{"a":56905,"t":"code","b":[32,2],"m":"jr","oa":56909,"o":"nz,$DE4D"},{"a":56907,"t":"code","b":[62,237],"m":"ld","o":"a,$ED"},{"a":56909,"t":"code","b":[50,177,218],"m":"ld","oa":55985,"o":"($DAB1),a","x":[56905]},{"a":56912,"t":"code","b":[47],"m":"cpl"},{"a":56913,"t":"code","b":[230,127],"m":"and","o":"$7F"},{"a":56915,"t":"code","b":[50,179,218],"m":"ld","oa":55987,"o":"($DAB3),a"},{"a":56918,"t":"code","b":[195,180,218],"m":"jp","oa":55988,"o":"random"},{"a":56921,"l":"clear_picture","c":"Clears the picture, rows 0 to 16, and paints it black on white ($38).","t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000","x":[58063]},{"a":56924,"t":"code","b":[62,56],"m":"ld","o":"a,$38"},{"a":56926,"t":"code","b":[17,32,17],"m":"ld","o":"de,$1120"},{"a":56929,"t":"code","b":[195,43,223],"m":"jp","oa":57131,"o":"blank_box"},{"a":56932,"l":"gfx_return","c":"The early way out of a graphics command: puts back the stack pointer graphics saved on entry and returns BC = 1 to USR (a command that runs to its end returns through graphics at $F7D5 with BC = 0). A command that checks its string's length (all but 14, 18, 19, 20, 21 and 22) comes straight here when it is wrong, and so do a command number above 24 and command 15, whose entry in gfx_table is this address.","t":"code","b":[237,123,108,222],"m":"ld","oa":56940,"o":"sp,(gfx_saved_sp)","x":[58053,61083,61358,61388,61979,62096,62199,62471,62672,62880,62917,63071,63130,63136,63196,63301,63417,63481,63517,63770]},{"a":56936,"t":"code","b":[1,1,0],"m":"ld","o":"bc,$0001"},{"a":56939,"t":"code","b":[201],"m":"ret"},{"a":56940,"l":"gfx_saved_sp","c":"The stack pointer at the entry to graphics, and at $DE6E a second one, kept while the routines that take bytes after their CALL read them through SP.","t":"byte","b":[73,208,61,208],"x":[56932,63407,63445]},{"a":56944,"l":"attr_address","c":"DE = the attribute address of row B, column C, and A = the attribute there.","t":"code","b":[17,0,22],"m":"ld","o":"de,$1600","x":[57064,57440,62840,63236]},{"a":56947,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56948,"t":"code","b":[7],"m":"rlca"},{"a":56949,"t":"code","b":[7],"m":"rlca"},{"a":56950,"t":"code","b":[7],"m":"rlca"},{"a":56951,"t":"code","b":[167],"m":"and","o":"a"},{"a":56952,"t":"code","b":[23],"m":"rla"},{"a":56953,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":56955,"t":"code","b":[23],"m":"rla"},{"a":56956,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":56958,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":56959,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":56960,"t":"code","b":[26],"m":"ld","o":"a,(de)"},{"a":56961,"t":"code","b":[201],"m":"ret"},{"a":56962,"l":"cell_of_point","c":"Converts a point in PLOT's coordinates to its character cell: C = x / 8, B = (168 - y) / 8, the row whose bottom pixel line is at y when y is a multiple of 8.","t":"code","b":[121],"m":"ld","o":"a,c","x":[57061,62837,63203,64774,64825,64889,64924,64970,65036]},{"a":56963,"t":"code","b":[230,248],"m":"and","o":"$F8"},{"a":56965,"t":"code","b":[15],"m":"rrca"},{"a":56966,"t":"code","b":[15],"m":"rrca"},{"a":56967,"t":"code","b":[15],"m":"rrca"},{"a":56968,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56969,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56970,"t":"code","b":[237,68],"m":"neg"},{"a":56972,"t":"code","b":[198,168],"m":"add","o":"a,$A8"},{"a":56974,"t":"code","b":[230,248],"m":"and","o":"$F8"},{"a":56976,"t":"code","b":[15],"m":"rrca"},{"a":56977,"t":"code","b":[15],"m":"rrca"},{"a":56978,"t":"code","b":[15],"m":"rrca"},{"a":56979,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56980,"t":"code","b":[201],"m":"ret"},{"a":56981,"l":"point_of_cell","c":"The opposite of cell_of_point: C = column x 8, B = 168 - row x 8, the bottom left pixel of the cell in PLOT's coordinates.","t":"code","b":[121],"m":"ld","o":"a,c","x":[57411,64341,64425,64485]},{"a":56982,"t":"code","b":[7],"m":"rlca"},{"a":56983,"t":"code","b":[7],"m":"rlca"},{"a":56984,"t":"code","b":[7],"m":"rlca"},{"a":56985,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":56986,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":56987,"t":"code","b":[7],"m":"rlca"},{"a":56988,"t":"code","b":[7],"m":"rlca"},{"a":56989,"t":"code","b":[7],"m":"rlca"},{"a":56990,"t":"code","b":[237,68],"m":"neg"},{"a":56992,"t":"code","b":[198,168],"m":"add","o":"a,$A8"},{"a":56994,"t":"code","b":[167],"m":"and","o":"a"},{"a":56995,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":56996,"t":"code","b":[201],"m":"ret"},{"a":56997,"l":"mirror_top_third","c":"Makes the top third of the screen, rows 0 to 7, symmetrical: the left half of each pixel line is copied, mirrored, over the right half.","t":"code","b":[17,0,64],"m":"ld","o":"de,$4000","x":[59039,59118,59231,59329]},{"a":57000,"t":"code","b":[33,31,0],"m":"ld","o":"hl,$001F","x":[57034]},{"a":57003,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":57004,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":57005,"t":"code","b":[1,16,0],"m":"ld","o":"bc,$0010"},{"a":57008,"t":"code","b":[175],"m":"xor","o":"a","x":[57020]},{"a":57009,"t":"code","b":[6,8],"m":"ld","o":"b,$08"},{"a":57011,"t":"code","b":[203,6],"m":"rlc","o":"(hl)","x":[57014]},{"a":57013,"t":"code","b":[31],"m":"rra"},{"a":57014,"t":"code","b":[16,251],"m":"djnz","oa":57011,"o":"$DEB3"},{"a":57016,"t":"code","b":[18],"m":"ld","o":"(de),a"},{"a":57017,"t":"code","b":[27],"m":"dec","o":"de"},{"a":57018,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57019,"t":"code","b":[13],"m":"dec","o":"c"},{"a":57020,"t":"code","b":[194,176,222],"m":"jp","oa":57008,"o":"nz,$DEB0"},{"a":57023,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":57024,"t":"code","b":[230,224],"m":"and","o":"$E0"},{"a":57026,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":57027,"t":"code","b":[14,32],"m":"ld","o":"c,$20"},{"a":57029,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":57030,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":57031,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":57032,"t":"code","b":[230,24],"m":"and","o":"$18"},{"a":57034,"t":"code","b":[202,168,222],"m":"jp","oa":57000,"o":"z,$DEA8"},{"a":57037,"t":"code","b":[201],"m":"ret"},{"a":57038,"l":"saved_attr_t","c":"draw_line keeps the ROM's ATTR_T here while it draws, and an unused byte follows.","t":"byte","b":[0,0],"x":[57071,57121]},{"a":57040,"l":"draw_line","c":"Draws a line in the colours already on the screen where it starts: four bytes follow the CALL, the start (x, y) and the end (x, y). Takes the attribute of the start cell for ATTR_T, PLOTs the start with the ROM's PLOT-SUB ($22E5) and draws the rest with its DRAW-LINE ($24BA), keeping HL' for the return to BASIC.","t":"code","b":[225],"m":"pop","o":"hl","x":[59004,59025,59032,59072,59079,59086,59121,59128,59135,59142,59149,59156,59163,59170,59177,59184,59201,59208,59234,59241,59268,59275,59282,59289]},{"a":57041,"t":"code","b":[84],"m":"ld","o":"d,h"},{"a":57042,"t":"code","b":[93],"m":"ld","o":"e,l"},{"a":57043,"t":"code","b":[1,4,0],"m":"ld","o":"bc,$0004"},{"a":57046,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":57047,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57048,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":57049,"t":"code","b":[237,115,110,222],"m":"ld","oa":56942,"o":"($DE6E),sp"},{"a":57053,"t":"code","b":[249],"m":"ld","o":"sp,hl"},{"a":57054,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57055,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57056,"t":"code","b":[237,123,110,222],"m":"ld","oa":56942,"o":"sp,($DE6E)"},{"a":57060,"l":"draw_line_regs","c":"draw_line with the start in BC and the end in HL (y in the high byte).","t":"code","b":[197],"m":"push","o":"bc","x":[59101]},{"a":57061,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":57064,"t":"code","b":[205,112,222],"m":"call","oa":56944,"o":"attr_address"},{"a":57067,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":57068,"t":"code","b":[58,143,92],"m":"ld","oa":23695,"o":"a,($5C8F)"},{"a":57071,"t":"code","b":[50,206,222],"m":"ld","oa":57038,"o":"(saved_attr_t),a"},{"a":57074,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57075,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":57078,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57079,"t":"code","b":[217],"m":"exx"},{"a":57080,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57081,"t":"code","b":[217],"m":"exx"},{"a":57082,"t":"code","b":[197],"m":"push","o":"bc"},{"a":57083,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57084,"t":"code","b":[205,229,34],"m":"call","oa":8933,"o":"$22E5"},{"a":57087,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57088,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57089,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":57090,"t":"code","b":[144],"m":"sub","o":"b"},{"a":57091,"t":"code","b":[48,6],"m":"jr","oa":57099,"o":"nc,$DF0B"},{"a":57093,"t":"code","b":[22,255],"m":"ld","o":"d,$FF"},{"a":57095,"t":"code","b":[237,68],"m":"neg"},{"a":57097,"t":"code","b":[24,2],"m":"jr","oa":57101,"o":"$DF0D"},{"a":57099,"t":"code","b":[22,1],"m":"ld","o":"d,$01","x":[57091]},{"a":57101,"t":"code","b":[71],"m":"ld","o":"b,a","x":[57097]},{"a":57102,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":57103,"t":"code","b":[145],"m":"sub","o":"c"},{"a":57104,"t":"code","b":[48,6],"m":"jr","oa":57112,"o":"nc,$DF18"},{"a":57106,"t":"code","b":[30,255],"m":"ld","o":"e,$FF"},{"a":57108,"t":"code","b":[237,68],"m":"neg"},{"a":57110,"t":"code","b":[24,2],"m":"jr","oa":57114,"o":"$DF1A"},{"a":57112,"t":"code","b":[30,1],"m":"ld","o":"e,$01","x":[57104]},{"a":57114,"t":"code","b":[79],"m":"ld","o":"c,a","x":[57110]},{"a":57115,"t":"code","b":[205,186,36],"m":"call","oa":9402,"o":"$24BA"},{"a":57118,"t":"code","b":[217],"m":"exx"},{"a":57119,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57120,"t":"code","b":[217],"m":"exx"},{"a":57121,"t":"code","b":[58,206,222],"m":"ld","oa":57038,"o":"a,(saved_attr_t)"},{"a":57124,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":57127,"t":"code","b":[201],"m":"ret"},{"a":57128,"l":"unused_df28","c":"Unused: three bytes nothing reads, a LD HL,$0000 left between two routines.","t":"byte","b":[33,0,0]},{"a":57131,"l":"blank_box","c":"Paints a block of cells with the attribute in A and clears its pixels: paint_box, then clear_box.","t":"code","b":[229],"m":"push","o":"hl","x":[56929,57500,58431,59001,64520,64836,64900,64935,64982,64995,65047]},{"a":57132,"t":"code","b":[213],"m":"push","o":"de"},{"a":57133,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":57136,"t":"code","b":[209],"m":"pop","o":"de"},{"a":57137,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57138,"t":"code","b":[195,9,222],"m":"jp","oa":56841,"o":"clear_box"},{"a":57141,"l":"bank_address","c":"The address of the current shape bank's glyphs, set by select_bank and read by the figure routines ($E9F5 as loaded).","t":"word","b":[245,233],"d":[59893],"x":[61437,61605,61894]},{"a":57143,"l":"bank_size","c":"The number of glyphs in that bank (9 as loaded).","t":"byte","b":[9],"x":[61460,61601]},{"a":57144,"l":"draw_xy","c":"The point the figure and feature routines draw from: $DF38 the x in pixels (set by read_position, gfx_feature, gfx_fight, gfx_appear, figure_walk and the feature drawers), $DF39 the y, the figures' base row ($38 as loaded, read by part_position, read_position and gfx_blush); draw_glyph_list saves both and restores them when it finishes.","t":"byte","b":[0,56],"x":[61097,61177,61181,61299,61304,61729,61750,62144,62564,62709,63542,64217,64323,64333,64344,64376,64859,64864,64916]},{"a":57146,"l":"flag_position","c":"Where draw_flag put the castle's flag, column then row, for gfx_flag and draw_flag to wave it.","t":"word","b":[13,0],"d":[13],"x":[64395,64421,64481]},{"a":57148,"l":"hall_colours","c":"The colours of a settlement's buildings: the walls' attribute ($DF3C), the other attribute ($DF3D), the paper picked ($DF3E), and the settlement's style ($DF3F: bits 0-1 the layout, bit 2 a dark scheme, bit 3 which side the flag is on, bit 6 a flag is flying, bit 7 a castle). pick_hall_colours and pick_wall_colours set them; castle_start sets bit 7 for every castle, $FB92 sets bit 6 and $FBF5 flips bit 3, gfx_dark sets bit 2, and terrain_cave writes $DF3C, $DF3D and $DF3F itself ($E587-$E58F). gfx_terrain clears bits 3 to 7 for each new picture ($E2EB).","t":"byte","b":[56,48,48,195],"x":[57204,57210,57443,57497,58764,58938,64828,64892,64975]},{"a":57152,"l":"new_hall_style","c":"Starts a settlement's style unless one is set (bit 7 of $DF3F): steps random and picks one with bit 7 set.","t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[64526]},{"a":57155,"t":"code","b":[230,128],"m":"and","o":"$80"},{"a":57157,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":57158,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random"},{"a":57161,"t":"code","b":[6,128],"m":"ld","o":"b,$80"},{"a":57163,"l":"pick_hall_colours","c":"Picks a settlement's style from B and rng_state, keeping the dark-scheme bit; then the colours.","t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[58875]},{"a":57166,"t":"code","b":[230,4],"m":"and","o":"$04"},{"a":57168,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":57169,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":57172,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":57174,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":57175,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":57176,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":57179,"l":"pick_wall_colours","c":"Picks the paper, yellow or white ($30 or $38); in the light scheme the other attribute takes it and the walls the other one; in the dark scheme the walls are $02 (red on black) and the other attribute is yellow or white ink on black, and the dark bit is cleared for the next building.","t":"code","b":[58,178,218],"m":"ld","oa":55986,"o":"a,($DAB2)","x":[57667]},{"a":57182,"t":"code","b":[230,8],"m":"and","o":"$08"},{"a":57184,"t":"code","b":[198,48],"m":"add","o":"a,$30"},{"a":57186,"t":"code","b":[50,62,223],"m":"ld","oa":57150,"o":"($DF3E),a"},{"a":57189,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":57192,"t":"code","b":[230,4],"m":"and","o":"$04"},{"a":57194,"t":"code","b":[32,12],"m":"jr","oa":57208,"o":"nz,$DF78"},{"a":57196,"t":"code","b":[58,62,223],"m":"ld","oa":57150,"o":"a,($DF3E)"},{"a":57199,"t":"code","b":[50,61,223],"m":"ld","oa":57149,"o":"($DF3D),a"},{"a":57202,"t":"code","b":[238,8],"m":"xor","o":"$08"},{"a":57204,"t":"code","b":[50,60,223],"m":"ld","oa":57148,"o":"(hall_colours),a"},{"a":57207,"t":"code","b":[201],"m":"ret"},{"a":57208,"t":"code","b":[62,2],"m":"ld","o":"a,$02","x":[57194]},{"a":57210,"t":"code","b":[50,60,223],"m":"ld","oa":57148,"o":"(hall_colours),a"},{"a":57213,"t":"code","b":[58,178,218],"m":"ld","oa":55986,"o":"a,($DAB2)"},{"a":57216,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":57218,"t":"code","b":[198,6],"m":"add","o":"a,$06"},{"a":57220,"t":"code","b":[50,61,223],"m":"ld","oa":57149,"o":"($DF3D),a"},{"a":57223,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":57226,"t":"code","b":[230,251],"m":"and","o":"$FB"},{"a":57228,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":57231,"t":"code","b":[201],"m":"ret"},{"a":57232,"l":"castle_tiles","c":"Ten 8 by 8 tiles that castles and halls are built from, drawn by draw_tile: 0-2 roof slopes (a large, a steep and a small corner triangle), 3 a merlon (top and both sides), 4 top and bottom lines, 5 right side and bottom, 6 bottom line, 7 right side, 8 top and left side, 9 top line. Mirrored, 7 and 8 give the left side and the top right corner.","t":"byte","b":[254,252,248,240,240,224,192,128]},{"a":57240,"t":"byte","b":[255,255,255,255,254,248,224,128]},{"a":57248,"t":"byte","b":[254,248,224,128,0,0,0,0]},{"a":57256,"t":"byte","b":[255,129,129,129,129,129,129,129]},{"a":57264,"t":"byte","b":[255,0,0,0,0,0,0,255]},{"a":57272,"t":"byte","b":[1,1,1,1,1,1,1,255]},{"a":57280,"t":"byte","b":[0,0,0,0,0,0,0,255]},{"a":57288,"t":"byte","b":[1,1,1,1,1,1,1,1]},{"a":57296,"t":"byte","b":[255,128,128,128,128,128,128,128]},{"a":57304,"t":"byte","b":[255,0,0,0,0,0,0,0]},{"a":57312,"l":"draw_tile","c":"Draws tile A (bits 0-4) of castle_tiles in the character cell at row B, column C: the tile is copied to $5B78, in the printer buffer, mirrored left to right when bit 6 of A is set and inverted when bit 7 is, then written into the cell's eight pixel lines.","t":"code","b":[50,248,223],"m":"ld","oa":57336,"o":"($DFF8),a","x":[57436,57506,57527,57549,57562,57572,59015,59022,59061,59069,59220,59228,59300,59307]},{"a":57315,"t":"code","b":[230,31],"m":"and","o":"$1F"},{"a":57317,"t":"code","b":[7],"m":"rlca"},{"a":57318,"t":"code","b":[7],"m":"rlca"},{"a":57319,"t":"code","b":[7],"m":"rlca"},{"a":57320,"t":"code","b":[33,144,223],"m":"ld","o":"hl,$DF90"},{"a":57323,"t":"code","b":[197],"m":"push","o":"bc"},{"a":57324,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":57326,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":57327,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":57328,"t":"code","b":[14,8],"m":"ld","o":"c,$08"},{"a":57330,"t":"code","b":[17,120,91],"m":"ld","o":"de,$5B78"},{"a":57333,"t":"code","b":[237,176],"m":"ldir"},{"a":57335,"t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":57337,"t":"code","b":[245],"m":"push","o":"af"},{"a":57338,"t":"code","b":[230,64],"m":"and","o":"$40"},{"a":57340,"t":"code","b":[40,8],"m":"jr","oa":57350,"o":"z,$E006"},{"a":57342,"t":"code","b":[33,120,91],"m":"ld","o":"hl,$5B78"},{"a":57345,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":57347,"t":"code","b":[205,217,221],"m":"call","oa":56793,"o":"mirror_chars"},{"a":57350,"t":"code","b":[241],"m":"pop","o":"af","x":[57340]},{"a":57351,"t":"code","b":[230,128],"m":"and","o":"$80"},{"a":57353,"t":"code","b":[40,11],"m":"jr","oa":57366,"o":"z,$E016"},{"a":57355,"t":"code","b":[33,120,91],"m":"ld","o":"hl,$5B78"},{"a":57358,"t":"code","b":[6,8],"m":"ld","o":"b,$08"},{"a":57360,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[57364]},{"a":57361,"t":"code","b":[47],"m":"cpl"},{"a":57362,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":57363,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57364,"t":"code","b":[16,250],"m":"djnz","oa":57360,"o":"$E010"},{"a":57366,"t":"code","b":[193],"m":"pop","o":"bc","x":[57353]},{"a":57367,"t":"code","b":[197],"m":"push","o":"bc"},{"a":57368,"t":"code","b":[205,158,218],"m":"call","oa":55966,"o":"cell_address"},{"a":57371,"t":"code","b":[33,120,91],"m":"ld","o":"hl,$5B78"},{"a":57374,"t":"code","b":[62,8],"m":"ld","o":"a,$08"},{"a":57376,"t":"code","b":[237,160],"m":"ldi","x":[57381]},{"a":57378,"t":"code","b":[27],"m":"dec","o":"de"},{"a":57379,"t":"code","b":[20],"m":"inc","o":"d"},{"a":57380,"t":"code","b":[61],"m":"dec","o":"a"},{"a":57381,"t":"code","b":[32,249],"m":"jr","oa":57376,"o":"nz,$E020"},{"a":57383,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57384,"t":"code","b":[201],"m":"ret"},{"a":57385,"l":"texture_box","c":"Sets up scatter_box for the stone texture of a block of cells, D high and E wide with its top left at row H, column L: four dots a cell (HL = 4DE), x and y in pixels.","t":"code","b":[67],"m":"ld","o":"b,e","x":[57589,57612,57636]},{"a":57386,"t":"code","b":[175],"m":"xor","o":"a"},{"a":57387,"t":"code","b":[130],"m":"add","o":"a,d","x":[57388]},{"a":57388,"t":"code","b":[16,253],"m":"djnz","oa":57387,"o":"$E02B"},{"a":57390,"t":"code","b":[7],"m":"rlca"},{"a":57391,"t":"code","b":[7],"m":"rlca"},{"a":57392,"t":"code","b":[50,74,224],"m":"ld","oa":57418,"o":"($E04A),a"},{"a":57395,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":57396,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":57397,"t":"code","b":[61],"m":"dec","o":"a"},{"a":57398,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":57399,"t":"code","b":[77],"m":"ld","o":"c,l"},{"a":57400,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":57401,"t":"code","b":[23],"m":"rla"},{"a":57402,"t":"code","b":[23],"m":"rla"},{"a":57403,"t":"code","b":[23],"m":"rla"},{"a":57404,"t":"code","b":[83],"m":"ld","o":"d,e"},{"a":57405,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":57406,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":57407,"t":"code","b":[23],"m":"rla"},{"a":57408,"t":"code","b":[23],"m":"rla"},{"a":57409,"t":"code","b":[23],"m":"rla"},{"a":57410,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":57411,"t":"code","b":[205,149,222],"m":"call","oa":56981,"o":"point_of_cell","x":[57422]},{"a":57414,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57415,"t":"code","b":[65],"m":"ld","o":"b,c"},{"a":57416,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":57417,"t":"code","b":[33,36,0],"m":"ld","o":"hl,$0024"},{"a":57420,"t":"code","b":[201],"m":"ret"},{"a":57421,"l":"texture_cell","c":"Four dots of stone texture in the cell at row B, column C.","t":"code","b":[197],"m":"push","o":"bc","x":[57453,57772,57776,57780]},{"a":57422,"t":"code","b":[205,67,224],"m":"call","oa":57411,"o":"$E043"},{"a":57425,"t":"code","b":[33,4,0],"m":"ld","o":"hl,$0004"},{"a":57428,"t":"code","b":[17,8,8],"m":"ld","o":"de,$0808"},{"a":57431,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":57434,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57435,"t":"code","b":[201],"m":"ret"},{"a":57436,"l":"draw_wall_tile","c":"Draws tile A at row B, column C, gives the cell the wall colour (hall_colours), adds texture when the castle has it (bit 4 of tower_size+4), and moves C one cell right.","t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile","x":[57710,57716,57726,57742,57750,57755,57765]},{"a":57439,"t":"code","b":[197],"m":"push","o":"bc"},{"a":57440,"t":"code","b":[205,112,222],"m":"call","oa":56944,"o":"attr_address"},{"a":57443,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":57446,"t":"code","b":[18],"m":"ld","o":"(de),a"},{"a":57447,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57448,"t":"code","b":[58,118,224],"m":"ld","oa":57462,"o":"a,($E076)"},{"a":57451,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":57453,"t":"code","b":[196,77,224],"m":"call","oa":57421,"o":"nz,texture_cell"},{"a":57456,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57457,"t":"code","b":[201],"m":"ret"},{"a":57458,"l":"tower_size","c":"The tower draw_tower is building: width and height in cells, its column and top row ($E074-$E075), and its style byte ($E076: bit 4 textured walls).","t":"byte","b":[5,9,23,1,0],"x":[57493,57519,57536,57552,57582,57604,57622]},{"a":57463,"l":"draw_tower","c":"Draws one tower or wall of a castle: three bytes follow the CALL, its width and height in cells and a byte whose bits 0-4 are its column (counted from the castle's left, castle_x) and bits 5-7 its shading. The tower stands on row 11: its cells are painted in the wall colour and cleared, its sides drawn down with tiles 7 (mirrored on the left), a top drawn with tiles 8 and 9 when it is narrower than 9 cells, and texture added: everywhere when the castle is textured, down its left 1-3 columns by bits 6-7, and down its right side by bit 5.","t":"code","b":[225],"m":"pop","o":"hl","x":[64586,64613,64619,64625,64657,64663,64695,64701,64707]},{"a":57464,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":57465,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57466,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":57467,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57468,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":57469,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57470,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57471,"t":"code","b":[62,31],"m":"ld","o":"a,$1F","x":[64552]},{"a":57473,"t":"code","b":[160],"m":"and","o":"b"},{"a":57474,"t":"code","b":[42,42,225],"m":"ld","oa":57642,"o":"hl,(castle_x)"},{"a":57477,"t":"code","b":[133],"m":"add","o":"a,l"},{"a":57478,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":57479,"t":"code","b":[62,224],"m":"ld","o":"a,$E0"},{"a":57481,"t":"code","b":[160],"m":"and","o":"b"},{"a":57482,"t":"code","b":[50,252,224],"m":"ld","oa":57596,"o":"($E0FC),a"},{"a":57485,"t":"code","b":[62,12],"m":"ld","o":"a,$0C"},{"a":57487,"t":"code","b":[146],"m":"sub","o":"d"},{"a":57488,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":57489,"t":"code","b":[34,116,224],"m":"ld","oa":57460,"o":"($E074),hl"},{"a":57492,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57493,"t":"code","b":[237,83,114,224],"m":"ld","oa":57458,"o":"(tower_size),de"},{"a":57497,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":57500,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":57503,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57504,"t":"code","b":[62,71],"m":"ld","o":"a,$47","x":[57513]},{"a":57506,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":57509,"t":"code","b":[4],"m":"inc","o":"b"},{"a":57510,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57511,"t":"code","b":[254,12],"m":"cp","o":"$0C"},{"a":57513,"t":"code","b":[32,245],"m":"jr","oa":57504,"o":"nz,$E0A0"},{"a":57515,"t":"code","b":[237,75,116,224],"m":"ld","oa":57460,"o":"bc,($E074)"},{"a":57519,"t":"code","b":[58,114,224],"m":"ld","oa":57458,"o":"a,(tower_size)"},{"a":57522,"t":"code","b":[61],"m":"dec","o":"a"},{"a":57523,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":57524,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":57525,"t":"code","b":[62,7],"m":"ld","o":"a,$07","x":[57534]},{"a":57527,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":57530,"t":"code","b":[4],"m":"inc","o":"b"},{"a":57531,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57532,"t":"code","b":[254,12],"m":"cp","o":"$0C"},{"a":57534,"t":"code","b":[32,245],"m":"jr","oa":57525,"o":"nz,$E0B5"},{"a":57536,"t":"code","b":[58,114,224],"m":"ld","oa":57458,"o":"a,(tower_size)"},{"a":57539,"t":"code","b":[254,9],"m":"cp","o":"$09"},{"a":57541,"t":"code","b":[48,32],"m":"jr","oa":57575,"o":"nc,$E0E7"},{"a":57543,"t":"code","b":[237,75,116,224],"m":"ld","oa":57460,"o":"bc,($E074)"},{"a":57547,"t":"code","b":[62,8],"m":"ld","o":"a,$08"},{"a":57549,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":57552,"t":"code","b":[58,114,224],"m":"ld","oa":57458,"o":"a,(tower_size)"},{"a":57555,"t":"code","b":[214,2],"m":"sub","o":"$02"},{"a":57557,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":57558,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57559,"t":"code","b":[213],"m":"push","o":"de","x":[57568]},{"a":57560,"t":"code","b":[62,9],"m":"ld","o":"a,$09"},{"a":57562,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":57565,"t":"code","b":[209],"m":"pop","o":"de"},{"a":57566,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57567,"t":"code","b":[21],"m":"dec","o":"d"},{"a":57568,"t":"code","b":[32,245],"m":"jr","oa":57559,"o":"nz,$E0D7"},{"a":57570,"t":"code","b":[62,72],"m":"ld","o":"a,$48"},{"a":57572,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":57575,"t":"code","b":[58,118,224],"m":"ld","oa":57462,"o":"a,($E076)","x":[57541]},{"a":57578,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":57580,"t":"code","b":[40,13],"m":"jr","oa":57595,"o":"z,$E0FB"},{"a":57582,"t":"code","b":[237,91,114,224],"m":"ld","oa":57458,"o":"de,(tower_size)"},{"a":57586,"t":"code","b":[42,116,224],"m":"ld","oa":57460,"o":"hl,($E074)"},{"a":57589,"t":"code","b":[205,41,224],"m":"call","oa":57385,"o":"texture_box"},{"a":57592,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":57595,"t":"code","b":[62,64],"m":"ld","o":"a,$40","x":[57580]},{"a":57597,"t":"code","b":[245],"m":"push","o":"af"},{"a":57598,"t":"code","b":[230,192],"m":"and","o":"$C0"},{"a":57600,"t":"code","b":[7],"m":"rlca"},{"a":57601,"t":"code","b":[7],"m":"rlca"},{"a":57602,"t":"code","b":[40,14],"m":"jr","oa":57618,"o":"z,$E112"},{"a":57604,"t":"code","b":[237,91,114,224],"m":"ld","oa":57458,"o":"de,(tower_size)"},{"a":57608,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":57609,"t":"code","b":[42,116,224],"m":"ld","oa":57460,"o":"hl,($E074)"},{"a":57612,"t":"code","b":[205,41,224],"m":"call","oa":57385,"o":"texture_box"},{"a":57615,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":57618,"t":"code","b":[241],"m":"pop","o":"af","x":[57602]},{"a":57619,"t":"code","b":[230,32],"m":"and","o":"$20"},{"a":57621,"t":"code","b":[200],"m":"ret","o":"z"},{"a":57622,"t":"code","b":[237,91,114,224],"m":"ld","oa":57458,"o":"de,(tower_size)"},{"a":57626,"t":"code","b":[67],"m":"ld","o":"b,e"},{"a":57627,"t":"code","b":[30,1],"m":"ld","o":"e,$01"},{"a":57629,"t":"code","b":[42,116,224],"m":"ld","oa":57460,"o":"hl,($E074)"},{"a":57632,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57633,"t":"code","b":[147],"m":"sub","o":"e"},{"a":57634,"t":"code","b":[133],"m":"add","o":"a,l"},{"a":57635,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":57636,"t":"code","b":[205,41,224],"m":"call","oa":57385,"o":"texture_box"},{"a":57639,"t":"code","b":[195,243,219],"m":"jp","oa":56307,"o":"scatter_box"},{"a":57642,"l":"castle_x","c":"The column of the castle's left edge (feature x times 2), which draw_tower, draw_battlements, draw_flag and draw_gate add to their own columns (feature_hut reads it too).","t":"byte","b":[26,0],"x":[57474,57694,64211,64383,64562,64909]},{"a":57644,"l":"castle_start","c":"Starts a castle: its style is A plus $80 with the dark-scheme bit kept; picks from rng_state whether its walls are textured (bit 4 of tower_size+4), then the colours.","t":"code","b":[87],"m":"ld","o":"d,a","x":[64583,64610,64654,64692]},{"a":57645,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":57648,"t":"code","b":[230,4],"m":"and","o":"$04"},{"a":57650,"t":"code","b":[246,128],"m":"or","o":"$80"},{"a":57652,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":57653,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":57656,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random"},{"a":57659,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":57662,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":57664,"t":"code","b":[50,118,224],"m":"ld","oa":57462,"o":"($E076),a"},{"a":57667,"t":"code","b":[195,91,223],"m":"jp","oa":57179,"o":"pick_wall_colours"},{"a":57670,"l":"draw_battlements","c":"Draws a row of battlements: two bytes follow the CALL, the first holding the number of merlons less two (bits 5-7) and the column (bits 0-4), the second the row (bits 0-6) and, in bit 7, a parapet of tiles 4, 5 and 6 on the row below. The merlons are tile 3 with tile 9 between them, a row lower.","t":"code","b":[225],"m":"pop","o":"hl","x":[64592,64631,64636,64669,64674,64713,64718]},{"a":57671,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":57672,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57673,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":57674,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":57675,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57676,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":57677,"t":"code","b":[230,224],"m":"and","o":"$E0"},{"a":57679,"t":"code","b":[7],"m":"rlca"},{"a":57680,"t":"code","b":[7],"m":"rlca"},{"a":57681,"t":"code","b":[7],"m":"rlca"},{"a":57682,"t":"code","b":[60],"m":"inc","o":"a"},{"a":57683,"t":"code","b":[50,146,225],"m":"ld","oa":57746,"o":"($E192),a"},{"a":57686,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":57687,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57688,"t":"code","b":[50,130,225],"m":"ld","oa":57730,"o":"($E182),a"},{"a":57691,"t":"code","b":[230,127],"m":"and","o":"$7F"},{"a":57693,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":57694,"t":"code","b":[58,42,225],"m":"ld","oa":57642,"o":"a,(castle_x)"},{"a":57697,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":57698,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":57699,"t":"code","b":[230,31],"m":"and","o":"$1F"},{"a":57701,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":57702,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":57703,"t":"code","b":[237,67,116,224],"m":"ld","oa":57460,"o":"($E074),bc"},{"a":57707,"t":"code","b":[62,3],"m":"ld","o":"a,$03","x":[57722]},{"a":57709,"t":"code","b":[213],"m":"push","o":"de"},{"a":57710,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57713,"t":"code","b":[4],"m":"inc","o":"b"},{"a":57714,"t":"code","b":[62,9],"m":"ld","o":"a,$09"},{"a":57716,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57719,"t":"code","b":[5],"m":"dec","o":"b"},{"a":57720,"t":"code","b":[209],"m":"pop","o":"de"},{"a":57721,"t":"code","b":[21],"m":"dec","o":"d"},{"a":57722,"t":"code","b":[32,239],"m":"jr","oa":57707,"o":"nz,$E16B"},{"a":57724,"t":"code","b":[62,3],"m":"ld","o":"a,$03"},{"a":57726,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57729,"t":"code","b":[62,129],"m":"ld","o":"a,$81"},{"a":57731,"t":"code","b":[230,128],"m":"and","o":"$80"},{"a":57733,"t":"code","b":[40,33],"m":"jr","oa":57768,"o":"z,battlement_texture"},{"a":57735,"t":"code","b":[237,75,116,224],"m":"ld","oa":57460,"o":"bc,($E074)"},{"a":57739,"t":"code","b":[4],"m":"inc","o":"b"},{"a":57740,"t":"code","b":[62,69],"m":"ld","o":"a,$45"},{"a":57742,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57745,"t":"code","b":[22,3],"m":"ld","o":"d,$03"},{"a":57747,"t":"code","b":[213],"m":"push","o":"de","x":[57760]},{"a":57748,"t":"code","b":[62,4],"m":"ld","o":"a,$04"},{"a":57750,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57753,"t":"code","b":[62,6],"m":"ld","o":"a,$06"},{"a":57755,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57758,"t":"code","b":[209],"m":"pop","o":"de"},{"a":57759,"t":"code","b":[21],"m":"dec","o":"d"},{"a":57760,"t":"code","b":[32,241],"m":"jr","oa":57747,"o":"nz,$E193"},{"a":57762,"t":"code","b":[13],"m":"dec","o":"c"},{"a":57763,"t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":57765,"t":"code","b":[205,92,224],"m":"call","oa":57436,"o":"draw_wall_tile"},{"a":57768,"l":"battlement_texture","c":"Texture on the first merlon, the cell below it and the cell right of that one, a row below the merlons.","t":"code","b":[237,75,116,224],"m":"ld","oa":57460,"o":"bc,($E074)","x":[57733]},{"a":57772,"t":"code","b":[205,77,224],"m":"call","oa":57421,"o":"texture_cell"},{"a":57775,"t":"code","b":[4],"m":"inc","o":"b"},{"a":57776,"t":"code","b":[205,77,224],"m":"call","oa":57421,"o":"texture_cell"},{"a":57779,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57780,"t":"code","b":[195,77,224],"m":"jp","oa":57421,"o":"texture_cell"},{"a":57783,"l":"terrain_forest","c":"Terrain 5, a forest: the land green ($20); the ground along the bottom of the picture (rows 15-16, below the trees) is a skyline filled down to y = 40 (fill_bottom $28).","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58202]},{"a":57785,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":57788,"t":"code","b":[62,40],"m":"ld","o":"a,$28"},{"a":57790,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":57793,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":57796,"l":"forest_treetops_args","c":"Forest, the ground along the bottom of the picture: draw_ridge's six bytes: runs of 1 column, each with a step of -3 to +3 that the height takes as the run starts and again after its column, so it moves twice from one column to the next (up to 4 inside these limits); it starts at y = 50 and stays between 45 and 51.","t":"byte","b":[1,1,45,51,7,50]},{"a":57802,"l":"forest_rows","c":"Forest, continued: shades rows 14-16, the ground under the trees, switches draw_ridge to outlines and draws three lines of foliage across the trees.","t":"code","b":[33,0,14],"m":"ld","o":"hl,$0E00"},{"a":57805,"t":"code","b":[17,32,3],"m":"ld","o":"de,$0320"},{"a":57808,"t":"code","b":[205,109,218],"m":"call","oa":55917,"o":"shade_area"},{"a":57811,"t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":57814,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":57817,"l":"forest_first_line_foliage_args","c":"Forest, first line of foliage: draw_ridge's six bytes: the height moves every 3 columns and at each new run, in runs of 1 to 6 columns, by steps of -1 to +1; it starts at y = 126 and stays between 119 and 127.","t":"byte","b":[3,6,119,127,3,126]},{"a":57823,"l":"forest_line_2","c":"Forest: the second line of foliage.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":57826,"l":"forest_second_line_foliage_args","c":"Forest, second line of foliage: draw_ridge's six bytes: the height moves every 3 columns and at each new run, in runs of 1 to 6 columns, by steps of -1 to +1; it starts at y = 123 and stays between 119 and 127.","t":"byte","b":[3,6,119,127,3,123]},{"a":57832,"l":"forest_line_3","c":"Forest: the third line of foliage.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":57835,"l":"forest_third_line_foliage_args","c":"Forest, third line of foliage: draw_ridge's six bytes: the height moves every 3 columns and at each new run, in runs of 1 to 6 columns, by steps of -1 to +1; it starts at y = 120 and stays between 119 and 127.","t":"byte","b":[3,6,119,127,3,120]},{"a":57841,"l":"forest_line_4","c":"Forest: the line along the foot of the trees.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":57844,"l":"forest_foot_trees_args","c":"Forest, the foot of the trees: draw_ridge's six bytes: the height moves every 3 columns and at each new run, in runs of 1 to 6 columns, by steps of -1 to +1; it starts at y = 96 and stays between 95 and 97.","t":"byte","b":[3,6,95,97,3,96]},{"a":57850,"l":"forest_trunks","c":"Forest: tree trunks, each 2 to 5 pixels wide at a random 10 to 25 pixels from the last, filled with fill_shape from y = 98 down to a height that grows with the width, until x passes 255.","t":"code","b":[38,0],"m":"ld","o":"h,$00"},{"a":57852,"t":"code","b":[30,98],"m":"ld","o":"e,$62"},{"a":57854,"t":"code","b":[229],"m":"push","o":"hl","x":[57898]},{"a":57855,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random"},{"a":57858,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57859,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":57862,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":57864,"t":"code","b":[198,10],"m":"add","o":"a,$0A"},{"a":57866,"t":"code","b":[132],"m":"add","o":"a,h"},{"a":57867,"t":"code","b":[56,32],"m":"jr","oa":57901,"o":"c,forest_foliage"},{"a":57869,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":57870,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":57873,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":57875,"t":"code","b":[60],"m":"inc","o":"a"},{"a":57876,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":57877,"t":"code","b":[132],"m":"add","o":"a,h"},{"a":57878,"t":"code","b":[56,21],"m":"jr","oa":57901,"o":"c,forest_foliage"},{"a":57880,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":57881,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57882,"t":"code","b":[23],"m":"rla"},{"a":57883,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":57884,"t":"code","b":[198,3],"m":"add","o":"a,$03"},{"a":57886,"t":"code","b":[237,68],"m":"neg"},{"a":57888,"t":"code","b":[131],"m":"add","o":"a,e"},{"a":57889,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":57890,"t":"code","b":[229],"m":"push","o":"hl"},{"a":57891,"t":"code","b":[213],"m":"push","o":"de"},{"a":57892,"t":"code","b":[175],"m":"xor","o":"a"},{"a":57893,"t":"code","b":[205,123,221],"m":"call","oa":56699,"o":"fill_shape"},{"a":57896,"t":"code","b":[209],"m":"pop","o":"de"},{"a":57897,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":57898,"t":"code","b":[195,254,225],"m":"jp","oa":57854,"o":"$E1FE"},{"a":57901,"l":"forest_foliage","c":"Forest: walks along y = 93 with plot_pixel testing; for each run of set pixels (a trunk) found, scatters 45 dots of foliage in each of two boxes 8 pixels wide and 24 high, from y = 100 to 123: one starting 17 pixels left of the trunk's middle and one at x = 231 less the middle, across the picture (set_plot_or, called just before, overwrites H, so the trunk's width plays no part), skipping a box that would pass x = 255; then sets plot_pixel to setting (OR).","t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill","x":[57867,57878]},{"a":57904,"t":"code","b":[6,93],"m":"ld","o":"b,$5D"},{"a":57906,"t":"code","b":[14,0],"m":"ld","o":"c,$00"},{"a":57908,"t":"code","b":[205,118,221],"m":"call","oa":56694,"o":"set_plot_test","x":[58000]},{"a":57911,"t":"code","b":[197],"m":"push","o":"bc","x":[57920]},{"a":57912,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":57915,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57916,"t":"code","b":[167],"m":"and","o":"a"},{"a":57917,"t":"code","b":[32,9],"m":"jr","oa":57928,"o":"nz,$E248"},{"a":57919,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57920,"t":"code","b":[32,245],"m":"jr","oa":57911,"o":"nz,$E237"},{"a":57922,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":57925,"t":"code","b":[195,147,226],"m":"jp","oa":58003,"o":"forest_floor"},{"a":57928,"t":"code","b":[38,0],"m":"ld","o":"h,$00","x":[57917]},{"a":57930,"t":"code","b":[197],"m":"push","o":"bc","x":[57940]},{"a":57931,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":57934,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":57935,"t":"code","b":[167],"m":"and","o":"a"},{"a":57936,"t":"code","b":[40,4],"m":"jr","oa":57942,"o":"z,$E256"},{"a":57938,"t":"code","b":[36],"m":"inc","o":"h"},{"a":57939,"t":"code","b":[12],"m":"inc","o":"c"},{"a":57940,"t":"code","b":[24,244],"m":"jr","oa":57930,"o":"$E24A"},{"a":57942,"t":"code","b":[197],"m":"push","o":"bc","x":[57936]},{"a":57943,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":57944,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":57947,"t":"code","b":[31],"m":"rra"},{"a":57948,"t":"code","b":[167],"m":"and","o":"a"},{"a":57949,"t":"code","b":[237,68],"m":"neg"},{"a":57951,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":57952,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":57953,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":57954,"t":"code","b":[23],"m":"rla"},{"a":57955,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":57956,"t":"code","b":[133],"m":"add","o":"a,l"},{"a":57957,"t":"code","b":[50,126,226],"m":"ld","oa":57982,"o":"($E27E),a"},{"a":57960,"t":"code","b":[124],"m":"ld","o":"a,h"},{"a":57961,"t":"code","b":[214,8],"m":"sub","o":"$08"},{"a":57963,"t":"code","b":[149],"m":"sub","o":"l"},{"a":57964,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":57965,"t":"code","b":[167],"m":"and","o":"a"},{"a":57966,"t":"code","b":[198,8],"m":"add","o":"a,$08"},{"a":57968,"t":"code","b":[56,11],"m":"jr","oa":57981,"o":"c,$E27D"},{"a":57970,"t":"code","b":[14,100],"m":"ld","o":"c,$64"},{"a":57972,"t":"code","b":[17,24,8],"m":"ld","o":"de,$0818"},{"a":57975,"t":"code","b":[33,45,0],"m":"ld","o":"hl,$002D"},{"a":57978,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":57981,"t":"code","b":[6,236],"m":"ld","o":"b,$EC","x":[57968]},{"a":57983,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":57984,"t":"code","b":[198,8],"m":"add","o":"a,$08"},{"a":57986,"t":"code","b":[56,11],"m":"jr","oa":57999,"o":"c,$E28F"},{"a":57988,"t":"code","b":[14,100],"m":"ld","o":"c,$64"},{"a":57990,"t":"code","b":[17,24,8],"m":"ld","o":"de,$0818"},{"a":57993,"t":"code","b":[33,45,0],"m":"ld","o":"hl,$002D"},{"a":57996,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":57999,"t":"code","b":[193],"m":"pop","o":"bc","x":[57986]},{"a":58000,"t":"code","b":[195,52,226],"m":"jp","oa":57908,"o":"$E234"},{"a":58003,"l":"forest_floor","c":"Forest: dots in the undergrowth.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots","x":[57925]},{"a":58006,"l":"forest_undergrowth_args","c":"Forest, undergrowth: scatter_dots's six bytes: 200 dots, x from 0 to 254, y from 97 to 120.","t":"byte","b":[200,0,97,0,24,255]},{"a":58012,"l":"forest_floor_2","c":"Forest: dots on the ground.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58015,"l":"forest_ground_args","c":"Forest, ground: scatter_dots's six bytes: 768 dots, x from 0 to 254, y from 92 to 99.","t":"byte","b":[0,3,92,0,8,255]},{"a":58021,"l":"forest_colours","c":"Forest: the colours of the trees: rows 6-7 white ink on green ($27), row 8 cyan ink ($25), rows 9-11 blue ink ($21), so the trunks show blue.","t":"code","b":[62,39],"m":"ld","o":"a,$27"},{"a":58023,"t":"code","b":[17,32,2],"m":"ld","o":"de,$0220"},{"a":58026,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58029,"t":"code","b":[62,37],"m":"ld","o":"a,$25"},{"a":58031,"t":"code","b":[33,0,8],"m":"ld","o":"hl,$0800"},{"a":58034,"t":"code","b":[17,32,1],"m":"ld","o":"de,$0120"},{"a":58037,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":58040,"t":"code","b":[62,33],"m":"ld","o":"a,$21"},{"a":58042,"t":"code","b":[33,0,9],"m":"ld","o":"hl,$0900"},{"a":58045,"t":"code","b":[17,32,3],"m":"ld","o":"de,$0320"},{"a":58048,"t":"code","b":[195,64,221],"m":"jp","oa":56640,"o":"paint_box"},{"a":58051,"l":"gfx_terrain","c":"Graphics command 1, the location's picture (gter, line 7011): five bytes, the command and the location number's two halves, its terrain te and the terrain to the north tb. Seeds random from the halves, clears the picture, draws the bottom line at y = 40 and jumps to the terrain's drawer in terrain_table. Then, one time in four, paints rows 13-15 yellow, a track (not on an icy waste or in a cave); and, for terrain 1 to 5, when the terrain to the north is at least as high, draws the view north from view_table with the sky rows painted $3C and fill_bottom at $80. A hall gets neither: its drawer ends with POP HL ($E66F), which drops the return to $E30C pushed at $E30A.","t":"code","b":[254,5],"m":"cp","o":"$05","x":[63453]},{"a":58053,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":58056,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":58057,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":58058,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":58059,"t":"code","b":[229],"m":"push","o":"hl"},{"a":58060,"t":"code","b":[205,53,222],"m":"call","oa":56885,"o":"seed_random"},{"a":58063,"t":"code","b":[205,89,222],"m":"call","oa":56921,"o":"clear_picture"},{"a":58066,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":58069,"t":"code","b":[6,40],"m":"ld","o":"b,$28"},{"a":58071,"t":"code","b":[14,0],"m":"ld","o":"c,$00"},{"a":58073,"t":"code","b":[197],"m":"push","o":"bc","x":[58079]},{"a":58074,"t":"code","b":[205,170,219],"m":"call","oa":56234,"o":"plot_pixel"},{"a":58077,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":58078,"t":"code","b":[13],"m":"dec","o":"c"},{"a":58079,"t":"code","b":[32,248],"m":"jr","oa":58073,"o":"nz,$E2D9"},{"a":58081,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":58082,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":58083,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":58084,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":58086,"t":"code","b":[200],"m":"ret","o":"z"},{"a":58087,"t":"code","b":[50,80,227],"m":"ld","oa":58192,"o":"(terrain_now),a"},{"a":58090,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":58091,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":58094,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":58096,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":58099,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":58100,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":58101,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":58103,"t":"code","b":[200],"m":"ret","o":"z"},{"a":58104,"t":"code","b":[50,81,227],"m":"ld","oa":58193,"o":"($E351),a"},{"a":58107,"t":"code","b":[203,17],"m":"rl","o":"c"},{"a":58109,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":58111,"t":"code","b":[33,80,227],"m":"ld","o":"hl,$E350"},{"a":58114,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":58115,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":58116,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":58117,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":58118,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":58119,"t":"code","b":[17,12,227],"m":"ld","o":"de,$E30C"},{"a":58122,"t":"code","b":[213],"m":"push","o":"de"},{"a":58123,"t":"code","b":[233],"m":"jp","o":"(hl)"},{"a":58124,"t":"code","b":[58,178,218],"m":"ld","oa":55986,"o":"a,($DAB2)"},{"a":58127,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":58129,"t":"code","b":[32,22],"m":"jr","oa":58153,"o":"nz,$E329"},{"a":58131,"t":"code","b":[58,80,227],"m":"ld","oa":58192,"o":"a,(terrain_now)"},{"a":58134,"t":"code","b":[254,1],"m":"cp","o":"$01"},{"a":58136,"t":"code","b":[40,15],"m":"jr","oa":58153,"o":"z,$E329"},{"a":58138,"t":"code","b":[254,7],"m":"cp","o":"$07"},{"a":58140,"t":"code","b":[40,11],"m":"jr","oa":58153,"o":"z,$E329"},{"a":58142,"t":"code","b":[62,48],"m":"ld","o":"a,$30"},{"a":58144,"t":"code","b":[33,0,13],"m":"ld","o":"hl,$0D00"},{"a":58147,"t":"code","b":[17,32,3],"m":"ld","o":"de,$0320"},{"a":58150,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":58153,"t":"code","b":[58,80,227],"m":"ld","oa":58192,"o":"a,(terrain_now)","x":[58129,58136,58140]},{"a":58156,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":58158,"t":"code","b":[208],"m":"ret","o":"nc"},{"a":58159,"t":"code","b":[167],"m":"and","o":"a"},{"a":58160,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":58161,"t":"code","b":[58,81,227],"m":"ld","oa":58193,"o":"a,($E351)"},{"a":58164,"t":"code","b":[184],"m":"cp","o":"b"},{"a":58165,"t":"code","b":[216],"m":"ret","o":"c"},{"a":58166,"t":"code","b":[61],"m":"dec","o":"a"},{"a":58167,"t":"code","b":[23],"m":"rla"},{"a":58168,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":58169,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":58171,"t":"code","b":[33,98,227],"m":"ld","o":"hl,$E362"},{"a":58174,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":58175,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":58176,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":58177,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":58178,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":58179,"t":"code","b":[229],"m":"push","o":"hl"},{"a":58180,"t":"code","b":[62,60],"m":"ld","o":"a,$3C"},{"a":58182,"t":"code","b":[205,175,227],"m":"call","oa":58287,"o":"paint_sky_a"},{"a":58185,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":58186,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":58188,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58191,"t":"code","b":[233],"m":"jp","o":"(hl)"},{"a":58192,"l":"terrain_now","c":"The terrain being drawn, and at $E351 the terrain to the north.","t":"byte","b":[4,6],"x":[58087,58131,58153]},{"a":58194,"l":"terrain_table","c":"The terrain drawers, 1 to 8: icy waste, marsh, plain, lakes, forest, mountains, cave, hall.","t":"addr","b":[114,227],"oa":58226,"o":"terrain_icy"},{"a":58196,"t":"addr","b":[197,227],"oa":58309,"o":"terrain_marsh"},{"a":58198,"t":"addr","b":[103,228],"oa":58471,"o":"terrain_plain"},{"a":58200,"t":"addr","b":[170,228],"oa":58538,"o":"terrain_lakes"},{"a":58202,"t":"addr","b":[183,225],"oa":57783,"o":"terrain_forest"},{"a":58204,"t":"addr","b":[23,229],"oa":58647,"o":"terrain_mountains"},{"a":58206,"t":"addr","b":[130,229],"oa":58754,"o":"terrain_cave"},{"a":58208,"t":"addr","b":[243,229],"oa":58867,"o":"terrain_hall"},{"a":58210,"l":"view_table","c":"The views north, by the terrain there, 1 to 8: icy waste, marsh, plain, lakes, forest, and mountains for 6 to 8.","t":"addr","b":[184,227],"oa":58296,"o":"view_icy"},{"a":58212,"t":"addr","b":[93,228],"oa":58461,"o":"view_marsh"},{"a":58214,"t":"addr","b":[159,228],"oa":58527,"o":"view_plain"},{"a":58216,"t":"addr","b":[244,228],"oa":58612,"o":"view_lakes"},{"a":58218,"t":"addr","b":[115,229],"oa":58739,"o":"view_forest"},{"a":58220,"t":"addr","b":[80,229],"oa":58704,"o":"view_mountains"},{"a":58222,"t":"addr","b":[80,229],"oa":58704,"o":"view_mountains"},{"a":58224,"t":"addr","b":[80,229],"oa":58704,"o":"view_mountains"},{"a":58226,"l":"terrain_icy","c":"Terrain 1, an icy waste: the land white, rows 6-11 blue ink ($39), rows 6-7 cyan ink ($3D); 32 dashes of up to 25 pixels over the ice (and one more for each cut short at the right edge), then two outline skylines.","t":"code","b":[62,56],"m":"ld","o":"a,$38","x":[58194]},{"a":58228,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58231,"t":"code","b":[62,57],"m":"ld","o":"a,$39"},{"a":58233,"t":"code","b":[17,32,6],"m":"ld","o":"de,$0620"},{"a":58236,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58239,"t":"code","b":[62,61],"m":"ld","o":"a,$3D"},{"a":58241,"t":"code","b":[17,32,2],"m":"ld","o":"de,$0220"},{"a":58244,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58247,"t":"code","b":[62,24],"m":"ld","o":"a,$18"},{"a":58249,"t":"code","b":[33,32,0],"m":"ld","o":"hl,$0020"},{"a":58252,"t":"code","b":[1,81,0],"m":"ld","o":"bc,$0051"},{"a":58255,"t":"code","b":[17,47,254],"m":"ld","o":"de,$FE2F"},{"a":58258,"t":"code","b":[205,205,220],"m":"call","oa":56525,"o":"scatter_dashes"},{"a":58261,"t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58264,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58267,"l":"icy_waste_first_line_args","c":"Icy waste, first line: draw_ridge's six bytes: the height moves every 7 columns and at each new run, in runs of 1 to 17 columns, by steps of -1 to +1; it starts at y = 125 and stays between 120 and 127.","t":"byte","b":[7,17,120,127,3,125]},{"a":58273,"l":"icy_line_2","c":"Icy waste: the second line.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58276,"l":"icy_waste_second_line_args","c":"Icy waste, second line: draw_ridge's six bytes: the height moves every 3 columns and at each new run, in runs of 1 to 10 columns, by steps of -1 to +1; it starts at y = 90 and stays between 87 and 91.","t":"byte","b":[3,10,87,91,3,90]},{"a":58282,"l":"icy_done","c":"Icy waste: switches draw_ridge back to filling; falls into paint_sky.","t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58285,"l":"paint_sky","c":"Paints the sky, rows 0-5, cyan ($2F).","t":"code","b":[62,47],"m":"ld","o":"a,$2F","x":[58296]},{"a":58287,"l":"paint_sky_a","c":"Paints the sky with the attribute in A.","t":"code","b":[17,32,6],"m":"ld","o":"de,$0620","x":[58182,58706,58741,58775]},{"a":58290,"l":"paint_from_top","c":"Paints D rows by E columns from the top left corner with A.","t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000","x":[58944,58988]},{"a":58293,"t":"code","b":[195,64,221],"m":"jp","oa":56640,"o":"paint_box"},{"a":58296,"l":"view_icy","c":"The view north to an icy waste: a cyan sky and a skyline of white hills.","t":"code","b":[205,173,227],"m":"call","oa":58285,"o":"paint_sky","x":[58210]},{"a":58299,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58302,"l":"view_icy_waste_args","c":"View north to an icy waste: draw_ridge's six bytes: the height moves every 5 columns and at each new run, in runs of 1 to 10 columns, by steps of -1 to +1; it starts at y = 138 and stays between 136 and 140.","t":"byte","b":[5,10,136,140,3,138]},{"a":58308,"l":"view_icy_end","c":"Returns from view_icy.","t":"code","b":[201],"m":"ret"},{"a":58309,"l":"terrain_marsh","c":"Terrain 2, a marsh: the land green, row 6 cyan ink ($25), two outline skylines (the pools themselves are drawn later by marsh_pools).","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58196]},{"a":58311,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58314,"t":"code","b":[62,37],"m":"ld","o":"a,$25"},{"a":58316,"t":"code","b":[17,32,1],"m":"ld","o":"de,$0120"},{"a":58319,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58322,"t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58325,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58328,"l":"marsh_first_pool_line_args","c":"Marsh, first pool line: draw_ridge's six bytes: runs of 1 column, each with a step of -3 to +3 that the height takes as the run starts and again after its column, so it moves twice from one column to the next (up to 4 inside these limits); it starts at y = 50 and stays between 45 and 51.","t":"byte","b":[1,1,45,51,7,50]},{"a":58334,"l":"marsh_line_2","c":"Marsh: the second line.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58337,"l":"marsh_second_pool_line_args","c":"Marsh, second pool line: draw_ridge's six bytes: runs of 1 column, each with a step of -1 to +1 that the height takes as the run starts and again after its column, so it moves twice from one column to the next (up to 2); it starts at y = 100 and stays between 98 and 103.","t":"byte","b":[1,1,98,103,3,100]},{"a":58343,"l":"marsh_dots","c":"Marsh: switches draw_ridge back to filling and scatters three sets of dots, reeds and mud.","t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58346,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58349,"l":"marsh_first_dots_args","c":"Marsh, first dots: scatter_dots's six bytes: 40 dots, x from 0 to 254, y from 127 to 127.","t":"byte","b":[40,0,127,0,1,255]},{"a":58355,"l":"marsh_dots_2","c":"Marsh: the second set of dots.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58358,"l":"marsh_second_dots_args","c":"Marsh, second dots: scatter_dots's six bytes: 300 dots, x from 0 to 254, y from 80 to 126.","t":"byte","b":[44,1,80,0,47,255]},{"a":58364,"l":"marsh_dots_3","c":"Marsh: the third set of dots.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58367,"l":"marsh_third_dots_args","c":"Marsh, third dots: scatter_dots's six bytes: 625 dots, x from 0 to 253, y from 81 to 95.","t":"byte","b":[113,2,81,0,15,254]},{"a":58373,"l":"marsh_pools","c":"Marsh: the pools, along row 10 from column 0: first a gap of 1 to 8 cells, then a box of 1 to 8 cells painted $25 (cyan ink on green), cleared and filled with ripples, and so on in turn until column 31.","t":"code","b":[175],"m":"xor","o":"a"},{"a":58374,"t":"code","b":[50,92,228],"m":"ld","oa":58460,"o":"($E45C),a"},{"a":58377,"t":"code","b":[50,91,228],"m":"ld","oa":58459,"o":"(pool_state),a"},{"a":58380,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[58403,58420]},{"a":58383,"t":"code","b":[58,91,228],"m":"ld","oa":58459,"o":"a,(pool_state)"},{"a":58386,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":58387,"t":"code","b":[254,31],"m":"cp","o":"$1F"},{"a":58389,"t":"code","b":[200],"m":"ret","o":"z"},{"a":58390,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":58393,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":58395,"t":"code","b":[60],"m":"inc","o":"a"},{"a":58396,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":58397,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":58398,"t":"code","b":[50,48,228],"m":"ld","oa":58416,"o":"($E430),a"},{"a":58401,"t":"code","b":[230,224],"m":"and","o":"$E0"},{"a":58403,"t":"code","b":[32,231],"m":"jr","oa":58380,"o":"nz,$E40C"},{"a":58405,"t":"code","b":[58,92,228],"m":"ld","oa":58460,"o":"a,($E45C)"},{"a":58408,"t":"code","b":[238,1],"m":"xor","o":"$01"},{"a":58410,"t":"code","b":[50,92,228],"m":"ld","oa":58460,"o":"($E45C),a"},{"a":58413,"t":"code","b":[40,7],"m":"jr","oa":58422,"o":"z,$E436"},{"a":58415,"t":"code","b":[62,0],"m":"ld","o":"a,$00","x":[58457]},{"a":58417,"t":"code","b":[50,91,228],"m":"ld","oa":58459,"o":"(pool_state),a"},{"a":58420,"t":"code","b":[24,214],"m":"jr","oa":58380,"o":"$E40C"},{"a":58422,"t":"code","b":[89],"m":"ld","o":"e,c","x":[58413]},{"a":58423,"t":"code","b":[22,1],"m":"ld","o":"d,$01"},{"a":58425,"t":"code","b":[104],"m":"ld","o":"l,b"},{"a":58426,"t":"code","b":[38,10],"m":"ld","o":"h,$0A"},{"a":58428,"t":"code","b":[197],"m":"push","o":"bc"},{"a":58429,"t":"code","b":[62,37],"m":"ld","o":"a,$25"},{"a":58431,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":58434,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":58435,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":58436,"t":"code","b":[7],"m":"rlca"},{"a":58437,"t":"code","b":[7],"m":"rlca"},{"a":58438,"t":"code","b":[7],"m":"rlca"},{"a":58439,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":58440,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":58441,"t":"code","b":[7],"m":"rlca"},{"a":58442,"t":"code","b":[7],"m":"rlca"},{"a":58443,"t":"code","b":[7],"m":"rlca"},{"a":58444,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":58445,"t":"code","b":[14,88],"m":"ld","o":"c,$58"},{"a":58447,"t":"code","b":[30,8],"m":"ld","o":"e,$08"},{"a":58449,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":58450,"t":"code","b":[15],"m":"rrca"},{"a":58451,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":58452,"t":"code","b":[38,0],"m":"ld","o":"h,$00"},{"a":58454,"t":"code","b":[205,205,220],"m":"call","oa":56525,"o":"scatter_dashes"},{"a":58457,"t":"code","b":[24,212],"m":"jr","oa":58415,"o":"$E42F"},{"a":58459,"l":"pool_state","c":"marsh_pools's column and its draw-or-skip flag.","t":"byte","b":[0,0],"x":[58377,58383,58417]},{"a":58461,"l":"view_marsh","c":"The view north to a marsh: a low line on the horizon.","t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge","x":[58212]},{"a":58464,"l":"view_marsh_args","c":"View north to a marsh: draw_ridge's six bytes: the height moves at each new run, every 1 or 2 columns (a run never lasts the 3 columns of a step), by steps of -1 to +1; it starts at y = 129 and stays between 128 and 131.","t":"byte","b":[3,2,128,131,3,129]},{"a":58470,"l":"view_marsh_end","c":"Returns from view_marsh.","t":"code","b":[201],"m":"ret"},{"a":58471,"l":"terrain_plain","c":"Terrain 3, a plain: the land green, 150 tufts of grass (scatter_strokes) at y 83-90 and 125 more at y 40-47, then two sets of dots.","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58198]},{"a":58473,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58476,"t":"code","b":[221,33,150,0],"m":"ld","o":"ix,$0096"},{"a":58480,"t":"code","b":[33,3,4],"m":"ld","o":"hl,$0403"},{"a":58483,"t":"code","b":[1,83,0],"m":"ld","o":"bc,$0053"},{"a":58486,"t":"code","b":[17,8,254],"m":"ld","o":"de,$FE08"},{"a":58489,"t":"code","b":[205,57,220],"m":"call","oa":56377,"o":"scatter_strokes"},{"a":58492,"t":"code","b":[221,33,125,0],"m":"ld","o":"ix,$007D"},{"a":58496,"t":"code","b":[33,3,7],"m":"ld","o":"hl,$0703"},{"a":58499,"t":"code","b":[1,40,0],"m":"ld","o":"bc,$0028"},{"a":58502,"t":"code","b":[17,8,254],"m":"ld","o":"de,$FE08"},{"a":58505,"t":"code","b":[205,57,220],"m":"call","oa":56377,"o":"scatter_strokes"},{"a":58508,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58511,"l":"plain_first_dots_args","c":"Plain, first dots: scatter_dots's six bytes: 160 dots, x from 0 to 254, y from 88 to 126.","t":"byte","b":[160,0,88,0,39,255]},{"a":58517,"l":"plain_dots_2","c":"Plain: the second set of dots.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58520,"l":"plain_second_dots_args","c":"Plain, second dots: scatter_dots's six bytes: 160 dots, x from 0 to 254, y from 84 to 93.","t":"byte","b":[160,0,84,0,10,255]},{"a":58526,"l":"plain_end","c":"Returns from terrain_plain.","t":"code","b":[201],"m":"ret"},{"a":58527,"l":"view_plain","c":"The view north to a plain: rows 4-5 green.","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58214]},{"a":58529,"t":"code","b":[33,0,4],"m":"ld","o":"hl,$0400"},{"a":58532,"t":"code","b":[17,32,2],"m":"ld","o":"de,$0220"},{"a":58535,"t":"code","b":[195,64,221],"m":"jp","oa":56640,"o":"paint_box"},{"a":58538,"l":"terrain_lakes","c":"Terrain 4, lakes: the land green, rows 6-11 green ink on blue ($0C), rows 6-7 cyan ink on blue ($0D); then dots over the water.","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58200]},{"a":58540,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58543,"t":"code","b":[62,12],"m":"ld","o":"a,$0C"},{"a":58545,"t":"code","b":[17,32,6],"m":"ld","o":"de,$0620"},{"a":58548,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58551,"t":"code","b":[62,13],"m":"ld","o":"a,$0D"},{"a":58553,"t":"code","b":[17,32,2],"m":"ld","o":"de,$0220"},{"a":58556,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58559,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58562,"l":"lakes_water_args","c":"Lakes, water: scatter_dots's six bytes: 500 dots, x from 0 to 254, y from 115 to 126.","t":"byte","b":[244,1,115,0,12,255]},{"a":58568,"l":"lakes_shore","c":"Lakes: 256 ripples of up to 6 pixels at y 88 to 127, then the far shore, a skyline filled down to y = 80.","t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":58570,"t":"code","b":[33,0,1],"m":"ld","o":"hl,$0100"},{"a":58573,"t":"code","b":[1,88,0],"m":"ld","o":"bc,$0058"},{"a":58576,"t":"code","b":[17,40,254],"m":"ld","o":"de,$FE28"},{"a":58579,"t":"code","b":[205,205,220],"m":"call","oa":56525,"o":"scatter_dashes"},{"a":58582,"t":"code","b":[62,80],"m":"ld","o":"a,$50"},{"a":58584,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58587,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58590,"l":"lakes_shore_args","c":"Lakes, the shore: draw_ridge's six bytes: runs of 1 or 2 columns, each taking a new step of -2 to +2 as it starts (a run never reaches the 4 columns after which a step would repeat); it starts at y = 87 and stays between 81 and 95.","t":"byte","b":[4,2,81,95,5,87]},{"a":58596,"l":"lakes_grass","c":"Lakes: 100 tufts of grass along the bottom.","t":"code","b":[33,3,5],"m":"ld","o":"hl,$0503"},{"a":58599,"t":"code","b":[1,40,0],"m":"ld","o":"bc,$0028"},{"a":58602,"t":"code","b":[17,8,254],"m":"ld","o":"de,$FE08"},{"a":58605,"t":"code","b":[221,33,100,0],"m":"ld","o":"ix,$0064"},{"a":58609,"t":"code","b":[195,57,220],"m":"jp","oa":56377,"o":"scatter_strokes"},{"a":58612,"l":"view_lakes","c":"The view north to lakes: rows 4-5 white ink on blue ($0F), with 25 ripples.","t":"code","b":[62,15],"m":"ld","o":"a,$0F","x":[58216]},{"a":58614,"t":"code","b":[33,0,4],"m":"ld","o":"hl,$0400"},{"a":58617,"t":"code","b":[17,32,2],"m":"ld","o":"de,$0220"},{"a":58620,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":58623,"t":"code","b":[1,128,0],"m":"ld","o":"bc,$0080"},{"a":58626,"t":"code","b":[17,16,254],"m":"ld","o":"de,$FE10"},{"a":58629,"t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":58631,"t":"code","b":[33,25,0],"m":"ld","o":"hl,$0019"},{"a":58634,"t":"code","b":[205,205,220],"m":"call","oa":56525,"o":"scatter_dashes"},{"a":58637,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58640,"l":"view_lakes_args","c":"View north to lakes: scatter_dots's six bytes: 800 dots, x from 0 to 254, y from 128 to 143.","t":"byte","b":[32,3,128,0,16,255]},{"a":58646,"l":"view_lakes_end","c":"Returns from view_lakes.","t":"code","b":[201],"m":"ret"},{"a":58647,"l":"terrain_mountains","c":"Terrain 6, mountains: the land green, rows 6-8 green ink on black ($04), a skyline filled down to y = 104.","t":"code","b":[62,32],"m":"ld","o":"a,$20","x":[58204]},{"a":58649,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58652,"t":"code","b":[62,4],"m":"ld","o":"a,$04"},{"a":58654,"t":"code","b":[17,32,3],"m":"ld","o":"de,$0320"},{"a":58657,"t":"code","b":[205,61,221],"m":"call","oa":56637,"o":"paint_rows"},{"a":58660,"t":"code","b":[62,104],"m":"ld","o":"a,$68"},{"a":58662,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58665,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58668,"l":"mountains_foothills_args","c":"Mountains, the foothills: draw_ridge's six bytes: runs of 1 to 8 columns, each with a step of -1 to +1 that the height takes as the run starts and again every 2 columns; it starts at y = 115 and stays between 104 and 127.","t":"byte","b":[2,8,104,127,3,115]},{"a":58674,"l":"mountains_dots","c":"Mountains: dots on the slopes.","t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58677,"l":"mountains_slopes_args","c":"Mountains, slopes: scatter_dots's six bytes: 128 dots, x from 0 to 254, y from 85 to 94.","t":"byte","b":[128,0,85,0,10,255]},{"a":58683,"l":"mountains_lines","c":"Mountains: three outline skylines, then back to filling.","t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58686,"t":"code","b":[6,3],"m":"ld","o":"b,$03"},{"a":58688,"t":"code","b":[197],"m":"push","o":"bc","x":[58699]},{"a":58689,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58692,"l":"mountains_lines_slopes_args","c":"Mountains, the lines on the slopes: draw_ridge's six bytes: runs of 1 to 8 columns, each with a step of -3 to +3 that the height takes as the run starts and again every 3 columns; it starts at y = 45 and stays between 40 and 50.","t":"byte","b":[3,8,40,50,7,45]},{"a":58698,"l":"mountains_lines_end","c":"Mountains: counts the three lines.","t":"code","b":[193],"m":"pop","o":"bc"},{"a":58699,"t":"code","b":[16,243],"m":"djnz","oa":58688,"o":"$E540"},{"a":58701,"t":"code","b":[205,239,221],"m":"call","oa":56815,"o":"toggle_ridge_fill"},{"a":58704,"l":"view_mountains","c":"The view north to mountains: a white sky ($38), filled peaks down to y = 128, the sky shaded, and a second, lower range in front.","t":"code","b":[62,56],"m":"ld","o":"a,$38","x":[58220,58222,58224]},{"a":58706,"t":"code","b":[205,175,227],"m":"call","oa":58287,"o":"paint_sky_a"},{"a":58709,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":58711,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58714,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58717,"l":"view_mountains_far_peaks_args","c":"View north to mountains, the far peaks: draw_ridge's six bytes: runs of 1 to 4 columns, each with a step of -1 to +1 that the height takes as the run starts and again every 2 columns; it starts at y = 151 and stays between 138 and 174.","t":"byte","b":[2,4,138,174,3,151]},{"a":58723,"l":"view_mountains_2","c":"View north to mountains: shades the sky, then the nearer range.","t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":58726,"t":"code","b":[205,106,218],"m":"call","oa":55914,"o":"shade_sky"},{"a":58729,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58732,"l":"view_mountains_nearer_range_args","c":"View north to mountains, the nearer range: draw_ridge's six bytes: runs of 1 to 10 columns, each with a step of -1 to +1 that the height takes as the run starts and again every 3 columns; it starts at y = 140 and stays between 129 and 155.","t":"byte","b":[3,10,129,155,3,140]},{"a":58738,"l":"view_mountains_end","c":"Returns from view_mountains.","t":"code","b":[201],"m":"ret"},{"a":58739,"l":"view_forest","c":"The view north to a forest: a sky of $3C and a treeline.","t":"code","b":[62,60],"m":"ld","o":"a,$3C","x":[58218]},{"a":58741,"t":"code","b":[205,175,227],"m":"call","oa":58287,"o":"paint_sky_a"},{"a":58744,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58747,"l":"view_forest_args","c":"View north to a forest: draw_ridge's six bytes: runs of 1 to 3 columns, each taking a new step of -2 to +2 as it starts (a run never reaches the 10 columns after which a step would repeat); it starts at y = 145 and stays between 140 and 150.","t":"byte","b":[10,3,140,150,5,145]},{"a":58753,"l":"view_forest_end","c":"Returns from view_forest.","t":"code","b":[201],"m":"ret"},{"a":58754,"l":"terrain_cave","c":"Terrain 7, a cave: a random style, the walls and land yellow ($30), the roof rows 0-5 yellow ink on black ($06); scattered rocks, then stalagmites: columns of dots 9 pixels wide, at random spacings of 18, 26 or 34 pixels from x = 255 down to 0.","t":"code","b":[58,178,218],"m":"ld","oa":55986,"o":"a,($DAB2)","x":[58206]},{"a":58757,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":58759,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":58762,"t":"code","b":[62,48],"m":"ld","o":"a,$30"},{"a":58764,"t":"code","b":[50,60,223],"m":"ld","oa":57148,"o":"(hall_colours),a"},{"a":58767,"t":"code","b":[50,61,223],"m":"ld","oa":57149,"o":"($DF3D),a"},{"a":58770,"t":"code","b":[205,58,221],"m":"call","oa":56634,"o":"paint_land"},{"a":58773,"t":"code","b":[62,6],"m":"ld","o":"a,$06"},{"a":58775,"t":"code","b":[205,175,227],"m":"call","oa":58287,"o":"paint_sky_a"},{"a":58778,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58781,"l":"cave_walls_args","c":"Cave, the walls: scatter_dots's six bytes: 900 dots, x from 0 to 254, y from 80 to 127.","t":"byte","b":[132,3,80,0,48,255]},{"a":58787,"l":"cave_columns","c":"Cave: the stalagmites, boxes of 80 dots 9 pixels wide and 48 high at x falling by random steps, then the roof, two skylines filled down to y = 128, the first shaded, and the floor.","t":"code","b":[6,255],"m":"ld","o":"b,$FF"},{"a":58789,"t":"code","b":[197],"m":"push","o":"bc"},{"a":58790,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[58798,58821]},{"a":58793,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":58796,"t":"code","b":[230,24],"m":"and","o":"$18"},{"a":58798,"t":"code","b":[40,246],"m":"jr","oa":58790,"o":"z,$E5A6"},{"a":58800,"t":"code","b":[198,10],"m":"add","o":"a,$0A"},{"a":58802,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":58803,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":58804,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":58805,"t":"code","b":[146],"m":"sub","o":"d"},{"a":58806,"t":"code","b":[56,15],"m":"jr","oa":58823,"o":"c,$E5C7"},{"a":58808,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":58809,"t":"code","b":[14,80],"m":"ld","o":"c,$50"},{"a":58811,"t":"code","b":[17,48,9],"m":"ld","o":"de,$0930"},{"a":58814,"t":"code","b":[33,80,0],"m":"ld","o":"hl,$0050"},{"a":58817,"t":"code","b":[197],"m":"push","o":"bc"},{"a":58818,"t":"code","b":[205,243,219],"m":"call","oa":56307,"o":"scatter_box"},{"a":58821,"t":"code","b":[24,223],"m":"jr","oa":58790,"o":"$E5A6"},{"a":58823,"t":"code","b":[62,128],"m":"ld","o":"a,$80","x":[58806]},{"a":58825,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58828,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58831,"l":"cave_roof_args","c":"Cave, the roof: draw_ridge's six bytes: runs of 1 to 4 columns, each with a step of -3 to +3 that the height takes as the run starts and again after each column, so it moves twice where one run gives way to the next (up to 6); it starts at y = 140 and stays between 137 and 158.","t":"byte","b":[1,4,137,158,7,140]},{"a":58837,"l":"cave_roof_2","c":"Cave: shades the roof, then its lower edge.","t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":58840,"t":"code","b":[205,106,218],"m":"call","oa":55914,"o":"shade_sky"},{"a":58843,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58846,"l":"cave_lower_edge_roof_args","c":"Cave, the lower edge of the roof: draw_ridge's six bytes: runs of 1 to 4 columns, each with a step of -3 to +3 that the height takes as the run starts and again after each column, so it moves twice where one run gives way to the next (up to 6); it starts at y = 130 and stays between 128 and 147.","t":"byte","b":[1,4,128,147,7,130]},{"a":58852,"l":"cave_floor","c":"Cave: the floor, a skyline filled down to y = 40.","t":"code","b":[62,40],"m":"ld","o":"a,$28"},{"a":58854,"t":"code","b":[50,145,219],"m":"ld","oa":56209,"o":"($DB91),a"},{"a":58857,"t":"code","b":[205,219,218],"m":"call","oa":56027,"o":"draw_ridge"},{"a":58860,"l":"cave_floor_args","c":"Cave, the floor: draw_ridge's six bytes: runs of 1 to 16 columns, each with a step of -1 to +1 that the height takes as the run starts and again every 4 columns; it starts at y = 51 and stays between 48 and 55.","t":"byte","b":[4,16,48,55,3,51]},{"a":58866,"l":"cave_end","c":"Returns from terrain_cave.","t":"code","b":[201],"m":"ret"},{"a":58867,"l":"terrain_hall","c":"Terrain 8, inside a hall: picks the colours and a style 0 to 3 (hall_colours); for styles 1 to 3 draws the ceiling (hall_rafters, hall_trusses or hall_vault) and returns through hall_room, while style 0 goes straight to hall_room and hall_paint draws its flat ceiling (hall_flat).","t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[58208]},{"a":58870,"t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random"},{"a":58873,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":58875,"t":"code","b":[205,75,223],"m":"call","oa":57163,"o":"pick_hall_colours"},{"a":58878,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":58881,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":58883,"t":"code","b":[33,20,230],"m":"ld","o":"hl,$E614"},{"a":58886,"t":"code","b":[40,12],"m":"jr","oa":58900,"o":"z,hall_room"},{"a":58888,"t":"code","b":[229],"m":"push","o":"hl"},{"a":58889,"t":"code","b":[61],"m":"dec","o":"a"},{"a":58890,"t":"code","b":[202,176,230],"m":"jp","oa":59056,"o":"z,hall_rafters"},{"a":58893,"t":"code","b":[61],"m":"dec","o":"a"},{"a":58894,"t":"code","b":[202,241,230],"m":"jp","oa":59121,"o":"z,hall_trusses"},{"a":58897,"t":"code","b":[195,98,231],"m":"jp","oa":59234,"o":"hall_vault"},{"a":58900,"l":"hall_room","c":"The hall's room: one time in two, 190 dots on the wall.","t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)","x":[58886]},{"a":58903,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":58905,"t":"code","b":[32,9],"m":"jr","oa":58916,"o":"nz,hall_paint"},{"a":58907,"t":"code","b":[205,222,219],"m":"call","oa":56286,"o":"scatter_dots"},{"a":58910,"l":"hall_dots_wall_args","c":"Hall, dots on the wall: scatter_dots's six bytes: 190 dots, x from 0 to 254, y from 80 to 135.","t":"byte","b":[190,0,80,0,56,255]},{"a":58916,"l":"hall_paint","c":"The hall's colours: row 16 black, the floor rows 12-15 in the paper picked, rows 0-11 in the wall colour; one time in two, 20 short dashes on the floor, more if one is cut short at the edge; for style 0 the flat ceiling, and for styles 0 and 1 row 0 black.","t":"code","b":[33,0,16],"m":"ld","o":"hl,$1000","x":[58905]},{"a":58919,"t":"code","b":[17,32,1],"m":"ld","o":"de,$0120"},{"a":58922,"t":"code","b":[175],"m":"xor","o":"a"},{"a":58923,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":58926,"t":"code","b":[58,62,223],"m":"ld","oa":57150,"o":"a,($DF3E)"},{"a":58929,"t":"code","b":[33,0,12],"m":"ld","o":"hl,$0C00"},{"a":58932,"t":"code","b":[17,32,4],"m":"ld","o":"de,$0420"},{"a":58935,"t":"code","b":[205,64,221],"m":"call","oa":56640,"o":"paint_box"},{"a":58938,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":58941,"t":"code","b":[17,32,12],"m":"ld","o":"de,$0C20"},{"a":58944,"t":"code","b":[205,178,227],"m":"call","oa":58290,"o":"paint_from_top"},{"a":58947,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":58950,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":58952,"t":"code","b":[32,14],"m":"jr","oa":58968,"o":"nz,$E658"},{"a":58954,"t":"code","b":[62,3],"m":"ld","o":"a,$03"},{"a":58956,"t":"code","b":[33,20,0],"m":"ld","o":"hl,$0014"},{"a":58959,"t":"code","b":[1,48,0],"m":"ld","o":"bc,$0030"},{"a":58962,"t":"code","b":[17,8,255],"m":"ld","o":"de,$FF08"},{"a":58965,"t":"code","b":[205,205,220],"m":"call","oa":56525,"o":"scatter_dashes"},{"a":58968,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[58952]},{"a":58971,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":58973,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":58976,"t":"code","b":[254,2],"m":"cp","o":"$02"},{"a":58978,"t":"code","b":[48,11],"m":"jr","oa":58991,"o":"nc,$E66F"},{"a":58980,"t":"code","b":[167],"m":"and","o":"a"},{"a":58981,"t":"code","b":[204,113,230],"m":"call","oa":58993,"o":"z,hall_flat"},{"a":58984,"t":"code","b":[175],"m":"xor","o":"a"},{"a":58985,"t":"code","b":[17,32,1],"m":"ld","o":"de,$0120"},{"a":58988,"t":"code","b":[205,178,227],"m":"call","oa":58290,"o":"paint_from_top"},{"a":58991,"t":"code","b":[225],"m":"pop","o":"hl","x":[58978]},{"a":58992,"t":"code","b":[201],"m":"ret"},{"a":58993,"l":"hall_flat","c":"Style 0: rows 0-2 cleared white ink on black, the ceiling's edge a line at y = 160.","t":"code","b":[62,7],"m":"ld","o":"a,$07","x":[58981]},{"a":58995,"t":"code","b":[17,32,3],"m":"ld","o":"de,$0320"},{"a":58998,"t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":59001,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":59004,"t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59007,"l":"hall_style_0_ceiling_edge_args","c":"Hall style 0, the ceiling's edge: draw_line's four bytes, from (0, 160) to (255, 160).","t":"byte","b":[0,160,255,160]},{"a":59011,"l":"hall_flat_beams","c":"Style 0: tile 0 at rows 3 and 4 makes the corner, then two lines, the end of the beam.","t":"code","b":[175],"m":"xor","o":"a"},{"a":59012,"t":"code","b":[1,0,3],"m":"ld","o":"bc,$0300"},{"a":59015,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59018,"t":"code","b":[175],"m":"xor","o":"a"},{"a":59019,"t":"code","b":[1,1,4],"m":"ld","o":"bc,$0401"},{"a":59022,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59025,"t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59028,"l":"hall_style_0_beam_end_args","c":"Hall style 0, the beam's end: draw_line's four bytes, from (8, 151) to (8, 144).","t":"byte","b":[8,151,8,144]},{"a":59032,"l":"hall_flat_beam","c":"Style 0: the beam along the ceiling.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59035,"l":"hall_style_0_beam_args","c":"Hall style 0, the beam: draw_line's four bytes, from (247, 144) to (8, 144).","t":"byte","b":[247,144,8,144]},{"a":59039,"l":"hall_flat_end","c":"Style 0: mirrors the left half onto the right, then 200 dashes of up to 5 pixels (more if one is cut short at the edge) along the beam, x 8 to 247 and y 144 to 151 (character row 3).","t":"code","b":[205,165,222],"m":"call","oa":56997,"o":"mirror_top_third"},{"a":59042,"t":"code","b":[62,4],"m":"ld","o":"a,$04"},{"a":59044,"t":"code","b":[33,200,0],"m":"ld","o":"hl,$00C8"},{"a":59047,"t":"code","b":[17,8,240],"m":"ld","o":"de,$F008"},{"a":59050,"t":"code","b":[1,144,8],"m":"ld","o":"bc,$0890"},{"a":59053,"t":"code","b":[195,205,220],"m":"jp","oa":56525,"o":"scatter_dashes"},{"a":59056,"l":"hall_rafters","c":"Style 1: tiles 1 and 2 in the top corner, then the rafters' lines.","t":"code","b":[62,1],"m":"ld","o":"a,$01","x":[58890]},{"a":59058,"t":"code","b":[1,0,1],"m":"ld","o":"bc,$0100"},{"a":59061,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59064,"t":"code","b":[62,2],"m":"ld","o":"a,$02"},{"a":59066,"t":"code","b":[1,1,1],"m":"ld","o":"bc,$0101"},{"a":59069,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59072,"t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59075,"l":"hall_style_1_first_rafter_args","c":"Hall style 1, the first rafter: draw_line's four bytes, from (8, 167) to (31, 144).","t":"byte","b":[8,167,31,144]},{"a":59079,"l":"hall_rafters_2","c":"Style 1: the second rafter.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59082,"l":"hall_style_1_second_rafter_args","c":"Hall style 1, the second rafter: draw_line's four bytes, from (40, 167) to (47, 152).","t":"byte","b":[40,167,47,152]},{"a":59086,"l":"hall_rafters_3","c":"Style 1: the ridge of the roof.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59089,"l":"hall_style_1_ridge_args","c":"Hall style 1, the ridge: draw_line's four bytes, from (47, 152) to (130, 152).","t":"byte","b":[47,152,130,152]},{"a":59093,"l":"hall_rafters_fan","c":"Style 1: four parallel lines from the left edge (x = 0, y = 152 down to 128, 8 pixels apart) to the top of the picture (y = 175, x = 47 to 95, 16 pixels apart), then the left half is mirrored onto the right.","t":"code","b":[1,0,152],"m":"ld","o":"bc,$9800"},{"a":59096,"t":"code","b":[33,47,175],"m":"ld","o":"hl,$AF2F"},{"a":59099,"t":"code","b":[197],"m":"push","o":"bc","x":[59116]},{"a":59100,"t":"code","b":[229],"m":"push","o":"hl"},{"a":59101,"t":"code","b":[205,228,222],"m":"call","oa":57060,"o":"draw_line_regs"},{"a":59104,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":59105,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":59106,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":59107,"t":"code","b":[198,16],"m":"add","o":"a,$10"},{"a":59109,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":59110,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":59111,"t":"code","b":[214,8],"m":"sub","o":"$08"},{"a":59113,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":59114,"t":"code","b":[254,127],"m":"cp","o":"$7F"},{"a":59116,"t":"code","b":[48,237],"m":"jr","oa":59099,"o":"nc,$E6DB"},{"a":59118,"t":"code","b":[195,165,222],"m":"jp","oa":56997,"o":"mirror_top_third"},{"a":59121,"l":"hall_trusses","c":"Style 2: the trusses of the roof, ten lines; the triangle between them is filled with fill_shape.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line","x":[58894]},{"a":59124,"l":"hall_style_2_line_1_args","c":"Hall style 2, line 1: draw_line's four bytes, from (0, 159) to (40, 175).","t":"byte","b":[0,159,40,175]},{"a":59128,"l":"hall_trusses_2","c":"Style 2: line 2.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59131,"l":"hall_style_2_line_2_args","c":"Hall style 2, line 2: draw_line's four bytes, from (0, 152) to (55, 174).","t":"byte","b":[0,152,55,174]},{"a":59135,"l":"hall_trusses_3","c":"Style 2: line 3.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59138,"l":"hall_style_2_line_3_args","c":"Hall style 2, line 3: draw_line's four bytes, from (0, 143) to (103, 175).","t":"byte","b":[0,143,103,175]},{"a":59142,"l":"hall_trusses_4","c":"Style 2: line 4.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59145,"l":"hall_style_2_line_4_args","c":"Hall style 2, line 4: draw_line's four bytes, from (0, 128) to (63, 151).","t":"byte","b":[0,128,63,151]},{"a":59149,"l":"hall_trusses_5","c":"Style 2: line 5.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59152,"l":"hall_style_2_line_5_args","c":"Hall style 2, line 5: draw_line's four bytes, from (95, 160) to (128, 174).","t":"byte","b":[95,160,128,174]},{"a":59156,"l":"hall_trusses_6","c":"Style 2: line 6.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59159,"l":"hall_style_2_line_6_args","c":"Hall style 2, line 6: draw_line's four bytes, from (95, 160) to (127, 160).","t":"byte","b":[95,160,127,160]},{"a":59163,"l":"hall_trusses_7","c":"Style 2: line 7.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59166,"l":"hall_style_2_line_7_args","c":"Hall style 2, line 7: draw_line's four bytes, from (63, 151) to (127, 151).","t":"byte","b":[63,151,127,151]},{"a":59170,"l":"hall_trusses_8","c":"Style 2: line 8.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59173,"l":"hall_style_2_line_8_args","c":"Hall style 2, line 8: draw_line's four bytes, from (40, 175) to (55, 175).","t":"byte","b":[40,175,55,175]},{"a":59177,"l":"hall_trusses_9","c":"Style 2: line 9.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59180,"l":"hall_style_2_line_9_args","c":"Hall style 2, line 9: draw_line's four bytes, from (104, 175) to (127, 175).","t":"byte","b":[104,175,127,175]},{"a":59184,"l":"hall_trusses_10","c":"Style 2: line 10.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59187,"l":"hall_style_2_line_10_args","c":"Hall style 2, line 10: draw_line's four bytes, from (95, 158) to (96, 158).","t":"byte","b":[95,158,96,158]},{"a":59191,"l":"hall_trusses_fill","c":"Style 2: fills the beams from x = 0 to 127, y = 175 down to 129, then two more lines.","t":"code","b":[33,127,0],"m":"ld","o":"hl,$007F"},{"a":59194,"t":"code","b":[17,175,128],"m":"ld","o":"de,$80AF"},{"a":59197,"t":"code","b":[175],"m":"xor","o":"a"},{"a":59198,"t":"code","b":[205,123,221],"m":"call","oa":56699,"o":"fill_shape"},{"a":59201,"t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59204,"l":"hall_style_2_line_11_args","c":"Hall style 2, line 11: draw_line's four bytes, from (0, 167) to (31, 152).","t":"byte","b":[0,167,31,152]},{"a":59208,"l":"hall_trusses_12","c":"Style 2: the last line.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59211,"l":"hall_style_2_line_12_args","c":"Hall style 2, line 12: draw_line's four bytes, from (31, 175) to (47, 160).","t":"byte","b":[31,175,47,160]},{"a":59215,"l":"hall_trusses_end","c":"Style 2: tiles 1 and 2 in the corner, then the left half is mirrored onto the right.","t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":59217,"t":"code","b":[1,0,0],"m":"ld","o":"bc,$0000"},{"a":59220,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59223,"t":"code","b":[62,2],"m":"ld","o":"a,$02"},{"a":59225,"t":"code","b":[1,1,0],"m":"ld","o":"bc,$0001"},{"a":59228,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59231,"t":"code","b":[195,165,222],"m":"jp","oa":56997,"o":"mirror_top_third"},{"a":59234,"l":"hall_vault","c":"Style 3: a vaulted ceiling: an edge of two lines with the space above it filled and shaded, then the curve of the vault in four lines, the ribs.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line","x":[58897]},{"a":59237,"l":"hall_style_3_first_stretch_curve_args","c":"Hall style 3, the first stretch of the curve: draw_line's four bytes, from (8, 143) to (24, 159).","t":"byte","b":[8,143,24,159]},{"a":59241,"l":"hall_vault_2","c":"Style 3: the second stretch.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59244,"l":"hall_style_3_second_stretch_args","c":"Hall style 3, the second stretch: draw_line's four bytes, from (24, 159) to (63, 175).","t":"byte","b":[24,159,63,175]},{"a":59248,"l":"hall_vault_fill","c":"Style 3: fills above the curve (fill_shape starting filled), from x = 0 to 62, shades the top five rows of the first eight columns, then the vault's ribs.","t":"code","b":[62,255],"m":"ld","o":"a,$FF"},{"a":59250,"t":"code","b":[33,62,0],"m":"ld","o":"hl,$003E"},{"a":59253,"t":"code","b":[17,175,136],"m":"ld","o":"de,$88AF"},{"a":59256,"t":"code","b":[205,123,221],"m":"call","oa":56699,"o":"fill_shape"},{"a":59259,"t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":59262,"t":"code","b":[17,8,5],"m":"ld","o":"de,$0508"},{"a":59265,"t":"code","b":[205,109,218],"m":"call","oa":55917,"o":"shade_area"},{"a":59268,"t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59271,"l":"hall_style_3_rib_1_args","c":"Hall style 3, rib 1: draw_line's four bytes, from (15, 128) to (15, 135).","t":"byte","b":[15,128,15,135]},{"a":59275,"l":"hall_vault_3","c":"Style 3: rib 2.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59278,"l":"hall_style_3_rib_2_args","c":"Hall style 3, rib 2: draw_line's four bytes, from (16, 136) to (40, 151).","t":"byte","b":[16,136,40,151]},{"a":59282,"l":"hall_vault_4","c":"Style 3: rib 3.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59285,"l":"hall_style_3_rib_3_args","c":"Hall style 3, rib 3: draw_line's four bytes, from (40, 151) to (79, 167).","t":"byte","b":[40,151,79,167]},{"a":59289,"l":"hall_vault_5","c":"Style 3: rib 4.","t":"code","b":[205,208,222],"m":"call","oa":57040,"o":"draw_line"},{"a":59292,"l":"hall_style_3_rib_4_args","c":"Hall style 3, rib 4: draw_line's four bytes, from (79, 167) to (127, 170).","t":"byte","b":[79,167,127,170]},{"a":59296,"l":"hall_vault_end","c":"Style 3: tile 0 at rows 5 and 6 of the first columns, a slope of columns filled from y = 175 down to a line rising one pixel a column, then the left half mirrored onto the right.","t":"code","b":[175],"m":"xor","o":"a"},{"a":59297,"t":"code","b":[1,1,5],"m":"ld","o":"bc,$0501"},{"a":59300,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59303,"t":"code","b":[175],"m":"xor","o":"a"},{"a":59304,"t":"code","b":[1,0,6],"m":"ld","o":"bc,$0600"},{"a":59307,"t":"code","b":[205,224,223],"m":"call","oa":57312,"o":"draw_tile"},{"a":59310,"t":"code","b":[22,144],"m":"ld","o":"d,$90"},{"a":59312,"t":"code","b":[1,0,175],"m":"ld","o":"bc,$AF00"},{"a":59315,"t":"code","b":[197],"m":"push","o":"bc","x":[59327]},{"a":59316,"t":"code","b":[213],"m":"push","o":"de"},{"a":59317,"t":"code","b":[205,146,219],"m":"call","oa":56210,"o":"$DB92"},{"a":59320,"t":"code","b":[209],"m":"pop","o":"de"},{"a":59321,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":59322,"t":"code","b":[20],"m":"inc","o":"d"},{"a":59323,"t":"code","b":[12],"m":"inc","o":"c"},{"a":59324,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":59325,"t":"code","b":[254,31],"m":"cp","o":"$1F"},{"a":59327,"t":"code","b":[32,242],"m":"jr","oa":59315,"o":"nz,$E7B3"},{"a":59329,"t":"code","b":[195,165,222],"m":"jp","oa":56997,"o":"mirror_top_third"},{"a":59332,"l":"glyph_banks","c":"The start of each figure shape's own set of 8 by 8 glyphs, banks 0 to 6, and the end of the last: the difference between one and the next, over 8, is a bank's size (17, 9, 12, 9, 10, 3 and 6 glyphs).","t":"addr","b":[109,233],"oa":59757,"o":"bank_0"},{"a":59334,"t":"addr","b":[245,233],"oa":59893,"o":"bank_1"},{"a":59336,"t":"addr","b":[61,234],"oa":59965,"o":"bank_2"},{"a":59338,"t":"addr","b":[157,234],"oa":60061,"o":"bank_3"},{"a":59340,"t":"addr","b":[229,234],"oa":60133,"o":"bank_4"},{"a":59342,"t":"addr","b":[53,235],"oa":60213,"o":"bank_5"},{"a":59344,"t":"addr","b":[77,235],"oa":60237,"o":"bank_6"},{"a":59346,"t":"addr","b":[125,235],"oa":60285,"o":"$EB7D"},{"a":59348,"l":"figure_shapes","c":"The seven figure shapes, by the shape number in a figure's record (byte 1, bits 1-7).","t":"addr","b":[226,231],"oa":59362,"o":"shape_0"},{"a":59350,"t":"addr","b":[14,232],"oa":59406,"o":"shape_1"},{"a":59352,"t":"addr","b":[43,232],"oa":59435,"o":"shape_2"},{"a":59354,"t":"addr","b":[88,232],"oa":59480,"o":"shape_3"},{"a":59356,"t":"addr","b":[117,232],"oa":59509,"o":"shape_4"},{"a":59358,"t":"addr","b":[138,232],"oa":59530,"o":"shape_5"},{"a":59360,"t":"addr","b":[154,232],"oa":59546,"o":"shape_6"},{"a":59362,"l":"shape_0","c":"Shape 0, the full-sized warrior with 8 carried parts (helmet, shield, sword, axe and so on), used by you, Odin, Thor and most of the gods: a shape's first byte is its glyph bank times two, with the way the bank's glyphs face in bit 0 (they are mirrored in place when a figure turns); the second is the number of parts that come and go with what the figure carries, each two bytes (position, and a glyph from object_glyphs); then the body's parts until a 0, each three bytes (flags, position, glyph from the bank) or, when bits 0-1 of the flags are not 1, five (flags, position, a byte nothing uses, a first glyph, and a nibble of frame and one of last frame for the walk). A position byte gives y in bits 0-2 and x in bits 4-6, in pixels times 8, from the figure's corner, bit 7 counting x leftwards; bit 3 of a carried part's position shows it.","t":"byte","b":[0,8,2,0,145,1,1,2],"x":[59348]},{"a":59370,"t":"byte","b":[145,4,145,5,145,6,145,10]},{"a":59378,"t":"byte","b":[145,11,17,2,0,209,1,1]},{"a":59386,"t":"byte","b":[130,0,0,2,112,177,0,9]},{"a":59394,"t":"byte","b":[145,1,10,194,0,0,12,64]},{"a":59402,"t":"byte","b":[241,0,11,0]},{"a":59406,"l":"shape_1","c":"Shape 1, a smaller figure with 6 carried parts (Kon, Alvin, Boogi, Mary, Klepto, Leer and Bug), in the same layout as shape_0.","t":"byte","b":[3,6,17,1,17,4,17,5],"x":[59350]},{"a":59414,"t":"byte","b":[17,6,17,10,17,11,209,129]},{"a":59422,"t":"byte","b":[0,145,129,1,2,128,0,2]},{"a":59430,"t":"byte","b":[80,49,128,8,0]},{"a":59435,"l":"shape_2","c":"Shape 2, the dragon (Nidhog, Nasher and Skadi): one carried part and twelve body parts.","t":"byte","b":[5,1,128,14,2,18,48,0],"x":[59352]},{"a":59443,"t":"byte","b":[16,49,18,1,17,130,2,209]},{"a":59451,"t":"byte","b":[17,3,17,129,4,17,145,5]},{"a":59459,"t":"byte","b":[17,161,6,2,128,16,7,16]},{"a":59467,"t":"byte","b":[49,128,7,17,144,9,17,160]},{"a":59475,"t":"byte","b":[10,145,17,11,0]},{"a":59480,"l":"shape_3","c":"Shape 3, the stocky figure of the baddies (Thudd, Drudge, Gripe, Rankle, Snor, Glut, Grunt, Krank and Klout), 6 carried parts.","t":"byte","b":[7,6,17,1,25,4,17,5],"x":[59354]},{"a":59488,"t":"byte","b":[17,6,17,10,17,11,17,130]},{"a":59496,"t":"byte","b":[0,17,129,1,49,128,2,2]},{"a":59504,"t":"byte","b":[128,0,3,80,0]},{"a":59509,"l":"shape_4","c":"Shape 4 (Gore, Frantic and Gastro): one carried part, four body parts.","t":"byte","b":[9,1,0,14,49,128,0,49],"x":[59356]},{"a":59517,"t":"byte","b":[144,5,2,128,0,0,64,2]},{"a":59525,"t":"byte","b":[144,0,5,64,0]},{"a":59530,"l":"shape_5","c":"Shape 5, the snake (Snake): one carried part, three body parts.","t":"byte","b":[10,1,0,14,17,0,0,49],"x":[59358]},{"a":59538,"t":"byte","b":[16,1,2,16,96,1,16,0]},{"a":59546,"l":"shape_6","c":"Shape 6, the bird (Raven): one carried part, three body parts.","t":"byte","b":[13,1,128,14,49,128,0,49],"x":[59360]},{"a":59554,"t":"byte","b":[130,1,2,130,32,2,48,0]},{"a":59562,"l":"figure_records","c":"One record of five bytes for each of the 39 characters, found by find_figure from the character's number in byte 0: byte 1 its shape (bits 1-7) and which way it faces (bit 0); byte 2 which carried parts show, one bit each, set and cleared by get and drop, set for each blow by the fight command and cleared by command 14; bytes 3 and 4 which optional body parts show (the arms' positions, set by the arm commands and by get and drop, and for shape 0 which legs or lower body; bits 6-7 of byte 4 set by command 16). The search stops at a 0, which is the first byte of bank_0.","t":"byte","b":[1,1,0,7,64,2,0,13]},{"a":59570,"t":"byte","b":[14,64,3,1,7,14,64,4]},{"a":59578,"t":"byte","b":[0,13,14,64,5,0,3,14]},{"a":59586,"t":"byte","b":[64,6,0,6,56,64,7,2]},{"a":59594,"t":"byte","b":[1,2,64,8,1,7,14,64]},{"a":59602,"t":"byte","b":[9,6,2,2,128,10,1,12]},{"a":59610,"t":"byte","b":[56,64,11,1,2,56,64,12]},{"a":59618,"t":"byte","b":[8,0,0,64,13,5,0,1]},{"a":59626,"t":"byte","b":[128,14,0,0,49,64,15,1]},{"a":59634,"t":"byte","b":[3,14,64,16,0,6,14,64]},{"a":59642,"t":"byte","b":[17,7,0,0,128,18,6,2]},{"a":59650,"t":"byte","b":[2,128,19,2,1,2,64,20]},{"a":59658,"t":"byte","b":[4,0,1,128,21,6,2,2]},{"a":59666,"t":"byte","b":[128,22,3,2,2,64,23,3]},{"a":59674,"t":"byte","b":[0,1,64,24,3,0,1,64]},{"a":59682,"t":"byte","b":[25,0,5,7,64,26,0,13]},{"a":59690,"t":"byte","b":[14,64,27,0,0,49,64,28]},{"a":59698,"t":"byte","b":[6,1,2,128,29,6,2,2]},{"a":59706,"t":"byte","b":[128,30,6,1,2,128,31,7]},{"a":59714,"t":"byte","b":[2,2,128,32,6,0,0,128]},{"a":59722,"t":"byte","b":[33,2,1,2,64,34,2,0]},{"a":59730,"t":"byte","b":[1,64,35,4,0,1,128,36]},{"a":59738,"t":"byte","b":[8,0,0,64,37,8,0,0]},{"a":59746,"t":"byte","b":[64,38,10,0,0,128,39,13]},{"a":59754,"t":"byte","b":[0,0,64]},{"a":59757,"l":"bank_0","c":"Shape 0's 17 glyphs: the warrior's head, body, arms in their positions and legs in their walking frames.","t":"byte","b":[0,0,0,0,0,24,56,24],"x":[59332]},{"a":59765,"t":"byte","b":[8,28,60,58,58,90,90,24]},{"a":59773,"t":"byte","b":[40,40,72,72,40,24,40,24]},{"a":59781,"t":"byte","b":[40,72,136,136,68,36,68,8]},{"a":59789,"t":"byte","b":[40,72,136,136,132,66,130,4]},{"a":59797,"t":"byte","b":[40,40,40,72,68,66,65,130]},{"a":59805,"t":"byte","b":[24,40,40,44,34,34,36,64]},{"a":59813,"t":"byte","b":[24,24,48,56,20,18,20,32]},{"a":59821,"t":"byte","b":[24,24,40,40,56,12,12,16]},{"a":59829,"t":"byte","b":[24,24,40,40,40,40,24,48]},{"a":59837,"t":"byte","b":[8,60,60,90,90,154,26,24]},{"a":59845,"t":"byte","b":[28,60,60,60,126,24,24,24]},{"a":59853,"t":"byte","b":[28,60,60,60,126,24,20,40]},{"a":59861,"t":"byte","b":[28,60,60,60,62,20,34,4]},{"a":59869,"t":"byte","b":[28,60,60,60,126,36,34,68]},{"a":59877,"t":"byte","b":[28,60,60,60,126,20,18,36]},{"a":59885,"t":"byte","b":[28,60,60,60,126,24,12,24]},{"a":59893,"l":"bank_1","c":"Shape 1's 9 glyphs.","t":"byte","b":[0,0,12,12,24,24,56,60],"x":[59334]},{"a":59901,"t":"byte","b":[0,0,12,12,24,24,25,30]},{"a":59909,"t":"byte","b":[24,24,20,18,20,24,20,24]},{"a":59917,"t":"byte","b":[24,24,20,18,36,40,36,48]},{"a":59925,"t":"byte","b":[24,24,36,34,34,68,66,32]},{"a":59933,"t":"byte","b":[24,24,36,36,98,130,130,67]},{"a":59941,"t":"byte","b":[24,24,24,20,52,68,36,6]},{"a":59949,"t":"byte","b":[24,24,8,12,8,56,40,12]},{"a":59957,"t":"byte","b":[24,24,24,24,24,24,24,28]},{"a":59965,"l":"bank_2","c":"The dragon's 12 glyphs.","t":"byte","b":[0,4,252,168,0,80,252,0],"x":[59336]},{"a":59973,"t":"byte","b":[0,4,252,168,80,252,0,0]},{"a":59981,"t":"byte","b":[0,7,13,7,15,7,15,191]},{"a":59989,"t":"byte","b":[0,0,0,60,224,56,0,0]},{"a":59997,"t":"byte","b":[254,254,254,250,243,240,240,224]},{"a":60005,"t":"byte","b":[11,31,127,255,255,255,255,255]},{"a":60013,"t":"byte","b":[0,0,0,0,3,1,7,3]},{"a":60021,"t":"byte","b":[192,192,128,0,0,0,2,254]},{"a":60029,"t":"byte","b":[192,192,128,4,12,48,66,254]},{"a":60037,"t":"byte","b":[255,127,63,31,30,30,14,27]},{"a":60045,"t":"byte","b":[3,7,6,14,124,0,0,0]},{"a":60053,"t":"byte","b":[0,0,0,0,188,104,8,0]},{"a":60061,"l":"bank_3","c":"Shape 3's 9 glyphs.","t":"byte","b":[0,0,0,28,30,28,24,124],"x":[59338]},{"a":60069,"t":"byte","b":[124,126,126,126,126,62,61,60]},{"a":60077,"t":"byte","b":[60,60,60,54,54,54,54,63]},{"a":60085,"t":"byte","b":[60,60,54,102,102,108,56,52]},{"a":60093,"t":"byte","b":[60,54,51,51,102,204,198,96]},{"a":60101,"t":"byte","b":[60,60,60,54,102,198,198,99]},{"a":60109,"t":"byte","b":[56,60,60,60,108,204,108,6]},{"a":60117,"t":"byte","b":[60,60,60,60,120,216,120,12]},{"a":60125,"t":"byte","b":[60,60,60,60,56,112,48,24]},{"a":60133,"l":"bank_4","c":"Shape 4's 10 glyphs.","t":"byte","b":[28,254,254,240,48,80,80,40],"x":[59340]},{"a":60141,"t":"byte","b":[28,254,254,240,48,48,48,152]},{"a":60149,"t":"byte","b":[28,254,254,240,16,48,40,36]},{"a":60157,"t":"byte","b":[28,254,254,240,48,48,72,68]},{"a":60165,"t":"byte","b":[28,254,254,240,48,48,72,72]},{"a":60173,"t":"byte","b":[0,15,23,38,10,10,9,5]},{"a":60181,"t":"byte","b":[0,15,23,38,10,10,9,8]},{"a":60189,"t":"byte","b":[0,15,23,38,6,10,10,5]},{"a":60197,"t":"byte","b":[0,15,23,38,12,12,12,6]},{"a":60205,"t":"byte","b":[0,15,23,38,6,10,10,5]},{"a":60213,"l":"bank_5","c":"The snake's 3 glyphs.","t":"byte","b":[0,0,0,0,12,2,1,0],"x":[59342]},{"a":60221,"t":"byte","b":[0,0,0,0,0,28,227,0]},{"a":60229,"t":"byte","b":[0,0,0,0,0,227,28,0]},{"a":60237,"l":"bank_6","c":"The raven's 6 glyphs, then a zero ($EB7D) that ends glyph_banks's last entry.","t":"byte","b":[0,3,14,30,60,112,144,8],"x":[59344]},{"a":60245,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60253,"t":"byte","b":[24,123,252,156,56,112,128,0]},{"a":60261,"t":"byte","b":[0,27,60,124,184,112,128,0]},{"a":60269,"t":"byte","b":[0,3,12,28,60,124,152,0]},{"a":60277,"t":"byte","b":[0,27,60,124,56,112,128,0]},{"a":60285,"t":"byte","b":[0],"x":[59346]},{"a":60286,"l":"carry_tables","c":"For each shape, the table get and drop look an object up in: shape 0's, shape 1's and 3's, and one for the shapes that show nothing carried.","t":"addr","b":[157,235],"oa":60317,"o":"carry_shape_0"},{"a":60288,"t":"addr","b":[174,235],"oa":60334,"o":"carry_shape_1"},{"a":60290,"t":"addr","b":[183,235],"oa":60343,"o":"carry_none"},{"a":60292,"t":"addr","b":[174,235],"oa":60334,"o":"carry_shape_1"},{"a":60294,"t":"addr","b":[183,235],"oa":60343,"o":"carry_none"},{"a":60296,"t":"addr","b":[183,235],"oa":60343,"o":"carry_none"},{"a":60298,"t":"addr","b":[183,235],"oa":60343,"o":"carry_none"},{"a":60300,"l":"object_codes","c":"The objects that have a glyph of their own, 16 entries and a 0 to end them: bits 1-7 are the object's code less $3E (83 helmet, 65 shield, 67 sword, 63 axe, 80 key, 76 stone, 70 wine, 96 food, 71 jewel, 84 and 85 ring, after object_glyph has mapped the objects that share a glyph; the five entries $FF and $FE match no object and only keep the facing of glyphs that figures carry), bit 0 the way its glyph in object_glyphs faces.","t":"byte","b":[42,255,254,6,255,11,3,36]},{"a":60308,"t":"byte","b":[28,17,255,255,68,18,45,46]},{"a":60316,"t":"byte","b":[0]},{"a":60317,"l":"carry_shape_0","c":"Shape 0's carry table: four bytes for each object it can show (the object's code as in object_codes, then the bits of record bytes 2 and 3 to set and to clear), ending with a 0.","t":"byte","b":[21,1,0,0,5,2,8,1],"x":[60286]},{"a":60325,"t":"byte","b":[3,4,0,0,1,8,8,1]},{"a":60333,"t":"byte","b":[0]},{"a":60334,"l":"carry_shape_1","c":"The carry table of shapes 1 and 3.","t":"byte","b":[5,1,2,1,1,2,2,1],"x":[60288,60292]},{"a":60342,"t":"byte","b":[0]},{"a":60343,"l":"carry_none","c":"The carry table of the dragon, shape 4, the snake and the raven: one entry and the end.","t":"byte","b":[126,0,0,0,0],"x":[60290,60294,60296,60298]},{"a":60348,"l":"object_glyphs","c":"16 glyphs, 8 bytes each, in the order of object_codes: eleven are objects' own, the glyph an object lying on the ground or thrown is drawn with; the other five (1, 2, 4, 10 and 11) are a sword, a shield and an axe as a figure holds them and a sword and an axe raised, drawn only as figures' carried parts.","t":"byte","b":[0,0,0,24,60,0,0,0]},{"a":60356,"t":"byte","b":[0,0,4,8,16,160,192,0]},{"a":60364,"t":"byte","b":[0,3,3,5,5,4,4,0]},{"a":60372,"t":"byte","b":[0,31,31,31,31,14,4,0]},{"a":60380,"t":"byte","b":[0,0,4,12,31,166,196,0]},{"a":60388,"t":"byte","b":[0,0,0,0,0,64,255,64]},{"a":60396,"t":"byte","b":[0,0,0,2,15,54,196,0]},{"a":60404,"t":"byte","b":[0,0,0,0,0,2,29,18]},{"a":60412,"t":"byte","b":[0,0,0,0,0,0,3,3]},{"a":60420,"t":"byte","b":[0,0,0,0,64,64,224,224]},{"a":60428,"t":"byte","b":[0,16,16,32,32,64,192,0]},{"a":60436,"t":"byte","b":[0,16,28,56,40,64,192,128]},{"a":60444,"t":"byte","b":[0,0,0,0,0,0,0,3]},{"a":60452,"t":"byte","b":[0,0,0,0,0,0,0,1]},{"a":60460,"t":"byte","b":[0,0,0,0,0,0,0,128]},{"a":60468,"t":"byte","b":[0,0,0,0,0,6,9,6]},{"a":60476,"l":"unused_ec3c","c":"Unused: a 17th glyph, all zeros, that nothing refers to.","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":60484,"l":"lying_glyphs","c":"A figure lying down, for each of the seven shapes: a byte with the number of glyphs (bits 0-3), how many cells behind the figure's position they start (bits 4-6: to its left for one facing, to its right for the other, the glyphs running the other way) and the way they face (bit 7), then the glyphs, drawn side by side by gfx_lie.","t":"byte","b":[3,0,0,0,0,64,127,63]},{"a":60492,"t":"byte","b":[0,0,0,0,0,254,255,255]},{"a":60500,"t":"byte","b":[63,0,0,0,0,64,224,224]},{"a":60508,"t":"byte","b":[0,2,0,0,0,0,0,129]},{"a":60516,"t":"byte","b":[255,127,0,0,0,0,0,140]},{"a":60524,"t":"byte","b":[252,240,20,3,119,135,143,207]},{"a":60532,"t":"byte","b":[255,127,63,255,254,255,255,255]},{"a":60540,"t":"byte","b":[255,255,255,254,53,142,252,252]},{"a":60548,"t":"byte","b":[255,255,255,2,7,11,62,124]},{"a":60556,"t":"byte","b":[252,216,252,3,0,0,0,0]},{"a":60564,"t":"byte","b":[64,99,127,63,0,0,0,0]},{"a":60572,"t":"byte","b":[63,255,255,255,0,0,0,0]},{"a":60580,"t":"byte","b":[156,252,252,224,2,0,16,44]},{"a":60588,"t":"byte","b":[40,40,29,31,255,0,16,32]},{"a":60596,"t":"byte","b":[32,32,224,252,252,2,0,0]},{"a":60604,"t":"byte","b":[0,0,0,0,199,56,0,0]},{"a":60612,"t":"byte","b":[0,0,0,0,32,224,2,0]},{"a":60620,"t":"byte","b":[0,0,0,2,7,31,127,0]},{"a":60628,"t":"byte","b":[0,0,0,0,128,208,240]},{"a":60635,"l":"window_glyphs","c":"Scene feature 10, a window one cell high: one glyph for each of the four building styles.","t":"byte","b":[28,20,20,20,20,20,20,62]},{"a":60643,"t":"byte","b":[16,40,68,124,68,68,68,124]},{"a":60651,"t":"byte","b":[0,24,60,126,126,126,126,126]},{"a":60659,"t":"byte","b":[60,36,60,36,36,60,36,60]},{"a":60667,"l":"tall_window_glyphs","c":"Scene feature 11, a window two cells high: two glyphs for each of the four styles.","t":"byte","b":[0,24,60,60,60,0,60,60]},{"a":60675,"t":"byte","b":[60,60,60,60,60,60,60,60]},{"a":60683,"t":"byte","b":[0,8,20,34,34,85,85,73]},{"a":60691,"t":"byte","b":[73,73,73,73,73,73,127,0]},{"a":60699,"t":"byte","b":[0,24,60,118,235,215,235,215]},{"a":60707,"t":"byte","b":[235,215,235,215,235,215,235,255]},{"a":60715,"t":"byte","b":[0,0,62,34,34,34,62,34]},{"a":60723,"t":"byte","b":[34,34,62,34,34,62,0,0]},{"a":60731,"l":"cupboard_open_lists","c":"Scene feature 6, an open cupboard, in each of the four styles: lists of glyphs drawn by draw_glyph_list, each entry a position byte (as in a figure's parts) and 8 bytes of pattern, the list ending at a byte with bit 3 set.","t":"byte","b":[4,0,0,0,0,0,0,255]},{"a":60739,"t":"byte","b":[255,3,149,149,245,181,245,149]},{"a":60747,"t":"byte","b":[149,255,255,4,0,0,0,0]},{"a":60755,"t":"byte","b":[0,0,24,102,3,129,135,161]},{"a":60763,"t":"byte","b":[225,161,135,129,255,255,4,0]},{"a":60771,"t":"byte","b":[0,0,0,0,24,36,66,3]},{"a":60779,"t":"byte","b":[255,171,171,251,171,171,171,255]},{"a":60787,"t":"byte","b":[255,3,60,66,129,129,225,161]},{"a":60795,"t":"byte","b":[129,255,255]},{"a":60798,"l":"cupboard_shut_lists","c":"Scene feature 5, a shut cupboard, in the four styles, as cupboard_open_lists.","t":"byte","b":[4,0,0,0,0,0,0,255]},{"a":60806,"t":"byte","b":[255,3,171,213,171,213,169,193]},{"a":60814,"t":"byte","b":[161,255,19,254,82,86,90,86]},{"a":60822,"t":"byte","b":[82,82,254,255,4,0,0,0]},{"a":60830,"t":"byte","b":[0,0,0,24,126,20,0,0]},{"a":60838,"t":"byte","b":[0,0,0,0,0,48,3,255]},{"a":60846,"t":"byte","b":[255,223,171,213,171,197,216,19]},{"a":60854,"t":"byte","b":[2,194,6,6,10,194,2,254]},{"a":60862,"t":"byte","b":[255,4,0,0,0,0,0,24]},{"a":60870,"t":"byte","b":[36,66,3,255,231,219,231,155]},{"a":60878,"t":"byte","b":[149,135,255,19,254,170,170,174]},{"a":60886,"t":"byte","b":[170,170,170,254,255,3,60,126]},{"a":60894,"t":"byte","b":[255,255,255,255,255,255,19,60]},{"a":60902,"t":"byte","b":[66,129,133,139,129,129,255,255]},{"a":60910,"l":"door_glyphs","c":"Scene feature 7, the door of a hut: two pairs of glyphs, the pair picked from rng_state.","t":"byte","b":[255,213,171,213,171,213,171,213]},{"a":60918,"t":"byte","b":[171,213,171,213,171,213,171,213]},{"a":60926,"t":"byte","b":[0,126,126,126,126,126,126,126]},{"a":60934,"t":"byte","b":[126,126,126,126,126,126,126,126]},{"a":60942,"l":"gate_lists","c":"The gate of a castle (draw_gate), as glyph lists: one for styles 0 and 1, one for style 2 and a taller one, three cells high, for style 3.","t":"byte","b":[4,255,255,245,213,213,253,213]},{"a":60950,"t":"byte","b":[213,20,254,254,94,86,86,86]},{"a":60958,"t":"byte","b":[86,86,3,213,213,213,213,213]},{"a":60966,"t":"byte","b":[253,213,213,19,126,110,126,86]},{"a":60974,"t":"byte","b":[86,86,86,86,255,4,127,125]},{"a":60982,"t":"byte","b":[121,113,101,65,85,65,20,254]},{"a":60990,"t":"byte","b":[190,158,142,166,130,170,130,3]},{"a":60998,"t":"byte","b":[87,65,85,65,85,65,85,65]},{"a":61006,"t":"byte","b":[19,234,130,170,130,170,130,170]},{"a":61014,"t":"byte","b":[130,255,5,64,64,64,0,1]},{"a":61022,"t":"byte","b":[15,49,113,21,2,2,2,0]},{"a":61030,"t":"byte","b":[128,240,140,142,4,177,255,255]},{"a":61038,"t":"byte","b":[177,177,255,255,177,20,141,255]},{"a":61046,"t":"byte","b":[255,141,141,255,255,141,3,177]},{"a":61054,"t":"byte","b":[255,255,177,177,255,187,145,19]},{"a":61062,"t":"byte","b":[141,255,255,141,141,255,221,137]},{"a":61070,"t":"byte","b":[255]},{"a":61071,"l":"figure_walk","c":"Graphics command 3 for a character: walks figure B from column x1 to x2 on the figures' base row ($DF39; the row and facing bytes of the command are not read). Finds its record and shape, turns it to face the way it goes, works out the steps (8 a column) and the pause between them (the walking speed), copies the shape to $5B00, in the printer buffer, and then for each step: draws the copy (XOR, so it vanishes), moves one pixel, advances each animated part's frame nibble, draws it again and waits. Returns at once if x1 = x2.","t":"code","b":[70],"m":"ld","o":"b,(hl)","x":[62886]},{"a":61072,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61073,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":61076,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":61079,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61080,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61081,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61082,"t":"code","b":[150],"m":"sub","o":"(hl)"},{"a":61083,"t":"code","b":[202,100,222],"m":"jp","oa":56932,"o":"z,gfx_return"},{"a":61086,"t":"code","b":[7],"m":"rlca"},{"a":61087,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61089,"t":"code","b":[50,241,238],"m":"ld","oa":61169,"o":"($EEF1),a"},{"a":61092,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":61093,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61094,"t":"code","b":[7],"m":"rlca"},{"a":61095,"t":"code","b":[7],"m":"rlca"},{"a":61096,"t":"code","b":[7],"m":"rlca"},{"a":61097,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":61100,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61101,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61102,"t":"code","b":[150],"m":"sub","o":"(hl)"},{"a":61103,"t":"code","b":[48,6],"m":"jr","oa":61111,"o":"nc,$EEB7"},{"a":61105,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":61107,"t":"code","b":[237,68],"m":"neg"},{"a":61109,"t":"code","b":[24,2],"m":"jr","oa":61113,"o":"$EEB9"},{"a":61111,"t":"code","b":[6,255],"m":"ld","o":"b,$FF","x":[61103]},{"a":61113,"t":"code","b":[167],"m":"and","o":"a","x":[61109]},{"a":61114,"t":"code","b":[7],"m":"rlca"},{"a":61115,"t":"code","b":[7],"m":"rlca"},{"a":61116,"t":"code","b":[7],"m":"rlca"},{"a":61117,"t":"code","b":[50,63,239],"m":"ld","oa":61247,"o":"(walk_steps),a"},{"a":61120,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":61121,"t":"code","b":[50,119,239],"m":"ld","oa":61303,"o":"($EF77),a"},{"a":61124,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":61127,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":61130,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":61133,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61134,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61135,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61136,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61137,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61138,"t":"code","b":[7],"m":"rlca"},{"a":61139,"t":"code","b":[7],"m":"rlca"},{"a":61140,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":61142,"t":"code","b":[60],"m":"inc","o":"a"},{"a":61143,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":61144,"t":"code","b":[175],"m":"xor","o":"a"},{"a":61145,"t":"code","b":[198,20],"m":"add","o":"a,$14","x":[61147]},{"a":61147,"t":"code","b":[16,252],"m":"djnz","oa":61145,"o":"$EED9"},{"a":61149,"t":"code","b":[50,89,239],"m":"ld","oa":61273,"o":"($EF59),a"},{"a":61152,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":61155,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":61158,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61159,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61160,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61162,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":61165,"t":"code","b":[205,210,241],"m":"call","oa":61906,"o":"draw_figure"},{"a":61168,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":61170,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":61173,"t":"code","b":[58,119,239],"m":"ld","oa":61303,"o":"a,($EF77)"},{"a":61176,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":61177,"t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)"},{"a":61180,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":61181,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":61184,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":61187,"t":"code","b":[17,0,91],"m":"ld","o":"de,$5B00"},{"a":61190,"t":"code","b":[1,55,0],"m":"ld","o":"bc,$0037"},{"a":61193,"t":"code","b":[237,176],"m":"ldir"},{"a":61195,"t":"code","b":[33,0,91],"m":"ld","o":"hl,$5B00","x":[61318]},{"a":61198,"t":"code","b":[205,88,241],"m":"call","oa":61784,"o":"draw_shape_copy"},{"a":61201,"t":"code","b":[33,0,91],"m":"ld","o":"hl,$5B00"},{"a":61204,"t":"code","b":[17,60,91],"m":"ld","o":"de,$5B3C"},{"a":61207,"t":"code","b":[1,55,0],"m":"ld","o":"bc,$0037"},{"a":61210,"t":"code","b":[237,176],"m":"ldir"},{"a":61212,"t":"code","b":[33,60,91],"m":"ld","o":"hl,$5B3C"},{"a":61215,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61216,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61217,"t":"code","b":[7],"m":"rlca"},{"a":61218,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61219,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":61221,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":61222,"t":"code","b":[35],"m":"inc","o":"hl","x":[61245,61265,61270]},{"a":61223,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61224,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":61226,"t":"code","b":[40,44],"m":"jr","oa":61272,"o":"z,walk_pause"},{"a":61228,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61229,"t":"code","b":[40,12],"m":"jr","oa":61243,"o":"z,$EF3B"},{"a":61231,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61232,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61233,"t":"code","b":[175],"m":"xor","o":"a"},{"a":61234,"t":"code","b":[237,111],"m":"rld"},{"a":61236,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61237,"t":"code","b":[185],"m":"cp","o":"c"},{"a":61238,"t":"code","b":[40,9],"m":"jr","oa":61249,"o":"z,walk_next_frame"},{"a":61240,"t":"code","b":[60],"m":"inc","o":"a"},{"a":61241,"t":"code","b":[237,111],"m":"rld"},{"a":61243,"t":"code","b":[35],"m":"inc","o":"hl","x":[61229]},{"a":61244,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61245,"t":"code","b":[24,231],"m":"jr","oa":61222,"o":"$EF26"},{"a":61247,"l":"walk_steps","c":"The count of pixel steps still to go, for figure_walk and for gfx_move's objects and missiles; at $EF40, the facing a figure's record had before turn_figure last turned it, which nothing reads.","t":"byte","b":[1,1],"x":[61117,61290,61296,62961,63034,63040]},{"a":61249,"l":"walk_next_frame","c":"Advances an animated part's frame: the frame nibble counts up to the last-frame nibble and back to 0.","t":"code","b":[175],"m":"xor","o":"a","x":[61238]},{"a":61250,"t":"code","b":[237,111],"m":"rld"},{"a":61252,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61253,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61254,"t":"code","b":[237,111],"m":"rld"},{"a":61256,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61257,"t":"code","b":[237,111],"m":"rld"},{"a":61259,"t":"code","b":[185],"m":"cp","o":"c"},{"a":61260,"t":"code","b":[40,5],"m":"jr","oa":61267,"o":"z,$EF53"},{"a":61262,"t":"code","b":[60],"m":"inc","o":"a"},{"a":61263,"t":"code","b":[237,111],"m":"rld"},{"a":61265,"t":"code","b":[24,211],"m":"jr","oa":61222,"o":"$EF26"},{"a":61267,"t":"code","b":[175],"m":"xor","o":"a","x":[61260]},{"a":61268,"t":"code","b":[237,111],"m":"rld"},{"a":61270,"t":"code","b":[24,206],"m":"jr","oa":61222,"o":"$EF26"},{"a":61272,"l":"walk_pause","c":"The pause between steps: B times 256 empty loops, B set by figure_walk from the speed at $EEDA times one more than bits 6-7 of record byte 4; then the figure is undrawn, moved a pixel and drawn at its new position, or drawn standing after the last step.","t":"code","b":[6,40],"m":"ld","o":"b,$28","x":[61226]},{"a":61274,"t":"code","b":[197],"m":"push","o":"bc","x":[61282]},{"a":61275,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":61277,"t":"code","b":[0],"m":"nop","x":[61278]},{"a":61278,"t":"code","b":[16,253],"m":"djnz","oa":61277,"o":"$EF5D"},{"a":61280,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":61281,"t":"code","b":[0],"m":"nop"},{"a":61282,"t":"code","b":[16,246],"m":"djnz","oa":61274,"o":"$EF5A"},{"a":61284,"t":"code","b":[33,0,91],"m":"ld","o":"hl,$5B00"},{"a":61287,"t":"code","b":[205,88,241],"m":"call","oa":61784,"o":"draw_shape_copy"},{"a":61290,"t":"code","b":[58,63,239],"m":"ld","oa":61247,"o":"a,(walk_steps)"},{"a":61293,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61294,"t":"code","b":[40,25],"m":"jr","oa":61321,"o":"z,$EF89"},{"a":61296,"t":"code","b":[50,63,239],"m":"ld","oa":61247,"o":"(walk_steps),a"},{"a":61299,"t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)"},{"a":61302,"t":"code","b":[198,1],"m":"add","o":"a,$01"},{"a":61304,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":61307,"t":"code","b":[33,60,91],"m":"ld","o":"hl,$5B3C"},{"a":61310,"t":"code","b":[17,0,91],"m":"ld","o":"de,$5B00"},{"a":61313,"t":"code","b":[1,55,0],"m":"ld","o":"bc,$0037"},{"a":61316,"t":"code","b":[237,176],"m":"ldir"},{"a":61318,"t":"code","b":[195,11,239],"m":"jp","oa":61195,"o":"$EF0B"},{"a":61321,"t":"code","b":[195,210,241],"m":"jp","oa":61906,"o":"draw_figure","x":[61294]},{"a":61324,"l":"figure_put","c":"Graphics command 2 for a character: draws figure B at the column given, on the figures' base row (the row byte only places objects), facing as the last byte says.","t":"code","b":[70],"m":"ld","o":"b,(hl)","x":[61985]},{"a":61325,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61326,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":61329,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":61332,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61333,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":61336,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61337,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61339,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":61342,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":61345,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":61348,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":61351,"t":"code","b":[195,210,241],"m":"jp","oa":61906,"o":"draw_figure"},{"a":61354,"l":"check_figure","c":"Refuses (through gfx_return) a figure number of 64 or more.","t":"code","b":[120],"m":"ld","o":"a,b","x":[61073,61326,62215,62477,62679,63078,63266,65092]},{"a":61355,"t":"code","b":[43],"m":"dec","o":"hl"},{"a":61356,"t":"code","b":[254,64],"m":"cp","o":"$40"},{"a":61358,"t":"code","b":[210,100,222],"m":"jp","oa":56932,"o":"nc,gfx_return"},{"a":61361,"t":"code","b":[167],"m":"and","o":"a"},{"a":61362,"t":"code","b":[50,182,239],"m":"ld","oa":61366,"o":"(figure_vars),a"},{"a":61365,"t":"code","b":[201],"m":"ret"},{"a":61366,"l":"figure_vars","c":"The figure number being looked for ($EFB6), and a place to keep HL ($EFB7) while the figure routines use it.","t":"byte","b":[24,30,233],"x":[61362]},{"a":61369,"l":"find_figure","c":"Finds the record of figure A in figure_records ($EFEA keeps its address) and its shape in figure_shapes (figure_shape); a number with no record goes to gfx_return.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[61076,61329,62218,62480,62682,63081,63269,65095]},{"a":61372,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61373,"t":"code","b":[17,5,0],"m":"ld","o":"de,$0005"},{"a":61376,"t":"code","b":[33,170,232],"m":"ld","o":"hl,$E8AA"},{"a":61379,"t":"code","b":[0],"m":"nop"},{"a":61380,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[61386]},{"a":61381,"t":"code","b":[185],"m":"cp","o":"c"},{"a":61382,"t":"code","b":[40,7],"m":"jr","oa":61391,"o":"z,$EFCF"},{"a":61384,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61385,"t":"code","b":[167],"m":"and","o":"a"},{"a":61386,"t":"code","b":[32,248],"m":"jr","oa":61380,"o":"nz,$EFC4"},{"a":61388,"t":"code","b":[195,100,222],"m":"jp","oa":56932,"o":"gfx_return"},{"a":61391,"t":"code","b":[34,234,239],"m":"ld","oa":61418,"o":"($EFEA),hl","x":[61382]},{"a":61394,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61395,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61396,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":61398,"t":"code","b":[33,212,231],"m":"ld","o":"hl,$E7D4"},{"a":61401,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61402,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":61404,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":61405,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":61406,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61407,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61408,"t":"code","b":[237,67,232,239],"m":"ld","oa":61416,"o":"(figure_shape),bc"},{"a":61412,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":61415,"t":"code","b":[201],"m":"ret"},{"a":61416,"l":"figure_shape","c":"The address of the shape being drawn, and at $EFEA the address of the figure's record.","t":"byte","b":[14,232,29,233],"x":[61184,61408,61469,61542,61619,61656,61906,62300,62757,63790]},{"a":61420,"l":"select_bank","c":"Points the glyph routines at shape bank A: $DF35 gets the bank's address from glyph_banks, $DF37 its number of glyphs.","t":"code","b":[7],"m":"rlca","x":[61548]},{"a":61421,"t":"code","b":[229],"m":"push","o":"hl"},{"a":61422,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61423,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":61425,"t":"code","b":[33,196,231],"m":"ld","o":"hl,$E7C4"},{"a":61428,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":61429,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":61430,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61431,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":61432,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61433,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":61434,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61435,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61436,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":61437,"t":"code","b":[34,53,223],"m":"ld","oa":57141,"o":"(bank_address),hl"},{"a":61440,"t":"code","b":[80],"m":"ld","o":"d,b"},{"a":61441,"t":"code","b":[89],"m":"ld","o":"e,c"},{"a":61442,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":61443,"t":"code","b":[167],"m":"and","o":"a"},{"a":61444,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":61446,"t":"code","b":[203,60],"m":"srl","o":"h"},{"a":61448,"t":"code","b":[203,29],"m":"rr","o":"l"},{"a":61450,"t":"code","b":[203,60],"m":"srl","o":"h"},{"a":61452,"t":"code","b":[203,29],"m":"rr","o":"l"},{"a":61454,"t":"code","b":[203,60],"m":"srl","o":"h"},{"a":61456,"t":"code","b":[203,29],"m":"rr","o":"l"},{"a":61458,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":61459,"t":"code","b":[125],"m":"ld","o":"a,l"},{"a":61460,"t":"code","b":[50,55,223],"m":"ld","oa":57143,"o":"(bank_size),a"},{"a":61463,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":61464,"t":"code","b":[201],"m":"ret"},{"a":61465,"l":"turn_figure","c":"Turns the figure to face the way A says (0 or 1): mirrors in place each carried part's glyph in object_glyphs that faces the other way, then the shape's whole bank (mirror_chars), noting the new facing in the shape and the record.","t":"code","b":[79],"m":"ld","o":"c,a","x":[61162,61170,61339,62265,62692,63279]},{"a":61466,"t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl"},{"a":61469,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":61472,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61473,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61474,"t":"code","b":[35],"m":"inc","o":"hl","x":[61524]},{"a":61475,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61476,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":61477,"t":"code","b":[221,33,140,235],"m":"ld","o":"ix,$EB8C"},{"a":61481,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":61483,"t":"code","b":[221,25],"m":"add","o":"ix,de"},{"a":61485,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":61487,"t":"code","b":[221,166,0],"m":"and","o":"(ix+$00)"},{"a":61490,"t":"code","b":[185],"m":"cp","o":"c"},{"a":61491,"t":"code","b":[40,31],"m":"jr","oa":61524,"o":"z,$F054"},{"a":61493,"t":"code","b":[229],"m":"push","o":"hl"},{"a":61494,"t":"code","b":[197],"m":"push","o":"bc"},{"a":61495,"t":"code","b":[62,254],"m":"ld","o":"a,$FE"},{"a":61497,"t":"code","b":[221,166,0],"m":"and","o":"(ix+$00)"},{"a":61500,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":61501,"t":"code","b":[221,119,0],"m":"ld","o":"(ix+$00),a"},{"a":61504,"t":"code","b":[33,188,235],"m":"ld","o":"hl,$EBBC"},{"a":61507,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61509,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61511,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61513,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61515,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61516,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61517,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":61519,"t":"code","b":[205,217,221],"m":"call","oa":56793,"o":"mirror_chars"},{"a":61522,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":61523,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":61524,"t":"code","b":[16,204],"m":"djnz","oa":61474,"o":"$F022","x":[61491]},{"a":61526,"t":"code","b":[65],"m":"ld","o":"b,c"},{"a":61527,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":61530,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61531,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61532,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61534,"t":"code","b":[50,64,239],"m":"ld","oa":61248,"o":"($EF40),a"},{"a":61537,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61538,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":61540,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":61541,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":61542,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":61545,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61546,"t":"code","b":[197],"m":"push","o":"bc"},{"a":61547,"t":"code","b":[31],"m":"rra"},{"a":61548,"t":"code","b":[205,236,239],"m":"call","oa":61420,"o":"select_bank"},{"a":61551,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":61552,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61553,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61555,"t":"code","b":[184],"m":"cp","o":"b"},{"a":61556,"t":"code","b":[32,4],"m":"jr","oa":61562,"o":"nz,$F07A"},{"a":61558,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)","x":[61611]},{"a":61561,"t":"code","b":[201],"m":"ret"},{"a":61562,"t":"code","b":[62,254],"m":"ld","o":"a,$FE","x":[61556]},{"a":61564,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":61565,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":61566,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":61567,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61568,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61569,"t":"code","b":[62,128],"m":"ld","o":"a,$80","x":[61575]},{"a":61571,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61572,"t":"code","b":[174],"m":"xor","o":"(hl)"},{"a":61573,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":61574,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61575,"t":"code","b":[16,248],"m":"djnz","oa":61569,"o":"$F081"},{"a":61577,"t":"code","b":[35],"m":"inc","o":"hl","x":[61592]},{"a":61578,"t":"code","b":[62,3],"m":"ld","o":"a,$03"},{"a":61580,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":61581,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61582,"t":"code","b":[40,17],"m":"jr","oa":61601,"o":"z,$F0A1"},{"a":61584,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61585,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":61587,"t":"code","b":[32,6],"m":"jr","oa":61595,"o":"nz,$F09B"},{"a":61589,"t":"code","b":[174],"m":"xor","o":"(hl)"},{"a":61590,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":61591,"t":"code","b":[35],"m":"inc","o":"hl","x":[61599]},{"a":61592,"t":"code","b":[195,137,240],"m":"jp","oa":61577,"o":"$F089"},{"a":61595,"t":"code","b":[174],"m":"xor","o":"(hl)","x":[61587]},{"a":61596,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":61597,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61598,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61599,"t":"code","b":[24,246],"m":"jr","oa":61591,"o":"$F097"},{"a":61601,"t":"code","b":[58,55,223],"m":"ld","oa":57143,"o":"a,(bank_size)","x":[61582]},{"a":61604,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":61605,"t":"code","b":[42,53,223],"m":"ld","oa":57141,"o":"hl,(bank_address)"},{"a":61608,"t":"code","b":[205,217,221],"m":"call","oa":56793,"o":"mirror_chars"},{"a":61611,"t":"code","b":[24,201],"m":"jr","oa":61558,"o":"$F076"},{"a":61613,"l":"show_carried","c":"Sets bit 3 of each carried part's position in the shape from the bits of record byte 2, so only what the figure carries is drawn.","t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)","x":[61124,61342,62268,62451,62695,63282,63586]},{"a":61616,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61617,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61618,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":61619,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":61622,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61623,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61624,"t":"code","b":[22,1],"m":"ld","o":"d,$01"},{"a":61626,"t":"code","b":[35],"m":"inc","o":"hl","x":[61637]},{"a":61627,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":61628,"t":"code","b":[162],"m":"and","o":"d"},{"a":61629,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61630,"t":"code","b":[32,8],"m":"jr","oa":61640,"o":"nz,$F0C8"},{"a":61632,"t":"code","b":[203,158],"m":"res","o":"3,(hl)"},{"a":61634,"t":"code","b":[35],"m":"inc","o":"hl","x":[61642]},{"a":61635,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61637,"t":"code","b":[16,243],"m":"djnz","oa":61626,"o":"$F0BA"},{"a":61639,"t":"code","b":[201],"m":"ret"},{"a":61640,"t":"code","b":[203,222],"m":"set","o":"3,(hl)","x":[61630]},{"a":61642,"t":"code","b":[24,246],"m":"jr","oa":61634,"o":"$F0C2"},{"a":61644,"l":"show_optional","c":"Sets bit 6 of each optional body part's flags from the bits of record bytes 3 and 4, choosing which of the optional glyphs are drawn: the arms' positions and, for shape 0, which legs or lower body.","t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)","x":[61152,61345,62271,62454,62698,63285,63367]},{"a":61647,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61648,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61649,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61650,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":61651,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61652,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61653,"t":"code","b":[230,63],"m":"and","o":"$3F"},{"a":61655,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":61656,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":61659,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61660,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":61661,"t":"code","b":[203,33],"m":"sla","o":"c"},{"a":61663,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":61665,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":61666,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61667,"t":"code","b":[14,1],"m":"ld","o":"c,$01"},{"a":61669,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[61687]},{"a":61670,"t":"code","b":[167],"m":"and","o":"a"},{"a":61671,"t":"code","b":[200],"m":"ret","o":"z"},{"a":61672,"t":"code","b":[203,126],"m":"bit","o":"7,(hl)"},{"a":61674,"t":"code","b":[32,17],"m":"jr","oa":61693,"o":"nz,$F0FD"},{"a":61676,"t":"code","b":[62,3],"m":"ld","o":"a,$03","x":[61701,61706]},{"a":61678,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":61679,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61680,"t":"code","b":[40,2],"m":"jr","oa":61684,"o":"z,$F0F4"},{"a":61682,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61683,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61684,"t":"code","b":[35],"m":"inc","o":"hl","x":[61680]},{"a":61685,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61686,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61687,"t":"code","b":[24,236],"m":"jr","oa":61669,"o":"$F0E5"},{"a":61689,"t":"code","b":[203,182],"m":"res","o":"6,(hl)","x":[61695]},{"a":61691,"t":"code","b":[24,6],"m":"jr","oa":61699,"o":"$F103"},{"a":61693,"t":"code","b":[122],"m":"ld","o":"a,d","x":[61674]},{"a":61694,"t":"code","b":[161],"m":"and","o":"c"},{"a":61695,"t":"code","b":[40,248],"m":"jr","oa":61689,"o":"z,$F0F9"},{"a":61697,"t":"code","b":[203,246],"m":"set","o":"6,(hl)"},{"a":61699,"t":"code","b":[203,33],"m":"sla","o":"c","x":[61691]},{"a":61701,"t":"code","b":[48,229],"m":"jr","oa":61676,"o":"nc,$F0EC"},{"a":61703,"t":"code","b":[14,1],"m":"ld","o":"c,$01"},{"a":61705,"t":"code","b":[83],"m":"ld","o":"d,e"},{"a":61706,"t":"code","b":[24,224],"m":"jr","oa":61676,"o":"$F0EC"},{"a":61708,"l":"part_position","c":"B, C = the screen position of a part from its position byte A and the figure's corner ($DF38 x, $DF39 y); carry set when it falls off the screen, past the right edge or, for a part to the left of the corner, past the left.","t":"code","b":[87],"m":"ld","o":"d,a","x":[61794,61832,61862,61918,61950,62769,62797,63913,64355,64762,64770,64817,64885,64921,64967,65033]},{"a":61709,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":61711,"t":"code","b":[7],"m":"rlca"},{"a":61712,"t":"code","b":[7],"m":"rlca"},{"a":61713,"t":"code","b":[7],"m":"rlca"},{"a":61714,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":61715,"t":"code","b":[58,57,223],"m":"ld","oa":57145,"o":"a,($DF39)"},{"a":61718,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":61719,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":61720,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":61721,"t":"code","b":[203,127],"m":"bit","o":"7,a"},{"a":61723,"t":"code","b":[32,19],"m":"jr","oa":61744,"o":"nz,$F130"},{"a":61725,"t":"code","b":[230,112],"m":"and","o":"$70"},{"a":61727,"t":"code","b":[15],"m":"rrca","x":[61746]},{"a":61728,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61729,"t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)"},{"a":61732,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":61733,"t":"code","b":[79],"m":"ld","o":"c,a","x":[61754]},{"a":61734,"t":"code","b":[56,6],"m":"jr","oa":61742,"o":"c,$F12E"},{"a":61736,"t":"code","b":[254,249],"m":"cp","o":"$F9"},{"a":61738,"t":"code","b":[48,2],"m":"jr","oa":61742,"o":"nc,$F12E"},{"a":61740,"t":"code","b":[175],"m":"xor","o":"a"},{"a":61741,"t":"code","b":[201],"m":"ret"},{"a":61742,"t":"code","b":[55],"m":"scf","x":[61734,61738]},{"a":61743,"t":"code","b":[201],"m":"ret"},{"a":61744,"t":"code","b":[230,112],"m":"and","o":"$70","x":[61723]},{"a":61746,"t":"code","b":[40,235],"m":"jr","oa":61727,"o":"z,$F11F"},{"a":61748,"t":"code","b":[15],"m":"rrca"},{"a":61749,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":61750,"t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)"},{"a":61753,"t":"code","b":[145],"m":"sub","o":"c"},{"a":61754,"t":"code","b":[24,233],"m":"jr","oa":61733,"o":"$F125"},{"a":61756,"l":"draw_object_glyph","c":"Draws glyph A of object_glyphs at B, C.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[61801,61925]},{"a":61759,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":61760,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":61762,"t":"code","b":[33,188,235],"m":"ld","o":"hl,$EBBC"},{"a":61765,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61767,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61769,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61771,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61773,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61774,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61775,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":61778,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":61781,"t":"code","b":[201],"m":"ret"},{"a":61782,"t":"code","b":[251],"m":"ei","x":[61815]},{"a":61783,"t":"code","b":[201],"m":"ret"},{"a":61784,"l":"draw_shape_copy","c":"Draws the shape copy at HL with interrupts off: the carried parts that show, then the body parts that are not marked standing-only (bit 5 of the flags), each optional one only when it is chosen, each animated one at its current frame.","t":"code","b":[243],"m":"di","x":[61198,61287]},{"a":61785,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61786,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61787,"t":"code","b":[35],"m":"inc","o":"hl","x":[61805]},{"a":61788,"t":"code","b":[197],"m":"push","o":"bc"},{"a":61789,"t":"code","b":[203,94],"m":"bit","o":"3,(hl)"},{"a":61791,"t":"code","b":[40,16],"m":"jr","oa":61809,"o":"z,$F171"},{"a":61793,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61794,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":61797,"t":"code","b":[56,10],"m":"jr","oa":61809,"o":"c,$F171"},{"a":61799,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61800,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61801,"t":"code","b":[205,60,241],"m":"call","oa":61756,"o":"draw_object_glyph"},{"a":61804,"t":"code","b":[193],"m":"pop","o":"bc","x":[61810]},{"a":61805,"t":"code","b":[16,236],"m":"djnz","oa":61787,"o":"$F15B"},{"a":61807,"t":"code","b":[24,3],"m":"jr","oa":61812,"o":"$F174"},{"a":61809,"t":"code","b":[35],"m":"inc","o":"hl","x":[61791,61797]},{"a":61810,"t":"code","b":[24,248],"m":"jr","oa":61804,"o":"$F16C"},{"a":61812,"t":"code","b":[35],"m":"inc","o":"hl","x":[61807,61836,61842,61859,61878]},{"a":61813,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61814,"t":"code","b":[167],"m":"and","o":"a"},{"a":61815,"t":"code","b":[40,221],"m":"jr","oa":61782,"o":"z,$F156"},{"a":61817,"t":"code","b":[203,111],"m":"bit","o":"5,a"},{"a":61819,"t":"code","b":[32,29],"m":"jr","oa":61850,"o":"nz,$F19A"},{"a":61821,"t":"code","b":[203,127],"m":"bit","o":"7,a"},{"a":61823,"t":"code","b":[32,19],"m":"jr","oa":61844,"o":"nz,$F194"},{"a":61825,"t":"code","b":[230,3],"m":"and","o":"$03","x":[61848]},{"a":61827,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61828,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61829,"t":"code","b":[32,30],"m":"jr","oa":61861,"o":"nz,$F1A5"},{"a":61831,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61832,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":61835,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61836,"t":"code","b":[56,230],"m":"jr","oa":61812,"o":"c,$F174"},{"a":61838,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61839,"t":"code","b":[205,184,241],"m":"call","oa":61880,"o":"draw_bank_glyph"},{"a":61842,"t":"code","b":[24,224],"m":"jr","oa":61812,"o":"$F174"},{"a":61844,"t":"code","b":[203,119],"m":"bit","o":"6,a","x":[61823]},{"a":61846,"t":"code","b":[40,2],"m":"jr","oa":61850,"o":"z,$F19A"},{"a":61848,"t":"code","b":[24,231],"m":"jr","oa":61825,"o":"$F181"},{"a":61850,"t":"code","b":[230,3],"m":"and","o":"$03","x":[61819,61846]},{"a":61852,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61853,"t":"code","b":[40,2],"m":"jr","oa":61857,"o":"z,$F1A1"},{"a":61855,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61856,"t":"code","b":[35],"m":"inc","o":"hl","x":[61865]},{"a":61857,"t":"code","b":[35],"m":"inc","o":"hl","x":[61853]},{"a":61858,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61859,"t":"code","b":[24,207],"m":"jr","oa":61812,"o":"$F174"},{"a":61861,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[61829]},{"a":61862,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":61865,"t":"code","b":[56,245],"m":"jr","oa":61856,"o":"c,$F1A0"},{"a":61867,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61868,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61869,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":61870,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61871,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61872,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":61874,"t":"code","b":[130],"m":"add","o":"a,d"},{"a":61875,"t":"code","b":[205,184,241],"m":"call","oa":61880,"o":"draw_bank_glyph"},{"a":61878,"t":"code","b":[24,188],"m":"jr","oa":61812,"o":"$F174"},{"a":61880,"l":"draw_bank_glyph","c":"Draws glyph A of the current bank at B, C.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[61839,61875,61957]},{"a":61883,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":61884,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":61886,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61888,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61890,"t":"code","b":[203,35],"m":"sla","o":"e"},{"a":61892,"t":"code","b":[203,18],"m":"rl","o":"d"},{"a":61894,"t":"code","b":[42,53,223],"m":"ld","oa":57141,"o":"hl,(bank_address)"},{"a":61897,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61898,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":61899,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":61902,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":61905,"t":"code","b":[201],"m":"ret"},{"a":61906,"l":"draw_figure","c":"Draws the figure from its shape itself, standing: the carried parts that show and the body parts marked for standing (bit 4 of the flags), each optional one only when it is chosen; used when it does not move.","t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)","x":[61165,61321,61351,62282,62465,62720,63331,63378,63553,63589]},{"a":61909,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61910,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":61911,"t":"code","b":[35],"m":"inc","o":"hl","x":[61929]},{"a":61912,"t":"code","b":[197],"m":"push","o":"bc"},{"a":61913,"t":"code","b":[203,94],"m":"bit","o":"3,(hl)"},{"a":61915,"t":"code","b":[40,16],"m":"jr","oa":61933,"o":"z,$F1ED"},{"a":61917,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61918,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":61921,"t":"code","b":[56,10],"m":"jr","oa":61933,"o":"c,$F1ED"},{"a":61923,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61924,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61925,"t":"code","b":[205,60,241],"m":"call","oa":61756,"o":"draw_object_glyph"},{"a":61928,"t":"code","b":[193],"m":"pop","o":"bc","x":[61934]},{"a":61929,"t":"code","b":[16,236],"m":"djnz","oa":61911,"o":"$F1D7"},{"a":61931,"t":"code","b":[24,3],"m":"jr","oa":61936,"o":"$F1F0"},{"a":61933,"t":"code","b":[35],"m":"inc","o":"hl","x":[61915,61921]},{"a":61934,"t":"code","b":[24,248],"m":"jr","oa":61928,"o":"$F1E8"},{"a":61936,"t":"code","b":[35],"m":"inc","o":"hl","x":[61931,61954,61960,61975]},{"a":61937,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61938,"t":"code","b":[167],"m":"and","o":"a"},{"a":61939,"t":"code","b":[200],"m":"ret","o":"z"},{"a":61940,"t":"code","b":[203,103],"m":"bit","o":"4,a"},{"a":61942,"t":"code","b":[40,22],"m":"jr","oa":61966,"o":"z,$F20E"},{"a":61944,"t":"code","b":[203,127],"m":"bit","o":"7,a"},{"a":61946,"t":"code","b":[32,14],"m":"jr","oa":61962,"o":"nz,$F20A"},{"a":61948,"t":"code","b":[35],"m":"inc","o":"hl","x":[61964]},{"a":61949,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61950,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":61953,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61954,"t":"code","b":[56,236],"m":"jr","oa":61936,"o":"c,$F1F0"},{"a":61956,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61957,"t":"code","b":[205,184,241],"m":"call","oa":61880,"o":"draw_bank_glyph"},{"a":61960,"t":"code","b":[24,230],"m":"jr","oa":61936,"o":"$F1F0"},{"a":61962,"t":"code","b":[203,119],"m":"bit","o":"6,a","x":[61946]},{"a":61964,"t":"code","b":[32,238],"m":"jr","oa":61948,"o":"nz,$F1FC"},{"a":61966,"t":"code","b":[230,3],"m":"and","o":"$03","x":[61942]},{"a":61968,"t":"code","b":[61],"m":"dec","o":"a"},{"a":61969,"t":"code","b":[40,2],"m":"jr","oa":61973,"o":"z,$F215"},{"a":61971,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61972,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61973,"t":"code","b":[35],"m":"inc","o":"hl","x":[61969]},{"a":61974,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":61975,"t":"code","b":[24,215],"m":"jr","oa":61936,"o":"$F1F0"},{"a":61977,"l":"gfx_put","c":"Graphics command 2 (gp, line 7050): five bytes, the command, a character or an object, its column, its row and the way it faces. A character goes to figure_put; an object's glyph is looked up, turned and drawn at the position.","t":"code","b":[254,5],"m":"cp","o":"$05","x":[63455]},{"a":61979,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":61982,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61983,"t":"code","b":[254,63],"m":"cp","o":"$3F"},{"a":61985,"t":"code","b":[218,140,239],"m":"jp","oa":61324,"o":"c,figure_put"},{"a":61988,"t":"code","b":[205,88,242],"m":"call","oa":62040,"o":"object_glyph"},{"a":61991,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":61994,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":61995,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":61997,"t":"code","b":[205,215,242],"m":"call","oa":62167,"o":"turn_object"},{"a":62000,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":62004,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":62007,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":62010,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":62013,"l":"object_offset","c":"Moves an object a whole column, 8 pixels, left or right: from gfx_get_drop and from the eating and drinking animations to the column beside the figure where it lies on the ground (the eating and drinking animations rub the food or wine out there before the frames play).","t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)","x":[62234,63695]},{"a":62016,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62017,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62018,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62020,"t":"code","b":[40,2],"m":"jr","oa":62024,"o":"z,$F248"},{"a":62022,"t":"code","b":[62,16],"m":"ld","o":"a,$10"},{"a":62024,"t":"code","b":[214,8],"m":"sub","o":"$08","x":[62020]},{"a":62026,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62027,"t":"code","b":[58,184,242],"m":"ld","oa":62136,"o":"a,(object_xy)"},{"a":62030,"t":"code","b":[128],"m":"add","o":"a,b"},{"a":62031,"t":"code","b":[50,184,242],"m":"ld","oa":62136,"o":"(object_xy),a"},{"a":62034,"t":"code","b":[201],"m":"ret"},{"a":62035,"l":"object_vars","c":"The object being drawn: its entry in object_codes ($F253), its glyph's address ($F255) and the way the glyph faces ($F257).","t":"byte","b":[145,235,228,235,0],"x":[62103,62167,62294,62395,63161]},{"a":62040,"l":"object_glyph","c":"Finds the glyph of the object whose number is at HL (and returns HL past it): objects with no glyph of their own borrow another's (64 Felstrong the axe's, 69 Skalir the sword's, 72 Skornir the shield's, 78 Drapnir the ring's, 79 Ofnir the key's, 82 Grimnir the helmet's), then object_codes is searched.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[61988,62222,62897,63683]},{"a":62041,"t":"code","b":[254,64],"m":"cp","o":"$40"},{"a":62043,"t":"code","b":[32,1],"m":"jr","oa":62046,"o":"nz,$F25E"},{"a":62045,"t":"code","b":[61],"m":"dec","o":"a"},{"a":62046,"t":"code","b":[254,69],"m":"cp","o":"$45","x":[62043]},{"a":62048,"t":"code","b":[32,2],"m":"jr","oa":62052,"o":"nz,$F264"},{"a":62050,"t":"code","b":[62,67],"m":"ld","o":"a,$43"},{"a":62052,"t":"code","b":[254,72],"m":"cp","o":"$48","x":[62048]},{"a":62054,"t":"code","b":[32,2],"m":"jr","oa":62058,"o":"nz,$F26A"},{"a":62056,"t":"code","b":[62,65],"m":"ld","o":"a,$41"},{"a":62058,"t":"code","b":[254,82],"m":"cp","o":"$52","x":[62054]},{"a":62060,"t":"code","b":[32,1],"m":"jr","oa":62063,"o":"nz,$F26F"},{"a":62062,"t":"code","b":[60],"m":"inc","o":"a"},{"a":62063,"t":"code","b":[254,78],"m":"cp","o":"$4E","x":[62060]},{"a":62065,"t":"code","b":[32,2],"m":"jr","oa":62069,"o":"nz,$F275"},{"a":62067,"t":"code","b":[62,85],"m":"ld","o":"a,$55"},{"a":62069,"t":"code","b":[254,79],"m":"cp","o":"$4F","x":[62065]},{"a":62071,"t":"code","b":[32,1],"m":"jr","oa":62074,"o":"nz,$F27A"},{"a":62073,"t":"code","b":[60],"m":"inc","o":"a"},{"a":62074,"t":"code","b":[214,62],"m":"sub","o":"$3E","x":[62071]},{"a":62076,"t":"code","b":[230,127],"m":"and","o":"$7F"},{"a":62078,"t":"code","b":[203,39],"m":"sla","o":"a"},{"a":62080,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62082,"t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl"},{"a":62085,"t":"code","b":[33,140,235],"m":"ld","o":"hl,$EB8C"},{"a":62088,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":62089,"t":"code","b":[62,254],"m":"ld","o":"a,$FE","x":[62101]},{"a":62091,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":62092,"t":"code","b":[185],"m":"cp","o":"c"},{"a":62093,"t":"code","b":[40,8],"m":"jr","oa":62103,"o":"z,$F297"},{"a":62095,"t":"code","b":[167],"m":"and","o":"a"},{"a":62096,"t":"code","b":[202,100,222],"m":"jp","oa":56932,"o":"z,gfx_return"},{"a":62099,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62100,"t":"code","b":[4],"m":"inc","o":"b"},{"a":62101,"t":"code","b":[24,242],"m":"jr","oa":62089,"o":"$F289"},{"a":62103,"t":"code","b":[34,83,242],"m":"ld","oa":62035,"o":"(object_vars),hl","x":[62093]},{"a":62106,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62107,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62109,"t":"code","b":[50,87,242],"m":"ld","oa":62039,"o":"($F257),a"},{"a":62112,"t":"code","b":[72],"m":"ld","o":"c,b"},{"a":62113,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62115,"t":"code","b":[33,188,235],"m":"ld","o":"hl,$EBBC"},{"a":62118,"t":"code","b":[203,33],"m":"sla","o":"c"},{"a":62120,"t":"code","b":[203,16],"m":"rl","o":"b"},{"a":62122,"t":"code","b":[203,33],"m":"sla","o":"c"},{"a":62124,"t":"code","b":[203,16],"m":"rl","o":"b"},{"a":62126,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":62127,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":62128,"t":"code","b":[34,85,242],"m":"ld","oa":62037,"o":"($F255),hl"},{"a":62131,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":62134,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62135,"t":"code","b":[201],"m":"ret"},{"a":62136,"l":"object_xy","c":"The pixel position of the object being drawn: x, then y.","t":"byte","b":[8,64],"x":[62000,62027,62031,62147,62240,62940,62968,62990,63005,63043,63048,63057,63698]},{"a":62138,"l":"read_position","c":"Reads a column (x 8) and a row (x 8, added to the figures' base y at $DF39) from the command string at HL.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[61333,61991,62225,62484,62908,63317,63784]},{"a":62139,"t":"code","b":[230,31],"m":"and","o":"$1F"},{"a":62141,"t":"code","b":[7],"m":"rlca"},{"a":62142,"t":"code","b":[7],"m":"rlca"},{"a":62143,"t":"code","b":[7],"m":"rlca"},{"a":62144,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":62147,"t":"code","b":[50,184,242],"m":"ld","oa":62136,"o":"(object_xy),a"},{"a":62150,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62151,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62152,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":62154,"t":"code","b":[7],"m":"rlca"},{"a":62155,"t":"code","b":[7],"m":"rlca"},{"a":62156,"t":"code","b":[7],"m":"rlca"},{"a":62157,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":62158,"t":"code","b":[58,57,223],"m":"ld","oa":57145,"o":"a,($DF39)"},{"a":62161,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":62162,"t":"code","b":[50,185,242],"m":"ld","oa":62137,"o":"($F2B9),a"},{"a":62165,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62166,"t":"code","b":[201],"m":"ret"},{"a":62167,"l":"turn_object","c":"Turns the object's glyph to face the way A says, mirroring it in place.","t":"code","b":[42,83,242],"m":"ld","oa":62035,"o":"hl,(object_vars)","x":[61997,62231,62930,62987,63002,63692]},{"a":62170,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62171,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62172,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62174,"t":"code","b":[184],"m":"cp","o":"b"},{"a":62175,"t":"code","b":[200],"m":"ret","o":"z"},{"a":62176,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62177,"t":"code","b":[238,1],"m":"xor","o":"$01"},{"a":62179,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62180,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":62183,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":62185,"t":"code","b":[195,217,221],"m":"jp","oa":56793,"o":"mirror_chars"},{"a":62188,"l":"draw_off","c":"Bit 0 set: the command only changes a record and draws nothing, because the figure is not on the screen.","t":"byte","b":[1]},{"a":62189,"l":"gfx_get_drop","c":"Graphics commands 7 and 8, get and drop (gget, gdrop: lines 7270, 7320): six bytes, the command, a character, an object, a column, a row and a facing; or three, which only change the record. Draws the object (XOR, so a lying object vanishes when it is picked up), and redraws the figure with the object shown or not: the object's entry in the shape's carry table sets or clears bits in record bytes 2 and 3.","t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC","x":[63442,63465,63467]},{"a":62193,"t":"code","b":[254,6],"m":"cp","o":"$06"},{"a":62195,"t":"code","b":[40,11],"m":"jr","oa":62208,"o":"z,$F300"},{"a":62197,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":62199,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":62202,"t":"code","b":[221,203,0,198],"m":"set","o":"0,(ix+$00)"},{"a":62206,"t":"code","b":[24,4],"m":"jr","oa":62212,"o":"$F304"},{"a":62208,"t":"code","b":[221,203,0,134],"m":"res","o":"0,(ix+$00)","x":[62195]},{"a":62212,"t":"code","b":[70],"m":"ld","o":"b,(hl)","x":[62206]},{"a":62213,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62214,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":62215,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":62218,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":62221,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62222,"t":"code","b":[205,88,242],"m":"call","oa":62040,"o":"object_glyph"},{"a":62225,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":62228,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62229,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62231,"t":"code","b":[205,215,242],"m":"call","oa":62167,"o":"turn_object"},{"a":62234,"t":"code","b":[205,61,242],"m":"call","oa":62013,"o":"object_offset"},{"a":62237,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":62240,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":62244,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":62247,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":62251,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62255,"t":"code","b":[204,18,221],"m":"call","oa":56594,"o":"z,draw_glyph"},{"a":62258,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":62261,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62262,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62263,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62265,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":62268,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":62271,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":62274,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":62278,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62282,"t":"code","b":[204,210,241],"m":"call","oa":61906,"o":"z,draw_figure"},{"a":62285,"t":"code","b":[42,77,92],"m":"ld","oa":23629,"o":"hl,($5C4D)"},{"a":62288,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62289,"t":"code","b":[214,7],"m":"sub","o":"$07"},{"a":62291,"t":"code","b":[50,135,243],"m":"ld","oa":62343,"o":"($F387),a"},{"a":62294,"t":"code","b":[42,83,242],"m":"ld","oa":62035,"o":"hl,(object_vars)"},{"a":62297,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":62298,"t":"code","b":[203,58],"m":"srl","o":"d"},{"a":62300,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":62303,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62304,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":62306,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":62307,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62309,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62310,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":62311,"t":"code","b":[33,126,235],"m":"ld","o":"hl,$EB7E"},{"a":62314,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":62315,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":62316,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62317,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62318,"t":"code","b":[237,67,115,243],"m":"ld","oa":62323,"o":"($F373),bc"},{"a":62322,"t":"code","b":[33,174,235],"m":"ld","o":"hl,$EBAE"},{"a":62325,"t":"code","b":[67],"m":"ld","o":"b,e"},{"a":62326,"t":"code","b":[74],"m":"ld","o":"c,d"},{"a":62327,"t":"code","b":[17,4,0],"m":"ld","o":"de,$0004"},{"a":62330,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[62338]},{"a":62331,"t":"code","b":[167],"m":"and","o":"a"},{"a":62332,"t":"code","b":[40,6],"m":"jr","oa":62340,"o":"z,$F384"},{"a":62334,"t":"code","b":[185],"m":"cp","o":"c"},{"a":62335,"t":"code","b":[40,5],"m":"jr","oa":62342,"o":"z,$F386"},{"a":62337,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":62338,"t":"code","b":[16,246],"m":"djnz","oa":62330,"o":"$F37A"},{"a":62340,"t":"code","b":[24,115],"m":"jr","oa":62457,"o":"$F3F9","x":[62332]},{"a":62342,"t":"code","b":[62,1],"m":"ld","o":"a,$01","x":[62335]},{"a":62344,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62345,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":62349,"t":"code","b":[167],"m":"and","o":"a"},{"a":62350,"t":"code","b":[32,32],"m":"jr","oa":62384,"o":"nz,$F3B0"},{"a":62352,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62353,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":62356,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62357,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62358,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62359,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62360,"t":"code","b":[182],"m":"or","o":"(hl)"},{"a":62361,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62362,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62363,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)"},{"a":62367,"t":"code","b":[32,1],"m":"jr","oa":62370,"o":"nz,$F3A2"},{"a":62369,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62370,"t":"code","b":[35],"m":"inc","o":"hl","x":[62367]},{"a":62371,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62372,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62373,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62374,"t":"code","b":[176],"m":"or","o":"b"},{"a":62375,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62376,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62377,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62378,"t":"code","b":[47],"m":"cpl"},{"a":62379,"t":"code","b":[160],"m":"and","o":"b"},{"a":62380,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62381,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62382,"t":"code","b":[24,67],"m":"jr","oa":62451,"o":"$F3F3"},{"a":62384,"t":"code","b":[235],"m":"ex","o":"de,hl","x":[62350]},{"a":62385,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":62388,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62389,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62390,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":62392,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62393,"t":"code","b":[32,18],"m":"jr","oa":62413,"o":"nz,$F3CD"},{"a":62395,"t":"code","b":[237,75,83,242],"m":"ld","oa":62035,"o":"bc,(object_vars)"},{"a":62399,"t":"code","b":[10],"m":"ld","o":"a,(bc)"},{"a":62400,"t":"code","b":[31],"m":"rra"},{"a":62401,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":62403,"t":"code","b":[40,20],"m":"jr","oa":62425,"o":"z,$F3D9"},{"a":62405,"t":"code","b":[254,21],"m":"cp","o":"$15"},{"a":62407,"t":"code","b":[40,16],"m":"jr","oa":62425,"o":"z,$F3D9"},{"a":62409,"t":"code","b":[6,250],"m":"ld","o":"b,$FA"},{"a":62411,"t":"code","b":[24,2],"m":"jr","oa":62415,"o":"$F3CF"},{"a":62413,"t":"code","b":[6,63],"m":"ld","o":"b,$3F","x":[62393]},{"a":62415,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[62411]},{"a":62416,"t":"code","b":[160],"m":"and","o":"b"},{"a":62417,"t":"code","b":[40,6],"m":"jr","oa":62425,"o":"z,$F3D9"},{"a":62419,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":62420,"t":"code","b":[47],"m":"cpl"},{"a":62421,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":62422,"t":"code","b":[19],"m":"inc","o":"de"},{"a":62423,"t":"code","b":[24,7],"m":"jr","oa":62432,"o":"$F3E0"},{"a":62425,"t":"code","b":[70],"m":"ld","o":"b,(hl)","x":[62403,62407,62417]},{"a":62426,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62427,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62428,"t":"code","b":[47],"m":"cpl"},{"a":62429,"t":"code","b":[160],"m":"and","o":"b"},{"a":62430,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62431,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62432,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)","x":[62423]},{"a":62436,"t":"code","b":[32,1],"m":"jr","oa":62439,"o":"nz,$F3E7"},{"a":62438,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62439,"t":"code","b":[35],"m":"inc","o":"hl","x":[62436]},{"a":62440,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62441,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62442,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62443,"t":"code","b":[47],"m":"cpl"},{"a":62444,"t":"code","b":[160],"m":"and","o":"b"},{"a":62445,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62446,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62447,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62448,"t":"code","b":[176],"m":"or","o":"b"},{"a":62449,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62450,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62451,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried","x":[62382]},{"a":62454,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":62457,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC","x":[62340]},{"a":62461,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62465,"t":"code","b":[204,210,241],"m":"call","oa":61906,"o":"z,draw_figure"},{"a":62468,"t":"code","b":[201],"m":"ret"},{"a":62469,"l":"gfx_lie","c":"Graphics command 4 (glie, line 7120): five bytes, the command, a character, a column, a row, a facing. Draws the character lying on the ground, with the glyphs in lying_glyphs for its shape, turned the right way; glyphs that would fall off the screen are left out.","t":"code","b":[254,5],"m":"cp","o":"$05","x":[63459]},{"a":62471,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":62474,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62475,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62476,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":62477,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":62480,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":62483,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62484,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":62487,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62488,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62490,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":62491,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":62494,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62495,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62496,"t":"code","b":[203,63],"m":"srl","o":"a"},{"a":62498,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":62499,"t":"code","b":[33,68,236],"m":"ld","o":"hl,$EC44"},{"a":62502,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62504,"t":"code","b":[120],"m":"ld","o":"a,b","x":[62522]},{"a":62505,"t":"code","b":[187],"m":"cp","o":"e"},{"a":62506,"t":"code","b":[40,16],"m":"jr","oa":62524,"o":"z,$F43C"},{"a":62508,"t":"code","b":[4],"m":"inc","o":"b"},{"a":62509,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62510,"t":"code","b":[197],"m":"push","o":"bc"},{"a":62511,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":62513,"t":"code","b":[7],"m":"rlca"},{"a":62514,"t":"code","b":[7],"m":"rlca"},{"a":62515,"t":"code","b":[7],"m":"rlca"},{"a":62516,"t":"code","b":[60],"m":"inc","o":"a"},{"a":62517,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62519,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":62520,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":62521,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":62522,"t":"code","b":[24,236],"m":"jr","oa":62504,"o":"$F428"},{"a":62524,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[62506]},{"a":62525,"t":"code","b":[7],"m":"rlca"},{"a":62526,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62528,"t":"code","b":[186],"m":"cp","o":"d"},{"a":62529,"t":"code","b":[40,13],"m":"jr","oa":62544,"o":"z,$F450"},{"a":62531,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":62533,"t":"code","b":[174],"m":"xor","o":"(hl)"},{"a":62534,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":62535,"t":"code","b":[229],"m":"push","o":"hl"},{"a":62536,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62537,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":62539,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62540,"t":"code","b":[205,217,221],"m":"call","oa":56793,"o":"mirror_chars"},{"a":62543,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":62544,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[62529]},{"a":62545,"t":"code","b":[221,33,200,244],"m":"ld","o":"ix,$F4C8"},{"a":62549,"t":"code","b":[7],"m":"rlca"},{"a":62550,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62552,"t":"code","b":[221,119,0],"m":"ld","o":"(ix+$00),a"},{"a":62555,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62556,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":62558,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":62559,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62560,"t":"code","b":[230,112],"m":"and","o":"$70"},{"a":62562,"t":"code","b":[15],"m":"rrca"},{"a":62563,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":62564,"t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)"},{"a":62567,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62571,"t":"code","b":[32,84],"m":"jr","oa":62657,"o":"nz,$F4C1"},{"a":62573,"t":"code","b":[147],"m":"sub","o":"e"},{"a":62574,"t":"code","b":[220,177,244],"m":"call","oa":62641,"o":"c,$F4B1","x":[62658]},{"a":62577,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":62578,"t":"code","b":[58,185,242],"m":"ld","oa":62137,"o":"a,($F2B9)"},{"a":62581,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":62582,"t":"code","b":[237,67,202,244],"m":"ld","oa":62666,"o":"($F4CA),bc"},{"a":62586,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62587,"t":"code","b":[34,204,244],"m":"ld","oa":62668,"o":"($F4CC),hl"},{"a":62590,"t":"code","b":[221,114,1],"m":"ld","o":"(ix+$01),d"},{"a":62593,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)","x":[62638]},{"a":62597,"t":"code","b":[32,10],"m":"jr","oa":62609,"o":"nz,$F491"},{"a":62599,"t":"code","b":[237,75,202,244],"m":"ld","oa":62666,"o":"bc,($F4CA)"},{"a":62603,"t":"code","b":[42,204,244],"m":"ld","oa":62668,"o":"hl,($F4CC)"},{"a":62606,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":62609,"t":"code","b":[221,126,2],"m":"ld","o":"a,(ix+$02)","x":[62597]},{"a":62612,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62616,"t":"code","b":[32,42],"m":"jr","oa":62660,"o":"nz,$F4C4"},{"a":62618,"t":"code","b":[198,8],"m":"add","o":"a,$08"},{"a":62620,"t":"code","b":[56,24],"m":"jr","oa":62646,"o":"c,$F4B6","x":[62662]},{"a":62622,"t":"code","b":[221,119,2],"m":"ld","o":"(ix+$02),a","x":[62655]},{"a":62625,"t":"code","b":[17,8,0],"m":"ld","o":"de,$0008"},{"a":62628,"t":"code","b":[42,204,244],"m":"ld","oa":62668,"o":"hl,($F4CC)"},{"a":62631,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":62632,"t":"code","b":[34,204,244],"m":"ld","oa":62668,"o":"($F4CC),hl"},{"a":62635,"t":"code","b":[221,53,1],"m":"dec","o":"(ix+$01)"},{"a":62638,"t":"code","b":[32,209],"m":"jr","oa":62593,"o":"nz,$F481"},{"a":62640,"t":"code","b":[201],"m":"ret"},{"a":62641,"t":"code","b":[221,203,0,206],"m":"set","o":"1,(ix+$00)","x":[62574]},{"a":62645,"t":"code","b":[201],"m":"ret"},{"a":62646,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)","x":[62620]},{"a":62650,"t":"code","b":[200],"m":"ret","o":"z"},{"a":62651,"t":"code","b":[221,203,0,142],"m":"res","o":"1,(ix+$00)"},{"a":62655,"t":"code","b":[24,221],"m":"jr","oa":62622,"o":"$F49E"},{"a":62657,"t":"code","b":[131],"m":"add","o":"a,e","x":[62571]},{"a":62658,"t":"code","b":[24,170],"m":"jr","oa":62574,"o":"$F46E"},{"a":62660,"t":"code","b":[214,8],"m":"sub","o":"$08","x":[62616]},{"a":62662,"t":"code","b":[24,212],"m":"jr","oa":62620,"o":"$F49C"},{"a":62664,"l":"lie_vars","c":"gfx_lie's flags, glyph count and position, and the address of the next glyph; gfx_eat and gfx_drink also pass the frame list's address to turn_frames in the position's two bytes ($F4CA).","t":"byte","b":[0,0,106,250,0,0]},{"a":62670,"l":"gfx_appear","c":"Graphics command 12: three bytes, a character and a column. Makes the figure appear: seven passes over the cells it covers, each moving their ink a step towards the paper's colour with a pause, then the figure drawn, then one pass that sets the ink back (the patch at $F51B, put in at $F57F and taken out after). No line of the BASIC sends this command.","t":"code","b":[254,3],"m":"cp","o":"$03","x":[63475]},{"a":62672,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":62675,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62676,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62677,"t":"code","b":[229],"m":"push","o":"hl"},{"a":62678,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":62679,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":62682,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":62685,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":62688,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62689,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62690,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62692,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":62695,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":62698,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":62701,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":62702,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62703,"t":"code","b":[50,157,245],"m":"ld","oa":62877,"o":"($F59D),a"},{"a":62706,"t":"code","b":[7],"m":"rlca"},{"a":62707,"t":"code","b":[7],"m":"rlca"},{"a":62708,"t":"code","b":[7],"m":"rlca"},{"a":62709,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":62712,"t":"code","b":[38,7],"m":"ld","o":"h,$07"},{"a":62714,"t":"code","b":[205,34,245],"m":"call","oa":62754,"o":"fade_cells","x":[62718]},{"a":62717,"t":"code","b":[37],"m":"dec","o":"h"},{"a":62718,"t":"code","b":[32,250],"m":"jr","oa":62714,"o":"nz,$F4FA"},{"a":62720,"t":"code","b":[205,210,241],"m":"call","oa":61906,"o":"draw_figure"},{"a":62723,"t":"code","b":[62,195],"m":"ld","o":"a,$C3"},{"a":62725,"t":"code","b":[50,127,245],"m":"ld","oa":62847,"o":"($F57F),a"},{"a":62728,"t":"code","b":[33,27,245],"m":"ld","o":"hl,$F51B"},{"a":62731,"t":"code","b":[34,128,245],"m":"ld","oa":62848,"o":"($F580),hl"},{"a":62734,"t":"code","b":[205,34,245],"m":"call","oa":62754,"o":"fade_cells"},{"a":62737,"t":"code","b":[33,0,0],"m":"ld","o":"hl,$0000"},{"a":62740,"t":"code","b":[34,127,245],"m":"ld","oa":62847,"o":"($F57F),hl"},{"a":62743,"t":"code","b":[34,128,245],"m":"ld","oa":62848,"o":"($F580),hl"},{"a":62746,"t":"code","b":[201],"m":"ret"},{"a":62747,"l":"appear_patch","c":"Code fade_cell jumps to for the last pass (gfx_appear writes JP $F51B at $F57F): LD A,(HL), AND $38, LD (HL),A (ink black), JP $F58F.","t":"byte","b":[126,230,56,119,195,143,245]},{"a":62754,"l":"fade_cells","c":"One pass of gfx_appear over every cell a part of the figure is in, then a pause of 100 x 256 loops.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[62714,62734]},{"a":62757,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":62760,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62761,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":62762,"t":"code","b":[35],"m":"inc","o":"hl","x":[62779]},{"a":62763,"t":"code","b":[197],"m":"push","o":"bc"},{"a":62764,"t":"code","b":[203,94],"m":"bit","o":"3,(hl)"},{"a":62766,"t":"code","b":[40,9],"m":"jr","oa":62777,"o":"z,$F539"},{"a":62768,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62769,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":62772,"t":"code","b":[56,3],"m":"jr","oa":62777,"o":"c,$F539"},{"a":62774,"t":"code","b":[205,117,245],"m":"call","oa":62837,"o":"fade_cell"},{"a":62777,"t":"code","b":[35],"m":"inc","o":"hl","x":[62766,62772]},{"a":62778,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":62779,"t":"code","b":[16,237],"m":"djnz","oa":62762,"o":"$F52A"},{"a":62781,"t":"code","b":[35],"m":"inc","o":"hl","x":[62810]},{"a":62782,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62783,"t":"code","b":[167],"m":"and","o":"a"},{"a":62784,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62785,"t":"code","b":[40,36],"m":"jr","oa":62823,"o":"z,$F567"},{"a":62787,"t":"code","b":[203,127],"m":"bit","o":"7,a"},{"a":62789,"t":"code","b":[32,21],"m":"jr","oa":62812,"o":"nz,$F55C"},{"a":62791,"t":"code","b":[230,3],"m":"and","o":"$03","x":[62814]},{"a":62793,"t":"code","b":[61],"m":"dec","o":"a"},{"a":62794,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62795,"t":"code","b":[32,10],"m":"jr","oa":62807,"o":"nz,$F557"},{"a":62797,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":62800,"t":"code","b":[56,7],"m":"jr","oa":62809,"o":"c,$F559"},{"a":62802,"t":"code","b":[205,117,245],"m":"call","oa":62837,"o":"fade_cell"},{"a":62805,"t":"code","b":[24,2],"m":"jr","oa":62809,"o":"$F559"},{"a":62807,"t":"code","b":[35],"m":"inc","o":"hl","x":[62795,62819]},{"a":62808,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62809,"t":"code","b":[35],"m":"inc","o":"hl","x":[62800,62805,62821]},{"a":62810,"t":"code","b":[24,225],"m":"jr","oa":62781,"o":"$F53D"},{"a":62812,"t":"code","b":[203,119],"m":"bit","o":"6,a","x":[62789]},{"a":62814,"t":"code","b":[32,231],"m":"jr","oa":62791,"o":"nz,$F547"},{"a":62816,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":62818,"t":"code","b":[61],"m":"dec","o":"a"},{"a":62819,"t":"code","b":[32,242],"m":"jr","oa":62807,"o":"nz,$F557"},{"a":62821,"t":"code","b":[24,242],"m":"jr","oa":62809,"o":"$F559"},{"a":62823,"t":"code","b":[6,100],"m":"ld","o":"b,$64","x":[62785]},{"a":62825,"t":"code","b":[197],"m":"push","o":"bc","x":[62831]},{"a":62826,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":62828,"t":"code","b":[16,254],"m":"djnz","oa":62828,"o":"$F56C","x":[62828]},{"a":62830,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":62831,"t":"code","b":[16,248],"m":"djnz","oa":62825,"o":"$F569"},{"a":62833,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":62836,"t":"code","b":[201],"m":"ret"},{"a":62837,"l":"fade_cell","c":"Moves the ink of one cell a step towards its paper, up or down.","t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point","x":[62774,62802]},{"a":62840,"t":"code","b":[205,112,222],"m":"call","oa":56944,"o":"attr_address"},{"a":62843,"t":"code","b":[34,155,245],"m":"ld","oa":62875,"o":"(fade_vars),hl"},{"a":62846,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":62847,"t":"code","b":[0],"m":"nop","x":[62725,62740]},{"a":62848,"t":"code","b":[0],"m":"nop","x":[62731,62743]},{"a":62849,"t":"code","b":[0],"m":"nop"},{"a":62850,"t":"code","b":[62,7],"m":"ld","o":"a,$07"},{"a":62852,"t":"code","b":[166],"m":"and","o":"(hl)"},{"a":62853,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":62854,"t":"code","b":[174],"m":"xor","o":"(hl)"},{"a":62855,"t":"code","b":[230,63],"m":"and","o":"$3F"},{"a":62857,"t":"code","b":[15],"m":"rrca"},{"a":62858,"t":"code","b":[15],"m":"rrca"},{"a":62859,"t":"code","b":[15],"m":"rrca"},{"a":62860,"t":"code","b":[186],"m":"cp","o":"d"},{"a":62861,"t":"code","b":[32,4],"m":"jr","oa":62867,"o":"nz,$F593"},{"a":62863,"t":"code","b":[42,155,245],"m":"ld","oa":62875,"o":"hl,(fade_vars)","x":[62870,62873]},{"a":62866,"t":"code","b":[201],"m":"ret"},{"a":62867,"t":"code","b":[56,3],"m":"jr","oa":62872,"o":"c,$F598","x":[62861]},{"a":62869,"t":"code","b":[52],"m":"inc","o":"(hl)"},{"a":62870,"t":"code","b":[24,247],"m":"jr","oa":62863,"o":"$F58F"},{"a":62872,"t":"code","b":[53],"m":"dec","o":"(hl)","x":[62867]},{"a":62873,"t":"code","b":[24,244],"m":"jr","oa":62863,"o":"$F58F"},{"a":62875,"l":"fade_vars","c":"fade_cell's place to keep HL, and a byte where gfx_appear writes the command's column, which nothing reads.","t":"byte","b":[0,0,0],"x":[62843,62863]},{"a":62878,"l":"gfx_move","c":"Graphics command 3 (gm, line 7101): the command, a character or an object, x1, x2, a row and a facing. A character walks (figure_walk); an object slides from x1 to x2 one pixel at a time, drawn, paused and undrawn, and is left at x2. Also the flight of a fireball or lightning for gfx_missile.","t":"code","b":[254,7],"m":"cp","o":"$07","x":[63457]},{"a":62880,"t":"code","b":[210,100,222],"m":"jp","oa":56932,"o":"nc,gfx_return"},{"a":62883,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62884,"t":"code","b":[254,63],"m":"cp","o":"$3F"},{"a":62886,"t":"code","b":[218,143,238],"m":"jp","oa":61071,"o":"c,figure_walk"},{"a":62889,"t":"code","b":[221,33,217,246],"m":"ld","o":"ix,$F6D9"},{"a":62893,"t":"code","b":[221,54,0,1],"m":"ld","o":"(ix+$00),$01"},{"a":62897,"t":"code","b":[205,88,242],"m":"call","oa":62040,"o":"object_glyph"},{"a":62900,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)","x":[63183]},{"a":62903,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62904,"t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl"},{"a":62907,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62908,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":62911,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":62914,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62915,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62916,"t":"code","b":[150],"m":"sub","o":"(hl)"},{"a":62917,"t":"code","b":[202,100,222],"m":"jp","oa":56932,"o":"z,gfx_return"},{"a":62920,"t":"code","b":[7],"m":"rlca"},{"a":62921,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62923,"t":"code","b":[50,25,246],"m":"ld","oa":63001,"o":"($F619),a"},{"a":62926,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62930,"t":"code","b":[196,215,242],"m":"call","oa":62167,"o":"nz,turn_object"},{"a":62933,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":62936,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62937,"t":"code","b":[7],"m":"rlca"},{"a":62938,"t":"code","b":[7],"m":"rlca"},{"a":62939,"t":"code","b":[7],"m":"rlca"},{"a":62940,"t":"code","b":[50,184,242],"m":"ld","oa":62136,"o":"(object_xy),a"},{"a":62943,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62944,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62945,"t":"code","b":[150],"m":"sub","o":"(hl)"},{"a":62946,"t":"code","b":[48,6],"m":"jr","oa":62954,"o":"nc,$F5EA"},{"a":62948,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":62950,"t":"code","b":[237,68],"m":"neg"},{"a":62952,"t":"code","b":[24,2],"m":"jr","oa":62956,"o":"$F5EC"},{"a":62954,"t":"code","b":[6,255],"m":"ld","o":"b,$FF","x":[62946]},{"a":62956,"t":"code","b":[167],"m":"and","o":"a","x":[62952]},{"a":62957,"t":"code","b":[7],"m":"rlca"},{"a":62958,"t":"code","b":[7],"m":"rlca"},{"a":62959,"t":"code","b":[7],"m":"rlca"},{"a":62960,"t":"code","b":[60],"m":"inc","o":"a"},{"a":62961,"t":"code","b":[50,63,239],"m":"ld","oa":61247,"o":"(walk_steps),a"},{"a":62964,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":62965,"t":"code","b":[50,71,246],"m":"ld","oa":63047,"o":"($F647),a"},{"a":62968,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":62972,"t":"code","b":[221,33,217,246],"m":"ld","o":"ix,$F6D9"},{"a":62976,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":62980,"t":"code","b":[40,23],"m":"jr","oa":63005,"o":"z,$F61D"},{"a":62982,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62983,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":62984,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":62985,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":62987,"t":"code","b":[205,215,242],"m":"call","oa":62167,"o":"turn_object"},{"a":62990,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":62994,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":62997,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":63000,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":63002,"t":"code","b":[205,215,242],"m":"call","oa":62167,"o":"turn_object"},{"a":63005,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)","x":[62980,63051]},{"a":63009,"t":"code","b":[197],"m":"push","o":"bc"},{"a":63010,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":63013,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":63016,"t":"code","b":[6,7],"m":"ld","o":"b,$07"},{"a":63018,"t":"code","b":[197],"m":"push","o":"bc","x":[63025]},{"a":63019,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":63021,"t":"code","b":[0],"m":"nop","x":[63022]},{"a":63022,"t":"code","b":[16,253],"m":"djnz","oa":63021,"o":"$F62D"},{"a":63024,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":63025,"t":"code","b":[16,247],"m":"djnz","oa":63018,"o":"$F62A"},{"a":63027,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":63028,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":63031,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":63034,"t":"code","b":[58,63,239],"m":"ld","oa":61247,"o":"a,(walk_steps)"},{"a":63037,"t":"code","b":[61],"m":"dec","o":"a"},{"a":63038,"t":"code","b":[40,14],"m":"jr","oa":63054,"o":"z,$F64E"},{"a":63040,"t":"code","b":[50,63,239],"m":"ld","oa":61247,"o":"(walk_steps),a"},{"a":63043,"t":"code","b":[58,184,242],"m":"ld","oa":62136,"o":"a,(object_xy)"},{"a":63046,"t":"code","b":[198,255],"m":"add","o":"a,$FF"},{"a":63048,"t":"code","b":[50,184,242],"m":"ld","oa":62136,"o":"(object_xy),a"},{"a":63051,"t":"code","b":[195,29,246],"m":"jp","oa":63005,"o":"$F61D"},{"a":63054,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)","x":[63038]},{"a":63057,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":63061,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":63065,"t":"code","b":[200],"m":"ret","o":"z"},{"a":63066,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":63069,"l":"gfx_16","c":"Graphics command 16: three bytes, a character and a number 0-3: sets bits 6-7 of record byte 4 to 3 less the number. No line of the BASIC sends this command.","t":"code","b":[254,3],"m":"cp","o":"$03","x":[63483]},{"a":63071,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63074,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":63075,"t":"code","b":[229],"m":"push","o":"hl"},{"a":63076,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63077,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":63078,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":63081,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":63084,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":63087,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63088,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63089,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63090,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63091,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":63092,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63093,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63094,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63095,"t":"code","b":[62,3],"m":"ld","o":"a,$03"},{"a":63097,"t":"code","b":[150],"m":"sub","o":"(hl)"},{"a":63098,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":63100,"t":"code","b":[15],"m":"rrca"},{"a":63101,"t":"code","b":[15],"m":"rrca"},{"a":63102,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":63103,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":63104,"t":"code","b":[230,63],"m":"and","o":"$3F"},{"a":63106,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":63107,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63108,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":63109,"t":"code","b":[201],"m":"ret"},{"a":63110,"l":"missile_glyphs","c":"The two missiles: a fireball (a ball) and lightning (a zigzag); then the facing byte for gfx_missile ($F696) and gfx_move's slide pause kept while the missile flies at half of it ($F697).","t":"byte","b":[0,24,60,126,126,60,24,0]},{"a":63118,"t":"byte","b":[0,0,24,28,150,113,48,16]},{"a":63126,"t":"byte","b":[0,7]},{"a":63128,"l":"gfx_missile","c":"Graphics command 17 (gfire, line 7750): five bytes, the command, 0 for a fireball or 1 for lightning, x1, x2 and the row: flies the missile from x1 to x2 like an object moved by gfx_move, at twice the speed.","t":"code","b":[254,5],"m":"cp","o":"$05","x":[63485]},{"a":63130,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63133,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63134,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":63136,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63139,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63140,"t":"code","b":[7],"m":"rlca"},{"a":63141,"t":"code","b":[7],"m":"rlca"},{"a":63142,"t":"code","b":[7],"m":"rlca"},{"a":63143,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63144,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":63145,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":63147,"t":"code","b":[33,134,246],"m":"ld","o":"hl,$F686"},{"a":63150,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":63151,"t":"code","b":[34,85,242],"m":"ld","oa":62037,"o":"($F255),hl"},{"a":63154,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63155,"t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl"},{"a":63158,"t":"code","b":[33,150,246],"m":"ld","o":"hl,$F696"},{"a":63161,"t":"code","b":[34,83,242],"m":"ld","oa":62035,"o":"(object_vars),hl"},{"a":63164,"t":"code","b":[58,41,246],"m":"ld","oa":63017,"o":"a,($F629)"},{"a":63167,"t":"code","b":[50,151,246],"m":"ld","oa":63127,"o":"($F697),a"},{"a":63170,"t":"code","b":[203,63],"m":"srl","o":"a"},{"a":63172,"t":"code","b":[50,41,246],"m":"ld","oa":63017,"o":"($F629),a"},{"a":63175,"t":"code","b":[221,33,217,246],"m":"ld","o":"ix,$F6D9"},{"a":63179,"t":"code","b":[221,54,0,0],"m":"ld","o":"(ix+$00),$00"},{"a":63183,"t":"code","b":[205,180,245],"m":"call","oa":62900,"o":"$F5B4"},{"a":63186,"t":"code","b":[58,151,246],"m":"ld","oa":63127,"o":"a,($F697)"},{"a":63189,"t":"code","b":[50,41,246],"m":"ld","oa":63017,"o":"($F629),a"},{"a":63192,"t":"code","b":[201],"m":"ret"},{"a":63193,"l":"move_draw","c":"gfx_move's flag: 1 when the moving thing is an object (0 for a missile), undrawn at x1 before it slides and drawn again at x2 at the end.","t":"byte","b":[1]},{"a":63194,"l":"gfx_blush","c":"Graphics command 13 (gemb, line 7550): two bytes, the command and a column. The three cells of the column from the figures' base row up (rows 14, 13 and 12, where a figure stands) change ink to magenta, blue, red and black in turn, a pause each: you blush when Mary is not amused (line 122).","t":"code","b":[254,2],"m":"cp","o":"$02","x":[63477]},{"a":63196,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63199,"t":"code","b":[58,57,223],"m":"ld","oa":57145,"o":"a,($DF39)"},{"a":63202,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":63203,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":63206,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":63207,"t":"code","b":[237,67,28,247],"m":"ld","oa":63260,"o":"(blush_cell),bc"},{"a":63211,"t":"code","b":[62,3],"m":"ld","o":"a,$03"},{"a":63213,"t":"code","b":[205,251,246],"m":"call","oa":63227,"o":"$F6FB"},{"a":63216,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":63218,"t":"code","b":[205,251,246],"m":"call","oa":63227,"o":"$F6FB"},{"a":63221,"t":"code","b":[62,2],"m":"ld","o":"a,$02"},{"a":63223,"t":"code","b":[205,251,246],"m":"call","oa":63227,"o":"$F6FB"},{"a":63226,"t":"code","b":[175],"m":"xor","o":"a"},{"a":63227,"t":"code","b":[50,10,247],"m":"ld","oa":63242,"o":"($F70A),a","x":[63213,63218,63223]},{"a":63230,"t":"code","b":[237,75,28,247],"m":"ld","oa":63260,"o":"bc,(blush_cell)"},{"a":63234,"t":"code","b":[38,3],"m":"ld","o":"h,$03"},{"a":63236,"t":"code","b":[205,112,222],"m":"call","oa":56944,"o":"attr_address","x":[63246]},{"a":63239,"t":"code","b":[230,248],"m":"and","o":"$F8"},{"a":63241,"t":"code","b":[198,0],"m":"add","o":"a,$00"},{"a":63243,"t":"code","b":[18],"m":"ld","o":"(de),a"},{"a":63244,"t":"code","b":[5],"m":"dec","o":"b"},{"a":63245,"t":"code","b":[37],"m":"dec","o":"h"},{"a":63246,"t":"code","b":[32,244],"m":"jr","oa":63236,"o":"nz,$F704"},{"a":63248,"t":"code","b":[14,250],"m":"ld","o":"c,$FA"},{"a":63250,"t":"code","b":[6,0],"m":"ld","o":"b,$00","x":[63257]},{"a":63252,"t":"code","b":[203,78],"m":"bit","o":"1,(hl)","x":[63254]},{"a":63254,"t":"code","b":[16,252],"m":"djnz","oa":63252,"o":"$F714"},{"a":63256,"t":"code","b":[13],"m":"dec","o":"c"},{"a":63257,"t":"code","b":[32,247],"m":"jr","oa":63250,"o":"nz,$F712"},{"a":63259,"t":"code","b":[201],"m":"ret"},{"a":63260,"l":"blush_cell","c":"gfx_blush's column and row.","t":"byte","b":[22,14],"x":[63207,63230]},{"a":63262,"l":"figure_setup","c":"Reads a character's number from the command at HL, finds its record and shape, and turns and dresses the shape as the record says.","t":"code","b":[70],"m":"ld","o":"b,(hl)","x":[63314,63528,63781]},{"a":63263,"t":"code","b":[229],"m":"push","o":"hl"},{"a":63264,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63265,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":63266,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":63269,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":63272,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":63275,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63276,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63277,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":63279,"t":"code","b":[205,25,240],"m":"call","oa":61465,"o":"turn_figure"},{"a":63282,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":63285,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional"},{"a":63288,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63289,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63290,"t":"code","b":[201],"m":"ret"},{"a":63291,"l":"gfx_arms","c":"Graphics commands 9 and 10, arms down and arms out (garmd, garmo: lines 7370, 7420): a character and a column (or no column, which only changes the record). Undraws the figure, changes the arm bits of record byte 3 for the command and the shape, and draws it again.","t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC","x":[63469,63471]},{"a":63295,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":63297,"t":"code","b":[40,11],"m":"jr","oa":63310,"o":"z,$F74E"},{"a":63299,"t":"code","b":[254,2],"m":"cp","o":"$02"},{"a":63301,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63304,"t":"code","b":[221,54,0,1],"m":"ld","o":"(ix+$00),$01"},{"a":63308,"t":"code","b":[24,4],"m":"jr","oa":63314,"o":"$F752"},{"a":63310,"t":"code","b":[221,54,0,0],"m":"ld","o":"(ix+$00),$00","x":[63297]},{"a":63314,"t":"code","b":[205,30,247],"m":"call","oa":63262,"o":"figure_setup","x":[63308]},{"a":63317,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":63320,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor","x":[65113]},{"a":63323,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":63327,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":63331,"t":"code","b":[204,210,241],"m":"call","oa":61906,"o":"z,draw_figure"},{"a":63334,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":63337,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63338,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63339,"t":"code","b":[203,63],"m":"srl","o":"a"},{"a":63341,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":63342,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63343,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63344,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63345,"t":"code","b":[42,77,92],"m":"ld","oa":23629,"o":"hl,($5C4D)"},{"a":63348,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63349,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63350,"t":"code","b":[214,9],"m":"sub","o":"$09"},{"a":63352,"t":"code","b":[121],"m":"ld","o":"a,c"},{"a":63353,"t":"code","b":[40,34],"m":"jr","oa":63389,"o":"z,$F79D"},{"a":63355,"t":"code","b":[167],"m":"and","o":"a"},{"a":63356,"t":"code","b":[40,24],"m":"jr","oa":63382,"o":"z,$F796"},{"a":63358,"t":"code","b":[61],"m":"dec","o":"a"},{"a":63359,"t":"code","b":[32,6],"m":"jr","oa":63367,"o":"nz,$F787"},{"a":63361,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63362,"t":"code","b":[230,252],"m":"and","o":"$FC"},{"a":63364,"t":"code","b":[198,2],"m":"add","o":"a,$02"},{"a":63366,"t":"code","b":[119],"m":"ld","o":"(hl),a","x":[63387,63400]},{"a":63367,"t":"code","b":[205,204,240],"m":"call","oa":61644,"o":"show_optional","x":[63359,63393]},{"a":63370,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":63374,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":63378,"t":"code","b":[204,210,241],"m":"call","oa":61906,"o":"z,draw_figure"},{"a":63381,"t":"code","b":[201],"m":"ret"},{"a":63382,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[63356]},{"a":63383,"t":"code","b":[230,246],"m":"and","o":"$F6"},{"a":63385,"t":"code","b":[198,8],"m":"add","o":"a,$08"},{"a":63387,"t":"code","b":[24,233],"m":"jr","oa":63366,"o":"$F786"},{"a":63389,"t":"code","b":[167],"m":"and","o":"a","x":[63353]},{"a":63390,"t":"code","b":[40,10],"m":"jr","oa":63402,"o":"z,$F7AA"},{"a":63392,"t":"code","b":[61],"m":"dec","o":"a"},{"a":63393,"t":"code","b":[32,228],"m":"jr","oa":63367,"o":"nz,$F787"},{"a":63395,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63396,"t":"code","b":[230,252],"m":"and","o":"$FC"},{"a":63398,"t":"code","b":[198,1],"m":"add","o":"a,$01","x":[63405]},{"a":63400,"t":"code","b":[24,220],"m":"jr","oa":63366,"o":"$F786"},{"a":63402,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[63390]},{"a":63403,"t":"code","b":[230,246],"m":"and","o":"$F6"},{"a":63405,"t":"code","b":[24,247],"m":"jr","oa":63398,"o":"$F7A6"},{"a":63407,"l":"graphics","c":"gi (63407): every graphics command. The BASIC builds the command in x$ and runs LET x$=STR$ USR gi (line 15): DEST still points at x$'s text and STRLEN holds its length. The first byte picks the routine from gfx_table (1 to 24; 25 and more go to gfx_return), which is called with A = the length and HL at the second byte. Saves SP so that any routine can leave through gfx_return, and returns BC = 0.","t":"code","b":[237,115,108,222],"m":"ld","oa":56940,"o":"(gfx_saved_sp),sp"},{"a":63411,"t":"code","b":[42,77,92],"m":"ld","oa":23629,"o":"hl,($5C4D)"},{"a":63414,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63415,"t":"code","b":[254,25],"m":"cp","o":"$19"},{"a":63417,"t":"code","b":[210,100,222],"m":"jp","oa":56932,"o":"nc,gfx_return"},{"a":63420,"t":"code","b":[61],"m":"dec","o":"a"},{"a":63421,"t":"code","b":[7],"m":"rlca"},{"a":63422,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63423,"t":"code","b":[33,221,247],"m":"ld","o":"hl,$F7DD"},{"a":63426,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":63427,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":63429,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":63430,"t":"code","b":[78],"m":"ld","o":"c,(hl)"},{"a":63431,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63432,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":63433,"t":"code","b":[237,67,211,247],"m":"ld","oa":63443,"o":"($F7D3),bc"},{"a":63437,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63438,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63439,"t":"code","b":[58,114,92],"m":"ld","oa":23666,"o":"a,($5C72)"},{"a":63442,"t":"code","b":[205,237,242],"m":"call","oa":62189,"o":"gfx_get_drop"},{"a":63445,"t":"code","b":[237,123,108,222],"m":"ld","oa":56940,"o":"sp,(gfx_saved_sp)"},{"a":63449,"t":"code","b":[1,0,0],"m":"ld","o":"bc,$0000"},{"a":63452,"t":"code","b":[201],"m":"ret"},{"a":63453,"l":"gfx_table","c":"The graphics commands 1 to 22: 1 the location's picture, 2 put, 3 move, 4 lie, 5 eat, 6 drink, 7 get, 8 drop, 9 arms down, 10 arms out, 11 fight, 12 appear, 13 blush, 14 reset a figure, 15 nothing, 16 a record bit, 17 a missile, 18 a scene feature, 19 dark buildings, 20 the flag, 21 the walking speed, 22 a random number. The BASIC never sends 12, 15, 16, 21 or 22. graphics lets 23 and 24 through as well, which would take the code bytes after the table as addresses ($327E and $EEDA).","t":"addr","b":[195,226],"oa":58051,"o":"gfx_terrain"},{"a":63455,"t":"addr","b":[25,242],"oa":61977,"o":"gfx_put"},{"a":63457,"t":"addr","b":[158,245],"oa":62878,"o":"gfx_move"},{"a":63459,"t":"addr","b":[5,244],"oa":62469,"o":"gfx_lie"},{"a":63461,"t":"addr","b":[179,248],"oa":63667,"o":"gfx_eat"},{"a":63463,"t":"addr","b":[247,248],"oa":63735,"o":"gfx_drink"},{"a":63465,"t":"addr","b":[237,242],"oa":62189,"o":"gfx_get_drop"},{"a":63467,"t":"addr","b":[237,242],"oa":62189,"o":"gfx_get_drop"},{"a":63469,"t":"addr","b":[59,247],"oa":63291,"o":"gfx_arms"},{"a":63471,"t":"addr","b":[59,247],"oa":63291,"o":"gfx_arms"},{"a":63473,"t":"addr","b":[23,248],"oa":63511,"o":"gfx_fight"},{"a":63475,"t":"addr","b":[206,244],"oa":62670,"o":"gfx_appear"},{"a":63477,"t":"addr","b":[218,246],"oa":63194,"o":"gfx_blush"},{"a":63479,"t":"addr","b":[62,254],"oa":65086,"o":"gfx_reset_figure"},{"a":63481,"t":"addr","b":[100,222],"oa":56932,"o":"gfx_return"},{"a":63483,"t":"addr","b":[93,246],"oa":63069,"o":"gfx_16"},{"a":63485,"t":"addr","b":[152,246],"oa":63128,"o":"gfx_missile"},{"a":63487,"t":"addr","b":[207,250],"oa":64207,"o":"gfx_feature"},{"a":63489,"t":"addr","b":[194,251],"oa":64450,"o":"gfx_dark"},{"a":63491,"t":"addr","b":[203,251],"oa":64459,"o":"gfx_flag"},{"a":63493,"t":"addr","b":[9,248],"oa":63497,"o":"gfx_speed"},{"a":63495,"t":"addr","b":[14,248],"oa":63502,"o":"gfx_random"},{"a":63497,"l":"gfx_speed","c":"Graphics command 21: sets the walking speed, the step added up to four times (one more time than bits 6-7 of the figure's record byte 4 say) to make figure_walk's pause, from the byte after the command.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[63493]},{"a":63498,"t":"code","b":[50,218,238],"m":"ld","oa":61146,"o":"($EEDA),a"},{"a":63501,"t":"code","b":[201],"m":"ret"},{"a":63502,"l":"gfx_random","c":"Graphics command 22: steps random and returns its low two bytes to USR in BC, leaving graphics by its caller's return.","t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[63495]},{"a":63505,"t":"code","b":[237,75,176,218],"m":"ld","oa":55984,"o":"bc,(rng_state)"},{"a":63509,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63510,"t":"code","b":[201],"m":"ret"},{"a":63511,"l":"gfx_fight","c":"Graphics command 11 (line 1380, a blow in a fight): four bytes, the command, a character, a random 1 to 3 and a column (three bytes change only the record). Undraws the figure, sets the weapon bits of record byte 2 for the blow: shape 0 shows a sword (bits $52) or an axe (bits $A8) upright, diagonal or level for blows 1, 2 and 3, other shapes use $15 for the sword and $2A for the axe; and draws it again.","t":"code","b":[254,4],"m":"cp","o":"$04","x":[63473]},{"a":63513,"t":"code","b":[40,5],"m":"jr","oa":63520,"o":"z,$F820"},{"a":63515,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":63517,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63520,"t":"code","b":[214,3],"m":"sub","o":"$03","x":[63513]},{"a":63522,"t":"code","b":[50,58,248],"m":"ld","oa":63546,"o":"($F83A),a"},{"a":63525,"t":"code","b":[50,91,248],"m":"ld","oa":63579,"o":"($F85B),a"},{"a":63528,"t":"code","b":[205,30,247],"m":"call","oa":63262,"o":"figure_setup"},{"a":63531,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63532,"t":"code","b":[50,120,248],"m":"ld","oa":63608,"o":"(fight_blow),a"},{"a":63535,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63536,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63537,"t":"code","b":[230,31],"m":"and","o":"$1F"},{"a":63539,"t":"code","b":[7],"m":"rlca"},{"a":63540,"t":"code","b":[7],"m":"rlca"},{"a":63541,"t":"code","b":[7],"m":"rlca"},{"a":63542,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":63545,"t":"code","b":[62,0],"m":"ld","o":"a,$00"},{"a":63547,"t":"code","b":[167],"m":"and","o":"a"},{"a":63548,"t":"code","b":[40,6],"m":"jr","oa":63556,"o":"z,$F844"},{"a":63550,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":63553,"t":"code","b":[205,210,241],"m":"call","oa":61906,"o":"draw_figure"},{"a":63556,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)","x":[63548]},{"a":63559,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63560,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63561,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":63563,"t":"code","b":[32,28],"m":"jr","oa":63593,"o":"nz,$F869"},{"a":63565,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63566,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63567,"t":"code","b":[230,82],"m":"and","o":"$52"},{"a":63569,"t":"code","b":[196,121,248],"m":"call","oa":63609,"o":"nz,blow_up"},{"a":63572,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63573,"t":"code","b":[230,168],"m":"and","o":"$A8"},{"a":63575,"t":"code","b":[196,131,248],"m":"call","oa":63619,"o":"nz,blow_down"},{"a":63578,"t":"code","b":[62,0],"m":"ld","o":"a,$00","x":[63606,63665]},{"a":63580,"t":"code","b":[167],"m":"and","o":"a"},{"a":63581,"t":"code","b":[40,9],"m":"jr","oa":63592,"o":"z,$F868"},{"a":63583,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":63586,"t":"code","b":[205,173,240],"m":"call","oa":61613,"o":"show_carried"},{"a":63589,"t":"code","b":[205,210,241],"m":"call","oa":61906,"o":"draw_figure"},{"a":63592,"t":"code","b":[201],"m":"ret","x":[63581]},{"a":63593,"t":"code","b":[35],"m":"inc","o":"hl","x":[63563]},{"a":63594,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63595,"t":"code","b":[230,21],"m":"and","o":"$15"},{"a":63597,"t":"code","b":[196,141,248],"m":"call","oa":63629,"o":"nz,blow_other_up"},{"a":63600,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63601,"t":"code","b":[230,42],"m":"and","o":"$2A"},{"a":63603,"t":"code","b":[196,151,248],"m":"call","oa":63639,"o":"nz,blow_other_down"},{"a":63606,"t":"code","b":[24,226],"m":"jr","oa":63578,"o":"$F85A"},{"a":63608,"l":"fight_blow","c":"The blow being shown, 1 to 3.","t":"byte","b":[0],"x":[63532,63650]},{"a":63609,"l":"blow_up","c":"The sword for shape 0: the mask for record byte 2 and three values, one for each blow, at blow_up_bits.","t":"code","b":[62,173],"m":"ld","o":"a,$AD","x":[63569]},{"a":63611,"t":"code","b":[1,128,248],"m":"ld","o":"bc,$F880"},{"a":63614,"t":"code","b":[24,33],"m":"jr","oa":63649,"o":"set_blow"},{"a":63616,"l":"blow_up_bits","c":"The bits blow_up sets for blows 1, 2 and 3.","t":"byte","b":[64,2,16]},{"a":63619,"l":"blow_down","c":"The axe for shape 0.","t":"code","b":[62,87],"m":"ld","o":"a,$57","x":[63575]},{"a":63621,"t":"code","b":[1,138,248],"m":"ld","o":"bc,$F88A"},{"a":63624,"t":"code","b":[24,23],"m":"jr","oa":63649,"o":"set_blow"},{"a":63626,"l":"blow_down_bits","c":"The bits blow_down sets for blows 1, 2 and 3.","t":"byte","b":[128,8,32]},{"a":63629,"l":"blow_other_up","c":"The sword for the other shapes.","t":"code","b":[62,234],"m":"ld","o":"a,$EA","x":[63597]},{"a":63631,"t":"code","b":[1,148,248],"m":"ld","o":"bc,$F894"},{"a":63634,"t":"code","b":[24,13],"m":"jr","oa":63649,"o":"set_blow"},{"a":63636,"l":"blow_other_up_bits","c":"The bits blow_other_up sets for blows 1, 2 and 3.","t":"byte","b":[16,1,4]},{"a":63639,"l":"blow_other_down","c":"The axe for the other shapes.","t":"code","b":[62,213],"m":"ld","o":"a,$D5","x":[63603]},{"a":63641,"t":"code","b":[1,158,248],"m":"ld","o":"bc,$F89E"},{"a":63644,"t":"code","b":[24,3],"m":"jr","oa":63649,"o":"set_blow"},{"a":63646,"l":"blow_other_down_bits","c":"The bits blow_other_down sets for blows 1, 2 and 3.","t":"byte","b":[32,2,8]},{"a":63649,"l":"set_blow","c":"Clears the weapon's bits of record byte 2 with the mask in A (kept in D) and sets the blow's value from the three bytes at BC, then goes on at $F85A without returning, so the second weapon test is skipped.","t":"code","b":[87],"m":"ld","o":"d,a","x":[63614,63624,63634,63644]},{"a":63650,"t":"code","b":[58,120,248],"m":"ld","oa":63608,"o":"a,(fight_blow)"},{"a":63653,"t":"code","b":[11],"m":"dec","o":"bc"},{"a":63654,"t":"code","b":[3],"m":"inc","o":"bc","x":[63656]},{"a":63655,"t":"code","b":[61],"m":"dec","o":"a"},{"a":63656,"t":"code","b":[32,252],"m":"jr","oa":63654,"o":"nz,$F8A6"},{"a":63658,"t":"code","b":[10],"m":"ld","o":"a,(bc)"},{"a":63659,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":63660,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63661,"t":"code","b":[162],"m":"and","o":"d"},{"a":63662,"t":"code","b":[179],"m":"or","o":"e"},{"a":63663,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":63664,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63665,"t":"code","b":[24,167],"m":"jr","oa":63578,"o":"$F85A"},{"a":63667,"l":"gfx_eat","c":"Graphics command 5 (geat, line 7150, three bytes; geatp, line 7170, five bytes): the command, a character, a column, and with five bytes a row and the food's facing. With five bytes the food (object 96) lying in the column beside the figure is first drawn over with XOR, rubbing it out; then, for a figure of shape 0, the figure lifts food to its mouth: the frames of eat_frames are drawn and undrawn in turn, with a pause, and the arm is put back. Three bytes do the same without the food on the ground, and nothing for other shapes.","t":"code","b":[205,20,249],"m":"call","oa":63764,"o":"meal_start","x":[63461]},{"a":63670,"t":"code","b":[1,25,250],"m":"ld","o":"bc,$FA19"},{"a":63673,"t":"code","b":[237,67,202,244],"m":"ld","oa":62666,"o":"($F4CA),bc"},{"a":63677,"t":"code","b":[205,104,249],"m":"call","oa":63848,"o":"turn_frames"},{"a":63680,"t":"code","b":[33,245,248],"m":"ld","o":"hl,$F8F5"},{"a":63683,"t":"code","b":[205,88,242],"m":"call","oa":62040,"o":"object_glyph","x":[63751]},{"a":63686,"t":"code","b":[42,101,249],"m":"ld","oa":63845,"o":"hl,(meal_vars)"},{"a":63689,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63690,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":63692,"t":"code","b":[205,215,242],"m":"call","oa":62167,"o":"turn_object"},{"a":63695,"t":"code","b":[205,61,242],"m":"call","oa":62013,"o":"object_offset"},{"a":63698,"t":"code","b":[237,75,184,242],"m":"ld","oa":62136,"o":"bc,(object_xy)"},{"a":63702,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":63705,"t":"code","b":[42,85,242],"m":"ld","oa":62037,"o":"hl,($F255)"},{"a":63708,"t":"code","b":[221,33,103,249],"m":"ld","o":"ix,$F967"},{"a":63712,"t":"code","b":[221,203,0,70],"m":"bit","o":"0,(ix+$00)"},{"a":63716,"t":"code","b":[204,18,221],"m":"call","oa":56594,"o":"z,draw_glyph"},{"a":63719,"t":"code","b":[221,203,0,78],"m":"bit","o":"1,(ix+$00)"},{"a":63723,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":63724,"t":"code","b":[205,194,249],"m":"call","oa":63938,"o":"play_frames"},{"a":63727,"t":"code","b":[205,68,249],"m":"call","oa":63812,"o":"meal_arm"},{"a":63730,"t":"code","b":[40,104],"m":"jr","oa":63836,"o":"z,$F95C"},{"a":63732,"t":"code","b":[201],"m":"ret"},{"a":63733,"l":"meal_objects","c":"The objects eaten and drunk: 96 food and 70 wine.","t":"byte","b":[96,70]},{"a":63735,"l":"gfx_drink","c":"Graphics command 6 (gdrink, line 7200): as gfx_eat, with the frames of drink_frames and the wine (object 70).","t":"code","b":[205,20,249],"m":"call","oa":63764,"o":"meal_start","x":[63463]},{"a":63738,"t":"code","b":[1,106,250],"m":"ld","o":"bc,$FA6A"},{"a":63741,"t":"code","b":[237,67,202,244],"m":"ld","oa":62666,"o":"($F4CA),bc"},{"a":63745,"t":"code","b":[205,104,249],"m":"call","oa":63848,"o":"turn_frames"},{"a":63748,"t":"code","b":[33,246,248],"m":"ld","o":"hl,$F8F6"},{"a":63751,"t":"code","b":[24,186],"m":"jr","oa":63683,"o":"$F8C3"},{"a":63753,"l":"arm_frame","c":"The arm rubbed out before eating or drinking and put back after: an unused byte, then one frame as in eat_frames.","t":"byte","b":[0,16,1,0,0,0,6,2]},{"a":63761,"t":"byte","b":[2,130,0]},{"a":63764,"l":"meal_start","c":"Starts gfx_eat or gfx_drink: five bytes draw the object, three do not; finds the figure and its position. Only shape 0 is animated, and its arm is rubbed out by meal_arm first; for other shapes five bytes draw only the object and three do nothing.","t":"code","b":[254,5],"m":"cp","o":"$05","x":[63667,63735]},{"a":63766,"t":"code","b":[40,9],"m":"jr","oa":63777,"o":"z,$F921"},{"a":63768,"t":"code","b":[254,3],"m":"cp","o":"$03"},{"a":63770,"t":"code","b":[194,100,222],"m":"jp","oa":56932,"o":"nz,gfx_return"},{"a":63773,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":63775,"t":"code","b":[24,1],"m":"jr","oa":63778,"o":"$F922"},{"a":63777,"t":"code","b":[175],"m":"xor","o":"a","x":[63766]},{"a":63778,"t":"code","b":[50,103,249],"m":"ld","oa":63847,"o":"($F967),a","x":[63775]},{"a":63781,"t":"code","b":[205,30,247],"m":"call","oa":63262,"o":"figure_setup"},{"a":63784,"t":"code","b":[205,186,242],"m":"call","oa":62138,"o":"read_position"},{"a":63787,"t":"code","b":[34,101,249],"m":"ld","oa":63845,"o":"(meal_vars),hl"},{"a":63790,"t":"code","b":[42,232,239],"m":"ld","oa":61416,"o":"hl,(figure_shape)"},{"a":63793,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63794,"t":"code","b":[230,254],"m":"and","o":"$FE"},{"a":63796,"t":"code","b":[40,14],"m":"jr","oa":63812,"o":"z,meal_arm"},{"a":63798,"t":"code","b":[58,103,249],"m":"ld","oa":63847,"o":"a,($F967)"},{"a":63801,"t":"code","b":[167],"m":"and","o":"a"},{"a":63802,"t":"code","b":[40,2],"m":"jr","oa":63806,"o":"z,$F93E"},{"a":63804,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63805,"t":"code","b":[201],"m":"ret"},{"a":63806,"t":"code","b":[33,103,249],"m":"ld","o":"hl,$F967","x":[63802]},{"a":63809,"t":"code","b":[203,206],"m":"set","o":"1,(hl)"},{"a":63811,"t":"code","b":[201],"m":"ret"},{"a":63812,"l":"meal_arm","c":"Turns the arm frame to the figure's facing and, unless the figure holds a shield (bit 2 of record byte 2), draws it.","t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)","x":[63727,63796]},{"a":63815,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63816,"t":"code","b":[229],"m":"push","o":"hl"},{"a":63817,"t":"code","b":[17,9,249],"m":"ld","o":"de,$F909"},{"a":63820,"t":"code","b":[237,83,246,249],"m":"ld","oa":63990,"o":"(frames_vars),de"},{"a":63824,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63825,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":63827,"t":"code","b":[205,114,249],"m":"call","oa":63858,"o":"$F972"},{"a":63830,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63831,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63832,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63833,"t":"code","b":[230,4],"m":"and","o":"$04"},{"a":63835,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":63836,"t":"code","b":[229],"m":"push","o":"hl","x":[63730]},{"a":63837,"t":"code","b":[33,10,249],"m":"ld","o":"hl,$F90A"},{"a":63840,"t":"code","b":[205,151,249],"m":"call","oa":63895,"o":"draw_frame"},{"a":63843,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63844,"t":"code","b":[201],"m":"ret"},{"a":63845,"l":"meal_vars","c":"The address of the command's facing byte, and the meal's flags (bit 0 the object not drawn, bit 1 the object only).","t":"byte","b":[174,202,1],"x":[63686,63787]},{"a":63848,"l":"turn_frames","c":"Turns a list of frames to face the figure's way (bit 0 of the byte before HL, record byte 1; meal_arm enters at $F972 with it in A), mirroring each frame's glyph in place.","t":"code","b":[43],"m":"dec","o":"hl","x":[63677,63745]},{"a":63849,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63850,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":63852,"t":"code","b":[42,202,244],"m":"ld","oa":62666,"o":"hl,($F4CA)"},{"a":63855,"t":"code","b":[34,246,249],"m":"ld","oa":63990,"o":"(frames_vars),hl"},{"a":63858,"t":"code","b":[42,246,249],"m":"ld","oa":63990,"o":"hl,(frames_vars)","x":[63827]},{"a":63861,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63862,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":63863,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63864,"t":"code","b":[7],"m":"rlca"},{"a":63865,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":63867,"t":"code","b":[184],"m":"cp","o":"b"},{"a":63868,"t":"code","b":[200],"m":"ret","o":"z"},{"a":63869,"t":"code","b":[62,128],"m":"ld","o":"a,$80"},{"a":63871,"t":"code","b":[174],"m":"xor","o":"(hl)"},{"a":63872,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":63873,"t":"code","b":[229],"m":"push","o":"hl","x":[63892]},{"a":63874,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63875,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63876,"t":"code","b":[238,128],"m":"xor","o":"$80"},{"a":63878,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":63879,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63880,"t":"code","b":[6,1],"m":"ld","o":"b,$01"},{"a":63882,"t":"code","b":[205,217,221],"m":"call","oa":56793,"o":"mirror_chars"},{"a":63885,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63886,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63887,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63888,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":63890,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":63891,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63892,"t":"code","b":[195,129,249],"m":"jp","oa":63873,"o":"$F981"},{"a":63895,"l":"draw_frame","c":"Draws one frame: the entries from HL that share its frame number (bits 0-3 of the first byte), each a flags byte, a position and 8 bytes of glyph, until one with bit 4 set.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[63840,63947,63960]},{"a":63898,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63899,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":63901,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":63902,"t":"code","b":[94],"m":"ld","o":"e,(hl)","x":[63931]},{"a":63903,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63904,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":63906,"t":"code","b":[186],"m":"cp","o":"d"},{"a":63907,"t":"code","b":[32,24],"m":"jr","oa":63933,"o":"nz,$F9BD"},{"a":63909,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63910,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63911,"t":"code","b":[213],"m":"push","o":"de"},{"a":63912,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63913,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":63916,"t":"code","b":[56,5],"m":"jr","oa":63923,"o":"c,$F9B3"},{"a":63918,"t":"code","b":[229],"m":"push","o":"hl"},{"a":63919,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":63922,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":63923,"t":"code","b":[209],"m":"pop","o":"de","x":[63916]},{"a":63924,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":63925,"t":"code","b":[1,8,0],"m":"ld","o":"bc,$0008"},{"a":63928,"t":"code","b":[9],"m":"add","o":"hl,bc"},{"a":63929,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":63931,"t":"code","b":[40,225],"m":"jr","oa":63902,"o":"z,$F99E"},{"a":63933,"t":"code","b":[235],"m":"ex","o":"de,hl","x":[63907]},{"a":63934,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":63937,"t":"code","b":[201],"m":"ret"},{"a":63938,"l":"play_frames","c":"Plays a list of frames: draws a frame, waits 220 x 256 loops, undraws it and goes on to the next; after the last it plays them back one at a time, ending when a frame's number comes round to 0.","t":"code","b":[42,246,249],"m":"ld","oa":63990,"o":"hl,(frames_vars)","x":[63724]},{"a":63941,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":63942,"t":"code","b":[62,1],"m":"ld","o":"a,$01"},{"a":63944,"t":"code","b":[50,248,249],"m":"ld","oa":63992,"o":"($F9F8),a"},{"a":63947,"t":"code","b":[205,151,249],"m":"call","oa":63895,"o":"draw_frame","x":[63981]},{"a":63950,"t":"code","b":[6,220],"m":"ld","o":"b,$DC"},{"a":63952,"t":"code","b":[197],"m":"push","o":"bc","x":[63958]},{"a":63953,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":63955,"t":"code","b":[16,254],"m":"djnz","oa":63955,"o":"$F9D3","x":[63955]},{"a":63957,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":63958,"t":"code","b":[16,248],"m":"djnz","oa":63952,"o":"$F9D0"},{"a":63960,"t":"code","b":[205,151,249],"m":"call","oa":63895,"o":"draw_frame"},{"a":63963,"t":"code","b":[254,16],"m":"cp","o":"$10"},{"a":63965,"t":"code","b":[40,16],"m":"jr","oa":63983,"o":"z,$F9EF"},{"a":63967,"t":"code","b":[58,248,249],"m":"ld","oa":63992,"o":"a,($F9F8)"},{"a":63970,"t":"code","b":[167],"m":"and","o":"a"},{"a":63971,"t":"code","b":[32,4],"m":"jr","oa":63977,"o":"nz,$F9E9"},{"a":63973,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":63974,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":63976,"t":"code","b":[200],"m":"ret","o":"z"},{"a":63977,"t":"code","b":[205,249,249],"m":"call","oa":63993,"o":"first_frame","x":[63971,63988]},{"a":63980,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":63981,"t":"code","b":[24,220],"m":"jr","oa":63947,"o":"$F9CB"},{"a":63983,"t":"code","b":[62,0],"m":"ld","o":"a,$00","x":[63965]},{"a":63985,"t":"code","b":[50,248,249],"m":"ld","oa":63992,"o":"($F9F8),a"},{"a":63988,"t":"code","b":[24,243],"m":"jr","oa":63977,"o":"$F9E9"},{"a":63990,"l":"frames_vars","c":"The address of the frame list being played, and play_frames's flag for the turn back.","t":"byte","b":[9,249,0],"x":[63820,63855,63858,63938]},{"a":63993,"l":"first_frame","c":"When play_frames goes back, steps back through the list, ten bytes an entry, from the frame at HL to the first entry of the frame before it.","t":"code","b":[34,183,239],"m":"ld","oa":61367,"o":"($EFB7),hl","x":[63977]},{"a":63996,"t":"code","b":[58,248,249],"m":"ld","oa":63992,"o":"a,($F9F8)"},{"a":63999,"t":"code","b":[167],"m":"and","o":"a"},{"a":64000,"t":"code","b":[192],"m":"ret","o":"nz"},{"a":64001,"t":"code","b":[17,10,0],"m":"ld","o":"de,$000A"},{"a":64004,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":64006,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":64007,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":64009,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":64010,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[64017]},{"a":64011,"t":"code","b":[185],"m":"cp","o":"c"},{"a":64012,"t":"code","b":[32,5],"m":"jr","oa":64019,"o":"nz,$FA13"},{"a":64014,"t":"code","b":[167],"m":"and","o":"a"},{"a":64015,"t":"code","b":[237,82],"m":"sbc","o":"hl,de"},{"a":64017,"t":"code","b":[24,247],"m":"jr","oa":64010,"o":"$FA0A"},{"a":64019,"t":"code","b":[25],"m":"add","o":"hl,de","x":[64012]},{"a":64020,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":64021,"t":"code","b":[42,183,239],"m":"ld","oa":61367,"o":"hl,($EFB7)"},{"a":64024,"t":"code","b":[201],"m":"ret"},{"a":64025,"l":"eat_frames","c":"The eating frames: a zero, then eight entries of ten bytes (a frame number with flags, a position, a glyph), frames 0 to 4, the arm going up to the mouth; play_frames brings it down again.","t":"byte","b":[0,0,145,0,0,0,0,0]},{"a":64033,"t":"byte","b":[0,1,0,0,1,0,0,0]},{"a":64041,"t":"byte","b":[0,0,0,128,0,1,145,0]},{"a":64049,"t":"byte","b":[0,0,0,0,1,0,0,1]},{"a":64057,"t":"byte","b":[1,0,0,0,0,0,128,0]},{"a":64065,"t":"byte","b":[0,2,1,0,0,0,192,0]},{"a":64073,"t":"byte","b":[0,0,0,3,1,128,64,0]},{"a":64081,"t":"byte","b":[0,0,0,0,0,4,2,0]},{"a":64089,"t":"byte","b":[0,0,0,0,0,0,32,20]},{"a":64097,"t":"byte","b":[1,64,32,0,0,0,0,0]},{"a":64105,"t":"byte","b":[0]},{"a":64106,"l":"drink_frames","c":"The drinking frames: a zero, then ten entries of ten bytes.","t":"byte","b":[0,0,145,0,0,0,0,2]},{"a":64114,"t":"byte","b":[2,7,7,0,1,0,0,0]},{"a":64122,"t":"byte","b":[0,0,0,128,0,1,145,0]},{"a":64130,"t":"byte","b":[0,2,2,7,7,0,0,1]},{"a":64138,"t":"byte","b":[1,0,0,0,0,0,128,0]},{"a":64146,"t":"byte","b":[0,2,145,2,2,7,7,0]},{"a":64154,"t":"byte","b":[0,0,0,2,1,0,0,0]},{"a":64162,"t":"byte","b":[192,0,0,0,0,3,2,0]},{"a":64170,"t":"byte","b":[0,0,0,0,0,0,96,3]},{"a":64178,"t":"byte","b":[1,224,64,0,0,0,0,0]},{"a":64186,"t":"byte","b":[0,4,2,0,0,0,0,0]},{"a":64194,"t":"byte","b":[0,192,192,20,1,192,64,0]},{"a":64202,"t":"byte","b":[0,0,0,0,0]},{"a":64207,"l":"gfx_feature","c":"Graphics command 18: two bytes, the command and a feature byte, the feature in the top four bits and a position in the bottom four. The position times 2 becomes castle_x, the column of a castle's left edge, and times 16 the pixel x at $DF38; plot_pixel is set to OR, and the feature's routine is taken from feature_table.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[63487]},{"a":64208,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":64210,"t":"code","b":[7],"m":"rlca"},{"a":64211,"t":"code","b":[50,42,225],"m":"ld","oa":57642,"o":"(castle_x),a"},{"a":64214,"t":"code","b":[7],"m":"rlca"},{"a":64215,"t":"code","b":[7],"m":"rlca"},{"a":64216,"t":"code","b":[7],"m":"rlca"},{"a":64217,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":64220,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":64221,"t":"code","b":[230,240],"m":"and","o":"$F0"},{"a":64223,"t":"code","b":[15],"m":"rrca"},{"a":64224,"t":"code","b":[15],"m":"rrca"},{"a":64225,"t":"code","b":[15],"m":"rrca"},{"a":64226,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64227,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":64229,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":64232,"t":"code","b":[33,241,250],"m":"ld","o":"hl,$FAF1"},{"a":64235,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64236,"t":"code","b":[94],"m":"ld","o":"e,(hl)"},{"a":64237,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":64238,"t":"code","b":[86],"m":"ld","o":"d,(hl)"},{"a":64239,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":64240,"t":"code","b":[233],"m":"jp","o":"(hl)"},{"a":64241,"l":"feature_table","c":"The 15 scene features: 0-3 castles, 4 a hut, 5 a shut cupboard, 6 an open cupboard, 7 a hut's door, 8 a shut chest, 9 an open chest, 10 a window, 11 a tall window, 12 a gate, 13 a black sky, 14 dark buildings.","t":"addr","b":[70,252],"oa":64582,"o":"feature_castle_0"},{"a":64243,"t":"addr","b":[96,252],"oa":64608,"o":"feature_castle_1"},{"a":64245,"t":"addr","b":[140,252],"oa":64652,"o":"feature_castle_2"},{"a":64247,"t":"addr","b":[178,252],"oa":64690,"o":"feature_castle_3"},{"a":64249,"t":"addr","b":[11,252],"oa":64523,"o":"feature_hut"},{"a":64251,"t":"addr","b":[7,254],"oa":65031,"o":"feature_cupboard_shut"},{"a":64253,"t":"addr","b":[197,253],"oa":64965,"o":"feature_cupboard_open"},{"a":64255,"t":"addr","b":[222,252],"oa":64734,"o":"feature_door"},{"a":64257,"t":"addr","b":[53,251],"oa":64309,"o":"feature_chest_shut"},{"a":64259,"t":"addr","b":[61,251],"oa":64317,"o":"feature_chest_open"},{"a":64261,"t":"addr","b":[91,253],"oa":64859,"o":"feature_window"},{"a":64263,"t":"addr","b":[30,253],"oa":64798,"o":"feature_tall_window"},{"a":64265,"t":"addr","b":[151,253],"oa":64919,"o":"feature_gate"},{"a":64267,"t":"addr","b":[2,252],"oa":64514,"o":"feature_black_sky"},{"a":64269,"t":"addr","b":[194,251],"oa":64450,"o":"gfx_dark"},{"a":64271,"l":"chest_shut_list","c":"Scene feature 8, a shut chest, as a glyph list (see cupboard_open_lists).","t":"byte","b":[0,95,191,127,255,191,144,208]},{"a":64279,"t":"byte","b":[63,16,254,124,248,252,255,65]},{"a":64287,"t":"byte","b":[1,255,255]},{"a":64290,"l":"chest_open_list","c":"Scene feature 9, an open chest.","t":"byte","b":[0,0,0,127,208,191,144,208]},{"a":64298,"t":"byte","b":[63,16,0,0,254,1,255,65]},{"a":64306,"t":"byte","b":[1,255,255]},{"a":64309,"l":"feature_chest_shut","c":"Feature 8: the shut chest's glyph list, drawn with XOR so that the open one can replace it.","t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor","x":[64257]},{"a":64312,"t":"code","b":[33,15,251],"m":"ld","o":"hl,$FB0F"},{"a":64315,"t":"code","b":[24,6],"m":"jr","oa":64323,"o":"draw_glyph_list"},{"a":64317,"l":"feature_chest_open","c":"Feature 9: the open chest's list.","t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor","x":[64259]},{"a":64320,"t":"code","b":[33,34,251],"m":"ld","o":"hl,$FB22"},{"a":64323,"l":"draw_glyph_list","c":"Draws a glyph list from HL at the feature's position: each entry's position byte places its 8 bytes with draw_glyph, until a byte with bit 3 set. Keeps the feature's position at feature_xy and puts it back after.","t":"code","b":[237,91,56,223],"m":"ld","oa":57144,"o":"de,(draw_xy)","x":[64315]},{"a":64327,"t":"code","b":[237,83,125,251],"m":"ld","oa":64381,"o":"(feature_xy),de"},{"a":64331,"t":"code","b":[24,15],"m":"jr","oa":64348,"o":"glyph_list_loop"},{"a":64333,"l":"glyph_list_at_cell","c":"Not reached: no address in the game points here. draw_glyph_list with the position given as a cell in BC, converted to pixels.","t":"code","b":[237,91,56,223],"m":"ld","oa":57144,"o":"de,(draw_xy)"},{"a":64337,"t":"code","b":[237,83,125,251],"m":"ld","oa":64381,"o":"(feature_xy),de"},{"a":64341,"t":"code","b":[205,149,222],"m":"call","oa":56981,"o":"point_of_cell"},{"a":64344,"t":"code","b":[237,67,56,223],"m":"ld","oa":57144,"o":"(draw_xy),bc"},{"a":64348,"l":"glyph_list_loop","c":"draw_glyph_list's loop over the entries.","t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[64331,64369]},{"a":64349,"t":"code","b":[230,8],"m":"and","o":"$08"},{"a":64351,"t":"code","b":[32,19],"m":"jr","oa":64372,"o":"nz,$FB74"},{"a":64353,"t":"code","b":[126],"m":"ld","o":"a,(hl)"},{"a":64354,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64355,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64358,"t":"code","b":[56,4],"m":"jr","oa":64364,"o":"c,$FB6C"},{"a":64360,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":64361,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":64364,"t":"code","b":[225],"m":"pop","o":"hl","x":[64358]},{"a":64365,"t":"code","b":[17,9,0],"m":"ld","o":"de,$0009"},{"a":64368,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64369,"t":"code","b":[195,92,251],"m":"jp","oa":64348,"o":"glyph_list_loop"},{"a":64372,"t":"code","b":[237,91,125,251],"m":"ld","oa":64381,"o":"de,(feature_xy)","x":[64351]},{"a":64376,"t":"code","b":[237,83,56,223],"m":"ld","oa":57144,"o":"(draw_xy),de"},{"a":64380,"t":"code","b":[201],"m":"ret"},{"a":64381,"l":"feature_xy","c":"The feature position draw_glyph_list keeps while it draws.","t":"byte","b":[152,56],"x":[64327,64337,64372]},{"a":64383,"l":"draw_flag","c":"A castle's flag at row B, column C (plus castle_x), three times in four: a pole down the left of the cell, and the flag above it, drawn from flag_glyphs. Notes the flag's place at $DF3A and sets bit 6 of the style so that gfx_flag can wave it.","t":"code","b":[58,42,225],"m":"ld","oa":57642,"o":"a,(castle_x)","x":[64600,64644,64682,64726]},{"a":64386,"t":"code","b":[129],"m":"add","o":"a,c"},{"a":64387,"t":"code","b":[79],"m":"ld","o":"c,a"},{"a":64388,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":64391,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":64393,"t":"code","b":[200],"m":"ret","o":"z"},{"a":64394,"t":"code","b":[5],"m":"dec","o":"b"},{"a":64395,"t":"code","b":[237,67,58,223],"m":"ld","oa":57146,"o":"(flag_position),bc"},{"a":64399,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":64402,"t":"code","b":[246,64],"m":"or","o":"$40"},{"a":64404,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":64407,"t":"code","b":[4],"m":"inc","o":"b"},{"a":64408,"t":"code","b":[205,158,218],"m":"call","oa":55966,"o":"cell_address"},{"a":64411,"t":"code","b":[235],"m":"ex","o":"de,hl"},{"a":64412,"t":"code","b":[6,8],"m":"ld","o":"b,$08"},{"a":64414,"t":"code","b":[126],"m":"ld","o":"a,(hl)","x":[64419]},{"a":64415,"t":"code","b":[246,128],"m":"or","o":"$80"},{"a":64417,"t":"code","b":[119],"m":"ld","o":"(hl),a"},{"a":64418,"t":"code","b":[36],"m":"inc","o":"h"},{"a":64419,"t":"code","b":[16,249],"m":"djnz","oa":64414,"o":"$FB9E"},{"a":64421,"t":"code","b":[237,75,58,223],"m":"ld","oa":57146,"o":"bc,(flag_position)"},{"a":64425,"t":"code","b":[205,149,222],"m":"call","oa":56981,"o":"point_of_cell"},{"a":64428,"t":"code","b":[33,178,251],"m":"ld","o":"hl,$FBB2"},{"a":64431,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":64434,"l":"flag_glyphs","c":"The flag in two positions, 8 bytes each.","t":"byte","b":[128,128,192,224,240,248,252,136]},{"a":64442,"t":"byte","b":[128,128,224,248,254,248,224,128]},{"a":64450,"l":"gfx_dark","c":"Graphics command 19 (line 7010) and feature 14: sets the dark-scheme bit of the style, so the next buildings are drawn red on black. Line 7010 sends it before the picture of locations 1 to 45, 56, 57, 65, 66 and 81.","t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[63489,64269]},{"a":64453,"t":"code","b":[246,4],"m":"or","o":"$04"},{"a":64455,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":64458,"t":"code","b":[201],"m":"ret"},{"a":64459,"l":"gfx_flag","c":"Graphics command 20 (line 8110, one time in two round the main loop): if the castle has a flag, undraws it and draws the other position, so the flag flaps.","t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[63491]},{"a":64462,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":64463,"t":"code","b":[230,64],"m":"and","o":"$40"},{"a":64465,"t":"code","b":[200],"m":"ret","o":"z"},{"a":64466,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":64467,"t":"code","b":[230,8],"m":"and","o":"$08"},{"a":64469,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64470,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":64472,"t":"code","b":[205,106,221],"m":"call","oa":56682,"o":"set_plot_xor"},{"a":64475,"t":"code","b":[33,178,251],"m":"ld","o":"hl,$FBB2"},{"a":64478,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64479,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64480,"t":"code","b":[213],"m":"push","o":"de"},{"a":64481,"t":"code","b":[237,75,58,223],"m":"ld","oa":57146,"o":"bc,(flag_position)"},{"a":64485,"t":"code","b":[205,149,222],"m":"call","oa":56981,"o":"point_of_cell"},{"a":64488,"t":"code","b":[197],"m":"push","o":"bc"},{"a":64489,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":64492,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":64495,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":64496,"t":"code","b":[209],"m":"pop","o":"de"},{"a":64497,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":64498,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":64501,"t":"code","b":[238,8],"m":"xor","o":"$08"},{"a":64503,"t":"code","b":[50,63,223],"m":"ld","oa":57151,"o":"($DF3F),a"},{"a":64506,"t":"code","b":[123],"m":"ld","o":"a,e"},{"a":64507,"t":"code","b":[238,8],"m":"xor","o":"$08"},{"a":64509,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64510,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64511,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":64514,"l":"feature_black_sky","c":"Feature 13: rows 0-7 cleared and painted black.","t":"code","b":[175],"m":"xor","o":"a","x":[64267]},{"a":64515,"t":"code","b":[17,32,8],"m":"ld","o":"de,$0820"},{"a":64518,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":64519,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":64520,"t":"code","b":[195,43,223],"m":"jp","oa":57131,"o":"blank_box"},{"a":64523,"l":"feature_hut","c":"Feature 4, a hut: a new style unless one is set, then a tower 3 or 4 cells high and 4 to 6 wide at the position (draw_tower, from $E07F with its sizes in DE), and, seven times in eight, its rows above the bottom two (the roof) painted black or blue at random.","t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[64249]},{"a":64526,"t":"code","b":[205,64,223],"m":"call","oa":57152,"o":"new_hall_style"},{"a":64529,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":64532,"t":"code","b":[230,1],"m":"and","o":"$01"},{"a":64534,"t":"code","b":[198,3],"m":"add","o":"a,$03"},{"a":64536,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":64537,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":64540,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":64542,"t":"code","b":[32,1],"m":"jr","oa":64545,"o":"nz,$FC21"},{"a":64544,"t":"code","b":[60],"m":"inc","o":"a"},{"a":64545,"t":"code","b":[61],"m":"dec","o":"a","x":[64542]},{"a":64546,"t":"code","b":[198,4],"m":"add","o":"a,$04"},{"a":64548,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64549,"t":"code","b":[6,0],"m":"ld","o":"b,$00"},{"a":64551,"t":"code","b":[213],"m":"push","o":"de"},{"a":64552,"t":"code","b":[205,127,224],"m":"call","oa":57471,"o":"$E07F"},{"a":64555,"t":"code","b":[209],"m":"pop","o":"de"},{"a":64556,"t":"code","b":[58,179,218],"m":"ld","oa":55987,"o":"a,($DAB3)"},{"a":64559,"t":"code","b":[230,7],"m":"and","o":"$07"},{"a":64561,"t":"code","b":[200],"m":"ret","o":"z"},{"a":64562,"t":"code","b":[58,42,225],"m":"ld","oa":57642,"o":"a,(castle_x)"},{"a":64565,"t":"code","b":[111],"m":"ld","o":"l,a"},{"a":64566,"t":"code","b":[62,12],"m":"ld","o":"a,$0C"},{"a":64568,"t":"code","b":[146],"m":"sub","o":"d"},{"a":64569,"t":"code","b":[103],"m":"ld","o":"h,a"},{"a":64570,"t":"code","b":[122],"m":"ld","o":"a,d"},{"a":64571,"t":"code","b":[214,2],"m":"sub","o":"$02"},{"a":64573,"t":"code","b":[87],"m":"ld","o":"d,a"},{"a":64574,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":64577,"t":"code","b":[230,9],"m":"and","o":"$09"},{"a":64579,"t":"code","b":[195,64,221],"m":"jp","oa":56640,"o":"paint_box"},{"a":64582,"l":"feature_castle_0","c":"Feature 0, a castle of one tower with battlements, a flag and a gate at column 5.","t":"code","b":[175],"m":"xor","o":"a","x":[64241]},{"a":64583,"t":"code","b":[205,44,225],"m":"call","oa":57644,"o":"castle_start"},{"a":64586,"t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64589,"l":"castle_0_tower_args","c":"Castle 0, the tower: draw_tower's three bytes, 9 cells wide and 9 high at column 1, shading $80.","t":"byte","b":[9,9,129]},{"a":64592,"l":"castle_0_top","c":"Castle 0: the battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64595,"l":"castle_0_battlements_args","c":"Castle 0, the battlements: draw_battlements's two bytes, 6 merlons from column 0 on row 1, with a parapet.","t":"byte","b":[128,129]},{"a":64597,"l":"castle_0_end","c":"Castle 0: the flag at row 1, column 5, and the gate at column 5.","t":"code","b":[1,5,1],"m":"ld","o":"bc,$0105"},{"a":64600,"t":"code","b":[205,127,251],"m":"call","oa":64383,"o":"draw_flag"},{"a":64603,"t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":64605,"t":"code","b":[195,140,253],"m":"jp","oa":64908,"o":"draw_gate"},{"a":64608,"l":"feature_castle_1","c":"Feature 1, a castle of three towers.","t":"code","b":[62,1],"m":"ld","o":"a,$01","x":[64243]},{"a":64610,"t":"code","b":[205,44,225],"m":"call","oa":57644,"o":"castle_start"},{"a":64613,"t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64616,"l":"castle_1_left_tower_args","c":"Castle 1, the left tower: draw_tower's three bytes, 5 cells wide and 8 high at column 1, shading $40.","t":"byte","b":[5,8,65]},{"a":64619,"l":"castle_1_middle","c":"Castle 1: the middle tower.","t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64622,"l":"castle_1_middle_tower_args","c":"Castle 1, the middle tower: draw_tower's three bytes, 4 cells wide and 6 high at column 6, shading $20.","t":"byte","b":[4,6,38]},{"a":64625,"l":"castle_1_right","c":"Castle 1: the right tower.","t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64628,"l":"castle_1_right_tower_args","c":"Castle 1, the right tower: draw_tower's three bytes, 9 cells wide and 8 high at column 10, shading $80.","t":"byte","b":[9,8,138]},{"a":64631,"l":"castle_1_top","c":"Castle 1: the battlements of the left tower.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64634,"l":"castle_1_left_battlements_args","c":"Castle 1, the left battlements: draw_battlements's two bytes, 4 merlons from column 0 on row 2, with a parapet.","t":"byte","b":[64,130]},{"a":64636,"l":"castle_1_top_2","c":"Castle 1: the right battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64639,"l":"castle_1_right_battlements_args","c":"Castle 1, the right battlements: draw_battlements's two bytes, 5 merlons from column 10 on row 3.","t":"byte","b":[106,3]},{"a":64641,"l":"castle_1_end","c":"Castle 1: the flag at row 2, column 14, and the gate at column 7.","t":"code","b":[1,14,2],"m":"ld","o":"bc,$020E"},{"a":64644,"t":"code","b":[205,127,251],"m":"call","oa":64383,"o":"draw_flag"},{"a":64647,"t":"code","b":[62,7],"m":"ld","o":"a,$07"},{"a":64649,"t":"code","b":[195,140,253],"m":"jp","oa":64908,"o":"draw_gate"},{"a":64652,"l":"feature_castle_2","c":"Feature 2, a castle with a keep behind a wider wall.","t":"code","b":[62,2],"m":"ld","o":"a,$02","x":[64245]},{"a":64654,"t":"code","b":[205,44,225],"m":"call","oa":57644,"o":"castle_start"},{"a":64657,"t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64660,"l":"castle_2_keep_args","c":"Castle 2, the keep: draw_tower's three bytes, 5 cells wide and 8 high at column 4, shading $40.","t":"byte","b":[5,8,68]},{"a":64663,"l":"castle_2_wall","c":"Castle 2: the wall.","t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64666,"l":"castle_2_wall_args","c":"Castle 2, the wall: draw_tower's three bytes, 13 cells wide and 5 high at column 0, shading $80.","t":"byte","b":[13,5,128]},{"a":64669,"l":"castle_2_top","c":"Castle 2: the wall's battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64672,"l":"castle_2_wall_battlements_args","c":"Castle 2, the wall's battlements: draw_battlements's two bytes, 7 merlons from column 0 on row 6.","t":"byte","b":[160,6]},{"a":64674,"l":"castle_2_top_2","c":"Castle 2: the keep's battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64677,"l":"castle_2_keep_battlements_args","c":"Castle 2, the keep's battlements: draw_battlements's two bytes, 4 merlons from column 3 on row 2, with a parapet.","t":"byte","b":[67,130]},{"a":64679,"l":"castle_2_end","c":"Castle 2: the flag at row 2, column 6, and the gate at column 6.","t":"code","b":[1,6,2],"m":"ld","o":"bc,$0206"},{"a":64682,"t":"code","b":[205,127,251],"m":"call","oa":64383,"o":"draw_flag"},{"a":64685,"t":"code","b":[62,6],"m":"ld","o":"a,$06"},{"a":64687,"t":"code","b":[195,140,253],"m":"jp","oa":64908,"o":"draw_gate"},{"a":64690,"l":"feature_castle_3","c":"Feature 3, a castle of two towers with a wall between them.","t":"code","b":[62,3],"m":"ld","o":"a,$03","x":[64247]},{"a":64692,"t":"code","b":[205,44,225],"m":"call","oa":57644,"o":"castle_start"},{"a":64695,"t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64698,"l":"castle_3_left_tower_args","c":"Castle 3, the left tower: draw_tower's three bytes, 5 cells wide and 9 high at column 1, shading $40.","t":"byte","b":[5,9,65]},{"a":64701,"l":"castle_3_wall","c":"Castle 3: the wall.","t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64704,"l":"castle_3_wall_args","c":"Castle 3, the wall: draw_tower's three bytes, 8 cells wide and 7 high at column 6, shading $20.","t":"byte","b":[8,7,38]},{"a":64707,"l":"castle_3_right","c":"Castle 3: the right tower.","t":"code","b":[205,119,224],"m":"call","oa":57463,"o":"draw_tower"},{"a":64710,"l":"castle_3_right_tower_args","c":"Castle 3, the right tower: draw_tower's three bytes, 5 cells wide and 9 high at column 14, shading $40.","t":"byte","b":[5,9,78]},{"a":64713,"l":"castle_3_top","c":"Castle 3: the left battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64716,"l":"castle_3_left_battlements_args","c":"Castle 3, the left battlements: draw_battlements's two bytes, 4 merlons from column 0 on row 1, with a parapet.","t":"byte","b":[64,129]},{"a":64718,"l":"castle_3_top_2","c":"Castle 3: the right battlements.","t":"code","b":[205,70,225],"m":"call","oa":57670,"o":"draw_battlements"},{"a":64721,"l":"castle_3_right_battlements_args","c":"Castle 3, the right battlements: draw_battlements's two bytes, 4 merlons from column 13 on row 1, with a parapet.","t":"byte","b":[77,129]},{"a":64723,"l":"castle_3_end","c":"Castle 3: the flag at row 1, column 3, and the gate at column 9.","t":"code","b":[1,3,1],"m":"ld","o":"bc,$0103"},{"a":64726,"t":"code","b":[205,127,251],"m":"call","oa":64383,"o":"draw_flag"},{"a":64729,"t":"code","b":[62,9],"m":"ld","o":"a,$09"},{"a":64731,"t":"code","b":[195,140,253],"m":"jp","oa":64908,"o":"draw_gate"},{"a":64734,"l":"feature_door","c":"Feature 7, a hut's door: one of the two pairs of door_glyphs and one of two door frames picked from rng_state, drawn a cell apart, the door's cells painted in the other colour.","t":"code","b":[205,180,218],"m":"call","oa":55988,"o":"random","x":[64255]},{"a":64737,"t":"code","b":[58,177,218],"m":"ld","oa":55985,"o":"a,($DAB1)"},{"a":64740,"t":"code","b":[230,16],"m":"and","o":"$10"},{"a":64742,"t":"code","b":[33,238,237],"m":"ld","o":"hl,$EDEE"},{"a":64745,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64746,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":64748,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64749,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64750,"t":"code","b":[58,176,218],"m":"ld","oa":55984,"o":"a,(rng_state)"},{"a":64753,"t":"code","b":[230,8],"m":"and","o":"$08"},{"a":64755,"t":"code","b":[33,14,253],"m":"ld","o":"hl,$FD0E"},{"a":64758,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64759,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64760,"t":"code","b":[62,5],"m":"ld","o":"a,$05"},{"a":64762,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64765,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":64768,"t":"code","b":[62,4],"m":"ld","o":"a,$04"},{"a":64770,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64773,"t":"code","b":[197],"m":"push","o":"bc"},{"a":64774,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":64777,"t":"code","b":[58,61,223],"m":"ld","oa":57149,"o":"a,($DF3D)"},{"a":64780,"t":"code","b":[24,49],"m":"jr","oa":64831,"o":"$FD3F"},{"a":64782,"l":"door_frames","c":"The two bars over a hut's door for feature_door, 8 bytes each, drawn in the cell above the door with only their bottom two lines set.","t":"byte","b":[0,0,0,0,0,0,255,255]},{"a":64790,"t":"byte","b":[0,0,0,0,0,0,129,255]},{"a":64798,"l":"feature_tall_window","c":"Feature 11, a tall window: two glyphs from tall_window_glyphs for the style, its two cells painted in the wall colour.","t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)","x":[64263]},{"a":64801,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":64803,"t":"code","b":[7],"m":"rlca"},{"a":64804,"t":"code","b":[7],"m":"rlca"},{"a":64805,"t":"code","b":[7],"m":"rlca"},{"a":64806,"t":"code","b":[7],"m":"rlca"},{"a":64807,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64808,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":64810,"t":"code","b":[33,251,236],"m":"ld","o":"hl,$ECFB"},{"a":64813,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64814,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64815,"t":"code","b":[62,7],"m":"ld","o":"a,$07"},{"a":64817,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64820,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":64821,"t":"code","b":[198,16],"m":"add","o":"a,$10"},{"a":64823,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":64824,"t":"code","b":[197],"m":"push","o":"bc"},{"a":64825,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":64828,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":64831,"t":"code","b":[17,1,2],"m":"ld","o":"de,$0201","x":[64780]},{"a":64834,"t":"code","b":[96],"m":"ld","o":"h,b"},{"a":64835,"t":"code","b":[105],"m":"ld","o":"l,c"},{"a":64836,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":64839,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":64840,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":64841,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64842,"t":"code","b":[197],"m":"push","o":"bc"},{"a":64843,"t":"code","b":[205,18,221],"m":"call","oa":56594,"o":"draw_glyph"},{"a":64846,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":64847,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":64848,"t":"code","b":[120],"m":"ld","o":"a,b"},{"a":64849,"t":"code","b":[214,8],"m":"sub","o":"$08"},{"a":64851,"t":"code","b":[71],"m":"ld","o":"b,a"},{"a":64852,"t":"code","b":[17,8,0],"m":"ld","o":"de,$0008"},{"a":64855,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64856,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":64859,"l":"feature_window","c":"Feature 10, a window: one glyph from window_glyphs for the style, a cell to the right of the position.","t":"code","b":[58,56,223],"m":"ld","oa":57144,"o":"a,(draw_xy)","x":[64261]},{"a":64862,"t":"code","b":[198,8],"m":"add","o":"a,$08"},{"a":64864,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":64867,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":64870,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":64872,"t":"code","b":[7],"m":"rlca"},{"a":64873,"t":"code","b":[7],"m":"rlca"},{"a":64874,"t":"code","b":[7],"m":"rlca"},{"a":64875,"t":"code","b":[95],"m":"ld","o":"e,a"},{"a":64876,"t":"code","b":[22,0],"m":"ld","o":"d,$00"},{"a":64878,"t":"code","b":[33,219,236],"m":"ld","o":"hl,$ECDB"},{"a":64881,"t":"code","b":[25],"m":"add","o":"hl,de"},{"a":64882,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64883,"t":"code","b":[62,4],"m":"ld","o":"a,$04"},{"a":64885,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64888,"t":"code","b":[197],"m":"push","o":"bc"},{"a":64889,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":64892,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":64895,"t":"code","b":[17,1,1],"m":"ld","o":"de,$0101"},{"a":64898,"t":"code","b":[96],"m":"ld","o":"h,b"},{"a":64899,"t":"code","b":[105],"m":"ld","o":"l,c"},{"a":64900,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":64903,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":64904,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":64905,"t":"code","b":[195,18,221],"m":"jp","oa":56594,"o":"draw_glyph"},{"a":64908,"l":"draw_gate","c":"A castle's gate at column A (plus castle_x).","t":"code","b":[111],"m":"ld","o":"l,a","x":[64605,64649,64687,64731]},{"a":64909,"t":"code","b":[58,42,225],"m":"ld","oa":57642,"o":"a,(castle_x)"},{"a":64912,"t":"code","b":[133],"m":"add","o":"a,l"},{"a":64913,"t":"code","b":[7],"m":"rlca"},{"a":64914,"t":"code","b":[7],"m":"rlca"},{"a":64915,"t":"code","b":[7],"m":"rlca"},{"a":64916,"t":"code","b":[50,56,223],"m":"ld","oa":57144,"o":"(draw_xy),a"},{"a":64919,"l":"feature_gate","c":"Feature 12, a gate on its own: a 2 by 2 block painted in the other colour and the gate list for the style (gate_lists), drawn by draw_glyph_list.","t":"code","b":[62,4],"m":"ld","o":"a,$04","x":[64265]},{"a":64921,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64924,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":64927,"t":"code","b":[96],"m":"ld","o":"h,b"},{"a":64928,"t":"code","b":[105],"m":"ld","o":"l,c"},{"a":64929,"t":"code","b":[17,2,2],"m":"ld","o":"de,$0202"},{"a":64932,"t":"code","b":[58,61,223],"m":"ld","oa":57149,"o":"a,($DF3D)"},{"a":64935,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":64938,"t":"code","b":[33,67,251],"m":"ld","o":"hl,$FB43"},{"a":64941,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64942,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":64945,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":64947,"t":"code","b":[254,2],"m":"cp","o":"$02"},{"a":64949,"t":"code","b":[56,6],"m":"jr","oa":64957,"o":"c,$FDBD"},{"a":64951,"t":"code","b":[32,8],"m":"jr","oa":64961,"o":"nz,$FDC1"},{"a":64953,"t":"code","b":[33,51,238],"m":"ld","o":"hl,$EE33"},{"a":64956,"t":"code","b":[201],"m":"ret"},{"a":64957,"t":"code","b":[33,14,238],"m":"ld","o":"hl,$EE0E","x":[64949]},{"a":64960,"t":"code","b":[201],"m":"ret"},{"a":64961,"t":"code","b":[33,88,238],"m":"ld","o":"hl,$EE58","x":[64951]},{"a":64964,"t":"code","b":[201],"m":"ret"},{"a":64965,"l":"feature_cupboard_open","c":"Feature 6, an open cupboard: its cells painted, then the list for the style from cupboard_open_lists.","t":"code","b":[62,3],"m":"ld","o":"a,$03","x":[64253]},{"a":64967,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":64970,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":64973,"t":"code","b":[96],"m":"ld","o":"h,b"},{"a":64974,"t":"code","b":[105],"m":"ld","o":"l,c"},{"a":64975,"t":"code","b":[58,60,223],"m":"ld","oa":57148,"o":"a,(hall_colours)"},{"a":64978,"t":"code","b":[17,2,1],"m":"ld","o":"de,$0102"},{"a":64981,"t":"code","b":[229],"m":"push","o":"hl"},{"a":64982,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":64985,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":64988,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":64989,"t":"code","b":[17,1,1],"m":"ld","o":"de,$0101"},{"a":64992,"t":"code","b":[58,61,223],"m":"ld","oa":57149,"o":"a,($DF3D)"},{"a":64995,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":64998,"t":"code","b":[33,67,251],"m":"ld","o":"hl,$FB43"},{"a":65001,"t":"code","b":[229],"m":"push","o":"hl"},{"a":65002,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":65005,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":65007,"t":"code","b":[40,10],"m":"jr","oa":65019,"o":"z,$FDFB"},{"a":65009,"t":"code","b":[61],"m":"dec","o":"a"},{"a":65010,"t":"code","b":[40,11],"m":"jr","oa":65023,"o":"z,$FDFF"},{"a":65012,"t":"code","b":[61],"m":"dec","o":"a"},{"a":65013,"t":"code","b":[40,12],"m":"jr","oa":65027,"o":"z,$FE03"},{"a":65015,"t":"code","b":[33,116,237],"m":"ld","o":"hl,$ED74"},{"a":65018,"t":"code","b":[201],"m":"ret"},{"a":65019,"t":"code","b":[33,59,237],"m":"ld","o":"hl,$ED3B","x":[65007]},{"a":65022,"t":"code","b":[201],"m":"ret"},{"a":65023,"t":"code","b":[33,78,237],"m":"ld","o":"hl,$ED4E","x":[65010]},{"a":65026,"t":"code","b":[201],"m":"ret"},{"a":65027,"t":"code","b":[33,97,237],"m":"ld","o":"hl,$ED61","x":[65013]},{"a":65030,"t":"code","b":[201],"m":"ret"},{"a":65031,"l":"feature_cupboard_shut","c":"Feature 5, a shut cupboard: the list for the style from cupboard_shut_lists.","t":"code","b":[62,3],"m":"ld","o":"a,$03","x":[64251]},{"a":65033,"t":"code","b":[205,12,241],"m":"call","oa":61708,"o":"part_position"},{"a":65036,"t":"code","b":[205,130,222],"m":"call","oa":56962,"o":"cell_of_point"},{"a":65039,"t":"code","b":[96],"m":"ld","o":"h,b"},{"a":65040,"t":"code","b":[105],"m":"ld","o":"l,c"},{"a":65041,"t":"code","b":[17,2,1],"m":"ld","o":"de,$0102"},{"a":65044,"t":"code","b":[58,61,223],"m":"ld","oa":57149,"o":"a,($DF3D)"},{"a":65047,"t":"code","b":[205,43,223],"m":"call","oa":57131,"o":"blank_box"},{"a":65050,"t":"code","b":[205,113,221],"m":"call","oa":56689,"o":"set_plot_or"},{"a":65053,"t":"code","b":[33,67,251],"m":"ld","o":"hl,$FB43"},{"a":65056,"t":"code","b":[229],"m":"push","o":"hl"},{"a":65057,"t":"code","b":[58,63,223],"m":"ld","oa":57151,"o":"a,($DF3F)"},{"a":65060,"t":"code","b":[230,3],"m":"and","o":"$03"},{"a":65062,"t":"code","b":[40,10],"m":"jr","oa":65074,"o":"z,$FE32"},{"a":65064,"t":"code","b":[61],"m":"dec","o":"a"},{"a":65065,"t":"code","b":[40,11],"m":"jr","oa":65078,"o":"z,$FE36"},{"a":65067,"t":"code","b":[61],"m":"dec","o":"a"},{"a":65068,"t":"code","b":[40,12],"m":"jr","oa":65082,"o":"z,$FE3A"},{"a":65070,"t":"code","b":[33,219,237],"m":"ld","o":"hl,$EDDB"},{"a":65073,"t":"code","b":[201],"m":"ret"},{"a":65074,"t":"code","b":[33,126,237],"m":"ld","o":"hl,$ED7E","x":[65062]},{"a":65077,"t":"code","b":[201],"m":"ret"},{"a":65078,"t":"code","b":[33,154,237],"m":"ld","o":"hl,$ED9A","x":[65065]},{"a":65081,"t":"code","b":[201],"m":"ret"},{"a":65082,"t":"code","b":[33,191,237],"m":"ld","o":"hl,$EDBF","x":[65068]},{"a":65085,"t":"code","b":[201],"m":"ret"},{"a":65086,"l":"gfx_reset_figure","c":"Graphics command 14 (line 6260, after a game is loaded): two bytes, the command and a character. Rewrites the command as 9, clears what the figure is shown carrying (record byte 2) and puts its arms down, drawing nothing; line 6260 then gives back each object it carries with get commands of three bytes.","t":"code","b":[43],"m":"dec","o":"hl","x":[63479]},{"a":65087,"t":"code","b":[54,9],"m":"ld","o":"(hl),$09"},{"a":65089,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":65090,"t":"code","b":[70],"m":"ld","o":"b,(hl)"},{"a":65091,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":65092,"t":"code","b":[205,170,239],"m":"call","oa":61354,"o":"check_figure"},{"a":65095,"t":"code","b":[205,185,239],"m":"call","oa":61369,"o":"find_figure"},{"a":65098,"t":"code","b":[42,234,239],"m":"ld","oa":61418,"o":"hl,($EFEA)"},{"a":65101,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":65102,"t":"code","b":[35],"m":"inc","o":"hl"},{"a":65103,"t":"code","b":[54,0],"m":"ld","o":"(hl),$00"},{"a":65105,"t":"code","b":[221,33,236,242],"m":"ld","o":"ix,$F2EC"},{"a":65109,"t":"code","b":[221,54,0,1],"m":"ld","o":"(ix+$00),$01"},{"a":65113,"t":"code","b":[195,88,247],"m":"jp","oa":63320,"o":"$F758"},{"a":65116,"l":"signature","c":"\"Jas.Learmont\" and a byte $18: James Learmont's name, one of the six credited, in the code where nothing reads it.","t":"byte","b":[74,97,115,46,76,101,97,114]},{"a":65124,"t":"byte","b":[109,111,110,116,24]},{"a":65129,"l":"interrupt","c":"The IM 2 interrupt (the ROM's byte pair at $09FF points here). Runs the ROM's own handler first (RST $38: the keyboard scan and the frame counter), then, with the registers and the ROM's print settings saved: every 16 frames flips the cursor; when a key has been pressed (bit 5 of FLAGS) and no line is waiting for BASIC, passes the key to key_pressed and prints the input line again. Puts the print settings back, clears the key flag and returns.","t":"code","b":[255],"m":"rst","o":"$38"},{"a":65130,"t":"code","b":[243],"m":"di"},{"a":65131,"t":"code","b":[245],"m":"push","o":"af"},{"a":65132,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":65133,"t":"code","b":[245],"m":"push","o":"af"},{"a":65134,"t":"code","b":[197],"m":"push","o":"bc"},{"a":65135,"t":"code","b":[213],"m":"push","o":"de"},{"a":65136,"t":"code","b":[229],"m":"push","o":"hl"},{"a":65137,"t":"code","b":[221,229],"m":"push","o":"ix"},{"a":65139,"t":"code","b":[217],"m":"exx"},{"a":65140,"t":"code","b":[197],"m":"push","o":"bc"},{"a":65141,"t":"code","b":[213],"m":"push","o":"de"},{"a":65142,"t":"code","b":[229],"m":"push","o":"hl"},{"a":65143,"t":"code","b":[58,143,92],"m":"ld","oa":23695,"o":"a,($5C8F)"},{"a":65146,"t":"code","b":[50,210,210],"m":"ld","oa":53970,"o":"($D2D2),a"},{"a":65149,"t":"code","b":[58,144,92],"m":"ld","oa":23696,"o":"a,($5C90)"},{"a":65152,"t":"code","b":[50,211,210],"m":"ld","oa":53971,"o":"($D2D3),a"},{"a":65155,"t":"code","b":[58,145,92],"m":"ld","oa":23697,"o":"a,($5C91)"},{"a":65158,"t":"code","b":[50,218,210],"m":"ld","oa":53978,"o":"($D2DA),a"},{"a":65161,"t":"code","b":[42,81,92],"m":"ld","oa":23633,"o":"hl,($5C51)"},{"a":65164,"t":"code","b":[34,212,210],"m":"ld","oa":53972,"o":"($D2D4),hl"},{"a":65167,"t":"code","b":[42,60,92],"m":"ld","oa":23612,"o":"hl,($5C3C)"},{"a":65170,"t":"code","b":[34,214,210],"m":"ld","oa":53974,"o":"($D2D6),hl"},{"a":65173,"t":"code","b":[42,106,92],"m":"ld","oa":23658,"o":"hl,($5C6A)"},{"a":65176,"t":"code","b":[34,216,210],"m":"ld","oa":53976,"o":"($D2D8),hl"},{"a":65179,"t":"code","b":[42,125,92],"m":"ld","oa":23677,"o":"hl,($5C7D)"},{"a":65182,"t":"code","b":[34,219,210],"m":"ld","oa":53979,"o":"($D2DB),hl"},{"a":65185,"t":"code","b":[58,120,92],"m":"ld","oa":23672,"o":"a,($5C78)"},{"a":65188,"t":"code","b":[230,15],"m":"and","o":"$0F"},{"a":65190,"t":"code","b":[32,19],"m":"jr","oa":65211,"o":"nz,$FEBB"},{"a":65192,"t":"code","b":[253,126,1],"m":"ld","o":"a,(iy+$01)"},{"a":65195,"t":"code","b":[245],"m":"push","o":"af"},{"a":65196,"t":"code","b":[58,180,210],"m":"ld","oa":53940,"o":"a,(input_vars)"},{"a":65199,"t":"code","b":[238,64],"m":"xor","o":"$40"},{"a":65201,"t":"code","b":[50,180,210],"m":"ld","oa":53940,"o":"(input_vars),a"},{"a":65204,"t":"code","b":[205,241,212],"m":"call","oa":54513,"o":"toggle_cursor"},{"a":65207,"t":"code","b":[241],"m":"pop","o":"af"},{"a":65208,"t":"code","b":[253,119,1],"m":"ld","o":"(iy+$01),a"},{"a":65211,"t":"code","b":[253,203,1,110],"m":"bit","o":"5,(iy+$01)","x":[65190]},{"a":65215,"t":"code","b":[40,36],"m":"jr","oa":65253,"o":"z,$FEE5"},{"a":65217,"t":"code","b":[58,179,210],"m":"ld","oa":53939,"o":"a,(enter_flag)"},{"a":65220,"t":"code","b":[203,79],"m":"bit","o":"1,a"},{"a":65222,"t":"code","b":[32,29],"m":"jr","oa":65253,"o":"nz,$FEE5"},{"a":65224,"t":"code","b":[58,8,92],"m":"ld","oa":23560,"o":"a,($5C08)"},{"a":65227,"t":"code","b":[205,43,213],"m":"call","oa":54571,"o":"key_pressed"},{"a":65230,"t":"code","b":[243],"m":"di"},{"a":65231,"t":"code","b":[253,203,1,110],"m":"bit","o":"5,(iy+$01)"},{"a":65235,"t":"code","b":[40,16],"m":"jr","oa":65253,"o":"z,$FEE5"},{"a":65237,"t":"code","b":[237,75,182,210],"m":"ld","oa":53942,"o":"bc,($D2B6)"},{"a":65241,"t":"code","b":[33,221,210],"m":"ld","o":"hl,$D2DD"},{"a":65244,"t":"code","b":[229],"m":"push","o":"hl"},{"a":65245,"t":"code","b":[197],"m":"push","o":"bc"},{"a":65246,"t":"code","b":[6,2],"m":"ld","o":"b,$02"},{"a":65248,"t":"code","b":[205,182,212],"m":"call","oa":54454,"o":"print_input_line"},{"a":65251,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":65252,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":65253,"t":"code","b":[58,210,210],"m":"ld","oa":53970,"o":"a,($D2D2)","x":[65215,65222,65235]},{"a":65256,"t":"code","b":[50,143,92],"m":"ld","oa":23695,"o":"($5C8F),a"},{"a":65259,"t":"code","b":[58,211,210],"m":"ld","oa":53971,"o":"a,($D2D3)"},{"a":65262,"t":"code","b":[50,144,92],"m":"ld","oa":23696,"o":"($5C90),a"},{"a":65265,"t":"code","b":[58,218,210],"m":"ld","oa":53978,"o":"a,($D2DA)"},{"a":65268,"t":"code","b":[50,145,92],"m":"ld","oa":23697,"o":"($5C91),a"},{"a":65271,"t":"code","b":[42,212,210],"m":"ld","oa":53972,"o":"hl,($D2D4)"},{"a":65274,"t":"code","b":[34,81,92],"m":"ld","oa":23633,"o":"($5C51),hl"},{"a":65277,"t":"code","b":[42,214,210],"m":"ld","oa":53974,"o":"hl,($D2D6)"},{"a":65280,"t":"code","b":[34,60,92],"m":"ld","oa":23612,"o":"($5C3C),hl"},{"a":65283,"t":"code","b":[42,216,210],"m":"ld","oa":53976,"o":"hl,($D2D8)"},{"a":65286,"t":"code","b":[34,106,92],"m":"ld","oa":23658,"o":"($5C6A),hl"},{"a":65289,"t":"code","b":[42,219,210],"m":"ld","oa":53979,"o":"hl,($D2DB)"},{"a":65292,"t":"code","b":[34,125,92],"m":"ld","oa":23677,"o":"($5C7D),hl"},{"a":65295,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":65296,"t":"code","b":[209],"m":"pop","o":"de"},{"a":65297,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":65298,"t":"code","b":[217],"m":"exx"},{"a":65299,"t":"code","b":[221,225],"m":"pop","o":"ix"},{"a":65301,"t":"code","b":[225],"m":"pop","o":"hl"},{"a":65302,"t":"code","b":[209],"m":"pop","o":"de"},{"a":65303,"t":"code","b":[193],"m":"pop","o":"bc"},{"a":65304,"t":"code","b":[241],"m":"pop","o":"af"},{"a":65305,"t":"code","b":[8],"m":"ex","o":"af,af'"},{"a":65306,"t":"code","b":[241],"m":"pop","o":"af"},{"a":65307,"t":"code","b":[253,203,1,174],"m":"res","o":"5,(iy+$01)"},{"a":65311,"t":"code","b":[251],"m":"ei"},{"a":65312,"t":"code","b":[201],"m":"ret"},{"a":65313,"l":"unused_ff21","c":"Unused, to the end of memory: zeros, then what was in memory when the file was saved, some of it the ROM's system variables and, from $FFC9, its user-defined graphics O to U as the ROM sets them up (copies of the capital letters).","t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65321,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65329,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65337,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65345,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65353,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65361,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65369,"t":"byte","b":[0,0,0,0,0,0,0,0]},{"a":65377,"t":"byte","b":[0,0,92,182,92,203,92,36]},{"a":65385,"t":"byte","b":[146,53,156,46,201,91,211,35]},{"a":65393,"t":"byte","b":[146,0,0,59,201,59,201,59]},{"a":65401,"t":"byte","b":[201,30,146,92,16,7,62,4]},{"a":65409,"t":"byte","b":[64,31,0,0,128,2,127,26]},{"a":65417,"t":"byte","b":[1,20,245,70,3,88,255,0]},{"a":65425,"t":"byte","b":[0,33,0,91,32,19,0,64]},{"a":65433,"t":"byte","b":[192,80,33,24,1,20,1,8]},{"a":65441,"t":"byte","b":[0,15,0,0,0,255,255,255]},{"a":65449,"t":"byte","b":[0,0,0,56,4,0,0,0]},{"a":65457,"t":"byte","b":[0,0,0,5,0,0,0,0]},{"a":65465,"t":"byte","b":[0,0,0,0,80,1,3,0]},{"a":65473,"t":"byte","b":[0,0,0,0,101,208,255,255]},{"a":65481,"t":"byte","b":[60,66,66,66,66,60,0,0]},{"a":65489,"t":"byte","b":[124,66,66,124,64,64,0,0]},{"a":65497,"t":"byte","b":[60,66,66,82,74,60,0,0]},{"a":65505,"t":"byte","b":[124,66,66,124,68,66,0,0]},{"a":65513,"t":"byte","b":[60,64,60,2,66,60,0,0]},{"a":65521,"t":"byte","b":[254,16,16,16,16,16,0,0]},{"a":65529,"t":"byte","b":[66,66,66,66,66,60,0]}]}