Allegro.cc - Online Community

Allegro.cc Forums » Game Design & Concepts » Windows or DOS...

This thread is locked; no one can reply to it. rss feed Print
 1   2 
Windows or DOS...
Sourav Ghosh
Member #1,911
February 2002
avatar

I am making a game like warcraft. I am using DJGPP as the dos compiler and MINGW32 as the windows one. Now should I make it a dos based or windows based program??
Windows would save me space, time, and I will be able to hear to the midi playing!! But the original warcraft was a dos based, so....

You know what is a cow's greatest contribution to the world??
S H I T !

Matthew Leverton
Supreme Loser
January 1999
avatar

Make it work for both ... ???

Probably the best part of allegro is that you can code for many different platforms without having to change anything.

Derezo
Member #1,666
April 2001
avatar

Definately sway more towards windows. ;)
DOS apps are becoming less and less compatible with newer systems (since most computers come with XP now). If you use DOS-only, it will decrease the number of possible users.

The original WarCraft works on my system, but DOS allegro apps do not... (Well, they do, but I gotta restart my system afterwards).

"He who controls the stuffing controls the Universe"

Sourav Ghosh
Member #1,911
February 2002
avatar

Well, actually there are two problems under dos.
1. I can't play midi on my system. I tried like hell, but no use. I checked for errors, but no use. I tried the tests and eg.s but no use.

2. I have some GFX problems under pure DOS. When I quit the program, it fill the first few horizontal lines on my screen with garbage and the remaining picture stays intact. In fact I am in control, like I can run other programs. but my screen kind of freezes....

You know what is a cow's greatest contribution to the world??
S H I T !

amarillion
Member #940
January 2001
avatar

I say definitely get a Windows version working, and if you have time and energy left, also make a DOS version.

As you say there are some problems under DOS. Especially if you run Windows XP / NT / 2000. So for the people who have that on their computer, a windows version is a must.

I myself always start with making a DOS version, but that is just because I'm used to RHIDE and I happen to like it. After it is more or less finished, I try to make it work with dev-c++/mingw as well (usually not a big problem).

Eskimo Ninja
Member #1,256
April 2001
avatar

If you design your game well, you should easily be able to compile your code under both (with a few minor changes). Whether it runs under Windows or DOS shouldn't really be an issue, as Allegro is designed for portability. Of course, this could be a different matter for the tools you use to make the game, such as the map editor, which you may want to make in Windows or something else...
But if it came down to the choice between Windows and DOS, I'd go for Windows. As much as I prefer DOS, Windows has a far larger user base (as everyone else has said), so more people will be able to play your game.

Evert
Member #794
November 2000
avatar

Quote:

1. I can't play midi on my system. I tried like hell, but no use. I checked for errors, but no use. I tried the tests and eg.s but no use.

You could try Allegro's digital midi driver (DIGMID). It can produce awsome MIDI playback, but it uses some processor power (ie, your game runs more slowly).
What kind of soundcard do you have?

As for the DOS/Windows issue, read the Differences between platforms and ABI sections of the Allegro docs. They tell you what to do and what not to do if you want your code to be portable to different platforms.

vpenquerch
Member #233
April 2000

> When I quit the program, it fill the first few
> horizontal lines on my screen with garbage and
> the remaining picture stays intact. In fact I am

He, he, you wouldn't be trying to write to stderr
or stdout while in gfx mode, would you ? :)

Robert E
Member #2,020
March 2002

I also prefer DOS as the development platform, and then port to Windows and Linux. I love Rhide, and MSVC++ or DevC++'s IDE's just don't cut it in my opinion.

DanielH
Member #934
January 2001
avatar

I would say as many as you can. Drop the source by me and I'll give you a linux distro. The problem is web space. That's why I only do a windows port for my games.

When on windows you have ~60kb + ~800kb(Dll) for the same program on Dos ~900kb. You might say that there is no difference. I have 16 games sharing the same dll.

But I'm going to start porting them to both Dos and Linux. And I've been modifying them abit. I just have to get my self a fourth website or maybe a fifth ( to help share the bandwidth ). It sucked when I got an overload and couldn't access the site until the month ended.

Bruce Perry
Member #270
April 2000

Actually, DOS programs usually can write to stderr and stdout in graphics mode without problems; it even appears properly so you can read it. (I think this depends on whether the BIOS has graphics-mode text output routines.) My guess is his card isn't fully VGA-or-whatever-compliant. It seems to be unable to revert to text mode properly. It's using the same video memory to display text, so it appears garbled at the top of the screen.

When talking about doing DOS and Windows ports, don't forget Linux. Especially with all the recent controversy over Windows XP, more and more people are migrating to Linux, and they aren't generally gonna bother running your program if a reboot is required ;)

DanielH: you might wanna check UPX out. It'll get your DLL down to 400-odd KB and your DOS exes down to 300-odd. (Then there'll be a difference ::) ) Seriously, you won't notice any delay as it decompresses on loading. UPX rawks ;D

--
Bruce "entheh" Perry [ Web site | DUMB | Set Up Us The Bomb !!! | Balls ]
Programming should be fun. That's why I hate C and C++.
The brxybrytl has you.

the_y_man
Member #1,770
December 2001
avatar

i wouldnt be to bothered about dos support these days. The most preferable ports would be linux and windows! btw, making a WC3 like game will be hard (unless you are l33t, im just a wanna be ;)), keep us updated on it!

Eskimo Ninja
Member #1,256
April 2001
avatar

Looking through your profile, you haven't made all that much in the way in games (at least, ones you've uploaded). If this is only your third project, it may be a better idea to make a few more simple programs/games first. But hey maybe I'm just completely wrong! :)

P.S - Also noticed your birthday... mines one day after it! :)

amarillion
Member #940
January 2001
avatar

Yeah but sirocco said that Fenix Blade was his first project so.... strange things can happen....

Sourav Ghosh
Member #1,911
February 2002
avatar

Hmm. I will make a windows thing and then I will also mail it to DanielH, so he does it into Linux....
But I will also make a dos port..
Ahem... I LOVE DOS for many of its reasons...

You know what is a cow's greatest contribution to the world??
S H I T !

kdevil
Member #1,075
March 2001
avatar

I prefer DOS, so I make my games for it first. Then, if I feel like it, I'll port it to Windows.

-----
"I am the Black Mage! I casts the spells that makes the peoples fall down!"

Sirocco
Member #88
April 2000
avatar

Quote:

and they aren't generally gonna bother running your program if a reboot is required

I have noticed that... heh.

-->
Graphic file formats used to fascinate me, but now I find them rather satanic.

Eskimo Ninja
Member #1,256
April 2001
avatar

Quote:

Yeah but sirocco said that Fenix Blade was his first project so.... strange things can happen....

Really? Woah, my first project was pathetic compared to that. Quite an achievement indeed.

Irrelevant
Member #2,382
May 2002
avatar

My first allegro proj was a circle moving across the screen. Bwee...

PS: Or do you mean his first completed game? Mine would probably be quite good if that's what you mean, as I'll drop anything rubbish before completion.

<code>//----------------//</code>Here be l33tsp33x0rz.

Funklord
Member #467
June 2000
avatar

my first allegro project was a fighting game with scanned characters... MK style! me and a few mates =)
It was actually playable with 2 chars, but then my hd crashed... =(

I have neat compilation scripts that always compile everything for both windows / dos in one go,
this gives a unique way of always having 2 totally different exes to test and debug.
sometimes only one of them will show the error making it much easier to trace.

----------------------
[ Me payge | Me shoutcast (128k) | Me in aktOin! | Me OS | Me friends ]

Age is inversely proportional to how much drink you've had - Funklord

23yrold3yrold
Member #1,134
March 2001
avatar

My first game is below, but like most I made a few demos first (shooter, Tetris, etc.)

Sirocco did a few demos that earned him a job, I believe. Wouldn't mind seeing them ;)

--
Software Development == Church Development
Step 1. Build it.
Step 2. Pray.

Bob
Free Market Evangelist
September 2000
avatar

My first Allegro project was Yet-Another-RPG-battle-engine. Didn't get too far on that one. Second project was Yet-Another-RPG-map-engine with a map-editor that's quite possibly the largest Allegro GUI app out there. I managed to do quite a lot of work on it, but ended up dumping it too.

--
- Bob
[ -- All my signature links are 404 -- ]

Wer fu
Member #1,084
March 2001
avatar

I personnaly think that DOS is the best platform for developping base Allegro games. Because of:
- DOS is 100% stable
- Many Non-buggy video card-BIOSes are 100% VESA compliant, so 100% stable, which prevent bug to happen, what doesn't do graphic drivers like DirectX or X ones.
- The little utility called symify.exe that come with DJGPP, retracing failure signal on the command line with no effort.
- Rhide (also avaible for linux thought, but you need the source of GDB 5).
- Anything is linked staticaly, so no risk of depency failure at the running time.
- Compiling is a bit faster under DOS than Windows.
- DOS is standard; there is no extension like WinAPI, POSIX, pThread or any other thing which reduce portability. (I included POSIX because Win32 platform dosen't support it except CYGWIN, which is far to be the predilection platform for an normal end-user)
- When developing from DOS, it's almost sure you'll be able to port your software to any platform (excepted if you use the Mode-X, but who's working in 320x200!?!)
- Using DJGPP is easier for a beginner (if he know a little bit of DOS through...)

For all these reason, DOS is the best developing platform. But I'm not doing so... I usualy work with MinGW or under Linux because I like to listen to MP3 while programming and multi-tasking is realy usefull to check in documentation and for editing multiple file project. So, do as you wish... ;)

ICQ:71667703 or Email&MSN: werfu_dx@yahoo.fr
Werfu was here

Funklord
Member #467
June 2000
avatar

Yes, I also think that dos is a good sandbox for development if nothing else,
It keeps the probability of errors to your source code more than any other platform.

But using NT kerneled windows I can understand why it can be impossible to test, thus use properly...
releasing the source only is an idea too.

----------------------
[ Me payge | Me shoutcast (128k) | Me in aktOin! | Me OS | Me friends ]

Age is inversely proportional to how much drink you've had - Funklord

PaulSiramy
Member #2,748
September 2002
avatar

I have solve this problem by making a dos program first, and then porting it to windows into a console application.

When my prog was only for Dos, I have receive feedback of users where either they couldn't use it at all (VESA problems under W2K for command-line progs), or the mouse was very buggy/slow...
Then I compiled it with VC6, in a console-mode application (using the allegro dll version), it finally worked for everyone, W2K, XP, W98... (except the very few who was still using the 1st version under pure dos).

I'll say develop it under the environment you prefer, and port it to windows, even if it's only a console prog with no windows API menu and such. Allegro.dll will use the keyboard/mouse/sound... windows drivers for you, so you'll be sure it'll works fine for all windows OS.

 1   2 


Go to: