Previous 199869 Revisions Next

r21887 Saturday 16th March, 2013 at 10:45:47 UTC by Fabio Priuli
tiny speed recover... nw.
[src/mess/machine]sns_upd.c

trunk/src/mess/machine/sns_upd.c
r21886r21887
1212#include "emu.h"
1313#include "machine/sns_upd.h"
1414
15
16// helpers
17inline UINT32 get_prg(UINT8 *CPU, UINT32 addr)
18{
19   return ((CPU[addr * 4] << 24) | (CPU[addr * 4 + 1] << 16) | (CPU[addr * 4 + 2] << 8) | 0x00);
20}
21inline UINT16 get_data(UINT8 *CPU, UINT32 addr)
22{
23   return ((CPU[addr * 2] << 8) | CPU[addr * 2 + 1]);
24}
25
1526//-------------------------------------------------
1627//  constructor
1728//-------------------------------------------------
r21886r21887
89100// DSP dump contains prg at offset 0 and data at offset 0x2000
90101READ32_MEMBER( sns_rom20_necdsp_device::necdsp_prg_r )
91102{
92   return (m_bios[offset * 4] << 24) | (m_bios[offset * 4 + 1] << 16) |
93            (m_bios[offset * 4 + 2] << 8) | 0x00;
103   return get_prg(m_bios, offset);
94104}
95105
96106READ16_MEMBER( sns_rom20_necdsp_device::necdsp_data_r )
97107{
98   return (m_bios[0x2000 + offset * 2] << 8) | m_bios[0x2000 + offset * 2 + 1];
108   return get_data(m_bios, offset + 0x2000/2);
99109}
100110
101111
r21886r21887
156166// DSP dump contains prg at offset 0 and data at offset 0x2000
157167READ32_MEMBER( sns_rom21_necdsp_device::necdsp_prg_r )
158168{
159   return (m_bios[offset * 4] << 24) | (m_bios[offset * 4 + 1] << 16) |
160   (m_bios[offset * 4 + 2] << 8) | 0x00;
169   return get_prg(m_bios, offset);
161170}
162171
163172READ16_MEMBER( sns_rom21_necdsp_device::necdsp_data_r )
164173{
165   return (m_bios[0x2000 + offset * 2] << 8) | m_bios[0x2000 + offset * 2 + 1];
174   return get_data(m_bios, offset + 0x2000/2);
166175}
167176
168177
r21886r21887
276285// DSP dump contains prg at offset 0 and data at offset 0x10000
277286READ32_MEMBER( sns_rom_setadsp_device::setadsp_prg_r )
278287{
279   return (m_bios[offset * 4] << 24) | (m_bios[offset * 4 + 1] << 16) |
280            (m_bios[offset * 4 + 2] << 8) | 0x00;
288   return get_prg(m_bios, offset);
281289}
282290
283291READ16_MEMBER( sns_rom_setadsp_device::setadsp_data_r )
284292{
285   return (m_bios[0x10000 + offset * 2] << 8) | m_bios[0x10000 + offset * 2 + 1];
293   return get_data(m_bios, offset + 0x10000/2);
286294}
287295
288296

Previous 199869 Revisions Next


© 1997-2024 The MAME Team