Ok new internal beta works on older cards too However still few things:
1) The config file will be created in Prefs? Well, the shell output says ENVarc but in reality it will be created in SYS:Prefs ... I suggest to use PROGDIR instead (the folder of the game)
2) Maybe adding a version string in binary as you did with Mednafen
Well, the version I sent you was a different build to my original.
The one that other people have been testing with was built with:
-lSDL2_gl4es
And, with a symlink of
include/GL
pointing to the GL4ES headers.
The one that I sent you was built with:
-lSDL2
And, with a symlink of
include/GL
pointing to the MiniGL headers.
===
As for mednafen. I always built it with full SDL2/GL4ES and yet it works for you. So, perhaps it is some function call in particular in SM64 that is causing an issue and which is not used in Mednafen.
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
So in end you plan to release two different exe, one for older cards and one for the newer? Or it still possibile to build a unique exe that could "auto-detect" gl4es/minigl ?
1. GL4ES / ogles, for HD / RX 2. MiniGL / Warp3d, for older
They are currently in the "Uploads" section of Os4Depot.
You need to have the super mario 64 ROM in the same directory as the encrypted binary and run the decryption program to be able to decrypt the binary. At the moment, the ROM file needs to be in BE format, but I have made another change to the decryption program to automatically detect this and byte swap it if needed, but that will not be available until the next version.
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
They have now been uploaded to Os4Depot, a new version is in the "Uploads" section with endianness of ROM handling. That is version 1.257 for each gl4es/minigl.
@sinisrus Which language? I only own the US ROM and not legally any others, so that would be difficult.
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
I sent you a couple of private messages yesterday evening, did you received them? Btw, found a new game ROM and tested again with the the new version on os4depot.. it works now!
Hey, I received one message yesterday. It seemed to be an endianness issue which I have since fixed in the released 1.257 version.
Though, I only realised afterwards that there was an annoying bug in the decryption program that makes the progress hang more than expected between 90% and 100%. That has since been fixed, but it is purely a cosmetic thing since it is only a bug in the output logging. But another update to it would probably start to annoy the Os4Depot maintainer!
I think there is now nothing else to do?
Edited by rjd324 on 2023/5/28 18:11:26
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
@samo79 You said it worked with AmigaInput? I have to say, when I tried to move around with my controller that is configured on port0 I could not move using it.
I wonder why it is not using SDL input.
I never really looked into it yet.
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
In my X5000 and Logitech F310, the controller works very well and the game is very comfortable. You do not even need to configure anything, because the corresponding pad buttons are immediately assigned.
But my controller works with Mednafen so I am now confused.
@capehill Do you have any insight?
===
gamecontrollerdb.txt, I do see this being read in SM64 code. Perhaps mednafen uses a different approach and the mappings can be done at runtime. Will have to browse the code at some point.
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
I use a PlayStation 2 joypad via an adapter and the game controls works via the pad stick. The pad is among those compatible with the recent SDL2 for OS4
If you use the _debug version of SDL2 library, identified joysticks should be (serial) logged there. Joystick must be supported by AI, and usually it has to be plugged in before you start the game.