summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--aircraft_cmd.c18
-rw-r--r--aircraft_gui.c108
-rw-r--r--bridge_gui.c6
-rw-r--r--command.c2
-rw-r--r--disaster_cmd.c10
-rw-r--r--economy.c94
-rw-r--r--engine_gui.c30
-rw-r--r--graph_gui.c38
-rw-r--r--industry_cmd.c24
-rw-r--r--industry_gui.c46
-rw-r--r--intro_gui.c12
-rw-r--r--main_gui.c24
-rw-r--r--misc_cmd.c6
-rw-r--r--misc_gui.c58
-rw-r--r--music_gui.c20
-rw-r--r--network.c2
-rw-r--r--network_gui.c12
-rw-r--r--news_gui.c4
-rw-r--r--order_cmd.c2
-rw-r--r--order_gui.c30
-rw-r--r--player_gui.c64
-rw-r--r--players.c22
-rw-r--r--road_cmd.c2
-rw-r--r--roadveh_cmd.c18
-rw-r--r--roadveh_gui.c92
-rw-r--r--screenshot.c6
-rw-r--r--settings_gui.c34
-rw-r--r--ship_cmd.c14
-rw-r--r--ship_gui.c106
-rw-r--r--smallmap_gui.c6
-rw-r--r--station_cmd.c14
-rw-r--r--station_gui.c44
-rw-r--r--strings.c28
-rw-r--r--subsidy_gui.c8
-rw-r--r--texteff.c4
-rw-r--r--town_cmd.c20
-rw-r--r--town_gui.c38
-rw-r--r--train_cmd.c28
-rw-r--r--train_gui.c142
-rw-r--r--ttd.c8
-rw-r--r--tunnelbridge_cmd.c2
-rw-r--r--unix.c4
-rw-r--r--variables.h48
-rw-r--r--vehicle.c8
-rw-r--r--vehicle_gui.c4
-rw-r--r--viewport.c4
-rw-r--r--water_cmd.c2
-rw-r--r--win32.c2
48 files changed, 657 insertions, 661 deletions
diff --git a/aircraft_cmd.c b/aircraft_cmd.c
index 41e612559..58554398e 100644
--- a/aircraft_cmd.c
+++ b/aircraft_cmd.c
@@ -66,11 +66,11 @@ void DrawAircraftEngine(int x, int y, int engine, uint32 image_ormod)
void DrawAircraftEngineInfo(int engine, int x, int y, int maxw)
{
- SET_DPARAM32(0, ((_price.aircraft_base >> 3) * aircraft_vehinfo(engine).base_cost) >> 5);
- SET_DPARAM16(1, aircraft_vehinfo(engine).max_speed << 3);
- SET_DPARAM16(2, aircraft_vehinfo(engine).passanger_capacity);
- SET_DPARAM16(3, aircraft_vehinfo(engine).mail_capacity);
- SET_DPARAM32(4, aircraft_vehinfo(engine).running_cost * _price.aircraft_running >> 8);
+ SetDParam(0, ((_price.aircraft_base >> 3) * aircraft_vehinfo(engine).base_cost) >> 5);
+ SetDParam(1, aircraft_vehinfo(engine).max_speed << 3);
+ SetDParam(2, aircraft_vehinfo(engine).passanger_capacity);
+ SetDParam(3, aircraft_vehinfo(engine).mail_capacity);
+ SetDParam(4, aircraft_vehinfo(engine).running_cost * _price.aircraft_running >> 8);
DrawStringMultiCenter(x, y, STR_A02E_COST_MAX_SPEED_CAPACITY, maxw);
}
@@ -1084,12 +1084,12 @@ static void MaybeCrashAirplane(Vehicle *v)
amt = 2;
if (v->cargo_type == CT_PASSENGERS) amt += v->cargo_count;
- SET_DPARAM16(0, amt);
+ SetDParam(0, amt);
v->cargo_count = 0;
v->next->cargo_count = 0,
- SET_DPARAM16(1, st->index);
+ SetDParam(1, st->index);
AddNewsItem(STR_A034_PLANE_CRASH_DIE_IN_FIREBALL,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ACCIDENT, 0),
v->index,
@@ -1116,7 +1116,7 @@ static void AircraftEntersTerminal(Vehicle *v)
uint32 flags;
st->had_vehicle_of_type |= HVOT_AIRCRAFT;
- SET_DPARAM16(0, st->index);
+ SetDParam(0, st->index);
// show newsitem of celebrating citizens
flags = (v->owner == _local_player) ? NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_PLAYER, 0) : NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_OTHER, 0);
AddNewsItem(
@@ -1161,7 +1161,7 @@ static void AircraftEnterHangar(Vehicle *v)
v->vehstatus |= VS_STOPPED;
if (v->owner == _local_player) {
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_A014_AIRCRAFT_IS_WAITING_IN,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
diff --git a/aircraft_gui.c b/aircraft_gui.c
index d0b380ee4..e66e8e7e7 100644
--- a/aircraft_gui.c
+++ b/aircraft_gui.c
@@ -90,17 +90,17 @@ static void NewAircraftWndProc(Window *w, WindowEvent *e)
if (selected_id != -1) {
Engine *e;
- SET_DPARAM32(0, aircraft_vehinfo(selected_id).base_cost * (_price.aircraft_base>>3)>>5);
- SET_DPARAM16(1, aircraft_vehinfo(selected_id).max_speed * 8);
- SET_DPARAM16(2, aircraft_vehinfo(selected_id).passanger_capacity);
- SET_DPARAM16(3, aircraft_vehinfo(selected_id).mail_capacity);
- SET_DPARAM32(4, aircraft_vehinfo(selected_id).running_cost * _price.aircraft_running >> 8);
+ SetDParam(0, aircraft_vehinfo(selected_id).base_cost * (_price.aircraft_base>>3)>>5);
+ SetDParam(1, aircraft_vehinfo(selected_id).max_speed * 8);
+ SetDParam(2, aircraft_vehinfo(selected_id).passanger_capacity);
+ SetDParam(3, aircraft_vehinfo(selected_id).mail_capacity);
+ SetDParam(4, aircraft_vehinfo(selected_id).running_cost * _price.aircraft_running >> 8);
e = &_engines[selected_id];
- SET_DPARAM16(6, e->lifelength);
- SET_DPARAM8(7, e->reliability * 100 >> 16);
+ SetDParam(6, e->lifelength);
+ SetDParam(7, e->reliability * 100 >> 16);
ConvertDayToYMD(&ymd, e->intro_date);
- SET_DPARAM16(5, ymd.year + 1920);
+ SetDParam(5, ymd.year + 1920);
DrawString(2, 111, STR_A007_COST_SPEED_CAPACITY_PASSENGERS, 0);
}
@@ -208,8 +208,8 @@ static void AircraftRefitWndProc(Window *w, WindowEvent *e)
byte color;
int cargo;
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
DrawString(1, 15, STR_A040_SELECT_CARGO_TYPE_TO_CARRY, 0);
@@ -259,9 +259,9 @@ static void AircraftRefitWndProc(Window *w, WindowEvent *e)
if (cargo != -1) {
int32 cost = DoCommandByTile(v->tile, v->index, cargo, DC_QUERY_COST, CMD_REFIT_AIRCRAFT);
if (cost != CMD_ERROR) {
- SET_DPARAM32(2, cost);
- SET_DPARAM16(0, _cargoc.names_long_p[cargo]);
- SET_DPARAM16(1, _aircraft_refit_capacity);
+ SetDParam(2, cost);
+ SetDParam(0, _cargoc.names_long_p[cargo]);
+ SetDParam(1, _aircraft_refit_capacity);
DrawString(1, 137, STR_A041_NEW_CAPACITY_COST_OF_REFIT, 0);
}
}
@@ -331,8 +331,8 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
if (!_patches.servint_aircraft) // disable service-scroller when interval is set to disabled
w->disabled_state |= (1 << 5) | (1 << 6);
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* Draw running cost */
@@ -340,7 +340,7 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
int year = v->age / 366;
StringID str;
- SET_DPARAM16(1, year);
+ SetDParam(1, year);
str = STR_0199_YEAR;
if (year != 1) {
@@ -348,36 +348,36 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
if (v->max_age - 366 < v->age)
str++;
}
- SET_DPARAM16(0, str);
- SET_DPARAM16(2, v->max_age / 366);
- SET_DPARAM32(3, _price.aircraft_running * aircraft_vehinfo(v->engine_type).running_cost >> 8);
+ SetDParam(0, str);
+ SetDParam(2, v->max_age / 366);
+ SetDParam(3, _price.aircraft_running * aircraft_vehinfo(v->engine_type).running_cost >> 8);
DrawString(2, 15, STR_A00D_AGE_RUNNING_COST_YR, 0);
}
/* Draw max speed */
{
- SET_DPARAM16(0, v->max_speed * 8);
+ SetDParam(0, v->max_speed * 8);
DrawString(2, 25, STR_A00E_MAX_SPEED, 0);
}
/* Draw profit */
{
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(2, 35, STR_A00F_PROFIT_THIS_YEAR_LAST_YEAR, 0);
}
/* Draw breakdown & reliability */
{
- SET_DPARAM8(0, v->reliability * 100 >> 16);
- SET_DPARAM16(1, v->breakdowns_since_last_service);
+ SetDParam(0, v->reliability * 100 >> 16);
+ SetDParam(1, v->breakdowns_since_last_service);
DrawString(2, 45, STR_A010_RELIABILITY_BREAKDOWNS, 0);
}
/* Draw service interval text */
{
- SET_DPARAM16(0, v->service_interval);
- SET_DPARAM16(1, v->date_of_last_service);
+ SetDParam(0, v->service_interval);
+ SetDParam(1, v->date_of_last_service);
DrawString(13, 103, _patches.servint_ispercent?STR_SERVICING_INTERVAL_PERCENT:STR_883C_SERVICING_INTERVAL_DAYS, 0);
}
@@ -388,17 +388,17 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
do {
if (v->subtype <= 2) {
- SET_DPARAM16(0, GetCustomEngineName(v->engine_type));
- SET_DPARAM16(1, 1920 + v->build_year);
- SET_DPARAM32(2, v->value);
+ SetDParam(0, GetCustomEngineName(v->engine_type));
+ SetDParam(1, 1920 + v->build_year);
+ SetDParam(2, v->value);
DrawString(60, y, STR_A011_BUILT_VALUE, 0);
y += 10;
- SET_DPARAM16(0, _cargoc.names_long_p[v->cargo_type]);
- SET_DPARAM16(1, v->cargo_cap);
+ SetDParam(0, _cargoc.names_long_p[v->cargo_type]);
+ SetDParam(1, v->cargo_cap);
u = v->next;
- SET_DPARAM16(2, _cargoc.names_long_p[u->cargo_type]);
- SET_DPARAM16(3, u->cargo_cap);
+ SetDParam(2, _cargoc.names_long_p[u->cargo_type]);
+ SetDParam(3, u->cargo_cap);
DrawString(60, y, STR_A019_CAPACITY + (u->cargo_cap == 0), 0);
y += 14;
}
@@ -406,9 +406,9 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
if (v->cargo_count != 0) {
/* Cargo names (fix pluralness) */
- SET_DPARAM8(0, v->cargo_type);
- SET_DPARAM16(1, v->cargo_count);
- SET_DPARAM16(2, v->cargo_source);
+ SetDParam(0, v->cargo_type);
+ SetDParam(1, v->cargo_count);
+ SetDParam(2, v->cargo_source);
DrawString(60, y, STR_8813_FROM, 0);
y += 10;
@@ -420,7 +420,7 @@ static void AircraftDetailsWndProc(Window *w, WindowEvent *e)
case WE_CLICK:
switch(e->click.widget) {
case 2: /* rename */
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
ShowQueryString(v->string_id, STR_A030_NAME_AIRCRAFT, 31, 150, w->window_class, w->window_number);
break;
@@ -534,8 +534,8 @@ static void AircraftViewWndProc(Window *w, WindowEvent *e)
w->disabled_state = disabled;
/* draw widgets & caption */
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* draw the flag */
@@ -548,14 +548,14 @@ static void AircraftViewWndProc(Window *w, WindowEvent *e)
} else {
switch(v->next_order & OT_MASK) {
case OT_GOTO_STATION: {
- SET_DPARAM16(0, v->next_order_param);
- SET_DPARAM16(1, v->cur_speed * 8);
+ SetDParam(0, v->next_order_param);
+ SetDParam(1, v->cur_speed * 8);
str = STR_HEADING_FOR_STATION + _patches.vehicle_speed;
} break;
case OT_GOTO_DEPOT: {
- SET_DPARAM16(0, v->next_order_param);
- SET_DPARAM16(1, v->cur_speed * 8);
+ SetDParam(0, v->next_order_param);
+ SetDParam(1, v->cur_speed * 8);
str = STR_HEADING_FOR_HANGAR + _patches.vehicle_speed;
} break;
@@ -566,7 +566,7 @@ static void AircraftViewWndProc(Window *w, WindowEvent *e)
default:
if (v->num_orders == 0) {
str = STR_NO_ORDERS + _patches.vehicle_speed;
- SET_DPARAM16(0, v->cur_speed * 8);
+ SetDParam(0, v->cur_speed * 8);
} else
str = STR_EMPTY;
break;
@@ -651,7 +651,7 @@ static void DrawAircraftDepotWindow(Window *w)
}
SetVScrollCount(w, (num + 3) >> 2);
- SET_DPARAM16(0, _map2[tile]);
+ SetDParam(0, _map2[tile]);
DrawWindowWidgets(w);
x = 2;
@@ -667,7 +667,7 @@ static void DrawAircraftDepotWindow(Window *w)
DrawAircraftImage(v, x+12, y, WP(w,traindepot_d).sel);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
DrawString(x, y+2, (uint16)(v->max_age-366) >= v->age ? STR_00E2 : STR_00E3, 0);
DrawSprite( (v->vehstatus & VS_STOPPED) ? 0xC12 : 0xC13, x, y+12);
@@ -873,7 +873,7 @@ static void DrawSmallSchedule(Vehicle *v, int x, int y) {
sel--;
if ((ord & OT_MASK) == OT_GOTO_STATION) {
- SET_DPARAM16(0, ord >> 8);
+ SetDParam(0, ord >> 8);
DrawString(x, y, STR_A036, 0);
y += 6;
@@ -971,9 +971,9 @@ static void PlayerAircraftWndProc(Window *w, WindowEvent *e)
{
Player *p = DEREF_PLAYER(window_number);
/* Company Name -- (###) Aircraft */
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, w->vscroll.count);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, w->vscroll.count);
DrawWindowWidgets(w);
}
/* draw sorting criteria string */
@@ -998,7 +998,7 @@ static void PlayerAircraftWndProc(Window *w, WindowEvent *e)
DrawAircraftImage(v, x + 19, y + 6, INVALID_VEHICLE);
DrawVehicleProfitButton(v, x, y+13);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
if (IsAircraftHangarTile(v->tile)) {
str = STR_021F;
} else {
@@ -1007,12 +1007,12 @@ static void PlayerAircraftWndProc(Window *w, WindowEvent *e)
DrawString(x, y+2, str, 0);
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(x+19, y + 28, STR_0198_PROFIT_THIS_YEAR_LAST_YEAR, 0);
if (v->string_id != STR_SV_AIRCRAFT_NAME) {
- SET_DPARAM16(0, v->string_id);
+ SetDParam(0, v->string_id);
DrawString(x+19, y, STR_01AB, 0);
}
diff --git a/bridge_gui.c b/bridge_gui.c
index f78d49d90..731d217d2 100644
--- a/bridge_gui.c
+++ b/bridge_gui.c
@@ -46,9 +46,9 @@ static void BuildBridgeWndProc(Window *w, WindowEvent *e)
for(i=0; i < 4 && i + w->vscroll.pos < _bridge.count; i++) {
int ind = _bridge.indexes[i + w->vscroll.pos];
- SET_DPARAM32(2, _bridge.costs[i + w->vscroll.pos]);
- SET_DPARAM16(1, (_bridge_speeds[ind] >> 4) * 10);
- SET_DPARAM16(0, _bridge_material[ind]);
+ SetDParam(2, _bridge.costs[i + w->vscroll.pos]);
+ SetDParam(1, (_bridge_speeds[ind] >> 4) * 10);
+ SetDParam(0, _bridge_material[ind]);
DrawSprite(_bridge_sprites[ind], 3, 15 + i * 22);
DrawString(44, 15 + i*22 , STR_500D, 0);
diff --git a/command.c b/command.c
index 0da83e269..287da63ce 100644
--- a/command.c
+++ b/command.c
@@ -493,7 +493,7 @@ bool DoCommandP(TileIndex tile, uint32 p1, uint32 p2, CommandCallback *callback,
if (res2 != 0)
ShowCostOrIncomeAnimation(x, y, GetSlopeZ(x, y), res2);
if (_additional_cash_required) {
- SET_DPARAM32(0, _additional_cash_required);
+ SetDParam(0, _additional_cash_required);
ShowErrorMessage(STR_0003_NOT_ENOUGH_CASH_REQUIRES, _error_message_2, x,y);
if (res2 == 0) goto callb_err;
}
diff --git a/disaster_cmd.c b/disaster_cmd.c
index fed34fd5c..6d9b7646e 100644
--- a/disaster_cmd.c
+++ b/disaster_cmd.c
@@ -168,7 +168,7 @@ static void DisasterTick_Zeppeliner(Vehicle *v)
v->next_order = 1;
v->age = 0;
- SET_DPARAM16(0, _map2[tile]);
+ SetDParam(0, _map2[tile]);
AddNewsItem(STR_B000_ZEPPELIN_DISASTER_AT,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ACCIDENT, 0),
v->index,
@@ -372,7 +372,7 @@ static void DisasterTick_2(Vehicle *v)
i = DEREF_INDUSTRY(v->dest_tile);
DestructIndustry(i);
- SET_DPARAM16(0, i->town->index);
+ SetDParam(0, i->town->index);
AddNewsItem(STR_B002_OIL_REFINERY_EXPLOSION, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0);
SndPlayTileFx(0x10, i->xy);
}
@@ -442,7 +442,7 @@ static void DisasterTick_3(Vehicle *v)
i = DEREF_INDUSTRY(v->dest_tile);
DestructIndustry(i);
- SET_DPARAM16(0, i->town->index);
+ SetDParam(0, i->town->index);
AddNewsItem(STR_B003_FACTORY_DESTROYED_IN_SUSPICIOUS, NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy, 0);
SndPlayTileFx(0x10, i->xy);
}
@@ -525,7 +525,7 @@ static void DisasterTick_4(Vehicle *v)
}
t = ClosestTownFromTile(v->dest_tile, (uint)-1);
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
AddNewsItem(STR_B004_UFO_LANDS_NEAR,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ACCIDENT, 0),
v->tile,
@@ -894,7 +894,7 @@ static void Disaster7_Init()
for(i=_industries; i != endof(_industries); i++) {
if (i->xy != 0 && i->type == IT_COAL_MINE && --index < 0) {
- SET_DPARAM16(0, i->town->index);
+ SetDParam(0, i->town->index);
AddNewsItem(STR_B005_COAL_MINE_SUBSIDENCE_LEAVES,
NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ACCIDENT,0), i->xy + TILE_XY(1,1), 0);
diff --git a/economy.c b/economy.c
index ed30e4bdd..0b6fc09b3 100644
--- a/economy.c
+++ b/economy.c
@@ -381,8 +381,8 @@ year_4:
}
// Show bankrupt news
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
AddNewsItem( (StringID)(owner + 16*3), NEWS_FLAGS(NM_CALLBACK, 0, NT_COMPANY_INFO, DNC_BANKRUPCY),0,0);
if (IS_HUMAN_PLAYER(owner)) {
@@ -406,8 +406,8 @@ void DrawNewsBankrupcy(Window *w)
DrawPlayerFace(p->face, p->player_color, 2, 23);
GfxFillRect(3, 23, 3+91, 23+118, 0x4323);
- SET_DPARAM16(0, p->president_name_1);
- SET_DPARAM32(1, p->president_name_2);
+ SetDParam(0, p->president_name_1);
+ SetDParam(1, p->president_name_2);
DrawStringMultiCenter(49, 148, STR_7058_PRESIDENT, 94);
@@ -415,8 +415,8 @@ void DrawNewsBankrupcy(Window *w)
case 1:
DrawStringCentered(w->width>>1, 1, STR_7056_TRANSPORT_COMPANY_IN_TROUBLE, 0);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
DrawStringMultiCenter(
((w->width - 101) >> 1) + 98,
@@ -430,10 +430,10 @@ void DrawNewsBankrupcy(Window *w)
DrawStringCentered(w->width>>1, 1, STR_7059_TRANSPORT_COMPANY_MERGER, 0);
COPY_IN_DPARAM(0,WP(w,news_d).ni->params, 2);
- SET_DPARAM16(2, p->name_1);
- SET_DPARAM32(3, p->name_2);
+ SetDParam(2, p->name_1);
+ SetDParam(3, p->name_2);
price = WP(w,news_d).ni->params[2];
- SET_DPARAM32(4, price);
+ SetDParam(4, price);
DrawStringMultiCenter(
((w->width - 101) >> 1) + 98,
90,
@@ -454,8 +454,8 @@ void DrawNewsBankrupcy(Window *w)
case 4:
DrawStringCentered(w->width>>1, 1, STR_705E_NEW_TRANSPORT_COMPANY_LAUNCHED, 0);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
COPY_IN_DPARAM(2,WP(w,news_d).ni->params, 2);
DrawStringMultiCenter(
((w->width - 101) >> 1) + 98,
@@ -475,29 +475,29 @@ StringID GetNewsStringBankrupcy(NewsItem *ni)
switch(ni->string_id >> 4) {
case 1:
- SET_DPARAM16(0, STR_7056_TRANSPORT_COMPANY_IN_TROUBLE);
- SET_DPARAM16(1, STR_7057_WILL_BE_SOLD_OFF_OR_DECLARED);
- SET_DPARAM16(2, p->name_1);
- SET_DPARAM32(3, p->name_2);
+ SetDParam(0, STR_7056_TRANSPORT_COMPANY_IN_TROUBLE);
+ SetDParam(1, STR_7057_WILL_BE_SOLD_OFF_OR_DECLARED);
+ SetDParam(2, p->name_1);
+ SetDParam(3, p->name_2);
return STR_02B6;
case 2:
- SET_DPARAM16(0, STR_7059_TRANSPORT_COMPANY_MERGER);
- SET_DPARAM16(1, STR_705A_HAS_BEEN_SOLD_TO_FOR);
+ SetDParam(0, STR_7059_TRANSPORT_COMPANY_MERGER);
+ SetDParam(1, STR_705A_HAS_BEEN_SOLD_TO_FOR);
COPY_IN_DPARAM(2,ni->params, 2);
- SET_DPARAM16(4, p->name_1);
- SET_DPARAM32(5, p->name_2);
+ SetDParam(4, p->name_1);
+ SetDParam(5, p->name_2);
COPY_IN_DPARAM(6,ni->params + 2, 1);
return STR_02B6;
case 3:
- SET_DPARAM16(0, STR_705C_BANKRUPT);
- SET_DPARAM16(1, STR_705D_HAS_BEEN_CLOSED_DOWN_BY);
+ SetDParam(0, STR_705C_BANKRUPT);
+ SetDParam(1, STR_705D_HAS_BEEN_CLOSED_DOWN_BY);
COPY_IN_DPARAM(2,ni->params, 2);
return STR_02B6;
case 4:
- SET_DPARAM16(0, STR_705E_NEW_TRANSPORT_COMPANY_LAUNCHED);
- SET_DPARAM16(1, STR_705F_STARTS_CONSTRUCTION_NEAR);
- SET_DPARAM16(2, p->name_1);
- SET_DPARAM32(3, p->name_2);
+ SetDParam(0, STR_705E_NEW_TRANSPORT_COMPANY_LAUNCHED);
+ SetDParam(1, STR_705F_STARTS_CONSTRUCTION_NEAR);
+ SetDParam(2, p->name_1);
+ SetDParam(3, p->name_2);
COPY_IN_DPARAM(4,ni->params, 2);
return STR_02B6;
default:
@@ -716,50 +716,50 @@ Pair SetupSubsidyDecodeParam(Subsidy *s, bool mode)
Pair tp;
/* if mode is false, convert into plural */
- SET_DPARAM16(0, _cargoc.names_s[s->cargo_type] + (mode?0:32));
+ SetDParam(0, _cargoc.names_s[s->cargo_type] + (mode?0:32));
if (s->age < 12) {
if (!(s->cargo_type == CT_PASSENGERS || s->cargo_type == CT_MAIL)) {
- SET_DPARAM16(1, STR_2029);
+ SetDParam(1, STR_2029);
i = DEREF_INDUSTRY(s->from);
tile = i->xy;
- SET_DPARAM16(2, i->town->townnametype);
- SET_DPARAM32(3, i->town->townnameparts);
+ SetDParam(2, i->town->townnametype);
+ SetDParam(3, i->town->townnameparts);
- SET_DPARAM16(4, i->type + STR_4802_COAL_MINE);
+ SetDParam(4, i->type + STR_4802_COAL_MINE);
if (s->cargo_type != CT_GOODS && s->cargo_type != CT_FOOD) {
- SET_DPARAM16(5, STR_2029);
+ SetDParam(5, STR_2029);
i = DEREF_INDUSTRY(s->to);
tile2 = i->xy;
- SET_DPARAM16(8, i->type + STR_4802_COAL_MINE);
- SET_DPARAM16(6, i->town->townnametype);
- SET_DPARAM32(7, i->town->townnameparts);
+ SetDParam(8, i->type + STR_4802_COAL_MINE);
+ SetDParam(6, i->town->townnametype);
+ SetDParam(7, i->town->townnameparts);
} else {
t = DEREF_TOWN(s->to);
tile2 = t->xy;
- SET_DPARAM16(5, t->townnametype);
- SET_DPARAM32(6, t->townnameparts);
+ SetDParam(5, t->townnametype);
+ SetDParam(6, t->townnameparts);
}
} else {
t = DEREF_TOWN(s->from);
tile = t->xy;
- SET_DPARAM16(1, t->townnametype);
- SET_DPARAM32(2, t->townnameparts);
+ SetDParam(1, t->townnametype);
+ SetDParam(2, t->townnameparts);
t = DEREF_TOWN(s->to);
tile2 = t->xy;
- SET_DPARAM16(3, t->townnametype);
- SET_DPARAM32(4, t->townnameparts);
+ SetDParam(3, t->townnametype);
+ SetDParam(4, t->townnameparts);
}
} else {
st = DEREF_STATION(s->from);
tile = st->xy;
- SET_DPARAM16(1, st->index);
+ SetDParam(1, st->index);
st = DEREF_STATION(s->to);
tile2 = st->xy;
- SET_DPARAM16(2, st->index);
+ SetDParam(2, st->index);
}
tp.a = tile;
@@ -1118,8 +1118,8 @@ static bool CheckSubsidised(Station *from, Station *to, byte cargo_type)
INJECT_DPARAM(2);
p = DEREF_PLAYER(_current_player);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
AddNewsItem(
STR_2031_SERVICE_SUBSIDY_AWARDED + _opt.diff.subsidy_multiplier,
NEWS_FLAGS(NM_NORMAL, NF_TILE, NT_SUBSIDIES, 0),
@@ -1416,9 +1416,9 @@ static void DoAcquireCompany(Player *p)
int i,pi;
int64 value;
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM32(2, p->bankrupt_value);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, p->bankrupt_value);
AddNewsItem( (StringID)(_current_player + 16*2), NEWS_FLAGS(NM_CALLBACK, 0, NT_COMPANY_INFO, DNC_BANKRUPCY),0,0);
// original code does this a little bit differently
diff --git a/engine_gui.c b/engine_gui.c
index 536ff6524..f3c6f3291 100644
--- a/engine_gui.c
+++ b/engine_gui.c
@@ -71,7 +71,7 @@ static void EnginePreviewWndProc(Window *w, WindowEvent *e)
DrawWindowWidgets(w);
engine = w->window_number;
- SET_DPARAM16(0, GetEngineCategoryName(engine));
+ SetDParam(0, GetEngineCategoryName(engine));
DrawStringMultiCenter(150, 44, STR_8101_WE_HAVE_JUST_DESIGNED_A, 296);
DrawStringCentered(w->width >> 1, 80, GetCustomEngineName(engine), 0x10);
@@ -123,12 +123,12 @@ void DrawNewsNewTrainAvail(Window *w)
DrawNewsBorder(w);
engine = WP(w,news_d).ni->string_id;
- SET_DPARAM16(0, GetEngineCategoryName(engine));
+ SetDParam(0, GetEngineCategoryName(engine));
DrawStringMultiCenter(w->width >> 1, 20, STR_8859_NEW_NOW_AVAILABLE, w->width - 2);
GfxFillRect(25, 56, w->width - 25, w->height - 2, 10);
- SET_DPARAM16(0, GetCustomEngineName(engine));
+ SetDParam(0, GetCustomEngineName(engine));
DrawStringMultiCenter(w->width >> 1, 57, STR_885A, w->width - 2);
DrawTrainEngine(w->width >> 1, 88, engine, 0);
@@ -139,9 +139,9 @@ void DrawNewsNewTrainAvail(Window *w)
StringID GetNewsStringNewTrainAvail(NewsItem *ni)
{
int engine = ni->string_id;
- SET_DPARAM16(0, STR_8859_NEW_NOW_AVAILABLE);
- SET_DPARAM16(1, GetEngineCategoryName(engine));
- SET_DPARAM16(2, GetCustomEngineName(engine));
+ SetDParam(0, STR_8859_NEW_NOW_AVAILABLE);
+ SetDParam(1, GetEngineCategoryName(engine));
+ SetDParam(2, GetCustomEngineName(engine));
return STR_02B6;
}
@@ -156,7 +156,7 @@ void DrawNewsNewAircraftAvail(Window *w)
DrawStringMultiCenter(w->width >> 1, 20, STR_A02C_NEW_AIRCRAFT_NOW_AVAILABLE, w->width - 2);
GfxFillRect(25, 56, w->width - 25, w->height - 2, 10);
- SET_DPARAM16(0, GetCustomEngineName(engine));
+ SetDParam(0, GetCustomEngineName(engine));
DrawStringMultiCenter(w->width >> 1, 57, STR_A02D, w->width - 2);
DrawAircraftEngine(w->width >> 1, 93, engine, 0);
@@ -167,8 +167,8 @@ void DrawNewsNewAircraftAvail(Window *w)
StringID GetNewsStringNewAircraftAvail(NewsItem *ni)
{
int engine = ni->string_id;
- SET_DPARAM16(0, STR_A02C_NEW_AIRCRAFT_NOW_AVAILABLE);
- SET_DPARAM16(1, GetCustomEngineName(engine));
+ SetDParam(0, STR_A02C_NEW_AIRCRAFT_NOW_AVAILABLE);
+ SetDParam(1, GetCustomEngineName(engine));
return STR_02B6;
}
@@ -182,7 +182,7 @@ void DrawNewsNewRoadVehAvail(Window *w)
DrawStringMultiCenter(w->width >> 1, 20, STR_9028_NEW_ROAD_VEHICLE_NOW_AVAILABLE, w->width - 2);
GfxFillRect(25, 56, w->width - 25, w->height - 2, 10);
- SET_DPARAM16(0, GetCustomEngineName(engine));
+ SetDParam(0, GetCustomEngineName(engine));
DrawStringMultiCenter(w->width >> 1, 57, STR_9029, w->width - 2);
DrawRoadVehEngine(w->width >> 1, 88, engine, 0);
@@ -193,8 +193,8 @@ void DrawNewsNewRoadVehAvail(Window *w)
StringID GetNewsStringNewRoadVehAvail(NewsItem *ni)
{
int engine = ni->string_id;
- SET_DPARAM16(0, STR_9028_NEW_ROAD_VEHICLE_NOW_AVAILABLE);
- SET_DPARAM16(1, GetCustomEngineName(engine));
+ SetDParam(0, STR_9028_NEW_ROAD_VEHICLE_NOW_AVAILABLE);
+ SetDParam(1, GetCustomEngineName(engine));
return STR_02B6;
}
@@ -209,7 +209,7 @@ void DrawNewsNewShipAvail(Window *w)
DrawStringMultiCenter(w->width >> 1, 20, STR_982C_NEW_SHIP_NOW_AVAILABLE, w->width - 2);
GfxFillRect(25, 56, w->width - 25, w->height - 2, 10);
- SET_DPARAM16(0, GetCustomEngineName(engine));
+ SetDParam(0, GetCustomEngineName(engine));
DrawStringMultiCenter(w->width >> 1, 57, STR_982D, w->width - 2);
DrawShipEngine(w->width >> 1, 93, engine, 0);
@@ -220,7 +220,7 @@ void DrawNewsNewShipAvail(Window *w)
StringID GetNewsStringNewShipAvail(NewsItem *ni)
{
int engine = ni->string_id;
- SET_DPARAM16(0, STR_982C_NEW_SHIP_NOW_AVAILABLE);
- SET_DPARAM16(1, GetCustomEngineName(engine));
+ SetDParam(0, STR_982C_NEW_SHIP_NOW_AVAILABLE);
+ SetDParam(1, GetCustomEngineName(engine));
return STR_02B6;
}
diff --git a/graph_gui.c b/graph_gui.c
index 6ea100bdc..0a69da2d7 100644
--- a/graph_gui.c
+++ b/graph_gui.c
@@ -130,8 +130,8 @@ static void DrawGraph(GraphDrawer *gw)
y = gw->top - 3;
i = 9;
do {
- SET_DPARAM16(0, gw->format_str_y_axis);
- SET_DPARAM64(1, (int64)tmp);
+ SetDParam(0, gw->format_str_y_axis);
+ SetDParam64(1, (int64)tmp);
tmp -= (value >> 3);
DrawStringRightAligned(x, y, STR_0170, gw->color_3);
y += gw->height >> 3;
@@ -145,9 +145,9 @@ static void DrawGraph(GraphDrawer *gw)
k = gw->year + 1920;
i = gw->num_on_x_axis;assert(i>0);
do {
- SET_DPARAM16(2, k);
- SET_DPARAM16(0, j + STR_0162_JAN);
- SET_DPARAM16(1, j + STR_0162_JAN + 2);
+ SetDParam(2, k);
+ SetDParam(0, j + STR_0162_JAN);
+ SetDParam(1, j + STR_0162_JAN + 2);
DrawString(x, y, j == 0 ? STR_016F : STR_016E, gw->color_3);
j += 3;
@@ -163,7 +163,7 @@ static void DrawGraph(GraphDrawer *gw)
j = gw->unk61A;
i = gw->num_on_x_axis;assert(i>0);
do {
- SET_DPARAM16(0, j);
+ SetDParam(0, j);
DrawString(x, y, STR_01CB, gw->color_3);
j += gw->unk61C;
x += 22;
@@ -228,9 +228,9 @@ static void GraphLegendWndProc(Window *w, WindowEvent *e)
DrawPlayerIcon(p->index, 4, 18+p->index*12);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, GetPlayerNameString(p->index, 3));
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, GetPlayerNameString(p->index, 3));
DrawString(21,17+p->index*12,STR_7021,HASBIT(_legend_showbits, p->index) ? 0x10 : 0xC);
}
break;
@@ -598,7 +598,7 @@ static void PerformanceRatingDetailWndProc(Window *w, WindowEvent *e)
DrawString(7, y, STR_PERFORMANCE_DETAIL_VEHICLES + i, 0);
// Draw the score
- SET_DPARAM32(0, score);
+ SetDParam(0, score);
DrawStringRightAligned(107, y, SET_PERFORMANCE_DETAIL_INT, 0);
// Calculate the %-bar
@@ -625,7 +625,7 @@ static void PerformanceRatingDetailWndProc(Window *w, WindowEvent *e)
x = 0;
// Draw it
- SET_DPARAM32(0, x);
+ SetDParam(0, x);
DrawStringCentered(137, y, STR_PERFORMANCE_DETAIL_PERCENT, 0);
// SCORE_LOAN is inversed
@@ -634,8 +634,8 @@ static void PerformanceRatingDetailWndProc(Window *w, WindowEvent *e)
// Draw the amount we have against what is needed
// For some of them it is in currency format
- SET_DPARAM32(0, val);
- SET_DPARAM32(1, needed);
+ SetDParam(0, val);
+ SetDParam(1, needed);
switch (i) {
case SCORE_MIN_PROFIT:
case SCORE_MIN_INCOME:
@@ -924,7 +924,7 @@ static void CargoPaymentRatesWndProc(Window *w, WindowEvent *e)
for(i=0; i!=NUM_CARGO; i++) {
GfxFillRect(x, y, x+8, y+5, 0);
GfxFillRect(x+1, y+1, x+7, y+4, _cargo_legend_colors[i]);
- SET_DPARAM16(0, _cargoc.names_s[i]);
+ SetDParam(0, _cargoc.names_s[i]);
DrawString(x+14, y, STR_7065, 0);
y += 8;
}
@@ -1059,19 +1059,19 @@ static void CompanyLeagueWndProc(Window *w, WindowEvent *e)
i = 0;
do {
- SET_DPARAM16(0, i + 1 + STR_01AB);
+ SetDParam(0, i + 1 + STR_01AB);
p = plist[i];
- SET_DPARAM16(1, p->name_1);
- SET_DPARAM32(2, p->name_2);
+ SetDParam(1, p->name_1);
+ SetDParam(2, p->name_2);
- SET_DPARAM16(3, GetPlayerNameString(p->index, 4));
+ SetDParam(3, GetPlayerNameString(p->index, 4));
/* WARNING ugly hack!
GetPlayerNameString sets up (Player #) if the player is human in an extra DPARAM16
It seems that if player is non-human, nothing is set up, so param is 0. GetString doesn't like
that because there is another param after it.
So we'll just shift the rating one back if player is AI and all is fine
*/
- SET_DPARAM16((IS_HUMAN_PLAYER(p->index) ? 5 : 4), GetPerformanceTitleFromValue(p->old_economy[1].performance_history));
+ SetDParam((IS_HUMAN_PLAYER(p->index) ? 5 : 4), GetPerformanceTitleFromValue(p->old_economy[1].performance_history));
DrawString(2, 15 + i * 10, i == 0 ? STR_7054 : STR_7055, 0);
DrawPlayerIcon(p->index, 27, 16 + i * 10);
diff --git a/industry_cmd.c b/industry_cmd.c
index d1af5e81d..edcef12f1 100644
--- a/industry_cmd.c
+++ b/industry_cmd.c
@@ -362,7 +362,7 @@ static void GetTileDesc_Industry(uint tile, TileDesc *td)
td->owner = i->owner;
td->str = STR_4802_COAL_MINE + i->type;
if ((_map_owner[tile] & 0x80) == 0) {
- SET_DPARAMX16(td->dparam, 0, td->str);
+ SetDParamX(td->dparam, 0, td->str);
td->str = STR_2058_UNDER_CONSTRUCTION;
}
}
@@ -379,7 +379,7 @@ static int32 ClearTile_Industry(uint tile, byte flags)
if ((_current_player != OWNER_WATER && _game_mode != GM_EDITOR &&
!_cheats.magic_bulldozer.value) ||
(_current_player == OWNER_WATER && i->type == IT_OIL_RIG) ) {
- SET_DPARAM16(0, STR_4802_COAL_MINE + i->type);
+ SetDParam(0, STR_4802_COAL_MINE + i->type);
return_cmd_error(STR_4800_IN_THE_WAY);
}
@@ -1643,10 +1643,10 @@ static void ExtChangeIndustryProduction(Industry *i)
mag = abs(percent);
if (mag >= 10) {
- SET_DPARAM16(3, mag);
- SET_DPARAM16(0,_cargoc.names_s[i->produced_cargo[j]]);
- SET_DPARAM16(1, i->town->index);
- SET_DPARAM16(2, i->type + STR_4802_COAL_MINE);
+ SetDParam(3, mag);
+ SetDParam(0,_cargoc.names_s[i->produced_cargo[j]]);
+ SetDParam(1, i->town->index);
+ SetDParam(2, i->type + STR_4802_COAL_MINE);
AddNewsItem(percent>=0 ? STR_INDUSTRY_PROD_GOUP : STR_INDUSTRY_PROD_GODOWN,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ECONOMY, 0),
i->xy + TILE_XY(1,1), 0);
@@ -1656,8 +1656,8 @@ static void ExtChangeIndustryProduction(Industry *i)
if (closeit) {
i->prod_level = 0;
- SET_DPARAM16(1, i->type + STR_4802_COAL_MINE);
- SET_DPARAM16(0, i->town->index);
+ SetDParam(1, i->type + STR_4802_COAL_MINE);
+ SetDParam(0, i->town->index);
AddNewsItem(_industry_close_strings[i->type], NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ECONOMY, 0), i->xy + TILE_XY(1,1), 0);
}
}
@@ -1736,8 +1736,8 @@ static void MaybeNewIndustry(uint32 r)
return;
}
- SET_DPARAM16(0, type + STR_4802_COAL_MINE);
- SET_DPARAM16(1, i->town->index);
+ SetDParam(0, type + STR_4802_COAL_MINE);
+ SetDParam(1, i->town->index);
AddNewsItem( STR_482D_NEW_UNDER_CONSTRUCTION + (type == IT_FOREST), NEWS_FLAGS(NM_THIN,NF_VIEWPORT|NF_TILE,NT_ECONOMY,0), i->xy, 0);
}
@@ -1789,8 +1789,8 @@ close_industry:
i->prod_level = 0;
str = _industry_close_strings[type];
add_news:
- SET_DPARAM16(1, type + STR_4802_COAL_MINE);
- SET_DPARAM16(0, i->town->index);
+ SetDParam(1, type + STR_4802_COAL_MINE);
+ SetDParam(0, i->town->index);
AddNewsItem(str, NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ECONOMY, 0), i->xy + TILE_XY(1,1), 0);
}
}
diff --git a/industry_gui.c b/industry_gui.c
index 48c6b03f4..e031844f3 100644
--- a/industry_gui.c
+++ b/industry_gui.c
@@ -26,7 +26,7 @@ static void BuildIndustryWndProc(Window *w, WindowEvent *e)
if (_thd.place_mode == 1 && _thd.window_class == WC_BUILD_INDUSTRY) {
int ind_type = _build_industry_types[_opt.landscape][WP(w,def_d).data_1];
- SET_DPARAM32(0, (_price.build_industry >> 5) * _industry_type_costs[ind_type]);
+ SetDParam(0, (_price.build_industry >> 5) * _industry_type_costs[ind_type]);
DrawStringCentered(85, w->height - 21, STR_482F_COST, 0);
}
break;
@@ -275,18 +275,18 @@ static void IndustryViewWndProc(Window *w, WindowEvent *e)
// Destroy Industry button costing money removed per request of dominik
//w->disabled_state = (_patches.extra_dynamite && !_networking && _game_mode != GM_EDITOR) ? 0 : (1 << 6);
i = DEREF_INDUSTRY(w->window_number);
- SET_DPARAM16(0, i->town->index);
- SET_DPARAM16(1, i->type + STR_4802_COAL_MINE);
+ SetDParam(0, i->town->index);
+ SetDParam(1, i->type + STR_4802_COAL_MINE);
DrawWindowWidgets(w);
if (i->accepts_cargo[0] != 0xFF) {
- SET_DPARAM16(0, _cargoc.names_s[i->accepts_cargo[0]]);
+ SetDParam(0, _cargoc.names_s[i->accepts_cargo[0]]);
str = STR_4827_REQUIRES;
if (i->accepts_cargo[1] != 0xFF) {
- SET_DPARAM16(1, _cargoc.names_s[i->accepts_cargo[1]]);
+ SetDParam(1, _cargoc.names_s[i->accepts_cargo[1]]);
str++;
if (i->accepts_cargo[2] != 0xFF) {
- SET_DPARAM16(2, _cargoc.names_s[i->accepts_cargo[2]]);
+ SetDParam(2, _cargoc.names_s[i->accepts_cargo[2]]);
str++;
}
}
@@ -296,15 +296,15 @@ static void IndustryViewWndProc(Window *w, WindowEvent *e)
if (i->produced_cargo[0] != 0xFF) {
DrawString(2, 117, STR_482A_PRODUCTION_LAST_MONTH, 0);
- SET_DPARAM16(1, i->total_production[0]);
- SET_DPARAM16(0, _cargoc.names_long_s[i->produced_cargo[0]] + ((i->total_production[0]!=1)<<5));
- SET_DPARAM16(2, i->pct_transported[0] * 100 >> 8);
+ SetDParam(1, i->total_production[0]);
+ SetDParam(0, _cargoc.names_long_s[i->produced_cargo[0]] + ((i->total_production[0]!=1)<<5));
+ SetDParam(2, i->pct_transported[0] * 100 >> 8);
DrawString(4, 127, STR_482B_TRANSPORTED, 0);
if (i->produced_cargo[1] != 0xFF) {
- SET_DPARAM16(1, i->total_production[1]);
- SET_DPARAM16(0, _cargoc.names_long_s[i->produced_cargo[1]] + ((i->total_production[1]!=1)<<5));
- SET_DPARAM16(2, i->pct_transported[1] * 100 >> 8);
+ SetDParam(1, i->total_production[1]);
+ SetDParam(0, _cargoc.names_long_s[i->produced_cargo[1]] + ((i->total_production[1]!=1)<<5));
+ SetDParam(2, i->pct_transported[1] * 100 >> 8);
DrawString(4, 137, STR_482B_TRANSPORTED, 0);
}
}
@@ -435,12 +435,12 @@ static int CDECL GeneralIndustrySorter(const void *a, const void *b)
// default to string sorting if they are otherwise equal
if (r == 0) {
- SET_DPARAM32(0, i->town->townnameparts);
+ SetDParam(0, i->town->townnameparts);
GetString(buf1, i->town->townnametype);
if ( (val=*(const byte*)b) != _last_industry_idx) {
_last_industry_idx = val;
- SET_DPARAM32(0, j->town->townnameparts);
+ SetDParam(0, j->town->townnameparts);
GetString(_bufcache, j->town->townnametype);
}
r = strcmp(buf1, _bufcache);
@@ -492,20 +492,20 @@ static void IndustryDirectoryWndProc(Window *w, WindowEvent *e)
while (p < _num_industry_sort) {
i = DEREF_INDUSTRY(_industry_sort[p]);
- SET_DPARAM16(0, i->town->index);
- SET_DPARAM16(1, i->type + STR_4802_COAL_MINE);
+ SetDParam(0, i->town->index);
+ SetDParam(1, i->type + STR_4802_COAL_MINE);
if (i->produced_cargo[0] != 0xFF) {
- SET_DPARAM16(3, i->total_production[0]);
- SET_DPARAM16(2, _cargoc.names_long_s[i->produced_cargo[0]] + ((i->total_production[0]!=1)<<5));
+ SetDParam(3, i->total_production[0]);
+ SetDParam(2, _cargoc.names_long_s[i->produced_cargo[0]] + ((i->total_production[0]!=1)<<5));
if (i->produced_cargo[1] != 0xFF) {
- SET_DPARAM16(5, i->total_production[1]);
- SET_DPARAM16(4, _cargoc.names_long_s[i->produced_cargo[1]] + ((i->total_production[1]!=1)<<5));
- SET_DPARAM16(6, i->pct_transported[0] * 100 >> 8);
- SET_DPARAM16(7, i->pct_transported[1] * 100 >> 8);
+ SetDParam(5, i->total_production[1]);
+ SetDParam(4, _cargoc.names_long_s[i->produced_cargo[1]] + ((i->total_production[1]!=1)<<5));
+ SetDParam(6, i->pct_transported[0] * 100 >> 8);
+ SetDParam(7, i->pct_transported[1] * 100 >> 8);
DrawString(4, 28+n*10, STR_INDUSTRYDIR_ITEM_TWO, 0);
} else {
- SET_DPARAM16(4, i->pct_transported[0] * 100 >> 8);
+ SetDParam(4, i->pct_transported[0] * 100 >> 8);
DrawString(4, 28+n*10, STR_INDUSTRYDIR_ITEM, 0);
}
} else {
diff --git a/intro_gui.c b/intro_gui.c
index 750ffb16b..0048ca39d 100644
--- a/intro_gui.c
+++ b/intro_gui.c
@@ -44,7 +44,7 @@ static void SelectGameWndProc(Window *w, WindowEvent *e) {
case WE_PAINT:
w->click_state = (w->click_state & ~(0xC0) & ~(0xF << 12)) | (1 << (_new_opt.landscape+12)) | (!_networking?(1<<6):(1<<7));
w->disabled_state = _networking ? 0x30 : 0;
- SET_DPARAM16(0, STR_6801_EASY + _new_opt.diff_level);
+ SetDParam(0, STR_6801_EASY + _new_opt.diff_level);
DrawWindowWidgets(w);
break;
@@ -190,15 +190,15 @@ static void AskAbandonGameWndProc(Window *w, WindowEvent *e) {
case WE_PAINT:
DrawWindowWidgets(w);
#if defined(_WIN32)
- SET_DPARAM16(0, STR_0133_WINDOWS);
+ SetDParam(0, STR_0133_WINDOWS);
#elif defined(__APPLE__)
- SET_DPARAM16(0, STR_0135_OSX);
+ SetDParam(0, STR_0135_OSX);
#elif defined(__BEOS__)
- SET_DPARAM16(0, STR_OSNAME_BEOS);
+ SetDParam(0, STR_OSNAME_BEOS);
#elif defined(__MORPHOS__)
- SET_DPARAM16(0, STR_OSNAME_MORPHOS);
+ SetDParam(0, STR_OSNAME_MORPHOS);
#else
- SET_DPARAM16(0, STR_0134_UNIX);
+ SetDParam(0, STR_0134_UNIX);
#endif
DrawStringMultiCenter(0x5A, 0x26, STR_00CA_ARE_YOU_SURE_YOU_WANT_TO, 178);
return;
diff --git a/main_gui.c b/main_gui.c
index 92874db04..0fec015fe 100644
--- a/main_gui.c
+++ b/main_gui.c
@@ -282,7 +282,7 @@ void ShowRenameWaypointWindow(Waypoint *cp)
int id = cp - _waypoints;
_rename_id = id;
_rename_what = 1;
- SET_DPARAM16(0, id);
+ SetDParam(0, id);
ShowQueryString(STR_WAYPOINT_RAW, STR_EDIT_WAYPOINT_NAME, 30, 180, 1, 0);
}
@@ -517,9 +517,9 @@ static void PlayerMenuWndProc(Window *w, WindowEvent *e)
}
DrawSprite( ((p->player_color + 0x307)<<16)+0x82EB, x+2, y+1);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, GetPlayerNameString(p->index, 3));
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, GetPlayerNameString(p->index, 3));
color = (byte)((p->index==sel) ? 0xC : 0x10);
if (chk&1) color = 14;
@@ -1525,7 +1525,7 @@ static void ScenEditIndustryWndProc(Window *w, WindowEvent *e)
// Show error if no town exists at all
type = _industry_type_to_place;
if (!AnyTownExists()) {
- SET_DPARAM16(0, type + STR_4802_COAL_MINE);
+ SetDParam(0, type + STR_4802_COAL_MINE);
ShowErrorMessage(STR_0286_MUST_BUILD_TOWN_FIRST,STR_0285_CAN_T_BUILD_HERE,e->place.pt.x, e->place.pt.y);
return;
}
@@ -1534,7 +1534,7 @@ static void ScenEditIndustryWndProc(Window *w, WindowEvent *e)
_generating_world = true;
_ignore_restrictions = true;
if (!TryBuildIndustry(e->place.tile,type)) {
- SET_DPARAM16(0, type + STR_4802_COAL_MINE);
+ SetDParam(0, type + STR_4802_COAL_MINE);
ShowErrorMessage(_error_message, STR_0285_CAN_T_BUILD_HERE,e->place.pt.x, e->place.pt.y);
}
_ignore_restrictions = false;
@@ -1888,10 +1888,10 @@ static void ScenEditToolbarWndProc(Window *w, WindowEvent *e)
DrawWindowWidgets(w);
- SET_DPARAM16(0, _date);
+ SetDParam(0, _date);
DrawStringCentered(298, 6, STR_00AF, 0);
- SET_DPARAM16(0, _date);
+ SetDParam(0, _date);
DrawStringCentered(161, 1, STR_0221_OPENTTD, 0);
DrawStringCentered(161, 11,STR_0222_SCENARIO_EDITOR, 0);
@@ -2011,14 +2011,14 @@ static void StatusBarWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT:
DrawWindowWidgets(w);
- SET_DPARAM16(0, _date);
+ SetDParam(0, _date);
DrawStringCentered(70, 1, ((_pause||_patches.status_long_date)?STR_00AF:STR_00AE), 0);
p = _local_player == OWNER_SPECTATOR ? NULL : DEREF_PLAYER(_local_player);
if (p) {
// Draw player money
- SET_DPARAM64(0, p->money64);
+ SetDParam64(0, p->money64);
DrawStringCentered(570, 1, p->player_money >= 0 ? STR_0004 : STR_0005, 0);
}
@@ -2034,8 +2034,8 @@ static void StatusBarWndProc(Window *w, WindowEvent *e)
} else {
if (p) {
// This is the default text
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
DrawStringCentered(320, 1, STR_02BA, 0);
}
}
diff --git a/misc_cmd.c b/misc_cmd.c
index f907df5c0..e62a98741 100644
--- a/misc_cmd.c
+++ b/misc_cmd.c
@@ -60,7 +60,7 @@ int32 CmdIncreaseLoan(int x, int y, uint32 flags, uint32 p1, uint32 p2)
p = DEREF_PLAYER(p1);
if (p->current_loan >= _economy.max_loan) {
- SET_DPARAM32(0, _economy.max_loan);
+ SetDParam(0, _economy.max_loan);
return_cmd_error(STR_702B_MAXIMUM_PERMITTED_LOAN);
}
@@ -106,7 +106,7 @@ int32 CmdDecreaseLoan(int x, int y, uint32 flags, uint32 p1, uint32 p2)
}
if (p->player_money < size) {
- SET_DPARAM32(0, size);
+ SetDParam(0, size);
return_cmd_error(STR_702E_REQUIRED);
}
@@ -174,7 +174,7 @@ int32 CmdChangePresidentName(int x, int y, uint32 flags, uint32 p1, uint32 p2)
static void UpdateSignVirtCoords(SignStruct *ss)
{
Point pt = RemapCoords(ss->x, ss->y, ss->z);
- SET_DPARAM16(0, ss->str);
+ SetDParam(0, ss->str);
UpdateViewportSignPos(&ss->sign, pt.x, pt.y - 6, STR_2806);
}
diff --git a/misc_gui.c b/misc_gui.c
index fe3569c01..ecde8b78c 100644
--- a/misc_gui.c
+++ b/misc_gui.c
@@ -29,45 +29,43 @@ static void LandInfoWndProc(Window *w, WindowEvent *e)
{
LandInfoData *lid;
StringID str;
- uint32 *b;
if (e->event == WE_PAINT) {
+ int idx = 0;
int i;
DrawWindowWidgets(w);
lid = WP(w,void_d).data;
- SET_DPARAM32(0, lid->td.dparam[0]);
+ SetDParam(0, lid->td.dparam[0]);
DrawStringCentered(140, 16, lid->td.str, 13);
- SET_DPARAM16(0, STR_01A6_N_A);
+ SetDParam(0, STR_01A6_N_A);
if (lid->td.owner != OWNER_NONE && lid->td.owner != OWNER_WATER)
GetNameOfOwner(lid->td.owner, lid->tile);
DrawStringCentered(140, 27, STR_01A7_OWNER, 0);
str = STR_01A4_COST_TO_CLEAR_N_A;
if (lid->costclear != CMD_ERROR) {
- SET_DPARAM32(0, lid->costclear);
+ SetDParam(0, lid->costclear);
str = STR_01A5_COST_TO_CLEAR;
}
DrawStringCentered(140, 38, str, 0);
snprintf(_userstring, USERSTRING_LEN, "%.4X", lid->tile);
- SET_DPARAM16(0, GET_TILE_X(lid->tile));
- SET_DPARAM16(1, GET_TILE_Y(lid->tile));
- SET_DPARAM16(2, STR_SPEC_USERSTRING);
+ SetDParam(0, GET_TILE_X(lid->tile));
+ SetDParam(1, GET_TILE_Y(lid->tile));
+ SetDParam(2, STR_SPEC_USERSTRING);
DrawStringCentered(140, 49, STR_LANDINFO_COORDS, 0);
- SET_DPARAM16(0, STR_01A9_NONE);
+ SetDParam(0, STR_01A9_NONE);
if (lid->town != NULL) {
- SET_DPARAM16(0, lid->town->townnametype);
- SET_DPARAM32(1, lid->town->townnameparts);
+ SetDParam(0, lid->town->townnametype);
+ SetDParam(1, lid->town->townnameparts);
}
DrawStringCentered(140,60, STR_01A8_LOCAL_AUTHORITY, 0);
- b = &GET_DPARAM(0);
-
str = STR_01CE_CARGO_ACCEPTED - 1;
/* XXX if a tile accepts more cargo types than there are template strings
@@ -75,12 +73,10 @@ static void LandInfoWndProc(Window *w, WindowEvent *e)
for (i = 0; i < NUM_CARGO; ++i) {
if (lid->ac[i] > 0) {
if (lid->ac[i] < 8) {
- SET_DPARAMX16(b, 0, STR_01D1_8);
- SET_DPARAMX8(b, 1, lid->ac[i]);
- b += 2;
+ SetDParam(idx++, STR_01D1_8);
+ SetDParam(idx++, lid->ac[i]);
}
- SET_DPARAMX16(b, 0, _cargoc.names_s[i]);
- b++;
+ SetDParam(idx++, _cargoc.names_s[i]);
str++;
}
}
@@ -89,7 +85,7 @@ static void LandInfoWndProc(Window *w, WindowEvent *e)
DrawStringMultiCenter(140, 76, str, 276);
if (lid->td.build_date != 0) {
- SET_DPARAM16(0,lid->td.build_date);
+ SetDParam(0,lid->td.build_date);
DrawStringCentered(140,71, STR_BUILD_DATE, 0);
}
}
@@ -413,7 +409,7 @@ static void ErrmsgWndProc(Window *w, WindowEvent *e)
_errmsg_message_1,
238);
} else {
- Player *p = DEREF_PLAYER(GET_DPARAMX8(_errmsg_decode_params,2));
+ Player *p = DEREF_PLAYER(GetDParamX(_errmsg_decode_params,2));
DrawPlayerFace(p->face, p->player_color, 2, 16);
DrawStringMultiCenter(
@@ -476,7 +472,7 @@ void ShowErrorMessage(StringID msg_1, StringID msg_2, int x, int y)
if (!_errmsg_duration)
return;
- if (_errmsg_message_1 != STR_013B_OWNED_BY || GET_DPARAMX8(_errmsg_decode_params,2) >= 8) {
+ if (_errmsg_message_1 != STR_013B_OWNED_BY || GetDParamX(_errmsg_decode_params,2) >= 8) {
if ( (x|y) != 0) {
pt = RemapCoords2(x, y);
@@ -522,7 +518,7 @@ void ShowEstimatedCostOrIncome(int32 cost, int x, int y)
cost = -cost;
msg = STR_0807_ESTIMATED_INCOME;
}
- SET_DPARAM32(0, cost);
+ SetDParam(0, cost);
ShowErrorMessage(-1, msg, x, y);
}
@@ -536,7 +532,7 @@ void ShowCostOrIncomeAnimation(int x, int y, int z, int32 cost)
cost = -cost;
msg = STR_0803_INCOME;
}
- SET_DPARAM32(0, cost);
+ SetDParam(0, cost);
AddTextEffect(msg, pt.x, pt.y, 0x250);
}
@@ -772,7 +768,7 @@ static void QueryStringWndProc(Window *w, WindowEvent *e)
case WE_PAINT: {
// int x;
- SET_DPARAM16(0, WP(w,querystr_d).caption);
+ SetDParam(0, WP(w,querystr_d).caption);
DrawWindowWidgets(w);
DrawEditBox(w, 5);
@@ -999,9 +995,9 @@ static void MakeSortedSaveGameList()
static void GenerateFileName(void)
{
const Player *p = DEREF_PLAYER(_local_player);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, _date);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, _date);
GetString(_edit_str_buf, STR_4004);
}
@@ -1475,14 +1471,14 @@ static void CheatsWndProc(Window *w, WindowEvent *e)
if (ce->type == CE_BOOL) {
DrawFrameRect(x+20, y+1, x+30+9, y+9, (*(bool*)ce->variable)?6:4, (*(bool*)ce->variable)?0x20:0);
- SET_DPARAM16(0, *(bool*)ce->variable ? STR_CONFIG_PATCHES_ON : STR_CONFIG_PATCHES_OFF);
+ SetDParam(0, *(bool*)ce->variable ? STR_CONFIG_PATCHES_ON : STR_CONFIG_PATCHES_OFF);
} else if (ce->type == CE_CLICK) {
DrawFrameRect(x+20, y+1, x+30+9, y+9, 0, (WP(w,def_d).data_1==i*2+1)?0x20:0x00);
if(i==0)
- SET_DPARAM64(0, (int64) 10000000);
+ SetDParam64(0, (int64) 10000000);
else
- SET_DPARAM16(0, false);
+ SetDParam(0, false);
} else {
DrawFrameRect(x+20, y+1, x+20+9, y+9, 3, clk == i*2+1 ? 0x20 : 0);
@@ -1496,11 +1492,11 @@ static void CheatsWndProc(Window *w, WindowEvent *e)
if(ce->str==STR_CHEAT_SWITCH_CLIMATE)
val += STR_TEMPERATE_LANDSCAPE;
- SET_DPARAM16(0, val);
+ SetDParam(0, val);
// display date for change date cheat
if(ce->str==STR_CHEAT_CHANGE_DATE)
- SET_DPARAM16(0, _date);
+ SetDParam(0, _date);
// draw colored flag for change player cheat
if(ce->str==STR_CHEAT_CHANGE_PLAYER)
diff --git a/music_gui.c b/music_gui.c
index 7994b4d65..3d1edc258 100644
--- a/music_gui.c
+++ b/music_gui.c
@@ -204,13 +204,13 @@ static void MusicTrackSelectionWndProc(Window *w, WindowEvent *e)
DrawStringCentered(92, 15, STR_01EE_TRACK_INDEX, 0);
- SET_DPARAM16(0, STR_01D5_ALL + msf.playlist);
+ SetDParam(0, STR_01D5_ALL + msf.playlist);
DrawStringCentered(340, 15, STR_01EF_PROGRAM, 0);
for(i=1; (uint)i <= NUM_SONGS_AVAILABLE; i++) {
- SET_DPARAM16(0, i);
- SET_DPARAM16(2, i);
- SET_DPARAM16(1, SPECSTR_SONGNAME);
+ SetDParam(0, i);
+ SetDParam(2, i);
+ SetDParam(1, SPECSTR_SONGNAME);
DrawString(4, 23+(i-1)*6, (i < 10) ? STR_01EC_0 : STR_01ED, 0);
}
@@ -223,9 +223,9 @@ static void MusicTrackSelectionWndProc(Window *w, WindowEvent *e)
y = 23;
for(p = _playlists[msf.playlist],i=0; (i=*p) != 0; p++) {
- SET_DPARAM16(0, i);
- SET_DPARAM16(2, i);
- SET_DPARAM16(1, SPECSTR_SONGNAME);
+ SetDParam(0, i);
+ SetDParam(2, i);
+ SetDParam(1, SPECSTR_SONGNAME);
DrawString(252, y, (i < 10) ? STR_01EC_0 : STR_01ED, 0);
y += 6;
}
@@ -333,7 +333,7 @@ static void MusicWindowWndProc(Window *w, WindowEvent *e)
str = STR_01E3;
if (_song_is_active != 0 && _music_wnd_cursong != 0) {
str = STR_01E4_0;
- SET_DPARAM8(0, _music_wnd_cursong);
+ SetDParam(0, _music_wnd_cursong);
if (_music_wnd_cursong >= 10)
str = STR_01E5;
}
@@ -342,8 +342,8 @@ static void MusicWindowWndProc(Window *w, WindowEvent *e)
str = STR_01E6;
if (_song_is_active != 0 && _music_wnd_cursong != 0) {
str = STR_01E7;
- SET_DPARAM16(0, SPECSTR_SONGNAME);
- SET_DPARAM16(1, _music_wnd_cursong);
+ SetDParam(0, SPECSTR_SONGNAME);
+ SetDParam(1, _music_wnd_cursong);
}
DrawStringCentered(155, 46, str, 0);
diff --git a/network.c b/network.c
index c249e1b86..a2ca962f4 100644
--- a/network.c
+++ b/network.c
@@ -1127,7 +1127,7 @@ bool NetworkCheckClientReady()
ready_all = ready_all && (cs->ready || cs->inactive || (cs->xmitpos>0));
if (!cs->ready) cs->timeout-=1;
if (cs->timeout == 0) {
- SET_DPARAM16(0,count);
+ SetDParam(0,count);
ShowErrorMessage(-1,STR_NETWORK_ERR_TIMEOUT,0,0);
CloseClient(cs);
}
diff --git a/network_gui.c b/network_gui.c
index 6f2e3ad1b..e924e8b72 100644
--- a/network_gui.c
+++ b/network_gui.c
@@ -47,8 +47,8 @@ static void NetworkGameWindowWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT: {
- SET_DPARAM16(0, 0x00);
- SET_DPARAM16(2, STR_NETWORK_LAN + _network_connection);
+ SetDParam(0, 0x00);
+ SetDParam(2, STR_NETWORK_LAN + _network_connection);
DrawWindowWidgets(w);
DrawEditBox(w, 6);
@@ -70,8 +70,8 @@ static void NetworkGameWindowWndProc(Window *w, WindowEvent *e)
DoDrawString(cur_item->item.server_name, 15, y, 16); // server name
- SET_DPARAM8(0, cur_item->item.players_on);
- SET_DPARAM8(1, cur_item->item.players_max);
+ SetDParam(0, cur_item->item.players_on);
+ SetDParam(1, cur_item->item.players_max);
DrawString(238, y, STR_NETWORK_PLAYERS_VAL, 2); // #/#
DoDrawString(cur_item->item.map_name, 288, y, 16); // map size
@@ -268,7 +268,7 @@ static void NetworkStartServerWindowWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT: {
- SET_DPARAM16(7, STR_NETWORK_2_PLAYERS + _players_max);
+ SetDParam(7, STR_NETWORK_2_PLAYERS + _players_max);
DrawWindowWidgets(w);
GfxFillRect(11, 63, 237, 168, 0xD7);
@@ -389,7 +389,7 @@ static void NetworkLobbyWindowWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT: {
- SET_DPARAM16(7, STR_NETWORK_2_PLAYERS + _opt_mod_ptr->road_side);
+ SetDParam(7, STR_NETWORK_2_PLAYERS + _opt_mod_ptr->road_side);
DrawWindowWidgets(w);
GfxFillRect( 11, 31, 239, 239, 0xD7);
diff --git a/news_gui.c b/news_gui.c
index b5a0e059e..632c53632 100644
--- a/news_gui.c
+++ b/news_gui.c
@@ -108,7 +108,7 @@ static void NewsWindowProc(Window *w, WindowEvent *e)
DrawString(2, 1, STR_00C6, 0);
- SET_DPARAM16(0, ni->date);
+ SetDParam(0, ni->date);
DrawStringRightAligned(428, 1, STR_01FF, 0);
if (!(ni->flags & NF_VIEWPORT)) {
@@ -547,7 +547,7 @@ static void MessageHistoryWndProc(Window *w, WindowEvent *e)
// get news in correct order
ni = &_news_items[getNews(p)];
- SET_DPARAM16(0, ni->date);
+ SetDParam(0, ni->date);
DrawString(4, y, STR_00AF, 16);
GetNewsString(ni, buffer);
diff --git a/order_cmd.c b/order_cmd.c
index d63f3f8c5..96e39d0e2 100644
--- a/order_cmd.c
+++ b/order_cmd.c
@@ -406,7 +406,7 @@ int CheckOrders(Vehicle *v)
if ( (n_st < 2) && (problem_type == -1) ) problem_type = 0;
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
message = (STR_TRAIN_HAS_TOO_FEW_ORDERS) + (((v->type) - VEH_Train) << 2) + problem_type;
diff --git a/order_gui.c b/order_gui.c
index 3dcc5f4bd..956a1cecc 100644
--- a/order_gui.c
+++ b/order_gui.c
@@ -60,13 +60,13 @@ static void DrawOrdersWindow(Window *w)
sel = OrderGetSel(w);
- SET_DPARAM16(2,STR_8827_FULL_LOAD);
+ SetDParam(2,STR_8827_FULL_LOAD);
switch(v->schedule_ptr[sel] & 0x1F) {
case OT_GOTO_STATION:
break;
case OT_GOTO_DEPOT:
SETBIT(w->disabled_state, 9); /* unload */
- SET_DPARAM16(2,STR_SERVICE);
+ SetDParam(2,STR_SERVICE);
break;
default:
SETBIT(w->disabled_state, 6); /* nonstop */
@@ -74,8 +74,8 @@ static void DrawOrdersWindow(Window *w)
SETBIT(w->disabled_state, 9); /* unload */
}
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
y = 15;
@@ -91,18 +91,18 @@ static void DrawOrdersWindow(Window *w)
if (ord == 0) {
str = shared_schedule ? STR_END_OF_SHARED_ORDERS : STR_882A_END_OF_ORDERS;
} else {
- SET_DPARAM16(1, 6);
+ SetDParam(1, 6);
if ( (ord & OT_MASK) == OT_GOTO_STATION) {
- SET_DPARAM16(1, STR_8806_GO_TO + ((ord >> 5) & 7));
- SET_DPARAM16(2, ord >> 8);
+ SetDParam(1, STR_8806_GO_TO + ((ord >> 5) & 7));
+ SetDParam(2, ord >> 8);
} else if ((ord & OT_MASK) == OT_GOTO_DEPOT) {
StringID s = STR_NULL;
if (v->type == VEH_Aircraft) {
s = STR_GO_TO_AIRPORT_HANGAR;
- SET_DPARAM16(2, ord>>8);
+ SetDParam(2, ord>>8);
} else {
- SET_DPARAM16(2, _depots[ord >> 8].town_index);
+ SetDParam(2, _depots[ord >> 8].town_index);
switch (v->type) {
case VEH_Train: s = STR_880E_GO_TO_TRAIN_DEPOT; break;
case VEH_Road: s = STR_9038_GO_TO_ROADVEH_DEPOT; break;
@@ -111,20 +111,20 @@ static void DrawOrdersWindow(Window *w)
}
if (v->type == VEH_Train)
s += (ord>>6)&2;
- SET_DPARAM16(1, s + ((ord>>6)&1) );
+ SetDParam(1, s + ((ord>>6)&1) );
} else if ((ord & OT_MASK) == OT_GOTO_WAYPOINT) {
- SET_DPARAM16(2, ord >> 8);
- SET_DPARAM16(1, STR_GO_TO_WAYPOINT);
+ SetDParam(2, ord >> 8);
+ SetDParam(1, STR_GO_TO_WAYPOINT);
}
}
{
byte color = (i == WP(w,order_d).sel) ? 0xC : 0x10;
- SET_DPARAM(0, i+1);
+ SetDParam(0, i+1);
if ((ord & OT_MASK) != OT_DUMMY) {
DrawString(2, y, str, color);
} else {
- SET_DPARAM16(1, STR_INVALID_ORDER);
- SET_DPARAM16(2, ord >> 8);
+ SetDParam(1, STR_INVALID_ORDER);
+ SetDParam(2, ord >> 8);
DrawString(2, y, str, color);
}
}
diff --git a/player_gui.c b/player_gui.c
index 61a2a02e5..2a54501f7 100644
--- a/player_gui.c
+++ b/player_gui.c
@@ -33,7 +33,7 @@ static void DrawPlayerEconomyStats(Player *p, byte mode)
tbl = p->yearly_expenses + 2;
do {
if (year >= p->inaugurated_year) {
- SET_DPARAM16(0, year + 1920);
+ SetDParam(0, year + 1920);
DrawStringCenterUnderline(x-17, 15, STR_7010, 0);
sum = 0;
for(i=0; i!=13; i++) {
@@ -44,14 +44,14 @@ static void DrawPlayerEconomyStats(Player *p, byte mode)
str = STR_701E;
if (cost < 0) { cost = -cost; str++; }
- SET_DPARAM64(0, cost);
+ SetDParam64(0, cost);
DrawStringRightAligned(x, 27+i*10, str, 0);
}
}
str = STR_701E;
if (sum < 0) { sum = -sum; str++; }
- SET_DPARAM64(0, sum);
+ SetDParam64(0, sum);
DrawStringRightAligned(x, 27 + 13*10 + 2, str, 0);
GfxFillRect(x - 75, 27 + 10*13, x, 27 + 10*13, 215);
@@ -64,27 +64,27 @@ static void DrawPlayerEconomyStats(Player *p, byte mode)
y = 171;
// draw max loan aligned to loan below (y += 10)
- SET_DPARAM64(0, (uint64)_economy.max_loan);
+ SetDParam64(0, (uint64)_economy.max_loan);
DrawString(202, y+10, STR_MAX_LOAN, 0);
} else
y = 15;
DrawString(2, y, STR_7026_BANK_BALANCE, 0);
- SET_DPARAM64(0, p->money64);
+ SetDParam64(0, p->money64);
DrawStringRightAligned(182, y, STR_7028, 0);
y += 10;
DrawString(2, y, STR_7027_LOAN, 0);
- SET_DPARAM64(0, p->current_loan);
+ SetDParam64(0, p->current_loan);
DrawStringRightAligned(182, y, STR_7028, 0);
y += 12;
GfxFillRect(182 - 75, y-2, 182, y-2, 215);
- SET_DPARAM64(0, p->money64 - p->current_loan);
+ SetDParam64(0, p->money64 - p->current_loan);
DrawStringRightAligned(182, y, STR_7028, 0);
}
@@ -137,10 +137,10 @@ static void PlayerFinancesWndProc(Window *w, WindowEvent *e)
w->disabled_state = p->current_loan != 0 ? 0 : (1 << 6);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, GetPlayerNameString((byte)w->window_number, 3));
- SET_DPARAM32(4, 10000);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, GetPlayerNameString((byte)w->window_number, 3));
+ SetDParam(4, 10000);
DrawWindowWidgets(w);
DrawPlayerEconomyStats(p, (byte)WP(w,def_d).data_1);
@@ -419,25 +419,25 @@ static void DrawPlayerVehiclesAmount(int player)
DrawString(x+70, y, STR_7042_NONE, 0);
} else {
if (train != 0) {
- SET_DPARAM16(0, train);
+ SetDParam(0, train);
DrawString(x + 70, y, train==1 ? STR_703A_TRAIN : STR_703B_TRAINS, 0);
y += 10;
}
if (road != 0) {
- SET_DPARAM16(0, road);
+ SetDParam(0, road);
DrawString(x + 70, y, road==1 ? STR_703C_ROAD_VEHICLE : STR_703D_ROAD_VEHICLES, 0);
y += 10;
}
if (air != 0) {
- SET_DPARAM16(0, air);
+ SetDParam(0, air);
DrawString(x + 70, y, air==1 ? STR_703E_AIRCRAFT : STR_703F_AIRCRAFT, 0);
y += 10;
}
if (ship != 0) {
- SET_DPARAM16(0, ship);
+ SetDParam(0, ship);
DrawString(x + 70, y, ship==1 ? STR_7040_SHIP : STR_7041_SHIPS, 0);
}
}
@@ -461,9 +461,9 @@ static void DrawCompanyOwnerText(Player *p)
if ((amt=GetAmountOwnedBy(p, p2->index)) != 0) {
num++;
- SET_DPARAM16(num*3+0, amt*25);
- SET_DPARAM16(num*3+1, p2->name_1);
- SET_DPARAM32(num*3+2, p2->name_2);
+ SetDParam(num*3+0, amt*25);
+ SetDParam(num*3+1, p2->name_1);
+ SetDParam(num*3+2, p2->name_2);
if (num != 0)
break;
@@ -484,9 +484,9 @@ static void PlayerCompanyWndProc(Window *w, WindowEvent *e)
if (w->widget != _other_player_company_widgets)
w->widget = (p->location_of_house != 0) ? _my_player_company_bh_widgets : _my_player_company_widgets;
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, GetPlayerNameString((byte)w->window_number, 3));
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, GetPlayerNameString((byte)w->window_number, 3));
dis = 0;
if (GetAmountOwnedBy(p, 0xFF) == 0) dis |= 1 << 9;
@@ -495,7 +495,7 @@ static void PlayerCompanyWndProc(Window *w, WindowEvent *e)
w->disabled_state = dis;
DrawWindowWidgets(w);
- SET_DPARAM16(0, p->inaugurated_year + 1920);
+ SetDParam(0, p->inaugurated_year + 1920);
DrawString(110, 25, STR_7038_INAUGURATED, 0);
DrawPlayerVehiclesAmount(w->window_number);
@@ -505,11 +505,11 @@ static void PlayerCompanyWndProc(Window *w, WindowEvent *e)
DrawPlayerFace(p->face, p->player_color, 2, 16);
- SET_DPARAM16(0, p->president_name_1);
- SET_DPARAM32(1, p->president_name_2);
+ SetDParam(0, p->president_name_1);
+ SetDParam(1, p->president_name_2);
DrawStringMultiCenter(48, 141, STR_7037_PRESIDENT, 94);
- SET_DPARAM64(0, CalculateCompanyValue(p));
+ SetDParam64(0, CalculateCompanyValue(p));
DrawString(110, 114, STR_7076_COMPANY_VALUE, 0);
DrawCompanyOwnerText(p);
@@ -537,14 +537,14 @@ static void PlayerCompanyWndProc(Window *w, WindowEvent *e)
case 5: {/* change president name */
Player *p = DEREF_PLAYER(w->window_number);
WP(w,def_d).byte_1 = 0;
- SET_DPARAM32(0, p->president_name_2);
+ SetDParam(0, p->president_name_2);
ShowQueryString(p->president_name_1, STR_700B_PRESIDENT_S_NAME, 31, 94, w->window_class, w->window_number);
} break;
case 6: {/* change company name */
Player *p = DEREF_PLAYER(w->window_number);
WP(w,def_d).byte_1 = 1;
- SET_DPARAM32(0, p->name_2);
+ SetDParam(0, p->name_2);
ShowQueryString(p->name_1, STR_700A_COMPANY_NAME, 31, 150, w->window_class, w->window_number);
} break;
@@ -641,15 +641,15 @@ static void BuyCompanyWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT: {
Player *p = DEREF_PLAYER(w->window_number);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
DrawWindowWidgets(w);
DrawPlayerFace(p->face, p->player_color, 2, 16);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM32(2, p->bankrupt_value);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, p->bankrupt_value);
DrawStringMultiCenter(214, 65, STR_705B_WE_ARE_LOOKING_FOR_A_TRANSPORT, 238);
break;
}
diff --git a/players.c b/players.c
index d72983f1a..2f0c193f1 100644
--- a/players.c
+++ b/players.c
@@ -188,7 +188,7 @@ bool CheckPlayerHasMoney(int32 cost)
if (cost > 0) {
uint pid = _current_player;
if (pid < MAX_PLAYERS && cost > DEREF_PLAYER(pid)->player_money) {
- SET_DPARAM32(0, cost);
+ SetDParam(0, cost);
_error_message = STR_0003_NOT_ENOUGH_CASH_REQUIRES;
return false;
}
@@ -243,20 +243,20 @@ void UpdatePlayerMoney32(Player *p)
void GetNameOfOwner(byte owner, uint tile)
{
- SET_DPARAM8(2, owner);
+ SetDParam(2, owner);
if (owner != OWNER_TOWN) {
if (owner >= 8)
- SET_DPARAM16(0, STR_0150_SOMEONE);
+ SetDParam(0, STR_0150_SOMEONE);
else {
Player *p = DEREF_PLAYER(owner);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
}
} else {
Town *t = ClosestTownFromTile(tile, (uint)-1);
- SET_DPARAM16(0, t->townnametype);
- SET_DPARAM32(1, t->townnameparts);
+ SetDParam(0, t->townnametype);
+ SetDParam(1, t->townnameparts);
}
}
@@ -326,7 +326,7 @@ set_name:;
MarkWholeScreenDirty();
if (!IS_HUMAN_PLAYER(p->index)) {
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
AddNewsItem(p->index + (4 << 4), NEWS_FLAGS(NM_CALLBACK, NF_TILE, NT_COMPANY_INFO, DNC_BANKRUPCY), p->last_build_coordinate, 0);
}
return;
@@ -425,14 +425,14 @@ restart:;
p->president_name_2 = Random();
p->president_name_1 = SPECSTR_PRESIDENT_NAME;
- SET_DPARAM32(0, p->president_name_2);
+ SetDParam(0, p->president_name_2);
GetString(buffer, p->president_name_1);
if (strlen(buffer) >= 32 || GetStringWidth(buffer) >= 94)
continue;
FOR_ALL_PLAYERS(pp) {
if (pp->is_active && p != pp) {
- SET_DPARAM32(0, pp->president_name_2);
+ SetDParam(0, pp->president_name_2);
GetString(buffer2, pp->president_name_1);
if (str_eq(buffer2, buffer))
goto restart;
@@ -567,7 +567,7 @@ void RunOtherPlayersLoop()
StringID GetPlayerNameString(byte player, byte index)
{
if (IS_HUMAN_PLAYER(player) && player < MAX_PLAYERS) {
- SET_DPARAM16(index, player+1);
+ SetDParam(index, player+1);
return STR_7002_PLAYER;
}
return STR_EMPTY;
diff --git a/road_cmd.c b/road_cmd.c
index 0f4271c75..75426cb55 100644
--- a/road_cmd.c
+++ b/road_cmd.c
@@ -106,7 +106,7 @@ static bool CheckAllowRemoveRoad(uint tile, uint br, bool *edge_road)
return true;
t = ClosestTownFromTile(tile, (uint)-1);
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
_error_message = STR_2009_LOCAL_AUTHORITY_REFUSES;
return false;
}
diff --git a/roadveh_cmd.c b/roadveh_cmd.c
index bf1c4d4a4..920ff8065 100644
--- a/roadveh_cmd.c
+++ b/roadveh_cmd.c
@@ -87,12 +87,12 @@ void DrawRoadVehEngine(int x, int y, int engine, uint32 image_ormod)
void DrawRoadVehEngineInfo(int engine, int x, int y, int maxw)
{
- SET_DPARAM32(0, ((_price.roadveh_base >> 3) * road_vehicle_info(engine)->base_cost) >> 5);
- SET_DPARAM16(1, road_vehicle_info(engine)->max_speed * 10 >> 5);
- SET_DPARAM32(2, road_vehicle_info(engine)->running_cost * _price.roadveh_running >> 8);
+ SetDParam(0, ((_price.roadveh_base >> 3) * road_vehicle_info(engine)->base_cost) >> 5);
+ SetDParam(1, road_vehicle_info(engine)->max_speed * 10 >> 5);
+ SetDParam(2, road_vehicle_info(engine)->running_cost * _price.roadveh_running >> 8);
- SET_DPARAM16(4, road_vehicle_info(engine)->capacity);
- SET_DPARAM16(3, _cargoc.names_long_p[road_vehicle_info(engine)->cargo_type]);
+ SetDParam(4, road_vehicle_info(engine)->capacity);
+ SetDParam(3, _cargoc.names_long_p[road_vehicle_info(engine)->cargo_type]);
DrawStringMultiCenter(x, y, STR_902A_COST_SPEED_RUNNING_COST, maxw);
}
@@ -491,7 +491,7 @@ static void RoadVehCrash(Vehicle *v)
if (v->cargo_type == 0)
pass += v->cargo_count;
v->cargo_count = 0;
- SET_DPARAM16(0, pass);
+ SetDParam(0, pass);
AddNewsItem(STR_9031_ROAD_VEHICLE_CRASH_DRIVER+(pass!=1),
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ACCIDENT, 0),
@@ -703,7 +703,7 @@ static void RoadVehArrivesAt(Vehicle *v, Station *st)
uint32 flags;
st->had_vehicle_of_type |= HVOT_BUS;
- SET_DPARAM16(0, st->index);
+ SetDParam(0, st->index);
flags = (v->owner == _local_player) ? NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_PLAYER, 0) : NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_OTHER, 0);
AddNewsItem(
STR_902F_CITIZENS_CELEBRATE_FIRST,
@@ -717,7 +717,7 @@ static void RoadVehArrivesAt(Vehicle *v, Station *st)
uint32 flags;
st->had_vehicle_of_type |= HVOT_TRUCK;
- SET_DPARAM16(0, st->index);
+ SetDParam(0, st->index);
flags = (v->owner == _local_player) ? NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_PLAYER, 0) : NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_OTHER, 0);
AddNewsItem(
STR_9030_CITIZENS_CELEBRATE_FIRST,
@@ -1381,7 +1381,7 @@ void RoadVehEnterDepot(Vehicle *v)
else if (t & OF_FULL_LOAD) {
v->vehstatus |= VS_STOPPED;
if (v->owner == _local_player) {
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_9016_ROAD_VEHICLE_IS_WAITING,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
diff --git a/roadveh_gui.c b/roadveh_gui.c
index dd57e0f9d..994120973 100644
--- a/roadveh_gui.c
+++ b/roadveh_gui.c
@@ -35,8 +35,8 @@ static void RoadVehDetailsWndProc(Window *w, WindowEvent *e)
if (!_patches.servint_roadveh) // disable service-scroller when interval is set to disabled
w->disabled_state |= (1 << 5) | (1 << 6);
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* Draw running cost */
@@ -44,7 +44,7 @@ static void RoadVehDetailsWndProc(Window *w, WindowEvent *e)
int year = v->age / 366;
StringID str;
- SET_DPARAM16(1, year);
+ SetDParam(1, year);
str = STR_0199_YEAR;
if (year != 1) {
@@ -52,55 +52,55 @@ static void RoadVehDetailsWndProc(Window *w, WindowEvent *e)
if (v->max_age - 366 < v->age)
str++;
}
- SET_DPARAM16(0, str);
- SET_DPARAM16(2, v->max_age / 366);
- SET_DPARAM32(3, road_vehicle_info(v->engine_type)->running_cost * _price.roadveh_running >> 8);
+ SetDParam(0, str);
+ SetDParam(2, v->max_age / 366);
+ SetDParam(3, road_vehicle_info(v->engine_type)->running_cost * _price.roadveh_running >> 8);
DrawString(2, 15, STR_900D_AGE_RUNNING_COST_YR, 0);
}
/* Draw max speed */
{
- SET_DPARAM16(0, v->max_speed * 10 >> 5);
+ SetDParam(0, v->max_speed * 10 >> 5);
DrawString(2, 25, STR_900E_MAX_SPEED, 0);
}
/* Draw profit */
{
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(2, 35, STR_900F_PROFIT_THIS_YEAR_LAST_YEAR, 0);
}
/* Draw breakdown & reliability */
{
- SET_DPARAM8(0, v->reliability * 100 >> 16);
- SET_DPARAM16(1, v->breakdowns_since_last_service);
+ SetDParam(0, v->reliability * 100 >> 16);
+ SetDParam(1, v->breakdowns_since_last_service);
DrawString(2, 45, STR_9010_RELIABILITY_BREAKDOWNS, 0);
}
/* Draw service interval text */
{
- SET_DPARAM16(0, v->service_interval);
- SET_DPARAM16(1, v->date_of_last_service);
+ SetDParam(0, v->service_interval);
+ SetDParam(1, v->date_of_last_service);
DrawString(13, 90, _patches.servint_ispercent?STR_SERVICING_INTERVAL_PERCENT:STR_883C_SERVICING_INTERVAL_DAYS, 0);
}
DrawRoadVehImage(v, 3, 57, INVALID_VEHICLE);
- SET_DPARAM16(0, GetCustomEngineName(v->engine_type));
- SET_DPARAM16(1, 1920 + v->build_year);
- SET_DPARAM32(2, v->value);
+ SetDParam(0, GetCustomEngineName(v->engine_type));
+ SetDParam(1, 1920 + v->build_year);
+ SetDParam(2, v->value);
DrawString(34, 57, STR_9011_BUILT_VALUE, 0);
- SET_DPARAM16(0, _cargoc.names_long_p[v->cargo_type]);
- SET_DPARAM16(1, v->cargo_cap);
+ SetDParam(0, _cargoc.names_long_p[v->cargo_type]);
+ SetDParam(1, v->cargo_cap);
DrawString(34, 67, STR_9012_CAPACITY, 0);
str = STR_8812_EMPTY;
if (v->cargo_count != 0) {
- SET_DPARAM8(0, v->cargo_type);
- SET_DPARAM16(1, v->cargo_count);
- SET_DPARAM16(2, v->cargo_source);
+ SetDParam(0, v->cargo_type);
+ SetDParam(1, v->cargo_count);
+ SetDParam(2, v->cargo_source);
str = STR_8813_FROM;
}
DrawString(34, 78, str, 0);
@@ -109,7 +109,7 @@ static void RoadVehDetailsWndProc(Window *w, WindowEvent *e)
case WE_CLICK:
switch(e->click.widget) {
case 2: /* rename */
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
ShowQueryString(v->string_id, STR_902C_NAME_ROAD_VEHICLE, 31, 150, w->window_class, w->window_number);
break;
@@ -190,8 +190,8 @@ static void RoadVehViewWndProc(Window *w, WindowEvent *e)
w->disabled_state = (v->owner != _local_player) ? (1<<7 | 1<<6) : 0;
/* draw widgets & caption */
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* draw the flag */
@@ -206,15 +206,15 @@ static void RoadVehViewWndProc(Window *w, WindowEvent *e)
} else {
switch(v->next_order & OT_MASK) {
case OT_GOTO_STATION: {
- SET_DPARAM16(0, v->next_order_param);
- SET_DPARAM16(1, v->cur_speed * 10 >> 5);
+ SetDParam(0, v->next_order_param);
+ SetDParam(1, v->cur_speed * 10 >> 5);
str = STR_HEADING_FOR_STATION + _patches.vehicle_speed;
} break;
case OT_GOTO_DEPOT: {
Depot *dep = &_depots[v->next_order_param];
- SET_DPARAM16(0, dep->town_index);
- SET_DPARAM16(1, v->cur_speed * 10 >> 5);
+ SetDParam(0, dep->town_index);
+ SetDParam(1, v->cur_speed * 10 >> 5);
str = STR_HEADING_FOR_ROAD_DEPOT + _patches.vehicle_speed;
} break;
@@ -226,7 +226,7 @@ static void RoadVehViewWndProc(Window *w, WindowEvent *e)
default:
if (v->num_orders == 0) {
str = STR_NO_ORDERS + _patches.vehicle_speed;
- SET_DPARAM16(0, v->cur_speed * 10 >> 5);
+ SetDParam(0, v->cur_speed * 10 >> 5);
} else
str = STR_EMPTY;
break;
@@ -350,17 +350,17 @@ static void DrawNewRoadVehWindow(Window *w)
if (selected_id != -1) {
Engine *e;
- SET_DPARAM32(0, road_vehicle_info(selected_id)->base_cost * (_price.roadveh_base>>3)>>5);
- SET_DPARAM16(1, road_vehicle_info(selected_id)->max_speed * 10 >> 5);
- SET_DPARAM32(2, road_vehicle_info(selected_id)->running_cost * _price.roadveh_running >> 8);
- SET_DPARAM16(4, road_vehicle_info(selected_id)->capacity);
- SET_DPARAM16(3, _cargoc.names_long_p[road_vehicle_info(selected_id)->cargo_type]);
+ SetDParam(0, road_vehicle_info(selected_id)->base_cost * (_price.roadveh_base>>3)>>5);
+ SetDParam(1, road_vehicle_info(selected_id)->max_speed * 10 >> 5);
+ SetDParam(2, road_vehicle_info(selected_id)->running_cost * _price.roadveh_running >> 8);
+ SetDParam(4, road_vehicle_info(selected_id)->capacity);
+ SetDParam(3, _cargoc.names_long_p[road_vehicle_info(selected_id)->cargo_type]);
e = &_engines[selected_id];
- SET_DPARAM16(6, e->lifelength);
- SET_DPARAM8(7, e->reliability * 100 >> 16);
+ SetDParam(6, e->lifelength);
+ SetDParam(7, e->reliability * 100 >> 16);
ConvertDayToYMD(&ymd, e->intro_date);
- SET_DPARAM16(5, ymd.year + 1920);
+ SetDParam(5, ymd.year + 1920);
DrawString(2, 127, STR_9008_COST_SPEED_RUNNING_COST, 0);
}
@@ -494,7 +494,7 @@ static void DrawRoadDepotWindow(Window *w)
/* locate the depot struct */
for(d=_depots; d->xy != (TileIndex)tile; d++) {}
- SET_DPARAM16(0, d->town_index);
+ SetDParam(0, d->town_index);
DrawWindowWidgets(w);
x = 2;
@@ -509,7 +509,7 @@ static void DrawRoadDepotWindow(Window *w)
DrawRoadVehImage(v, x+24, y, WP(w,traindepot_d).sel);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
DrawString(x, y+2, (uint16)(v->max_age-366) >= v->age ? STR_00E2 : STR_00E3, 0);
DrawSprite( (v->vehstatus & VS_STOPPED) ? 0xC12 : 0xC13, x + 16, y);
@@ -785,9 +785,9 @@ static void PlayerRoadVehWndProc(Window *w, WindowEvent *e)
{
Player *p = DEREF_PLAYER(window_number);
/* Company Name -- (###) Roadvehicles */
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, w->vscroll.count);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, w->vscroll.count);
DrawWindowWidgets(w);
}
/* draw sorting criteria string */
@@ -812,7 +812,7 @@ static void PlayerRoadVehWndProc(Window *w, WindowEvent *e)
DrawRoadVehImage(v, x + 22, y + 6, INVALID_VEHICLE);
DrawVehicleProfitButton(v, x, y+13);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
if (IsRoadDepotTile(v->tile)) {
str = STR_021F;
} else {
@@ -820,12 +820,12 @@ static void PlayerRoadVehWndProc(Window *w, WindowEvent *e)
}
DrawString(x, y+2, str, 0);
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(x + 24, y + 18, STR_0198_PROFIT_THIS_YEAR_LAST_YEAR, 0);
if (v->string_id != STR_SV_ROADVEH_NAME) {
- SET_DPARAM16(0, v->string_id);
+ SetDParam(0, v->string_id);
DrawString(x+24, y, STR_01AB, 0);
}
diff --git a/screenshot.c b/screenshot.c
index 28ed9b394..a039c3f94 100644
--- a/screenshot.c
+++ b/screenshot.c
@@ -479,9 +479,9 @@ static char *MakeScreenshotName(const char *ext)
sprintf(_screenshot_name, "screenshot");
} else {
Player *p = &_players[_local_player];
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, _date);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, _date);
GetString(_screenshot_name, STR_4004);
}
diff --git a/settings_gui.c b/settings_gui.c
index 052296c1b..362576e54 100644
--- a/settings_gui.c
+++ b/settings_gui.c
@@ -70,16 +70,16 @@ static void GameOptionsWndProc(Window *w, WindowEvent *e)
case WE_PAINT: {
StringID str = STR_02BE_DEFAULT;
w->disabled_state = (_vehicle_design_names & 1) ? (++str, 0) : (1 << 21);
- SET_DPARAM16(0, str);
- SET_DPARAM16(1, _currency_string_list[_opt_mod_ptr->currency]);
- SET_DPARAM16(2, _opt_mod_ptr->kilometers + STR_0139_IMPERIAL_MILES);
- SET_DPARAM16(3, STR_02E9_DRIVE_ON_LEFT + _opt_mod_ptr->road_side);
- SET_DPARAM16(4, STR_TOWNNAME_ENGLISH + _opt_mod_ptr->town_name);
- SET_DPARAM16(5, _autosave_dropdown[_opt_mod_ptr->autosave]);
- SET_DPARAM16(6, SPECSTR_LANGUAGE_START + _dynlang.curr);
+ SetDParam(0, str);
+ SetDParam(1, _currency_string_list[_opt_mod_ptr->currency]);
+ SetDParam(2, _opt_mod_ptr->kilometers + STR_0139_IMPERIAL_MILES);
+ SetDParam(3, STR_02E9_DRIVE_ON_LEFT + _opt_mod_ptr->road_side);
+ SetDParam(4, STR_TOWNNAME_ENGLISH + _opt_mod_ptr->town_name);
+ SetDParam(5, _autosave_dropdown[_opt_mod_ptr->autosave]);
+ SetDParam(6, SPECSTR_LANGUAGE_START + _dynlang.curr);
i = GetCurRes();
- SET_DPARAM16(7, i == _num_resolutions ? STR_RES_OTHER : SPECSTR_RESOLUTION_START + i);
- SET_DPARAM16(8, SPECSTR_SCREENSHOT_START + _cur_screenshot_format);
+ SetDParam(7, i == _num_resolutions ? STR_RES_OTHER : SPECSTR_RESOLUTION_START + i);
+ SetDParam(8, SPECSTR_SCREENSHOT_START + _cur_screenshot_format);
(_fullscreen) ? SETBIT(w->click_state, 28) : CLRBIT(w->click_state, 28); // fullscreen button
DrawWindowWidgets(w);
@@ -352,7 +352,7 @@ static void GameDifficultyWndProc(Window *w, WindowEvent *e)
value = _game_setting_info[i].str + ((int*)&_opt_mod_temp.diff)[i];
if (i == 4) value *= 1000; // handle currency option
- SET_DPARAM32(0, value);
+ SetDParam(0, value);
DrawString(x+30, y+1, STR_6805_MAXIMUM_NO_COMPETITORS + i, 0);
y += 11;
@@ -764,7 +764,7 @@ static void PatchesSelectionWndProc(Window *w, WindowEvent *e)
bool disabled = false;
if (pe->type == PE_BOOL) {
DrawFrameRect(x+5, y+1, x+15+9, y+9, (*(bool*)pe->variable)?6:4, (*(bool*)pe->variable)?0x20:0);
- SET_DPARAM16(0, *(bool*)pe->variable ? STR_CONFIG_PATCHES_ON : STR_CONFIG_PATCHES_OFF);
+ SetDParam(0, *(bool*)pe->variable ? STR_CONFIG_PATCHES_ON : STR_CONFIG_PATCHES_OFF);
} else {
DrawFrameRect(x+5, y+1, x+5+9, y+9, 3, clk == i*2+1 ? 0x20 : 0);
DrawFrameRect(x+15, y+1, x+15+9, y+9, 3, clk == i*2+2 ? 0x20 : 0);
@@ -776,16 +776,16 @@ static void PatchesSelectionWndProc(Window *w, WindowEvent *e)
val /= GetCurrentCurrencyRate();
disabled = ((val == 0) && (pe->flags & PF_0ISDIS));
if (disabled) {
- SET_DPARAM16(0, STR_CONFIG_PATCHES_DISABLED);
+ SetDParam(0, STR_CONFIG_PATCHES_DISABLED);
} else {
- SET_DPARAM32(1, val);
+ SetDParam(1, val);
if (pe->type == PE_CURRENCY)
- SET_DPARAM16(0, STR_CONFIG_PATCHES_CURRENCY);
+ SetDParam(0, STR_CONFIG_PATCHES_CURRENCY);
else {
if (pe->flags & PF_MULTISTRING)
- SET_DPARAM16(0, pe->str + val + 1);
+ SetDParam(0, pe->str + val + 1);
else
- SET_DPARAM16(0, pe->flags & PF_NOCOMMA ? STR_CONFIG_PATCHES_INT32 : STR_7024);
+ SetDParam(0, pe->flags & PF_NOCOMMA ? STR_CONFIG_PATCHES_INT32 : STR_7024);
}
}
}
@@ -868,7 +868,7 @@ static void PatchesSelectionWndProc(Window *w, WindowEvent *e)
} else {
if (pe->type != PE_BOOL && !(pe->flags & PF_MULTISTRING)) { // do not open editbox
WP(w,def_d).data_3 = btn;
- SET_DPARAM32(0, ReadPE(pe));
+ SetDParam(0, ReadPE(pe));
ShowQueryString(STR_CONFIG_PATCHES_INT32, STR_CONFIG_PATCHES_QUERY_CAPT, 10, 100, WC_GAME_OPTIONS, 0);
}
}
diff --git a/ship_cmd.c b/ship_cmd.c
index a5e7f65a1..9e5a8b0d0 100644
--- a/ship_cmd.c
+++ b/ship_cmd.c
@@ -39,11 +39,11 @@ void DrawShipEngine(int x, int y, int engine, uint32 image_ormod)
void DrawShipEngineInfo(int engine, int x, int y, int maxw)
{
ShipVehicleInfo *svi = &ship_vehicle_info(engine);
- SET_DPARAM32(0, svi->base_cost * (_price.ship_base>>3)>>5);
- SET_DPARAM16(1, svi->max_speed * 10 >> 5);
- SET_DPARAM16(2, _cargoc.names_long_p[svi->cargo_type]);
- SET_DPARAM16(3, svi->capacity);
- SET_DPARAM32(4, svi->running_cost * _price.ship_running >> 8);
+ SetDParam(0, svi->base_cost * (_price.ship_base>>3)>>5);
+ SetDParam(1, svi->max_speed * 10 >> 5);
+ SetDParam(2, _cargoc.names_long_p[svi->cargo_type]);
+ SetDParam(3, svi->capacity);
+ SetDParam(4, svi->running_cost * _price.ship_running >> 8);
DrawStringMultiCenter(x, y, STR_982E_COST_MAX_SPEED_CAPACITY, maxw);
}
@@ -406,7 +406,7 @@ static void ShipEnterDepot(Vehicle *v)
else if (t & 0x40) {
v->vehstatus |= VS_STOPPED;
if (v->owner == _local_player) {
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_981C_SHIP_IS_WAITING_IN_DEPOT,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
@@ -423,7 +423,7 @@ static void ShipArrivesAt(Vehicle *v, Station *st)
if (!(st->had_vehicle_of_type & HVOT_SHIP)) {
uint32 flags;
st->had_vehicle_of_type |= HVOT_SHIP;
- SET_DPARAM16(0, st->index);
+ SetDParam(0, st->index);
flags = (v->owner == _local_player) ? NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_PLAYER, 0) : NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_OTHER, 0);
AddNewsItem(
STR_9833_CITIZENS_CELEBRATE_FIRST,
diff --git a/ship_gui.c b/ship_gui.c
index 94c06dfc8..61655f803 100644
--- a/ship_gui.c
+++ b/ship_gui.c
@@ -33,8 +33,8 @@ static void ShipRefitWndProc(Window *w, WindowEvent *e)
byte color;
int cargo;
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
DrawString(1, 15, STR_983F_SELECT_CARGO_TYPE_TO_CARRY, 0);
@@ -82,9 +82,9 @@ static void ShipRefitWndProc(Window *w, WindowEvent *e)
if (cargo != -1) {
int32 cost = DoCommandByTile(v->tile, v->index, cargo, 0, CMD_REFIT_SHIP);
if (cost != CMD_ERROR) {
- SET_DPARAM32(2, cost);
- SET_DPARAM16(0, _cargoc.names_long_p[cargo]);
- SET_DPARAM16(1, v->cargo_cap);
+ SetDParam(2, cost);
+ SetDParam(0, _cargoc.names_long_p[cargo]);
+ SetDParam(1, v->cargo_cap);
DrawString(1, 137, STR_9840_NEW_CAPACITY_COST_OF_REFIT, 0);
}
}
@@ -156,8 +156,8 @@ static void ShipDetailsWndProc(Window *w, WindowEvent *e)
if (!_patches.servint_ships) // disable service-scroller when interval is set to disabled
w->disabled_state |= (1 << 5) | (1 << 6);
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* Draw running cost */
@@ -165,7 +165,7 @@ static void ShipDetailsWndProc(Window *w, WindowEvent *e)
int year = v->age / 366;
StringID str;
- SET_DPARAM16(1, year);
+ SetDParam(1, year);
str = STR_0199_YEAR;
if (year != 1) {
@@ -173,55 +173,55 @@ static void ShipDetailsWndProc(Window *w, WindowEvent *e)
if (v->max_age - 366 < v->age)
str++;
}
- SET_DPARAM16(0, str);
- SET_DPARAM16(2, v->max_age / 366);
- SET_DPARAM32(3, ship_vehicle_info(v->engine_type).running_cost * _price.ship_running >> 8);
+ SetDParam(0, str);
+ SetDParam(2, v->max_age / 366);
+ SetDParam(3, ship_vehicle_info(v->engine_type).running_cost * _price.ship_running >> 8);
DrawString(2, 15, STR_9812_AGE_RUNNING_COST_YR, 0);
}
/* Draw max speed */
{
- SET_DPARAM16(0, v->max_speed * 10 >> 5);
+ SetDParam(0, v->max_speed * 10 >> 5);
DrawString(2, 25, STR_9813_MAX_SPEED, 0);
}
/* Draw profit */
{
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(2, 35, STR_9814_PROFIT_THIS_YEAR_LAST_YEAR, 0);
}
/* Draw breakdown & reliability */
{
- SET_DPARAM8(0, v->reliability * 100 >> 16);
- SET_DPARAM16(1, v->breakdowns_since_last_service);
+ SetDParam(0, v->reliability * 100 >> 16);
+ SetDParam(1, v->breakdowns_since_last_service);
DrawString(2, 45, STR_9815_RELIABILITY_BREAKDOWNS, 0);
}
/* Draw service interval text */
{
- SET_DPARAM16(0, v->service_interval);
- SET_DPARAM16(1, v->date_of_last_service);
+ SetDParam(0, v->service_interval);
+ SetDParam(1, v->date_of_last_service);
DrawString(13, 90, _patches.servint_ispercent?STR_SERVICING_INTERVAL_PERCENT:STR_883C_SERVICING_INTERVAL_DAYS, 0);
}
DrawShipImage(v, 3, 57, INVALID_VEHICLE);
- SET_DPARAM16(1, 1920 + v->build_year);
- SET_DPARAM16(0, GetCustomEngineName(v->engine_type));
- SET_DPARAM32(2, v->value);
+ SetDParam(1, 1920 + v->build_year);
+ SetDParam(0, GetCustomEngineName(v->engine_type));
+ SetDParam(2, v->value);
DrawString(74, 57, STR_9816_BUILT_VALUE, 0);
- SET_DPARAM16(0, _cargoc.names_long_p[v->cargo_type]);
- SET_DPARAM16(1, v->cargo_cap);
+ SetDParam(0, _cargoc.names_long_p[v->cargo_type]);
+ SetDParam(1, v->cargo_cap);
DrawString(74, 67, STR_9817_CAPACITY, 0);
str = STR_8812_EMPTY;
if (v->cargo_count != 0) {
- SET_DPARAM8(0, v->cargo_type);
- SET_DPARAM16(1, v->cargo_count);
- SET_DPARAM16(2, v->cargo_source);
+ SetDParam(0, v->cargo_type);
+ SetDParam(1, v->cargo_count);
+ SetDParam(2, v->cargo_source);
str = STR_8813_FROM;
}
DrawString(74, 78, str, 0);
@@ -230,7 +230,7 @@ static void ShipDetailsWndProc(Window *w, WindowEvent *e)
case WE_CLICK:
switch(e->click.widget) {
case 2: /* rename */
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
ShowQueryString(v->string_id, STR_9831_NAME_SHIP, 31, 150, w->window_class, w->window_number);
break;
case 5: /* increase int */
@@ -363,18 +363,18 @@ static void NewShipWndProc(Window *w, WindowEvent *e)
if (selected_id != -1) {
Engine *e;
- SET_DPARAM32(0, ship_vehicle_info(selected_id).base_cost * (_price.ship_base>>3)>>5);
- SET_DPARAM16(1, ship_vehicle_info(selected_id).max_speed * 10 >> 5);
- SET_DPARAM16(2, _cargoc.names_long_p[ship_vehicle_info(selected_id).cargo_type]);
- SET_DPARAM16(3, ship_vehicle_info(selected_id).capacity);
- SET_DPARAM16(4, ship_vehicle_info(selected_id).refittable ? STR_9842_REFITTABLE : STR_EMPTY);
- SET_DPARAM32(5, ship_vehicle_info(selected_id).running_cost * _price.ship_running >> 8);
+ SetDParam(0, ship_vehicle_info(selected_id).base_cost * (_price.ship_base>>3)>>5);
+ SetDParam(1, ship_vehicle_info(selected_id).max_speed * 10 >> 5);
+ SetDParam(2, _cargoc.names_long_p[ship_vehicle_info(selected_id).cargo_type]);
+ SetDParam(3, ship_vehicle_info(selected_id).capacity);
+ SetDParam(4, ship_vehicle_info(selected_id).refittable ? STR_9842_REFITTABLE : STR_EMPTY);
+ SetDParam(5, ship_vehicle_info(selected_id).running_cost * _price.ship_running >> 8);
e = &_engines[selected_id];
- SET_DPARAM16(7, e->lifelength);
- SET_DPARAM8(8, e->reliability * 100 >> 16);
+ SetDParam(7, e->lifelength);
+ SetDParam(8, e->reliability * 100 >> 16);
ConvertDayToYMD(&ymd, e->intro_date);
- SET_DPARAM16(6, ymd.year + 1920);
+ SetDParam(6, ymd.year + 1920);
DrawString(2, 111, STR_980A_COST_SPEED_CAPACITY_RUNNING, 0);
}
@@ -485,8 +485,8 @@ static void ShipViewWndProc(Window *w, WindowEvent *e) {
w->disabled_state = disabled;
/* draw widgets & caption */
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* draw the flag */
@@ -499,15 +499,15 @@ static void ShipViewWndProc(Window *w, WindowEvent *e) {
} else {
switch(v->next_order & OT_MASK) {
case OT_GOTO_STATION: {
- SET_DPARAM16(0, v->next_order_param);
- SET_DPARAM16(1, v->cur_speed * 10 >> 5);
+ SetDParam(0, v->next_order_param);
+ SetDParam(1, v->cur_speed * 10 >> 5);
str = STR_HEADING_FOR_STATION + _patches.vehicle_speed;
} break;
case OT_GOTO_DEPOT: {
Depot *dep = &_depots[v->next_order_param];
- SET_DPARAM16(0, dep->town_index);
- SET_DPARAM16(1, v->cur_speed * 10 >> 5);
+ SetDParam(0, dep->town_index);
+ SetDParam(1, v->cur_speed * 10 >> 5);
str = STR_HEADING_FOR_SHIP_DEPOT + _patches.vehicle_speed;
} break;
@@ -519,7 +519,7 @@ static void ShipViewWndProc(Window *w, WindowEvent *e) {
default:
if (v->num_orders == 0) {
str = STR_NO_ORDERS + _patches.vehicle_speed;
- SET_DPARAM16(0, v->cur_speed * 10 >> 5);
+ SetDParam(0, v->cur_speed * 10 >> 5);
} else
str = STR_EMPTY;
break;
@@ -632,7 +632,7 @@ static void DrawShipDepotWindow(Window *w)
/* locate the depot struct */
for(d=_depots; d->xy != (TileIndex)tile; d++) {}
- SET_DPARAM16(0, d->town_index);
+ SetDParam(0, d->town_index);
DrawWindowWidgets(w);
x = 2;
@@ -647,7 +647,7 @@ static void DrawShipDepotWindow(Window *w)
DrawShipImage(v, x+19, y, WP(w,traindepot_d).sel);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
DrawString(x, y, (uint16)(v->max_age-366) >= v->age ? STR_00E2 : STR_00E3, 0);
DrawSprite( (v->vehstatus & VS_STOPPED) ? 0xC12 : 0xC13, x, y + 9);
@@ -856,7 +856,7 @@ static void DrawSmallShipSchedule(Vehicle *v, int x, int y) {
st = DEREF_STATION(ord >> 8);
if (!(st->had_vehicle_of_type & HVOT_BUOY)) {
- SET_DPARAM16(0, ord >> 8);
+ SetDParam(0, ord >> 8);
DrawString(x, y, STR_A036, 0);
y += 6;
@@ -955,9 +955,9 @@ static void PlayerShipsWndProc(Window *w, WindowEvent *e)
{
Player *p = DEREF_PLAYER(window_number);
/* Company Name -- (###) Ships */
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, w->vscroll.count);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, w->vscroll.count);
DrawWindowWidgets(w);
}
/* draw sorting criteria string */
@@ -982,7 +982,7 @@ static void PlayerShipsWndProc(Window *w, WindowEvent *e)
DrawShipImage(v, x + 19, y + 6, INVALID_VEHICLE);
DrawVehicleProfitButton(v, x, y+13);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
if (IsShipDepotTile(v->tile)) {
str = STR_021F;
} else {
@@ -990,12 +990,12 @@ static void PlayerShipsWndProc(Window *w, WindowEvent *e)
}
DrawString(x, y+2, str, 0);
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(x + 12, y + 28, STR_0198_PROFIT_THIS_YEAR_LAST_YEAR, 0);
if (v->string_id != STR_SV_SHIP_NAME) {
- SET_DPARAM16(0, v->string_id);
+ SetDParam(0, v->string_id);
DrawString(x+12, y, STR_01AB, 0);
}
diff --git a/smallmap_gui.c b/smallmap_gui.c
index d9c9714b3..3cbca89a8 100644
--- a/smallmap_gui.c
+++ b/smallmap_gui.c
@@ -798,7 +798,7 @@ skip_column:
y + 6 > dpi->top &&
y < dpi->top + dpi->height) {
// And draw it.
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
DrawString(x, y, STR_2056, 12);
}
}
@@ -846,7 +846,7 @@ static void SmallMapWindowProc(Window *w, WindowEvent *e)
/* draw the window */
- SET_DPARAM16(0, STR_00E5_CONTOURS + _smallmap_type);
+ SetDParam(0, STR_00E5_CONTOURS + _smallmap_type);
DrawWindowWidgets(w);
/* draw the legend */
@@ -1019,7 +1019,7 @@ static void ExtraViewPortWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT: {
// set the number in the title bar
- SET_DPARAM16(0, (w->window_number+1));
+ SetDParam(0, (w->window_number+1));
DrawWindowWidgets(w);
DrawWindowViewport(w);
diff --git a/station_cmd.c b/station_cmd.c
index f28626ef0..9c1329191 100644
--- a/station_cmd.c
+++ b/station_cmd.c
@@ -327,8 +327,8 @@ static void UpdateStationVirtCoord(Station *st)
pt.y -= 32;
if (st->facilities&FACIL_AIRPORT && st->airport_type==AT_OILRIG) pt.y -= 16;
- SET_DPARAM16(0, st->index);
- SET_DPARAM8(1, st->facilities);
+ SetDParam(0, st->index);
+ SetDParam(1, st->facilities);
UpdateViewportSignPos(&st->sign, pt.x, pt.y, STR_305C_0);
}
@@ -368,9 +368,9 @@ static uint GetAcceptanceMask(Station *st)
static void ShowRejectOrAcceptNews(Station *st, uint32 items, StringID msg)
{
if (items) {
- SET_DPARAM32(2, items >> 16);
- SET_DPARAM32(1, items & 0xFFFF);
- SET_DPARAM16(0, st->index);
+ SetDParam(2, items >> 16);
+ SetDParam(1, items & 0xFFFF);
+ SetDParam(0, st->index);
AddNewsItem(msg + ((items >> 16)?1:0), NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_TILE, NT_ACCEPTANCE, 0), st->xy, 0);
}
}
@@ -1517,7 +1517,7 @@ int32 CmdBuildAirport(int x, int y, uint32 flags, uint32 p1, uint32 p2)
num++;
}
if (num >= 2) {
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
return_cmd_error(STR_2035_LOCAL_AUTHORITY_REFUSES);
}
}
@@ -2622,7 +2622,7 @@ static int32 ClearTile_Station(uint tile, byte flags) {
if (m5 < 0x4B) return_cmd_error(STR_3046_MUST_DEMOLISH_BUS_STATION);
if (m5 == 0x52) return_cmd_error(STR_306A_BUOY_IN_THE_WAY);
if (m5 != 0x4B && m5 < 0x53) return_cmd_error(STR_304D_MUST_DEMOLISH_DOCK_FIRST);
- SET_DPARAM16(0, STR_4807_OIL_RIG);
+ SetDParam(0, STR_4807_OIL_RIG);
return_cmd_error(STR_4800_IN_THE_WAY);
}
diff --git a/station_gui.c b/station_gui.c
index f0c2f34a5..beaa84d68 100644
--- a/station_gui.c
+++ b/station_gui.c
@@ -59,15 +59,15 @@ static int CDECL StationNameSorter(const void *a, const void *b)
const SortStruct *cmp2 = (const SortStruct*)b;
st = DEREF_STATION(cmp1->index);
- SET_DPARAM16(0, st->town->townnametype);
- SET_DPARAM32(1, st->town->townnameparts);
+ SetDParam(0, st->town->townnametype);
+ SetDParam(1, st->town->townnameparts);
GetString(buf1, st->string_id);
if ( cmp2->index != _last_station_idx) {
_last_station_idx = cmp2->index;
st = DEREF_STATION(cmp2->index);
- SET_DPARAM16(0, st->town->townnametype);
- SET_DPARAM32(1, st->town->townnameparts);
+ SetDParam(0, st->town->townnametype);
+ SetDParam(1, st->town->townnameparts);
GetString(_bufcache, st->string_id);
}
@@ -149,9 +149,9 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
/* draw widgets, with player's name in the caption */
{
Player *p = DEREF_PLAYER(window_number);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, w->vscroll.count);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, w->vscroll.count);
DrawWindowWidgets(w);
}
@@ -175,8 +175,8 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
assert(st->xy && st->owner == window_number);
- SET_DPARAM16(0, st->index);
- SET_DPARAM8(1, st->facilities);
+ SetDParam(0, st->index);
+ SetDParam(1, st->facilities);
x = DrawString(xb, y, STR_3049_0, 0) + 5;
// show cargo waiting and station ratings
@@ -310,8 +310,8 @@ static void DrawStationViewWindow(Window *w)
SetVScrollCount(w, num);
w->disabled_state = st->owner == _local_player ? 0 : (1 << 8);
- SET_DPARAM16(0, st->index);
- SET_DPARAM8(1, st->facilities);
+ SetDParam(0, st->index);
+ SetDParam(1, st->facilities);
DrawWindowWidgets(w);
x = 2;
@@ -323,7 +323,7 @@ static void DrawStationViewWindow(Window *w)
for(i=0; i!=NUM_CARGO; i++)
if (st->goods[i].waiting_acceptance & 0xFFF)
str = STR_EMPTY;
- SET_DPARAM16(0, str);
+ SetDParam(0, str);
DrawString(x, y, STR_0008_WAITING, 0);
y += 10;
}
@@ -346,22 +346,22 @@ static void DrawStationViewWindow(Window *w)
if ( st->goods[i].enroute_from == station_id) {
if (--pos < 0) {
- SET_DPARAM16(1, waiting);
- SET_DPARAM16(0, _cargoc.names_long_s[i] + (waiting==1 ? 0 : 32));
+ SetDParam(1, waiting);
+ SetDParam(0, _cargoc.names_long_s[i] + (waiting==1 ? 0 : 32));
DrawStringRightAligned(x + 234, y, STR_0009, 0);
y += 10;
}
} else {
/* enroute */
if (--pos < 0) {
- SET_DPARAM16(1, waiting);
- SET_DPARAM16(0, _cargoc.names_long_s[i] + (waiting==1 ? 0 : 32));
+ SetDParam(1, waiting);
+ SetDParam(0, _cargoc.names_long_s[i] + (waiting==1 ? 0 : 32));
DrawStringRightAligned(x + 234, y, STR_000A_EN_ROUTE_FROM, 0);
y += 10;
}
if (pos > -5 && --pos < 0) {
- SET_DPARAM16(0, st->goods[i].enroute_from);
+ SetDParam(0, st->goods[i].enroute_from);
DrawStringRightAligned(x + 234, y, STR_000B, 0);
y += 10;
}
@@ -403,9 +403,9 @@ static void DrawStationViewWindow(Window *w)
y = 77;
for(i=0; i!=NUM_CARGO; i++) {
if (st->goods[i].enroute_from != 0xFF) {
- SET_DPARAM16(0, _cargoc.names_s[i]);
- SET_DPARAM8(2, st->goods[i].rating * 101 >> 8);
- SET_DPARAM16(1, STR_3035_APPALLING + (st->goods[i].rating >> 5));
+ SetDParam(0, _cargoc.names_s[i]);
+ SetDParam(2, st->goods[i].rating * 101 >> 8);
+ SetDParam(1, STR_3035_APPALLING + (st->goods[i].rating >> 5));
DrawString(8, y, STR_303D, 0);
y += 10;
}
@@ -439,8 +439,8 @@ static void StationViewWndProc(Window *w, WindowEvent *e)
case 8: {
Station *st = DEREF_STATION(w->window_number);
- SET_DPARAM16(0, st->town->townnametype);
- SET_DPARAM32(1, st->town->townnameparts);
+ SetDParam(0, st->town->townnametype);
+ SetDParam(1, st->town->townnameparts);
ShowQueryString(st->string_id, STR_3030_RENAME_STATION_LOADING, 31, 180, w->window_class, w->window_number);
} break;
}
diff --git a/strings.c b/strings.c
index d2b0f1fcf..3bc54dd71 100644
--- a/strings.c
+++ b/strings.c
@@ -183,14 +183,14 @@ void InjectDparam(int amount)
int32 GetParamInt32()
{
- int32 result = GET_DPARAM32(0);
+ int32 result = GetDParam(0);
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
return result;
}
static int64 GetParamInt64()
{
- int64 result = GET_DPARAM32(0) + ((uint64)GET_DPARAM32(1) << 32);
+ int64 result = GetDParam(0) + ((uint64)GetDParam(1) << 32);
memmove(&_decode_parameters[0], &_decode_parameters[2], sizeof(uint32) * (lengthof(_decode_parameters)-2));
return result;
}
@@ -198,21 +198,21 @@ static int64 GetParamInt64()
int GetParamInt16()
{
- int result = (int16)GET_DPARAM16(0);
+ int result = (int16)GetDParam(0);
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
return result;
}
int GetParamInt8()
{
- int result = (int8)GET_DPARAM8(0);
+ int result = (int8)GetDParam(0);
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
return result;
}
int GetParamUint16()
{
- int result = GET_DPARAM16(0);
+ int result = GetDParam(0);
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
return result;
}
@@ -493,7 +493,7 @@ static byte *DecodeString(byte *buff, const byte *str)
// 16-bit - cargo count
int cargo_str = _cargoc.names_long_s[GetParamInt8()];
// Now check if the cargo count is 1, if it is, increase string by 32.
- if (GET_DPARAM16(0) != 1) cargo_str += 32;
+ if (GetDParam(0) != 1) cargo_str += 32;
buff = GetString(buff, cargo_str);
break;
}
@@ -501,21 +501,21 @@ static byte *DecodeString(byte *buff, const byte *str)
case 0x9A: { // {STATION}
Station *st;
InjectDparam(1);
- st = DEREF_STATION(GET_DPARAM16(1));
+ st = DEREF_STATION(GetDParam(1));
if (!st->xy) { // station doesn't exist anymore
buff = GetString(buff, STR_UNKNOWN_DESTINATION);
break;
}
- SET_DPARAM16(0, st->town->townnametype);
- SET_DPARAM32(1, st->town->townnameparts);
+ SetDParam(0, st->town->townnametype);
+ SetDParam(1, st->town->townnameparts);
buff = GetString(buff, st->string_id);
break;
}
case 0x9B: { // {TOWN}
Town *t;
- t = DEREF_TOWN(GET_DPARAM16(0));
+ t = DEREF_TOWN(GetDParam(0));
assert(t->xy);
- SET_DPARAM32(0, t->townnameparts);
+ SetDParam(0, t->townnameparts);
buff = GetString(buff, t->townnametype);
break;
}
@@ -526,7 +526,7 @@ static byte *DecodeString(byte *buff, const byte *str)
}
case 0x9D: { // {WAYPOINT}
- Waypoint *cp = &_waypoints[GET_DPARAM16(0)];
+ Waypoint *cp = &_waypoints[GetDParam(0)];
StringID str;
int idx;
if (~cp->town_or_string & 0xC000) {
@@ -538,10 +538,10 @@ static byte *DecodeString(byte *buff, const byte *str)
str = STR_WAYPOINTNAME_CITY;
} else {
InjectDparam(1);
- SET_DPARAM16(1, idx + 1);
+ SetDParam(1, idx + 1);
str = STR_WAYPOINTNAME_CITY_SERIAL;
}
- SET_DPARAM16(0, cp->town_or_string & 0xFF);
+ SetDParam(0, cp->town_or_string & 0xFF);
}
buff = GetString(buff, str);
diff --git a/subsidy_gui.c b/subsidy_gui.c
index 4227c4bb5..0e32e7504 100644
--- a/subsidy_gui.c
+++ b/subsidy_gui.c
@@ -92,7 +92,7 @@ static void DrawSubsidiesWindow(Window *w)
SetupSubsidyDecodeParam(s, 1);
x2 = DrawString(x+2, y, STR_2027_FROM_TO, 0);
- SET_DPARAM16(0, _date - ymd.day + 384 - s->age * 32);
+ SetDParam(0, _date - ymd.day + 384 - s->age * 32);
DrawString(x2, y, STR_2028_BY, 0);
y += 10;
num++;
@@ -113,12 +113,12 @@ static void DrawSubsidiesWindow(Window *w)
SetupSubsidyDecodeParam(s, 1);
p = DEREF_PLAYER(DEREF_STATION(s->to)->owner);
- SET_DPARAM16(3, p->name_1);
- SET_DPARAM32(4, p->name_2);
+ SetDParam(3, p->name_1);
+ SetDParam(4, p->name_2);
xt = DrawString(x+2, y, STR_202C_FROM_TO, 0);
- SET_DPARAM16(0, _date - ymd.day + 768 - s->age * 32);
+ SetDParam(0, _date - ymd.day + 768 - s->age * 32);
DrawString(xt, y, STR_202D_UNTIL, 0);
y += 10;
num++;
diff --git a/texteff.c b/texteff.c
index 707b81d63..60b221cf2 100644
--- a/texteff.c
+++ b/texteff.c
@@ -43,8 +43,8 @@ void AddTextEffect(StringID msg, int x, int y, uint16 duration)
te->duration = duration;
te->y = y - 5;
te->bottom = y + 5;
- te->params_1 = GET_DPARAM32(0);
- te->params_2 = GET_DPARAM32(4);
+ te->params_1 = GetDParam(0);
+ te->params_2 = GetDParam(4);
GetString(buffer, msg);
w = GetStringWidth(buffer);
diff --git a/town_cmd.c b/town_cmd.c
index e19db652c..dd7f0db72 100644
--- a/town_cmd.c
+++ b/town_cmd.c
@@ -291,7 +291,7 @@ static int32 ClearTile_Town(uint tile, byte flags)
if (_current_player < MAX_PLAYERS) {
if (rating > t->ratings[_current_player] && !(flags & DC_NO_TOWN_RATING) && !_cheats.magic_bulldozer.value) {
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
return_cmd_error(STR_2009_LOCAL_AUTHORITY_REFUSES);
}
}
@@ -318,7 +318,7 @@ static void GetTileDesc_Town(uint tile, TileDesc *td)
{
td->str = _town_tile_names[_map2[tile]];
if ((_map3_lo[tile] & 0xC0) != 0xC0) {
- SET_DPARAMX16(td->dparam, 0, td->str);
+ SetDParamX(td->dparam, 0, td->str);
td->str = STR_2058_UNDER_CONSTRUCTION;
}
@@ -815,7 +815,7 @@ static void UpdateTownRadius(Town *t)
static void UpdateTownVirtCoord(Town *t)
{
Point pt = RemapCoords2(GET_TILE_X(t->xy)*16, GET_TILE_Y(t->xy)*16);
- SET_DPARAM32(0, t->townnameparts);
+ SetDParam(0, t->townnameparts);
UpdateViewportSignPos(&t->sign, pt.x, pt.y - 24, t->townnametype);
}
@@ -832,7 +832,7 @@ static void CreateTownName(Town *t1)
restart:
r = Random();
- SET_DPARAM32(0, r);
+ SetDParam(0, r);
GetString(buf1, t1->townnametype);
// Check size and width
@@ -841,7 +841,7 @@ restart:
FOR_ALL_TOWNS(t2) {
if (t2->xy != 0) {
- SET_DPARAM32(0, t2->townnameparts);
+ SetDParam(0, t2->townnameparts);
GetString(buf2, t2->townnametype);
if (str_eq(buf1, buf2))
goto restart;
@@ -1440,11 +1440,11 @@ static void TownActionRoadRebuild(Town *t, int action)
t->road_build_months = 6;
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
p = DEREF_PLAYER(_current_player);
- SET_DPARAM16(1, p->name_1);
- SET_DPARAM32(2, p->name_2);
+ SetDParam(1, p->name_1);
+ SetDParam(2, p->name_2);
AddNewsItem(STR_2055_TRAFFIC_CHAOS_IN_ROAD_REBUILDING,
NEWS_FLAGS(NM_NORMAL, NF_TILE, NT_GENERAL, 0), t->xy, 0);
@@ -1704,7 +1704,7 @@ bool CheckIfAuthorityAllows(uint tile)
return true;
_error_message = STR_2009_LOCAL_AUTHORITY_REFUSES;
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
return false;
}
@@ -1778,7 +1778,7 @@ bool CheckforTownRating(uint tile, uint32 flags, Town *t, byte type)
modemod = _default_rating_settings[_opt_mod_ptr->diff.town_council_tolerance][type];
if (t->ratings[_current_player] < 16 + modemod && !(flags & DC_NO_TOWN_RATING)) {
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
_error_message = STR_2009_LOCAL_AUTHORITY_REFUSES;
return false;
}
diff --git a/town_gui.c b/town_gui.c
index 829a1c015..c50ba13a8 100644
--- a/town_gui.c
+++ b/town_gui.c
@@ -102,7 +102,7 @@ static void TownAuthorityWndProc(Window *w, WindowEvent *e)
int r;
StringID str;
- SET_DPARAM16(0, w->window_number);
+ SetDParam(0, w->window_number);
DrawWindowWidgets(w);
DrawString(2, 15, STR_2023_TRANSPORT_COMPANY_RATINGS, 0);
@@ -113,9 +113,9 @@ static void TownAuthorityWndProc(Window *w, WindowEvent *e)
if (p->is_active && (HASBIT(t->have_ratings, p->index) || t->exclusivity==p->index)) {
DrawPlayerIcon(p->index, 2, y);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, GetPlayerNameString(p->index, 3));
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, GetPlayerNameString(p->index, 3));
r = t->ratings[p->index];
(str = STR_3035_APPALLING, r <= -400) || // Apalling
@@ -133,7 +133,7 @@ static void TownAuthorityWndProc(Window *w, WindowEvent *e)
that because there is another param after it.
So we'll just shift the rating one back if player is AI and all is fine
*/
- SET_DPARAM16((IS_HUMAN_PLAYER(p->index) ? 4 : 3), str);
+ SetDParam((IS_HUMAN_PLAYER(p->index) ? 4 : 3), str);
if (t->exclusivity == p->index) // red icon for player with exclusive rights
DrawSprite((SPR_OPENTTD_BASE + 10) | 0x30b8000, 18, y);
@@ -166,8 +166,8 @@ static void TownAuthorityWndProc(Window *w, WindowEvent *e)
{
int i;
if ((i=WP(w,def_d).data_1) != -1) {
- SET_DPARAM32(1, (_price.build_industry >> 8) * _town_action_costs[i]);
- SET_DPARAM16(0, STR_2046_SMALL_ADVERTISING_CAMPAIGN + i);
+ SetDParam(1, (_price.build_industry >> 8) * _town_action_costs[i]);
+ SetDParam(0, STR_2046_SMALL_ADVERTISING_CAMPAIGN + i);
DrawStringMultiLine(2, 159, STR_204D_INITIATE_A_SMALL_LOCAL + i, 313);
}
}
@@ -227,19 +227,19 @@ static void TownViewWndProc(Window *w, WindowEvent *e)
switch(e->event) {
case WE_PAINT:
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
DrawWindowWidgets(w);
- SET_DPARAM32(0, t->population);
- SET_DPARAM32(1, t->num_houses);
+ SetDParam(0, t->population);
+ SetDParam(1, t->num_houses);
DrawString(2,107,STR_2006_POPULATION,0);
- SET_DPARAM16(0, t->act_pass);
- SET_DPARAM16(1, t->max_pass);
+ SetDParam(0, t->act_pass);
+ SetDParam(1, t->max_pass);
DrawString(2,117,STR_200D_PASSENGERS_LAST_MONTH_MAX,0);
- SET_DPARAM16(0, t->act_mail);
- SET_DPARAM16(1, t->max_mail);
+ SetDParam(0, t->act_mail);
+ SetDParam(1, t->max_mail);
DrawString(2,127,STR_200E_MAIL_LAST_MONTH_MAX,0);
DrawWindowViewport(w);
@@ -254,7 +254,7 @@ static void TownViewWndProc(Window *w, WindowEvent *e)
ShowTownAuthorityWindow(w->window_number);
break;
case 7: /* rename */
- SET_DPARAM32(0, t->townnameparts);
+ SetDParam(0, t->townnameparts);
ShowQueryString(t->townnametype, STR_2007_RENAME_TOWN, 31, 130, w->window_class, w->window_number);
break;
case 8: /* expand town */
@@ -363,13 +363,13 @@ static int CDECL TownNameSorter(const void *a, const void *b)
int r;
t = DEREF_TOWN(*(const byte*)a);
- SET_DPARAM32(0, t->townnameparts);
+ SetDParam(0, t->townnameparts);
GetString(buf1, t->townnametype);
if ( (val=*(const byte*)b) != _last_town_idx) {
_last_town_idx = val;
t = DEREF_TOWN(val);
- SET_DPARAM32(0, t->townnameparts);
+ SetDParam(0, t->townnameparts);
GetString(_bufcache, t->townnametype);
}
@@ -427,8 +427,8 @@ static void TownDirectoryWndProc(Window *w, WindowEvent *e)
assert(t->xy);
- SET_DPARAM16(0, t->index);
- SET_DPARAM32(1, t->population);
+ SetDParam(0, t->index);
+ SetDParam(1, t->population);
DrawString(2, y, STR_2057, 0);
y += 10;
diff --git a/train_cmd.c b/train_cmd.c
index b082dacfb..98a7cd2d4 100644
--- a/train_cmd.c
+++ b/train_cmd.c
@@ -203,18 +203,18 @@ void DrawTrainEngineInfo(int engine, int x, int y, int maxw)
int cap;
uint multihead = ((rvi->flags & RVI_MULTIHEAD) ? 1 : 0);
- SET_DPARAM32(0, ((_price.build_railvehicle >> 3) * rvi->base_cost) >> 5);
- SET_DPARAM16(2, rvi->max_speed * 10 >> 4);
- SET_DPARAM16(3, rvi->power << multihead);
- SET_DPARAM16(1, rvi->weight << multihead);
+ SetDParam(0, ((_price.build_railvehicle >> 3) * rvi->base_cost) >> 5);
+ SetDParam(2, rvi->max_speed * 10 >> 4);
+ SetDParam(3, rvi->power << multihead);
+ SetDParam(1, rvi->weight << multihead);
- SET_DPARAM32(4, (rvi->running_cost_base * _price.running_rail[rvi->engclass] >> 8) << multihead);
+ SetDParam(4, (rvi->running_cost_base * _price.running_rail[rvi->engclass] >> 8) << multihead);
cap = rvi->capacity;
- SET_DPARAM16(5, STR_8838_N_A);
+ SetDParam(5, STR_8838_N_A);
if (cap != 0) {
- SET_DPARAM16(6, cap << multihead);
- SET_DPARAM16(5, _cargoc.names_long_p[rvi->cargo_type]);
+ SetDParam(6, cap << multihead);
+ SetDParam(5, _cargoc.names_long_p[rvi->cargo_type]);
}
DrawStringMultiCenter(x, y, STR_885B_COST_WEIGHT_T_SPEED_POWER, maxw);
}
@@ -1724,7 +1724,7 @@ static void TrainEnterStation(Vehicle *v, int station)
st = DEREF_STATION(station);
if (!(st->had_vehicle_of_type & HVOT_TRAIN)) {
st->had_vehicle_of_type |= HVOT_TRAIN;
- SET_DPARAM16(0, st->index);
+ SetDParam(0, st->index);
flags = (v->owner == _local_player) ? NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_PLAYER, 0) : NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ARRIVAL_OTHER, 0);
AddNewsItem(
STR_8801_CITIZENS_CELEBRATE_FIRST,
@@ -1999,7 +1999,7 @@ static void CheckTrainCollision(Vehicle *v)
SetVehicleCrashed(coll);
- SET_DPARAM16(0, num);
+ SetDParam(0, num);
AddNewsItem(STR_8868_TRAIN_CRASH_DIE_IN_FIREBALL,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ACCIDENT, 0),
@@ -2558,7 +2558,7 @@ void TrainEnterDepot(Vehicle *v, uint tile)
else if (t & OF_FULL_LOAD) {
v->vehstatus |= VS_STOPPED;
if (v->owner == _local_player) {
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_8814_TRAIN_IS_WAITING_IN_DEPOT,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
@@ -2645,7 +2645,7 @@ void OnNewDay_Train(Vehicle *v)
// check if train hasn't advanced in its order list for a set number of days
if (_patches.lost_train_days && v->num_orders && !(v->vehstatus & VS_STOPPED) && ++v->u.rail.days_since_order_progr >= _patches.lost_train_days && v->owner == _local_player) {
v->u.rail.days_since_order_progr = 0;
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_TRAIN_IS_LOST,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
@@ -2684,8 +2684,8 @@ void TrainsYearlyLoop()
// show warning if train is not generating enough income last 2 years (corresponds to a red icon in the vehicle list)
if (_patches.train_income_warn && v->owner == _local_player && v->age >= 730 && v->profit_this_year < 0) {
- SET_DPARAM32(1, v->profit_this_year);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(1, v->profit_this_year);
+ SetDParam(0, v->unitnumber);
AddNewsItem(
STR_TRAIN_IS_UNPROFITABLE,
NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0),
diff --git a/train_gui.c b/train_gui.c
index 5f5811c26..7eed89bd6 100644
--- a/train_gui.c
+++ b/train_gui.c
@@ -106,7 +106,7 @@ static void NewRailVehicleWndProc(Window *w, WindowEvent *e)
SetVScrollCount(w, count);
}
- SET_DPARAM16(0, WP(w,buildtrain_d).railtype + STR_881C_NEW_RAIL_VEHICLES);
+ SetDParam(0, WP(w,buildtrain_d).railtype + STR_881C_NEW_RAIL_VEHICLES);
DrawWindowWidgets(w);
{
@@ -136,36 +136,36 @@ static void NewRailVehicleWndProc(Window *w, WindowEvent *e)
/* it's an engine */
int multihead = (rvi->flags&RVI_MULTIHEAD?1:0);
- SET_DPARAM32(0, rvi->base_cost * (_price.build_railvehicle >> 3) >> 5);
- SET_DPARAM16(2, rvi->max_speed * 10 >> 4);
- SET_DPARAM16(3, rvi->power << multihead);
- SET_DPARAM16(1, rvi->weight << multihead);
- SET_DPARAM32(4, (rvi->running_cost_base * _price.running_rail[rvi->engclass] >> 8) << multihead);
+ SetDParam(0, rvi->base_cost * (_price.build_railvehicle >> 3) >> 5);
+ SetDParam(2, rvi->max_speed * 10 >> 4);
+ SetDParam(3, rvi->power << multihead);
+ SetDParam(1, rvi->weight << multihead);
+ SetDParam(4, (rvi->running_cost_base * _price.running_rail[rvi->engclass] >> 8) << multihead);
- SET_DPARAM16(5, STR_8838_N_A);
+ SetDParam(5, STR_8838_N_A);
if (rvi->capacity != 0) {
- SET_DPARAM16(6, rvi->capacity << multihead);
- SET_DPARAM16(5, _cargoc.names_long_p[rvi->cargo_type]);
+ SetDParam(6, rvi->capacity << multihead);
+ SetDParam(5, _cargoc.names_long_p[rvi->cargo_type]);
}
e = &_engines[selected_id];
- SET_DPARAM16(8, e->lifelength);
- SET_DPARAM8(9, e->reliability * 100 >> 16);
+ SetDParam(8, e->lifelength);
+ SetDParam(9, e->reliability * 100 >> 16);
ConvertDayToYMD(&ymd, e->intro_date);
- SET_DPARAM16(7, ymd.year + 1920);
+ SetDParam(7, ymd.year + 1920);
DrawString(2, 0x7F, STR_8817_COST_WEIGHT_T_SPEED_POWER, 0);
} else {
/* it's a wagon */
- SET_DPARAM32(0,
+ SetDParam(0,
DoCommandByTile(w->window_number, selected_id, 0, DC_QUERY_COST, CMD_BUILD_RAIL_VEHICLE)
);
- SET_DPARAM16(4, rvi->capacity);
- SET_DPARAM16(1, rvi->weight);
- SET_DPARAM16(3, _cargoc.names_long_p[rvi->cargo_type]);
- SET_DPARAM16(2, (_cargoc.weights[rvi->cargo_type] * rvi->capacity >> 4) + rvi->weight);
+ SetDParam(4, rvi->capacity);
+ SetDParam(1, rvi->weight);
+ SetDParam(3, _cargoc.names_long_p[rvi->cargo_type]);
+ SetDParam(2, (_cargoc.weights[rvi->cargo_type] * rvi->capacity >> 4) + rvi->weight);
DrawString(2, 0x7F, STR_8821_COST_WEIGHT_T_T_CAPACITY, 0);
}
}
@@ -309,7 +309,7 @@ static void DrawTrainDepotWindow(Window *w)
/* locate the depot struct */
for(d=_depots; d->xy != (TileIndex)tile; d++) {}
- SET_DPARAM16(0,d->town_index);
+ SetDParam(0,d->town_index);
DrawWindowWidgets(w);
x = 2;
@@ -326,7 +326,7 @@ static void DrawTrainDepotWindow(Window *w)
DrawTrainImage(v, x+21, y, 10, w->hscroll.pos, WP(w,traindepot_d).sel);
/* Draw the train number */
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
DrawString(x, y, (v->max_age - 366 < v->age) ? STR_00E3 : STR_00E2, 0);
/* Draw the pretty flag */
DrawSprite(v->vehstatus&VS_STOPPED ? 0xC12 : 0xC13, x+15, y);
@@ -622,8 +622,8 @@ static void RailVehicleRefitWndProc(Window *w, WindowEvent *e)
byte color;
int cargo;
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
DrawString(1, 15, STR_983F_SELECT_CARGO_TYPE_TO_CARRY, 0);
@@ -671,9 +671,9 @@ static void RailVehicleRefitWndProc(Window *w, WindowEvent *e)
if (cargo != -1) {
int32 cost = DoCommandByTile(v->tile, v->index, cargo, 0, CMD_REFIT_RAIL_VEHICLE);
if (cost != CMD_ERROR) {
- SET_DPARAM32(2, cost);
- SET_DPARAM16(0, _cargoc.names_long_p[cargo]);
- SET_DPARAM16(1, _returned_refit_amount);
+ SetDParam(2, cost);
+ SetDParam(0, _cargoc.names_long_p[cargo]);
+ SetDParam(1, _returned_refit_amount);
DrawString(1, 137, STR_9840_NEW_CAPACITY_COST_OF_REFIT, 0);
}
}
@@ -759,8 +759,8 @@ static void TrainViewWndProc(Window *w, WindowEvent *e)
/* draw widgets & caption */
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
/* draw the flag */
@@ -774,22 +774,22 @@ static void TrainViewWndProc(Window *w, WindowEvent *e)
if (v->u.rail.last_speed == 0) {
str = STR_8861_STOPPED;
} else {
- SET_DPARAM16(0, v->u.rail.last_speed * 10 >> 4);
+ SetDParam(0, v->u.rail.last_speed * 10 >> 4);
str = STR_TRAIN_STOPPING + _patches.vehicle_speed;
}
} else {
switch(v->next_order & OT_MASK) {
case OT_GOTO_STATION: {
str = STR_HEADING_FOR_STATION + _patches.vehicle_speed;
- SET_DPARAM16(0, v->next_order_param);
- SET_DPARAM16(1, v->u.rail.last_speed * 10 >> 4);
+ SetDParam(0, v->next_order_param);
+ SetDParam(1, v->u.rail.last_speed * 10 >> 4);
} break;
case OT_GOTO_DEPOT: {
Depot *dep = &_depots[v->next_order_param];
- SET_DPARAM16(0, dep->town_index);
+ SetDParam(0, dep->town_index);
str = STR_HEADING_FOR_TRAIN_DEPOT + _patches.vehicle_speed;
- SET_DPARAM16(1, v->u.rail.last_speed * 10 >> 4);
+ SetDParam(1, v->u.rail.last_speed * 10 >> 4);
} break;
case OT_LOADING:
@@ -798,16 +798,16 @@ static void TrainViewWndProc(Window *w, WindowEvent *e)
break;
case OT_GOTO_WAYPOINT: {
- SET_DPARAM16(0, v->next_order_param);
+ SetDParam(0, v->next_order_param);
str = STR_HEADING_FOR_WAYPOINT + _patches.vehicle_speed;
- SET_DPARAM16(1, v->u.rail.last_speed * 10 >> 4);
+ SetDParam(1, v->u.rail.last_speed * 10 >> 4);
break;
}
default:
if (v->num_orders == 0) {
str = STR_NO_ORDERS + _patches.vehicle_speed;
- SET_DPARAM16(0, v->u.rail.last_speed * 10 >> 4);
+ SetDParam(0, v->u.rail.last_speed * 10 >> 4);
} else
str = STR_EMPTY;
break;
@@ -901,9 +901,9 @@ static void TrainDetailsCargoTab(Vehicle *v, int x, int y)
num = v->cargo_count;
str = STR_8812_EMPTY;
if (num != 0) {
- SET_DPARAM8(0, v->cargo_type);
- SET_DPARAM16(1, num);
- SET_DPARAM16(2, v->cargo_source);
+ SetDParam(0, v->cargo_type);
+ SetDParam(1, num);
+ SetDParam(2, v->cargo_source);
str = STR_8813_FROM;
}
DrawString(x, y, str, 0);
@@ -917,13 +917,13 @@ static void TrainDetailsInfoTab(Vehicle *v, int x, int y)
rvi = &_rail_vehicle_info[v->engine_type];
if (!(rvi->flags & RVI_WAGON)) {
- SET_DPARAM16(0, GetCustomEngineName(v->engine_type));
- SET_DPARAM16(1, v->build_year + 1920);
- SET_DPARAM32(2, v->value);
+ SetDParam(0, GetCustomEngineName(v->engine_type));
+ SetDParam(1, v->build_year + 1920);
+ SetDParam(2, v->value);
DrawString(x, y, STR_882C_BUILT_VALUE, 0x10);
} else {
- SET_DPARAM16(0, GetCustomEngineName(v->engine_type));
- SET_DPARAM32(1, v->value);
+ SetDParam(0, GetCustomEngineName(v->engine_type));
+ SetDParam(1, v->value);
DrawString(x, y, STR_882D_VALUE, 0x10);
}
}
@@ -931,8 +931,8 @@ static void TrainDetailsInfoTab(Vehicle *v, int x, int y)
static void TrainDetailsCapacityTab(Vehicle *v, int x, int y)
{
if (v->cargo_cap != 0) {
- SET_DPARAM16(1, v->cargo_cap);
- SET_DPARAM16(0, _cargoc.names_long_p[v->cargo_type]);
+ SetDParam(1, v->cargo_cap);
+ SetDParam(0, _cargoc.names_long_p[v->cargo_type]);
DrawString(x, y, STR_013F_CAPACITY, 0);
}
}
@@ -990,12 +990,12 @@ static void DrawTrainDetailsWindow(Window *w)
if (!_patches.servint_trains) // disable service-scroller when interval is set to disabled
w->disabled_state |= (1 << 6) | (1 << 7);
- SET_DPARAM16(0, v->string_id);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, v->string_id);
+ SetDParam(1, v->unitnumber);
DrawWindowWidgets(w);
num = v->age / 366;
- SET_DPARAM16(1, num);
+ SetDParam(1, num);
x = 2;
@@ -1005,26 +1005,26 @@ static void DrawTrainDetailsWindow(Window *w)
if ((uint16)(v->max_age - 366) < v->age)
str += STR_019B_YEARS - STR_019A_YEARS;
}
- SET_DPARAM16(0, str);
- SET_DPARAM16(2, v->max_age / 366);
- SET_DPARAM32(3, GetTrainRunningCost(v) >> 8);
+ SetDParam(0, str);
+ SetDParam(2, v->max_age / 366);
+ SetDParam(3, GetTrainRunningCost(v) >> 8);
DrawString(x, 15, STR_885D_AGE_RUNNING_COST_YR, 0);
- SET_DPARAM16(2, v->max_speed * 10 >> 4);
- SET_DPARAM32(1, v->u.rail.cached_power);
- SET_DPARAM16(0, v->u.rail.cached_weight);
+ SetDParam(2, v->max_speed * 10 >> 4);
+ SetDParam(1, v->u.rail.cached_power);
+ SetDParam(0, v->u.rail.cached_weight);
DrawString(x, 25, STR_885E_WEIGHT_T_POWER_HP_MAX_SPEED, 0);
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(x, 35, STR_885F_PROFIT_THIS_YEAR_LAST_YEAR, 0);
- SET_DPARAM8(0, 100 * (v->reliability>>8) >> 8);
- SET_DPARAM16(1, v->breakdowns_since_last_service);
+ SetDParam(0, 100 * (v->reliability>>8) >> 8);
+ SetDParam(1, v->breakdowns_since_last_service);
DrawString(x, 45, STR_8860_RELIABILITY_BREAKDOWNS, 0);
- SET_DPARAM16(0, v->service_interval);
- SET_DPARAM16(1, v->date_of_last_service);
+ SetDParam(0, v->service_interval);
+ SetDParam(1, v->date_of_last_service);
DrawString(x + 11, 141, _patches.servint_ispercent?STR_SERVICING_INTERVAL_PERCENT:STR_883C_SERVICING_INTERVAL_DAYS, 0);
x = 1;
@@ -1050,10 +1050,10 @@ static void DrawTrainDetailsWindow(Window *w)
if (tot_cargo[i][1] > 0 && --sel < 0 && sel >= -5) {
y += 14;
// STR_013F_TOTAL_CAPACITY :{LTBLUE}- {CARGO} ({SHORTCARGO})
- SET_DPARAM8(0, i); // {CARGO} #1
- SET_DPARAM16(1, tot_cargo[i][0]); // {CARGO} #2
- SET_DPARAM8(2, i); // {SHORTCARGO} #1
- SET_DPARAM16(3, tot_cargo[i][1]); // {SHORTCARGO} #2
+ SetDParam(0, i); // {CARGO} #1
+ SetDParam(1, tot_cargo[i][0]); // {CARGO} #2
+ SetDParam(2, i); // {SHORTCARGO} #1
+ SetDParam(3, tot_cargo[i][1]); // {SHORTCARGO} #2
DrawString(x, y, STR_013F_TOTAL_CAPACITY, 0);
}
} while (++i != NUM_CARGO);
@@ -1072,7 +1072,7 @@ static void TrainDetailsWndProc(Window *w, WindowEvent *e)
switch(e->click.widget) {
case 2: /* name train */
v = &_vehicles[w->window_number];
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
ShowQueryString(v->string_id, STR_8865_NAME_TRAIN, 31, 150, w->window_class, w->window_number);
break;
case 6: /* inc serv interval */
@@ -1256,9 +1256,9 @@ static void PlayerTrainsWndProc(Window *w, WindowEvent *e)
{
Player *p = DEREF_PLAYER(window_number);
/* Company Name -- (###) Trains */
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, w->vscroll.count);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, w->vscroll.count);
DrawWindowWidgets(w);
}
/* draw sorting criteria string */
@@ -1283,7 +1283,7 @@ static void PlayerTrainsWndProc(Window *w, WindowEvent *e)
DrawTrainImage(v, x + 21, y + 6 + _traininfo_vehicle_pitch, 10, 0, INVALID_VEHICLE);
DrawVehicleProfitButton(v, x, y+13);
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
if (IsTrainDepotTile(v->tile)) {
str = STR_021F;
} else {
@@ -1291,12 +1291,12 @@ static void PlayerTrainsWndProc(Window *w, WindowEvent *e)
}
DrawString(x, y+2, str, 0);
- SET_DPARAM32(0, v->profit_this_year);
- SET_DPARAM32(1, v->profit_last_year);
+ SetDParam(0, v->profit_this_year);
+ SetDParam(1, v->profit_last_year);
DrawString(x + 21, y + 18, STR_0198_PROFIT_THIS_YEAR_LAST_YEAR, 0);
if (v->string_id != STR_SV_TRAIN_NAME) {
- SET_DPARAM16(0, v->string_id);
+ SetDParam(0, v->string_id);
DrawString(x+21, y, STR_01AB, 0);
}
diff --git a/ttd.c b/ttd.c
index fed7c0f3c..f3b269f35 100644
--- a/ttd.c
+++ b/ttd.c
@@ -630,7 +630,7 @@ int ttd_main(int argc, char* argv[])
static void ShowScreenshotResult(bool b)
{
if (b) {
- SET_DPARAM16(0, STR_SPEC_SCREENSHOT_NAME);
+ SetDParam(0, STR_SPEC_SCREENSHOT_NAME);
ShowErrorMessage(INVALID_STRING_ID, STR_031B_SCREENSHOT_SUCCESSFULLY, 0, 0);
} else {
ShowErrorMessage(INVALID_STRING_ID, STR_031C_SCREENSHOT_FAILED, 0, 0);
@@ -934,9 +934,9 @@ static void DoAutosave()
char *s;
sprintf(buf, "%s%s", _path.autosave_dir, PATHSEP);
p = DEREF_PLAYER(_local_player);
- SET_DPARAM16(0, p->name_1);
- SET_DPARAM32(1, p->name_2);
- SET_DPARAM16(2, _date);
+ SetDParam(0, p->name_1);
+ SetDParam(1, p->name_2);
+ SetDParam(2, _date);
s= (char*)GetString(buf + strlen(_path.autosave_dir) + strlen(PATHSEP) - 1, STR_4004);
strcpy(s, ".sav");
} else {
diff --git a/tunnelbridge_cmd.c b/tunnelbridge_cmd.c
index f49e7d22d..9930a9f1d 100644
--- a/tunnelbridge_cmd.c
+++ b/tunnelbridge_cmd.c
@@ -626,7 +626,7 @@ static int32 DoClearTunnel(uint tile, uint32 flags)
// removal allowal depends on difficulty settings
if(_map_owner[tile] == OWNER_TOWN && _game_mode != GM_EDITOR ) {
if (!CheckforTownRating(tile, flags, t, TUNNELBRIDGE_REMOVE)) {
- SET_DPARAM16(0, t->index);
+ SetDParam(0, t->index);
return_cmd_error(STR_2009_LOCAL_AUTHORITY_REFUSES);
}
}
diff --git a/unix.c b/unix.c
index c29008129..0704022ac 100644
--- a/unix.c
+++ b/unix.c
@@ -299,14 +299,14 @@ StringID FiosGetDescText(const char **path)
if (statvfs(*path, &s) == 0)
{
uint64 tot = (uint64)s.f_bsize * s.f_bavail;
- SET_DPARAM32(0, (uint32)(tot >> 20));
+ SetDParam(0, (uint32)(tot >> 20));
return STR_4005_BYTES_FREE;
}
else
return STR_4006_UNABLE_TO_READ_DRIVE;
}
#else
- SET_DPARAM32(0, 0);
+ SetDParam(0, 0);
return STR_4005_BYTES_FREE;
#endif
}
diff --git a/variables.h b/variables.h
index 68fb1f331..65416f960 100644
--- a/variables.h
+++ b/variables.h
@@ -367,36 +367,36 @@ VARDEF CargoConst _cargoc;
typedef byte TownNameGenerator(byte *buf, uint32 seed);
extern TownNameGenerator * const _town_name_generators[];
-#define SET_DPARAM32(n, v) (_decode_parameters[n] = (v))
-#define SET_DPARAMX32(s, n, v) ((s)[n] = (v))
-#define GET_DPARAM32(n) (_decode_parameters[n])
-#define SET_DPARAM(n, v) (_decode_parameters[n] = (v))
-#define SET_DPARAMX(s, n, v) ((s)[n] = (v))
-#define GET_DPARAM(n) (_decode_parameters[n])
+static inline void SetDParamX(uint32 *s, uint n, uint32 v)
+{
+ s[n] = v;
+}
-static void FORCEINLINE SET_DPARAM64(int n, int64 v)
+static inline uint32 GetDParamX(const uint32 *s, uint n)
{
- _decode_parameters[n] = (uint32)v;
- _decode_parameters[n+1] = (uint32)((uint64)v >> 32);
+ return s[n];
}
-#if defined(TTD_LITTLE_ENDIAN)
-#define SET_DPARAMX16(s, n, v) ( ((uint16*)(s+n))[0] = (v))
-#define SET_DPARAMX8(s, n, v) ( ((uint8*)(s+n))[0] = (v))
-#define GET_DPARAMX16(s, n) ( ((uint16*)(s+n))[0])
-#define GET_DPARAMX8(s, n) ( ((uint8*)(s+n))[0])
-#elif defined(TTD_BIG_ENDIAN)
-#define SET_DPARAMX16(s, n, v) ( ((uint16*)(s+n))[1] = (v))
-#define SET_DPARAMX8(s, n, v) ( ((uint8*)(s+n))[3] = (v))
-#define GET_DPARAMX16(s, n) ( ((uint16*)(s+n))[1])
-#define GET_DPARAMX8(s, n) ( ((uint8*)(s+n))[3])
-#endif
+static inline void SetDParam(uint n, uint32 v)
+{
+ assert(n < lengthof(_decode_parameters));
+ _decode_parameters[n] = v;
+}
+
+static inline void SetDParam64(uint n, uint64 v)
+{
+ assert(n + 1 < lengthof(_decode_parameters));
+ _decode_parameters[n + 0] = v & 0xffffffff;
+ _decode_parameters[n + 1] = v >> 32;
+}
+
+static inline uint32 GetDParam(uint n)
+{
+ assert(n < lengthof(_decode_parameters));
+ return _decode_parameters[n];
+}
-#define SET_DPARAM16(n, v) SET_DPARAMX16(_decode_parameters, n, v)
-#define SET_DPARAM8(n, v) SET_DPARAMX8(_decode_parameters, n, v)
-#define GET_DPARAM16(n) GET_DPARAMX16(_decode_parameters, n)
-#define GET_DPARAM8(n) GET_DPARAMX8(_decode_parameters, n)
#define COPY_IN_DPARAM(offs,src,num) memcpy(_decode_parameters + offs, src, sizeof(uint32) * (num))
#define COPY_OUT_DPARAM(dst,offs,num) memcpy(dst,_decode_parameters + offs, sizeof(uint32) * (num))
diff --git a/vehicle.c b/vehicle.c
index 2621adf30..8537e817f 100644
--- a/vehicle.c
+++ b/vehicle.c
@@ -112,7 +112,7 @@ void VehiclePositionChanged(Vehicle *v)
void UpdateWaypointSign(Waypoint *cp)
{
Point pt = RemapCoords2(GET_TILE_X(cp->xy)*16, GET_TILE_Y(cp->xy)*16);
- SET_DPARAM16(0, cp - _waypoints);
+ SetDParam(0, cp - _waypoints);
UpdateViewportSignPos(&cp->sign, pt.x, pt.y - 0x20, STR_WAYPOINT_VIEWPORT);
}
@@ -1309,8 +1309,8 @@ static void ShowVehicleGettingOld(Vehicle *v, StringID msg)
if (_patches.autorenew)
return;
- SET_DPARAM16(0, _vehicle_type_names[v->type - 0x10]);
- SET_DPARAM16(1, v->unitnumber);
+ SetDParam(0, _vehicle_type_names[v->type - 0x10]);
+ SetDParam(1, v->unitnumber);
AddNewsItem(msg, NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0), v->index, 0);
}
@@ -1350,7 +1350,7 @@ void MaybeRenewVehicle(Vehicle *v, int32 build_cost)
if (DEREF_PLAYER(v->owner)->money64 < _patches.autorenew_money + build_cost - v->value) {
if (v->owner == _local_player) {
int message;
- SET_DPARAM16(0, v->unitnumber);
+ SetDParam(0, v->unitnumber);
switch (v->type) {
case VEH_Train: message = STR_TRAIN_AUTORENEW_FAILED; break;
case VEH_Road: message = STR_ROADVEHICLE_AUTORENEW_FAILED; break;
diff --git a/vehicle_gui.c b/vehicle_gui.c
index 65342d626..048999dd8 100644
--- a/vehicle_gui.c
+++ b/vehicle_gui.c
@@ -95,7 +95,7 @@ int CDECL VehicleNameSorter(const void *a, const void *b)
int r;
if (va->string_id != _internal_name_sorter_id) {
- SET_DPARAM16(0, va->string_id);
+ SetDParam(0, va->string_id);
GetString(buf1, STR_0315);
}
@@ -103,7 +103,7 @@ int CDECL VehicleNameSorter(const void *a, const void *b)
_last_vehicle_idx = cmp2->index;
_bufcache[0] = '\0';
if (vb->string_id != _internal_name_sorter_id) {
- SET_DPARAM16(0, vb->string_id);
+ SetDParam(0, vb->string_id);
GetString(_bufcache, STR_0315);
}
}
diff --git a/viewport.c b/viewport.c
index 5adb9cf05..dfe527da1 100644
--- a/viewport.c
+++ b/viewport.c
@@ -1108,8 +1108,8 @@ static void ViewportDrawStrings(DrawPixelInfo *dpi, StringSpriteToDraw *ss)
DrawFrameRect(x,y, x+w, bottom, ss->color, (_display_opt & DO_TRANS_BUILDINGS) ? 0x9 : 0);
}
- SET_DPARAM32(0, ss->params[0]);
- SET_DPARAM32(1, ss->params[1]);
+ SetDParam(0, ss->params[0]);
+ SetDParam(1, ss->params[1]);
if (_display_opt & DO_TRANS_BUILDINGS && ss->width != 0) {
/* This is such a frustrating mess - I need to convert
* from real color codes to string color codes and guess
diff --git a/water_cmd.c b/water_cmd.c
index 016b11b86..fc34b323b 100644
--- a/water_cmd.c
+++ b/water_cmd.c
@@ -558,7 +558,7 @@ static void FloodVehicle(Vehicle *v)
InvalidateWindowWidget(WC_VEHICLE_VIEW, v->index, 4);
InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
- SET_DPARAM16(0, pass);
+ SetDParam(0, pass);
AddNewsItem(STR_B006_FLOOD_VEHICLE_DESTROYED,
NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_VEHICLE, NT_ACCIDENT, 0),
v->index,
diff --git a/win32.c b/win32.c
index e85562456..ffe74e73f 100644
--- a/win32.c
+++ b/win32.c
@@ -1761,7 +1761,7 @@ StringID FiosGetDescText(const char **path)
root[3] = 0;
if (GetDiskFreeSpace(root, &spc, &bps, &nfc, &tnc)) {
uint32 tot = ((spc*bps)*(uint64)nfc) >> 20;
- SET_DPARAM32(0, tot);
+ SetDParam(0, tot);
return STR_4005_BYTES_FREE;
} else {
return STR_4006_UNABLE_TO_READ_DRIVE;