trunk/src/emu/memory.c
| r20703 | r20704 | |
| 4500 | 4500 | handler_entry::copy(entry); |
| 4501 | 4501 | handler_entry_read *rentry = static_cast<handler_entry_read *>(entry); |
| 4502 | 4502 | m_read = rentry->m_read; |
| 4503 | | memcpy(m_subread, rentry->m_subread, m_subunits*sizeof(access_handler)); |
| 4503 | for(int i = 0; i < m_subunits; ++i) |
| 4504 | { |
| 4505 | switch(m_subunit_infos[i].m_size) |
| 4506 | { |
| 4507 | case 8: |
| 4508 | m_subread[i].r8 = rentry->m_subread[i].r8; |
| 4509 | break; |
| 4510 | case 16: |
| 4511 | m_subread[i].r16 = rentry->m_subread[i].r16; |
| 4512 | break; |
| 4513 | case 32: |
| 4514 | m_subread[i].r32 = rentry->m_subread[i].r32; |
| 4515 | break; |
| 4516 | } |
| 4517 | } |
| 4504 | 4518 | memcpy(m_sub_is_legacy, rentry->m_sub_is_legacy, m_subunits*sizeof(bool)); |
| 4505 | 4519 | memcpy(m_sublegacy_info, rentry->m_sublegacy_info, m_subunits*sizeof(legacy_info)); |
| 4506 | 4520 | } |
| r20703 | r20704 | |
| 4936 | 4950 | handler_entry::copy(entry); |
| 4937 | 4951 | handler_entry_write *wentry = static_cast<handler_entry_write *>(entry); |
| 4938 | 4952 | m_write = wentry->m_write; |
| 4939 | | memcpy(m_subwrite, wentry->m_subwrite, m_subunits*sizeof(access_handler)); |
| 4953 | for(int i = 0; i < m_subunits; ++i) |
| 4954 | { |
| 4955 | switch(m_subunit_infos[i].m_size) |
| 4956 | { |
| 4957 | case 8: |
| 4958 | m_subwrite[i].w8 = wentry->m_subwrite[i].w8; |
| 4959 | break; |
| 4960 | case 16: |
| 4961 | m_subwrite[i].w16 = wentry->m_subwrite[i].w16; |
| 4962 | break; |
| 4963 | case 32: |
| 4964 | m_subwrite[i].w32 = wentry->m_subwrite[i].w32; |
| 4965 | break; |
| 4966 | } |
| 4967 | } |
| 4940 | 4968 | memcpy(m_sub_is_legacy, wentry->m_sub_is_legacy, m_subunits*sizeof(bool)); |
| 4941 | 4969 | memcpy(m_sublegacy_info, wentry->m_sublegacy_info, m_subunits*sizeof(legacy_info)); |
| 4942 | 4970 | } |