#to fast 3000?
6 messages in this thread
If you are familiar with the IBM world, you are well aware that if you have
a program written on a slow machine (XT for example) and run it on a fast
one (286 for example), it runs a zillion times faster. I mean, you can't
even play games written for slower machines because the objects disappear
when you move them and reappear on the other side of the machine.
My question is this; Why doesn't the faster Amiga's (2500, 3000) also have
th problem? My dealer said that a program has to ask for the extra speed.
How do I tell a program to "ask" for this speed if it was written on a 7mhz
Amiga? This is a big concern for me as I have a large collection of
software for my 1000 and most of it I WANT to run faster… such as
graphics programs, spreadsheets, and compilers. But, music and games need
to maintain a resonable speed. Will the Amiga 3000 have a utility like
"goslow" on an IBM to slow down the processor? Any answer will help.
Thanks!
Your dealer is confusing apples with oranges. A program does not have to
"ask" for the extra speed: the extra speed is there and the program will
run at that speed. On the other hand, if you have an arithmetic
coprocessor installed, programs will not make use of it unless they were
written with the coprocessor in mind; so in that particular sense the
program does have to "ask." A program that was not written to make use of
such a coprocessor, and makes a lot of floating point calculations, will
still run faster on an accelerated machine than a stock A1000; it just
won't run as fast as it could if the additional support was written into
the program.
As for games, music, and other timing-dependent programs, if they followed
the rules and good programming practices they will run at the right speed
because they don't derive their timing from the CPU clock speed. So
objects that have to move onscreen, etc., will still function properly. On
the other hand, many games will not function on the A3000 because they
broke various system programming rules in the interest of enhancing their
features in various ways, and new versions have to be written to work on
that platform.
Pete
Michael,
Some programs do run faster on the faster machines. However, for
things like games…if written properly, they aren't hardware dependant.
Tehy don't base their timing on the system clock speed….rather they base
their timing on 'real time (minutes, seconds and parts of a second)'.
BTW, your dealer is wrong. Programs can't 'ask for speed'.
Things like graphics rendering programs, compilers and spreadsheets
all will run faster on the faster machines.
Don
Thanks. My dealer (as I have stated before) is a moron and that is why I
come here for a real answer!
The trick is to make your program run at a constant real-time speed
regardless of the speed of the machine or the system load. The way I
usually deal with it is that the program has some kind of main loop, and
every time it goes through this loop, it checks the clock to see how much
real time has elapsed since the last iteration of the loop. Then you just
make the game time for that "frame" proportional to the elapsed time. So
when you run on a faster machine, each loop takes less real time and you
just get smoother animation.
— John
I really think the most common way of getting consistent timing is by
getting a vertical blankiing interrupt.. your program is signalled to do
something every time the screen refreshes