äPASCAL
calling convention example
äProcedure
outpt(var port_num, valu : integer)
ä PUBLIC OUTPT ;enable access to external program
ä A_TEXT SEGMENT ‘CODE’
ä ASSUME CS:A_TEXT
ä OUTPT PROC FAR ;to
enable far return
ä PUSH BP ;save old value
ä MOV BP,SP ;point to top of stack
ä MOV BX,[BP+8] ;addr. of 1st param
ä MOV DX,[BX] ;value of
first parameter
ä MOV BX,[BP+6] ;addr of 2nd param
ä MOV AX,[BX] ;value of 2nd parameter OUT DX,AL ;do output operation
ä POP BP ; programmer has to do this
ä RET 4 ; advance SP past parameters
ä OUTPT ENDP
ä A_TEXT ENDS
ä END