Index: src/engine_gui.cpp =================================================================== --- src/engine_gui.cpp (revision 10963) +++ src/engine_gui.cpp (working copy) @@ -122,12 +122,12 @@ const RailVehicleInfo *rvi = RailVehInfo(engine); uint multihead = (rvi->railveh_type == RAILVEH_MULTIHEAD) ? 1 : 0; - SetDParam(0, (_price.build_railvehicle >> 3) * rvi->base_cost >> 5); + SetDParam(0, (_price.build_railvehicle / 8) * rvi->base_cost / 32); SetDParam(2, rvi->max_speed * 10 / 16); SetDParam(3, rvi->power << multihead); SetDParam(1, rvi->weight << multihead); - SetDParam(4, rvi->running_cost_base * _price.running_rail[rvi->running_cost_class] >> 8 << multihead); + SetDParam(4, rvi->running_cost_base * _price.running_rail[rvi->running_cost_class] / 256 * multihead); if (rvi->capacity != 0) { SetDParam(5, rvi->cargo_type); @@ -141,11 +141,11 @@ static void DrawAircraftEngineInfo(EngineID engine, int x, int y, int maxw) { const AircraftVehicleInfo *avi = AircraftVehInfo(engine); - SetDParam(0, (_price.aircraft_base >> 3) * avi->base_cost >> 5); + SetDParam(0, (_price.aircraft_base / 8) * avi->base_cost / 32); SetDParam(1, avi->max_speed * 10 / 16); SetDParam(2, avi->passenger_capacity); SetDParam(3, avi->mail_capacity); - SetDParam(4, avi->running_cost * _price.aircraft_running >> 8); + SetDParam(4, avi->running_cost * _price.aircraft_running / 256); DrawStringMultiCenter(x, y, STR_A02E_COST_MAX_SPEED_CAPACITY, maxw); } @@ -154,9 +154,9 @@ { const RoadVehicleInfo *rvi = RoadVehInfo(engine); - SetDParam(0, (_price.roadveh_base >> 3) * rvi->base_cost >> 5); + SetDParam(0, (_price.roadveh_base / 8) * rvi->base_cost / 32); SetDParam(1, rvi->max_speed * 10 / 32); - SetDParam(2, rvi->running_cost * _price.roadveh_running >> 8); + SetDParam(2, rvi->running_cost * _price.roadveh_running / 256); SetDParam(3, rvi->cargo_type); SetDParam(4, rvi->capacity); @@ -166,11 +166,11 @@ static void DrawShipEngineInfo(EngineID engine, int x, int y, int maxw) { const ShipVehicleInfo *svi = ShipVehInfo(engine); - SetDParam(0, svi->base_cost * (_price.ship_base >> 3) >> 5); + SetDParam(0, svi->base_cost * (_price.ship_base / 8) / 32); SetDParam(1, svi->max_speed * 10 / 32); SetDParam(2, svi->cargo_type); SetDParam(3, svi->capacity); - SetDParam(4, svi->running_cost * _price.ship_running >> 8); + SetDParam(4, svi->running_cost * _price.ship_running / 256); DrawStringMultiCenter(x, y, STR_982E_COST_MAX_SPEED_CAPACITY, maxw); } Index: src/build_vehicle_gui.cpp =================================================================== --- src/build_vehicle_gui.cpp (revision 10963) +++ src/build_vehicle_gui.cpp (working copy) @@ -436,7 +436,7 @@ static int DrawRailWagonPurchaseInfo(int x, int y, EngineID engine_number, const RailVehicleInfo *rvi) { /* Purchase cost */ - SetDParam(0, (GetEngineProperty(engine_number, 0x17, rvi->base_cost) * _price.build_railwagon) >> 8); + SetDParam(0, (GetEngineProperty(engine_number, 0x17, rvi->base_cost) * _price.build_railwagon) / 256 ); DrawString(x, y, STR_PURCHASE_INFO_COST, 0); y += 10; @@ -485,7 +485,7 @@ } /* Running cost */ - SetDParam(0, (GetEngineProperty(engine_number, 0x0D, rvi->running_cost_base) * _price.running_rail[rvi->running_cost_class] >> 8) << multihead); + SetDParam( 0, GetEngineProperty(engine_number, 0x0D, rvi->running_cost_base) * _price.running_rail[rvi->running_cost_class] / 256 * multihead ); DrawString(x, y, STR_PURCHASE_INFO_RUNNINGCOST, 0); y += 10; @@ -506,13 +506,13 @@ bool refittable = (EngInfo(engine_number)->refit_mask != 0); /* Purchase cost - Max speed */ - SetDParam(0, GetEngineProperty(engine_number, 0x11, rvi->base_cost) * (_price.roadveh_base >> 3) >> 5); + SetDParam(0, GetEngineProperty(engine_number, 0x11, rvi->base_cost) * (_price.roadveh_base / 8) / 32); SetDParam(1, rvi->max_speed * 10 / 32); DrawString(x, y, STR_PURCHASE_INFO_COST_SPEED, 0); y += 10; /* Running cost */ - SetDParam(0, rvi->running_cost * _price.roadveh_running >> 8); + SetDParam(0, rvi->running_cost * _price.roadveh_running / 256); DrawString(x, y, STR_PURCHASE_INFO_RUNNINGCOST, 0); y += 10; @@ -530,7 +530,7 @@ static int DrawShipPurchaseInfo(int x, int y, EngineID engine_number, const ShipVehicleInfo *svi) { /* Purchase cost - Max speed */ - SetDParam(0, GetEngineProperty(engine_number, 0x0A, svi->base_cost) * (_price.ship_base >> 3) >> 5); + SetDParam(0, GetEngineProperty(engine_number, 0x0A, svi->base_cost) * (_price.ship_base / 8) / 32 ); SetDParam(1, GetEngineProperty(engine_number, 0x0B, svi->max_speed) * 10 / 32); DrawString(x, y, STR_PURCHASE_INFO_COST_SPEED, 0); y += 10; @@ -543,7 +543,7 @@ y += 10; /* Running cost */ - SetDParam(0, GetEngineProperty(engine_number, 0x0F, svi->running_cost) * _price.ship_running >> 8); + SetDParam(0, GetEngineProperty(engine_number, 0x0F, svi->running_cost) * _price.ship_running / 256 ); DrawString(x, y, STR_PURCHASE_INFO_RUNNINGCOST, 0); y += 10; @@ -556,7 +556,7 @@ CargoID cargo; /* Purchase cost - Max speed */ - SetDParam(0, GetEngineProperty(engine_number, 0x0B, avi->base_cost) * (_price.aircraft_base >> 3) >> 5); + SetDParam(0, GetEngineProperty(engine_number, 0x0B, avi->base_cost) * (_price.aircraft_base / 8) / 32); SetDParam(1, avi->max_speed * 10 / 16); DrawString(x, y, STR_PURCHASE_INFO_COST_SPEED, 0); y += 10; @@ -578,7 +578,7 @@ y += 10; /* Running cost */ - SetDParam(0, GetEngineProperty(engine_number, 0x0E, avi->running_cost) * _price.aircraft_running >> 8); + SetDParam(0, GetEngineProperty(engine_number, 0x0E, avi->running_cost) * _price.aircraft_running / 256); DrawString(x, y, STR_PURCHASE_INFO_RUNNINGCOST, 0); y += 10; Index: src/town_cmd.cpp =================================================================== --- src/town_cmd.cpp (revision 10963) +++ src/town_cmd.cpp (working copy) @@ -477,7 +477,7 @@ if (flags&DC_AUTO && !(flags&DC_AI_BUILDING)) return_cmd_error(STR_2004_BUILDING_MUST_BE_DEMOLISHED); if (!CanDeleteHouse(tile)) return CMD_ERROR; - cost.AddCost(_price.remove_house * hs->removal_cost >> 8); + cost.AddCost(_price.remove_house * hs->removal_cost / 256); rating = hs->remove_rating_decrease; _cleared_town_rating += rating; @@ -2054,7 +2054,7 @@ SET_EXPENSES_TYPE(EXPENSES_OTHER); - cost.AddCost((_price.build_industry >> 8) * _town_action_costs[p2]); + cost.AddCost((_price.build_industry / 256) * _town_action_costs[p2]); if (flags & DC_EXEC) { _town_action_proc[p2](t); Index: src/ship_cmd.cpp =================================================================== --- src/ship_cmd.cpp (revision 10963) +++ src/ship_cmd.cpp (working copy) @@ -192,7 +192,7 @@ if (v->vehstatus & VS_STOPPED) return; cost.AddCost(GetVehicleProperty(v, 0x0F, ShipVehInfo(v->engine_type)->running_cost) * _price.ship_running / 364); - v->profit_this_year -= cost.GetCost() >> 8; + v->profit_this_year -= cost.GetCost() / 256; SET_EXPENSES_TYPE(EXPENSES_SHIP_RUN); SubtractMoneyFromPlayerFract(v->owner, CommandCost(cost)); @@ -409,7 +409,7 @@ static CommandCost EstimateShipCost(EngineID engine_type) { - return CommandCost(GetEngineProperty(engine_type, 0x0A, ShipVehInfo(engine_type)->base_cost) * (_price.ship_base >> 3) >> 5); + return CommandCost(GetEngineProperty(engine_type, 0x0A, ShipVehInfo(engine_type)->base_cost) * (_price.ship_base / 8) / 32); } static void ShipArrivesAt(const Vehicle* v, Station* st) Index: src/aircraft_gui.cpp =================================================================== --- src/aircraft_gui.cpp (revision 10963) +++ src/aircraft_gui.cpp (working copy) @@ -92,7 +92,7 @@ SetDParam(0, (v->age + 365 < v->max_age) ? STR_AGE : STR_AGE_RED); SetDParam(2, v->max_age / 366); - SetDParam(3, _price.aircraft_running * AircraftVehInfo(v->engine_type)->running_cost >> 8); + SetDParam(3, _price.aircraft_running * AircraftVehInfo(v->engine_type)->running_cost / 256); DrawString(2, 15, STR_A00D_AGE_RUNNING_COST_YR, 0); } Index: src/train_cmd.cpp =================================================================== --- src/train_cmd.cpp (revision 10963) +++ src/train_cmd.cpp (working copy) @@ -509,7 +509,7 @@ SET_EXPENSES_TYPE(EXPENSES_NEW_VEHICLES); const RailVehicleInfo *rvi = RailVehInfo(engine); - CommandCost value((GetEngineProperty(engine, 0x17, rvi->base_cost) * _price.build_railwagon) >> 8); + CommandCost value((GetEngineProperty(engine, 0x17, rvi->base_cost) * _price.build_railwagon) /256); uint num_vehicles = 1 + CountArticulatedParts(engine); @@ -615,7 +615,7 @@ static CommandCost EstimateTrainCost(EngineID engine, const RailVehicleInfo* rvi) { - return CommandCost(GetEngineProperty(engine, 0x17, rvi->base_cost) * (_price.build_railvehicle >> 3) >> 5); + return CommandCost(GetEngineProperty(engine, 0x17, rvi->base_cost) * (_price.build_railvehicle / 8) / 32); } static void AddRearEngineToMultiheadedTrain(Vehicle* v, Vehicle* u, bool building) @@ -639,7 +639,7 @@ if (building) v->next = u; u->engine_type = v->engine_type; u->build_year = v->build_year; - if (building) v->value >>= 1; + if (building) v->value /= 2; u->value = v->value; u->cur_image = 0xAC2; u->random_bits = VehicleRandomBits(); @@ -3422,7 +3422,7 @@ /* running costs */ CommandCost cost(GetTrainRunningCost(v) / 364); - v->profit_this_year -= cost.GetCost() >> 8; + v->profit_this_year -= cost.GetCost() /256 ; SET_EXPENSES_TYPE(EXPENSES_TRAIN_RUN); SubtractMoneyFromPlayerFract(v->owner, cost); Index: src/command.cpp =================================================================== --- src/command.cpp (revision 10963) +++ src/command.cpp (working copy) @@ -15,7 +15,6 @@ #include "network/network.h" #include "variables.h" #include "genworld.h" - const char* _cmd_text = NULL; #define DEF_COMMAND(yyyy) CommandCost yyyy(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) Index: src/tunnelbridge_cmd.cpp =================================================================== --- src/tunnelbridge_cmd.cpp (revision 10963) +++ src/tunnelbridge_cmd.cpp (working copy) @@ -435,7 +435,7 @@ if (IsValidPlayer(_current_player) && !_is_old_ai_player) bridge_len = CalcBridgeLenCostFactor(bridge_len); - cost.AddCost((int64)bridge_len * _price.build_bridge * b->price >> 8); + cost.AddCost((int64)bridge_len * _price.build_bridge * b->price / 256); } return cost; Index: src/ai/default/default.cpp =================================================================== --- src/ai/default/default.cpp (revision 10963) +++ src/ai/default/default.cpp (working copy) @@ -100,7 +100,7 @@ v->type == VEH_SHIP) { /* replace engine? */ if (v->type == VEH_TRAIN && v->engine_type < 3 && - (_price.build_railvehicle >> 3) < p->player_money) { + (_price.build_railvehicle / 8) < p->player_money) { p->ai.state = AIS_VEH_CHECK_REPLACE_VEHICLE; p->ai.cur_veh = v; return; @@ -234,7 +234,7 @@ default: NOT_REACHED(); case RAILTYPE_RAIL: break; case RAILTYPE_ELECTRIC: break; - case RAILTYPE_MONO: base = (base * 3) >> 1; break; + case RAILTYPE_MONO: base = (base * 3) / 2; break; case RAILTYPE_MAGLEV: base *= 2; break; } @@ -2051,7 +2051,7 @@ if (GetTileSlope(tile, &z) == _dir_table_2[p[0] & 3] && z != 0) { CommandCost cost = DoCommand(tile, arf->player->ai.railtype_to_use, 0, DC_AUTO, CMD_BUILD_TUNNEL); - if (CmdSucceeded(cost) && cost.GetCost() <= (arf->player->player_money >> 4)) { + if (CmdSucceeded(cost) && cost.GetCost() <= (arf->player->player_money / 16)) { AiBuildRailRecursive(arf, _build_tunnel_endtile, (DiagDirection)(p[0] & 3)); if (arf->depth == 1) AiCheckRailPathBetter(arf, p); } @@ -2193,7 +2193,7 @@ for (i = MAX_BRIDGES - 1; i != 0; i--) { if (CheckBridge_Stuff(i, bridge_len)) { CommandCost cost = DoCommand(arf.bridge_end_tile, p->ai.cur_tile_a, i | (p->ai.railtype_to_use << 8), DC_AUTO, CMD_BUILD_BRIDGE); - if (CmdSucceeded(cost) && cost.GetCost() < (p->player_money >> 5)) break; + if (CmdSucceeded(cost) && cost.GetCost() < (p->player_money / 32)) break; } } @@ -2951,7 +2951,7 @@ if (GetTileSlope(tile, &z) == _dir_table_2[p[0] & 3] && z != 0) { CommandCost cost = DoCommand(tile, 0x200, 0, DC_AUTO, CMD_BUILD_TUNNEL); - if (CmdSucceeded(cost) && cost.GetCost() <= (arf->player->player_money >> 4)) { + if (CmdSucceeded(cost) && cost.GetCost() <= (arf->player->player_money / 16)) { AiBuildRoadRecursive(arf, _build_tunnel_endtile, (DiagDirection)(p[0] & 3)); if (arf->depth == 1) AiCheckRoadPathBetter(arf, p); } @@ -3084,7 +3084,7 @@ for (i = 10; i != 0; i--) { if (CheckBridge_Stuff(i, bridge_len)) { CommandCost cost = DoCommand(tile, p->ai.cur_tile_a, i + ((0x80 | ROADTYPES_ROAD) << 8), DC_AUTO, CMD_BUILD_BRIDGE); - if (CmdSucceeded(cost) && cost.GetCost() < (p->player_money >> 5)) break; + if (CmdSucceeded(cost) && cost.GetCost() < (p->player_money / 32)) break; } } @@ -3866,7 +3866,7 @@ if (IsHumanPlayer(best_pl->index)) return; // Too little money for computer to buy it? - if (best_pl->player_money >> 1 >= p->bankrupt_value) { + if (best_pl->player_money / 2 >= p->bankrupt_value) { // Computer wants to buy it. PlayerID old_p = _current_player; _current_player = best_pl->index; Index: src/strings.cpp =================================================================== --- src/strings.cpp (revision 10963) +++ src/strings.cpp (working copy) @@ -338,7 +338,7 @@ /* Multiply by exchange rate, but do it safely. */ CommandCost cs(number); - cs.MultiplyCost(spec->rate); + cs.MultiplyCost((int64)spec->rate); number = cs.GetCost(); /* convert from negative */ Index: src/town_gui.cpp =================================================================== --- src/town_gui.cpp (revision 10963) +++ src/town_gui.cpp (working copy) @@ -61,7 +61,7 @@ /* Things worth more than this are not shown */ avail = GetPlayer(pid)->player_money + _price.station_value * 200; - ref = _price.build_industry >> 8; + ref = _price.build_industry / 256; for (i = 0; i != lengthof(_town_action_costs); i++, avail_buttons >>= 1) { if (HASBIT(avail_buttons, 0) && avail >= _town_action_costs[i] * ref) { @@ -174,7 +174,7 @@ int i = WP(w,def_d).data_1; if (i != -1) { - SetDParam(1, (_price.build_industry >> 8) * _town_action_costs[i]); + SetDParam(1, (_price.build_industry / 256) * _town_action_costs[i]); SetDParam(0, STR_2046_SMALL_ADVERTISING_CAMPAIGN + i); DrawStringMultiLine(2, 159, STR_204D_INITIATE_A_SMALL_LOCAL + i, 313); } Index: src/ship_gui.cpp =================================================================== --- src/ship_gui.cpp (revision 10963) +++ src/ship_gui.cpp (working copy) @@ -50,7 +50,7 @@ SetDParam(0, (v->age + 365 < v->max_age) ? STR_AGE : STR_AGE_RED); SetDParam(2, v->max_age / 366); - SetDParam(3, ShipVehInfo(v->engine_type)->running_cost * _price.ship_running >> 8); + SetDParam(3, ShipVehInfo(v->engine_type)->running_cost * _price.ship_running /256); DrawString(2, 15, STR_9812_AGE_RUNNING_COST_YR, 0); } Index: src/water_cmd.cpp =================================================================== --- src/water_cmd.cpp (revision 10963) +++ src/water_cmd.cpp (working copy) @@ -163,7 +163,7 @@ MarkTileDirtyByTile(tile + delta); } - return CommandCost(_price.clear_water * 22 >> 3); + return CommandCost(_price.clear_water * 22 / 8); } static CommandCost RemoveShiplift(TileIndex tile, uint32 flags) Index: src/economy.cpp =================================================================== --- src/economy.cpp (revision 10963) +++ src/economy.cpp (working copy) @@ -86,7 +86,7 @@ v->type == VEH_ROAD || (v->type == VEH_AIRCRAFT && IsNormalAircraft(v)) || v->type == VEH_SHIP) { - value.AddCost(v->value * 3 >> 1); + value.AddCost(v->value * 3 / 2); } } } @@ -612,7 +612,7 @@ FOR_ALL_STATIONS(st) { _current_player = st->owner; SET_EXPENSES_TYPE(EXPENSES_PROPERTY); - SubtractMoneyFromPlayer(_price.station_value >> 1); + SubtractMoneyFromPlayer(_price.station_value / 2); } if (!HASBIT(1<<0|1<<3|1<<6|1<<9, _cur_month)) @@ -717,7 +717,7 @@ SubtractMoneyFromPlayer(CommandCost((Money)BIGMULUS(p->current_loan, interest, 16))); SET_EXPENSES_TYPE(EXPENSES_OTHER); - SubtractMoneyFromPlayer(_price.station_value >> 2); + SubtractMoneyFromPlayer(_price.station_value / 4); } } @@ -834,9 +834,9 @@ if (_price_category[i] != 0) { uint mod = _price_category[i] == 1 ? _opt.diff.vehicle_costs : _opt.diff.construction_cost; if (mod < 1) { - price = price * 3 >> 2; + price = price * 3 / 4; } else if (mod > 1) { - price = price * 9 >> 3; + price = price * 9 / 8; } } if (price_base_multiplier[i] > 8) { @@ -1377,7 +1377,7 @@ /* Modify profit if a subsidy is in effect */ if (subsidised) { switch (_opt.diff.subsidy_multiplier) { - case 0: profit += profit >> 1; break; + case 0: profit += profit / 2 ; break; case 1: profit *= 2; break; case 2: profit *= 3; break; default: profit *= 4; break; @@ -1769,7 +1769,7 @@ owner->current_loan += p->current_loan; } - value = CalculateCompanyValue(p) >> 2; + value = CalculateCompanyValue(p) / 4; PlayerID old_player = _current_player; for (i = 0; i != 4; i++) { if (p->share_owners[i] != PLAYER_SPECTATOR) { @@ -1814,7 +1814,7 @@ /* We can not buy out a real player (temporarily). TODO: well, enable it obviously */ if (GetAmountOwnedBy(p, PLAYER_SPECTATOR) == 1 && !p->is_ai) return cost; - cost.AddCost(CalculateCompanyValue(p) >> 2); + cost.AddCost(CalculateCompanyValue(p) / 4 ); if (flags & DC_EXEC) { PlayerByte* b = p->share_owners; int i; @@ -1855,8 +1855,8 @@ if (GetAmountOwnedBy(p, _current_player) == 0) return CommandCost(); /* adjust it a little to make it less profitable to sell and buy */ - cost = CalculateCompanyValue(p) >> 2; - cost = -(cost - (cost >> 7)); + cost = CalculateCompanyValue(p) / 4; + cost = -(cost - (cost / 128)); if (flags & DC_EXEC) { PlayerByte* b = p->share_owners; Index: src/train_gui.cpp =================================================================== --- src/train_gui.cpp (revision 10963) +++ src/train_gui.cpp (working copy) @@ -423,7 +423,7 @@ SetDParam(0, (v->age + 365 < v->max_age) ? STR_AGE : STR_AGE_RED); SetDParam(2, v->max_age / 366); - SetDParam(3, GetTrainRunningCost(v) >> 8); + SetDParam(3, GetTrainRunningCost(v) / 256); DrawString(x, 15, STR_885D_AGE_RUNNING_COST_YR, 0); SetDParam(2, v->u.rail.cached_max_speed * 10 / 16); Index: src/roadveh_cmd.cpp =================================================================== --- src/roadveh_cmd.cpp (revision 10963) +++ src/roadveh_cmd.cpp (working copy) @@ -120,7 +120,7 @@ static CommandCost EstimateRoadVehCost(EngineID engine_type) { - return CommandCost(((_price.roadveh_base >> 3) * GetEngineProperty(engine_type, 0x11, RoadVehInfo(engine_type)->base_cost)) >> 5); + return CommandCost(((_price.roadveh_base / 8) * GetEngineProperty(engine_type, 0x11, RoadVehInfo(engine_type)->base_cost)) / 32); } byte GetRoadVehLength(const Vehicle *v) @@ -1981,7 +1981,7 @@ cost = RoadVehInfo(v->engine_type)->running_cost * _price.roadveh_running / 364; - v->profit_this_year -= cost.GetCost() >> 8; + v->profit_this_year -= cost.GetCost() / 32; SET_EXPENSES_TYPE(EXPENSES_ROADVEH_RUN); SubtractMoneyFromPlayerFract(v->owner, CommandCost(cost)); Index: src/vehicle.cpp =================================================================== --- src/vehicle.cpp (revision 10963) +++ src/vehicle.cpp (working copy) @@ -746,7 +746,7 @@ break; default: NOT_REACHED(); break; } - return CommandCost((EngInfo(engine_type)->refit_cost * base_cost.GetCost()) >> 10); + return CommandCost((EngInfo(engine_type)->refit_cost * base_cost.GetCost()) / 1024); } static void DoDrawVehicle(const Vehicle *v) @@ -1455,7 +1455,7 @@ void DecreaseVehicleValue(Vehicle *v) { - v->value -= v->value >> 8; + v->value -= v->value / 256; InvalidateWindow(WC_VEHICLE_DETAILS, v->index); } Index: src/industry_cmd.cpp =================================================================== --- src/industry_cmd.cpp (revision 10963) +++ src/industry_cmd.cpp (working copy) @@ -1968,7 +1968,7 @@ (_patches.raw_industry_construction == 1 && this->IsRawIndustry() ? this->raw_industry_cost_multiplier : this->cost_multiplier - )) >> 8; + )) / 256; } Index: src/aircraft_cmd.cpp =================================================================== --- src/aircraft_cmd.cpp (revision 10963) +++ src/aircraft_cmd.cpp (working copy) @@ -231,7 +231,7 @@ static CommandCost EstimateAircraftCost(EngineID engine, const AircraftVehicleInfo *avi) { - return CommandCost(GetEngineProperty(engine, 0x0B, avi->base_cost) * (_price.aircraft_base >> 3) >> 5); + return CommandCost(GetEngineProperty(engine, 0x0B, avi->base_cost) * (_price.aircraft_base / 8) / 32); } Index: src/roadveh_gui.cpp =================================================================== --- src/roadveh_gui.cpp (revision 10963) +++ src/roadveh_gui.cpp (working copy) @@ -91,7 +91,7 @@ SetDParam(0, (v->age + 365 < v->max_age) ? STR_AGE : STR_AGE_RED); SetDParam(2, v->max_age / 366); - SetDParam(3, RoadVehInfo(v->engine_type)->running_cost * _price.roadveh_running >> 8); + SetDParam(3, RoadVehInfo(v->engine_type)->running_cost * _price.roadveh_running / 256); DrawString(2, 15, STR_900D_AGE_RUNNING_COST_YR, 0); }