1386{
1388 char *pdata, *pendbk;
1389 DWORD length_type = 0, lrl;
1391
1392 lrl = pbk->data_size;
1393 type = pbk->type & 0xff;
1395 memcpy(
bank_name, (
char *) (pbk->name), 4);
1396 pdata = (char *) (pbk + 1);
1397
1400 strcpy(strbktype, "Unknown format");
1402 length_type = sizeof(double);
1403 strcpy(strbktype, "double*8");
1404 }
1406 length_type = sizeof(float);
1407 strcpy(strbktype, "Real*4 (FMT machine dependent)");
1408 }
1410 length_type = sizeof(uint64_t);
1411 strcpy(strbktype, "Unsigned Integer*8");
1412 }
1414 length_type = sizeof(int64_t);
1415 strcpy(strbktype, "Signed Integer*8");
1416 }
1418 length_type =
sizeof(
DWORD);
1419 strcpy(strbktype, "Unsigned Integer*4");
1420 }
1422 length_type =
sizeof(
INT);
1423 strcpy(strbktype, "Signed Integer*4");
1424 }
1426 length_type =
sizeof(
WORD);
1427 strcpy(strbktype, "Unsigned Integer*2");
1428 }
1430 length_type = sizeof(short);
1431 strcpy(strbktype, "Signed Integer*2");
1432 }
1434 length_type =
sizeof(
BYTE);
1435 strcpy(strbktype, "Unsigned Bytes");
1436 }
1438 length_type =
sizeof(
BYTE);
1439 strcpy(strbktype, "Signed Bytes");
1440 }
1442 length_type =
sizeof(
DWORD);
1443 strcpy(strbktype, "Boolean");
1444 }
1446 length_type = sizeof(char);
1447 strcpy(strbktype, "8 bit ASCII");
1448 }
1450 length_type = sizeof(char);
1451 strcpy(strbktype, "STRUCT (not supported->8 bits)");
1452 }
1454 length_type = sizeof(char);
1455 strcpy(strbktype, "String 8bit ASCI");
1456 }
1457
1458 printf("\nBank:%s Length: %i(I*1)/%i(I*4)/%i(Type) Type:%s",
1459 bank_name, lrl, lrl >> 2, lrl / (length_type == 0 ? 1 : length_type), strbktype);
1460
1461 pendbk = pdata + lrl;
1462 while (pdata < pendbk) {
1466 printf(
"\n%4i-> ",
i);
1469 }
1470 printf("%15.5e ", *((double *) pdata));
1471 pdata = (char *) (((double *) pdata) + 1);
1473 break;
1476 printf(
"\n%4i-> ",
i);
1479 }
1481 printf("%8.3e ", *((float *) pdata));
1483 printf(
"0x%8.8x ", *((
DWORD *) pdata));
1484 pdata = (
char *) (((
DWORD *) pdata) + 1);
1486 break;
1489 printf(
"\n%4i-> ",
i);
1492 }
1494 printf("%16.1llu ", (long long unsigned int) *((uint64_t *) pdata));
1496 printf("0x%16.16llx ", (long long unsigned int) *((uint64_t *) pdata));
1497 pdata = (char *) (((uint64_t *) pdata) + 1);
1499 break;
1502 printf(
"\n%4i-> ",
i);
1505 }
1507 printf("%16.1lli ", (long long int) *((int64_t *) pdata));
1509 printf("0x%16.16llx ", (long long unsigned int) *((int64_t *) pdata));
1510 pdata = (char *) (((int64_t *) pdata) + 1);
1512 break;
1515 printf(
"\n%4i-> ",
i);
1518 }
1520 printf(
"%8.1i ", *((
DWORD *) pdata));
1522 printf(
"0x%8.8x ", *((
DWORD *) pdata));
1523 pdata = (
char *) (((
DWORD *) pdata) + 1);
1525 break;
1528 printf(
"\n%4i-> ",
i);
1531 }
1533 printf(
"%8.1i ", *((
DWORD *) pdata));
1535 printf(
"0x%8.8x ", *((
DWORD *) pdata));
1536 pdata = (
char *) (((
DWORD *) pdata) + 1);
1538 break;
1541 printf(
"\n%4i-> ",
i);
1544 }
1546 printf(
"%5.1i ", *((
WORD *) pdata));
1548 printf(
"0x%4.4x ", *((
WORD *) pdata));
1549 pdata = (
char *) (((
WORD *) pdata) + 1);
1551 break;
1554 printf(
"\n%4i-> ",
i);
1557 }
1559 printf("%5.1i ", *((short *) pdata));
1561 printf("0x%4.4x ", *((short *) pdata));
1562 pdata = (char *) (((short *) pdata) + 1);
1564 break;
1568 printf(
"\n%4i-> ",
i);
1571 }
1573 printf(
"%4.i ", *((
BYTE *) pdata));
1575 printf(
"0x%2.2x ", *((
BYTE *) pdata));
1576 pdata++;
1578 break;
1581 printf(
"\n%4i-> ",
i);
1584 }
1586 printf(
"%4.i ", *((
BYTE *) pdata));
1588 printf(
"0x%2.2x ", *((
BYTE *) pdata));
1589 pdata++;
1591 break;
1594 printf(
"\n%4i-> ",
i);
1597 }
1598 (*((
BOOL *) pdata) != 0) ? printf(
"Y ") : printf(
"N ");
1599 pdata = (
char *) (((
DWORD *) pdata) + 1);
1601 break;
1605 printf(
"\n%4i-> ",
i);
1608 }
1610 printf(
"%3.i ", *((
BYTE *) pdata));
1612 printf("%1.1s ", (char *) pdata);
1614 printf(
"0x%2.2x ", *((
BYTE *) pdata));
1615 pdata++;
1617 break;
1618 default:
1619 printf(
"bank type not supported (%d)\n",
type);
1620 return;
1621 break;
1622 }
1623 }
1624 printf("\n");
1625 return;
1626}