rem: bits, GetString((stereo ?
add: bits, (ULONG) GetString((stereo ?
context: static void UpdateInfoWindow( struct AHIAudioModeRequesterExt *req ){  LONG id=0, bits=0, stereo=0, pan=0, hifi=0, channels=0, minmix=0, maxmix=0,       record=0, fullduplex=0;  int i;  id = req->tempAudioID;  if(id == AHI_DEFAULT_ID)  {    id = AHIBase->ahib_AudioMode;  }  if(req->InfoWindow)  {    AHI_GetAudioAttrs(id, NULL,      AHIDB_Stereo,       (ULONG) &stereo,      AHIDB_Panning,      (ULONG) &pan,      AHIDB_HiFi,         (ULONG) &hifi,      AHIDB_Record,       (ULONG) &record,      AHIDB_FullDuplex,   (ULONG) &fullduplex,      AHIDB_Bits,         (ULONG) &bits,      AHIDB_MaxChannels,  (ULONG) &channels,      AHIDB_MinMixFreq,   (ULONG) &minmix,      AHIDB_MaxMixFreq,   (ULONG) &maxmix,      TAG_DONE);    GT_SetGadgetAttrs(req->InfoListViewGadget, req->InfoWindow, NULL,        GTLV_Labels, ~0,        TAG_DONE);    NewList((struct List *) &req->InfoList);    for(i=0; i<ATTRNODES; i++)    {      req->AttrNodes[i].node.ln_Name = req->AttrNodes[i].text;      req->AttrNodes[i].text[0]      = '\0';      req->AttrNodes[i].node.ln_Type = NT_USER;      req->AttrNodes[i].node.ln_Pri  = 0;    }    i = 0;    AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);    Sprintf(req->AttrNodes[i++].text, GetString(msgReqInfoAudioID, req->Catalog),        id);    AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);    Sprintf(req->AttrNodes[i++].text, GetString(msgReqInfoResolution, req->Catalog),        bits, GetString((stereo ?          (pan ? msgReqInfoStereoPan : msgReqInfoStereo) :          msgReqInfoMono), req->Catalog));    AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);    Sprintf(req->AttrNodes[i++].text, GetString(msgReqInfoChannels, req->Catalog),        channels);    AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);    Sprintf(req->AttrNodes[i++].text, GetString(msgReqInfoMixrate, req->Catalog),        minmix, maxmix);    if(hifi)    {      AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);      Sprintf(req->AttrNodes[i++].text, GetString(msgReqInfoHiFi, req->Catalog));    }    if(record)    {      AddTail((struct List *) &req->InfoList,(struct Node *) &req->AttrNodes[i]);      Sprintf(req->AttrNodes[i++].text, GetString(          fullduplex ? msgReqInfoRecordFull : msgReqInfoRecordHalf, req->Catalog));    }    GT_SetGadgetAttrs(req->InfoListViewGadget, req->InfoWindow, NULL,        GTLV_Labels, (ULONG) &req->InfoList,        TAG_DONE);  }}