Someone off list suggested I stop using /r and instead append a 13 to
the end of the string.
This changes the error to:
BOUNDS VIOLATION (FSERR 73)
Invalid message level - expected 0, 1, 2. (CIWARN 9007)
û ÙPSHOWTIME > TIME.GECS.SYS
Invalid first character in command name. (CIERR 9090)
New Err -15361 9090
The code now looks like:
int main (int arg,char* argv[])
{
short cmderror;
short parmnum;
char cmdbuf[256];
memset(cmdbuf, 0, 256);
strcpy(cmdbuf, "SHOWTIME > TIME.GECS.SYS");
*(cmdbuf + strlen(cmdbuf)) = (char)13;
HPCICOMMAND(cmdbuf, &cmderror, &parmnum);
printf("New Err %d %d\n", cmderror, parmnum);
return 0;
}
This is even more confusing, this is just a normal ascii string.
Keven Miller (rtt) wrote:
> Daniel Griffin wrote:
>> HPCICOMMAND("SHOWTIME > TIME.GECS.SYS\r", &cmderror, &parmnum);
>>
>> I am compiling on version 6.5 in the Posix shell using GCC. (The
>> source is obviously C and has to remain C). Is this a bug or am I
>> doing something wrong? I have tried a variety of command lines and
>> different string formats with no effect.
>
> Because your using GCC, beware of system intrinsics that have documented
> (and undocumented) optional parameters.
>
> HICICOMMAND has 4 parameters. Although the intrinsic manual says
> the last two are optional, GCC doesn't know that.
> So you have to provide the missing parameters or mask or which ever
> the intrinsic is looking for.
>
> Note that parm 4 does say it defaults to a value of 0.
> So
> HPCICOMMAND("SHOWTIME > TIME.GECS.SYS\r", &cmderror, &parmnum, 0 );
>
> should work in this case.
>
> Keven
>
> * To join/leave the list, search archives, change list settings, *
> * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
>
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|