add support for SI16 signed integer type

This commit is contained in:
Denis Ahrens
2013-02-02 16:36:42 +01:00
parent dd63c65655
commit 44c4e1d15a
2 changed files with 8 additions and 0 deletions

View File

@ -97,6 +97,11 @@ void printSI8(SMCVal_t val)
printf("%d ", (signed char)*val.bytes); printf("%d ", (signed char)*val.bytes);
} }
void printSI16(SMCVal_t val)
{
printf("%d ", ntohs(*(SInt16*)val.bytes));
}
void printBytesHex(SMCVal_t val) void printBytesHex(SMCVal_t val)
{ {
int i; int i;
@ -122,6 +127,8 @@ void printVal(SMCVal_t val)
printSP78(val); printSP78(val);
else if (strcmp(val.dataType, DATATYPE_SI8) == 0 && val.dataSize == 1) else if (strcmp(val.dataType, DATATYPE_SI8) == 0 && val.dataSize == 1)
printSI8(val); printSI8(val);
else if (strcmp(val.dataType, DATATYPE_SI16) == 0 && val.dataSize == 2)
printSI16(val);
printBytesHex(val); printBytesHex(val);
} }

View File

@ -44,6 +44,7 @@
#define DATATYPE_UINT32 "ui32" #define DATATYPE_UINT32 "ui32"
#define DATATYPE_SP78 "sp78" #define DATATYPE_SP78 "sp78"
#define DATATYPE_SI8 "si8 " #define DATATYPE_SI8 "si8 "
#define DATATYPE_SI16 "si16"
typedef struct { typedef struct {
char major; char major;