English Amiga Board


Go Back   English Amiga Board > Support > support.OtherUAE

 
 
Thread Tools
Old 22 November 2017, 22:46   #1
rsn8887
Registered User
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 738
Some WHDLoad games running too fast in UAE4All2

I am using UAE4All2 on Vita. It doesn't have a cycle-exact option. Several WHDLoad games (Flashback, Hostages, etc.) run too fast on the emulator. They run fine if booted from adf, also without cycle-exact. So it must be a WHDLoad problem. I'd rather not load those games from disk.

I am wondering, has anyone found a trick to get WHDLoad games to run at the correct speed without using cycle-exact? Maybe there's a tooltype option that is causing this problem?

I am honestly a bit disappointed with WHDLoad because of this. I always thought WHDLoad slaves would be coded so that they are not dependent on real hardware cycle counts, and should therefore not require cycle-exact.
rsn8887 is offline  
AdSense AdSense  
Old 22 November 2017, 23:41   #2
Retro-Nerd
Missile Command Champion

Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 45
Posts: 10,745
This is no WHDLoad problem. Wepl made it for real hardware. A non-cycle exact emulator (why, when it's based on UAE? To save performance on weaker systems?) can cause several issues. And WHDLoad patches are often timing critical.
Retro-Nerd is online now  
Old 23 November 2017, 02:31   #3
rsn8887
Registered User
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 738
But we're talking about 68020 cycle exactness here, since WHDLoad is started from A1200 config. For a long time, even WinUAE didn't have this and only had 68000 cycle exactness. UAE4all2 is based on an early version of UAE. And yes, any form of cycle exactness would kill performance.

I guess it is a problem of the slaves, not WHDLoad itself. I guess the slaves rely on the blitter behaving in a certain way on all Amiga hardware, and use that for timing. But I also remember some slaves ran too fast even on real hardware, so I think there is a real problem here.

I think it should be possible to code all WHDLoad patches so they do not use "hacky stuff" like blitter cycle counts for accurate timing. Then they would also work fine in WinUAE even with JIT on and/or fastest possible setting. Another, related problem with WHDLoad - speed should NOT depend on fastest possible, and honestly, not on JIT on/off either as far as I am concerned.

Since the emulator on Vita runs these games just fine at correct speed from .adf files with A500 config, I am certain there must be some way to slow down WHDLoad to the correct speed. Maybe I can switch it to A500 speed after booting into A1200 config and loading the game.

Last edited by rsn8887; 23 November 2017 at 02:42.
rsn8887 is offline  
Old 23 November 2017, 09:52   #4
StingRay
move.l #$c0ff33,throat

StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 5,586
Quote:
Originally Posted by rsn8887 View Post
I think it should be possible to code all WHDLoad patches so they do not use "hacky stuff" like blitter cycle counts for accurate timing. Then they would also work fine in WinUAE even with JIT on and/or fastest possible setting.
There is no "hacky stuff" used in the slaves, the slaves fix a lot of problems with dubious and "hacky" code in the games! And there sure are no blitter cycle counts used for timing (how are blitter cycles "hacky" anyway?).

The slaves are made for real Amigas and I for one will not spend time just because someone on the internet complains that they don't run correctly on an emulator with JIT on. Why do you need JIT for games that were made for 68000 CPU's? Where's the problem to turn JIT off? And most of all, where are your bug reports on the Mantis tracker so slave coders actually know about games running too fast?

Quote:
Another, related problem with WHDLoad - speed should NOT depend on fastest possible, and honestly, not on JIT on/off either as far as I am concerned.
How is that a WHDLoad problem? Does a real Amiga have JIT?
StingRay is offline  
Old 23 November 2017, 14:04   #5
FOL
PSPUAE DEV

FOL's Avatar
 
Join Date: Nov 2006
Location: Barry / UK
Age: 39
Posts: 5,591
Send a message via MSN to FOL Send a message via Skype™ to FOL
Have you tried altering CPU speed. Its well known that running as fastest possible causes all sorts of wierd problems. I have to set cpu to 14MHz and turn off JIT for games that run to fast.
FOL is offline  
Old 24 November 2017, 21:00   #6
rsn8887
Registered User
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 738
Quote:
Originally Posted by FOL View Post
Have you tried altering CPU speed. Its well known that running as fastest possible causes all sorts of wierd problems. I have to set cpu to 14MHz and turn off JIT for games that run to fast.
Thanks for the suggestion. Using your hint I made some progress:

- Hostages WHDLoad now runs at correct speed in UAE4all2 but only if I set CPU Speed to 7 MHz instead of 14 MHz and Blitter Mode to Normal instead of Immediate. However I get shot immediately as soon as i leave my hiding spot on the street, even if the searchlights are not pointing on me. It happens so quickly that it seems like another speed problem, or it could be a problem with the slave.

- Flashback has a tooltype to slow down anim that is displayed on the WHDLoad splash, which causes the game to run at the correct speed.

I need to test some other games that run too fast, to see if this blitter=normal and cpu speed=7 MHz setting works for all of them...

Quote:
Originally Posted by StingRay View Post
There is no "hacky stuff" used in the slaves, the slaves fix a lot of problems with dubious and "hacky" code in the games! And there sure are no blitter cycle counts used for timing (how are blitter cycles "hacky" anyway?).

The slaves are made for real Amigas and I for one will not spend time just because someone on the internet complains that they don't run correctly on an emulator with JIT on. Why do you need JIT for games that were made for 68000 CPU's? Where's the problem to turn JIT off? And most of all, where are your bug reports on the Mantis tracker so slave coders actually know about games running too fast?



How is that a WHDLoad problem? Does a real Amiga have JIT?
But certainly the slave should run at the same speed regardless of cpu clock frequency. But what I noticed is that for some games it depends on that, at least in the emulator. Since JIT is just causing the emu to behave as if it had extreme cpu overclocking, the slaves should run ok also with JIT on. Unless I am missing some fundamental difference between JIT on/off that makes it behave differently than just an Amiga with really large CPU speed.

Last edited by rsn8887; 24 November 2017 at 21:22.
rsn8887 is offline  
Old 24 November 2017, 21:26   #7
Retro-Nerd
Missile Command Champion

Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 45
Posts: 10,745
JIT is not like an overclocked Amiga CPU, it provides the fastest speed dependent on your host system speed. Which is much faster then any Amiga CPU ever made (overclocked included).
Retro-Nerd is online now  
Old 24 November 2017, 21:46   #8
ransom1122
Registered User
ransom1122's Avatar
 
Join Date: Aug 2011
Location: Omnicorp
Posts: 2,586
That hostages problem your talking about is caused by cycle exact = off. Unfortunately on Amiberry it doesnt have the option to turn it on. Try the game on winuae with cycle exact on and it will work.
ransom1122 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
Some games too fast in whdload onkelarie project.WHDLoad 10 18 October 2015 22:28
Running WHDLoad Games in Winuaex Bigby project.WHDLoad 3 01 March 2009 00:21
Monkey Island and Rocket Ranger WHDLoad running too fast. ricky500 project.WHDLoad 13 19 November 2008 18:59
WHDLoad, One-on-One, WinUAE, and running too fast rlcarr project.WHDLoad 46 30 April 2008 08:41

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 01:42.


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