Jump to content

CnCNet and Retro Gaming Machines


MrParrot

Recommended Posts

Merry Xmas!

 

So I have a retro gaming computer running Windows 98SE and, as expected, CnCNet won't run on it. I would like to try to at least make it launch in such machine and perhaps add little support to this system, but I have no access to cncnet5 sourcecode (can't find it in github. It is not opensource?).

What works (only tested with Tiberian Dawn):

  • The installer works flawlessly
  • cnc95.exe
  • CCConfigFull.exe

What does not work:

  • cncnet5.exe

The cncnet5.exe crashes with the following message: "Application has generated an exception that could not be handled. Process ID=0xffe1fde7, Thread ID=0xffe04b3f. Click OK to terminate the application. Click CANCEL to debug the application"

Well, I'm no C# developer but what I've read so far is that there is a subset of dotnet2 that supports Win98 and the last Microsoft C# VisualStudio supporting such system is VS2005. Perhaps I can try to compile the project in this environment and say if I continue or give up.

 

Thank you for the attention. It is a funny request, actually :-) 

Link to comment
Share on other sites

9 minutes ago, Myg said:

Well, funky doesnt want to make the source available; thats his decision.

This possibility has lingered in my mind for a while and although it isnt implemented it would be great if it actually happened.

Well, that is sad. Worms Armageddon still works online even on Windows 98.

There is something that comes to my mind right now is that if the compiler somehow generated i686 code. Since my machine has an AMD K6-2 CPU, which is only i586 compatible, the application would crash because the CPU can not decode some instruction. This is just a guess, but a recompile with the correct flags may work?

 

Anyway, sorry to disturb you guys. I thought it would be great if CnCNet kept compatibility with the hardware the original games were built for.

Link to comment
Share on other sites

12 hours ago, FunkyFr3sh said:

CCConfigFull.exe works, but what about CCConfig.exe ?

It shows me: "Exception has been thrown by the target of an invocation", and then crashes with: "Application has generated an exception that could not be handled. Process ID=0xfffe0d05, ThreadID=0xffe14c59. Click OK to terminate the application. Click CANCEL to debug the application."

I thought that was the original configuration tool provided by westwood, thus I did not bother testing it :P

Link to comment
Share on other sites

CCConfig.exe is quite new (Made with visual studio 2017), CCConfigFull.exe is older (project was created with an old visual studio version, but compiled with 2017 too)

 

No idea what the reason could be...

 

But I think it's not a good idea to play online with such hardware anyways, it would be very slow and everyone would hate on you for lagging the games :D

Link to comment
Share on other sites

So I've dug into a VS2005 20000 pages document, searching anything that is Win98 related. What I've found was:

  • FileSystemWatcher is incompatible with Win98
  • Asynchronous Operations are incompatible with Win98:
    • BeginExecuteNonQuery - seems to be database related, might not be the issue
    • BeginExecuteReader
    • BeginExecuteXmlReader
  • Unicode functions are not supported. ANSI function may be used instead.
  • TcpServerChannel cannot be specified as secure under Win98.

If at least I could get a stacktrace of the crash  :-(

Anyway, happy new year!

Link to comment
Share on other sites

3 hours ago, Myg said:

Nice research Parrot.

I am guessing that its probably a few of those issues.

Thank you! Well, I get paid for doing research, actually :P

There is also this page with a huge table showing unsupported classes by Windows versions, and also a way to capture exceptions caused by it.

Edited by MrParrot
Grammar fix
Link to comment
Share on other sites

2 hours ago, Myg said:

Well, its not just the program itself, funky uses 3rd party libs as a basis for the IRC communication. There is probably some Async stuff in that. 

Nice find on that page!

And such libs are? :P

Good, we are getting forward regarding the problem's source.

Link to comment
Share on other sites

I dont know if its worth proceeding any further. I doubt funky would make the changes just to allow windows 98 machines to work. Hes spent a few years on it and its alot of code! If he wanted to make those changes it would be a totally large undertaking.

Link to comment
Share on other sites

13 minutes ago, Myg said:

I dont know if its worth proceeding any further. I doubt funky would make the changes just to allow windows 98 machines to work. Hes spent a few years on it and its alot of code! If he wanted to make those changes it would be a totally large undertaking.

I appreciated the attention (seriously, I wasn't expecting an answer to this topic). I agree, if there is a huge amount of work  (i.e. modify hundreds of lines of code) just to add Win98 support to one person, then this is unfeasible.

Maybe I stick around and help with/when I can.

Happy new year! :)

Edited by MrParrot
Link to comment
Share on other sites

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
×
×
  • Create New...