⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io.mak

📁 AMI 主板的BIOS源码。
💻 MAK
📖 第 1 页 / 共 2 页
字号:
#     *****************************************************************;
#     *****************************************************************;
#     **                                                             **;
#     **      (C)Copyright 1985-1996, American Megatrends, Inc.      **;
#     **                                                             **;
#     **                     All Rights Reserved.                    **;
#     **                                                             **;
#     **           6145-F Northbelt Pkwy, Norcross, GA 30071         **;
#     **                                                             **;
#     **                     Phone (770)-246-8600                    **;
#     **                                                             **;
#     *****************************************************************;
#     *****************************************************************;
#-----------------------------------------------------------------------#
#			SELECT IO MODULE				#
#-----------------------------------------------------------------------#
# NOTE TO ENGINEERS							#
# 1. Select the IO chipset present in the motherboard by setting the	#
#    corresponding switch to 1.						#
#    For example, if SMC665 is present in motherboard, set SMC665 = 1.	#
# 2. If onboard PCI IDE controller is present, please ADD the proper	#
#    routine in IO_PERIPHERALS in BIOS.MAK file. The corresponding	#
#    IOC.ASM and IOC.SSP file for PCI IDE is in CHIPSET\IO directory.	#
# 3. Generally you do not need to do anything else.			#
# 4. But there are execptions. This make file is generated based on	#
#    following ASSUMPTIONs						#
#    a) IDE support is NOT USED from any of these IO Chipsets.		#
#	Nowadays IDE support is generally provided by onboard PCI IDE	#
#	chipset e.g. Intel Triton IDE (PIIX, PIIX3, etc.), SiS PCI IDE,	#
#	CMD PCI IDE, etc.						#
#    b) All other devices (e.g. COM1, COM2, LPT, KBC, RTC, FDC) present	#
#	in the IO chipset are used in the motherboard.			#
# 5. If any one of the above assumptions is NOT valid, you may need to	#
#    change/modify different switches according to the requirement.	#
#    For example:							#
#    a) If system is an EISA system					#
#	   AND {(chipset does not have any PCI-EISA Bridge)		#
#		OR (PCI-EISA Bridge does not have proper class code)}	#
#	please add "SystemEisaBus" to IO_PERIPHERALS.			#
#    b) If system is an ISA system					#
#	   AND {(chipset does not have any PCI-ISA Bridge)		#
#		OR (PCI-ISA Bridge does not have proper class code)}	#
#	please add "SystemIsaBus" to IO_PERIPHERALS.			#
#    c) If SMC932 is used but KBC is not used from SMC932, please TAKE	#
#	OUT the "Smc932BBlkKeyboardControllerAuto" from SMC932 block in	#
#	BOOT_KBC_RTC.							#
#    d) If SMC932 is used but RTC is not used from SMC932, please TAKE	#
#	OUT the "Smc932BBlkRTCControllerAuto" from SMC932 block in	#
#	BOOT_KBC_RTC.							#
#    e) If NAT306 is used and also IDE support is used from NAT306,	#
#	please ADD the "Nat306IdeController" in the NAT306 block in	#
#	IO_PERIPHERALS.							#
# 6. The above examples are only a few of the many possible exceptions.	#
#    If your requirement is different from the above execptions, please	#
#    do it accordingly OR contact AMI.					#
# 7. If BIOS does not build with the selected IO support, please contact#
#    AMI for proper/latest IO library (IO.LIB, IO.PUB, IO*.SSP files).	#
#-----------------------------------------------------------------------#
#	Select Index Port, Data Port, Unlock Value (if any)		#
#-----------------------------------------------------------------------#
# I/O Chipset     Possible Index     Possible Data     Possible Unlock Value
# -----------	  --------------     -------------     ---------------------
# AIP             22/24/26E/398      23/25/26F/399
# ALI5105	  Not used	     Not used
# ALI5113	  Not used	     3F1/398
# ALI5119	  Not used	     Not used		19/29
# ALI5123	  3F0/370	     3F1/371
# CT711           3F0                3F1
# CT712           3F0                3F1
# CT735           3F0                3F1
# DS83CH20	  2E		     2F
# GM803B	  398		     399
# GM803C	  398		     399
# ITE8661         3F0/3BD/370        3F1/3BE/371
# ITE8680         3F0/3BD/370        3F1/3BE/371
# Nat303          398/26E/15C/2E     399/26F/15D/2F
# Nat306          398/26E/15C/2E     399/26F/15D/2F
# Nat307          15C/2E             15D/2F
# Nat308          15C/2E             15D/2F
# Nat312          398/26E     	     399/26F
# Nat322          398/26E	     399/26F
# Nat332          398/26E/15C/2E     399/26F/15D/2F
# Nat336          398/15C/2E/Any     399/15D/2F/(Any+1)
# Nat338          398/15C/2E/Any     399/15D/2F/(Any+1)
# SMC651          3F0                3F1
# SMC661          3F0                3F1
# SMC665          3F0                3F1
# SMC665IR        3F0                3F1
# SMC669          3F0/370            3F1/371
# SMC669FR        3F0/370            3F1/371
# SMC67X          3F0/370            3F1/371
# SMC68X          3F0/370            3F1/371
# SMC922          3F0/370            3F1/371
# SMC932          3F0/370            3F1/371
# SMC932FR        3F0/370            3F1/371
# SMC957          3F0/370            3F1/371
# UMC8663	  108		     109
# UMC8663B	  108		     109
# UMC8669 (Note2) 108		     109
# Win787          251                252               88/89
# Win787IF        251                252               88/89
# Win877          3F0                3F1               86/87
#		  251                252               88/89
# NOTE1 : For Winbond 787(IF)/877, if the unlock data is 88h/89h then the
# port used to enable the access to the configuration registers is 250h,
# the index port is 251h, the data port is 252h.
#
# NOTE2 : Also specify an I/O port for the ISA PnP RD_DATA port - In the
#	  range of 203h - 3FFh
#-----------------------------------------------------------------------#
IO_INDEX_PORT	= 3f0h	#index port should be 3f0h 		# Index Port e.g. 3F0h			#
IO_DATA_PORT	= 3f1h	#index port should be 3f1h 		# Data Port e.g. 3F1h			#
IO_UNLOCK_DATA	= 087h      	# e.g. 87h for Winbond877		#
IO_ISA_PNP_DATA_PORT = 		# RD_DATA Port e.g. 203h for UMC8669	#
#-----------------------------------------------------------------------#
#		ONLY ONE IO SHOULD BE SELECTED				#
#-----------------------------------------------------------------------#
AIP			= 0	# 1 = Include Intel AIP			#
ALI5105			= 0	# 1 = Include ALI 5105			#
ALI5113			= 0	# 1 = Include ALI 5113			#
ALI5119			= 0	# 1 = Include ALI 5119			#
ALI5123			= 0	# 1 = Include ALI 5123			#
CT735			= 0	# 1 = Include CT735			#
DSCH20			= 0	# 1 = Include Dallas DS83CH20		#
GM803B			= 0	# 1 = Include LG Semicon GM82C803B	#
GM803C			= 0	# 1 = Include LG Semicon GM82C803C	#
ITE8661			= 1	# 1 = Include ITE 8661			#
ITE8680			= 0	# 1 = Include ITE 8680			#
NAT303			= 0	# 1 = Include National 303		#
NAT306			= 0	# 1 = Include National 306		#
NAT307			= 0	# 1 = Include National 307		#
NAT308			= 0	# 1 = Include National 308		#
NAT312			= 0	# 1 = Include National 312		#
NAT322			= 0	# 1 = Include National 322		#
NAT332			= 0	# 1 = Include National 332		#
NAT336			= 0	# 1 = Include National 336		#
NAT338			= 0	# 1 = Include National 338		#
SMC651_SMC661_CT711_CT721 = 0	# 1 = Include SMC651/SMC661/CT711/CT721	#
SMC665			= 0	# 1 = Include SMC665			#
SMC665IR		= 0	# 1 = Include SMC665IR			#
SMC669			= 0	# 1 = Include SMC669			#
SMC669FR		= 0	# 1 = Include SMC669FR			#
SMC67X                  = 0     # 1 = Include SMC67X                    #
SMC68X			= 0	# 1 = Include SMC68X			#
SMC922                  = 0     # 1 = Include SMC922                    #
SMC932_SMC935		= 0	# 1 = Include SMC932/SMC935		#
SMC932FR                = 0     # 1 = Include SMC932FR                  #
SMC957			= 0	# 1 = Include SMC957			#
UMC8663                 = 0     # 1 = Include UMC 8663                  #
UMC8663B		= 0	# 1 = Include UMC 8663B			#
UMC8669			= 0	# 1 = Include UMC 8669			#
WIN787_WIN777		= 0	# 1 = Include Winbond 83787F/83777F	#
WIN787IF		= 0	# 1 = Include Winbond 83787IF		#
WIN877			= 0	# 1 = Include Winbond 83877		#
WIN977			= 0	# 1 = Include Winbond 83977		#
#-----------------------------------------------------------------------#
#		I/O CHIPSET SUPPORT IN BOOT BLOCK			#
#-----------------------------------------------------------------------#
# select the I/O peripheral for Boot Block code.			#
# BOOT_KBC_RTC	selects KBC and RTC routines controlled by I/O chipset.	#

BOOT_KBC_RTC	=
!if $(ALI5123)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Ali5123BBlkRTCControllerAuto\
Ali5123BBlkKeyboardControllerAuto
!endif
!if $(DSCH20)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Dsch20BBlkRTCControllerAuto\
Dsch20BBlkKeyboardControllerAuto
!endif
!if $(ITE8680)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
IT8680BBlkRTCControllerAuto\
IT8680BBlkKeyboardControllerAuto
!endif
!if $(NAT303)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Nat303BBlkRTCControllerAuto\
Nat303BBlkKeyboardControllerAuto
!endif
!if $(NAT306)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Nat306BBlkRTCControllerAuto\
Nat306BBlkKeyboardControllerAuto
!endif
!if $(NAT307)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Nat307BBlkRTCControllerAuto\
Nat307BBlkKeyboardControllerAuto
!endif
!if $(NAT308)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Nat308BBlkRTCControllerAuto\
Nat308BBlkKeyboardControllerAuto
!endif
!if $(SMC67X)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Smc67xBBlkKeyboardControllerAuto
!endif
!if $(SMC68X)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Smc68xBBlkKeyboardControllerAuto
!endif
!if $(SMC922)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Smc922BBlkKeyboardControllerAuto\
Smc922BBlkRTCControllerAuto
!endif
!if $(SMC932_SMC935) || $(SMC932FR)
BOOT_KBC_RTC    = $(BOOT_KBC_RTC)\
Smc932BBlkKeyboardControllerAuto\
Smc932BBlkRTCControllerOff
!endif
!if $(SMC957)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Smc957BBlkKeyboardControllerAuto\
Smc957BBlkRTCControllerAuto
!endif
!if $(WIN977)
BOOT_KBC_RTC	= $(BOOT_KBC_RTC)\
Win977BBlkKeyboardControllerAuto\
Win977BBlkRTCControllerOff
!endif


# BOOT_FDC	selects the FDC routines controlled by I/O chipset.	#

BOOT_FDC	=
!if $(AIP)
BOOT_FDC	= $(BOOT_FDC)\
AIPBBlkFloppyControllerAuto
!endif
!if $(ALI5105)
BOOT_FDC	= $(BOOT_FDC)\
Ali5105BBlkFloppyControllerAuto
!endif
!if $(ALI5113)
BOOT_FDC	= $(BOOT_FDC)\
Ali5113BBlkFloppyControllerAuto
!endif
!if $(ALI5119)
BOOT_FDC	= $(BOOT_FDC)\
Ali5119BBlkFloppyControllerAuto
!endif
!if $(ALI5123)
BOOT_FDC	= $(BOOT_FDC)\
Ali5123BBlkFloppyControllerAuto
!endif
!if $(CT735)
BOOT_FDC	= $(BOOT_FDC)\
Ct735BBlkFloppyControllerAuto
!endif
!if $(DSCH20)
BOOT_FDC	= $(BOOT_FDC)\
Dsch20BBlkFloppyControllerAuto
!endif
!if $(GM803B)
BOOT_FDC	= $(BOOT_FDC)\
Gm803BBBlkFloppyControllerAuto
!endif
!if $(GM803C)
BOOT_FDC	= $(BOOT_FDC)\
Gm803CBBlkFloppyControllerAuto
!endif
!if $(ITE8661)  
BOOT_FDC	= $(BOOT_FDC)\
IT8661FBBlkFloppyControllerAuto
!endif
!if $(ITE8680)
BOOT_FDC	= $(BOOT_FDC)\
IT8680BBlkFloppyControllerAuto
!endif
!if $(NAT303)
BOOT_FDC	= $(BOOT_FDC)\
Nat303BBlkFloppyControllerAuto
!endif
!if $(NAT306)
BOOT_FDC	= $(BOOT_FDC)\
Nat306BBlkFloppyControllerAuto
!endif
!if $(NAT307)
BOOT_FDC	= $(BOOT_FDC)\
Nat307BBlkFloppyControllerAuto
!endif
!if $(NAT308)
BOOT_FDC	= $(BOOT_FDC)\
Nat308BBlkFloppyControllerAuto
!endif
!if $(NAT312)
BOOT_FDC	= $(BOOT_FDC)\
Nat312BBlkFloppyControllerAuto
!endif
!if $(NAT322)
BOOT_FDC	= $(BOOT_FDC)\
Nat322BBlkFloppyControllerAuto
!endif
!if $(NAT332)
BOOT_FDC	= $(BOOT_FDC)\
Nat332BBlkFloppyControllerAuto
!endif
!if $(NAT336)
BOOT_FDC	= $(BOOT_FDC)\
Nat336BBlkFloppyControllerAuto
!endif
!if $(NAT338)
BOOT_FDC	= $(BOOT_FDC)\
Nat338BBlkFloppyControllerAuto
!endif
!if $(SMC651_SMC661_CT711_CT721)
BOOT_FDC	= $(BOOT_FDC)\
Smc651BBlkFloppyControllerAuto
!endif
!if $(SMC665)
BOOT_FDC	= $(BOOT_FDC)\
Smc665BBlkFloppyControllerAuto
!endif
!if $(SMC665IR)
BOOT_FDC	= $(BOOT_FDC)\
Smc665IrBBlkFloppyControllerAuto
!endif
!if $(SMC669)
BOOT_FDC	= $(BOOT_FDC)\
Smc669BBlkFloppyControllerAuto
!endif
!if $(SMC669FR)
BOOT_FDC	= $(BOOT_FDC)\
Smc669FrBBlkFloppyControllerAuto
!endif
!if $(SMC67X)
BOOT_FDC	= $(BOOT_FDC)\
Smc67xBBlkFloppyControllerAuto
!endif
!if $(SMC68X)
BOOT_FDC	= $(BOOT_FDC)\
Smc68xBBlkFloppyControllerAuto
!endif
!if $(SMC922)
BOOT_FDC	= $(BOOT_FDC)\
Smc922BBlkFloppyControllerAuto
!endif
!if $(SMC932_SMC935) || $(SMC932FR)
BOOT_FDC        = $(BOOT_FDC)\
Smc932BBlkFloppyControllerAuto
!endif
!if $(SMC957)
BOOT_FDC	= $(BOOT_FDC)\
Smc957BBlkFloppyControllerAuto
!endif
!if $(UMC8663)
BOOT_FDC	= $(BOOT_FDC)\
Umc8663BBlkFloppyControllerAuto
!endif
!if $(UMC8663B)
BOOT_FDC	= $(BOOT_FDC)\
Umc8663BBBlkFloppyControllerAuto
!endif
!if $(UMC8669)
BOOT_FDC	= $(BOOT_FDC)\
Umc8669BBlkFloppyControllerAuto
!endif
!if $(WIN787_WIN777)
BOOT_FDC	= $(BOOT_FDC)\
Win787BBlkFloppyControllerAuto
!endif
!if $(WIN787IF)
BOOT_FDC	= $(BOOT_FDC)\
Win787IFBBlkFloppyControllerAuto
!endif
!if $(WIN877)
BOOT_FDC	= $(BOOT_FDC)\
Win877BBlkFloppyControllerAuto
!endif
!if $(WIN977)
BOOT_FDC	= $(BOOT_FDC)\
Win977BBlkFloppyControllerAuto
!endif
#-----------------------------------------------------------------------#
#		ONBOARD I/O PERIPHERALS SUPPORT FOR MAIN BIOS		#
#-----------------------------------------------------------------------#
IO_PERIPHERALS	=\
SystemMemory\
SystemInterruptController\
SystemDmaController\
SystemTimer\
SystemRealTimeClock\
SystemKeyboardController\
SystemSpeaker\
SystemMathCoprocessor

!if $(AIP)
SERIAL_IRQ	= 0
IO_PERIPHERALS	= $(IO_PERIPHERALS)\
AIPSerialPortA\
AIPSerialPortB\
AIPParallelPortExt\
AIPFloppyController
!endif
!if $(ALI5105)
SERIAL_IRQ	= 0
IO_PERIPHERALS	= $(IO_PERIPHERALS)\
Ali5105SerialPortA\
Ali5105SerialPortB\
Ali5105ParallelPort\
Ali5105FloppyController
!endif
!if $(ALI5113)
SERIAL_IRQ	= 0
IO_PERIPHERALS	= $(IO_PERIPHERALS)\
Ali5113SerialPortA\
Ali5113SerialPortB\

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -