;************************************************************************* ;************************************************************************* ;** ** ;** (C)Copyright 1987-2013, American Megatrends, Inc. ** ;** ** ;** All Rights Reserved. ** ;** ** ;** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** ;** ** ;** Phone: (770)-246-8600 ** ;** ** ;************************************************************************* ;************************************************************************* ;*****************************************************************; ; $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/Haswell/AMI Cpu PKG/CPU Core/MBIOSMAC.MAC 1 2/07/12 3:58a Davidhsieh $ ; ; $Revision: 1 $ ; ; $Date: 2/07/12 3:58a $ ;*****************************************************************; ;*****************************************************************; ; Revision History ; ---------------- ; $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/Haswell/AMI Cpu PKG/CPU Core/MBIOSMAC.MAC $ ; ; 1 2/07/12 3:58a Davidhsieh ; ; ;*****************************************************************; ; ;---------------------------------------------------------------------------- ; ; Name: MBIOSMAC.MAC ; ; Description: Assembly Macros ; ;---------------------------------------------------------------------------- ; ifndef _mbiosmac_mac_ _mbiosmac_mac_ equ 1 .xlist ; ;---------------------------------------------------------------------------- ; ; Name: mEXTERN_NEAR ; ; Description: External Near macro ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEXTERN_NEAR MACRO LabelName EXTERN LabelName:NEAR ; Define the label as a NEAR EXTERN. ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEXTERN_NEAR32 ; ; Description: External Near 32 Macro ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEXTERN_NEAR32 MACRO LabelName EXTERN LabelName:NEAR32 ; Define the label as a NEAR EXTERN. ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEXTERN_FAR ; ; Description: External Far macro ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEXTERN_FAR MACRO LabelName EXTERN LabelName:FAR ; Define the label as a FAR EXTERN. ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mSTART_PROC_NEAR ; ; Description: Start Near procedure macro. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mSTART_PROC_NEAR MACRO LabelName LabelName PROC NEAR PUBLIC ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mSTART_PROC_NEAR32 ; ; Description: Start Near 32-bit procedure macro. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mSTART_PROC_NEAR32 MACRO LabelName LabelName PROC NEAR32 PUBLIC ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_CALL_PROC_NEAR ; ; Description: Call near macro. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_CALL_PROC_NEAR MACRO LabelID, LabelName call LabelName ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_JMP_PROC_NEAR ; ; Description: Jump Near Macro. Provide a return label to jump to. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_JMP_PROC_NEAR MACRO LabelID, LabelName jmp LabelName PUBLIC LabelName&End LabelName&End:: ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_JMP_PROC_NEAR32 ; ; Description: Jump near 32-bit macro. Provide a return label to jump to. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_JMP_PROC_NEAR32 MACRO LabelID, LabelName jmp LabelName PUBLIC LabelName&End LabelName&End:: ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_PROC_NEAR ; ; Description: End near procedure macro. Last in a group. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_PROC_NEAR MACRO LabelName ret LabelName ENDP ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_PROC_WITH_JMP_NEAR ; ; Description: End of procedure and jump near macro. Last procedure in a group. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_PROC_WITH_JMP_NEAR MACRO LabelName EXTERN LabelName&End:NEAR jmp LabelName&End LabelName ENDP ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_PROC_WITH_JMP_NEAR32 ; ; Description: Jump Near 32-bit macro. Last macro in a group. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_PROC_WITH_JMP_NEAR32 MACRO LabelName EXTERN LabelName&End:NEAR32 jmp LabelName&End LabelName ENDP ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mSTART_PROC_FAR ; ; Description: Far procedure macro. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mSTART_PROC_FAR MACRO LabelName LabelName PROC FAR PUBLIC ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_CALL_PROC_FAR ; ; Description: Call far macro. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_CALL_PROC_FAR MACRO LabelID, LabelName call LabelName ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_JMP_PROC_FAR ; ; Description: jmp far macro with return label to jump back to. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_JMP_PROC_FAR MACRO LabelID, LabelName jmp LabelName PUBLIC LabelName&End LabelName&End:: ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_PROC_FAR ; ; Description: Ret procedure macro. Last in a group. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_PROC_FAR MACRO LabelName ret LabelName ENDP ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_PROC_WITH_JMP_FAR ; ; Description: End procedure macro. Last in agroup. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_PROC_WITH_JMP_FAR MACRO LabelName EXTERN LabelName&End:FAR jmp LabelName&End LabelName ENDP ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mSTART_TBL ; ; Description: Start table macro. ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mSTART_TBL MACRO LabelName PUBLIC LabelName LabelName LABEL BYTE ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_TBL_ENTRY_NEAR ; ; Description: Start table enty macro. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_TBL_ENTRY_NEAR MACRO LabelID, LabelName stTblEntryNEAR ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_ID_AND_TBL_ENTRY_NEAR ; ; Description: Start ID Table Entry macro. ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_ID_AND_TBL_ENTRY_NEAR MACRO LabelID, LabelName stIDAndTblEntryNEAR ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_TBL_ENTRY_FAR ; ; Description: ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_TBL_ENTRY_FAR MACRO LabelID, LabelName stTblEntryFAR ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mBODY_ID_AND_TBL_ENTRY_FAR ; ; Description: ; ; Input: ; LabelID ; LabelName ; ;---------------------------------------------------------------------------- ; mBODY_ID_AND_TBL_ENTRY_FAR MACRO LabelID, LabelName stIDAndTblEntryFAR ENDM ; ;---------------------------------------------------------------------------- ; ; Name: mEND_TBL ; ; Description: ; ; Input: LabelName ; ;---------------------------------------------------------------------------- ; mEND_TBL MACRO LabelName PUBLIC LabelName&End LabelName&End LABEL BYTE ENDM .list endif ;_mbiosmac_mac_ ;************************************************************************* ;************************************************************************* ;** ** ;** (C)Copyright 1987-2013, American Megatrends, Inc. ** ;** ** ;** All Rights Reserved. ** ;** ** ;** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** ;** ** ;** Phone: (770)-246-8600 ** ;** ** ;************************************************************************* ;*************************************************************************