openmoh / openmohaa

Open re-implementation of Medal of Honor: Allied Assault
GNU General Public License v2.0
277 stars 19 forks source link

OpenMoHAA for other computers and systems #301

Open gbudny opened 2 months ago

gbudny commented 2 months ago

Hi

It looks like someone started to work on OpenMoHAA for AmigaOS:

https://www.amigans.net/modules/newbb/viewtopic.php?topic_id=9488

I posted on the Pyra/OpenPandora forum, so you can probably look at some of the issues:

https://pyra-handheld.com/boards/threads/medal-of-honor-allied-assault-war-chest-on-pyra-openpandora.100011/#post-1718624

smallmodel commented 2 months ago

Interesting, I wanted to test OpenMoHAA on PowerPC as it's big-endian. I don't have the required hardware to test nor the time to set it up inside a QEMU VM. It's interesting because the project was only tested on little-endian CPUs. There might be some place where endianness is not handled, which would cause crashes, the code must be fixed accordingly.

As for bison, the version of bison that is always used is 3.8.2, with flex 2.6.4.

gbudny commented 2 months ago

Interesting, I wanted to test OpenMoHAA on PowerPC as it's big-endian. I don't have the required hardware to test nor the time to set it up inside a QEMU VM. It's interesting because the project was only tested on little-endian CPUs. There might be some place where endianness is not handled, which would cause crashes, the code must be fixed accordingly.

I didn't know it.

I don't have a computer with the PowerPC processor, but it's always great to see more software for it.

I could be wrong about it, but modern PowerPC computers are expensive: Amiga, Raptor, and IBM servers. It looks like that old Macs with PowerPC G5 are the most powerful and affordable computers.    On the other hand, I'm not sure if the OpenMoHHA built on G5 will work on modern Amiga computers or even less popular hardware like IBM or Raptor computers.

As for bison, the version of bison that is always used is 3.8.2, with flex 2.6.4.

I posted your answer on the Pyra forum.

gbudny commented 1 month ago

Hi

Do you know what could cause this issue on Pyra?

Farox Lowering the resolution (640*480) the game start...but something is wrong, terrain is not visible and if i walk into this...i fall down a bit under the objects of the scene. I try to change resolution but the game don't seems to see my changes...so i think to give up..

ptitSeb It might be some "hardcoded" x86 behaviour... That might be difficult to track down. I remember have similar problems on Serious Sam...

You probably don't have this computer, but OpenMoHAA was ported to Linux ARM. In this case, maybe you can give Pyra users a hint of what they should check to fix this issue.

samo790 commented 1 month ago

Interesting, I wanted to test OpenMoHAA on PowerPC as it's big-endian. I don't have the required hardware to test nor the time to set it up inside a QEMU VM. It's interesting because the project was only tested on little-endian CPUs. There might be some place where endianness is not handled, which would cause crashes, the code must be fixed accordingly.

I didn't know it.

I don't have a computer with the PowerPC processor, but it's always great to see more software for it.

I could be wrong about it, but modern PowerPC computers are expensive: Amiga, Raptor, and IBM servers. It looks like that old Macs with PowerPC G5 are the most powerful and affordable computers.    On the other hand, I'm not sure if the OpenMoHHA built on G5 will work on modern Amiga computers or even less popular hardware like IBM or Raptor computers.

As for bison, the version of bison that is always used is 3.8.2, with flex 2.6.4.

I posted your answer on the Pyra forum.

Well an X5000 running on AmigaOS 4.1 have enough power to run Doom 3 :-) https://m.youtube.com/watch?v=Nf6S86QiR3w&pp=ygUNRG9vbSAzIEFtaWdhIA%3D%3D

gbudny commented 1 month ago

Interesting, I wanted to test OpenMoHAA on PowerPC as it's big-endian. I don't have the required hardware to test nor the time to set it up inside a QEMU VM. It's interesting because the project was only tested on little-endian CPUs. There might be some place where endianness is not handled, which would cause crashes, the code must be fixed accordingly.

I didn't know it. I don't have a computer with the PowerPC processor, but it's always great to see more software for it. I could be wrong about it, but modern PowerPC computers are expensive: Amiga, Raptor, and IBM servers. It looks like that old Macs with PowerPC G5 are the most powerful and affordable computers. On the other hand, I'm not sure if the OpenMoHHA built on G5 will work on modern Amiga computers or even less popular hardware like IBM or Raptor computers.

As for bison, the version of bison that is always used is 3.8.2, with flex 2.6.4.

I posted your answer on the Pyra forum.

Well an X5000 running on AmigaOS 4.1 have enough power to run Doom 3 :-) https://m.youtube.com/watch?v=Nf6S86QiR3w&pp=ygUNRG9vbSAzIEFtaWdhIA%3D%3D

Yes, you are right.

However, the prices of this hardware aren't great.

Sometimes, I read news about games for AmigaOS and MorphOS, so I know about the upcoming Quake 4 and Prey that use dhewm3, which are even more demanding.

samo790 commented 1 month ago

yes, prices of that hardware are quite high... but that's normal given that we're talking about a niche platform produced for enthusiasts ;-) Anyway we were talking about hardware potential here, yes technically there would be no problems with openmohaa

gbudny commented 1 month ago

Anyway we were talking about hardware potential here, yes technically there would be no problems with openmohaa

I never had doubts about it.

I hope that rjd324 will port OpenMoHAA to AmigaOS.

I remember that Halloween: The New Nightmare wasn't ported to AmigaOS/MorphOS because it used the BASS library. I wanted to see this game on these systems.

Unfortunately, no one decided to rewrite this audio part of the game to use SDL_mixer. That's an example of issues that are probably more common for less popular systems like AmigaOS/MorphOS.

samo790 commented 1 month ago

Yep this is a typical problem of niche platforms... we have various things, but some libraries will always be missing and not everything always works well the first time :-)

smallmodel commented 1 month ago

Some sections of the code were fixed to take endianness into account (for AmigaOS PowerPC). Only the server part was tested using a PPC64 big-endian machine on Debian 12. The client wasn't tested. Pyra/OpenPandora uses an ARM32 CPU, but I have no idea whether or not big-endian is used.

Lowering the resolution (640*480) the game start...but something is wrong, terrain is not visible and if i walk into this...i fall down a bit under the objects of the scene.

I had the same issue on PowerPC because terrain patches weren't read the way they should be in big-endian (values are stored as little-endian in the files)

samo790 commented 1 month ago

@smallmodel

Good job mate, this will semplify the work of the porting ;-) Thank you

gbudny commented 1 month ago

@ptitSeb

So, it's working, at least on the Pandora. There is still some work to do with the control, and the fullscreen, and the packaging, and the extraction of data from the GoG installer, and some crash at the exit that I should look into. So there yet. Speed seems correct, so that's a good news.

image

I wont have time this weekend, will continue that next week...

https://pyra-handheld.com/boards/threads/medal-of-honor-allied-assault-war-chest-on-pyra-openpandora.100011/page-3#post-1718888

This is a great news!