summaryrefslogtreecommitdiff
path: root/Core/EM/Terminal/Terminal.sd
diff options
context:
space:
mode:
Diffstat (limited to 'Core/EM/Terminal/Terminal.sd')
-rw-r--r--Core/EM/Terminal/Terminal.sd1533
1 files changed, 1533 insertions, 0 deletions
diff --git a/Core/EM/Terminal/Terminal.sd b/Core/EM/Terminal/Terminal.sd
new file mode 100644
index 0000000..35f2474
--- /dev/null
+++ b/Core/EM/Terminal/Terminal.sd
@@ -0,0 +1,1533 @@
+//****************************************************************************
+//****************************************************************************
+//** **
+//** (C)Copyright 1985-2014, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone (770)-246-8600 **
+//** **
+//****************************************************************************
+//****************************************************************************
+// $Header: /Alaska/BIN/Modules/Terminal/Terminal.sd 46 6/16/14 7:52a Divyac $
+//
+// $Revision: 46 $
+//
+// $Date: 6/16/14 7:52a $
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/BIN/Modules/Terminal/Terminal.sd $
+//
+// 46 6/16/14 7:52a Divyac
+// [TAG] EIP172073
+// [Category] Improvement
+// [Description] Setup option for Legacy Serial Redirection.
+// [Files] Terminal.sd, Terminal.uni, LegacySredir_Setup.c
+//
+// 45 3/14/14 8:37a Anbuprakashp
+// [TAG] EIP156273
+// [Category] Improvement
+// [Description] Avoid Build issue happened in Non english version of
+// the OS with Serial Redirection label 4.6.3_Terminal_53
+// [Files] Terminal.sd,TerminalSetup.c
+//
+// 44 9/04/13 3:25a Anbuprakashp
+// [TAG] EIP134648
+// [Category] Bug Fix
+// [Severity] Minor
+// [Symptom] Build error occurs in Sharkbay platform if tokens
+// "TOTAL_SIO_SERIAL_PORTS" and "TOTAL_PCI_SERIAL_PORTS" are set to 0
+// [RootCause] TerminalSetup.c file Status Variable Initialization is
+// missing.Terminal.sd file, Condition (TOTAL_SERIAL_PORTS > 0) need to be
+// added to avoid build error.
+// [Solution] Terminal.sd file, Condition (TOTAL_SERIAL_PORTS > 0) added
+// to avoid build error.
+// Status variable initialzed properly.
+// [Files] Terminal.sd,TerminalSetup.c
+//
+// 43 12/12/11 1:57a Jittenkumarp
+// [TAG] EIP75982
+// [Category] New Feature
+// [Description] Redirection After BIOS POST item on the setup menu
+// [Files] Terminal.sd, Terminal.uni, LegacySredir.c,
+// LegacySredir_Setup.c
+//
+// 42 9/20/11 3:04a Rajeshms
+// [TAG] EIP70320
+// [Category] Bug Fix
+// [Severity] Critical
+// [Symptom] SPCR table is not created with EFI_SPECIFICATION_VERSION
+// 0x2000A
+// [RootCause] Comport was returned as 0xff from
+// GetAcpiSpcrTableValues() as the PORT number is zero indexed after
+// EFI_SPECIFICATION_VERSION 0x2000A.
+// [Solution] The comport number is not subtracted with 1 if
+// EFI_SPECIFICATION_VERSION is equal to greater than0x2000A
+// [Files] Terminal.sd, TerminalSetup.c
+//
+// 41 9/12/11 3:11a Rajeshms
+// [TAG]- EIP 63665
+// [Category]-IMPROVEMENT
+// [Description]- Install Linux(Legacy OS) through remote. Some Linux
+// versions are forced to text mode to redirect and some are redirected in
+// graphics mode itself. It might not work for all the Linux versions as
+// the Linux kernel's behave differently.
+// [Files]- Terminal.sdl, Terminal.uni, Terminal.sd, LegacySredir.c,
+// LegacySredir.h, LegacySredir_Setup.c, GRAPHREDIR.ASM, INT10REDIR.ASM,
+// OR_MOD.ASM, OR_MOD.EQU, SREDIR.ASM
+//
+// 40 7/29/11 2:22a Lavanyap
+// [TAG] EIP65854
+// [Category] Bug Fix
+// [Severity] Minor
+// [Symptom] Build errors on redefinition of symbols PORT(0-9) in some
+// projects.
+// [RootCause] Terminal module redefines symbols PORT(0-9).
+// [Solution] Symbol definition PORTx has been changed to
+// TERMINAL_PORTx.
+// [Files] Terminal.sd
+//
+// 39 7/13/11 2:48a Rajeshms
+// [TAG]- EIP 36616
+// [Category]- New Feature
+// [Description]- Add Setup option for Various Putty keyPad support in
+// Terminal driver.
+// [Files]- Terminal.c, Terminal.h, Terminal.sd, Terminal.sdl,
+// Terminal.uni, TerminalBoard.h, TerminalSetup.c, TerminalSimpleTextIn.c
+//
+// 38 6/21/11 7:06a Rameshr
+// [TAG] - EIP 62809
+// [Category]- BUG FIX
+// [Severity]- Minor
+// [Symptom] - COM ports can't be select in Out-of-band mgmt port in setup
+// menu,it always show COM0..
+// [RootCause]- UEFI2.1 port index starts from 0.
+// [Solution] - Modified the values based on the Port0, Port1 etc
+// defination.
+// [Files] - Terminal.sd
+//
+// 37 4/12/11 4:30a Rameshr
+// [TAG]- EIP 57688
+// [Category]- New Feature
+// [Description]- Add Setup option for Vt-UTF8 combo key support in
+// terminal driver
+// [Files]- Terminal.c, Terminal.h, Terminal.sd, Terminal.sdl ,
+// Terminal.uni, Terminalboard.h, TerminalSetup.c, TerminalSimpletextin.c
+//
+// 36 1/24/11 4:05a Lavanyap
+// [TAG] - EIP48183
+// [Category] - IMPROVEMENT
+// [Description] - Update the Terminal eModule to utilize Setup
+// Customization
+// [Files] - Terminal.sd, TerminalSetupVar.h
+//
+// 35 11/02/10 4:17a Lavanyap
+// [TAG] - EIP42299
+// [Category] - IMPROVEMENT
+// [Description] - Console Redirection can support 10 COM Ports.
+// [Files] - InitTerminalStrings.c, SerialIo.c, Terminal.sd,
+// Terminal.sdl, Terminal.uni, TerminalSetup.c
+//
+// 34 9/24/10 12:40a Rameshr
+// [TAG] - EIP 44736
+// [Category]- BUG FIX
+// [Severity]- Major
+// [Symptom] - Terminal label 44 is not building in UEFI2.1 mode
+// [RootCause] - suppressif and grayoutif used in Single menu
+// [Solution] - Used SUPPRESS_GRAYOUT_ENDIF to resolve the build error
+// [Files] - Terminal.sd
+//
+// 33 6/01/10 12:29a Rameshr
+// Support for Baud Rate 38400 in Terminal Driver
+// EIP 38852
+//
+// 32 5/03/10 12:21a Rameshr
+// Issue:VT-UTF8 mode support for Console redirection with Debugger
+// Solution: Serial Port attribute Setup questions added for the debugger
+// console redirection port.
+// EIP 37440
+//
+// 31 3/31/10 12:29a Rameshr
+// Recorder mode support Added.
+// EIP 34388
+//
+// 30 3/30/10 1:02a Rameshr
+// Each Com port has SDL token for default value of console Redirection
+// setup option
+// EIP 15087
+//
+// 29 2/15/10 12:44p Pats
+// EIP 28461: Enabling Console Redirection COM4 locks SUT in POST
+// Added separate controls for PCI serial ports and a separate default.
+//
+//
+// 28 2/12/10 5:37p Felixp
+// Bug fix: the code didn't compile in UEFI 2.1 mode.
+//
+// 27 1/20/10 4:47p Artems
+// EIP 34000 - made UEFI 2.1 changes backward compatible
+//
+// 26 12/23/09 4:07a Rameshr
+// Software flowControl Removed as SerialIO doesnt support it.
+//
+// 25 12/16/09 5:08p Artems
+// EIP 31619 UEFI 2.1 support added
+//
+// 24 10/22/09 11:26a Yul
+// EIP 24167
+// Add Setup question to replace SDL token for LegacyOsResolution.
+//
+// 23 10/21/09 11:29a Artems
+// EIP 25955 - fixed switching mode mechanism
+//
+// 21 7/02/09 5:01p Rameshr
+// Coding Standard and File header updated.
+//
+// 20 11/14/08 10:56a Ambikas
+//
+// 18 11/12/08 5:55p Ambikas
+//
+// 17 10/21/08 4:49p Fasihm
+// Updated by adding more MANUFACTURING flags to missed setup questions.
+//
+// 16 8/13/08 5:56p Fasihm
+// Added the Manufacturing flags to the setup questions.
+//
+// 15 5/13/08 3:41p Rameshraju
+// Terminal Resolution 100 x 31 support Added
+//
+// 14 2/07/08 6:41p Ambikas
+//
+// 13 11/07/07 4:52p Ambikas
+// We have reverted the the VfrCompile convention of 1 based array.
+// Array indeces have been changed to accordingly.
+//
+// 12 6/12/07 3:52p Ambikas
+//
+// 11 6/11/07 11:35a Ambikas
+//
+// 10 6/05/07 6:31p Ambikas
+//
+// 9 6/05/07 12:43p Ambikas
+//
+// 8 6/05/07 12:41p Ambikas
+//
+// 7 6/04/07 7:26p Ambikas
+// -Serial port related setup vars are now only defined if
+// TOTAL_SERIAL_PORTS > 0.
+// -Increased max Pci Serial Ports to 4, and so added controls for the
+// additional ports.
+//
+// 6 5/24/07 2:32p Ambikas
+// Re-organized the file using macros.
+//
+// 5 4/32/07 4:25p Robert
+//
+// 4 4/02/07 4:25p Robert
+// Changed Default setup value to Disabled
+//
+// 3 5/05/06 5:34p Ambikas
+//
+// 2 12/02/05 7:44p Ambikas
+//
+// 1 11/11/05 2:07p Ambikas
+//
+//**********************************************************************
+//<AMI_FHDR_START>
+//
+// Name: Terminal.sd
+//
+// Description: This is the setup page 'Serial Port Console Redirection.'
+// The link to the page is in the setup 'Advanced' tab.
+//
+//<AMI_FHDR_END>
+//**********************************************************************
+
+#ifdef FORM_SET_TYPEDEF
+#include "TerminalSetupVar.h"
+#endif
+
+//Initialize Macro Arguments
+#define PORT_NUM 0
+#define DEFAULT_CONSOLE_REDIRECTION_ENABLE 0
+
+#if EFI_SPECIFICATION_VERSION>0x20000
+#define TERMINAL_PORT0 0
+#define TERMINAL_PORT1 1
+#define TERMINAL_PORT2 2
+#define TERMINAL_PORT3 3
+#define TERMINAL_PORT4 4
+#define TERMINAL_PORT5 5
+#define TERMINAL_PORT6 6
+#define TERMINAL_PORT7 7
+#define TERMINAL_PORT8 8
+#define TERMINAL_PORT9 9
+#else
+#define TERMINAL_PORT0 1
+#define TERMINAL_PORT1 2
+#define TERMINAL_PORT2 3
+#define TERMINAL_PORT3 4
+#define TERMINAL_PORT4 5
+#define TERMINAL_PORT5 6
+#define TERMINAL_PORT6 7
+#define TERMINAL_PORT7 8
+#define TERMINAL_PORT8 9
+#define TERMINAL_PORT9 10
+#endif
+#ifdef SETUP_DATA_DEFINITION
+ #if (TOTAL_SERIAL_PORTS > 0)
+
+ UINT8 BaudRate[ TOTAL_SERIAL_PORTS ];
+ UINT8 DataBits[ TOTAL_SERIAL_PORTS ];
+ UINT8 Parity[ TOTAL_SERIAL_PORTS ];
+ UINT8 StopBits[ TOTAL_SERIAL_PORTS ];
+ UINT8 FlowControl[ TOTAL_SERIAL_PORTS ];
+ UINT8 LoopbackEnable[ TOTAL_SERIAL_PORTS ];
+ UINT8 ConsoleRedirectionEnable[ TOTAL_SERIAL_PORTS ];
+ UINT8 TerminalType[ TOTAL_SERIAL_PORTS ];
+ UINT8 VtUtf8[ TOTAL_SERIAL_PORTS ];
+ UINT8 RecorderMode[ TOTAL_SERIAL_PORTS ];
+ UINT8 Resolution[ TOTAL_SERIAL_PORTS ];
+ UINT8 LegacyOsResolution[ TOTAL_SERIAL_PORTS ];
+ UINT8 PuttyFunctionKeyPad[ TOTAL_SERIAL_PORTS ];
+ UINT8 RedirectionAfterBiosPost[ TOTAL_SERIAL_PORTS ];
+#if (INSTALL_LEGACY_OS_THROUGH_REMOTE == 1)
+ UINT8 InstallLegacyOSthroughRemote[ TOTAL_SERIAL_PORTS ];
+#endif
+
+ UINT8 AcpiSpcrConsoleRedirectionEnable;
+ UINT8 AcpiSpcrPort;
+ UINT8 AcpiSpcrTerminalType;
+ UINT8 AcpiSpcrBaudRate;
+ UINT8 AcpiSpcrFlowControl;
+ UINT8 AcpiSpcrSetupDummyVar;
+ #endif //(TOTAL_SERIAL_PORTS > 0)
+ UINT8 DebuggerConsoleRedirectionEnable;
+ UINT8 DebuggerTerminalType;
+ UINT8 ComPortforLegacy;
+#endif //ifdef SETUP_DATA_DEFINITION
+
+////////////////////////////////////
+
+#if (TOTAL_SERIAL_PORTS > 0)
+ #ifdef FORM_SET_VARSTORE
+
+ varstore SERIAL_PORTS_ENABLED_VAR,
+ key = AUTO_ID(SERIAL_PORTS_ENABLED_VAR_KEY),
+ name = SerialPortsEnabledVar,
+ guid = TERMINAL_VAR_GUID;
+
+ #endif //FORM_SET_VARSTORE
+#endif //if (TOTAL_SERIAL_PORTS > 0)
+
+ #ifdef FORM_SET_VARSTORE
+
+ varstore DEBUGGER_SERIAL_PORTS_ENABLED_VAR,
+ key = AUTO_ID(DEBUGGER_SERIAL_PORTS_ENABLED_VAR_KEY),
+ name = DebuggerSerialPortsEnabledVar,
+ guid = DEBUGGER_TERMINAL_VAR_GUID;
+
+ #endif //FORM_SET_VARSTORE
+
+#if defined(VFRCOMPILE) && !defined(CONTROLS_ARE_DEFINED)
+#define CONTROL_DEFINITION
+#endif
+#ifdef CONTROL_DEFINITION
+
+#ifdef CONSOLE_REDIRECTION_SUPPORT
+#if CONSOLE_REDIRECTION_SUPPORT == 1
+
+#define TERMINAL_CHECKBOX_DEBUGGERCONSOLEREDIRECTIONENABLE\
+ checkbox varid = SETUP_DATA.DebuggerConsoleRedirectionEnable,\
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION),\
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_ENABLE_HELP),\
+ flags = DEFAULT_DEBUGGER_CONSOLE_REDIRECTION_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#define TERMINAL_ONEOF_DEBUGGERTERMINALTYPE\
+ oneof varid = SETUP_DATA.DebuggerTerminalType,\
+ prompt = STRING_TOKEN (STR_DEBUGGER_TERMINAL_TYPE),\
+ help = STRING_TOKEN (STR_DEBUGGER_TERMINAL_TYPE_HELP),\
+ option text = STRING_TOKEN (STR_VT100),\
+ value = 0,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT100_PLUS),\
+ value = 1,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT_UTF8),\
+ value = 2,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_ANSI),\
+ value = 3,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ endoneof;
+#else
+ #define TERMINAL_CHECKBOX_DEBUGGERCONSOLEREDIRECTIONENABLE
+ #define TERMINAL_ONEOF_DEBUGGERTERMINALTYPE
+#endif // END #if CONSOLE_REDIRECTION_SUPPORT == 1
+#else
+ #define TERMINAL_CHECKBOX_DEBUGGERCONSOLEREDIRECTIONENABLE
+ #define TERMINAL_ONEOF_DEBUGGERTERMINALTYPE
+#endif // END #ifdef CONSOLE_REDIRECTION_SUPPORT
+
+//---------------------------------------------------------------------------
+// DEFINES USED IN PORT_SUB_PAGE MACRO START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+#define TERMINAL_ONEOF_TERMINALTYPE(PORT_NUM)\
+ oneof varid = SETUP_DATA.TerminalType[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_TERMINAL_TYPE),\
+ help = STRING_TOKEN (STR_TERMINAL_TYPE_HELP),\
+ option text = STRING_TOKEN (STR_VT100),\
+ value = 0,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT100_PLUS),\
+ value = 1,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT_UTF8),\
+ value = 2,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_ANSI),\
+ value = 3,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ endoneof;
+
+#define TERMINAL_ONEOF_BAUDRATE(PORT_NUM)\
+ oneof varid = SETUP_DATA.BaudRate[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_BAUD_RATE),\
+ help = STRING_TOKEN (STR_BAUD_RATE_HELP),\
+ option text = STRING_TOKEN (STR_9600),\
+ value = 3,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_19200),\
+ value = 4,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_38400),\
+ value = 5,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_57600),\
+ value = 6,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_115200),\
+ value = 7,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ endoneof;
+
+#define TERMINAL_ONEOF_DATABITS(PORT_NUM)\
+ oneof varid = SETUP_DATA.DataBits[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_DATA_BITS),\
+ help = STRING_TOKEN (STR_DATA_BITS_HELP),\
+ option text = STRING_TOKEN (STR_7),\
+ value = 7,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_8),\
+ value = 8,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ endoneof;
+
+#define TERMINAL_ONEOF_PARITY(PORT_NUM)\
+ oneof varid = SETUP_DATA.Parity[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_PARITY),\
+ help = STRING_TOKEN (STR_PARITY_HELP),\
+ option text = STRING_TOKEN (STR_NONE),\
+ value = 1,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_EVEN),\
+ value = 2,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_ODD),\
+ value = 3,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_MARK),\
+ value = 4,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_SPACE),\
+ value = 5,\
+ flags = 0;\
+ endoneof;
+
+#define TERMINAL_ONEOF_STOPBITS(PORT_NUM)\
+ oneof varid = SETUP_DATA.StopBits[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_STOP_BITS),\
+ help = STRING_TOKEN (STR_STOP_BITS_HELP),\
+ option text = STRING_TOKEN (STR_1),\
+ value = 1,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_2),\
+ value = 3,\
+ flags = 0;\
+ endoneof;
+
+#define TERMINAL_ONEOF_FLOWCONTROL(PORT_NUM)\
+ oneof varid = SETUP_DATA.FlowControl[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_FLOW_CTRL),\
+ help = STRING_TOKEN (STR_FLOW_CTRL_HELP),\
+ option text = STRING_TOKEN (STR_NONE),\
+ value = 0,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_HARDWARE_FLOW_CTRL),\
+ value = HARDWARE_FLOW_CONTROL_SETUP_OPTION,\
+ flags = 0;\
+ endoneof;
+
+#define TERMINAL_ONEOF_VTUTF8(PORT_NUM)\
+ checkbox varid = SETUP_DATA.VtUtf8[PORT_NUM],\
+ prompt = STRING_TOKEN(STR_TERMINAL_VTUTF8),\
+ help = STRING_TOKEN(STR_TERMINAL_VTUTF8_HELP),\
+ flags = VTUTF8_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#define TERMINAL_ONEOF_RECORDERMODE(PORT_NUM)\
+ checkbox varid = SETUP_DATA.RecorderMode[PORT_NUM],\
+ prompt = STRING_TOKEN(STR_TERMINAL_RECORDER_MODE),\
+ help = STRING_TOKEN(STR_TERMINAL_RECORDER_MODE_HELP),\
+ flags = RECORDER_MODE_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#define TERMINAL_ONEOF_RESOLUTION(PORT_NUM)\
+ checkbox varid = SETUP_DATA.Resolution[PORT_NUM],\
+ prompt = STRING_TOKEN(STR_TERMINAL_RESOLUTION),\
+ help = STRING_TOKEN(STR_TERMINAL_RESOLUTION_HELP),\
+ flags = EXTENDED_RESOLUTION_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#define TERMINAL_ONEOF_LEGACYOSRESOLUTION(PORT_NUM)\
+ oneof varid = SETUP_DATA.LegacyOsResolution[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_LEGACYOS_RESOLUTION),\
+ help = STRING_TOKEN (STR_LEGACYOS_RESOLUTION_HELP),\
+ option text = STRING_TOKEN (STR_80_24),\
+ value = 0,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_80_25),\
+ value = 1,\
+ flags = 0;\
+ endoneof;
+
+#define TERMINAL_ONEOF_PUTTYFUNCTIONKEYPAD(PORT_NUM)\
+ oneof varid = SETUP_DATA.PuttyFunctionKeyPad[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_PUTTYFUNCTION_KEYPAD),\
+ help = STRING_TOKEN (STR_PUTTYFUNCTION_KEYPAD_HELP),\
+ option text = STRING_TOKEN (STR_VT100), \
+ value = PUTTY_VT100, \
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED; \
+ option text = STRING_TOKEN (STR_LINUX), \
+ value = PUTTY_LINUX, \
+ flags = 0; \
+ option text = STRING_TOKEN (STR_XTERMR6), \
+ value = PUTTY_XTERMR6, \
+ flags = 0; \
+ option text = STRING_TOKEN (STR_SCO), \
+ value = PUTTY_SCO, \
+ flags = 0; \
+ option text = STRING_TOKEN (STR_ESCN), \
+ value = PUTTY_ESCN, \
+ flags = 0; \
+ option text = STRING_TOKEN (STR_VT400), \
+ value = PUTTY_VT400, \
+ flags = 0; \
+ endoneof;
+
+#if (INSTALL_LEGACY_OS_THROUGH_REMOTE == 1)
+#define TERMINAL_ONEOF_INSTALLLEGACYOSTHROUGHREMOTE(PORT_NUM)\
+ checkbox varid = SETUP_DATA.InstallLegacyOSthroughRemote[PORT_NUM],\
+ prompt = STRING_TOKEN(STR_FORCE_SYSTEM_VGA_TO_TEXT_MODE),\
+ help = STRING_TOKEN(STR_FORCE_SYSTEM_VGA_TO_TEXT_MODE_HELP),\
+ flags = INSTALL_LEGACY_OS_THROUGH_REMOTE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+#else
+#define TERMINAL_ONEOF_INSTALLLEGACYOSTHROUGHREMOTE(PORT_NUM)
+#endif
+
+#define TERMINAL_ONEOF_REDIRECTIONAFTERBIOSENABLE(PORT_NUM)\
+ oneof varid = SETUP_DATA.RedirectionAfterBiosPost[PORT_NUM],\
+ prompt = STRING_TOKEN (STR_REDIRECTION_AFTER_BIOS_POST),\
+ help = STRING_TOKEN (STR_REDIRECTION_AFTER_BIOS_POST_HELP),\
+ option text = STRING_TOKEN (STR_ALWAY_ENABLE),\
+ value = 0,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_BOOTLOADER),\
+ value = 1,\
+ flags = 0;\
+ endoneof;
+//---------------------------------------------------------------------------
+// DEFINES USED IN PORT_SUB_PAGE MACRO END
+//---------------------------------------------------------------------------
+
+//---------------------------------------------------------------------------
+// DEFINES USED IN PORT_CONTROLS and PORT_CONTROLS_PCI MACRO START
+//---------------------------------------------------------------------------
+
+#define TERMINAL_ONEOF_CONSOLEREDIRECTIONENABLE(PORT_NUM,DEFAULT_CONSOLE_REDIRECTION_ENABLE)\
+ checkbox varid = SETUP_DATA.ConsoleRedirectionEnable[PORT_NUM],\
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION),\
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_ENABLE_HELP),\
+ flags = DEFAULT_CONSOLE_REDIRECTION_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#endif
+//---------------------------------------------------------------------------
+// DEFINES USED IN PORT_CONTROLS and PORT_CONTROLS_PCI MACRO END
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+#define TERMINAL_CHECKBOX_ACPISPCRCONSOLEREDIRECTIONENABLE\
+ checkbox varid = SETUP_DATA.AcpiSpcrConsoleRedirectionEnable,\
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION),\
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_ENABLE_HELP),\
+ flags = DEFAULT_ACPI_SPCR_CONSOLE_REDIRECTION_ENABLE | MANUFACTURING | RESET_REQUIRED,\
+ endcheckbox;
+
+#define TERMINAL_ONEOF_ACPISPCRTERMINALTYPE\
+ oneof varid = SETUP_DATA.AcpiSpcrTerminalType,\
+ prompt = STRING_TOKEN (STR_TERMINAL_TYPE),\
+ help = STRING_TOKEN (STR_OUT_OF_BAND_MGMT_TERMINAL_TYPE_HELP),\
+ option text = STRING_TOKEN (STR_VT100),\
+ value = 0,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT100_PLUS),\
+ value = 1,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_VT_UTF8),\
+ value = 2,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_ANSI),\
+ value = 3,\
+ flags = 0;\
+ endoneof;
+
+#define TERMINAL_ONEOF_ACPISPCRBAUDRATE\
+ oneof varid = SETUP_DATA.AcpiSpcrBaudRate,\
+ prompt = STRING_TOKEN (STR_BAUD_RATE),\
+ help = STRING_TOKEN (STR_BAUD_RATE_HELP),\
+ option text = STRING_TOKEN (STR_9600),\
+ value = 3,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_19200),\
+ value = 4,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_57600),\
+ value = 6,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_115200),\
+ value = 7,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ endoneof;
+
+#define TERMINAL_ONEOF_ACPISPCRFLOWCONTROL\
+ oneof varid = SETUP_DATA.AcpiSpcrFlowControl,\
+ prompt = STRING_TOKEN (STR_FLOW_CTRL),\
+ help = STRING_TOKEN (STR_FLOW_CTRL_HELP),\
+ option text = STRING_TOKEN (STR_NONE),\
+ value = 0,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_HARDWARE_FLOW_CTRL),\
+ value = HARDWARE_FLOW_CONTROL_SETUP_OPTION,\
+ flags = 0;\
+ option text = STRING_TOKEN (STR_SOFTWARE_FLOW_CTRL),\
+ value = SOFTWARE_FLOW_CONTROL_SETUP_OPTION,\
+ flags = 0;\
+ endoneof;
+
+#else
+ #define TERMINAL_CHECKBOX_ACPISPCRCONSOLEREDIRECTIONENABLE
+ #define TERMINAL_ONEOF_ACPISPCRTERMINALTYPE
+ #define TERMINAL_ONEOF_ACPISPCRBAUDRATE
+ #define TERMINAL_ONEOF_ACPISPCRFLOWCONTROL
+#endif // END #if (TOTAL_SERIAL_PORTS > 0)
+
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+//---------------------------------------------------------------------------
+// PCI PORT OPTION TEXT INDEX DEFINITION
+//---------------------------------------------------------------------------
+
+#if (TOTAL_PCI_SERIAL_PORTS > 0) && (TOTAL_SIO_SERIAL_PORTS == 0)
+
+#define PCI_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT0),\
+ value = PCI_SERIAL_PORT_0_INDEX,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
+
+#else
+
+#define PCI_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT0),\
+ value = PCI_SERIAL_PORT_0_INDEX,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS > 0) && (TOTAL_SIO_SERIAL_PORTS == 0)
+
+
+//---------------------------------------------------------------------------
+// PCI PORT OPTION TEXT DEFINITION START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_PCI_SERIAL_PORTS == 0)
+
+ #define PCI_PORT_OPTION_TEXT
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS == 0)
+
+#if (TOTAL_PCI_SERIAL_PORTS == 1)
+
+#define PCI_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT_INDEX
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS == 1)
+
+#if (TOTAL_PCI_SERIAL_PORTS == 2)
+
+#define PCI_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT1),\
+ value = PCI_SERIAL_PORT_1_INDEX,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS == 2)
+
+#if (TOTAL_PCI_SERIAL_PORTS == 3)
+
+#define PCI_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT1),\
+ value = PCI_SERIAL_PORT_1_INDEX,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT2),\
+ value = PCI_SERIAL_PORT_2_INDEX,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS == 3)
+
+#if (TOTAL_PCI_SERIAL_PORTS == 4)
+
+#define PCI_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT1),\
+ value = PCI_SERIAL_PORT_1_INDEX,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT2),\
+ value = PCI_SERIAL_PORT_2_INDEX,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_PCI_SERIAL_PORT3),\
+ value = PCI_SERIAL_PORT_3_INDEX,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_PCI_SERIAL_PORTS == 4)
+
+//---------------------------------------------------------------------------
+// PCI PORT OPTION TEXT DEFINITION END
+//---------------------------------------------------------------------------
+
+//---------------------------------------------------------------------------
+// SIO PORT OPTION TEXT INDEX DEFINITION START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SIO_SERIAL_PORTS > 0)
+
+#define SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT0),\
+ value = TERMINAL_PORT0,\
+ flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS > 0)
+
+//---------------------------------------------------------------------------
+// SIO PORT OPTION TEXT INDEX DEFINITION END
+//---------------------------------------------------------------------------
+
+//---------------------------------------------------------------------------
+// SIO PORT OPTION TEXT DEFINITION START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SIO_SERIAL_PORTS == 0)
+
+ #define SIO_PORT_OPTION_TEXT
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 0)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 1)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 1)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 2)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 2)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 3)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 3)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 4)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 4)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 5)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 5)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 6)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT5),\
+ value = TERMINAL_PORT5,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 6)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 7)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT5),\
+ value = TERMINAL_PORT5,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT6),\
+ value = TERMINAL_PORT6,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 7)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 8)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT5),\
+ value = TERMINAL_PORT5,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT6),\
+ value = TERMINAL_PORT6,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT7),\
+ value = TERMINAL_PORT7,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 8)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 9)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT5),\
+ value = TERMINAL_PORT5,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT6),\
+ value = TERMINAL_PORT6,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT7),\
+ value = TERMINAL_PORT7,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT8),\
+ value = TERMINAL_PORT8,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 9)
+
+#if (TOTAL_SIO_SERIAL_PORTS == 10)
+
+#define SIO_PORT_OPTION_TEXT\
+ SIO_PORT_OPTION_TEXT_INDEX\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT1),\
+ value = TERMINAL_PORT1,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT2),\
+ value = TERMINAL_PORT2,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT3),\
+ value = TERMINAL_PORT3,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT4),\
+ value = TERMINAL_PORT4,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT5),\
+ value = TERMINAL_PORT5,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT6),\
+ value = TERMINAL_PORT6,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT7),\
+ value = TERMINAL_PORT7,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT8),\
+ value = TERMINAL_PORT8,\
+ flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN (STR_SIO_SERIAL_PORT9),\
+ value = TERMINAL_PORT9,\
+ flags = RESET_REQUIRED;
+
+#endif // END #if (TOTAL_SIO_SERIAL_PORTS == 10)
+
+#endif // END #if ()
+
+//---------------------------------------------------------------------------
+// SIO PORT OPTION TEXT DEFINITION END
+//---------------------------------------------------------------------------
+
+
+//---------------------------------------------------------------------------
+// AcpiSpcrPort VARIABLE DEFINITION START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+#define TERMINAL_ONEOF_ACPISPCRPORT\
+ oneof varid = SETUP_DATA.AcpiSpcrPort,\
+ prompt = STRING_TOKEN (STR_OUT_OF_BAND_MANAGEMENT_PORT),\
+ help = STRING_TOKEN (STR_OUT_OF_BAND_MANAGEMENT_PORT_HELP),\
+ SIO_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT\
+ endoneof;
+
+#endif // ((TOTAL_SERIAL_PORTS > 0)
+
+#ifndef TERMINAL_ONEOF_ACPISPCRPORT
+ #define TERMINAL_ONEOF_ACPISPCRPORT
+#endif // END #ifndef TERMINAL_ONEOF_ACPISPCRPORT
+
+//---------------------------------------------------------------------------
+// AcpiSpcrPort VARIABLE DEFINITION END
+//---------------------------------------------------------------------------
+
+//---------------------------------------------------------------------------
+// ComPortforLegacy VARIABLE DEFINITION START
+//---------------------------------------------------------------------------
+
+#if (TOTAL_SERIAL_PORTS > 1)
+
+#define TERMINAL_ONEOF_LEGACYPORT\
+ oneof varid = SETUP_DATA.ComPortforLegacy,\
+ prompt = STRING_TOKEN (STR_COM_FOR_LEGACY_REDIRECTION),\
+ help = STRING_TOKEN (STR_COM_FOR_LEGACY_REDIRECTION_HELP),\
+ SIO_PORT_OPTION_TEXT\
+ PCI_PORT_OPTION_TEXT\
+ endoneof;
+
+#endif // END #if (TOTAL_SERIAL_PORTS > 1)
+
+#ifndef TERMINAL_ONEOF_LEGACYPORT
+ #define TERMINAL_ONEOF_LEGACYPORT
+#endif // END #ifndef TERMINAL_ONEOF_LEGACYPORT
+
+//---------------------------------------------------------------------------
+// ComPortforLegacy VARIABLE DEFINITION END
+//---------------------------------------------------------------------------
+
+#endif // END #ifdef CONTROL_DEFINITION
+
+#ifdef CONTROLS_WITH_DEFAULTS
+ TERMINAL_CHECKBOX_DEBUGGERCONSOLEREDIRECTIONENABLE
+ TERMINAL_ONEOF_DEBUGGERTERMINALTYPE
+#if (TOTAL_SERIAL_PORTS > 0)
+ TERMINAL_ONEOF_TERMINALTYPE(PORT_NUM)
+ TERMINAL_ONEOF_BAUDRATE(PORT_NUM)
+ TERMINAL_ONEOF_DATABITS(PORT_NUM)
+ TERMINAL_ONEOF_PARITY(PORT_NUM)
+ TERMINAL_ONEOF_STOPBITS(PORT_NUM)
+ TERMINAL_ONEOF_FLOWCONTROL(PORT_NUM)
+ TERMINAL_ONEOF_VTUTF8(PORT_NUM)
+ TERMINAL_ONEOF_RECORDERMODE(PORT_NUM)
+ TERMINAL_ONEOF_RESOLUTION(PORT_NUM)
+ TERMINAL_ONEOF_LEGACYOSRESOLUTION(PORT_NUM)
+ TERMINAL_ONEOF_PUTTYFUNCTIONKEYPAD(PORT_NUM)
+ TERMINAL_ONEOF_REDIRECTIONAFTERBIOSENABLE(PORT_NUM)
+#if (INSTALL_LEGACY_OS_THROUGH_REMOTE == 1)
+ TERMINAL_ONEOF_INSTALLLEGACYOSTHROUGHREMOTE(PORT_NUM)
+#endif
+ TERMINAL_ONEOF_CONSOLEREDIRECTIONENABLE(PORT_NUM,DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+ TERMINAL_CHECKBOX_ACPISPCRCONSOLEREDIRECTIONENABLE
+ TERMINAL_ONEOF_ACPISPCRTERMINALTYPE
+ TERMINAL_ONEOF_ACPISPCRBAUDRATE
+ TERMINAL_ONEOF_ACPISPCRFLOWCONTROL
+ TERMINAL_ONEOF_ACPISPCRPORT
+#endif
+#endif // END #ifdef CONTROLS_WITH_DEFAULTS
+////////////////////////////////////
+
+#ifdef ADVANCED_FORM_SET
+
+#ifndef SUPPRESS_GRAYOUT_ENDIF //old Core
+#define SUPPRESS_GRAYOUT_ENDIF endif;
+#endif
+
+
+ #ifdef FORM_SET_GOTO
+ goto TERMINAL_FORM_ID,
+ prompt = STRING_TOKEN(STR_TERMINAL_FORM_TITLE),
+ help = STRING_TOKEN(STR_TERMINAL_FORM_TITLE);
+ #endif
+
+
+ #ifdef FORM_SET_FORM
+
+ #ifndef TERMINAL_FORM_MAIN
+ #define TERMINAL_FORM_MAIN
+ form formid = AUTO_ID(TERMINAL_FORM_ID),
+ title = STRING_TOKEN(STR_TERMINAL_FORM_TITLE);
+
+////////////////////////////////////
+
+#if (TOTAL_SERIAL_PORTS == 0)
+
+ SEPARATOR
+ SUBTITLE(STRING_TOKEN(STR_NO_SERIAL_PORTS_PRESENT))
+
+#else
+
+////////////////////////////////////
+
+#define PORT_CONTROLS(SUBTITLE_STR_TOKEN, FORM_ID, PORT_NUM,DEFAULT_CONSOLE_REDIRECTION_ENABLE) \
+ SEPARATOR \
+ SUBTITLE(SUBTITLE_STR_TOKEN) \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==1; \
+ text \
+ help = STRING_TOKEN(STR_BLANK), \
+ text = STRING_TOKEN(STR_CONSOLE_REDIRECTION), \
+ text = STRING_TOKEN(STR_PORT_IS_DISABLED), \
+ flags = 0, \
+ key = 0; \
+ endif; \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==0; \
+ TERMINAL_ONEOF_CONSOLEREDIRECTIONENABLE(PORT_NUM,DEFAULT_CONSOLE_REDIRECTION_ENABLE) \
+ endif; \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==0; \
+ grayoutif ideqval SETUP_DATA.ConsoleRedirectionEnable[PORT_NUM] == 0; \
+ goto FORM_ID, \
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS), \
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS_HELP); \
+ SUPPRESS_GRAYOUT_ENDIF
+
+#define PORT_CONTROLS_PCI(SUBTITLE_STR_TOKEN, FORM_ID, PORT_NUM, DEFAULT_PCI_CONSOLE_REDIRECTION_ENABLE) \
+ SEPARATOR \
+ SUBTITLE(SUBTITLE_STR_TOKEN) \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==1; \
+ text \
+ help = STRING_TOKEN(STR_BLANK), \
+ text = STRING_TOKEN(STR_CONSOLE_REDIRECTION), \
+ text = STRING_TOKEN(STR_PORT_IS_DISABLED), \
+ flags = 0, \
+ key = 0; \
+ endif; \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==0; \
+ TERMINAL_ONEOF_CONSOLEREDIRECTIONENABLE(PORT_NUM,DEFAULT_PCI_CONSOLE_REDIRECTION_ENABLE) \
+ endif; \
+\
+ suppressif ideqval SERIAL_PORTS_ENABLED_VAR.PortsEnabled[PORT_NUM]==0; \
+ grayoutif ideqval SETUP_DATA.ConsoleRedirectionEnable[PORT_NUM] == 0; \
+ goto FORM_ID, \
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS), \
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS_HELP); \
+ SUPPRESS_GRAYOUT_ENDIF
+
+#if (TOTAL_SIO_SERIAL_PORTS > 0)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT0), COM0_FORM_ID, TERMINAL_PORT0, COM0_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 1)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT1), COM1_FORM_ID, TERMINAL_PORT1, COM1_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 2)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT2), COM2_FORM_ID, TERMINAL_PORT2, COM2_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 3)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT3), COM3_FORM_ID, TERMINAL_PORT3, COM3_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 4)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT4), COM4_FORM_ID, TERMINAL_PORT4, COM4_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 5)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT5), COM5_FORM_ID, TERMINAL_PORT5, COM5_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 6)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT6), COM6_FORM_ID, TERMINAL_PORT6, COM6_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 7)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT7), COM7_FORM_ID, TERMINAL_PORT7, COM7_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 8)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT8), COM8_FORM_ID, TERMINAL_PORT8, COM8_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 9)
+ PORT_CONTROLS(STRING_TOKEN(STR_SIO_SERIAL_PORT9), COM9_FORM_ID, TERMINAL_PORT9, COM9_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+////////////////////////////////////
+
+#if (TOTAL_PCI_SERIAL_PORTS > 0)
+ PORT_CONTROLS_PCI(STRING_TOKEN(STR_PCI_SERIAL_PORT0), PCI_SERIAL0_FORM_ID,
+ PCI_SERIAL_PORT_0_INDEX, PCI0_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 1)
+ PORT_CONTROLS_PCI(STRING_TOKEN(STR_PCI_SERIAL_PORT1), PCI_SERIAL1_FORM_ID,
+ PCI_SERIAL_PORT_1_INDEX, PCI1_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 2)
+ PORT_CONTROLS_PCI(STRING_TOKEN(STR_PCI_SERIAL_PORT2), PCI_SERIAL2_FORM_ID,
+ PCI_SERIAL_PORT_2_INDEX, PCI2_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 3)
+ PORT_CONTROLS_PCI(STRING_TOKEN(STR_PCI_SERIAL_PORT3), PCI_SERIAL3_FORM_ID,
+ PCI_SERIAL_PORT_3_INDEX, PCI3_DEFAULT_CONSOLE_REDIRECTION_ENABLE)
+#endif
+
+#endif
+////////////////////////////////////
+
+ SEPARATOR
+#ifdef CONSOLE_REDIRECTION_SUPPORT
+#if CONSOLE_REDIRECTION_SUPPORT == 1
+
+ SUBTITLE(STRING_TOKEN(STR_DEBUGGER_TERMINAL))
+
+ suppressif ideqval DEBUGGER_SERIAL_PORTS_ENABLED_VAR.PortEnabled == 1;
+ text
+ help = STRING_TOKEN(STR_BLANK),
+ text = STRING_TOKEN(STR_CONSOLE_REDIRECTION),
+ text = STRING_TOKEN(STR_PORT_IS_DISABLED),
+ flags = 0,
+ key = 0;
+ endif;
+
+
+ suppressif ideqval DEBUGGER_SERIAL_PORTS_ENABLED_VAR.PortEnabled==0;
+ TERMINAL_CHECKBOX_DEBUGGERCONSOLEREDIRECTIONENABLE
+ endif;
+
+ suppressif ideqval DEBUGGER_SERIAL_PORTS_ENABLED_VAR.PortEnabled==0;
+ grayoutif ideqval SETUP_DATA.DebuggerConsoleRedirectionEnable == 0;
+ TERMINAL_ONEOF_DEBUGGERTERMINALTYPE
+ SUPPRESS_GRAYOUT_ENDIF
+
+ SEPARATOR
+#endif
+#endif
+
+
+#if (TOTAL_SERIAL_PORTS > 0)
+ SUBTITLE(STRING_TOKEN(STR_LEGACY_CONSOLE_REDIRECTION))
+
+ goto LEGACYSREDIR_FORM_ID,
+ prompt = STRING_TOKEN(STR_LEGACY_CONSOLE_REDIRECTION_SETTINGS),
+ help = STRING_TOKEN(STR_LEGACY_CONSOLE_REDIRECTION_SETTINGS);
+
+ SEPARATOR
+#endif
+
+#if (TOTAL_SERIAL_PORTS > 0)
+ SUBTITLE(STRING_TOKEN(STR_SERIAL_PORT_FOR_OUT_OF_BAND_MGMT))
+#else
+ SUBTITLE(STRING_TOKEN(STR_NO_SERIAL_PORT_FOR_OUT_OF_BAND_MGMT))
+#endif
+
+ SUBTITLE(STRING_TOKEN(STR_EMERGENCY_MANAGEMENT_SERIVCES_EMS))
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+ TERMINAL_CHECKBOX_ACPISPCRCONSOLEREDIRECTIONENABLE
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ goto SPCR_FORM_ID,
+ prompt = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS),
+ help = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS_HELP);
+ endif;
+
+#endif
+ endform;
+#endif // END #if TERMINAL_FORM_MAIN
+
+ #ifndef TERMINAL_FORM_SPCR
+ #define TERMINAL_FORM_SPCR
+
+ form formid = AUTO_ID(SPCR_FORM_ID),
+ title = STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS);
+
+#if ((TOTAL_SERIAL_PORTS == 1) && (TOTAL_SIO_SERIAL_PORTS == 1))
+
+ suppressif ideqval SETUP_DATA.AcpiSpcrSetupDummyVar == 0;
+ TERMINAL_ONEOF_ACPISPCRPORT
+ endif;
+
+ text
+ help = STRING_TOKEN(STR_OUT_OF_BAND_MANAGEMENT_PORT_HELP),
+ text = STRING_TOKEN(STR_OUT_OF_BAND_MANAGEMENT_PORT),
+ text = STRING_TOKEN(STR_SIO_SERIAL_PORT0),
+ flags = 0,
+ key = 0;
+
+#endif //if ((TOTAL_SERIAL_PORTS == 1) && (TOTAL_SIO_SERIAL_PORTS == 1))
+
+#if ((TOTAL_SERIAL_PORTS == 1) && (TOTAL_PCI_SERIAL_PORTS == 1))
+
+ suppressif ideqval SETUP_DATA.AcpiSpcrSetupDummyVar == 0;
+ TERMINAL_ONEOF_ACPISPCRPORT
+ endif;
+
+ text
+ help = STRING_TOKEN(STR_OUT_OF_BAND_MANAGEMENT_PORT_HELP),
+ text = STRING_TOKEN(STR_OUT_OF_BAND_MANAGEMENT_PORT),
+ text = STRING_TOKEN(STR_PCI_SERIAL_PORT0),
+ flags = 0,
+ key = 0;
+
+#endif //if ((TOTAL_SERIAL_PORTS == 1) && (TOTAL_PCI_SERIAL_PORTS == 1))
+
+#if (TOTAL_SERIAL_PORTS > 1)
+
+ TERMINAL_ONEOF_ACPISPCRPORT
+
+#endif //if (TOTAL_SERIAL_PORTS > 1)
+
+#if (TOTAL_SERIAL_PORTS > 0)
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ TERMINAL_ONEOF_ACPISPCRTERMINALTYPE
+ endif;
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ TERMINAL_ONEOF_ACPISPCRBAUDRATE
+ endif;
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ TERMINAL_ONEOF_ACPISPCRFLOWCONTROL
+ endif;
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ text
+ help = STRING_TOKEN(STR_DATA_BITS_HELP),
+ text = STRING_TOKEN(STR_DATA_BITS),
+ text = STRING_TOKEN(STR_8),
+ flags = 0,
+ key = 0;
+ endif;
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ text
+ help = STRING_TOKEN(STR_PARITY_HELP),
+ text = STRING_TOKEN(STR_PARITY),
+ text = STRING_TOKEN(STR_NONE),
+ flags = 0,
+ key = 0;
+ endif;
+
+ grayoutif ideqval SETUP_DATA.AcpiSpcrConsoleRedirectionEnable == 0;
+ text
+ help = STRING_TOKEN(STR_STOP_BITS_HELP),
+ text = STRING_TOKEN(STR_STOP_BITS),
+ text = STRING_TOKEN(STR_1),
+ flags = 0,
+ key = 0;
+ endif;
+
+#endif //if (TOTAL_SERIAL_PORTS > 0)
+
+ endform;
+
+#endif // END #if TERMINAL_FORM_SPCR
+
+#ifndef LEGACYSREDIR_FORM
+#define LEGACYSREDIR_FORM
+
+ form formid = AUTO_ID(LEGACYSREDIR_FORM_ID),
+ title = STRING_TOKEN(STR_LEGACY_CONSOLE_REDIRECTION_SETTINGS);
+
+ TERMINAL_ONEOF_LEGACYPORT
+
+ endform;
+#endif // END #if LEGACYSREDIR_FORM
+
+
+
+
+#endif //ifdef FORM_SET_FORM
+
+
+#define PORT_SUB_PAGE(TITLE_STR_TOKEN, SUBTITLE_STR_TOKEN, \
+ FORM_ID, PORT_NUM) \
+\
+ form formid = FORM_ID, \
+ title = TITLE_STR_TOKEN; \
+\
+ SUBTITLE_STR_TOKEN \
+ SUBTITLE(STRING_TOKEN(STR_CONSOLE_REDIRECTION_SETTINGS)) \
+ SEPARATOR \
+\
+ TERMINAL_ONEOF_TERMINALTYPE(PORT_NUM) \
+\
+ TERMINAL_ONEOF_BAUDRATE(PORT_NUM) \
+\
+ TERMINAL_ONEOF_DATABITS(PORT_NUM) \
+\
+ TERMINAL_ONEOF_PARITY(PORT_NUM) \
+\
+ TERMINAL_ONEOF_STOPBITS(PORT_NUM) \
+\
+ TERMINAL_ONEOF_FLOWCONTROL(PORT_NUM) \
+\
+ TERMINAL_ONEOF_VTUTF8(PORT_NUM) \
+\
+ TERMINAL_ONEOF_RECORDERMODE(PORT_NUM) \
+\
+ TERMINAL_ONEOF_RESOLUTION(PORT_NUM) \
+\
+ TERMINAL_ONEOF_LEGACYOSRESOLUTION(PORT_NUM) \
+\
+ TERMINAL_ONEOF_PUTTYFUNCTIONKEYPAD(PORT_NUM) \
+\
+ TERMINAL_ONEOF_INSTALLLEGACYOSTHROUGHREMOTE(PORT_NUM)\
+\
+ TERMINAL_ONEOF_REDIRECTIONAFTERBIOSENABLE(PORT_NUM)\
+\
+ SEPARATOR \
+\
+ endform;
+
+////////////////////////////////////
+
+#if (TOTAL_SIO_SERIAL_PORTS > 0)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT0),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT0)),
+ AUTO_ID(COM0_FORM_ID), TERMINAL_PORT0)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 1)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT1),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT1)),
+ AUTO_ID(COM1_FORM_ID), TERMINAL_PORT1)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 2)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT2),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT2)),
+ AUTO_ID(COM2_FORM_ID), TERMINAL_PORT2)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 3)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT3),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT3)),
+ AUTO_ID(COM3_FORM_ID), TERMINAL_PORT3)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 4)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT4),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT4)),
+ AUTO_ID(COM4_FORM_ID), TERMINAL_PORT4)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 5)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT5),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT5)),
+ AUTO_ID(COM5_FORM_ID), TERMINAL_PORT5)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 6)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT6),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT6)),
+ AUTO_ID(COM6_FORM_ID), TERMINAL_PORT6)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 7)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT7),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT7)),
+ AUTO_ID(COM7_FORM_ID), TERMINAL_PORT7)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 8)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT8),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT8)),
+ AUTO_ID(COM8_FORM_ID), TERMINAL_PORT8)
+ #endif
+#endif
+
+#if (TOTAL_SIO_SERIAL_PORTS > 9)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_SIO_SERIAL_PORT9),
+ SUBTITLE(STRING_TOKEN(STR_SIO_SERIAL_PORT9)),
+ AUTO_ID(COM9_FORM_ID), TERMINAL_PORT9)
+ #endif
+#endif
+
+////////////////////////////////////
+
+#if (TOTAL_PCI_SERIAL_PORTS > 0)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_PCI_SERIAL_PORT0),
+ SUBTITLE(STRING_TOKEN(STR_PCI_SERIAL_PORT0)),
+ AUTO_ID(PCI_SERIAL0_FORM_ID), PCI_SERIAL_PORT_0_INDEX)
+ #endif
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 1)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_PCI_SERIAL_PORT1),
+ SUBTITLE(STRING_TOKEN(STR_PCI_SERIAL_PORT1)),
+ AUTO_ID(PCI_SERIAL1_FORM_ID), PCI_SERIAL_PORT_1_INDEX)
+ #endif
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 2)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_PCI_SERIAL_PORT2),
+ SUBTITLE(STRING_TOKEN(STR_PCI_SERIAL_PORT2)),
+ AUTO_ID(PCI_SERIAL2_FORM_ID), PCI_SERIAL_PORT_2_INDEX)
+ #endif
+#endif
+
+#if (TOTAL_PCI_SERIAL_PORTS > 3)
+ #ifdef FORM_SET_FORM
+ PORT_SUB_PAGE(STRING_TOKEN(STR_PCI_SERIAL_PORT3),
+ SUBTITLE(STRING_TOKEN(STR_PCI_SERIAL_PORT3)),
+ AUTO_ID(PCI_SERIAL3_FORM_ID), PCI_SERIAL_PORT_3_INDEX)
+ #endif
+#endif
+////////////////////////////////////
+
+#endif //ifdef ADVANCED_FORM_SET
+
+//****************************************************************************
+//****************************************************************************
+//** **
+//** (C)Copyright 1985-2014, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone (770)-246-8600 **
+//** **
+//****************************************************************************
+//****************************************************************************