Ultimate Amiga

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Speed Issues  (Read 7497 times)

0 Members and 1 Guest are viewing this topic.

Hungry Horace

  • Amorphous Blue-Blob Man
  • Site Admin
  • A4000T
  • ******
  • Karma: 307
  • Offline Offline
  • Gender: Male
  • Posts: 3,364
  • Don't forget... Ameboid's need love too!
    • AUW
Speed Issues
« on: March 18, 2007, 06:27:01 PM »

Hi guys,

i finally got somewhere with one of my projects, but i have to confess i'm having a few difficulties i was hoping someone might aid me with?

i am feeling a horrid result of having programmed entirely on winuae.

having got a workable game ready to try out on kaillera-winuae for online play, i thought i'd better test my game on my real amiga.... just to ensure i used a suitable realistic setup.

Oh how lovingly it ran... 4 players all on screen at once and not an ounce of slowdown. in fact, probably running a bit quicker than i wanted.

oh well... that's what you would expect from an A1200 68030 (50 mhz) with 24 meg of fastam.

then came the real test (eeek!) a1200 020 - no fast ram....

oh dear. it seemed capable at first, but slowed heavily with more than one bob on screen.

i've coded my game loop in such a way that after X number of cycles, it does a VBL wait and a BOB UPDATE.... so i can make the game more playbale with this... but it is rather like some kind of crude frameskip..

i was wondering if anyone could have a look at my code and tell me if there is anything in particular that's causing the game to run so slow.

Is it that the engine is just "heavy"? is it the bob function being slow? am i mindlessly repeating tasks i dont need to? am i timing the thing the wrong way entirely? is it just AMOS programs and 32 colours being slow generally?

i just dont know, and would really appriciate anyone having a quick look to see if they can spot an obvious problem.
It's very modular, and -fairly- well commented... so hopefully it shouldnt be too difficult to navigate.

thanks to anyone who takes the time to look.

http://www.djcresswell.com/hbexe.zip
Logged
Quote from: KillerGorilla
because winuae is made of code and your amiga is made of stuff

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #1 on: March 18, 2007, 07:31:49 PM »

A1200s with no fast RAM are slow anyway, due to the memory bottleneck on the chip bus.  An '030 is a reasonable minimum nowadays also.  In addition to this, the AmosPro compiler doesn't generate the most efficient code anyway.  If you want it to generate '020 enabled code, you could probably benefit from the compiler that Sidewinder and I are working on that will translate Amos code to C and compile it from there.
Logged

Hungry Horace

  • Amorphous Blue-Blob Man
  • Site Admin
  • A4000T
  • ******
  • Karma: 307
  • Offline Offline
  • Gender: Male
  • Posts: 3,364
  • Don't forget... Ameboid's need love too!
    • AUW
Re: Speed Issues
« Reply #2 on: March 18, 2007, 08:05:44 PM »

ok, it's generally intended for Emulated usage anyway, but i'll be sure to specify it should be -with- fastram ;)

i suspect 020 + fast would run it well enough anyway, i just dont have any way of testing that, shy of digging out the working SX-1 for my mums CD32!

i guess for now i'll stick in the frameskip/speed option and leave it at that! (unless anyone else wants a look / can offer any other solutions?)


your C convertor sounds brilliant. And i'm really glad theres something happening related to AMOS still, as i believe it's a fantasicly fun language. (HH begs) please provde support for parallel port joysticks, and er... anything useful i find in any extensions! (probably AMCAF or Ercole)


C baffles me even in the way it looks, so i fear having to do any manual fixing myself!(i'll probably just end up thrashing your convertor with bug-reports until it does everything i need!)

i have tried to be clever with my game and make it generate everything from either iff files or raw data, i hope this might help in the conversion to a small extent.

thanks.
Logged
Quote from: KillerGorilla
because winuae is made of code and your amiga is made of stuff

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #3 on: March 18, 2007, 08:53:12 PM »

AMCAF is a favorite of mine as well.

The main idea of the compiler is that there will be more than one version:  An RTG version and an AGA version.  (Probably in that order.)

The RTG version will be ported to Windows, AmigaOS 4, MorphOS and Linux using SDL and so on.

The AGA version will work on AmigaOS 3.1 or better but we're still working on the details.

Rest assured it will be possible to write extensions for Mattathias Basic in Mattathias Basic.   :-D
Logged

Hungry Horace

  • Amorphous Blue-Blob Man
  • Site Admin
  • A4000T
  • ******
  • Karma: 307
  • Offline Offline
  • Gender: Male
  • Posts: 3,364
  • Don't forget... Ameboid's need love too!
    • AUW
Re: Speed Issues
« Reply #4 on: March 18, 2007, 10:40:11 PM »

amcaf is great, but there is a serious bug in the parallel joystick input [ pJoy(0) i think ], so i'm having to use Ercole as well, despite them sharing functions.


tbh, i'm more interested in Amiga AGA / ECS development to this very day, but the idea of porting easily my programs to other systems is rather intriguing!

Any considerations for Sony PSP comipler? hehehe  ;)

Mattathias Basic sounds like everything i've wanted for a long time.... sure hope it comes together!

 :-)
Logged
Quote from: KillerGorilla
because winuae is made of code and your amiga is made of stuff

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #5 on: March 19, 2007, 08:15:59 PM »

I'm glad you are so open to something new.  As for the portable version, the Amos compatibility extension will be emulating only some of the functions that are lacking on the PC/Mac (since it is only emulating the Amos syntax) it will probably (hopefully) be faster than running it in WinUAE or EUAE since those emulators emulate the processor and the entire chipset.  I'm sure we can make it faster than EUAE since that uses SDL for its graphics functions as it is.
Logged

Zybex

  • A600
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 4
Re: Speed Issues
« Reply #6 on: May 21, 2010, 09:08:45 PM »

A1200s with no fast RAM are slow anyway, due to the memory bottleneck on the chip bus.
But CD32 without Fast RAM don't have bottleneck, with 2MB Chip RAM run at 3.5 mips.
http://jspusa.com/technical/jsptech3.html
Anyone know why A1200 is slower without Fast RAM?
Logged

KevG

  • A600
  • *
  • Karma: 1
  • Offline Offline
  • Posts: 87
Re: Speed Issues
« Reply #7 on: May 22, 2010, 09:23:33 AM »

@HH...

I tried downloading the .zip file to have a look at it for you but it appears to be a non-valid zip file or it is corrupted in some way.

Kev G
Logged

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #8 on: May 22, 2010, 03:22:23 PM »

A1200s with no fast RAM are slow anyway, due to the memory bottleneck on the chip bus.
But CD32 without Fast RAM don't have bottleneck, with 2MB Chip RAM run at 3.5 mips.
http://jspusa.com/technical/jsptech3.html
Anyone know why A1200 is slower without Fast RAM?

CD32 has the same bottleneck as the A1200.  The only reason it would be faster is on Chunky to Planar conversions because it has an Akiko chip that does those functions for it without accessing the Chip bus for instructions during the conversion.  The main reason that the bottleneck occurs is that the 68EC020 has only 256 bytes of instruction cache.  Small, tight loops can be optimized for this cache to get around the bottleneck but most code is too large to fit in such a small cache.
Logged

Zybex

  • A600
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 4
Re: Speed Issues
« Reply #9 on: May 22, 2010, 07:34:33 PM »

Yes CD32 has hardaware chunky to planar conversion, but MIPS is not from it.

Logged

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #10 on: May 24, 2010, 01:09:11 PM »

C2P might not but cache does.  Did you read my entire post?
Logged

Zybex

  • A600
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 4
Re: Speed Issues
« Reply #11 on: May 26, 2010, 04:05:54 PM »

Both CD32 and A1200 has 68EC020 and same cache, but CD32 with 2MB Chip Ram has 3.5 mips, about what cache you thinking ?
Logged

SamuraiCrow

  • compile-time wierdo
  • Forum Mod
  • A1200
  • *****
  • Karma: 5
  • Offline Offline
  • Gender: Male
  • Posts: 946
  • Compile-time wierdo
Re: Speed Issues
« Reply #12 on: May 26, 2010, 05:30:48 PM »

The only other thing I can think of that would get you more MIPS on a CD32 is to add Fast RAM with a Paravision SX-1.  Adding Fast RAM to either an A1200 or CD32 will double the speed by clearing up the bottleneck on the Chip bus.
Logged
Pages: [1]   Go Up
 

TinyPortal 2.2.2 © 2005-2022