Opentyrian2x Alpha Released!


as of OpenTyrian revision 627, current savefiles are likely to be unusable, but on the bright side, I think I've fixed all the problems with GP2X savefile corruption :)
 
Has ver 627 been compiled/distributed yet, or is it still waiting for someone to actually release it in some form other than source?
 
Tobriand said:
Has ver 627 been compiled/distributed yet, or is it still waiting for someone to actually release it in some form other than source?
C'mon, give me a bit of time ! :p I was only trying to boost the game :lol:
So, just for you here it is. New OpenTyrian2x runs with :
- Paeryn's Hardware SDL
- Squidge's MMUHack with PicoDrive module
- Ram tweaks with cpu-lcd-ram-tweak used inside opentyrian2x.gpe -> you can set your own tweak settings !
- OpenTyrian SVN revision #646

Well, I'm pleased to say that the game runs almost fullspeed at 200 MHz :D
It should be available soon on the GP2x File Archive. If you can't wait, just grab it here :
http://unismetz.free.fr/site/fichiers/opentyrian2x.zip
 
Last edited by a moderator:
Wow! This is fairly nippy now! In fact almost faster than I can handle. Next step, enable game speed modes :). Also I noticed that in the menus, it seems to detect key presses too fast, as in it can be difficult to select what you want - and in game using sidekicks it seems to be a bit too sensitive, detecting a repeat too soon. This is great though for control with the joystick! I don't think I've played anything on the Gp2x where it felt so much like the stick was being responsive.

One solution to the above would of course be to downclock slightly - perhaps.

Just getting a few stutters here and there, I don't think that's a system limitation though...

Great work again - now to test saves.
 
Zeladin said:
Wow! This is fairly nippy now! In fact almost faster than I can handle. Next step, enable game speed modes :). Also I noticed that in the menus, it seems to detect key presses too fast, as in it can be difficult to select what you want - and in game using sidekicks it seems to be a bit too sensitive, detecting a repeat too soon. This is great though for control with the joystick! I don't think I've played anything on the Gp2x where it felt so much like the stick was being responsive.

One solution to the above would of course be to downclock slightly - perhaps.

Just getting a few stutters here and there, I don't think that's a system limitation though...

Great work again - now to test saves.
You could already downclock the GP2x by editing the opentyrian2x.gpe file : add a '--cpuclk 150' param to the cpu_speed.gpe call, for instance. Or simply run cpu_speed.gpe and adapt the CPU speed ;)
 
Last edited by a moderator:
Call me a noob, but can the left and right buttons be changed to L and R shoulder triggers for us MKI gp2x users? I grew up playing this game, and even playing with the crappy stick is a tremendous amount of fun.
 
GfµnK said:
Call me a noob, but can the left and right buttons be changed to L and R shoulder triggers for us MKI gp2x users? I grew up playing this game, and even playing with the crappy stick is a tremendous amount of fun.
I'm not sure to understand what you're asking me. L and R triggers are currently assigned to sidekicks (the powerful weapons on both sides of the ship). Isn't it fine like this ?
Or are MK1 gp2x joysticks even worse than MK2 ones ? or does the joystick not work with OpenTyrian2x on MK1 gp2x ?
 
Last edited by a moderator:
Being a fan of shooter type games, I've been enjoying playing Tyrian the past few days.

The speed boosts are welcome!

I've been playing using Gmenu2x so I've had RAM Timings enabled since word go and just commented out the items in the script to do this.

Playing at 200Mhz, I found that in most cases the speed was fine, though the 1st boss seems to push the game with the numnber of objects flying around so it slows down a bit there.

I was wonderering if the game could be centred on the screen. I would assume this is a pretty easy thing to do? 20 pixels down should make it perfect! :)

the only other things is exiting seems to lock it up (and the same way that MAME did, and this turned out to be a threading issue. Does the game use a separate thread for sound?)

A pause button would be really good too - unless there is one there and I'm not finding it? :D

Great work! Thanks!
 
slaanesh said:
the only other things is exiting seems to lock it up (and the same way that MAME did, and this turned out to be a threading issue. Does the game use a separate thread for sound?)

yup, SDL launches a thread for sound/music mixing

slaanesh said:
A pause button would be really good too - unless there is one there and I'm not finding it? :D

unfortunately, Tyrian didn't favor the joystick much, so it's not implemented in the original or OpenTyrian yet... it'll be implemented eventually (the whole input system needs to be revised some time)
 
Last edited by a moderator:
triksR4rabits said:
To those who have yet to play Tyrian, I highly recommend giving it a spin; incredibly fun shump with a number of weapons, ships, etc to choose from.

<me jealous> wish I could get this going on psp </me jealous> :)

thanks to Tobriand for the info and Kalimerou for bringing this great game to the 2x!



Funny thing, I saw this game for the 1st time last night running on a PSP Slim. :lol:
 
Last edited by a moderator:
Kalimerou said:
You could already downclock the GP2x by editing the opentyrian2x.gpe file : add a '--cpuclk 150' param to the cpu_speed.gpe call, for instance. Or simply run cpu_speed.gpe and adapt the CPU speed ;)
I don't know why you would want to downclock, I have found that the later levels ("TORM") slow right down at 200Mhz even with RAM Timings on.
I've also found that the the whole game will sometimes pause and usually always give a quick complete pause at the start of the game. Later on it seems random - are these pauses loading data from the SD card?
I was wondering at what frequency the sound mixer is running at? 44100hz?

A great game - I'm having loads of fun playing this! Hooray for shooters!

What other open source shooters are available?
 
Last edited by a moderator:
slaanesh said:
Kalimerou said:
You could already downclock the GP2x by editing the opentyrian2x.gpe file : add a '--cpuclk 150' param to the cpu_speed.gpe call, for instance. Or simply run cpu_speed.gpe and adapt the CPU speed ;)
I don't know why you would want to downclock, I have found that the later levels ("TORM") slow right down at 200Mhz even with RAM Timings on.
I've also found that the the whole game will sometimes pause and usually always give a quick complete pause at the start of the game. Later on it seems random - are these pauses loading data from the SD card?
I was wondering at what frequency the sound mixer is running at? 44100hz?

A great game - I'm having loads of fun playing this! Hooray for shooters!

What other open source shooters are available?
Yes, I did say perhaps - it really does slow down at some points, it was just at other points it seemed to me the game was racing (not just I was going faster as happens at some points in levels but that everything was going faster).

Considering this game originally ran on a 386, and we're now running natively on 200mhz arm (all things are not equal), I don't think cpu speed could really be much of an issue, or the real issue. Perhaps the new C source is a bit generous with floating point? It seems unlikely that the pauses are from loading data, there's not a whole lot to load... Rather if the stutters are during loading there must be some bug.

By the way, saves are working good, though I think there might be a chance that the last save you make or something, is lost. Perhaps its related to an unclean exit?

This game is one of the few shooters I really enjoyed, I'm glad to have it on the go now - I hope more old dosgames follow this path to resurrection.
 
Last edited by a moderator:
Zeladin said:
Considering this game originally ran on a 386, and we're now running natively on 200mhz arm (all things are not equal), I don't think cpu speed could really be much of an issue, or the real issue. Perhaps the new C source is a bit generous with floating point? It seems unlikely that the pauses are from loading data, there's not a whole lot to load... Rather if the stutters are during loading there must be some bug.

The stutters are from the audio thread most likely -- which is logical since that's the only portion of code (that I'm aware of) which is more generous on floating point than the original.
Also, large portions of the original source were optimized assembly, so it's bound to be a bit slower.

Zeladin said:
By the way, saves are working good, though I think there might be a chance that the last save you make or something, is lost. Perhaps its related to an unclean exit?

That shouldn't be, it calls fsync after every save...

slaanesh said:
I was wondering at what frequency the sound mixer is running at? 44100hz?

Yes, it could be cut down to 22khz for the GP2X... that might help a bit.
 
Last edited by a moderator:
Mindless said:
That shouldn't be, it calls fsync after every save...
I'll have to test more, I just remembered I had a corrupted write to my SD (from my computer) round about the same time as I was testing this. I didn't catch on immediately - might be related. I'll use a fresh Sd too, just in case.

As to stutters, audio thread definitely sounds suspect. I'm sure we can all cope with 22khz sound, I wouldn't go leaping on the 940t band wagon yet though.
 
Last edited by a moderator:
I suspected some slowdowns to be related to game loads. As SD cards are sometimes deadly slow, it would not be a surprise :p

Tobriand said:
Or investigate the sending of the sound thread to the 940T, of course.
Not that that is ever simple.

To my mind this wouldn't be a good idea, because it means many lines of GP2x-related code inside OpenTyrian sources. It's already hard to maintain, it would be even more ! :(
So this won't be a priority for me. But, if anyone wanted to submit a patch, he/she would be welcome :D
slaanesh said:
A pause button would be really good too - unless there is one there and I'm not finding it? :D

I believe this will be the next issue on the top of the stack ;)

Knoxximus said:
Funny thing, I saw this game for the 1st time last night running on a PSP Slim. :lol:

Well, it seems that somehow OpenTyrian has been brought to light :D
 
Last edited by a moderator:
I've done some playing around and recompiling with some of my own tweaks.

So far I am seeing some major improvements in running speed. The "Gyges" level which is quite busy and very slow is now running with only the most minor and occasional pause... and I've still got some other speed improvements to implement!

It may even get to the point where we can up the detail level. It's currently set at 386 - this can be upped to 486 or Pentium.

Some people might be wondering why the hell is it so slow? Tyrian ran faster on a 386? One of the most time consuming areas of the game is generating FM samples. This is done for "free" on a PC with a soundblaster as it has the necessary hardware to play the music. On the GP2X, the FM is emulatated and the sound generated just like it would in any emulator (like MAME).

The current build is set to 44100hz - in my build I've reduced this to 22050hz (still sounds great!) which means there are half the number of samples to generate and a nice boost to overall speed.

The game has heavy reliance on memcpy() and memset() so I'm going to compile with the assembler versions of these and see how it goes!

Kalimerou has given me the go ahead to create a release and/or provide source code updates so I should have something soon.

EDIT: Pretty sure getting PAUSE support will be fairly straight forward too.
 
Back
Top