|
|
|
@ -2,7 +2,8 @@
|
|
|
|
|
|
|
|
|
|
Copyright (c) 2005 Juan Pablo D. Borgna <jpborgna en inti gov ar>
|
|
|
|
|
Copyright (c) 2006-2007 Salvador E. Tropea <salvador en inti gov ar>
|
|
|
|
|
Copyright (c) 2005-2007 Instituto Nacional de Tecnología Industrial
|
|
|
|
|
Copyright (c) 2005-2007 Instituto Nacional de Tecnolog<EFBFBD>a Industrial
|
|
|
|
|
Copyright (c) 2012 Timothy Pearson <kb9vqf@pearsoncomputing.net>
|
|
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
@ -276,6 +277,30 @@ do_command(char *cmd, FILE *dfp, FILE *ofp, int *col)
|
|
|
|
|
}
|
|
|
|
|
/* end SBITS command */
|
|
|
|
|
|
|
|
|
|
/* SADDBITS command */
|
|
|
|
|
if (strstr(cmd,"SADDBITS"))
|
|
|
|
|
{
|
|
|
|
|
/* get the args inside the () */
|
|
|
|
|
args_pos_s=strchr(cmd,'(');
|
|
|
|
|
args_pos_e=strchr(cmd,')');
|
|
|
|
|
if((!args_pos_s && args_pos_e )|| (!args_pos_e && args_pos_s))
|
|
|
|
|
{
|
|
|
|
|
fprintf(stderr,"Bad argument specification in $SADDBITS(VAL)$\n");
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
if (!args_pos_s && !args_pos_e)
|
|
|
|
|
{
|
|
|
|
|
fprintf(stderr,"Bad argument specification in $SADDBITS(VAL)$\n");
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
memcpy(args,args_pos_s+1,(size_t)(args_pos_e-args_pos_s)); /* Copy the argument */
|
|
|
|
|
args[args_pos_e-args_pos_s-1]='\0'; /* Put the null terminator */
|
|
|
|
|
value=value_from(args);
|
|
|
|
|
*col+=fprintf(ofp,"%d",(unsigned int)(s_bits+value));
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
/* end SADDBITS command */
|
|
|
|
|
|
|
|
|
|
/* SBYTES command */
|
|
|
|
|
if (strstr(cmd,"SBYTES"))
|
|
|
|
|
{
|
|
|
|
|