| 2389 | |
| 2390 | #ifndef ASPM_GPU |
| 2391 | void SaveDataBlock(BC6H_Encode_local* bc6h_format, CMP_GLOBAL CGU_UINT8 cmpout[COMPRESSED_BLOCK_SIZE]) |
| 2392 | { |
| 2393 | BitHeader header(NULL, COMPRESSED_BLOCK_SIZE); |
| 2394 | |
| 2395 | // Save the RGB end point values |
| 2396 | switch (bc6h_format->m_mode) |
| 2397 | { |
| 2398 | case 1: //0x00 |
| 2399 | header.setvalue(0, 2, 0x00); |
| 2400 | header.setvalue(2, 1, bc6h_format->gy, 4); // gy[4] |
| 2401 | header.setvalue(3, 1, bc6h_format->by, 4); // by[4] |
| 2402 | header.setvalue(4, 1, bc6h_format->bz, 4); // bz[4] |
| 2403 | header.setvalue(5, 10, bc6h_format->rw); // 10: rw[9:0] |
| 2404 | header.setvalue(15, 10, bc6h_format->gw); // 10: gw[9:0] |
| 2405 | header.setvalue(25, 10, bc6h_format->bw); // 10: bw[9:0] |
| 2406 | header.setvalue(35, 5, bc6h_format->rx); // 5: rx[4:0] |
| 2407 | header.setvalue(40, 1, bc6h_format->gz, 4); // gz[4] |
| 2408 | header.setvalue(41, 4, bc6h_format->gy); // 5: gy[3:0] |
| 2409 | header.setvalue(45, 5, bc6h_format->gx); // 5: gx[4:0] |
| 2410 | header.setvalue(50, 1, bc6h_format->bz); // 5: bz[0] |
| 2411 | header.setvalue(51, 4, bc6h_format->gz); // 5: gz[3:0] |
| 2412 | header.setvalue(55, 5, bc6h_format->bx); // 5: bx[4:0] |
| 2413 | header.setvalue(60, 1, bc6h_format->bz, 1); // bz[1] |
| 2414 | header.setvalue(61, 4, bc6h_format->by); // 5: by[3:0] |
| 2415 | header.setvalue(65, 5, bc6h_format->ry); // 5: ry[4:0] |
| 2416 | header.setvalue(70, 1, bc6h_format->bz, 2); // bz[2] |
| 2417 | header.setvalue(71, 5, bc6h_format->rz); // 5: rz[4:0] |
| 2418 | header.setvalue(76, 1, bc6h_format->bz, 3); // bz[3] |
| 2419 | break; |
| 2420 | case 2: // 0x01 |
| 2421 | header.setvalue(0, 2, 0x01); |
| 2422 | header.setvalue(2, 1, bc6h_format->gy, 5); // gy[5] |
| 2423 | header.setvalue(3, 1, bc6h_format->gz, 4); // gz[4] |
| 2424 | header.setvalue(4, 1, bc6h_format->gz, 5); // gz[5] |
| 2425 | header.setvalue(5, 7, bc6h_format->rw); // rw[6:0] |
| 2426 | header.setvalue(12, 1, bc6h_format->bz); // bz[0] |
| 2427 | header.setvalue(13, 1, bc6h_format->bz, 1); // bz[1] |
| 2428 | header.setvalue(14, 1, bc6h_format->by, 4); // by[4] |
| 2429 | header.setvalue(15, 7, bc6h_format->gw); // gw[6:0] |
| 2430 | header.setvalue(22, 1, bc6h_format->by, 5); // by[5] |
| 2431 | header.setvalue(23, 1, bc6h_format->bz, 2); // bz[2] |
| 2432 | header.setvalue(24, 1, bc6h_format->gy, 4); // gy[4] |
| 2433 | header.setvalue(25, 7, bc6h_format->bw); // 7: bw[6:0] |
| 2434 | header.setvalue(32, 1, bc6h_format->bz, 3); // bz[3] |
| 2435 | header.setvalue(33, 1, bc6h_format->bz, 5); // bz[5] |
| 2436 | header.setvalue(34, 1, bc6h_format->bz, 4); // bz[4] |
| 2437 | header.setvalue(35, 6, bc6h_format->rx); // 6: rx[5:0] |
| 2438 | header.setvalue(41, 4, bc6h_format->gy); // 6: gy[3:0] |
| 2439 | header.setvalue(45, 6, bc6h_format->gx); // 6: gx[5:0] |
| 2440 | header.setvalue(51, 4, bc6h_format->gz); // 6: gz[3:0] |
| 2441 | header.setvalue(55, 6, bc6h_format->bx); // 6: bx[5:0] |
| 2442 | header.setvalue(61, 4, bc6h_format->by); // 6: by[3:0] |
| 2443 | header.setvalue(65, 6, bc6h_format->ry); // 6: ry[5:0] |
| 2444 | header.setvalue(71, 6, bc6h_format->rz); // 6: rz[5:0] |
| 2445 | break; |
| 2446 | case 3: // 0x02 |
| 2447 | header.setvalue(0, 5, 0x02); |
| 2448 | header.setvalue(5, 10, bc6h_format->rw); // 11: rw[9:0] |
no test coverage detected