- if( len ) {
-
- buffer = malloc(len);
-
- DEBUG("addr: 0x%8.8x, len: 0x%8.8x", addr, len);
-
- memcpy( buffer, separator, len );
-
- switch (len)
- {
- case 4:
- if ((addr % 4) == 0)
- retval = target->type->write_memory(target, addr, 4, 1, buffer);
- else
- retval = target->type->write_memory(target, addr, 1, len, buffer);
- break;
- case 2:
- if ((addr % 2) == 0)
- retval = target->type->write_memory(target, addr, 2, 1, buffer);
- else
- retval = target->type->write_memory(target, addr, 1, len, buffer);
- break;
- case 3:
- case 1:
- retval = target->type->write_memory(target, addr, 1, len, buffer);
- break;
- default:
- retval = target_write_buffer(target, addr, len, buffer);
- break;
- }