[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] Firebee Coldfire MiNT Kernel and NFS



Hello Vincent,

Far long time I have compiled for coldfire MyAES that use TAS instruction and use it on coldfire evaluation board, I never seen any problem, so I suppose the problem is probably link to the hardware design. But for the use we have of it, BSET.B work fine, thanks for your past help on MyAES.

Regards

Olivier

On 04/09/2014 17:34, Vincent Rivière wrote:
Another idea.

... just browse the NFS sources and see what looks bad for the FireBee.
And I found... an inline assembler block with the TAS instruction, just in case some day FreeMiNT would multitask in supervisor mode !!

The TAS instruction is very special at the hardware level, and for an unknown reason it does not work as expected on the FireBee. It should NEVER be used on the FireBee (FYI, the same applies to Amiga).

Furthermore, TAS is only useful on multiprocessor systems. I hardly see a multicore 680x0 system in a near future...

By chance, "BSET.B #7" is a totally standard user mode instruction, and does exactly the same job as TAS on monoprocessor systems. So I replaced that instruction.

Then... The NFS client works perfectly in the FireBee now.
And it is fast :-D

I will provide a patch.