Release Septerra Core: Legacy of the Creator


M-HT

Very Active Member
Joined
Nov 30, 2007
Messages
688
Location
Bratislava
Website
github.com
Septerra Core: Legacy of the Creator is a single player role-playing video game developed by Valkyrie Studios and published by Monolith Productions for Windows in 1999. Despite its Western origins, Septerra Core is a Japanese-style role-playing game.

This is a port of the game's executable for Pandora (using static recompilation/binary translation).

Original Septerra Core version 1.04 is required for playing.

Download:
repo

Versions for other platforms and the source code are available on GitHub.

You can buy Septerra Core on GOG.com.

Controls :
Touchscreen: mouse movement + left mouse click
R+Touchscreen: mouse movement + right mouse click

For keyboard shortcuts read the original ReadMe.txt

Update:
v1.04.0.11 (2023-12-10)
* use bundled ffmpeg library instead of system library
* optimize floating point instructions
* minor bug fixes

v1.04.0.8
* add option to use right mouse click to preselect characters in combat (based on unofficial patch)
* don't add sleep (to prevent too much CPU utilization) when not necessary
* minor bug fixes

v1.04.0.6
* add option to reduce cpu sleep, to help with higher mouse poll rates
* optimize recompiled code

v1.04.0.5 (2021-01-21)
* add options to set command line parameters
* add option to set delay after image flip
* add options to enable cheats

v1.04.0.4 (2020-04-13)
* fix playing .avi versions of movies from GOG Windows installer
* allow setting size of audio buffer

v1.04.0.2 (2019-10-11)
* optimize string operations
* optimize floating point operations
* add sleep to prevent too much CPU utilization
 
Last edited:
Woah, this looks like a massive release for the Pandora. Just a shame my unit it out of action these days.

Out of interest, is there a GOG version of this that can be used, or do we need to go scavenging second hand bins?
 
septerracore.jpg

Can't get the PND to run? No logging in /tmp.... help!
pnd is not being "indexed". Tried to find it through albert, tried to pnd_run it directly... nothing...
edit: It segfaults before it can log anything. Got the stock 1.76 with the upgrade (opkg update)

I assume you ran it once, to get the ../apdata/septerra (which is not created at the moment) to put my files there; then run again to play.

(paid full price for this Gem back in 1999 - with one of my first paychecks 89.95 guilders; did not finish it, hmm.. where are my save files?)
 
Last edited:
View attachment 33265

Can't get the PND to run? No logging in /tmp.... help!
pnd is not being "indexed". Tried to find it through albert, tried to pnd_run it directly... nothing...
edit: It segfaults before it can log anything. Got the stock 1.76 with the upgrade (opkg update)

I assume you ran it once, to get the ../apdata/septerra (which is not created at the moment) to put my files there; then run again to play.

(paid full price for this Gem back in 1999 - with one of my first paychecks 89.95 guilders; did not finish it, hmm.. where are my save files?)

Just tested and it run fine on my CC Pandora at 600Mhz...really great work @M-HT


@FBnil you have to put the pnd inside /pandora/apps
and the game datas under /pandora/appdata/septerra/game/
 
@FBnil I tried putting the pnd inside /pandora/desktop and it worked. I also tried pnd_run and it also worked. Are you sure the pnd is downloaded correctly ? The size should be 1 912 013 bytes. Have you tried resetting the Pandora ?
 
Yeah, working (at least, the unskippable presentation). Woot! Permissions were not correct. (and binary files differ after redownloading it). Will play tomorrow and give some feedback. Thanks @M-HT and @Farox
 
Last edited:
Yeah, working (at least, the unskippable presentation).
If by unskippable presentation you mean the intro movies, they can be skipped by pressing escape or right mouse click (right nub or R+Touchscreen). Or you can turn them off by editing the file /pandora/appdata/septerra/Septerra.cfg and changing "Intro_Play=yes" to "Intro_Play=no".
 
I wasn't planing a Windows build, because it's a Windows game. Are there problems with the original version when Timeslip's patch is installed ? It's preinstalled on GOG version, if I'm not mistaken.

It can be compiled for Windows, but movie playback doesn't work.
 
I wasn't planing a Windows build, because it's a Windows game. Are there problems with the original version when Timeslip's patch is installed ? It's preinstalled on GOG version, if I'm not mistaken.

It can be compiled for Windows, but movie playback doesn't work.
movie playback is indeed one problem with the windows version I had. I remember also some kind of timing errors, I think partly fixed by timeslip's patch. But overall, the game is far from being hassle free under windows with new systems.
 
HI @M-HT
I was playing with MinGW/MSYS trying to build your SR/SRW exe and i succesfully built this with some fix to one source file and a fix to scons, also i succesfully run pycfg.py under Windows.

Here how i done:
After installed MinGW32 (with GCC 8.2.0) and MSYS (1.0) both with the MinGW_Installer, i added scons (3.1.1) to my Python2.7 (quick note invoking scons under MSYS didn't work as there are missing a file that is not created by the setup.py installer...see here on how to fix ).
Download the Judy library and copy the whole project to HOME under the MSYS environment (in my case C:\MinGW\msys\1.0\home\XXyour_username_hereXX\judy-1.0.5) open MSYS shell and go to this directory.
Now type
configure --prefix=/mingw --target=i686-w64-mingw32 --enable-32-bit
and when done type
make
make install (as we have to install the new lib inside MinGW).
Now extract the whole SR-master sources to Home under MSYS environment (like before) change the MSYS shell to the new directory, now we must build the udis library:
cd udis86-1.6
and type
./configure (without any options)
now
make (theres no need to install...)

Now go back to SR dir, if you type
scons
it'didn't work.
To have a working scons under MSYS you have (as you can read above) to create a file with this content:
#!/bin/sh
python /c/Python27/Scripts/scons.py $*
you should name it scons (without extension) but windows do not permit to have a file and a directory with the same name on the same folder...so i renamed it sconss .

Now type
sconss
and after some second you have:
SR_main.c:47:28: warning: 'struct timeval' declared inside parameter list will n
ot be visible outside of this definition or declaration
static int get_time(struct timeval *tp)
^~~~~~~
SR_main.c: In function 'get_time':
SR_main.c:49:9: warning: 'timeb' is deprecated [-Wdeprecated-declarations]
struct timeb tb;
^~~~~
In file included from SR_main.c:45:
c:\mingw\include\sys\timeb.h:57:32: note: declared here
struct __POSIX_2001_DEPRECATED timeb
^~~~~
SR_main.c:51:2: warning: 'ftime' is deprecated [-Wdeprecated-declarations]
ftime(&tb);
^~~~~
In file included from SR_main.c:45:
c:\mingw\include\sys\timeb.h:169:6: note: declared here
void ftime (struct timeb *__t) {_ftime ((struct _timeb *)(__t)); }
^~~~~
SR_main.c:53:4: error: dereferencing pointer to incomplete type 'struct timeval'

tp->tv_sec = tb.time;
^~
SR_main.c: In function 'write_log_time':
SR_main.c:68:17: error: storage size of 'current_time' isn't known
struct timeval current_time;
^~~~~~~~~~~~
scons: *** [SR_main.o] Error 1
scons: building terminated because of errors.

I fixed adding to main.c
#if defined(__MINGW32__)
#include <sys/timeb.h>

//added by farox ----------
#ifndef _TIMEVAL_DEFINED /* also in winsock[2].h */
#define _TIMEVAL_DEFINED
struct timeval {
long tv_sec;
long tv_usec;
};
#endif /* _TIMEVAL_DEFINED */
-----------------------------------


static int get_time(struct timeval *tp)
{
struct timeb tb;

ftime(&tb);

tp->tv_sec = tb.time;
tp->tv_usec = tb.millitm * 1000;

return 0;
}

#else
#include <sys/time.h>

#define get_time(x) gettimeofday(x, NULL)
#endif

don't know if it's the best but seems to work...
Now it can correctly build SR.exe and after modify main.c on the other dir also SRW.exe

For the pycfg.py to run on windows you need to install PyGTK (all in one package...i downloaded and installed this )

That's all for today...now i need to test the decompilation
 
@Farox
I fixed the compilation error and many compilation warnings. I switched from Windows to Linux many years ago, so I do all development there and it's also my primary target (Windows being secondary).
 
I fixed the compilation error and many compilation warnings.

Great

I switched from Windows to Linux many years ago, so I do all development there and it's also my primary target (Windows being secondary).

Don't worry i don't want to force you to return to Windows, my try on using MinGW+MSYS was only a learning exeperience and i shared my changes in the hope that could help some other people, and may help you adding some more info on your project.
My secret goal was to decompile a new game (Darkstone by Delphine Software ) but in reality i know that i don't be able to do anything...but i wanna see where i could arrive....i like to tinker with this kind of things:)
Do you have some quick guide on how to procede with your SR project ?
 
Not solely complaining about @M-HT, but why are so many folks not releasing to the repo, these days?
 
Back
Top