Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 547535
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T10:59:01+00:00 2026-05-13T10:59:01+00:00

I write a simple program, to run in DOS mode. Everything works under emulated

  • 0

I write a simple program, to run in DOS mode. Everything works under emulated console in Win XP / Vista / Seven, but not in DOS. The error says: this program caonnot be run in DOS mode. I wonder is that a problem with compiler flags or something bigger.

For programming i use Code::Blocks v 8.02 with such settings for compilation:

-Wall -W -pedantic -pedantic-errors

in Project \ Build options \ Compiler settings

I’ve tried a clean DOS mode, booting from cd, and also setting up DOS in Virtual Machine. The same error appears.

Should i turn on some more compiler flags ? Some specific 386 / 486 optimizations ?

UPDATE

Ok, i’ve downloaded, installed and configured DJGPP. Even resolved some problems with libs and includes. Still have two questions.

1) i can’t compile a code, which calls _strdate and _strtime, i’ve double checked the includes, as MSDN says it needs time.h, but still error says: _strdate was not declared in this scope, i even tried to add std::_strdate, but then i have 4, not 2 errors sazing the same

2) the 2nd code is about gotoxy, it looks like that:

#include <windows.h>

void gotoxy(int x, int y)
{
  COORD position;
  position.X = x; position.Y = y;
  SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), position);
}

error says there is no windows.h, so i’ve put it in place, but then there are many more errors saying some is missing from windows.h, I SUPPOSE it won’t work because this functions is strictly for windows right ? is there any way to write similar gotoxy for DOS ?

UPDATE2

1) solved using time(); instead of _strdate(); and _strtime(); here’s the code

time_t rawtime;
struct tm * timeinfo;
char buffer [20];

time ( &rawtime );
timeinfo = localtime ( &rawtime );

strftime (buffer,80,"%Y.%m.%d %H:%M:%S\0",timeinfo);
string myTime(buffer);

It now compiles under DJGPP.

UPDATE3

Still need to solve a code using gotoxy – replaced it with some other code that compiles (under DJGPP).

Thank You all for help. Just learnt some new things about compiling (flags, old IDE’s like DJGPP, OpenWatcom) and refreshed memories setting DOS to work :–)

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T10:59:01+00:00Added an answer on May 13, 2026 at 10:59 am

    From the sound of things, you’re currently compiling a Windows console program. Even though it’s a console program, it still needs Windows to run.

    To compile a program to run on real DOS, you’ll need to find a (probably really old) compiler and (especially) linker that targets DOS and can produce DOS MZ executables. The last Microsoft compiler to target MS-DOS was VC++ 1.52c. If memory serves, Borland continued to target DOS somewhat later, up through something like Broland C++ 5 or so.

    I believe if you check the Digital Mars web site, he may still have a C++ compiler available that targets DOS. Otherwise, you’re going to be stuck looking for something used and quite old.

    Edit: looking at other answers reminded me of DJGPP and OpenWatcom. My apologies for not mentioning them previously.

    Be aware that from a C++ viewpoint, Borland and Microsoft are really old compilers — they don’t do namespaces at all, and template support varies from nonexistent in the Microsoft compiler to mediocre in Borland’s. DJGPP is basically a DOS extender to which gcc has been ported; the degree to which it’s out of date (or modern) will depend on which version of gcc is involved. The Digital Mars compiler is somewhat more modern than the Borland one if I’m not mistaken, but Walter Bright now spends most of his time working on D instead of C++, so the C++ compiler doesn’t really compete with gcc, or MSVC, not to mention something like Comeau or Intel that’s based on the EDG front-end.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 258k
  • Answers 258k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Pass the filename to the System.Diagnostics.Process.Start() method May 13, 2026 at 11:00 am
  • Editorial Team
    Editorial Team added an answer How is your DB defined? I use this code: customer.Add(new… May 13, 2026 at 11:00 am
  • Editorial Team
    Editorial Team added an answer Eric Torreborre wrote in the link provided by @retronym: trait… May 13, 2026 at 11:00 am

Related Questions

Hi I am trying to implements a simple Java NIO server; which registers the
I want to write a long running process (linux daemon) that serves two purposes:
I want to write a simple visualization of a Java program by displaying the
I'm trying to learn Haskell, so I decided to write a simple program to
I have an application which get copied and run on client machines. The program

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.