Re: [hatari-devel] Falcon cpu/dsp emu issue?

[ Thread Index | Date Index | More Archives ]


On 01/28/2016 10:03 PM, Nicolas Pomarède wrote:
There was also a small bug when starting hatari with tos 4.04 : hatari
automatically switched to Falcon mode, but DSP was not enabled (you
needed to change it in system settings)

I think some cases are missing though : when switching to another TOS
than 4.xx and nDSPType was DSP_TYPE_EMU, then I think DSP_Disable should
be called too

I think DSP type being set to EMU is common case.

Configuration_Apply() will enable/disable DSP based on DSP type, at
emulation startup, and after user changes config.

The reason why you don't see DSP emulation effect normally is that
with other TOS versions, TOS doesn't bootstrapped DSP with CPU_HOST_TXL.
Without this, dsp_core.running is false and DSP_Run() exits immediately
when called.

But if user switches from TOS v4 to other TOS, DSP core is already
running...  So yes, it should be disabled.

(unless DSP can work with TOS 3 ?).

TOS v3 doesn't bootstrap DSP, and it doesn't implement
the XBios() functions that programs use to control DSP.
I.e. DSP is useless with it, and the other TOS versions.

EmuTOS may at some point implement those XBios() functions,
but currently they're missing.

Else, this will just
call DSP_Run() for nothing and add a huge slowdown to emulation.

Huge indeed.  TT runs at 2x CPU clock compared to Falcon,
and current Hatari CPU cores assume that DSP clock is
always 2x CPU clock...

	- Eero

Mail converted by MHonArc 2.6.19+