;----------------------------------------------------------------------------
;Rev    Date     Name   Description
;----------------------------------------------------------------------------
;R02  06/24/98	 KGN	Change CMOS Location for save CMOS AREA
;R01  02/13/98	 KGN	Change for Resume Minute and Second with default value
;R00  11/01/97	 KGN	Initialation

;[]=====================================================================[]
;	This file is include at pfeature.asm , please ref. h:\bios\450\
;pfeature\2a5uq000.asm .
;	Use this must defin :
;	HPM_CMOS	=	XXX	it is do checksum CMOS Location
;					and continue 6 bytes in bios.cfg or 
;					your pfeature.asm
;[]=====================================================================[]

DEFINE_ITEM	MACRO	MENU_NAME,GAP
IFNB	<GAP>
	Yaxis = Yaxis + GAP
ENDIF	;GAP
IF	Yaxis GE 23
	Xaxis = 42
	Yaxis = Y_Start
ELSE	;
	Yaxis = Yaxis + 1
ENDIF	;
IFNB	<MENU_NAME>
	PUBLIC	MENU_NAME
	MENU_NAME:
ENDIF
		ENDM

if	Compile_HPM_SIO	EQ	1
		dw	offset	Resume_on_RTC_Item, offset Dis_Resume_on_RTC_Item_Proc
endif	;Compile_HPM_SIO	EQ	1

if	Compile_HPM_SIO	EQ	2

DEFINE_ITEM	Video_Timout_Item
menuitem <2+PMITEM,\
Offset Video_Timout_Str,NOCT,  00000001b,HPM_CMOS,00000001b,\
Offset Dis_Str,0,1,Xaxis,Yaxis,00000001b,	  00000001b,offset Std_Help_Str>

DEFINE_ITEM	Ring_Indicate_Item
;R02menuitem <2+PMITEM,\
;R02offset Ring_Str,          NOCT,00000001b,HPM_CMOS,00000100b,\
;R02offset Dis_Str,0,1,Xaxis,Yaxis,00000000b,	  00000000b,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset Ring_Str,          NOCT,00000001b,HPM_CMOS,00000010b,\
offset Dis_Str,0,1,Xaxis,Yaxis,00000000b,	  00000000b,offset Std_Help_Str>
;R02 - End

DEFINE_ITEM	Lid_Item
;R02menuitem <2,\
;R02offset Lid_Str, 	  NOCT,00000011b,HPM_CMOS+4,00000011b,\
;R02offset Std_Str_Val,0,2,Xaxis,Yaxis,00000001b,	    00000001b,offset Std_Help_Str>
;R02 - Start
menuitem <2,\
offset Lid_Str, 	  NOCT,00000011b,HPM_CMOS,00001100b,\
offset Std_Str_Val,0,2,Xaxis,Yaxis,00000001b,	  00000100b,offset Std_Help_Str>
;R02 - End

DEFINE_ITEM	Batt_Fail_Item
;R02menuitem <2+PMITEM,\
;R02Offset Low_Low_Batt_Str,NOCT,00000011b,HPM_CMOS+4,00001100b,\
;R02Offset Std_Str_Val,0,2,Xaxis,Yaxis,00000010b,     00001000b,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
Offset Low_Low_Batt_Str,NOCT,00000011b,HPM_CMOS,00110000b,\
Offset Std_Str_Val,0,2,Xaxis,Yaxis,00000010b,   00100000b,offset Std_Help_Str>
;R02 - End

DEFINE_ITEM    APM_Item
;R02menuitem <2+PMITEM,\
;R02offset APM_Str,NOCT,001h,HPM_CMOS+2,00000001b,\
;R02offset APM_Val,0,1,Xaxis,Yaxis,01h,01h,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset APM_Str,NOCT,001h,HPM_CMOS,01000000b,\
offset APM_Val,0,1,Xaxis,Yaxis,01h,040h,offset Std_Help_Str>
;R02 - End

ifdef	TV_Item_in_Setup
DEFINE_ITEM    TV_Item
;R02menuitem <2+PMITEM,\
;R02offset TV_Str,NOCT,001h,HPM_CMOS+3,00000001b,\
;R02offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset TV_Str,NOCT,001h,HPM_CMOS,10000000b,\
offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - End
endif	;TV_Item_in_Setup

ifdef	Capture_Item_in_Setup
DEFINE_ITEM    Capture_Item
;R02menuitem <2+PMITEM,\
;R02offset Capture_Str,NOCT,001h,HPM_CMOS+3,00000010b,\
;R02offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset Capture_Str,NOCT,001h,HPM_CMOS+1,00000001b,\
offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - End
endif	;Capture_Item_in_Setup

ifdef	ZVPort_Item_in_Setup
DEFINE_ITEM    ZVPort_Item
;R02menuitem <2+PMITEM,\
;R02offset ZVPort_Str,NOCT,001h,HPM_CMOS+3,00000100b,\
;R02offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset ZVPort_Str,NOCT,001h,HPM_CMOS+1,00000010b,\
offset Dis_Str,0,1,Xaxis,Yaxis,00h,00h,offset Std_Help_Str>
;R02 - End
endif	;ZVPort_Item_in_Setup

DEFINE_ITEM	Resume_on_RTC_Item
;R02menuitem <2+PMITEM,\
;R02offset Resume_on_Schedule_Str,NOCT,00000001b,HPM_CMOS+1,00000001b,\
;R02offset Dis_Str,0,1,Xaxis,Yaxis,    00000000b,	        00000000b,offset Std_Help_Str>
;R02 - Start
menuitem <2+PMITEM,\
offset Resume_on_Schedule_Str,NOCT,00000001b,HPM_CMOS+1,00000100b,\
offset Dis_Str,0,1,Xaxis,Yaxis,    00000000b,	        00000000b,offset Std_Help_Str>
;R02 - End

DEFINE_ITEM	ALARM_Time_Item
ALARM_HOUR_ITEM	label	near
;R02menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
;R02offset A_H_str,NOCT,0,HPM_CMOS,11111000b,\
;R02offset NullStr1,0,23,Xaxis,Yaxis,0,0,offset NullStr>	;R01
;R02 - Start
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset A_H_str,NOCT,0,HPM_CMOS+1,11111000b,\
offset NullStr1,0,23,Xaxis,Yaxis,0,0,offset NullStr>	;R01
;R02 - End
;R01 offset NullStr1,0,23,Xaxis,Yaxis,23,23,offset NullStr>

ALARM_MINUTE_ITEM	label	near
;R01 menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2+NODEFAULT,\
;R02menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
;R02offset DotStr1,NOCT,0,HPM_CMOS+7,00111111b,\
;R02offset NullStr1,0,59,Xaxis+24,Yaxis,0,0,offset NullStr>
;R02 - Start
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset DotStr1,NOCT,0,HPM_CMOS+2,00111111b,\
offset NullStr1,0,59,Xaxis+24,Yaxis,0,0,offset NullStr>
;R02 - End

ALARM_Second_ITEM	label	near
;R01 menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2+NODEFAULT,\
;R02menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
;R02offset DotStr1,NOCT,0,HPM_CMOS+2,11111100b,\
;R02offset NullStr1,0,59,Xaxis+29,Yaxis,0,0,offset NullStr>
;R02 - Start
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset DotStr1,NOCT,0,HPM_CMOS+3,00111111b,\
offset NullStr1,0,59,Xaxis+29,Yaxis,0,0,offset NullStr>
;R02 - End

ifdef	Alarm_Dath_Support
DEFINE_ITEM	ALARM_Dath_Item
ALARM_Day_ITEM	label	near
;R02menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
;R02offset D_M_str,NOCT,0,HPM_CMOS+3,11111000b,\
;R02offset NullStr1,1,31,Xaxis,Yaxis,0,0,offset NullStr>
;R02 - Start
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset D_M_str,NOCT,0,HPM_CMOS+4,00011111b,\
offset NullStr1,1,31,Xaxis,Yaxis,0,0,offset NullStr>
;R02 - End

ALARM_Mouth_ITEM	label	near
;R02menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
;R02offset DotStr1,NOCT,0,HPM_CMOS+4,11110000b,\
;R02offset NullStr1,1,12,Xaxis+24,Yaxis,0,0,offset NullStr>
;R02 - Start
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset DotStr1,NOCT,0,HPM_CMOS+5,00001111b,\
offset NullStr1,1,12,Xaxis+24,Yaxis,0,0,offset NullStr>
;R02 - End

ALARM_Year_ITEM	label	near
menuitem <NOMODBIN+KEYIN+SHOWNUM+DIGIT2,\
offset DotStr1,NOCT,0,HPM_CMOS+6,11111111b,\
offset NullStr1,0,99,Xaxis+29,Yaxis,0,0,offset NullStr>
endif	;Alarm_Dath_Support

endif	;Compile_HPM_SIO	EQ	2

if	Compile_HPM_SIO	EQ	3
Ring_Str		db	'Resume on Ring'
			ADDX	<,5>
			db	': ',0

Resume_on_Schedule_Str	db	'Resume on Schedule'
			ADDX	<,1>
			db	': ',0

Video_Timout_Str	db	'Screen Timout'
			ADDX	<,6>
			db	': ',0

Low_Low_Batt_Str	db	'Batt Low'
			ADDX	<,11>
			db	': ',0

Std_Str_Val		db	'Disabled    ',0
			db	'Save to RAM ',0
			db	'Save to Disk',0

Lid_Str			db	'Lid'
			ADDX	<,16>
			db	': ',0

ifdef	ZVPort_Item_in_Setup
ZVPort_Str		db	'ZV Port'
			ADDX	<,12>
			db	': ',0
endif	;ZVPort_Item_in_Setup

ifdef	Capture_Item_in_Setup
Capture_Str		db	'Capture'
			ADDX	<,12>
			db	': ',0
endif	;Capture_Item_in_Setup

ifdef	TV_Item_in_Setup
TV_Str			db	'TV'
			ADDX	<,17>
			db	': ',0
endif	;TV_Item_in_Setup

APM_Str			db	'APM Suspend'
			ADDX	<,8>
			db	': ',0

APM_Val			db	'Follow Lid  ',0
			db	'Susp. to RAM',0

A_H_str			db	'HH/MM/SS'
			ADDX	<,11>
			db	': ',0

D_M_str			db	'DD/MM/YY'
			ADDX	<,11>
			db	': ',0

DotStr1			db	' : ',0
Nullstr1		db	0

Dis_Resume_on_RTC_Item_Proc	Proc	Near

	mov	di, offset Dis_Tbl
	xor	cx, cx
	call	IF_CX_Then_Dis
	ret

Dis_Resume_on_RTC_Item_Proc	Endp

Dis_Tbl:
	dw	offset	ALARM_HOUR_ITEM
	dw	offset	ALARM_MINUTE_ITEM
	dw	offset	ALARM_Second_ITEM
ifdef	Alarm_Dath_Support
	dw	offset	ALARM_Day_ITEM
	dw	offset	ALARM_Mouth_ITEM
	dw	offset	ALARM_Year_ITEM
endif	;Alarm_Dath_Support
	dw	0ffffh

endif	;Compile_HPM_SIO	EQ	3

