M-HT / SR

A project to statically recompile following games to create Windows or Linux (x86 or arm) versions of the games - Albion, X-Com: UFO Defense (UFO: Enemy Unknown), X-Com: Terror from the Deep, Warcraft: Orcs & Humans, Septerra Core: Legacy of the Creator, Battle Isle 3: Shadow of the Emperor

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

septerra core will not start

Exarkuniv opened this issue · comments

hello again
this time im seeing about getting septerra core working on my Jetson nano
im running ubuntu 22.04.2 LTS.

at first i tryed aarch64-v1.04.0.10-EXPERIMENTAL but it told me to use the 64bit verion
so im using Linux-x64-v1.04.0.10-EXPERIMENTAL and i get this error

./SR64-loader: Exec format error

i know my game data works since i can use it on both my Pi4 and XU4 with out issue.
not sure where to go from here

as always any help would be great and if you need anything ill do what i can

Jetson Nano has a 64-bit ARM processor, so x64 version cannot work on in.
The correct version is arm-aarch64. Unpack it and run ./Septerra.sh (or ./SR64-loader ./SR-Septerra).

If the error was Error: The program must be run with the loader for 64-bits then you tried to run the game using ./SR-Septerra which doesn't work with 64-bit versions.

now i get Septerra Core game not found
but i have the game files in with SR-Septerra. so im not sure whats going on with it now.

least i know what version to install. i think something is messed up with my OS.
i have a few games that i swear working before and they are now not.

./Septerra.sh checks if the file septerra.mft (or SEPTERRA.MFT or Septerra.mft) is available in the current directory. If you have that file, then maybe the check isn't working properly. Try running the game using ./SR64-loader ./SR-Septerra.

so i tried two different things
one i ran what you asked from my first install and i get bash ./SR64-loader :cannot execute bianry: Exec format error

the other so i redownloaded arm-aarch64 into a different folder
when i run ./SR64-loader ./SR-Septerra or ./Septerra.sh
i get
Error Memory mmap moved

this is getting confusing on why im getting do different things from the same files. the only difference is the location
one is in the /opt/ares/ports/septerra
the other is in /home/aresuser/Downloads

The error Exec format error is with the aarch64 version ? Or the x64 version ?

Can you try SR64-loader in the attachment and post the output of ./SR64-loader ./SR-Septerra ?

its from the aarch64 version

here is the output from that file

Error memory mmap moved - 2
requested: 7fe1000000
length: 1d5000
returned: 7fe2b000

Are /opt/ares/ports/septerra and /home/aresuser/Downloads on the same partition ?
And what filesystem(s) are you using ?

Can you try SR64-loader in the attachment and post the output of ./SR64-loader ./SR-Septerra ?

yes they are both in the same partition. im just useing the download folder since its easy to get to and run from
as for the file sysem, i dont know. what ever ubuntu 22.04 uses

i ran what you posted

aresuser@jetson:~/Septerra$ sudo ./SR64-Loader ./SR-Septerra
sudo: ./SR64-Loader: command not found

but i ran ./Septerra.sh and i got this

aresuser@jetson:~/Septerra$ sudo ./Septerra.sh
argument length: 0x2
environment length: 0x13
auxiliary vectors length: 0x12
page size: 0x1000
default huge page size shift: 0x15
min huge page size shift: 0x15
max huge page size shift: 0x15
huge page size set: 0x200000

memory maps:
5555c0b000-5555c0f000 r-xp 00000000 b3:01 2932906                        /home/aresuser/Septerra/SR64-loader
5555c1e000-5555c1f000 r--p 00003000 b3:01 2932906                        /home/aresuser/Septerra/SR64-loader
5555c1f000-5555c20000 rw-p 00000000 00:00 0 
7f9746c000-7f97497000 r-xp 00000000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7f974a2000-7f974a4000 rw-p 00000000 00:00 0 
7f974a4000-7f974a5000 r--p 00000000 00:00 0                              [vvar]
7f974a5000-7f974a6000 r-xp 00000000 00:00 0                              [vdso]
7f974a6000-7f974aa000 rw-p 0002a000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7fd4b9b000-7fd4bbc000 rw-p 00000000 00:00 0                              [stack]
number of memory maps: 0x9

Error memory mmap moved - 2
requested: 0x7fd4a00000
length: 0x19b000
returned: 0x7fe65000

memory maps:
00010000-00100000 ---p 00000000 00:00 0 
7fe65000-80000000 ---p 00000000 00:00 0 
80000000-5555c00000 ---p 00000000 00:0c 37832                            /anon_hugepage (deleted)
5555c00000-5555c0b000 ---p 00000000 00:00 0 
5555c0b000-5555c0f000 r-xp 00000000 b3:01 2932906                        /home/aresuser/Septerra/SR64-loader
5555c0f000-5555c1e000 ---p 00000000 00:00 0 
5555c1e000-5555c1f000 r--p 00003000 b3:01 2932906                        /home/aresuser/Septerra/SR64-loader
5555c1f000-5555c20000 rw-p 00000000 00:00 0 
5555c20000-5555e00000 ---p 00000000 00:00 0 
5555e00000-7f97400000 ---p 00000000 00:0c 37833                          /anon_hugepage (deleted)
7f97400000-7f9746c000 ---p 00000000 00:00 0 
7f9746c000-7f97497000 r-xp 00000000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7f97497000-7f974a2000 ---p 00000000 00:00 0 
7f974a2000-7f974a4000 rw-p 00000000 00:00 0 
7f974a4000-7f974a5000 r--p 00000000 00:00 0                              [vvar]
7f974a5000-7f974a6000 r-xp 00000000 00:00 0                              [vdso]
7f974a6000-7f974aa000 rw-p 0002a000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7f974aa000-7f97600000 ---p 00000000 00:00 0 
7f97600000-7fd4a00000 ---p 00000000 00:0c 37834                          /anon_hugepage (deleted)
7fd4b9b000-7fd4bbc000 rw-p 00000000 00:00 0                              [stack]
number of memory maps: 0x14

I see no reason why it behaves like that.

What kernel version are you using ? Can you post the result of uname -a ?

Can you try SR64-loader in the attachment if it helps or not ?

aresuser@jetson:~$ uname -a
Linux jetson 4.9.299 #3 SMP PREEMPT Tue May 2 08:01:57 CEST 2023 aarch64 aarch64 aarch64 GNU/Linux

i also have these depends installed for the game, are these still correct?

 scons gdc llvm libsdl2-dev libmpg123-dev libquicktime-dev libjudy-dev libsdl2-mixer-dev

(im sure there are few i dont need)

here is what the new file does

resuser@jetson:~/Septerra$ ./SR64-Loader ./SR-Septerra
bash: ./SR64-Loader: No such file or directory
aresuser@jetson:~/Septerra$ sudo ./SR64-Loader ./SR-Septerra
sudo: ./SR64-Loader: command not found
aresuser@jetson:~/Septerra$ sudo ./Septerra.sh
argument length: 0x2
environment length: 0x13
auxiliary vectors length: 0x12
page size: 0x1000
default huge page size shift: 0x15
min huge page size shift: 0x15
max huge page size shift: 0x15
huge page size set: 0x200000
disabling huge page usage

memory maps:
5580d78000-5580d7c000 r-xp 00000000 b3:01 2931404                        /home/aresuser/Septerra/SR64-loader
5580d8b000-5580d8c000 r--p 00003000 b3:01 2931404                        /home/aresuser/Septerra/SR64-loader
5580d8c000-5580d8d000 rw-p 00000000 00:00 0 
7fa5cc8000-7fa5cf3000 r-xp 00000000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7fa5cfe000-7fa5d00000 rw-p 00000000 00:00 0 
7fa5d00000-7fa5d01000 r--p 00000000 00:00 0                              [vvar]
7fa5d01000-7fa5d02000 r-xp 00000000 00:00 0                              [vdso]
7fa5d02000-7fa5d06000 rw-p 0002a000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7fcc16c000-7fcc18d000 rw-p 00000000 00:00 0                              [stack]
number of memory maps: 0x9

Error memory mmap moved - 2
requested: 0x7fa5d06000
length: 0x26466000
returned: 0x59b9a000

memory maps:
00010000-00100000 ---p 00000000 00:00 0 
59b9a000-5580d78000 ---p 00000000 00:00 0 
5580d78000-5580d7c000 r-xp 00000000 b3:01 2931404                        /home/aresuser/Septerra/SR64-loader
5580d7c000-5580d8b000 ---p 00000000 00:00 0 
5580d8b000-5580d8c000 r--p 00003000 b3:01 2931404                        /home/aresuser/Septerra/SR64-loader
5580d8c000-5580d8d000 rw-p 00000000 00:00 0 
5580d8d000-7fa5cc8000 ---p 00000000 00:00 0                              [heap]
7fa5cc8000-7fa5cf3000 r-xp 00000000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7fa5cf3000-7fa5cfe000 ---p 00000000 00:00 0 
7fa5cfe000-7fa5d00000 rw-p 00000000 00:00 0 
7fa5d00000-7fa5d01000 r--p 00000000 00:00 0                              [vvar]
7fa5d01000-7fa5d02000 r-xp 00000000 00:00 0                              [vdso]
7fa5d02000-7fa5d06000 rw-p 0002a000 b3:01 31441                          /usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1
7fcc16c000-7fcc18d000 rw-p 00000000 00:00 0                              [stack]
number of memory maps: 0xe
aresuser@jetson:~/Septerra$ sudo ./SR64-Loader
sudo: ./SR64-Loader: command not found
aresuser@jetson:~/Septerra$ 

im at a lost on whats going on,
but if it doesn't want to work, or cant. it is what it is.

I'm guessing that it's a problem with this old kernel version. Kernel version 4.9 was release in December 2016 and stopped being supported in January 2023.

ahh, ok.
glad we have a answer then, unfortunately i think that me getting this to work on my jetson nano is a nope.
looking in to updating the kernel it way above my pay grade, since on the Jetson forum they are talking about modules and whatnot for compiling your own custom one.

so i think we can close this issue as i dont think much will be done, and i dont want you to try to get it to work on this just for me.
im very happy with it on my Pi4 and my XU4