void pstrcpy_targphys(const char *name, target_phys_addr_t dest, int buf_size,

                      const char *source)

{

    const char *nulp;

    char *ptr;



    if (buf_size <= 0) return;

    nulp = memchr(source, 0, buf_size);

    if (nulp) {

        rom_add_blob_fixed(name, source, (nulp - source) + 1, dest);

    } else {

        rom_add_blob_fixed(name, source, buf_size, dest);

        ptr = rom_ptr(dest + buf_size - 1);

        *ptr = 0;

    }

}

void pstrcpy_targphys(const char *name, target_phys_addr_t dest, int buf_size,

                      const char *source)

{

    const char *nulp;

    char *ptr;



    if (buf_size <= 0) return;

    nulp = memchr(source, 0, buf_size);

    if (nulp) {

        rom_add_blob_fixed(name, source, (nulp - source) + 1, dest);

    } else {

        rom_add_blob_fixed(name, source, buf_size, dest);

        ptr = rom_ptr(dest + buf_size - 1);

        *ptr = 0;

    }

}

void FUNC_0(const char *VAR_0, target_phys_addr_t VAR_1, int VAR_2,

                      const char *VAR_3)

{

    const char *VAR_4;

    char *VAR_5;



    if (VAR_2 <= 0) return;

    VAR_4 = memchr(VAR_3, 0, VAR_2);

    if (VAR_4) {

        rom_add_blob_fixed(VAR_0, VAR_3, (VAR_4 - VAR_3) + 1, VAR_1);

    } else {

        rom_add_blob_fixed(VAR_0, VAR_3, VAR_2, VAR_1);

        VAR_5 = rom_ptr(VAR_1 + VAR_2 - 1);

        *VAR_5 = 0;

    }

}

void FUNC_0(const char *VAR_0, target_phys_addr_t VAR_1, int VAR_2,
const char *VAR_3)
{ const char *VAR_4; char *VAR_5; if (VAR_2 <= 0) return; VAR_4 = memchr(VAR_3, 0, VAR_2); if (VAR_4) { rom_add_blob_fixed(VAR_0, VAR_3, (VAR_4 - VAR_3) + 1, VAR_1); } else { rom_add_blob_fixed(VAR_0, VAR_3, VAR_2, VAR_1); VAR_5 = rom_ptr(VAR_1 + VAR_2 - 1); *VAR_5 = 0; } }