in resource.h:
Code: Alles auswählen
#define MAX_STATE_TEXT_LEN 18 /* maximum characters printable in status line, excl. null terminator */
#define RESTXT_STATE_WATERTEMP "Kühlwasser zu heiß"
#define RESTXT_STATE_OILTEMP "Öl zu heiß"
#define RESTXT_STATE_ENGINE_COLD "Motor noch kalt"
#define RESTXT_STATE_VOLTAGE "Spannung niedrig"
#define RESTXT_STATE_ALLRIGHT " Alles ok"
Und dann in mondev.c:
Code: Alles auswählen
static char far *szStateDescs[LAST_VEHICLE_STATE_PARM]; /* parameter names */
static char far *szStateAllRight;
static char szState[MAX_STATE_TEXT_LEN+1];
...
void MonDevInit(void)
{
...
szStateAllRight = RESTXT_STATE_ALLRIGHT;
szStateDescs[VEHICLE_STATE_WATTEMP] = RESTXT_STATE_WATERTEMP;
szStateDescs[VEHICLE_STATE_OILTEMP] = RESTXT_STATE_OILTEMP;
szStateDescs[VEHICLE_STATE_ENGINECOLD] = RESTXT_STATE_ENGINE_COLD;
...
Code: Alles auswählen
strcpy(szState, szStateAllRight);
Code: Alles auswählen
DebugOut("state init to: ");
DebugOut(szState);
Nach langem Rätseln war ich verzweifelt und habe folgendes geschrieben:
Code: Alles auswählen
for (i = 0; szStateAllRight[i] != 0x00; i++) {
szState[i] = szStateAllRight[i];
}
szState[i] = 0x00;
DebugOut("state init to:");
DebugOut(szState);
Jetzt will ichs wissen:
Code: Alles auswählen
DebugOut(RESTXT_STATE_ALLRIGHT)
Vielleicht isses ja schon zu spät und ich seh den Wald vor lauter Bäumen nicht, aber warum fliegt er nach dem strcpy auf die Nase? Und warum ist szSate immer "Motor noch kalt", anstatt "Alles ok"??
Rätselt mal schön, ich geh jetzt schlafen.
