home *** CD-ROM | disk | FTP | other *** search
- page 66,132
- name SEND232
- title SEND232 - Send byte to (COM2) RS232 from COBOL program
- ; (C) Copywrite 1986 - SoftWeir and Associates - Don Weir
- prog group code,data,stack
-
- data segment para
- data ends
-
- stack segment para
- stack ends
-
- code segment para
- assume cs:code,ds:data,ss:stack
-
- ;************************************************************************
- ;* *
- ;* the parameters are taken from the stack as 4-byte absolute *
- ;* machine addresses - segment & offset *
- ;* *
- ;************************************************************************
-
- SEND232:
- pop bp ; return segment addr (replaced on stack)
- pop cx ; return segment offset (also replaced)
- pop DI ; status byte address
- pop AX ; " " segment
- pop si ; send byte address
- pop bx ; " " segment
- push cx ; return address back on stack - far ret
- push bp
- MOV DS,AX
- MOV ES,BX
- MOV DL,1 ;WHICH COMM PORT
- MOV DH,0
- MOV AH,1 ;SET TO SEND BYTE VIA RS232
- MOV AL,BYTE PTR ES:[SI] ;Contains byte to send via RS232
- INT 14H
- MOV BYTE PTR DS:[DI],AH ;Contains status from RS232
-
- ; and drop through to return to COBOL
-
-
- ;************************************************************************
- ;* *
- ;* the ret is a FAR RETURN using a segment/offset - 4 bytes *
- ;* *
- ;************************************************************************
-
-
- return proc far
- ret ; and return to caller
- return endp
-
- code ends
- end