.An example script is shown below:
// BIOSMOD Script to edit the default flat panel EDID // Struct EDIDAHeader find // * HEADER * (8 bytes) // EDID_1_HEAD byte 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00 // * Vendor/Product ID * (10 bytes) // MFG_NAME //RECORD chr2l:3=0, chr3:5=0Dh, rsv:1=0, chr1:5=0Bh, chr2h:2=2 word 0000110100101110b byte ? // ID Product Code byte ? dword ? // ID Serial Number byte ? // Week byte ? // Year // * EDID Structure Version * (2 bytes) byte 1 // Version byte 2 // Revision EndStruct Struct EDIDA at EDIDAHeader+0x0014 // * Basic Display Parameters / Features * (5 bytes) label EDIDAVideoInputDefiniton byte ? // Video Input Definition byte ? // Max Horizontal Image Size byte ? // Max Vertial Image Size byte ? // Gamma byte ? // Feature Support (DPMS) // * Color Characteristics * (10 bytes) byte ? // byte ? // byte ? // byte ? // byte ? // byte ? // byte ? // byte ? // byte ? // byte ? // // * Established Timings * (3 bytes) label EDIDAEstablishedTimingI byte ? // Established Timings I label EDIDAEstablishedTimingII byte ? // Established Timings II label EDIDAManufacturesTimings byte ? // Manufacture Timings // * Standard Timing Identification * (16 bytes) byte ? byte ? word ? word ? word ? word ? word ? word ? word ? // * Detailed Timing Description * (72 bytes) label EDIDAPixelClock word ? // Pixel Clock / 10,000 label EDIDAHorizontalActive byte ? // Horizontal Active label EDIDAHorizontalBlanking byte ? // Horizontal Blanking label EDIDAhorizontalActiveBlanking byte ? // Horizontal Active Blanking label EDIDAVerticalActive byte ? // Vertical Active label EDIDAVerticalBlanking byte ? // Vertical Blanking label EDIDAVerticalActiveBlanking byte ? // Vertical Active/Blanking MSN label EDIDAHorizontalSyncOffset byte ? // Horizontal Sync Offset label EDIDAHorizontalSyncPulseWidth byte ? // Horizontal Sync Pulse Width label EDIDAVerticalSyncOffsetPulseWidth byte ? // Vertical Sync_Offset/Pulse Width label EDIDAHorizVertSync byte ? // Horiz/Vert Sync label EDIDAHorizontalImageSize byte ? // Horizontal Image Size label EDIDAVerticalImageSize byte ? // Vertial Image Size label EDIDAHorizVertImageSize byte ? // Horiz/Vert Image Size label EDIDAHorizontalBorder byte ? // Horizontal Border label EDIDAVerticalBoarder byte ? // Vertical Border label EDIDAFlags byte ? // Flags skip 18 skip 18 skip 18 // * Extension Flag * (1 byte) byte ? // * Checksum * (1 byte) label EDIDAChecksum byte ? EndStruct valueprompt EDIDAPixelClock, 'Pixel Clock / 10,000:', 10, EDIDAPixelClock:0:16 valueprompt EDIDAHorizontalActivePrompt, 'Horizontal Active:', 10, EDIDAHorizontalActive:0:8, EDIDAHorizontalActiveBlanking:4:4 valueprompt EDIDAHorizontalBlankingPrompt, 'Horizontal Blanking:', 10, EDIDAHorizontalBlanking:0:8, EDIDAHorizontalActiveBlanking:0:4 valueprompt EDIDAVerticalActivePrompt, 'Vertical Active:', 10, EDIDAVerticalActive:0:8, EDIDAVerticalActiveBlanking:4:4 valueprompt EDIDAVerticalBlankingPrompt, 'Vertical Blanking:', 10, EDIDAVerticalBlanking:0:8, EDIDAVerticalActiveBlanking:0:4 valueprompt EDIDAHorizontalSyncOffsetPrompt, 'Horizontal Sync Offset:', 10, EDIDAHorizontalSyncOffset:0:8, EDIDAHorizVertSync:6:2 valueprompt EDIDAHorizontalSyncPulseWidthPrompt, 'Horizontal Sync Pulse Width:', 10, EDIDAHorizontalSyncPulseWidth:0:8, EDIDAHorizVertSync:4:2 valueprompt EDIDAVerticalSyncOffsetPrompt, 'Vertical Sync Offset:', 10, EDIDAVerticalSyncOffsetPulseWidth:4:4, EDIDAHorizVertSync:2:2 valueprompt EDIDAVerticalSyncPulseWidthPrompt, 'Vertical Sync Pulse Width:', 10, EDIDAVerticalSyncOffsetPulseWidth:0:4, EDIDAHorizVertSync:0:2 valueprompt EDIDAHorizontalImageSizePrompt, 'Horizontal Image Size:', 10, EDIDAHorizontalImageSize:0:8, EDIDAHorizVertImageSize:4:4 valueprompt EDIDAVerticalImageSizePrompt, 'Vertial Image Size:', 10, EDIDAVerticalImageSize:0:8, EDIDAHorizVertImageSize:0:4 valueprompt EDIDAHorizontalBorderPrompt, 'Horizontal Border:', 10, EDIDAHorizontalBorder:0:8 valueprompt EDIDAVerticalBoarderPrompt, 'Vertical Border:', 10, EDIDAVerticalBoarder:0:8 valueprompt EDIDAInterlacedPrompt, 'Interlaced', 2, EDIDAFlags:7:1 EnumDef StereoEnum '( 000 ) No stereo', 0 '( 010 ) Field sequential stereo, right image when stereo sync = 1', 2 '( 100 ) Field sequential stereo, left image when stereo sync = 1', 4 '( 011 ) 2-way interleaved stereo, right image on even lines', 3 '( 101 ) 2-way interleaved stereo, left image on even lines', 5 '( 110 ) 4-way interleaved stereo', 6 '( 111 ) Side-by-side interleaved stereo', 7 EndEnumDef enumprompt StereoPrompt, 'Stereo:', StereoEnum, EDIDAFlags:5:2, EDIDAFlags:0:1 EnumDef SyncConfigurationEnum '( 00 00 ) Analog composite, no serration, green sync', 0x00 '( 00 01 ) Analog composite, no serration, RGB sync', 0x01 '( 00 10 ) Analog composite, serration, green sync', 0x02 '( 00 11 ) Analog composite, serration, RGB sync', 0x03 '( 01 00 ) Bipolar analog composite, no serration, green sync', 0x04 '( 01 01 ) Bipolar analog composite, no serration, RGB sync', 0x05 '( 01 10 ) Bipolar analog composite, serration, green sync', 0x06 '( 01 11 ) Bipolar analog composite, serration, RGB sync', 0x07 '( 10 00 ) Digital composite, no serration, compositive negative', 0x08 '( 10 01 ) Digital composite, no serration, compositive positive', 0x09 '( 10 10 ) Digital composite, serration, compositive negative', 0x0A '( 10 11 ) Digital composite, serration, compositive positive', 0x0B '( 11 00 ) Digital separate, vsync negative, hsync negative', 0x0C '( 11 01 ) Digital separate, vsync negative, hsync positive', 0x0D '( 11 10 ) Digital separate, vsync positive, hsync negative', 0x0E '( 11 11 ) Digital separate, vsync positive, hsync positive', 0x0F EndEnumDef enumprompt SyncConfigurationPrompt, 'Sync Configuration:', SyncConfigurationEnum, EDIDAFlags:1:4 checksum EDIDAHeader, EDIDAChecksum, EDIDAChecksum