From 6092bdc4b163977bb5f31df50e6b2a6def28aac5 Mon Sep 17 00:00:00 2001 From: Chernov Dmitriy <cd_work@mail.ru> Date: ćšć, 25 2æ 2016 21:53:34 +0800 Subject: [PATCH] start #73 --- libscpi/src/minimal.c | 33 +++++++++++++++++++++++---------- 1 files changed, 23 insertions(+), 10 deletions(-) diff --git a/libscpi/src/minimal.c b/libscpi/src/minimal.c index ec4680d..ecfcaf2 100644 --- a/libscpi/src/minimal.c +++ b/libscpi/src/minimal.c @@ -57,7 +57,7 @@ * @return */ scpi_result_t SCPI_StubQ(scpi_t * context) { - SCPI_ResultString(context, ""); + SCPI_ResultInt32(context, 0); return SCPI_RES_OK; } @@ -67,7 +67,7 @@ * @return */ scpi_result_t SCPI_SystemVersionQ(scpi_t * context) { - SCPI_ResultString(context, SCPI_DEV_VERSION); + SCPI_ResultMnemonic(context, SCPI_STD_VERSION_REVISION); return SCPI_RES_OK; } @@ -77,11 +77,24 @@ * @return */ scpi_result_t SCPI_SystemErrorNextQ(scpi_t * context) { - int16_t err = SCPI_ErrorPop(context); + scpi_error_t error; + if(!SCPI_ErrorPopEx(context, &error))return SCPI_RES_ERR; + + //int16_t err = SCPI_ErrorPop(context); - SCPI_ResultInt(context, err); - SCPI_ResultText(context, SCPI_ErrorTranslate(err)); + SCPI_ResultInt32(context, error.error_code); + SCPI_ResultText(context, SCPI_ErrorTranslate(error.error_code)); + + size_t info_len=0; + if(error.device_dependent_info){ + info_len=SCPIDEFINE_strnlen(error.device_dependent_info,255); + SCPI_ResultCharacters(context, ";", 1); + SCPI_ResultText(context, error.device_dependent_info); + SCPIDEFINE_free(error.device_dependent_info); + } + + return SCPI_RES_OK; } @@ -91,7 +104,7 @@ * @return */ scpi_result_t SCPI_SystemErrorCountQ(scpi_t * context) { - SCPI_ResultInt(context, SCPI_ErrorCount(context)); + SCPI_ResultInt32(context, SCPI_ErrorCount(context)); return SCPI_RES_OK; } @@ -103,7 +116,7 @@ */ scpi_result_t SCPI_StatusQuestionableEventQ(scpi_t * context) { /* return value */ - SCPI_ResultInt(context, SCPI_RegGet(context, SCPI_REG_QUES)); + SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_QUES)); /* clear register */ SCPI_RegSet(context, SCPI_REG_QUES, 0); @@ -118,7 +131,7 @@ */ scpi_result_t SCPI_StatusQuestionableEnableQ(scpi_t * context) { /* return value */ - SCPI_ResultInt(context, SCPI_RegGet(context, SCPI_REG_QUESE)); + SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_QUESE)); return SCPI_RES_OK; } @@ -130,8 +143,8 @@ */ scpi_result_t SCPI_StatusQuestionableEnable(scpi_t * context) { int32_t new_QUESE; - if (SCPI_ParamInt(context, &new_QUESE, TRUE)) { - SCPI_RegSet(context, SCPI_REG_QUESE, new_QUESE); + if (SCPI_ParamInt32(context, &new_QUESE, TRUE)) { + SCPI_RegSet(context, SCPI_REG_QUESE, (scpi_reg_val_t) new_QUESE); } return SCPI_RES_OK; } -- Gitblit v1.9.1