English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 22 July 2019, 13:40   #1
aros-sg
Registered User
 
Join Date: Nov 2015
Location: Italy
Posts: 191
Emulate Amiga of any imaginable speed

Hi. Is there or wouldn't it be nice to have an option in UAE to configure host to emulated time ratio? Standard is 1:1 -> Amiga clock running in UAE ticks as fast as a clock runing on host OS. So that's realtime.

But if for example that would give roughly a 68060 at 500 Mhz on a specifc computer but one would like to emulate one at 5000Mhz then in theory that should be possible by simply modifying the UAE host timing code to lie, and for example say that only 1/10 second has passed when in reality it was 1 second. The UAE user will see a clock app in AOS run 10 times slower than it should but to the emulated Amiga and it's OS and it's apps it looks like it is really a 10 times faster machine.

Such a thing would for example help to check if certain benchmarks still calculate their benchmark results correctly even when the benchmark is executed much faster than expected by the benchmark tool because of running on hyperfast theortical hardware of 68060 at 10000 Mhz or whatever. And it can be done with JIT disabled.
aros-sg is offline  
Old 22 July 2019, 15:25   #2
Seiya
Registered User
 
Seiya's Avatar
 
Join Date: Nov 2014
Location: Italy
Posts: 2,398
the only way to do it should be modifing "cpu_multiplier" in WinUAE CPU Panel, but you have set cpu speed approximate A500/A1200 and set cycle_exact=true.
i tried but there is no change in speed. i try with Gamebase and thanks to it's script i can set any speed.
i setup also A1200 with 68020 at 14 Ghz and the speed is like Jit, but without using it. Of course are not real clock but you see the jit speed but with maximum compatibility.
So you can run software at maximum speed, but without problem that usally you have with jit enabled.
Seiya is online now  
Old 22 July 2019, 19:22   #3
Leandro Jardim
Registered User
 
Leandro Jardim's Avatar
 
Join Date: Nov 2009
Location: Legoland
Age: 45
Posts: 1,461
Quote:
Originally Posted by aros-sg View Post
Hi. Is there or wouldn't it be nice to have an option in UAE to configure host to emulated time ratio? Standard is 1:1 -> Amiga clock running in UAE ticks as fast as a clock runing on host OS. So that's realtime.

But if for example that would give roughly a 68060 at 500 Mhz on a specifc computer but one would like to emulate one at 5000Mhz then in theory that should be possible by simply modifying the UAE host timing code to lie, and for example say that only 1/10 second has passed when in reality it was 1 second. The UAE user will see a clock app in AOS run 10 times slower than it should but to the emulated Amiga and it's OS and it's apps it looks like it is really a 10 times faster machine.

Such a thing would for example help to check if certain benchmarks still calculate their benchmark results correctly even when the benchmark is executed much faster than expected by the benchmark tool because of running on hyperfast theortical hardware of 68060 at 10000 Mhz or whatever. And it can be done with JIT disabled.
Quote:
Originally Posted by Seiya View Post
the only way to do it should be modifing "cpu_multiplier" in WinUAE CPU Panel, but you have set cpu speed approximate A500/A1200 and set cycle_exact=true.
i tried but there is no change in speed. i try with Gamebase and thanks to it's script i can set any speed.
i setup also A1200 with 68020 at 14 Ghz and the speed is like Jit, but without using it. Of course are not real clock but you see the jit speed but with maximum compatibility.
So you can run software at maximum speed, but without problem that usally you have with jit enabled.
I think aros-sg is talking about another thing.

You Seya, is talking about speed control. Toni already said this is not realisticaly possible now without the Motorola opcode data sheet, that is confidential and Toni don't have access. And aros-sg, is talking I guess, about a sort of "time machine" for WinUAE.

A "time machine" in the sense that the emulated time can be made relative to the host time, as such it doesn't need to be the original timestamp, and this way all events that WinUAE use to emulate the bus data transfers between the CPU and the chipset could be made to run slower or faster. I like to think it's a bit like Einstein's theory of relativity, but for CPU emulators. (that's why I called it a "time machine")

WinUAE could interpolate the host time to a ratio that the user would choose, for which WinUAE will eventually register in every event as it always does. Every new ratio that the user choose would scale the emulated time, the timestamp of the events, the clock cycles for every instruction and subsequently propagate change to the clock speed also.

Toni could use that to find an approximation of the number of clock cycles necessary to perform a certain opcode, by making experiments trying to tune the time ratio, until he finds a number that will scale correctly the cycles per instruction of WinUAE to match a real CPU in clock speed, and then take note of that value to update the WinUAE source code.

That idea of aros-sg's will not make WinUAE fast like an 68060 at 5 GHz on a 2 GHz Intel notebook, but what I like to think and what I hope aros-sg was wanting to explain, is that it divide the perceived CPU speed in one that is logical and fake and other that is physical and real, to facilitate future experiments with the WinUAE codebase, for tuning the cycles per instruction of each 68020+ opcode that are not identical to the real CPUs yet.

Sorry if I am saying a stupidity! The only emulator I did ever write was a Chip-8 interpreter for Windows, that I did not even come to finish...

Last edited by Leandro Jardim; 23 July 2019 at 11:43.
Leandro Jardim is offline  
Old 22 July 2019, 21:48   #4
Leandro Jardim
Registered User
 
Leandro Jardim's Avatar
 
Join Date: Nov 2009
Location: Legoland
Age: 45
Posts: 1,461
Sorry for appending this almost blank reply, I only want to say I updated my post above with more information about my thinking I was trying to explain...
Leandro Jardim is offline  
Old 22 July 2019, 23:31   #5
Seiya
Registered User
 
Seiya's Avatar
 
Join Date: Nov 2014
Location: Italy
Posts: 2,398
boh, however if someone need to have super fake GHz speed (but with jit performance) there is some chance to do it.
I think that what want to do aros-sg is impossible if is like you have understand
Seiya is online now  
Old 23 July 2019, 13:19   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,534
Quote:
Originally Posted by aros-sg View Post
UAE host timing code to lie, and for example say that only 1/10 second has passed when in reality it was 1 second.
FPS adj. in Display panel sort of does this already. It can be used to change chipset timing relative to real world.

CPU speed won't still match 500MHz or whatever even if some test program returns it.
Toni Wilen 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
When will the damn iPhone/iPad emulate Amiga? Pyromania Amiga scene 32 04 August 2022 17:55
could I Emulate Amiga Games from my PSP 1000? nathanm1991 request.Other 2 30 April 2018 23:05
local Lan to emulate amiga local connection ? turrican3 support.WinUAE 4 28 June 2016 21:47
Actually, what is the best way to emulate Amiga on Linux? etnablog support.OtherUAE 5 02 June 2008 00:02
Ok who uses xbox to emulate the Amiga !!! synchro Amiga scene 23 08 January 2005 15:02

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 03:16.

Top

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