Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CPU Speed 'Fastest' (and JIT combinations) don't work properly #107

Closed
ghost opened this issue May 18, 2017 · 16 comments

Comments

@ghost
Copy link

@ghost ghost commented May 18, 2017

When setting the CPU Speed to 'Fastest' and running the program SysInfo and doing a speed check it's detected as 7MHz. (JIT OFF).

With JIT ON, 7, 14 and 25MHz are all clocked at 7MHz (approximately 1279 Dhrystones).

@ghost ghost changed the title CPU Speed 'Fastest' doesn't work properly CPU Speed 'Fastest' (and JIT combinations) don't work properly May 18, 2017
@CypherXG

This comment has been minimized.

Copy link

@CypherXG CypherXG commented May 21, 2017

My Test without JIT and fastest etc... Running on my Pi3, not overclocked
dsc_0045

dsc_0046

My Test with JIT and fastest etc... Running on my Pi3, not overclocked
dsc_0047

dsc_0048

U see, i have no Problems with JIT etc.

Best regards... Markus

@ghost

This comment has been minimized.

Copy link
Author

@ghost ghost commented May 21, 2017

Not sure why you have 68040 selected as it's not properly implemented yet. Your results say 68040 7MHz when you have JIT and Fastest selected, and why does your FPU say 'Not in Use' when you have it set at 'CPU internal' ? It seems to give different results on 68040. Could you try the test again with 68020 selected ?

@midwan Can you confirm any of this. I am using SDL2 version. I checked the Android version of UAE4Arm and it does a similar thing so i'm not sure how CyperXG is having different results.

68020
JIT ON
7 MHz = 7 MHz
14 MHz = 7 MHz
25 MHz = 7 MHz
Fastest = Fastest

JIT OFF
7 Mhz = 7 MHz
14 MHz = 14 MHz
25 MHz = 25 MHz
Fastest = 7 MHz

@CypherXG

This comment has been minimized.

Copy link

@CypherXG CypherXG commented May 22, 2017

Oh yeahh..there is an error.
Is that what u are writing the Speed behind the CPU on the right side?

Everytime i do a "Hardreset" with uae4arm and boot from ADF Disk Sysinfo without any Workbench etc.
Here are my results with all possible variants:
Have fun.... :-)

grafik

Best regards...

@HoraceAndTheSpider

This comment has been minimized.

Copy link
Collaborator

@HoraceAndTheSpider HoraceAndTheSpider commented May 22, 2017

Just from playing whdload games I am finding I am having to switch the cpu down to 7mhz on amiberry (it came from the desert, New Zealand story) when they should run fine on fast cpu's.

I am using 020 and "real" speed iirc. JIT seems to make no difference, although I often leave it on by default.

Also adding frame skip has no "throttling" to maintain a genuine speed.

@ghost

This comment has been minimized.

Copy link
Author

@ghost ghost commented May 22, 2017

@CypherXG
Thanks for the extensive list. As you can see there seems to be a lot more problems than I originally reported !!

My first guess would be that it's relying on 'Cycle-Accuracy' code which TomB never added to the emulator (and is sorely needed in a lot of Whdload games to stop them playing at turbo speed (from memory, Harlequin, Jaguar XJ220, Barbarian, Interphase, Technocop etc.).

@midwan

This comment has been minimized.

Copy link
Owner

@midwan midwan commented Aug 8, 2017

Yeap, the CPU code needs an update, to include cycle-exact modes and more (FPU code is mostly missing for example). This is a known issue and I was working on that slowly, but it's a big task and it takes time. :P

@ghost

This comment has been minimized.

Copy link
Author

@ghost ghost commented Aug 8, 2017

Hi @midwan great to see you returning to this project. I've currently been using WinUAE but am always intrigued by the progress of this emulator for the Pi etc. I noticed that TomB has recently posted a couple of big updates to UAE4Arm. He's added features from WinUAE 3.3.0. I don't know if that includes Cycle Accuracy but he has added superhires and improved the CPU Fastest settings etc. Maybe this could save you a ton of time by merging his updates to Amiberry ? Here's a link to his updates.

https://pyra-handheld.com/boards/threads/uae4arm.81153/

@midwan

This comment has been minimized.

Copy link
Owner

@midwan midwan commented Aug 9, 2017

@blinkydoos
I will definitely be looking into the changes TomB made, but perhaps it's better to wait a bit. He mentioned that this version is still in testing and not stable enough.

Also, the fact that he doesn't seem to have the source code on a standard repository, makes things difficult to merge (you'll have to detect changes in code manually, then compare manually with your code and pick what to merge in). Another reason to wait until his version is stable enough... :)

@midwan

This comment has been minimized.

Copy link
Owner

@midwan midwan commented Oct 7, 2017

@blinkydoos
All the latest changes (and more actually) have been integrated in the current sd1-dev and sdl2-dev branches. They will be merged to stable versions once we polish things up a bit (and add some more features).

Compatibility seems to be improved in several areas, speed as well. Some bugs still remain, but overall it's a step towards the right direction.

@midwan midwan closed this Oct 7, 2017
@TheMoleUK

This comment has been minimized.

Copy link

@TheMoleUK TheMoleUK commented May 3, 2019

Has the CPU emulation improved in v2.25?

I’d like to own a 040! :)

What are the best sound settings to use?

What is the difference between Fastest and Turbo? Is Fastest faster than Turbo or does Turbo, turbo past Fastest?

AGA sometimes gets a little garbled, like Pinball Illusions intro or Zool AGA. Rotating mode fixes...

@midwan

This comment has been minimized.

Copy link
Owner

@midwan midwan commented May 3, 2019

There have been bugfixes and improvements, especially in the JIT and JIT FPU area, but we haven't changed the emulated models.
Regarding sound settings, it depends on what you're emulating and what your personal preferences are. Try with the default settings and experiment from there :)

Finally, Fastest and Turbo modes change how much time Amiberry will give to CPU emulation. Turbo will give maximum time to CPU emulation (at the cost of reduced custom chipset emulation cycles), Fastest will give as much as possible while keeping the Custom Chips emulation going.

In short, only use Turbo for CPU-intensive work which requires no Custom Chipset emulation (e.g. Workbench applications, raytracing, etc).

@TheMoleUK

This comment has been minimized.

Copy link

@TheMoleUK TheMoleUK commented May 3, 2019

Ah, thanks...
It’s all great fun...

@TheMoleUK

This comment has been minimized.

Copy link

@TheMoleUK TheMoleUK commented May 3, 2019

Not exactly sure what JIT is...
Could you explain?

Also AGA fix?

@TheMoleUK

This comment has been minimized.

Copy link

@TheMoleUK TheMoleUK commented May 3, 2019

The 030 could run at several speeds higher than 25MHz?

16, 20, 25, 33, 40, 50 MHz, except for MC68EC030 available in 25 and 40 MHz

@midwan

This comment has been minimized.

Copy link
Owner

@midwan midwan commented May 3, 2019

Specific MHz make no sense under emulation, unless you're doing Cycle-Exact emulation (which we're not doing, because the current boards are now powerful enough to handle it).

@TheMoleUK

This comment has been minimized.

Copy link

@TheMoleUK TheMoleUK commented May 3, 2019

I quite enjoy making an upgrade in emulation as best I can. Given up on 040 and just played with 020 and 030 settings to create variants as best I can...
https://howlingpixel.com/i-en/Motorola_68030

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.