English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 28 April 2018, 15:48   #241
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
http://www.winuae.net/files/b/winuae_4000b6.7z
http://www.winuae.net/files/b/winuae64_4000b6.7z

Beta 6:

- Added DCE Typhoon MK2 (A1200 accelerator). ROM is almost identical to E-Matrix 530/1230. Identical SCSI driver, slightly modified RAM detection code.
- Fixed E-Matrix RAM selection.
- Fixed crash in lagless vsync mode if CPU speed was on the fly changed.
- Fixed directory harddrive uaehf.device bugs.
- Added optional extended precision (80 bit) host FPU mode. (Probably becomes default and replaces old when/if this gets good enough)

Extended precision FPU mode:
- Fully JIT FPU compatible.
- 32-bit and 64-bit compatible.
- Uses short assembly routines to directly execute x86 FPU instructions. (MSVC does not support long double, other UAE ports usually use long doubles by default)
- Basic floating point operations, square root, sin and cos are currently natively supported. Others use normal double precision C-library routines.
- Not yet fully working. Testing needed.
Toni Wilen is offline  
Old 28 April 2018, 16:49   #242
PeterK
Registered User
 
Join Date: Apr 2005
Location: digital hell, Germany, after 1984, but worse
Posts: 3,366
Quote:
Originally Posted by Toni Wilen View Post
- Added optional extended precision (80 bit) host FPU mode. (Probably becomes default and replaces old when/if this gets good enough)

Extended precision FPU mode:
- Fully JIT FPU compatible.
- 32-bit and 64-bit compatible.
- Uses short assembly routines to directly execute x86 FPU instructions. (MSVC does not support long double, other UAE ports usually use long doubles by default)
- Basic floating point operations, square root, sin and cos are currently natively supported. Others use normal double precision C-library routines.
- Not yet fully working. Testing needed.
A nice surprise! Thanks a lot, Toni
Unfortunately, my A2000 with the 68881 is already dead for long, thus I have no real FPU to verify the results.

Last edited by PeterK; 28 April 2018 at 17:02.
PeterK is offline  
Old 28 April 2018, 16:57   #243
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
Quote:
Originally Posted by PeterK View Post
A nice surprise! Thanks a lot, Toni
Unfortunately, my A2000 with the 68881 is already dead for long, thus I have no real FPU to verify the results. But there are also some online floating point calculators available.
I finally decided to learn a bit about Intel FPU instructions. It made me feel ill

Unfortunately it passes usual test program used to confirm softfloat mode. Mostly, only edge cases fail because extended precision is not IEEE defined (like float and double is) so for example most side-effects are not same in Intel vs Motorola FPU). Fortunately no normal program cares.

Only some real world programs fail, like some AGA demos but they are far too complex to debug this problem. Oddly enough they work better when JIT FPU is enabled.. (which now also uses extended precision when enabled)
Toni Wilen is offline  
Old 28 April 2018, 17:24   #244
Steve
I Identify as an Ewok
 
Steve's Avatar
 
Join Date: Jul 2001
Location: North Lincolnshire
Age: 45
Posts: 2,356
Quote:
Originally Posted by Toni Wilen View Post
http://www.winuae.net/files/b/winuae_4000b6.7z
http://www.winuae.net/files/b/winuae64_4000b6.7z

Beta 6:

- Added DCE Typhoon MK2 (A1200 accelerator). ROM is almost identical to E-Matrix 530/1230. Identical SCSI driver, slightly modified RAM detection code.
- Fixed E-Matrix RAM selection.
- Fixed crash in lagless vsync mode if CPU speed was on the fly changed.
- Fixed directory harddrive uaehf.device bugs.
- Added optional extended precision (80 bit) host FPU mode. (Probably becomes default and replaces old when/if this gets good enough)

Extended precision FPU mode:
- Fully JIT FPU compatible.
- 32-bit and 64-bit compatible.
- Uses short assembly routines to directly execute x86 FPU instructions. (MSVC does not support long double, other UAE ports usually use long doubles by default)
- Basic floating point operations, square root, sin and cos are currently natively supported. Others use normal double precision C-library routines.
- Not yet fully working. Testing needed.
I've done around 30 minutes testing and it seems worse than the last beta with regard to the tearing. I used to get very stable scrolling (using the scrolling test demo) with no tearing using a value of 5 for the layers. Now the same value is tearing at the top again and changing the value only seems to make things worse - progressively. It seems the more testing is done the worse the tearing gets until it becomes completely unsynchronized and you have to quit WinUAE completely - a simple restart doesn't fix it. Bizarre.
Steve is offline  
Old 28 April 2018, 17:29   #245
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
Quote:
Originally Posted by Steve View Post
I've done around 30 minutes testing and it seems worse than the last beta with regard to the tearing. I used to get very stable scrolling (using the scrolling test demo) with no tearing using a value of 5 for the layers. Now the same value is tearing at the top again and changing the value only seems to make things worse - progressively. It seems the more testing is done the worse the tearing gets until it becomes completely unsynchronized and you have to quit WinUAE completely - a simple restart doesn't fix it. Bizarre.
b6 does not have any lagless vsync adjustments. Only change is crash bug fix. b5 does include multiple changes.

Check if winuae used memory and system free memory slowly increases/decreases? (keep task manager or resource monitor open and periodically check it with alt-tab or F12)
Toni Wilen is offline  
Old 28 April 2018, 17:30   #246
PeterK
Registered User
 
Join Date: Apr 2005
Location: digital hell, Germany, after 1984, but worse
Posts: 3,366
Quote:
Originally Posted by Toni Wilen View Post
I finally decided to learn a bit about Intel FPU instructions. It made me feel ill
Yes, I remember that feeling, it's horrible to get through Intel's instruction tables.

Quote:
Unfortunately it passes usual test program used to confirm softfloat mode.
Ten years ago, I played a bit with arbitrary precision floating point calculations for checking some formulas with more than 10000 digits. I think I used this math library for my program on my old PC: https://github.com/LuaDist/mapm
PeterK is offline  
Old 28 April 2018, 23:11   #247
PeterK
Registered User
 
Join Date: Apr 2005
Location: digital hell, Germany, after 1984, but worse
Posts: 3,366
Actually, I wanted to test the new 80 bit FPU support a little, but then I noticed some damaged graphics on WinUAE HiColor screens since v3.6.2.0b0. It's not only that some icon frames are cut off but also other graphical elements, like window gadgets, switches in DOpus4 etc.

There was nothing damaged up to WinUAE 3.6.1 final 64 bit. My PC has a J2900 CPU with integrated Intel HD graphics. It makes no difference whether I use DirectDraw, D3D9 or D3D11, if Jit is on or off. None of the 15-16 bit screenmodes is working correctly, but all 32 bit, 8 bit or AGA modes are still fine. Deleting screenmode.prefs and saving new settings does not help.
Attached Files
File Type: 7z HiColorBugWinUAE362.7z (54.8 KB, 108 views)

Last edited by PeterK; 10 May 2018 at 21:03.
PeterK is offline  
Old 29 April 2018, 10:18   #248
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
Quote:
Originally Posted by PeterK View Post
There was nothing damaged up to WinUAE 3.6.1 final 64 bit. My PC has a J2900 CPU with integrated Intel HD graphics. It makes no difference whether I use DirectDraw, D3D9 or D3D11, if Jit is on or off. None of the 15-16 bit screenmodes is working correctly, but all 32 bit, 8 bit or AGA modes are still fine. Deleting screenmode.prefs and saving new settings does not help.
Fixed. Broken optimization was accidentally not enabled until now. Optimization fixed

Quote:
Originally Posted by PeterK View Post
Ten years ago, I played a bit with arbitrary precision floating point calculations for checking some formulas with more than 10000 digits. I think I used this math library for my program on my old PC: https://github.com/LuaDist/mapm
But these have nothing to do with FPU, it is all calculated using integers, just like softfloat does.
Toni Wilen is offline  
Old 29 April 2018, 11:36   #249
Mclane
Old retro god.
 
Mclane's Avatar
 
Join Date: Apr 2002
Location: Northolt, West London
Age: 62
Posts: 857
Hi Toni, any reason the lag free fixes in b5 were left out of b6?

Ongoing work?
Mclane is offline  
Old 29 April 2018, 11:59   #250
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
Fixes? What fixes? I only said no adjustments (as in no new adjustments) in b6.
Toni Wilen is offline  
Old 29 April 2018, 14:32   #251
Steve
I Identify as an Ewok
 
Steve's Avatar
 
Join Date: Jul 2001
Location: North Lincolnshire
Age: 45
Posts: 2,356
Quote:
Originally Posted by Toni Wilen View Post
b6 does not have any lagless vsync adjustments. Only change is crash bug fix. b5 does include multiple changes.

Check if winuae used memory and system free memory slowly increases/decreases? (keep task manager or resource monitor open and periodically check it with alt-tab or F12)
I've checked and the memory starts at around 40MB and jumps to around 100MB when emulation starts and seems to hover around there. I tried the scroll demo again on setting 5 and there was tearing again. I tried setting 4 and it seemed fine. So I tried SWOS and played for around 30 minutes and detected precisely zero tearing. I'm not sure how to explain the seemingly random nature of the issue.
Steve is offline  
Old 29 April 2018, 15:54   #252
AnnaWu
Registered User
 
AnnaWu's Avatar
 
Join Date: Dec 2012
Location: Germany
Posts: 561
Quote:
Originally Posted by Toni Wilen View Post

- Added DCE Typhoon MK2 (A1200 accelerator). ROM is almost identical to E-Matrix 530/1230. Identical SCSI driver, slightly modified RAM detection code.
Is the DCE Typhoon MK2 (A1200 accelerator) ROM available or no need?
AnnaWu is offline  
Old 30 April 2018, 11:44   #253
AnnaWu
Registered User
 
AnnaWu's Avatar
 
Join Date: Dec 2012
Location: Germany
Posts: 561
Thanks Toni.
AnnaWu is offline  
Old 30 April 2018, 20:20   #254
falken
Amiga Lover
 
falken's Avatar
 
Join Date: Feb 2018
Location: Spain
Posts: 197
Is it necessary to be in full screen mode to use beamraced?
falken is offline  
Old 30 April 2018, 20:50   #255
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
Quote:
Originally Posted by falken View Post
Is it necessary to be in full screen mode to use beamraced?
Yes. Unless your desktop refresh rate matches Amiga refresh rate (if not = speed and sound pitch changes)

Variable refresh rate monitor + full-window will be supported later.

Normal windowed can't be supported. (Yes, it can work in some situations but I am not interested in special cases)
Toni Wilen is offline  
Old 01 May 2018, 13:13   #256
Mclane
Old retro god.
 
Mclane's Avatar
 
Join Date: Apr 2002
Location: Northolt, West London
Age: 62
Posts: 857
Oops, sorry Toni re the fixes comment, I read fast but the brain is slow..Need an upgrade..
Mclane is offline  
Old 01 May 2018, 17:05   #257
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,507
http://www.winuae.net/files/b/winuae_4000b7.7z
http://www.winuae.net/files/b/winuae64_4000b7.7z

Beta 7:

- Added debugger 'ex' command: 'e' command with extended data: last value written and PC of CPU or Copper when value was written.
- UAEGFX RTG 15/16/24-bit graphics corruption fixed (b1).
- If multimonitor mode and aviout/screenshot: capture/record from window that has focus.
- Added horizontal doubling to Cirrus Logic emulation, enabled if screen height * 0.75 >= width. Keeps aspect ratio if CGX doublescan graphics mode is configured.
- Native screen OSD was drawn twice in some multimonitor configurations, also could have caused crashes or some other weird behavior.

Extended precision host FPU mode updates:

- Some FPU instructions used wrong precision.
- Supports divbyzero, underflow, overflow and inexact2 status bits and exceptions. Only in non-JIT FPU mode. (and no software really cares)
- FCMP uses softfloat comparison code if more compatible is enabled (FCMP can't be directly mapped to host FPU), if not, it uses simple and quick test. (Difference: infinities, nans etc.. special cases only work in more compatible mode. No normal programs care, as usual)
- Uses softfloat routines for rarely used functions (most trigometric, fexpman, fscale etc). Previously: extended to double conversion -> c-library math function -> double to extended conversion. Which probably wasn't noticeably faster.

I think this is good compromise between speed and accuracy, commonly used operations use native code (that native FPU supports directly, x86 FPU does not directly support all operations that 6888x supports), complex and rarely used operations use softfloat code.

NOTE: Host FPU extended precision FPU emulation is now enabled by default and always overrides config file saved 64-bit mode. If something works strangely, load your config, change FPU mode to 64-bit/softfloat and try again: if it fixes the problem -> report the problem immediately.
Toni Wilen is offline  
Old 01 May 2018, 22:30   #258
Marty2AGA
Registered User
 
Join Date: Mar 2018
Location: Germany
Age: 47
Posts: 35
Hello Toni,
First - Big Thanks for the Led Lights

After Loading a Game or here as Example Recall's - Rave nation. The Power LED goes off. Turns the programm the Audio Filter on and i need a seperate Dark Power Led ?
Attached Thumbnails
Click image for larger version

Name:	Rave Nation (1993-12-25)(Recall)(Disk 1 of 2)_002.jpg
Views:	276
Size:	122.8 KB
ID:	58036   Click image for larger version

Name:	Rave Nation (1993-12-25)(Recall)(Disk 1 of 2)_003.jpg
Views:	290
Size:	123.8 KB
ID:	58037  
Marty2AGA is offline  
Old 01 May 2018, 23:41   #259
PeterK
Registered User
 
Join Date: Apr 2005
Location: digital hell, Germany, after 1984, but worse
Posts: 3,366
Quote:
Originally Posted by Toni Wilen View Post
Beta 7:
- UAEGFX RTG 15/16/24-bit graphics corruption fixed (b1).

Extended precision host FPU mode updates:
- Some FPU instructions used wrong precision.
- Supports divbyzero, underflow, overflow and inexact2 status bits and exceptions. Only in non-JIT FPU mode. (and no software really cares)
- FCMP uses softfloat comparison code if more compatible is enabled (FCMP can't be directly mapped to host FPU), if not, it uses simple and quick test. (Difference: infinities, nans etc.. special cases only work in more compatible mode. No normal programs care, as usual)
- Uses softfloat routines for rarely used functions (most trigometric, fexpman, fscale etc). Previously: extended to double conversion -> c-library math function -> double to extended conversion. Which probably wasn't noticeably faster.

I think this is good compromise between speed and accuracy, commonly used operations use native code (that native FPU supports directly, x86 FPU does not directly support all operations that 6888x supports), complex and rarely used operations use softfloat code.

NOTE: Host FPU extended precision FPU emulation is now enabled by default and always overrides config file saved 64-bit mode. If something works strangely, load your config, change FPU mode to 64-bit/softfloat and try again: if it fixes the problem -> report the problem immediately.
Thank you for the HiColor bug fix, Toni. That's ok now.

But there is a small bug in the 80 bit FPU code in non-Jit mode: all Tan() and ATan() results are just NaN. Jit is OK and 64 bit FPU is also OK.

Btw, it takes nearly 30 seconds in non-Jit mode to load my background JPG image and scale it from 1920x1200 to 1280x800. With Jit it comes immediately.

Update:
The FPU constants as generated by softfloat are 100 % identical to the 68881.

The 80 bit host results (Jit and non-Jit) are still ok, except for a wrong long double infinity number (highest bit in the mantissa).

The 64 bit FPU constants have several saturation bugs for the very large numbers, which was much better once in WinUAE 1.0 and still in v2.4.0, but I didn't check all versions to find out where the wrong large number handling starts.
Attached Files
File Type: lha FpuConstants.lha (1.0 KB, 98 views)

Last edited by PeterK; 02 May 2018 at 01:23.
PeterK is offline  
Old 02 May 2018, 13:44   #260
RomRetro
 
Posts: n/a
Hello Marty2AGA,
Great overlays ! Could you help me to found them please ?
Have you any other in this style ? There are beautiful.
Thanks.
 
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
WinUAE 3.2.2 beta series Toni Wilen support.WinUAE 21 20 December 2015 17:35
WinUAE 3.1.0 beta series Toni Wilen support.WinUAE 305 06 June 2015 23:25
WinUAE 2.3.3 beta series Toni Wilen support.WinUAE 124 17 September 2011 15:48
WinUAE 2.0.0 beta series Toni Wilen support.WinUAE 445 13 December 2009 14:46
WinUAE 1.6.1 beta series Toni Wilen support.WinUAE 54 18 June 2009 11:05

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 07:48.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.11003 seconds with 16 queries