type CpuSlot{Slot1,Socket7,SuperSocket7,SlotA}; Slot{PCI,ISA,AGP,NONE}; RamSlot{Std72Pin,EDO72Pin,SDRAM168Pin}; HdBus{IDE,SCSI_UW2,SSCI_2}; HdCapacity{R0Gb,R9Gb,R10Gb,R27Gb,R31Gb,R34Gb,R36Gb}; CpuFreq{"P75MHz","P233MHz","P266MHz","P333MHz","P350MHz","P366MHz","P400MHz","P450MHz","P500MHz","P600MHz","P700MHz","P800MHz"}; RamCapacity[0..32];//1=32,2=64....32=1024Mbram. MotherboardId {Aopen_AK_72_133_ATX ,Asus_K7M_ATX ,Microstar_6167_ATX ,Acorp_6BX81_ATX ,Aopen_AX6BP_ATX ,Abit_BH6_ATX ,Abit_BX6_ATX ,Asus_P5A_B ,Acorp_5ALI_61 ,Aopen_MX6E_ATX ,Aopen_AX59PRO_512KB }; ProcessorId {"AMDAthlonP800MHz" ,"AMDAthlonP500MHz" ,"IntelPentiumIIIP600MHz" ,"IntelCeleronAP366MHz" ,"IntelPentiumIIP350MHz" ,"IntelPentiumIIP333MHz" ,"AMDK62P266MHz3DNOW" ,"IntelPentiumP233MHzMMX" }; HarddiskId {"Noharddisk" ,"QuantumAtlasIV36_4GB" ,"IBMDeskStar34GXP34_2GB" ,"MaxtorDiamondMax40pluss30_7GB" ,"WesternDigitalCaviarExpert27_3GB" ,"IBMDeskStar25GP10_1GB" ,"SeagateBarracuda99_1GB" }; RamId {"NoRAMBlock" ,"SDRAMPC100NONAME256MB" ,"SDRAMPC100NONAME128MB" ,"SDRAMPC13364MB" ,"SDRAMPC100MCT64MB" ,"SDRAMPC6632MB" ,"StandardRAMuParitet32MB" }; GraphicsCardId {"AsusAGPV3400TNTmTVInTVOut" ,"DiamondViper770" ,"CreativeLabsGraphicsBlasterRivaTNT" ,"ATIRageFurymTVOut" ,"MatroxMillenniumG200" ,"DiamondMonsterFusion" ,"ATIAllInWonder128Bulk" }; RamExist[0..1]; slotcount[0..8]; ramblockCount[0..4]; controllerCount[0..4]; variable //private vars, placed first due to BDD graph efficience with this variable ordering ramblockCount priv_ramcap; //0 RamSlot priv_motherbrdRamSlot;//2 HdBus priv_motherbrdCtrType;//3 CpuFreq priv_processoFreq; CpuSlot priv_processorCpuSlot; //public config-variables CpuFreq PC_CLOCK;//11 RamCapacity PC_RAM_CAPACITY; //12 MotherboardId MOTHERBOARD; //1 ProcessorId PROCESSOR; //6 HarddiskId HARDDISK1; //7 HdCapacity HARDDISK1_CAPACITY; //8 HarddiskId HARDDISK2; //9 HdCapacity HARDDISK2_CAPACITY; // 10 RamId RAM1; //4 RamId RAM2; //5 RamId RAM3; //6 RamId RAM4; //7 GraphicsCardId GRAPHIC_CARD; //private variables: Slot priv_slotOne; //8 Slot priv_slotTwo; //9 Slot priv_slotThree; //10 Slot priv_slotFour; //11 Slot priv_slotFive; // 12 Slot priv_slotSix; //13 Slot priv_slotSeven; //14 Slot priv_slotEight; //20 CpuSlot priv_motherbrdCpuslot;//23 controllerCount priv_motherBrdContrCnt;//24 CpuFreq priv_mincpufreq;//25 CpuFreq priv_maxCpufreq;//26 Slot priv_graphiccrdSlot;//27 HdBus priv_harddisk1Bus; HdBus priv_harddisk2Bus; RamSlot priv_ram1Slot; RamCapacity priv_ram1Cap; RamExist priv_ram1Exist; RamSlot priv_ram2Slot; RamCapacity priv_ram2Cap; RamExist priv_ram2Exist; RamSlot priv_ram3Slot; RamCapacity priv_ram3Cap; RamExist priv_ram3Exist; RamSlot priv_ram4Slot; RamCapacity priv_ram4Cap; RamExist priv_ram4Exist; rule (((MOTHERBOARD==Acorp_5ALI_61)&& (priv_motherbrdCpuslot==Socket7&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P75MHz" &&priv_maxCpufreq=="P350MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==3&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==ISA&&priv_slotFive==ISA &&priv_slotSix==ISA&&priv_slotSeven==AGP &&priv_slotEight==NONE)) || ((MOTHERBOARD==Acorp_5ALI_61)&& (priv_motherbrdCpuslot==Socket7&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P75MHz" &&priv_maxCpufreq=="P350MHz"&&priv_motherbrdRamSlot==Std72Pin &&priv_ramcap==3&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==ISA&&priv_slotFive==ISA &&priv_slotSix==ISA&&priv_slotSeven==AGP &&priv_slotEight==NONE)) || ((MOTHERBOARD==Abit_BX6_ATX) && (priv_motherbrdCpuslot==Slot1&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P233MHz" &&priv_maxCpufreq=="P450MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==4&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==PCI&&priv_slotFive==ISA &&priv_slotSix==ISA&&priv_slotSeven==ISA &&priv_slotEight==AGP)) || ((MOTHERBOARD==Abit_BH6_ATX) && (priv_motherbrdCpuslot==Slot1&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P233MHz" &&priv_maxCpufreq=="P450MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==4&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==PCI&&priv_slotFive==PCI &&priv_slotSix==ISA&&priv_slotSeven==ISA &&priv_slotEight==AGP)) || ((MOTHERBOARD==Aopen_AX59PRO_512KB)&&(priv_motherbrdCpuslot==Socket7 &&priv_motherbrdCtrType==IDE&&priv_motherBrdContrCnt==4 &&priv_mincpufreq=="P75MHz"&&priv_maxCpufreq=="P233MHz" &&priv_motherbrdRamSlot==SDRAM168Pin&&priv_ramcap==3 &&priv_slotOne==PCI&&priv_slotTwo==PCI &&priv_slotThree==PCI&&priv_slotFour==PCI &&priv_slotFive==ISA&&priv_slotSix==ISA &&priv_slotSeven==AGP&&priv_slotEight==NONE)) || ((MOTHERBOARD==Aopen_AX59PRO_512KB)&&(priv_motherbrdCpuslot==Socket7 &&priv_motherbrdCtrType==IDE&&priv_motherBrdContrCnt==4 &&priv_mincpufreq=="P75MHz"&&priv_maxCpufreq=="P233MHz" &&priv_motherbrdRamSlot==Std72Pin&&priv_ramcap==3 &&priv_slotOne==PCI&&priv_slotTwo==PCI &&priv_slotThree==PCI&&priv_slotFour==PCI &&priv_slotFive==ISA&&priv_slotSix==ISA &&priv_slotSeven==AGP&&priv_slotEight==NONE)) || ((MOTHERBOARD==Acorp_6BX81_ATX)&&(priv_motherbrdCpuslot==Slot1&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P233MHz" &&priv_maxCpufreq=="P600MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==3&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==PCI&&priv_slotFive==ISA &&priv_slotSix==ISA&&priv_slotSeven==ISA &&priv_slotEight==AGP)) || ((MOTHERBOARD==Aopen_MX6E_ATX)&&(priv_motherbrdCpuslot==Slot1&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P233MHz" &&priv_maxCpufreq=="P333MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==4&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==ISA &&priv_slotFour==ISA&&priv_slotFive==AGP &&priv_slotSix==NONE&&priv_slotSeven==NONE&&priv_slotEight==NONE)) || ((MOTHERBOARD==Aopen_AX6BP_ATX)&&(priv_motherbrdCpuslot==Slot1 &&priv_motherbrdCtrType==SCSI_UW2&&priv_motherBrdContrCnt==4 &&priv_mincpufreq=="P233MHz"&&priv_maxCpufreq=="P450MHz" &&priv_motherbrdRamSlot==SDRAM168Pin&&priv_ramcap==3 &&priv_slotOne==PCI&&priv_slotTwo==PCI &&priv_slotThree==PCI&&priv_slotFour==ISA &&priv_slotFive==ISA&&priv_slotSix==ISA &&priv_slotSeven==ISA&&priv_slotEight==AGP)) || ((MOTHERBOARD==Asus_P5A_B)&&(priv_motherbrdCpuslot==Socket7&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P233MHz" &&priv_maxCpufreq=="P400MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==3&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==ISA&&priv_slotFive==ISA &&priv_slotSix==AGP&&priv_slotSeven==NONE&&priv_slotEight==NONE)) || ((MOTHERBOARD==Asus_K7M_ATX)&&(priv_motherbrdCpuslot==SlotA&&priv_motherbrdCtrType==IDE &&priv_motherBrdContrCnt==4&&priv_mincpufreq=="P500MHz" &&priv_maxCpufreq=="P700MHz"&&priv_motherbrdRamSlot==SDRAM168Pin &&priv_ramcap==3&&priv_slotOne==PCI &&priv_slotTwo==PCI&&priv_slotThree==PCI &&priv_slotFour==PCI&&priv_slotFive==PCI &&priv_slotSix==ISA&&priv_slotSeven==AGP &&priv_slotEight==NONE)) || ((MOTHERBOARD==Microstar_6167_ATX)&&(priv_motherbrdCpuslot==SlotA &&priv_motherbrdCtrType==IDE&&priv_motherBrdContrCnt==4 &&priv_mincpufreq=="P500MHz"&&priv_maxCpufreq=="P700MHz" &&priv_motherbrdRamSlot==SDRAM168Pin&&priv_ramcap==3 &&priv_slotOne==PCI&&priv_slotTwo==PCI &&priv_slotThree==PCI&&priv_slotFour==PCI &&priv_slotFive==PCI&&priv_slotSix==ISA &&priv_slotSeven==AGP&&priv_slotEight==NONE)) || ((MOTHERBOARD==Aopen_AK_72_133_ATX)&&(priv_motherbrdCpuslot==SlotA &&priv_motherbrdCtrType==IDE&&priv_motherBrdContrCnt==4 &&priv_mincpufreq=="P500MHz"&&priv_maxCpufreq=="P800MHz" &&priv_motherbrdRamSlot==SDRAM168Pin&&priv_ramcap==3 &&priv_slotOne==PCI&&priv_slotTwo==PCI &&priv_slotThree==PCI&&priv_slotFour==PCI &&priv_slotFive==ISA&&priv_slotSix==AGP &&priv_slotSeven==NONE&&priv_slotEight==NONE))); //making cpu slots match between cpu and motherboard: (((priv_motherbrdCpuslot==Slot1)&&(priv_processorCpuSlot==Slot1)) || ((priv_motherbrdCpuslot==Socket7)&&(priv_processorCpuSlot==Socket7)) || ((priv_motherbrdCpuslot==SuperSocket7)&&(priv_processorCpuSlot==SuperSocket7)) || ((priv_motherbrdCpuslot==SlotA)&&(priv_processorCpuSlot==SlotA))); //orignal processorrules: ((PROCESSOR=="AMDK62P266MHz3DNOW"&&priv_processorCpuSlot==Socket7 &&priv_processoFreq=="P266MHz") || (PROCESSOR=="AMDAthlonP800MHz"&&priv_processorCpuSlot==SlotA &&priv_processoFreq=="P800MHz") || (PROCESSOR=="AMDAthlonP500MHz"&&priv_processorCpuSlot==SlotA &&priv_processoFreq=="P500MHz") || (PROCESSOR=="IntelPentiumP233MHzMMX"&&priv_processorCpuSlot==Socket7 &&priv_processoFreq=="P233MHz") || (PROCESSOR=="IntelCeleronAP366MHz"&&priv_processorCpuSlot==Slot1 &&priv_processoFreq=="P366MHz") || (PROCESSOR=="IntelPentiumIIP350MHz"&&priv_processorCpuSlot==Slot1 &&priv_processoFreq=="P350MHz") || (PROCESSOR=="IntelPentiumIIIP600MHz"&&priv_processorCpuSlot==Slot1 &&priv_processoFreq=="P600MHz") || (PROCESSOR=="IntelPentiumIIP333MHz"&&priv_processorCpuSlot==Slot1 &&priv_processoFreq=="P333MHz")) ; //making ram slots match between ram and motherboard: (((priv_motherbrdRamSlot==Std72Pin)&&((priv_ram1Slot==Std72Pin)&&(priv_ram2Slot==Std72Pin)&&(priv_ram3Slot==Std72Pin)&&(priv_ram4Slot==Std72Pin))) || ((priv_motherbrdRamSlot==EDO72Pin)&&((priv_ram1Slot==EDO72Pin)&&(priv_ram2Slot==EDO72Pin)&&(priv_ram3Slot==EDO72Pin)&&(priv_ram4Slot==EDO72Pin))) || ((priv_motherbrdRamSlot==SDRAM168Pin)&&((priv_ram1Slot==SDRAM168Pin)&&(priv_ram2Slot==SDRAM168Pin)&&(priv_ram3Slot==SDRAM168Pin)&&(priv_ram4Slot==SDRAM168Pin)))); //ram rules: //ram1rules (RAM1=="NoRAMBlock"&&priv_ram1Slot==Std72Pin &&priv_ram1Cap==0) || (RAM1=="NoRAMBlock"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==0) || (RAM1=="StandardRAMuParitet32MB"&&priv_ram1Slot==Std72Pin &&priv_ram1Cap==1) || (RAM1=="SDRAMPC100NONAME128MB"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==4) || (RAM1=="SDRAMPC6632MB"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==1) || (RAM1=="SDRAMPC100MCT64MB"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==2) || (RAM1=="SDRAMPC13364MB"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==2) || (RAM1=="SDRAMPC100NONAME256MB"&&priv_ram1Slot==SDRAM168Pin &&priv_ram1Cap==8); //ram2rules (RAM2=="NoRAMBlock"&&priv_ram2Slot==Std72Pin &&priv_ram2Cap==0) || (RAM2=="NoRAMBlock"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==0) || (RAM2=="StandardRAMuParitet32MB"&&priv_ram2Slot==Std72Pin &&priv_ram2Cap==1) || (RAM2=="SDRAMPC100NONAME128MB"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==4) || (RAM2=="SDRAMPC6632MB"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==1) || (RAM2=="SDRAMPC100MCT64MB"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==2) || (RAM2=="SDRAMPC13364MB"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==2) || (RAM2=="SDRAMPC100NONAME256MB"&&priv_ram2Slot==SDRAM168Pin &&priv_ram2Cap==8); //ram3rules (RAM3=="NoRAMBlock"&&priv_ram3Slot==Std72Pin &&priv_ram3Cap==0) || (RAM3=="NoRAMBlock"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==0) || (RAM3=="StandardRAMuParitet32MB"&&priv_ram3Slot==Std72Pin &&priv_ram3Cap==1) || (RAM3=="SDRAMPC100NONAME128MB"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==4) || (RAM3=="SDRAMPC6632MB"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==1) || (RAM3=="SDRAMPC100MCT64MB"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==2) || (RAM3=="SDRAMPC13364MB"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==2) || (RAM3=="SDRAMPC100NONAME256MB"&&priv_ram3Slot==SDRAM168Pin &&priv_ram3Cap==8); //ram4rules (RAM4=="NoRAMBlock" && priv_ram4Slot==Std72Pin &&priv_ram4Cap==0) || (RAM4=="NoRAMBlock" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==0) || (RAM4=="StandardRAMuParitet32MB" && priv_ram4Slot==Std72Pin &&priv_ram4Cap==1) || (RAM4=="SDRAMPC100NONAME128MB" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==4) || (RAM4=="SDRAMPC6632MB" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==1) || (RAM4=="SDRAMPC100MCT64MB" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==2) || (RAM4=="SDRAMPC13364MB" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==2) || (RAM4=="SDRAMPC100NONAME256MB" && priv_ram4Slot==SDRAM168Pin &&priv_ram4Cap==8); //motherboard-harddisk bindings: ((priv_motherbrdCtrType==IDE)&&(priv_harddisk1Bus==IDE&&priv_harddisk2Bus==IDE) || (priv_motherbrdCtrType==SCSI_UW2)&&(priv_harddisk1Bus==SCSI_UW2&&priv_harddisk2Bus==SCSI_UW2) || (priv_motherbrdCtrType==SSCI_2)&&(priv_harddisk1Bus==SSCI_2&&priv_harddisk2Bus==SSCI_2)); //harddisk rules (HARDDISK1=="Noharddisk"&&priv_harddisk1Bus==IDE &&HARDDISK1_CAPACITY==R0Gb) || (HARDDISK1=="Noharddisk"&&priv_harddisk1Bus==SCSI_UW2 &&HARDDISK1_CAPACITY==R0Gb) || (HARDDISK1=="IBMDeskStar25GP10_1GB"&&priv_harddisk1Bus==IDE &&HARDDISK1_CAPACITY==R10Gb) || (HARDDISK1=="IBMDeskStar34GXP34_2GB"&&priv_harddisk1Bus==IDE &&HARDDISK1_CAPACITY==R34Gb) || (HARDDISK1=="MaxtorDiamondMax40pluss30_7GB"&&priv_harddisk1Bus==IDE &&HARDDISK1_CAPACITY==R31Gb) || (HARDDISK1=="QuantumAtlasIV36_4GB"&&priv_harddisk1Bus==SCSI_UW2 &&HARDDISK1_CAPACITY==R36Gb) || (HARDDISK1=="SeagateBarracuda99_1GB"&&priv_harddisk1Bus==SCSI_UW2 &&HARDDISK1_CAPACITY==R9Gb) || (HARDDISK1=="WesternDigitalCaviarExpert27_3GB"&&priv_harddisk1Bus==IDE &&HARDDISK1_CAPACITY==R27Gb) ; //harddisk2rules (HARDDISK2=="Noharddisk"&&priv_harddisk2Bus==IDE &&HARDDISK2_CAPACITY==R0Gb) || (HARDDISK2=="Noharddisk"&&priv_harddisk2Bus==SCSI_UW2 &&HARDDISK2_CAPACITY==R0Gb) || (HARDDISK2=="IBMDeskStar25GP10_1GB"&&priv_harddisk2Bus==IDE &&HARDDISK2_CAPACITY==R10Gb) || (HARDDISK2=="IBMDeskStar34GXP34_2GB"&&priv_harddisk2Bus==IDE &&HARDDISK2_CAPACITY==R34Gb) || (HARDDISK2=="MaxtorDiamondMax40pluss30_7GB"&&priv_harddisk2Bus==IDE &&HARDDISK2_CAPACITY==R31Gb) || (HARDDISK2=="QuantumAtlasIV36_4GB"&&priv_harddisk2Bus==SCSI_UW2 &&HARDDISK2_CAPACITY==R36Gb) || (HARDDISK2=="SeagateBarracuda99_1GB"&&priv_harddisk2Bus==SCSI_UW2 &&HARDDISK2_CAPACITY==R9Gb) || (HARDDISK2=="WesternDigitalCaviarExpert27_3GB"&&priv_harddisk2Bus==IDE &&HARDDISK2_CAPACITY==R27Gb) ; // graphic card slot bindings (((priv_graphiccrdSlot==NONE)&&((priv_slotOne==NONE)||(priv_slotTwo==NONE)||(priv_slotThree==NONE)||(priv_slotFour==NONE)||(priv_slotFive==NONE)||(priv_slotSix==NONE)||(priv_slotSeven==NONE)||(priv_slotEight==NONE))) || ((priv_graphiccrdSlot==PCI)&&((priv_slotOne==PCI)||(priv_slotTwo==PCI)||(priv_slotThree==PCI)||(priv_slotFour==PCI)||(priv_slotFive==PCI)||(priv_slotSix==PCI)||(priv_slotSeven==PCI)||(priv_slotEight==PCI))) || ((priv_graphiccrdSlot==ISA)&&((priv_slotOne==ISA)||(priv_slotTwo==ISA)||(priv_slotThree==ISA)||(priv_slotFour==ISA)||(priv_slotFive==ISA)||(priv_slotSix==ISA)||(priv_slotSeven==ISA)||(priv_slotEight==ISA))) || ((priv_graphiccrdSlot==AGP)&&((priv_slotOne==AGP)||(priv_slotTwo==AGP)||(priv_slotThree==AGP)||(priv_slotFour==AGP)||(priv_slotFive==AGP)||(priv_slotSix==AGP)||(priv_slotSeven==AGP)||(priv_slotEight==AGP)))); //graphic card type and graphic card slot binding: ((GRAPHIC_CARD=="AsusAGPV3400TNTmTVInTVOut"&&priv_graphiccrdSlot==AGP) || (GRAPHIC_CARD=="ATIRageFurymTVOut"&&priv_graphiccrdSlot==AGP) || (GRAPHIC_CARD=="ATIAllInWonder128Bulk"&&priv_graphiccrdSlot==PCI) || (GRAPHIC_CARD=="CreativeLabsGraphicsBlasterRivaTNT"&&priv_graphiccrdSlot==AGP) || (GRAPHIC_CARD=="DiamondMonsterFusion"&&priv_graphiccrdSlot==PCI) || (GRAPHIC_CARD=="MatroxMillenniumG200"&&priv_graphiccrdSlot==AGP) || (GRAPHIC_CARD=="DiamondViper770"&&priv_graphiccrdSlot==AGP)); //ram capacity checks (((priv_ramcap==0) && ((priv_ram1Exist + priv_ram2Exist + priv_ram3Exist + priv_ram4Exist) == 0) || ((priv_ramcap==1) && ((priv_ram1Exist==1) && ((priv_ram2Exist+priv_ram3Exist+priv_ram4Exist) == 0))) || ((priv_ramcap==2) && (priv_ram1Exist == 1) && ((priv_ram2Exist + priv_ram3Exist + priv_ram4Exist) == 0))) || ((priv_ramcap==2) && ((priv_ram1Exist + priv_ram2Exist)==2) && ((priv_ram3Exist + priv_ram4Exist) == 0))) || ((priv_ramcap==3) && (priv_ram1Exist== 1) && ((priv_ram2Exist+priv_ram3Exist+priv_ram4Exist) == 0)) || ((priv_ramcap==3) && ((priv_ram1Exist + priv_ram2Exist)==2) && ((priv_ram3Exist+priv_ram4Exist) == 0)) || ((priv_ramcap==3) && ((priv_ram1Exist + priv_ram2Exist + priv_ram3Exist) == 3) && (priv_ram4Exist == 0)) || ((priv_ramcap==4) && (priv_ram1Exist==1) && ((priv_ram2Exist+priv_ram3Exist+priv_ram4Exist) == 0)) || ((priv_ramcap==4) && ((priv_ram1Exist+priv_ram2Exist)==2) && ((priv_ram3Exist+priv_ram4Exist) == 0)) || ((priv_ramcap==4) && ((priv_ram1Exist+priv_ram2Exist + priv_ram3Exist)==3) && (priv_ram4Exist == 0)) || ((priv_ramcap==4) && ((priv_ram1Exist + priv_ram2Exist + priv_ram3Exist + priv_ram4Exist) == 4)); //ram block counter variables: (((RAM1=="NoRAMBlock")&&(priv_ram1Exist==0))|| ((RAM1!="NoRAMBlock")&&(priv_ram1Exist==1))); (((RAM2=="NoRAMBlock")&&(priv_ram2Exist==0))|| ((RAM2!="NoRAMBlock")&&(priv_ram2Exist==1))); (((RAM3=="NoRAMBlock")&&(priv_ram3Exist==0))|| ((RAM3!="NoRAMBlock")&&(priv_ram3Exist==1))); (((RAM4=="NoRAMBlock")&&(priv_ram4Exist==0))|| ((RAM4!="NoRAMBlock")&&(priv_ram4Exist==1))); PC_RAM_CAPACITY==(priv_ram1Cap+priv_ram2Cap+priv_ram3Cap+priv_ram4Cap); HARDDISK1 != "Noharddisk"; RAM1 != "NoRAMBlock"; //pc rules //make sure one can power up: //Cpu - rules: ((priv_motherbrdCpuslot == Slot1) && (priv_processorCpuSlot == Slot1) || (priv_motherbrdCpuslot == Socket7) && (priv_processorCpuSlot == Socket7) || (priv_motherbrdCpuslot == SuperSocket7) && (priv_processorCpuSlot == SuperSocket7) || (priv_motherbrdCpuslot == SlotA) && (priv_processorCpuSlot == SlotA)); (((PC_CLOCK == "P75MHz") &&(priv_processoFreq=="P75MHz"))|| ((PC_CLOCK == "P233MHz")&& (priv_processoFreq=="P233MHz"))|| ((PC_CLOCK == "P266MHz") && (priv_processoFreq=="P266MHz"))|| ((PC_CLOCK == "P333MHz") && (priv_processoFreq=="P333MHz"))|| ((PC_CLOCK == "P350MHz")&&(priv_processoFreq=="P350MHz"))|| ((PC_CLOCK == "P366MHz")&&(priv_processoFreq=="P366MHz"))|| ((PC_CLOCK == "P400MHz")&&(priv_processoFreq=="P400MHz"))|| ((PC_CLOCK == "P450MHz")&&(priv_processoFreq=="P450MHz"))|| ((PC_CLOCK == "P500MHz")&&(priv_processoFreq=="P500MHz"))|| ((PC_CLOCK == "P600MHz")&&(priv_processoFreq=="P600MHz"))|| ((PC_CLOCK == "P700MHz")&&(priv_processoFreq=="P700MHz"))|| ((PC_CLOCK == "P800MHz")&&(priv_processoFreq=="P800MHz"))); (((priv_processoFreq == "P75MHz") && (priv_mincpufreq =="P75MHz")) || ((priv_processoFreq =="P233MHz") && ((priv_mincpufreq =="P75MHz" || priv_mincpufreq =="P233MHz") && (priv_maxCpufreq !="P75MHz"))) || ((priv_processoFreq =="P266MHz") && ((priv_mincpufreq =="P75MHz" || (priv_mincpufreq =="P233MHz" || priv_mincpufreq =="P266MHz")) && (priv_maxCpufreq !="P75MHz")|| (priv_maxCpufreq !="P233MHz"))) || ((priv_processoFreq =="P333MHz") && ((priv_mincpufreq =="P75MHz" || (priv_mincpufreq =="P233MHz" || priv_mincpufreq =="P266MHz") ||(priv_mincpufreq =="P333MHz")) && (priv_maxCpufreq !="P75MHz") && (priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz"))) || ((priv_processoFreq =="P350MHz") && ((priv_mincpufreq =="P75MHz" || (priv_mincpufreq =="P233MHz" || priv_mincpufreq =="P266MHz") ||(priv_mincpufreq =="P333MHz") ||(priv_mincpufreq =="P350MHz")) && (priv_maxCpufreq !="P75MHz") && (priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz") && (priv_maxCpufreq != "P333MHz"))) || ((priv_processoFreq =="P366MHz") && ((priv_mincpufreq =="P75MHz" || (priv_mincpufreq =="P233MHz" || priv_mincpufreq =="P266MHz") ||(priv_mincpufreq =="P333MHz") ||(priv_mincpufreq =="P350MHz") || (priv_mincpufreq =="P366MHz")) && (priv_maxCpufreq !="P75MHz")&&(priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz") && (priv_maxCpufreq !="P333MHz") && (priv_maxCpufreq !="P350MHz"))) || ((priv_processoFreq =="P400MHz") && ((priv_mincpufreq =="P75MHz" || (priv_mincpufreq =="P233MHz" || priv_mincpufreq =="P266MHz") ||(priv_mincpufreq =="P333MHz") ||(priv_mincpufreq =="P350MHz") || (priv_mincpufreq =="P366MHz") || (priv_mincpufreq =="P400MHz")) && (priv_maxCpufreq !="P75MHz") && (priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz") && (priv_maxCpufreq !="P333MHz") && (priv_maxCpufreq !="P350MHz") && (priv_maxCpufreq !="P366MHz"))) || ((priv_processoFreq =="P450MHz") && ((priv_mincpufreq !="P500MHz" &&(priv_mincpufreq !="P600MHz" && priv_mincpufreq !="P700MHz") && (priv_mincpufreq !="P800MHz")) && (priv_maxCpufreq =="P450MHz") || (priv_maxCpufreq =="P500MHz") || (priv_maxCpufreq =="P600MHz") || (priv_maxCpufreq =="P700MHz") || (priv_maxCpufreq =="P800MHz"))) || ((priv_processoFreq =="P500MHz") && ((priv_mincpufreq !="P600MHz" && priv_mincpufreq !="P700MHz") && (priv_mincpufreq !="P800MHz") && (priv_maxCpufreq =="P500MHz") || (priv_maxCpufreq =="P600MHz") || (priv_maxCpufreq =="P700MHz") || (priv_maxCpufreq =="P800MHz"))) || ((priv_processoFreq =="P600MHz") && ((priv_mincpufreq !="P700MHz") && (priv_mincpufreq !="P800MHz") && (priv_maxCpufreq !="P75MHz") && (priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz") && (priv_maxCpufreq !="P333MHz") && (priv_maxCpufreq !="P350MHz") && (priv_maxCpufreq !="P366MHz") && (priv_maxCpufreq !="P400MHz") && (priv_maxCpufreq !="P450MHz") && (priv_maxCpufreq !="P500MHz"))) || ((priv_processoFreq =="P700MHz") && ((priv_mincpufreq !="P800MHz") && (priv_maxCpufreq !="P75MHz") &&(priv_maxCpufreq !="P233MHz") && (priv_maxCpufreq !="P266MHz") && (priv_maxCpufreq !="P333MHz") && (priv_maxCpufreq !="P350MHz") && (priv_maxCpufreq !="P366MHz") && (priv_maxCpufreq !="P400MHz") && (priv_maxCpufreq !="P450MHz") && (priv_maxCpufreq !="P500MHz") && (priv_maxCpufreq !="P600MHz") )) || ((priv_processoFreq =="P800MHz") && (priv_maxCpufreq =="P800MHz")));