trunk/src/emu/diimage.c
| r26671 | r26672 | |
| 434 | 434 | return NULL; |
| 435 | 435 | } |
| 436 | 436 | |
| 437 | |
| 438 | //------------------------------------------------- |
| 439 | // load_software_region - |
| 440 | //------------------------------------------------- |
| 441 | |
| 442 | bool device_image_interface::load_software_region(const char *tag, optional_shared_ptr<UINT8> &ptr) |
| 443 | { |
| 444 | size_t size = get_software_region_length(tag); |
| 445 | |
| 446 | if (size) |
| 447 | { |
| 448 | ptr.allocate(size); |
| 449 | |
| 450 | memcpy(ptr, get_software_region(tag), size); |
| 451 | } |
| 452 | |
| 453 | return size > 0; |
| 454 | } |
| 455 | |
| 437 | 456 | /**************************************************************************** |
| 438 | 457 | Hash info loading |
| 439 | 458 | |
trunk/src/emu/diimage.h
| r26671 | r26672 | |
| 176 | 176 | bool has_been_created() { return m_created; } |
| 177 | 177 | void make_readonly() { m_readonly = true; } |
| 178 | 178 | UINT32 fread(void *buffer, UINT32 length) { check_for_file(); return core_fread(m_file, buffer, length); } |
| 179 | UINT32 fread(optional_shared_ptr<UINT8> &ptr, UINT32 length) { ptr.allocate(length); return fread(ptr, length); } |
| 180 | UINT32 fread(optional_shared_ptr<UINT8> &ptr, UINT32 length, offs_t offset) { ptr.allocate(length); return fread(ptr + offset, length - offset); } |
| 179 | 181 | UINT32 fwrite(const void *buffer, UINT32 length) { check_for_file(); return core_fwrite(m_file, buffer, length); } |
| 180 | 182 | int fseek(INT64 offset, int whence) { check_for_file(); return core_fseek(m_file, offset, whence); } |
| 181 | 183 | UINT64 ftell() { check_for_file(); return core_ftell(m_file); } |
| r26671 | r26672 | |
| 201 | 203 | UINT8 *get_software_region(const char *tag); |
| 202 | 204 | UINT32 get_software_region_length(const char *tag); |
| 203 | 205 | const char *get_feature(const char *feature_name); |
| 206 | bool load_software_region(const char *tag, optional_shared_ptr<UINT8> &ptr); |
| 204 | 207 | |
| 205 | 208 | UINT32 crc(); |
| 206 | 209 | hash_collection& hash() { return m_hash; } |