English Amiga Board


Go Back   English Amiga Board > Support > support.OtherUAE

 
 
Thread Tools
Old 22 November 2017, 21:46   #1
rsn8887
Registered User
 
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 1,058
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  
Old 22 November 2017, 22:41   #2
Retro-Nerd
Missile Command Champion
 
Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 52
Posts: 12,435
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 offline  
Old 23 November 2017, 01:31   #3
rsn8887
Registered User
 
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 1,058
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 01:42.
rsn8887 is offline  
Old 23 November 2017, 08:52   #4
StingRay
move.l #$c0ff33,throat
 
StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,863
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, 13:04   #5
FOL
PSPUAE DEV
 
FOL's Avatar
 
Join Date: Nov 2006
Location: Wales / UK
Age: 45
Posts: 5,999
Send a message via MSN 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, 20:00   #6
rsn8887
Registered User
 
rsn8887's Avatar
 
Join Date: Oct 2006
Location: USA
Posts: 1,058
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 20:22.
rsn8887 is offline  
Old 24 November 2017, 20:26   #7
Retro-Nerd
Missile Command Champion
 
Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 52
Posts: 12,435
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 offline  
Old 24 November 2017, 20:46   #8
ransom1122
Registered User
 
ransom1122's Avatar
 
Join Date: Aug 2011
Location: Omnicorp
Age: 45
Posts: 5,812
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  
 


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 21:28
Running WHDLoad Games in Winuaex Bigby project.WHDLoad 3 28 February 2009 23:21
Monkey Island and Rocket Ranger WHDLoad running too fast. ricky500 project.WHDLoad 13 19 November 2008 17:59
WHDLoad, One-on-One, WinUAE, and running too fast rlcarr project.WHDLoad 46 30 April 2008 07: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 11:50.

Top

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