Heretic 2 OS4 native

Alles rund um Spiele für Amiga OS4

Moderator: OS4Welt-Team

MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

@IamSONIC

Sprich den stört gar nicht clib4, den stört nur der NAME ? Auf die Idee bin ich nicht gekommen ;-) Dachte die Lib selber sei dazu inkompatibel (hab auch keinen Schmerz damit noch ein zweites cygwin64 Verzeichnis anzulegen, eins für "normal" und eins für "SPE" mit renamter lib)

Ja, werde ich auf jeden Fall ausprobieren. Kann aber sein dass ich erst während des Urlaubs (Anfang August) dazu komme.

Gruß,
Steffen
Maijestro
Beiträge: 561
Registriert: 23. Dezember 2022 15:49
Hat sich bedankt: 188 Mal
Danksagung erhalten: 139 Mal

Re: Heretic 2 OS4 native

Beitrag von Maijestro »

MagicSN hat geschrieben: 18. Juli 2024 16:52 @IamSONIC

Sprich den stört gar nicht clib4, den stört nur der NAME ? Auf die Idee bin ich nicht gekommen ;-) Dachte die Lib selber sei dazu inkompatibel (hab auch keinen Schmerz damit noch ein zweites cygwin64 Verzeichnis anzulegen, eins für "normal" und eins für "SPE" mit renamter lib)

Ja, werde ich auf jeden Fall ausprobieren. Kann aber sein dass ich erst während des Urlaubs (Anfang August) dazu komme.
Wenn du jemanden zum testen brauchst bin ich für dich da, auch wenn Heretic2 derzeit funktionslos ist, habe ich es bereits auf mein System installiert und kann schnelle Tests durchführen.
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

Das wird definitiv noch brauchen, Ende nächster Woche kommen meine Schwiegereltern aus Vietnam an, jede Menge Dinge im Haus noch zu tun (Großputz ^^), vor dem Urlaub ab Ende nächster Woche noch ein Projekt im Job (nicht Amiga Job, der Hauptjob) abzuschließen und Heretic 2 68k fertigstellen, das auch wenn ich bei der Planung bleiben will in spätestens 2 Wochen abgeschlossen sein sollte. Ich denke das wird irgendwann im August dass ich mir das anschaue.
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

Habs nun doch heute mal probiert.

Der Compile ist so in dieser Art:

ppc-amigaos-gcc -mmultiple -fPIC -mspe -mcpu=8540 -mfloat-gprs=double -mabi=spe -mcrt=clib2 -D_HERETIC2_ -I../../qcommon -I../ref_common -I../ref_soft -I../../game -I../../player -I../../client -I ../../amiga -D_inline="static __inline" -D__int64="long long" -D__stdcall= -DREN_SOFT_DLL -D__saveds= -DNDEBUG -O3 -S r_image.c -o r_image.s

Linken so in dieser Art:

ppc-amigaos-gcc -mmultiple -fPIC -mspe -mcpu=8540 -mfloat-gprs=double -mabi=spe -mcrt=clib2 r_aclip.o r_bsp.o r_draw.o r_edge.o r_fmodel.o r_font.o r_light.o r_main.o r_misc.o r_model.o r_part.o r_pixels.o r_poly.o r_polyse.o r_rast.o r_scan.o r_sprite.o r_surf.o m_reference.o q_fmodels.o r_skeletons.o q_shared.o reference.o skeletons.o vid_amiga.o q_shamiga.o qfabs_amiga.o lrucache.o r_image.o -ldl -use-dynld -o ref_soft.so

(da muss eigentlich noch -shared rein, das hab ich nun mal weggelassen, weil wenn ich -shared mache bringt er keine Fehlermeldungen).

Was ich bekomme ist:

/usr/local/amiga/adtools-ppc-cyg64-20170623-404/lib/gcc/ppc-amigaos/5.5.0/../../../../ppc-amigaos/bin/ld: warning: libc.so, needed by /usr/local/amiga/adtools-ppc-cyg64-20170623-404/lib/gcc/ppc-amigaos/5.5.0/../../../../ppc-amigaos/lib/libdl.so, not found (try using -rpath or -rpath-link)
/usr/local/amiga/adtools-ppc-cyg64-20170623-404/ppc-amigaos/SDK/clib2/lib/crtbegin.o: In function `clib4_start':
crtbegin.c:(.text+0x2ce): undefined reference to `main'
crtbegin.c:(.text+0x2d2): undefined reference to `main'
/usr/local/amiga/adtools-ppc-cyg64-20170623-404/lib/gcc/ppc-amigaos/5.5.0/clib2/libgcc.so: undefined reference to `shared_obj_exit'
/usr/local/amiga/adtools-ppc-cyg64-20170623-404/lib/gcc/ppc-amigaos/5.5.0/clib2/libgcc.so: undefined reference to `shared_obj_init'
/usr/local/amiga/adtools-ppc-cyg64-20170623-404/lib/gcc/ppc-amigaos/5.5.0/clib2/libgcc.so: undefined reference to `_main'

Erstes Problem scheint zu sein, ich brauche eine libdl.so die mit clib2 übersetzt ist, wo bekomme ich die her ? Ohne gehts nicht, Heretic2 ist massiv eine Struktur, die in mehrere so libs unterteilt ist.

Das mit dem main das er nicht findet ist normal, das geht weg, sobald ich mit -shared übersetze

Das mit dem nicht gefundenen _main/shared_obj_exit/shared_obj_init könnte auch am fehlenden -shared liegen (beim newlib-Compile passiert das aber nicht, da kommen andere Fehler wenn ich -shared weglasse noch paarmal mehr main und IElf als fehlend) - aber evtl. stört das gar nicht, und es gibt keine Probleme, wenn ichs dann "richtig" übersetze, also mit -shared ? Aber das libdl.so brauche ich auf jeden Fall!

Falls ich das ganze Spiel mit dem SPE Zeugs übersetzen muss - Hinweis ich würde als ersten Schritt mal NUR versuchen den Software Renderer auf A1222 zum Laufen zu kriegen, falls das klappt kann man sich die Hardware Renderer anschauen - (der Renderer ist 85% der Rechenzeit und das ganze Mathekrams ist dort drin) dann bräuchte ich noch zusätzlich:

- SDL2 (nur der Soundcode wäre tatsächlich genug)
- lz (letzteres kann ich mir auch selber compilieren)

Aber falls man nur den Renderer übersetzen kann, und dann per dl mit dem newlib übersetzten Rest kommunizieren kann, bräuchte ich SDL2 und libz nicht, bin mir aber echt unsicher, ob das funktionieren würde.

Wer hat mir diese Libraries ?

Gruß,
Steffen
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

Update: i got the answer i do not need libdl for clib4 and that it is integrated. One problem solved i guess.
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

Okay, currently it looks as if the hard blocker is I need SDL2 for SPE.

Mixing stuff (SPE/Non-SPE so libs) seems not to work (my tester tried the output).

And the linker is not able to link SDL2 clib2/non-SPE to H2 compiled SPE/clib4 (makes sort of sense that it cannot do this...).

So, does SDL2 for SPE/clib4 exist ?
smarkusg
Beiträge: 14
Registriert: 25. März 2024 19:51
Danksagung erhalten: 13 Mal

Re: Heretic 2 OS4 native

Beitrag von smarkusg »

@MagicSN

Yes - all libraries must be compiled under clib4.
Take a look here. This is the debian repository. You have packages containing compiled libraries under clib4.
What Windows program can unpack ‘.deb’ I can't help you with. (I don't use Windows so I don't know)

https://github.com/AmigaLabs/clib4/wiki ... repository

https://clib4pkg.amigasoft.net/ubuntu/pool/main/

I compile the libraries I need myself (ubuntu/linux docker)
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

I do not use Linux, Docker or .deb.

Cannot someone just archive up the libSDL2.a and send it to me ?

I am using Cygwin for OS4 compilation.

I can provide a cygwin OS4 gcc archive if needed.

Thanks.

Best regards,
Steffen
smarkusg
Beiträge: 14
Registriert: 25. März 2024 19:51
Danksagung erhalten: 13 Mal

Re: Heretic 2 OS4 native

Beitrag von smarkusg »

I have now noticed that you asked about libraries for the SPE. Sorry for the spam . In the links I gave you there is no SDL2 under SPE.

It would have to be recompiled by someone. I had SDL2/clib4/SPE on disk because I checked something for @Maijestro. I'll look to see if I still have it. I'll let you know

edit:
unfortunately I no longer have these files on disk
MagicSN
Beiträge: 185
Registriert: 1. November 2022 09:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 110 Mal

Re: Heretic 2 OS4 native

Beitrag von MagicSN »

Still thanks for checking.

Maybe someone else can look into it? I do not have the time for taking care of a sdl2 port for it sadly.

Personally i think though for future game support for a1222 - not only my games - sdl2 support will absolutely be needed.

For me any tries for a1222 support will be again “on hold” till sdl2 is available. Once it is available i will try to make it possible once more.
Antworten