Dodajem knjige
This commit is contained in:
@@ -0,0 +1,335 @@
|
||||
|
||||
{This file holds the public declarations for WHATVGA & utilities}
|
||||
|
||||
const
|
||||
{Memory Mode definitions}
|
||||
_text = 1;
|
||||
_txt2 = 2;
|
||||
_txt4 = 3;
|
||||
_herc = 4; {Hercules mono, 4 "banks" of 8kbytes}
|
||||
_cga1 = 5; {CGA 2 color, 2 "banks" of 16kbytes}
|
||||
_cga2 = 6; {CGA 4 color, 2 "banks" of 16kbytes}
|
||||
_pl1 = 7; {plain mono, 8 pixels per byte}
|
||||
_pl1e = 8; {mono odd/even, 8 pixels per byte, two planes}
|
||||
_pl2 = 9; {4 color odd/even planes}
|
||||
_pk2 = 10; {4 color "packed" pixels 4 pixels per byte}
|
||||
_pl4 = 11; {std EGA/VGA 16 color: 4 planes, 8 pixels per byte}
|
||||
_pk4 = 12; {ATI mode 65h two 16 color pixels per byte}
|
||||
_pk4a = 13; {As pk4, but reversed within byte}
|
||||
_pk4b = 14; {As pk4a, but planes 1&2 are reversed}
|
||||
_p8 = 15; {one 256 color pixel per byte}
|
||||
_p15 = 16; {Sierra 15 bit}
|
||||
_p16 = 17; {Sierra 16bit/XGA}
|
||||
_p24 = 18; {RGB 3bytes per pixel}
|
||||
_p24b = 19; {BGR 3bytes/pixel, but red first}
|
||||
_p32 = 20; {RGBa 3+1 bytes per pixel }
|
||||
_p32b = 21; {BGRa 3+1 bytes per pixel }
|
||||
_p32c = 22; {aRGR 3+1 bytes per pixel }
|
||||
_p32d = 23; {aBGR 3+1 bytes per pixel }
|
||||
max_mode = _p32d;
|
||||
|
||||
|
||||
{Primary chipset definitions}
|
||||
__none = 0;
|
||||
__EGA = 1;
|
||||
__VGA = 2;
|
||||
__chips = 3;
|
||||
__WD = 4; {Paradise/Western digital}
|
||||
__video7 = 5;
|
||||
__Tseng = 6;
|
||||
__trid = 7;
|
||||
__poach = 8;
|
||||
__everex = 9;
|
||||
__ati = 10;
|
||||
__genoa = 11;
|
||||
__oak = 12;
|
||||
__cirrus = 13;
|
||||
__ahead = 14;
|
||||
__ncr = 15;
|
||||
__yamaha = 16;
|
||||
__s3 = 17;
|
||||
__ALG = 18; {Avance Logic}
|
||||
__mxic = 19;
|
||||
__vesa = 20;
|
||||
__realtek = 21;
|
||||
__p2000 = 22;
|
||||
__cir54 = 23;
|
||||
__cir64 = 24;
|
||||
__Weitek = 25;
|
||||
__WeitekP9 = 26; {Weitek Power9000}
|
||||
__xga = 27;
|
||||
__compaq = 28;
|
||||
__AGX = 29;
|
||||
__Mach32 = 30;
|
||||
__Mach64 = 31;
|
||||
__UMC = 32;
|
||||
__HMC = 33;
|
||||
__Matrox = 34; {Matrox VGA}
|
||||
__ARK = 35;
|
||||
__Acer = 36;
|
||||
__SC = 37;
|
||||
__xbe = 38;
|
||||
__MV = 39; {MediaVision Pro Graphics}
|
||||
__MGA = 40; {Matrox (Native)}
|
||||
__Alli = 41; {Alliance Pro Motion}
|
||||
__IMAG = 42; {#9 Imagine 128}
|
||||
__SiS = 43; {SiS Sg86c201}
|
||||
max_chip = __SiS;
|
||||
|
||||
{DAC types}
|
||||
_dac0 = 0; {No DAC (MDA/CGA/EGA ..}
|
||||
_dac8 = 1; {Std VGA DAC 256 cols.}
|
||||
|
||||
_dacInt = 2; {Internal Hi/True color DAC}
|
||||
_dacCEG = 3; {Edsun CEG DAC}
|
||||
_dac15 = 4; {Sierra 32k DAC (SC11483)}
|
||||
_dac16 = 5; {Sierra 64k DAC}
|
||||
|
||||
_dacADAC1 = 10; {Acumos ADAC1 15/16/24 bit DAC}
|
||||
|
||||
_dacALG1101 = 20; {Avance Logic ALG1101 16bit DAC}
|
||||
_dacALG1201 = 21; {Avance Logic ALG1201 24 bit DAC}
|
||||
_dacALG1301 = 22; {Avance Logic ALG1301 24 bit DAC}
|
||||
|
||||
_dacATI68860 = 30; {ATI 68860 SpectraDAC}
|
||||
_dacATI68880 = 31;
|
||||
|
||||
_dacATT490 = 40; {ATT 20c490 15/16/24 bit DAC}
|
||||
_dacATT491 = 41; {ATT 20c491 15/16/24 bit DAC}
|
||||
_dacATT492 = 42; {ATT 20c492 15/16/24 bit DAC}
|
||||
_dacATT493 = 43; {ATT 20c493 15/16/24 bit DAC}
|
||||
|
||||
_dacATT504 = 50; {ATT 20c504}
|
||||
_dacATT505 = 51; {ATT 20c505}
|
||||
|
||||
_dacATT498 = 60; {ATT 20c498 15/16/24 bit DAC}
|
||||
_dacATT1498 = 61; {ATT 21c498 15/16/24 bit DAC}
|
||||
_dacATT2498 = 62; {ATT 22c498 15/16/24 bit DAC}
|
||||
|
||||
_dacBt477 = 70; {Bt477}
|
||||
_dacBt481 = 71; {Bt481}
|
||||
_dacBt482 = 72; {Bt482}
|
||||
_dacBt484 = 73; {BrookTree Bt484/5 or ATT20c504/5 DAC}
|
||||
_dacBt485 = 74; {BrookTree Bt484/5 or ATT20c504/5 DAC}
|
||||
|
||||
_dacCH8391 = 80; {CHRONTEL CH8391}
|
||||
_dacCH8398 = 81; {CHRONTEL CH8398}
|
||||
|
||||
_dacCL5200 = 90; {Cirrus Logic CL-GD5200}
|
||||
|
||||
_dacIBM514 = 100;
|
||||
_dacIBM524 = 101;
|
||||
_dacIBM525 = 102; {IBM RGB525}
|
||||
_dacIBM526 = 103;
|
||||
_dacIBM528 = 104;
|
||||
_dacIBM530 = 105;
|
||||
_dacIBM561 = 106;
|
||||
_dacIBM624 = 107;
|
||||
|
||||
_dacICW498 = 120;
|
||||
_dacICW516 = 121;
|
||||
|
||||
_dacMU1880 = 130; {MUSIC 9c1880/Diamond SS24 DAC}
|
||||
_dacMU4870 = 131;
|
||||
_dacMU4910 = 132;
|
||||
_dacMU9910 = 133;
|
||||
|
||||
_dacS3_716 = 140;
|
||||
_dacS3_708 = 141;
|
||||
|
||||
_dacSC486 = 150; {Sierra SC11486 - 15bit DAC}
|
||||
_dacSC15021 = 151; {Sierra SC15021}
|
||||
_dacSC15025 = 152; {Sierra SC15025}
|
||||
|
||||
_dacSTG1700 = 160; {STG1700}
|
||||
_dacSTG1702 = 161; {STG1702}
|
||||
_dacSTG1703 = 162; {STG1703}
|
||||
|
||||
_dacTLC34075 = 170;
|
||||
_dacTLC34076 = 171;
|
||||
|
||||
_dacTR8001 = 180; {Trident TKD8001}
|
||||
|
||||
_dacTVP3010 = 190;
|
||||
_dacTVP3020 = 191;
|
||||
_dacTVP3025 = 192;
|
||||
_dacTVP3026 = 193;
|
||||
|
||||
_dacUMC188 = 200; {UMC UM70c188}
|
||||
|
||||
_dacICS5301 = 210; {ICS 5301}
|
||||
|
||||
|
||||
{Clock definitions}
|
||||
clk_unk = 0;
|
||||
clk_internal = 1; {Cirrus, Acumos}
|
||||
clk_ext2 = 2; {4 clks via 2 bits (Std VGA)}
|
||||
clk_ext3 = 3; {8 clks via 3 bits}
|
||||
clk_ext4 = 4; {16 clks via 4 bits}
|
||||
clk_ext5 = 5; {32 clks via 5 bits}
|
||||
clk_ext6 = 6; {64 clks via 3 bits}
|
||||
|
||||
clk_sigma = 7; {Sigma Legend "buffered" 5 bit}
|
||||
clk_ICD2061 = 8;
|
||||
clk_ICD2061A = 9;
|
||||
clk_sdac = 10; {S3 SDAC or GenDAC}
|
||||
clk_TVP302x = 11; {TI TVP 3020/3025}
|
||||
clk_ICS2595 = 12; {ICS 2595}
|
||||
clk_SC11412 = 13; {Sierra SC11412}
|
||||
clk_CHRON = 14; {Chrontel CH8391/8}
|
||||
clk_STG = 15; {STG1703}
|
||||
clk_MUSIC = 16; {MUSIC MU9c9910}
|
||||
clk_IBM52x = 17; {IBM RGB52x}
|
||||
|
||||
|
||||
{Flags for special features}
|
||||
ft_cursor = 1; {Has hardware cursor}
|
||||
ft_blit = 2; {Can do BitBLTs}
|
||||
ft_line = 4; {Can do lines}
|
||||
ft_rwbank = 8; {Suports seperate R/W banks}
|
||||
|
||||
|
||||
{Device Capabilities}
|
||||
FLG_StdVGA = 1; {Set for VGA type devices}
|
||||
FLG_ExtDAC = 2; {Set if we have RS2 or RS3 to the DAC}
|
||||
FLG_PCIbus = 4; {Set if teh card is in a PCI slot}
|
||||
|
||||
{DAC Flag bits, from DACflags}
|
||||
DFL_cmdreg = 1; {The DAC has a Hidden Command Register}
|
||||
DFL_8bit = 2; {The DAC can do 8bit (256 of 16M)}
|
||||
DFL_clock = 4; {The DAC has onchip clock generator}
|
||||
DFL_cursor = 8; {The DAC has a cursor}
|
||||
|
||||
|
||||
{Flag options for ModeType}
|
||||
MFL_enabled = 1; {Set if the mode is enabled}
|
||||
MFL_graphics = 2; {Set for graphics modes}
|
||||
MFL_vgamode = 4; {Set for standard VGA modes}
|
||||
|
||||
MFL_enGr = MFL_enabled or MFL_graphics; {Enabled Graphics modes}
|
||||
MFL_enVGA = MFL_enabled or MFL_vgamode; {Enabled Standard VGA mode}
|
||||
MFL_enGrVGA = MFL_enVGA or MFL_graphics; {Enabled Graphics Std VGA mode}
|
||||
|
||||
|
||||
header:array[0..max_chip] of string[14]=
|
||||
('','EGA','VGA','Chips&Tech','Paradise','Video7','Tseng','Trident'
|
||||
,'Poach','Everex','ATI','Genoa','Oak','Cirrus','Ahead','NCR'
|
||||
,'Yamaha','S3','ALG','MXIC','VESA','Realtek','PRIMUS','Cirrus54'
|
||||
,'Cirrus64','Weitek','WeitekP9','XGA','COMPAQ','AGX','Mach32'
|
||||
,'Mach64','UMC','HMC','Matrox','ARK','Acer','Sierra','XBE'
|
||||
,'MediaVision','MGA','Alliance','Imagine','SiS');
|
||||
|
||||
|
||||
{Short name for chip families}
|
||||
chipnam:array[0..max_chip] of string[8]=
|
||||
('','EGA','VGA','CT45x','WD','Video7','Tseng','Trident'
|
||||
,'Poach','Everex','ATI','Genoa','OAK','Cirrus','Ahead','NCR'
|
||||
,'Yamaha','S3','ALG','MXIC','VESA','Realtek','Primus','CL54xx'
|
||||
,'CL64xx','Weitek','P9000','XGA','Compaq','AGX','Mach32'
|
||||
,'Mach64','UMC','HMC','Matrox','ARK','ACER','SIERRA','XBE'
|
||||
,'MVision','MGA','Alliance','Imagine','SiS');
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{AutoTest flags & structures}
|
||||
|
||||
{AF test record IDs}
|
||||
AF_header = 0;
|
||||
AF_videosys = 1;
|
||||
AF_modeinfo = 2;
|
||||
AF_tcursor = 3; {Cursor test record ID}
|
||||
AF_tbitblt = 4; {BitBLT test record ID}
|
||||
AF_tline = 5; {LineDrv test record ID}
|
||||
AF_trwbank = 6; {RWbank test record ID}
|
||||
AF_tzoom = 7; {Zoom test record ID}
|
||||
AF_BIOSdmp = 255;
|
||||
|
||||
{AF Flag values}
|
||||
AFF_testok = 1; {Set if the test was succesful}
|
||||
AFF_dispok = 2; {Set if the mode was displayed ok}
|
||||
AFF_scroll = 4; {Set if the mode can be scrolled}
|
||||
AFF_scrollok = 8; {Set if the scroll test was ok}
|
||||
AFF_canceled = 16; {Set if the mode was canceled}
|
||||
|
||||
|
||||
type
|
||||
vidinfo=record
|
||||
chip:byte;
|
||||
flags:word; {Flags (FLG_}
|
||||
id:word; {instance}
|
||||
IOadr:word; {I/O adr}
|
||||
spcreg:word; {Special register offset (IIT)}
|
||||
Xseg:word;
|
||||
Phadr:longint;
|
||||
version:word; {version}
|
||||
subvers:word; {Subversion}
|
||||
dactype:word; {The dac type}
|
||||
dacname:string[20]; {The Name of the DACtype}
|
||||
mm:word; {#kilobytes of video memory}
|
||||
features:word; {Flags for special features}
|
||||
sname:string[8]; {Short chip family name}
|
||||
name:string[40]; {Full chip name}
|
||||
clktype:word; {Clock type (clk_)}
|
||||
clks:array[0..63] of longint; {Clocks in Hz}
|
||||
PCIid:byte;
|
||||
end;
|
||||
|
||||
_AT0=record
|
||||
SWvers:word; {SW version}
|
||||
vid_sys, {Number of video systems}
|
||||
cur_vid:word; {Currently selected video system (1..)}
|
||||
curtime:longint; {Date & time of the test}
|
||||
end;
|
||||
{This record followed by: (Email),(Name&Address),(Video desc)
|
||||
,(System),(modenames),(clock names)}
|
||||
|
||||
|
||||
{AT1 is the VIDINFO record, one per Video Subsystem}
|
||||
|
||||
_AT2=record
|
||||
mode:word;
|
||||
Mmode:byte; {Memory Model}
|
||||
pixels,
|
||||
lins,
|
||||
bytes,
|
||||
crtc,
|
||||
vseg:word;
|
||||
Cpixels,
|
||||
Clins,
|
||||
Cbytes,
|
||||
Cvseg:word;
|
||||
CMmode:byte; {Calculated mode}
|
||||
ChWidth,
|
||||
ChHeight,
|
||||
ExtPixf,
|
||||
ExtLinf:byte;
|
||||
Vclk,
|
||||
Hclk,
|
||||
Fclk:longint; {Freqs in Hz (Fclk is in mHz)}
|
||||
iLace:boolean;
|
||||
Flag:byte; {Test results (AFF_)}
|
||||
end;
|
||||
{This record followed by: (Comment), (reg values)}
|
||||
|
||||
_AT3=record {Used for }
|
||||
mode:word;
|
||||
Mmode:byte;
|
||||
Flag:byte; {Test results (AFF_)}
|
||||
end;
|
||||
{This record followed by: (Comment)}
|
||||
|
||||
_ATff=record
|
||||
int10,
|
||||
int6D,
|
||||
m4a8, {0:4A8h}
|
||||
fnt8h,
|
||||
fnt8l,
|
||||
fnt14,
|
||||
fnt14x9,
|
||||
fnt16,
|
||||
fnt16x9:word;
|
||||
Base:word;
|
||||
size:byte;
|
||||
end;
|
||||
Reference in New Issue
Block a user