English Amiga Board Amiga Lore


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 29 December 2012, 10:29   #21
WCoder
Registered User
 
Join Date: Jul 2012
Location: France
Posts: 12
Thanks for answer, I will try to re-enable docorrection...

WCoder
WCoder is offline  
AdSense AdSense  
Old 29 December 2012, 11:11   #22
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
Quote:
Originally Posted by WCoder View Post
Thanks for answer, I will try to re-enable docorrection...
I think it may still change pitch in some situations but it only changes timing if vsynctimebase is the only variable that gets modified.
Toni Wilen is online now  
Old 06 January 2013, 14:39   #23
WCoder
Registered User
 
Join Date: Jul 2012
Location: France
Posts: 12
OK, i fix the sound...

I have 2 mores questions :

1 - I there's a way to detect if system request for a new disk ?
-- My goal is to add a mechanism to auto change disk --

2 - There's a strange things in the code call trap (with a thread)
2a - Is this functionality is necessary for a A500+AGA refactor for game only ?
2b - If yes, is it possible to have explanation of this mechanism ?

Thanks,

WCoder
WCoder is offline  
Old 06 January 2013, 16:10   #24
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
1) No if program does not use amigados.

2) It is only needed if m68 code needs to call UAE native C code. (Used by UAE side drivers like picasso96, uaehf.device etc..). It is not needed for unexpanded Amiga emulation.
Toni Wilen is online now  
Old 06 January 2013, 16:19   #25
WCoder
Registered User
 
Join Date: Jul 2012
Location: France
Posts: 12
Thanks

Thanks for answer , happy new year...
WCoder is offline  
Old 27 October 2013, 20:52   #26
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,481
I've been trying to get WinUAE to build with Visual Studio 2013.

The build process is giving some errors (and a huge number of warnings ):
Code:
 uaeunp.cpp
..\..\uaeunp.cpp(243): error C2664: 'int zfile_stat_archive(const TCHAR *,mystat *)' : cannot convert argument 2 from '_stat64 *' to 'mystat *'
          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
..\..\uaeunp.cpp(364): error C2664: 'int utime(const char *,utimbuf *)' : cannot convert argument 1 from 'const TCHAR *' to 'const char *'
          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
..\..\uaeunp.cpp(402): error C2664: 'int zfile_stat_archive(const TCHAR *,mystat *)' : cannot convert argument 2 from '_stat64 *' to 'mystat *'
          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
..\..\uaeunp.cpp(431): warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data
..\..\uaeunp.cpp(515): error C2664: 'int zfile_stat_archive(const TCHAR *,mystat *)' : cannot convert argument 2 from '_stat64 *' to 'mystat *'
          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
..\..\uaeunp.cpp(527): warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data
------ Build started: Project: winuae, Configuration: Release Win32 ------
  astring.cpp
  crcio.cpp
  aros.rom.cpp
c1xx : fatal error C1083: Cannot open source file: '..\..\aros.rom.cpp': No such file or directory
Can I just add some casts to get rid of the uaeunp.cpp errors? And is aros.rom.cpp available anywhere? It's not in the WinUAE source archive on winuae.net or the git repository.

Also, luascript.h includes lauxlib.h, but lauxlib.h isn't in the winuaeinclibs archive.

Last edited by mark_k; 27 October 2013 at 21:29.
mark_k is offline  
Old 28 October 2013, 16:03   #27
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
uaeunp compilation fixed.

aros rom is not available anywhere (except by downloading binary from aros.org and converting it), didn't want to add 3M file that is useless huge C array..

lauxlib.h added.
Toni Wilen is online now  
Old 28 October 2013, 16:52   #28
acd2001
Zone Friend
acd2001's Avatar
 
Join Date: Nov 2005
Location: Italy
Posts: 35
aros.rom.cpp added in the zone
acd2001 is offline  
Old 28 October 2013, 19:37   #29
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,481
Quote:
Originally Posted by acd2001 View Post
aros.rom.cpp added in the zone
Thanks for that! I wonder if the Visual Studio project could be modified so that aros.rom.cpp gets automatically generated from a binary ROM image? That would make updating the embedded AROS ROM much simpler.
Quote:
Originally Posted by Toni Wilen View Post
uaeunp compilation fixed.
...
lauxlib.h added.
Thanks for that. I'm slowly getting there. There might be another file missing from winuaeinclibs; now the build reports:
Code:
  luascript.cpp
..\..\luascript.cpp(12): fatal error C1083: Cannot open include file: 'lualib.h': No such file or directory
mark_k is offline  
Old 28 October 2013, 20:26   #30
acd2001
Zone Friend
acd2001's Avatar
 
Join Date: Nov 2005
Location: Italy
Posts: 35
Download lua-5.2.2.tar.gz from

http://www.lua.org/download.html
acd2001 is offline  
Old 28 October 2013, 21:26   #31
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,481
Thanks, now it almost builds! I'm getting an error at the linking stage: LINK : fatal error LNK1181: cannot open input file '..\hq2x16.obj'. That was already mentioned above so I'll install Nasm and see if I can fix that.

I've attached the current build log in case it might be of any use (maybe VS 2013 gives more warnings than VS 2012?). Here are a few lines extracted from it:
Code:
  NoisePacker1.c
..\..\prowizard\rippers\NoisePacker1.c(33): warning C4018: '>' : signed/unsigned mismatch

  cpuemu_22.cpp
..\..\cpuemu_22.cpp(38822): warning C4146: unary minus operator applied to unsigned type, result still unsigned

  gfxboard.cpp
..\..\gfxboard.cpp(722): warning C4244: '=' : conversion from 'uint64_t' to 'uae_u32', possible loss of data
..\..\gfxboard.cpp(727): warning C4244: '=' : conversion from 'uint64_t' to 'uae_u32', possible loss of data
..\..\gfxboard.cpp(732): warning C4244: '=' : conversion from 'uint64_t' to 'uae_u32', possible loss of data

  cirrus_vga.cpp
..\..\qemuvga\cirrus_vga.cpp(1153): warning C4018: '<=' : signed/unsigned mismatch
..\..\qemuvga\cirrus_vga.cpp(2082): warning C4244: 'argument' : conversion from 'uint64_t' to 'uint32_t', possible loss of data
..\..\qemuvga\cirrus_vga.cpp(2107): warning C4244: '=' : conversion from 'uint64_t' to 'uint8_t', possible loss of data
..\..\qemuvga\cirrus_vga.cpp(2114): warning C4244: 'argument' : conversion from 'uint64_t' to 'uint32_t', possible loss of data
I'm assuming all those warnings are actually harmless, but wonder whether in some cases (e.g. gfxboard.cpp) they could indicate a possibility for optimisation? If a function returns a 64-bit integer, could modifying it to instead return a 32-bit int improve speed of the x86 build?
Attached Files
File Type: zip build_log.txt.zip (10.4 KB, 46 views)
mark_k is offline  
Old 28 October 2013, 22:09   #32
acd2001
Zone Friend
acd2001's Avatar
 
Join Date: Nov 2005
Location: Italy
Posts: 35
copy nasm in winuae\od-win32 directory and run asm.cmd
It creates all object files that you need.
acd2001 is offline  
Old 29 October 2013, 08:50   #33
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
Quote:
Originally Posted by mark_k View Post
I'm assuming all those warnings are actually harmless, but wonder whether in some cases (e.g. gfxboard.cpp) they could indicate a possibility for optimisation? If a function returns a 64-bit integer, could modifying it to instead return a 32-bit int improve speed of the x86 build?
It is qemu cirrus logic "feature" of using 64-bit integers in indirect data access functions. (EDIT: 64-bit probably due to PCI bus) Direct VRAM reads or writes won't be affected if mode is linear = 256 colors or more.

I am not going to do any non-fix changes to qemu code to prevent annoying maintenance issues when/if merges needs to be done.

Last edited by Toni Wilen; 29 October 2013 at 10:39.
Toni Wilen is online now  
Old 29 October 2013, 15:11   #34
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,481
I managed to build WinUAE using Visual Studio 2013. I set it to optimise for speed and use link-time code generation, but didn't use profile-guided optimisation. (Done properly, PGO should improve speed.)

The executable should be compatible with Windows XP (tested in a Windows POSReady 2009 VM). It's WinUAE 2.7 beta 10 plus uaeunp compile fix from Toni's git repository. I have only tested it minimally; it runs and I could load a demo from floppy disk. And also a NetBSD HDF seemed to boot okay.

I haven't done any benchmarking to assess whether it's any faster than the official WinUAE 2.7b10 executable (which was built with an earlier version of Visual Studio). If anyone feels like doing that I'd be interested in the results.

I have uploaded an archive containing the WinUAE executable, source and winuaeinclibs files to The Zone. Edit: Also uploaded to and Multiupload. Copy winuae.exe into your WinUAE directory and test it. If you reproduce my build setup (see below), you should be able to unpack the archive, add a shared folder in VirtualBox then run Visual Studio and successfully build it straight away.

Obviously, if you find any problem that isn't present in the official version, don't bother reporting it to Toni. But maybe this might be some help if Toni wants to migrate to Visual Studio 2013 at some point.


I'll write a little about my build setup now. You don't need a machine running a recent version of Windows in order to use Visual Studio 2013. You can get a Windows 7 + IE 10 virtual machine from Microsoft's modern.ie site. They provide archives for Linux, Mac and Windows hosts. (The VMs are time-limited, but you might be able to do slmgr /rearm a couple of times to extend the period before you need to activate it. When you do activate you get another 90 days use.)

I'm using VirtualBox on Linux. I set up a shared folder on the host, accessed as \\VBOXSVR\WinUAE_dev in the Windows VM. I used git on the host to clone the git repository. I loaded od-win32\winuae_msvc11\winuae_msvc.sln into Visual Studio 2013 and changed settings to build on my setup. (A better approach might have been to copy the winuae_msvc11 directory to winuae_msvc12 and make changes there. And to use environment variables instead of hard-coding directory paths. But I'm a Visual Studio noob, sorry.)

After downloading the Windows VM and importing it into VirtualBox you'll probably want to install VirtualBox Guest Additions and maybe run Windows Update. Then install:
Visual Studio Ultimate 2013 (expand Install Instructions for link to DVD ISO image)
Windows SDK for Windows 8.1 (run sdksetup.exe to download all SDK files)
DirectX June 2010 SDK
DirectX End-User Runtimes (June 2010) (might not be needed to compile, but may be necessary to run WinUAE in VM)

Last edited by mark_k; 29 October 2013 at 16:37.
mark_k is offline  
Old 29 October 2013, 15:38   #35
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
Final versions are compiled with 2010 because at least 2012 does not fully work with XP (in some setups it crashes at startup, before WinUAE code even runs!) and 2010 creates faster code than 2012 using same optimization settings. (for some reason 2012 [and 2013] are over 10x faster when compiling with max optimization. 2010 compiles really slowly.)

-> 2010 will be used at least until XP becomes unsupported.
Toni Wilen is online now  
Old 29 October 2013, 15:58   #36
amilo3438
Amiga 500 User
 
Join Date: Jun 2013
Location: EU
Posts: 1,114
Quote:
Originally Posted by Toni Wilen View Post
-> 2010 will be used at least until XP becomes unsupported.
That is a bad news for those still using WinXP. ... as after will not be able to help you find some potential new issues!

Quote:
Originally Posted by mark_k View Post
I managed to build WinUAE using Visual Studio 2013. I set it to optimise for speed and use link-time code generation, but didn't use profile-guided optimisation. (Done properly, PGO should improve speed.)

The executable should be compatible with Windows XP (tested in a Windows POSReady 2009 VM).
But maybe a good news is here...

I have WinXP on laptop but unfortunately not using TheZone ... could you save it on sendspace with zip password maybe ?!
I would like to check does it also works on my system.
amilo3438 is offline  
Old 29 October 2013, 16:18   #37
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
Quote:
Originally Posted by amilo3438 View Post
That is a bad news for those still using WinXP. ... as after will not be able to help you find some potential new issues!
Actually versions you have downloaded (winuae.zip) are 2013 compiled

I said "some configs crash".
Toni Wilen is online now  
Old 29 October 2013, 16:23   #38
amilo3438
Amiga 500 User
 
Join Date: Jun 2013
Location: EU
Posts: 1,114
Quote:
Originally Posted by Toni Wilen View Post
Actually versions you have downloaded (winuae.zip) are 2013 compiled

I said "some configs crash".
If you are talking about latest test beta 10 2013-10-27 ... yes, it works fine on my PC laptop WinXPSP3, no problem found.

EDIT: I have windows update set to automatic, so maybe those configs that crash has not been updated recently/regularly or are not SP3?!

Last edited by amilo3438; 29 October 2013 at 16:28.
amilo3438 is offline  
Old 29 October 2013, 16:25   #39
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,481
Quote:
Originally Posted by Toni Wilen View Post
Final versions are compiled with 2010 because at least 2012 does not fully work with XP (in some setups it crashes at startup, before WinUAE code even runs!)
I suppose it's possible that Microsoft fixed that issue with VS 2013. If someone could test the executable I built on an XP machine which fails to run the VS2012-built WinUAE that would be useful.
Quote:
Originally Posted by amilo3438 View Post
I have WinXP on laptop but unfortunately not using TheZone ... could you save it on sendspace with zip password maybe ?!
I would like to check does it also works on my system.
By The Zone I meant the EAB file area; click The Zone! link at the top of the page when you're logged into EAB.
mark_k is offline  
Old 29 October 2013, 16:31   #40
amilo3438
Amiga 500 User
 
Join Date: Jun 2013
Location: EU
Posts: 1,114
Quote:
Originally Posted by mark_k View Post
By The Zone I meant the EAB file area; click The Zone! link at the top of the page when you're logged into EAB.
Even while log into EAB it said: "amilo3438, you do not have permission to access this page."
amilo3438 is offline  
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
Trying to get AHI V6 to compile with GCC V2.95 NovaCoder Coders. General 2 04 March 2011 14:06
Is it possible to compile Chromium for AmigaOS4? Zener request.Apps 1 20 November 2009 10:38
GFA compile xc8 Coders. General 31 19 May 2009 18:21
Compile WinUAE 1.46 with completely free tools __adil__ support.WinUAE 0 08 February 2008 18:24
Compile WinUAE ????? Myriel support.WinUAE 14 10 January 2004 17:06

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 21:36.


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