home *** CD-ROM | disk | FTP | other *** search
- .xlist
- ; @CALL function_name
- ; Daniel T. Travison Jr. 01/01/88
- ; loads AL with a function number
- ; based on the function_name mnemonic.
- ; loads AH with 10h and executes an INT 15h
-
- @CALL MACRO F_NAME
- IFIDN <F_NAME>,<PAUSE>
- MOV AL,0 ;skip to next task
- ELSE
- IFIDN <F_NAME>,<PRINTC>
- MOV AL,3 ;display character on screen
- ELSE
- IFIDN <F_NAME>,<GETBIT>
- MOV AL,19
- ELSE
- IFIDN <F_NAME>,<FREEBIT>
- MOV AL,20 ;software interrupt control
- ELSE
- IFIDN <F_NAME>,<SETBIT>
- MOV AL,21
- ELSE
- IFIDN <F_NAME>,<ISOBJ>
- MOV AL,22 ;verify object handle
- ELSE
- IFIDN <F_NAME>,<LOCATE>
- MOV AL,24 ;locate window
- ELSE
- IFIDN <F_NAME>,<SOUND>
- MOV AL,25 ;operate speaker
- ELSE
- IFIDN <F_NAME>,<OSTACK>
- MOV AL,26 ;set up stack
- ELSE
- IFIDN <F_NAME>,<BEGINC>
- MOV AL,27 ;begin critical code
- ELSE
- IFIDN <F_NAME>,<ENDC>
- MOV AL,28 ;end critical code
- ELSE
- IFIDN <F_NAME>,<STOP>
- MOV AL,29 ;stop task
- ELSE
- IFIDN <F_NAME>,<START>
- MOV AL,30 ;start task
- ELSE
- IFIDN <F_NAME>,<DISPEROR>
- MOV AL,31 ;display error message
- ELSE
- IFIDN <F_NAME>,<PGMINT>
- MOV AL,33 ;interrupt another task
- ELSE
- IFIDN <F_NAME>,<GETVER>
- MOV AL,34 ;get version number
- ELSE
- IFIDN <F_NAME>,<POSWIN>
- MOV AL,35 ;position window
- ELSE
- IFIDN <F_NAME>,<GETBUF>
- MOV AL,36 ;get video buffer
- ELSE
- IFIDN <F_NAME>,<USTACK> ;restore original stack
- MOV AL,37
- ELSE
- .ERR
- %OUT Invalid Function Mnemonic in @CALL (%F_NAME)
- EXITM
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- MOV AH,10H
- INT 15h
- ENDM
- .list
-