Where to learn DOS Programming?

I already know VB.net & C++

Page 1 of 1

7 Replies - 12573 Views - Last Post: 09 November 2010 - 04:07 PM Rate Topic: -----

#1 busta5000  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: -7
  • View blog
  • Posts: 147
  • Joined: 08-March 08

Where to learn DOS Programming?

Posted 09 November 2010 - 07:21 AM

I talked to a friend of mine & he said that C++ is a kids game where u run it using a studio but if you want to be a better programmer learn how to program dos because its more advance. Though the last version was from 1995.

I don't need an application CMD is in the OS all I need is to type edit & it will open dos editor

Now I want to know these things:

1)What languages does dos run?

2)Why isn't there a dos programming help forum here? & where can I find one?

This post has been edited by busta5000: 09 November 2010 - 07:31 AM


Is This A Good Question/Topic? 0
  • +

Replies To: Where to learn DOS Programming?

#2 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5909
  • View blog
  • Posts: 12,815
  • Joined: 16-October 07

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 07:30 AM

Where To Learn DOS Programming? 1985. It's dead, let it lie.

Turbo C++ or Turbo Pascal are probably the best to play with. Get a copy of DOSBox and have at.

You might want to look into the Amiga as well... :P
Was This Post Helpful? 0
  • +
  • -

#3 busta5000  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: -7
  • View blog
  • Posts: 147
  • Joined: 08-March 08

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 07:41 AM

View Postbaavgai, on 09 November 2010 - 06:30 AM, said:

Where To Learn DOS Programming? 1985. It's dead, let it lie.

Turbo C++ or Turbo Pascal are probably the best to play with. Get a copy of DOSBox and have at.

You might want to look into the Amiga as well... :P


You still didn't answer my questions & you didn't actually read what I said!!!

I don't need dos box CMD does have dos in it if I type "edit" when I click about it says dos 1995

what I want to know are 2 things that are in the question so can you please help me by answering me with the information that I asked for please
Was This Post Helpful? 0
  • +
  • -

#4 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5909
  • View blog
  • Posts: 12,815
  • Joined: 16-October 07

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 08:17 AM

How exactly do you know I didn't read what you said. Presumptuous bugger. :)

Fine, let's go through what you said.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

I talked to a friend of mine & he said that C++ is a kids game where u run it using a studio but if you want to be a better programmer learn how to program dos because its more advance. Though the last version was from 1995.


Either your friend is an idiot or you're interpreting what he said incorrectly. How exactly is DOS, an OS abandoned over a decade ago, more advanced?

Latest version is debatable depending on where you choose to stop counting. MS-DOS 6.22 is released 1994 and Microsoft is done with it. IBM and others will carry on with "DOS" a little longer.

In 1995, MS releases Windows 95, with something that calls itself DOS 7 included. It's not a true OS, because it can't run without Windows. Windows 98 brings DOS 8. After that, the thing called CMD becomes a true emulator and really has no relation to DOS. More here.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

I don't need an application CMD is in the OS all I need is to type edit & it will open dos editor

Ok, I read that and still don't get it.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

1)What languages does dos run?


Anything written for it. As already mentioned, Turbo C++ or Turbo Pascal were by far the most popular. Google is your friend: http://www.google.co...ming/Languages/

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

2)Why isn't there a dos programming help forum here? & where can I find one?


Because, as also noted, DOS is dead. You can "find one" here: http://www.google.com

This post has been edited by baavgai: 09 November 2010 - 08:18 AM

Was This Post Helpful? 1
  • +
  • -

#5 busta5000  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: -7
  • View blog
  • Posts: 147
  • Joined: 08-March 08

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 08:32 AM

View Postbaavgai, on 09 November 2010 - 07:17 AM, said:

How exactly do you know I didn't read what you said. Presumptuous bugger. :)

Fine, let's go through what you said.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

I talked to a friend of mine & he said that C++ is a kids game where u run it using a studio but if you want to be a better programmer learn how to program dos because its more advance. Though the last version was from 1995.


Either your friend is an idiot or you're interpreting what he said incorrectly. How exactly is DOS, an OS abandoned over a decade ago, more advanced?

Latest version is debatable depending on where you choose to stop counting. MS-DOS 6.22 is released 1994 and Microsoft is done with it. IBM and others will carry on with "DOS" a little longer.

In 1995, MS releases Windows 95, with something that calls itself DOS 7 included. It's not a true OS, because it can't run without Windows. Windows 98 brings DOS 8. After that, the thing called CMD becomes a true emulator and really has no relation to DOS. More here.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

I don't need an application CMD is in the OS all I need is to type edit & it will open dos editor

Ok, I read that and still don't get it.

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

1)What languages does dos run?


Anything written for it. As already mentioned, Turbo C++ or Turbo Pascal were by far the most popular. Google is your friend: http://www.google.co...ming/Languages/

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

2)Why isn't there a dos programming help forum here? & where can I find one?


Because, as also noted, DOS is dead. You can "find one" here: http://www.google.com


Sorry I am grateful I will learn turbo c++ but I will explain what I mean by this

View Postbusta5000, on 09 November 2010 - 08:21 AM, said:

I don't need an application CMD is in the OS all I need is to type edit & it will open dos editor

Now if you open CMD type the command "edit"
it will open a blue editor that has a a menu bar if you click help then about it will tell you MS-DOS EDITOR.
So in my understanding that this is a dos editor in CMD or else why in "about" does it say MS-DOS EDITOR?
Was This Post Helpful? 0
  • +
  • -

#6 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5909
  • View blog
  • Posts: 12,815
  • Joined: 16-October 07

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 09:04 AM

I believe MS-DOS Editor is the name of the program, even if there is no DOS to be had. MS wrote it for DOS 4, when they tried to put a shiny new face on the OS. That blue screen ascii art editor has a very similar look to the Turbo C environment. Many programs at the time had little ascii box characters and blue was big. Wordperfect had just a blue screen and nothing else!

From that same command line type "ver". If it you have Win95 or Win98 it will say DOS something. Otherwise you should get Microsoft Windows something. Even in Win95 there were compatibility issues with older programs that wanted to address memory in certain ways.

This is why I recommend DosBox is you want to experience the "good old days." It will be less contentious than trying to run an old IDE under a modern Windows command window.
Was This Post Helpful? 0
  • +
  • -

#7 NotarySojac  Icon User is offline

  • D.I.C Regular
  • member icon

Reputation: 53
  • View blog
  • Posts: 428
  • Joined: 30-September 10

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 10:07 AM

View Postbusta5000, on 09 November 2010 - 06:21 AM, said:

C++ is a kids game where u run it using a studio but if you want to be a better programmer learn

This can come off a bit offensive, though I'm sure you didn't mean anything by it. When you say "studio" you must mean visual studio or a similar IDE. IDEs can highlight errors in your code as they occur, so the programmer can change them before compiling (thus they don't need to interpret compiler errors which can be difficult to understand/ completely uninformative). An IDE will also give you 'suggestion'. When you type an object, then a '.' after it, the IDE will display a list of suggested variables that pertain to the object you typed (it will suggest variables, methods, events, and even other things that new programmers won't necessarily know much about). If you're a new programmer, these suggestions will be extremely beneficial to you, because you won't have to stop to google how something works every few seconds, nor will you have to spend hours trying to figure out what error 1135 means. I recommend getting your hands on an IDE, they also handle linking and compiling for you ..linking and otherwise compiling computer programs is NOT programming, rather it is 'operating a piece of software' (just like using excel isn't 'practicing mathematics' it's 'operating a piece of software').

IDEs also speed things up for programmers who already know most of what there is to know about their language. IDEs could be used as a crutch by programmers who are just learning (allowing the newbie to get by SLUGGISHLY with programming with out forcing them to commit anything to memory), so perhaps coding in notepad.exe would help get them better at following the right syntax (I used notepad to program VBS for years and I think I'm better for it).

busta5000 said:

1)What languages does dos run?

That question is an odd one, as noted by baavgai. But I think you must want 16bit assembly??? I strongly recommend learning 32bit assembly instead, so your program can be run in windows and be applied to windows 32bit programming (although I think I've heard 16bit asm recommended before...)

The way programming languages work is they prescribe a 'syntax' for a programmer to write code in accordance to. For example
// this is a c# comment. it uses double slashes.  It's not 'code' and is ignored when the code is turned into an .exe
if (1 == 1)  // this is how a C# if statement looks
{
MessageBox.Show("1 DOES equals 1, therefore this gets displayed to the user in a message box.");
}


Whereas

' this is a vbs comment (visual basic script).  It uses an apostrophe
if 1 = 1 then     ' this is how a C# if statement looks. 
alert("1 DOES equals 1, therefore this gets displayed to the user in a message box.")
end if



Both these languages are programmed in differently (vbs is a script which differs from compiled languages.. and C# is .NET which isn't compiled either, but I don't remember C++ syntax off hand and C# is comparable). In the end, the computer is translating scripts and code into CPU instructions which make everything 'work'. In order to directly program CPU instructions, you can learn to program in 32 bit ASM (assembly language). I recommend for all programmers to learning ASM, but specifically learning 'op codes' not that HLA jargon (high level assembly); if you'd like to learn how computers really work that is. (HLA is used for programming optimized code, that won't help you as a young programmer as much at this point). Of course, if you're in a hurry to just program, you can skip learning asm, for most it will be a fruitless hobbiest frolic and have only a slight bearing on the efficiency of their high level programs.

Approximate assembly example (I'm rusty, don't rely on this):
mov eax, 1
cmp eax, 1
jne JumpToThisLocation
push 0
push 1
push "1 DOES equals 1, therefore this gets displayed to the user in a message box."
push 0
call MessageBoxA

JumpToThisLocation:
ret



This ASM example does exactly what the two other examples did before it (although I assume I've done something wrong calling the API). ASM is obviously completely different from C# and VBS. You should learn it.

So the distinguishing characteristic of programming languages is there level of abstraction... they can be High level languages or Low Level Languages. If your friend really knows what he's talking about, then he's probably suggesting that you spend a week or two learning a low level language like 32 bit assembler (MASM or TASM, take your pick). He's also probably suggesting that you familiarize yourself with http://www.google.com/search?q=fravia's+page+of+reverse+engineering

Keep this thought in mind too: High level languages are useful because they allow the programmer to focus on what he wants to achieve, rather than what needs to be done for the CPU to achieve what he wants (MUCH more complicated). An optimizer would be revulsed by High level languages, and a programmer would likewise be revulsed by Low level languages. To each's own.

This post has been edited by NotarySojac: 09 November 2010 - 10:12 AM

Was This Post Helpful? 0
  • +
  • -

#8 JackOfAllTrades  Icon User is offline

  • Saucy!
  • member icon

Reputation: 6092
  • View blog
  • Posts: 23,614
  • Joined: 23-August 08

Re: Where to learn DOS Programming?

Posted 09 November 2010 - 04:07 PM

There's really only one answer to this question: your friend is an idiot, as stated by the illustrious baavgai in post #4.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1