Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Lobo

EDGE-Classic v1.37 (Updated December 2023)

Recommended Posts

31 minutes ago, Redneckerz said:

That's what i thought and why i joked aswell ;)

How many ports are you going to muster, Gib? ;)

No port is too much for my monkey business :)

 

@Lobo - any news on an SDL2 update for it?  M1 Macs don't Support SDL1.2 so Intel binaries is all that is possible, for Macs at least.

Edited by Gibbon

Share this post


Link to post
35 minutes ago, Gibbon said:

No port is too much for my monkey business :)

 

@Lobo - any news on an SDL2 update for it?  M1 Macs don't Support SDL1.2 so Intel binaries is all that is possible, for Macs at least.

 

I've been able to run it with SDL2 using the sdl12-compat shim library, but it gets wonky on keyboard/mouse input. I feel the ideal solution would be seeing if it could be made to run with either true SDL 1.x or sdl12-compat's library + SDL2.

Share this post


Link to post

Fair enough, it would be a ton of work to get a real SDL2 version done.  The shim is good enough for most things.

 

Could I add the Mac binary to the source port builds list?  I've made sure to include the 'preview' in the filename so it is clear this isn't a stable release.

Share this post


Link to post
2 hours ago, Gibbon said:

Fair enough, it would be a ton of work to get a real SDL2 version done.  The shim is good enough for most things.

 

Could I add the Mac binary to the source port builds list?  I've made sure to include the 'preview' in the filename so it is clear this isn't a stable release.

 

Oh, by all means. I'm testing the commit I made for .mp3 sound effects handling before folding in your solution from the Issue tracker, but that will likely be the next commit. Thanks again!

Share this post


Link to post

I've added USE_SDL12_COMPAT as a CMake option which will build the sdl12-compat library and place it in the same location as the EDGE-classic executable when it's done. Not sure if it will help with the M1 situation but it works with SDL2.dll on Windows (not ready for primetime yet, though; the mouse/keyboard input is erratic but the game loads, video/sound/music is fine, etc)

Share this post


Link to post
44 minutes ago, dasho said:

I've added USE_SDL12_COMPAT as a CMake option which will build the sdl12-compat library and place it in the same location as the EDGE-classic executable when it's done. Not sure if it will help with the M1 situation but it works with SDL2.dll on Windows (not ready for primetime yet, though; the mouse/keyboard input is erratic but the game loads, video/sound/music is fine, etc)

I'll try it later on an M1, never even attempted to use the compat library, would be pretty sweet if it worked though.

Share this post


Link to post

BTW, if anyone is trying to register on the 3dge forum, the answer to the question it asks is any of these:

Coraline
Corbachu
Cora

Share this post


Link to post
1 hour ago, Lobo said:

BTW, if anyone is trying to register on the 3dge forum, the answer to the question it asks is any of these:

Coraline
Corbachu
Cora



 

I sent you a PM about that, but these wont work. I also tried also all small letter without capitals.

[EDIT 1]
 

Also not related to the forum thing but:


 

"+ Removed #VERSION check for both DDF and RTS."

Then how the engine knows that a specific DDF/RTS is compatible with it?

 

[EDIT 2]

This looks like a nice project that I am absolutely interested in but just to know, is this going to be backwards compatible with the "normal" 1.35 version of EDGE? Since I am making something for that very specific version, backwards compatibility worries me a little bit.
 

Edited by Yamato

Share this post


Link to post

The base is Edge 1.35: anything that works in that will work in Edge-Classic.

 

As far as I've seen, removing the version checks has not affected anything that would be broken in 1.35 (perhaps some really ancient mods that would be problematic anyway).

 

I'll check the forum issue and see what's happening. I've changed it to just "corbachu" without quotes: can you try again?

Edited by Lobo

Share this post


Link to post

@Yamato Keep in mind we also have The EDGE Wiki; and could easily add support and markers for EDGE-Classic. Just mentioning it if there is interest. 
 

16 hours ago, Lobo said:

The base is Edge 1.35: anything that works in that will work in Edge-Classic.

 

As far as I've seen, removing the version checks has not affected anything that would be broken in 1.35 (perhaps some really ancient mods that would be problematic anyway).

With the exception of specific Edge-Classic additions that we might miss or take longer to merge upstream, things running in EDGE should largely still be compatible with 1.35/1.36. 
 

Of course however, Edge-Classic will retain most compatibility still 😎

Share this post


Link to post
6 hours ago, Yamato said:

Yes, "corbachu" without quotation marks worked.

Also I updated the DDF and COAL docs with the latest additions and changes from EDGE Classic:

 

https://retroyamato.neocities.org/index.htm

If you happen to find any error or missing thing in these docs, pls let me know.

 

Excelent work. But I noticed that some EDGE-Classic specefic commands are indicated as such while others are not. And there may be one or two more that aren't listed at all.

Share this post


Link to post
3 hours ago, CeeJay said:

Excelent work. But I noticed that some EDGE-Classic specefic commands are indicated as such while others are not. And there may be one or two more that aren't listed at all.

What commands are not indicated, that were not already in the docs? I only added the commands that Lobo said in the first message of this thread. I got the originals from here: http://tcfirstgen.000webhostapp.com/ddf_online/index.htm

I know there were 2 or 3 commands that are announced by Lobo in EDGE Classic but somehow they were already in the docs from the link above. I think they were SECRET_SOUND and DJNE, maybe 1 or 2 more commands, cannot recall now.
 

Ok, forget about it, I already found the missing commands in the changelog at github. Will fix things tomorrow.
 

Edited by Yamato

Share this post


Link to post

As one of the original DosDoom developers back in the 1990s after Chi Hoang stopped work on it, it was great to see @Coraline essentially take the (renamed) EDGE over and resurrect it from the doldrums; so it's also great to see this new fork. All my modding, and occasional code contributing, is in/for ZDoom nowadays, but it is nice to see the older source ports continuing in some form. Keep up the good work, guys!

Share this post


Link to post

I did a thing...

 

DOOM 64-ified, loosely based on https://forum.zdoom.org/viewtopic.php?f=46&t=72781

 

But now also as an EDGE-Classic exclusive, brought to you by moi.

 

Play me: https://www.mediafire.com/file/n7zpesavsz709za/d64ified_EDGE.zip/file

 

D64IFIED_TEX.WAD and D64IFIED_PSXMUS.WAD are entirely optional. Vanilla texture swap and PSX DOOM soundtrack, respectively.

 

Happy hunting!

Share this post


Link to post

@Gibbon That icon isn't edge 1.35 or older. I think it's the Scourge or Hypertension one from Chu's branch.

 

But it's not Edge-Classic that's for sure.

Share this post


Link to post

I've updated the repo with the newest version of sdl12-compat. Other than needing to bring down mouse sensitivity from the defaults, it appears to work fine with SDL2 now. That being said, I think M1 support might not be there yet because the program still needs to be able to link against SDL1 when compiling. I don't have a way to test this, unfortunately.

Share this post


Link to post
1 hour ago, dasho said:

I've updated the repo with the newest version of sdl12-compat. Other than needing to bring down mouse sensitivity from the defaults, it appears to work fine with SDL2 now. That being said, I think M1 support might not be there yet because the program still needs to be able to link against SDL1 when compiling. I don't have a way to test this, unfortunately.

Exactly right, it fails at the final linking step for a universal binary with SDL1 symbols not found for arm64.

 

I have never tried compiling SDL1 on Apple silicon.  I doubt it would work as all the M1 support was in SDL2..  could be interesting though.

Share this post


Link to post

Another, and arguably better approach for this case, is to use the sdl12-compat headers instead, which allow for building the program against SDL2 only, and thus only requiring an external SDL2.dll at runtime, versus the 'fake' SDL.dll + SDL2.dll. I've tried it before, but I haven't quite figured out how to get the linker happy at the end. I'll keep trying, though. It would be neat to see it running on M1. 

 

On another note, my Pi 4 is arm64 and doesn't seem to have issues with SDL1; it's even in my Ubuntu/openSUSE repos for it...is this just a nuance of M1 in particular?

Share this post


Link to post

Well I was wrong, it compiles fine (without X11 of course).  I tried to create a fat binary (arm64 + x86_64), however it got to the final stage and gets confused witth the SDLMain linking, I'm guessing SDL1.2 doesn't like having 2 main functions (1 per slice).

 

I will compile it later directly on my M1 machine.

 

One thing though, libpng needs modifications to build on an M1 machine (I have done the changes myself) but basically all 'neon' stuff has to go.  It isn't a huge thing though, unless you're using those functions.

Share this post


Link to post

IIRC, I used the CMakeLists included with libpng as-is without looking too much into it. I'm not aware of any intentional usage of NEON instructions, so I'd gladly take your mods as a PR or attachment.

Share this post


Link to post

One PR for you: https://github.com/dashodanger/EDGE-classic/pull/20/files

 

So while the M1 does run SDL1.2, it is janky (to say it nicely).  You cannot remap certain keybindings (Option/Command without first remapping to another key then trying again).  Also, you cannot turn or move while shooting (using keyboard only).  The sky graphics also distort, so SDL1.2 doesn't really support the 8-core GPU in the M1 (and I doubt it ever will).  Intel Macs work flawlessly though.

 

But enough talk, the pictures!

Spoiler

edge-classic-apple-silicon.png.739d936880c580a9816d16457a2e59c0.pngedge-classic-intel-mac.png.c3a6b552c5e65332b80b08ed7cd354f6.png

I do love this source port.  Turning off the autoaim, mouselook etc.. gives it a really nice retro feeling but with nice effects.  Good stuff!

Share this post


Link to post

I appreciate the PR...it's cool to see that it worked to a minimal degree at least. Thinking out loud, it might be better for me to just take a crack at a separate branch that uses SDL2 and treat the main repo as 'upstream' for it in regards to new features/fixes.

Share this post


Link to post
2 hours ago, dasho said:

I appreciate the PR...it's cool to see that it worked to a minimal degree at least. Thinking out loud, it might be better for me to just take a crack at a separate branch that uses SDL2 and treat the main repo as 'upstream' for it in regards to new features/fixes.

I was thinking something like that too.  Since the main EDGE is already on it, there is at the very least a 'rough blueprint' of what to do.

Share this post


Link to post

I just posted the initial commits for the SDL2 branch. It's not ready for play at all, there's plenty I need to learn about the migration, but it should be enough to test the compilation/execution process.

Share this post


Link to post

Bloody hell that was quick!  Even for a POC commit..

 

Edit: Well it compiles, it works.  Now Intel and M1 are at the same level, functionally :)

 

Not bad at all for a rough transition to SDL2.

Edited by Gibbon

Share this post


Link to post

The docs have been updated.

 

Changes are:

+ Added all the RTS documentation including EDGE Classic 1.35.1 features.

+ Fixed a few minor errors.

 - Modified Things.ddf:

   ・Added the new ammo types AMMO17 to AMMO24

 - Modified DDF Usage page to reflect changes in EDGE Classic 1.35.1

Please note: RTS docs format is temporary and will probably change in the future for better readability. The same could be true for DDF and COAL.

 

In the process:

+ Adding Styles.ddf

 

Access Link:

https://retroyamato.neocities.org/index.htm
 

If you find any error or missing item, please let me know.
 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×