Hi there
My enlish is not fluent but i hope you will get a clue...
I got assignement to write program doing PC to PC communication entire in assembly. I made an effort to do this. But... it wont work.
I can't initialize port with following code:

mov dx, 02FBh
        mov al, 80h
        out dx, al
        // LSB of baud rate
        mov dx, 02F8h
        mov al, 0Ch
        out dx, al
        //MSB of boud rate
        mov dx, 02F9h
        mov al, 0h
        out dx, al
        //LCR
        mov al, 03h
        mov dx, 02FBh
        out dx, al

        //MCR
        mov al, 0h
        mov dx, 02FCh
        out dx, al

        //IER
        mov al, 01h;
        mov dx, 02F9h
        out dx, al

What am i missing here?
The funny thig is that when i start hyper terminal( two of them one on com1 other on com2) and then write code just to send a few chars and execute it terminal recive character sent. I conclude that my initialization is wrong but i dont know why. I raed dozen tutorials .... and tried everything but i didnt helped. Some help would be nice. If someone see mistake or can point me to some good tutorial it would be very helpfull.
THANKS

Recommended Answers

All 2 Replies

Any information would be very helpfull. Please point me to some text or website. Thabke:mrgreen:

the only way I've done it is to write a TSR interrupt-driven device driver under MS-DOS 6.2. See this for basics. It is definitely not a triviel program to write.

MS-Windows already contains the device drivers and is probably what the terminal program uses. I don't know how to call them from assembly, other than calling the win32 api function OpenFile(), ReadFile()n and WriteFile().

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.