English Amiga Board Amiga Lore


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 29 September 2015, 23:08   #1
meynaf
68k wisdom
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon (France)
Age: 44
Posts: 2,372
errors in cpu emulation

This is a bug report. Yes, sorry.


The CAS2 instruction isn't implemented properly.
So, as an example, if we execute :
Code:
 CAS2.W D3:D4,D1:D2,(A0):(A1)
and the comparison fails, then instead of changing the compare operands (D3 and D4) it will modify the update operands (D1 and D2).


I also noticed that, while illegal on the whole mc68k family, opcode 083C is actually executed under emulation.


Oh, and while i'm here. The trace mode sometimes refuses to trace an instruction if the jit is active - the trace exception happens without the instruction being executed. Quite annoying while debugging programs...


Note : used version is 3.0.0.
meynaf is offline  
AdSense AdSense  
Old 30 September 2015, 15:37   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
Quote:
Originally Posted by meynaf View Post
This is a bug report. Yes, sorry.


The CAS2 instruction isn't implemented properly.
So, as an example, if we execute :
Code:
 CAS2.W D3:D4,D1:D2,(A0):(A1)
and the comparison fails, then instead of changing the compare operands (D3 and D4) it will modify the update operands (D1 and D2).
You probably are the first ever using CAS2
Will be fixed.

Quote:
I also noticed that, while illegal on the whole mc68k family, opcode 083C is actually executed under emulation.
I can't duplicate. "Illegal instruction: 083c at 00000100" (and there is no matching cpuemu function for 083c either)

Quote:
Oh, and while i'm here. The trace mode sometimes refuses to trace an instruction if the jit is active - the trace exception happens without the instruction being executed. Quite annoying while debugging programs...
JIT + Trace is not supported. It can't be supported. Don't use JIT when debugging is the only option.
Toni Wilen is online now  
Old 30 September 2015, 17:29   #3
meynaf
68k wisdom
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon (France)
Age: 44
Posts: 2,372
Quote:
Originally Posted by Toni Wilen View Post
You probably are the first ever using CAS2
Will be fixed.
MacOS did use it before me
Besides, it makes my test "instruction overview" fail in my benchmark program.


Quote:
Originally Posted by Toni Wilen View Post
I can't duplicate. "Illegal instruction: 083c at 00000100" (and there is no matching cpuemu function for 083c either)
The problem was there some time in the past. I should have checked, it's probably long fixed
Other 68k emulators probably still have it, though.


Quote:
Originally Posted by Toni Wilen View Post
JIT + Trace is not supported. It can't be supported. Don't use JIT when debugging is the only option.
Is pressing F12, then unchecking JIT, then returning to emulation, enough to make it work properly ? Or do i have to restart the emulator ?
meynaf is offline  
Old 03 October 2015, 18:57   #4
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
Quote:
Originally Posted by meynaf View Post
MacOS did use it before me
I meant you must have been first that run CAS2 in UAE CPU emulation.

Quote:
Is pressing F12, then unchecking JIT, then returning to emulation, enough to make it work properly ? Or do i have to restart the emulator ?
Yes, it can be changed on the fly. You can even change it from emulation side with uae-configuration (or call uae hook directly from your own program if you want). Note that config change may be delayed until next vblank.

Quote:
Originally Posted by Foebane View Post
MacOS sucks balls, always did.
And this has what to do with technical CPU emulation topic? (Hint: Don't even think about answering!)
Toni Wilen is online now  
Old 05 October 2015, 09:50   #5
meynaf
68k wisdom
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon (France)
Age: 44
Posts: 2,372
Quote:
Originally Posted by Toni Wilen View Post
Yes, it can be changed on the fly. You can even change it from emulation side with uae-configuration (or call uae hook directly from your own program if you want). Note that config change may be delayed until next vblank.
Where are the docs about that uae hook ? My quick search did not find any.
meynaf is offline  
Old 05 October 2015, 10:38   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
Quote:
Originally Posted by meynaf View Post
Where are the docs about that uae hook ? My quick search did not find any.
Check uae-configuration source. (comes with winuae zip archive).

It is quite simple, single string, that contains one or more config entries that need changing, is sent to emulation (for example JIT disable is "cachesize 0").
Toni Wilen is online now  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Bridgeboard emulation (x86 CPU, for example A2286) GiuseppeC support.WinUAE 627 16 November 2016 15:42
cycle exact cpu emulation speed, accurate ? turrican3 support.WinUAE 1 23 December 2013 18:20
Problem with cycle-exact and custum CPU emulation speed pintcat support.WinUAE 14 11 May 2010 20:12
Shortcuts for CPU-Emulation Speed Retro-Nerd request.UAE Wishlist 4 03 September 2005 22:59
CPU emulation and timings....... Bloodwych support.WinUAE 1 04 August 2003 16:00

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 22:15.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.12947 seconds with 11 queries