|[hatari-devel] 030 emulation issue|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
- To: hatari-devel@xxxxxxxxxxxxxxxxxxx
- Subject: [hatari-devel] 030 emulation issue
- From: Douglas Little <doug694@xxxxxxxxxxxxxx>
- Date: Fri, 10 Jan 2014 14:59:08 +0000
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=gjZ+OKznwod6ZqhkQv7B3n6oGUmg55ZN40Jlk7rv5qU=; b=RmL0/lpoDsDPzWGXopjCFVCcoXBYYwLm8yTGfuFg4kmU4C7mE8oCnlq9lPOi+is54a b0U6YtcJkqoHYB3DSXJciVyhgdvlP6ow7DpZeCsRE3Jie7eB6eqgrZHRy0EtJgPFhpLW QtWm5I3c/PTeXQ2TsGeicN9FlKVNKd4cNp9C4Y1OEZSuPmancdKHlgm3cg4yTX3/GIXL TAKc1KvbcuD0Zwq0VHfqoh9wxqG1pyWNJKBPUb8e/hdmpDnmvLvF6s04mBYVyBzR1JKR gje/CQ6M6aR9oHSIsRWdQfhCeWMioxxWWbHl1pD611SDlzGOV1m5m6aEcbfQFLXD7mkw F8Ew==
I found what looks like a bug in the WinUAE CPU emulation (I don't imagine it would happen much in the wild, but it is severe if encountered).
Writing and then reading the state of CAAR differs between Hatari and real HW.
On Hatari, only bits 2-7 (low byte, rounded to long address) are preserved as 1's, the rest return 0.
On real HW, all bits in this register are preserved as 1's if written and read back, even if most are not used internally by cache management.
There is a reason I noticed this ;-) but I think the details of that are not as interesting here as the accuracy of emulation.
I noticed this some time ago, but didn't report it until I could compare the two properly.
(There are a couple of other things like this I have noticed, but will try to diagnose in detail before bringing them up).