Skip to content

Latest commit

 

History

History
115 lines (112 loc) · 33.3 KB

Setup.cpp.md

File metadata and controls

115 lines (112 loc) · 33.3 KB

Setup.cpp: 107 functions

Function map of cm0102.exe 3.9.68. Generated from the Bosman Edition repo. Do not edit by hand: report a wrong name as an issue.

AI agents named each function from its code, and a review checked every medium and low name. Treat a medium or low name as a hint and read the code before you rely on it. "Cited in" lists research docs of the Bosman Edition repo that name the address.

Address Size Name Convention Purpose Confidence Model Cited in
0x81b830 6 setup_static_init_start_date cdecl, no arguments, ret 0 Constructs the static game start date at g_game_start_date and registers its empty destructor with atexit. high sonnet
0x81b850 1 setup_static_destroy_start_date cdecl, no arguments, ret 0 Serves as the empty atexit destructor of the static game start date. medium opus
0x81b860 6 setup_static_init_saved_date cdecl, no arguments, ret 0 Constructs the static Setup date at 0xdd70a0 and registers its empty destructor with atexit. medium opus
0x81b880 1 setup_static_destroy_saved_date cdecl, no arguments, ret 0 Serves as the empty atexit destructor of the static Setup date at 0xdd70a0. medium opus
0x81b890 146 setup_run_front_end cdecl, no arguments, returns int (always 1), ret 0 Checks CM3_QSTART, sets the date to 1 Jan 2001, reads -seed and -nonetwork, runs the Setup Game screen loop, then registers Manager Status. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-game-setup-spec.md, 2026-10-14-start-screen-helpers.md, 2026-10-16-sweep-season-end.md, main.c
0x81bab0 156 (+1 unwind) setup_build_setup_game_screen cdecl, no arguments, returns void, ret 0 Builds the Setup Game start screen with buttons for new, quick start, restore, delete, network play, game settings and hall of fame. high opus 2026-10-13-screen-stack-inventory.md, database.c, waits.c
0x81ce00 140 setup_start_new_game cdecl, no arguments, returns void, ret 0 Loads the CM3_DATA database and key nation table when needed, or shows No Memory below 50 MB, then opens Select League(s). high opus 2026-10-13-database-inventory.md, 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-select-leagues-spec.md, 2026-10-14-start-new-game-inventory.md, setup.c
0x81d010 975 setup_build_select_leagues_screen cdecl, no arguments, returns void, ret 0 Builds the Select League(s) screen with real players and attribute masking options, select all buttons and the scrolled list of playable nations. high opus 2026-10-14-start-new-game-inventory.md, setup.c, waits.c
0x81dc30 1001 setup_handle_select_leagues_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Select League(s), toggling leagues within the memory limit and, on Next, creating the game or opening Select Start Season. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md, setup.c
0x81e8d0 160 (+1 unwind) setup_build_select_start_season_screen cdecl, no arguments, returns void, ret 0 Builds the Select Start Season screen, listing each selected league with its season years as menu buttons. high opus 2026-10-14-start-new-game-inventory.md
0x81eb00 211 setup_handle_select_start_season_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Select Start Season, storing the chosen league, and on Next creating the game, then opening Manager Status and Enter Name. high opus 2026-10-14-start-new-game-inventory.md
0x81edd0 96 (+1 unwind) setup_build_network_play_screen cdecl, no arguments, returns void, ret 0 Builds the Network Play screen with start, quick start, restore and join network game buttons. high opus 2026-10-13-screen-stack-inventory.md
0x81ef70 190 setup_handle_network_play_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Network Play, opening Enter Network Game Name for start, quick start or restore, or Select Network Game for join. high opus 2026-10-13-screen-stack-inventory.md
0x81f1a0 80 setup_build_enter_network_game_name_screen cdecl, no arguments, returns void, ret 0 Builds the Enter Network Game Name screen, creating the network session and adding the game name text entry with back and next buttons. high opus
0x81f2c0 495 setup_handle_enter_network_game_name_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Enter Network Game Name, and on Next starts a new, quick start or restored network game, then opens Manager Status. high opus
0x81f8d0 237 setup_build_select_network_game_screen cdecl, no arguments, returns void, ret 0 Builds the Select Network Game screen, sends a CM3 LIST SERVER REQ broadcast and lists the found games with Refresh and Join controls. high opus
0x81fbd0 237 setup_handle_select_network_game_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Select Network Game, resending the server list request on Refresh, storing the chosen game name and joining it on Next. high opus
0x81fea0 35 setup_open_manager_status_screen cdecl, no arguments, returns void, ret 0 Opens the Manager Status screen and clears its five cached screen parameters. high opus 2026-10-14-game-creation-inventory.md
0x81ff10 816 setup_build_manager_status_screen cdecl, no arguments, returns void, ret 0 Builds the Manager Status screen, listing each human manager with their club and playing state, plus the server address and add or finish buttons. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md, 2026-10-14-start-screen-helpers.md
0x820950 308 setup_handle_manager_status_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Manager Status, refreshing when manager counts change, opening resume control for a manager row and finishing on code 0x19. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md, 2026-10-14-start-screen-helpers.md
0x820d40 131 setup_add_human_manager cdecl, no arguments, returns void, ret 0 Claims a free human manager record, resets its names, sets a 1966 birth date and language nationality, then opens Enter Name. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md, 2026-10-14-start-screen-helpers.md
0x820f50 462 setup_build_enter_name_screen cdecl, no arguments, returns void, ret 0 Builds the Enter Name screen with first name, second name, password and re-type entry fields plus Cancel and Next buttons. high opus 2026-10-14-game-creation-inventory.md
0x821520 295 setup_handle_enter_name_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Enter Name, checking the names are filled and the passwords match, then opening Select Nationality. high opus 2026-10-14-game-creation-inventory.md
0x821900 517 setup_build_select_nationality_screen cdecl, no arguments, returns void, ret 0 Builds the Select Nationality screen with an all or major nations filter and a scrolled list of nations. high opus 2026-10-14-game-creation-inventory.md
0x822040 176 setup_handle_select_nationality_input cdecl (short item_index, -1 for none) returns int screen result code, ret 0 Handles input on Select Nationality, setting the nation filter or the manager nationality, and on Next opening Select Team. high opus 2026-10-14-game-creation-inventory.md
0x822260 525 setup_build_select_team_screen cdecl, no arguments, returns void, ret 0 Builds the Select Team screen, listing the clubs of the chosen nation as scrolled rows for the new manager. high opus 2026-10-14-game-creation-inventory.md
0x8228f0 112 select_team_screen_handle_input cdecl(short clicked_widget) ret 0, returns a screen result code (0, -11 or a side bar result) Handles input on the Select Team screen, switching the listed nation on widget 0x1f, returning on Next and passing other clicks to the side bar. high opus 2026-10-14-game-creation-inventory.md
0x822a60 16 open_take_control_confirm cdecl(club *club) ret 0 Pushes the Please Confirm take control box and stores the clicked club in screen slot 0. high opus 2026-10-14-game-creation-inventory.md
0x822aa0 125 take_control_confirm_build cdecl(void) ret 0 Builds the Please Confirm box that asks whether the manager takes control of the club in slot 0, with No and Yes buttons. high opus 2026-10-14-game-creation-inventory.md
0x822c50 188 take_control_confirm_handle_input cdecl(short clicked_widget) ret 0, returns -2, -4, -10 or a side bar result Handles the take control box, refusing clubs already human run or in a match, else marking the manager active and appointing him. high opus 2026-10-14-game-creation-inventory.md
0x822ec0 153 enter_password_box_build cdecl(void) ret 0 Builds the Enter Password box for the human manager in slot 0, with a password entry field and a Cancel button. high opus 2026-10-14-game-creation-inventory.md
0x8230b0 273 enter_password_box_handle_input cdecl(short clicked_widget) ret 0, returns -4, -9, -11 or a side bar result Checks the typed password of a human manager, accepting the master password, then resumes control of that manager or reports an error. high opus 2026-10-14-game-creation-inventory.md
0x823420 176 resume_control_confirm_build cdecl(void) ret 0 Builds the Please Confirm box that asks whether to resume control of the manager's nation, club or both, with No and Yes buttons. high opus 2026-10-14-game-creation-inventory.md
0x823660 162 resume_control_confirm_handle_input cdecl(short clicked_widget) ret 0, returns -4, -9 or a side bar result Handles the resume control box, closing on No and on Yes claiming the manager slot unless another player already controls it. high opus 2026-10-14-game-creation-inventory.md
0x823890 44 (+1 unwind) open_game_settings_box cdecl(int origin) ret 0 Pushes the Game Settings box with a copy of the live settings in slot 0 and the opening origin in slot 1. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-start-screen-helpers.md, 2026-10-14-start-screen-spec.md, 2026-10-16-options-screen.md, setup.c
0x823930 11 open_game_settings_from_side_bar cdecl(int item) ret 0 Opens the Game Settings box from the in-game side bar, passing origin 2 or 3 by the side bar item. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-start-screen-helpers.md, 2026-10-14-start-screen-spec.md, 2026-10-16-options-screen.md, menubar.c, options_screen.c
0x8259a0 275 game_settings_box_handle_input cdecl(short clicked_widget) ret 0, returns -9, -11 or a side bar result Handles the Game Settings box, resetting, cancelling or applying the settings copy and changing language, currency, font and other rows. high opus 2026-10-16-options-screen.md, options_screen.c
0x825cc0 25 open_hall_of_fame_screen cdecl(void) ret 0 Pushes the Hall of Fame screen and clears its first three screen slots. high opus
0x825d10 738 (+2 unwind) hall_of_fame_screen_build cdecl(void) ret 0 Builds the Hall of Fame screen with the nation tabs, a File menu with Save As Text and Merge In, and the list of records. high opus 2026-10-13-screen-stack-inventory.md
0x826690 291 hall_of_fame_screen_handle_input cdecl(short clicked_widget) ret 0, returns -4, -11 or a side bar result Handles the Hall of Fame screen, switching nation tabs and opening file dialogs to export the list as text or merge in a file. high opus 2026-10-13-screen-stack-inventory.md
0x826a60 17 open_disk_full_box cdecl(int reason) ret 0 Pushes the Disk Full box and stores the reason code in screen slot 0. high opus
0x826aa0 109 disk_full_box_build cdecl(void) ret 0 Builds the Disk Full box, choosing one of four not enough free disk space messages by the reason in slot 0. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md
0x826c20 67 disk_full_box_handle_input cdecl(short clicked_widget) ret 0, returns -5, -9, 0 or a side bar result Handles the Disk Full box, closing it on its button and returning 0 on Back, else passing the click to the side bar. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md
0x826ce0 17 open_no_memory_box cdecl(int reason) ret 0 Pushes the No Memory box and stores the reason code in screen slot 0. high opus
0x826d20 91 no_memory_box_build cdecl(void) ret 0 Builds the No Memory box, choosing one of four not enough system memory messages by the reason in slot 0. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md
0x826e60 67 no_memory_box_handle_input cdecl(short clicked_widget) ret 0, returns -5, -9, 0 or a side bar result Handles the No Memory box, closing it on its button and returning 0 on Back, else passing the click to the side bar. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md
0x826f20 147 appoint_human_manager_to_club cdecl(staff *manager, club *club) ret 0, returns 1 or 0 on a null argument Moves out the club's current manager, sets the human manager's reputation from the club and appoints him to the club. medium opus 2026-10-14-game-creation-inventory.md
0x827110 886 create_game_from_setup_file cdecl(const char *cfg_path, const char *qst_name) ret 0, returns 1 or 0 Reads an auto setup file of DATABASE, LEAGUES and LANGUAGE lines, creates the game, then saves a quick start or adds a random human manager. high opus 2026-10-13-database-inventory.md, 2026-10-15-holiday-next-match-inventory.md
0x827d50 208 select_default_league_by_language cdecl(void) ret 0, returns 1 or 0 on assert Clears every nation's league flag, then marks the one nation chosen by the game language as the selected and foreground league. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-select-leagues-spec.md, 2026-10-14-start-new-game-inventory.md, 2026-10-16-options-screen.md, setup.c
0x828110 2879 (+38 unwind) create_game cdecl(int quick_start_flag) ret 0, returns 1 on success or 0 Checks for the CD, loads the database and builds every game subsystem for a new game, showing the Initialising game data progress. high opus 2026-10-13-database-inventory.md, 2026-10-14-game-creation-inventory.md, 2026-10-14-game-setup-spec.md, 2026-10-14-start-new-game-inventory.md, 2026-10-16-research-name-check.md, 2026-10-16-sweep-season-end.md, setup.c, waits.c
0x82a9c0 4064 (+40 unwind) load_game_data cdecl(const char *save_path) ret 0, returns 1 on success or 0 Unpacks a saved game into the temporary folder, reads general.dat and its runtime data, and rebuilds every game subsystem. high opus 2026-10-13-database-inventory.md, 2026-10-15-holiday-next-match-inventory.md, 2026-10-16-tactics-inventory.md, tactics.c
0x82e430 1876 (+1 unwind) save_game_data cdecl(const char *save_path, int save_type) ret 0, returns 1 on success or 0 Writes general.dat and every subsystem into the temporary folder, then packs the temporary files into the saved game file. high opus 2026-10-15-contract-clauses.md, HANDOVER.md, testrun.c
0x82ff40 424 free_game_data cdecl(int flag, nonzero also calls 0x7fc5e0) ret 0, returns 1 Deletes every global game subsystem object, deletes the temporary *.tmp files and resets the game state globals when a game ends. high opus 2026-10-16-sweep-season-end.md
0x830520 76 setup_set_game_start_date cdecl, no arguments, returns int 1 when a selected league entry is found else 0 (create_game ignores it), ret 0 Sets the game start date from the first selected nation's league entry and caps a European 2001 start at the first of September. high sonnet 2026-10-14-game-creation-inventory.md, 2026-10-16-research-name-check.md, 2026-10-16-season-change-points.md, 2026-10-16-sweep-season-end.md
0x830620 302 (+7 unwind) create_world_cup_qualifying_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the World Cup and its six continental qualifying competitions into a league table entry, or reports a memory error. high opus 2026-10-14-game-creation-inventory.md, 2026-10-14-start-new-game-inventory.md, 2026-10-16-research-name-check.md, 2026-10-16-sweep-international.md, key_nation.c
0x830ac0 339 (+8 unwind) create_other_int_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Olympics, European Championship and its qualifiers, continental nations cups and the Confederations Cup when it has a host. high opus 2026-10-14-start-new-game-inventory.md, 2026-10-16-research-name-check.md, 2026-10-16-sweep-international.md, int-continental.md, key_nation.c
0x830fe0 207 (+3 unwind) create_world_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Club World Championship and the Intercontinental Cup, plus the Inter-American Cup when its record exists. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x8312e0 231 (+4 unwind) create_european_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the European Cup, UEFA Cup, Intertoto Cup and European Super Cup when a European nation is selected. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x831650 181 (+2 unwind) create_north_american_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the CONCACAF Champions Cup and its Merchandising Cup when a North American nation is selected. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x8318f0 184 (+2 unwind) create_south_american_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Copa Libertadores and the Mercosur competition when a South American nation is selected. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x831ba0 210 (+3 unwind) create_asian_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Asian Club Championship, Asian Cup Winners Cup and Asian Super Cup when an Asian nation is selected. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x831eb0 155 (+1 unwind) create_oceania_club_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Oceania Club Championship when an Oceania nation is selected, or reports a memory error. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md, key_nation.c
0x832100 167 (+2 unwind) create_argentine_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Argentine Primera and Second Division competitions into a league table entry, or reports a memory error. high opus key_nation.c
0x832380 150 (+1 unwind) create_australian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Australian National Soccer League into a league table entry, or reports a memory error. high opus key_nation.c
0x8325d0 254 (+5 unwind) create_belgian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Belgian first, second and third divisions, the cup and the super cup, or reports a memory error. high opus key_nation.c
0x832980 512 (+18 unwind) create_brazilian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the three Brazilian national divisions, twelve regional championships, the Brazilian Cup and the Champions Cup. high opus key_nation.c
0x8330b0 225 (+4 unwind) create_croatian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Croatian first division, the two second division groups and the cup, or reports a memory error. high opus key_nation.c
0x833400 224 (+4 unwind) create_danish_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Danish premier, first and second divisions and the cup, or reports a memory error. high opus key_nation.c
0x833750 397 (+10 unwind) create_english_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the four English leagues and four cups, adding the Conference and FA Trophy when the extra division flag is set. high opus 2026-10-14-game-creation-inventory.md, 2026-10-16-sweep-season-end.md, key_nation.c
0x833cf0 198 (+3 unwind) create_finnish_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Finnish premier and first divisions and the cup, or reports a memory error. high opus key_nation.c
0x833ff0 272 (+6 unwind) create_french_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the French first, second and third divisions, the cup, the league cup and the super cup. high opus key_nation.c
0x8343f0 264 (+5 unwind) create_german_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the two Bundesligas, the cup and the league cup, adding the Regionalliga when the extra division flag is set. high opus key_nation.c
0x8347c0 225 (+4 unwind) create_greek_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Greek premier and second divisions, the cup and the super cup, or reports a memory error. high opus key_nation.c
0x834b10 225 (+4 unwind) create_dutch_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Dutch Eredivisie, first division, cup and super cup, or reports a memory error. high opus key_nation.c
0x834e60 329 (+8 unwind) create_irish_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Irish premier and first divisions and six cups, or reports a memory error. high opus key_nation.c
0x835320 414 (+11 unwind) create_italian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds Serie A, B, C1 groups and four cups, adding the three C2 groups when the extra division flag is set. high opus key_nation.c
0x835900 244 (+5 unwind) create_japanese_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Japanese J1 and J2 leagues, the Emperor's Cup, the J League Cup and the super cup. high opus key_nation.c
0x835c90 262 (+5 unwind) create_northern_irish_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Northern Irish premier and first divisions, the cup, the league cup and the charity shield. high opus key_nation.c
0x836050 199 (+3 unwind) create_norwegian_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Norwegian premier and first divisions and the cup, or reports a memory error. high opus key_nation.c
0x836350 241 (+5 unwind) create_polish_comps cdecl (league table entry *entry, 0x48-byte row of 0xb63d60, null reports an error), returns int 1 on success or 0 on failure, ret 0 Builds the Polish first and second divisions, the cup, the league cup and the super cup. high opus key_nation.c
0x8366e0 272 (+5 unwind) create_portuguese_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Portuguese competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x836ac0 197 (+3 unwind) create_russian_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Russian competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x836dc0 291 (+7 unwind) create_scottish_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Scottish competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x837200 228 (+4 unwind) create_south_korean_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the South Korean competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x837560 315 (+7 unwind) create_spanish_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Spanish competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x8379f0 241 (+4 unwind) create_swedish_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Swedish competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x837d70 225 (+4 unwind) create_turkish_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Turkish competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x8380c0 200 (+3 unwind) create_united_states_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the United States competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus key_nation.c
0x8383b0 219 (+4 unwind) create_welsh_comps cdecl(league_entry* entry) returns int 1 on success or 0 on failure, ret 0 Allocates the Welsh competitions for a selected league table entry, sets the entry's season fields and reports a memory error on failure. high opus 2026-10-14-start-new-game-inventory.md, key_nation.c
0x8386f0 71 build_comp_object_table cdecl, no arguments, returns int 1 on success or 0 on allocation failure, ret 0 Allocates the competition object table with one slot for each club_comp record and stores every created competition at its record id. high opus 2026-10-14-game-creation-inventory.md, 2026-10-16-research-name-check.md, 2026-10-16-sweep-europe.md
0x8387e0 78 setup_assign_restored_network_managers cdecl, no arguments, returns int 1 when Manager Status must open, ret 0 On a restored network game, gives each password-free human manager to the host player slot and marks the other human managers as not in control. medium opus
0x8388e0 124 setup_create_or_join_network_game cdecl(int join, const char* game_name) returns int 0 on success or -4 on failure, ret 0 Shows the creating or joining status, hosts or joins the named network game and on failure frees game data and shows an error box. high opus 2026-10-13-display-and-scrman-inventory.md, 2026-10-14-game-creation-inventory.md
0x838a80 105 setup_on_network_player_joined cdecl(short player_id), returns void, ret 0 Handles a newly joined network player by opening Manager Status or, when no human manager waits for control, adding a new human manager. medium opus
0x838c00 25 setup_on_network_player_left cdecl, no arguments, returns void, ret 0 Handles a departed network player by freeing a half-made manager row or putting the slot's human manager on holiday, then refreshes match day state. medium opus
0x838c60 50 find_free_human_manager_row cdecl, no arguments, returns staff* or 0, ret 0 Returns the first free row among the 16 human manager staff rows at the end of the staff table, or zero when none is free. high opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-start-screen-helpers.md
0x838d10 67 count_human_managers cdecl(int connected_only) returns int count, ret 0 Counts the human manager rows in use and, when asked, counts only those that a network player slot holds. high opus 2026-10-16-tactics-inventory.md
0x838de0 12 is_current_manager_being_created cdecl, no arguments, returns int, ret 0 Returns 1 when the current player slot has a manager row whose state is still being made, otherwise 0. medium opus 2026-10-13-screen-stack-inventory.md, 2026-10-14-start-screen-helpers.md
0x838e10 42 check_saved_game_file cdecl(const char* path) returns char 1 when valid or 2 when not, ret 0 Serves as the file dialog check for .sav files and accepts a file whose zip header type is 0x16. high opus savename.c
0x838eb0 252 (+1 unwind) valid_saved_game_version cdecl(const char* path) returns bool, ret 0 Opens general.dat in a saved game, reads its version id and summary, and checks that the stored version string matches this build. high opus
0x839290 49 check_quick_start_file cdecl(const char* path) returns int 1 when valid or 2 when not, ret 0 Serves as the file dialog check for .qst files and accepts a file of zip header type 0x17 whose saved version matches. high opus
0x839340 135 nation_matches_region_filter cdecl(nation* nation, const char* filter) returns int, ret 0 Tests whether a nation belongs to a region named in a setup file filter such as ALL, EUROPE, EASTERN_EUROPE, SCANDINAVIA, AMERICAS or ASIA. high opus 2026-10-16-research-name-check.md, 2026-10-16-sweep-international.md
0x839530 21 compare_nations_by_nationality cdecl(nation** a, nation** b) returns int, ret 0 Sorts nation pointers by nationality text, with null entries placed last, for the Select Nationality list. high opus
0x839570 6 get_game_title cdecl, no arguments, returns char* to 0xdd70a8, ret 0 Formats the game title into the shared title buffer and returns the buffer for screen headings. high opus 2026-10-14-start-screen-helpers.md
0x839590 6 get_heading_colour cdecl(int text) returns short RGB565 colour, ret 0 Returns the heading text colour for a non-zero argument and the heading background colour for zero. medium opus 2026-10-14-start-screen-helpers.md
0x8395b0 128 save_fifa_transfer_rules cdecl(zip* save_archive), returns void, ret 0 Writes the FIFA transfer rules state bytes into fifa_transfer_rules.zip inside the saved game archive. high opus
0x839760 131 load_fifa_transfer_rules cdecl(zip* save_archive), returns void, ret 0 Reads the FIFA transfer rules state bytes from fifa_transfer_rules.zip in a saved game and sets state 5 when the rules are in force. high opus 2026-10-16-sweep-season-end.md
0x839920 117 fix_division_club_count cdecl(int comp_id, short wanted) returns void, ret 0 Moves surplus clubs out of a division and fills a short division with the nation's best clubs from lower or no divisions. high opus 2026-10-14-game-creation-inventory.md