mirror of
https://github.com/holub/mame
synced 2025-04-18 22:49:58 +03:00
cpu/drcbearm64.cpp: orr immediate needs a mask immediate.
This commit is contained in:
parent
c5460b1011
commit
c5629193ce
@ -4237,7 +4237,7 @@ void drcbe_arm64::op_or(a64::Assembler &a, const uml::instruction &inst)
|
|||||||
if ((dst.id() != src1.id()) || ((inst.size() == 4) && (dstp == src1p) && dstp.is_int_register()))
|
if ((dst.id() != src1.id()) || ((inst.size() == 4) && (dstp == src1p) && dstp.is_int_register()))
|
||||||
a.mov(dst, src1);
|
a.mov(dst, src1);
|
||||||
}
|
}
|
||||||
else if (src2p.is_immediate() && is_valid_immediate(src2p.immediate(), 12))
|
else if (src2p.is_immediate() && is_valid_immediate_mask(src2p.immediate(), inst.size()))
|
||||||
{
|
{
|
||||||
mov_reg_param(a, inst.size(), src1, src1p);
|
mov_reg_param(a, inst.size(), src1, src1p);
|
||||||
|
|
||||||
|
@ -322,7 +322,7 @@ void zsg2_device::sound_stream_update(sound_stream &stream, std::vector<read_str
|
|||||||
int32_t sample = elem.samples[sample_pos];
|
int32_t sample = elem.samples[sample_pos];
|
||||||
|
|
||||||
// linear interpolation (hardware certainly does something similar)
|
// linear interpolation (hardware certainly does something similar)
|
||||||
sample += ((uint16_t)(elem.step_ptr << 2 & 0xffff) * (int16_t)(elem.samples[sample_pos+1] - sample)) >> 16;
|
sample += (uint16_t(elem.step_ptr << 2 & 0xffff) * int16_t(elem.samples[sample_pos+1] - sample)) >> 16;
|
||||||
|
|
||||||
// another filter...
|
// another filter...
|
||||||
elem.output_filter_state += (sample - (elem.output_filter_state >> 16)) * elem.output_cutoff;
|
elem.output_filter_state += (sample - (elem.output_filter_state >> 16)) * elem.output_cutoff;
|
||||||
|
Loading…
Reference in New Issue
Block a user