🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Issue with Borland C++ 4 MSDOS code compiling.

Started by
94 comments, last by UnshavenBastard 5 years ago

 

On 4/2/2019 at 1:26 PM, wintertime said:

Btw., DOS programming is an outdated skill. ;)

True, but I'll say a few things in defense of it. Apparently there is a thriving DOS game scene here with brand new games coming out every few weeks. DOS games can run on almost anything thanks to Dosbox. It's probably one of the only ways I can think of to write something and have it function 100% identically on all platforms (except iOS I think), with zero porting. I buy old DOS games on Steam regularly, so who's to say that you couldn't make a brand new DOS game today and sell it?

Also, at least as of today, it seems that anything written for DOS will run forever, without modification, as long as Dosbox keeps being updated. This cannot be said for iOS, Android, Windows or Mac OS apps, which have to be constantly upgraded to work (new security restrictions keep coming up, the switch to 64 bit, new languages replace old ones, Microsoft wanting to kill Win32, Apple phasing out OpenGL, etc). Any app written for modern OS's seems to break within a couple of years due to the constant OS updates. Therefore, if you want your game to live/play forever, oddly enough, DOS may not be a bad choice. Granted, this may change in the future, as something like "Winbox" or some kind of other "Oldbox" may be developed to emulate older environments.

I started out programming games for DOS, so I may be biased here, but there is a certain charm to working with video memory directly. I felt a lot more in control working with pixels in memory, as opposed to with modern graphics hardware, where much of how pixels end up on the screen is obscured by various layers of hardware and software.

The two weaknesses of DOS are networking and lack of modern controller support, but maybe these can be remedied with time.

Also, how about this fun idea: make a C or C++ engine codebase that runs on both Dosbox and modern OS's? It wouldn't be very practical, but kind of awesome nonetheless. Tempting, no? ?

Advertisement

@VoxycDev Eventually people will make WindowsBox, but without a ton of effort plain win32 programs written for Windows 95 will still technically compile (with security checks turned off) and run in Windows 10.  They are 100% backwards compatible on that front I'm pretty sure.  Only DirectX wise has things been depreciated.  

"Those who would give up essential liberty to purchase a little temporary safety deserve neither liberty nor safety." --Benjamin Franklin

On 4/3/2019 at 1:07 PM, fleabay said:

I found this yesterday and decided against posting the link. If anything maybe this will get you to use GCC instead of an ancient compiler.

https://github.com/meh2481/ACK-3D-GCC

Code should work in Windows from what I read.

I cannot use this as it is under an open source license. The original one allowed me to use it for free with no exceptions.

 

otherwise, I would have definitely chosen it by now...

On 4/3/2019 at 5:21 PM, VoxycDev said:

 

True, but I'll say a few things in defense of it. Apparently there is a thriving DOS game scene here with brand new games coming out every few weeks. DOS games can run on almost anything thanks to Dosbox. It's probably one of the only ways I can think of to write something and have it function 100% identically on all platforms (except iOS I think), with zero porting. I buy old DOS games on Steam regularly, so who's to say that you couldn't make a brand new DOS game today and sell it?

Also, at least as of today, it seems that anything written for DOS will run forever, without modification, as long as Dosbox keeps being updated. This cannot be said for iOS, Android, Windows or Mac OS apps, which have to be constantly upgraded to work (new security restrictions keep coming up, the switch to 64 bit, new languages replace old ones, Microsoft wanting to kill Win32, Apple phasing out OpenGL, etc). Any app written for modern OS's seems to break within a couple of years due to the constant OS updates. Therefore, if you want your game to live/play forever, oddly enough, DOS may not be a bad choice. Granted, this may change in the future, as something like "Winbox" or some kind of other "Oldbox" may be developed to emulate older environments.

I started out programming games for DOS, so I may be biased here, but there is a certain charm to working with video memory directly. I felt a lot more in control working with pixels in memory, as opposed to with modern graphics hardware, where much of how pixels end up on the screen is obscured by various layers of hardware and software.

The two weaknesses of DOS are networking and lack of modern controller support, but maybe these can be remedied with time.

Also, how about this fun idea: make a C or C++ engine codebase that runs on both Dosbox and modern OS's? It wouldn't be very practical, but kind of awesome nonetheless. Tempting, no? ?

You hit the nail on the head! You can actually do networking with DosBox. There is a setting. I did actually have a little bit of success one time when I compiled everything. I can not replicate what I did, though. If I could, I would. I actually got a frame to pop up, but after that, nothing. I can get the engine to compile (I just said that), but the actual game itself is the big issue that I am having...

 

 

thanks!

 

oh and by the way, I can get the windows version with WinG to compile correctly. I can get the game working and everything. I just cannot run it in Windows 10 64 bit because it is a 16 bit application, which is unsupported...

4 minutes ago, yaboiryan said:

I cannot use this as it is under an open source license. The original one allowed me to use it for free with no exceptions.

The zlib license requires you do nothing more than not pretend your code is theirs and leave a notice in your source code. It's not toxic like the GPL.

2 minutes ago, Irusan, son of Arusan said:

The zlib license requires you do nothing more than not pretend your code is theirs and leave a notice in your source code. It's not toxic like the GPL.

Does it mean that I can also copyright my own code? Can I also say that I made it myself? So I have to make sure I give him credit for creating the engine? 

13 minutes ago, yaboiryan said:

I just cannot run it in Windows 10 64 bit because it is a 16 bit application

DOS or Win 10. Which is it?

🙂🙂🙂🙂🙂<←The tone posse, ready for action.

Both. The book shows how to make it for DOS AND windows 10. I cannot use the Win16 version, so I am forced to use the DOS one.

Just now, yaboiryan said:

The book shows how to make it for sos AND windows 10.

A 25 year old book gives instructions for Windows 10?

🙂🙂🙂🙂🙂<←The tone posse, ready for action.

7 minutes ago, fleabay said:

A 25 year old book gives instructions for Windows 10?

No for windows 3.0’s Win16 API. Windows 10 uses Win32. They do not support each other. I would have to have windows 10 32 bit to even have a chance of working.

On 4/6/2019 at 1:22 PM, CrazyCdn said:

@VoxycDev Eventually people will make WindowsBox, but without a ton of effort plain win32 programs written for Windows 95 will still technically compile (with security checks turned off) and run in Windows 10.  They are 100% backwards compatible on that front I'm pretty sure.  Only DirectX wise has things been depreciated.  

Yes, but whenever I run these, it always says that it cannot run it. It gives me the same message I would get if I tried to run MSDOS applications in Windows 10.

 

The book says it is win32, but I have tried it, and it does not work in windows 10. I seriously believe that is Win16, because I made a Win16 application and it has the same behavior as the one from the book, and will not run in Windows 10. If it was win32, then it would say that it could only run in Windows Me or earlier.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

if someone one could tell me how to run Win16/old Win32 applications in Windows 10 64 bit, or applications such as dos box that can run old Win16/32 applications in an emulator similar to the way DosBox does, that would solve every issue I am having right now...

 

On 4/3/2019 at 2:21 PM, VoxycDev said:

 

True, but I'll say a few things in defense of it. Apparently there is a thriving DOS game scene here with brand new games coming out every few weeks. DOS games can run on almost anything thanks to Dosbox. It's probably one of the only ways I can think of to write something and have it function 100% identically on all platforms (except iOS I think), with zero porting. I buy old DOS games on Steam regularly, so who's to say that you couldn't make a brand new DOS game today and sell it?

Also, at least as of today, it seems that anything written for DOS will run forever, without modification, as long as Dosbox keeps being updated. This cannot be said for iOS, Android, Windows or Mac OS apps, which have to be constantly upgraded to work (new security restrictions keep coming up, the switch to 64 bit, new languages replace old ones, Microsoft wanting to kill Win32, Apple phasing out OpenGL, etc). Any app written for modern OS's seems to break within a couple of years due to the constant OS updates. Therefore, if you want your game to live/play forever, oddly enough, DOS may not be a bad choice. Granted, this may change in the future, as something like "Winbox" or some kind of other "Oldbox" may be developed to emulate older environments.

I started out programming games for DOS, so I may be biased here, but there is a certain charm to working with video memory directly. I felt a lot more in control working with pixels in memory, as opposed to with modern graphics hardware, where much of how pixels end up on the screen is obscured by various layers of hardware and software.

The two weaknesses of DOS are networking and lack of modern controller support, but maybe these can be remedied with time.

Also, how about this fun idea: make a C or C++ engine codebase that runs on both Dosbox and modern OS's? It wouldn't be very practical, but kind of awesome nonetheless. Tempting, no? ?

Problem is that nothing you said are actual reasons why anyone should try to make a DOS game with Borland C++.  These are just rationalizations for doing something that someone decided to do just because they feel like it, because they think it will be fun.  And that's ok, but people have to understand that if they chose to work in such an old and buggy system, then they're on their own and they're in for a world of hurt and frustration.

This topic is closed to new replies.

Advertisement