| 1446 | return maxlen; |
| 1447 | } |
| 1448 | int trap_get_string(TrapContext *ctx, void *haddrp, uaecptr addr, int maxlen) |
| 1449 | { |
| 1450 | int len = 0; |
| 1451 | uae_u8 *haddr = (uae_u8*)haddrp; |
| 1452 | |
| 1453 | if (maxlen <= 0) |
| 1454 | return 0; |
| 1455 | |
| 1456 | while (len < maxlen - 1) { |
| 1457 | uae_u8 v = trap_get_byte(ctx, addr + len); |
| 1458 | haddr[len] = v; |
| 1459 | if (!v) |
| 1460 | return len; |
| 1461 | len++; |
| 1462 | } |
| 1463 | |
| 1464 | haddr[len] = 0; |
| 1465 | if (!trap_get_byte(ctx, addr + len)) |
| 1466 | return len; |
| 1467 | return maxlen; |
| 1468 | } |
| 1469 | uae_char *trap_get_alloc_string(TrapContext *ctx, uaecptr addr, int maxlen) |
| 1470 | { |
| 1471 | uae_char *buf = xmalloc(uae_char, maxlen); |
no test coverage detected