Low-level programming, non-DOS? 
Author Message
 Low-level programming, non-DOS?

I started to learn assembly language a few months ago ands I enjoy it. But
in fear of DOS completely going away in a few years, I wonder if the PC
low-level programming can be non-DOS. In other words, can I learn this without
too much DOS-specific things? (If this question is still unclear,) what
knowledge is needed to write a Windows-, e.g., based device driver? Any
response is welcome.

Yong

--



Mon, 08 Mar 1999 03:00:00 GMT  
 Low-level programming, non-DOS?


Quote:
> Date: 19 SEP 1996 16:13:50 GMT

> Newgroups: alt.lang.asm
> Subject: Low-level programming, non-DOS?

> I started to learn assembly language a few months ago ands I enjoy it. But
> in fear of DOS completely going away in a few years, I wonder if the PC
> low-level programming can be non-DOS. In other words, can I learn this without
> too much DOS-specific things? (If this question is still unclear,) what
> knowledge is needed to write a Windows-, e.g., based device driver? Any
> response is welcome.

> Yong

> --


Study the hardware of the average PC.  How do you read from a disk drive,
how do you write to it?  How do you keep from accedentally formatting a
sector on the disk?  Look at your keyboard, instead of relying on BIOS or
DOS to do the work for you write the subroutines that will do the job.  
This is an especially good place to start if you are looking to do more
than move strings around your PC.  Get the strings to load and then put
them onto the screen.  I forget the interrupt you have to hook to make
your routine the keyboard ISR, but you can always write to the screen
( in text mode ) starting at address B800:0000 with two bytes per
character.  I forget the ordering, but one is the color discription and
the other is the ASCII value of the character ( ie:  'A' = 40h ).  The
low nibble of the color attribute is the character's foreground color and
the high nibble ( at least the lower three bits of the high nibble ) is
the background attribute.

As you can see there is a lot you can do with a PC to attempt to make
your code OS independant, just realize that not all systems are going to
give you the same flexibility, and some of your code may be device
dependant, and if you leap from real mode to protected mode you may
have to toss all of your code!

That last statement sums up my recent experiences.  I have to think about
the computer in a brand new way, trying to think 32 bit now.  But good
old real mode was a great place to start.  It taught me a different way
of thinking.

You are probably right, traditional DOS will probably go away in a few
years.  But don't think that because of this your knowledge becomes
useless, there are still a dozen or more variations of the DOS we know
out there, and more on the way I am sure ... All of them supposed to be
compatible ( at least that is the hope ).  

cat



Tue, 09 Mar 1999 03:00:00 GMT  
 
 [ 2 post ] 

 Relevant Pages 

1. PC Non-DOS low-level programming?

2. Really Low Low Low Level Stuff.

3. Low-level non VISA serial communication question: LV5.1 NT4.0

4. Low-Level I/O Primitives for GFORTH (for DOS)

5. Low-level disk i/o in DOS

6. Low level features in GNAT on DOS?

7. Low-level socket programming

8. Low level programming.

9. Type-safe low-level programming?

10. Debug program to do low level format ?

11. Matrox Meteor low level programming

12. Low level hard disk programming

 

 
Powered by phpBB® Forum Software