AMIGASYSTEMDistro MaintainerPosted
6 days agoI don't know if it's correct, but I used the sources from the two links I attached!
AMIGASYSTEMDistro MaintainerPosted
6 days agoOkay, Serk, think about the little girl first, because she's much more important!
serk118ukSoftware DevPosted
5 days agoI managed to compile with below changes but ttengine.library crashes do to memset atm and i had this problem with other stdlib.functions and yet again i had same problem , i need deadwood or someone to look at the sourcecode.
Changes to compile on 64bit AROS
--------------------------------
makefile.aros
-------------
LIBS = #-lrom <--- i dont have lib librom so commented out..
--------------------------------
lib_header_aros.c
-----------------
added below lines
#ifdef __AROS__
#include <aros/symbolsets.h>
THIS_PROGRAM_HANDLES_SYMBOLSET(LIBS)
DEFINESET(LIBS)
#endif
and changes to const APTR FuncTable[] =
include_aros/defines/ttengine.h
-------------------------------
(added NR for (VOID) -> no returns
compile on aros
---------------
make -f makefile.aros
should build ttengine.library and ttengine.library.db(DEBUG version) , place them to libs:
You do not have access to view attachments
memset fails because stdlib.library is not opened (see screenshot, StdlibBase is NULL)
The simplest solution might be to use a static version of C functions. Change:
LDFLAGS = -noclibs -nostartfiles -Wl,-Map -Xlinker linkermap
LIBS = -lstdc.static
If this doesn't work, then we will have to manually open stdlib.library.
You do not have access to view attachments
serk118ukSoftware DevPosted
5 days agoThank you deadwood , i have added but still same as before it crashes on memset, attached the new build.
Changes to compile on 64bit AROS
--------------------------------
makefile.aros
-------------
LIBS = #-lrom <--- i dont have lib librom so commented out..
--------------------------------
lib_header_aros.c
-----------------
added below lines
#ifdef __AROS__
#include <aros/symbolsets.h>
THIS_PROGRAM_HANDLES_SYMBOLSET(LIBS)
DEFINESET(LIBS)
#endif
and changes to const APTR FuncTable[] =
include_aros/defines/ttengine.h
-------------------------------
(added NR for (VOID) -> no returns
lib.h (added)
------
below line added to struct TTEngineBase
struct StdlibBase *ttb_StdlibBase; /* added */
lib.c (added)
------
#ifdef __AROS__
#include <proto/stdlib.h> //added
#endif
function
/// init_resources()
static struct TTEngineBase *init_resources(struct TTEngineBase *ttb)
#ifdef __AROS__
if (!(ttb->ttb_StdlibBase = OpenLibrary("stdlib.library",0))) return NULL;
#endif
function
/// free_resources()
static void free_resources(struct TTEngineBase *ttb) //function
if (ttb->ttb_StdlibBase) CloseLibrary(ttb->ttb_StdlibBase); //serk118
You do not have access to view attachments
serk118ukSoftware DevPosted
5 days ago@Amiwell79
New build of FrameBuild attached,
i dont think image scale functions works right, I can rework on this , fps does work if all frames are same size like 800x600, so you can not add a folder with image size 150 x 150 than another folder 1024x768 etc.
Try the new build and let me know if works for you.(I will rework on scale function )
You do not have access to view attachments
You are on the right path. Here are additional changes:
1) you must remove these lines
#ifdef __AROS__
#include <aros/symbolsets.h>
THIS_PROGRAM_HANDLES_SYMBOLSET(LIBS)
DEFINESET(LIBS)
#endif
2) Have a global variable named StdlibBase. It cannot be a field in TTEngineBase, and it has to be named exactly StdlibBase - that is that function stubs expect.
If after doing 1) and 2) you are getting unresolved symbols when linking, please paste the errors.
serk118ukSoftware DevPosted
5 days ago1. Removed
There are undefined symbols in 'ttengine.library.db':
__LIBS__Symbol_set_ handler missing
If I keep 1. And add 2. Asl requester pops than crashes with strlen..
After removing 1), where did you place the library base variable? Can you share the changed codes?
EDIT; in essense we have to make sure library compiles with 1) removed. 1) can only be used for libraries built inside on AROS build system. For libraries build externally, 1) just hides the real problem and causes a crash further on.
Edited by deadwood on 03-11-2025 07:41,
5 days ago
serk118ukSoftware DevPosted
5 days agodeadwood wrote:
@deadwood - After removing 1), where did you place the library base variable? Can you share the changed codes?
EDIT; in essense we have to make sure library compiles with 1) removed. 1) can only be used for libraries built inside on AROS build system. For libraries build externally, 1) just hides the real problem and causes a crash further on.
Sorry i had online meeting..
Changes to compile on 64bit AROS
lib.c (added)
------
struct StdlibBase *StdlibBase; /* added */
#ifdef __AROS__
#include <proto/stdlib.h> //added
#endif
function
/// init_resources()
static struct TTEngineBase *init_resources(struct TTEngineBase *ttb)
#ifdef __AROS__
if (!(StdlibBase = OpenLibrary("stdlib.library",0))) return NULL;
#endif
function
/// free_resources()
static void free_resources(struct TTEngineBase *ttb) //function
if (StdlibBase) CloseLibrary(StdlibBase); //serk118
Edited by serk118uk on 03-11-2025 10:21,
5 days ago You do not have access to view attachments
serk118ukSoftware DevPosted
5 days agoThank you,
__LIBS__Symbol_set_ handler missing gone with mbase
I don't think we are there yet , still crashes on tt_OpenFontA , I will start tracing crash logs and hopefully I will resolve the crashes soon.
Thanks again deadwood..
AMIGASYSTEMDistro MaintainerPosted
17 hours agoOn AROS One 32Bit ttengine.database is generated in ENVARC (see screenshot) by the ‘TTManager’ application located in the SYS:Tools folder.The SYS:Tools/Examples folder contains the ‘Developer’ sources, which may be useful.
You do not have access to view attachments