PORTS.LST 845 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546
  1. PORTS LIST Release 60 Last change 03jan99
  2. Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 Ralf Brown
  3. [This file originally by Wim Osterholt <wim@djo.wtm.tudelft.nl>,
  4. though it has grown considerably since.]
  5. XT, AT and PS/2 I/O port addresses
  6. Do NOT consider this information to be complete and accurate. If you want
  7. to do hardware programming ALWAYS check the appropriate data sheets (but
  8. even they are sometimes in error!). Be aware that erroneous port programming
  9. can put your data or even your hardware at risk.
  10. There are a number of memory-mapped addresses in use for I/O; see MEMORY.LST
  11. for details on memory-mapped I/O.
  12. --------!---Note-----------------------------
  13. Note: the port description format is:
  14. PPPPw RW description
  15. where: PPPP is the four-digit hex port number or a plus sign and three hex
  16. digits to indicate an offset from a base port address
  17. w is blank for byte-size port, 'w' for word, and 'd' for dword
  18. R is dash (or blank) if not readable, 'r' if sometimes readable,
  19. 'R' if "always" readable, '?' if readability unknown
  20. W is dash (or blank) if not writable, 'w' if sometimes writable,
  21. 'W' if "always" writable, 'C' if write-clear, and
  22. '?' if writability unknown
  23. ----------P0000001F--------------------------
  24. PORT 0000-001F - DMA 1 - FIRST DIRECT MEMORY ACCESS CONTROLLER (8237)
  25. SeeAlso: PORT 0080h-008Fh"DMA",PORT 00C0h-00DFh
  26. 0000 R- DMA channel 0 current address byte 0, then byte 1
  27. 0000 -W DMA channel 0 base address byte 0, then byte 1
  28. 0001 RW DMA channel 0 word count byte 0, then byte 1
  29. 0002 R- DMA channel 1 current address byte 0, then byte 1
  30. 0002 -W DMA channel 1 base address byte 0, then byte 1
  31. 0003 RW DMA channel 1 word count byte 0, then byte 1
  32. 0004 R- DMA channel 2 current address byte 0, then byte 1
  33. 0004 -W DMA channel 2 base address byte 0, then byte 1
  34. 0005 RW DMA channel 2 word count byte 0, then byte 1
  35. 0006 R- DMA channel 3 current address byte 0, then byte 1
  36. 0006 -W DMA channel 3 base address byte 0, then byte 1
  37. 0007 RW DMA channel 3 word count byte 0, then byte 1
  38. 0008 R- DMA channel 0-3 status register (see #P0001)
  39. 0008 -W DMA channel 0-3 command register (see #P0002)
  40. 0009 -W DMA channel 0-3 write request register (see #P0003)
  41. 000A RW DMA channel 0-3 mask register (see #P0004)
  42. 000B -W DMA channel 0-3 mode register (see #P0005)
  43. 000C -W DMA channel 0-3 clear byte pointer flip-flop register
  44. any write clears LSB/MSB flip-flop of address and counter registers
  45. 000D R- DMA channel 0-3 temporary register
  46. 000D -W DMA channel 0-3 master clear register
  47. any write causes reset of 8237
  48. 000E -W DMA channel 0-3 clear mask register
  49. any write clears masks for all channels
  50. 000F rW DMA channel 0-3 write mask register (see #P0006)
  51. Notes: the temporary register is used as holding register in memory-to-memory
  52. DMA transfers; it holds the last transferred byte
  53. channel 2 is used by the floppy disk controller
  54. on the IBM PC/XT channel 0 was used for the memory refresh and
  55. channel 3 was used by the hard disk controller
  56. on AT and later machines with two DMA controllers, channel 4 is used
  57. as a cascade for channels 0-3
  58. command and request registers do not exist on a PS/2 DMA controller
  59. Bitfields for DMA channel 0-3 status register:
  60. Bit(s) Description (Table P0001)
  61. 7 channel 3 request active
  62. 6 channel 2 request active
  63. 5 channel 1 request active
  64. 4 channel 0 request active
  65. 3 channel terminal count on channel 3
  66. 2 channel terminal count on channel 2
  67. 1 channel terminal count on channel 1
  68. 0 channel terminal count on channel 0
  69. SeeAlso: #P0002,#P0481
  70. Bitfields for DMA channel 0-3 command register:
  71. Bit(s) Description (Table P0002)
  72. 7 DACK sense active high
  73. 6 DREQ sense active high
  74. 5 =1 extended write selection
  75. =0 late write selection
  76. 4 rotating priority instead of fixed priority
  77. 3 compressed timing (two clocks instead of four per transfer)
  78. =1 normal timing (default)
  79. =0 compressed timing
  80. 2 =1 enable controller
  81. =0 enable memory-to-memory
  82. 1-0 channel number
  83. SeeAlso: #P0001,#P0004,#P0005,#P0482
  84. Bitfields for DMA channel 0-3 request register:
  85. Bit(s) Description (Table P0003)
  86. 7-3 reserved (0)
  87. 2 =0 clear request bit
  88. =1 set request bit
  89. 1-0 channel number
  90. 00 channel 0 select
  91. 01 channel 1 select
  92. 10 channel 2 select
  93. 11 channel 3 select
  94. SeeAlso: #P0004
  95. Bitfields for DMA channel 0-3 mask register:
  96. Bit(s) Description (Table P0004)
  97. 7-3 reserved (0)
  98. 2 =0 clear mask bit
  99. =1 set mask bit
  100. 1-0 channel number
  101. 00 channel 0 select
  102. 01 channel 1 select
  103. 10 channel 2 select
  104. 11 channel 3 select
  105. SeeAlso: #P0001,#P0002,#P0003,#P0484
  106. Bitfields for DMA channel 0-3 mode register:
  107. Bit(s) Description (Table P0005)
  108. 7-6 transfer mode
  109. 00 demand mode
  110. 01 single mode
  111. 10 block mode
  112. 11 cascade mode
  113. 5 direction
  114. =0 increment address after each transfer
  115. =1 decrement address
  116. 3-2 operation
  117. 00 verify operation
  118. 01 write to memory
  119. 10 read from memory
  120. 11 reserved
  121. 1-0 channel number
  122. 00 channel 0 select
  123. 01 channel 1 select
  124. 10 channel 2 select
  125. 11 channel 3 select
  126. SeeAlso: #P0002,#P0485
  127. Bitfields for DMA channel 0-3 write mask register:
  128. Bit(s) Description (Table P0006)
  129. 7-4 reserved
  130. 3 channel 3 mask bit
  131. 2 channel 2 mask bit
  132. 1 channel 1 mask bit
  133. 0 channel 0 mask bit
  134. Note: each mask bit is automatically set when the corresponding channel
  135. reaches terminal count or an extenal EOP sigmal is received
  136. SeeAlso: #P0004,#P0486
  137. ----------P0010001F--------------------------
  138. PORT 0010-001F - DMA CONTROLLER (8237) ON PS/2 MODEL 60 & 80
  139. SeeAlso: PORT 0000h-001Fh,PORT 0080h-008Fh"DMA",PORT 00C0h-00DFh
  140. 0018 -W extended function register (see #P0007)
  141. 001A -W extended function execute register
  142. Bitfields for DMA extended function register:
  143. Bit(s) Description (Table P0007)
  144. 7-4 function code (see #P0008)
  145. 3 reserved (0)
  146. 2-0 channel number
  147. 000 channel 0 select
  148. 001 channel 1 select
  149. 010 channel 2 select
  150. 011 channel 3 select
  151. 100 channel 4 select
  152. 101 channel 5 select
  153. 110 channel 6 select
  154. 111 channel 7 select
  155. (Table P0008)
  156. Values for DMA extended function codes (data go to/from PORT 001Ah):
  157. Value Description Parameters Results
  158. 00h current address register - CA0,CA1
  159. 02h write address - A0,A1,P
  160. 03h read address A0,A1,P -
  161. 04h write word count register C0,C1 -
  162. 05h read word count register - C0,C1
  163. 06h read status register - S
  164. 07h mode register - M
  165. 09h mask channel - -
  166. 0Ah unmask channel - -
  167. 0Dh master clear - -
  168. Note: CA0/CA1 LSB/MSB of the current address register
  169. A0/A1 LSB/MSB of the base address register
  170. P DMA page address
  171. C0/C1 LSB/MSB of the word count register
  172. S status register value (see #P0001, #P0481)
  173. M mode register value (see #P0005, #P0485)
  174. first, the extended function register is written, then the extended
  175. function register execute register is read/written if the function
  176. being executing requires
  177. Bitfields for DMA extended mode register:
  178. Bit(s) Description (Table P0009)
  179. 7 reserved (0)
  180. 6 =0 8-bit transfer
  181. =1 16-bit transfer
  182. 5-4 reserved (0)
  183. 3 transfer type
  184. =0 read from memory
  185. =1 write to memory
  186. 2 =0 disable memory write
  187. =1 enable memory write
  188. 1 reserved (0)
  189. 0 address select
  190. =0 use 0 as base address
  191. =1 use a value from base address register
  192. Note: the IBM PS/2 model 80 technical reference doesn't seem to mention this
  193. register's address
  194. ----------P0020003F--------------------------
  195. PORT 0020-003F - PIC 1 - PROGRAMMABLE INTERRUPT CONTROLLER (8259A)
  196. SeeAlso: PORT 00A0h-00AFh"PIC 2",INT 08"IRQ0",INT 0F"IRQ7"
  197. 0020 -W PIC initialization command word ICW1 (see #P0010)
  198. 0020 -W PIC output control word OCW2 (see #P0015)
  199. 0020 -W PIC output control word OCW3 (see #P0016)
  200. 0020 R- PIC interrupt request/in-service registers after OCW3
  201. request register:
  202. bit 7-0 = 0 no active request for the corresponding int. line
  203. = 1 active request for corresponding interrupt line
  204. in-service register:
  205. bit 7-0 = 0 corresponding line not currently being serviced
  206. = 1 corresponding int. line currently being serviced
  207. 0021 -W PIC ICW2,ICW3,ICW4 immed after ICW1 to 0020 (see #P0011,#P0012,#P0013)
  208. 0021 RW PIC master interrupt mask register OCW1 (see #P0014)
  209. Bitfields for PIC initialization command word ICW1:
  210. Bit(s) Description (Table P0010)
  211. 7-5 0 (only used in 8080/8085 mode)
  212. 4 ICW1 is being issued
  213. 3 (LTIM)
  214. =0 edge triggered mode
  215. =1 level triggered mode
  216. 2 interrupt vector size
  217. =0 successive interrupt vectors use 8 bytes (8080/8085)
  218. =1 successive interrupt vectors use 4 bytes (80x86)
  219. 1 (SNGL)
  220. =0 cascade mode
  221. =1 single mode, no ICW3 needed
  222. 0 ICW4 needed
  223. SeeAlso: #P0011,#P0012,#P0013
  224. Bitfields for PIC initialization command word ICW2:
  225. Bit(s) Description (Table P0011)
  226. 7-3 address lines A0-A3 of base vector address for PIC
  227. 2-0 reserved
  228. SeeAlso: #P0010,#P0012,#P0013
  229. Bitfields for PIC initialization command word ICW3:
  230. Bit(s) Description (Table P0012)
  231. 7-0 =0 slave controller not attached to corresponding interrupt pin
  232. =1 slave controller attached to corresponding interrupt pin
  233. SeeAlso: #P0010,#P0011,#P0013
  234. Bitfields for PIC initialization command word ICW4:
  235. Bit(s) Description (Table P0013)
  236. 7-5 reserved (0)
  237. 4 running in special fully-nested mode
  238. 3-2 mode
  239. 0x nonbuffered mode
  240. 10 buffered mode/slave
  241. 11 buffered mode/master
  242. 1 Auto EOI
  243. 0 =0 8085 mode
  244. =1 8086/8088 mode
  245. SeeAlso: #P0010,#P0011,#P0012
  246. Bitfields for PIC output control word OCW1:
  247. Bit(s) Description (Table P0014)
  248. 7 disable IRQ7 (parallel printer interrupt)
  249. 6 disable IRQ6 (diskette interrupt)
  250. 5 disable IRQ5 (fixed disk interrupt)
  251. 4 disable IRQ4 (serial port 1 interrupt)
  252. 3 disable IRQ3 (serial port 2 interrupt)
  253. 2 disable IRQ2 (video interrupt)
  254. 1 disable IRQ1 (keyboard, mouse, RTC interrupt)
  255. 0 disable IRQ0 (timer interrupt)
  256. SeeAlso: #P0015,#P0016,#P0418
  257. Bitfields for PIC output control word OCW2:
  258. Bit(s) Description (Table P0015)
  259. 7-5 operation
  260. 000 rotate in auto EOI mode (clear)
  261. 001 (WORD_A) nonspecific EOI
  262. 010 (WORD_H) no operation
  263. 011 (WORD_B) specific EOI
  264. 100 (WORD_F) rotate in auto EOI mode (set)
  265. 101 (WORD_C) rotate on nonspecific EOI command
  266. 110 (WORD_E) set priority command
  267. 111 (WORD_D) rotate on specific EOI command
  268. 4-3 reserved (00 - signals OCW2)
  269. 2-0 interrupt request to which the command applies
  270. (only used by WORD_B, WORD_D, and WORD_E)
  271. SeeAlso: #P0014,#P0016
  272. Bitfields for PIC output control word OCW3:
  273. Bit(s) Description (Table P0016)
  274. 7 reserved (0)
  275. 6-5 special mask
  276. 0x no operation
  277. 10 reset special mask
  278. 11 set special mask mode
  279. 4-3 reserved (01 - signals OCW3)
  280. 2 poll command
  281. 1-0 function
  282. 0x no operation
  283. 10 read interrupt request register on next read from PORT 0020h
  284. 11 read interrupt in-service register on next read from PORT 0020h
  285. Note: the special mask mode permits all other interrupts (even those with
  286. lower priority) to be processed while an interrupt is already in
  287. service, but will not re-issue an interrupt for a particular IRQ
  288. while it remains in service
  289. SeeAlso: #P0014,#P0015
  290. ----------P0022------------------------------
  291. PORT 0022 - Intel 82439TX Chipset - Power Control register
  292. SeeAlso: PORT 0022h"82443BX"
  293. 0022 RW PM2 Register Block
  294. bits 7-1: reserved
  295. bit 0: Arbiter Disable
  296. --------p-P0022------------------------------
  297. PORT 0022 - Intel 82443BX - "PM2_CTL" ACPI Power Control 2 Register
  298. SeeAlso: PORT 0022h"82439TX",#01142 at INT 1A/AX=B10Ah/SF=8086h
  299. 0022 RW ACPI Power Control Register 2
  300. bits 7-1: reserved
  301. bit 0: disable primary PCI and AGP arbiter requests
  302. ----------P00220023--------------------------
  303. PORT 0022-0023 - CHIP SET DATA
  304. Note: These two ports are used by numerous chipsets. Various chipsets are
  305. detailed below.
  306. 0022 -W index for accesses to data port
  307. 0023 RW chip set data
  308. ----------P00220023--------------------------
  309. PORT 0022-0023 - Cyrix Cx486SLC/DLC PROCESSOR - CACHE CONFIGURATION REGISTERS
  310. SeeAlso: PORT 0022h"5x86",PORT 0022h"6x86"
  311. 0022 -W index for accesses to next port (see #P0017)
  312. 0023 RW cache configuration register array (indexed by PORT 0022h)
  313. Note: the index must be written to PORT 0022h before every access
  314. to PORT 0023h; out-of-sequence accesses or index values
  315. not supported by the processor generate external I/O cycles
  316. (Table P0017)
  317. Values for Cyrix Cx486SLC/DLC Cache Configuration register number:
  318. C0h CR0 (see #P0019)
  319. C1h CR1 (see #P0020)
  320. C4h non-cacheable region 1, start address bits 31-24
  321. C5h non-cacheable region 1, start address bits 23-16
  322. C6h non-cacheable region 1, start addr 15-12, size (low nibble) (see #P0018)
  323. C7h non-cacheable region 2, start address bits 31-24
  324. C8h non-cacheable region 2, start address bits 23-16
  325. C9h non-cacheable region 2, start addr 15-12, size (low nibble) (see #P0018)
  326. CAh non-cacheable region 3, start address bits 31-24
  327. CBh non-cacheable region 3, start address bits 23-16
  328. CCh non-cacheable region 3, start addr 15-12, size (low nibble) (see #P0018)
  329. CDh non-cacheable region 4, start address bits 31-24
  330. CEh non-cacheable region 4, start address bits 23-16
  331. CFh non-cacheable region 4, start addr 15-12, size (low nibble) (see #P0018)
  332. SeeAlso: #P0023,#P0021
  333. (Table P0018)
  334. Values for Cyrix Cx486SLC/DLC non-cacheable region sizes:
  335. 00h disabled
  336. 01h 4K
  337. 02h 8K
  338. 03h 16K
  339. 04h 32K
  340. 05h 64K
  341. 06h 128K
  342. 07h 256K
  343. 08h 512K
  344. 09h 1M
  345. 0Ah 2M
  346. 0Bh 4M
  347. 0Ch 8M
  348. 0Dh 16M
  349. 0Eh 32M
  350. 0Fh 4G
  351. SeeAlso: #P0017
  352. Bitfields for Cyrix Cx486SLC/DLC Configuration Register 0:
  353. Bit(s) Description (Table P0019)
  354. 0 "NC0" first 64K of each 1M noncacheable in real/V86
  355. 1 "NC1" 640K-1M noncacheable
  356. 2 "A20M" enables A20M# input pin
  357. 3 "KEN" enables KEN# input pin
  358. 4 "FLUSH" enables FLUSH input pin
  359. 5 "BARB" enables internal cache flushing on bus holds
  360. 6 "C0" cache direct-mapped instead of 2-way associative
  361. 7 "SUSPEND" enables SUSP# input and SUSPA# output pins
  362. SeeAlso: #P0017,#P0020,#P0032
  363. Bitfields for Cyrix Cx486SLC/DLC Configuration Register 1:
  364. Bit(s) Description (Table P0020)
  365. 0 "RPL" enables output pins RPLSET and RPLVAL#
  366. SeeAlso: #P0017,#P0019,#P0024
  367. ----------P00220023--------------------------
  368. PORT 0022-0023 - Cyrix 486S2/D2/DX/DX2/DX4 PROCESSOR - CONFIGURATION REGISTERS
  369. SeeAlso: PORT 0022h"Cx486SLC",PORT 0022h"5x86",PORT 0022h"6x86"
  370. 0022 -W index for accesses to next port (see #P0021)
  371. 0023 RW cache configuration register array (indexed by PORT 0022h)
  372. Note: the index must be written to PORT 0022h before every access
  373. to PORT 0023h; out-of-sequence accesses or index values
  374. not supported by the processor generate external I/O cycles
  375. (Table P0021)
  376. Values for Cyrix 486S2/D2/DX/DX2/DX4 configuration register number:
  377. C2h CR2 (see #P0025)
  378. C3h CR3 (see #P0026)
  379. CDh SMM region, start address bits 31-24
  380. CEh SMM region, start address bits 23-16
  381. CFh SMM region, start addr 15-12, size (low nibble) (see #P0018)
  382. FEh R Device Identification #0 (see #P0022)
  383. CPU device ID
  384. FFh R Device Identification #1
  385. bits 3-0: revision
  386. bits 7-4: stepping
  387. SeeAlso: #P0017,#P0023,#P0031
  388. (Table P0022)
  389. Values for Cyrix device identification:
  390. (#0 /#1)
  391. 00h Cx486SLC
  392. 01h Cx486DlC
  393. 02h Cx486SLC2
  394. 03h Cx486DLC2
  395. 04h Cx486SRx
  396. 05h Cx486DRx
  397. 06h Cx486SRx2
  398. 07h Cx486DRx2
  399. 10h Cx486S (B-step)
  400. 11h Cx486S2 (B-step)
  401. 12h Cx486Se (B-step)
  402. 13h Cx486S2e (B-step)
  403. 1Ah/05h Cx486DX-40
  404. 1Bh/08h Cx486DX2-50
  405. 1Bh/0Bh Cx486DX2-66
  406. 1Bh/31h Cx486DX2-v80
  407. 1Fh/36h Cx486DX4-v100
  408. 28h 5x86 1xs
  409. 29h 5x86 2xs
  410. 2Ah 5x86 1xp
  411. 2Bh 5x86 2xp
  412. 2Ch 5x86 4xs
  413. 2Dh 5x86 3xs
  414. 2Eh 5x86 4xp
  415. 2Fh 5x86 3xp
  416. 30h 6x86 1xs
  417. 31h 6x86 2xs
  418. 32h 6x86 1xp
  419. 33h 6x86 2xp
  420. 34h 6x86 4xs
  421. 35h 6x86 3xs
  422. 36h 6x86 4xp
  423. 37h 6x86 3xp
  424. Note: #0 is the value in configuration register FEh, while #1 is the value
  425. in configuration register FFh
  426. SeeAlso: #P0021
  427. ----------P00220023--------------------------
  428. PORT 0022-0023 - Cyrix 5x86 PROCESSOR - CONFIGURATION CONTROL REGISTERS
  429. SeeAlso: PORT 0022h"Cx486SLC",PORT 0022h"486S2",PORT 0022h"6x86"
  430. 0022 -W index for accesses to next port (see #P0023)
  431. 0023 RW configuration control register array (indexed by PORT 0022h)
  432. Note: the index must be written to PORT 0022h before every access
  433. to PORT 0023h; out-of-sequence accesses or index values
  434. not supported by the processor generate external I/O cycles
  435. (Table P0023)
  436. Values for Cyrix 5x86 configuration registers:
  437. 20h Performance Control (see #P0028)
  438. C1h Configuration Control #1 (CCR1) (see #P0024)
  439. C2h Configuration Control #2 (CCR2) (see #P0025)
  440. C3h Configuration Control #3 (CCR3) (see #P0026)
  441. CDh System Memory Management address region #0 (smar0) (see #P0029)
  442. CEh System Memory Management address region #1 (smar1)
  443. CFh System Memory Management address region #2 (smar2)
  444. E8h Configuration Control Register 4
  445. F0h Power Management (see #P0030)
  446. FEh R Device Identification #0 (see #P0022)
  447. CPU device ID
  448. FFh R Device Identification #1
  449. bits 3-0: revision
  450. bits 7-4: stepping
  451. SeeAlso: #P0017,#P0021,#P0031
  452. Bitfields for Cyrix 5x86,6x86 Configuration Control Register 1 (CCR1):
  453. Bit(s) Description (Table P0024)
  454. 0 reserved
  455. 1 enable SMM pins
  456. 2 system management memory access
  457. 3 main memory access
  458. 4 (6x86) no LOCK during bus cycles
  459. 6-5 reserved
  460. 7 (6x86) use address region 3 as SMM space
  461. Note: bits 1,2,7 may only be written when CCR3 bit 0 is enabled
  462. SeeAlso: #P0020,#P0025,#P0026,#P0027
  463. Bitfields for Cyrix 5x86,6x86 Configuration Control Register 2 (CCR2):
  464. Bit(s) Description (Table P0025)
  465. 0 reserved
  466. 1 enable write-back cache interface pins
  467. 2 lock NW bit
  468. 3 suspend on HLT instruction
  469. 4 write-through region 1
  470. 5 reserved
  471. 6 enable burst write cycles
  472. 7 enable suspend pins
  473. SeeAlso: #P0024,#P0026,#P0027
  474. Bitfields for Cyrix 5x86,6x86 Configuration Control Register 3 (CCR3):
  475. Bit(s) Description (Table P0026)
  476. 0 SMM register lock (can only be cleared in SMM mode or by CPU reset)
  477. 1 NMI enable
  478. 2 linear address burst cycles (5x86,6x86 only)
  479. =0 Pentium-compatible
  480. =1 linear sequencing
  481. 3 SMM mode (5x86 only)
  482. =0 486SL
  483. =1 Cyrix
  484. 7-4 map enable (5x86,6x86 only)
  485. 0000 only allow access to configuration registers C0h-CFh,FEh,FFh
  486. 0001 enable access to all configuration registers
  487. SeeAlso: #P0024,#P0025,#P0027,#P0028,#P0030
  488. Bitfields for Cyrix 5x86,6x86 Configuration Control Register 4 (CCR4):
  489. Bit(s) Description (Table P0027)
  490. 2-0 I/O recovery time (000 = none, else 2^N clocks)
  491. 3 enable memory-read bypassing (5x86 only)
  492. 4 enable directory table entry cache
  493. 6-5 reserved
  494. 7 enable CPUID instruction (stepping 1+ and Cx6x86)
  495. Note: this register is only accessible when bits 7-4 of CCR3 are 0001
  496. SeeAlso: #P0024,#P0025,#P0026
  497. Bitfields for Cyrix 5x86 Performance Control register:
  498. Bit(s) Description (Table P0028)
  499. 0 return stack enabled (speculatively execute code after current CALL)
  500. 1 branch-target buffer enabled
  501. 2 loop enable
  502. 6-3 reserved (0)
  503. 7 load-store serialization enabled
  504. (memory reads and writes may be reorganized into optimum order)
  505. Note: this register is only accessible when bits 7-4 of CCR3 are 0001
  506. SeeAlso: #P0030,#P0024
  507. Bitfields for Cyrix 5x86 SMM Address Region register:
  508. Bit(s) Description (Table P0029)
  509. 3-0 block size
  510. 23-4 starting address
  511. Bitfields for Cyrix 5x86 Power Management register:
  512. Bit(s) Description (Table P0030)
  513. 1-0 core clock to bus clock ratio
  514. 00 1:1
  515. 01 2:1
  516. 10 reserved
  517. 11 3:1
  518. 2 CPU running at half bus speed, ignore bits 1-0
  519. Note: this register is only accessible when bits 7-4 of CCR3 are 0001
  520. ----------P00220023--------------------------
  521. PORT 0022-0023 - Cyrix 6x86 PROCESSOR - CONFIGURATION CONTROL REGISTERS
  522. SeeAlso: PORT 0022h"Cx486",PORT 0022h"5x86"
  523. 0022 -W index for accesses to next port (see #P0023)
  524. 0023 RW configuration control register array (indexed by PORT 0022h)
  525. Note: the index must be written to PORT 0022h before every access
  526. to PORT 0023h; out-of-sequence accesses or index values
  527. not supported by the processor generate external I/O cycles
  528. (Table P0031)
  529. Values for Cyrix 6x86 configuration registers:
  530. C0h Configuration Control Register 0 (CCR0) (see #P0032)
  531. C1h Configuration Control #1 (CCR1) (see #P0024)
  532. C2h Configuration Control #2 (CCR2) (see #P0025)
  533. C3h Configuration Control #3 (CCR3) (see #P0026)
  534. C4h Address region 0 (bits 31-24)
  535. C5h Address region 0 (bits 23-16)
  536. C6h Address region 0 (bits 15-12 and size)
  537. C7h Address region 1 (bits 31-24)
  538. C8h Address region 1 (bits 23-16)
  539. C9h Address region 1 (bits 15-12 and size)
  540. CAh Address region 2 (bits 31-24)
  541. CBh Address region 2 (bits 23-16)
  542. CCh Address region 2 (bits 15-12 and size)
  543. CDh Address region 3 (bits 31-24)
  544. CEh Address region 3 (bits 23-16)
  545. CFh Address region 3 (bits 15-12 and size)
  546. D0h Address region 4 (bits 31-24)
  547. D1h Address region 4 (bits 23-16)
  548. D2h Address region 4 (bits 15-12 and size)
  549. D3h Address region 5 (bits 31-24)
  550. D4h Address region 5 (bits 23-16)
  551. D5h Address region 5 (bits 15-12 and size)
  552. D6h Address region 6 (bits 31-24)
  553. D7h Address region 6 (bits 23-16)
  554. D8h Address region 6 (bits 15-12 and size)
  555. D9h Address region 7 (bits 31-24)
  556. DAh Address region 7 (bits 23-16)
  557. DBh Address region 7 (bits 15-12 and size)
  558. DCh Region Control 0
  559. DDh Region Control 1
  560. DEh Region Control 2
  561. DFh Region Control 3
  562. E0h Region Control 4
  563. E1h Region Control 5
  564. E2h Region Control 6
  565. E3h Region Control 7
  566. E8h Configuration Control Register 4 (see #P0027)
  567. E9h Configuration Control Register 5 (see #P0033)
  568. FEh R Device Identification #0 (see #P0022)
  569. CPU device ID
  570. FFh R Device Identification #1
  571. bits 3-0: revision
  572. bits 7-4: stepping
  573. SeeAlso: #P0017,#P0023
  574. Bitfields for Cyrix 6x86 Configuration Control Register 0:
  575. Bit(s) Description (Table P0032)
  576. 7-2 ???
  577. 1 address region 640K-1M is noncacheable
  578. 0 ???
  579. SeeAlso: #P0019
  580. Bitfields for Cyrix 6x86 Configuration Control Register 5:
  581. Bit(s) Description (Table P0033)
  582. 7-6 reserved
  583. 5 enable all address-region registers (control registers C4h-DBh)
  584. 4 assert LBA# pin on all accesses to 640K-1M
  585. 3-1 reserved
  586. 0 allocate new cache lines only on read misses
  587. SeeAlso: #P0032,#P0027,#P0031
  588. ----------P00220023--------------------------
  589. PORT 0022-0023 - GoldStar 286 - CHIP SET CONFIGURATION REGISTERS
  590. SeeAlso: PORT 0022h"Cx486SLC",PORT 0022h"486S2",PORT 0022h"6x86"
  591. 0022 -W index for accesses to next port (see #P0034)
  592. 0023 RW configuration control register array (indexed by PORT 0022h)
  593. (Table P0034)
  594. Values for GoldStar 286 chipset configuration register index:
  595. 60h turbo control
  596. write 00h to PORT 0023h to turn on turbo, 10h to turn it off
  597. --------X-P00220023--------------------------
  598. PORT 0022-0023 - Intel 82358DT 'Mongoose' EISA CHIPSET - 82359 DRAM CONTROLLER
  599. Notes: this chip uses a chip ID of 01
  600. the LIM register herein use a chip ID of 1A
  601. Index: Intel 82351
  602. 0022 -W index for accesses to data port (see #P0036,#P0037,#P0038)
  603. 0023 RW chip set data
  604. (Table P0035)
  605. Values for Intel 82351/82359 chip ID:
  606. 01h 82359 DRAM controller, general registers
  607. 02h 82351 EISA local I/O support
  608. A1h 82359 DRAM controller, EMS registers
  609. FFh no chip accessible (default)
  610. SeeAlso: #P0036,#P0037,#P0038
  611. (Table P0036)
  612. Values for 82359 DRAM controller general register index:
  613. 00h DRAM bank 0 type
  614. bit 7 unknown
  615. bit 6-4 000 DRAM in bank 0 (standard)
  616. 001 bank 1
  617. 010 bank 2
  618. 011 bank 3
  619. 100 banks 0,1
  620. 101 banks 2,3
  621. 110 banks 0,1,2,3
  622. 111 empty (standard for 1,2,3)
  623. bit 3-2 unknown
  624. bit 1-0 00 64K chips used
  625. 01 256K
  626. 10 1M
  627. 11 4M
  628. 01h DRAM bank 1 type
  629. 02h DRAM bank 2 type
  630. 03h DRAM bank 3 type
  631. 04h DRAM speed detection/selection
  632. 05h DRAM interleave control
  633. 06h RAS line mode
  634. 07h cache-enable selection
  635. 08h mode register A (DRAM, cache)
  636. 09h mode register B (cache, burst modes, BIOS size)
  637. 0Ah mode register C (concurrency control, burst/cycle speed)
  638. 10h host timing
  639. 11h host-system delay timing
  640. 12h system timing
  641. 13h DRAM row precharge time
  642. 14h DRAM row timing
  643. 15h DRAM column timing
  644. 16h CAS pulse width
  645. 17h CAS-to-MDS delay
  646. 21h chip ID register -- selects which chip responds on these ports
  647. (see #P0035)
  648. 28h-2Ch parity-error trap address
  649. 30h page hit cycle length (read)
  650. 31h page miss cycle length (read)
  651. 32h row miss cycle length (read)
  652. 33h page hit cycle length (write)
  653. 34h page miss cycle length (write)
  654. 35h row miss cycle length (write)
  655. 40h memory enable 00000h-7FFFFh
  656. 41h memory enable 80000h-9FFFFh
  657. 42h memory enable A0000h-AFFFFh
  658. 43h memory enable B0000h-BFFFFh
  659. 44h memory enable C0000h-CFFFFh
  660. 45h memory enable D0000h-DFFFFh
  661. 46h memory enable E0000h-EFFFFh
  662. 47h memory enable F0000h-FFFFFh
  663. 4Eh remap 80000h-FFFFFh to extended memory
  664. 50h-53h programmable attribute map 1
  665. 54h-57h programmable attribute map 2
  666. 58h-5Bh programmable attribute map 3
  667. 5Ch-5Fh programmable attribute map 4
  668. 83h-84h split address register (address bits A31-A20)
  669. 85h cache control
  670. 8Bh system throttle
  671. 8Ch host throttle
  672. 8Dh host memory throttle watchdog
  673. 8Eh host system throttle
  674. 8Fh host system throttle watchdog
  675. 90h RAM enable
  676. 91h RAM disable
  677. 92h-93h elapsed-time registers
  678. 94h-95h host memory ownership request
  679. 96h-97h system memory ownership request
  680. 98h-99h host memory ownership
  681. 9Ah-9Bh system bus ownership
  682. 9Ch-9Dh host system bus request
  683. 9Eh-9Fh memory ownership transfer
  684. SeeAlso: #P0037,#P0038
  685. (Table P0037)
  686. Values for Intel 82359 DRAM controller EMS register index:
  687. 00h EMS cotnrol
  688. 21h chip ID register -- selects which chip responds on these ports
  689. (see #P0035)
  690. 80h-8Fh EMS page registers, pages 0-7
  691. SeeAlso: #P0036,#P0038
  692. (Table P0038)
  693. Values for Intel 82351 EISA Local I/O register index:
  694. 21h chip ID register -- selects which chip responds on these ports
  695. (see #P0035)
  696. C0h peripheral enable register A
  697. C1h peripheral enable register B
  698. C2h parallel configuration register
  699. C3h serial configuration register A
  700. C4h floppy disk controller configuration register
  701. C5h serial configuration register B
  702. C6h COM3 port address (low)
  703. C7h COM3 port address (high)
  704. C8h COM4 port address (low)
  705. C9h COM4 port address (high)
  706. D0h-D3h general chip select lines 0-3 (mask registers)
  707. D4h-D7h general chip select line addresses 0-3 (low bytes)
  708. D8h-DBh general chip select line addresses 0-3 (high bytes)
  709. DCh extended CMOS RAM page port address (low)
  710. DDh extended CMOS RAM page port address (high)
  711. DFh extended CMOS RAM access select address (high byte)
  712. E8h-EBh EISA ID configuration registers (reflect at PORT 0C80h)
  713. SeeAlso: #P0036,#P0037
  714. --------X-P00220023--------------------------
  715. PORT 0022-0023 - Intel 82374EB/SB EISA CHIPSET
  716. Index: Intel 82374EB;Intel 82374SB
  717. 0022 -W index for accesses to data port (see #P0039)
  718. 0023 RW chip set data
  719. !!!29047604.pdf pg. 36
  720. (Table P0039)
  721. Values for Intel 82374 register index:
  722. 02h ESC identification register
  723. (82374 will only respond to ports 0022h and 0023h after an 0Fh
  724. is written to this register)
  725. 08h revision ID register
  726. 40h mode select (see #P0040)
  727. 42h BIOS Chip Select A (see #P0041)
  728. 43h BIOS Chip Select B (see #P0042)
  729. 4Dh EISA clock divisor (see #P0043)
  730. 4Eh peripheral Chip Select A (see #P0044)
  731. 4Fh peripheral Chip Select B (see #P0045)
  732. 50h-53h EISA ID registers
  733. 57h scatter/gather relocate base address (see also #01075)
  734. (specifies bits 15-0 if S/G port addresses [low byte always 10h-3Fh])
  735. 59h APIC base address relocation
  736. 60h-63h PCI IRQn# route control (see also #01076)
  737. 64h general-purpose chip select low address 0
  738. 65h general-purpose chip select high address 0
  739. 66h general-purpose chip select mask register 0
  740. 68h general-purpose chip select low address 1
  741. 69h general-purpose chip select high address 1
  742. 6Ah general-purpose chip select mask register 1
  743. 6Ch general-purpose chip select low address 2
  744. 6Dh general-purpose chip select high address 2
  745. 6Eh general-purpose chip select mask register 2
  746. 6Fh general-purpose peripheral X-Bus control
  747. ---SB only---
  748. 70h PCI/APIC control (see #P0046)
  749. 88h test control
  750. A0h SMI control (see #P0047)
  751. A2h-A3h SMI enable (see #P0048)
  752. A4h-A7h System Event Enable (see #P0049)
  753. A8h Fast-Off timer
  754. AAh-ABh SMI Request (see #P0050)
  755. ACh Clock Scale STPCLK# low timer
  756. AEh Clock Scale STPCLK# high timer
  757. Bitfields for 82374EB mode select (register 40h):
  758. Bit(s) Description (Table P0040)
  759. 7 reserved
  760. 6 enable the selected (MREQ[7:4]#/PIRQ[3:0]# functionality
  761. 5 enable/disable configuration RAM Page Address (CPG[4:0]) generation
  762. =1 accesses to the configuration RAM space will generate the RAM page
  763. address on the LA[31:27]# pins (default)
  764. =0 the CPG[4:0] signals will not be activated
  765. 4 General Purpose Chip Selects: select GPCS[2:0]#/ECS[2:0] pins' function
  766. =0 GPCS[2:0]# functionality is selected
  767. =1 ESC[2:0] functionality is selected
  768. 3 System Error: enable generation of NMI based on SERR# signal pulsing
  769. =0 NMI is negated and SERR# is disabled from generating an NMI
  770. =1 NMI signal is asserted when NMIs are enabled via the NMIERTC
  771. Register and SERR# is asserted
  772. Note: other NMI sources are enabled/disabled via the NMISC register
  773. 2-0 PIRQx Mux/Mapping Control: select muxing/mapping of PIRQ[3:0]# with
  774. MREQ[7:4] and group of X-Bus signals (DLIGHT#, RTCWR#, RTCRD#).
  775. Different bit combinations select the number of EISA slots or group of
  776. X-Bus signals which can be supported with the certain number of
  777. PIRQx# signals by determining the functionality of pins
  778. AEN[4:1]/EAEN[4:1], MACK[3:0]#/EMACK[3:0]#, MREQ[7:4]/PIRQ[3:0]#,
  779. DLIGHT#/PIRQ0#, FDCCS#/PIRQ1#, RTCWR#/PIRQ2#, and RTCRD#/PIRQ3#.
  780. SeeAlso: #P0039
  781. Bitfields for 82374EB BIOS Chip Select A "BIOSCSA" (register 42h):
  782. Bit(s) Description (Table P0041)
  783. 7-6 reserved
  784. 5 Enlarged BIOS: assert LBIOSCS# for memory read cycles to locations
  785. FFF80000h-FFFDFFFFh
  786. 4 High BIOS: assert LBIOSCS# for memory read cycles to locations
  787. 0F0000h-0FFFFFh, FF0000h-FFFFFFh, and FFFF0000h-FFFFFFFFh
  788. 3 Low BIOS 4: assert LBIOSCS# for memory read cycles to locations
  789. 0EC000h-0EFFFFh, FFEEC000h-FFEEFFFFh, and FFFEC000h-FFFEFFFFh
  790. 2 Low BIOS 3: assert LBIOSCS# for memory read cycles to locations
  791. 0E8000h-0EBFFFh, FFEE8000h-FFEEBFFFh, and FFFE8000h-FFFEBFFFh
  792. 1 Low BIOS 2: assert LBIOSCS# for memory read cycles to locations
  793. 0E4000h-0E7FFFh, FFEE4000h-FFEE7FFFh, and FFFE4000h-FFFE7FFFh
  794. 0 Low BIOS 1: assert LBIOSCS# for memory read cycles to locations
  795. 0E0000h-0E3FFFh, FFEE0000h-FFEE3FFFh, and FFFE0000h-FFFE3FFFh
  796. Note: if bit 3 of register 43h (BIOSCSB) is set, then LBIOSCS# will be
  797. asserted for write cycles as well as read cycles on any enabled range
  798. SeeAlso: #P0039,#P0042
  799. Bitfields for 82374EB BIOS Chip Select B (register 43h):
  800. Bit(s) Description (Table P0042)
  801. 7-4 Reserved
  802. 3 BIOS Write Enable: assert LBIOSCS# for both memory read AND write
  803. cycles for addresses in the decoded and enabled BIOS range
  804. (see #P0041)
  805. 2 16 Meg BIOS: assert LBIOSCS# for memory read cycles to locations
  806. FF0000h-FFFFFFh
  807. 1 High VGA BIOS: assert LBIOSCS# for memory read cycles to locations
  808. 0C4000h-0C7FFFh
  809. 0 Low VGA BIOS: assert LBIOSCS# for memory read cycles to locations
  810. 0C0000h-0C3FFFh
  811. Note: if bit 3 of register 43h (BIOSCSB) is set, then LBIOSCS# will be
  812. asserted for write cycles as well as read cycles on any enabled range
  813. above
  814. SeeAlso: #P0039,#P0041
  815. Bitfields for 82374EB EISA clock divisor (register 4Dh):
  816. Bit(s) Description (Table P0043)
  817. 7-6 Reserved
  818. 5 Co-processor Error: specify if the FERR# signal is connected to the
  819. ESC internal IRQ13 interrupt signal.
  820. =0 FERR# signal is ignored by the ESC (i.e. this signal is not
  821. connected to any logic in the ESC).
  822. =1 assert IRQ13 to the interrupt controller if FERR# signal is asserted
  823. 4 82374EB: Reserved
  824. 82374SB: ABFULL (with IRQ12):
  825. =0 internal IRQ12 is directed to the interrupt controller and
  826. transitions on ABFULL have no effect on this interrupt signal
  827. =1 the assertion of ABFULL is latched and directed to the internal
  828. IRQ12 signal in the following manner:
  829. If the interrupt controller is programmed for edge detect mode on
  830. IRQ12, a low-to-high transition is generated on the internal
  831. IRQ12 signal. Transitions on the IRQ12 input pin are not
  832. reflected on the internal IRQ12 signal.
  833. If the interrupt controller is programmed for level-sensitive mode,
  834. a high-to-low transition is generated on the internal IRQ12
  835. signal. Transitions on the IRQ12 input pin are also reflected
  836. on the internal IRQ12 signal.
  837. The latching of the ABFULL signal is cleared by an I/O read of
  838. address 60h (no aliasing) or by a hard reset.
  839. 3 82374EB: Reserved
  840. 82374SB: Keyboard Full (KBFULL): select edge-detect KBFULL function on
  841. the IRQ1 input signal
  842. =0 IRQ1 is directed to the interrupt controller
  843. =1 (default) IRQ1 is latched and directed to the interrupt controller.
  844. The latched IRQ1 is cleared by an I/O read of address 60h (no
  845. aliasing) or by a hard reset.
  846. 2-0 Clock Divisor: select the integer used to divide the PCICLK down to
  847. generate the BCLK.
  848. 000 4 (33.33 MHz) 8.33 MHz (default after reset)
  849. 001 3 (25 MHz) 8.33 MHz
  850. 01x reserved
  851. 1xx reserved
  852. SeeAlso: #P0039
  853. Bitfields for 82374EB peripheral Chip Select A (register 4Eh):
  854. Bit(s) Description (Table P0044)
  855. 7 Reserved
  856. 6 Keyboard Controller Mapping
  857. =0 the keyboard controller encoded chip select signal and the X-Bus
  858. transceiver enable (XBUSOE#) are generated for accesses to address
  859. locations 60h (82374EB/SB), 62h (82374EB only), 64h (82374EB/SB) and
  860. 66h (82374EB only).
  861. =1 the keyboard controller chip select signals are generated for
  862. accesses to the above address locations. However XBUSOE# is disabled.
  863. Note: bit 1 must be 1 for either value of this configuration bit to
  864. decode an access to locations 60h, 62h, 64h, or 66h.
  865. 5 Floppy Disk/IDE Controller Address range
  866. =0 primary (1Fxh and 3Fxh)
  867. =1 secondary (17xh and 37xh)
  868. 4 IDE DECODE: enable or disable IDE locations 1F0h-1F7h (primary) or
  869. 170h-177h (secondary) and 3F6h,3F7h (primary) or 376h,377h (sec).
  870. 82374EB: When this bit is set to 0, the IDE encoded chip select signals
  871. and the X-Bus transceiver signal (XBUSOE#) are not generated for
  872. these addresses.
  873. 82374SB: When this bit is set to 0, the IDE encoded chip select signals
  874. and the X-Bus transceiver signal (XBUSOE#) are not generated for
  875. addresses 1F0h-1F7h (primary) or 170h-177h (secondary) and 3F6h or
  876. 376h. Read/write accesses to addresses 377h and 3F7h are not
  877. disabled and still generate XBUSOE#.
  878. 3-2 Floppy Disk and IDE/Floppy Disk Decodes: Bits 2 and 3 are used to
  879. enable or disable the floppy locations as indicated. Bit 2 defaults
  880. to enabled (1) and bit 3 defaults to disabled (0) when a reset occurs
  881. 1 Keyboard Controller Decode: enable the keyboard controller address
  882. locations 60h (82374EB/SB), 62h (82374EB only), 64h (82374EB/SB), and
  883. 66h (82374EB only).
  884. =0 the keyboard controller encoded chip select signals and the X-Bus
  885. transceiver signal (XBUSOE#) are not generated for these locations
  886. Note: the value of this bit affects control function (keyboard
  887. controlling mapping) provided by bit 6 of this register.
  888. 0 Real Time Clock Decode: enable the RTC address locations 70h-77h.
  889. =0 the RTC encoded chip select signals RTCALE, RTCRD, RTCWR#, and
  890. XBUSOE# signals are not generated for these addresses.
  891. SeeAlso: #P0039,#P0045
  892. Bitfields for 82374EB peripheral Chip Select B (register 4Fh):
  893. Bit(s) Description (Table P0045)
  894. 7 CRAM Decode: enable I/O write accesses to location 0C00h and I/O
  895. read/write accesses to locations 0800h-08FFh. The configuration RAM
  896. read and write (CRAMRD#, CRAMWR#) strobes are valid for accesses to
  897. 0800h-08FFh.
  898. 6 Port 92 Decode: enable access to Port 92 (default at PCIRST is enabled)
  899. 5-4 select which Parallel Port address range (LPT1, 2, or 3) is decoded.
  900. 00 LPT1 (3BCh-3BFh)
  901. 01 LPT2 (378h-37Fh)
  902. 10 LPT3 (278h-27Fh)
  903. 11 disabled
  904. 3-2 Serial Port B Address Decode: If either COM1 or COM2 address ranges
  905. are selected, these bits default to disabled upon PCIRST.
  906. 00 3F8h-3FFh (COM1)
  907. 01 2F8h-2FFh (COM2)
  908. 10 Reserved
  909. 11 Port B disabled
  910. 1-0 Serial Port A Address Decode: If either COM1 or COM2 address ranges are
  911. selected, these bits default to disabled upon PCIRST.
  912. 00 3F8h-3FFh (COM1)
  913. 01 2F8h-2FFh (COM2)
  914. 10 Reserved
  915. 11 Port A disabled
  916. SeeAlso: #P0039,#P0044
  917. Bitfields for 82374SB PCI/APIC control (register 70h):
  918. Bit(s) Description (Table P0046)
  919. 7-2 Reserved
  920. 1 SMI Routing Control (SMIRC)
  921. =1 SMI is routed via the APIC
  922. =0 SMI is routed via the SMI# signal
  923. Note: when SMRCe1, INTR can not be routed through the APIC, since it
  924. is sharing the APIC interrupt input with SMI#.
  925. 0 INTR Routing Control (INTRC): When APIC is enabled (in mixed or pure
  926. APIC mode), this bit allows the ESC's external INTR signal to be
  927. masked (forces INTR to the inactive state but does not tri-states
  928. the signal). Thus, the CPU's INTR pin can be used (by providing a
  929. simple -gate) for the APIC Local Interrupt (LINTRx). However, INTR
  930. must not be masked via this bit when APIC is disabled and INTR is
  931. the only mechanism to signal the 8259 recognized interrupts to the
  932. CPU.
  933. =1 INTR is disabled (APIC must be enabled)
  934. =0 INTR is enabled
  935. SeeAlso: #P0039
  936. Bitfields for 82374SB SMI control (register A0h):
  937. Bit(s) Description (Table P0047)
  938. 7 reserved (0)
  939. 6-4 reserved
  940. 3 Fast Off Timer Freeze (CTMRFRZ): disable the Fast Off Timer
  941. Disabling the timer prevents time-outs from occurring while executing
  942. SMM code.
  943. 2 STPCLK# Scaling Enable (CSTPCLKSC)
  944. =0 (default) scaling control of the STPCLK# signal is disabled.
  945. =1, the STPCLK# signal scaling control is enabled. When enabled (and
  946. bit 1=1, enabling the STPCLK# signal), the high and low times for the
  947. STPCLK# signal are controlled by the Clock Scaling STPCLK# High Timer
  948. and Clock Scaling STPCLK# Low Timer Registers, respectively.
  949. 1 STPCLK# Signal Enable (CSTPCLKE): permits software to place the CPU
  950. into a low power state.
  951. =0 (default) STPCLK# signal is disabled and is negated (high)
  952. =1 the STPCLK# signal is enabled and a read from the APMC Register
  953. causes STPCLK# to be asserted
  954. Software can set this bit to 0 by writing a 0 to it or by any write to
  955. the APMC Register.
  956. 0 SMI# Gate (CSMIGATE)
  957. =0 (default) the SMI# signal is masked and negated
  958. =1 SMI# signal is enabled and a system management interrupt condition
  959. causes the SMI# signal to be asserted
  960. Note: bit 0 only affects the SMI# signal and does not affect the
  961. detection/recording of SMI events (i.e., it does not affect the SMI
  962. status bits in the SMIREQ Register). Thus, SMI conditions can be
  963. pending when bit 0 is set to 1; if an SMI is already pending, the
  964. SMI# signal is asserted.
  965. SeeAlso: #P0039
  966. Bitfields for 82374SB SMI enable (register A2h-A3h):
  967. Bit(s) Description (Table P0048)
  968. 15-8 Reserved
  969. 7 APMC Write SMI Enable
  970. =0 writes to the APMC Register do not generate an SMI
  971. =1 writes to the APMC Register generate an SMI
  972. 6 EXTSMI# SMI Enable
  973. =1 asserting the EXTSMI# input signal generates an SMI
  974. 5 Fast Off Timer SMI Enable
  975. =1 Fast-Off timer generates an SMI when it decrements to zero
  976. 4 IRQ12 SMI Enable (PS/2 Mouse Interrupt)
  977. =1 asserting the IRQ12 input signal generates an SMI
  978. 3 IRQ8 SMI Enable (RTC Alarm Interrupt)
  979. =1 asserting the IRQ8 input signal generates an SMI
  980. 2 IRQ4 SMI Enable (COM2/COM4 Interrupt or Mouse)
  981. =1 asserting the IRQ3 input signal generates an SMI
  982. 1 IRQ3 SMI Enable (COM1/COM3 Interrupt or Mouse)
  983. =1 asserting the IRQ3 input signal generates an SMI
  984. 0 IRQ1 SMI Enable (Keyboard Interrupt)
  985. =1 asserting the IRQ1 input signal generates an SMI
  986. SeeAlso: #P0039
  987. Bitfields for 82374SB System Event Enable (register A4h-A7h):
  988. Bit(s) Description (Table P0049)
  989. 31 Fast Off SMI Enable (FSMIEN)
  990. =1 an SMI causes a system event that re-loads the Fast Off Timer and a
  991. break event that negates the STPCLK# signal
  992. =0 an SMI does not re-load the Fast Off Timer or negate the STPCLK#
  993. signal
  994. 30 reserved
  995. 29 Fast Off NMI Enable (FNMIEN)
  996. =1 an NMI (e.g., parity error) causes a system event that re-loads the
  997. Fast Off Timer and a break event that negates the STPCLK# signal
  998. =0 an SMI does not re-load the Fast Off Timer or negate the STPCLK#
  999. signal.
  1000. 28-16 reserved
  1001. 15-3 These bits are used to prevent the system from entering Fast Off and
  1002. break any current powerdown state when the selected hardware
  1003. interrupt (IRQ15-IRQ3) occurs
  1004. =1 the corresponding interrupt causes a system event that re-loads the
  1005. Fast Off Timer and a break event that negates the STPCLK# signal
  1006. =0 the corresponding interrupt does not re-load the Fast Off Timer or
  1007. negate the STPCLK# signal
  1008. 2 reserved
  1009. 1-0 These bits are used to prevent the system from entering Fast Off and
  1010. break any current powerdown state when the selected hardware
  1011. interrupt (IRQ1-IRQ0) occurs
  1012. =1 the corresponding interrupt causes a system event that re-loads the
  1013. Fast Off Timer and a break event that negates the STPCLK# signal
  1014. =0 the corresponding interrupt does not re-load the Fast Off Timer or
  1015. negate the STPCLK# signal
  1016. SeeAlso: #P0039
  1017. Bitfields for 82374SB SMI Request (register AAh-ABh):
  1018. Bit(s) Description (Table P0050)
  1019. 15-8 Reserved
  1020. 7 APM SMI Status (RAPMC): set to 1 to indicate that a write to the APM
  1021. Control Register caused an SMI
  1022. 6 EXTSMI# SMI Status (REXT): set to 1 when EXTSMI# caused an SMI
  1023. 5 Fast Off Timer Expired Status (RFOT): set to 1 to indicate that the
  1024. Fast Off Timer expired and caused an SMI. The Fast Off timer
  1025. re-starts counting on the next clock after it expires.
  1026. 4 SMI caused by IRQ12
  1027. 3 SMI caused by IRQ8
  1028. 2 SMI caused by IRQ4
  1029. 1 SMI caused by IRQ3
  1030. 0 SMI caused by IRQ1
  1031. SeeAlso: #P0039
  1032. ----------P00220023--------------------------
  1033. PORT 0022-0023 - CHIPSET FROM ETEC CHEETAH ET6000 (SINGLE CHIP)
  1034. 0022 RW chip set data
  1035. 0023 ?W index for accesses to data port (see #P0051)
  1036. (Table P0051)
  1037. Values for Etec Cheetah ET6000 chip set register index:
  1038. 10h system configuration register (see #P0052)
  1039. 11h cache configuration & non-cacheable block size register (see #P0053)
  1040. 12h non-cacheable block address register
  1041. bit 7-1 non-cacheable address, A25-A19
  1042. bit 0 reserved
  1043. 13h DRAM bank & type configuration register (see #P0054)
  1044. 14h DRAM configuration register (see #P0055)
  1045. 15h shadow RAM configuration register (see #P0056)
  1046. Bitfields for Etec Cheetah ET6000 system configuration register:
  1047. Bit(s) Description (Table P0052)
  1048. 7-6 00 turbo/non-turbo
  1049. 01 local device supported
  1050. 10 suspend mode
  1051. 11 illegal
  1052. 5 reserved
  1053. 4 refresh selection
  1054. 0 = AT type refresh
  1055. 1 = concurrent refresh
  1056. 3 slow refresh 95mSec enabled
  1057. 2 fast reset delay
  1058. 0 = do not use delay
  1059. 1 = wait for 2mSec delay
  1060. 1 wait for HALT after KBDRST
  1061. 0 RAM at A0000-BFFFF
  1062. 0 = AT bus cycle
  1063. 1 = local bus cycle
  1064. SeeAlso: #P0051
  1065. Bitfields for Etec Cheetah ET6000 cache configuration register:
  1066. Bit(s) Description (Table P0053)
  1067. 7-5 000 disabled
  1068. 001 512K
  1069. 010 1M
  1070. 011 2M
  1071. 100 4M
  1072. 101 8M
  1073. 110 16M
  1074. 111 32M
  1075. 4 DRAM banks
  1076. 0 = 2-bank DRAM
  1077. 1 = 4-bank DRAM
  1078. 3-0 reserved
  1079. SeeAlso: #P0051
  1080. Bitfields for Etec Cheetah ET6000 DRAM bank & type configuration register:
  1081. Bit(s) Description (Table P0054)
  1082. 7-6 bank 3 DRAM type
  1083. 00 none
  1084. 01 256K
  1085. 10 1M
  1086. 11 4M
  1087. 5-4 bank 2 DRAM type
  1088. 3-2 bank 1 DRAM type
  1089. 1-0 bank 0 DRAM type
  1090. SeeAlso: #P0051
  1091. Bitfields for Etec Cheetah ET6000 DRAM configuration register:
  1092. Bit(s) Description (Table P0055)
  1093. 7 on-board memory range 15M to 16M disabled
  1094. 6 on-board memory range 512K-640K disabled
  1095. 5 ROM chip select at C0000-DFFFF enabled
  1096. 4 RAS to CAS time
  1097. 0 = 1 SYSCLCK, not for R0WS
  1098. 1 = 2 SYSCLCK
  1099. 3 RAS precharge time
  1100. 0 = 1.5 SYSCLCK
  1101. 1 = 2.5 SYSCLCK
  1102. 2-1 read cycle wait state
  1103. 00 = 0 wait state
  1104. 01 = 1 ws
  1105. 10 = 2 ws
  1106. 11 = 3 ws
  1107. 0 write cycle wait state
  1108. 0 = 0 ws
  1109. 1 = 1 ws
  1110. SeeAlso: #P0051
  1111. Bitfields for Etec Cheetah ET6000 shadow RAM configuration register:
  1112. Bit(s) Description (Table P0056)
  1113. 7 shadow at C0000-FFFFF
  1114. 0 = non-cacheable
  1115. 1 = cacheable and cache-write-proteced
  1116. 6 access ROM/RAM at F0000-FFFFF
  1117. 0 = read from ROM, write to RAM
  1118. 1 = read from shadow, write is protected
  1119. 5 access ROM/RAM at E0000-EFFFF
  1120. 0 = access on-board ROM, AT bus cycle
  1121. 1 = access shadow E0000-EFFFF enabled
  1122. 4 RAM at E0000-EFFFF is read-only
  1123. 3 access ROM/RAM at D0000-DFFFF
  1124. 0 = access on-board ROM, AT bus cycle
  1125. 1 = access shadow D0000-DFFFF enabled
  1126. 2 RAM at D0000-DFFFF is read-only
  1127. 1 access ROM/RAM at C0000-CFFFF
  1128. 0 = access on-board ROM, AT bus cycle
  1129. 1 = access shadow C0000-CFFFF enabled
  1130. 0 RAM at C0000-CFFFF is read-only
  1131. SeeAlso: #P0051
  1132. ----------P00220023--------------------------
  1133. PORT 0022-0023 - Hewlett-Packard Hornet chipset (HP 100LX/200LX)
  1134. 0022 RW index for accesses to data port (see Table P189)
  1135. 0023 RW chip set data
  1136. (Table P0057)
  1137. Values for HP Hornet chipset register index:
  1138. 1Eh buzzer volume/clock oscillator speed
  1139. bit 7-6: buzzer volume
  1140. bit 5-4: system oscillator speed
  1141. 00: 10.738636MHz
  1142. 01: 15.836773MHz(HP 100/200LX has oscillator with this speed)
  1143. 10: 21.477272MHz
  1144. 11: 31.673550MHz
  1145. 21h display timing???
  1146. 23h LCD contrast (see INT15h AH=62h)
  1147. valid values: 00h-1fh (1fh is the darkest)
  1148. 51h power adapter status
  1149. bit 7-1: ???
  1150. bit 0: power adapter status(0=inactive/1=active)
  1151. 52h nicad charge status
  1152. bit 7-3: ???
  1153. bit 2: battery charging status(0=???/1=slow charge)
  1154. bit 1-0: ???
  1155. 53h nicad charge status
  1156. bit 7-1: ???
  1157. bit 0: battery charging status(0=???/1=fast charge)
  1158. 80h memory wait for internal ROM
  1159. valid values: 00h-07h
  1160. 81h memory wait for internal RAM
  1161. valid values: 00h-03h
  1162. 82h memory wait for external RAM
  1163. valid values: 00h-0fh
  1164. 87h battery status???
  1165. ----------P00220023--------------------------
  1166. PORT 0022-0023 - Chips&Technologies 82C100/110 - CONFIGURATION REGISTERS
  1167. Note: each access to PORT 0023h must immediately follow a write to
  1168. PORT 0022h (this is to avoid accidental accesses)
  1169. 0022 -W configuration register index (see #P0058)
  1170. 0023 RW configuration register data
  1171. (Table P0058)
  1172. Values for Chips&Technologies 82C100/110 configuration register index:
  1173. 40h clock mode/size (see #P0059)
  1174. 41h system configuration (see #P0060)
  1175. 42h configuration valid (see #P0061)
  1176. 43h DIP switch emulation (see #P0062)
  1177. 44h-47h substitute NMI vector, bytes 0-3
  1178. (these specify the vector to be substituted at the INT 02 vector's
  1179. memory address whenever an NMI occurs, preventing application
  1180. software from modifying the NMI handler)
  1181. 48h refresh timer counter (see #P0063)
  1182. 49h wait state select, refresh enable, keyboard type (see #P0064)
  1183. 4Ah reserved
  1184. 4Bh sleep/memory configuration (see #P0065)
  1185. 4Ch EMS configuration (see #P0066)
  1186. 4Dh-4Fh reserved
  1187. Bitfields for Chips&Technologies 82C100 clock mode/size register:
  1188. Bit(s) Description (Table P0059)
  1189. !!!
  1190. !!!chips\82c110.pdf p.35
  1191. SeeAlso: #P0058
  1192. Bitfields for Chips&Technologies 82C100 system configuration register:
  1193. Bit(s) Description (Table P0060)
  1194. !!!
  1195. SeeAlso: #P0058
  1196. Bitfields for Chips&Technologies 82C100 configuration valid register:
  1197. Bit(s) Description (Table P0061)
  1198. !!!
  1199. SeeAlso: #P0058
  1200. Bitfields for Chips&Technologies 82C110 DIP Switch Emulation register:
  1201. Bit(s) Description (Table P0062)
  1202. !!!chips\82c110.pdf p.36
  1203. SeeAlso: #P0058
  1204. Bitfields for Chips&Technologies 82C100 refresh timer count register:
  1205. Bit(s) Description (Table P0063)
  1206. !!!
  1207. SeeAlso: #P0058
  1208. Bitfields for Chips&Technologies 82C100 wait state select register:
  1209. Bit(s) Description (Table P0064)
  1210. !!!
  1211. SeeAlso: #P0058
  1212. Bitfields for Chips&Technologies 82C100 sleep/memory configuration:
  1213. Bit(s) Description (Table P0065)
  1214. !!!
  1215. SeeAlso: #P0058
  1216. Bitfields for Chips&Technologies 82C100 EMS configuration register:
  1217. Bit(s) Description (Table P0066)
  1218. !!!
  1219. SeeAlso: #P0058
  1220. ----------P00220023--------------------------
  1221. PORT 0022-0023 - Chips&Technologies 82C235 "SCAT" - CONFIGURATION REGISTERS
  1222. Note: each access to PORT 0023h must immediately follow a write to
  1223. PORT 0022h (this is to avoid accidental accesses)
  1224. 0022 -W configuration register index (see #P0067)
  1225. 0023 RW configuration register data
  1226. (Table P0067)
  1227. Values for Chips&Technologies 82C235 configuration register index:
  1228. 01h DMA wait-state control
  1229. 40h version (read-only)
  1230. 41h clock control
  1231. 42h-43h reserved (but listed as read-write in docs)
  1232. 44h peripheral control
  1233. 45h miscellaneous status
  1234. 46h power management
  1235. 47h reserved
  1236. 48h ROM enable
  1237. 49h RAM write-protect control
  1238. 4Ah shadow RAM enable 1
  1239. 4Bh shadow RAM enable 2
  1240. 4Ch shadow RAM enable 3
  1241. 4Dh DRAM configuration
  1242. 4Eh extended boundary
  1243. 4Fh EMS control
  1244. !!!chips\82c235.pdf p.87, p.140
  1245. ----------P00220023--------------------------
  1246. PORT 0022-0023 - Chips&Technologies 82C311 - CONFIGURATION REGISTERS
  1247. Note: each access to PORT 0023h must immediately follow a write to
  1248. PORT 0022h (this is to avoid accidental accesses)
  1249. 0022 -W configuration register index (see #P0068)
  1250. 0023 RW configuration register data
  1251. (Table P0068)
  1252. Values for Chips&Technologies 82C311 configuration register index:
  1253. 04h version (read-only) !!!chips\82c311.pdf p.65
  1254. 05h AT-bus command delay
  1255. 06h AT-bus wait-state control
  1256. 08h identification
  1257. 09h low RAM/ROM configuration
  1258. 0Ch memory enable map (80000h-9FFFFh)
  1259. 0Dh memory enable map (A0000h-BFFFFh)
  1260. 0Eh memory enable map (C0000h-DFFFFh)
  1261. 0Fh memory enable map (E0000h-FFFFFh)
  1262. 10h block 0 type and start address
  1263. 11h block 0 DRAM timing
  1264. 12h block 1 type and start address
  1265. 13h block 1 DRAM timing
  1266. 14h block 2 type and start address
  1267. 15h block 2 DRAM timing
  1268. 16h block 3 type and start address
  1269. 17h block 3 DRAM timing
  1270. 18h memory block types
  1271. 20h cache control
  1272. 21h directory RAM control 1
  1273. 22h tag RAM directory address (low)
  1274. 23h reference location
  1275. 24h SRAM configuration/direct access address
  1276. 25h directory RAM control 2
  1277. 26h READY timeout
  1278. 28h error source/address
  1279. 29h error address (bits 23-16)
  1280. 2Ah memory enable map (00000h-7FFFFh)
  1281. 2Bh miscellaneous control
  1282. 2Ch middle RAM/ROM configuration
  1283. 2Fh page mode posted-write control (82C311 rev. C only)
  1284. 30h block 0 non-cacheable address (bits 23-16)
  1285. 31h block 0 non-cacheable address (bits 15-12) and size
  1286. 32h block 1 non-cacheable address (bits 23-16)
  1287. 33h block 1 non-cacheable address (bits 15-12) and size
  1288. 34h block 2 non-cacheable address (bits 23-16)
  1289. 35h block 2 non-cacheable address (bits 15-12) and size
  1290. 36h block 3 non-cacheable address (bits 23-16)
  1291. 37h block 3 non-cacheable address (bits 15-12) and size
  1292. 38h block 0/1 non-cacheable addresses (bits 26-24)
  1293. 39h block 2/3 non-cacheable addresses (bits 26-24)
  1294. 60h fast reset control
  1295. !!!chips\82c311.pdf p.76, p.115
  1296. ----------P00220023--------------------------
  1297. PORT 0022-0023 - Chips&Technologies 82C315 - CONFIGURATION REGISTERS
  1298. Note: each access to PORT 0023h must immediately follow a write to
  1299. PORT 0022h (this is to avoid accidental accesses)
  1300. SeeAlso: PORT 0022h"82C311",PORT 0022h"82C316"
  1301. 0022 -W configuration register index (see #P0069)
  1302. 0023 RW configuration register data
  1303. (Table P0069)
  1304. Values for Chips&Technologies 82C315 configuration register index:
  1305. 07h processor and bus clock source selection (see #P0070)
  1306. Bitfields for C&T 82C315 clock source selection register:
  1307. Bit(s) Description (Table P0070)
  1308. 7-5 reserved (0)
  1309. 4 80387 is present
  1310. 3 processor clock select
  1311. =0 CLK2IN
  1312. =1 AT bus state machine clock
  1313. 2-0 bus clock source select
  1314. 000 CLK2IN/5
  1315. 001 CLK2IN/4
  1316. 010 CLK2IN/3
  1317. 011 CLK2IN/2
  1318. 100 ATCLK
  1319. SeeAlso: #P0069
  1320. ----------P00220023--------------------------
  1321. PORT 0022-0023 - Chips&Technologies 82C316 - CONFIGURATION REGISTERS
  1322. Note: each access to PORT 0023h must immediately follow a write to
  1323. PORT 0022h (this is to avoid accidental accesses)
  1324. SeeAlso: PORT 0022h"82C311",PORT 0022h"82C315",PORT 0022h"82C811"
  1325. 0022 -W configuration register index (see #P0071)
  1326. 0023 RW configuration register data
  1327. (Table P0071)
  1328. Values for Chips&Technologies 82C316 configuration register index:
  1329. 01h clock/wait-state control !!!chips\cs8233.pdf p.178
  1330. 26h RTC/NMI/Coprocessor reset !!!chips\cs8233.pdf p.231
  1331. 71h programmable I/O port 1 address, bits 15-8
  1332. 72h programmable I/O port 1 address, bits 7-0
  1333. 73h programmable I/O port 1 enable
  1334. 74h programmable I/O port 2 address, bits 15-8
  1335. 75h programmable I/O port 2 address, bits 7-0
  1336. 76h programmable I/O port 2 enable
  1337. 77h programmable I/O port 3 address, bits 15-8
  1338. 78h programmable I/O port 3 address, bits 7-0
  1339. 79h programmable I/O port 3 enable
  1340. SeeAlso: #P0069
  1341. --------h-P00220023--------------------------
  1342. PORT 0022-0023 - Chips&Technologies 82C811/82C812 - CONFIGURATION REGISTERS
  1343. Note: each access to PORT 0023h must immediately follow a write to
  1344. PORT 0022h (this is to avoid accidental accesses)
  1345. SeeAlso: PORT 0022h"82C311",PORT 0022h"82C315"
  1346. 0022 -W configuration register index (see #P0072)
  1347. 0023 RW configuration register data
  1348. (Table P0072)
  1349. Values for Chips&Technologies 82C811/812 configuration register index:
  1350. 60h (82C811) processor clock select (see #P0073)
  1351. 61h (82C811) command delay (see #P0074)
  1352. 62h (82C811) wait states (see #P0075)
  1353. ---82C812---
  1354. 64h version (see #P0076)
  1355. 65h ROM configuration
  1356. 66h memory enable 1
  1357. 67h memory enable 2
  1358. 68h memory enable 3
  1359. 69h memory enable 4
  1360. 6Ah bank 0/1 enable
  1361. 6Bh memory configuration
  1362. 6Ch bank 2/3 enable
  1363. 6Dh EMS base address
  1364. 6Eh EMS address extension
  1365. 6Fh miscellaneous
  1366. !!!chips\cs8281.pdf p.48
  1367. Bitfields for C&T 82C811 processor clock select:
  1368. Bit(s) Description (Table P0073)
  1369. 7-6 82C811 release number (00 = initial release)
  1370. 5 fast CPU reset initiated by changing this bit from 0 to 1
  1371. 4 processor clock
  1372. 0 CLK2IN (default)
  1373. 1 BCLK
  1374. 3 reserved
  1375. 2 enable NMI generate on timeout of local-bus READY# signal
  1376. 1 reserved
  1377. 0 local-bus READY# signal timed out (128 clock cycles0
  1378. SeeAlso: #P0072,#P0074,#P0075
  1379. Bitfields for C&T 82C811 command delay register:
  1380. Bit(s) Description (Table P0074)
  1381. 7 enable additional address bus hold time
  1382. 6 reserved (1)
  1383. 5-4 AT-bus 16-bit memory access delay, in BCLK cycles (default = 0)
  1384. 3-2 AT-bus 8-bit memory access delay, in BCLK cycles (default = 1)
  1385. 1-0 I/O command delay, in BCLK cycles (default = 1)
  1386. SeeAlso: #P0072,#P0073,#P0075
  1387. Bitfields for C&T 82C811 wait states register:
  1388. Bit(s) Description (Table P0075)
  1389. 7 80387sx is present
  1390. 6 coprocessor is ready
  1391. 5-4 AT-bus 16-bit cycle wait states (default = 3)
  1392. 3-2 AT-bus 8-bit cycle wait states (00=two ... 11=five [default])
  1393. 1-0 bus clock (BCLK)
  1394. 00 CLK2IN/2 (default)
  1395. 01 CLK2IN/3
  1396. 10 ATCLK
  1397. 11 reserved
  1398. SeeAlso: #P0072,#P0073,#P0074
  1399. Bitfields for C&T 82C812 version register:
  1400. Bit(s) Description (Table P0076)
  1401. 7 NEATsx memory controller (0 = 82C812)
  1402. 6-5 82C812 revision (00 = initial release)
  1403. 4-0 reserved
  1404. SeeAlso: #P0072
  1405. --------h-P00220023--------------------------
  1406. PORT 0022-0023 - Chips&Technologies 84031/84035 - CONFIGURATION REGISTERS
  1407. Note: each access to PORT 0023h must immediately follow a write to
  1408. PORT 0022h (this is to avoid accidental accesses)
  1409. SeeAlso: PORT 0022h"82C311",PORT 0022h"82C315"
  1410. 0022 -W configuration register index (see #P0077)
  1411. 0023 RW configuration register data
  1412. (Table P0077)
  1413. Values for Chips&Technologies 84031/84035 configuration register index:
  1414. 01h (84035) IPC DMA controller wait states and clock (see #P0078)
  1415. !!!chips\82310.pdf p.71
  1416. !!!chips\api22.pdf p.33
  1417. 05h (84031) ISA-bus command delays (see #P0079)
  1418. 06h (84031) ISA-bus wait states (see #P0080)
  1419. 07h (84031) ISA-bus clock select (see #P0081)
  1420. 08h (84035) performance control (see #P0082)
  1421. 09h (84035) miscellaneous control (see #P0083)
  1422. 0Ah (84035) DMA clock select (see #P0084)
  1423. 10h (84031) DRAM timing (see #P0085)
  1424. !!!chips\api22.pdf p.49
  1425. 11h (84031) DRAM setup
  1426. 12h (84031) block 0/1 DRAM configuration
  1427. 13h (84031) block 2/3 DRAM configuration
  1428. 14h (84031) DRAM block 0 start address
  1429. 15h (84031) DRAM block 1 start address
  1430. 16h (84031) DRAM block 2 start address
  1431. 17h (84031) DRAM block 3 start address
  1432. 18h (84031) video shadow / local bus control
  1433. 19h (84031) shadow RAM read enable
  1434. 1Ah (84031) shadow RAM write enable
  1435. 1Bh (84031) ROMCS enable
  1436. 1Ch (84031) soft reset / GATEA20
  1437. Bitfields for C&T 84035 IPC DMA controller configuration:
  1438. Bit(s) Description (Table P0078)
  1439. 7-6 reserved
  1440. 5-4 wait states for 16-bit DMA
  1441. 00 one (default)
  1442. 01 two
  1443. 10 three
  1444. 11 four
  1445. 3-2 wait states for 8-bit DMA (settings same as bits 5-4)
  1446. 1 disable one-cycle delay of MEMR# signal after IOR#
  1447. 0 DMA clock (0 = BUSCLK/2 [default], 1 = BUSCLK)
  1448. SeeAlso: #P0077,#P0082
  1449. Bitfields for C&T 84031 ISA-bus command delays:
  1450. Bit(s) Description (Table P0079)
  1451. !!!
  1452. SeeAlso: #P0077,#P0080,#P0081
  1453. Bitfields for C&T 84031 ISA-bus wait states:
  1454. Bit(s) Description (Table P0080)
  1455. !!!
  1456. SeeAlso: #P0077,#P0079,#P0081
  1457. Bitfields for C&T 84031 ISA-bus clock select:
  1458. Bit(s) Description (Table P0081)
  1459. !!!
  1460. SeeAlso: #P0077,#P0079,#P0080
  1461. Bitfields for C&T 84035 performance control:
  1462. Bit(s) Description (Table P0082)
  1463. 7 flush 486 cache during every slow-mode hold (keeps CPU from running out
  1464. of L1 cache during holds)
  1465. 6-0 width of CPU hold pulse in BUSCLKs (0-127)
  1466. SeeAlso: #P0077,#P0078,#P0083
  1467. Bitfields for C&T 84035 miscellaneous control:
  1468. Bit(s) Description (Table P0083)
  1469. 7 floating-point error mode
  1470. =0 generate IRQ13 internally on FERR#
  1471. =1 use external logic to generate IRQ13
  1472. 6 keyboard interrupt mode
  1473. =0 receive IRQ1 directly on IRQ1 pin
  1474. =1 receive IRQ1 over control link
  1475. 5 disable GATEA20 emulation
  1476. =0 A20 controlled solely by PORT 0092h
  1477. =1 A20 is OR of PORT 0092h and emulated 8042 A20 control
  1478. 4 A20M#/TEST# function
  1479. =0 pin is TEST# input
  1480. =1 pin is A29M# output
  1481. 3 reserved
  1482. 2 enable 8254 Timer 1 refresh requests
  1483. clearing this bit prevents problems that may be caused by a refresh
  1484. request which occurs during a reset sequence
  1485. 1 use VL-bus-compatible preemptive arbitration for LGNT#
  1486. 0 deturbo mode (enable CPU holds as specified by performance-control
  1487. register) (see #P0082)
  1488. Note: the documentation says that bit 6 should remain clear
  1489. SeeAlso: #P0077,#P0082
  1490. Bitfields for C&T 84035 DMA clock select:
  1491. Bit(s) Description (Table P0084)
  1492. 7 disable internal real-time clock
  1493. 6-4 reserved (0)
  1494. 3-0 DMA clock
  1495. 0000 SCLK/10
  1496. 0001 SCLK/8
  1497. 0010 SCLK/6
  1498. 1000 SCLK/5 (use with 40 MHz SCLK)
  1499. 1001 SCLK/4 (use with 33 MHz SCLK)
  1500. 1010 SCLK/3 (use with 25 MHz SCLK)
  1501. 1011 SCLK/2.5 (for 20 MHz SCLK)
  1502. 1100 SCLK/2 (for 16 MHz SCLK)
  1503. 1101 SCLK/1.5
  1504. else reserved
  1505. Note: bits 3-0 should normally be set the same as register 07h bits 3-0
  1506. SeeAlso: #P0077
  1507. Bitfields for C&T 84031 DRAM timing:
  1508. Bit(s) Description (Table P0085)
  1509. 7-6 reserved (0)
  1510. 5
  1511. 4
  1512. 3
  1513. 2 !!!
  1514. 1 reserved (0)
  1515. 0 read timing
  1516. 0 = 3-2-2-2
  1517. 1 = 4-3-3-3
  1518. SeeAlso: #P0077,#P0086
  1519. Bitfields for C&T 84031 DRAM setup:
  1520. Bit(s) Description (Table P0086)
  1521. 7 enable DRAM parity
  1522. (PORT 0061h bits 7 and 2 must also both be clear to enable parity)
  1523. 6-4 reserved (0)
  1524. 3-0 enable interleave for banks 3-0
  1525. (enabling interleave doubles address range for bank; banks 0/2 and 1/3
  1526. may be interleaved with each other)
  1527. SeeAlso: #P0077,#P0085
  1528. ----------P00220023--------------------------
  1529. PORT 0022-0023 - OPTi 82C206 chipset - CONFIGURATION REGISTERS
  1530. Note: many other OPTi chipsets integrate the functionality of the 82C206, and
  1531. thus support the 82C206's configuration register (e.g. the
  1532. 82C558 from the Viper chipset)
  1533. 0022 ?W index for accesses to data port (set to 01h)
  1534. 0023 RW chip set data
  1535. Bitfields for OPTi 82C206 configuration register 01h:
  1536. Bit(s) Description (Table P0087)
  1537. 7-6 82C206 wait states
  1538. 00 1 SYSCLK
  1539. 01 2 SYSCLKs
  1540. 10 3 SYSCLKs
  1541. 11 4 SYSCLKs (default)
  1542. 5-4 number of wait states for 16-bit DMA cycles
  1543. 00 1 wait state (default)
  1544. 01 2 wait states
  1545. 10 3 wait states
  1546. 11 4 wait states
  1547. 3-2 number of wait states for 8-bit DMA cycles
  1548. 00 1 wait state (default)
  1549. 01 2 wait states
  1550. 10 3 wait states
  1551. 11 4 wait states
  1552. 1 enable early DMAMEMR#
  1553. 0 DMA speed
  1554. 0 SYSCLK/2
  1555. 1 SYSCLK
  1556. ----------P00220023--------------------------
  1557. PORT 0022-0023 - Intel 82091AA Advanced Integrated Peripheral
  1558. Range: PORT 0022h (X-Bus), PORT 0024h (X-Bus), PORT 026Eh (ISA), or
  1559. PORT 0398h (ISA)
  1560. SeeAlso: PORT 0024h"82091AA",PORT 026Eh"82091AA",PORT 0398h"82091AA"
  1561. 0022 ?W configuration register index (see #P0088)
  1562. 0023 RW configuration register data
  1563. (Table P0088)
  1564. Values for Intel 82091AA configuration register index:
  1565. 00h product ID (read-only)
  1566. A0h Intel 82091AA
  1567. 01h product revision (read-only) (see #P0089)
  1568. 02h configuration 1 (see #P0090)
  1569. 03h configuration 2 (see #P0091)
  1570. 04h-0Fh reserved
  1571. 10h floppy-disk controller configuration (see #P0092)
  1572. 11h floppy-disk controller power management/status (see #P0093)
  1573. 12h-1Fh reserved
  1574. 20h parallel port configuration (see #P0094)
  1575. 21h parallel port power management/status (see #P0095)
  1576. 22h-2Fh reserved
  1577. 30h serial port A configuration (see #P0096)
  1578. 31h serial port A power management/status (see #P0097)
  1579. 32h-3Fh reserved
  1580. 40h serial port B configuration (see #P0096)
  1581. 41h serial port B power management/status (see #P0097)
  1582. 42h-4Fh reserved
  1583. 50h IDE configuration (see #P0098)
  1584. 51h-FFh reserved
  1585. Bitfields for Intel 82091AA product revision register:
  1586. Bit(s) Description (Table P0089)
  1587. 7-4 stepping number
  1588. 3-0 "dash"-number
  1589. SeeAlso: #P0088
  1590. Bitfields for Intel 82091AA configuration register 1:
  1591. Bit(s) Description (Table P0090)
  1592. 7 unused (0)
  1593. 6 supply voltage (read-only) (1 = 3.3V, 0 = 5.0V)
  1594. 5-4 configuration mode
  1595. 00 software motherboard
  1596. 01 software add-in
  1597. 10 extended hardware
  1598. 11 basic hardware
  1599. 3 configuration address (read-only)
  1600. 0 primary address (PORT 0022h for X-Bus, PORT 026Eh for ISA)
  1601. 1 secondary address (PORT 0024h for X-Bus, PORT 0398h for ISA)
  1602. 2-1 reserved
  1603. 0 power-down AIP's main clock circuitry
  1604. SeeAlso: #P0088,#P0091
  1605. Bitfields for Intel 82091AA configuration register 2:
  1606. Bit(s) Description (Table P0091)
  1607. 7-3 IRQ7-IRQ3 mode select
  1608. 0 = active high (ISA-compatible tri-state drive)
  1609. 1 = active low (EISA-compatible open-collector drive)
  1610. 2-0 reserved
  1611. SeeAlso: #P0088,#P0090
  1612. Bitfields for Intel 82091AA floppy-disk controller configuration register:
  1613. Bit(s) Description (Table P0092)
  1614. 7 four floppy drive support enabled (with external decoder)
  1615. 6-2 reserved
  1616. 1 FDC address
  1617. 0 = primary (03F0h)
  1618. 1 = secondary (0370h)
  1619. 0 enable FDC
  1620. SeeAlso: #P0088,#P0093
  1621. Bitfields for Intel 82091AA floppy-disk controller power management register:
  1622. Bit(s) Description (Table P0093)
  1623. 7-4 reserved
  1624. 3 enable FDC auto-powerdown on idle
  1625. 2 reset FDC
  1626. (this bit must be pulsed, remaining high for at least 1.2 us)
  1627. 1 (read-only) FDC is idle
  1628. 0 power-down FDC
  1629. Note: to restore FDC from explicit powerdown via bit 0, clear bit 0, then
  1630. reset the FDC using bit 2 (hardware reset) or using a software reset
  1631. (FDC's DOR bit 2 or DSR bit 7)
  1632. SeeAlso: #P0088,#P0092
  1633. Bitfields for Intel 82091AA parallel port configuration:
  1634. Bit(s) Description (Table P0094)
  1635. 7 FIFO threshold
  1636. 0 = 8 slots in each direction
  1637. 1 = one slot forward, 15 reverse
  1638. 6-5 parallel-port hardware mode
  1639. 00 ISA-compatible
  1640. 01 PS/2-compatible
  1641. 10 EPP
  1642. 11 ECP (read only -- ECP mode must be set via ECP Extended Control Reg)
  1643. 4 reserved
  1644. 3 IRQ select
  1645. 0 = IRQ5
  1646. 1 = IRQ7
  1647. 2-1 address select
  1648. 00 PORT 0378h-037Bh
  1649. 01 PORT 0278h-027Bh
  1650. 10 PORT 03BCh-03BEh (not for EPP mode)
  1651. 11 reserved
  1652. 0 enable parallel port
  1653. SeeAlso: #P0088,#P0095,#P0920,PORT 0678h"ECP"
  1654. Bitfields for Intel 82091AA parallel port power managment register:
  1655. Bit(s) Description (Table P0095)
  1656. 7-6 reserved
  1657. 5 FIFO overrun or underrun has occurred
  1658. this bit is cleared by resetting the port via bit 2
  1659. 4 reserved
  1660. 3 enable auto-powerdown
  1661. 2 reset parallel port (pulse this bit; must remain high for 1.13 us)
  1662. 1 (read-only) parallel port is idle
  1663. 0 power-down parallel port
  1664. Note: an explicit power-down may be canceled by either clearing bit 0 or
  1665. pulsing bit 2 to reset the port
  1666. SeeAlso: #P0088,#P0094
  1667. Bitfields for Intel 82091AA serial port configuration:
  1668. Bit(s) Description (Table P0096)
  1669. 7 enable 2MHz MIDI clock for MIDI baud rate
  1670. 6-5 reserved
  1671. 4 IRQ select
  1672. 0 = IRQ3
  1673. 1 = IRQ4
  1674. 3-1 address select
  1675. 000 PORT 03F8h-03FFh
  1676. 001 PORT 02F8h-02FFh
  1677. 010 PORT 0220h-0227h
  1678. 011 PORT 0228h-022Fh
  1679. 100 PORT 0238h-023Fh
  1680. 101 PORT 02E8h-02EFh
  1681. 110 PORT 0338h-033Fh
  1682. 111 PORT 03E8h-03EFh
  1683. 0 enable serial port
  1684. Note: although it is possible to configure both serial ports at the same
  1685. address, this is not recommended because the 82091AA disables serial
  1686. port B without placing it into powerdown mode
  1687. SeeAlso: #P0088,#P0097
  1688. Bitfields for Intel 82091AA serial port power management register:
  1689. Bit(s) Description (Table P0097)
  1690. 7-5 reserved
  1691. 4 enable test mode
  1692. when enabled, and DLAB bit in LCR is set, the baud rate clock is output
  1693. on the SOUTA pin
  1694. 3 enable auto-powerdown on idle
  1695. 2 reset serial port (should be pulsed, high for at least 1.13 us)
  1696. 1 (read-only) serial port is idle
  1697. 0 power-down serial port
  1698. Notes: setting powerdown mode via bit 0 resets both receiver and transmitter,
  1699. including the FIFOs, so software should check that port is idle
  1700. before powering it down
  1701. the serial port may be brought out of an explicit powerdown by either
  1702. clearing bit 0 or pulsing bit 2
  1703. SeeAlso: #P0088,#P0096
  1704. Bitfields for Intel 82091AA IDE configuration:
  1705. Bit(s) Description (Table P0098)
  1706. 7-3 reserved
  1707. 2 enable both primary and secondary addresses
  1708. 1 address select (when bit 2 is clear)
  1709. 0 PORT 01F0h-01F7h and 03F6h (primary)
  1710. 1 PORT 0170h-0177h and 0376h (secondary)
  1711. 0 enable IDE interface
  1712. !!!intel\29048603.pdf p.45
  1713. SeeAlso: #P0088,#P0092
  1714. ----------P00220024--------------------------
  1715. PORT 0022-0024 - CHIPSET FROM PICO POWER, UMC or PCChips
  1716. 0022 ?W index for accesses to data port
  1717. 0024 RW chip set data
  1718. ----------P00220024--------------------------
  1719. PORT 0022-0024 - OPTi 82C281/282/283 CHIPSETS - CONFIGURATION REGISTERS
  1720. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  1721. even if the same register is being accessed a second time
  1722. SeeAlso: PORT 0022h"82C206"
  1723. 0022 ?W index for accesses to data port (see #P0099)
  1724. 0024 RW chip set data
  1725. (Table P0099)
  1726. Values for OPTi 82C281/82C282/82C283 configuration register index:
  1727. 10h DRAM configuration register (see #P0100)
  1728. 11h Shadow RAM control register (see #P0101)
  1729. 12h Shadow RAM control register 2 (see #P0102)
  1730. 13h Shadow RAM control register 3 (see #P0103)
  1731. 14h miscellaneous control register (see #P0104)
  1732. 15h cache control register (see #P0105)
  1733. 16h cache control register 2 (see #P0106)
  1734. Bitfields for OPTi 82C281/282/283 DRAM configuration register:
  1735. Bit(s) Description (Table P0100)
  1736. 7-6 82C281/2 revision number (read-only)
  1737. 7 82C283 revision (0 = A, 1 = B)
  1738. 6 82C283A: reserved
  1739. 82C283B: DRAM is pipelined
  1740. 5 local DRAM read wait states
  1741. 82C281/2: 0=one, 1=two 82C283: 0=none, 1=one
  1742. 4 local DRAM write wait states
  1743. 82C281/2: 0=one, 1=two 82C283: 0=none, 1=one
  1744. 3-0 local DRAM memory configuration
  1745. (val) Bank0 Bank1 Bank2 Bank3
  1746. 0001 256K 256K 256K 256K
  1747. 0010 256K 256K 1M -
  1748. 0011 256K 256K 1M 1M
  1749. 0100 256K 256K 4M -
  1750. 0101 1M - - -
  1751. 0110 1M 1M - -
  1752. 0111 1M 1M 1M -
  1753. 1000 1M 1M 1M 1M
  1754. 1001 1M 4M - -
  1755. 1010 1M 1M 4M -
  1756. 1011 4M 4M - -
  1757. 1100 4M - - - (82C283B only)
  1758. 1111 256K 256K - -
  1759. SeeAlso: #P0099
  1760. Bitfields for OPTi 82C281 shadow RAM control register:
  1761. Bit(s) Description (Table P0101)
  1762. 7 BIOS ROM F000-FFFF shadowing
  1763. 0 read-only from shadow RAM
  1764. 1 read from ROM, write to shadow RAM
  1765. 6 adapter ROM at E000-EFFF
  1766. 0 disable shadow RAM
  1767. 1 shadow RAM selectively enabled by configuration register 12h
  1768. (see #P0102)
  1769. 5 adapter ROM at D000-DFFF
  1770. 0 disable shadow RAM
  1771. 1 shadow RAM selectively enabled by configuration register 12h
  1772. 4 adapter ROM at C000-CFFF
  1773. 0 disable shadow RAM
  1774. 1 shadow RAM selectively enabled by configuration register 13h
  1775. (see #P0103)
  1776. 3 shadow RAM Copy Enable control (C000-EFFF)
  1777. 0 write to expansion bus
  1778. 1 write to local DRAM
  1779. 2 shadow RAM E000-EFFF writeability
  1780. 0 read/write
  1781. 1 read-only
  1782. 1 shadow RAM D000-DFFF writeability
  1783. 0 read/write
  1784. 1 read-only
  1785. 0 shadow RAM C000-CFFF writeability
  1786. 0 read/write
  1787. 1 read-only
  1788. SeeAlso: #P0099,#P0102
  1789. Bitfields for OPTi 82C281 shadow RAM control register 2:
  1790. Bit(s) Description (Table P0102)
  1791. 7 enable EC00-EFFF
  1792. 6 enable E800-EBFF
  1793. 5 enable E400-E7FF
  1794. 4 enable E000-E3FF
  1795. 3 enable DC00-DFFF
  1796. 2 enable D800-DBFF
  1797. 1 enable D400-D7FF
  1798. 0 enable D000-D3FF
  1799. Note: bits 7-4 are only in effect when register 11h bit 6 is set; bits 3-0
  1800. are only in effect when register 11h bit 5 is set
  1801. SeeAlso: #P0099,#P0101,#P0103
  1802. Bitfields for OPTi 82C281 shadow RAM control register 3:
  1803. Bit(s) Description (Table P0103)
  1804. 7 enable CC00-CFFF
  1805. 6 enable C800-CBFF
  1806. 5 enable C400-C7FF
  1807. 4 enable C000-C3FF
  1808. 3-0 unused shadow RAM remap address; supplies bits 23-20 of
  1809. address at which to map A000-BFFFF and D000-EFFF is not used
  1810. for shadowing (except if this field is set to 0, the remapping
  1811. is disabled)
  1812. SeeAlso: #P0099,#P0101,#P0102
  1813. Bitfields for OPTi 82C281 miscellaneous control register:
  1814. Bit(s) Description (Table P0104)
  1815. 7 allow F0000-F0FFF to be written even while F0000-FFFFF is
  1816. write-protected ("Zenith mode")
  1817. 6 keyboard reset control
  1818. =1 HLT must be executed before 82C281 generates CPU reset from
  1819. keyboard controller Reset command
  1820. 5 master byte swap enable
  1821. 4 82C281/2: fast NMI request
  1822. 82C283A: reserved (0)
  1823. 82C283B: ATCLK setting (=0 from register 14h bit 0; =1 CLK/8)
  1824. 3 82C281/2/3A: reserved
  1825. 82C283B: on-board DRAM parity error enable
  1826. 2 enable slow refresh mode
  1827. (every 95.5 us (281/282) or 63.6 us (283) instead of 15.9 us)
  1828. 1 enable turbo switch function
  1829. 0 clock select
  1830. =0 ATCLK2 = CPUCLK2 / 6
  1831. =1 ATCLK2 = CPUCLK2 / 4
  1832. SeeAlso: #P0099
  1833. Bitfields for OPTi 82C281/82C282 cache control register:
  1834. Bit(s) Description (Table P0105)
  1835. 7 enable cache
  1836. 6 reserved (0)
  1837. 5 enable posted write (82C281 only)
  1838. 4 ALL accesses are non-cacheable
  1839. 3 reserved (0)
  1840. 2-0 non-cacheable region size (see also #P0106)
  1841. 000 64K
  1842. 001 128K
  1843. ...
  1844. 101 4M
  1845. 110 8M
  1846. 111 disabled
  1847. SeeAlso: #P0099,#P0106
  1848. Bitfields for OPTi 82C281/82C282 cache control register 2:
  1849. Bit(s) Description (Table P0106)
  1850. 7-0 starting address bits 23-16 of non-cacheable region
  1851. Note: the specified starting address must be a multiple of the region size
  1852. SeeAlso: #P0099,#P0105
  1853. ----------P00220024--------------------------
  1854. PORT 0022-0024 - OPTi 82C291/82C295 CHIPSETS - CONFIGURATION REGISTERS
  1855. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  1856. even if the same register is being accessed a second time
  1857. SeeAlso: PORT 0022h"82C206"
  1858. 0022 ?W index for accesses to data port (see #P0107)
  1859. 0024 RW chip set data
  1860. (Table P0107)
  1861. Values for OPTi 82C291/82C295 configuration register index:
  1862. 20h Revision/AT Bus configuration register (see #P0108)
  1863. 21h System Control register (see #P0109)
  1864. 22h DRAM configuration register (see #P0110)
  1865. 23h ROM Chip Select Control register (see #P0111)
  1866. 24h Shadow RAM control register E (see #P0112)
  1867. 25h Shadow RAM control register D (see #P0113)
  1868. 26h Shadow RAM control register C (see #P0114)
  1869. 27h Shadow RAM Write Protect/Remap Area (see #P0115)
  1870. 28h Cache Control register (see #P0116)
  1871. 29h Cacheable Upper Bound register (see #P0117)
  1872. 2Ah Non-Cacheable Segments register 1 (see #P0118)
  1873. 2Bh Non-Cacheable Segments register 2 (see #P0119)
  1874. 2Ch Non-Cacheable Segments register 3 (see #P0120)
  1875. Bitfields for OPTi 82C291/82C295 AT Bus configuration register:
  1876. Bit(s) Description (Table P0108)
  1877. 7-6 82C291/295 revision (read-only)
  1878. 5-4 back-to-back I/O recovery time
  1879. 00-11 = 3-6 ATCLKs between I/O accesses
  1880. 3 enable slow refresh mode
  1881. 2 enable hidden refresh
  1882. 1-0 AT clock selection
  1883. 00 ATCLK = CLK2 / 10
  1884. 01 ATCLK = CLK2 / 8
  1885. 10 ATCLK = CLK2 / 6
  1886. 11 ATCLK = CLK2 / 4
  1887. SeeAlso: #P0107
  1888. Bitfields for OPTi 82C291/82C295 System Control register:
  1889. Bit(s) Description (Table P0109)
  1890. 7 AT bus master byte swap enabled
  1891. 6 ALE generation for each AT cycle
  1892. 0 a new ALE will be generated during bus conversion cycles
  1893. 1 multiple ALEs will be generated during bus conversion cycles
  1894. 5 keyboard fast reset emulation control
  1895. 0 enable, a "Halt" is required before a fast CPU reset is generated
  1896. 1 disable, fast CPU reset is generated directly after the "FE" I/O
  1897. command to port 64h is decoded
  1898. 4 AT cycle additional wait state
  1899. 0 disable, standard AT cycle
  1900. 1 enable, inserts one extra wait state in standard AT bus cycle
  1901. 3-2 reserved
  1902. 1 local device ready control
  1903. 0 RDYI# input to the 82C291 will be synchronized and set as RDY# to
  1904. the CPU one T-state delayed
  1905. 1 RDYI# input to the 82C291 will not be output to the CPU. RDY# from
  1906. the local device must be directed to the 82C291 and the CPU
  1907. 0 system memory parity checking
  1908. 0 disable, no parity checking
  1909. 1 enable, will check parity
  1910. SeeAlso: #P0107
  1911. Bitfields for OPTi 82C291/82C295 DRAM Configuration register:
  1912. Bit(s) Description (Table P0110)
  1913. 7-6 number of DRAM read cycle wait states
  1914. 5-4 number of DRAM write cycle wait states
  1915. 3-0 Banks 0 thru 3 DRAM configuration
  1916. (val) Bank0 Bank1 Bank2 Bank3
  1917. 0000 256K 256KB - -
  1918. 0001 256K 256K 256K 256K
  1919. 0010 256K 256K 1M -
  1920. 0011 256K 256K 1M 1M
  1921. 0100 256K 256K 4M -
  1922. 0101 1M - - -
  1923. 0110 1M 1M - -
  1924. 0111 1M 1M 1M -
  1925. 1000 1M 1M 1M 1M
  1926. 1001 1M 4M - -
  1927. 1010 1M 1M 4M -
  1928. 1011 4M - - -
  1929. 1100 4M 4M - -
  1930. 1101 reserved
  1931. 1110 reserved
  1932. 1111 reserved
  1933. SeeAlso: #P0107
  1934. Bitfields for OPTi 82C291/82C295 ROM Chip Select Control register:
  1935. Bit(s) Description (Table P0111)
  1936. 7 enable ROM Chip Select for write cycles (to support flash ROMs)
  1937. 6 enable ROMCS# for 0F0000-0FFFFF segments
  1938. 5 enable ROMCS# for 0E8000-0EFFFF segments
  1939. 4 enable ROMCS# for 0E0000-0E7FFF segments
  1940. 3 enable ROMCS# for 0D8000-0DFFFF segments
  1941. 2 enable ROMCS# for 0D0000-0D7FFF segments
  1942. 1 enable ROMCS# for 0C8000-0CFFFF segments
  1943. 0 enable ROMCS# for 0C0000-0C7FFF segments
  1944. SeeAlso: #P0107
  1945. Bitfields for OPTi 82C291/82C295 Shadow RAM control register E:
  1946. Bit(s) Description (Table P0112)
  1947. 7 enable shadow RAM reads for EC000-EFFFF segments
  1948. 6 enable shadow RAM reads for E8000-EBFFF segments
  1949. 5 enable shadow RAM reads for E4000-E7FFF segments
  1950. 4 enable shadow RAM reads for E0000-E3FFF segments
  1951. 3 enable shadow RAM writes for EC000-EFFFF segments
  1952. 2 enable shadow RAM writes for E8000-EBFFF segments
  1953. 1 enable shadow RAM writes for E4000-E7FFF segments
  1954. 0 enable shadow RAM writes for E0000-E3FFF segments
  1955. Note: OPTi documentation incorrectly states the segment range for bits 5
  1956. and 1 as E4000-E7000.
  1957. SeeAlso: #P0107
  1958. Bitfields for OPTi 82C291/82C295 Shadow RAM control register D:
  1959. Bit(s) Description (Table P0113)
  1960. 7 enable shadow RAM reads for DC000-DFFFF segments
  1961. 6 enable shadow RAM reads for D8000-DBFFF segments
  1962. 5 enable shadow RAM reads for D4000-D7FFF segments
  1963. 4 enable shadow RAM reads for D0000-D3FFF segments
  1964. 3 enable shadow RAM writes for DC000-DFFFF segments
  1965. 2 enable shadow RAM writes for D8000-DBFFF segments
  1966. 1 enable shadow RAM writes for D4000-D7FFF segments
  1967. 0 enable shadow RAM writes for D0000-D3FFF segments
  1968. Note: OPTi documentation incorrectly states the segment range for bits 5
  1969. and 1 as D4000-D7000.
  1970. SeeAlso: #P0107
  1971. Bitfields for OPTi 82C291/82C295 Shadow RAM control register C:
  1972. Bit(s) Description (Table P0114)
  1973. 7 enable shadow RAM reads for CC000-CFFFF segments
  1974. 6 enable shadow RAM reads for C8000-CBFFF segments
  1975. 5 enable shadow RAM reads for C4000-C7FFF segments
  1976. 4 enable shadow RAM reads for C0000-C3FFF segments
  1977. 3 enable shadow RAM writes for CC000-CFFFF segments
  1978. 2 enable shadow RAM writes for C8000-CBFFF segments
  1979. 1 enable shadow RAM writes for C4000-C7FFF segments
  1980. 0 enable shadow RAM writes for C0000-C3FFF segments
  1981. Note: OPTi documentation incorrectly states the segment range for bits 5
  1982. and 1 as C4000-C7000.
  1983. SeeAlso: #P0107
  1984. Bitfields for OPTi 82C291/82C295 Shadow RAM Write Protect/Remap Area:
  1985. Bit(s) Description (Table P0115)
  1986. 7 enable Write Protect for F0000-FFFFF segments
  1987. 6 enable Write Protect for E0000-EFFFF segments
  1988. 5 enable Write Protect for D0000-DFFFF segments
  1989. 4 enable Write Protect for C0000-CFFFF segments
  1990. 3-0 DRAM remap starting address, bits 23-20
  1991. 0000 disabled, no mapping
  1992. 0001 1M
  1993. 0010 2M
  1994. ...
  1995. 1111 15M
  1996. SeeAlso: #P0107
  1997. Bitfields for OPTi 82C291/82C295 Cache Control register:
  1998. Bit(s) Description (Table P0116)
  1999. 7 enable write-back cache controller operation
  2000. 6 enable DRAM performance mode
  2001. this bit should not be enabled unless external cache is disabled
  2002. (intended to optimize DRAM performance)
  2003. 5 enable all memory accesses no-cacheable mode
  2004. 4 enable 640K-1M area no-cacheable mode
  2005. 3-2 cache timing control bits
  2006. 00 invalid
  2007. 01 0 wait state cache write w/o CAWE# extended, use when 8K*8 SRAMs
  2008. 10 1 wait state cache write hit
  2009. 11 0 wait state cache write hit with CAWE# extended when 32K*8 SRAMs
  2010. 1-0 cache size/cacheable DRAM
  2011. 00 16K / 2M
  2012. 01 32K / 4M
  2013. 10 64K / 8M
  2014. 11 128K / 16M
  2015. SeeAlso: #P0107
  2016. Bitfields for OPTi 82C291/82C295 Cacheable Upper Bound register:
  2017. Bit(s) Description (Table P0117)
  2018. 7-4 reserved
  2019. 3-0 cacheable upper bound address, bits 23-20
  2020. 0000 feature disabled
  2021. 0001 1M
  2022. 0010 2M
  2023. ...
  2024. 1111 15M
  2025. SeeAlso: #P0107
  2026. Bitfields for OPTi 82C291/82C295 Non-Cacheable Segments register 1:
  2027. Bit(s) Description (Table P0118)
  2028. 7 enable non-cacheable segment A
  2029. 6-4 size of no-cacheable memory segment A
  2030. 000 64K
  2031. 001 128K
  2032. 010 256K
  2033. 011 512K
  2034. 100 1M
  2035. 101 2M
  2036. 110 4M
  2037. 111 8M
  2038. 3 enable non-cacheable segment B
  2039. 2-0 size of no-cacheable memory segment B (same values as bits 6-4)
  2040. SeeAlso: #P0107,#P0119
  2041. Bitfields for OPTi 82C291/82C295 Non-Cacheable Segments register 2:
  2042. Bit(s) Description (Table P0119)
  2043. 7-0 address bits 23-16 for starting address of non-cacheable memory
  2044. segment A
  2045. SeeAlso: #P0107,#P0118,#P0120
  2046. Bitfields for OPTi 82C291/82C295 Non-Cacheable Segments register 3:
  2047. Bit(s) Description (Table P0120)
  2048. 7-0 address bits 23-16 for starting address of non-cacheable memory
  2049. segment B
  2050. SeeAlso: #P0107,#P0118,#P0119
  2051. ----------P00220024--------------------------
  2052. PORT 0022-0024 - OPTi 82C381/82C382 CHIPSETS - CONFIGURATION REGISTERS
  2053. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  2054. even if the same register is being accessed a second time
  2055. SeeAlso: PORT 0022h"82C206"
  2056. 0022 ?W index for accesses to data port (see #P0121)
  2057. 0024 RW chip set data
  2058. (Table P0121)
  2059. Values for OPTi 82C381/82C382 configuration register index:
  2060. 00h clock selects (see #P0122)
  2061. 01h reset control (see #P0123)
  2062. 10h remapping address (see #P0124)
  2063. 11h shadow RAM (see #P0125)
  2064. 12h memory enable (see #P0126)
  2065. 13h bank configuration (see #P0127)
  2066. 14h DRAM configuration (see #P0128)
  2067. 15h video adapter shadow (see #P0129)
  2068. 16h fast GateA20 (see #P0130)
  2069. 17h cache configuration (see #P0131)
  2070. 18h non-cacheable block 1 size (see #P0132)
  2071. 19h non-cacheable block 1 address (see #P0133)
  2072. 1Ah non-cacheable block 2 size (see #P0132)
  2073. 1Bh non-cacheable block 2 address (see #P0133)
  2074. 1Ch cacheable area (see #P0134)
  2075. Note: registers 00h and 01h address the 82C381, the remaining registers
  2076. address the 82C382
  2077. SeeAlso: #P0189
  2078. Bitfields for OPTi 82C381/82C382 clock selects:
  2079. Bit(s) Description (Table P0122)
  2080. 7-6 cache controller enable
  2081. 00 cache controller disabled (default)
  2082. 01 cache controller disabled; PPCS#, SPCS#, NPCS# signals are
  2083. active if selected
  2084. 10 external cache controller installed
  2085. 11 on-chip cache controller installed
  2086. 5 hot CPU reset (low->high transition generates reset)
  2087. 4 enable ATCLK stretch
  2088. 3 turbo clock
  2089. =0 CLKIN is CPU clock
  2090. =1 HIGH pin selected clock (HIGH=0: CLKIN, HIGH=1: ICLK)
  2091. 2-1 ICLK clock select
  2092. 00 CLKIN/4 (default)
  2093. 01 CLKIN/3
  2094. 10 CLKIN/2
  2095. 11 reserved
  2096. 0 master byte swap enable (default = 0)
  2097. SeeAlso: #P0121,#P0123
  2098. Bitfields for OPTi 82C381/82C382 reset control:
  2099. Bit(s) Description (Table P0123)
  2100. 7-2 reserved
  2101. 1 RESET3 control
  2102. =1 generate RESET3 on RESET2 only after a HLT instruction
  2103. =0 generate RESET3 immediately on RESET2 (default)
  2104. 0 activate cache controller FLUSH# pin (default = 1)
  2105. SeeAlso: #P0121,#P0122,#P0124
  2106. Bitfields for OPTi 82C381/82C382 remapping address:
  2107. Bit(s) Description (Table P0124)
  2108. 7-5 reserved
  2109. 4 enable remapping
  2110. 3-0 remap address range, bits 23-20
  2111. 0000 no mapping
  2112. 0001 1M
  2113. 0010 2M
  2114. ...
  2115. 1111 15M
  2116. SeeAlso: #P0121
  2117. Bitfields for OPTi 82C381/82C382 shadow RAM control:
  2118. Bit(s) Description (Table P0125)
  2119. 7 BIOS ROM at F0000-FFFFF Shadowing
  2120. 0 read only from shadow RAM
  2121. 1 read from ROM, write to shadow RAM
  2122. 6 ROM at D0000-DFFFF
  2123. 0 disable shadow RAM
  2124. 1 shadow RAM selectively enabled by configuration register 12h
  2125. 5 Adaptor ROM at E0000-EFFFF
  2126. 0 disable shadow RAM
  2127. 1 shadow RAM selectively enabled by configuration register 12h
  2128. 4 write-protect shadow RAM at D0000h-DFFFFh (default = not protected)
  2129. 3 write-protect shadow RAM at E0000h-EFFFFh
  2130. 2 enable Timeout precharge counter
  2131. 1-0 reserved
  2132. SeeAlso: #P0121
  2133. Bitfields for OPTi 82C381/82C382 memory enable:
  2134. Bit(s) Description (Table P0126)
  2135. 7 enable EC000-EFFFF
  2136. 6 enable E8000-EBFFF
  2137. 5 enable E4000-E7FFF
  2138. 4 enable E0000-E3FFF
  2139. 3 enable DC000-DFFFF
  2140. 2 enable D8000-DBFFF
  2141. 1 enable D4000-D7FFF
  2142. 0 enable D0000-D3FFF
  2143. Note: 0 = disable Shadow RAM (default), 1 = enable Shadow RAM
  2144. SeeAlso: #P0121
  2145. Bitfields for OPTi 82C381/82C382 memory bank configuration:
  2146. Bit(s) Description (Table P0127)
  2147. 7 Reserved
  2148. 6-4 Bank0 and Bank1 configuration
  2149. (val) Bank0 Bank1
  2150. 000 256K -
  2151. 001 256K 256K
  2152. 010 256K 1M
  2153. 011 1M 256K
  2154. 100 1M -
  2155. 101 1M 1M
  2156. 110 - -
  2157. 111 256K -
  2158. 3 reserved
  2159. 2-0 Bank2 and Bank3 configuration
  2160. (val) Bank2 Bank3
  2161. 000 256K -
  2162. 001 256K 256K
  2163. 010 - -
  2164. 011 1M 256K
  2165. 100 1M -
  2166. 101 1M 1M
  2167. 11X - -
  2168. SeeAlso: #P0121,#P0128
  2169. Bitfields for OPTi 82C381/82C382 DRAM configuration:
  2170. Bit(s) Description (Table P0128)
  2171. 7,6 number of read cycle wait states (default = 01)
  2172. 5 write cycle wait state
  2173. 0 = 0 wait
  2174. 1 = 1 wait (default)
  2175. 4-0 reserved
  2176. SeeAlso: #P0121
  2177. Bitfields for OPTi 82C381/82C382 video adapter shadow:
  2178. Bit(s) Description (Table P0129)
  2179. 7 reserved
  2180. 6 copy enable for C0000-EFFFF
  2181. 0 write to AT Channel (default)
  2182. 1 write to local DRAM
  2183. 5 Shadow RAM at C0000-CFFFF writability
  2184. 0 read/write (default)
  2185. 1 read only
  2186. 4 ROM at C0000-CFFFF
  2187. 0 disable shadow RAM
  2188. 1 shadow RAM selectively enabled by Bits<0:3> (default)
  2189. 3 enable Shadow RAM at CC000-CFFFF
  2190. 2 enable Shadow RAM at C8000-CbFFF
  2191. 1 enable Shadow RAM at C4000-C7FFF
  2192. 0 enable Shadow RAM at C0000-C3FFF
  2193. SeeAlso: #P0121
  2194. Bitfields for OPTi 82C381/82C382 fast GateA20 control:
  2195. Bit(s) Description (Table P0130)
  2196. 7-4 Reserved
  2197. 3 Fast GateA20 Control
  2198. 0 Signal controled by GATEA20 signal from Keyboard Controler
  2199. 1 CPUA20 enabled onto GA20
  2200. 2-0 reserved
  2201. SeeAlso: #P0121
  2202. Bitfields for OPTi 82C381/82C382 cache configuration:
  2203. Bit(s) Description (Table P0131)
  2204. 7 force NCA* Output Pin low
  2205. if this bit is clear, it has no effect on NCA* Output Pin
  2206. 6 enable Cache
  2207. 5 write-through cache (Note: this bit must be set)
  2208. 4-3 line size
  2209. 00 4 bytes
  2210. 01 8 bytes
  2211. 10 16 bytes
  2212. 11 reserved
  2213. 2-0 reserved
  2214. SeeAlso: #P0121
  2215. Bitfields for OPTi 82C381/82C382 non-cacheable block size:
  2216. Bit(s) Description (Table P0132)
  2217. 7-5 block size
  2218. 000 64K
  2219. 001 128K
  2220. 010 256K
  2221. 011 512K
  2222. 100 1M
  2223. 101 4M (block 1 only)
  2224. 101 reserved (block 2 only)
  2225. 110 8M (block 1 only)
  2226. 110 reserved (block 2 only)
  2227. 111 disabled (default)
  2228. 4-0 reserved (0)
  2229. SeeAlso: #P0121,#P0131,#P0133
  2230. Bitfields for OPTi 82C381/82C382 non-cacheable block address:
  2231. Bit(s) Description (Table P0133)
  2232. 7-0 bits 23-16 of non-cacheable block's address
  2233. Note: the selected address must be a multiple of the block size
  2234. selected by register 18h/1Ah
  2235. SeeAlso: #P0121,#P0132,#P0134
  2236. Bitfields for OPTi 82C381/82C382 cacheable area:
  2237. Bit(s) Description (Table P0134)
  2238. 7-4 cacheable address range
  2239. 0000 16M
  2240. 0001 1M
  2241. 0010 2M
  2242. 0011 3M
  2243. ...
  2244. 1111 15M
  2245. 3 256K remapped area is cacheable
  2246. 2-0 reserved
  2247. SeeAlso: #P0121
  2248. ----------P00220024--------------------------
  2249. PORT 0022-0024 - OPTi 82C463MV CHIPSET - CONFIGURATION REGISTERS
  2250. Desc: the 82C463MV contains a memory control unit (MCU), an AT Bus
  2251. Control Unit (BCU), a Power Management Unit (PMU), data
  2252. buffers and a 82C206 type IPC (without real time clock)
  2253. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  2254. even if the same register is being accessed a second time
  2255. SeeAlso: PORT 0022h"82C206"
  2256. 0022 ?W index for accesses to data port (see #P0135)
  2257. 0024 RW chip set data
  2258. (Table P0135)
  2259. Values for OPTi 82C463MV configuration register index:
  2260. 30h general control 1 (see #P0136)
  2261. 31h general control 2 (see #P0137)
  2262. 32h shadow RAM control 1 (see #P0138)
  2263. 33h shadow RAM control 2 (see #P0139)
  2264. 34h DRAM size (see #P0140)
  2265. 35h DRAM timing and caching control (see #P0141)
  2266. 36h shadow RAM control 3 (see #P0142)
  2267. 37h D000h and E000h segment access control (see #P0143)
  2268. 38h non-cacheable block 1 size, controls and address bit A24 (see #P0144)
  2269. 39h non-cacheable block 1 address bits A23-A16
  2270. 3Ah non-cacheable block 2 size and address bit A24 (see #P0145)
  2271. 3Bh non-cacheable block 2 address bits A23-A16
  2272. 3Ch-3Fh reserved
  2273. 40h PMU control 1 (see #P0146)
  2274. 41h PMU control 2: doze timer (see #P0147)
  2275. 42h PMU control 3: other timers (see #P0148)
  2276. 43h PMU control 4 (see #P0149)
  2277. 44h LCD timer count (should not be loaded with a value <5)
  2278. 45h disk timer count (should not be loaded with a value <5)
  2279. 46h keyboard timer count (should not be loaded with a value <5)
  2280. 47h GNR_ACCESS timer count (should not be loaded with a value <5)
  2281. 48h GNR_ACCESS I/O base address (lines A8-A1, A0 is a "don't care")
  2282. 49h GNR_ACCESS control and I/O base address line A9 (see #P0150)
  2283. 4Ah CSG0# base address (lines A8-A1, A0 is a "don't care")
  2284. 4Bh CSG0# control and base address line A9 (see #P0151)
  2285. 4Ch CSG1# base address (lines A8-A1, A0 is a "don't care")
  2286. 4Dh CSG1# control and base address line A9 (see #P0152)
  2287. 4Eh idle timer control (see #P0153)
  2288. 4Fh idle timer count (should not be loaded with a value <5)
  2289. 50h suspend/resume control (see #P0154)
  2290. 51h beeper/sequencer control (see #P0155)
  2291. 52h PMU general-purpose storage 1
  2292. 53h PMU general-purpose storage 2
  2293. 54h PMU Periferal Power (PPWR) control 1 (see #P0156)
  2294. 55h PMU Periferal Power (PPWR) control 2 (see #P0157)
  2295. 56h PIO control 1 (see #P0158)
  2296. 57h PIO control 2 (see #P0159)
  2297. 58h PMU event control 1 (see #P0160)
  2298. 59h PMU event control 2 (see #P0161)
  2299. 5Ah PMU event control 3 (see #P0162)
  2300. 5Bh PMU event control 4 (see #P0163)
  2301. 5Ch SMI source (low) (see #P0164)
  2302. 5Dh SMI source (high) (see #P0165)
  2303. 5Eh clock stretching control (see #P0166)
  2304. 5Fh resume interrupt control (see #P0167)
  2305. 60h software sequencer address (write only)
  2306. 61h debounce control (see #P0168)
  2307. 62h doze-mode IRQ selects (see #P0169)
  2308. 63h idle timer IRQ selects (see #P0170)
  2309. 64h PMI#6 IRQ select (see #P0171)
  2310. 65h doze-mode configuration (see #P0172)
  2311. 66h suspend control (see #P0173)
  2312. 67h CPU frequency (see #P0174)
  2313. 68h timer clock source (see #P0175)
  2314. 69h R_TIMER count (should not be loaded with a value <5)
  2315. 6Ah resume IRQ selects (see #P0176)
  2316. 6Bh resume sources (see #P0177)
  2317. 6Ch-6Fh TMP0 - TMP3
  2318. Bitfields for 82C463MV general control 1 (register 30h):
  2319. Bit(s) Description (Table P0136)
  2320. 7-6 chipset revision number (read only)
  2321. 5 MASTER#/RI pin function (RI = modem Ring Indicator)
  2322. =1 RI (default)
  2323. =0 MASTER#
  2324. 4 enable turbo VGA
  2325. 3 enable global relocation/translation for SMI addresses (see also
  2326. register 31h bit 4 at #P0137)
  2327. 2 enable extra wait state in AT cycle
  2328. 1 fast reset control
  2329. =1 does not require Halt instruction
  2330. =0 requires Halt instruction before generation of CPURST (SRESET
  2331. if Intel SL Enhanced or Cyrix Cx486S/S2 CPUs
  2332. 0 reserved (0)
  2333. SeeAlso: #P0135
  2334. Bitfields for 82C463MV general control 2 (register 31h):
  2335. Bit(s) Description (Table P0137)
  2336. 7 enable master byte swap
  2337. 6 reserved, read-only (1)
  2338. 5 disable parity check
  2339. 4 Dynamic SMI relocation
  2340. if no SMI sequence is running
  2341. =1 allow relocation of addresses from the CPU in the 3000h/4000h
  2342. segment to the B000h/A000h SMI memory space
  2343. =0 disable relocation
  2344. if SMI sequence is running (qualified by SMIACT#)
  2345. =1 allow data accesses to the 3000h and 4000h segments
  2346. =0 relocate all accesses in the 3000h/4000h segment to the
  2347. B000h/A000h SMI segment (normal operation)
  2348. if SMI sequence is running (qualified by SMIADS#)
  2349. =1 not allowed
  2350. =0 for a SMIADS# cycle, relocate all accesses in the 6000h/7000h
  2351. segment to the A000h/B000h SMI segment
  2352. for a normal ADS# operation, there is no relocation
  2353. 3 EC000h-EFFFFh access control
  2354. if register 36h bit 6=0
  2355. =1 R/W from ROMCS#
  2356. =0 R/W from AT-Bus
  2357. if register 36h bit 6=1
  2358. =1 Read from ROMCS# if not shadowed (see register 33h bits 7-4),
  2359. write to DRAM
  2360. =0 Read from AT-Bus if not shadowed (see register 33h bits 7-4),
  2361. write to DRAM
  2362. 2 E8000h-EBFFFh access control (see bit 3)
  2363. 1 E4000h-E7FFFh access control (see bit 3)
  2364. 0 E0000h-E3FFFh access control (see bit 3)
  2365. SeeAlso: #P0135,#P0139,#P0142
  2366. Bitfields for 82C463MV shadow RAM control 1 (register 32h):
  2367. Bit(s) Description (Table P0138)
  2368. 7 segment F000h access control
  2369. =1 read from ROMCS#, write to ROMCS# (if register 36h bit 7=1)
  2370. or DRAM (if register 36h bit 7=0)
  2371. =0 read from DRAM and write protect (enable shadowing)
  2372. 6-5 reserved (1)
  2373. 4 write protect segment D000h
  2374. 3 write protect segment E000h
  2375. 2 reserved, read-only (1)
  2376. 1 reserved (0)
  2377. 0 ALE control
  2378. =1 single ALE during bus conversion
  2379. =0 multiple ALE
  2380. SeeAlso: #P0135,#P0142,#P0139
  2381. Bitfields for 82C463MV shadow RAM control 2 (register 33h):
  2382. Bit(s) Description (Table P0139)
  2383. 7 enable shadowing for EC000h-EFFFFh
  2384. 6 enable shadowing for E8000h-EBFFFh
  2385. 5 enable shadowing for E4000h-E7FFFh
  2386. 4 enable shadowing for E0000h-E3FFFh
  2387. 3 enable shadowing for DC000h-DFFFFh
  2388. 2 enable shadowing for D8000h-DBFFFh
  2389. 1 enable shadowing for D4000h-D7FFFh
  2390. 0 enable shadowing for D0000h-D3FFFh
  2391. SeeAlso: #P0135,#P0138
  2392. Bitfields for 82C463MV DRAM size (register 34h):
  2393. Bit(s) Description (Table P0140)
  2394. 7-4 DRAM Bank 0 and 1 Size
  2395. 0000 256K, unused
  2396. 0001 256K, 256K
  2397. 0010 256K, 1M
  2398. 0011 256K, 4M
  2399. 0100 512K, unused
  2400. 0101 512K, 512K
  2401. 0110 512K, 1M
  2402. 0111 512K, 4M
  2403. 1000 1M, unused
  2404. 1001 1M, 1M
  2405. 1010 1M, 4M
  2406. 1011 4M, 1M
  2407. 1100 4M, unused
  2408. 1101 4M, 4M
  2409. 1110 1M, 2M
  2410. 1111 both unused
  2411. 3-0 DRAM Bank 2 and 3 Size
  2412. 0000 1M, unused
  2413. 0001 1M, 1M
  2414. 0010 1M, 4M
  2415. 0011 4M, 4M
  2416. 0100 4M, unused
  2417. 0101 both unused
  2418. 0110 1M, 2M
  2419. 0111 512K, 512K
  2420. 10xx both unused
  2421. 110x both unused
  2422. 1110 2M, unused
  2423. 1111 2M, 2M (default)
  2424. SeeAlso: #P0135
  2425. Bitfields for 82C463MV DRAM timing and caching control (register 35h):
  2426. Bit(s) Description (Table P0141)
  2427. 7-6 DRAM read wait states
  2428. 00 = 0 wait states, burst mode 2-1-1-1
  2429. 01 = 1 wait state, burst mode 3-1-1-1
  2430. 10 = 1 wait state, burst mode 3-2-2-2
  2431. 11 = 2 wait states, burst mode 4-3-3-3 (default)
  2432. 5-4 DRAM write wait states
  2433. 00 = 0 wait states
  2434. 01 = 1 wait state
  2435. 10 = 2 wait states
  2436. 11 = reserved (default)
  2437. 3 MP2/STRAP2 status (read-only)
  2438. =1 1X Clock
  2439. =0 2X Clock
  2440. 2 disable caching of F000h segment (this bit is effective only when
  2441. register 32h bit 7 =0)
  2442. 1 global DRAM cache control (1=disable, default)
  2443. 0 disable caching of C0000h-C7FFFh (default)
  2444. SeeAlso: #P0135,#P0138
  2445. Bitfields for 82C463MV shadow RAM control 3 (register 36h):
  2446. Bit Description (Table P0142)
  2447. 7 segment F000h write control
  2448. =1 write to ROMCS#
  2449. =0 write to DRAM
  2450. don't care if register 32h bit 7=0
  2451. 6 C0000h-EFFFFh control
  2452. =1 read from AT-Bus or ROMCS# (if ROMCS# is enabled to that block),
  2453. write to DRAM
  2454. =0 R/W from AT bus or ROMCS# (if ROMCS# is enabled to that block)
  2455. 5 write protect segment C000h
  2456. 4 reserved (1)
  2457. 3 enable shadowing for CC000h-CFFFFh
  2458. 2 enable shadowing for C8000h-CBFFFh
  2459. 1 enable shadowing for C4000h-C7FFFh
  2460. 0 enable shadowing for C0000h-C3FFFh
  2461. SeeAlso: #P0135,#P0138
  2462. Bitfields for 82C463MV D000h and E000h segments access control (register 37h):
  2463. Bit Description (Table P0143)
  2464. 7 DC000h-DFFFFh access control
  2465. if register 36h bit 6=1
  2466. =1 read from ROMCS# if not shadowed, write to DRAM
  2467. =0 read from AT-Bus if not shadowed, write to DRAM
  2468. if register 36h bit 6=0
  2469. =1 R/W from ROMCS#
  2470. =0 R/W from AT-Bus
  2471. 6 D8000h-DBFFFh access control (see bit 7)
  2472. 5 D4000h-D7FFFh access control (see bit 7)
  2473. 4 D0000h-D3FFFh access control (see bit 7)
  2474. 3 disable caching for EC000h-EFFFFh (default)
  2475. 2 disable caching for E8000h-EBFFFh (default)
  2476. 1 disable caching for E4000h-E7FFFh (default)
  2477. 0 disable caching for E0000h-E3FFFh (default)
  2478. SeeAlso: #P0135,#P0142
  2479. Bitfields for non-cacheable block 1 size, control and A24 (register 38h):
  2480. Bit(s) Description (Table P0144)
  2481. 7-5 size of non-cacheable memory block 1
  2482. 000 64K
  2483. 001 128K
  2484. 010 256K
  2485. 011 1M
  2486. 1xx disabled (default)
  2487. 4 CC000h-CFFFFh access control
  2488. if register 36h bit 6=1
  2489. =1 read from ROMCS# if not shadowed, write to DRAM
  2490. =0 read from AT-Bus if not shadowed, write to DRAM
  2491. if register 36h bit 6=0
  2492. =1 R/W from ROMCS#
  2493. =0 R/W from AT-Bus
  2494. 3 C8000h-CBFFFh access control (see bit 4)
  2495. 2 C4000h-C7FFFh access control (see bit 4)
  2496. 1 C0000h-C3FFFh access control (see bit 4)
  2497. 0 address bit A24 of non-cacheable memory block 1
  2498. SeeAlso: #P0135,#P0142
  2499. Bitfields for non-cacheable block 2 size and A24 (register 3Ah):
  2500. Bit(s) Description (Table P0145)
  2501. 7-5 size of non-cacheable memory block 2
  2502. 000 64K
  2503. 001 128K
  2504. 010 256K
  2505. 011 1M
  2506. 1xx disabled (default)
  2507. 4 unused
  2508. 3 enable internal HLDA latch during stop clock (must be disabled
  2509. before DMA transfers are performed)
  2510. 2 reserved (1)
  2511. 1 unused
  2512. 0 address bit A24 of non-cacheable memory block 2
  2513. SeeAlso: #P0135
  2514. Bitfields for 82C463MV PMU control 1 (register 40h):
  2515. Bit Description (Table P0146)
  2516. 7 Reset/SMI indication (read-only)
  2517. =1 the last read or fetch from address XXXFFFF0h was a SMIADS#
  2518. cycle
  2519. =0 the last read or fetch from address XXXFFFF0h was a regular
  2520. ADS# cycle
  2521. 6 divide global timer by 4
  2522. 5 LLOWBAT polarity selector
  2523. =1 low active
  2524. =0 high active
  2525. 4 LOWBAT polarity selector (see bit 5)
  2526. 3 SQWIN input clock frequency
  2527. =1 128KHz
  2528. =0 32KHz
  2529. 2 external EPMI2 pin polarity
  2530. =1 active low
  2531. =0 active high
  2532. 1 external EPMI1 pin polarity (see bit 2)
  2533. 0 send reset pulse during resume
  2534. Note: for 1X clock with Intel SL Enhanced CPU, bit 6 must be =1
  2535. SeeAlso: #P0135,#P0147,#P0148
  2536. Bitfields for 82C463MV PMU control 2 (doze timer, register 41h):
  2537. Bit(s) Description (Table P0147)
  2538. 7-5 hardware doze time-out selector
  2539. 101 512 ms
  2540. 110 2 sec
  2541. 111 8 sec
  2542. 4-2 hardware doze-mode CPU clock selector
  2543. 000 CPUCLK/1
  2544. 001 CPUCLK/2
  2545. 010 CPUCLK/4
  2546. 011 CPUCLK/8 (should be used during CPU stop clock only)
  2547. 100 CPUCLK/16 (should be used during CPU stop clock only)
  2548. 101 CPUCLK/3
  2549. 110 reserved
  2550. 111 reserved
  2551. 1 enable LCD_ACCESS, KBD_ACCESS, DSK_ACCESS access to auto trigger
  2552. the hardware doze timer
  2553. 0 disable hardware doze-mode (enable APM doze-mode support)
  2554. SeeAlso: #P0135,#P0146,#P0148
  2555. Bitfields for 82C463MV PMU control 3 (timers other than doze, register 42h):
  2556. Bit(s) Description (Table P0148)
  2557. 7-6 clock source for general-purpose timer
  2558. 00 SQW0
  2559. 01 SQW1
  2560. 10 SQW2
  2561. 11 SQW3
  2562. 5-4 clock source for keyboard timer (see bits 7-6)
  2563. 3-2 clock source for disk timer (see bits 7-6)
  2564. 1-0 clock source for LCD timer (see bits 7-6)
  2565. SeeAlso: #P0135,#P0147,#P0149
  2566. Bitfields for 82C463MV PMU control 4 (register 43h):
  2567. Bit(s) Description (Table P0149)
  2568. 7 disable monitoring of PORT 3B0h-3DFh
  2569. 6 disable monitoring of memory range A0000h-BFFFFh
  2570. 5-4 LOWBAT pin sample rate
  2571. if register 40h bit 6 =1
  2572. 00 32 seconds
  2573. 01 64 seconds
  2574. 10 128 seconds
  2575. 11 reserved
  2576. if register 40h bit 6 =0
  2577. 00 8 seconds
  2578. 01 16 seconds
  2579. 10 32 seconds
  2580. 11 reserved
  2581. 3 reserved (0)
  2582. 2-0 AT clock select
  2583. 000 OSCCLK2/8
  2584. 001 OSCCLK2/6
  2585. 010 OSCCLK2/4
  2586. 011 OSCCLK2/3
  2587. 100 OSC14/2 (7.2 MHz)
  2588. 111 stop
  2589. SeeAlso: #P0135,#P0146,#P0149,#P0150
  2590. Bitfields for 82C463MV GNR_ACCESS control, I/O base address line A9 (reg. 49h):
  2591. Bit(s) Description (Table P0150)
  2592. 7 GNR_ACCESS I/O base address bit A9
  2593. 6 enable compare in WRITE cycle
  2594. 5 enable compare in READ cycle
  2595. 4-0 I/O address A5-A1 mask bits. For each bit =1, the corresponding bit
  2596. in register 48h is not compared (this is used to determine I/O
  2597. address block size)
  2598. SeeAlso: #P0135,#P0149
  2599. Bitfields for 82C463MV CSG0# control and base address line A9 (register 4Bh):
  2600. Bit(s) Description (Table P0151)
  2601. 7 Programmable Chip Select 0 (CSG0#) - I/O base address line A9
  2602. 6 enable CSG0# for I/O write cycles
  2603. 5 enable CSG0# for I/O read cycles
  2604. 4 =1 CSG0# active before ALE
  2605. =0 CSG0# active just like I/O command pulse
  2606. 3-0 I/O address A4-A1 mask bits. For each bit =1, the corresponding bit
  2607. in register 4Ah (bits 4-1) is not compared (this is used to
  2608. determine I/O address block size)
  2609. SeeAlso: #P0135,#P0152
  2610. Bitfields for 82C463MV CSG1# control and base address line A9 (register 4Dh):
  2611. Bit(s) Description (Table P0152)
  2612. 7 Programmable Chip Select 1 (CSG1#) - I/O base address line A9
  2613. 6 enable CSG1# for I/O write cycles
  2614. 5 enable CSG1# for I/O read cycles
  2615. 4 =1 CSG1# active before ALE
  2616. =0 CSG1# active just like I/O command pulse
  2617. 3-0 I/O address A4-A1 mask bits. For each bit =1, the corresponding bit
  2618. in register 4Ch (bits 4-1) is not compared (this is used to
  2619. determine I/O address block size)
  2620. SeeAlso: #P0135,#P0151
  2621. Bitfields for OPTi 82C463MV idle timer control (register 4Eh):
  2622. Bit Description (Table P0153)
  2623. 7 CSG1 access
  2624. 6 CSG0 access
  2625. 5 LPT access (it refers to PORT 378h-37Fh, PORT 278h-27Fh and
  2626. PORT 3BCh-3BFh)
  2627. 4 COM access (it refers to PORT 3F8h-3FFh and PORT 2F8h-2FFh)
  2628. 3 GNR_ACCESS
  2629. 2 KBD_ACCESS
  2630. 1 DSK_ACCESS
  2631. 0 LCD_ACCESS
  2632. Note: If a bit is =1, the corresponding access will reload IDLE_TIMER
  2633. otherwise not.
  2634. SeeAlso: #P0135
  2635. Bitfields for 82C463MV suspend/resume control (register 50h):
  2636. Bit Description (Table P0154)
  2637. 7 software generation of SMI (enabled by bit 7 of register 59h)
  2638. writing 1 asserts SMI to CPU to start SMM operation
  2639. writing 0 clears the SMI (the SMI routine must clear this bit)
  2640. 6 reserved (0)
  2641. 5 IRQ8 active level
  2642. =1 high active
  2643. =0 low active
  2644. 4 disable the internal 14.3MHz clock (to conserve power)
  2645. 3 start doze-mode / read DOZE_TIMER status
  2646. write: start APM doze-mode
  2647. =1 start doze-mode (if register 40h bit 0 =1)
  2648. =0 no effect
  2649. read: hardware DOZE_TIMER time-out status bit
  2650. =1 hardware DOZE_TIMER has timed out
  2651. =0 hardware DOZE_TIMER still counting
  2652. 2 Ready To Resume (RTR), read-only
  2653. 1 PMU mode (read-only)
  2654. =1 suspend-mode still active
  2655. =0 all other modes
  2656. 0 start suspend-mode (write only)
  2657. =1 start suspend-mode
  2658. =0 no effect
  2659. SeeAlso: #P0135,#P0146,#P0161
  2660. Bitfields for 82C463MV beeper/sequencer control (register 51h):
  2661. Bit(s) Description (Table P0155)
  2662. 7-2 sequencer base address translated-to A17-A12 (A19-A18 are always 1
  2663. during this operation)
  2664. 1-0 beeper control (independent from PORT 61h)
  2665. if register 40h bit 6 =1
  2666. 00 no action
  2667. 01 1KHz
  2668. 10 off
  2669. 11 2KHz
  2670. if register 40h bit 6 =0
  2671. 00 no action
  2672. 01 4KHz
  2673. 10 off
  2674. 11 8KHz
  2675. SeeAlso: #P0135,#P0146
  2676. Bitfields for 82C463MV PMU Periferal Power (PPWR) control 1 (register 54h):
  2677. Bit(s) Description (Table P0156)
  2678. 7-4 write mask of PPWR low nibble
  2679. =1 enable write on corresponding bit
  2680. =0 write disable
  2681. 3-0 read/write data bits for PPWR (low nibble)
  2682. SeeAlso: #P0135,#P0157
  2683. Bitfields for 82C463MV PMU Periferal Power (PPWR) control 2 (register 55h):
  2684. Bit(s) Description (Table P0157)
  2685. 7-4 write mask of PPWR high nibble
  2686. =1 enable write on corresponding bit
  2687. =0 write disable
  2688. 3-0 read/write data bits for PPWR (high nibble) (default =1)
  2689. SeeAlso: #P0135,#P0156
  2690. Bitfields for OPTi 82C463MV PIO control 1 (register 56h):
  2691. Bit(s) Description (Table P0158)
  2692. 7-4 write mask of PIO bits 3-0
  2693. =1 enable write on corresponding bit
  2694. =0 write disable
  2695. 3-0 read/write data bits for PIO
  2696. SeeAlso: #P0135,#P0159,#P0173
  2697. Bitfields for OPTi 82C463MV PIO control 2 (register 57h):
  2698. Bit Description (Table P0159)
  2699. 7 enable refresh (BIOS must set this bit to 1 after power up)
  2700. 6 enable interrupts to generate PMI #6 (see also #P0167,#P0171)
  2701. 5 disable monitoring floppy drive accesses
  2702. 4 disable monitoring hard drive accesses
  2703. 3 PIO3/STPGNT# pin direction
  2704. =1 output
  2705. =0 input
  2706. 2 PIO2/CPUSPD pin direction (see bit 3)
  2707. 1 PIO1/NOWS# pin direction (see bit 3)
  2708. 0 PIO0 pin direction (see bit 3)
  2709. SeeAlso: #P0135,#P0158
  2710. Bitfields for OPTi 82C463MV PMU event control 1 (register 58h):
  2711. Bit(s) Description (Table P0160)
  2712. 7-6 LOWBAT PMI #3 configuration
  2713. 00 disable
  2714. 01 sequencer
  2715. 10 reserved
  2716. 11 SMI
  2717. 5-4 EPMI2 PMI #2 configuration (see bits 7-6)
  2718. 3-2 EPMI1 PMI #1 configuration (see bits 7-6)
  2719. 1-0 LLOWBAT PMI #0 configuration (see bits 7-6)
  2720. SeeAlso: #P0135
  2721. Bitfields for OPTi 82C463MV PMU event control 2 (register 59h):
  2722. Bit(s) Description (Table P0161)
  2723. 7 global software SMI enable (see also bit 7 of register 50h at #P0154)
  2724. 6 reload timers during a resume sequence
  2725. 5-4 resume or INTR PMI #6 and Suspend PMI #7 configuration
  2726. 00 disable
  2727. 01 sequencer
  2728. 10 reserved
  2729. 11 SMI
  2730. 3-2 R_TIMER PMI #5 configuration (see bits 5-4)
  2731. 1-0 IDLE_TIMER PMI #4 configuration (see bits 5-4)
  2732. SeeAlso: #P0135
  2733. Bitfields for OPTi 82C463MV PMU event control 3 (register 5Ah):
  2734. Bit(s) Description (Table P0162)
  2735. 7-6 GNR_TIMER time out PMI #11 and access PMI #15 configuration
  2736. 00 disable
  2737. 01 sequencer
  2738. 10 reserved
  2739. 11 SMI
  2740. 5-4 KBD_TIMER time out PMI #10 and access PMI #14 cfg (see bits 7-6)
  2741. 3-2 DSK_TIMER time out PMI #9 and access PMI #13 cfg (see bits 7-6)
  2742. 1-0 LCD_TIMER time out PMI #8 and access PMI #12 cfg (see bits 7-6)
  2743. SeeAlso: #P0135,#P0163
  2744. Bitfields for OPTi 82C463MV PMU event control 4 (register 5Bh):
  2745. Bit Description (Table P0163)
  2746. 7 IRQ15 SMI select
  2747. =1 enable SMI select (SMI internally connected to IRQ15) and
  2748. disable IRQ15 hardware pin function
  2749. =0 disable SMI select (enable IRQ15 pin function as normal)
  2750. 6 disable all SMI
  2751. 5 enable sequencer
  2752. 4 SMI Type
  2753. =0 Intel style SMI (SMM identified by SMIACT#)
  2754. =1 AMD DXLV or Cyrix style SMI (SMM identified by SMIADS#)
  2755. Note: for Intel-style SMI, the 3000h/4000h segments will relocate to
  2756. B000h/A000h when in SMM; for AMD/Cyrix, the 7000h/6000h
  2757. segments will relocate to B000h/A000h when in SMM
  2758. 3 enable PMI source #15
  2759. 2 enable PMI source #14
  2760. 1 enable PMI source #13
  2761. 0 enable PMI source #12
  2762. SeeAlso: #P0135,#P0162,#P0164
  2763. Bitfields for OPTi 82C463MV SMI source (low) (register 5Ch):
  2764. Bit Description (Table P0164)
  2765. 7 PMI #7 - SUSPEND
  2766. 6 PMI #6 - RESUME or INTR
  2767. 5 PMI #5 - R_TIMER time out
  2768. 4 PMI #4 - IDLE_TIMER time out
  2769. 3 PMI #3 - LOWBAT pin
  2770. 2 PMI #2 - EPMI2 pin (external PMI source)
  2771. 1 PMI #1 - EPMI1 pin (external PMI source)
  2772. 0 PMI #0 - LLOWBAT pin
  2773. SeeAlso: #P0135,#P0165
  2774. Bitfields for OPTi 82C463MV SMI source (high) (register 5Dh):
  2775. Bit Description (Table P0165)
  2776. 7 PMI #15 - GNR_ACCESS
  2777. 6 PMI #14 - KBD_ACCESS
  2778. 5 PMI #13 - DSK_ACCESS
  2779. 4 PMI #12 - LCD_ACCESS
  2780. 3 PMI #11 - GNR_TIMER
  2781. 2 PMI #10 - KBD_TIMER
  2782. 1 PMI #9 - DSK_TIMER
  2783. 0 PMI #8 - LCD_TIMER
  2784. SeeAlso: #P0135,#P0164
  2785. Bitfields for OPTi 82C463MV clock stretching control (register 5Eh):
  2786. Bit Description (Table P0166)
  2787. 7 enable CPU clock stretch memory code cycle
  2788. 6 enable CPU clock stretch write cycle
  2789. 5 enable CPU clock stretch read cycle
  2790. 4 enable CPU clock stretch I/O cycle
  2791. 3 enable CPU clock stretch memory data cycle
  2792. 2 enable stop ATCLK when not in AT bus cycle
  2793. 1 ATCLK stretch
  2794. =1 synchronous
  2795. =0 asynchronous
  2796. 0 reserved (0)
  2797. SeeAlso: #P0135
  2798. Bitfields for OPTi 82C463MV resume interrupt control (register 5Fh):
  2799. Bit(s) Description (Table P0167)
  2800. 7 LCD_ACCESS includes AT bus video access
  2801. 6 LCD_ACCESS includes Local bus video access
  2802. 5 enable all resume sources of register 6Ah (see also #P0176,#P0159)
  2803. 4 RI counter count out will generate resume
  2804. 3-0 number of RI counts
  2805. SeeAlso: #P0135
  2806. Bitfields for OPTi 82C463MV debounce control (register 61h):
  2807. Bit(s) Description (Table P0168)
  2808. 7-6 LOWBAT and LLOWBAT pin debounce rate select
  2809. if register 40h bit 6 =1
  2810. 00 no debounce
  2811. 01 250 microseconds
  2812. 10 8ms
  2813. 11 500ms
  2814. if register 40h bit 6 =0
  2815. 00 no debounce
  2816. 01 62.5 microseconds
  2817. 10 2 ms
  2818. 11 125 ms
  2819. 5-4 SUSP/RSM pin debounce rate select
  2820. if register 40h bit 6 =1
  2821. 00 reserved
  2822. 01 latch high to low edge
  2823. 10 4 ms (low to high)
  2824. 11 8 ms (low to high)
  2825. if register 40h bit 6 =0
  2826. 00 reserved
  2827. 01 latch high to low edge
  2828. 10 1 ms (low to high)
  2829. 11 2 ms (low to high)
  2830. 3 reserved (0)
  2831. 2 enable STPCLK protocol for switching CPU clock frequencies
  2832. 1-0 STPCLK# delay (for use when STPCLK protocol is enabled)
  2833. 00 no delay
  2834. 01 120 microseconds
  2835. 10 240 microseconds
  2836. 11 1ms, if register 40h bit 6 set; 240 microseconds if clear
  2837. SeeAlso: #P0135,#P0146
  2838. Bitfields for OPTi 82C463MV doze-mode IRQ selects (register 62h):
  2839. Bit Description (Table P0169)
  2840. 7 enable IRQ13
  2841. 6 enable IRQ8
  2842. 5 enable IRQ7
  2843. 4 enable IRQ12
  2844. 3 enable IRQ5
  2845. 2 enable IRQ4
  2846. 1 enable IRQ3
  2847. 0 enable IRQ0
  2848. Notes: in hardware doze-mode the selected interrupts will be used to re-load
  2849. the hardware DOZE_TIMER and/or trigger the system out of doze-mode
  2850. in APM doze-mode the selected interrupts will be used to trigger the
  2851. system out of doze-mode only
  2852. SeeAlso: #P0135,#P0172,#P0170
  2853. Bitfields for OPTi 82C463MV idle timer IRQ selects (register 63h):
  2854. Bit Description (Table P0170)
  2855. 7 enable EPMI1 (level trigger)
  2856. 6 enable IRQ13
  2857. 5 enable IRQ8
  2858. 4 enable IRQ7
  2859. 3 enable IRQ5
  2860. 2 enable IRQ4
  2861. 1 enable IRQ3
  2862. 0 enable IRQ0
  2863. SeeAlso: #P0135,#P0169,#P0171
  2864. Bitfields for OPTi 82C463MV PMI#6 IRQ selects (register 64h):
  2865. Bit Description (Table P0171)
  2866. 7 enable IRQ14
  2867. 6 enable IRQ8
  2868. 5 enable IRQ7
  2869. 4 enable IRQ6
  2870. 3 enable IRQ5
  2871. 2 enable IRQ4
  2872. 1 enable IRQ3
  2873. 0 enable IRQ1
  2874. Note: the value written into this register selects which IRQs generate
  2875. PMI#6 in normal mode, the value read from this register indicates
  2876. active IRQs at the time of the read
  2877. SeeAlso: #P0135,#P0159,#P0170
  2878. Bitfields for OPTi 82C463MV doze-mode configuration (register 65h):
  2879. Bit Description (Table P0172)
  2880. 7 enable monitoring all interrupt signals during hw or sw doze-mode
  2881. 6 doze-mode STPCLK protocol selector (see also #P0168)
  2882. =1 STPCLK will latch for stopping the CPU clock (APM)
  2883. The delay is determined by register 61h bits 1-0
  2884. =0 STPCLK will pulse for changing the frequency of the CPU clock
  2885. (hw doze-mode).
  2886. The pulse width is determined by register 61h bits 1-0
  2887. 5 enable EPMI1 to reload hardware DOZE_TIMER and exit from hardware or
  2888. software doze-mode
  2889. 4 enable recognition of SMI during APM stop clock
  2890. 3 allow IRQ1 to exit from hw or sw doze-mode (write-only)
  2891. (see also #P0169)
  2892. 2-0 reserved (0)
  2893. SeeAlso: #P0135,#P0173
  2894. Bitfields for OPTi 82C463MV suspend control (register 66h):
  2895. Bit Description (Table P0173)
  2896. 7 refresh type during suspend
  2897. =1 self refresh
  2898. =0 normal refresh (refresh rate selected by register 67h bit 6)
  2899. 6 KBCLK during suspend
  2900. =1 16 KHz
  2901. =0 7.16 MHz (14.318 MHz /2)
  2902. 5 software (APM) CPU stop-clock control
  2903. =1 the CPU clock can be stopped by entering APM doze-mode (that is
  2904. setting register 50h bit 3 to 1)
  2905. =0 APM doze-mode will use the hw doze-mode clock selected by
  2906. bits 4-2 of register 41h
  2907. 4 avoid asserting HOLD before stopping the clock
  2908. 3 PIO3/STPGNT# pin selector
  2909. =1 STPGNT# function (set register 57h bit 3 to input mode)
  2910. This is for use with CPUs that use the hw stop grant signal
  2911. to acknowledge stop request
  2912. =0 PIO3 function (set register 57h bit 3 to determine input or
  2913. output mode)
  2914. 2 PIO2/CPUSPD pin selector
  2915. =1 CPUSPD function, CPU speed indicator output (set register 57h
  2916. bit 2 to output mode)
  2917. =0 PIO2 function (set register 57h bit 2 to determine input or
  2918. output mode)
  2919. 1 PIO1/NOWS# pin selector
  2920. =1 NOWS# function (set register 57h bit 1 to input mode)
  2921. =0 PIO1 function (set register 57h bit 1 to determine input or
  2922. output mode)
  2923. 0 enable CPU clock change request protocol
  2924. Note: for hardware doze mode, bit 5 must be 0
  2925. SeeAlso: #P0135,#P0147,#P0154,#P0159,#P0174
  2926. Bitfields for OPTi 82C463MV CPU frequency (register 67h):
  2927. Bit(s) Description (Table P0174)
  2928. 7 CPU clock control during suspend
  2929. =1 dynamic CPU (in suspend-mode, bits 2-0 select the CPU clock)
  2930. =0 static CPU (in suspend-mode, 82C463MV stops the CPU clock)
  2931. 6 refresh control
  2932. =1 slow refresh (128 ms)
  2933. =0 normal refresh (15 ms for normal operation, 30 ms for suspend mode)
  2934. 5 PMU global enabler
  2935. 4 reserved (1)
  2936. 3 reserved (0)
  2937. 2-0 CPU clock frequency
  2938. 000 CPUCLK/1
  2939. 001 CPUCLK/2
  2940. 010 CPUCLK/4
  2941. 101 CPUCLK/3
  2942. else reserved
  2943. SeeAlso: #P0135
  2944. Bitfields for OPTi 82C463MV timer clock source (register 68h):
  2945. Bit(s) Description (Table P0175)
  2946. 7-6 R_TIMER clock source selector
  2947. 00 SQW0
  2948. 01 SQW1
  2949. 10 SQW2
  2950. 11 SQW3
  2951. 5-4 IDLE_TIMER clock source selector (see bits 7-6)
  2952. 3-2 resume recovery time
  2953. if register 40h bit 6 =1
  2954. 00 8 ms
  2955. 01 32 ms
  2956. 10 128 ms
  2957. 11 256 ms
  2958. if register 40h bit 6 =0
  2959. 00 2 ms
  2960. 01 8 ms
  2961. 10 32 ms
  2962. 11 64 ms
  2963. 1 enable PPWR bit 1 suspend auto toggle (see also #P0156)
  2964. 0 enable PPWR bit 0 suspend auto toggle (see also #P0156)
  2965. Note: bits 1 and 0 are not influenced by mask bits 5 and 4 of register 54h
  2966. SeeAlso: #P0135,#P0146
  2967. Bitfields for OPTi 82C463MV resume IRQ selects (register 6Ah):
  2968. Bit Description (Table P0176)
  2969. 7 enable EPMI2 (resume on a rising edge)
  2970. 6 enable EPMI1 (resume on a rising edge)
  2971. 5 enable IRQ8 (resume on a falling edge)
  2972. 4 enable IRQ7 (resume on a rising edge)
  2973. 3 enable IRQ5 (resume on a rising edge)
  2974. 2 enable IRQ4 (resume on a rising edge)
  2975. 1 enable IRQ3 (resume on a rising edge)
  2976. 0 enable IRQ1 (resume on a rising edge)
  2977. SeeAlso: #P0135
  2978. Bitfields for OPTi 82C463MV resume sources (register 6Bh):
  2979. Bit(s) Description (Table P0177)
  2980. 7 refresh pulse width during sequencer operation
  2981. =1 6 AT clocks
  2982. =0 4 AT clocks
  2983. 6-3 reserved (0)
  2984. 2-0 resume sources (read-only)
  2985. 001 RI
  2986. 010 INTR (as selected in register 6Ah)
  2987. 100 SUSP/RSM pin
  2988. else reserved
  2989. SeeAlso: #P0135,#P0176
  2990. ----------P00220024--------------------------
  2991. PORT 0022-0024 - OPTi 82C493 System Controller (SYSC) - CONFIGURATION REGISTERS
  2992. Desc: The OPTi 486SXWB contains three chips and is designed for systems
  2993. running at 20, 25 and 33MHz. The chipset includes an 82C493 System
  2994. Controller (SYSC), the 82C392 Data Buffer Controller, and the
  2995. 82C206 Integrated peripheral Controller (IPC).
  2996. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  2997. even if the same register is being accessed a second time
  2998. SeeAlso: PORT 0022h"82C206"
  2999. 0022 ?W configuration register index (see #P0178)
  3000. 0024 RW configuration register data
  3001. (Table P0178)
  3002. Values for OPTi 82C493 System Controller configuration register index:
  3003. 20h Control Register 1 (see #P0179)
  3004. 21h Control Register 2 (see #P0180)
  3005. 22h Shadow RAM Control Register 1 (see #P0181)
  3006. 23h Shadow RAM Control Register 2 (see #P0182)
  3007. 24h DRAM Control Register 1 (see #P0183)
  3008. 25h DRAM Control Register 2 (see #P0184)
  3009. 26h Shadow RAM Control Register 3 (see #P0185)
  3010. 27h Control Register 3 (see #P0186)
  3011. 28h Non-cachable Block 1 Register 1 (see #P0187)
  3012. 29h Non-cachable Block 1 Register 2 (see #P0188)
  3013. 2Ah Non-cachable Block 2 Register 1 (see #P0187)
  3014. 2Bh Non-cachable Block 2 Register 2 (see #P0188)
  3015. Bitfields for OPTi-82C493 Control Register 1:
  3016. Bit(s) Description (Table P0179)
  3017. 7-6 Revision of 82C493 (readonly) (default=01)
  3018. 5 Burst wait state control
  3019. 1 = Secondary cache read hit cycle is 3-2-2-2 or 2-2-2-2
  3020. 0 = Secondary cache read hit cycle is 3-1-1-1 or 2-1-1-1 (default)
  3021. (if bit 5 is set to 1, bit 4 must be set to 0)
  3022. 4 Cache memory data buffer output enable control
  3023. 0 = disable (default)
  3024. 1 = enable
  3025. (must be disabled for frequency <= 33Mhz)
  3026. 3 Single Address Latch Enable (ALE)
  3027. 0 = disable (default)
  3028. 1 = enable
  3029. (if enabled, SYSC will activate single ALE rather than multiples
  3030. during bus conversion cycles)
  3031. 2 enable Extra AT Cycle Wait State (default is 0 = disabled)
  3032. 1 Emulation keyboard Reset Control
  3033. 0 = disable (default)
  3034. 1 = enable
  3035. Note: This bit must be enabled in BIOS default value; enabling this
  3036. bit requires HALT instruction to be executed before SYSC
  3037. generates processor reset (CPURST)
  3038. 0 enable Alternative Fast Reset (default is 0 = disabled)
  3039. SeeAlso: #P0180,#P0186
  3040. Bitfields for OPTi-82C493 Control Register 2:
  3041. Bit(s) Description (Table P0180)
  3042. 7 Master Mode Byte Swap Enable
  3043. 0 = disable (default)
  3044. 1 = enable
  3045. 6 Emulation Keyboard Reset Delay Control
  3046. 0 = Generate reset pulse 2us later (default)
  3047. 1 = Generate reset pulse immediately
  3048. 5 disable Parity Check (default is 0 = enabled)
  3049. 4 Cache Enable
  3050. 0 = Cache disabled and DRAM burst mode enabled (default)
  3051. 1 = Cache enabled and DRAM burst mode disabled
  3052. 3-2 Cache Size
  3053. 00 64KB (default)
  3054. 01 128KB
  3055. 10 256KB
  3056. 11 512KB
  3057. 1 Secondary Cache Read Burst Cycles Control
  3058. 0 = 3-1-1-1 cycle (default)
  3059. 1 = 2-1-1-1 cycle
  3060. 0 Cache Write Wait State Control
  3061. 0 = 1 wait state (default)
  3062. 1 = 0 wait state
  3063. SeeAlso: #P0179,#P0186
  3064. Bitfields for OPTi-82C493 Shadow RAM Control Register 1:
  3065. Bit(s) Description (Table P0181)
  3066. 7 ROM(F0000h - FFFFFh) Enable
  3067. 0 = read/write on write-protected DRAM
  3068. 1 = read from ROM, write to DRAM (default)
  3069. 6 Shadow RAM at D0000h - EFFFFh Area
  3070. 0 = disable (default)
  3071. 1 = enable
  3072. 5 Shadow RAM at E0000h - EFFFFh Area
  3073. 0 = disable shadow RAM (default)
  3074. E0000h - EFFFFh ROM is defaulted to reside on XD bus
  3075. 1 = enable shadow RAM
  3076. 4 enable write-protect for Shadow RAM at D0000h - DFFFFh Area
  3077. 0 = disable (default)
  3078. 1 = enable
  3079. 3 enable write-protect for Shadow RAM at E0000h - EFFFFh Area
  3080. 0 = disable (default)
  3081. 1 = enable
  3082. 2 Hidden refresh enable (with holding CPU)
  3083. (Hidden refresh must be disabled if 4Mx1 or 1M x4 bit DRAM are used)
  3084. 1 = disable (default)
  3085. 0 = enable
  3086. 1 unused
  3087. 0 enable Slow Refresh (four times slower than normal refresh)
  3088. (default is 0 = disable)
  3089. SeeAlso: #P0182
  3090. Bitfields for OPTi-82C493 Shadow RAM Control Register 2:
  3091. Bit(s) Description (Table P0182)
  3092. 7 enable Shadow RAM at EC000h - EFFFFh area
  3093. 6 enable Shadow RAM at E8000h - EBFFFh area
  3094. 5 enable Shadow RAM at E4000h - E7FFFh area
  3095. 4 enable Shadow RAM at E0000h - E3FFFh area
  3096. 3 enable Shadow RAM at DC000h - DFFFFh area
  3097. 2 enable Shadow RAM at D8000h - DBFFFh area
  3098. 1 enable Shadow RAM at D4000h - D7FFFh area
  3099. 0 enable Shadow RAM at D0000h - D3FFFh area
  3100. Note: the default is disabled (0) for all areas
  3101. Bitfields for OPTi-82C493 DRAM Control Register 1:
  3102. Bit(s) Description (Table P0183)
  3103. 7 DRAM size
  3104. 0 = 256K DRAM mode
  3105. 1 = 1M and 4M DRAM mode
  3106. 6-4 DRAM types used for bank0 and bank1
  3107. bits 7-4 Bank0 Bank1
  3108. 0000 256K x
  3109. 0001 256K 256K
  3110. 0010 256K 1M
  3111. 0011 x x
  3112. 01xx x x
  3113. 1000 1M x (default)
  3114. 1001 1M 1M
  3115. 1010 1M 4M
  3116. 1011 4M 1M
  3117. 1100 4M x
  3118. 1101 4M 4M
  3119. 111x x x
  3120. 3 unused
  3121. 2-0 DRAM types used for bank2 and bank3
  3122. bits 7,2-0 Bank2 Bank3
  3123. x000 1M x
  3124. x001 1M 1M
  3125. x010 x x
  3126. x011 4M 1M
  3127. x100 4M x
  3128. x101 4M 4M
  3129. x11x x x (default)
  3130. SeeAlso: #P0184
  3131. Bitfields for OPTi-82C493 DRAM Control Register 2:
  3132. Bit(s) Description (Table P0184)
  3133. 7-6 Read cycle additional wait states
  3134. 00 not used
  3135. 01 = 0
  3136. 10 = 1
  3137. 11 = 2 (default)
  3138. 5-4 Write cycle additional wait states
  3139. 00 = 0
  3140. 01 = 1
  3141. 10 = 2
  3142. 11 = 3 (default)
  3143. 3 Fast decode enable
  3144. 0 = disable fast decode. DRAM base wait states not changed (default)
  3145. 1 = enable fast decode. DRAM base wait state is decreased by 1
  3146. Note: This function may be enabled in 20/25Mhz operation to speed up
  3147. DRAM access. If bit 4 of index register 21h (cache enable
  3148. bit) is enabled, this bit is automatically disabled--even if
  3149. set to 1
  3150. 2 unused
  3151. 1-0 ATCLK selection
  3152. 00 ATCLK = CLKI/6 (default)
  3153. 01 ATCLK = CLKI/4 (default)
  3154. 10 ATCLK = CLKI/3
  3155. 11 ATCLK = CLK2I/5 (CLKI * 2 /5)
  3156. Note: bit 0 will reflect the BCLKS (pin 142) status and bit 1 will be
  3157. set to 0 when 82C493 is reset.
  3158. SeeAlso: #P0183,#P0185
  3159. Bitfields for OPTi-82C493 Shadow RAM Control Register 3:
  3160. Bit(s) Description (Table P0185)
  3161. 7 unused
  3162. 6 Shadow RAM copy enable for address C0000h - CFFFFh
  3163. 0 = Read/write at AT bus (default)
  3164. 1 = Read from AT bus and write into shadow RAM
  3165. 5 Shadow write protect at address C0000h - CFFFFh
  3166. 0 = Write protect disable (default)
  3167. 1 = Write protect enable
  3168. 4 enable Shadow RAM at C0000h - CFFFFh
  3169. 3 enable Shadow RAM at CC000h - CFFFFh
  3170. 2 enable Shadow RAM at C8000h - CBFFFh
  3171. 1 enable Shadow RAM at C4000h - C7FFFh
  3172. 0 enable Shadow RAM at C0000h - C3FFFh
  3173. Note: the default is disabled (0) for bits 4-0
  3174. SeeAlso: #P0183,#P0184
  3175. Bitfields for OPTi-82C493 Control Register 3:
  3176. Bit(s) Description (Table P0186)
  3177. 7 enable NCA# pin to low state (default is 1 = enabled)
  3178. 6-5 unused
  3179. 4 Video BIOS at C0000h - C8000h non-cacheable
  3180. 0 = cacheable
  3181. 1 = non-cacheable (default)
  3182. 3-0 Cacheable address range for local memory
  3183. 0000 0 - 64MB
  3184. 0001 0 - 4MB (default)
  3185. 0010 0 - 8MB
  3186. 0011 0 - 12MB
  3187. 0100 0 - 16MB
  3188. 0101 0 - 20MB
  3189. 0110 0 - 24MB
  3190. 0111 0 - 28MB
  3191. 1000 0 - 32MB
  3192. 1001 0 - 36MB
  3193. 1010 0 - 40MB
  3194. 1011 0 - 44MB
  3195. 1100 0 - 48MB
  3196. 1101 0 - 52MB
  3197. 1110 0 - 56MB
  3198. 1111 0 - 60MB
  3199. Note: If total memory is 1MB or 2MB the cacheable range is 0-1 MB or
  3200. 0-2 MB and independent of the value of bits 3-0
  3201. SeeAlso: #P0179,#P0180
  3202. Bitfields for OPTi-82C493 Non-cacheable Block Register 1:
  3203. Bit(s) Description (Table P0187)
  3204. 7-5 Size of non-cachable memory block
  3205. 000 64K
  3206. 001 128K
  3207. 010 256K
  3208. 011 512K
  3209. 1xx disabled (default)
  3210. 4-2 unused
  3211. 1-0 Address bits 25 and 24 of non-cachable memory block (default = 00)
  3212. Note: this register is used together with configuration register 29h
  3213. (non-cacheable block 1) or register 2Bh (block 2) (see #P0188) to
  3214. define a non-cacheable block. The starting address must be a
  3215. multiple of the block size
  3216. SeeAlso: #P0178,#P0188
  3217. Bitfields for OPTi-82C493 Non-cacheable Block Register 2:
  3218. Bit(s) Description (Table P0188)
  3219. 7-0 Address bits 23-16 of non-cachable memory block (default = 0001xxxx)
  3220. Note: the block address is forced to be a multiple of the block size by
  3221. ignoring the appropriate number of the least-significant bits
  3222. SeeAlso: #P0178,#P0187
  3223. ----------P00220024--------------------------
  3224. PORT 0022-0024 - OPTi "Viper" (82C557) CHIPSET - SYSTEM CONTROL REGISTERS
  3225. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  3226. even if the same register is being accessed a second time
  3227. SeeAlso: PORT 0022h"82C206"
  3228. 0022 ?W index for accesses to data port (see #P0189)
  3229. 0023 RW DMA clock select (see #P0087)
  3230. 0024 RW chip set data
  3231. (Table P0189)
  3232. Values for OPTi "Viper" (82C557) system control registers:
  3233. 00h Byte Merge/Prefetch and Sony Cache Module Control register (see #P0190)
  3234. 00h Compatible DRAM Configuration register 1 (see #P0191) (refer to note)
  3235. 01h DRAM Control register 1 (see #P0192)
  3236. 02h Cache Control register 1 (see #P0193)
  3237. 03h Cache Control register 2 (see #P0194)
  3238. 04h Shadow RAM Control register 1 (see #P0195)
  3239. 05h Shadow RAM Control register 2 (see #P0197)
  3240. 06h Shadow RAM Control register 3 (see #P0198)
  3241. 07h Tag Test register (see #P0199)
  3242. 08h CPU Cache Control register (see #P0200)
  3243. 09h System Memory Function register (see #P0201)
  3244. 0Ah DRAM Hole A Address Decode register 1 (see #P0202)
  3245. 0Bh DRAM Hole B Address Decode register 2 (see #P0203)
  3246. 0Ch Extended DMA register (see #P0204)
  3247. 0Dh Clock Control register (see #P0205)
  3248. 0Eh Cycle Control register 1 (see #P0206)
  3249. 0Fh Cycle Control register 2 (see #P0207)
  3250. 10h Miscellaneous Control register 1 (see #P0208)
  3251. 11h Miscellaneous Control register 2 (see #P0209)
  3252. 12h Refresh Control register (see #P0210)
  3253. 13h Memory Decode Control register 1 (see #P0211)
  3254. 14h Memory Decode Control register 2 (see #P0213)
  3255. 15h PCI Cycle Control register 1 (see #P0214)
  3256. 16h Dirty/Tag RAM Control register (see #P0215)
  3257. 17h PCI Cycle Control register 2 (see #P0216)
  3258. 18h Tristate Control register (see #P0217)
  3259. 19h Memory Decode Control register 3 (see #P0218)
  3260. 1Ah-1Fh reserved
  3261. Note: Byte Merge/Prefetch and Sony Cache Module Control register is accessed
  3262. through register 00h when bit 7 of register 13h is set, otherwise
  3263. Compatible DRAM Configuration register 1 is accessed as register 00h
  3264. reserved registers 1Ah-1Fh must be written to 0
  3265. SeeAlso: #P0121,#P0211
  3266. Bitfields for OPTi "Viper" Byte Merge / Sony Cache Module Control register:
  3267. Bit(s) Description (Table P0190)
  3268. 7 enable pipelining of single CPU cycles to memory
  3269. 6 enable video memory byte/word read prefetch. Enables the prefetching
  3270. of bytes/words from PCI video memory to the CPU
  3271. 5 enable Sony SONIC-2WP support. If set, the ensure that the L2 cache
  3272. has been disabled (register 02h bits 3-2)
  3273. 4 enable byte/word merge support
  3274. 3 enable byte/word merging with CPU pipelining (NA# generation) support
  3275. 2-1 time-out counter for byte/word merge. Determines the maximum time
  3276. difference between two consecutive PCI bye/word writes to allow
  3277. merging
  3278. 00 4 CPU CLKs
  3279. 01 8 CPU CLKs
  3280. 10 12 CPU CLKs
  3281. 11 16 CPU CLKs
  3282. 0 enable internal hold requests to be blocked while performing byte merge
  3283. SeeAlso: #P0189
  3284. Bitfields for OPTi "Viper" Compatible DRAM Configuration register 1:
  3285. Bit(s) Description (Table P0191)
  3286. 7 enable pipelining of single CPU cycles to memory
  3287. 6 second bank SIMM selection. SIMMs need to be single sided
  3288. 0 single sided SIMM not installed in bank 0
  3289. 1 single sided SIMM installed in bank 0
  3290. 5 first bank SIMM selection. SIMMs need to be single sided
  3291. 0 single sided SIMM not installed in bank 0
  3292. 1 single sided SIMM installed in bank 0
  3293. 4-0 banks 0 thru 3 DRAM configuration
  3294. (val) Bank0 Bank1 Bank2 Bank3
  3295. 00000 256K 256KB - -
  3296. 00001 512K 512K - -
  3297. 00010 1M 1M - -
  3298. 00011 2M 2M - -
  3299. 00100 4M 4M - -
  3300. 00101 8M 8M - -
  3301. 00110 256K 256K 256K 256K
  3302. 00111 256K 256K 512K 512K
  3303. 01000 512K 512K 512K 512K
  3304. 01001 256K 256K 1M 1M
  3305. 01010 512K 512K 1M 1M
  3306. 01011 1M 1M 1M 1M
  3307. 01100 256K 256K 2M 2M
  3308. 01101 512K 512K 2M 2M
  3309. 01110 1M 1M 2M 2M
  3310. 01111 2M 2M 2M 2M
  3311. 10000 256K 256K 4M 4M
  3312. 10001 512K 512K 4M 4M
  3313. 10010 1M 1M 4M 4M
  3314. 10011 2M 2M 4M 4M
  3315. 10100 4M 4M 4M 4M
  3316. 10101 256K 256K 8M 8M
  3317. 10110 512K 512K 8M 8M
  3318. 10111 1M 1M 8M 8M
  3319. 11000 2M 2M 8M 8M
  3320. 11001 4M 4M 8M 8M
  3321. 11010 8M 8M 8M 8M
  3322. Note: these settings maintain backward compatibility with the "Python"
  3323. (82C546/82C547) chipset, and they do not allow for much flexibility
  3324. SeeAlso: #P0189
  3325. Bitfields for OPTi "Viper" (82C557) DRAM Control register 1:
  3326. Bit(s) Description (Table P0192)
  3327. 7 row address hold after RAS# active in CLKs
  3328. 0 2 CLKs
  3329. 1 1 CLK
  3330. 6 RAS# active/inactive on entering master mode
  3331. 0 normal page mode when starting a master cycle, RAS# will remain
  3332. 1 RAS# inactive when starting a master cycle
  3333. 5-4 RAS pulse width used during refresh
  3334. 00 7 CLKs
  3335. 01 6 CLKs
  3336. 10 5 CLKs
  3337. 11 4 CLKs
  3338. 3 CAS pulse width during reads
  3339. 0 3 CLKs
  3340. 1 2 CLKs
  3341. 2 CAS pulse width during writes
  3342. 0 3 CLKs
  3343. 1 2 CLKs
  3344. 1-0 RAS precharge time
  3345. 00 6 CLKs
  3346. 01 5 CLKs
  3347. 10 4 CLKs
  3348. 11 3 CLKs
  3349. SeeAlso: #P0189,#P0193,#P0219
  3350. Bitfields for OPTi "Viper" (82C557) Cache Control register 1:
  3351. Bit(s) Description (Table P0193)
  3352. 7-6 cache size selection; determines size of the L2 cache, along with
  3353. register 0Fh bit 0. When set, it works as a *16 multiplier
  3354. 00 (Viper) 64K (1M when register 0Fh bit 0 set)
  3355. (Vendetta) reserved
  3356. 01 (Viper) 128K (2M when register 0Fh bit 0 set)
  3357. (Vendetta) reserved
  3358. 10 256K (reserved when register 0Fh bit 0 set)
  3359. 11 512K (reserved when register 0Fh bit 0 set)
  3360. 5-4 cache write policy; determines the write policy for the L2 cache
  3361. 00 L2 cache write-through
  3362. 01 Adaptive Write-back Mode 1
  3363. 10 Adaptive Write-back Mode 2
  3364. 11 L2 cache write-back
  3365. 3-2 cache mode select; determines the operating mode of the L2 cache
  3366. 00 disable
  3367. 01 Test Mode 1, External Tag Write (Tag data write-through reg. 07h)
  3368. 10 Test Mode 2, External Tag Read (Tag data read from register 07h)
  3369. 11 enable L2 cache
  3370. 1 enable DRAM posted write
  3371. 0 CAS precharge time
  3372. 0 2 CLKs
  3373. 1 1 CLK
  3374. SeeAlso: #P0189,#P0199,#P0207,#P0194,#P0219
  3375. Bitfields for OPTi "Viper" (82C557) Cache Control register 2:
  3376. Bit(s) Description (Table P0194)
  3377. 7-6 L2 cache write burst mode timings
  3378. 00 X-4-4-4
  3379. 01 X-3-3-3
  3380. 10 X-2-2-2
  3381. 11 X-1-1-1
  3382. 5-4 L2 cache write lead-off cycle timings
  3383. 00 5-X-X-X
  3384. 01 4-X-X-X
  3385. 10 3-X-X-X
  3386. 11 2-X-X-X
  3387. 3-2 L2 cache read burst mode timings
  3388. 00 X-4-4-4
  3389. 01 X-3-3-3
  3390. 10 X-2-2-2
  3391. 11 X-1-1-1
  3392. 1-0 L2 cache read lead-off cycle timings
  3393. 00 5-X-X-X
  3394. 01 4-X-X-X
  3395. 10 3-X-X-X
  3396. 11 2-X-X-X
  3397. Note: SRAM double bank implementation does not support lead-off timing
  3398. SeeAlso: #P0189,#P0193,#P0219
  3399. Bitfields for OPTi "Viper"/"Vendetta" Shadow RAM Control register 1:
  3400. Bit(s) Description (Table P0195)
  3401. 7-6 CC000-CFFFF read/write control; determines the R/W control for these
  3402. segments of the shadow RAM (see #P0196)
  3403. 5-4 C8000-CBFFF read/write control; determines the R/W control for these
  3404. segments of the shadow RAM (see #P0196)
  3405. 3 enable synchronous SRAM pipelined read cycle 1-1-1-1
  3406. 2 E0000-EFFFF range selection
  3407. 0 area will always be non-cacheable
  3408. 1 are will be treated like the F0000h BIOS area
  3409. 1-0 C0000-C7FFF read/write control; determines the R/W control for these
  3410. segments of the shadow RAM (see #P0196)
  3411. Note: bit 3 will act only when register 11h bit 3 and register 03h bits 3-2
  3412. are all set
  3413. when bit 2 is set, register 06h bits 3-0 should be set identically
  3414. SeeAlso: #P0189,#P0197,#P0219
  3415. (Table P0196)
  3416. Values for OPTi "Viper"/"Vendetta" Shadow RAM Control setting:
  3417. 00 read/write PCI bus
  3418. 01 read from DRAM/write to PCI
  3419. 10 read from PCI/write to DRAM
  3420. 11 read from/write to DRAM
  3421. SeeAlso: #P0195,#P0197,#P0198,#P0219
  3422. Bitfields for OPTi "Viper"/"Vendetta" Shadow RAM Control register 2:
  3423. Bit(s) Description (Table P0197)
  3424. 7-6 DC000-DFFFF read/write control; determines the R/W control for these
  3425. segments of the shadow RAM (see #P0196)
  3426. 5-4 D8000-DBFFF read/write control; determines the R/W control for these
  3427. segments of the shadow RAM (see #P0196)
  3428. 3-2 D4000-D7FFF read/write control; determines the R/W control for these
  3429. segments of the shadow RAM (see #P0196)
  3430. 1-0 D0000-D3FFF read/write control; determines the R/W control for these
  3431. segments of the shadow RAM (see #P0196)
  3432. SeeAlso: #P0189,#P0195,#P0198,#P0219
  3433. Bitfields for OPTi "Viper"/"Vendetta" Shadow RAM Control register 3:
  3434. Bit(s) Description (Table P0198)
  3435. 7 DRAM hole in system memory from 80000-9FFFF; gives the user the option
  3436. to have some other device in this address range instead of system
  3437. memory. When set, the SYSC will not start the system DRAM controller
  3438. for accesses to this particular address range
  3439. 0 no memory hole
  3440. 1 enable memory hole
  3441. 6 wait state addition for PCI master snooping
  3442. 0 do not add a wait state
  3443. 1 add a wait state for the cycle access to finish and then do snooping
  3444. 5 enable C0000-C7FFF cacheability in L1 and L2 cache memory
  3445. 4 enable F0000-FFFFF cacheability in L1 and L2 cache memory
  3446. 3-2 F0000-FFFFF read/write control; determines the R/W control for these
  3447. segments of the shadow RAM (see #P0196)
  3448. 1-0 E0000-EFFFF read/write control; determines the R/W control for these
  3449. segments of the shadow RAM (see #P0196)
  3450. Note: L1 cacheability can be disabled thru register 08h bit 0
  3451. If register 04h bit 2 is set, then F0000-FFFFF and E0000-EFFFF R/W
  3452. control settings should have similar values
  3453. SeeAlso: #P0189,#P0197,#P0219
  3454. Bitfields for OPTi "Viper"/"Vendetta" Tag Test register:
  3455. Bit(s) Description (Table P0199)
  3456. 7-0 Tag Test register; when in cache Test Mode, data is read from/written
  3457. to this register
  3458. SeeAlso: #P0189,#P0193,#P0219
  3459. Bitfields for OPTi "Viper"/"Vendetta" CPU Cache Control register:
  3460. Bit(s) Description (Table P0200)
  3461. 7 L2 cache single/double bank select
  3462. 0 (Viper) two banks of L2 cache
  3463. (Vendetta) reserved
  3464. 1 single bank of L2 cache (non-interleaved)
  3465. 6 enable snoop filtering for bus masters
  3466. 5 CPU HITM# pin sample timing
  3467. 0 (Viper) delay one clock, therefore HITM# sampled on the third rising
  3468. edge of LCLK after EADS# has been asserted
  3469. (Vendetta) reserved
  3470. 1 do not delay, therefore HITM# sampled on the second rising edge
  3471. 4 enable parity checking
  3472. 3 Tag/Dirty RAM implementation
  3473. 0 (Viper) Tag and Dirty are on separate chips
  3474. (Vendetta) reserved
  3475. 1 Tag and Dirty are on the same chip
  3476. 2 enable CPU address pipelining
  3477. 1 enable L1 cache write-back and write-through control
  3478. 0 write-through only
  3479. 1 write-back enabled
  3480. 0 disable BIOS and Video BIOS areas cacheability in L1 cache
  3481. Notes: If asynchronous SRAM, then cache memory banks (when two are present)
  3482. are interleaved, otherwise, they are not
  3483. When register 04h bit 2 is set, bit 0 affects BIOS area
  3484. E0000-EFFFF; when clear, bit 0 affects area F0000-FFFFF
  3485. SeeAlso: #P0189,#P0201,#P0219
  3486. Bitfields for OPTi "Viper" (82C557) System Memory Function register:
  3487. Bit(s) Description (Table P0201)
  3488. 7-6 DRAM Hole B size
  3489. (address specified by register 0Bh, and register 0Ch bits 3-2)
  3490. 00 512K
  3491. 01 1M
  3492. 10 2M
  3493. 11 4M
  3494. 5-4 DRAM Hole B control mode
  3495. 00 disable
  3496. 01 write-through for L1 and L2 cache
  3497. 10 non-cacheable for L1 and L2 cache
  3498. 11 enable hole in DRAM
  3499. 3-2 DRAM Hole A size (settings same as bits 7-6)
  3500. (address specified by register 0Ah, and register 0Ch bits 1-0)
  3501. 1-0 DRAM Hole A control mode (settings same as bits 5-4)
  3502. SeeAlso: #P0189,#P0203,#P0204,#P0219
  3503. Bitfields for OPTi "Viper" (82C557) DRAM Hole A Address Decode register 1:
  3504. Bit(s) Description (Table P0202)
  3505. 7-0 DRAM Hole A address, bits 26-19
  3506. (bits 1-0 of register 0Ch map onto bits 28-27 of HA lines)
  3507. SeeAlso: #P0189,#P0204,#P0203,#P0219
  3508. Bitfields for OPTi "Viper" (82C557) DRAM Hole B Address Decode register 2:
  3509. Bit(s) Description (Table P0203)
  3510. 7-0 DRAM Hole B address, bits 26-19
  3511. (bits 3-2 of register 0Ch map onto bits 28-27 of HA lines)
  3512. SeeAlso: #P0189,#P0204,#P0202,#P0219
  3513. Bitfields for OPTi "Viper" (82C557) Extended DMA register:
  3514. Bit(s) Description (Table P0204)
  3515. 7 reserved (0)
  3516. 6 Fast BRDY# generation for DRAM write page hits
  3517. 0 BRDY# for DRAM writes generated on the fourth clock
  3518. 1 BRDY# for DRAM writes generated on the third clock
  3519. 5 (Viper) HACALE one-half a clock cycle earlier
  3520. 0 HACALE normal timing
  3521. 1 HACALE one-half a clock cycle early enabled
  3522. (Vendetta) reserved
  3523. 4 (Viper) wider cache WE# pulse
  3524. 0 cache WE# pulse width is normal (~15ns)
  3525. 1 cache WE# pulse is wider (~17.5ns)
  3526. (Vendetta) reserved
  3527. 3-2 DRAM Hole B starting address, bits 28-27 (see also #P0202)
  3528. 1-0 DRAM Hole A starting address, bits 28-27 (see also #P0203)
  3529. Note: bits 26-19 of memory holes A and B are mapped from Indices 0Ah and 0Bh
  3530. SeeAlso: #P0189,#P0219
  3531. Bitfields for OPTi "Viper" (82C557) Clock Control register:
  3532. Bit(s) Description (Table P0205)
  3533. 7 (Viper) clock source for generation the syncronous SRAM timing
  3534. 0 CPU clock is the source for the timing and control signals
  3535. 1 ECLK is the source for the timing and control signals
  3536. (Vendetta) reserved (1)
  3537. 6 (Viper) this bit is set if the skew between ECLK and CPU clock is too
  3538. large (read-only bit, set by the 82C557 chip)
  3539. (Vendetta) reserved (read-only)
  3540. 5 (Viper) enable auto skew detect; when this bit is set, bit 4 will be
  3541. set automatically if the skew between CLK and ECLK is too large
  3542. (Vendetta) BRDY# PCI-to-ISA bridge request remove BOFF# disable
  3543. 4 (Viper) ECLK - CLK skew, activated when synchronou SRAMs are being used
  3544. 0 skew between CLK and ECLK is not too large
  3545. 1 skew is too large
  3546. (Vendetta)
  3547. 0 preemption when CPU needs memory
  3548. 1 reserved
  3549. 3 enable A0000-BFFFF as system memory
  3550. 2 wait state addition for PCI master doing address toggling as a 486
  3551. 0 linear burst mode style address toggling - no wait state addition
  3552. 1 i486 burst style address toggling - one wait state needs to be added
  3553. 1 (Viper) PCI cycle claimed by the 82C557 during PCI pre-snoop cycle
  3554. 0 82C557 does not claim the PCI cycle after it asserts STOP#
  3555. 1 82C557 claims the PCI cycle after it asserts STOP#
  3556. (Vendetta) reserved
  3557. 0 slow CPU clock; should be set if the CPU clock frequency has been
  3558. reduced
  3559. 0 CPU clock frequency is normal
  3560. 1 CPU clock has been slowed down
  3561. (Vendetta) reserved
  3562. SeeAlso: #P0189,#P0219
  3563. Bitfields for OPTi "Viper" (82C557) Cycle Control register 1:
  3564. Bit(s) Description (Table P0206)
  3565. 7-6 (Viper) PCI master read burst wait state control
  3566. 00 4 cycles
  3567. 01 3 cycles
  3568. 10 2 cycles
  3569. 11 reserved
  3570. (Vendetta) reserved
  3571. 5-4 (Viper) PCI master write burst wait state control (same settings as
  3572. bits 7-6)
  3573. (Vendetta) reserved
  3574. 3 master cycle parity enable; this bit becomes applicable when bit 4 of
  3575. register 08h is set
  3576. 0 enable parity check during master cycles
  3577. 1 disable parity check during master cycles
  3578. 2 (Viper) HACALE timing control
  3579. 0 HACALE high during HITM# before CPU ADS#
  3580. 1 HACALE low and CA4 always enabled during HITM cycle
  3581. (Vendetta) fast NA# generation enable
  3582. 1 enable write protection for L1 BIOS
  3583. 0 PCI line comparator; this bit is only valid when bit 6 of register 08h
  3584. is set
  3585. 0 use line comparator in PCI master
  3586. 1 generate inquire cycle for every new FRAME#
  3587. SeeAlso: #P0189,#P0219
  3588. Bitfields for OPTi "Viper" (82C557) Cycle Control register 2:
  3589. Bit(s) Description (Table P0207)
  3590. 7 enable PCI pre-snooping feature
  3591. 6 (Viper) AT master wait state control
  3592. 0 do not add any wait states for AT master cycles
  3593. 1 add wait wait states for AT master cycles
  3594. (Vendetta) ISA master access wait states enable (use if PCICLK <33MHz)
  3595. 5 (Viper) wait state addition for synchronous SRAM even byte access
  3596. 0 do not add a wait state for a synchronous SRAM even byte access
  3597. 1 add one wait state for a synchronous SRAM even byte access
  3598. (Vendetta) L2 write-through mode CPU-to-DRAM deep buffer enable
  3599. 4 PCI wait state addition for synchronous SRAM L2 cache implementation
  3600. 0 master does not wait for end of current cycle + CPU-PCI clock to
  3601. become synchronous
  3602. 1 master waits for end of current cycle + wait for CPU-PCI clock to
  3603. become synchronous
  3604. 3 (Viper) reserved
  3605. (Vendetta) L2 single cycle write hit when line already dirty
  3606. 0 = 5 CLKs
  3607. 1 = 3 CLKs
  3608. 2 (Viper) ADSC# generation for synchronous SRAM read cycle
  3609. 0 generate ADSC# immediately after CPU ADS# goes active
  3610. 1 generate ADSC# one clock after CPU ADS# goes active
  3611. (Vendetta) CPU to L2 cache hit cycle chipset ADSC# generation disable
  3612. 1 (Viper) reserved
  3613. (Vendetta) two-PCI master fix
  3614. 0 revision 2.0
  3615. 0 L2 cache size selector; works along with bits 1-0 of register 02h
  3616. 0 below 1M
  3617. 1 1M and above (Viper only)
  3618. SeeAlso: #P0189,#P0193,#P0219
  3619. Bitfields for OPTi "Viper" (82C557) Miscellaneous Control register 1:
  3620. Bit(s) Description (Table P0208)
  3621. 7 (Viper) early decode of PCI/VL/AT cycle
  3622. (Vendetta) early decode of PCI/ISA cycle
  3623. 0 CPU to <bus> slave cycle triggered after second T2
  3624. 1 CPU to <bus> slave cycle triggered after first T2
  3625. 6 (Viper) cache modified write cycle timing
  3626. 0 use the old address changing method, as in the 82C546/82C547
  3627. 1 two bank cache, CA4 delayed one-half a clock for write cycles
  3628. (Vendetta) reserved
  3629. 5 pipelined read cycle timing; determines the lead-off cycle
  3630. 0 3-X-X-X read followed by a 3-X-X-X piped read cycle
  3631. 1 3-X-X-X read followed by a 2-X-X-X piped read cycle
  3632. 4 (Viper) enable write hit pipelined
  3633. 0 do not enable 2-X-X-X pipelined write hit cycles
  3634. 1 enable 2-X-X-X pipelined write hit cycles
  3635. (Vendetta) reserved
  3636. 3 (Viper) write pulse timing control for cache write hit cycles
  3637. 0 do not change the write pulse timing during X-2-2-2 write hit
  3638. cycles
  3639. 1 move the write pulse one-half a clock later in X-2-2-2 write hit
  3640. cycles
  3641. (Vendetta) reserved
  3642. 2 (Viper) write pulse timing control for cache write hit cycles
  3643. 0 do not change the write pulse timing during 3-X-X-X write hit
  3644. cycles
  3645. 1 move the write pulse one-half a clock later in 3-X-X-X write hit
  3646. cycles
  3647. (Vendetta) reserved
  3648. 1 (Viper) external 74F126 select
  3649. 0 an external 74F126 is installed for CA3 and CA4
  3650. 1 an external 74F126 is not installed for CA3 and CA4
  3651. (Vendetta) reserved (1)
  3652. 0 LCLK select control; when this bit is set, the timing constraints
  3653. between the LCLK and the CPUCLK inputs to the SYSC need to be met.
  3654. This constraints are: LCLK <= 1/2 CPUCLK period before CPUCLK, and
  3655. LCLK <= 0.5ns after CPUCLK
  3656. 0 LCLK is asynchronous to the CPUCLK
  3657. 1 LCLK is synchronous to the CPUCLK; LCLK = CPUCLK/2
  3658. Note: bit 1 should always be set to 1
  3659. SeeAlso: #P0189,#P0219
  3660. Bitfields for OPTi "Viper" (82C557) Miscellaneous Control register 2:
  3661. Bit(s) Description (Table P0209)
  3662. 7-6 reserved; must be set to 0
  3663. 5 cache inactive during Idle state control
  3664. 0 SRAM always active
  3665. 1 SRAM inactive during Idle state (Viper only)
  3666. 4 next address (NA#) mode control
  3667. 0 normal NA# timing used with asynchronous SRAMs
  3668. 1 new NA# timing for synchronous SRAMs; used only when CPU operating
  3669. at 50MHz
  3670. 3 SRAM type
  3671. 0 asynchronous SRAM (Viper only)
  3672. 1 synchronous SRAM
  3673. 2 (Viper) enable page miss posted write
  3674. (Vendetta) reserved
  3675. 1 (Viper) ISA/DMA IOCHRDY control
  3676. 0 old mode, no IOCHRDY during line hit
  3677. 1 drive IOCHRDY low until cycle is finished
  3678. (Vendetta) reserved
  3679. 0 (Viper) delay start
  3680. 0 old mode, do not delay internal master cycle after an inquire
  3681. cycle
  3682. 1 delay internal master cycles by one LCLK after an inquire cycle
  3683. (Vendetta) reserved
  3684. SeeAlso: #P0189,#P0219
  3685. Bitfields for OPTi "Viper" (82C557) Refresh Control register:
  3686. Bit(s) Description (Table P0210)
  3687. 7 REFRESH#/32KHz source selection
  3688. 0 REFRESH# source is REFRESH# pulse from the 82C558 or the ISA master
  3689. 1 REFRESH# pulse source is a 32KHz clock
  3690. 6 reserved; must be written to 0
  3691. 5-4 suspend mode refresh
  3692. 00 from CLK state machine
  3693. 01 slef refresh based on 32KHz only
  3694. 10 normal refresh based on 32KHz only
  3695. 11 undefined
  3696. 3-2 slow refresh
  3697. 00 refresh on every REFRESH#/32KHz falling edge
  3698. 01 refresh on alternate REFRESH#/32KHz falling edge
  3699. 10 refresh on one in four REFRESH#/32KHz falling edge
  3700. 1 refresh on every REFRESH#/32KHz toggle
  3701. 1 enable bits 23-17 of LA from Refresh Page register (8Fh) during refresh
  3702. 0 enable output of bits 7-4 of DBC MP during master write
  3703. 0 disable the DBC from generation the MP[7:4] lines during PCI master
  3704. writes; there must be a pull-up on MP0
  3705. 1 enable the DBC to generate the MP[7:4] lines during PIC master
  3706. writes; there must be a pull-down on MP0
  3707. SeeAlso: #P0189,#P0211
  3708. Bitfields for OPTi "Viper" (82C557) Memory Decode Control register 1:
  3709. Bit(s) Description (Table P0211)
  3710. 7 (Viper) memory decode select
  3711. 0 Byte Merge/Prefetch and Sony Cache Module Control register is
  3712. available in register 00h; compatible to 82C547 DRAM configurations
  3713. 1 Compatible DRAM Configuration register is available in register 00h;
  3714. full decode option; this gives the user maximum flexibility in
  3715. choosing different DRAM configurations
  3716. (Vendetta) reserved (1)
  3717. 6-4 full decode for logical bank 1 (RAS#1), if bit 7 set. This settings
  3718. apply to 36-pin banks only (see #P0212)
  3719. 3 enable SMRAM
  3720. 2-0 full decode for logical bank 0 (RAS#0), if bit 7 set. This settings
  3721. apply to 36-pin banks only (see #P0212)
  3722. SeeAlso: #P0189,#P0190,#P0191,#P0219
  3723. (Table P0212)
  3724. Values for OPTi "Viper" (82C557) Memory Bank Decode Control registers:
  3725. 000 0K
  3726. 001 256K
  3727. 010 512K
  3728. 011 1M
  3729. 100 2M
  3730. 101 4M
  3731. 110 8M
  3732. 111 16M
  3733. SeeAlso: #P0211,#P0213,#P0216
  3734. Bitfields for OPTi "Viper" (82C557) Memory Decode Control register 2:
  3735. Bit(s) Description (Table P0213)
  3736. 7 (Viper) reserved; must be written to 0
  3737. (Vendetta) reserved (1)
  3738. 6-4 full decode for logical bank 3 (RAS#3), if register 13h bit 7 is set
  3739. (see #P0212)
  3740. 3 SMRAM control
  3741. 0 disable SMRAM (enable SMRAM for both Code and Data if SMIACT# is
  3742. active and register 13h bit 3 is set)
  3743. 1 enable SMRAM (enable SMRAM for Code only if SMIACT# is active and
  3744. register 13h bit 3 is set)
  3745. 2-0 full decode for logical bank 2 (RAS#2), if register 13h bit 7 is set
  3746. (see #P0212)
  3747. SeeAlso: #P0189,#P0219
  3748. Bitfields for OPTi "Viper" (82C557) PCI Cycle Control register 1:
  3749. Bit(s) Description (Table P0214)
  3750. 7-6 CPU master to PCI memory slave, write IRDY# control
  3751. 00 3 LCLKs after end of address phase
  3752. 01 2 LCLKs after end of address phase
  3753. 10 1 LCLK after end of address phase
  3754. 11 0 LCLK after end of address phase
  3755. 5-4 CPU master to PCI slave write posting, bursting control
  3756. 00 PCI slave write, no posting, no bursting
  3757. 01 PCI slave write, posting enabled, no bursting
  3758. 10 PCI slave write, posting enabled, conservative bursting
  3759. 11 PCI slave write, posting enabled, aggressive bursting
  3760. 3-2 master retry timer
  3761. 00 retries unmasked after 10 PCICLKs
  3762. 01 retries unmasked after 18 PCICLKs
  3763. 10 retries unmasked after 34 PCICLKs
  3764. 11 retries unmasked after 66 PCICLKs
  3765. 1 reserved; must be written to 0
  3766. 0 PCI cycle, FRAME# timing control for pipelined cycles
  3767. 0 PCI cycle FRAME# assertion is done in the conservative mode style
  3768. 1 PCI cycle FRAME# assertion is done in the aggressive mode style
  3769. SeeAlso: #P0189,#P0216,#P0219
  3770. Bitfields for OPTi "Viper"/"Vendetta" Dirty/Tag RAM Control register:
  3771. Bit(s) Description (Table P0215)
  3772. 7 (Viper) Dirty pin selection; reflects the kind of SRAM chosen to
  3773. implement the Dirty RAM; it also determines the functionality of the
  3774. DIRTYI pin of the 82C557
  3775. 0 DIRTYI pin is input-only
  3776. 1 DIRTYI pin is bidirectional
  3777. (Vendetta) reserved (1)
  3778. 6 reserved; must be written to 0
  3779. 5 Tag RAM size
  3780. 0 = 8-bit Tag (Viper only)
  3781. 1 = 7-bit Tag
  3782. 4 write hit cycle lead-off time when combining Dirty/Tag RAM
  3783. 0 single write hit lead-off cycle = 5 cycles
  3784. 1 single write hit lead-off cycle = 4 cycles
  3785. 3 pre-snoop control
  3786. 0 pre-snoop for starting address 0 only
  3787. 1 pre-snoop for all addresses except those on the line boundary
  3788. 2 (Viper) reserved; must be written to 0
  3789. (Vendetta) synchronization between LCLK and CLK
  3790. 0 LCLK is asynchronous to CLK
  3791. 1 LCLK is synchronous to CLK
  3792. 1 (Viper) CPU to VL read access, DBC DLE# bits 1-0 timing
  3793. 0 LCLK high
  3794. 1 LCLK low
  3795. (Vendetta) reserved
  3796. 0 (Viper) HDOE# timing control
  3797. 0 HDOE# is negated normally
  3798. 1 HDOE# is negated one clock before the cycle finishes
  3799. (Vendetta) reserved
  3800. Note: (Vendetta) bit 4 should be set same as register 22h bit 0
  3801. SeeAlso: #P0189,#P0219
  3802. Bitfields for OPTi "Viper"/"Vendetta" PCI Cycle Control register 2:
  3803. Bit(s) Description (Table P0216)
  3804. 7 (Vipder) NA# assertion control for PCI slave accesses when synchronous
  3805. PCI clock is used
  3806. 0 no pipelining for accesses to PCI slave
  3807. 1 pipelining enabled for accesses to PCI slave for both synchronous
  3808. and asynchronous PCI solutions; if set, overrides bit 6
  3809. (Vendetta) MD drive strength
  3810. 0 = 8 mA
  3811. 1 = 12 mA
  3812. 6 NA# assertion control for PCI slave accesses when asynchronous PCI
  3813. clock is used
  3814. 0 no pipelining for accesses to PCI slave
  3815. 1 pipelining enabled for accesses to PCI slave for an asynchronous PCI
  3816. implementation; this bit is overridden if bit 7 is set
  3817. 5 (Viper) enable support for Intel standard BSRAM
  3818. 0 no support for Intel standard BSRAM
  3819. 1 support for Intel standard BSRAM; should be set only if using two
  3820. banks of synchronous SRAM
  3821. (Vendetta) reserved
  3822. 4 (Viper only) enable fast BRDY# generation for PCI cycles
  3823. 3 (Viper only) enable fast FRAME# generation for PCI cycles
  3824. 2 (Viper only) byte merging/piping control
  3825. 0 no pipelining when byte merging is on
  3826. 1 pipelining enabled along with byte merging
  3827. 1 pipelined synchronous SRAM support; this bit is applicable only if
  3828. register 11h bit 3 is set
  3829. 0 standard synchronous SRAM installed (Viper only)
  3830. 1 pipelined synchronous SRAM installed
  3831. 0 Cyrix linear burst mode support
  3832. 0 normal Intel standard burst mode
  3833. 1 support for Cyrix linear burst mode
  3834. SeeAlso: #P0189,#P0214,#P0219
  3835. Bitfields for OPTi "Viper"/"Vendetta" Tristate Control register:
  3836. Bit(s) Description (Table P0217)
  3837. 7 (Viper) reserved; must be written to 0
  3838. (Vendetta) ISA retry (1)
  3839. 6 (Viper) reserved; must be written to 0
  3840. (Vendetta) RAS line drive strength
  3841. 0 = 16 mA
  3842. 1 = 4 mA
  3843. 5 (Viper) voltage selection for the CAS# lines 7-0
  3844. 0 CAS# lines 7-0 are driven out at 5.0V logic level
  3845. 1 CAS# lines 7-0 are driven out at 3.3V logic level
  3846. (Vendetta) CAS1# and CAS5# drive strength
  3847. 0 = 8 mA
  3848. 1 = 16 mA
  3849. 4 (Viper) programmable current drive for the MA[X], RAS[X]# and the DWE#
  3850. lines
  3851. (Vendetta) memory address lines and write enable line drive strength
  3852. 0 driving capability on these lines is 4mA
  3853. 1 driving capability on these lines is 16mA
  3854. 3 enable tristate CPU interface during Suspend and during CPU power-off
  3855. 2 enable tristate PCI interface during Suspend and during PCI power-off
  3856. 1 enable tristate cache interface during Suspend and cache power-off
  3857. 0 enable the pull-up/pull-down resistors during Suspend and power-off
  3858. SeeAlso: #P0189,#P0219
  3859. Bitfields for OPTi "Viper" (82C557) Memory Decode Control register 3:
  3860. Bit(s) Description (Table P0218)
  3861. 7 DIRTYWE# RAS5# selection; if six DRAM banks are chosen, then the line
  3862. will become RAS#5, if this bit is set
  3863. 0 DIRTYWE# functions as DIRTYWE# (six banks of DRAM are not chosen)
  3864. 1 DIRTYWE# functions as RAS#5 (six banks of DRAM are chosen)
  3865. (Vendetta must be set to RAS5# function (1))
  3866. 6-4 (Viper) full decode for logical bank 5 (RAS#5) if register 13h bit 7
  3867. and register 19h bit 7 are set (see #P0212)
  3868. (Vendetta) full decode for logical bank 5 (RAS5#) if register 13h
  3869. bit 7 set (see #P0212)
  3870. 3 MA11/RAS#4 selection; if five DRAM banks are chosen, then the MA11 line
  3871. will become RAS#4, if this bit is set
  3872. 0 MA11 functions as MA11 (the fifth bank of DRAM is not chosen)
  3873. 1 MA11 functions as RAS#4 (five banks of DRAM have been chosen)
  3874. (Vendetta must be set to RAS4# function (1))
  3875. 2-0 (Viper) full decode for logical bank 4 (RAS#4) if register 13h bit 7
  3876. and register 19h bit 3 are set (see #P0212)
  3877. (Vendetta) full decode for logical bank 4 (RAS4#) if register 13h
  3878. bit 7 set (see #P0212)
  3879. Notes: (Viper) if bit 7 is set, then a combined Dirty/Tag SRAM solution must
  3880. be implemented or else it will not have a Dirty RAM
  3881. (Viper) if bit 3 is set, then none of the DRAM banks will support the
  3882. 8M*36 or 16M*36 options
  3883. SeeAlso: #P0189,#P0219
  3884. ----------P00220024--------------------------
  3885. PORT 0022-0024 - OPTi "Vendetta" (82C750) CHIPSET - SYSTEM CONTROL REGISTERS
  3886. Note: every access to PORT 0024h must be preceded by a write to PORT 0022h,
  3887. even if the same register is being accessed a second time
  3888. SeeAlso: PORT 0022h"82C206"
  3889. 0022 ?W index for accesses to data port (see #P0219)
  3890. 0023 RW DMA clock select (see #P0087)
  3891. 0024 RW chip set data
  3892. (Table P0219)
  3893. Values for OPTi "Vendetta" (82C750) system control registers:
  3894. 00h DRAM control register 1 (see #P0220)
  3895. 01h DRAM control register 2 (see #P0192)
  3896. 02h cache control register 1 (see #P0193)
  3897. 03h cache control 2 (see #P0194)
  3898. 04h shadow RAM control register 1 (see #P0195)
  3899. 05h shadow RAM control register 2 (see #P0197)
  3900. 06h shadow RAM control register 3 (see #P0198)
  3901. 07h tag test register (see #P0199)
  3902. 08h CPU cache control register (see #P0200)
  3903. 09h system memory function register (see #P0201)
  3904. 0Ah DRAM hole A address decode register 1 (see #P0202)
  3905. 0Bh DRAM hole B address decode register 2 (see #P0203)
  3906. 0Ch DRAM hole higher address (see #P0204)
  3907. 0Dh clock control register (see #P0205)
  3908. 0Eh PCI master burst control register 1 (see #P0206)
  3909. 0Fh PCI master burst control register 2 (see #P0207)
  3910. 10h miscellaneous control register 1 (see #P0208)
  3911. 11h miscellaneous control register 2 (see #P0209)
  3912. 12h miscellaneous control register 3 (see #P0221)
  3913. 13h memory decode control register 1 (see #P0211)
  3914. 14h memory decode control register 2 (see #P0213)
  3915. 15h PCI cycle control register 1 (see #P0214)
  3916. 16h dirty/tag RAM control register (see #P0215)
  3917. 17h PCI cycle control register 2 (see #P0216)
  3918. 18h tristate control register (see #P0217)
  3919. 19h memory decode control register 3 (see #P0218)
  3920. 1Ah memory shadow control register 1 (see #P0222)
  3921. 1Bh memory shadow control register 2 (see #P0223)
  3922. 1Ch EDO SDRAM control register (see #P0224)
  3923. 1Dh miscellaneous control register 4 (see #P0225)
  3924. 1Eh BOFF# control register (see #P0226)
  3925. 1Fh EDO timing control register (see #P0227)
  3926. 20h DRAM burst control register (see #P0228)
  3927. 21h PCI concurrence control register (see #P0229)
  3928. 22h inquire cycle control register (see #P0230)
  3929. 23h pre-snoop control register (see #P0231)
  3930. 24h asymmetric DRAM configuration register (see #P0232)
  3931. 25h GUI memory location register (see #P0233)
  3932. 26h UMA control register (see #P0234)
  3933. 27h self refresh timing register (see #P0235)
  3934. 28h SDRAM burst and latency control register (see #P0236)
  3935. 29h SDRAM selection register (see #P0237)
  3936. 2Ah PCI-to-DRAM deep buffer size register (see #P0238)
  3937. 2Bh EDO/SDRAM time-out register (see #P0239)
  3938. 2Ch CPU-to-DRAM buffer control register (see #P0240)
  3939. 2Dh bank-wise EDO timing selection register (see #P0241)
  3940. 2Eh PCI master - GUI retry control register (see #P0242)
  3941. 2Fh CAS address setup time control register (see #P0243)
  3942. 30h-7Fh reserved
  3943. 80h PIC 1 ICW1 read-back register (read-only)
  3944. 81h PIC 1 ICW2 read-back register (read-only)
  3945. 82h PIC 1 ICW3 read-back register (read-only)
  3946. 83h PIC 1 ICW4 read-back register (read-only)
  3947. 84h reserved
  3948. 85h PIC 1 OCW2 read-back register (read-only)
  3949. 86h PIC 1 OCW3 read-back register (read-only)
  3950. 87h reserved
  3951. 88h PIC 2 ICW1 read-back register (read-only)
  3952. 89h PIC 2 ICW2 read-back register (read-only)
  3953. 8Ah PIC 2 ICW3 read-back register (read-only)
  3954. 8Bh PIC 2 ICW4 read-back register (read-only)
  3955. 8Ch reserved
  3956. 8Dh PIC 2 OCW2 read-back register (read-only)
  3957. 8Eh PIC 2 OCW3 read-back register (read-only)
  3958. 8Fh refresh address register (see #P0244)
  3959. 90h CTSC0LB (PIT counter 0 low byte) read-back register (read-only)
  3960. 91h CTSC0HB (PIT counter 0 high byte) read-back register (read-only)
  3961. 92h CTSC1LB (PIT counter 1 low byte) read-back register (read-only)
  3962. 93h CTSC1HB (PIT counter 1 high byte) read-back register (read-only)
  3963. 94h CTSC2LB (PIT counter 2 low byte) read-back register (read-only)
  3964. 95h CTSC2HB (PIT counter 2 high byte) read-back register (read-only)
  3965. 96h byte pointer register (read-only)
  3966. (byte 2 pointer value)
  3967. 97h-ACh reserved
  3968. ADh general purpose chip select control register (see #P0270)
  3969. AEh-DFh reserved
  3970. E0h GREEN mode control/enable status (see #P0245)
  3971. E1h EPMI control/GREEN event timer (see #P0246)
  3972. E2h GREEN event timer initial count register (see #P0247)
  3973. E3h IRQ event enable register 1 (see #P0248)
  3974. E4h IRQ event enable register 2 (see #P0249)
  3975. E5h DREQ event enable register (see #P0250)
  3976. E6h device cycle monitor enable register (see #P0251)
  3977. E7h wake-up source/programmable IO/memory address mask register (see #P0252)
  3978. E8h programmable I/O/MEM address range register (see #P0253)
  3979. E9h programmable I/O/MEM address range register (see #P0254)
  3980. EAh enter GREEN state port register (see #P0255)
  3981. EBh return to NORMAL state configuration port register (see #P0256)
  3982. ECh shadow register for external power control latch register (see #P0257)
  3983. EDh device cycle detection enable/status register (see #P0258)
  3984. EEh STPCLK# modulation register (see #P0259)
  3985. EFh miscellaneous register (see #P0260)
  3986. F0h device timer CLK select/enable status register (see #P0261)
  3987. F1h device timer 0 initial count register
  3988. F2h device timer 1 initial count register
  3989. F3h device timer IO/MEM select, mask bits register (see #P0262)
  3990. F4h device 0 IO/MEM address register (see #P0263)
  3991. F5h device 0 IO/MEM address register (see #P0264)
  3992. F6h device 1 IO/MEM address register (see #P0265)
  3993. F7h device 1 IO/MEM address register (see #P0266)
  3994. FAh-FBh reserved
  3995. FCh power management control register 1 (see #P0267)
  3996. FDh power management control register 2 (see #P0268)
  3997. FEh power management control register 3 (see #P0269)
  3998. FFh general purpose chip select control register (see #P0270)
  3999. Bitfields for OPTi "Vendetta" DRAM control register 1:
  4000. Bit(s) Description (Table P0220)
  4001. 7 reserved
  4002. 6 SDRAM pipeline fix (1)
  4003. 5-0 reserved
  4004. SeeAlso: #P0219
  4005. Bitfields for OPTi "Vendetta" miscellaneous control register 3:
  4006. Bit(s) Description (Table P0221)
  4007. 7 buffered DMA register 8Fh latch to bits 23-16 of SA lines disable
  4008. 6-0 reserved
  4009. SeeAlso: #P0219
  4010. Bitfields for OPTi "Vendetta" memory shadow control register 1:
  4011. Bit(s) Description (Table P0222)
  4012. 7 reserved
  4013. 6-5 CPU bus utilization time guarantee
  4014. 00 = no guarantee
  4015. 01 = 1 of every 15 microseconds
  4016. 10 = 2 of every 15 microseconds
  4017. 11 = 4 of every 15 microseconds
  4018. 4 C8000-DFFFF shadow granularity
  4019. 0 = 16 KB
  4020. 1 = 8 KB
  4021. 3-2 CE000-CFFFF read/write control; determines the R/W control for these
  4022. segments of the shadow RAM; applicable if bit 4 is set (see #P0196)
  4023. 1-0 CA000-CBFFF read/write control; determines the R/W control for these
  4024. segments of the shadow RAM; applicable if bit 4 is set (see #P0196)
  4025. SeeAlso: #P0219
  4026. Bitfields for OPTi "Vendetta" memory shadow control register 2:
  4027. Bit(s) Description (Table P0223)
  4028. 7-6 DE000-DFFFF read/write control; determines the R/W control for these
  4029. segments of the shadow RAM; applicable if register 1Ah bit 4 is set
  4030. (see #P0196)
  4031. 5-4 DA000-DBFFF read/write control; determines the R/W control for these
  4032. segments of the shadow RAM; applicable if register 1Ah bit 4 is set
  4033. (see #P0196)
  4034. 3-2 D6000-D7FFF read/write control; determines the R/W control for these
  4035. segments of the shadow RAM; applicable if register 1Ah bit 4 is set
  4036. (see #P0196)
  4037. 1-0 D2000-D3FFF read/write control; determines the R/W control for these
  4038. segments of the shadow RAM; applicable if register 1Ah bit 4 is set
  4039. (see #P0196)
  4040. SeeAlso: #P0219
  4041. Bitfields for OPTi "Vendetta" EDO SDRAM control register:
  4042. Bit(s) Description (Table P0224)
  4043. 7-2 bank 5-0 EDO SDRAM usage
  4044. 0 = standard page mode DRAM
  4045. 1 = EDO SDRAM
  4046. 1 reserved
  4047. 0 DRAM access CAS pulse width
  4048. 0 = determined by register 01h bit 3
  4049. 1 = 1 CPUCLK
  4050. SeeAlso: #P0219
  4051. Bitfields for OPTi "Vendetta" miscellaneous control register 4:
  4052. Bit(s) Description (Table P0225)
  4053. 7-6 reserved
  4054. 5 DWE# timing
  4055. 0 = normal
  4056. 1 = removed 1 CLK earlier
  4057. 4 DRAM read leadoff cycle
  4058. 0 = normal
  4059. 1 = 1 CLK reduced
  4060. 3 system memory DMA access disable
  4061. 2 reserved
  4062. 1 SMM mode B0000-BFFFF access
  4063. 0 = main memory
  4064. 1 = PCI bus
  4065. 0 SMM mode A0000-AFFFF access
  4066. 0 = main memory
  4067. 1 = PCI bus
  4068. SeeAlso: #P0219
  4069. Bitfields for OPTi "Vendetta" BOFF# control register:
  4070. Bit(s) Description (Table P0226)
  4071. 7 PCI master read cycle
  4072. 0 = wait IRDY# assert before TRDY# assert
  4073. 1 = generate TRDY# when checking IRDY# status
  4074. 6 reserved (1)
  4075. 5 reserved
  4076. 4 A0000-BFFFF PCI retry cycle BOFF# generation
  4077. 0 = not generated if bit 3 set
  4078. 1 = generated if bit 3 set
  4079. 3 deadlock situation avert
  4080. 0 = no avert
  4081. 1 = assert BOFF#
  4082. 2 reserved (1)
  4083. 1-0 reserved
  4084. SeeAlso: #P0219
  4085. Bitfields for OPTi "Vendetta" EDO timing control register:
  4086. Bit(s) Description (Table P0227)
  4087. 7 0 = normal
  4088. 1 = EDO detection conflict generation (bit 6 set)
  4089. 6 0 = normal fast page mode
  4090. 1 = detect EDO
  4091. 5 NA# generation
  4092. 0 = aggresive
  4093. 1 = normal
  4094. 4 DRAM read cycle lead-off 1 CLK reduce enable
  4095. 3-2 reserved
  4096. 1 hidden refresh block AHOLD disable
  4097. 0 D0000-DFFFF cacheable in L1 and L2
  4098. 0 = not cacheable
  4099. 1 = cacheable; area has to be read/writable and shadowed
  4100. SeeAlso: #P0219
  4101. Bitfields for OPTi "Vendetta" DRAM burst control register:
  4102. Bit(s) Description (Table P0228)
  4103. 7 reserved (1)
  4104. 6 PCI master access HITM# cycle DRAM write post enable
  4105. 5 reserved
  4106. 4 PCI master parity enable
  4107. 3-2 PCI master cycle DRAM write burst cycle
  4108. 00 = reserved
  4109. 01 = X-3-3-3
  4110. 10 = X-2-2-2
  4111. 11 = X-1-1-1
  4112. 1-0 PCI master cycle DRAM read burst cycle
  4113. 00 = reserved
  4114. 01 = X-3-3-3
  4115. 10 = X-2-2-2
  4116. 11 = X-1-1-1
  4117. SeeAlso: #P0219
  4118. Bitfields for OPTi "Vendetta" PCI concurrence control register:
  4119. Bit(s) Description (Table P0229)
  4120. 7 concurrence timer
  4121. 0 = conservative
  4122. 1 = aggressive
  4123. 6-5 PCI master and CPU/L2 concurrence
  4124. 00 = no concurrence
  4125. x1 = PCI write invalid cycles
  4126. 1x = PCI read multiple and read line cycles
  4127. 4-3 reserved
  4128. 2 0 = if tag = 11011111b => invalid combination
  4129. 1 = if cache = 256K, tag = 00001100b => invalid combination (CF0000h).
  4130. if cache > 256K, tag = 10111111b => invalid combination
  4131. (valid only when bit 1 set)
  4132. 1-0 reserved (1)
  4133. SeeAlso: #P0219
  4134. Bitfields for OPTi "Vendetta" inquire cycle control register:
  4135. Bit(s) Description (Table P0230)
  4136. 7 reserved
  4137. 6-5 new mode pre-snoop function
  4138. 00 = disable
  4139. 11 = enable
  4140. 4 HRQ synchronous to LCLK enable (must be 1 for ISA retry)
  4141. 3-1 reserved
  4142. 0 write hit cycle lead-off time when combining Dirty/Tag RAM
  4143. 0 = single write hit lead-off cycle = 5 cycles
  4144. 1 = single write hit lead-off cycle = 4 cycles
  4145. Note: bit 0 should be set same as register 16h bit 4
  4146. SeeAlso: #P0219
  4147. Bitfields for OPTi "Vendetta" pre-snoop control register:
  4148. Bit(s) Description (Table P0231)
  4149. 7 reserved
  4150. 6 0 = bank 0 selected as first bank
  4151. 1 = bank 0 selected as last bank
  4152. 5 PCI X-1-1-1 write invalidate pre-snoop enable
  4153. 4 PCI X-1-1-1 read multiple and read line pre-snoop enable
  4154. 3 fast NA cache hit half clock shift enable
  4155. 2-1 reserved (1)
  4156. 0 reserved
  4157. SeeAlso: #P0219
  4158. Bitfields for OPTi "Vendetta" asymmetric DRAM configuration register:
  4159. Bit(s) Description (Table P0232)
  4160. 7-6 logical bank 3 DRAM type
  4161. 00 = symmetric
  4162. 01 = asymmetric x8
  4163. 10 = asymmetric x9
  4164. 11 = asymmetric x10
  4165. 5-4 logical bank 2 DRAM type
  4166. 3-2 logical bank 1 DRAM type
  4167. 1-0 logical bank 0 DRAM type
  4168. Note: banks 4 and 5 do not support asymmetric DRAM
  4169. SeeAlso: #P0219
  4170. Bitfields for OPTi "Vendetta" GUI memory location register:
  4171. Bit(s) Description (Table P0233)
  4172. 7-3 GUI memory location bits 31-27
  4173. 2 UMA size
  4174. 0 = decided by register 26h bits 5-4
  4175. 1 = 0.5MB (register 26h bits 5-4 = 00)
  4176. 1-0 reserved
  4177. SeeAlso: #P0219
  4178. Bitfields for OPTi "Vendetta" UMA control register:
  4179. Bit(s) Description (Table P0234)
  4180. 7 ISA master to DRAM cycle CAS width
  4181. 0 = controlled by ISA read/write command pulse width
  4182. 1 = 2 LCLKs
  4183. 6 ISA SA address latch
  4184. 0 = pass-through
  4185. 1 = on only for retry
  4186. 5-4 GUI memory size
  4187. 00 = 1MB (0.5MB if register 25h bit 2 set)
  4188. 01 = 2MB
  4189. 10 = 3MB
  4190. 11 = 4MB
  4191. 3 66MHz 5-2-2-2 EDO DRAM read timing enable
  4192. 2-1 GUI priority
  4193. 00 = normal
  4194. 01 = wait 2 CLKs for low priority GUI request
  4195. 11 = high
  4196. 0 UMA support enable
  4197. SeeAlso: #P0219
  4198. Bitfields for OPTi "Vendetta" self refresh timing register:
  4199. Bit(s) Description (Table P0235)
  4200. 7-6 reserved
  4201. 5 PCI master write line invalid cycle HITM# or L2 dirty no stop enable
  4202. 4 CPU single write hit not dirty cycle second T2 AHOLD generate enable
  4203. 3 fast NA# with L2 cache enable
  4204. 2-0 self refresh
  4205. 000 = disable, use external refresh pin
  4206. 001-011 = reserved
  4207. 100 = 66MHz external CPU clock
  4208. 101 = 60MHz external CPU clock
  4209. 110 = 50MHz external CPU clock
  4210. 111 = 40MHz external CPU clock
  4211. SeeAlso: #P0219
  4212. Bitfields for OPTi "Vendetta" SDRAM burst and latency control register:
  4213. Bit(s) Description (Table P0236)
  4214. 7 CS# delay enable
  4215. 6-4 SDRAM CAS# latency
  4216. 000 = reserved
  4217. 001 = 1
  4218. 010 = 2
  4219. 011 = 3
  4220. 100-111 = reserved
  4221. 3 0 = sequential write-through
  4222. 1 = interleaved write-through
  4223. 2-0 SDRAM burst length
  4224. 000 = 1
  4225. 001 = reserved
  4226. 010 = 4
  4227. 011-111 = reserved
  4228. SeeAlso: #P0219
  4229. Bitfields for OPTi "Vendetta" SDRAM selection register:
  4230. Bit(s) Description (Table P0237)
  4231. 7 pipeline read
  4232. 0 = 7-1-1-1-5-1-1-1-1
  4233. 1 = 7-1-1-1-2-1-1-1-1
  4234. 6 reserved
  4235. 5 timing
  4236. tRP tRAS tMRS
  4237. 00 = 2 CLKs 4 CLKs 3 CLKs
  4238. 01 = 4 CLKs 5 CLKs 3 CLKs
  4239. 10 = 3 CLKs 6 CLKs 2 CLKs
  4240. 11 = rsvd 7 CLKs rsvd
  4241. tRP: command activate precharge time
  4242. tRAS: command precharge RAS active time
  4243. tMRS: mode register set cycle time
  4244. 4-0 bank 4-0 SDRAM enable
  4245. SeeAlso: #P0219
  4246. Bitfields for OPTi "Vendetta" PCI-to-DRAM deep buffer size register:
  4247. Bit(s) Description (Table P0238)
  4248. 7 reserved
  4249. 6-5 PCI master read cycle GUI request time-out
  4250. 00 = FP mode, grant DRAM bus when possible
  4251. 01 = SDRAM or EDO time-out
  4252. 10-11 = FP mode, SDRAM, or EDO time-out
  4253. 4 PCI-to-DRAM deep buffer PCI TRDY# wait state
  4254. 0 = 0 wait state (X-1-1-1)
  4255. 1 = 1 wait state (X-2-2-2)
  4256. 3 PCI-to-DRAM deep buffer write burst enable
  4257. 2 PCI-to-DRAM deep buffer read burst enable
  4258. 1-0 PCI-to-DRAM deep buffer size
  4259. 00 = 16 dwords
  4260. 01 = 24 dwords
  4261. 10-11 = reserved
  4262. SeeAlso: #P0219
  4263. Bitfields for OPTi "Vendetta" EDO/SDRAM time-out register:
  4264. Bit(s) Description (Table P0239)
  4265. 7-4 SDRAM time-out count on GUI request - 9 CLKs
  4266. (delay count +9 CLKs)
  4267. 3-0 EDO time-out count on GUI request
  4268. (delay count +6 CLKs)
  4269. SeeAlso: #P0219
  4270. Bitfields for OPTi "Vendetta" CPU-to-DRAM buffer control register:
  4271. Bit(s) Description (Table P0240)
  4272. 7 concurrent CPU-to-PCI read and CPU-to-DRAM write enable
  4273. 6 reserved
  4274. 5 cache miss dirty cycle CPU-to-DRAM buffer control
  4275. 1 = supply data to CPU before previous data write-back
  4276. (CPU-to-DRAM buffer must be enabled)
  4277. 4-3 reserved
  4278. 2 DRAM read cycle BOFF# assert enable
  4279. 1 CPU DRAM bus ownership data merge enable
  4280. 0 write data while buffer flush enable
  4281. SeeAlso: #P0219
  4282. Bitfields for OPTi "Vendetta" bank-wise EDO timing selection register:
  4283. Bit(s) Description (Table P0241)
  4284. 7 reserved
  4285. 6 predictive reading enable
  4286. 5-0 bank 5-0 EDO DRAM read cycle
  4287. 0 = default
  4288. 1 = 5-X-X-X (66MHz)/4-X-X-X (50MHz) enable
  4289. SeeAlso: #P0219
  4290. Bitfields for OPTi "Vendetta" PCI master - GUI retry control register:
  4291. Bit(s) Description (Table P0242)
  4292. 7-6 reserved
  4293. 5 USB module enable
  4294. 4 reserved
  4295. 3 CPU-to-PCI FIFO control module enable
  4296. 2 reserved
  4297. 1 PCI master HITM# cycle, GUI high priority request before first BRDY#
  4298. 0 = retry all
  4299. 1 = retry only PCI master read
  4300. 0 GUI cycle PCI master request retry
  4301. 0 = retry all
  4302. 1 = retry reads, accept writes
  4303. SeeAlso: #P0219
  4304. Bitfields for OPTi "Vendetta" CAS address setup time control register:
  4305. Bit(s) Description (Table P0243)
  4306. 7 page miss cycle CAS column address delay
  4307. 0 = default
  4308. 1 = 1 CLK
  4309. 6 burst mode and length
  4310. 5 reserved
  4311. 4-3 burst mode and length
  4312. bits 6 and 4-3:
  4313. 000 = mode 0, RWM 5
  4314. 001 = mode 1, RWM 5, BLEN 2
  4315. 010 = BLEN 3
  4316. 011 = BLEN 4
  4317. 100 = mode 0, RWM 4
  4318. 101 = mode 2, RWM 4, BLEN 1
  4319. 110 = BLEN 2
  4320. 111 = BLEN 3
  4321. RWM: refresh request water mark
  4322. BLEN: minimum number of burst refresh cycles
  4323. mode 0: generate refresh request on RWM reach/cross; if high priority
  4324. GUI request pending, preempt refresh burst at end of current
  4325. cycle; if CPU/PCI request pending, preempt refresh burst when
  4326. count<RWM; else refresh until count=0, then refresh ahead up
  4327. to 3/7
  4328. mode 1: generate refresh request on RWM reach/cross; if high priority
  4329. GUI request pending, preempt refresh burst at end of current
  4330. cycle; if CPU/PCI request pending, preempt refresh burst when
  4331. count<RWM and performed refresh cycles>=BLEN; else refresh
  4332. until count=0, then refresh ahead up to 3/7
  4333. mode 2: generate refresh request on RWM reach/cross; if high priority
  4334. GUI request pending, preempt refresh burst at end of current
  4335. cycle; if CPU request pending, preempt refresh burst when
  4336. performed refresh cycles>=BLEN; if PCI request pending,
  4337. preempt refresh burst when count<RWM and performed refresh
  4338. cycles>=BLEN; else refresh until count=0, then refresh ahead
  4339. up to 3/7
  4340. 2-0 refresh ahead
  4341. 000 = burst refresh disable
  4342. 001 = starting bank 0, no refresh ahead
  4343. 010 = starting bank 0, refresh ahead up to 3
  4344. 011 = starting bank 0, refresh ahead up to 7
  4345. 100 = burst refresh disable
  4346. 101 = starting bank dynamic, no refresh ahead
  4347. 110 = starting bank dynamic, refresh ahead up to 3
  4348. 111 = starting bank dynamic, refresh ahead up to 7
  4349. SeeAlso: #P0219
  4350. Bitfields for OPTi "Vendetta" refresh address register:
  4351. Bit(s) Description (Table P0244)
  4352. 7-0 during buffered DMA cycle reflected on bits 23-16 of SA lines,
  4353. bits 15-10 of SA lines cleared
  4354. SeeAlso: #P0219
  4355. Bitfields for OPTi "Vendetta" GREEN mode control/enable status:
  4356. Bit(s) Description (Table P0245)
  4357. 7 power management SMI# generation enable
  4358. 6 GREEN event SMI# generation
  4359. (read)
  4360. 0 = GREEN event did not generate SMI#
  4361. 1 = GREEN event generated SMI#
  4362. (write)
  4363. 0 = disable GREEN event SMI# generation
  4364. 1 = enable GREEN event SMI# generation (if bit 7 set)
  4365. 5 reload GREEN event timer/wake-up event SMI# generation
  4366. (read)
  4367. 0 = wake-up event did not generate SMI#
  4368. 1 = wake-up event generated SMI#
  4369. (write)
  4370. 0 = disable wake-up event SMI# generation
  4371. 1 = enable wake-up event SMI# generation (if bit 7 set)
  4372. 4 power management status (read-only)
  4373. 0 = NORMAL
  4374. 1 = GREEN
  4375. 3 power management PPWRL# generation enable
  4376. 2 GREEN event PPWRL# generation enable (if bit 3 set)
  4377. 1 reload GREEN event timer/wake-up event PPWRL# generation enable
  4378. (if bit 3 set)
  4379. 0 software generation of GREEN event
  4380. 0 = no action
  4381. 1 = generate GREEN event (if register E1h bit 0 set)
  4382. SeeAlso: #P0219
  4383. Bitfields for OPTi "Vendetta" EPMI control/GREEN event timer:
  4384. Bit(s) Description (Table P0246)
  4385. 7-6 GREEN event timer CLK period
  4386. 00 = 119 microseconds
  4387. 01 = 12.25 ms
  4388. 10 = 1.94 s
  4389. 11 = 62.5 s
  4390. 5 EPMI0# polarity
  4391. 0 = EPMI0# triggered on falling edge
  4392. 1 = EPMI0# triggered on rising edge
  4393. 4 EPMI0# debounce enable
  4394. 3 EPMI0# polarity
  4395. 0 = determined by bit 5
  4396. 1 = EPMI0# triggered on transition
  4397. 2 GREEN event timer time-out GREEN event generation
  4398. (read)
  4399. 0 = GREEN event timer time-out did not cause GREEN event
  4400. 1 = GREEN event timer time-out did cause GREEN event
  4401. (write)
  4402. 0 = disable GREEN event timer time-out GREEN event generation
  4403. 1 = enable GREEN event timer time-out GREEN event generation
  4404. 1 EPMI0# trigger GREEN event generation
  4405. (read)
  4406. 0 = EPMI0# trigger did not cause GREEN event
  4407. 1 = EPMI0# trigger did cause GREEN event
  4408. (write)
  4409. 0 = disable EPMI0# trigger GREEN event generation
  4410. 1 = enable EPMI0# trigger GREEN event generation
  4411. 0 software trigger GREEN event generation
  4412. (read)
  4413. 0 = software trigger did not cause GREEN event
  4414. 1 = software trigger did cause GREEN event
  4415. (write)
  4416. 0 = disable software trigger GREEN event generation
  4417. 1 = enable software trigger GREEN event generation
  4418. SeeAlso: #P0219
  4419. Bitfields for OPTi "Vendetta" GREEN event timer initial count register:
  4420. Bit(s) Description (Table P0247)
  4421. 7-0 time-out timer count - 2
  4422. SeeAlso: #P0219
  4423. Bitfields for OPTi "Vendetta" IRQ event enable register 1:
  4424. Bit(s) Description (Table P0248)
  4425. 7-3 IRQ7-IRQ3 monitoring enable
  4426. 2 IRQ15-IRQ0 deglitch enable
  4427. 1-0 IRQ1-IRQ0 monitoring enable
  4428. SeeAlso: #P0219
  4429. Bitfields for OPTi "Vendetta" IRQ event enable register 2:
  4430. Bit(s) Description (Table P0249)
  4431. 7-0 IRQ15-IRQ8 monitoring enable
  4432. SeeAlso: #P0219
  4433. Bitfields for OPTi "Vendetta" DREQ event enable register:
  4434. Bit(s) Description (Table P0250)
  4435. 7-5 DREQ7-DREQ5 monitoring enable (if register EFh bit 6 set)
  4436. 4 reserved
  4437. 3-0 DREQ3-DREQ0 monitoring enable (if register EFh bit 6 set)
  4438. SeeAlso: #P0219
  4439. Bitfields for OPTi "Vendetta" device cycle monitor enable register:
  4440. Bit(s) Description (Table P0251)
  4441. 7 programmable IO/MEM monitoring enable
  4442. 6 parallel ports monitoring enable
  4443. 5 video monitoring enable
  4444. 4 hard disk monitoring enable
  4445. 3 floppy disk monitoring enable
  4446. 2 keyboard monitoring enable
  4447. 1 COM1/COM3 monitoring enable
  4448. 0 COM2/COM4 monitoring enable
  4449. SeeAlso: #P0219
  4450. Bitfields for OPTi "Vendetta" wake-up source/programmable IO/memory address:
  4451. Bit(s) Description (Table P0252)
  4452. 7 PREQ# monitoring enable (if register EFh bit 7 set)
  4453. 6 LDEV#/DEVSEL# monitoring enable
  4454. 5 EPMI0# trigger monitoring enable
  4455. 4 reserved
  4456. 3 programmable IO/MEM address type
  4457. 0 = I/O
  4458. 1 = non-system memory
  4459. 2-0 programmable IO/MEM address mask bits 2-0 (bit 3 = register FFh bit 0)
  4460. (mask lowest n bits)
  4461. SeeAlso: #P0219
  4462. Bitfields for OPTi "Vendetta" programmable I/O/MEM address range register:
  4463. Bit(s) Description (Table P0253)
  4464. 7-0 I/O address bits 7-0 or non-system memory address bits 23-16
  4465. (use register E7h bit 3 to select I/O or non-system memory address)
  4466. SeeAlso: #P0219
  4467. Bitfields for OPTi "Vendetta" programmable I/O/MEM address range register:
  4468. Bit(s) Description (Table P0254)
  4469. 7-0 I/O address bits 15-8 or non-system memory address bits 31-24
  4470. (use register E7h bit 3 to select I/O or non-system memory address)
  4471. SeeAlso: #P0219
  4472. Bitfields for OPTi "Vendetta" enter GREEN state port register:
  4473. Bit(s) Description (Table P0255)
  4474. 7-0 GREEN state values for external power control latch
  4475. (transfered to register ECh on enter GREEN state PPWRL#)
  4476. SeeAlso: #P0219
  4477. Bitfields for OPTi "Vendetta" return to NORMAL state configuration port:
  4478. Bit(s) Description (Table P0256)
  4479. 7-0 NORMAL state values for external power control latch
  4480. (transfered to register ECh on return to NORMAL state PPWRL#)
  4481. SeeAlso: #P0219
  4482. Bitfields for OPTi "Vendetta" shadow register for external power control latch:
  4483. Bit(s) Description (Table P0257)
  4484. 7-0 external power control latch value
  4485. (write generates PPWRL#)
  4486. SeeAlso: #P0219
  4487. Bitfields for OPTi "Vendetta" device cycle detection enable/status register:
  4488. Bit(s) Description (Table P0258)
  4489. 7 programmed range access SMI# generation
  4490. (read)
  4491. 0 = programmed range access did not generate SMI#
  4492. 1 = programmed range access generated SMI#
  4493. (write)
  4494. 0 = disable programmed range access SMI# generation
  4495. 1 = enable programmed range access SMI# generation
  4496. 6 LPT access SMI# generation
  4497. (read)
  4498. 0 = LPT access did not generate SMI#
  4499. 1 = LPT access generated SMI#
  4500. (write)
  4501. 0 = disable LPT access SMI# generation
  4502. 1 = enable LPT access SMI# generation
  4503. 5 video access SMI# generation
  4504. (read)
  4505. 0 = video access did not generate SMI#
  4506. 1 = video access generated SMI#
  4507. (write)
  4508. 0 = disable video access SMI# generation
  4509. 1 = enable video access SMI# generation
  4510. 4 hard disk access SMI# generation
  4511. (read)
  4512. 0 = hard disk access did not generate SMI#
  4513. 1 = hard disk access to generated SMI#
  4514. (write)
  4515. 0 = disable hard disk access SMI# generation
  4516. 1 = enable hard disk access SMI# generation
  4517. 3 floppy disk access SMI# generation
  4518. (read)
  4519. 0 = floppy disk access did not generate SMI#
  4520. 1 = floppy disk access generated SMI#
  4521. (write)
  4522. 0 = disable floppy disk access SMI# generation
  4523. 1 = enable floppy disk access SMI# generation
  4524. 2 keyboard access SMI# generation
  4525. (read)
  4526. 0 = keyboard access did not generate SMI#
  4527. 1 = keyboard access generated SMI#
  4528. (write)
  4529. 0 = disable keyboard access SMI# generation
  4530. 1 = enable keyboard access SMI# generation
  4531. 1 COM1/COM3 access SMI# generation
  4532. (read)
  4533. 0 = COM1/COM3 access did not generate SMI#
  4534. 1 = COM1/COM3 access generated SMI#
  4535. (write)
  4536. 0 = disable COM1/COM3 access SMI# generation
  4537. 1 = enable COM1/COM3 access SMI# generation
  4538. 0 COM2/COM4 access SMI# generation
  4539. (read)
  4540. 0 = COM2/COM4 access did not generate SMI#
  4541. 1 = COM2/COM4 access generated SMI#
  4542. (write)
  4543. 0 = disable COM2/COM4 access SMI# generation
  4544. 1 = enable COM2/COM4 access SMI# generation
  4545. SeeAlso: #P0219
  4546. Bitfields for OPTi "Vendetta" STPCLK# modulation register:
  4547. Bit(s) Description (Table P0259)
  4548. 7 CPU STOPCLK state support enable
  4549. 6 STOPCLK state CPU hold enable
  4550. 5-4 reserved
  4551. 3 STPCLK# modulation enable
  4552. 2-0 STPCLK# modulation duty cycle; in effect if bit 3 set
  4553. 000 = STPCLK# = 1 always (no modulation)
  4554. 001 = STPCLK# = 1 for 1/2 period
  4555. 010 = STPCLK# = 1 for 1/4 period
  4556. 011 = STPCLK# = 1 for 1/8 period
  4557. 100 = STPCLK# = 1 for 1/16 period
  4558. 101-111 = reserved
  4559. SeeAlso: #P0219
  4560. Bitfields for OPTi "Vendetta" miscellaneous register:
  4561. Bit(s) Description (Table P0260)
  4562. 7 PREQ# wake-up enable
  4563. 6 DREQ# wake-up enable
  4564. 5 reserved
  4565. 4 GPCS1# and GPCS#2 generation for addresses in registers F4h-F7h enable
  4566. 3 reserved
  4567. 2 PPWRL# inititiate clock
  4568. 0 = 14 MHz
  4569. 1 = 33 KHz
  4570. 1 timer count read (registers E0h-E2h, EDh, F0h-F2h, FCh-FEh)
  4571. 0 = return current value
  4572. 1 = return original value
  4573. 0 reserved
  4574. SeeAlso: #P0219
  4575. Bitfields for OPTi "Vendetta" device timer CLK select/enable status register:
  4576. Bit(s) Description (Table P0261)
  4577. 7-6 device timer 1 CLK period
  4578. 00 = 119 microseconds
  4579. 01 = 12.25 ms
  4580. 10 = 1.94 s
  4581. 11 = 62.5 s
  4582. 5-4 device timer 0 CLK period
  4583. 00 = 119 microseconds
  4584. 01 = 12.25 ms
  4585. 10 = 1.94 s
  4586. 11 = 62.5 s
  4587. 3 device timer 1 time-out GREEN event generation
  4588. (read)
  4589. 0 = device timer 1 time-out did not cause GREEN event
  4590. 1 = device timer 1 time-out did cause GREEN event
  4591. (write)
  4592. 0 = disable device timer 1 time-out GREEN event generation
  4593. 1 = enable device timer 1 time-out GREEN event generation
  4594. 2 device timer 0 time-out GREEN event generation
  4595. (read)
  4596. 0 = device timer 0 time-out did not cause GREEN event
  4597. 1 = device timer 0 time-out did cause GREEN event
  4598. (write)
  4599. 0 = disable device timer 0 time-out GREEN event generation
  4600. 1 = enable device timer 0 time-out GREEN event generation
  4601. 1 device 1 access wake-up event generation
  4602. (read)
  4603. 0 = device 1 access did not cause wake-up event
  4604. 1 = device 1 access did cause wake-up event
  4605. (write)
  4606. 0 = disable device 1 access wake-up event generation
  4607. 1 = enable device 1 access wake-up event generation
  4608. 0 device 0 access wake-up event generation
  4609. (read)
  4610. 0 = device 0 access did not cause wake-up event
  4611. 1 = device 0 access did cause wake-up event
  4612. (write)
  4613. 0 = disable device 0 access wake-up event generation
  4614. 1 = enable device 0 access wake-up event generation
  4615. SeeAlso: #P0219
  4616. Bitfields for OPTi "Vendetta" device timer IO/MEM select, mask bits register:
  4617. Bit(s) Description (Table P0262)
  4618. 7 device 1 address type
  4619. 0 = I/O
  4620. 1 = memory
  4621. 6-4 device 1 IO/MEM address mask bits 2-0 (bit 3 = register FFh bit 2)
  4622. (mask lowest n bits)
  4623. 3 device 0 address type
  4624. 0 = I/O
  4625. 1 = memory
  4626. 2-0 device 0 IO/MEM address mask bits 2-0 (bit 3 = register FFh bit 2)
  4627. (mask lowest n bits)
  4628. SeeAlso: #P0219
  4629. Bitfields for OPTi "Vendetta" device 0 IO/MEM address register:
  4630. Bit(s) Description (Table P0263)
  4631. 7-0 I/O address bits 7-0 or memory address bits 23-16
  4632. (use register F3h bit 3 to select I/O or memory address)
  4633. SeeAlso: #P0219
  4634. Bitfields for OPTi "Vendetta" device 0 IO/MEM address register:
  4635. Bit(s) Description (Table P0264)
  4636. 7-0 I/O address bits 15-8 or memory address bits 31-24
  4637. (use register F3h bit 3 to select I/O or memory address)
  4638. SeeAlso: #P0219
  4639. Bitfields for OPTi "Vendetta" device 1 IO/MEM address register:
  4640. Bit(s) Description (Table P0265)
  4641. 7-0 I/O address bits 7-0 or memory address bits 23-16
  4642. (use register F3h bit 7 to select I/O or memory address)
  4643. SeeAlso: #P0219
  4644. Bitfields for OPTi "Vendetta" device 1 IO/MEM address register:
  4645. Bit(s) Description (Table P0266)
  4646. 7-0 I/O address bits 15-8 or memory address bits 31-24
  4647. (use register F3h bit 7 to select I/O or memory address)
  4648. SeeAlso: #P0219
  4649. Bitfields for OPTi "Vendetta" power management control register 1:
  4650. Bit(s) Description (Table P0267)
  4651. 7 EPMI1# GREEN event generation
  4652. (read)
  4653. 0 = EPMI1# did not cause GREEN event
  4654. 1 = EPMI1# caused GREEN event
  4655. (write)
  4656. 0 = disable EPMI1# GREEN event generation
  4657. 1 = enable EPMI1# GREEN event generation
  4658. 6 EPMI1# reload wake-up GREEN state timer enable
  4659. 5 EPMI1# polarity
  4660. 0 = determined by bit 4
  4661. 1 = EPMI1# triggered on transition
  4662. 4 EPMI1# polarity
  4663. 0 = EPMI1# triggered on falling edge
  4664. 1 = EPMI1# triggered on rising edge
  4665. 3 EPMI1# debounce enable
  4666. 2-0 reserved
  4667. Note: bits 7 and 6 cannot both be set at the same time
  4668. SeeAlso: #P0219
  4669. Bitfields for OPTi "Vendetta" power management control register 2:
  4670. Bit(s) Description (Table P0268)
  4671. 7 EPMI2# GREEN event generation
  4672. (read)
  4673. 0 = EPMI2# did not cause GREEN event
  4674. 1 = EPMI2# caused GREEN event
  4675. (write)
  4676. 0 = disable EPMI2# GREEN event generation
  4677. 1 = enable EPMI2# GREEN event generation
  4678. 6 EPMI2# reload wake-up GREEN state timer enable
  4679. 5 EPMI2# polarity
  4680. 0 = determined by bit 4
  4681. 1 = EPMI2# triggered on transition
  4682. 4 EPMI2# polarity
  4683. 0 = EPMI2# triggered on falling edge
  4684. 1 = EPMI2# triggered on rising edge
  4685. 3 EPMI2# debounce enable
  4686. 2-0 reserved
  4687. Note: bits 7 and 6 cannot both be set at the same time
  4688. SeeAlso: #P0219
  4689. Bitfields for OPTi "Vendetta" power management control register 3:
  4690. Bit(s) Description (Table P0269)
  4691. 7 EPMI3# GREEN event generation
  4692. (read)
  4693. 0 = EPMI3# did not cause GREEN event
  4694. 1 = EPMI3# caused GREEN event
  4695. (write)
  4696. 0 = disable EPMI3# GREEN event generation
  4697. 1 = enable EPMI3# GREEN event generation
  4698. 6 EPMI3# reload wake-up GREEN state timer enable
  4699. 5 EPMI3# polarity
  4700. 0 = determined by bit 4
  4701. 1 = EPMI3# triggered on transition
  4702. 4 EPMI3# polarity
  4703. 0 = EPMI3# triggered on falling edge
  4704. 1 = EPMI3# triggered on rising edge
  4705. 3 EPMI3# debounce enable
  4706. 2-0 reserved
  4707. Note: bits 7 and 6 cannot both be set at the same time
  4708. SeeAlso: #P0219
  4709. Bitfields for OPTi "Vendetta" general purpose chip select control register:
  4710. Bit(s) Description (Table P0270)
  4711. 7 CPU type
  4712. 0 = Intel/AMD
  4713. 1 = Cyrix M1
  4714. 6 reserved
  4715. 5-4 IDE module device ID
  4716. 00 = C621h
  4717. 01 = D568h
  4718. 10 = D768h (ultra DMA)
  4719. 11 = reserved
  4720. 3 reserved
  4721. 2 GPCS2# address bit masking (fourth bit to register F3h bits 6-4)
  4722. 1 GPCS1# address bit masking (fourth bit to register F3h bits 2-0)
  4723. 0 GPCS0# address bit masking (fourth bit to register E7h bits 2-0)
  4724. Note: indexes ADh and FFh address same register
  4725. SeeAlso: #P0219
  4726. ----------P00220025--------------------------
  4727. PORT 0022-0025 - INTEL 82360SL CHIPSET (FOR 386SL)
  4728. 0022 -W CPU write mode register
  4729. 0023 R- configuration status register
  4730. bit 7: 82360 configuration is open
  4731. 0024 -W 82360 configuration index
  4732. 0025 RW 82360 configuration data
  4733. Bitfields for Intel 82360SL CPU write mode register:
  4734. Bit(s) Description (Table P0271)
  4735. 0 unlock configuration space
  4736. 1 enable selected unit
  4737. 3-2 unit
  4738. 00 memory configuration
  4739. 01 cache
  4740. 10 internal bus
  4741. 11 external bus
  4742. ----------P0022002B--------------------------
  4743. PORT 0022-002B - INTEL 82355, PART OF CHIPSET FOR 386sx
  4744. Note: initialisation in POST will disable these addresses, only a hard
  4745. reset will enable them again.
  4746. 0022w RW 82335 MCR memory configuration register (if LOCK=0) (see #P0272)
  4747. 0024w RW 82335 RC1 roll compare register (if LOCK=0) (see #P0273)
  4748. 0026w RW 82335 RC2 roll compare register (if LOCK=0) (see #P0273)
  4749. 0028w RW 82335 CC0 address range compare register (if LOCK=0) (see #P0274)
  4750. 002Aw RW 82335 CC1 address range compare register (if LOCK=0) (see #P0274)
  4751. Bitfields for 82335 MCR memory configuration register:
  4752. Bit(s) Description (Table P0272)
  4753. 15-12 reserved
  4754. 11 "VRO" video read only (0=r/w, 1=r/o)
  4755. 10 "EN#"
  4756. 0=enable video RAM accesses (A0000h-8FFFFh)
  4757. 1=disable accesses
  4758. 9 "ENADP#"
  4759. 0=enable adapter ROM accesses (C0000h-8FFFFh)
  4760. 1=disable adapter ROM accesses, shadow enabled
  4761. 8 "ROMSIZE" 0=256KB ROM, 1=512KB ROM
  4762. 7-6 "INTERL" memory interleaving
  4763. 00 = 1 memory bank installed (no interleave)
  4764. 01 = 2 memory banks installed
  4765. 10 = 3 memory banks installed
  4766. 11 = 4 memory banks installed
  4767. 5 reserved
  4768. 4 "DSIZE" 0=1MBx1DRAMs, 1=256KBx1 or 256KBx4 DRAMs
  4769. 3 "S640" base memory size is 0=512KB, 1=640KB
  4770. 2-1 reserved
  4771. 0 "ROMEN#" ROM enable
  4772. 0 enable BIOS ROM accesses (E0000h-FFFFFh)
  4773. 1 disable BIOS ROM accesses, enable shadow
  4774. Note: One of the remaining reserved bits is the LOCK bit, which will be set
  4775. during power on, disabling access to the 82335s registers.
  4776. Bitfields for 82335 roll compare register:
  4777. Bit(s) Description (Table P0273)
  4778. 15-9 selects address range to be remapped (C23-C17)
  4779. 8 reserved
  4780. 7-1 selects address bits to be included in re-mapping comparision (M23-M17)
  4781. 0 "EN" enables roll address mapping
  4782. Bitfields for 82335 address range compare register:
  4783. Bit(s) Description (Table P0274)
  4784. 15-11 specifies top of address range (C23-C19)
  4785. 10-8 reserved
  4786. 7-3 selects address bits to be included in address range comparision
  4787. (M23-M19)
  4788. 2-1 reserved
  4789. 0 "EN" enable address range comparision
  4790. ----------P00240025--------------------------
  4791. PORT 0024-0025 - Intel 82091AA Advanced Integrated Peripheral
  4792. Range: PORT 0022h (X-Bus), PORT 0024h (X-Bus), PORT 026Eh (ISA), or
  4793. PORT 0398h (ISA)
  4794. SeeAlso: PORT 0022h"82091AA",PORT 026Eh"82091AA",PORT 0398h"82091AA"
  4795. 0024 ?W configuration register index
  4796. 0025 RW configuration register data
  4797. ----------P00240026--------------------------
  4798. PORT 0024-0026 - PicoPower Vesuvius - V3-LS
  4799. Note: software must use 8-bit accesses to these ports; 16-bit accesses will
  4800. be directed to the V1-LS chip in the chipset instead of the V3-LS
  4801. SeeAlso: PORT 0024h"V1-LS"
  4802. 0024b ?W V3-LS register index (see #P0275)
  4803. 0026b RW V3-LS register data
  4804. (Table P0275)
  4805. Values for PicoPower Vesuvius V3-LS register index:
  4806. 00h revision ID register (see #P0276)
  4807. 01h AT control register 1 (see #P0277)
  4808. 02h AT control register 2 (see #P0278)
  4809. 03h BIOS CS# control register (see #P0279)
  4810. 05h port 92h control register (see #P0280)
  4811. 06h GPEXT low byte register (write high byte into register 07h before
  4812. writing low byte)
  4813. 07h GPEXT high byte register (write high byte before writing low byte into
  4814. register 06h)
  4815. 08h miscellaneous configuration register (see #P0281)
  4816. 10h PCI interrupt mapping register 1 (see #P0282)
  4817. 11h PCI interrupt mapping register 2 (see #P0283)
  4818. 12h PCI INT# configuration register (see #P0284)
  4819. 13h serial IRQ control register (see #P0285)
  4820. 14h serial IRQ control register 2 (see #P0286)
  4821. 20h power management control register (see #P0287)
  4822. 21h primary activity IRQ mask register 1 (see #P0288)
  4823. 22h primary activity IRQ mask register 2 (see #P0289)
  4824. 23h PMI trigger IRQ mask register 1 (see #P0290)
  4825. 24h PMI trigger IRQ mask register 2 (see #P0291)
  4826. 25h PMI trigger source register 1 (see #P0292)
  4827. 26h PMI trigger source register 2 (see #P0293)
  4828. 30h 8254 counter 0 initial count low byte shadow
  4829. 31h 8254 counter 0 initial count high byte shadow
  4830. 32h 8254 counter 1 initial count low byte shadow
  4831. 33h 8254 counter 1 initial count high byte shadow
  4832. 34h 8254 counter 2 initial count low byte shadow
  4833. 35h 8254 counter 2 initial count high byte shadow
  4834. 36h 8254 counter 0 control word shadow
  4835. 37h 8254 counter 1 control word shadow
  4836. 38h 8254 counter 2 control word shadow
  4837. 39h 8237 DMA controller mode register for channel 0 shadow
  4838. 3Ah 8237 DMA controller mode register for channel 1 shadow
  4839. 3Bh 8237 DMA controller mode register for channel 2 shadow
  4840. 3Ch 8237 DMA controller mode register for channel 3 shadow
  4841. 3Dh 8237 DMA controller mode register for channel 4 shadow
  4842. 3Eh 8237 DMA controller mode register for channel 5 shadow
  4843. 3Fh 8237 DMA controller mode register for channel 6 shadow
  4844. 40h 8237 DMA controller mode register for channel 7 shadow
  4845. 41h 8259 PIC 1 ICW 1 shadow
  4846. 42h 8259 PIC 1 ICW 2 shadow
  4847. 43h 8259 PIC 1 ICW 3 shadow
  4848. 44h 8259 PIC 1 ICW 4 shadow
  4849. 45h 8259 PIC 1 OCW 2 shadow
  4850. 46h 8259 PIC 1 OCW 3 shadow
  4851. 47h 8259 PIC 2 ICW 1 shadow
  4852. 48h 8259 PIC 2 ICW 2 shadow
  4853. 49h 8259 PIC 2 ICW 3 shadow
  4854. 4Ah 8259 PIC 2 ICW 4 shadow
  4855. 4Bh 8259 PIC 2 OCW 2 shadow
  4856. 4Ch 8259 PIC 2 OCW 3 shadow
  4857. 4Dh RTC index register shadow
  4858. 4Eh reserved
  4859. 4Fh fixed disk register (port 3F6h) shadow
  4860. 50h hard disk write precompression register (port 1F1h) shadow
  4861. 51h DMA controller 1 status register shadow
  4862. 52h DMA controller 2 status register shadow
  4863. 53h DMAC mask register shadow
  4864. 54h DMA channel 0 base address low byte shadow
  4865. 55h DMA channel 0 base address high byte shadow
  4866. 56h DMA channel 0 base count low byte shadow
  4867. 57h DMA channel 0 base count high byte shadow
  4868. 58h DMA channel 1 base address low byte shadow
  4869. 59h DMA channel 1 base address high byte shadow
  4870. 5Ah DMA channel 1 base count low byte shadow
  4871. 5Bh DMA channel 1 base count high byte shadow
  4872. 5Ch DMA channel 2 base address low byte shadow
  4873. 5Dh DMA channel 2 base address high byte shadow
  4874. 5Eh DMA channel 2 base count low byte shadow
  4875. 5Fh DMA channel 2 base count high byte shadow
  4876. 60h DMA channel 3 base address low byte shadow
  4877. 61h DMA channel 3 base address high byte shadow
  4878. 62h DMA channel 3 base count low byte shadow
  4879. 63h DMA channel 3 base count high byte shadow
  4880. 64h DMA channel 5 base address low byte shadow
  4881. 65h DMA channel 5 base address high byte shadow
  4882. 66h DMA channel 5 base count low byte shadow
  4883. 67h DMA channel 5 base count high byte shadow
  4884. 68h DMA channel 6 base address low byte shadow
  4885. 69h DMA channel 6 base address high byte shadow
  4886. 6Ah DMA channel 6 base count low byte shadow
  4887. 6Bh DMA channel 6 base count high byte shadow
  4888. 6Ch DMA channel 7 base address low byte shadow
  4889. 6Dh DMA channel 7 base address high byte shadow
  4890. 6Eh DMA channel 7 base count low byte shadow
  4891. 6Fh DMA channel 7 base count high byte shadow
  4892. 70h DMA controller 1 command register shadow
  4893. 71h DMA controller 2 command register shadow
  4894. Note: shadow registers (30h-71h) are read-only
  4895. SeeAlso: #P0294
  4896. Bitfields for PicoPower Vesuvius V3-LS revision ID register:
  4897. Bit(s) Description (Table P0276)
  4898. 7-4 V3-LS revision ID
  4899. 1h = revision A
  4900. 2h = revision B
  4901. 3h = revision C
  4902. 3-0 V3-LS metal-mask version ID
  4903. 0h = version A
  4904. 1h = version B
  4905. 3h = version C
  4906. SeeAlso: #P0275
  4907. Bitfields for PicoPower Vesuvius V3-LS AT control register 1:
  4908. Bit(s) Description (Table P0277)
  4909. 7-6 (revision BB and later) back-to-back delay for 8-bit I/O cycle
  4910. 00 = 0.5 SYSCLKs
  4911. 01 = 2.5 SYSCLKs
  4912. 10 = 4.5 SYSCLKs
  4913. 11 = 6.5 SYSCLKs
  4914. 5-4 (revision BB and later) back-to-back delay for 16-bit I/O cycle
  4915. 00 = 0.5 SYSCLKs
  4916. 01 = 1.5 SYSCLKs
  4917. 10 = 2.5 SYSCLKs
  4918. 11 = 3.5 SYSCLKs
  4919. 3 reserved
  4920. 2-0 SYSCLK divisor select
  4921. 000 = BSERCLK/2
  4922. 001 = BSERCLK/3
  4923. 010 = BSERCLK/4
  4924. 011 = BSERCLK/5
  4925. 100 = BSERCLK/6
  4926. 101-110 = reserved
  4927. 111 = 14MHZCLK/2
  4928. SeeAlso: #P0275
  4929. Bitfields for PicoPower Vesuvius V3-LS AT control register 2:
  4930. Bit(s) Description (Table P0278)
  4931. 7 reserved
  4932. 6 (revision BB and later) external keyboard chip select
  4933. 0 = ROM_KBCS# decodes ports 60h/64h as keyboard ports
  4934. 1 = ROM_KBCS# decodes ports 60h/62h/64h/66h as keyboard ports
  4935. 5-4 reserved
  4936. 3 (revision BB and later) EISA type CMOS RAM interface control enable
  4937. 2 (revision BB and later) V3-LS internal I/O port option
  4938. 0 = normal V3-LS internal I/O port access
  4939. 1 = speed up V3-LS internal I/O port access
  4940. 1 extended AT address
  4941. 0 AT bus refresh enable
  4942. SeeAlso: #P0275
  4943. Bitfields for PicoPower Vesuvius V3-LS BIOS CS# control register:
  4944. Bit(s) Description (Table P0279)
  4945. 7 reserved
  4946. 6 flash enable
  4947. 5 E8000h-EFFFFh ROMCS# enable
  4948. 4 E0000h-E7FFFh ROMCS# enable
  4949. 3 D8000h-DFFFFh ROMCS# enable
  4950. 2 D0000h-D7FFFh ROMCS# enable
  4951. 1 C8000h-CFFFFh ROMCS# enable
  4952. 0 C0000h-C7FFFh ROMCS# enable
  4953. Notes: FE000000h-FFFFFFFFh access always generates ROMCS#
  4954. F0000h-FFFFFh access generates ROMCS# if not shadowed
  4955. SeeAlso: #P0275
  4956. Bitfields for PicoPower Vesuvius V3-LS port 92h control register:
  4957. Bit(s) Description (Table P0280)
  4958. 7-2 reserved
  4959. 1 security lock 1 (port 92h bit 3) function enable
  4960. 0 port 92h enable
  4961. SeeAlso: #P0275
  4962. Bitfields for PicoPower Vesuvius V3-LS miscellaneous configuration register:
  4963. Bit(s) Description (Table P0281)
  4964. 7 reserved
  4965. 6 reserved (ISA master I/O command synchronizer disable)
  4966. 5 reserved (timer synchronous IOW# fix disable)
  4967. 4 reserved
  4968. 3 (revision BB and later) DDMA grant
  4969. 0 = V3-LS uses REQ#/GNT# for DDMA retry cycle
  4970. 1 = V3-LS does not use REQ#/GNT# for DDMA retry cycle
  4971. 2 BSER interrupt enable
  4972. 1 (revision BB and later) DDMARETRY
  4973. 0 = pin 44 (176-pin) / pin 48 (208-pin) is DDMA_RETRY
  4974. 1 = pin 44 (176-pin) / pin 48 (208-pin) is ISA_WAKE
  4975. 0 BSER arbitration enable
  4976. SeeAlso: #P0275
  4977. Bitfields for PicoPower Vesuvius V3-LS PCI interrupt mapping register 1:
  4978. Bit(s) Description (Table P0282)
  4979. 7-4 map INTB# to IRQ
  4980. 0000 = disabled
  4981. 0001-0010 = reserved
  4982. 0011-0111 = IRQ3-IRQ7
  4983. 1000 = reserved
  4984. 1001-1100 = IRQ9-IRQ12
  4985. 1101 = reserved
  4986. 1110-1111 = IRQ14-IRQ15
  4987. 3-0 map INTA# to IRQ (same values as bits 7-4)
  4988. SeeAlso: #P0275,#P0283
  4989. Bitfields for PicoPower Vesuvius V3-LS PCI interrupt mapping register 2:
  4990. Bit(s) Description (Table P0283)
  4991. 7-4 map INTD# to IRQ
  4992. 0000 = disabled
  4993. 0001-0010 = reserved
  4994. 0011-0111 = IRQ3-IRQ7
  4995. 1000 = reserved
  4996. 1001-1100 = IRQ9-IRQ12
  4997. 1101 = reserved
  4998. 1110-1111 = IRQ14-IRQ15
  4999. 3-0 map INTC# to IRQ (same values as bits 7-4)
  5000. SeeAlso: #P0275,#P0282,#P0284
  5001. Bitfields for PicoPower Vesuvius V3-LS PCI INT# configuration register:
  5002. Bit(s) Description (Table P0284)
  5003. 7-4 reserved
  5004. 3 interrupt D / mappable IRQ 3 configuration
  5005. 0 = INTD#, go through level-to-edge conversion
  5006. 1 = MIRQ3, bypass level-to-edge conversion
  5007. 2 interrupt C / mappable IRQ 2 configuration
  5008. 0 = INTC#, go through level-to-edge conversion
  5009. 1 = MIRQ2, bypass level-to-edge conversion
  5010. 1 interrupt B / mappable IRQ 1 configuration
  5011. 0 = INTB#, go through level-to-edge conversion
  5012. 1 = MIRQ1, bypass level-to-edge conversion
  5013. 0 interrupt A / mappable IRQ 0 configuration
  5014. 0 = INTA#, go through level-to-edge conversion
  5015. 1 = MIRQ0, bypass level-to-edge conversion
  5016. SeeAlso: #P0275
  5017. Bitfields for PicoPower Vesuvius V3-LS serial IRQ control register:
  5018. Bit(s) Description (Table P0285)
  5019. 7 reserved
  5020. 6 serial IRQ mode
  5021. 0 = host (primary V3-LS)
  5022. 1 = source (secondary V3-LS)
  5023. 5-4 reserved
  5024. 3-2 start cycle length = 2N+4 clocks
  5025. 1 host poll
  5026. 0 serial IRQ bus enable
  5027. SeeAlso: #P0275
  5028. Bitfields for PicoPower Vesuvius V3-LS serial IRQ control register 2:
  5029. Bit(s) Description (Table P0286)
  5030. 7-4 reserved
  5031. 3-0 (revision BB and later) serial IRQ sampling slot length
  5032. 1111 = 32 slots
  5033. SeeAlso: #P0275
  5034. Bitfields for PicoPower Vesuvius V3-LS power management control register:
  5035. Bit(s) Description (Table P0287)
  5036. 7 secondary activity triggered by IRQ1 (write 0 to clear)
  5037. 6 secondary activity triggered by IRQ0 (write 0 to clear)
  5038. 5 mask IRQ1 from secondary activity
  5039. 4 mask IRQ0 from secondary activity
  5040. 3 (revision BB and later) IMR disable
  5041. 2 primary activity enables PMI
  5042. 1 reserved
  5043. 0 burst serial bus enable
  5044. SeeAlso: #P0275
  5045. Bitfields for PicoPower Vesuvius V3-LS primary activity IRQ mask register 1:
  5046. Bit(s) Description (Table P0288)
  5047. 7-3 mask IRQ7 - IRQ3 from primary activity
  5048. 2 mask NMI from primary activity
  5049. 1 mask IRQ1 from primary activity
  5050. 0 reserved
  5051. SeeAlso: #P0275
  5052. Bitfields for PicoPower Vesuvius V3-LS primary activity IRQ mask register 2:
  5053. Bit(s) Description (Table P0289)
  5054. 7-1 mask IRQ15 - IRQ9 from primary activity
  5055. 0 mask IRQ8 from primary activity
  5056. SeeAlso: #P0275
  5057. Bitfields for PicoPower Vesuvius V3-LS PMI trigger IRQ mask register 1:
  5058. Bit(s) Description (Table P0290)
  5059. 7-3 mask IRQ7 - IRQ3 from PMI
  5060. 2 reserved
  5061. 1 mask IRQ1 from PMI
  5062. 0 mask DDMA slave lock from PMI
  5063. SeeAlso: #P0275
  5064. Bitfields for PicoPower Vesuvius V3-LS PMI trigger IRQ mask register 2:
  5065. Bit(s) Description (Table P0291)
  5066. 7-1 mask IRQ15 - IRQ9 from PMI
  5067. 0 mask IRQ8 from PMI
  5068. SeeAlso: #P0275
  5069. Bitfields for PicoPower Vesuvius V3-LS PMI trigger source register 1:
  5070. Bit(s) Description (Table P0292)
  5071. 7-3 PMI trigger source IRQ7 - IRQ3 active (write 0 to clear)
  5072. 2 reserved
  5073. 1 PMI trigger source IRQ1 active (write 0 to clear)
  5074. 0 PMI trigger source DDMA slave lock active (write 0 to clear)
  5075. SeeAlso: #P0275
  5076. Bitfields for PicoPower Vesuvius V3-LS PMI trigger source register 2:
  5077. Bit(s) Description (Table P0293)
  5078. 7-1 PMI trigger source IRQ15 - IRQ9 active (write 0 to clear)
  5079. 0 PMI trigger source IRQ8 active (write 0 to clear)
  5080. SeeAlso: #P0275
  5081. ----------P00240027--------------------------
  5082. PORT 0024-0027 - PicoPower Vesuvius - V1-LS
  5083. Note: software must use 16-bit accesses to these ports; 8-bit accesses will
  5084. be directed to the V3-LS chip in the chipset instead of the V1-LS
  5085. SeeAlso: PORT 0024h"V3-LS"
  5086. 0024w ?W V1-LS register index (see #P0294)
  5087. 0026w RW V1-LS register data
  5088. (Table P0294)
  5089. Values for PicoPower Vesuvius V1-LS register index:
  5090. 01xxh (reset sampling and miscellaneous)
  5091. 0100h revision ID register (see #P0295)
  5092. 0101h V1 power on register (see #P0296)
  5093. 0108h V2 version ID register (see #P0297)
  5094. 0109h V2 configuration register (see #P0298)
  5095. 010Ah V2 miscellaneous status register (see #P0299)
  5096. 0110h programmable region 1 register (see #P0300)
  5097. 0111h programmable region 2 register (see #P0300)
  5098. 0112h programmable region 3 register (see #P0300)
  5099. 0113h programmable region 4 register (see #P0300)
  5100. 0114h programmable region control register (see #P0301)
  5101. 0118h SMM control register (see #P0302)
  5102. 0119h processor control register (see #P0303)
  5103. 011Ah write FIFO control register (see #P0304)
  5104. 011Bh PCI control register (see #P0305)
  5105. 011Ch clock skew adjust register (see #P0306)
  5106. 011Dh bus master and snooping control register (see #P0307)
  5107. 011Eh arbiter control register (see #P0308)
  5108. 011Fh docking control register (see #P0309)
  5109. 02xxh (DRAM registers)
  5110. 0200h shadow RAM read enable control register (see #P0310)
  5111. 0201h shadow RAM write enable control register (see #P0311)
  5112. 0202h bank 0 control register (see #P0312)
  5113. 0203h bank 1 control register (see #P0312)
  5114. 0204h bank 0/1 timing control register (see #P0313)
  5115. 0205h bank 2 control register (see #P0312)
  5116. 0206h bank 3 control register (see #P0312)
  5117. 0207h bank 2/3 timing control register (see #P0313)
  5118. 0208h bank 4 control register (see #P0312)
  5119. 0209h bank 5 control register (see #P0312)
  5120. 020Ah bank 4/5 timing control register (see #P0313)
  5121. 020Bh bank 6 control register (see #P0312)
  5122. 020Ch bank 7 control register (see #P0312)
  5123. 020Dh bank 6/7 timing control register (see #P0313)
  5124. 020Eh DRAM configuration register 1 (see #P0314)
  5125. 020Fh DRAM configuration register 2 (see #P0315)
  5126. 0210h DRAM configuration register 3 (see #P0316)
  5127. 0211h DRAM refresh control register (see #P0317)
  5128. 0212h burst EDO control register (see #P0318)
  5129. 03xxh (Power Management control)
  5130. 0300h clock control register (see #P0319)
  5131. 0301h clock throttling period control register (see #P0320)
  5132. 0302h conserve clock throttling ratio/control register (see #P0321)
  5133. 0303h heat regulator clock throttling ratio/control register (see #P0322)
  5134. 0304h doze/sleep mode clock throttling ratio/control register (see #P0323)
  5135. 0310h wake/SMI source register (see #P0324)
  5136. 0311h power management timer status register (see #P0326)
  5137. 0312h power management pin status register (see #P0327)
  5138. 0313h wake mask control register (see #P0328)
  5139. 0314h activity flag register 1 (see #P0329)
  5140. 0315h activity flag register 2 (see #P0330)
  5141. 0316h I/O trap SMI mask register (see #P0331)
  5142. 0317h external SMI trigger mask register (see #P0332)
  5143. 0318h internal SMI trigger mask register (see #P0333)
  5144. 0319h software SMI trigger mask register (see #P0334)
  5145. 031Ah primary activity option control register (see #P0335)
  5146. 031Bh primary activity mask register 1 (see #P0336)
  5147. 031Ch primary activity mask register 2 (see #P0337)
  5148. 031Dh secondary activity mask register (see #P0338)
  5149. 031Eh RING count control register (see #P0339)
  5150. 0320h programmable range monitor control register 1 (see #P0340)
  5151. 0321h programmable range monitor control register 2 (see #P0341)
  5152. 0322h programmable range monitor 0 address register (see #P0342)
  5153. 0323h programmable range monitor 0 compare register (see #P0343)
  5154. 0324h programmable range monitor 1 address register (see #P0342)
  5155. 0325h programmable range monitor 1 compare register (see #P0343)
  5156. 0326h programmable range monitor 2 address register (see #P0342)
  5157. 0327h programmable range monitor 2 compare register (see #P0343)
  5158. 0328h programmable range monitor 3 address register (see #P0342)
  5159. 0329h programmable range monitor 3 compare register (see #P0343)
  5160. 032Ah programmable range monitor 4 address register (see #P0342)
  5161. 032Bh programmable range monitor 4 compare register (see #P0343)
  5162. 032Ch programmable range monitor 5 address register (see #P0342)
  5163. 032Dh programmable range monitor 5 compare register (see #P0343)
  5164. 0330h power management mode register (see #P0344)
  5165. 0331h on/doze mode power control register (see #P0345)
  5166. 0332h sleep mode power control register (see #P0346)
  5167. 0333h suspend mode power control register (see #P0347)
  5168. 0335h doze mode timer register (see #P0348)
  5169. 0336h sleep mode timer register (see #P0349)
  5170. 0337h suspend mode timer register (see #P0349)
  5171. 0338h secondary activity timer register (see #P0350)
  5172. 0339h power on demand primary activity timer register (see #P0351)
  5173. 0340h general purpose control register (see #P0352)
  5174. 0341h general purpose counter/timer control register (see #P0353)
  5175. 0342h general purpose counter/timer current value register (see #P0354)
  5176. 0343h general purpose counter/timer compare register (see #P0355)
  5177. 0344h device timer 0 time-out register (see #P0356)
  5178. 0345h device timer 1 time-out register (see #P0356)
  5179. 0346h device timer 2 time-out register (see #P0356)
  5180. 0347h device timer 3 time-out register (see #P0356)
  5181. 0348h device timer 4 time-out register (see #P0356)
  5182. 0349h device timer 5 time-out register (see #P0356)
  5183. 034Ah device timer time-out source register 1 (see #P0357)
  5184. 034Bh device timer time-out source register 2 (see #P0358)
  5185. 034Ch device timer time-out source register 3 (see #P0359)
  5186. 034Dh device timer time-out source register 4 (see #P0360)
  5187. 0350h LED indicator control register (see #P0361)
  5188. 0351h leakage control register (see #P0362)
  5189. 0352h pin multiplexing control register (see #P0363)
  5190. 0353h debounce control register (see #P0364)
  5191. 0354h edge detect control register (see #P0365)
  5192. 04xxh (Level-2 Cache)
  5193. 0400h L2 cache configuration register (see #P0366)
  5194. 0401h L2 cache timing register (see #P0367)
  5195. 0402h L2 cache miscellaneous register (see #P0368)
  5196. SeeAlso: #P0275
  5197. Bitfields for PicoPower Vesuvius V1-LS revision ID register:
  5198. Bit(s) Description (Table P0295)
  5199. 15-4 reserved
  5200. 3-0 V1-LS metal-mask version ID
  5201. 3h = revision AA
  5202. 4h = revision BB
  5203. 5h = revision CC
  5204. SeeAlso: #P0294
  5205. Bitfields for PicoPower Vesuvius V1-LS V1 power on register:
  5206. Bit(s) Description (Table P0296)
  5207. 15-12 reserved
  5208. 11 use internal clocks for simulation
  5209. 0 = internal clock speedup disabled
  5210. 0 = internal clock speedup enabled
  5211. 10 tristate all outputs
  5212. 0 = no tristate condition
  5213. 1 = tristate condition
  5214. 9 reserved
  5215. 8 (revision CC and later) snooping scheme
  5216. 0 = HOLD/HLDA
  5217. 1 = BOFF#/LOCK#
  5218. 7 (revision BB and later) PCI power plane voltage
  5219. 0 = 3.3 V
  5220. 1 = 5 V
  5221. 6 (revision BB and later) DRAM power plane voltage
  5222. 0 = 3.3 V
  5223. 1 = 5 V
  5224. 5-3 clock skew adjust
  5225. 000 = 0.0 ns
  5226. 001 = +0.55 ns
  5227. 010 = +1.10 ns
  5228. 011 = +1.65 ns
  5229. 100 = -2.20 ns
  5230. 101 = -1.65 ns
  5231. 110 = -1.10 ns
  5232. 111 = -0.55 ns
  5233. 2-0 miscellaneous configuration
  5234. Note: this register is read-only
  5235. SeeAlso: #P0294
  5236. Bitfields for PicoPower Vesuvius V2-LS V2 version ID register:
  5237. Bit(s) Description (Table P0297)
  5238. 15-12 reserved
  5239. 11-8 V2-LS version ID (even)
  5240. 3h = revision AA
  5241. 4h = revision BB
  5242. 7-4 reserved
  5243. 3-0 V2-LS version ID (odd) (same values as bits 11-8)
  5244. SeeAlso: #P0294
  5245. Bitfields for PicoPower Vesuvius V2-LS V2 configuration register:
  5246. Bit(s) Description (Table P0298)
  5247. 15 V2-LS process monitor enable (odd)
  5248. 14-9 reserved
  5249. 8 fast PCI master address transfer enable (odd)
  5250. 7 V2-LS process monitor enable (even)
  5251. 6-1 reserved
  5252. 0 fast PCI master address transfer enable (even)
  5253. SeeAlso: #P0294
  5254. Bitfields for PicoPower Vesuvius V2-LS V2 miscellaneous status register:
  5255. Bit(s) Description (Table P0299)
  5256. 15-10 reserved
  5257. 9 (revision BB & later) PCI power plane voltage (odd)
  5258. 0 = 3.3 V
  5259. 1 = 5 V
  5260. 8 (revision BB & later) DRAM power plane voltage (odd) (as for bit 9)
  5261. 7-2 reserved
  5262. 1 (revision BB & later) PCI power plane voltage (even) (as for bit 9)
  5263. 0 (revision BB & later) DRAM power plane voltage (even) (as for bit 9)
  5264. SeeAlso: #P0294
  5265. Bitfields for PicoPower Vesuvius V1-LS programmable region register:
  5266. Bit(s) Description (Table P0300)
  5267. 15-3 programmable region starting address bits 27-15 (bits 31-28 = 0)
  5268. (starting address must be a multiple of block size)
  5269. 2-0 programmable region block size
  5270. 000 = 32 KB
  5271. 001 = 64 KB
  5272. 010 = 128 KB
  5273. 011 = 256 KB
  5274. 100 = 512 KB
  5275. 101 = 1 MB
  5276. 110-111 = reserved
  5277. SeeAlso: #P0294
  5278. Bitfields for PicoPower Vesuvius V1-LS programmable region control register:
  5279. Bit(s) Description (Table P0301)
  5280. 15-8 reserved
  5281. 7-6 programmable region 4 select
  5282. 00 = disable
  5283. 01 = write-through
  5284. 10 = non-cacheable
  5285. 11 = reserved
  5286. 5-4 programmable region 3 select (same values as bits 7-6)
  5287. 3-2 programmable region 2 select (same values as bits 7-6)
  5288. 1-0 programmable region 1 select (same values as bits 7-6)
  5289. SeeAlso: #P0294
  5290. Bitfields for PicoPower Vesuvius V1-LS SMM control register:
  5291. Bit(s) Description (Table P0302)
  5292. 15 SMM RAM access in normal mode lock (can only be written once)
  5293. 0 = bit 14 not locked
  5294. 1 = bit 14 locked to disabled
  5295. 14 load SMI handler into SMM RAM
  5296. 0 = access to SMM RAM during normal cycle disabled
  5297. 1 = access to SMM RAM during normal cycle enabled
  5298. 13 (revision BB and later) swap SMM D/E mapping
  5299. 0 = D0000h-DFFFFh mapped to A0000h-AFFFFh and E0000h-EFFFFh mapped to
  5300. B0000h-BFFFFh
  5301. 1 = D0000h-DFFFFh mapped to B0000h-BFFFFh and E0000h-EFFFFh mapped to
  5302. A0000h-AFFFFh
  5303. 12 (revision BB and later) swap SMM 2/3 mapping
  5304. 0 = 20000h-2FFFFh mapped to A0000h-AFFFFh and 30000h-3FFFFh mapped to
  5305. B0000h-BFFFFh
  5306. 1 = 20000h-2FFFFh mapped to B0000h-BFFFFh and 30000h-3FFFFh mapped to
  5307. A0000h-AFFFFh
  5308. 11-10 SMM E8000h-EFFFFh select
  5309. 00 = normal memory space
  5310. 01 = reserved
  5311. 10 = SMM space (remap to B8000h-BFFFFh; E8000h-EFFFFh automatically set
  5312. to non-cacheable)
  5313. 11 = reserved
  5314. 9-8 SMM E0000h-E7FFFh select
  5315. 00 = normal memory space
  5316. 01 = reserved
  5317. 10 = SMM space (remap to B0000h-B7FFFh; E0000h-E7FFFh automatically set
  5318. to non-cacheable)
  5319. 11 = reserved
  5320. 7-6 SMM D8000h-DFFFFh select
  5321. 00 = normal memory space
  5322. 01 = reserved
  5323. 10 = SMM space (remap to A8000h-AFFFFh; D8000h-DFFFFh automatically set
  5324. to non-cacheable)
  5325. 11 = reserved
  5326. 5-4 SMM D0000h-D7FFFh select
  5327. 00 = normal memory space
  5328. 01 = reserved
  5329. 10 = SMM space (remap to A0000h-A7FFFh; D0000h-D7FFFh automatically set
  5330. to non-cacheable)
  5331. 11 = reserved
  5332. 3 reserved
  5333. 2 20000h-3FFFFh remap to A0000h-BFFFFh in SMM mode disable
  5334. (can be used only when L1 and L2 are disabled)
  5335. 1 SMRAM KEN disable
  5336. 0 reserved
  5337. SeeAlso: #P0294
  5338. Bitfields for PicoPower Vesuvius V1-LS processor control register:
  5339. Bit(s) Description (Table P0303)
  5340. 15-10 reserved
  5341. 9 FPU error clearing by writing to I/O port F1h disable
  5342. 8 FPU error clearing by writing to I/O port F0h disable
  5343. 7 reserved
  5344. 6 assert INV for write cycle only
  5345. 5 write FIFO
  5346. 0 = disabled (FIFO forced to one level)
  5347. 1 = enabled (FIFO forced to eight level)
  5348. 4 combine KEN# and INV pins
  5349. 3 linear burst enable
  5350. 2 processor pipeline mode enable
  5351. 1 L1 write-back enable
  5352. 0 CACHE enable
  5353. SeeAlso: #P0294
  5354. Bitfields for PicoPower Vesuvius V1-LS write FIFO control register:
  5355. Bit(s) Description (Table P0304)
  5356. 15-7 reserved
  5357. 6-5 PCI write buffering select
  5358. 00 = disable
  5359. 01 = post-write PCI IO write cycle only
  5360. 10 = post-write PCI memory write cycle only
  5361. 11 = post-write all PCI write cycles
  5362. 4 (revision BB and later) PCI read reordering enable
  5363. 3 (revision BB and later) DRAM read reordering enable
  5364. 2-0 reserved
  5365. SeeAlso: #P0294
  5366. Bitfields for PicoPower Vesuvius V1-LS PCI control register:
  5367. Bit(s) Description (Table P0305)
  5368. 15-4 reserved
  5369. 3 optimized address transfer between V1-LS and V2-LS enable
  5370. 2 reserved
  5371. 1 PCI master-to-DRAM burst enable
  5372. 0 reserved
  5373. SeeAlso: #P0294
  5374. Bitfields for PicoPower Vesuvius V1-LS clock skew adjust register:
  5375. Bit(s) Description (Table P0306)
  5376. 15-3 reserved
  5377. 2-0 L2CLK skew adjust
  5378. 000 = 0.0 ns
  5379. 001 = +0.55 ns
  5380. 010 = +1.10 ns
  5381. 011 = +1.65 ns
  5382. 100 = -2.20 ns
  5383. 101 = -1.65 ns
  5384. 110 = -1.10 ns
  5385. 111 = -0.55 ns
  5386. SeeAlso: #P0294
  5387. Bitfields for PicoPower Vesuvius V1-LS bus master and snooping control register:
  5388. Bit(s) Description (Table P0307)
  5389. 15-14 reserved
  5390. 13 early DRAM cycle when PCI master accessing DRAM disable
  5391. 12-0 reserved
  5392. SeeAlso: #P0294
  5393. Bitfields for PicoPower Vesuvius V1-LS arbiter control register:
  5394. Bit(s) Description (Table P0308)
  5395. 15-7 reserved
  5396. 6 REQ2# as FLOAT_REQ# and GNT2# as FLOAT_GNT# enable
  5397. 5-4 SIO request/grant source
  5398. 00 = none
  5399. 01 = BSER interface (normal operation)
  5400. 10-11 = reserved
  5401. 3 preemptability of PCI request/grant 3 disable
  5402. 2 preemptability of PCI request/grant 2 disable
  5403. 1 preemptability of PCI request/grant 1 disable
  5404. 0 preemptability of PCI request/grant 0 disable
  5405. SeeAlso: #P0294
  5406. Bitfields for PicoPower Vesuvius V1-LS docking control register:
  5407. Bit(s) Description (Table P0309)
  5408. 15 system docked
  5409. 14-4 reserved
  5410. 3 DOCK_PCICLK follows state of PCICLK enable
  5411. 2 deassert DOCK_PCIRST#
  5412. 1 reserved
  5413. 0 tristate DOCK_PCIRST# and DOCK_PCICLK in normal operating mode enable
  5414. SeeAlso: #P0294
  5415. Bitfields for PicoPower Vesuvius V1-LS shadow RAM read enable control register:
  5416. Bit(s) Description (Table P0310)
  5417. 15 local memory FC000h-FFFFFh read enable
  5418. 14 local memory F8000h-FBFFFh read enable
  5419. 13 local memory F4000h-F7FFFh read enable
  5420. 12 local memory F0000h-F3FFFh read enable
  5421. 11 local memory EC000h-EFFFFh read enable
  5422. 10 local memory E8000h-EBFFFh read enable
  5423. 9 local memory E4000h-E7FFFh read enable
  5424. 8 local memory E0000h-E3FFFh read enable
  5425. 7-4 local memory Dx000h-DyFFFh read enable
  5426. (x/y = 0/3 for bit 4, 4/7 for bit 5, etc.)
  5427. 3-0 local memory Cx000h-CyFFFh read enable
  5428. (x/y = 0/3 for bit 0, 4/7 for bit 1, etc.)
  5429. SeeAlso: #P0294
  5430. Bitfields for PicoPower Vesuvius V1-LS shadow RAM write enable control:
  5431. Bit(s) Description (Table P0311)
  5432. 15 local memory FC000h-FFFFFh write enable
  5433. 14 local memory F8000h-FBFFFh write enable
  5434. 13 local memory F4000h-F7FFFh write enable
  5435. 12 local memory F0000h-F3FFFh write enable
  5436. 11 local memory EC000h-EFFFFh write enable
  5437. 10 local memory E8000h-EBFFFh write enable
  5438. 9 local memory E4000h-E7FFFh write enable
  5439. 8 local memory E0000h-E3FFFh write enable
  5440. 7-4 local memory Dx000h-DyFFFh write enable
  5441. (x/y = 0/3 for bit 4, 4/7 for bit 5, etc.)
  5442. 3-0 local memory Cx000h-CyFFFh write enable
  5443. (x/y = 0/3 for bit 0, 4/7 for bit 1, etc.)
  5444. SeeAlso: #P0294
  5445. Bitfields for PicoPower Vesuvius V1-LS bank control register:
  5446. Bit(s) Description (Table P0312)
  5447. 15 reserved
  5448. 14-12 number of column address bits for bank
  5449. 000 = 8 bits
  5450. 001 = 9 bits
  5451. 010 = 10 bits
  5452. 011 = 11 bits
  5453. 100 = 12 bits
  5454. 101-111 = reserved
  5455. 11-9 bank DRAM size
  5456. 000 = 1 MB
  5457. 001 = 2 MB
  5458. 010 = 4 MB
  5459. 011 = 8 MB
  5460. 100 = 16 MB
  5461. 101 = 32 MB
  5462. 110 = 64 MB
  5463. 111 = reserved
  5464. 8 reserved
  5465. 7-0 bank starting address bits 27-20
  5466. SeeAlso: #P0294
  5467. Bitfields for PicoPower Vesuvius V1-LS bank timing control register:
  5468. Bit(s) Description (Table P0313)
  5469. 15-14 reserved
  5470. 13-12 bank 0/2/4/6 and 1/3/5/7 CAS write pulse width
  5471. 00 = 0.5T (EDO or burst EDO only)
  5472. 01 = 1.0T
  5473. 10 = 1.5T
  5474. 11 = 2.0T
  5475. 11-9 bank 0/2/4/6 and 1/3/5/7 CAS read pulse width
  5476. 000 = 0.5T (EDO or burst EDO only)
  5477. 001 = 1.0T
  5478. ...
  5479. 111 = 4.0T
  5480. 8 bank 0/2/4/6 and 1/3/5/7 CAS precharge time
  5481. 0 = 0.5T
  5482. 1 = 1.0T
  5483. 7 bank 0/2/4/6 and 1/3/5/7 CAS address hold time (same values as bit 8)
  5484. 6-5 bank 0/2/4/6 and 1/3/5/7 RAS address setup time
  5485. 00 = 0.0T
  5486. 01 = 0.5T
  5487. 10 = 1.0T
  5488. 11 = 1.5T
  5489. 4-3 bank 0/2/4/6 and 1/3/5/7 RAS address hold time = N/2 + 0.5T
  5490. 2-0 bank 0/2/4/6 and 1/3/5/7 RAS precharge time = N/2 + 1.5T
  5491. SeeAlso: #P0294
  5492. Bitfields for PicoPower Vesuvius V1-LS DRAM configuration register 1:
  5493. Bit(s) Description (Table P0314)
  5494. 15-9 reserved
  5495. 8 fast cacheless read enable (L2 must be disabled and L2 read lead-off
  5496. must be 2T)
  5497. 7-6 DRAM auto-detect mode
  5498. 00 = normal mode
  5499. 01 = setup for auto-detect
  5500. 10 = reserved
  5501. 11 = auto-detect read mode
  5502. 5-3 DRAM inactive time-out
  5503. 000 = never
  5504. 001 = 8 T
  5505. 010 = 32 T
  5506. 011 = 128 T
  5507. 100 = 512 T
  5508. 101-110 = reserved
  5509. 111 = immediate
  5510. 2-0 reserved
  5511. SeeAlso: #P0294
  5512. Bitfields for PicoPower Vesuvius V1-LS DRAM configuration register 2:
  5513. Bit(s) Description (Table P0315)
  5514. 15-12 reserved
  5515. 11 banks 6 and 7
  5516. 0 = two 32-bit banks
  5517. 1 = one 64-bit bank (bits 7-6 ignored; bank 6 DRAM parameters used;
  5518. programmed bank 6 size doubled)
  5519. 10 banks 4 and 5 (same settings as for bit 11)
  5520. 9 banks 2 and 3 (same settings as for bit 11)
  5521. 8 banks 0 and 1
  5522. 0 = two 32-bit banks
  5523. 1 = one 64-bit bank (bits 1-0 ignored; bank 0 DRAM parameters used;
  5524. programmed bank 0 size doubled)
  5525. 7-0 corresponding bank enable
  5526. SeeAlso: #P0294
  5527. Bitfields for PicoPower Vesuvius V1-LS DRAM configuration register 3:
  5528. Bit(s) Description (Table P0316)
  5529. 15-14 bank 7 DRAM type
  5530. 00 = standard
  5531. 01 = EDO
  5532. 10 = burst EDO
  5533. 11 = reserved
  5534. 13-12 bank 6 DRAM type (same values as bits 15-14)
  5535. 11-10 bank 5 DRAM type (same values as bits 15-14)
  5536. 9-8 bank 4 DRAM type (same values as bits 15-14)
  5537. 7-6 bank 3 DRAM type (same values as bits 15-14)
  5538. 5-4 bank 2 DRAM type (same values as bits 15-14)
  5539. 3-2 bank 1 DRAM type (same values as bits 15-14)
  5540. 1-0 bank 0 DRAM type (same values as bits 15-14)
  5541. SeeAlso: #P0294
  5542. Bitfields for PicoPower Vesuvius V1-LS DRAM refresh control register:
  5543. Bit(s) Description (Table P0317)
  5544. 15-14 reserved
  5545. 13-12 refresh stagger select
  5546. 00 = no staggering
  5547. 01 = reserved
  5548. 10 = stagger active edge of RAS
  5549. 11 = stagger both edges of RAS
  5550. 11 reserved
  5551. 10 suspend mode self-refresh enable
  5552. 9-8 reserved
  5553. 7-5 refresh period
  5554. 000 = 3.75 æs
  5555. 001 = 7.5 æs
  5556. 010 = 15 æs
  5557. 011 = 30 æs
  5558. 100 = 120 æs
  5559. 101 = stopped
  5560. 110-111 = reserved
  5561. 4-3 RAS pulse width for refresh cycles
  5562. 00 = 6T
  5563. 01 = 5T
  5564. 10 = 4T
  5565. 11 = 3T
  5566. 2-1 RAS precharge time for refresh cycles
  5567. 00 = 5T
  5568. 01 = 4T
  5569. 10 = 3T
  5570. 11 = 2T
  5571. 0 DRAM refresh scheme
  5572. 0 = CAS-before-RAS
  5573. 1 = RAS-only
  5574. SeeAlso: #P0294
  5575. Bitfields for PicoPower Vesuvius V1-LS burst EDO control register:
  5576. Bit(s) Description (Table P0318)
  5577. 15-4 MA setting during write CAS-before-RAS cycle
  5578. 3 trigger write CAS-before-RAS configuration cycle
  5579. 2-1 DRAM bank configuration select
  5580. 00 = bank 0/1
  5581. 01 = bank 2/3
  5582. 10 = bank 4/5
  5583. 11 = bank 6/7
  5584. 0 burst EDO write CAS-before-RAS configuration cycle enable
  5585. SeeAlso: #P0294
  5586. Bitfields for PicoPower Vesuvius V1-LS clock control register:
  5587. Bit(s) Description (Table P0319)
  5588. 15 modular clocking on V2 clock enable
  5589. 14-12 reserved
  5590. 11 PCI clock control CLKRUN# method enable
  5591. 10 reserved
  5592. 9 PCI clock goes back to full speed on PCI LOCK# enable
  5593. 8 PCI clock goes back to full speed on PCI request/grant enable
  5594. 7-6 reserved
  5595. 5-4 PCI idle count (PCI clocks)
  5596. 00 = immediate
  5597. 01 = 8
  5598. 10 = 32
  5599. 11 = 256
  5600. 3-2 reserved
  5601. 1-0 PCI clock divisor during idle
  5602. 00 = 1
  5603. 01 = 2
  5604. 10 = 32
  5605. 11 = 256
  5606. SeeAlso: #P0294
  5607. Bitfields for PicoPower Vesuvius V1-LS clock throttling period control:
  5608. Bit(s) Description (Table P0320)
  5609. 15-3 reserved
  5610. 2-0 clock throttling period select (T = CPU bus frequency period)
  5611. 000 = 800T
  5612. 001 = 1600T
  5613. 010 = 3200T
  5614. 011 = 6400T
  5615. 100 = 12800T
  5616. 101 = 25600T
  5617. 110 = 102400T
  5618. 111 = 409600T
  5619. SeeAlso: #P0294
  5620. Bitfields for PicoPower Vesuvius V1-LS conserve clock throttling ratio/control register:
  5621. Bit(s) Description (Table P0321)
  5622. 15-5 reserved
  5623. 4 conserve clock throttling enable
  5624. 3-0 conserve clock throttling ratio
  5625. 0000 = 5% duty cycle
  5626. 0001-1001 = 10%-90% duty cycle
  5627. 1010-1111 = reserved
  5628. SeeAlso: #P0294
  5629. Bitfields for PicoPower Vesuvius V1-LS heat regulator clock throttling:
  5630. Bit(s) Description (Table P0322)
  5631. 15-13 reserved
  5632. 12 THERM input enable
  5633. 11-4 reserved
  5634. 3-0 heat regulator clock throttling ratio
  5635. 0000 = 5% duty cycle
  5636. 0001-1001 = 10%-90% duty cycle
  5637. 1010-1111 = reserved
  5638. SeeAlso: #P0294
  5639. Bitfields for PicoPower Vesuvius V1-LS doze/sleep mode clock throttling:
  5640. Bit(s) Description (Table P0323)
  5641. 15-11 reserved
  5642. 10-8 STPCLK release latency (PLL stabilization delay)
  5643. 000 = 0 s
  5644. 001 = 1 æs
  5645. 010 = 45 æs
  5646. 011 = 1 ms
  5647. 100 = 2 ms
  5648. 101-111 = reserved
  5649. 7-5 sleep mode clock throttling enable
  5650. 000 = disable
  5651. 001 = enable in ratio set in bits 3-0
  5652. 010 = enable LessStop mode (CPU stop grant state)
  5653. 011 = enable MoreStop mode (CPU stop clock state)
  5654. 100 = enable Deep Sleep mode (MoreStop and high speed oscillator off,
  5655. only 32 kHz running)
  5656. 4 doze mode clock throttling enable
  5657. 3-0 doze/sleep mode clock throttling ratio
  5658. 0000 = 5% duty cycle
  5659. 0001-1001 = 10%-90% duty cycle
  5660. 1010-1111 = reserved
  5661. SeeAlso: #P0294
  5662. Bitfields for PicoPower Vesuvius V1-LS wake/SMI source register:
  5663. Bit(s) Description (Table P0324)
  5664. 15-11 reserved
  5665. 10-8 wake-up source
  5666. 000 = none
  5667. 001 = RING
  5668. 010 = SWTCH
  5669. 011 = GP timer compare
  5670. 100 = WAKE0
  5671. 101 = WAKE1
  5672. 110 = reserved
  5673. 111 = clear wake-up source (write to clear)
  5674. 7-5 reserved
  5675. 4-0 SMI source (see #00671)
  5676. SeeAlso: #P0294
  5677. (Table P0325)
  5678. Values for PicoPower Vesuvius V1-LS SMI source:
  5679. 00h none
  5680. 01h primary activity
  5681. 02h I/O trap
  5682. 03h device timer time-out
  5683. 04h doze time-out
  5684. 05h sleep time-out
  5685. 06h suspend time-out
  5686. 07h GP timer compare
  5687. 08h SWTCH input toggling
  5688. 09h reserved
  5689. 0Ah WAKE0 input toggling
  5690. 0Bh WAKE1 input toggling
  5691. 0Ch EXTACT0 toggling
  5692. 0Dh reserved
  5693. 0Eh rescheduled SMI
  5694. 0Fh software SMI
  5695. 10h V3-LS INT SMI
  5696. 11h-1Eh reserved
  5697. 1Fh clear SMI source (write to clear)
  5698. SeeAlso: #P0324
  5699. Bitfields for PicoPower Vesuvius V1-LS power management timer status register:
  5700. Bit(s) Description (Table P0326)
  5701. 15-3 reserved
  5702. 2 suspend time-out status (write 0 to clear)
  5703. 1 sleep time-out status (write 0 to clear)
  5704. 0 doze time-out status (write 0 to clear)
  5705. SeeAlso: #P0294
  5706. Bitfields for PicoPower Vesuvius V1-LS power management pin status register:
  5707. Bit(s) Description (Table P0327)
  5708. 15-6 reserved
  5709. 5 SWTCH pin status (read-only)
  5710. 4 RING pin status (read-only)
  5711. 3 reserved
  5712. 2 EXTACT0 pin status (read-only)
  5713. 1 WAKE1 pin status (read-only)
  5714. 0 WAKE0 pin status (read-only)
  5715. SeeAlso: #P0294
  5716. Bitfields for PicoPower Vesuvius V1-LS wake mask control register:
  5717. Bit(s) Description (Table P0328)
  5718. 15-5 reserved
  5719. 4 mask GP timer compare from resume
  5720. 3 mask RING from resume
  5721. 2 mask SWTCH from resume
  5722. 1 mask WAKE1 from resume
  5723. 0 mask WAKE0 from resume
  5724. SeeAlso: #P0294
  5725. Bitfields for PicoPower Vesuvius V1-LS activity flag register 1:
  5726. Bit(s) Description (Table P0329)
  5727. 15-10 programmable range 5-0 monitor active (write 0 to clear)
  5728. 9 reserved
  5729. 8 HOLD active (write 0 to clear)
  5730. 7 parallel I/O active (write 0 to clear)
  5731. 6 serial I/O 2 active (write 0 to clear)
  5732. 5 serial I/O 1 active (write 0 to clear)
  5733. 4 keyboard active (write 0 to clear)
  5734. 3 floppy disk active (write 0 to clear)
  5735. 2 hard disk 2 active (write 0 to clear)
  5736. 1 hard disk 1 active (write 0 to clear)
  5737. 0 video active (write 0 to clear)
  5738. SeeAlso: #P0294
  5739. Bitfields for PicoPower Vesuvius V1-LS activity flag register 2:
  5740. Bit(s) Description (Table P0330)
  5741. 15-14 reserved
  5742. 13-8 device timer 5-0 time-out (write 0 to clear)
  5743. 7 FLOAT_REQ# active (write 0 to clear)
  5744. 6 EXTACT0 active (write 0 to clear)
  5745. 5 WAKE1 active (write 0 to clear)
  5746. 4 WAKE0 active (write 0 to clear)
  5747. 3 SWTCH active (write 0 to clear)
  5748. 2 RING active (write 0 to clear)
  5749. 1 reserved
  5750. 0 V3-LS active (write 0 to clear)
  5751. SeeAlso: #P0294
  5752. Bitfields for PicoPower Vesuvius V1-LS I/O trap SMI mask register:
  5753. Bit(s) Description (Table P0331)
  5754. 15-10 programmable range 5-0 device on
  5755. 9-8 reserved
  5756. 7 parallel I/O on
  5757. 6 serial I/O 2 on
  5758. 5 serial I/O 1 on
  5759. 4 keyboard on
  5760. 3 floppy disk on
  5761. 2 hard disk 2 on
  5762. 1 hard disk 1 on
  5763. 0 video on
  5764. Note: No group mask for I/O trap.
  5765. SMI generated if a bit is 0 and corresponding device is accessed.
  5766. SeeAlso: #P0294
  5767. Bitfields for PicoPower Vesuvius V1-LS external SMI trigger mask register:
  5768. Bit(s) Description (Table P0332)
  5769. 15-4 reserved
  5770. 3 mask EXTACT0 from SMI
  5771. 2 mask SWTCH from SMI
  5772. 1 mask WAKE1 from SMI
  5773. 0 mask WAKE0 from SMI
  5774. SeeAlso: #P0294
  5775. Bitfields for PicoPower Vesuvius V1-LS internal SMI trigger mask register:
  5776. Bit(s) Description (Table P0333)
  5777. 15-10 reserved
  5778. 9 mask GP timer compare from SMI
  5779. 8 mask suspend time-out from SMI
  5780. 7 mask sleep time-out from SMI
  5781. 6 mask doze time-out from SMI
  5782. 5-0 mask device timer 5-0 time-out from SMI
  5783. Note: Primary activity mask is in register 31Ah bit 1.
  5784. SeeAlso: #P0294
  5785. Bitfields for PicoPower Vesuvius V1-LS software SMI trigger mask register:
  5786. Bit(s) Description (Table P0334)
  5787. 15-10 reserved
  5788. 9 soft SMI on I/O write to port B0h enable
  5789. 8 soft SMI immediate (write 1 to trigger SMI; read value has no meaning)
  5790. 7-5 reserved
  5791. 4 reschedule SMI prescalar
  5792. 0 = 10 ms
  5793. 1 = 100 ms
  5794. 3-0 reschedule SMI select
  5795. 0000 = disable
  5796. 0001-1001 = 1-9
  5797. 1010-1111 = reserved
  5798. SeeAlso: #P0294
  5799. Bitfields for PicoPower Vesuvius V1-LS primary activity option control:
  5800. Bit(s) Description (Table P0335)
  5801. 15-5 reserved
  5802. 4 (revision BB and later) mask SMI from primary activity
  5803. 3 primary activity on disable
  5804. 2 primary activity latching in SMM mode enable
  5805. 1 mask primary activity from SMI
  5806. 0 primary activity flag enable
  5807. SeeAlso: #P0294
  5808. Bitfields for PicoPower Vesuvius V1-LS primary activity mask register 1:
  5809. Bit(s) Description (Table P0336)
  5810. 15-10 primary activity mask programmable range 5-0 accesses
  5811. 9 reserved
  5812. 8 primary activity mask HOLD
  5813. 7 primary activity mask parallel I/O accesses
  5814. 6 primary activity mask serial I/O 2 accesses
  5815. 5 primary activity mask serial I/O 1 accesses
  5816. 4 primary activity mask keyboard accesses
  5817. 3 primary activity mask floppy disk accesses
  5818. 2 primary activity mask hard disk 2 accesses
  5819. 1 primary activity mask hard disk 1 accesses
  5820. 0 primary activity mask video accesses
  5821. SeeAlso: #P0294
  5822. Bitfields for PicoPower Vesuvius V1-LS primary activity mask register 2:
  5823. Bit(s) Description (Table P0337)
  5824. 15-13 reserved
  5825. 12 primary activity mask FLOAT_REQ#
  5826. 11 primary activity mask SWTCH
  5827. 10 primary activity mask WAKE1
  5828. 9 primary activity mask WAKE0
  5829. 8 primary activity mask RING
  5830. 7 reserved
  5831. 6 primary activity mask EXTACT0
  5832. 5-0 reserved
  5833. SeeAlso: #P0294
  5834. Bitfields for PicoPower Vesuvius V1-LS secondary activity mask register:
  5835. Bit(s) Description (Table P0338)
  5836. 15-7 reserved
  5837. 6 mask EXTACT0 from secondary activity
  5838. 5-2 reserved
  5839. 1 mask HOLD from secondary activity
  5840. 0 mask SMI from secondary activity
  5841. SeeAlso: #P0294
  5842. Bitfields for PicoPower Vesuvius V1-LS RING count control register:
  5843. Bit(s) Description (Table P0339)
  5844. 15-5 reserved
  5845. 4 RINGS ten's digit
  5846. 0 = 0
  5847. 1 = 1
  5848. 3-0 RINGS one's digit
  5849. 0000 = disabled (ring counter reset, if bit 4 = 0)
  5850. 0001-1001 = 1-9
  5851. 1010-1111 = reserved
  5852. SeeAlso: #P0294
  5853. Bitfields for PicoPower Vesuvius V1-LS programmable range monitor control 1:
  5854. Bit(s) Description (Table P0340)
  5855. 15-14 reserved
  5856. 13-8 programmable range monitor 5-0 enable
  5857. 7-6 reserved
  5858. 5-0 programmable range monitor 5-0 memory or I/O compare
  5859. 0 = I/O
  5860. 1 = memory
  5861. SeeAlso: #P0294
  5862. Bitfields for PicoPower Vesuvius V1-LS programmable range monitor control 2:
  5863. Bit(s) Description (Table P0341)
  5864. 15-14 reserved
  5865. 13-8 programmable range monitor 5-0 read enable
  5866. 7-6 reserved
  5867. 5-0 programmable range monitor 5-0 write enable
  5868. SeeAlso: #P0294
  5869. Bitfields for PicoPower Vesuvius V1-LS programmable range monitor address:
  5870. Bit(s) Description (Table P0342)
  5871. 15-0 programmable range monitor address (I/O address bits 15-0; memory
  5872. address bits 31-16)
  5873. SeeAlso: #P0294
  5874. Bitfields for PicoPower Vesuvius V1-LS programmable range monitor compare:
  5875. Bit(s) Description (Table P0343)
  5876. 15-0 programmable range monitor compare enable (I/O address bits 15-0;
  5877. memory address bits 31-16)
  5878. SeeAlso: #P0294
  5879. Bitfields for PicoPower Vesuvius V1-LS power management mode register:
  5880. Bit(s) Description (Table P0344)
  5881. 15-4 reserved
  5882. 3 resume
  5883. 2-0 system management mode
  5884. 000 = on
  5885. 001 = doze
  5886. 010 = sleep or deep sleep
  5887. 011 = suspend
  5888. 100-111 = reserved
  5889. SeeAlso: #P0294
  5890. Bitfields for PicoPower Vesuvius V1-LS on/doze mode power control register:
  5891. Bit(s) Description (Table P0345)
  5892. 15-6 reserved
  5893. 5-0 power control on/doze mode (if on/doze mode active, 1 means
  5894. corresponding power control pin is active)
  5895. SeeAlso: #P0294
  5896. Bitfields for PicoPower Vesuvius V1-LS sleep mode power control register:
  5897. Bit(s) Description (Table P0346)
  5898. 15-6 reserved
  5899. 5-0 power control sleep mode (if sleep mode active, 1 means corresponding
  5900. power control pin is active)
  5901. SeeAlso: #P0294
  5902. Bitfields for PicoPower Vesuvius V1-LS suspend mode power control register:
  5903. Bit(s) Description (Table P0347)
  5904. 15-6 reserved
  5905. 5-0 power control suspend mode (if suspend mode active, 1 means
  5906. corresponding power control pin is active)
  5907. SeeAlso: #P0294
  5908. Bitfields for PicoPower Vesuvius V1-LS doze mode timer register:
  5909. Bit(s) Description (Table P0348)
  5910. 15-10 reserved
  5911. 9 doze mode timer enable
  5912. 8 doze mode timer reset by primary activity enable
  5913. 7 doze mode timer clock prescalar
  5914. 0 = 100 ms
  5915. 1 = 1 s
  5916. 6-4 doze mode timer ten's digit
  5917. 000-111 = 0-7
  5918. 3-0 doze mode timer one's digit
  5919. 0000-1001 = 0-9
  5920. 1010-1111 = reserved
  5921. Note: the timer is disabled when both ten's and one's digits are 0
  5922. SeeAlso: #P0294
  5923. Bitfields for PicoPower Vesuvius V1-LS sleep/suspend mode timer register:
  5924. Bit(s) Description (Table P0349)
  5925. 15-10 reserved
  5926. 9 sleep/suspend mode timer enable
  5927. 8-7 reserved
  5928. 6-4 sleep/suspend mode timer ten's digit (0-7)
  5929. 3-0 sleep/suspend mode timer one's digit
  5930. 0000-1001 = 0-9
  5931. 1010-1111 = reserved
  5932. Note: the timer is disabled when both ten's and one's digits are 0
  5933. SeeAlso: #P0294
  5934. Bitfields for PicoPower Vesuvius V1-LS secondary activity timer register:
  5935. Bit(s) Description (Table P0350)
  5936. 15-10 reserved
  5937. 9 secondary activity timer enable
  5938. 8 reset secondary activity on SMI
  5939. 7 secondary activity timer clock prescalar
  5940. 0 = 100 æs
  5941. 1 = 1 ms
  5942. 6-4 secondary activity timer ten's digit (0-7)
  5943. 3-0 secondary activity timer one's digit
  5944. 0000-1001 = 0-9
  5945. 1010-1111 = reserved
  5946. Note: the timer is disabled when both ten's and one's digits are 0
  5947. SeeAlso: #P0294
  5948. Bitfields for PicoPower Vesuvius V1-LS power on demand primary activity timer:
  5949. Bit(s) Description (Table P0351)
  5950. 15-10 reserved
  5951. 9 primary activity timer enable
  5952. 8 reserved
  5953. 7 primary activity timer clock prescalar
  5954. 0 = 100 æs
  5955. 1 = 1 ms
  5956. 6-4 primary activity timer ten's digit (0-7)
  5957. 3-0 primary activity timer one's digit
  5958. 0000-1001 = 0-9
  5959. 1010-1111 = reserved
  5960. SeeAlso: #P0294
  5961. Bitfields for PicoPower Vesuvius V1-LS general purpose control register:
  5962. Bit(s) Description (Table P0352)
  5963. 15-14 reserved
  5964. 13-8 general purpose I/O 5-0 direction
  5965. 0 = corresponding GPIO pin is an input
  5966. 1 = corresponding GPIO pin is an output
  5967. 7-6 reserved
  5968. 5-0 general purpose I/O 5-0 data
  5969. SeeAlso: #P0294
  5970. Bitfields for PicoPower Vesuvius V1-LS general purpose counter/timer control:
  5971. Bit(s) Description (Table P0353)
  5972. 15-8 reserved
  5973. 7 general purpose counter/timer enable
  5974. 6-5 general purpose counter/timer select
  5975. bit 4 = 0 bit 4 = 1
  5976. 00 = 16-bit counter 16-bit counter (GPIO3 is counter clock)
  5977. 01 = 24-bit counter 24-bit counter (GPIO3 is counter clock)
  5978. 10 = 1 second timer 31.25 æs timer
  5979. 11 = 1 minute timer 1.875 ms timer
  5980. 4 general purpose counter/timer clock select
  5981. 0 = 1 Hz
  5982. 1 = 32 kHz
  5983. 3-0 reserved
  5984. SeeAlso: #P0294
  5985. Bitfields for PicoPower Vesuvius V1-LS general purpose counter/timer value:
  5986. Bit(s) Description (Table P0354)
  5987. 15-0 general purpose counter/timer current value (24-bit counter bits
  5988. 23-8, otherwise counter/timer bits 15-0; any write resets
  5989. counter/timer)
  5990. SeeAlso: #P0294
  5991. Bitfields for PicoPower Vesuvius V1-LS general purpose counter/timer compare:
  5992. Bit(s) Description (Table P0355)
  5993. 15-0 general purpose counter/timer compare (24-bit counter compare value
  5994. bits 23-8, otherwise compare value bits 15-0)
  5995. SeeAlso: #P0294
  5996. Bitfields for PicoPower Vesuvius V1-LS device timer 5-0 time-out register:
  5997. Bit(s) Description (Table P0356)
  5998. 15-6 reserved
  5999. 5-4 device timer time-out prescalar
  6000. 00 = 1 s
  6001. 01 = 10 s
  6002. 10 = 1 min.
  6003. 11 = 10 min.
  6004. 3-0 device timer time-out select
  6005. 0000 = disable
  6006. 0001-1001 = 1-9
  6007. 1010-1111 = reserved
  6008. SeeAlso: #P0294
  6009. Bitfields for PicoPower Vesuvius V1-LS device timer time-out source register 1:
  6010. Bit(s) Description (Table P0357)
  6011. 15 reserved
  6012. 14-12 keyboard activity device timer select
  6013. 000 = none
  6014. 001-110 = 0-5
  6015. 111 = reserved
  6016. 11-9 floppy disk activity device timer select (same values as bits 14-12)
  6017. 8-6 hard disk 2 activity device timer select (same values as bits 14-12)
  6018. 5-3 hard disk 1 activity device timer select (same values as bits 14-12)
  6019. 2-0 video activity device timer select (same values as bits 14-12)
  6020. SeeAlso: #P0294
  6021. Bitfields for PicoPower Vesuvius V1-LS device timer time-out source register 2:
  6022. Bit(s) Description (Table P0358)
  6023. 15 reserved
  6024. 14-12 programmable range 1 activity device timer select
  6025. 000 = none
  6026. 001-110 = 0-5
  6027. 111 = reserved
  6028. 11-9 programmable range 0 activity device timer select (same values as
  6029. bits 14-12)
  6030. 8-6 parallel port activity device timer select (same values as bits 14-12)
  6031. 5-3 serial port 2 activity device timer select (same values as bits 14-12)
  6032. 2-0 serial port 1 activity device timer select (same values as bits 14-12)
  6033. SeeAlso: #P0294
  6034. Bitfields for PicoPower Vesuvius V1-LS device timer time-out source register 3:
  6035. Bit(s) Description (Table P0359)
  6036. 15-12 reserved
  6037. 11-9 programmable range 5 activity device timer select
  6038. 000 = none
  6039. 001-110 = 0-5
  6040. 111 = reserved
  6041. 8-6 programmable range 4 activity device timer select (same values as
  6042. bits 11-9)
  6043. 5-3 programmable range 3 activity device timer select (same values as
  6044. bits 11-9)
  6045. 2-0 programmable range 2 activity device timer select (same values as
  6046. bits 11-9)
  6047. SeeAlso: #P0294
  6048. Bitfields for PicoPower Vesuvius V1-LS device timer time-out source register 4:
  6049. Bit(s) Description (Table P0360)
  6050. 15-3 reserved
  6051. 2-0 EXTACT0 activity device timer select
  6052. 000 = none
  6053. 001-110 = 0-5
  6054. 111 = reserved
  6055. SeeAlso: #P0294
  6056. Bitfields for PicoPower Vesuvius V1-LS LED indicator control register:
  6057. Bit(s) Description (Table P0361)
  6058. 15-13 reserved
  6059. 12-11 LED1 flash duration
  6060. 00 = 256 ms (cannot be set if flash rate is 2 or 4 Hz)
  6061. 01 = 128 ms (cannot be set if flash rate is 4 Hz)
  6062. 10 = 62.5 ms
  6063. 11 = 31.25 ms
  6064. 10-9 LED1 flash rate select
  6065. 00 = 0.5 Hz
  6066. 01 = 1 Hz
  6067. 10 = 2 Hz
  6068. 11 = 4 Hz
  6069. 8 LED1 flasher enable
  6070. 7-5 reserved
  6071. 4-3 LED0 flash duration (same values as bits 12-11)
  6072. 2-1 LED0 flash rate select (same values as bits 10-9)
  6073. 0 LED0 flasher enable
  6074. SeeAlso: #P0294
  6075. Bitfields for PicoPower Vesuvius V1-LS leakage control register:
  6076. Bit(s) Description (Table P0362)
  6077. 15-2 reserved
  6078. 1 input leakage control during 5 V suspend enable
  6079. 0 output leakage control during 5 V suspend enable
  6080. SeeAlso: #P0294
  6081. Bitfields for PicoPower Vesuvius V1-LS pin multiplexing control register:
  6082. Bit(s) Description (Table P0363)
  6083. 15 PC5 function
  6084. 0 = PC5
  6085. 1 = reserved
  6086. 14 PC4 function
  6087. 0 = PC4
  6088. 1 = LED1 output
  6089. 13 PC3 function
  6090. 0 = PC3
  6091. 1 = LED0 output
  6092. 12 reserved
  6093. 11-10 GPIO5 function
  6094. 00 = GPIO5
  6095. 01 = reserved
  6096. 10 = THERM input active-high
  6097. 11 = THERM input active-low
  6098. 9-8 GPIO4 function
  6099. 00 = GPIO4
  6100. 01 = reserved
  6101. 10 = (revision BB and later) SUSPA# input
  6102. 11 = reserved
  6103. 7-6 GPIO3 function
  6104. 00 = GPIO3
  6105. 01 = SUPPRESS_RESUME input
  6106. 10-11 = reserved
  6107. 5-4 GPIO2 function
  6108. 00 = GPIO2
  6109. 01 = DDMA_RETRY input
  6110. 10 = DPSLP_IRQPA input
  6111. 11 = reserved
  6112. 3-2 GPIO1 function
  6113. 00 = GPIO1
  6114. 01 = LED1 output
  6115. 10 = (revision BB and later) FLOAT_GNT# output
  6116. 11 = reserved
  6117. 1-0 GPIO0 function
  6118. 00 = GPIO0
  6119. 01 = LED0 output
  6120. 10 = (revision BB and later) FLOAT_REQ# input
  6121. 11 = reserved
  6122. SeeAlso: #P0294
  6123. Bitfields for PicoPower Vesuvius V1-LS debounce control register:
  6124. Bit(s) Description (Table P0364)
  6125. 15-5 reserved
  6126. 4 EXTACT0 debounce select
  6127. 0 = 0 s
  6128. 1 = 20 ms
  6129. 3 RING debounce select (same values as bit 4)
  6130. 2 WAKE1 debounce select (same values as bit 4)
  6131. 1 WAKE0 debounce select (same values as bit 4)
  6132. 0 SWTCH debounce select (same values as bit 4)
  6133. SeeAlso: #P0294
  6134. Bitfields for PicoPower Vesuvius V1-LS edge detect control register:
  6135. Bit(s) Description (Table P0365)
  6136. 15-10 reserved
  6137. 9-8 EXTACT0 edge detect
  6138. 00 = reserved
  6139. 01 = falling
  6140. 10 = rising
  6141. 11 = rising and falling
  6142. 7-6 RING edge detect
  6143. 00 = reserved
  6144. 01 = falling
  6145. 10 = rising
  6146. 11 = reserved
  6147. 5-4 WAKE1 edge detect (same values as bits 9-8)
  6148. 3-2 WAKE0 edge detect (same values as bits 9-8)
  6149. 1-0 SWTCH edge detect (same values as bits 9-8)
  6150. SeeAlso: #P0294
  6151. Bitfields for PicoPower Vesuvius V1-LS L2 cache configuration register:
  6152. Bit(s) Description (Table P0366)
  6153. 15-10 reserved
  6154. 9 TAG initialization enable
  6155. 8 NALE mode select
  6156. 0 = TAGCS#/NALE# pin is in TAGCS# mode
  6157. 1 = TAGCS#/NALE# pin is in NALE# mode
  6158. 7 pipelined burst SRAM enable (if bits 5-4 = 01)
  6159. 6 reserved
  6160. 5-4 L2 cache type
  6161. 00 = standard asynchronous
  6162. 01 = standard synchronous
  6163. 10-11 = reserved
  6164. 3-1 L2 cache size select
  6165. 000 = 128 KB
  6166. 001 = 256 KB
  6167. 010 = 512 KB
  6168. 011 = 1 MB
  6169. 100-111 = reserved
  6170. 0 L2 cache enable
  6171. SeeAlso: #P0294
  6172. Bitfields for PicoPower Vesuvius V1-LS L2 cache timing register:
  6173. Bit(s) Description (Table P0367)
  6174. 15-8 reserved
  6175. 7-6 L2 cache write follow-on
  6176. 00 = 1T
  6177. 01-11 = reserved
  6178. 5-4 L2 cache write leadoff
  6179. 00 = 2T
  6180. 01 = 3T
  6181. 10 = 4T
  6182. 11 = reserved
  6183. 3-2 L2 cache read follow-on (same values as bits 7-6)
  6184. 1-0 L2 cache read leadoff (same values as bits 5-4)
  6185. SeeAlso: #P0294
  6186. Bitfields for PicoPower Vesuvius V1-LS L2 cache miscellaneous register:
  6187. Bit(s) Description (Table P0368)
  6188. 15-10 reserved
  6189. 9-8 (revision BB and later) pipeline on memory read-miss cycle enable
  6190. x0 = disable
  6191. 01 = enable (NA generated same time as first BRDY#)
  6192. 11 = enable (NA generated as soon as internal read request recognized)
  6193. 7 power management on CE# only for 50 MHz operation disable
  6194. 6 advanced synchronous power enhanced cache timing enable
  6195. 5-2 reserved
  6196. 1 invalidation of ROM address disable
  6197. 0 dead clock enable
  6198. SeeAlso: #P0294
  6199. ----------P00240029--------------------------
  6200. PORT 0024-0029 - HEADLAND HTK340 SHASTA 386/486 CHIPSET
  6201. 0024 Rw data port
  6202. 0028 ?W index port to chipset registers (see #P0369,#P0370)
  6203. (Table P0369)
  6204. Values for Headland HT321 register index:
  6205. 00h R chip/revision,read-only
  6206. bit7-4: reserved (=0)
  6207. bit3-0: chip revision, 0=A, 1=B, 3=D
  6208. 01h RW system clocking (default=00h)
  6209. bit7-4: reserved (=0)
  6210. bit3-0: ISA speed set
  6211. 02h RW system parameters (default=00h) (see #P0371)
  6212. 04h RW co-processor (default=00h)
  6213. bit7-3: reserved (=0)
  6214. bit2=1: soft-NPU reset blocked (386 only)
  6215. bit1=1: weitek installed
  6216. bit0=1: 387 installed
  6217. 06h RW DMA (default=00h) (see #P0372)
  6218. 07h RW EPROM (default=00h) (see #P0373)
  6219. 08h RW I/O and memory map holes (default=00h)
  6220. bit7-4: reserved (=0)
  6221. bit3 : 0/1 I/O map hole-A
  6222. bit2 : reserved (=0)
  6223. bit1 : 0/1 memory map hole-B
  6224. bit0 : reserved (=0)
  6225. 10h RW hole-A low address (default=00h)
  6226. 11h RW hole-A high address (default=00h)
  6227. 19h RW mem hole-B start address, lower (default=00h)
  6228. 1Ah RW mem hole-B start address, higher (default=00h)
  6229. bit7-6: reserved (=0)
  6230. bit5-0: address of mem hole-B start
  6231. 1Ch RW mem hole-B end address, lower (default=00h)
  6232. 1Dh RW mem hole-B end address, higher (default=00h)
  6233. bit7-6: reserved (=0)
  6234. bit5-0: address of mem hole-B end
  6235. SeeAlso: #P0370
  6236. (Table P0370)
  6237. Values for Headland HT342 register index:
  6238. 20h R identifier port read
  6239. bit7-4: DRAM controller identifier (0010b)
  6240. bit3-0: revision number (0=A)
  6241. 21h R feature port read (default=00h)
  6242. 24h RW DRAM options port #1 (default=00h)
  6243. bit7 : 0/1 staggered refresh
  6244. bit6 : refresh type
  6245. bit5 : 0/1 DRAM paging
  6246. bit4-2: CAS interleave
  6247. bit1-0: banks
  6248. 25h DRAM options port #2 (default=00h)
  6249. bit7-6: DRAM bank 1 type
  6250. bit5-4: DRAM bank 2 type
  6251. bit3-2: DRAM bank 1?? type
  6252. bit1-0: DRAM bank 0 type
  6253. 26h RW DRAM options port #3 (default=FFh) (see #P0374)
  6254. 27h RW DRAM options port #4 (default=FFh) (see #P0375)
  6255. 28h RW data transfer control port (default=00h)
  6256. doubled indexed registers (28h-2Ah)
  6257. bit7 : initiate transfer
  6258. bit6 : read/write transfer
  6259. bit5-4: reserved
  6260. bit3-0: transfer/destination
  6261. 29h RW RAM address register (default=00h)
  6262. doubled indexed registers (28h-2Ah)
  6263. bit7-5: reserved
  6264. bit4-0: RAM address registers contents
  6265. 2Ah RW data transfer port (default=00h)
  6266. doubled indexed registers (28h-2Ah)
  6267. bit7-6: reserved
  6268. bit5 : EMS translation
  6269. bit4 : reserved
  6270. bit3 : 0/1 cacheing
  6271. bit2 : 0/1 write
  6272. bit1 : 0/1 read
  6273. bit0 : 0/1 shadow
  6274. 2Bh RW other options (default=00h) (see #P0376)
  6275. 2Dh RW DRAM options port #5 (default=03h)
  6276. bit7-5: reserved
  6277. bit4 : 0/1 10æs RAS timeout
  6278. bit3-2: BUS speed
  6279. bit1-0: BUS recovery for DRAM cycles
  6280. 00b=0: 4-1-1-1 10b=0.5
  6281. 01b=1: 4-2-2-2 11b=1??
  6282. 82h read transfer
  6283. C2h write transfer
  6284. SeeAlso: #P0369
  6285. Bitfields for Headland HT321 register 02h (system parameters):
  6286. Bit(s) Description (Table P0371)
  6287. 7-6 IO recovery time (rev. D+)
  6288. 5 parity override
  6289. 4-3 cycle-width
  6290. 2 0/1 PORT 0092h functionality
  6291. 1 IO decode
  6292. 0 0/1 posted backplane MEMWN cycles
  6293. SeeAlso: #P0369
  6294. Bitfields for Headland HT321 register 06h (DMA control):
  6295. Bit(s) Description (Table P0372)
  6296. 7 reserved (=0)
  6297. 6 1/0 IOCHRDY during master cycle (rev. C+)
  6298. 5 0/1 fast sample DMA
  6299. 4-3 DMA waitstate 00b=3 .. 11b=0
  6300. 2 0/1 DMA flow-through mode
  6301. 1 0/1 extended DMA page register
  6302. 0 DMA clock
  6303. SeeAlso: #P0369
  6304. Bitfields for Headland HT321 register 07h (EPROM control):
  6305. Bit(s) Description (Table P0373)
  6306. 7-6 reserved (=0)
  6307. 5 0/1 EADS CACHE invalidation for EPROM writes (rev. D+)
  6308. 4 0/1 ROMEN for EPROM writes (rev. C+)
  6309. 3 0/1 middle BIOS region of 64KB space below 16MB
  6310. 2 ROM-size (0=64KB, 1=128KB)
  6311. 1 V-BIOS-add (0=separate, 1=same device)
  6312. 0 ROM-access time (0=250ns, 1=125ns)
  6313. SeeAlso: #P0369
  6314. Bitfields for Headland HT342 register 26h (DRAM CAS control):
  6315. Bit(s) Description (Table P0374)
  6316. 7 CAS hold on RAS (CAS before RAS refresh)
  6317. 6 CAS precharge
  6318. 5 CAS burst delay
  6319. 4 CAS delay (writes)
  6320. 3 CAS delay (reads)
  6321. 2 CAS active time (writes)
  6322. 1-0 CAS active time (reads)
  6323. SeeAlso: #P0370,#P0375
  6324. Bitfields for Headland HT342 register 27h (DRAM RAS control):
  6325. Bit(s) Description (Table P0375)
  6326. 7 RAS delay
  6327. 6-5 RAS active (writes)
  6328. 4-2 RAS active (reads)
  6329. 1-0 RAS precharge
  6330. SeeAlso: #P0370,#P0374
  6331. Bitfields for Headland HT342 register 2Bh (other options):
  6332. Bit(s) Description (Table P0376)
  6333. 7 reserved
  6334. 6 0/1 middle BIOS
  6335. 5 0/1 data pipeline
  6336. 4 0/1 data pipeline
  6337. 3 IO-decode
  6338. 2 reserved
  6339. 1 16bit DMA bridge
  6340. 0 0/1 write buffering
  6341. SeeAlso: #P0370
  6342. ----------P00260027--------------------------
  6343. PORT 0026-0027 - INTEL 82347 POWER MANAGEMENT PERIPHERAL
  6344. SeeAlso: PORT 0178h-0179h
  6345. 0026 -W index for data port (see #P0377)
  6346. 0027 RW power management data
  6347. (Table P0377)
  6348. Values for Intel 82437 Power Management Peripheral register index:
  6349. C0h suspend/wakeup status, system state
  6350. C1h power supply and activity status, general-purpose output/control
  6351. C2h control bits
  6352. C3h activity mask
  6353. C4h NMI mask
  6354. C5h I/O range for activity monitor
  6355. C6h power output control bits, ON state
  6356. C7h power output control bits, Doze state
  6357. C8h power output control bits, Sleep state
  6358. C9h power output control bits, Suspend state
  6359. CAh power control bits polarity control
  6360. CBh current output bits
  6361. CCh Doze timeout
  6362. CDh Sleep timeout
  6363. CEh Suspend timeout
  6364. CFh LCD display power timeout
  6365. D0h EL display power timeout
  6366. ----------P00260027--------------------------
  6367. PORT 0026-0027 - Chips&Technologies CS4021 - "SuperState V" ALTERNATE CONFIG
  6368. Desc: alternate copy of the configuration register access at PORT 0022h/0023h
  6369. which may be used by system software in "SuperState V" to configure
  6370. the chipset without disturbing accesses to PORT 0022h by user code
  6371. Notes: SuperState V is an early version of system management mode
  6372. these ports can only be accessed while the system is in SuperState V;
  6373. similarly, some configuration registers are read-only via PORT 0022h
  6374. and others can optionally be made read-only
  6375. SeeAlso: PORT 0022h"Chips&Technologies"
  6376. !!!chips\cs4021.pdf p.149
  6377. 0026 -W configuration register index
  6378. 0027 RW configuration register data
  6379. ----------P0028002A--------------------------
  6380. PORT 0028-002A - 80486 "Deep Green" motherboard - ???
  6381. 0028 ?W index for data port
  6382. 002A RW ??? data port
  6383. Note: in order to access to the registers available through PORT 002A,
  6384. an unlocking sequence must be written via PORT 0028: write
  6385. A0h, 05h, index to PORT 0028, then read/write PORT 002A, then
  6386. write A5h to PORT 0028
  6387. ----------P002E002F--------------------------
  6388. PORT 002E-002F - DELL ENHANCED PARALLEL PORT
  6389. SeeAlso: PORT 015Ch,PORT 026Eh,PORT 0398h
  6390. 002E -W index for data port (see #P0378)
  6391. 002F RW EPP command data
  6392. (Table P0378)
  6393. Values for Dell Enhanced Parallel Port register index:
  6394. 00h bit 0: ???
  6395. 02h bit 7: port in bidirectional mode
  6396. 04h bits 0 and 2: ECP/EPP mode control
  6397. ----------P002E002F--------------------------
  6398. PORT 002E-002F - Intel "Nonolet" Motherboard - POWER MANAGEMENT
  6399. 002E ?W index for data port
  6400. 002F ?W data port
  6401. code sequence posted in fido7.nice.sources by Konstantin Mohorea:
  6402. out 2Eh,0Ch
  6403. out 2Fh,75h
  6404. out 2Eh,11h
  6405. out 2Fh,00h
  6406. out 2Eh,0Dh
  6407. out 2Fh,A0h
  6408. ----------P002E002F--------------------------
  6409. PORT 002E-002F - NS PC87306 SuperI/O - CONFIGURATION REGISTERS
  6410. InstallCheck: after a hardware reset, the first read of the index port returns
  6411. 88h, and a second consecutive read always returns 00h (while
  6412. read-after-write always returns the written value)
  6413. Range: PORT 002Eh, PORT 015Ch, PORT 026Eh, or PORT 0398h, depending on
  6414. external strapping
  6415. Note: to set a register, the data port must be written twice in a row; the
  6416. value is latched on the second write
  6417. 002E RW configuration register index
  6418. 002F RW configuration register data
  6419. ----------P0038003F--------------------------
  6420. PORT 0038-003F - PC radio by CoZet Info Systems
  6421. Notes: The I/O address range is dipswitch selectable from:
  6422. 038-03F and 0B0-0BF
  6423. 078-07F and 0F0-0FF
  6424. 138-13F and 1B0-1BF
  6425. 178-17F and 1F0-1FF
  6426. 238-23F and 2B0-2BF
  6427. 278-27F and 2F0-2FF
  6428. 338-33F and 3B0-3BF
  6429. 378-37F and 3F0-3FF
  6430. All of these addresses show a readout of FF in initial state.
  6431. Once started, all of the addresses show FB, whatever might happen.
  6432. ----------P0040005F--------------------------
  6433. PORT 0040-005F - PIT - PROGRAMMABLE INTERVAL TIMER (8253, 8254)
  6434. Notes: XT & AT use ports 40h-43h; PS/2 uses ports 40h, 42h-44h, and 47h
  6435. the counter chip is driven with a 1.193 MHz clock (1/4 of the
  6436. original PC's 4.77 MHz CPU clock)
  6437. SeeAlso: PORT 0044h,PORT 0048h
  6438. 0040 RW PIT counter 0, counter divisor (XT, AT, PS/2)
  6439. Used to keep the system time; the default divisor of (1)0000h
  6440. produces the 18.2Hz clock tick.
  6441. 0041 RW PIT counter 1, RAM refresh counter (XT, AT)
  6442. don't set below 3 on PCs (default 12h), and don't mess with this
  6443. counter at all unless you really know what you're doing....
  6444. 0042 RW PIT counter 2, cassette & speaker (XT, AT, PS/2)
  6445. During normal operation mode (8253) 40h-42h set the counter values on
  6446. write and get the current counter value on read. In 16bit modes two
  6447. consequtive writes/reads must be issued, first with the low byte,
  6448. followed by the high byte. In 8254 read back modes, all selected
  6449. counters and status are latched and must be read out completely
  6450. before normal operation is valid again. Each counter switches back
  6451. to normal operation after read out. In 'get status and counter'
  6452. mode the first byte read is the status, followed by one or two
  6453. counter values. (see #P0379) Note that 16-bit reads performed
  6454. without using the "latch" command will get the current high/low
  6455. portion of the counter at the instant of the port read, so it is
  6456. possible for the low part of the counter to wrap around before the
  6457. high part gets read, resulting in a significant measurement error
  6458. 0043 RW PIT mode port, control word register for counters 0-2 (see #P0380)
  6459. Once a control word has been written (43h), it must be followed
  6460. immediately by performing the corresponding action to the counter
  6461. registers (40h-42h), else the system may hang!!
  6462. Bitfields for 8254 PIT counter status byte:
  6463. Bit(s) Description (Table P0379)
  6464. 7 PIN status of OUTx Pins (1=high, 0=low)
  6465. 6 counter start value loaded
  6466. =0: yes, so counter latch is valid to be read
  6467. =1: no, wait for counter latch to be set (may last a while)
  6468. 5-0 counter mode, same as bit5-0 at 43h
  6469. SeeAlso: #P0380
  6470. Bitfields for 8253/8254 PIT mode control word:
  6471. Bit(s) Description (Table P0380)
  6472. 7-6 counter select
  6473. 00 counter 0 select
  6474. 01 counter 1 select (not PS/2)
  6475. 10 counter 2 select
  6476. 11 (8253) reserved
  6477. (8254) read back counter (see #P0379)
  6478. ---if counter select---
  6479. 5-4 counter access
  6480. 00 counter latch command
  6481. BUG: Intel Neptune/Mercury/Aries Chipset 8237IB (SIO) needs
  6482. a short delay after issuing this command, else the
  6483. latched MSB may be outdated with respect to the LSB,
  6484. resulting in large measuring errors.
  6485. Workaround: Check for this condition by comparing
  6486. results with last results and don't use erroneous
  6487. results.
  6488. 01 read/write counter bits 0-7 only
  6489. 10 read/write counter bits 8-15 only
  6490. 11 read/write counter bits 0-7 first, then 8-15
  6491. 3-1 counter mode
  6492. 000 mode 0 select - zero detection interrupt
  6493. 001 mode 1 select - programmable one shot
  6494. x10 mode 2 select - rate generator
  6495. x11 mode 3 select - square wave generator
  6496. counts down twice by two at a time; latch status and check
  6497. value of OUT pin to determine which half-cycle is active
  6498. divisor factor 3 not allowed!
  6499. 100 mode 4 select - software triggered strobe
  6500. 101 mode 5 select - hardware triggered strobe
  6501. 0 counting style
  6502. 0 binary counter 16 bits
  6503. 1 BCD counter (4 decades)
  6504. ---if read back---
  6505. 5-4 what to read
  6506. 00 counter status, then value
  6507. 01 counter value
  6508. 10 counter status
  6509. 11 reserved
  6510. 3 select counter 2
  6511. 2 select counter 1
  6512. 1 select counter 0
  6513. 0 reserved (0)
  6514. Note: after issuing a read back 'get status' command, any new read back
  6515. command is ignored until the status is read from all selected
  6516. counters.
  6517. ----------P00440047--------------------------
  6518. PORT 0044-0047 - Microchannel - PROGRAMMABLE INTERVAL TIMER 2
  6519. SeeAlso: PORT 0040h,PORT 0048h
  6520. 0044 RW PIT counter 3 (PS/2)
  6521. used as fail-safe timer. generates an NMI on time out.
  6522. for user generated NMI see at 0462.
  6523. 0047 -W PIT control word register counter 3 (PS/2, EISA)
  6524. bit 7-6 = 00 counter 3 select
  6525. = 01 reserved
  6526. = 10 reserved
  6527. = 11 reserved
  6528. bit 5-4 = 00 counter latch command counter 3
  6529. = 01 read/write counter bits 0-7 only
  6530. = 1x reserved
  6531. bit 3-0 = 00
  6532. ----------P0048004B--------------------------
  6533. PORT 0048-004B - EISA - PROGRAMMABLE INTERVAL TIMER 2
  6534. Note: this second timer is also supported by many Intel chipsets
  6535. SeeAlso: PORT 0040h,PORT 0044h
  6536. 0048 RW EISA PIT2 counter 3 (Watchdog Timer)
  6537. 0049 ?? EISA 8254 timer 2, not used (counter 4)
  6538. 004A RW EISA PIT2 counter 5 (CPU speed control)
  6539. 004B -W EISA PIT2 control word
  6540. --------K-P0060006F--------------------------
  6541. PORT 0060-006F - KEYBOARD CONTROLLER 804x (8041, 8042) (or PPI (8255) on PC,XT)
  6542. Note: XT uses ports 60h-63h, AT uses ports 60h-64h
  6543. 0060 RW KB controller data port or keyboard input buffer (ISA, EISA)
  6544. should only be read from after status port bit0 = 1
  6545. should only be written to if status port bit1 = 0
  6546. 0060 R- KeyBoard or KB controller data output buffer (via PPI on XT)
  6547. PC: input from port A of 8255, if bit7 in 61h set (see #P0396)
  6548. get scancodes, special codes (in PC: with bit7 in 61h cleared)
  6549. (see #P0390)
  6550. 0061 R- KB controller port B control register (ISA, EISA)
  6551. system control port for compatibility with 8255 (see #P0393)
  6552. 0061 -W KB controller port B (ISA, EISA) (PS/2 port A is at 0092)
  6553. system control port for compatibility with 8255 (see #P0392)
  6554. 0061 -W PPI Programmable Peripheral Interface 8255 (XT only)
  6555. system control port (see #P0394)
  6556. 0062 RW PPI (XT only) data port C (see #P0395)
  6557. 0063 RW PPI (XT only) command mode register (see #P0397)
  6558. 0064 R- keyboard controller read status (see #P0398,#P0399,#P0400)
  6559. 0064 -W keyboard controller input buffer (ISA, EISA) (see #P0401)
  6560. 0064 -W (Amstrad/Schneider PC1512) set 'DIP switch S1' setting
  6561. stored in CMOS RAM that PPI should report for compatibility
  6562. 0065 -W (Amstrad/Schneider PC1512) set 'DIP switch S2' RAM size setting
  6563. stored in CMOS RAM, that PPI port C (PORT 0064h) should report for
  6564. compatibility
  6565. 0065 R- communications port (Olivetti M24)
  6566. Bitfields for AT keyboard controller input port:
  6567. Bit(s) Description (Table P0381)
  6568. 7 keyboard enabled
  6569. 6 =0 CGA, else MDA
  6570. 5 =0 manufacturing jumper installed
  6571. 4 =0 system RAM 512K, else 640K
  6572. 3-0 reserved
  6573. SeeAlso: #P0382,#P0384
  6574. Bitfields for AT keyboard controller input port (Compaq):
  6575. Bit(s) Description (Table P0382)
  6576. 7 security lock is unlocked
  6577. 6 =0 Compaq dual-scan display, 1=non-Compaq display
  6578. 5 system board dip switch 5 is OFF
  6579. 4 =0 auto speed selected, 1=high speed selected
  6580. 3 =0 slow (4MHz), 1 = fast (8MHz)
  6581. 2 no math coprocessor installed
  6582. 1-0 reserved
  6583. SeeAlso: #P0383
  6584. Bitfields for AT keyboard controller output port:
  6585. Bit(s) Description (Table P0383)
  6586. 7 keyboard data output
  6587. 6 keyboard clock output
  6588. 5 input buffer NOT full
  6589. 4 output buffer NOT empty
  6590. 3 reserved (see note)
  6591. 2 reserved (see note)
  6592. 1 gate A20
  6593. 0 system reset
  6594. Note: bits 2 and 3 are the turbo speed switch or password lock on
  6595. Award/AMI/Phoenix BIOSes. These bits make use of nonstandard
  6596. keyboard controller BIOS functionality to manipulate
  6597. pin 23 (8041 port 22) as turbo switch for AWARD
  6598. pin 35 (8041 port 15) as turbo switch/pw lock for Phoenix
  6599. SeeAlso: #P0381,#P0384
  6600. Bitfields for HP Vectra keyboard controller output port:
  6601. Bit(s) Description (Table P0384)
  6602. 7-5 reserved
  6603. 4 output buffer full (OBF) interrupt
  6604. 3 HP SVC interrupt
  6605. 2 HP-HIL controller AutoPoll
  6606. 1 A20 gate
  6607. 0 system reset
  6608. SeeAlso: #P0383,#P0385
  6609. Bitfields for HP Vectra command byte:
  6610. Bit(s) Description (Table P0385)
  6611. 7 reserved (0)
  6612. 6 scancode conversion mode (1 = PC/XT, 0 = PC/AT)
  6613. 5 unused
  6614. 4 disable keyboard (unless bit 3 set)
  6615. 3 override keyboard disable
  6616. 2 System Flag (may be read from PORT 0060h)
  6617. 1 reserved
  6618. 0 OBF interrupt enable
  6619. SeeAlso: #P0384
  6620. (Table P0386)
  6621. Values for keyboard commands (data also goes to PORT 0060h):
  6622. Value Count Description
  6623. EDh double set/reset mode indicators Caps Num Scrl
  6624. bit 2 = CapsLk, bit 1 = NumLk, bit 0 = ScrlLk
  6625. all other bits must be zero.
  6626. EEh sngl diagnostic echo. returns EEh.
  6627. EFh sngl NOP (No OPeration). reserved for future use
  6628. EF+26h double [Cherry MF2 G80-1501HAD] read 256 bytes of chipcard data
  6629. keyboard must be disabled before this and has to
  6630. be enabled after finished.
  6631. F0h double get/set scan code set
  6632. 00h get current set
  6633. 01h scancode set 1 (PCs and PS/2 mod 30, except Type 2 ctrlr)
  6634. 02h scancode set 2 (ATs, PS/2, default)
  6635. 03h scancode set 3
  6636. F2h sngl read keyboard ID (read two ID bytes)
  6637. AT keyboards returns FA (ACK)
  6638. MF2 returns AB 41 (translation) or
  6639. AB 83 (pass through)
  6640. F3h double set typematic rate/delay
  6641. format of the second byte:
  6642. bit7=0 : reserved
  6643. bit6-5 : typemativ delay
  6644. 00b=250ms 10b= 750ms
  6645. 01b=500ms 11b=1000ms
  6646. bit4-0 : typematic rate (see #P0391)
  6647. F4h sngl enable keyboard
  6648. F5h sngl disable keyboard. set default parameters (no keyboard scanning)
  6649. F6h sngl set default parameters
  6650. F7h sngl [MCA] set all keys to typematic (scancode set 3)
  6651. F8h sngl [MCA] set all keys to make/release
  6652. F9h sngl [MCA] set all keys to make only
  6653. FAh sngl [MCA] set all keys to typematic/make/release
  6654. FBh sngl [MCA] set al keys to typematic
  6655. FCh double [MCA] set specific key to make/release
  6656. FDh double [MCA] set specific key to make only
  6657. FEh sngl resend last scancode
  6658. FFh sngl perform internal power-on reset function
  6659. Note: each command is acknowledged by FAh (ACK), if not mentioned otherwise.
  6660. See PORT 0060h-R for details.
  6661. SeeAlso: #P0387
  6662. (Table P0387)
  6663. Values for Mouse functions (for PS/2-like pointing devices):
  6664. Value Count Description
  6665. E6h sngl set mouse scaling to 1:1
  6666. E7h sngl set mouse scaling to 2:1
  6667. E8h double set mouse resolution
  6668. (00h=1/mm, 01h=2/mm, 02h=4/mm, 03h=8/mm)
  6669. E9h sngl get mouse information
  6670. read two status bytes:
  6671. byte 0: flags (see #P0388)
  6672. byte 1: resolution
  6673. EAh sngl set mouse to stream mode (mouse sends data on any changes)
  6674. EBh sngl get mouse data (from mouse to controller) (see #P0389)
  6675. on reading, each data packet consists of 8 bytes:
  6676. ECh sngl reset mouse wrap mode (to normal mode)
  6677. EEh sngl set wrap mode
  6678. F0h sngl set remote mode (instead of stream mode), mouse sends data
  6679. only on issueing command EBh.
  6680. F2h sngl read mouse ID (read one, two?? ID bytes)
  6681. 00h=mouse
  6682. F3h double set mouse sample rate in reports per second
  6683. 0Ah=10/s 50h= 80/s
  6684. 14h=20/s 64h=100/s
  6685. 28h=40/s C8h=200/s
  6686. 3Ch=60/s
  6687. F4h sngl enable mouse (in stream mode)
  6688. F5h sngl disable mouse (in steam mode), set default parameters
  6689. F6h sngl reset to defaults: 100/s, scaling 1:1, stream-mode, 4/mm,
  6690. disabled
  6691. FEh sngl resend last mouse data (8 bytes, see EBh)
  6692. FFh sngl reset mouse
  6693. Notes: must issue command D4h to PORT 0064h first to access mouse functions
  6694. all commands except ECh and FFh are acknowledged by FAh (ACK) or
  6695. FEh (Resend); get mouse ID (F2h) returns mouse ID.
  6696. SeeAlso: #P0386
  6697. Bitfields for mouse status byte 0:
  6698. Bit(s) Description (Table P0388)
  6699. 7 unused
  6700. 6 remote rather than stream mode
  6701. 5 mouse enabled
  6702. 4 scaling set to 2:1
  6703. 3 unused
  6704. 2 left button pressed
  6705. 1 unused
  6706. 0 right button pressed
  6707. SeeAlso: #P0387,#P0389
  6708. Format of mouse data packet:
  6709. Offset Size Description (Table P0389)
  6710. 00h BYTE status
  6711. bit7 : y-data overrun
  6712. bit6 : x-data overrun
  6713. bit5 : y-data negative
  6714. bit4 : x-data negative
  6715. bit3-2=0: reserved
  6716. bit1 : right button pressed
  6717. bit0 : left button pressed
  6718. 01h BYTE reserved
  6719. 02h BYTE x-data
  6720. 03h BYTE reserved
  6721. 04h BYTE y-data
  6722. 05h BYTE reserved
  6723. 06h BYTE z-data (0)
  6724. 07h BYTE reserved
  6725. SeeAlso: #P0387,#P0388
  6726. (Table P0390)
  6727. Values for keyboard special codes:
  6728. 00h (MF2 in codeset2&3 or AT keyboards) keydetection/overrun error
  6729. 00h (mouse) ID
  6730. AAh BAT completion code (sent after errorfree Basic Assurance Test)
  6731. ABh first byte of general MF2 keyboard ID
  6732. EEh Echo command return
  6733. FAh Acknowledge (all general commands except Resend and Echo)
  6734. FAh (mouse) Acknowledge (all commands except commands ECh,F2h,FFh)
  6735. FCh (MF2) BAT Failure Code (error in second half of the power on self test)
  6736. FDh (AT-keyboard) BAT Failure Code (error in the second half of the
  6737. power-on self test)
  6738. FEh Resend: CPU to controller should resend last keyboard-command
  6739. FEh (mouse) CPU to controller should resend last mouse-command
  6740. FFh (MF2 in codeset1) keydetection/overrun error
  6741. Note: keyboard stops scanning and waits for next command after returning
  6742. code FCh or FDh
  6743. SeeAlso: PORT 0060h-R
  6744. (Table P0391)
  6745. Values for keyboard typematic rate:
  6746. 00000b=30.0 10000b=7.5
  6747. 00001b=26.7 10001b=6.7
  6748. 00010b=24.0 10010b=6.0
  6749. 00011b=21.8 10011b=5.5
  6750. 00100b=20.0 10100b=5.0
  6751. 00101b=18.5 10101b=4.6
  6752. 00110b=17.1 10110b=4.3
  6753. 00111b=16.0 10111b=4.0
  6754. 01000b=15.0 11000b=3.7
  6755. 01001b=13.3 11001b=3.3
  6756. 01010b=12.0 11010b=3.0
  6757. 01011b=10.9 11011b=2.7
  6758. 01100b=10.0 11100b=2.5
  6759. 01101b= 9.2 11101b=2.3
  6760. 01110b= 8.5 11110b=2.1
  6761. 01111b= 8.0 11111b=2.0
  6762. SeeAlso: #P0386
  6763. Bitfields for KB controller port B (system control port) [output]:
  6764. Bit(s) Description (Table P0392)
  6765. 7 pulse to 1 for IRQ1 reset (PC,XT)
  6766. 6-4 reserved
  6767. 3 I/O channel parity check disable
  6768. 2 RAM parity check disable
  6769. 1 speaker data enable
  6770. 0 timer 2 gate to speaker enable
  6771. SeeAlso: PORT 0061h-W,#P0393
  6772. Bitfields for KB ctrller port B control register (system control port) [input]:
  6773. Bit(s) Description (Table P0393)
  6774. 7 RAM parity error occurred
  6775. 6 I/O channel parity error occurred
  6776. 5 mirrors timer 2 output condition
  6777. 4 toggles with each refresh request
  6778. 3 NMI I/O channel check status
  6779. 2 NMI parity check status
  6780. 1 speaker data status
  6781. 0 timer 2 clock gate to speaker status
  6782. Note: also supported by OPTi 82C392
  6783. SeeAlso: PORT 0061h-R,#P0392
  6784. Bitfields for Progr. Peripheral Interface (8255) system control port [output]:
  6785. Bit(s) Description (Table P0394)
  6786. 7 clear keyboard (only pulse, normally kept at 0)
  6787. 6 =0 hold keyboard clock low
  6788. 5 NMI I/O parity check disable
  6789. 4 NMI RAM parity check disable
  6790. 3 =0 read low nybble of switches S2
  6791. =1 read high nybble of switches S2
  6792. 2 reserved, often used as turbo switch
  6793. original PC: cassette motor off
  6794. 1 speaker data enable
  6795. 0 timer 2 gate to speaker enable
  6796. Note: bits 2 and 3 are sometimes used as turbo switch
  6797. SeeAlso: PORT 0061h-W,#P00051,#P0395,#P0396,#P0397
  6798. Bitfields for PPI (XT only) data port C:
  6799. Bit(s) Description (Table P0395)
  6800. 7 RAM parity error occurred
  6801. 6 I/O channel parity error occurred
  6802. 5 timer 2 channel out
  6803. 4 reserved
  6804. original PC: cassette data input
  6805. ---
  6806. 3 system board RAM size type 1
  6807. 2 system board RAM size type 2
  6808. 1 coprocessor installed
  6809. 0 loop in POST
  6810. ---
  6811. 3-0 DIL switch S2 high/low nybble (depending on PORT 0061h bit 3)
  6812. SeeAlso: PORT 0062h-RW,#P0394,#P0396,#P0397
  6813. Bitfields for PPI (PC,XT only) equipment switches [input]:
  6814. Bit(s) Description (Table P0396)
  6815. 7-6 number of disk drives
  6816. 00 1 diskette drive
  6817. 01 2 diskette drives
  6818. 10 3 diskette drives
  6819. 11 4 diskette drives
  6820. 5-4 initial video
  6821. 00 reserved (video adapter has on-board BIOS)
  6822. 01 40*25 color (mono mode)
  6823. 10 80*25 color (mono mode)
  6824. 11 MDA 80*25
  6825. 3-2 memory size (using 256K chips)
  6826. 00 256K
  6827. 01 512K
  6828. 10 576K
  6829. 11 640K
  6830. 3-2 memory size (using 64K chips)
  6831. 00 64K
  6832. 01 128K
  6833. 10 192K
  6834. 11 256K
  6835. 3-2 memory size (original PC)
  6836. 00 16K
  6837. 01 32K
  6838. 10 48K
  6839. 11 64K
  6840. 1-0 reserved
  6841. 1 NPU (math coprocessor) present
  6842. 0 boot from floppy
  6843. SeeAlso: #P0395,#P0397,PORT 0060h-R
  6844. Bitfields for PPI (8255) command mode register:
  6845. Bit(s) Description (Table P0397)
  6846. 7 activation function (0 = bit set/reset, 1 = mode set function)
  6847. 6,5 port A mode: 00 = mode0, 01 = mode1, 1x = mode2
  6848. 4 port A direction: 0 = output, 1 = input
  6849. 3 port C bits 7-4 direction: 0 = output, 1 = input
  6850. 2 port B mode: 0 = mode0, 1 = mode1
  6851. 1 port B direction: 0 = output, 1 = input
  6852. 0 port C bits 3-0 direction: 0 = output, 1 = input
  6853. Note: Attention: Never write anything other than 99h to this port
  6854. (better: never write anything to this port, only during BIOS
  6855. init), as other values may connect multiple output drivers
  6856. and will cause hardware damage in PC/XTs! By setting command
  6857. word to 99h, PPI will be set in input/output modes as it is
  6858. necessary to support the commonly known IO-ports 60, 61, 62
  6859. as desired.
  6860. SeeAlso: #P0394,#P0395,#P0396
  6861. Bitfields for keyboard controller read status (ISA, EISA):
  6862. Bit(s) Description (Table P0398)
  6863. 7 parity error on transmission from keyboard
  6864. 6 receive timeout
  6865. 5 transmit timeout
  6866. 4 keyboard interface inhibited by keyboard lock
  6867. 3 =1 data written to input register is command (PORT 0064h)
  6868. =0 data written to input register is data (PORT 0060h)
  6869. 2 system flag status: 0=power up or reset 1=selftest OK
  6870. 1 input buffer full (input 60/64 has data for 8042)
  6871. no write access allowed until bit clears
  6872. 0 output buffer full (output 60 has data for system)
  6873. bit is cleared after read access
  6874. SeeAlso: PORT 0064h-R,#P0399,#P0400,#P0401
  6875. Bitfields for keyboard controller read status (MCA):
  6876. Bit(s) Description (Table P0399)
  6877. 7 parity error on transmission from keyboard
  6878. 6 general timeout
  6879. 5 mouse output buffer full
  6880. 4 keyboard interface inhibited by keyboard lock
  6881. 3 =1 data written to input register is command (PORT 0064h)
  6882. =0 data written to input register is data (PORT 0060h)
  6883. 2 system flag status: 0=power up or reset 1=selftest OK
  6884. 1 input buffer full (60/64 has data for 804x)
  6885. no write access allowed until bit clears
  6886. 0 output buffer full (output 60 has data for system)
  6887. bit is cleared after read access
  6888. SeeAlso: #P0398,#P0400,#P0401
  6889. Bitfields for keyboard controller read status (Compaq):
  6890. Bit(s) Description (Table P0400)
  6891. 7 parity error detected (11-bit format only). If an
  6892. error is detected, a Resend command is sent to the
  6893. keyboard once only, as an attempt to recover.
  6894. 6 receive timeout. transmission didn't finish in 2mS.
  6895. 5 transmission timeout error
  6896. bit 5,6,7 cause
  6897. 1 0 0 No clock
  6898. 1 1 0 Clock OK, no response
  6899. 1 0 1 Clock OK, parity error
  6900. 4 =0 security lock engaged
  6901. 3 =1 data in OUTPUT register is command
  6902. =0 data in OUTPUT register is data
  6903. 2 system flag status: 0=power up or reset 1=soft reset
  6904. 1 input buffer full (60/64 has data for 804x)
  6905. no write access allowed until bit clears
  6906. 0 output buffer full (PORT 0060h has data for system)
  6907. bit is cleared after read access
  6908. SeeAlso: #P0398,#P0399,#P0401
  6909. (Table P0401)
  6910. Values for keyboard controller commands (data goes to PORT 0060h):
  6911. Value Description
  6912. 20h read read byte zero of internal RAM, this is the last KB command
  6913. sent to the 8041/8042
  6914. Compaq put current command byte on PORT 0060h (see #P0403,#P0404)
  6915. 21-3F read reads the byte specified in the lower 5 bits of the command
  6916. in the 804x's internal RAM (see #P0407)
  6917. 60-7F double writes the data byte to the address specified in the 5 lower
  6918. bits of the command
  6919. 60h Compaq Load new command (60 to [64], command to [60]) (see #P0404)
  6920. (also general AT-class machines)
  6921. A0h AMI get ASCIZ copyright message on PORT 0060h
  6922. A1h AMI get controller version byte on PORT 0060h
  6923. A1h Compaq unknown speedfunction ??
  6924. A1h C&T CHIPS extensions (see #P0402)
  6925. A2h Compaq unknown speedfunction ??
  6926. A2h AMI set keyboard controller pins 22 and 23 low
  6927. A2h C&T turn on turbo LED
  6928. A3h Compaq Enable system speed control
  6929. A3h AMI set keyboard controller pins 22 and 23 high
  6930. A3h C&T turn off turbo LED
  6931. A4h MCA check if password installed
  6932. returns PORT 0060h code F1h if no password, FAh if installed
  6933. A4h Compaq Toggle speed
  6934. A4h AMI set internal system speed flag to low
  6935. A5h MCA load password
  6936. write successive scan codes to PORT 0060h, terminate with 00h
  6937. A5h AMI set internal system speed flag to high
  6938. A5h Compaq Special read. the 8042 places the real values of port 2
  6939. except for bits 4 and 5 wich are given a new definition in
  6940. the output buffer. No output buffer full is generated.
  6941. if bit 5 = 0, a 9-bit keyboard is in use
  6942. if bit 5 = 1, an 11-bit keyboard is in use
  6943. if bit 4 = 0, output-buff-full interrupt disabled
  6944. if bit 4 = 1, output-buffer-full interrupt enabled
  6945. A6h MCA check password
  6946. A6h AMI get internal system speed flag on PORT 0060h
  6947. A6h Compaq unknown speedfunction ??
  6948. A7h MCA disable mouse port
  6949. A7h AMI set internal flag indicating bad write cache
  6950. A8h MCA enable mouse port
  6951. A8h AMI set internal flag indicating good write cache
  6952. A9h MCA test mouse port, return test result on PORT 0060h (see #P0406)
  6953. A9h AMI get internal flag indicating cache OK to PORT 0060h
  6954. AAh sngl initiate self-test. will return 55h to data port if self-test
  6955. successful, FCh if failed
  6956. AAh Compaq initializes ports 1 and 2, disables the keyboard and clears
  6957. the buffer pointers. It then places 55h in the output buffer.
  6958. ABh sngl initiate interface test, return result value on PORT 0060h
  6959. (see #P0406)
  6960. ACh read diagnostic dump. the contents of the 804x RAM, output port,
  6961. input port, status word are sent to PORT 0060h in scan-code
  6962. format; Chips&Technologies 8042's append "CHIPS Vxxx" where
  6963. "xxx" is the controller version number
  6964. ADh sngl disable keyboard (sets bit 4 of commmand byte)
  6965. ADh Vectra HP Vectra diagnostic dump
  6966. AEh sngl enable keyboard (resets bit 4 of commmand byte)
  6967. AFh AWARD Enhanced Command: read keyboard version
  6968. AFh AMI set extended controller RAM
  6969. write address to PORT 0060h, wait for controller ready, then
  6970. write value to PORT 0060h
  6971. B1h AMI set keyboard controller P11 line low
  6972. B2h AMI set keyboard controller P12 line low
  6973. B3h AMI set keyboard controller P13 line low
  6974. B4h AMI set keyboard controller P22 line low
  6975. B5h AMI set keyboard controller P23 line low
  6976. B8h AMI set keyboard controller P10 line high
  6977. B9h AMI set keyboard controller P11 line high
  6978. BAh AMI set keyboard controller P12 line high
  6979. BBh AMI set keyboard controller P13 line high
  6980. BCh AMI set keyboard controller P22 line high
  6981. BDh AMI set keyboard controller P23 line high
  6982. C0h read read input port and place on PORT 0060h
  6983. bit 7 keyboard NOT locked
  6984. bit 6 =0 first video is CGA
  6985. =1 first video is MDA
  6986. bit 5 =0 factory testmode
  6987. =1 normal
  6988. bit 4 =0 256KB RAM, 1=512KB
  6989. bit 5,3-0 are used in Intel chipset 386sx machines with
  6990. AMI/Phoenix BIOSes for BIOS specific hardware settings
  6991. bit 2 (MCA) no keyboard power
  6992. bit 1 (MCA) current mouse serial data input state
  6993. bit 0 (MCA) current keyboard serial input state
  6994. C0h Compaq places status of input port in output buffer. Use this
  6995. command only when the output buffer is empty
  6996. C1h MCA Enhanced Command: poll input port Low nibble, continuously
  6997. place in PORT 0064h bits 7-4 until next command
  6998. C2h MCA Enhanced Command: poll input port High nibble, continuously
  6999. place in PORT 0064h bits 7-4 until next command
  7000. C8h AMI unblock keyboard controller lines P22 and P23
  7001. C9h AMI block keyboard controller lines P22 and P23
  7002. CAh AMI read keyboard mode, return in 0060 bit 0
  7003. (bit clear if ISA mode, set if PS/2 mode)
  7004. CBh AMI set keyboard mode (write back mode byte returned by CAh,
  7005. modifying only bit 0)
  7006. CCh AMI ??? (used by AMI BIOS v1.00.12.AX1T APM code)
  7007. D0h read read output port and place on PORT 0060h (see #P0405)
  7008. D0h Compaq places byte in output port in output buffer. Use this command
  7009. only when the output buffer is empty
  7010. D1h double write output port. The next byte written to PORT 0060h will
  7011. be written to the 804x output port; the original IBM AT and
  7012. many compatibles such as the OPTi 82C392 use bit 1 of the
  7013. output port to control the A20 gate.
  7014. Important: bit 0 (system reset) should always be set here, as
  7015. the system may hang constantly; use pulse output port
  7016. (FEh) instead.
  7017. D1h Compaq the system speed bits are not set by this command use
  7018. commands A1-A6 (!) for speed functions.
  7019. D2h MCA Enhanced Command: write keyboard output buffer
  7020. D3h MCA Enhanced Command: write pointing device out.buf.
  7021. D4h MCA write to mouse/pointing device instead of to keyboard; this
  7022. controller command must precede every PORT 0060h command
  7023. directed to the mouse, otherwise it will be sent to the
  7024. keyboard
  7025. D4h AWARD Enhanced Command: write to auxiliary device
  7026. DDh sngl disable address line A20 (HP Vectra only???)
  7027. default in Real Mode
  7028. DFh sngl enable address line A20 (HP Vectra only???)
  7029. E0h read read test inputs, and place in PORT 0060h
  7030. bit0 = kbd clock, bit1 = kbd data
  7031. Exxx AWARD Enhanced Command: active output port
  7032. E5h GoldStar set turbo LED color to yellow (turbo off)
  7033. E7h GoldStar set turbo LED color to yellow (turbo off)
  7034. E8h GoldStar set turbo LED color to green (turbo on)
  7035. EAh GoldStar set turbo LED color to green (turbo on)
  7036. EDh double this is a two part command to control the state of the
  7037. NumLock, CpasLock and ScrollLock LEDs
  7038. The second byte contains the state to set LEDs.
  7039. bit 7-3 reserved. should be set to 0.
  7040. bit 2 = 0 Caps Lock LED off
  7041. bit 1 = 0 Num Lock LED off
  7042. bit 0 = 0 Scroll Lock LED off
  7043. F0-FF sngl pulse output port low for 6 microseconds.
  7044. bits 0-3 contain the mask for the bits to be pulsed. A bit is
  7045. pulsed if its mask bit is zero
  7046. bit0=system reset. Don't set to zero. Pulse only!
  7047. Note: keyboard controllers are widely different from each other. You
  7048. cannot generally exchange them between different machines.
  7049. (Award) Derived from Award's Enhanced KB controller advertising sheet.
  7050. (Compaq) Derived from the Compaq Deskpro 386 Tech. Ref. Guide.
  7051. (Table P0402)
  7052. Values for Chips&Technologies extension commands:
  7053. 00h return ID - returns A6h for a C&T controller, part # N93N8042/A
  7054. 02h write input port
  7055. next data byte to PORT 0060h is written to the controller's input port
  7056. Warning: the system must be designed to support output devices
  7057. connected to the input port to avoid potential damage
  7058. 04h select turbo switch input
  7059. next byte selects input:
  7060. bit 7: switch polarity
  7061. (=0 input low = high speed, =1 input low = low speed)
  7062. bits 6-0: one bit set selects corresponding bit in Port1 as turbo
  7063. 05h select turbo LED output
  7064. next byte selects output:
  7065. bit 7: LED polarity (=0 output low=LED on, =1 output low=LED off)
  7066. bit 6: LED port (=0 Port1, =1 Port2)
  7067. bits 5-0: one bit set selects corresponding bit in Port1/Port2 as
  7068. LED output
  7069. Note: these commands and any arguments are sent to PORT 0060h after writing
  7070. command A1h to PORT 0064h
  7071. SeeAlso: #P0401
  7072. Bitfields for Compaq keyboard command byte:
  7073. Bit(s) Description (Table P0403)
  7074. 7 reserved
  7075. 6 =1 convert KB codes to 8086 scan codes
  7076. 5 =0 use 11-bit codes, 1=use 8086 codes
  7077. 4 =0 enable keyboard, 1=disable keyboard
  7078. 3 ignore security lock state
  7079. 2 this bit goes into bit2 status reg.
  7080. 1 reserved (0)
  7081. 0 generate interrupt (IRQ1) when output buffer full
  7082. SeeAlso: #P0404
  7083. Bitfields for keyboard command byte (alternate description):
  7084. Bit(s) Description (Table P0404)
  7085. 7 reserved (0)
  7086. 6 IBM PC compatibility mode
  7087. 5 IBM PC mode
  7088. no parity, no stop bits, no translation
  7089. (PS/2) force mouse clock low
  7090. 4 disable keyboard (clock)
  7091. 3 (AT) inhibit override -- ignore keyboard lock switch
  7092. (PS/2) reserved
  7093. 2 system flag
  7094. 1 (AT) reserved (0)
  7095. (PS/2) enable mouse output buffer full interrupt (IRQ12)
  7096. 0 enable output buffer full interrupt (IRQ1)
  7097. SeeAlso: #P0403,#P0405
  7098. Bitfields for keyboard controller output port:
  7099. Bit(s) Description (Table P0405)
  7100. 7 keyboard data (output)
  7101. 6 keyboard clock (output)
  7102. 5 (AT) =0 input buffer empty
  7103. (MCA) outptu buffer full with mouse byte (connected to IRQ12)
  7104. 4 output buffer full with keyboard byte (connected to IRQ1)
  7105. 3 (MCA) mouse data (output)
  7106. 2 (MCA) mouse clock (output)
  7107. used by Intel 386sx Chipset with AMI/Phoenix BIOSes for BIOS-specific
  7108. configuration of turbo switch
  7109. 1 gate address A20
  7110. 0 system reset
  7111. Note: bit 0 (system reset) should always be set when writing the output
  7112. port, as the system may hang constantly; use pulse output port
  7113. (command FEh) instead.
  7114. SeeAlso: #P0404
  7115. (Table P0406)
  7116. Values for keyboard/mouse test result on PORT 0060h:
  7117. 00h no error
  7118. 01h keyboard clock line stuck low
  7119. 02h keyboard clock line stuck high
  7120. 03h keyboard data line is stuck low
  7121. 04h keyboard data line stuck high
  7122. 05h (Compaq only) diagnostic feature
  7123. SeeAlso: #P0401
  7124. (Table P0407)
  7125. Values for keyboard controller RAM location:
  7126. 00h command byte (see #P0403,#P0404)
  7127. ---MCA systems---
  7128. 13h security on
  7129. nonzero if password enabled
  7130. 14h security off
  7131. nonzero if password matched
  7132. 16h password discard scancode 1
  7133. 17h password discard scancode 2
  7134. Note: make codes matching either discard scancode are ignored during password
  7135. entry
  7136. ----------P0065------------------------------
  7137. PORT 0065 - AT&T 6300+ - HIGH/LOW CHIP SELECT
  7138. ----------P0065------------------------------
  7139. PORT 0065 - ???
  7140. 0065 RW ???
  7141. bit 2: A20 gate control (set = A20 enabled, clear = disabled)
  7142. ----------P00660067--------------------------
  7143. PORT 0066-0067 - AT&T 6300+ - SYSTEM CONFIGURATION SWITCHES
  7144. ----------P0066------------------------------
  7145. PORT 0066 - IBM 4717 Magnetic Stripe Reader - ???
  7146. SeeAlso: PORT 0069h"Magnetic Stripe"
  7147. ----------P0068------------------------------
  7148. PORT 0068 - C&T CHIPSETS - TURBO MODE CONTROL
  7149. Note: on Micronics 386-25/386-33/486-25 motherboards, setting this port to
  7150. 00h enables full speed; setting it to C0h slows the system down by
  7151. a factor corresponding to the value programmed into the EISA
  7152. interval timer 2 at ports 004Ah and 004Bh
  7153. --------K-P0068006F--------------------------
  7154. PORT 0068-006F - HP Vectra Human Interface Link
  7155. SeeAlso: PORT 0060h"KEYBOARD"
  7156. 0068 -W (HP-Vectra) control buffer (HP commands) (see #P0408)
  7157. 0069 R- (HP-Vectra) SVC (keyboard request SerViCe port)
  7158. 006A -W (HP-Vectra) Acknowledge (clear processing, done)
  7159. 006C-006F HP-HIL (Human Interface Link = async. serial inputs 0-7)
  7160. (Table P0408)
  7161. Values for HP Vectra control buffer command code:
  7162. 00h-54h insert standard key make code into 8041 scancode buf
  7163. 55h-77h insert HP key make code into 8041 scancode buffer
  7164. 7Ah pass through next data byte
  7165. 7Bh set RAM Switch to 0
  7166. 7Ch set RAM Switch to 1 (default)
  7167. 7Dh set CRT Switch to 0
  7168. 7Eh set CRT Switch to 1 (default)
  7169. 7Fh reserved
  7170. 80h-D4h insert standard key break code into scancode buffer
  7171. D5h-F7h insert HP key break code into scancode buffer
  7172. F8h enable AutoPoll
  7173. F9h disable AutoPoll
  7174. FAh-FEh reserved
  7175. FFh keyboard overrun
  7176. ----------P0069------------------------------
  7177. PORT 0069 - IBM 4717 Magnetic Stripe Reader - ???
  7178. SeeAlso: PORT 0066h"Magnetic Stripe"
  7179. ----------P006B006F--------------------------
  7180. PORT 006B-006F - SSGA CONTROL REGISTERS
  7181. 006B ?? RAM enable/remap
  7182. 006C ?? undocumented
  7183. 006D ?? undocumented
  7184. 006E ?? undocumented
  7185. 006F ?? undocumented
  7186. ----------P0070007F--------------------------
  7187. PORT 0070-007F - CMOS RAM/RTC (REAL TIME CLOCK)
  7188. Note: the real-time clock may be either a discrete MC146814, MC146818, or
  7189. an emulation thereof built into the motherboard chipset
  7190. SeeAlso: PORT 00A0h"XT"
  7191. 0070 -W CMOS RAM index register port (ISA, EISA)
  7192. bit 7 = 1 NMI disabled from reaching CPU
  7193. = 0 NMI enabled
  7194. bit 6-0 CMOS RAM index
  7195. (64 bytes in early systems, now usually 128 bytes)
  7196. Note: any write to PORT 0070h should be followed by an action to
  7197. PORT 0071h or the RTC wil be left in an unknown state.
  7198. 0071 RW CMOS RAM data port (ISA, EISA) (see #P0409)
  7199. (Table P0409)
  7200. Values for Real-Time Clock register number (see also CMOS.LST):
  7201. 00h-0Dh clock registers
  7202. 0Eh diagnostics status byte
  7203. 0Fh shutdown status byte
  7204. 10h diskette drive type for A: and B:
  7205. 11h reserved / IBM fixed disk / setup options
  7206. 12h fixed disk drive type for drive 0 and drive 1
  7207. 13h reserved / AMI Extended CMOS setup (AMI Hi-Flex BIOS)
  7208. 14h equipment byte
  7209. 15h LSB of system base memory in Kb
  7210. 16h MSB of system base memory in Kb
  7211. 17h LSB of total extended memory in Kb
  7212. 18h MSB of total extended memory in Kb
  7213. 19h drive C extension byte
  7214. 1Ah drive D extension byte
  7215. 1Bh-2Dh reserved
  7216. 20h-27h commonly used for first user-configurable drive type
  7217. 2Eh CMOS MSB checksum over 10-2D
  7218. 2Fh CMOS LSB checksum over 10-2D
  7219. 30h LSB of extended memory found above 1Mb at POST
  7220. 31h MSB of extended memory found above 1Mb at POST
  7221. 32h date century in BCD
  7222. 33h information flags
  7223. 34h-3Fh reserved
  7224. 35h-3Ch commonly used for second user-configurable drive type
  7225. 3Dh-3Eh word to 82335 MCR memory config register at [22] (Phoenix)
  7226. 42h-4Ch AMI 1990 Hyundai super-NB368S notebook
  7227. ???
  7228. 54h-57h AMI 1990 Hyundai super-NB368S notebook
  7229. ???
  7230. 5Ch-5Dh AMI 1990 Hyundai super-NB368S notebook
  7231. ???
  7232. 60h-61h AMI 1990 Hyundai super-NB368S notebook
  7233. ???
  7234. ----------P0072------------------------------
  7235. PORT 0072 - Chips&Technologies 82C100 - NMI CONTROL
  7236. !!!chips\82c100.pdf p.41
  7237. ----------P00720075--------------------------
  7238. PORT 0072-0075 - AMD-645 Peripheral Bus Controller - ACCESS TO EXTENDED CMOS
  7239. SeeAlso: PORT 0070h
  7240. 0072 RW CMOS memory address, region 2 (256 bytes)
  7241. 0073 RW CMOS memory data, region 2
  7242. 0074 RW CMOS memory address, region 3 (256 bytes)
  7243. 0075 RW CMOS memory data, region 3
  7244. Note: on the AMD-645, ports 0072h and 0073h allow access to a full 256 bytes
  7245. of RAM, including the standard 128 bytes available through ports
  7246. 0070h and 0071h
  7247. ----------P0073------------------------------
  7248. PORT 0073 - Intel 82378IB ("Saturn"/"Neptune" chipsets) - MBOARD CONFIGURATION
  7249. SeeAlso: PORT 0075h
  7250. 0073 RW ???
  7251. bit 7: ???
  7252. bit 6: disable ROM shadowing
  7253. bit 5: ??? (related to IDE controller)
  7254. bit 4: ???
  7255. bit 3: ???
  7256. ----------P00740076--------------------------
  7257. PORT 0074-0076 - SECONDARY CMOS (Compaq), NVRAM (IBM) ACCESS
  7258. Note: NVRAM may be 2K, 8K, or 16K
  7259. SeeAlso: PORT 0070h-007Fh,CMOS.LST
  7260. 0074 -W secondary CMOS RAM (IBM NVRAM) index, low byte
  7261. 0075 -W secondary CMOS RAM (IBM NVRAM) index, high (in bits 2-0)
  7262. 0076 RW secondary CMOS RAM (IBM NVRAM) data byte
  7263. ----------P0075------------------------------
  7264. PORT 0075 - Intel 82378IB ("Saturn"/"Neptune" chipsets) - MBOARD CONFIGURATION
  7265. SeeAlso: PORT 0073h,PORT 0078h"82378IB"
  7266. 0075 R- ???
  7267. bits 3-2: external bus speed
  7268. 00 50 MHz
  7269. 01 66 MHz
  7270. 10 60 MHz
  7271. 11 40 MHz
  7272. ----------P0078------------------------------
  7273. PORT 0078 - HP-Vectra - HARD RESET: NMI ENABLE/DISABLE
  7274. 0078 ?W NMI enable/disable
  7275. bit 7 = 0 disable & clear hard reset from HP-HIL controller
  7276. = 1 enable hard reset from HP-HIL controller chip
  7277. bit 6-0 reserved
  7278. ----------P0078------------------------------
  7279. PORT 0078 - Intel 82378IB ("Saturn"/"Neptune" chipsets) - BIOS COUNT-DOWN TIMER
  7280. Notes: the BIOS uses this port for certain fine timings; presumably it is
  7281. independent of processor speed (it appears to decrement at 1 MHz)
  7282. the address at which this port appears may be set via the 82378's
  7283. PCI configuration space word at offset 0080h (see #01064), or the
  7284. timer may be disabled entirely
  7285. SeeAlso: PORT 0075h
  7286. 0078w -W set count-down timer
  7287. 0078w R- get current count (timer stops when it reaches 0000h)
  7288. ----------P0078007F--------------------------
  7289. PORT 0078-007F - PC radio by CoZet Info Systems
  7290. Range: The I/O address range is dipswitch selectable from:
  7291. 038-03F and 0B0-0BF
  7292. 078-07F and 0F0-0FF
  7293. 138-13F and 1B0-1BF
  7294. 178-17F and 1F0-1FF
  7295. 238-23F and 2B0-2BF
  7296. 278-27F and 2F0-2FF
  7297. 338-33F and 3B0-3BF
  7298. 378-37F and 3F0-3FF
  7299. Note: All of these addresses show a readout of FFh in initial state.
  7300. Once started, all of the addresses show FBh, whatever might happen.
  7301. ----------P007C007D--------------------------
  7302. PORT 007C-007D - HP-Vectra - PIC 3 - PROGRAMMABLE INTERRUPT CONTROLLER (8259)
  7303. Notes: cascaded to first controller.
  7304. used for keyboard and input device interface.
  7305. SeeAlso: PORT 0020h-0021h,INT 68"Vectra",INT 6E"Vectra"
  7306. 007C RW HP-Vectra PIC 3 see at 0020 PIC 1
  7307. 007D RW HP-Vectra PIC 3 see at 0021 PIC 1
  7308. ----------P007E------------------------------
  7309. PORT 007E - Chips&Technologies 82C100/110 - NMI STATUS
  7310. SeeAlso: PORT 0072h"82C100",PORT 007Fh"82C100"
  7311. !!!chips\82c100.pdf p.42
  7312. !!!chips\82c110.pdf p.39
  7313. ----------P007F------------------------------
  7314. PORT 007F - Chips&Technologies 82C100/110 - POWER CONTROL AND RESET
  7315. SeeAlso: PORT 0072h"82C100",PORT 007Eh"82C100"
  7316. ----------P0080------------------------------
  7317. PORT 0080 - MANUFACTURING DIAGNOSTICS PORT
  7318. Note: sometimes used for a POST hex display
  7319. 0080 -W Manufacturing Diagnostics port
  7320. 0080 R- ???
  7321. (Table P0410)
  7322. Values for AMI BIOS diagnostics codes:
  7323. 00h system boot completed, control passed to INT 19 bootstrap loader
  7324. 01h register test
  7325. 02h video initialization; NMIs disabled
  7326. 03h power-on delay complete
  7327. 04h pre-keyboard-test initializations complete
  7328. 05h soft-reset/power-on setting determined
  7329. 06h ROM enabled
  7330. 07h ROM BIOS checksum test passed
  7331. 08h keyboard BAT command issued
  7332. 09h keyboard controller BAT result verified
  7333. 0Ah keyboard controller command code issued
  7334. 0Bh keyboard controller command byte written
  7335. 0Ch keyboard controller pins 23/24 blocked and unblocked
  7336. 0Dh keyboard controller NOP processing in progress
  7337. 0Eh CMOS RAM shutdown register read/write test passed
  7338. 0Fh CMOS RAM checksum calculation complete
  7339. 10h CMOS RAM initialization complete
  7340. 11h CMOS RAM status register initialized
  7341. 12h DMA controllers 1/2 and interrupt controllers 1/2 disabled
  7342. 13h video display disabled, port B initialized
  7343. 14h chipset initialization, auto memory detection
  7344. 15h 8254 channel 2 test half complete
  7345. 16h 8254 channel 2 test completed
  7346. 17h 8254 channel 1 test completed
  7347. 18h 8254 channel 0 test completed
  7348. 19h memory refresh started
  7349. 1Ah memory refresh line is toggling
  7350. 1Bh memory refresh test completed
  7351. 20h base 64K memory test started
  7352. 21h address line test passed
  7353. 22h parity toggle complete
  7354. 23h base 64K sequential read/write test passed
  7355. 24h pre-interrupt-vector-initialization configuration complete
  7356. 25h interrupt vectors initialized
  7357. 26h 8042 input port read
  7358. 27h global data initialization complete
  7359. 28h post-interrupt-vector-initialization initialization complete
  7360. 29h monochrome mode set
  7361. 2Ah color mode set
  7362. 2Bh parity toggle on option video ROM test complete
  7363. 2Ch initialization before video ROM control complete
  7364. 2Dh video ROM check complete
  7365. 2Eh !!!
  7366. A9h returned from E0000h adapter ROM
  7367. AAh final initializations after adapter ROM initializations complete
  7368. SeeAlso: #P0411,#P0412,#P0413
  7369. (Table P0411)
  7370. Values for AWARD (non-PnP) diagnostic code:
  7371. 01h Processor Test 1
  7372. 02h Processor Test 2
  7373. 03h initialize chips
  7374. 04h test memory refresh toggle
  7375. 05h blank video, initialize keyboard
  7376. 06h reserved
  7377. 07h test CMOS and CMOS batter status
  7378. 08h setup low memory
  7379. 09h early cache initialization
  7380. 0Ah interrupt vector initialization
  7381. 0Bh test CMOS RAM checksum
  7382. 0Ch initialize keyboard
  7383. 0Dh initialize video interface
  7384. 0Eh test video memory
  7385. 0Fh test DMA channel 0
  7386. 10h test DMA channel 1
  7387. 11h test DMA page registers
  7388. 12h reserved
  7389. 13h reserved
  7390. 14h test timer channel 2
  7391. 15h test master PIC mask bits
  7392. 16h test slave PIC mask bits
  7393. 17h test 8259 stuck interrupt bits
  7394. 18h test 8259 interrupt functionality
  7395. 19h test for stuck NMI
  7396. 1Ah display CPU clock
  7397. 1Bh-1Eh reserved
  7398. 1Fh set EISA mode
  7399. 20h enable Slot 0 (system board)
  7400. 21h-2Fh enable Slots 1-15
  7401. 30h get base and extended memory size
  7402. 31h test base and extended memory
  7403. 32h test EISA memory
  7404. 33h-3Bh reserved
  7405. 3Ch set allow-setup flag
  7406. 3Dh initialize / install mouse
  7407. 3Eh initialize cache controller
  7408. 3Fh reserved
  7409. 41h initialize floppy controller and drives
  7410. 42h initialize hard disk controller and drives
  7411. 43h detect / initialize serial and parallel ports
  7412. 44h reserved
  7413. 45h initialize math coprocessor
  7414. 46h-4Dh reserved
  7415. 4Eh Manufacturing Post loop / or / display any error messages
  7416. 4Fh ask for password, if enabled
  7417. 50h update CMOS RAM
  7418. 51h pre-boot enable of parity, NMI, cache
  7419. 52h initialize option ROMs
  7420. 53h initialize BIOS time from RTC
  7421. 60h setup boot-sector protection
  7422. 61h set boot CPU speed
  7423. 62h setup NumLock
  7424. 63h attempt to boot via INT 19h
  7425. B0h spurious interrupt while in protected mode
  7426. B1h unclaimed NMI
  7427. BEh chipset default initialization
  7428. BFh chipset initialization
  7429. C0h turn off chipset cache
  7430. C1h check on-board memory size
  7431. C5h early shadow-RAM enable for faster boot
  7432. C6h detect external cache size
  7433. E1h-EFh setup utility pages 1-15
  7434. FFh system booting operating system
  7435. SeeAlso: #P0410,#P0412,#P0413
  7436. (Table P0412)
  7437. Values for AWARD (Plug-and-Play) POST code:
  7438. 01h-02h reserved
  7439. 03h initialize EISA register (if applicable)
  7440. 04h reserved
  7441. 05h keyboard controller test, initialize keyboard
  7442. 06h reserved
  7443. 07h test CMOS and CMOS batter status
  7444. 09h program Cyrix CPU configuration; OEM-specific cache initialization
  7445. 0Ah initialize interrupt vectors; early power management initialization
  7446. 0Bh check CMOS RAM; assign I/O and memory to PCI devices
  7447. 0Ch initialize BIOS data area
  7448. 0Dh early chipset setup; measure CPU speed; video initialization
  7449. 0Eh display Award logo, OEM-specific sign-on messages
  7450. 0Fh test DMA channel 0
  7451. 10h test DMA channel 1
  7452. 11h test DMA page registers
  7453. 12h-13h reserved
  7454. 14h test timer channel 2
  7455. 15h test master PIC mask bits
  7456. 16h test slave PIC mask bits
  7457. 17h reserved
  7458. 19h test 8259 functionality
  7459. 1Ah-1Dh reserved
  7460. 1Eh EISA initialization (if applicable and EISA NVRAM checksum is good)
  7461. 1Fh-29h reserved
  7462. 30h get base and extended memory size
  7463. 31h test base and extended memory
  7464. 32h program on-board serial/parallel ports, floppy controller
  7465. 33h-3Bh reserved
  7466. 3Ch set allow-setup flag
  7467. 3Dh initialize keyboard, install PS/2 mouse if attached
  7468. 3Eh try to turn on L2 cache
  7469. 3Fh-40h reserved
  7470. 41h initialize floppy controller, drives
  7471. 42h initialize hard disk controller, drives
  7472. 43h initialize serial/parallel ports (if PnP)
  7473. 44h reserved
  7474. 45h initialize math coprocessor
  7475. 46h-4Dh reserved
  7476. 4Eh display any error messages
  7477. 4Fh ask for password, if required
  7478. 50h update CMOS RAM
  7479. 51h reserved
  7480. 52h initialize expansion ROMs, PCI, PnP, shadow RAM, power management
  7481. 53h if not PnP, initialize serial/parallel ports; set BIOS time
  7482. 54h-5Fh reserved
  7483. 60h set boot-sector protection
  7484. 61h turn on L2 cache; set boot speed; final chipset/PM initialization
  7485. 62h setup daylight savings time; set NumLock, typematic
  7486. 63h update ESCD (PnP only) if changes; boot system via INT 19h
  7487. B0h spurious interrupt while in protected mode
  7488. B1h unclaimed NMI
  7489. BEh chipset default initialization
  7490. BFh chipset initialization
  7491. C0h turn off chipset cache, init DMA/PIC/timer/RTC with default values
  7492. C1h check on-board DRAM and cache size
  7493. C3h test first 256K DRAM, expand compressed BIOS image into DRAM
  7494. C5h early shadow-RAM enable for faster boot
  7495. FFh system is booting operating system
  7496. SeeAlso: #P0410,#P0411,#P0413
  7497. (Table P0413)
  7498. Values for Chips&Technologies 82C100/82C235 POST code:
  7499. 01h flags register failed
  7500. 02h a CPU register failed
  7501. 03h incorrect ROM checksum
  7502. 04h DMA controller failed
  7503. 05h system timer failed
  7504. 06h first 64K of RAM failed address test
  7505. 07h first 64K of RAM failed RAM test
  7506. 08h interrupt controller failed
  7507. 09h "Hot Interrupt" occurred
  7508. 0Ah reserved
  7509. 0Bh CPU still in protected mode
  7510. 0Ch DMA page register failed
  7511. 0Dh no RAM refresh
  7512. 0Eh no response from keyboard controller
  7513. 0Fh unable to enter protected mode
  7514. 10h GDT or IDT register failed
  7515. 11h LDT register failed
  7516. 12h task register failed
  7517. 13h LSL instruction failed
  7518. 14h LAR instruction failed
  7519. 15h VERR or VERW instruction failed
  7520. 16h keyboard controller A20 gate failed
  7521. 17h exception failed, or shutduwon on unexpected exception
  7522. 18h shutdown during memory test
  7523. 19h checksum error in copyright string
  7524. 1Ah BMS checksum error
  7525. ---POST progress codes---
  7526. 50h initialize hardware
  7527. 51h initialize timer
  7528. 52h initialize DMA controller
  7529. 53h initialize 8259
  7530. 54h initialize chipset
  7531. 55h reserved
  7532. 56h first entry into protected mode
  7533. 57h memory-chip sizing
  7534. 58h reserved
  7535. 59h first exit from protected mode
  7536. 5Ah system-board memory size determination
  7537. 5Bh shadow RAM relocation
  7538. 5Ch configure possible EMS
  7539. 5Dh reserved
  7540. 5Eh re-test lowest 64K of RAM
  7541. 5Fh test shadow RAM
  7542. 60h test CMOS RAM
  7543. 61h test video
  7544. 63h test protected mode interrupts
  7545. 64h test A20
  7546. 65h memory address line tests
  7547. 66h test base memory
  7548. 67h test extended memory
  7549. 68h test timer interrupt
  7550. 69h test real-time clock
  7551. 6Ah test keyboard controller
  7552. 6Bh test 80287
  7553. 6Ch test RS232
  7554. 6Dh test parallel port
  7555. 6Eh reserved
  7556. 6Fh test floppy disk controller
  7557. 70h test fixed disk controller
  7558. 71h test keylock
  7559. 72h test mouse / pointing device
  7560. 73h-8Fh reserved
  7561. 90h setup RAM
  7562. 91h determine CPU speed
  7563. 92h configuration check
  7564. 93h initialize BIOS
  7565. 94h POD bootstrap
  7566. 95h reset ICs
  7567. 96h setup cache controller
  7568. SeeAlso: #P0410,#P0411,#P0412
  7569. (Table P0414)
  7570. Values for Intel SE440BX ("Seattle") motherboard POST codes:
  7571. 02h verify real mode
  7572. 03h disable NMI
  7573. 04h CPU type determination
  7574. 06h system hardware initialization
  7575. 08h chipset initialization (initial POST values)
  7576. 09h set IN-POST flag
  7577. 0Ah CPU register initialization
  7578. 0Bh enable CPU cache
  7579. 0Ch cache initialization (initial POST values)
  7580. 0Eh I/O component initialization
  7581. 0Fh local-bus IDE initialization
  7582. 10h power management initialization
  7583. 11h load alternate rgisters with initial POST values
  7584. 12h warm boot: restore CPU control word
  7585. 13h PCI bus-mastering device initialization
  7586. 14h keyboard controller initialization
  7587. 16h checksum BIOS ROM
  7588. 17h cache initialization (before memory autosizing)
  7589. 18h initialize 8254 timer
  7590. 1Ah 8237 DMA controller initialization
  7591. 1Ch programmable interrupt controller reset
  7592. 20h DRAM refresh test
  7593. 22h keyboard controller test
  7594. 24h ES register set to 4G flat
  7595. 26h A20 enabled
  7596. 28h DRAM autosizing
  7597. 29h POST memory manager initialization
  7598. 2Ah 512K base RAM cleared
  7599. 2Ch RAM failure on address line xxxx
  7600. 2Eh RAM failure on data bits xxxx of memory bus low byte
  7601. 2Fh cache enabled before system BIOS shadowing
  7602. 30h RAM failure on data bits xxxx of memory bus high byte
  7603. 32h CPU bus-clock frequency test
  7604. 33h POST dispatch manager initialization
  7605. 34h CMOS RAM test
  7606. 35h alternate chipset register initialization
  7607. 36h warm start shutdown
  7608. 37h chipset reinitialization (motherboard)
  7609. 38h system BIOS ROM shadowing
  7610. 39h cache reinitialization (motherboard)
  7611. 3Ah cache autosizing
  7612. 3Ch advanced chipset register configuration
  7613. 3Dh load alternate registers with CMOS values
  7614. 40h initial CPU speed set
  7615. 42h interrupt vector initialization
  7616. 44h BIOS interrupt initialization
  7617. 45h POST device initialization
  7618. 46h ROM copyright notice check
  7619. 47h PCI option ROM manager initialization
  7620. 48h check video configuration against CMOS RAM data
  7621. 49h PCI bus and device initialization
  7622. 4Ah video adapter initialization
  7623. 4Bh display QuietBoot screen
  7624. 4Ch vidoe BIOS ROM shadowing
  7625. 4Eh display BIOS copyright notice
  7626. 50h display CPU type and speed
  7627. 51h EISA motherboard initialization
  7628. 52h keyboard test
  7629. 54h set key click (if enabled)
  7630. 56h enable keyboard
  7631. 58h test for unexpected interrupts
  7632. 59h POST display service initialization
  7633. 5Ah display prompt "Press F2 to enter SETUP"
  7634. 5Bh disable CPU cache
  7635. 5Ch RAM test (512K-640K)
  7636. 60h extended memory test
  7637. 62h extended memory address line test
  7638. 64h jump to UserPatch1
  7639. 66h advanced cache register configuration
  7640. 67h multiprocessor APIC initialization
  7641. 68h enable L1 and L2 caches
  7642. 69h SMM area setup
  7643. 6Ah display L2 cache size
  7644. 6Ch display shadow-area message
  7645. 6Eh display possible UMB recovery high address
  7646. 70h display error messages
  7647. 72h configuration error check
  7648. 74h real-time clock test
  7649. 76h keyboard-error check
  7650. 7Ah test for key lock on
  7651. 7Ch hardware interrupt vector setup
  7652. 7Eh coprocessor initialization (if present)
  7653. 80h disable onboard SuperI/O ports and IRQs
  7654. 81h late POST device initialization
  7655. 82h detect/install external serial ports
  7656. 83h non-MCD IDE controller configuration
  7657. 84h detect/install external parallel ports
  7658. 85h PC-compatible PnP ISA device initialization
  7659. 86h onboard I/O port reinitialization
  7660. 87h configure motherboard configurable devices
  7661. 88h BIOS data area initialization
  7662. 89h enable NMI
  7663. 8Ah extended BIOS data area initialization
  7664. 8Bh test/initialize PS/2 mouse
  7665. 8Ch diskette controller initialization
  7666. 8Fh determine number of ATA drives
  7667. 90h hard-disk controller initialization
  7668. 91h local-bus hard-disk controller initialization
  7669. 92h jump to UserPatch2
  7670. 93h build MPTABLE for multiprocessor boards
  7671. 94h disable A20 (Release 5.1 and earlier)
  7672. 95h install CD-ROM for boot
  7673. 96h clear ES 4G segment register
  7674. 97h multiprocessor table fixup
  7675. 98h option ROM search
  7676. 99h check for SMART drive
  7677. 9Ah option ROM shadowing
  7678. 9Ch power management setup
  7679. 9Eh enable hardware interrupts
  7680. 9Fh determine number of ATA and SCSI devices
  7681. A0h set time of day
  7682. A2h check key lock
  7683. A4h typematic rate initialization
  7684. A8h erase F2 prompt
  7685. AAh test for F2 keystroke
  7686. ACh enter SETUP
  7687. AEh clear IN-POST flag
  7688. B0h check for errors
  7689. B2h preparing to boot OS - POST complete
  7690. B4h short beep before booting
  7691. B5h terminate QuietBoot
  7692. B6h password check (optional)
  7693. B8h clear global descriptor table
  7694. B9h clean up all graphics
  7695. BAh DMI parameter initialization
  7696. BBh PnP option ROM initialization
  7697. BCh clear parity checkers
  7698. BDh display MultiBoot menu
  7699. BEh clear screen (optional)
  7700. BFh check virus and backup reminders
  7701. C0h INT 19 boot attempt
  7702. C1h POST Error Manager (PEM) initialization
  7703. C2h error logging initialization
  7704. C3h error display function initialization
  7705. C4h system error handler initialization
  7706. E0h chipset initialization
  7707. E1h bridge initialization
  7708. E2h processor initialization
  7709. E3h system timer initialization
  7710. E4h system I/O initialization
  7711. E5h check force recovery boot
  7712. E6h BIOS ROM checksumming
  7713. E7h go to BIOS
  7714. E8h set huge segment
  7715. E9h multiprocessor initialization
  7716. EAh OEM special code initialization
  7717. EBh PIC and DMA initialization
  7718. ECh memory type initialization
  7719. EDh memory size initialization
  7720. EEh boot block shadowing
  7721. EFh system memory test
  7722. F0h interrupt vector initialization
  7723. F1h real-time clock initialization
  7724. F2h video initialization
  7725. F3h beeper initialization
  7726. F4h initialize boot
  7727. F5h clear huge segment
  7728. F6h boot to mini-DOS
  7729. F7h boot to full DOS
  7730. ----------P0080008F--------------------------
  7731. PORT 0080-008F - DMA PAGE REGISTERS (74612)
  7732. 0080 RW extra page register (temporary storage)
  7733. 0081 RW DMA channel 2 address byte 2
  7734. 0082 RW DMA channel 3 address byte 2
  7735. 0083 RW DMA channel 1 address byte 2
  7736. 0084 RW extra page register
  7737. 0085 RW extra page register
  7738. 0086 RW extra page register
  7739. 0087 RW DMA channel 0 address byte 2
  7740. 0088 RW extra page register
  7741. 0089 RW DMA channel 6 address byte 2
  7742. 008A RW DMA channel 7 address byte 2
  7743. 008B RW DMA channel 5 address byte 2
  7744. 008C RW extra page register
  7745. 008D RW extra page register
  7746. 008E RW extra page register
  7747. 008F RW DMA refresh page register
  7748. ----------P0080009F--------------------------
  7749. PORT 0080-009F - Intel386sx CHIPSET 82231
  7750. Note: includes the DMA controller functionality on PORT 0080h to PORT 008Fh
  7751. ----------P0084------------------------------
  7752. PORT 0084 - Compaq POST Diagnostic
  7753. --------X-P0084------------------------------
  7754. PORT 0084 - EISA - SYNCHRONIZE BUS CYCLE
  7755. ----------P00850086--------------------------
  7756. PORT 0085-0086 - Intel "Triton" chipset - ???
  7757. SeeAlso: PORT 00EBh"Triton"
  7758. 0085 ?W ???
  7759. 0086 ?W ???
  7760. ----------P0090009F--------------------------
  7761. PORT 0090-009F - PS/2 - POS (PROGRAMMABLE OPTION SELECT)
  7762. 0090 ?? Central arbitration control port
  7763. 0090 RW POST diagnostic code (most PS/2 with ISA bus)
  7764. 0091 R- Card selection feedback
  7765. bit 0 set when adapter addressed and responds, cleared on read
  7766. 0092 RW PS/2 system control port A (port B is at PORT 0061h) (see #P0415)
  7767. 0094 -W system board enable/setup register (see #P0416)
  7768. 0095 -- reserved
  7769. 0096 -W adapter enable / setup register (see #P0417)
  7770. 0097 -- reserved
  7771. Bitfields for PS/2 system control port A:
  7772. Bit(s) Description (Table P0415)
  7773. 7-6 any bit set to 1 turns activity light on
  7774. 5 unused
  7775. 4 watchdog timout occurred
  7776. 3 =0 RTC/CMOS security lock (on password area) unlocked
  7777. =1 CMOS locked (done by POST)
  7778. 2 unused
  7779. 1 A20 is active
  7780. 0 =0 system reset or write
  7781. =1 pulse alternate reset pin (high-speed alternate CPU reset)
  7782. Notes: once set, bit 3 may only be cleared by a power-on reset
  7783. on at least the C&T 82C235, bit 0 remains set through a CPU reset to
  7784. allow the BIOS to determine the reset method
  7785. SeeAlso: #P0416,#P0417,MSR 00001000h
  7786. Bitfields for PS/2 system board enable/setup register:
  7787. Bit(s) Description (Table P0416)
  7788. 7 =1 enable functions
  7789. =0 setup functions
  7790. 5 =1 enables VGA
  7791. =0 setup VGA
  7792. 2 =1 enable integrated SCSI (PS/2 M77)
  7793. =0 setup integrated SCSI
  7794. SeeAlso: #P0415,#P0417
  7795. Bitfields for PS/2 adapter enable/setup register:
  7796. Bit(s) Description (Table P0417)
  7797. 7 activate Channel Reset on all slots
  7798. 6-4 unused (1)
  7799. 3 =1 setup adapter specified by bits 2-0
  7800. =0 enable registers
  7801. 2-0 adapter slot select (000 = slot 1 ... 111 = slot 8)
  7802. SeeAlso: #P0416
  7803. ----------P00A000AF--------------------------
  7804. PORT 00A0-00AF - PIC 2 - PROGRAMMABLE INTERRUPT CONTROLLER (8259A)
  7805. SeeAlso: PORT 0020h-003Fh"PIC 1",INT 70"IRQ8",INT 77"IRQ15"
  7806. 00A0 RW PIC 2 same as 0020 for PIC 1
  7807. 00A1 RW PIC 2 same as 0021 for PIC 1 except for OCW1 (see #P0418)
  7808. Bitfields for PIC2 output control word OCW1:
  7809. Bit(s) Description (Table P0418)
  7810. 7 disable IRQ15 (reserved)
  7811. 6 disable IRQ14 (fixed disk interrupt)
  7812. 5 disable IRQ13 (coprocessor exception interrupt)
  7813. 4 disable IRQ12 (mouse interrupt)
  7814. 3 disable IRQ11 (reserved)
  7815. 2 disable IRQ10 (reserved)
  7816. 1 disable IRQ9 (redirect cascade)
  7817. 0 disable IRQ8 (real-time clock interrupt)
  7818. SeeAlso: #P0014
  7819. ----------P00A0------------------------------
  7820. PORT 00A0 - XT - NMI MASK REGISTER
  7821. SeeAlso: PORT 0070h,INT 02
  7822. 00A0 RW NMI mask register (XT only)
  7823. bit 7 = 0 NMI signal disabled from reaching CPU
  7824. = 1 NMI signal enabled
  7825. ----------P00A000AF--------------------------
  7826. PORT 00A0-00AF - Chips&Technologies 82C100/110 - NMI CONTROL
  7827. SeeAlso: PORT 0072h"82C100",PORT 007Fh"82C100"
  7828. 00A0 RW NMI mask register (XT only)
  7829. bit 7 = 0 NMI signal disabled from reaching CPU
  7830. = 1 NMI signal enabled
  7831. 00Ax RW mirrors of PORT 00A0h
  7832. ----------P00A800A9--------------------------
  7833. PORT 00A8-00A9 - Via VT82C496G "Pluto" - CONFIGURATION REGISTERS
  7834. SeeAlso: PORT 00A8h"VT82C570M"
  7835. 00A8 ?W configuration register index (see #P0419)
  7836. 00A9 RW configuration register data
  7837. (Table P0419)
  7838. Values for Via VT82C496G configuration registers:
  7839. 02h clock throttling control (see #P0420)
  7840. 03h I/O recovery (see #P0421)
  7841. 10h bus speed (see #P0422)
  7842. 11h ISA bus clock frequency control (see #P0423)
  7843. 20h pair 0/1 row/column address (see #P0424)
  7844. 21h pair 2/3 row/column address (see #P0425)
  7845. 22h RAS#/CAS# pulse control (see #P0426)
  7846. 30h C0000h-CFFFFh shadow control (see #P0427)
  7847. 31h D0000h-DFFFFh shadow control (see #P0428)
  7848. 32h E0000h-FFFFFh shadow control (see #P0429)
  7849. 33h ROM decoding and memory relocation (see #P0430)
  7850. 40h ROM cacheable control (see #P0431)
  7851. 41h programmable non-cacheable region ???
  7852. 42h programmable non-cacheable region ???
  7853. 43h pair 0/1 DRAM size and configuration (see #P0432)
  7854. 44h pair 2/3 DRAM size and configuration (see #P0433)
  7855. 50h cache access mode (see #P0434)
  7856. 51h cache timing/size control (see #P0435)
  7857. 52h primary idle timer reloading control (see #P0436)
  7858. 53h primary idle timer reload distinguish (see #P0437)
  7859. 54h SMI triggering control (see #P0438)
  7860. 55h SMI trigger distinguish (see #P0439)
  7861. 56h clock frequency control (see #P0440)
  7862. 57h peripheral timer (see #P0441)
  7863. 58h general purpose timer (see #P0442)
  7864. 59h timer control (see #P0443)
  7865. 5Ah power/peripheral control (see #P0444)
  7866. 5Bh system management control (see #P0445)
  7867. 5Ch clock switching control (see #P0446)
  7868. 5Dh peripheral timer control (see #P0447)
  7869. 5Eh misc. cache control (see #P0448)
  7870. 5Fh conserve mode/secondary idle timer control (see #P0449)
  7871. 60h IRQ7-0 primary interrupt selection (see #P0450)
  7872. 61h IRQ15-8 primary interrupt selection (see #P0451)
  7873. 62h IRQ7-3 interrupt mode and global control (see #P0452)
  7874. 63h IRQ15-9 interrupt mode (see #P0453)
  7875. 64h (see #P0454)
  7876. 65h peripheral timer control (see #P0455)
  7877. 68h port 070h write shadow
  7878. 69h port 2F8h write shadow
  7879. 6Ah port 3F8h write shadow
  7880. 6Bh port 372h write shadow
  7881. 6Ch port 377h write shadow
  7882. 6Dh port 171h write shadow
  7883. 6Eh port 177h write shadow
  7884. 6Fh port 376h write shadow
  7885. 71h IDE controller/cache control (see #P0456)
  7886. 72h non-1F0/170h port access timing (see #P0457)
  7887. 73h drive #0 read timing for 1F0/170h access (see #P0458)
  7888. 74h drive #0 write timing for 1F0/170h access (see #P0459)
  7889. 77h drive #0 address setup time (see #P0460)
  7890. 78h drive #1 read timing for 1F0/170h access (see #P0458)
  7891. 79h drive #1 write timing for 1F0/170h access (see #P0459)
  7892. 7Ch drive #1 address setup time (see #P0460)
  7893. SeeAlso: #P0461
  7894. Bitfields for Via VT82C496G/VT82C570M clock throttling control:
  7895. Bit(s) Description (Table P0420)
  7896. 4 STPCLK# throttling period (enabled by register 5Bh bit 0)
  7897. 0 = 3.35 æs * 16
  7898. 1 = 1.7 ms * 16
  7899. 3-0 duty cycle for STPCLK# (1/16 - 15/16) (enabled by register 5Bh bit 0)
  7900. SeeAlso: #P0419,#P0445
  7901. Bitfields for Via VT82C496G/VT82C570M register 03h:
  7902. Bit(s) Description (Table P0421)
  7903. 7-1 (VT82C496G) command delay, wait state and I/O recovery time for normal
  7904. ISA cycles ???
  7905. 0 decoupled DRAM refresh enable
  7906. SeeAlso: #P0419
  7907. Bitfields for Via VT82C496G/VT82C570M register 10h:
  7908. Bit(s) Description (Table P0422)
  7909. 6 DMA controller runs at ISA clock speed/half ISA clock speed
  7910. SeeAlso: #P0419,#P0423
  7911. Bitfields for Via VT82C496G/VT82C570M ISA bus clock frequency control:
  7912. Bit(s) Description (Table P0423)
  7913. 6 flash EPROM write cycle support enable
  7914. 3-0 ISA bus clock frequency
  7915. 0xxx = CLKIN / 8
  7916. 1000 = CLKIN / 3
  7917. 1001 = CLKIN / 2
  7918. 1010 = CLKIN / 4
  7919. 1011 = CLKIN / 6
  7920. 1100 = CLKIN / 5
  7921. 1101 = CLKIN / 10
  7922. 1110 = CLKIN / 12
  7923. 1111 = OSC / 2 (asynchronous)
  7924. SeeAlso: #P0419,#P0422
  7925. Bitfields for Via VT82C496G/VT82C570M pair 0/1 row/column address:
  7926. Bit(s) Description (Table P0424)
  7927. 7-5 number of column address bits for pair 0
  7928. 000 = disabled
  7929. 001 = 9 bit
  7930. 010 = 10 bit
  7931. 011 = 11 bit
  7932. 100 = 12 bit
  7933. 101-111 = illegal
  7934. 4 page mode operation enable
  7935. 3-1 number of column address bits for pair 1 (same values as above)
  7936. 0 (VT82C496G) reserved
  7937. (VT82C570M) DRAM bus width
  7938. 0 = 32 bit
  7939. 1 = 64 bit (operation width set in register 48h bits 3-0)
  7940. SeeAlso: #P0419
  7941. Bitfields for Via VT82C496G/VT82C570M pair 2/3 row/column address:
  7942. Bit(s) Description (Table P0425)
  7943. 7-5 number of column address bits for pair 2
  7944. 000 = disabled
  7945. 001 = 9 bit
  7946. 010 = 10 bit
  7947. 011 = 11 bit
  7948. 100 = 12 bit
  7949. 101-111 = illegal
  7950. 4 reserved
  7951. 3-1 number of column address bits for pair 3 (same values as above)
  7952. 0 reserved
  7953. SeeAlso: #P0419
  7954. Bitfields for Via VT82C496G/VT82C570M RAS#/CAS# pulse control:
  7955. Bit(s) Description (Table P0426)
  7956. 7-6 RAS# precharge time
  7957. 00-11 = (VT82C496G) 1-4 cycles
  7958. (VT82C570M) 2-8 cycles
  7959. 5-4 RAS# pulse width
  7960. 00-11 = (VT82C496G) 2-5 cycles
  7961. (VT82C570M) 4-10 cycles
  7962. 3-2 read cycle CAS# pulse width
  7963. 00-11 = 1-4 cycles
  7964. 1 write cycle CAS# pulse width
  7965. 0 = 1 cycle
  7966. 1 = 2 cycles
  7967. 0 RAS# to column address/column address to CAS#
  7968. 0 = 1 cycle
  7969. 1 = 2 cycles
  7970. SeeAlso: #P0419
  7971. Bitfields for Via VT82C496G/VT82C570M C0000h-CFFFFh shadow control:
  7972. Bit(s) Description (Table P0427)
  7973. 7 CC000h-CFFFFh read shadow enable
  7974. 6 CC000h-CFFFFh write shadow enable
  7975. 5 C8000h-CBFFFh read shadow enable
  7976. 4 C8000h-CBFFFh write shadow enable
  7977. 3 C4000h-C7FFFh read shadow enable
  7978. 2 C4000h-C7FFFh write shadow enable
  7979. 1 C0000h-C3FFFh read shadow enable
  7980. 0 C0000h-C3FFFh write shadow enable
  7981. SeeAlso: #P0419,#P0428,#P0429
  7982. Bitfields for Via VT82C496G/VT82C570M D0000h-DFFFFh shadow control:
  7983. Bit(s) Description (Table P0428)
  7984. 7 DC000h-DFFFFh read shadow enable
  7985. 6 DC000h-DFFFFh write shadow enable
  7986. 5 D8000h-DBFFFh read shadow enable
  7987. 4 D8000h-DBFFFh write shadow enable
  7988. 3 D4000h-D7FFFh read shadow enable
  7989. 2 D4000h-D7FFFh write shadow enable
  7990. 1 D0000h-D3FFFh read shadow enable
  7991. 0 D0000h-D3FFFh write shadow enable
  7992. SeeAlso: #P0419,#P0427,#P0429
  7993. Bitfields for Via VT82C496G/VT82C570M E0000h-FFFFFh shadow control:
  7994. Bit(s) Description (Table P0429)
  7995. 7 E0000h-EFFFFh read shadow enable
  7996. 6 E0000h-EFFFFh write shadow enable
  7997. 5 F0000h-FFFFFh read shadow enable
  7998. 4 F0000h-FFFFFh write shadow enable
  7999. 3 ???
  8000. 2 memory range F00000h-FFFFFFh decode as ISA cycle enable
  8001. 1 (VT82C496G) burstable DRAM cycles enable
  8002. (VT82C570M) ???
  8003. 0 ???
  8004. SeeAlso: #P0419,#P0427,#P0428,#P0430
  8005. Bitfields for Via VT82C496G/VT82C570M ROM decoding and memory relocation:
  8006. Bit(s) Description (Table P0430)
  8007. 7 C8000h-CFFFFh decoded as ROM cycle enable
  8008. 6 C0000h-C7FFFh decoded as ROM cycle enable
  8009. 5 E8000h-EFFFFh decoded as ROM cycle enable
  8010. 4 E0000h-E7FFFh decoded as ROM cycle enable
  8011. 3-2 memory relocation
  8012. 00 = disable
  8013. 01 = illegal
  8014. 10 = 256K relocation
  8015. 11 = 384K relocation
  8016. 1 (VT82C496G) RAS time-out
  8017. (VT82C570M) ???
  8018. 0 ???
  8019. SeeAlso: #P0419,#P0429,#P0431
  8020. Bitfields for Via VT82C496G/VT82C570M ROM cacheable control:
  8021. Bit(s) Description (Table P0431)
  8022. 7 C0000h-C7FFFh cacheable and write-protect enable
  8023. 6 F0000h-FFFFFh cacheable and write-protect enable
  8024. 5 E0000h-EFFFFh cacheable and write-protect enable
  8025. 4 ???
  8026. 3 CAS-to-RAS refresh enable
  8027. 2 (VT82C570M) secondary cache fill for CACHE# inactive memory cycles
  8028. enable
  8029. 1-0 ???
  8030. SeeAlso: #P0419,#P0430
  8031. Bitfields for Via VT82C496G/VT82C570M pair 0/1 DRAM size and configuration:
  8032. Bit(s) Description (Table P0432)
  8033. 7-5 (VT82C496G) bank-pair 0 DRAM size (x2 if double bank)
  8034. 000 = 512 KB
  8035. 001 = 1 MB
  8036. 010 = 2 MB
  8037. 011 = 4 MB
  8038. 100 = 8 MB
  8039. 101 = 16 MB
  8040. 110 = 32 MB
  8041. 111 = 64 MB
  8042. (VT82C570M) bank-pair 0 DRAM size (x2 if double bank)
  8043. 000 = 1 MB
  8044. 001 = 2 MB
  8045. 010 = 4 MB
  8046. 011 = 8 MB
  8047. 100 = 16 MB
  8048. 101 = 32 MB
  8049. 110 = 64 MB
  8050. 111 = 128 MB
  8051. 4 number of banks in pair 0
  8052. (0 bank if register 20h bit 7-5 = 0)
  8053. 0 = 1 bank
  8054. 1 = 2 banks
  8055. 3-1 (VT82C496G) bank-pair 1 DRAM size (x2 if double bank)
  8056. (VT82C570M) bank-pair 1 DRAM size (x2 if double bank)
  8057. 0 number of banks in pair 1
  8058. (0 bank if register 20h bit 3-1 = 0)
  8059. 0 = 1 bank
  8060. 1 = 2 banks
  8061. SeeAlso: #P0419,#P0433
  8062. Bitfields for Via VT82C496G/VT82C570M pair 2/3 DRAM size and configuration:
  8063. Bit(s) Description (Table P0433)
  8064. 7-5 (VT82C496G) bank-pair 2 DRAM size (x2 if double bank)
  8065. 000 = 512 KB
  8066. 001 = 1 MB
  8067. 010 = 2 MB
  8068. 011 = 4 MB
  8069. 100 = 8 MB
  8070. 101 = 16 MB
  8071. 110 = 32 MB
  8072. 111 = 64 MB
  8073. (VT82C570M) bank-pair 2 DRAM size (x2 if double bank)
  8074. 000 = 1 MB
  8075. 001 = 2 MB
  8076. 010 = 4 MB
  8077. 011 = 8 MB
  8078. 100 = 16 MB
  8079. 101 = 32 MB
  8080. 110 = 64 MB
  8081. 111 = 128 MB
  8082. 4 number of banks of pair 2 (no banks if register 21h bit 7-5 = 0)
  8083. 0 = 1 bank
  8084. 1 = 2 banks
  8085. 3-1 (VT82C496G) bank-pair 3 DRAM size (x2 if double bank)
  8086. (VT82C570M) bank-pair 3 DRAM size (x2 if double bank)
  8087. (same values as for bits 7-5)
  8088. 0 number of banks of pair 3 (no banks if register 21h bit 3-1 = 0)
  8089. 0 = 1 bank
  8090. 1 = 2 banks
  8091. SeeAlso: #P0419,#P0432
  8092. Bitfields for Via VT82C496G/VT82C570M cache access mode:
  8093. Bit(s) Description (Table P0434)
  8094. 7-6 cache mode
  8095. 0x = disabled
  8096. 10 = enabled
  8097. 11 = initialization
  8098. 5 (VT82C496G) direct data SRAM access
  8099. (VT82C570M) Cyrix CPU linear burst order enable
  8100. 4 (VT82C496G) write-back cache alter bit control (don't care for write
  8101. through)
  8102. 0 = combined tag/alter bit
  8103. 1 = no alter bit
  8104. 4-3 (VT82C570M) number of tag/alter bits
  8105. write-back (register 5Eh bit 6 = 0)
  8106. tag alter total
  8107. 00 8 0 8
  8108. 01 7 1 8
  8109. 10 8 1 9
  8110. 11 10 1 11
  8111. write-through (register 5Eh bit 6 = 1)
  8112. tag alter total
  8113. x0 8 - 8
  8114. 01 7 - N/A
  8115. 11 10 - 10
  8116. 3-2 (VT82C496G) cache line size
  8117. 00 = 4 bytes
  8118. 01 = 8 bytes
  8119. 10 = 16 bytes
  8120. 11 = 4 bytes
  8121. 2 (VT82C570M) data synchronous SRAM type (if register 51h bit 4 = 0)
  8122. 0 = standard synchronous SRAM
  8123. 1 = pipelined burst synchronous SRAM
  8124. 1 (VT82C496G) burst write enable
  8125. (VT82C570M) cache read wait state for PCI masters (PCI clock)
  8126. 0 = zero wait state (2-1-1-1)
  8127. 1 = one wait state (3-2-2-2)
  8128. 0 (VT82C496G) data streaming enable
  8129. (VT82C570M) cache write wait state for PCI masters (PCI clock)
  8130. 0 = zero wait state (2-1-1-1)
  8131. 1 = one wait state (3-2-2-2)
  8132. SeeAlso: #P0419
  8133. Bitfields for Via VT82C496G/VT82C570M cache timing/size control:
  8134. Bit(s) Description (Table P0435)
  8135. 7 (VT82C496G) read hit timing
  8136. 0 = 2-X-X-X
  8137. 1 = 3-X-X-X
  8138. (VT82C570M) read hit timing for first cycle (CPU clock) for
  8139. asynchronous SRAM
  8140. 0 = 1 wait state (2-X-X-X)
  8141. 1 = 2 wait state (3-X-X-X)
  8142. 6 (VT82C496G) write hit timing
  8143. 0 = 2-X-X-X
  8144. 1 = 3-X-X-X
  8145. (VT82C570M) write hit timing for first cycle (CPU clock) for
  8146. asynchronous SRAM
  8147. 0 = 1 wait state (3-X-X-X)
  8148. 1 = 2 wait state (4-X-X-X)
  8149. 5 (VT82C496G) read hit timing
  8150. 0 = X-1-1-1
  8151. 1 = X-2-2-2
  8152. (VT82C570M) read hit timing for second-fourth burst cycle (CPU clock)
  8153. for asynchronous SRAM
  8154. 0 = 1 wait state (X-2-2-2)
  8155. 1 = 2 wait state (X-3-3-3)
  8156. 4 (VT82C496G) write hit timing
  8157. 0 = X-1-1-1
  8158. 1 = X-2-2-2
  8159. (VT82C570M) data SRAM type
  8160. 0 = synchronous SRAM (type set in register 50h bit 2)
  8161. 1 = asynchronous SRAM
  8162. 3 bank of data SRAM
  8163. 0 = 1 bank
  8164. 1 = 2 banks
  8165. 2-0 cache size
  8166. 000 = no cache
  8167. 001 = (VT82C496G) 32 KB
  8168. 010 = (VT82C496G) 64 KB
  8169. 011 = 128 KB
  8170. 100 = 256 KB
  8171. 101 = 512 KB
  8172. 110 = 1 MB
  8173. 111 = (VT82C570M) 2 MB
  8174. Note: (VT82C570M) write hit timing is always 1 wait state (X-2-2-2) for
  8175. asynchronous SRAM; read/write hit timing is always 3-1-1-1 for
  8176. synchronous SRAM
  8177. SeeAlso: #P0419
  8178. Bitfields for Via VT82C496G/VT82C570M primary idle timer reloading control:
  8179. Bit(s) Description (Table P0436)
  8180. 7 reload primary idle timer on keyboard access
  8181. 6 reload primary idle timer on serial port access
  8182. 5 reload primary idle timer on parallel port access
  8183. 4 reload primary idle timer on video access
  8184. 3 reload primary idle timer on hard disk and floppy access
  8185. 2 reload primary idle timer on IO port 100h-3FFh access
  8186. 1 reload primary idle timer on external input
  8187. 0 reload primary idle timer on DRQ/LREQ (DMA/local bus master request)
  8188. SeeAlso: #P0419,#P0437,#P0438
  8189. Bitfields for Via VT82C496G/VT82C570M primary idle timer reload distinguish:
  8190. Bit(s) Description (Table P0437)
  8191. 7 primary idle timer reloaded by keyboard access
  8192. 6 primary idle timer reloaded by serial port access
  8193. 5 primary idle timer reloaded by parallel port access
  8194. 4 primary idle timer reloaded by video access
  8195. 3 primary idle timer reloaded by hard disk and floppy access
  8196. 2 primary idle timer reloaded by IO port 100h-3FFh access
  8197. 1 primary idle timer reloaded by external input
  8198. 0 primary idle timer reloaded by DRQ/LREQ (DMA/local bus master request)
  8199. SeeAlso: #P0419,#P0436,#P0438
  8200. Bitfields for Via VT82C496G/VT82C570M SMI triggering control:
  8201. Bit(s) Description (Table P0438)
  8202. 7 trigger SMI on primary idle timer time-out
  8203. 6 trigger SMI on general purpose timer time-out
  8204. 5 trigger SMI on primary activity occurrence
  8205. 4 trigger SMI on primary interrupt occurrence
  8206. 3 trigger SMI on external pin (Turbo) toggle
  8207. 2 (VT82C496G) trigger SMI on DRQ/LREQ occurrence
  8208. (VT82C570M) trigger SMI on DRQ/PREQ occurrence
  8209. 1 trigger SMI on peripheral timer or secondary idle timer
  8210. time-out
  8211. (VT82C496G) (use register 65h bits 3 and 2 to distinguish)
  8212. 0 trigger SMI on software SMI
  8213. SeeAlso: #P0419,#P0436,#P0438,#P0439
  8214. Bitfields for Via VT82C496G/VT82C570M SMI trigger distinguish:
  8215. Bit(s) Description (Table P0439)
  8216. 7 SMI triggered by primary idle timer time-out
  8217. 6 SMI triggered by general purpose timer time-out
  8218. 5 SMI triggered by primary activity occurrence
  8219. 4 SMI triggered by primary interrupt occurrence
  8220. 3 SMI triggered by external pin (Turbo) toggle
  8221. 2 (VT82C496G) SMI triggered by DRQ/LREQ occurrence
  8222. (VT82C570M) SMI triggered by DRQ/PREQ occurrence
  8223. 1 SMI triggered by peripheral timer or secondary idle timer
  8224. time-out
  8225. (VT82C496G) (use register 65h bits 1 and 0 to distinguish)
  8226. 0 SMI triggered by software SMI
  8227. SeeAlso: #P0419,#P0438
  8228. Bitfields for Via VT82C496G/VT82C570M clock frequency control:
  8229. Bit(s) Description (Table P0440)
  8230. 7-5 (VT82C496G) CPU clock frequency
  8231. 000 = CLKIN
  8232. 001 = CLKIN / 4
  8233. 010 = CLKIN / 8
  8234. 011 = CLKIN / 16
  8235. 100 = CLKIN / 32
  8236. 101 = CLKIN / 64
  8237. 110 = CLKIN / 2
  8238. 111 = 0
  8239. 3-0 CLKIN frequency
  8240. 0000 = 16 MHz
  8241. 0001 = 40 MHz
  8242. 0010 = 50 MHz
  8243. 0011 = 80 MHz
  8244. 0100 = 66 MHz
  8245. 0101 = 100 MHz
  8246. 0110 = 8 MHz
  8247. 0111 = 60 MHz
  8248. 1000 = 8 MHz
  8249. 1001 = 20 MHz
  8250. 1010 = 25 MHz
  8251. 1011 = 40 MHz
  8252. 1100 = 33 MHz
  8253. 1101 = 50 MHz
  8254. 1110 = 4 MHz
  8255. 1111 = 30 MHz
  8256. SeeAlso: #P0419
  8257. Bitfields for Via VT82C496G/VT82C570M peripheral timer:
  8258. Bit(s) Description (Table P0441)
  8259. 7-0 (VT82C496G) peripheral timer (time base determined in register 5Dh
  8260. bits 1-0)
  8261. (VT82C570M) peripheral timer (time base determined in register 66h
  8262. bits 3-2)
  8263. SeeAlso: #P0419
  8264. Bitfields for Via VT82C496G/VT82C570M general purpose timer:
  8265. Bit(s) Description (Table P0442)
  8266. 7-0 general purpose timer (time base determined in register 59h bits 7-6)
  8267. SeeAlso: #P0419
  8268. Bitfields for Via VT82C496G/VT82C570M timer control:
  8269. Bit(s) Description (Table P0443)
  8270. 7-6 general purpose timer (register 58h) time base
  8271. 00 = disable
  8272. 01 = 32.768 KHz
  8273. 10 = 1 sec
  8274. 11 = 1 min
  8275. 3-1 primary idle timer time-out
  8276. 000 = disable
  8277. 001 = 1 sec
  8278. 010 = 8 sec
  8279. 011 = 32 sec
  8280. 100 = 1 min
  8281. 101 = 8 min
  8282. 110 = 16 min
  8283. 111 = 32 min
  8284. 0 (VT82C496G) leakage control mode
  8285. SeeAlso: #P0419
  8286. Bitfields for Via VT82C496G/VT82C570M power/peripheral control:
  8287. Bit(s) Description (Table P0444)
  8288. 7-4 general purpose output ports ???
  8289. SeeAlso: #P0419
  8290. Bitfields for Via VT82C496G/VT82C570M system management control:
  8291. Bit(s) Description (Table P0445)
  8292. 7 (VT82C496G) power management mode enable
  8293. 6 (VT82C496G) SMI type
  8294. 0 = Intel 2-pin SMI (SMI#/SMIACT#)
  8295. (pin 112 used as SMIACT#, SM base = 30000h to 4FFFFh)
  8296. 1 = TI/AMD/Cyrix 3-pin SMI (SMI#/SMIADS#/SMIRDY#)
  8297. (pin 112 used as SMIADS#, SM base = 60000h to 7FFFFh)
  8298. 5 (VT82C496G) SMI target
  8299. 0 = SMI output to CPU
  8300. 1 = SMI redirected to interrupt 15 of internal 8259 interrupt
  8301. controller (for non-SMI CPU support)
  8302. 4 SM memory remap enable (SM base memory mapped to A0000h to BFFFFh)
  8303. 3 (VT82C496G) direct DRAM access to SMI target memory A0000h-BFFFFh
  8304. enable
  8305. 2 ???
  8306. 1 (VT82C496G) force 3000h-4FFFFh to map to A0000h-BFFFFh
  8307. (move SM code without causing local bus device conflict with
  8308. A0000h-BFFFFh)
  8309. 0 clock throttling enable
  8310. SeeAlso: #P0419
  8311. Bitfields for Via VT82C496G clock switching control:
  8312. Bit(s) Description (Table P0446)
  8313. 7 wait for a HALT cycle to start clock switching
  8314. 6 wait for an acknowledgment to start clock switching
  8315. 5 clock switching protocol
  8316. 0 = Intel STPCLK# protocol (pin 117 used as STPCLK# output)
  8317. 1 = TI/Cyrix SUSP#/SUSPA# protocol (pin 117 used as SUSP# input)
  8318. SeeAlso: #P0419
  8319. Bitfields for Via VT82C496G peripheral timer control:
  8320. Bit(s) Description (Table P0447)
  8321. 7-2 ???
  8322. 1-0 peripheral timer (register 57h) time base
  8323. 00 = disable
  8324. 01 = 32.768 KHz
  8325. 10 = 1 sec
  8326. 11 = 1 min
  8327. SeeAlso: #P0419
  8328. Bitfields for Via VT82C496G/VT82C570M misc. cache control:
  8329. Bit(s) Description (Table P0448)
  8330. 7 (VT82C496G) CPU internal cache
  8331. 0 = write-through
  8332. 1 = write-back
  8333. 6 external cache
  8334. 0 = write-back
  8335. 1 = write-through
  8336. 5 (VT82C496G) pin 72 usage
  8337. 0 = BLAST# (burst last input from the CPU)
  8338. 1 = CACHE# (P24T) (burst cycle indicator)
  8339. 4 (VT82C496G) snoop filtering enable
  8340. 3 ???
  8341. 2 slow refresh enable
  8342. 1-0 ???
  8343. SeeAlso: #P0419
  8344. Bitfields for Via VT82C496G/VT82C570M conserve mode/secondary idle timer:
  8345. Bit(s) Description (Table P0449)
  8346. 7-6 (VT82C496G) conserve mode active period
  8347. 00 = 1/16 sec
  8348. 01 = 1/8 sec
  8349. 10 = 1 sec
  8350. 11 = 1 min
  8351. 5 conserve mode enable
  8352. 4 (VT82C496G) conserve mode clock select
  8353. 0 = CLKIN / 2
  8354. 1 = CLKIN / 4
  8355. 3-2 secondary idle timer time-out
  8356. 00 = 2 ms
  8357. 01 = 16 ms
  8358. 10 = 64 ms
  8359. 11 = EOI + 0.125 ms
  8360. 1 secondary events handler enable (secondary interrupt reloads secondary
  8361. idle timer)
  8362. 0 (VT82C496G) change clock speed on secondary interrupt to
  8363. 0 = CLKIN
  8364. 1 = CLKIN / 2
  8365. SeeAlso: #P0419
  8366. Bitfields for Via VT82C496G/VT82C570M IRQ7-0 primary interrupt selection:
  8367. Bit(s) Description (Table P0450)
  8368. 7 IRQ7 is primary interrupt
  8369. 6 IRQ6 is primary interrupt
  8370. 5 IRQ5 is primary interrupt
  8371. 4 IRQ4 is primary interrupt
  8372. 3 IRQ3 is primary interrupt
  8373. 2 IRQ1 is primary interrupt
  8374. 1 IRQ0 is primary interrupt
  8375. 0 (VT82C496G) reload primary idle timer on primary interrupt
  8376. SeeAlso: #P0419,#P0451,#P0452
  8377. Bitfields for Via VT82C496G/VT82C570M IRQ15-8 primary interrupt selection:
  8378. Bit(s) Description (Table P0451)
  8379. 7 IRQ15 is primary interrupt
  8380. 6 IRQ14 is primary interrupt
  8381. 5 IRQ13 is primary interrupt
  8382. 4 IRQ12 is primary interrupt
  8383. 3 IRQ11 is primary interrupt
  8384. 2 IRQ10 is primary interrupt
  8385. 1 IRQ9 is primary interrupt
  8386. 0 IRQ8 is primary interrupt
  8387. SeeAlso: #P0419,#P0450,#P0453
  8388. Bitfields for Via VT82C496G IRQ7-3 interrupt mode and global control:
  8389. Bit(s) Description (Table P0452)
  8390. 7 IRQ7 interrupt mode (refer to note below)
  8391. 6 IRQ6 interrupt mode
  8392. 5 IRQ5 interrupt mode
  8393. 4 IRQ4 interrupt mode
  8394. 3 IRQ3 interrupt mode
  8395. 2 IRQ8 treated as
  8396. 0 = sub-secondary interrupt (CPU clock speed unchanged)
  8397. 1 = secondary interrupt
  8398. 1 IRQ0 treated as
  8399. 0 = sub-secondary interrupt (CPU clock speed unchanged)
  8400. 1 = secondary interrupt
  8401. 0 interrupt mode global control
  8402. 0 = 8259A compatible mode (all interrupt edge triggered)
  8403. 1 = extended mode (enables selection with registers 62h and 63h)
  8404. Note: for bits 7-3, 0 = edge-triggered, 1 = level-sensitive
  8405. SeeAlso: #P0419,#P0450,#P0453
  8406. Bitfields for Via VT82C496G/VT82C570M IRQ15-9 interrupt mode:
  8407. Bit(s) Description (Table P0453)
  8408. 7 IRQ15 interrupt mode (refer to note below)
  8409. 6 IRQ14 interrupt mode
  8410. 5 reserved
  8411. 4 IRQ12 interrupt mode
  8412. 3 IRQ11 interrupt mode
  8413. 2 IRQ10 interrupt mode
  8414. 1 IRQ9 interrupt mode
  8415. 0 ???
  8416. Note: for bits 7-6 and 4-1, 0 = edge-triggered, 1 = level-sensitive
  8417. SeeAlso: #P0419,#P0451,#P0452
  8418. Bitfields for Via VT82C496G/VT82C570M register 64h:
  8419. Bit(s) Description (Table P0454)
  8420. 3-0 MA0-3 jumper setting ???
  8421. SeeAlso: #P0419
  8422. Bitfields for Via VT82C496G/VT82C570M peripheral timer control:
  8423. Bit(s) Description (Table P0455)
  8424. 7 reload peripheral timer on keyboard access
  8425. 6 reload peripheral timer on serial port access
  8426. 5 reload peripheral timer on video access
  8427. 4 reload peripheral timer on hard disk and floppy access
  8428. 3 (VT82C496G) trigger SMI on peripheral timer time-out
  8429. (VT82C570M) reload peripheral timer on parallel port access
  8430. 2 (VT82C496G) trigger SMI on secondary idle timer time-out
  8431. (VT82C570M) reserved
  8432. 1 (VT82C496G) SMI triggered by peripheral timer time-out
  8433. (VT82C570M) reload peripheral timer on speaker access
  8434. 0 (VT82C496G) SMI triggered by secondary idle timer time-out
  8435. (VT82C570M) reserved
  8436. SeeAlso: #P0419
  8437. Bitfields for Via VT82C496G IDE controller/cache control:
  8438. Bit(s) Description (Table P0456)
  8439. 7 reserved
  8440. 6 channel and I/O port selection
  8441. 0 = primary channel (1F0h-1F7h)
  8442. 1 = secondary channel (170h-177h)
  8443. 5 write buffer enable
  8444. 4 prefetch buffer enable
  8445. 3 internal LRDY# for write cycles (0 = second T2, 1 = first T2)
  8446. 2 internal LRDY# for read cycles (0 = second T2, 1 = first T2)
  8447. 1 read data to be presented to CPU data bus
  8448. 0 = second T2
  8449. 1 = first T2
  8450. 0 internal IDE controller enable
  8451. SeeAlso: #P0419
  8452. Bitfields for Via VT82C496G non-1F0/170h port access timing:
  8453. Bit(s) Description (Table P0457)
  8454. 7-4 number of CPU clocks as command active time
  8455. 3-0 number of CPU clocks as command recovery time
  8456. SeeAlso: #P0419
  8457. Bitfields for Via VT82C496G drive #0/1 read timing for 1F0/170h access:
  8458. Bit(s) Description (Table P0458)
  8459. 7-4 number of CPU clocks as command active time
  8460. 3-0 number of CPU clocks as command recovery time
  8461. SeeAlso: #P0419,#P0459,#P0460
  8462. Bitfields for Via VT82C496G drive #0/1 write timing for 1F0/170h access:
  8463. Bit(s) Description (Table P0459)
  8464. 7-4 number of CPU clocks as command active time
  8465. 3-0 number of CPU clocks as command recovery time
  8466. SeeAlso: #P0419,#P0458,#P0460
  8467. Bitfields for Via VT82C496G drive #0/1 address setup time:
  8468. Bit(s) Description (Table P0460)
  8469. 1-0 number of CPU clocks as address setup time
  8470. SeeAlso: #P0419,#P0458,#P0459
  8471. ----------P00A800AC--------------------------
  8472. PORT 00A8-00AC - Via VT82C570M "Apollo Master" - CONFIGURATION REGISTERS
  8473. SeeAlso: PORT 00A8h"VT82C486G"
  8474. 00A8 ?W configuration register index (see #P0461)
  8475. 00A9 RW configuration register 00h-9Fh data
  8476. 00AC RW configuration register FBh-FFh data
  8477. (Table P0461)
  8478. Values for Via VT82C570M configuration registers:
  8479. 02h clock throttling control (see #P0420)
  8480. 03h I/O recovery (see #P0421)
  8481. 10h bus speed (see #P0422)
  8482. 11h ISA bus clock frequency control (see #P0423)
  8483. 20h pair 0/1 row/column address (see #P0424)
  8484. 21h pair 2/3 row/column address (see #P0425)
  8485. 22h RAS#/CAS# pulse control (see #P0426)
  8486. 30h C0000h-CFFFFh shadow control (see #P0427)
  8487. 31h D0000h-DFFFFh shadow control (see #P0428)
  8488. 32h E0000h-FFFFFh shadow control (see #P0429)
  8489. 33h ROM decoding and memory relocation (see #P0430)
  8490. 40h ROM cacheable control (see #P0431)
  8491. 41h programmable non-cacheable region ???
  8492. 42h programmable non-cacheable region ???
  8493. 43h pair 0/1 DRAM size and configuration (see #P0432)
  8494. 44h pair 2/3 DRAM size and configuration (see #P0433)
  8495. 47h DRAM type (see #P0462)
  8496. 48h DRAM control (see #P0463)
  8497. 49h cache control (see #P0464)
  8498. 50h cache access mode (see #P0434)
  8499. 51h cache timing/size control (see #P0435)
  8500. 52h primary idle timer reloading control (see #P0436)
  8501. 53h primary idle timer reload distinguish (see #P0437)
  8502. 54h SMI triggering control (see #P0438)
  8503. 55h SMI trigger distinguish (see #P0439)
  8504. 56h clock frequency control (see #P0440)
  8505. 58h general purpose timer (see #P0442)
  8506. 59h timer control (see #P0443)
  8507. 5Ah power/peripheral control (see #P0444)
  8508. 5Bh system management control (see #P0445)
  8509. 5Eh misc. cache control (see #P0448)
  8510. 5Fh conserve mode/secondary idle timer control (see #P0449)
  8511. 60h IRQ7-0 primary interrupt selection (see #P0450)
  8512. 61h IRQ15-8 primary interrupt selection (see #P0451)
  8513. 63h IRQ15-9 interrupt mode (see #P0453)
  8514. 64h (see #P0454)
  8515. 65h peripheral timer control (see #P0455)
  8516. 66h (see #P0465)
  8517. 67h peripheral timer (see #P0441)
  8518. 68h multiple SMI triggering ???
  8519. 69h multiple SMI triggering ???
  8520. 6Ah multiple SMI triggering ???
  8521. 7Bh general purpose input and output port ???
  8522. 7Ch general purpose input and output port ???
  8523. 7Eh general purpose output port ???
  8524. 7Fh general purpose input and output port ???
  8525. 82h PCI buffer control (see #P0466)
  8526. 83h PCI data link control (see #P0467)
  8527. 84h PCI interface timing (see #P0468)
  8528. 85h PCI arbitration (see #P0469)
  8529. 86h (see #P0470)
  8530. 93h (see #P0471)
  8531. 9Ch programmable chipselect A (see #P0472)
  8532. 9Dh programmable chipselect A address mask (see #P0473)
  8533. 9Eh programmable chipselect B (see #P0474)
  8534. 9Fh programmable chipselect B address mask (see #P0475)
  8535. FBh plug and play DRQ routing (see #P0476)
  8536. FCh PCI interrupt polarity (see #P0477)
  8537. FDh plug and play IRQ routing (see #P0478)
  8538. FEh PCI IRQ routing 1 (see #P0479)
  8539. FFh PCI IRQ routing 2 (see #P0480)
  8540. SeeAlso: #P0419
  8541. Bitfields for Via VT82C570M DRAM type:
  8542. Bit(s) Description (Table P0462)
  8543. 7 Bank 3 DRAM type (used with bit 3)
  8544. bits 7 and 3:
  8545. 00 = standard DRAM
  8546. 01 = burst EDO DRAM
  8547. 10 = EDO DRAM
  8548. 11 = illegal
  8549. 6 Bank 2 DRAM type (used with bit 2)
  8550. bits 6 and 2: same values as for bits 7 and 3
  8551. 5 Bank 1 DRAM type (used with bit 1)
  8552. bits 5 and 1: same values as for bits 7 and 3
  8553. 4 Bank 0 DRAM type (used with bit 0)
  8554. bits 4 and 0: same values as for bits 7 and 3
  8555. 3 Bank 3 DRAM type (used with bit 7)
  8556. 2 Bank 2 DRAM type (used with bit 6)
  8557. 1 Bank 1 DRAM type (used with bit 5)
  8558. 0 Bank 0 DRAM type (used with bit 4)
  8559. SeeAlso: #P0461
  8560. Bitfields for Via VT82C570M register 48h:
  8561. Bit(s) Description (Table P0463)
  8562. 7 reserved
  8563. 6 eight CWE# pins for each byte in addition to global GWE# ???
  8564. 5-4 reserved
  8565. 3-0 DRAM operation width (if register 20h bit 0 = 1)
  8566. 0 = 64 bit operation for corresponding DRAM bank
  8567. 1 = 32 bit operation for corresponding DRAM bank
  8568. SeeAlso: #P0461
  8569. Bitfields for Via VT82C570M register 49h:
  8570. Bit(s) Description (Table P0464)
  8571. 5 0 = cache SRAM write enable for each bank
  8572. 1 = cache SRAM byte write enable
  8573. SeeAlso: #P0461
  8574. Bitfields for Via VT82C570M register 66h:
  8575. Bit(s) Description (Table P0465)
  8576. 3-2 peripheral timer (register 67h) time base
  8577. 00 = disable
  8578. 01 = 32.768 KHz
  8579. 10 = 1 sec
  8580. 11 = 1 min
  8581. SeeAlso: #P0461
  8582. Bitfields for Via VT82C570M PCI buffer control:
  8583. Bit(s) Description (Table P0466)
  8584. 7 CPU to PCI write buffer enable
  8585. 6 PCI to memory write buffer enable
  8586. 5 reserved
  8587. 4 PCI accessing memory prefetch buffer enable
  8588. 3 PCI accelerated decoding enable
  8589. 2 reserved
  8590. 1 on-board memory burst write enable
  8591. 0 on-board memory burst read enable
  8592. SeeAlso: #P0461
  8593. Bitfields for Via VT82C570M PCI data link control:
  8594. Bit(s) Description (Table P0467)
  8595. 7 data link write cycle
  8596. 0 = 1 wait state
  8597. 1 = 0 wait state
  8598. 6-4 reserved
  8599. 3 on-board memory detection point for PCI master
  8600. 0 = first address phase
  8601. 1 = first data phase
  8602. 2-1 reserved
  8603. 0 reserved (must be 0)
  8604. SeeAlso: #P0461
  8605. Bitfields for Via VT82C570M PCI interface timing:
  8606. Bit(s) Description (Table P0468)
  8607. 7 slave mode lock function enable
  8608. 6 retry count
  8609. 0 = 16 times
  8610. 1 = 64 times
  8611. 5 retry deadlock error reporting enable
  8612. 4 retry status occurred (write 1 to reset)
  8613. 3 CPU to PCI fast back to back enable
  8614. 2 fast FRAME# generation enable
  8615. 1-0 DEVSEL# decoding
  8616. 00 = fast
  8617. 01 = medium
  8618. 10 = slow
  8619. 11 = subtractive
  8620. SeeAlso: #P0461
  8621. Bitfields for Via VT82C570M PCI arbitration:
  8622. Bit(s) Description (Table P0469)
  8623. 7 0 = priority on PCI bus
  8624. 1 = fairness between CPU and PCI bus
  8625. 6 0 = REQ# based
  8626. 1 = FRAME# based
  8627. 5-4 CPU time slot in unit of
  8628. 00 = 4 PCI clocks
  8629. 01 = 8 PCI clocks
  8630. 10 = 16 PCI clocks
  8631. 11 = 32 PCI clocks
  8632. 3-0 PCI master bus time out
  8633. 0000 = disable
  8634. 0001-1111 = 1x32 - 15x32 PCI clocks
  8635. SeeAlso: #P0461
  8636. Bitfields for Via VT82C570M register 86h:
  8637. Bit(s) Description (Table P0470)
  8638. 7 PCI configuration mechanism #1/#2 (default #1)
  8639. SeeAlso: #P0461
  8640. Bitfields for Via VT82C570M register 93h:
  8641. Bit(s) Description (Table P0471)
  8642. 5 parity or system error at PCI bus signify
  8643. 0 = I/O channel check
  8644. 1 = NMI
  8645. SeeAlso: #P0461
  8646. Bitfields for Via VT82C570M programmable chipselect A:
  8647. Bit(s) Description (Table P0472)
  8648. 7-0 chipselect A address (high two bits in register 9Dh bits 1-0)
  8649. SeeAlso: #P0461,#P0473,#P0474
  8650. Bitfields for Via VT82C570M programmable chipselect A address mask:
  8651. Bit(s) Description (Table P0473)
  8652. 7-2 chipselect A address mask
  8653. 1-0 chipselect A address (low eight bits in register 9Dh)
  8654. SeeAlso: #P0461,#P0472,#P0474
  8655. Bitfields for Via VT82C570M programmable chipselect B:
  8656. Bit(s) Description (Table P0474)
  8657. 7-0 chipselect B address (high two bits in register 9Fh bits 1-0)
  8658. SeeAlso: #P0461,#P0472,#P0475
  8659. Bitfields for Via VT82C570M programmable chipselect B address mask:
  8660. Bit(s) Description (Table P0475)
  8661. 7-2 chipselect B address mask
  8662. 1-0 chipselect B address (low eight bits in register 9Eh)
  8663. SeeAlso: #P0461,#P0473,#P0474
  8664. Bitfields for Via VT82C570M plug and play DRQ routing:
  8665. Bit(s) Description (Table P0476)
  8666. 7-6 reserved
  8667. 5-3 PDRQ1 routing
  8668. 000-011 = DRQ0-3
  8669. 100 = reserved
  8670. 101-111 = DRQ5-7
  8671. 2-0 PDRQ0 routing
  8672. 000-011 = DRQ0-3
  8673. 100 = reserved
  8674. 101-111 = DRQ5-7
  8675. SeeAlso: #P0461
  8676. Bitfields for Via VT82C570M PCI interrupt polarity:
  8677. Bit(s) Description (Table P0477)
  8678. 7-4 reserved
  8679. 3 INTA# polarity (refer to note below)
  8680. 2 INTB# polarity
  8681. 1 INTC# polarity
  8682. 0 INTD# polarity
  8683. Note: for bits 3-0, 0 = non-invert (level-sensitive), 1 = inverted (edge)
  8684. SeeAlso: #P0461
  8685. Bitfields for Via VT82C570M plug and play IRQ routing:
  8686. Bit(s) Description (Table P0478)
  8687. 7-4 INTD# routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8688. 3-0 PIRQ0 routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8689. SeeAlso: #P0461,#P0479,#P0480
  8690. Bitfields for Via VT82C570M PCI IRQ routing 1:
  8691. Bit(s) Description (Table P0479)
  8692. 7-4 INTA# routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8693. 3-0 INTB# routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8694. SeeAlso: #P0461,#P0478,#P0480
  8695. Bitfields for Via VT82C570M PCI IRQ routing 2:
  8696. Bit(s) Description (Table P0480)
  8697. 7-4 INTC# routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8698. 3-0 PIRQ1 routing (value indicates desired IRQ number; 0,2,13 are reserved)
  8699. SeeAlso: #P0461,#P0478,#P0479
  8700. ----------P00A800A9--------------------------
  8701. PORT 00A8-00A9 - Via VT82C586A - GPIO
  8702. 00A8 ?W configuration register index
  8703. 00A9 RW configuration register data
  8704. ----------P00B000BF--------------------------
  8705. PORT 00B0-00BF - PC radio by CoZet Info Systems
  8706. Range: The I/O address range is dipswitch selectable from:
  8707. 038-03F and 0B0-0BF
  8708. 078-07F and 0F0-0FF
  8709. 138-13F and 1B0-1BF
  8710. 178-17F and 1F0-1FF
  8711. 238-23F and 2B0-2BF
  8712. 278-27F and 2F0-2FF
  8713. 338-33F and 3B0-3BF
  8714. 378-37F and 3F0-3FF
  8715. Notes: All of these addresses show a readout of FFh in initial state.
  8716. Once started, all of the addresses show FBh, whatever might happen.
  8717. ----------P00B2------------------------------
  8718. PORT 00B2 - Intel chipsets - Advanced Power Management Control
  8719. Notes: used to pass data between the operating system and the System
  8720. Management Interrupt (SMI) handler
  8721. writes to this port can cause an SMI; reads can cause STPCLK# to be
  8722. asserted (putting the CPU in sleep mode)
  8723. supported by 82420EX, 82371, and other Intel chipsets
  8724. SeeAlso: PORT 00B3h,#01079
  8725. 00B2 RW control
  8726. ----------P00B3------------------------------
  8727. PORT 00B3 - Intel chipsets - Advanced Power Management Status
  8728. Notes: used to pass data between the operating system and the System
  8729. Management Interrupt (SMI) handler
  8730. supported by 82420EX, 82371, and other Intel chipsets
  8731. SeeAlso: PORT 00B2h
  8732. 00B3 RW status
  8733. ----------P00C0------------------------------
  8734. PORT 00C0 - TI SN746496 programmable tone/noise generator (PCjr)
  8735. ----------P00C000DF--------------------------
  8736. PORT 00C0-00DF - DMA 2 - SECOND DIRECT MEMORY ACCESS CONTROLLER (8237)
  8737. 00C0 RW DMA channel 4 memory address bytes 1 and 0 (low) (ISA, EISA)
  8738. 00C2 RW DMA channel 4 transfer count bytes 1 and 0 (low) (ISA, EISA)
  8739. 00C4 RW DMA channel 5 memory address bytes 1 and 0 (low) (ISA, EISA)
  8740. 00C6 RW DMA channel 5 transfer count bytes 1 and 0 (low) (ISA, EISA)
  8741. 00C8 RW DMA channel 6 memory address bytes 1 and 0 (low) (ISA, EISA)
  8742. 00CA RW DMA channel 6 transfer count bytes 1 and 0 (low) (ISA, EISA)
  8743. 00CC RW DMA channel 7 memory address byte 0 (low), then 1 (ISA, EISA)
  8744. 00CE RW DMA channel 7 transfer count byte 0 (low), then 1 (ISA, EISA)
  8745. 00D0 R- DMA channel 4-7 status register (ISA, EISA) (see #P0481)
  8746. 00D0 -W DMA channel 4-7 command register (ISA, EISA) (see #P0482)
  8747. 00D2 -W DMA channel 4-7 write request register (ISA, EISA)
  8748. 00D4 -W DMA channel 4-7 write single mask register (ISA, EISA) (see #P0484)
  8749. 00D6 -W DMA channel 4-7 mode register (ISA, EISA) (see #P0485)
  8750. 00D8 -W DMA channel 4-7 clear byte pointer flip-flop (ISA, EISA)
  8751. 00DA R- DMA channel 4-7 read temporary register (ISA, EISA)
  8752. 00DA -W DMA channel 4-7 master clear (ISA, EISA)
  8753. 00DC -W DMA channel 4-7 clear mask register (ISA, EISA)
  8754. 00DE -W DMA channel 4-7 write mask register (ISA, EISA) (see #P0486)
  8755. Notes: the temporary register is used as holding register in memory-to-memory
  8756. DMA transfers; it holds the last transferred byte
  8757. channel 4 is used for cascading the first (8-bit) DMA controller
  8758. base/current address registers can only address the memory in 16-bit
  8759. words (i.e. they contain lines A1-A16 of the address bus with line
  8760. A0 always equal to 0); base/current word count registers contain the
  8761. number of 16-bit words
  8762. command and request registers do not exist on PS/2 DMA controller
  8763. Bitfields for DMA channel 4-7 status register:
  8764. Bit(s) Description (Table P0481)
  8765. 7 = 1 channel 7 request
  8766. 6 = 1 channel 6 request
  8767. 5 = 1 channel 5 request
  8768. 4 = 1 channel 4 request
  8769. 3 = 1 terminal count on channel 7
  8770. 2 = 1 terminal count on channel 6
  8771. 1 = 1 terminal count on channel 5
  8772. 0 = 1 terminal count on channel 4
  8773. SeeAlso: #P0001,#P0482
  8774. Bitfields for DMA channel 4-7 command register:
  8775. Bit(s) Description (Table P0482)
  8776. 7 DACK sense active high
  8777. 6 DREQ sense active high
  8778. 5 =1 extended write selection
  8779. =0 late write selection
  8780. 4 rotating priority instead of fixed priority
  8781. 3 compressed timing
  8782. 2 =1 enable controller
  8783. =0 enable memory-to-memory transfer
  8784. 1-0 channel number (00 = 4 to 11 = 7)
  8785. SeeAlso: #P0002,#P0481,#P0484
  8786. Bitfields for DMA channel 4-7 request register:
  8787. Bit(s) Description (Table P0483)
  8788. 7-3 reserved (0)
  8789. 2 =0 clear request bit
  8790. =1 set request bit
  8791. 1-0 channel number
  8792. 00 channel 4 select
  8793. 01 channel 5 select
  8794. 10 channel 6 select
  8795. 11 channel 7 select
  8796. SeeAlso: #P0003,#P0484
  8797. Bitfields for DMA channel 4-7 write single mask register:
  8798. Bit(s) Description (Table P0484)
  8799. 7-3 reserved
  8800. 2 =0 clear mask bit
  8801. =1 set mask bit
  8802. 1-0 channel select
  8803. 00 channel 4 select
  8804. 01 channel 5 select
  8805. 10 channel 6 select
  8806. 11 channel 7 select
  8807. SeeAlso: #P0004,#P0482
  8808. Bitfields for DMA channel 4-7 mode register:
  8809. Bit(s) Description (Table P0485)
  8810. 7-6 transfer mode
  8811. 00 demand mode
  8812. 01 single mode
  8813. 10 block mode
  8814. 11 cascade mode
  8815. 5 direction
  8816. 0 address increment select
  8817. 1 address decrement select
  8818. 4 autoinitialisation enabled
  8819. 3-2 operation
  8820. 00 verify operation
  8821. 01 write to memory
  8822. 10 read from memory
  8823. 11 reserved
  8824. 1-0 channel number
  8825. 00 channel 4 select
  8826. 01 channel 5 select
  8827. 10 channel 6 select
  8828. 11 channel 7 select
  8829. SeeAlso: #P0005,#P0484
  8830. Bitfields for DMA channel 4-7 write mask register:
  8831. Bit(s) Description (Table P0486)
  8832. 7-4 reserved
  8833. 3 channel 7 mask bit
  8834. 2 channel 6 mask bit
  8835. 1 channel 5 mask bit
  8836. 0 channel 4 mask bit
  8837. Note: each mask bit is automatically set when the corresponding channel
  8838. reaches terminal count or an extenal EOP sigmal is received
  8839. SeeAlso: #P0484,#P0006
  8840. ----------P00E000E1--------------------------
  8841. PORT 00E0-00E1 - CHIPSET FROM ACT
  8842. 00E0 ?W index for accesses to data port
  8843. 00E1 R? chip set data
  8844. ----------P00E000E7--------------------------
  8845. PORT 00E0-00E7 - MICROCHANNEL
  8846. 00E0 RW split address register, memory encoding registers PS/2m80 only
  8847. (see #P0487)
  8848. 00E1 RW memory register (see #P0488,#P0489)
  8849. 00E3 RW error trace (bits 23-16 of address on last rising edge of ERS line)
  8850. 00E4 RW error trace (bits 15-8 of address on last rising edge of ERS line)
  8851. 00E5 RW error trace (see #P0490)
  8852. 00E7 RW error trace (see #P0491)
  8853. Bitfields for Microchannel Split Address Register:
  8854. Bit(s) Description (Table P0487)
  8855. 7-6 unused
  8856. 5-4 2MB memory for connector 2 on Type2 motherboard
  8857. bit 5: second MB disabled or not present
  8858. bit 4: first MB disabled or not present
  8859. 3-0 address at which to place leftover from split in first MB, in MB
  8860. (1-15, 0 is invalid when split is active)
  8861. SeeAlso: #P0488,#P0489
  8862. Bitfields for Microchanel Memory Register, Type1 motherboard:
  8863. Bit(s) Description (Table P0488)
  8864. 7-6 1 MB memory for connector 2
  8865. 10 installed
  8866. 11 not installed
  8867. 5-4 1 MB memory for connector 1
  8868. 10 installed
  8869. 11 not installed
  8870. 3-1 split memory select
  8871. ROM convmem over1M
  8872. 001 ON 640K 384K
  8873. 011 ON 512K 512K
  8874. 100 shadow 640K 0K
  8875. 101 ON 640K 0K
  8876. 110 shadow 512K 0K
  8877. 111 ON 512K 0K
  8878. 0 parity checking
  8879. =0 enable
  8880. =1 clear parity error (write 0 to re-enable parity checking)
  8881. SeeAlso: #P0487,#P0489
  8882. Bitfields for Microchannel Memory Register, Type2 motherboard:
  8883. Bit(s) Description (Table P0489)
  8884. 7-6 unused
  8885. 5-4 memory connector 1
  8886. bit 5: second MB disabled or not present
  8887. bit 4: first MB disabled or not present
  8888. 3-1 split memory select
  8889. ROM convmem over1M
  8890. 000 shadow 640K 256K
  8891. 001 ON 640K 384K
  8892. 010 shadow 512K 384K
  8893. 011 ON 512K 512K
  8894. 100 shadow 640K 0K
  8895. 101 ON 640K 0K
  8896. 110 shadow 512K 0K
  8897. 111 ON 512K 0K
  8898. 0 parity checking
  8899. =0 enable
  8900. =1 clear parity error (write 0 to re-enable parity checking)
  8901. SeeAlso: #P0487,#P0488
  8902. Bitfields for Microchannel Error Trace register E5h:
  8903. Bit(s) Description (Table P0490)
  8904. 7-2 bits 7-2 of address on last rising edge of ERS line
  8905. 1 address space (0=I/O, 1=memory)
  8906. 0 =1 bus-master arbitration cycle
  8907. SeeAlso: #P0491
  8908. Bitfields for Microchannel Error Trace register E7h:
  8909. Bit(s) Description (Table P0491)
  8910. 7-1 unused
  8911. 0 bus cycle type
  8912. =0 control (instruction fetch, halt, interrupt acknowledge)
  8913. =1 data
  8914. SeeAlso: #P0490
  8915. ----------P00E000EF--------------------------
  8916. PORT 00E0-00EF - IBM PS/1 CLOCK
  8917. ----------P00E1------------------------------
  8918. PORT 00E1 - STB PowerMEG - ???
  8919. Desc: the STB PowerMEG is a memory expansion card capable of providing EMS
  8920. 00E1 RW ???
  8921. bit 0: ???
  8922. --------X-P00E2------------------------------
  8923. PORT 00E2 - S3 Trio64V+ - I2C PORT
  8924. Range: PORT 00E2h or PORT 00E8h; default depends on external pin, but can
  8925. be reprogrammed via chip's CR6F
  8926. SeeAlso: PORT 00E8h,#M0079
  8927. --------X-P00E8------------------------------
  8928. PORT 00E8 - S3 Trio64V+ - I2C PORT
  8929. Range: PORT 00E2h or PORT 00E8h; default depends on external pin, but can
  8930. be reprogrammed via chip's CR6F
  8931. SeeAlso: PORT 00E2h,#M0079
  8932. ----------P00EB------------------------------
  8933. PORT 00EB - Intel "Triton" chipset - ???
  8934. SeeAlso: PORT 0085h"Triton"
  8935. 00EB ?W ???
  8936. ----------P00EB------------------------------
  8937. PORT 00EB - DUMMY PORT FOR DELAY???
  8938. Note: on a number of machines, the BIOS appears to write a copy of any
  8939. data sent to numerous other ports to this port as well; it seems
  8940. to be a dummy port used for short delays between writes to other
  8941. ports (used instead of JMP $+2, which no longer delays on Pentium+)
  8942. SeeAlso: PORT 00ED"DUMMY"
  8943. 00EB ?W ???
  8944. ----------P00EC00ED--------------------------
  8945. PORT 00EC-00ED - Compaq LTE Elite
  8946. ----------P00ED------------------------------
  8947. PORT 00ED - DUMMY PORT FOR DELAY???
  8948. Note: on a number of machines, the BIOS appears to write a copy of any
  8949. data sent to numerous other ports to this port as well; it seems
  8950. to be a dummy port used for short delays between writes to other
  8951. ports (used instead of JMP $+2, which no longer delays on Pentium+)
  8952. SeeAlso: PORT 00EB"DUMMY"
  8953. 00EDw ?W ???
  8954. ----------P00EF------------------------------
  8955. PORT 00EF - Hyunday Super-NB386S (AMD386sx with Intel chipset)
  8956. Warning: any access to this port causes a cold reset on this machine!
  8957. ----------P00F000F5--------------------------
  8958. PORT 00F0-00F5 - PCjr Disk Controller
  8959. 00F0 ?? disk controller
  8960. 00F2 ?? disk controller control port
  8961. 00F4 ?? disk controller status register
  8962. 00F5 ?? disk controller data port
  8963. ----------P00F000FF--------------------------
  8964. PORT 00F0-00FF - MATH COPROCESSOR (8087..80387)
  8965. 00F0 -W math coprocessor clear busy latch (write 00h)
  8966. 00F1 -W math coprocessor reset (write 00h)
  8967. 00F8 RW opcode transfer (CPU-coprocessor communication)
  8968. 00FA RW opcode transfer
  8969. 00FC RW opcode transfer
  8970. ----------P00F9------------------------------
  8971. PORT 00F9 - Compaq LTE Elite
  8972. ----------P00FB------------------------------
  8973. PORT 00FB - Compaq LTE Elite
  8974. ----------P00F900FF--------------------------
  8975. PORT 00F9-00FF - PC radio by CoZet Info Systems
  8976. Range: The I/O address range is dipswitch selectable from:
  8977. 038-03F and 0B0-0BF
  8978. 078-07F and 0F0-0FF
  8979. 138-13F and 1B0-1BF
  8980. 178-17F and 1F0-1FF
  8981. 238-23F and 2B0-2BF
  8982. 278-27F and 2F0-2FF
  8983. 338-33F and 3B0-3BF
  8984. 378-37F and 3F0-3FF
  8985. Notes: All of these addresses show a readout of FFh in initial state.
  8986. Once started, all of the addresses show FBh, whatever might happen.
  8987. ----------P0100------------------------------
  8988. PORT 0100 - 3COM 3C509 Ethernet card - ID port
  8989. Note: this port is present only on the 3C509, not on any other 3COM card
  8990. SeeAlso: PORT 0110h,PORT 0120h
  8991. ----------P01000107--------------------------
  8992. PORT 0100-0107 - PS/2 POS (Programmable Option Select)
  8993. Note: the default value for PORT 0102h is stored in CMOS 31h
  8994. 0100 R POS register 0 Low adapter ID byte
  8995. 0101 R POS register 1 High adapter ID byte
  8996. 0102 RW POS register 2 option select data byte 1 (see #P0492)
  8997. 0103 RW POS register 3 option select data byte 2 (see #P0493)
  8998. 0104 RW POS register 4 option select data byte 3
  8999. 0105 RW POS register 5 option select data byte 4
  9000. bit 7 channel active (-CHCK)
  9001. bit 6 channel status
  9002. 0106 RW POS register 6 Low subaddress extension
  9003. 0107 RW POS register 7 High subaddress extension
  9004. Bitfields for PS/2 POS register 2, option select data byte 1:
  9005. Bit(s) Description (Table P0492)
  9006. 7 0 = unidirectional LPT port
  9007. 1 = bidirectional LPT port
  9008. 6-5 PS/2 Model 50 and higher
  9009. 00b = default LPT port at 3BCh
  9010. 01b = "" 378h
  9011. 10b = "" 278h
  9012. 11b = reserved
  9013. 4 enable parallel port
  9014. 3 serial port address
  9015. =0 COM2 (02F8h, IRQ3)
  9016. =1 COM1 (03F8h, IRQ4)
  9017. 2 enable serial port
  9018. 1 enable diskette controller
  9019. 0 (MCA) =0 override bits 1,2,4 and disable devices
  9020. 0 card enable (CDEN)
  9021. 0 =1 VGA sleep bit, disconnects output drivers from VGA (usage for VGA
  9022. without monitor)
  9023. ---ET4000---
  9024. 7-4 reserved???
  9025. 3 video RAM wait enable
  9026. 2 ET4000: ROM BIOS wait enable
  9027. 1 ET4000: I/O wait enable
  9028. Note: access to this port is only possible when PORT 0094h bit 7 is low.
  9029. SeeAlso: #P0493
  9030. Bitfields for Chips&Technologies 64200 "Wingine" setup register:
  9031. Bit(s) Description (Table P0493)
  9032. 7 enable access to extended registers (see #P0762)
  9033. Note: on some C&T graphics chips, this register can be made read-only
  9034. via XR70 (see #P0762)
  9035. SeeAlso: #P0492
  9036. ----------P0100010F--------------------------
  9037. PORT 0100-010F - CompaQ Tape drive adapter. alternate address at 0300
  9038. ----------P0102------------------------------
  9039. PORT 0102 - Chips & Technologies 64310 - GLOBAL ENABLE REGISTER
  9040. SeeAlso: PORT 0106"Chips"
  9041. 0102 RW global enable register (see #P0494)
  9042. Bitfields for Chips & Technologies 64310 global enable register:
  9043. Bit(s) Description (Table P0494)
  9044. 7-1 reserved (0)
  9045. 0 VGA sleep (used if port 102h bit 1 = 0)
  9046. 0 = VGA disabled
  9047. 1 = VGA enabled
  9048. Note: Only accessible in setup mode (port 46E8h bit 4 = 1).
  9049. SeeAlso: #P0495,#P0492
  9050. ----------P0106------------------------------
  9051. PORT 0106 - Chips & Technologies 64310 - MOTHERBOARD DISABLE REGISTER
  9052. SeeAlso: PORT 0102"Chips"
  9053. 0106 RW motherboard disable register (see #P0495)
  9054. Bitfields for Chips & Technologies 64310 motherboard disable register:
  9055. Bit(s) Description (Table P0495)
  9056. 7-2 reserved (0)
  9057. 1 sleep control
  9058. 0 = port 102h bit 0 controls VGA sleep (default)
  9059. 1 = port 106h bit 0 controls VGA sleep
  9060. 0 VGA sleep (used if bit 1 = 1)
  9061. 0 = VGA disabled
  9062. 1 = VGA enabled
  9063. Note: Only accessible in setup mode (port 46E8h bit 4 = 1),
  9064. if XR01 bit 2 = 1.
  9065. SeeAlso: #P0494
  9066. ----------P0108010F--------------------------
  9067. PORT 0108-010F - IBM PS/2 - 8 digit LED info panel
  9068. 010F -W leftmost character on display
  9069. 010E -W second character
  9070. ...
  9071. 0108 -W eighth character
  9072. ----------P0110------------------------------
  9073. PORT 0110 - 3COM 3C509 Ethernet card - ID port (alternate address)
  9074. Note: this port is present only on the 3C509, not on any other 3COM card
  9075. SeeAlso: PORT 0100h"3COM",PORT 0120h"3COM"
  9076. ----------P0120------------------------------
  9077. PORT 0120 - 3COM 3C509 Ethernet card - ID port (alternate address)
  9078. Note: this port is present only on the 3C509, not on any other 3COM card
  9079. SeeAlso: PORT 0100h"3COM",PORT 0110h"3COM"
  9080. ----------P0130013F--------------------------
  9081. PORT 0130-013F - CompaQ SCSI adapter. alternate address at 0330
  9082. ----------P01300133--------------------------
  9083. PORT 0130-0133 - Adaptec 154xB/154xC SCSI adapter
  9084. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  9085. ----------P01340137--------------------------
  9086. PORT 0134-0137 - Adaptec 154xB/154xC SCSI adapter
  9087. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  9088. ----------P0138013F--------------------------
  9089. PORT 0138-013F - PC radio by CoZet Info Systems
  9090. Range: The I/O address range is dipswitch selectable from:
  9091. 038-03F and 0B0-0BF
  9092. 078-07F and 0F0-0FF
  9093. 138-13F and 1B0-1BF
  9094. 178-17F and 1F0-1FF
  9095. 238-23F and 2B0-2BF
  9096. 278-27F and 2F0-2FF
  9097. 338-33F and 3B0-3BF
  9098. 378-37F and 3F0-3FF
  9099. Notes: All of these addresses show a readout of FFh in initial state.
  9100. Once started, all of the addresses show FBh, whatever might happen.
  9101. ---------------------------------------------
  9102. Ports List, part 2 of 3
  9103. Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 Ralf Brown
  9104. ----------P0140014F--------------------------
  9105. PORT 0140-014F - SCSI (alternate Small Computer System Interface) adapter
  9106. Note: first adapter is at 0340-034F
  9107. ----------P0140014F--------------------------
  9108. PORT 0140-014F - Xirlink/Relialogic XL-220/221 SCSI adapter
  9109. Range: alternate address at 0150, 0160, 0170
  9110. Notes: XL-220/221 are based on LOGIC Devices L53C80JC4 SCSI controller which
  9111. is compatible with Symbios Logic (formaerly NCR) 53C80
  9112. each SCSI data pin is inverted and compared with correcponding bit
  9113. in the ID select register; if any matches are found while a bus free
  9114. condition exists and SEL is active, SCSI controller will genarate an
  9115. interrupt to indicate a selection or reselection
  9116. pseudo-DMA register is provided by some on-card PLM, and decodes any
  9117. address in the range 01x8-01xF; it should be accessed with 16-bit
  9118. I/O instructions only causing 2 SCSI REQ/ACK hanshakes (8-bit I/O
  9119. is treated as 16-bit, and second byte is lost); delayed assertion of
  9120. the REQ signal or bus free condition on the SCSI bus causes the
  9121. pseudo-DMA register to prolong ISA I/O cycle not asserting IOCHRDY
  9122. signal (SCSI phase mismatch doesn't), and so may cause ISA bus to
  9123. hang in not ready state!
  9124. SCSI BIOS is an 8K ROM located at C8000-CBFFF if I/O port range
  9125. 0140-014F is selected, at CC000-CFFFF if I/O port range 0150-015F
  9126. is selected, at D8000-DBFFF if I/O port range 0160-016F is selected,
  9127. and at DC000-DFFFF if I/O port range 0170-017F is selected
  9128. 0140 R- current SCSI data bus register
  9129. 0140 -W output data register
  9130. 0141 RW initiator command register (see #P0496)
  9131. 0142 RW mode register (see #P0497)
  9132. 0143 RW target command register (see #P0498)
  9133. 0144 R- current SCSI control register (see #P0499)
  9134. 0144 -W ID select register
  9135. 0145 R- DMA status register (see #P0500)
  9136. 0145 -W start DMA send register
  9137. any write starts DMA send
  9138. 0146 R- input data register
  9139. temporarily holds data byte received from the SCSI bus in DMA mode
  9140. 0146 -W start DMA target receive register
  9141. any write starts target mode DMA receive
  9142. 0147 R- reset error/interrupt register
  9143. any read resets the interrupt request latch and the error latches
  9144. 0147 -W start DMA initiator mode receive register
  9145. any write starts initiator mode DMA receive
  9146. 0148w RW pseudo-DMA register
  9147. Bitfields for initiator command register:
  9148. Bit(s) Description (Table P0496)
  9149. 7 assert RST
  9150. 6 (read) arbitration in progress
  9151. (write) test mode
  9152. 5 (read) lost arbitration
  9153. 4 assert ACK
  9154. 3 assert BSY
  9155. 2 assert SEL
  9156. 1 assert ATN
  9157. 0 assert data bus
  9158. SeeAlso: #P0497,#P0498,#P0499,#P0500
  9159. Bitfields for mode register:
  9160. Bit(s) Description (Table P0497)
  9161. 7 block mode
  9162. 6 target mode
  9163. 5 enable parity check
  9164. 4 enable parity interrupt
  9165. 3 enable end of DMA interrupt
  9166. 2 monitor BSY
  9167. 1 DMA mode
  9168. 0 arbitrate
  9169. SeeAlso: #P0496
  9170. Bitfields for target command register:
  9171. Bit(s) Description (Table P0498)
  9172. 7 (read) last byte sent
  9173. 6-4 reserved
  9174. 3 assert REQ
  9175. 2 assert MSG
  9176. 1 assert C/D
  9177. 0 assert I/O
  9178. SeeAlso: #P0496
  9179. Bitfields for current SCSI control register:
  9180. Bit(s) Description (Table P0499)
  9181. 7 RST
  9182. 6 BSY
  9183. 5 REQ
  9184. 4 MSG
  9185. 3 C/D
  9186. 2 I/O
  9187. 1 SEL
  9188. 0 parity
  9189. SeeAlso: #P0496
  9190. Bitfields for DMA status register:
  9191. Bit(s) Description (Table P0500)
  9192. 7 end of DMA
  9193. 6 DMA request
  9194. 5 parity error
  9195. 4 interrupt request
  9196. 3 phase match
  9197. 2 BSY error
  9198. 1 ATN
  9199. 0 ACK
  9200. SeeAlso: #P0496
  9201. ----------P0140014F--------------------------
  9202. PORT 0140-014F - Future Domain TMC-16x0 SCSI adapter
  9203. Range: alternate address at 0150, 0160, 0170
  9204. Notes: TMC-1650/1670 have a 25-pin external connector, whereas the 1660 and
  9205. 1680 have a SCSI-2 50-pin high-density external connector
  9206. TMC-1670/1680 have floppy disk controller built in
  9207. BIOS versions prior to 3.2 assigned SCSI ID 6 to SCSI adapter,
  9208. versions 3.2 and greater use SCSI ID 7
  9209. the drive ordering implemented in BIOS versions 3.4 and 3.5 is the
  9210. opposite of the order (currently) used by the rest of the SCSI
  9211. industry--for example, under DOS SCSI ID 0 will be D: and SCSI ID 1
  9212. will be C:
  9213. Future Domain TMC-16x0 SCSI adapter series are based upon Future Domain
  9214. TMC-1800/18C50/18C30 SCSI controllers
  9215. TMC-1800/18C50/18C30 are ISA SCSI controllers, TMC-36C70 is a PCI
  9216. version of TMC-18C30
  9217. TMC-1800/18C50 have 8K FIFO, TMC-18C30/36C70 have 2K FIFO
  9218. Future Domain TMC-1650/1660/1670/1680/1610M/1610MER/1610MEX SCSI
  9219. adapters are based on TMC-1800/18C50/18C30
  9220. Quantum ISA-200S/250MG SCSI adapters are based on TMC-18C50 (?)
  9221. Future Domain TMC-3260 and Adaptec AHA-2920 PCI SCSI adapters are
  9222. based on TMC-36C70
  9223. 0140 R- read SCSI data register
  9224. 0140 -W write SCSI data register
  9225. 0141 R- SCSI status register (see #P0501)
  9226. 0141 -W SCSI control register (see #P0502)
  9227. 0142 R- TMC status register (see #P0503)
  9228. 0142 -W interrupt control register (see #P0504)
  9229. 0143 R- FIFO status register, TMC-18C50/18C30/36C70 chips only
  9230. 0143 -W SCSI mode control register (see #P0505)
  9231. 0144 R- interrupt condition register, TMC-18C50/18C30/36C70 only (see #P0506)
  9232. 0144 -W TMC control register (see #P0507)
  9233. 0145 R- ID code LSB register
  9234. 27h for TMC-1800 chip
  9235. E9h for TMC-18C50/18C30/36C70 chips
  9236. 0145 -W memory control register, TMC-18C50/18C30/36C70 only
  9237. 0146 R- ID code MSB register
  9238. 60h for TMC-18C50/18C30 chips
  9239. 61h for TMC-1800 chip
  9240. 0147 R- read loopback register
  9241. 0147 -W write loopback register
  9242. 0148 RW SCSI data no ACK register
  9243. 0149 R- interrupt status register (see #P0508)
  9244. 014A R- configuration register 1 (see #P0509)
  9245. 014B R- configuration register 2, TMC-18C50/18C30/36C70 only (see #P0510)
  9246. 014B -W I/O control register, TMC-18C30/36C70 only (see #P0511)
  9247. 014Cw R- read FIFO data register
  9248. 014Cw -W write FIFO data register
  9249. 014Ew R- FIFO data count register
  9250. Notes: any value written into the write loopback register can be read back
  9251. from the read loopback register unchanged (this is used by the BIOS
  9252. to test the controller)
  9253. reading from read SCSI data register and writing to write SCSI data
  9254. register causes REQ/ACK handshake to occur automatically, reading
  9255. and writing the SCSI data no ACK register doesn't
  9256. SCSI FIFO may be used only for DATA IN / DATA OUT phase transfers on
  9257. TMC-1800; on TMC-18C50/18C30 it may also be used for COMMAND phase
  9258. transfers
  9259. Bitfields for SCSI status register:
  9260. Bit(s) Description (Table P0501)
  9261. 7 not BSY
  9262. 6 not MSG
  9263. 5 not I/O
  9264. 4 not C/D
  9265. 3 not REQ
  9266. 2 not SEL
  9267. 1 parity error???
  9268. 0 not ATN
  9269. SeeAlso: #P0502,#P0511
  9270. Bitfields for SCSI control register:
  9271. Bit(s) Description (Table P0502)
  9272. 7 RST
  9273. 6 SEL
  9274. 5 BSY
  9275. 4 ATN
  9276. 3 I/O
  9277. 2 C/D
  9278. 1 MSG
  9279. 0 bus enable
  9280. SeeAlso: #P0501,#P0503,#P0504
  9281. Bitfields for TMC status register:
  9282. Bit(s) Description (Table P0503)
  9283. 7 bus enabled
  9284. 6 parity enabled
  9285. 5 FIFO enabled
  9286. 4 =1 data are expected to flow out from FIFO to SCSI bus
  9287. =0 data are expected to flow from SCSI bus into FIFO
  9288. 3 SCSI reset
  9289. 2 ???
  9290. 1 arbitration complete
  9291. 0 interrupt request
  9292. SeeAlso: #P0502
  9293. Bitfields for interrupt control register:
  9294. Bit(s) Description (Table P0504)
  9295. 7 enable interrupt on REQ
  9296. 6 enable interrupt on SEL
  9297. 5 enable arbitration interrupt
  9298. 4 enable interrupt on ???
  9299. 0-3 FIFO threshold (how many 512 byte blocks in FIFO should be
  9300. full/empty for interrupt to be generated)
  9301. SeeAlso: #P0502
  9302. Bitfields for SCSI mode control register:
  9303. Bit(s) Description (Table P0505)
  9304. 7 synchronous mode
  9305. 6 fast SCSI
  9306. 5-4 reserved?
  9307. 3-0 synchronous transfer period in 25 ns units
  9308. SeeAlso: #P0502
  9309. Bitfields for interrupt condition register:
  9310. Bit(s) Description (Table P0506)
  9311. 7 FIFO error interrupt
  9312. 6 forced interrupt???
  9313. 5 interrupt on RST
  9314. 4 arbitration interrupt
  9315. 3 interrupt on SEL
  9316. 2 interrupt on REQ
  9317. 1 interrupt on ???
  9318. 0 ???
  9319. SeeAlso: #P0502
  9320. Bitfields for TMC control register:
  9321. Bit(s) Description (Table P0507)
  9322. 7 enable FIFO
  9323. 6 =1 data are expected to flow out from FIFO to SCSI bus
  9324. =0 data are expected to flow from SCSI bus into FIFO
  9325. 5 clear forced interrupt, TMC-18C50/18C30/36C70 only
  9326. 4 enable interrupt
  9327. 3 enable parity
  9328. 2 arbitrate
  9329. 1 force interrupt???
  9330. 0 clear SCSI reset flag???
  9331. SeeAlso: #P0502
  9332. Note: on the TMC-1800 the FIFO must be enabled and bit 6 must be set
  9333. according to the expected data direction before a data phase will
  9334. occur (the TMC-1800 probably doesn't generate interrupts on REQ in
  9335. DATA IN / DATA OUT phases); on the TMC-18C50/18C30 it may be done
  9336. when the interrupt on REQ occurs and the SCSI phase is
  9337. DATA IN, DATA OUT or COMMAND
  9338. Bitfields for interrupt status register:
  9339. Bit(s) Description (Table P0508)
  9340. 7 interrupt on REQ enabled
  9341. 6 interrupt on SEL enabled
  9342. 5 arbitration interrupt enabled
  9343. 4 interrupt on ??? enabled
  9344. 3 interrupt enabled
  9345. 2 ???
  9346. 1 always set???
  9347. 0 ???
  9348. SeeAlso: #P0502
  9349. Bitfields for configuration register 1:
  9350. Bit(s) Description (Table P0509)
  9351. 7-6 BIOS address range
  9352. 00 C8000h-C9FFFh
  9353. 01 CA000h-CBFFFh
  9354. 10 CE000h-CFFFFh
  9355. 11 DE000h-DFFFFh
  9356. 5-4 I/O address range
  9357. 00 140h-14Fh
  9358. 01 150h-15Fh
  9359. 10 160h-16Fh
  9360. 11 170h-17Fh
  9361. 3-1 interrupt select
  9362. 000 IRQ3
  9363. 001 IRQ5
  9364. 010 IRQ10
  9365. 011 IRQ11
  9366. 100 IRQ12
  9367. 101 IRQ14
  9368. 110 IRQ15
  9369. 111 no IRQ
  9370. 0 reserved???
  9371. Note: the seven on-board configuration jumpers are read through this register
  9372. SeeAlso: #P0502,#P0510
  9373. Bitfields for configuration register 2:
  9374. Bit(s) Description (Table P0510)
  9375. 7 32-bit mode enabled (TMC-18C30/36C70 only???)
  9376. 6-2 ???
  9377. 1 RAM disabled (TMC-18C30/36C70 only???)
  9378. 0 ???
  9379. Note: 256 byte on-chip RAM is mapped at offset 1F00h within the BIOS segment
  9380. SeeAlso: #P0502,#P0509
  9381. Bitfields for TMC control register:
  9382. Bit(s) Description (Table P0511)
  9383. 7 enable 32-bit mode
  9384. 6-0 ???
  9385. SeeAlso: #P0502
  9386. --------d-P0140014F--------------------------
  9387. PORT 0140-014F - Quantum ISA-200S/250MG SCSI adapter
  9388. Range: alternate address at 0150, 0160, 0170
  9389. Note: Quantum ISA-200S/250MG SCSI adapters are based upon Future Domain
  9390. TMC-18C50 SCSI controller (???)
  9391. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  9392. ----------P01400157--------------------------
  9393. PORT 0140-0157 - RTC (alternate Real Time Clock for XT) (1st at 0340-0357)
  9394. --------d-P0140015F--------------------------
  9395. PORT 0140-015F - Adaptec AHA-152x SCSI adapter
  9396. Range: alternate address at 0340
  9397. ----------P0150015F--------------------------
  9398. PORT 0150-015F - Xirlink/Relialogic XL-220/221 SCSI adapter
  9399. Range: alternate address at 0140, 0160, 0170
  9400. ----------P0150015F--------------------------
  9401. PORT 0150-015F - Future Domain TMC-16x0 SCSI adapter
  9402. Range: alternate address at 0140, 0160, 0170
  9403. --------d-P0150015F--------------------------
  9404. PORT 0150-015F - Quantum ISA-200S/250MG SCSI adapter
  9405. Range: alternate address at 0140, 0160, 0170
  9406. Note: Quantum ISA-200S/250MG SCSI adapters are based upon Future Domain
  9407. TMC-18C50 SCSI controller (???)
  9408. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  9409. ----------P015C015D--------------------------
  9410. PORT 015C-015D - Dell Enhanced Parallel Port
  9411. SeeAlso: PORT 002Eh,PORT 026Eh,PORT 0398h
  9412. 015C -W index for data port
  9413. 015D RW EPP command data
  9414. ----------P015F------------------------------
  9415. PORT 015F - ARTEC Handyscanner A400Z. alternate address at 35F.
  9416. ----------P0160016F--------------------------
  9417. PORT 0160-016F - Xirlink/Relialogic XL-220/221 SCSI adapter
  9418. Range: alternate address at 0140, 0150, 0170
  9419. ----------P0160016F--------------------------
  9420. PORT 0160-016F - Future Domain TMC-16x0 SCSI adapter
  9421. Range: alternate address at 0140, 0150, 0170
  9422. --------d-P0160016F--------------------------
  9423. PORT 0160-016F - Quantum ISA-200S/250MG SCSI adapter
  9424. Range: alternate address at 0140, 0150, 0170
  9425. Note: Quantum ISA-200S/250MG SCSI adapters are based upon Future Domain
  9426. TMC-18C50 SCSI controller (???)
  9427. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  9428. ----------P0168016F--------------------------
  9429. PORT 0168-016F - 4th (Quaternary) EIDE Controller
  9430. Range: 01F0-01F7 for primary controller, 0170-0177 for secondary controller
  9431. SeeAlso: PORT 0170h-0177h,PORT 01E8h-01EFh,PORT 01F0h-01F7h
  9432. ----------P01700176--------------------------
  9433. PORT 0170-0176 - OPTi "Vendetta" (82C750) CHIPSET - SECONDARY IDE CONTROLLER
  9434. Note: to unlock access to these ports, you must perform two immediately
  9435. successive 16-bit INs from PORT 0171h, followed by 8-bit OUT of 03h
  9436. to PORT 172h
  9437. SeeAlso: PORT 01F0h"Vendetta"
  9438. 0170 RW read cycle timing register (see #P0536)
  9439. 0171 RW write cycle timing register (see #P0537)
  9440. 0172 RW internal ID register (see #P0538)
  9441. 0173 RW control register (see #P0539)
  9442. 0175 RW strap register (see #P0540)
  9443. 0176 RW miscellaneous register (see #P0541)
  9444. ----------P01700177--------------------------
  9445. PORT 0170-0177 - HDC 2 (2nd Fixed Disk Controller) (ISA, EISA)
  9446. Range: 01F0-01F7 for primary controller, 0170-0177 for secondary controller
  9447. SeeAlso: PORT 0168h-016Fh,PORT 01E8h-01EFh,PORT 01F0h-01F7h
  9448. ----------P0170017F--------------------------
  9449. PORT 0170-017F - Xirlink/Relialogic XL-220/221 SCSI adapter
  9450. Range: alternate address at 0140, 0150, 0160
  9451. ----------P0170017F--------------------------
  9452. PORT 0170-017F - Future Domain TMC-16x0 SCSI adapter
  9453. Range: alternate address at 0140, 0150, 0160
  9454. --------d-P0170017F--------------------------
  9455. PORT 0170-017F - Quantum ISA-200S/250MG SCSI adapter
  9456. Range: alternate address at 0140, 0150, 0160
  9457. Note: Quantum ISA-200S/250MG SCSI adapters are based upon Future Domain
  9458. TMC-18C50 SCSI controller (???)
  9459. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  9460. ----------P01780179--------------------------
  9461. PORT 0178-0179 - Power Management
  9462. SeeAlso: PORT 0026h,#P0377
  9463. 0178 -W index selection for data port
  9464. 0179 RW power management data
  9465. ----------P0178017F--------------------------
  9466. PORT 0178-017F - PC radio by CoZet Info Systems
  9467. Range: The I/O address range is dipswitch selectable from:
  9468. 038-03F and 0B0-0BF
  9469. 078-07F and 0F0-0FF
  9470. 138-13F and 1B0-1BF
  9471. 178-17F and 1F0-1FF
  9472. 238-23F and 2B0-2BF
  9473. 278-27F and 2F0-2FF
  9474. 338-33F and 3B0-3BF
  9475. 378-37F and 3F0-3FF
  9476. Notes: All of these addresses show a readout of FFh in initial state.
  9477. Once started, all of the addresses show FBh, whatever might happen.
  9478. ----------P01CE01CF--------------------------
  9479. PORT 01CE-01CF - ATI Mach32 video chipset - ???
  9480. 01CE -W index register
  9481. 01CF RW data register
  9482. ----------P01E801EF--------------------------
  9483. PORT 01E8-01EF - Headland HL21 & Acer M5105 chipsets - SYSTEM CONTROL
  9484. 01ED RW select internal register. Data to/from 01EF
  9485. 01EE R- ???
  9486. 01EF RW register value
  9487. 05h = 1000xxxx for low CPU clock speed (4MHz on Morse/Mitac)
  9488. = 0xxxxxxx for high CPU clock speed (16MHz on Morse/Mitac)
  9489. 10h memory size
  9490. bits 2-0 = size
  9491. (undefined,512K,640K,1024K,2560K,2048K,4096K,undef.)
  9492. 14h ???
  9493. bit 2: 384K RAM of first 1024K relocated to top of memory
  9494. ----------P01E801EF--------------------------
  9495. PORT 01E8-01EF - 3rd (Tertiary) EIDE Controller
  9496. Range: 01F0-01F7 for primary controller, 0170-0177 for secondary controller
  9497. SeeAlso: PORT 0168h-016Fh,PORT 0170h-0177h,PORT 01F0h-01F7h
  9498. ----------P01F001F7--------------------------
  9499. PORT 01F0-01F7 - HDC 1 (1st Fixed Disk Controller) (ISA, EISA)
  9500. Range: 01F0-01F7 for primary controller, 0170-0177 for secondary controller
  9501. SeeAlso: PORT 0170h-0177h,PORT 3510h-3513h
  9502. 01F0 RW data register
  9503. 01F1 R- error register (see #P0512)
  9504. 01F1 -W WPC/4 (Write Precompensation Cylinder divided by 4)
  9505. 01F2 RW sector count
  9506. 01F3 RW sector number (CHS mode)
  9507. logical block address, bits 0-7 (LBA mode)
  9508. 01F4 RW cylinder low (CHS mode)
  9509. logical block address, bits 15-8 (LBA mode)
  9510. 01F5 RW cylinder high (CHS mode)
  9511. logical block address, bits 23-16 (LBA mode)
  9512. 01F6 RW drive/head (see #P0513)
  9513. 01F7 R- status register (see #P0514)
  9514. 01F7 -W command register (see #P0515)
  9515. Bitfields for Hard Disk Controller error register:
  9516. Bit(s) Description (Table P0512)
  9517. ---diagnostic mode errors---
  9518. 7 which drive failed (0 = master, 1 = slave)
  9519. 6-3 reserved
  9520. 2-0 error code
  9521. 001 no error detected
  9522. 010 formatter device error
  9523. 011 sector buffer error
  9524. 100 ECC circuitry error
  9525. 101 controlling microprocessor error
  9526. ---operation mode---
  9527. 7 bad block detected
  9528. 6 uncorrectable ECC error
  9529. 5 reserved
  9530. 4 ID found
  9531. 3 reserved
  9532. 2 command aborted prematurely
  9533. 1 track 000 not found
  9534. 0 DAM not found (always 0 for CP-3022)
  9535. SeeAlso: #P0513,#P0514
  9536. Bitfields for hard disk controller drive/head specifier:
  9537. Bit(s) Description (Table P0513)
  9538. 7 =1
  9539. 6 LBA mode enabled, rather than default CHS mode
  9540. 5 =1
  9541. 4 drive select (0 = drive 0, 1 = drive 1)
  9542. 3-0 head select bits (CHS mode)
  9543. logical block address, bits 27-24 (LBA mode)
  9544. SeeAlso: #P0512,#P0514
  9545. Bitfields for hard disk controller status register:
  9546. Bit(s) Description (Table P0514)
  9547. 7 controller is executing a command
  9548. 6 drive is ready
  9549. 5 write fault
  9550. 4 seek complete
  9551. 3 sector buffer requires servicing
  9552. 2 disk data read successfully corrected
  9553. 1 index - set to 1 each disk revolution
  9554. 0 previous command ended in an error
  9555. SeeAlso: #P0512,#P0515
  9556. (Table P0515)
  9557. Values for hard disk controller command codes:
  9558. Command Spec Type Proto Description class:
  9559. 00h opt nondata NOP
  9560. 08h device reset
  9561. 1xh opt nondata recalibrate 1
  9562. 20h req PIOin read sectors with retry 1
  9563. 21h req PIOin read sectors without retry 1
  9564. 22h req PIOin read long with retry 1
  9565. 23h req PIOin read long without retry 1
  9566. 30h req PIOout write sectors with retry 2
  9567. 31h req PIOout write sectors without retry 2
  9568. 32h req PIOout write long with retry 2
  9569. 33h req PIOout write long without retry 2
  9570. 3Ch IDE opt PIOout write verify 3
  9571. 40h req nondata read verify sectors with retry 1
  9572. 41h req nondata read verify sectors without retry 1
  9573. 50h req vend format track 2
  9574. 7xh req nondata seek 1
  9575. 8xh IDE vendor vend vendor unique 3
  9576. 90h req nondata execute drive diagnostics 1
  9577. 91h req nondata initialize drive parameters 1
  9578. 92h opt PIOout download microcode
  9579. 94h E0h IDE opt nondata standby immediate 1
  9580. 95h E1h IDE opt nondata idle immediate 1
  9581. 96h E2h IDE opt nondata standby 1
  9582. 97h E3h IDE opt nondata idle 1
  9583. 98h E5h IDE opt nondata check power mode 1
  9584. 99h E6h IDE opt nondata set sleep mode 1
  9585. 9Ah IDE vendor vend vendor unique 1
  9586. A0h ATAPI packet command
  9587. A1h ATAPI opt PIOin ATAPI Identify (see #P0524)
  9588. B0h SMART opt Self Mon., Analysis, Rept. Tech. (see #P0527)
  9589. C0h-C3h IDE vendor vend vendor unique 2
  9590. C4h IDE opt PIOin read multiple 1
  9591. C5h IDE opt PIOout write multiple 3
  9592. C6h IDE opt nondata set multiple mode 1
  9593. C7h ATA-4 Read DMA O/Q
  9594. C8h IDE opt DMA read DMA with retry 1
  9595. C9h IDE opt DMA read DMA without retry 1
  9596. CAh IDE opt DMA write DMA with retry 3
  9597. CBh IDE opt DMA write DMA w/out retry 3
  9598. CCh ATA-4 Write DMA O/Q
  9599. DAh get media status
  9600. DBh ATA-2 opt vend acknowledge media chng [Removable]
  9601. DCh ATA-2 opt vend Boot / Post-Boot [Removable]
  9602. DDh ATA-2 opt vend Boot / Pre-Boot (ATA-2) [Removable]
  9603. DEh ATA-2 opt vend door lock [Removable]
  9604. DFh ATA-2 opt vend door unlock [Removable]
  9605. E0h-E3h (second half of commands 94h-96h)
  9606. E4h IDE opt PIOin read buffer 1
  9607. E5h-E6h (second half of commands 98h-99h)
  9608. E8h IDE opt PIOout write buffer 2
  9609. E9h IDE opt PIOout write same 3
  9610. EAh ATA-3 opt Secure Disable [Security Mode]
  9611. EAh ATA-3 opt Secure Lock [Security Mode]
  9612. EAh ATA-3 opt Secure State [Security Mode]
  9613. EAh ATA-3 opt Secure Enable WriteProt [Security Mode]
  9614. EBh ATA-3 opt Secure Enable [Security Mode]
  9615. EBh ATA-3 opt Secure Unlock [Security Mode]
  9616. ECh IDE req PIOin identify drive 1 (see #P0516)
  9617. EDh ATA-2 opt nondata media eject [Removable]
  9618. EEh ATA-3 opt identify device DMA (see #P0516)
  9619. EFh IDE opt nondata set features 1 (see #P0535)
  9620. F0h-F4h IDE vend EATA standard
  9621. F1h Security Set Password
  9622. F2h Security Unlock
  9623. F3h Security Erase Prepare
  9624. F4h Security Erase Unit
  9625. F5h-FFh IDE vendor vend vendor unique 4
  9626. F5h Security Freeze Lock
  9627. F6h Security Disable Password
  9628. SeeAlso: #P0512,#P0514
  9629. Format of IDE/ATA Identify Drive information:
  9630. Offset Size Description (Table P0516)
  9631. 00h WORD general configuration (see #P0517)
  9632. 02h WORD number of logical cylinders
  9633. 04h WORD reserved
  9634. 06h WORD number of logical heads
  9635. 08h WORD vendor-specific (obsolete: unformatted bytes per track)
  9636. 0Ah WORD vendor-specific (obsolete: unformatted bytes per sector)
  9637. 0Ch WORD number of logical sectors
  9638. 0Eh WORD vendor-specific
  9639. 10h WORD vendor-specific
  9640. 12h WORD vendor-specific
  9641. 14h 10 WORDs serial number
  9642. no serial number if first word is 0000h
  9643. else blank-padded ASCII serial number
  9644. 28h WORD vendor-specific
  9645. [buffer type: 01h single-sector, 02h multisector,
  9646. 03h multisector with read cache]
  9647. 2Ah WORD controller buffer size in 512-byte sectors
  9648. 0000h = unspecified
  9649. 2Ch WORD number of vendor-specific (usually ECC) bytes on
  9650. Read/Write Long; 0000h = unspecified
  9651. 2Eh 4 WORDs firmware revision
  9652. no revision number if first word is 0000h
  9653. else blank-padded ASCII revision number
  9654. 36h 20 WORDs model number
  9655. no model number if first word is 0000h
  9656. else blank-padded ASCII model string
  9657. 5Eh WORD read/write multiple support
  9658. bits 7-0: maximum number of sectors per block supported
  9659. 00h if read/write multiple not supported
  9660. bits 15-8: vendor-specified
  9661. 60h WORD able to do doubleword transfers if nonzero
  9662. 62h WORD capabilities (see #P0518)
  9663. 64h WORD security mode
  9664. bit 15: security-mode feature set supported
  9665. bits 14-8: maximum number of passwords supported
  9666. 66h WORD PIO data transfer cycle timing
  9667. 68h WORD single-word DMA data transfer cycle timing
  9668. 6Ah WORD field validity
  9669. bit 0: offsets 6Ch-75h valid
  9670. bit 1: offsets 80h-8Dh valid
  9671. 6Ch WORD logical cylinders in current translation mode
  9672. 6Eh WORD logical heads in current translation mode
  9673. 70h WORD logical sectors per track in current translation mode
  9674. 72h DWORD current capacity in sectors (excluding device-specific uses)
  9675. 76h WORD multiple-sector support
  9676. bits 7-0: count for read/write multiple command
  9677. bit 8: multiple-sector setting is valid
  9678. 78h DWORD total number of user-addressable sectors (LBA mode)
  9679. 00000000h if LBA mode not supported
  9680. 7Ch WORD single-word DMA transfer modes
  9681. low byte is bitmap of supported modes (bit 0 = mode 0, etc.)
  9682. high bytes is bitmap of active mode (bit 8 = mode 0, etc.)
  9683. 7Eh WORD multiword DMA transfer
  9684. low byte is bitmap of supported modes (bit 0 = mode 0, etc.)
  9685. high byte is bitmap of active mode (bit 8 = mode 0, etc.)
  9686. 80h WORD supported flow control PIO transfer modes
  9687. 82h WORD minimum multiword DMA transfer cycle time in ns
  9688. 84h WORD recommended multiword DMA cycle time in ns
  9689. 86h WORD minimum non-flow-control PIO transfer cycle time in ns
  9690. 88h WORD minimum PIO transfer cycle time with IORDY in ns
  9691. 8Ah 2 WORDs reserved for future PIO modes (0)
  9692. 8Eh 2 WORDs reserved (0)
  9693. 92h WORD command queueing/overlapped operation (see #P0523)
  9694. 94h 6 WORDs reserved (0)
  9695. A0h WORD major revision number of specification to which device conforms
  9696. 01h = ATA-1, 02h = ATA-2, etc. 0000h/FFFFh = not reported
  9697. A2h WORD minor revision number of specification to which device conforms
  9698. 0000h/FFFFh = not reported
  9699. A4h WORD feature set support 1 (see #P0519)
  9700. (only valid if revision reported in A0h/A2h)
  9701. A6h WORD feature set support 2 (see #P0520)
  9702. (only valid if revision reported in A0h/A2h)
  9703. A8h WORD (ATA/ATAPI-4) feature set support extension (see #P0521)
  9704. AAh WORD feature set enabled 1 (see #P0522)
  9705. (only valid if revision reported in A0h/A2h)
  9706. ACh WORD feature set enabled 2 (see #P0520)
  9707. (only valid if revision reported in A0h/A2h)
  9708. AEh WORD (ATA/ATAPI-4) feature set enabled extension (see #P0521)
  9709. B0h 42 WORDs reserved (0)
  9710. 100h 32 WORDs vendor-specific
  9711. 100h WORD security status
  9712. 140h 96 WORDs reserved (0)
  9713. SeeAlso: #P0524,#00267
  9714. Bitfields for IDE general configuration:
  9715. Bit(s) Description (Table P0517)
  9716. 15 device class
  9717. =0 ATA device
  9718. =1 ATAPI device
  9719. 14 requires format speed tolerance gap
  9720. 13 supports track offset option
  9721. 12 supports data strobe offset
  9722. 11 disk rotational sped tolerance > 0.5%
  9723. 10-8 disk transfer rate
  9724. 001 <= 5Mbit/sec
  9725. 010 5-10 Mbit/sec
  9726. 100 > 10Mbit/sec
  9727. 7-6 drive type
  9728. 01 fixed media
  9729. 10 removable media
  9730. 5 synchronized drive motor option enabled
  9731. 4 head-switching time > 15 microseconds
  9732. 3 encoding
  9733. =0 MFM
  9734. 2-1 sector type
  9735. 01 hard-sectored
  9736. 10 soft-sectored
  9737. 0 unused (0)
  9738. SeeAlso: #P0516
  9739. Bitfields for IDE capabilities:
  9740. Bit(s) Description (Table P0518)
  9741. 13 Standby Timer values used according to ATA standard
  9742. 11 IORDY supported
  9743. 10 device can disable use of IORDY
  9744. 9 LBA mode supported
  9745. 8 DMA supported
  9746. SeeAlso: #P0516
  9747. Bitfields for ATA feature set support 1:
  9748. Bit(s) Description (Table P0519)
  9749. 15 Identify Device DMA command is supported
  9750. 14 NOP (00h) command is supported
  9751. 13 Read Buffer command is supported
  9752. 12 Write Buffer command is supported
  9753. 11 Write Verify command is supported
  9754. 10 host protected area feature set is supported
  9755. 9 Device Reset (08h) command is supported
  9756. 8 Service interrupt is supported
  9757. 7 release interrupt is supported
  9758. 6 device supports look-ahead
  9759. 5 device supports write cache
  9760. 4 PACKET command feature set is supported
  9761. 3 power management is supported
  9762. 2 removable-media feature set is supported
  9763. 1 security feature set is supported
  9764. 0 SMART feature set is supported
  9765. Note: values of 0000h and FFFFh indicate that this field is not supported
  9766. SeeAlso: #P0516,#P0520,#P0521
  9767. Bitfields for ATA feature set support/enabled 2:
  9768. Bit(s) Description (Table P0520)
  9769. 15 must be 0 if this field is supported
  9770. 14 must be 1 if this field is supported
  9771. 13-2 reserved
  9772. 1 Read DMA O/Q (C7h) and Write DMA O/Q (CCh) commands supported/enabled
  9773. 0 Download Microcode (92h) command is supported/enabled
  9774. SeeAlso: #P0516,#P0522,#P0519,#P0521
  9775. Bitfields for ATA feature set support extension:
  9776. Bit(s) Description (Table P0521)
  9777. 15 must be 0 if this field is supported
  9778. 14 must be 1 if this field is supported
  9779. 13-0 reserved
  9780. SeeAlso: #P0516,#P0519,#P0520
  9781. Bitfields for ATA feature set enabled 1:
  9782. Bit(s) Description (Table P0522)
  9783. 15 Identify Device DMA command is supported
  9784. 14 NOP (00h) command is supported
  9785. 13 Read Buffer command is supported
  9786. 12 Write Buffer command is supported
  9787. 11 Write Verify command is supported
  9788. 10 host protected area feature set is supported
  9789. 9 Device Reset (08h) command is supported
  9790. 8 Service interrupt is enabled
  9791. 7 release interrupt is enabled
  9792. 6 look-ahead is enabled
  9793. 5 write cache is enabled
  9794. 4 PACKET command feature set is enabled
  9795. 3 power management is enabled
  9796. 2 removable-media feature set is enabled
  9797. 1 security feature set is enabled
  9798. 0 SMART feature set is enabled
  9799. SeeAlso: #P0516,#P0520
  9800. Bitfields for ATA/ATAPI-4 command queueing/overlapped operation support:
  9801. Bit(s) Description (Table P0523)
  9802. 15 reserved
  9803. 14 device supports command queueing
  9804. 13 device supports overlapped operation
  9805. 12-5 reserved
  9806. 4-0 maximum depth of queued commands supported (0 if bit 14 clear)
  9807. SeeAlso: #P0516
  9808. Format of ATAPI Identify Information:
  9809. Offset Size Description (Table P0524)
  9810. 00h WORD general configuration (see #P0525)
  9811. 02h 9 WORDs ???
  9812. 14h 10 WORDs serial number
  9813. no serial number if first word is 0000h
  9814. else blank-padded ASCII serial number
  9815. 28h 3 WORDs vendor-specific
  9816. 2Eh 4 WORDs firmware revision
  9817. no revision number if first word is 0000h
  9818. else blank-padded ASCII revision number
  9819. 36h 20 WORDs model number
  9820. no model number if first word is 0000h
  9821. else blank-padded ASCII model string
  9822. 5Eh WORD vendor-specific
  9823. 60h WORD reserved (0)
  9824. 62h WORD capabilities (see #P0518)
  9825. 64h WORD security mode???
  9826. 66h WORD PIO data transfer cycle timing
  9827. 68h WORD single-word DMA data transfer cycle timing
  9828. 6Ah WORD field validity
  9829. bit 0: offsets 6Ch-73h valid
  9830. bit 1: offsets 80h-8Dh valid
  9831. 6Ch WORD ??? logical cylinders in current translation mode
  9832. 6Eh WORD ??? logical heads in current translation mode
  9833. 70h WORD ??? logical sectors per track in current translation mode
  9834. 72h 2 WORDs ??? current capacity in sectors
  9835. 76h WORD ??? multiple-sector count for read/write multiple command
  9836. 78h 2 WORDs ??? total number of user-addressable sectors (LBA mode)
  9837. 7Ch WORD single-word DMA transfer modes
  9838. low byte is bitmap of supported modes (bit 0 = mode 0, etc.)
  9839. high bytes is bitmap of active mode (bit 8 = mode 0, etc.)
  9840. 7Eh WORD multiword DMA transfer
  9841. low byte is bitmap of supported modes (bit 0 = mode 0, etc.)
  9842. high bytes is bitmap of active mode (bit 8 = mode 0, etc.)
  9843. 80h WORD supported flow control PIO transfer modes
  9844. 82h WORD minimum multiword DMA transfer cycle time
  9845. 84h WORD recommended multiword DMA cycle time
  9846. 86h WORD minimum non-flow-control PIO transfer cycle time
  9847. 88h WORD minimum PIO transfer cycle time with IORDY
  9848. 8Ah 2 WORDs reserved for future PIO modes (0)
  9849. 8Eh WORD typical time for release when processing overlapped CMD in
  9850. microseconds
  9851. 90h WORD ???
  9852. 92h WORD major ATAPI version number
  9853. 94h WORD minor ATAPI version number
  9854. 96h 54 WORDs reserved (0)
  9855. 100h 32 WORDs vendor-specific
  9856. 140h 96 WORDs reserved (0)
  9857. SeeAlso: #P0516
  9858. Bitfields for ATAPI General Configuration:
  9859. Bit(s) Description (Table P0525)
  9860. 15-14 device type
  9861. 0x not ATAPI
  9862. 10 ATAPI
  9863. 11 reserved
  9864. 13 reserved
  9865. 12 device present (non-ATAPI)
  9866. 12-8 ATAPI device type (see #P0526)
  9867. 7 device is removable
  9868. 6-5 CMD DMA Request type
  9869. 00 microprocessor DRQ
  9870. 01 interrupt DRQ
  9871. 10 accelerated DRQ
  9872. 11 reserved
  9873. 4-2 reserved
  9874. 1-0 CMD packet size (00 = 12 bytes, 01 = 16 bytes)
  9875. SeeAlso: #P0524
  9876. (Table P0526)
  9877. Values for ATAPI device type:
  9878. 00h direct-access device (i.e. disk drive)
  9879. 01h sequential-access device (i.e. tape drive)
  9880. 02h printer
  9881. 03h processor
  9882. 04h write-once device
  9883. 05h CD-ROM
  9884. 06h scanner
  9885. 07h optical memory
  9886. 08h medium changer
  9887. 09h communications device
  9888. 0Ah reserved for ACS IT8
  9889. 0Bh reserved for ACS IT8
  9890. 0Ch array controller device (i.e. RAID)
  9891. 0Dh-1Eh reserved
  9892. 1Fh unknown type or no device
  9893. SeeAlso: #P0525
  9894. (Table P0527)
  9895. Values for Self-Monitoring, Analysis, Reporting Technology (SMART) subcommand:
  9896. D0h Read Attribute Values (optional) (see #P0529)
  9897. results returned in 512-byte sector read from controller
  9898. D1h Read Attribute Thresholds (optional) (see #P0528)
  9899. results returned in 512-byte sector read from controller
  9900. D2h Disable Attribute Autosave (optional)
  9901. sector-count register set to 0000h
  9902. D2h Enable Attribute Autosave
  9903. sector-count register set to 00F1h
  9904. D3h Save Attribute Values (optional)
  9905. D4h execute off-line tests immediately (optional)
  9906. D5h-D6h reserved
  9907. D7h vendor-specific
  9908. D8h Enable SMART Operations
  9909. D9h Disable SMART Operations
  9910. DAh Return SMART Status
  9911. if any threshold(s) exceeded, CylinderLow set to F4h and CylinderHigh
  9912. set to 2Ch
  9913. DBh Enable/Disable Automatic Off-Line Data Collection
  9914. sector-count register set to 0000h to disable, 00F8h to enable
  9915. DCh-DFh reserved
  9916. E0h-EFh vendor-specific
  9917. Note: to access SMART commands, the Cylinder Low register must be set to
  9918. 004Fh and the Cylinder High register must be set to 00C2h before
  9919. invoking the SMART command with the SMART command number in the
  9920. Features register
  9921. SeeAlso: #P0515
  9922. Format of S.M.A.R.T. attribute thresholds sector:
  9923. Offset Size Description (Table P0528)
  9924. 00h WORD data structure revision number (0005h for SMART Revision 2.0)
  9925. 02h 12 BYTEs attribute threshold data 1 (see #P0531)
  9926. ...
  9927. 14Eh 12 BYTEs attribute threshold data 30 (see #P0531)
  9928. 16Ah 18 BYTEs reserved (0)
  9929. 17Ch 131 BYTEs vendor-specific
  9930. 1FFh BYTE checksum (two's complement of eight-bit sum of first 511 bytes)
  9931. Note: if the drive provides fewer than 30 attributes, all remaining attribute
  9932. records are filled with NUL (00h) bytes
  9933. SeeAlso: #P0527,#P0529
  9934. Format of S.M.A.R.T. attribute values sector:
  9935. Offset Size Description (Table P0529)
  9936. 00h WORD
  9937. 02h 12 BYTEs attribute value data 1 (see #P0532)
  9938. ...
  9939. 14Eh 12 BYTEs attribute value data 30 (see #P0532)
  9940. 16Ah BYTE off-line data collection status (see #P0533)
  9941. 16Bh BYTE vendor-specific
  9942. 16Ch WORD time to complete off-line data collection, in seconds
  9943. 0001h-FFFFh
  9944. 16Eh BYTE vendor-sepcific
  9945. 16Fh BYTE off-line data collection capability (see #P0534)
  9946. 170h WORD S.M.A.R.T. capabilities (see #P0530)
  9947. 172h 16 BYTEs reserved (0)
  9948. 182h 125 BYTEs vendor-specific
  9949. 1FFh BYTE checksum (two's complement of eight-bit sum of first 511 bytes)
  9950. Note: if the drive provides fewer than 30 attributes, all remaining attribute
  9951. records are filled with NUL (00h) bytes
  9952. SeeAlso: #P0527,#P0528
  9953. Bitfields for S.M.A.R.T capabilities:
  9954. Bit(s) Description (Table P0530)
  9955. 0 attributes saved on going into power-saving mode
  9956. 1 Enable/Disable Attribute Autosave subcommands are supported
  9957. 2-15 reserved
  9958. SeeAlso: #P0529
  9959. Format of S.M.A.R.T. attribute threshold:
  9960. Offset Size Description (Table P0531)
  9961. 00h BYTE attribute ID (01h-FFh)
  9962. 01h BYTE attribute threshold
  9963. 00h always passing
  9964. 01h minimum threshold value
  9965. FDh maximum threshold value
  9966. FEh invalid (do not use)
  9967. FFh always failing (for testing)
  9968. 02h 10 BYTEs reserved (0)
  9969. Note: the attribute ID and actual threshold values are vendor-specific
  9970. SeeAlso: #P0528,#P0532
  9971. Format of S.M.A.R.T attribute value:
  9972. Offset Size Description (Table P0532)
  9973. 00h BYTE attribute ID (01h-FFh)
  9974. 01h WORD status flags
  9975. bit 0: pre-failure/advisory
  9976. =0 value < threshold indicates usage/age exceeding
  9977. design life
  9978. =1 value < threshold indicates pre-failure condition
  9979. bit 1: on-line data collection
  9980. bits 2-5 vendor-specific
  9981. bits 6-15 reserved
  9982. 03h BYTE attribute value (01h-FDh)
  9983. initial value prior to data collection is 64h
  9984. 04h 8 BYTEs vendor-specific
  9985. SeeAlso: #P0529,#P0531
  9986. (Table P0533)
  9987. Values for S.M.A.R.T. off-line data collection status:
  9988. 00h off-line collection never started
  9989. 01h reserved
  9990. 02h off-line data collection completed successfully
  9991. 03h reserved
  9992. 04h off-line data collection suspended by command from host
  9993. 05h off-line data collection aborted by command from host
  9994. 06h off-line data collection aborted due to fatal error
  9995. 07h-3Fh reserved
  9996. 40h-7Fh vendor-specific
  9997. 80h off-line collection never started (auto-offline feature enabled)
  9998. 81h reserved
  9999. 82h off-line data collection completed successfully (auto-offline feature
  10000. enabled)
  10001. 83h reserved
  10002. 84h off-line data collection suspended by command from host (auto-offline
  10003. feature enabled)
  10004. 85h off-line data collection aborted by command from host (auto-offline
  10005. feature enabled)
  10006. 86h off-line data collection aborted due to fatal error (auto-offline
  10007. feature enabled)
  10008. 87h-BFh reserved
  10009. C0h-FFh vendor-specific
  10010. SeeAlso: #P0529,#P0534
  10011. Bitfields for S.M.A.R.T. off-line data collection capabilities:
  10012. Bit(s) Description (Table P0534)
  10013. 0 Execute Off-Line Immediate (D4h) subcommand is implemented
  10014. 1 Enable/Disable Automatic Off-Line subcommand is implemented
  10015. 2 abort/resume on interrupting command
  10016. =0 off-line resumes automatically after an interrupting command
  10017. =1 off-line collection is aborted by an interrupting command
  10018. 3-7 reserved
  10019. SeeAlso: #P0527
  10020. (Table P0535)
  10021. Values for Feature Code:
  10022. 01h [opt] 8-bit instead of 16-bit data transfers
  10023. 02h [opt] enable write cache
  10024. 03h set transfer mode as specified by Sector Count register
  10025. 04h [opt] enable all automatic defect reassignment
  10026. 22h [opt] Write Same, user-specified area
  10027. 33h [opt] disable retries
  10028. 44h specify length of ECC bytes used by Read Long and Write Long
  10029. 54h [opt] set cache segments (value in Sector Count register)
  10030. 55h disable look-ahead
  10031. 66h disable reverting to power-on defaults
  10032. 77h [opt] disable ECC
  10033. 81h [opt] 16-bit instead of 8-bit data transfers
  10034. 82h [opt] disable write cache
  10035. 84h [opt] disable all automatic defect reassignment
  10036. 88h [opt] enable ECC
  10037. 99h [opt] enable retries
  10038. 9Ah [opt] set device maximum average current
  10039. AAh enable look-ahead
  10040. ABh [opt] set maximum prefecth (value in Sector Count register)
  10041. BBh use four bytes of ECC on Read Long and Write Long (for compat.)
  10042. CCh enable reverting to power-on defaults
  10043. DDh [opt] Write Same, entire disk
  10044. SeeAlso: #00266
  10045. ----------P01F001F6--------------------------
  10046. PORT 01F0-01F6 - OPTi "Vendetta" (82C750) CHIPSET - PRIMARY IDE CONTROLLER
  10047. Note: to unlock access to these ports, you must perform two immediately
  10048. successive 16-bit INs from PORT 01F1h, followed by 8-bit OUT of 03h
  10049. to PORT 1F2h
  10050. SeeAlso: PORT 0170h"Vendetta",PORT 01F0h"HDC 1"
  10051. 01F0 RW read cycle timing register (see #P0536)
  10052. 01F1 RW write cycle timing register (see #P0537)
  10053. 01F2 RW internal ID register (see #P0538)
  10054. 01F3 RW control register (see #P0539)
  10055. 01F5 RW strap register (see #P0540)
  10056. 01F6 RW miscellaneous register (see #P0541)
  10057. Bitfields for OPTi "Vendetta" IDE controller read cycle timing register:
  10058. Bit(s) Description (Table P0536)
  10059. 7-4 DRD# pulse width - 1 LCLKs on 16-bit IDE data register read
  10060. 3-0 recovery time between DRD# and DA2-0/DCSx# - 2 LCLKs after 16-bit IDE
  10061. data register read
  10062. Notes: if register 1F6h/176h bit 0 = 0, controls drive selected by
  10063. register 1F3h/173h bits 3-2
  10064. if register 1F6h/176h bit 0 = 1, controls drive not selected by
  10065. register 1F3h/173h bits 3-2, if register 1F3h/173h bit 7 = 1
  10066. SeeAlso: #P0537,#P0538,#P0539
  10067. Bitfields for OPTi "Vendetta" IDE controller write cycle timing register:
  10068. Bit(s) Description (Table P0537)
  10069. 7-4 DWR# pulse width - 1 LCLKs on 16-bit IDE data register write
  10070. 3-0 recovery time between DWR# and DA2-0/DCSx# - 2 LCLKs after 16-bit IDE
  10071. data register write
  10072. Notes: if register 1F6h/176h bit 0 = 0, controls drive selected by
  10073. register 1F3h/173h bits 3-2
  10074. if register 1F6h/176h bit 0 = 1, controls drive not selected by
  10075. register 1F3h/173h bits 3-2, if register 1F3h/173h bit 7 = 1
  10076. SeeAlso: #P0536,#P0539
  10077. Bitfields for OPTi "Vendetta" IDE controller internal ID register:
  10078. Bit(s) Description (Table P0538)
  10079. 7 controller register access disable (write-only)
  10080. 6 controller register access disable until power-down or reset
  10081. (write-only)
  10082. 5-2 reserved (read-only)
  10083. 1-0 reserved (11, otherwise all controller register writes blocked)
  10084. SeeAlso: #P0540
  10085. Bitfields for OPTi "Vendetta" IDE controller control register:
  10086. Bit(s) Description (Table P0539)
  10087. 7 enable 1F0h-1F1h/170h-171h and 1F6h/176h bits 5-1 cycle timing
  10088. set for drive not selected by 1F3h/173h bits 3-2
  10089. 6-5 reserved (read-only)
  10090. 4 (primary IDE controller) minimum read wait states
  10091. 0 = 2 wait states
  10092. 1 = 1 wait states
  10093. (secondary IDE controller) reserved
  10094. 3 enable 1F0h-1F1h/170h-171h cycle timing set for drive 1
  10095. 2 enable 1F0h-1F1h/170h-171h cycle timing set for drive 0
  10096. 1 reserved
  10097. 0 reserved (1) (read-only)
  10098. SeeAlso: #P0540,#P0541
  10099. Bitfields for OPTi "Vendetta" IDE controller strap register:
  10100. Bit(s) Description (Table P0540)
  10101. 7 reserved (1) (read-only)
  10102. 6-5 revision number (read-only)
  10103. 11 = chip revision in PCI configuration register 08h (see #00878)
  10104. (see #00931)
  10105. 4 (primary IDE controller) DINTR state (read-only)
  10106. (secondary IDE controller) SDINTR state (read-only)
  10107. 3-2 (primary IDE controller only) IDE device cycle time (read-only)
  10108. value determined by PCI config register 40h bits 1-0 (see #00931)
  10109. 1 reserved (1) (read-only)
  10110. 0 (primary IDE controller only) PCI CLK
  10111. 0 = 33 MHz
  10112. 1 = 25 MHz
  10113. SeeAlso: #P0539,#P0541,#P0538
  10114. Bitfields for OPTi "Vendetta" IDE controller miscellaneous register:
  10115. Bit(s) Description (Table P0541)
  10116. 7 reserved
  10117. 6 read prefetch enable
  10118. 5-4 address setup time between DRD#/DWR# active and
  10119. DA2-0/DCS3#/DCS1# - 1 LCLKs
  10120. 3-1 minimum number of LCLKs between DRDY# high and DRD#/DRW# inactive - 2
  10121. 0 cycle timing register switch (1F0h/170h and 1F1h/171h)
  10122. SeeAlso: #P0539,#P0540
  10123. ----------P01F8------------------------------
  10124. PORT 01F8 - ???
  10125. 01F8 RW ???
  10126. bit 0: A20 gate control (set = A20 enabled, clear = disabled)
  10127. ----------P01F901FF--------------------------
  10128. PORT 01F9-01FF - PC radio by CoZet Info Systems
  10129. Range: The I/O address range is dipswitch selectable from:
  10130. 038-03F and 0B0-0BF
  10131. 078-07F and 0F0-0FF
  10132. 138-13F and 1B0-1BF
  10133. 178-17F and 1F0-1FF
  10134. 238-23F and 2B0-2BF
  10135. 278-27F and 2F0-2FF
  10136. 338-33F and 3B0-3BF
  10137. 378-37F and 3F0-3FF
  10138. Notes: All of these addresses show a readout of FFh in initial state.
  10139. Once started, all of the addresses show FBh, whatever might happen.
  10140. --------d-P0200------------------------------
  10141. PORT 0200 - Digidesign 'Session 8' HARD-DISK RECORDING SYSTEM
  10142. SeeAlso: PORT 0300h"Digidesign"
  10143. ----------P0200020F--------------------------
  10144. PORT 0200-020F - Game port reserved I/O address space
  10145. 0200-0207 - Game port, eight identical addresses on some boards
  10146. 0201 R- read joystick position and status (see #P0542)
  10147. 0201 -W fire joystick's four one-shots
  10148. 0201 RW gameport on mc-soundmachine, mc 03-04/1992: Adlib-compatible,
  10149. Covox 'voice master' & 'speech thing' compatible soundcard.
  10150. (enabled if bit1=1 in PORT 038Fh. Because it is disabled on
  10151. power-on, it cannot be found by BIOS) (see PORT 0388h-038Fh)
  10152. Bitfields for joystick position and status:
  10153. Bit(s) Description (Table P0542)
  10154. 7 status B joystick button 2 / D paddle button
  10155. 6 status B joystick button 1 / C paddle button
  10156. 5 status A joystick button 2 / B paddle button
  10157. 4 status A joystick button 1 / A paddle button
  10158. 3 B joystick Y coordinate / D paddle coordinate
  10159. 2 B joystick X coordinate / C paddle coordinate
  10160. 1 A joystick Y coordinate / B paddle coordinate
  10161. 0 A joystick X coordinate / A paddle coordinate
  10162. ----------P020002FF--------------------------
  10163. PORT 0200-02FF - Sunshine uPW48, programmer for EPROM version CPU's 8748/8749
  10164. Range: 4 bit DIP switch installable in the range 20x-2Fx
  10165. 0200-0203 adresses of the 8255 on the uPW48
  10166. 0208-020B adresses of ??? on the uPW48 (all showing zeros)
  10167. ----------P02080209--------------------------
  10168. PORT 0208-0209 - Intel 82C212B "Neat" chipset - EMS emulation control
  10169. Range: may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, 02E8
  10170. ----------P0208020A--------------------------
  10171. PORT 0208-020A - Chips&Technologies 82C235 "SCAT" chipset - EMS PAGE REGISTERS
  10172. Range: PORT 0208h or PORT 0218h, depending on configuration register 4Fh
  10173. (see #P0067)
  10174. SeeAlso: PORT 0022h"82C235"
  10175. 0208 RW EMS page register
  10176. 0209 RW EMS page register
  10177. 020A RW EMS page register
  10178. ----------P020C020F--------------------------
  10179. PORT 020C-020F - AIMS LAB PC Radio
  10180. Range: configurable to PORT 020Ch or PORT 030Ch
  10181. Notes: writing a value with bit 3 set to one of these ports turns on the
  10182. radio; writing a value with bit 3 clear turns it off
  10183. PORT 020Eh bits 1 indicates status of some kind
  10184. ----------P02100217--------------------------
  10185. PORT 0210-0217 - Expansion unit (XT)
  10186. 0210 -W latch expansion bus data
  10187. 0210 R- verify expansion bus data
  10188. 0211 -W clear wait, test latch
  10189. 0211 R- High byte data address
  10190. 0212 R- Low byte data address
  10191. 0213 -W 0=enable, 1=disable expansion unit
  10192. 0214 -W latch data (receiver card port)
  10193. 0214 R- read data (receiver card port)
  10194. 0215 R- High byte of address, then Low byte (receiver card port)
  10195. ----------P02100211--------------------------
  10196. PORT 0210-0211 - Game Blaster
  10197. Range: PORT 02x0h-02x1h, x=1,2,...
  10198. 0210 -W register index
  10199. 0211 ?W register data
  10200. ----------P02180219--------------------------
  10201. PORT 0218-0219 - Intel 82C212B "Neat" chipset - EMS emulation control
  10202. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10203. ----------P0218021A--------------------------
  10204. PORT 0218-021A - Chips&Technologies 82C235 "SCAT" chipset - EMS PAGE REGISTERS
  10205. Range: PORT 0208h or PORT 0218h, depending on configuration register 4Fh
  10206. (see #P0067)
  10207. SeeAlso: PORT 0022h"82C235"
  10208. 0218 RW EMS page register
  10209. 0219 RW EMS page register
  10210. 021A RW EMS page register
  10211. ----------P02200223--------------------------
  10212. PORT 0220-0223 - Sound Blaster / Adlib port (Stereo)
  10213. SeeAlso: PORT 0388h-0389h
  10214. 0220 R- Left speaker -- Status port
  10215. 0220 -W Left speaker -- Address port
  10216. 0221 -W Left speaker -- Data port
  10217. 0222 R- Right speaker -- Status port
  10218. 0222 -W Right speaker -- Address port
  10219. 0223 -W Right speaker -- Data port
  10220. ----------P02200227--------------------------
  10221. PORT 0220-0227 - Soundblaster PRO and SSB 16 ASP
  10222. ----------P02200228--------------------------
  10223. PORT 0220-0228 - C&T 82C570 CHIPSlink '3270' Protocol Controller
  10224. !!!chips\82c570.pdf p.7
  10225. ----------P0220022F--------------------------
  10226. PORT 0220-022F - Soundblaster PRO 2.0
  10227. ----------P0220022F--------------------------
  10228. PORT 0220-022F - Soundblaster PRO 4.0
  10229. Note: the FM music is accessible on 0388/0389 for compatibility.
  10230. 0220 R- left FM status port
  10231. 0220 -W left FM music register address port (index)
  10232. 0221 RW left FM music data port
  10233. 0222 R- right FM status port
  10234. 0222 -W right FM music register address port (index)
  10235. 0223 RW right FM music data port
  10236. 0224 -W mixer register address port (index) (see #P0543)
  10237. 0225 RW mixer data port
  10238. 0226 -W DSP reset
  10239. 0228 R- FM music status port
  10240. 0228 -W FM music register address port (index)
  10241. 0229 -W FM music data port
  10242. 022A R- DSP read data (voice I/O and Midi)
  10243. 022C -W DSP write data / write command
  10244. 022C R- DSP write buffer status (bit 7)
  10245. 022E R- DSP data available status (bit 7)
  10246. (Table P0543)
  10247. Values for SB Mixer register index:
  10248. Index Description PORT 0225h data
  10249. 00h reset 00h = zero all mixer controls
  10250. 04h voice select high nybble = left, low nybble = right
  10251. 0Ah microphone gain bits 2-0 = gain
  10252. 22h master gain high nybble = left, low nybble = right
  10253. 26h MIDI gain high nybble = left, low nybble = right
  10254. 28h CD gain high nybble = left, low nybble = right
  10255. 2Eh Line In high nybble = left, low nybble = right
  10256. 30h Master Left bits 7-3 = volume
  10257. 31h Master Right bits 7-3 = volume
  10258. 32h Voice Left bits 7-3 = volume
  10259. 33h Voice Right bits 7-3 = volume
  10260. 34h MIDI Left bits 7-3 = volume
  10261. 35h MIDI Right bits 7-3 = volume
  10262. 36h CD Left bits 7-3 = volume
  10263. 37h CD Right bits 7-3 = volume
  10264. 38h LineIn Left bits 7-3 = volume
  10265. 39h LineIn Right bits 7-3 = volume
  10266. 3Ah Microphone bits 7-3 = gain
  10267. 3Bh PC speaker bits 7-3 = volume
  10268. 3Ch Sound Output highest set bit is enabled source (see #P0544)
  10269. 3Dh Sound Source (left) highest set bit is enabled source (see #P0544)
  10270. 3Eh Sound Source (right) highest set bit is enabled source (see #P0544)
  10271. 40h In gain bits 7-6 = gain
  10272. (00 = x1, 01 = x2, 10 = x4, 11 = x8)
  10273. 41h Out gain (left) bits 7-6 = gain (as for In)
  10274. 42h Out gain (right) bits 7-6 = gain (as for In)
  10275. 43h Automatic Gain Control bit 0 = enable
  10276. 44h Treble (left) bits 7-3 = volume
  10277. 45h Treble (right) bits 7-3 = volume
  10278. 46h Bass (left) bits 7-3 = volume
  10279. 47h Bass (right) bits 7-3 = volume
  10280. Bitfields for SB Mixer sound source:
  10281. Bit(s) Description (Table P0544)
  10282. 7 PC speaker???
  10283. 6 MIDI left
  10284. 5 MIDI right
  10285. 4 LineIn left
  10286. 3 LineIn right
  10287. 2 CD left
  10288. 1 CD right
  10289. 0 microphone
  10290. Note: bits 7-5 are ignored for Sound Output register
  10291. SeeAlso: #P0543
  10292. ----------P022B------------------------------
  10293. PORT 022B - GI1904 Scanner Interface Adapter
  10294. Range: PORT 026Bh, PORT 02ABh (default), PORT 02EBh, PORT 032Bh, PORT 036Bh
  10295. Range: PORT 03ABh, PORT 03EBh
  10296. ----------P022C------------------------------
  10297. PORT 022C - GS-IF Scanner Interface adapter
  10298. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  10299. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  10300. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  10301. others use this interface
  10302. ----------P022F------------------------------
  10303. PORT 022F - mc-soundmachine, mc 03-04/1992 - SPEECH I/O
  10304. Note: An Adlib-compatible Covox 'voice master' & 'speech thing' compatible
  10305. soundcard
  10306. SeeAlso: PORT 0378h"Covox",PORT 0388h-038Fh"soundmachine"
  10307. 022F RW Covox compatible speech I/O (via internal A/D converter,
  10308. each read access starts a new conversion cycle)
  10309. register enabled if bit7=1 in PORT 038Fh
  10310. ----------P02300233--------------------------
  10311. PORT 0230-0233 - Adaptec 154xB/154xC SCSI adapter.
  10312. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  10313. ----------P02340237--------------------------
  10314. PORT 0234-0237 - Adaptec 154xB/154xC SCSI adapter.
  10315. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  10316. ----------P0238023F--------------------------
  10317. PORT 0238-023F - COM port addresses on UniRAM card by German magazine c't
  10318. selectable from 238, 2E8, 2F8, 338, 3E0, 3E8, 3F8
  10319. ----------P0238023B--------------------------
  10320. PORT 0238-023B - Bus Mouse Port (secondary address)
  10321. InstallCheck: read the ID Port twice; if installed, the first byte
  10322. returned will be DEh, and the second will vary by card
  10323. (revision number???)
  10324. Note: secondary address for bus mice from MS and Logitech, and the ATI
  10325. video adapter mouse
  10326. SeeAlso: PORT 023Ch"Mouse"
  10327. 0238 ?W Command port
  10328. 0239 ?W Data port
  10329. 023A R? ID Port
  10330. ----------P023C023F--------------------------
  10331. PORT 023C-023F - Bus Mouse Port (primary address)
  10332. InstallCheck: read the ID Port twice; if installed, the first byte
  10333. returned will be DEh, and the second will vary by card
  10334. (revision number???)
  10335. Note: primary address for bus mice from MS and Logitech, the ATI video
  10336. adapter mouse, and the Commodore PC30III bus mouse
  10337. SeeAlso: PORT 0238h"Mouse"
  10338. 023C ?W Command port
  10339. 023D ?W Data port
  10340. 023E R? ID Port
  10341. ----------P0240024F--------------------------
  10342. PORT 0240-024F - Gravis Ultra Sound by Advanced Gravis
  10343. Range: The I/O address range is dipswitch selectable from:
  10344. 0200-020F and 0300-030F
  10345. 0210-021F and 0310-031F
  10346. 0220-022F and 0320-032F
  10347. 0230-023F and 0330-033F
  10348. 0240-024F and 0340-034F
  10349. 0250-025F and 0350-035F
  10350. 0260-026F and 0360-036F
  10351. 0270-027F and 0370-037F
  10352. SeeAlso: PORT 0340h-034Fh,PORT 0746h
  10353. 0240 -W Mix Control register (see #P0545)
  10354. 0241 R- Read Data
  10355. 0241 -W Trigger Timer
  10356. 0246 R- IRQ Status Register (see #P0546)
  10357. 0248 RW Timer Control Reg
  10358. Same as ADLIB Board (see PORT 0200h)
  10359. 0249 -W Timer Data (see #P0547)
  10360. 024B -W IRQ Control Register (0240 bit 6 = 1) (see #P0548)
  10361. 024B -W DMA Control Register (0240 bit 6 = 0) (see #P0549)
  10362. 024F RW Register Controls (rev 3.4+)
  10363. Bitfields for Gravis Ultra Sound mix control register:
  10364. Bit(s) Description (Table P0545)
  10365. 6 Control Register Select (see 024B)
  10366. 5 Enable MIDI Loopback
  10367. 4 Combine GF1 IRQ with MIDI IRQ
  10368. 3 Enable Latches
  10369. 2 Enable MIC IN
  10370. 1 Disable LINE OUT
  10371. 0 Disable LINE IN
  10372. SeeAlso: #P0546
  10373. Bitfields for Gravis Ultra Sound IRQ status register:
  10374. Bit(s) Description (Table P0546)
  10375. 7 DMA TC IRQ
  10376. 6 Volume Ramp IRQ
  10377. 5 WaveTable IRQ
  10378. 3 Timer 2 IRQ
  10379. 2 Timer 1 IRQ
  10380. 1 MIDI Receive IRQ
  10381. 0 MIDI Transmit IRQ
  10382. SeeAlso: #P0545,#P0548,#P0549
  10383. Bitfields for Gravis Ultra Sound timer data:
  10384. Bit(s) Description (Table P0547)
  10385. 7 Reset Timr IRQ
  10386. 6 Mask Timer 1
  10387. 5 Mask Timer 2
  10388. 1 Timer 2 Start
  10389. 0 Timer 1 Start
  10390. SeeAlso: #P0546,#P0548
  10391. Bitfields for Gravis Ultra Sound IRQ control register:
  10392. Bit(s) Description (Table P0548)
  10393. 6 Combine Both IRQ
  10394. 5-3 MIDI IRQ Selector
  10395. 000 No IRQ
  10396. 001 IRQ 2
  10397. 010 IRQ 5
  10398. 011 IRQ 3
  10399. 100 IRQ 7
  10400. 101 IRQ 11
  10401. 110 IRQ 12
  10402. 111 IRQ 15
  10403. 2-0 GF1 IRQ Selector
  10404. 000 No IRQ
  10405. 001 IRQ 2
  10406. 010 IRQ 5
  10407. 011 IRQ 3
  10408. 100 IRQ 7
  10409. 101 IRQ 11
  10410. 110 IRQ 12
  10411. 111 IRQ 15
  10412. SeeAlso: #P0546,#P0549
  10413. Bitfields for Gravis Ultra Sound DMA Control Register:
  10414. Bit(s) Description (Table P0549)
  10415. 6 Combine Both DMA
  10416. 5-3 DMA Select Register 2
  10417. 000 No DMA
  10418. 001 DMA 1
  10419. 010 DMA 3
  10420. 011 DMA 5
  10421. 100 DMA 6
  10422. 101 DMA 7
  10423. 2-0 DMA Select Register 1
  10424. 000 No DMA
  10425. 001 DMA 1
  10426. 010 DMA 3
  10427. 011 DMA 5
  10428. 100 DMA 6
  10429. 101 DMA 7
  10430. SeeAlso: #P0546,#P0548,#P0591
  10431. ----------P02400257--------------------------
  10432. PORT 0240-0257 - RTC (alternate Real Time Clock for XT) (1st at 0340-0357)
  10433. (used by TIMER.COM v1.2 which is the 'standard' timer program)
  10434. ----------P02580259--------------------------
  10435. PORT 0258-0259 - Intel 82C212B "Neat" chipset - EMS emulation control
  10436. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10437. ----------P02580259--------------------------
  10438. PORT 0258-0259 - AT RAMBANK Memory Expansion Board - EXT MEMORY AND EMS-SUPPORT
  10439. Range: base address may be set to 0218h, 0228h, 0238h, 0258h, 0268h, 0298h,
  10440. or 02A8h
  10441. ----------P0258025F--------------------------
  10442. PORT 0258-025F - Intel Above Board
  10443. ----------P02600268--------------------------
  10444. PORT 0260-0268 - LPT port address on the UniRAM card by German magazine c't
  10445. selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.
  10446. ----------P02680269--------------------------
  10447. PORT 0268-0269 - Intel 82C212B "Neat" chipset - EMS emulation control
  10448. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10449. ----------P026B------------------------------
  10450. PORT 026B - GI1904 Scanner Interface Adapter
  10451. Range: PORT 022Bh, PORT 02ABh (default), PORT 02EBh, PORT 032Bh, PORT 036Bh
  10452. Range: PORT 03ABh, PORT 03EBh
  10453. ----------P026C------------------------------
  10454. PORT 026C - GS-IF Scanner Interface adapter
  10455. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  10456. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  10457. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  10458. others use this interface
  10459. ----------P026E026F--------------------------
  10460. PORT 026E-026F - Dell Enhanced Parallel Port
  10461. SeeAlso: PORT 002Eh,PORT 015Ch,PORT 0398h
  10462. 026E -W index for data port
  10463. 026F RW EPP command data
  10464. ----------P026E026F--------------------------
  10465. PORT 026E-026F - Intel 82091AA Advanced Integrated Peripheral
  10466. Range: PORT 0022h (X-Bus), PORT 0024h (X-Bus), PORT 026Eh (ISA), or
  10467. PORT 0398h (ISA)
  10468. SeeAlso: PORT 0022h"82091AA",PORT 0024h"82091AA",PORT 0398h"82091AA"
  10469. 026E ?W configuration register index
  10470. 026F RW configuration register data
  10471. ----------P0278------------------------------
  10472. PORT 0278 - Covox 'Speech Thing' COMPATIBLES
  10473. SeeAlso: PORT 022Fh"Covox",PORT 0388h-038Fh"soundmachine"
  10474. 0278 -W speech data output via printer data port
  10475. (with mc-soundmachine, enabled if bit5=1 in 38F)
  10476. ----------P0278027A--------------------------
  10477. PORT 0278-027A - PARALLEL PRINTER PORT (usually LPT1, sometimes LPT2)
  10478. Range: usually PORT 03BCh, PORT 0278h, or PORT 0378h
  10479. SeeAlso: PORT 0278h"EPP",MEM 0040h:0008h,INT 17/AH=00h
  10480. 0278 -W data port
  10481. 0279 R- status port (see #P0658 at PORT 03BCh)
  10482. 027A RW control port (see #P0659 at PORT 03BCh)
  10483. ----------P0278027F--------------------------
  10484. PORT 0278-027F - Intel 82360SL/82091AA - EPP-mode PARALLEL PORT
  10485. Range: PORT 0278h or PORT 0378h
  10486. SeeAlso: PORT 0278h"LPT1",PORT 0678h"ECP"
  10487. 0278-027A as for standard parallel port
  10488. 027B RW address strobe
  10489. 027C RW data strobe 0
  10490. 027D RW data strobe 1
  10491. 027E RW data strobe 2
  10492. 027F RW data strobe 3
  10493. ----------P0279------------------------------
  10494. PORT 0279 - Plug-and-Play - CONFIGURATION REGISTER
  10495. SeeAlso: PORT 0A79h
  10496. 0279 -W index into Plug-and-Play register set for Read Data Port and
  10497. Write Data Port I/O (see #P0550,#P0551)
  10498. (Table P0550)
  10499. Values for Plug-and-Play Card-Level Registers:
  10500. 00h set Read Port address
  10501. bits 9-2 of Read Data port address (bits 15-10 are always 0, bits 1-0
  10502. are always 11); valid Read Port addresses are 0203h-03FFh
  10503. 01h serial isolation
  10504. 02h configuration control
  10505. 03h Wake command
  10506. (specifies which card is accessed through configuration registers)
  10507. 04h resource data
  10508. 05h status
  10509. 06h Card Select Number (CSN)
  10510. 07h logical device number
  10511. (selects which logical device on card is accessed at locations 30h-FFh)
  10512. (see #P0551)
  10513. 08h-1Fh reserved
  10514. 20h-2Fh vendor-specific
  10515. Note: there is one set of these registers per installed card
  10516. SeeAlso: #P0551
  10517. (Table P0551)
  10518. Values for Plug-and-Play Logical Device Registers:
  10519. 30h activate
  10520. bit 0: device is active on ISA bus
  10521. bits 7-1: reserved (0)
  10522. 31h I/O range check
  10523. bit 0: I/O Read Pattern select (if bit 1 set, then I/O reads return
  10524. 55h if this bit is set, AAh if this bit is clear)
  10525. bit 1: I/O Range Check Enable: if set, all reads from device I/O
  10526. registers return 55h or AAh, depending on bit 0
  10527. bits 7-2: reserved (0)
  10528. 32h-37h reserved
  10529. 38h-3Fh vendor-specific
  10530. 40h-44h 24-bit ISA memory descriptor 0
  10531. 45h-47h reserved
  10532. 48h-4Ch 24-bit ISA memory descriptor 1
  10533. 4Dh-4Fh reserved
  10534. 50h-54h 24-bit ISA memory descriptor 2
  10535. 55h-57h reserved
  10536. 58h-5Ch 24-bit ISA memory descriptor 3
  10537. 5Dh-5Fh reserved
  10538. 60h-6Fh I/O configuration registers 0-7
  10539. 70h-71h IRQ channel select 0
  10540. 72h-73h IRQ channel select 1
  10541. 74h-75h DMA configuration registers 0-1
  10542. 76h-7Eh 32-bit memory range configuration register 0
  10543. 7Fh reserved
  10544. 80h-88h 32-bit memory range configuration register 1
  10545. 89h-8Fh reserved
  10546. 90h-98h 32-bit memory range configuration register 2
  10547. 99h-9Fh reserved
  10548. A0h-A8h 32-bit memory range configuration register 3
  10549. A9h-EFh reserved for logical device configuration
  10550. F0h-FEh vendor-specific
  10551. FFh reserved
  10552. Note: there is one set of these registers per logical device
  10553. SeeAlso: #P0550
  10554. ----------P0280------------------------------
  10555. PORT 0280 - LCD display on Wyse 2108 PC
  10556. ----------P02800288--------------------------
  10557. PORT 0280-0288 - non-standard COM port addresses (V20-XT by German magazine c't)
  10558. selectable from 0280, 0288, 0290, 0298, 6A0, 6A8
  10559. --------s-P02800283--------------------------
  10560. PORT 0280-0283 - Pro Audio Spectrum 16 (PAS16)
  10561. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  10562. PORT 0388h (default), or PORT 038Ch
  10563. ----------P0288028F--------------------------
  10564. PORT 0288-028F - non-standard COM port addresses (V20-XT by German magazine c't)
  10565. 0280-0288 selectable from 0280, 0288, 0290, 0298, 06A0, 06A8
  10566. 0290-0298
  10567. 0298-029F
  10568. --------s-P02840287--------------------------
  10569. PORT 0284-0287 - Pro Audio Spectrum 16 (PAS16)
  10570. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  10571. PORT 0388h (default), or PORT 038Ch
  10572. --------s-P0288028F--------------------------
  10573. PORT 0288-028F - Pro Audio Spectrum 16 (PAS16)
  10574. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  10575. PORT 0388h (default), or PORT 038Ch
  10576. --------s-P028C028F--------------------------
  10577. PORT 028C-028F - Pro Audio Spectrum 16 (PAS16)
  10578. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  10579. PORT 0388h (default), or PORT 038Ch
  10580. ----------P02A002A7--------------------------
  10581. PORT 02A0-02A7 - Sunshine EW-901BN, EW-904BN
  10582. EPROM writer card (release 1986) for EPROMs up to 27512
  10583. 02A0-02A3 adresses of the 8255 on the EW-90xBN
  10584. ----------P02A202A3--------------------------
  10585. PORT 02A2-02A3 - MSM58321RS clock
  10586. ----------P02A802A9--------------------------
  10587. PORT 02A8-02A9 - Intel 82C212B "Neat" chipset - EMS emulation control
  10588. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10589. ----------P02AB------------------------------
  10590. PORT 02AB - GI1904 Scanner Interface Adapter (default)
  10591. Range: PORT 022Bh, PORT 026Bh, PORT 02EBh, PORT 032Bh, PORT 036Bh
  10592. Range: PORT 03ABh, PORT 03EBh
  10593. Note: the GI1904 is used by many SPI 400/800dpi gray/halftone/color handy
  10594. scanners by Marstek, Mustek, Conrad, V”lkner and others
  10595. ----------P02AC------------------------------
  10596. PORT 02AC - GS-IF Scanner Interface adapter
  10597. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  10598. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  10599. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  10600. others use this interface
  10601. ----------P02B002BF--------------------------
  10602. PORT 02B0-02BF - Trantor SCSI adapter
  10603. ----------P02B002DF--------------------------
  10604. PORT 02B0-02DF - alternate EGA, primary EGA at 03C0
  10605. ----------P02B802B9--------------------------
  10606. PORT 02B8-02B9 - Intel 82C212B "Neat" chipset - EMS emulation control
  10607. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10608. ----------P02C002Cx--------------------------
  10609. PORT 02C0-02Cx - AST-clock
  10610. ----------P02C002DF--------------------------
  10611. PORT 02C0-02DF - XT-Real Time Clock 2 (default jumpered address)
  10612. ----------P02C002CF--------------------------
  10613. PORT 02C0-02CF - EGA (2nd adapter)
  10614. SeeAlso: PORT 03C0h
  10615. --------V-P02C602C9--------------------------
  10616. PORT 02C6-02C9 - VGA/MCGA - DAC REGISTERS (alternate address)
  10617. Range: PORT 03C6h or PORT 02C6h (alternate)
  10618. SeeAlso: PORT 03C6h
  10619. ----------P02D002DA--------------------------
  10620. PORT 02D0-02DA - C&T 82C570 CHIPSlink '3270' Protocol Controller
  10621. !!!chips\82c570.pdf p.12
  10622. ----------P02E002E8--------------------------
  10623. PORT 02E0-02E8 - LPT port address on the UniRAM card by German magazine c't
  10624. Range: base address selectable from 0260, 02E0, 02E8, 02F0, 03E0, and 03E8.
  10625. ----------P02E002EF--------------------------
  10626. PORT 02E0-02EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  10627. (GAB 0 on XT)
  10628. 02E1 ?? GPIB (adapter 0)
  10629. 02E2
  10630. 02E3
  10631. ----------P02E002EF--------------------------
  10632. PORT 02E0-02EF - data aquisition (AT)
  10633. 02E2 ?? data aquisition (adapter 0)
  10634. 02E3 ?? data aquisition (adapter 0)
  10635. ----------P02E8------------------------------
  10636. PORT 02E8 - S3 86C928 video controller (ELSA Winner 1000)
  10637. ----------P02E802E9--------------------------
  10638. PORT 02E8-02E9 - Intel 82C212B "Neat" chipset - EMS emulation control
  10639. Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8
  10640. ----------P02E802EF--------------------------
  10641. PORT 02E8-02EF - serial port, same as 02F8, 03E8 and 03F8 (COM4)
  10642. ----------P02E802EF--------------------------
  10643. PORT 02E8-02EF - 8514/A and compatible (e.g. ATI Graphics Ultra)
  10644. 02E8 R- display status
  10645. 02E8 -W horizontal total
  10646. 02EA RW Lookup: DAC mask
  10647. 02EB -W Lookup: DAC read index
  10648. 02EC -W Lookup: DAC write index
  10649. 02ED RW Lookup: DAC data
  10650. ----------P02EA------------------------------
  10651. PORT 02EA - S3 86C928 video controller (ELSA Winner 1000)
  10652. ----------P02EB------------------------------
  10653. PORT 02EB - GI1904 Scanner Interface Adapter
  10654. Range: PORT 022Bh, PORT 026Bh, PORT 02ABh (default), PORT 032Bh, PORT 036Bh,
  10655. PORT 03ABh, PORT 03EBh
  10656. ----------P02EC------------------------------
  10657. PORT 02EC - GS-IF Scanner Interface adapter
  10658. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  10659. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  10660. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  10661. others use this interface
  10662. ----------P02F002F8--------------------------
  10663. PORT 02F0-02F8 - LPT port address on the UniRAM card by German magazine c't
  10664. selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.
  10665. ----------P02F802FF--------------------------
  10666. PORT 02F8-02FF - serial port, same as 02E8, 03E8 and 03F8 (COM2)
  10667. 02F8 -W transmitter holding register
  10668. 02F8 R- receiver buffer register
  10669. 02F8 RW divisor latch, low byte when DLAB=1
  10670. 02F9 RW divisor latch, high byte when DLAB=1
  10671. 02F9 RW interrupt enable register when DLAB=0
  10672. 02FA R- interrupt identification register
  10673. 02FB RW line control register
  10674. 02FC RW modem control register
  10675. 02FD R- line status register
  10676. 02FF RW scratch register
  10677. ----------P0300------------------------------
  10678. PORT 0300 - Award POST Diagnostic
  10679. SeeAlso: PORT 0080h
  10680. --------d-P0300------------------------------
  10681. PORT 0300 - Digidesign 'Session 8' HARD-DISK RECORDING SYSTEM
  10682. SeeAlso: PORT 0200h"Digidesign"
  10683. --------s-P03000301--------------------------
  10684. PORT 0300-0301 - MPU-401 MIDI UART
  10685. Range: alternate address at PORT 0330h, occasionally at PORT 0310h or
  10686. PORT 0320h
  10687. ----------P03000301--------------------------
  10688. PORT 0300-0301 - Soundblaster 16 ASP MPU-Midi EMULATION
  10689. ----------P0300????--------------------------
  10690. PORT 0300-???? - HP IEC/HP-IB adapter (e.g. for use with tape streamer HP9142)
  10691. ----------P03000303--------------------------
  10692. PORT 0300-0303 - Panasonic 52x CD-ROM SCSI Miniport
  10693. Range: PORT 0300h-0303h,PORT 0320h-0323h,PORT 0340h-0343h,PORT 0360h-0363h,
  10694. and PORT 0380h-0383h
  10695. ----------P0300030F--------------------------
  10696. PORT 0300-030F - Philips CD-ROM player CM50
  10697. ----------P0300030F--------------------------
  10698. PORT 0300-030F - CompaQ Tape drive adapter. alternate address at 0100
  10699. --------N-P0300031F--------------------------
  10700. PORT 0300-031F - 3com Ethernet adapters (default address)
  10701. --------N-P0300031F--------------------------
  10702. PORT 0300-031F - NE2000 compatible Ethernet adapters
  10703. Range: may be placed at 0300h, 0320h, 0340h, or 0360h
  10704. SeeAlso: PORT 0300h"PCnet"
  10705. --------N-P0300031F--------------------------
  10706. PORT 0300-031F - AMD PCnet - NE2100-compatible Ethernet adapters
  10707. Range: may be placed at 0300h, 0320h, 0340h, or 0360h, with the card's ROM
  10708. appearing at segment C800h, CC00h, D000h, or D400h, respectively
  10709. Note: for the PCnet-FAST chip, the I/O address may be read from the PCI
  10710. configuration space at offset 10h (see #00878 at INT 1A/AX=B10Ah)
  10711. SeeAlso: PORT 0300h"NE2000",#00878
  10712. 0300-030F R- address PROM (used to store Ethernet address, etc.)
  10713. 0310w RW Register Data Port (RDP) (see #P0552,#P0553)
  10714. 0312w ?W Register Access Port (RAP) (selects register index for RDP and IDP)
  10715. (see #P0570)
  10716. 0314w ?W Reset
  10717. 0316w RW ISA Bus Data Port (IDP)
  10718. 0318w reserved for vendor-specific use
  10719. 031A-031F reserved
  10720. (Table P0552)
  10721. Values for AMD PCnet-ISA Register Data Port index:
  10722. 00h "CSR0" status and control flags (see #P0554)
  10723. 01h "CSR1" low half of IADR (appears at PORT 0316h)
  10724. 02h "CSR2" high half of IADR (appears at PORT 0317h)
  10725. 03h "CSR3" interrupt masks (see #P0555)
  10726. 04h "CSR4" interrupt masks and status bits (see #P0556)
  10727. 08h-0Bh logical address filter
  10728. 0Ch-0Eh physical address register
  10729. 0Fh "CSR15" mode (see #P0560)
  10730. 4Ch "CSR76" receive descriptor ring length
  10731. 4Eh "CSR78" transmit descriptor ring length
  10732. 50h "CSR80" FIFO threshold / DMA burst control (see #P0564)
  10733. 52h "CSR82" DMA bus timer
  10734. 58h "CSR88" chip ID
  10735. 70h "CSR112" number of missed packets
  10736. 72h "CSR114" number of receive collisions
  10737. 7Ch "CSR124" BMU test register
  10738. bit 4: accept runt packets
  10739. SeeAlso: #P0570,#P0553
  10740. (Table P0553)
  10741. Values for AMD PCnet-SCSI/PCnet-FAST Register Data Port index:
  10742. 00h "CSR0" status and control flags (see #P0554)
  10743. 01h "CSR1" low half of IADR (appears at PORT 0316h)
  10744. 02h "CSR2" high half of IADR (appears at PORT 0317h)
  10745. 03h "CSR3" interrupt masks (see #P0555)
  10746. 04h "CSR4" interrupt masks and status bits (see #P0556)
  10747. 05h "CSR5" (PCnet-FAST) extended control and interrupt 1 (see #P0557)
  10748. 06h "CSR6" receive/transmit descriptor table lengths (see #P0558)
  10749. 07h "CSR7" (PCnet-FAST) extended control and interrupt 2 (see #P0559)
  10750. 08h-0Bh logical address filter
  10751. 0Ch-0Eh physical address register
  10752. 0Fh "CSR15" mode (see #P0560)
  10753. 10h "CSR16" alias of CSR1
  10754. 11h "CSR17" alias of CSR2
  10755. 12h "CSR18" low half of current receive buffer address
  10756. 13h "CSR19" high half of current receive buffer address
  10757. 14h "CSR20" low half of current transmit buffer address
  10758. 15h "CSR21" high half of current transmit buffer address
  10759. 16h "CSR22" low half of next receive buffer address
  10760. 17h "CSR23" high half of next receive buffer address
  10761. 18h "CSR24" low half of receive-ring base address
  10762. 19h "CSR25" high half of receive-ring base address
  10763. 1Ah "CSR26" low half of next receive descriptor address
  10764. 1Bh "CSR27" high half of next receive descriptor address
  10765. 1Ch "CSR28" low half of current receive descriptor address
  10766. 1Dh "CSR29" high half of current receive descriptor address
  10767. 1Eh "CSR30" low half of transmit ring base address
  10768. 1Fh "CSR31" high half of transmit ring base address
  10769. 20h "CSR32" low half of next transmit descriptor address
  10770. 21h "CSR33" high half of next transmit descriptor address
  10771. 22h "CSR34" low half of current transmit descriptor address
  10772. 23h "CSR35" high half of current transmit descriptor address
  10773. 24h "CSR36" low half of next next receive descriptor address
  10774. 25h "CSR37" high half of next next receive descriptor address
  10775. 26h "CSR38" low half of next next transmit descriptor address
  10776. 27h "CSR39" high half of next next transmit descriptor address
  10777. 28h "CSR40" current receive byte count (see #P0561)
  10778. 29h "CSR41" current receive status
  10779. 2Ah "CSR42" current transmit byte count (see #P0562)
  10780. 2Bh "CSR43" current transmit status
  10781. 2Ch "CSR44" next receive byte count (bits 11-0; bits 15-12=0)
  10782. 2Dh "CSR45" next receive status
  10783. 2Eh "CSR46" transmit poll time counter
  10784. 2Fh "CSR47" transmit polling interval
  10785. 30h "CSR48" receive poll time counter
  10786. 31h "CSR49" receive polling interval
  10787. 32h-39h reserved
  10788. 3Ah "CSR58" software style (see #P0563)
  10789. 3Bh reserved
  10790. 3Ch "CSR60" previous transmit descriptor address (low)
  10791. 3Dh "CSR61" previous transmit descriptor address (high)
  10792. 3Eh "CSR62" previous transmit byte count (bits 11-0; bits 15-12=0)
  10793. 3Fh "CSR63" previous transmit status
  10794. 40h "CSR64" next transmit buffer address (low)
  10795. 41h "CSR65" next transmit buffer address (high)
  10796. 42h "CSR66" next transmit byte count (bits 11-0; bits 15-12=0)
  10797. 43h "CSR67" next transmit status
  10798. 44h-47h reserved
  10799. 48h "CSR72" receive ring counter
  10800. 49h reserved
  10801. 4Ah "CSR74" transmit ring counter
  10802. 4Bh reserved
  10803. 4Ch "CSR76" receive descriptor ring length
  10804. 4Dh reserved
  10805. 4Eh "CSR78" transmit descriptor ring length
  10806. 4Fh reserved
  10807. 50h "CSR80" FIFO threshold / DMA burst control (see #P0564)
  10808. 51h reserved
  10809. 52h "CSR82" (PCnet-SCSI) DMA bus timer
  10810. (PCnet-FAST) transmit descriptor address (low)
  10811. 53h reserved
  10812. 54h "CSR84" DMA address register (low)
  10813. 55h "CSR85" DMA address register (high)
  10814. 56h "CSR86" buffer byte counter (bits 11-0; bits 15-12=0)
  10815. 57h reserved
  10816. 58h "CSR88" chip ID (low 16 bits) (see #P0565)
  10817. 59h "CSR89" chip ID (high 16 bits) (see #P0565)
  10818. 5Ah "CSR90" (PCnet-SCSI)
  10819. 5Bh reserved
  10820. 5Ch "CSR92" ring length conversion
  10821. 5Dh reserved
  10822. 5Eh "CSR94" (PCnet-SCSI)
  10823. 5Fh-63h reserved
  10824. 64h "CSR100" bus timeout
  10825. 65h-6Fh reserved
  10826. 70h "CSR112" number of missed packets
  10827. 71h reserved
  10828. 72h "CSR114" number of receive collisions
  10829. 73h-79h reserved
  10830. 7Ah "CSR122" advanced feature control (see #P0566)
  10831. 7Bh reserved
  10832. 7Ch "CSR124" BMU test register (see #P0567)
  10833. 7Dh "CSR125" (PCnet-FAST) MAC Enhanced Configuration Control (see #P0568)
  10834. 7Eh-7Fh reserved
  10835. SeeAlso: #P0552,#P0594
  10836. Bitfields for AMD PCnet CSR0 status and control flags:
  10837. Bit(s) Description (Table P0554)
  10838. 15 "ERR" error; set if BABL, CERR, MISS, or MESS set
  10839. 14 "BABL" network babbling control
  10840. 13 "CERR" collision error
  10841. 12 "MISS" missed frame
  10842. 11 "MERR" memory error
  10843. 10 "RINT" receive interrupt
  10844. 9 "TINT" transmit interrupt
  10845. 8 "IDON" initialization done
  10846. 7 "INTR" interrupt flag
  10847. 6 "IENA" interrupt enable
  10848. 5 "RXON" recieve ON
  10849. 4 "TXON" transmit ON
  10850. 3 "TDMD" transmit demand
  10851. 2 "STOP" stop -- disable all external activity
  10852. 1 "STRT" start -- enable extrnal activity
  10853. 0 "INIT" begin initialization procedure
  10854. SeeAlso: #P0552,#P0555
  10855. Bitfields for AMD PCnet CSR3 interrupt masks:
  10856. Bit(s) Description (Table P0555)
  10857. 15 reserved
  10858. 14 "BABLM" disable babble interrupt
  10859. 13 reserved
  10860. 12 "MISSM" disable missed-frame interrupt
  10861. 11 "MERM" disable memory-error interrupt
  10862. 10 "RINTM" disable receive interrupt
  10863. 9 "TINTM" disable transmit interrupt
  10864. 8 "IDONM" disable initialization-done interrupt
  10865. 7-5 reserved
  10866. 4 "DXMT2PD" disable Transmit Two Part Deferral
  10867. 3 "EMBA" enable modified back-off algorithm
  10868. 2-0 reserved
  10869. Note: other bits are reserved
  10870. SeeAlso: #P0552,#P0554,#P0556
  10871. Bitfields for AMD PCnet CSR4 interrupt masks and status bits:
  10872. Bit(s) Description (Table P0556)
  10873. 15 "ENTST" enable Test Mode / CSR124 access
  10874. 14 "DMAPLUS" disable CSR80 burst transaction counter
  10875. 13 "TIMER" enable Bus Timer register
  10876. 12 "DPOLL" disable transmit polling
  10877. 11 "APADXMT" Auto-Pad Transmit
  10878. 10 "ASTRPRCV" enable automatic pad stripping
  10879. 9 "MFCO" missed frame counter has overflowed
  10880. 8 "MFCOM" disable interrupt on MFCO
  10881. 7 "UINTCMD" (PCnet-FAST) user interrupt command
  10882. 6 "UINT" (PCnet-FAST) user interrupt pending
  10883. write 1 to clear
  10884. 5 "RCVCCO" receive collision counter has overflowed
  10885. 4 "RCVCCOM" disable interrupt on RCVCCO
  10886. 3 "TXSTRT" Transmit Start
  10887. 2 "TXSTRTM" disable interrupt on TXSTRT
  10888. 1 "JAB" Jabber error
  10889. 0 "JABM" disable interrupt on JAB
  10890. SeeAlso: #P0552,#P0555,#P0553
  10891. Bitfields for AMD PCnet-FAST CSR5 extended control and interrupt 1:
  10892. Bit(s) Description (Table P0557)
  10893. 31-16 reserved
  10894. 15 "TOKINTD" disable Transmit OK interrupt
  10895. 14 "LTINTEN" enable Last Transmit interrupt
  10896. 13-12 reserved
  10897. 11 "SINT" System Interrupt (write 1 to clear)
  10898. 10 "SINTE" enable System Interrupt
  10899. 9 "SLPINT" Sleep Interrupt (write 1 to clear)
  10900. 8 "SLPINTE" enable Sleep Interrupt
  10901. 7 "EXDINT" Excessive Deferral Interrupt (write 1 to clear)
  10902. 6 "EXDINTE" enable Excessive Deferral Interrupt
  10903. 5 "MPPLBA" Magic Packet Physical Logical Broadcast Accept
  10904. 4 "MPINT" Magic Packet Interrupt (write 1 to clear)
  10905. 3 "MPINTE" enable Magic Packet Interrupt
  10906. 2 "MPEN" enable Magic Packet mode
  10907. 1 "MPMODE" Magic Packet mode active
  10908. 0 "SPND" Suspend
  10909. SeeAlso: #P0553,#P0556,#P0559
  10910. Bitfields for AMD PCnet CSR6 Descriptor Table Length register:
  10911. Bit(s) Description (Table P0558)
  10912. 15-12 transmit encoded ring length
  10913. 11-8 receive encoded ring length
  10914. 7-0 reserved
  10915. SeeAlso: #P0553,#P0557
  10916. Bitfields for AMD PCnet CSR7 Extended Control and Interrupt 2:
  10917. Bit(s) Description (Table P0559)
  10918. 15 "FASTSPNDE" enable Fast Suspend
  10919. 14 "RXFRTG" Receive Frame Tag
  10920. 13 "RDMD" Receive Demand
  10921. 12 "RXDPOL" disable receive polling
  10922. 11 "STINT" Software Timer Interrupt (write 1 to clear)
  10923. 10 "STINTE" enable Software Timer Interrupt
  10924. 9 "MREINT" MII Management Read Error Interrupt (write 1 to clear)
  10925. 8 "MREINTE" enable MII Management Read Error Interrupt
  10926. 7 "MAPINT" MII Management Auto-Poll Interrupt (write 1 to clear)
  10927. 6 "MAPINTE" enable MII Management Auto-Poll Interrupt
  10928. 5 "MCCINT" MII Management Command Complete Interrupt (write 1 to clr)
  10929. 4 "MCCINTE" enable MII Management Command Complete Interrupt
  10930. 3 "MCCIINT" MII Management Command Complete Internal Interrupt
  10931. (write 1 to clear)
  10932. 2 "MCCIINTE" enable MII Manamagement Command Complete Internal Int.
  10933. 1 "MIIPDTINT" MII PHY Detect Transition Interrupt (write 1 to clear)
  10934. 0 "MIIPDTINTE" enable MII PHY Detect Transition Interrupt
  10935. SeeAlso: #P0553,#P0557
  10936. Bitfields for AMD PCnet CSR15 mode flags:
  10937. Bit(s) Description (Table P0560)
  10938. 15 "PROM" promiscuous mode
  10939. 14 "DRCVBC" disable Receive Broadcast
  10940. 13 "DRCVPA" disable Receive Physical Address
  10941. 12 "DLNKTST" disable Link Status
  10942. 11 "DAPC" disable Automatic Polarity Correction
  10943. 10 "MENDECL" MENDEC loopback mode
  10944. 9 "LRT/TSEL" Low Receive Threshold
  10945. 8-7 "PORTSEL" Port Select
  10946. 00 AUI
  10947. 01 10Base-T
  10948. 10 GPSI
  10949. 11 reserved
  10950. 6 "INTL" internal loopback
  10951. 5 "DRTY" disable retry
  10952. 4 "FCOLL" force collision
  10953. 3 "DXMTFCS" disable Transmit CRC
  10954. 2 "LOOP" enable Loopback
  10955. 1 "DTX" disable transmitter
  10956. 0 "DRX" disable receiver
  10957. SeeAlso: #P0552,#P0556,#P0564
  10958. Bitfields for AMD PCnet CSR40 Current Receive Byte Count register:
  10959. Bit(s) Description (Table P0561)
  10960. 15-12 reserved (0)
  10961. 11-0 current receive byte count (copy of BCNT field of current receive
  10962. descriptor's RMD1)
  10963. SeeAlso: #P0553,#P0562
  10964. Bitfields for AMD PCnet CSR42 Current Transmit Byte Count register:
  10965. Bit(s) Description (Table P0562)
  10966. 15-12 reserved (0)
  10967. 11-0 current transmit byte count (copy of BCNT field of current receive
  10968. descriptor's TMD1)
  10969. SeeAlso: #P0553,#P0561
  10970. Bitfields for AMD PCnet CSR58 Software Style register:
  10971. Bit(s) Description (Table P0563)
  10972. 15-11 reserved (undefined)
  10973. 10 "APERREN" enabled advanced parity error handling
  10974. 9 "CSRPCNET" PCnet-ISA compatibility (read-only)
  10975. 8 "SSIZE32" 32-bit software structures for data blocks
  10976. 7-0 "SWSTYLE" software style
  10977. 00h LANCE/PCnet-ISA (16-bit software structures)
  10978. 01h reserved
  10979. 02h PCnet-PCI (32-bit software)
  10980. 03h PCnet-PCI (32-bit software)
  10981. SeeAlso: #P0553
  10982. Bitfields for AMD PCnet CSR80 FIFO threshold and DMA burst control:
  10983. Bit(s) Description (Table P0564)
  10984. 15-14 reserved
  10985. 13-12 receive FIFO high-water mark; request DMA when N byte available
  10986. 00 = 16 bytes
  10987. 01 = 32 bytes
  10988. 10 = 64 bytes
  10989. 11-10 transmit starting point; start transmission after N bytes written
  10990. 00 = 4 bytes
  10991. 01 = 16 bytes
  10992. 10 = 64 bytes
  10993. 11 = 112 bytes
  10994. 9-8 transmit FIFO low-water mark; start DMA when room for N bytes
  10995. 00 = 8 bytes
  10996. 01 = 16 bytes
  10997. 10 = 32 bytes
  10998. 7-0 DMA burst register
  10999. SeeAlso: #P0552,#P0560
  11000. Bitfields for AMD PCnet Chip ID register (read-only):
  11001. Bit(s) Description (Table P0565)
  11002. 31-28 hardware version
  11003. 27-12 part number
  11004. 2623h = Am79C971
  11005. 11-1 manufacturer ID (0001h = AMD)
  11006. 0 reserved (1)
  11007. SeeAlso: #P0553
  11008. Bitfields for AMD PCnet CSR122 Advanced Feature Control register:
  11009. Bit(s) Description (Table P0566)
  11010. 15-1 reserved
  11011. 0 "RCVALGN" DWORD-align received packets
  11012. SeeAlso: #P0553,#P0567
  11013. Bitfields for AMD PCnet CSR124 Test Register 1:
  11014. Bit(s) Description (Table P0567)
  11015. 15-5 reserved
  11016. 4 (PCnet-SCSI) accept runt packets
  11017. 3 (PCnet-FAST) accept runt packets
  11018. 2-0 reserved
  11019. SeeAlso: #P0553,#P0566
  11020. Bitfields for AMD PCnet-FAST CSR125 MAC Enhanced Configuration Control reg:
  11021. Bit(s) Description (Table P0568)
  11022. 15-8 inter-packet gap (reducing from default 96 can disrupt network)
  11023. 7-0 inter-frame spacing, part 1
  11024. SeeAlso: #P0553
  11025. (Table P0569)
  11026. Values for AMD PCnet-ISA ISA Bus Configuration Register index:
  11027. 00h "MSRDA" width of DMA read signal
  11028. 01h "MSWRA" width of DMA write signal
  11029. 02h "MC" ISA bus configuration (see #P0572)
  11030. 05h "LED1" LED1 signal control (see #P0573)
  11031. 06h "LED2" LED2 signal control (see #P0573)
  11032. 07h "LED3" LED3 signal control (see #P0573)
  11033. SeeAlso: #P0552,#P0594,#P0570
  11034. (Table P0570)
  11035. Values for AMD PCnet-SCSI Bus Configuration Register index:
  11036. 00h "MSRDA" width of DMA read signal (reserved)
  11037. 01h "MSWRA" width of DMA write signal (reserved)
  11038. 02h "MC" miscellaneous configuration (see #P0572)
  11039. 03h reserved
  11040. 04h "LINKST" link status
  11041. 05h "LED1" LED1 signal control (see #P0573) -- receive status
  11042. 06h "LED2" LED2 signal control (see #P0573)
  11043. 07h "LED3" LED3 signal control (see #P0573) -- transmit status
  11044. 08h-0Fh reserved
  11045. 10h "IOBASEL"
  11046. 11h "IOBASEU"
  11047. 12h "BSBC" burst size and bus control
  11048. 13h "EECAS" EEPROM Control and Status
  11049. 14h "SWS" software style
  11050. 15h "INTCON" reserved
  11051. SeeAlso: #P0553,#P0569,#P0571
  11052. (Table P0571)
  11053. Values for AMD PCnet-FAST Bus Configuration Register index:
  11054. 00h "MSRDA" width of DMA read signal (reserved)
  11055. 01h "MSWRA" width of DMA write signal (reserved)
  11056. 02h "MC" miscellaneous configuration (see #P0572)
  11057. 03h reserved !!!p.154
  11058. 04h "LED0" LED0 status
  11059. 05h "LED1" LED1 signal control (see #P0573) -- receive status
  11060. 06h "LED2" LED2 signal control (see #P0573)
  11061. 07h "LED3" LED3 signal control (see #P0573) -- transmit status
  11062. 08h reserved
  11063. 09h "FDC" full-duplex control
  11064. 0Ah-0Fh reserved
  11065. 10h "IOBASEL" I/O base select (lo) -- reserved
  11066. 11h "IOBASEU" I/O base select (hi) -- reserved
  11067. 12h "BSBC" burst size and bus control
  11068. 13h "EECAS" EEPROM Control and Status
  11069. 14h "SWS" software style
  11070. 15h "INTCON" reserved
  11071. 16h "PCILAT" PCI-bus latency
  11072. 17h "PCISID" PCI subsystem ID
  11073. 18h "PCISVID" PCI subsystem vendor ID
  11074. 19h "SRAMSIZ" SRAM size
  11075. 1Ah "SRAMB" SRAM boundary
  11076. 1Bh "SRAMIC" SRAM interface control
  11077. 1Ch "EBADDRL" expansion bus address (low)
  11078. 1Dh "EBADDRU" expansion bus address (high)
  11079. 1Eh "EBD" expansion bus data port
  11080. 1Fh "STVAL" software timer value
  11081. 20h "MIICAS" MII control and status
  11082. 21h "MIIADDR" MII address
  11083. 22h "MIIMDR" MII management data
  11084. 23h "PCIVID" PCI vendor ID
  11085. SeeAlso: #P0553,#P0569,#P0570
  11086. Bitfields for AMD PCnet ISA bus configuration:
  11087. Bit(s) Description (Table P0572)
  11088. 3 EADISEL
  11089. 2 AWAKE
  11090. 1 ASEL
  11091. 0 XMAUSEL
  11092. SeeAlso: #P0570,#P0573
  11093. Bitfields for AMD PCnet LEDn signal control:
  11094. Bit(s) Description (Table P0573)
  11095. 15 LEDOUT
  11096. 14-8 reserved
  11097. 7 PSE
  11098. 6-5 reserved
  11099. 4 XMTE
  11100. 3 RVPE
  11101. 2 RCVE
  11102. 1 JABE
  11103. 0 COLE
  11104. SeeAlso: #P0570
  11105. ----------P0300031F--------------------------
  11106. PORT 0300-031F - prototype cards
  11107. Periscope hardware debugger
  11108. ----------P030C030F--------------------------
  11109. PORT 030C-030F - AIMS LAB PC Radio
  11110. Range: configurable to PORT 020Ch or PORT 030Ch
  11111. Notes: writing a value with bit 3 set to one of these ports turns on the
  11112. radio; writing a value with bit 3 clear turns it off
  11113. PORT 020Eh bits 1 indicates status of some kind
  11114. --------s-P03100311--------------------------
  11115. PORT 0310-0311 - MPU-401 MIDI UART
  11116. Range: alternate address at PORT 0300h or PORT 0330h, occasionally at
  11117. PORT 0320h
  11118. ----------P0310031F--------------------------
  11119. PORT 0310-031F - Philips CD-ROM player CM50
  11120. --------s-P03200321--------------------------
  11121. PORT 0320-0321 - MPU-401 MIDI UART
  11122. Range: alternate address at PORT 0300h or PORT 0330h, occasionally at
  11123. PORT 0310h
  11124. ----------P03200323--------------------------
  11125. PORT 0320-0323 - XT HDC 1 (Hard Disk Controller)
  11126. SeeAlso: PORT 01F0h-01F7h
  11127. 0320 RW data register
  11128. 0321 -W reset controller
  11129. 0321 R- read controller hardware status (see #P0574)
  11130. 0322 R- read DIPswitch setting on XT controller card
  11131. 0322 -W generate controller-select pulse
  11132. 0323 -W write pattern to DMA and INT mask register
  11133. Bitfields for XT hard disk controller hardware status:
  11134. Bit(s) Description (Table P0574)
  11135. 7-6 always 0
  11136. 5 logical unit number
  11137. 4-2 always 0
  11138. 1 error occurred
  11139. 0 always 0
  11140. ----------P03240327--------------------------
  11141. PORT 0324-0327 - XT HDC 2 (Hard Disk Controller)
  11142. ----------P0328032B--------------------------
  11143. PORT 0328-032B - XT HDC 3 (Hard Disk Controller)
  11144. ----------P032B------------------------------
  11145. PORT 032B - GI1904 Scanner Interface Adapter
  11146. Range: PORT 022Bh, PORT 026Bh, PORT 02ABh (default), PORT 02EBh, PORT 036Bh,
  11147. PORT 03ABh, PORT 03EBh
  11148. ----------P032C------------------------------
  11149. PORT 032C - GS-IF Scanner Interface adapter
  11150. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  11151. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  11152. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  11153. others use this interface
  11154. ----------P032C032F--------------------------
  11155. PORT 032C-032F - XT HDC 4 (Hard Disk Controller)
  11156. ----------P032C032F--------------------------
  11157. PORT 032C-032F - AMD InterWave
  11158. ----------P03300331--------------------------
  11159. PORT 0330-0331 - MPU-401 MIDI UART
  11160. Range: alternate address at PORT 0300h, occasionally at PORT 0310h or
  11161. PORT 0320h
  11162. 0330 RW data register
  11163. 0331 R- status register (see #P0575)
  11164. 0331 -W command register (see #P0576)
  11165. Note: MPU-401 genarates an interrupt when MIDI code is ready; by reading
  11166. MIDI code from the data register this interrupt is cleared
  11167. Bitfields for MPU-401 status register:
  11168. Bit(s) Description (Table P0575)
  11169. 7 input ready
  11170. =1 no data is available for reading
  11171. =0 data is available for reading
  11172. 6 output ready
  11173. =1 not ready to receive command/data byte
  11174. =0 ready to receive command/data byte
  11175. 5-0 reserved
  11176. Note: pending input seems to block the output
  11177. SeeAlso: #P0576
  11178. (Table P0576)
  11179. Values for MPU-401 commands (data go to/from PORT 0330h):
  11180. Command Description Results Parameter
  11181. 01h send MIDI stop ACK -
  11182. 02h send MIDI start ACK -
  11183. 03h send MIDI continue ACK -
  11184. 15h stop all (recording, ACK -
  11185. playback and MIDI)
  11186. 34h return timing bytes ACK -
  11187. in stop mode
  11188. 35h enable mode messages ACK -
  11189. to PC
  11190. 38h enable system common ACK -
  11191. messages to PC
  11192. 39h enable real time ACK -
  11193. messages to PC
  11194. 3Ch use CLS sync ACK -
  11195. 3Dh use SMPTE sync ACK -
  11196. 3Fh enter UART mode ACK -
  11197. 80h use MIDI sync ACK -
  11198. 81h use FSK sync ACK -
  11199. 82h use MIDI sync ACK -
  11200. 83h enable metronome ACK -
  11201. 84h disable metronome ACK -
  11202. 87h enable pitch and ACK -
  11203. controller
  11204. 8Ah disable data in stopped ACK -
  11205. mode
  11206. 8Bh enable data in stop mode ACK -
  11207. 8Ch disable measure end ACK -
  11208. messages to host
  11209. 91h enable ext MIDI control ACK -
  11210. 94h disable clock to host ACK -
  11211. 95h enable clock to host ACK -
  11212. 97h enable system exclusive ACK -
  11213. messages to PC
  11214. ACh get MIDI version ACK,VER -
  11215. ADh get revision ACK,REV -
  11216. Cxh set timebase to x*24 ACK -
  11217. ppqn (x>1)
  11218. D0h ??? ACK -
  11219. DFh ??? ACK -
  11220. E0h set tempo ACK BPS
  11221. E4h set clocks per click ACK CPC
  11222. E6h set beats per measure ACK BPM
  11223. E7h send all clocks to host ACK 1 byte
  11224. (04h is sent)
  11225. FFh reset ACK -
  11226. Notes: after receiving a command byte MPU-401 must reply with command
  11227. acknowledge byte FEh in data register
  11228. command parameters are sent, and response bytes are received through
  11229. the data register
  11230. no commands (except reset) can be issued in UART mode, and MPU-401
  11231. must be reset to leave UART mode
  11232. Key:
  11233. ACK command acknowledge byte (FEh)
  11234. VER MIDI version number
  11235. bits 7-4: major version
  11236. bits 0-3: minor version
  11237. REV revision number
  11238. BPS beats per second (8..250)
  11239. CPC clocks per click
  11240. BPM beats per measure
  11241. SeeAlso: #P0576
  11242. ----------P03300333--------------------------
  11243. PORT 0330-0333 - Adaptec 154xB/154xC SCSI adapter (default address)
  11244. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  11245. Notes: Adaptec AHA-154x adapters use ISA bus-mastering mechanism, and so
  11246. require the DMA channel to be programmed to the cascaded mode
  11247. the original AHA-1540 only supported asynchronous SCSI data transfers,
  11248. and did not support scatter/gather operation
  11249. AHA-154xA+ supports the target mode implementing the SCSI-2 processor
  11250. device model; it executes INQUIRY, TEST UNIT READY, and REQUEST SENSE
  11251. commands received from the initiators without CPU intervention; the
  11252. CPU is required to provide information only for the SEND/RECEIVE
  11253. commands; other commands are treated by the host adapter as invalid
  11254. AHA-154xCF supports Fast SCSI data transfer
  11255. BusLogic BT-545S and DTC 3290 seem to be "almost" compatible with
  11256. the Adaptec AHA-154x
  11257. 0330 R- status register (see #P0577)
  11258. 0330 -W control register (see #P0578)
  11259. 0331 R- data in register
  11260. 0331 -W command / data out register (see #P0580)
  11261. 0332 R- interrupt status register (see #P0579)
  11262. Bitfields for AHA-154x status register:
  11263. Bit(s) Description (Table P0577)
  11264. 7 self-test in progress (STST)
  11265. 6 diagnostic failure (DIAGF)
  11266. 5 mailbox initialization required (INIT)
  11267. 4 adapter idle (IDLE)
  11268. 3 command register full (CDF)
  11269. 2 data register full (DF)
  11270. 1 reserved
  11271. 0 invalid command (INVDCMD)
  11272. Notes: bit 0 is only valid from the time the host adapter command complete
  11273. interrupt is set (bit 2 in the interrupt flag register) until it is
  11274. reset
  11275. the data in register should only be read if bit 2 is set; reading the
  11276. data in register resets this bit
  11277. command / data out register should only be written if bit 3 is zero;
  11278. the host adapter usually clears this bit within 100 mcs after CPU
  11279. writes to the command / data out register
  11280. bit 4 indicates that the host adapter has no outstanding adapter or
  11281. SCSI commands
  11282. bit 5 indicates that the mailbox initialization command (01h) required
  11283. bit 7 is asserted after a power-on or hard reset (bit 7 in the control
  11284. register); when diagnostics is complete, this bit is reset and bit 5
  11285. or bit 6 is set to indicate seccessful or unsuccessful completion;
  11286. if the bit remain set, then initialization/diagnostic could not be
  11287. completed
  11288. if bit 6 is set indication failed diagnostics, only the hard reset
  11289. (bit 7 in the control register) will clear it
  11290. SeeAlso: #P0578,#P0579,#P0580
  11291. Bitfields for AHA-154x control register:
  11292. Bit(s) Description (Table P0578)
  11293. 7 hardware reset (HRST)
  11294. 6 software reset (SRST)
  11295. 5 interrupt reset (IRST)
  11296. 4 SCSI bus reset (SCRST)
  11297. 0-3 reserved
  11298. Notes: setting bit 4 causes the host adapter to assert the RST signal on the
  11299. SCSI bus for 25 microseconds (reset hold time); the reset is
  11300. managed as a SCSI soft reset, and will allow partially completed
  11301. operations to continue; use bit 7 to force a SCSI hard reset
  11302. setting bit 5 clears all bits in the interrupt flag register and resets
  11303. the interrupt
  11304. setting bit 6 clears all ongoing SCSI and host adapter commands
  11305. setting bit 7 forces the host adapter into a state identical to a
  11306. normal power on state: diagnostic functions are executed and all
  11307. status for ongoing SCSI operations is lost, a reset condition is
  11308. generated on the SCSI bus; while the reset is being processed, bit 7
  11309. on the status register is set
  11310. when soft/hard reset is complete, bits 4 and 5 of the status register
  11311. are set
  11312. SeeAlso: #P0577
  11313. Bitfields for AHA-154x interrupt status register:
  11314. Bit(s) Description (Table P0579)
  11315. 7 any interrupt (ANYINTR)
  11316. 4-6 reserved
  11317. 3 SCSI reset detected (SCRD)
  11318. 2 host adapter command complete (HACC)
  11319. 1 mailbox out available (MBOA)
  11320. 0 mailbox in full (MBIF)
  11321. Notes: bit 0 indicates that an entry has been placed by the host adapter in
  11322. the mailbox in; this interrupt should be reset as soon as possible
  11323. bit 1 indicates that an outbound mailbox entry is now available for use
  11324. bit 2 indicates that an adapter command has been completed; bit 0 of
  11325. the status register will indicate success or failure; during the
  11326. parameter transfers to/from the host adapter, this bit should be
  11327. examined to verify that the command has not been ended abnormally
  11328. bit 3 indicates that a SCSI reset has been received on the SCSI bus;
  11329. CPU can convert the SCSI soft reset to the SCSI hard reset by setting
  11330. bit 6 of the control register upon the detection of the SCSI reset
  11331. interrupt; it is not set for the CPU-initiated SCSI reset (via bit
  11332. 4 of the control register)
  11333. if the host adapter command complete and SCSI reset detected interrupts
  11334. are present, the mailbox in full and mailbox out available interrupts
  11335. are not presented until the former are cleared
  11336. if bit 7 of this register or bit 2 of the status register is set, host
  11337. adapter command complete and SCSI reset detected interrupts will not
  11338. be presented until the interrupts already present are cleared
  11339. SeeAlso: #P0577,#P0581
  11340. (Table P0580)
  11341. Values for AHA-154x host adapter commands:
  11342. Command Description Parameters Results
  11343. 00h no operation - -
  11344. 01h mailbox initialization MBC,MBA0..MBA2 -
  11345. 02h start SCSI command - -
  11346. 03h start PC/AT BIOS command BFN,TRG,CH,CLHH, -
  11347. HL,SN,SC,BA0..BA2
  11348. 04h adapter inquiry - BID,SOID,FWR0,FWR1
  11349. 05h enable mailbox out E/D -
  11350. interrupt
  11351. 06h set selection time-out E/D,TO0,TO1 -
  11352. 07h set bus on time BON -
  11353. 08h set bus off time BOFF -
  11354. 09h set AT bus transfer speed ATBS -
  11355. 0Ah return installed devices - TC0..TC7
  11356. 0Bh return configuration data - DAP,IC,SID
  11357. 0Ch enable target mode E/D,LUM -
  11358. (not AHA-1540/W1542A)
  11359. 0Dh return setup data DIL SPS,ATBS,BON,BOFF,
  11360. MBC,MBA0..MBA2,
  11361. STA0..STA7,DS
  11362. 1Ah write adapter channel 2 BA0..BA2 -
  11363. buffer
  11364. 1Bh read adapter channel 2 BA0..BA2 -
  11365. buffer
  11366. 1Ch write adapter FIFO buffer BA0..BA2 -
  11367. 1Dh read adapter FIFO buffer BA0..BA2 -
  11368. 1Fh echo command data EV EV
  11369. 20h run adapter diagnostics - -
  11370. 21h set adapter options ESG,DS -
  11371. 22h program EEPROM 35 bytes -
  11372. (AHA-1542C)
  11373. 23h return EEPROM data ???,NED,EA EEPROM data bytes
  11374. (AHA-1542C)
  11375. 24h set shadow RAM parameters 1 byte -
  11376. (AHA-1542C?)
  11377. 25h BIOS mailbox initializa- MBC,MBA0..MBA2 -
  11378. tion (since AHA-1540B
  11379. rev. 1.4?)
  11380. 26h set BIOS bank 1 - -
  11381. (AHA-1542C?)
  11382. 27h set BIOS bank 2 - -
  11383. (AHA-1542C?)
  11384. 28h return extended BIOS - F,MBLT
  11385. information (since
  11386. AHA-1540B rev. 1.4?)
  11387. 29h enable mailbox interface MBU,MBLT -
  11388. (since AHA-1540B
  11389. rev. 1.4?)
  11390. 41h AMI inquiry (AMI-4448) SL C0..C3,M0..M5,
  11391. S0..S5,V0..V5
  11392. 82h start BIOS SCSI command - -
  11393. (since AHA-1540B
  11394. rev. 1.4?)
  11395. 8Dh exteded setup information DIL? ?
  11396. (since AHA-1540B
  11397. rev. 1.4?)
  11398. Note: MBC mailboxes count (>0)
  11399. MBA0..MBA2 MSB..LSB of the physical address of the mailbox area
  11400. (see #P0581)
  11401. BFN BIOS function number
  11402. TRG bits 7-5: target ID
  11403. bits 4-0: reserved
  11404. CH bits 7-4: reserved
  11405. bits 3-0: bits 9-6 of cylinder number
  11406. CLHH bits 7-2: bits 5-0 of cylinder number
  11407. bits 1-0: bits 5-4 of head number
  11408. HL bits 7-4: reserved
  11409. bits 3-0: bits 3-0 of head number
  11410. SN sector number - 1
  11411. SC sector count
  11412. BA0..BA2 MSB..LSB of the physical address of the data buffer
  11413. BID board ID
  11414. 00h AHA-1540 (16-head BIOS)
  11415. 20h BusLogic BT-545S
  11416. 30h AHA-1540 (64-head BIOS)
  11417. 31h AHA-1540
  11418. 41h AHA-154xA/154xB (64-head BIOS)
  11419. 42h AHA-1640 (64-head BIOS)
  11420. 43h AHA-1542C
  11421. 44h AHA-1542CF
  11422. 45h AHA-1542CF (BIOS v2.01)
  11423. SOID special options ID
  11424. 30h ???
  11425. 41h standard model
  11426. FWR0,FWR1 firmware revision (alphanumeric)
  11427. E/D enable/diable parameter
  11428. 00h disable
  11429. 01h enable
  11430. TO0,TO1 MSB, LSB of the time-out value (in ms)
  11431. default 250 ms
  11432. BON bus on time (in mcs)
  11433. time the adapter stays on the AT bus when transferring data
  11434. 2..15 mcs, default 11 mcs
  11435. BOFF bus off time (in mcs)
  11436. time the adapter stays off the AT bus when transferring data
  11437. 1..64 mcs, default 4 mcs
  11438. ATBS AT bus transfer speed
  11439. 00h,AAh 5.0 MB/s
  11440. 01h,99h 6.7 Mb/s
  11441. 02h 8.0 Mb/s
  11442. 03h,88h 10.0 Mb/s
  11443. 04h 5.7 Mb/s
  11444. BBh 4.0 Mb/s?
  11445. CCh 3.3 Mb/s?
  11446. DDh 2.9 Mb/s?
  11447. EEh 2.5 Mb/s?
  11448. FFh 2.2 Mb/s?
  11449. TC0..TC7 target 0..7 configuration
  11450. bit M in byte N is set if SCSI ID N LUN M is installed
  11451. DAO DRQ arbitration priority
  11452. bit 7: channel 7
  11453. bit 6: channel 6
  11454. bit 5: channel 5
  11455. bits 4-1: reserved (0)
  11456. bit 0: channel 0
  11457. IRQ interrupt channel
  11458. bit 7: reserved (0)
  11459. bit 6: IRQ15
  11460. bit 5: IRQ14
  11461. bit 4: reserved (0)
  11462. bit 3: IRQ12
  11463. bit 2: IRQ11
  11464. bit 1: IRQ10
  11465. bit 0: IRQ9
  11466. SID SCSI ID
  11467. bits 7-3: reserved (0)
  11468. bits 2-0: binary value of SCSI ID
  11469. LUM logical unit mask
  11470. bit N is set if LUN N is to respond in target mode
  11471. DIL data in length
  11472. number of bytes to return (0 means 256 bytes)
  11473. SPS SDT and parity status
  11474. bits 7-2: reserved (0)
  11475. bit 1: SCSI parity check enabled
  11476. bit 0: synchronous negotiation initiated
  11477. STA0..STA7 synchronous transfer agreements for target ID 0..7
  11478. bit 7: synchronous transfer negotiated
  11479. bits 6-4: value defining synchronous transfer period
  11480. period in ns can be calculated as 200+50*value
  11481. bits 3-0: negotiated offset value
  11482. DS (AHA-154xB+?) disconnect status
  11483. bit N is set if target ID N is unable to disconnect?
  11484. EV echo value (it is be echoed back)
  11485. ESG 01h: enable scatter/gather
  11486. NED number of EEPROM data bytes to return
  11487. EA EEPROM address to read data from
  11488. F flags
  11489. bit 3: extended BIOS translation (255 heads / 63 sectors)
  11490. MBLT mailbox lock type
  11491. 01h translation lock (for extended BIOS)
  11492. 02h dynamic scan lock
  11493. MBU 00h: mailbox unlock
  11494. SL string length
  11495. C0..C3 ASCIZ company string ("AMI")
  11496. M0..M5 ASCIZ model string
  11497. S0..S5 ASCIZ series string ("48")
  11498. V0..V5 ASCIZ version string ("1.00")
  11499. Notes: all commands except 02h, 05h, 82h should only be issued if the host
  11500. adapter is idle (bit 4 in the status register set)
  11501. command 02h can be issued even if the command / data out register is
  11502. full (bit 3 in the status register may be set)
  11503. command 02h causes host adapter to scan both its SCSI and BIOS mailbox
  11504. areas; command 82h causes host adapter to scan only BIOS mailbox area
  11505. all commands except 02h and 05h cause host adapter command complete
  11506. interrupt (bit 2 in the interrupt flag register) after completetion;
  11507. command 05h will still generate the interrupt if its parameter was
  11508. invalid
  11509. return installed devices command (0Ah) results in the host adapter
  11510. issuing the TEST UNIT READY command to each target/LUN combination
  11511. return setup data command (0Dh) returns the number of bytes requested
  11512. with DIL parameter
  11513. BusLogic BT-545S gets the adapter inquiry command (04h) wrong returning
  11514. only one byte instead of four; DTC 3290 gets this command wrong too
  11515. AMI inquiry command (41h) returns the number of bytes requested
  11516. with SL parameter
  11517. SeeAlso: #P0577,#P0579
  11518. Format of AHA-154x mailbox array:
  11519. Offset Size Description (Table P0581)
  11520. 00h N*4 BYTEs array of N "out" mailboxes (MBO) (see #P0582)
  11521. N*4 N*4 BYTEs array of N "in" mailboxes (MBI) (see #P0584)
  11522. Notes: the MBO entries are scanned by the host adapter in a round-robin
  11523. fashion, i.e. the host adapter first looks into an MBO which follows
  11524. the one least recently used (and wraps around if it was the last one)
  11525. the MBI entries are filled in a round-robin fashion, so the CPU should
  11526. check the next MBI entry after the last one that was found when a new
  11527. mailbox in full (bit 0 in the interrupt flag register) interrupt; CPU
  11528. should also check the next MBI entries to determine if more than one
  11529. MBI is ready
  11530. MBI entries are absent in case of BIOS mailboxes; in this case MBI
  11531. status code is returned in the command linking ID field of the
  11532. command control block (CCB)
  11533. target mode CCB may be posted to the host adapter in anticipation of
  11534. the SCSI command reception, with the direction bits indicating the
  11535. expected transfer directiin (i.e. SEND or RECEIVE command); if a SCSI
  11536. command is received by the host adapter before the CCB is prepared,
  11537. it requests a CCB from the host through the MBI
  11538. SeeAlso: #P0577,#P0579,#P0583,#P0585,#P0587
  11539. Format of AHA-154x mailbox-out (MBO) entry:
  11540. Offset Size Description (Table P0582)
  11541. 00h BYTE mailbox command/status code (see #P0583,#P0585)
  11542. 01h 3 BYTEs address of the command control block (CCB) (see #P0586)
  11543. physical address in big-endian format
  11544. SeeAlso: #P0577,#P0581,#P0584
  11545. (Table P0583)
  11546. Values for mailbox out command codes:
  11547. 00h mailbox/CCB is free
  11548. 01h start CCB
  11549. 02h abort CCB
  11550. SeeAlso: #P0577,#P0581,#P0585
  11551. Format of mailbox-in (MBI) entry:
  11552. Offset Size Description (Table P0584)
  11553. 00h BYTE MBI status code (see #0584)
  11554. ---MBI status code 10h---
  11555. 01h BYTE initiator and LUN
  11556. bits 7-5: SCSI initiator ID
  11557. bit 4: RECEIVE command received
  11558. bit 3: SEND command received
  11559. bits 2-0: LUN
  11560. 02h WORD data length
  11561. 2 high bytes of the data length in SCSI SEND/RECEIVE command
  11562. in big-endian format
  11563. ---other MBI status codes---
  11564. 01h 3 BYTEs CCB pointer
  11565. physical address in big-endian format
  11566. SeeAlso: #P0582,#P0577,#P0581,#P0587
  11567. (Table P0585)
  11568. Values for mailbox in status codes:
  11569. 00h command in progress
  11570. 01h CCB completed
  11571. 02h CCB aborted
  11572. 03h CCB abort failed
  11573. 04h CCB completed with error
  11574. SeeAlso: #P0584,#P0581,#P0583
  11575. Format of AHA-154x command control block (CCB):
  11576. Offset Size Description (Table P0586)
  11577. 00h BYTE CCB operation code (see #P0587)
  11578. ---operation code 00h---
  11579. 01h BYTE address and control (see #P0601)
  11580. 02h BYTE SCSI command length
  11581. 03h BYTE request sense allocation length
  11582. 00h request 14 bytes of sense data
  11583. 01h disable auto-sense
  11584. 02h-07h reserved
  11585. 08h-FFh sense data length
  11586. 04h 3 BYTEs data length
  11587. in big-endian format
  11588. 07h 3 BYTEs data pointer
  11589. physical address in big-endian format
  11590. 0Ah 3 BYTEs link pointer (link to the next CCB for the linked commands)
  11591. physical address in big-endian format
  11592. 0Dh BYTE command linking ID (for the linked commands)
  11593. (return) MBI status code if this CCB is in a BIOS mailbox
  11594. (see #P0585)
  11595. 0Eh BYTE (return) host adapter status (HASTAT) (see #P0589)
  11596. 0Fh BYTE (return) target device status (TARSTAT)
  11597. SCSI status byte
  11598. 10h 2 BYTEs reserved
  11599. 12h N BYTEs SCSI command descriptor block (CDB)
  11600. 12h+N M BYTEs allocated for sense data
  11601. (return) sense data (if requested)
  11602. ---operation code 01h---
  11603. 01h BYTE address and control
  11604. bits 7-5: initiator ID
  11605. bits 4-3: transfer direction
  11606. 01 SEND command
  11607. 10 RECEIVE command
  11608. 00,11 illegal combination
  11609. bits 2-0: LUN
  11610. 02h BYTE SCSI command length
  11611. 03h BYTE request sense allocation length
  11612. 04h 3 BYTEs data length
  11613. 07h 3 BYTEs data pointer
  11614. 0Ah 4 BYTEs reserved
  11615. 0Eh BYTE (return) host adapter status (see #P0589)
  11616. 0Fh BYTE (return) target device status
  11617. 10h 2 BYTEs reserved
  11618. 12h N BYTEs (return) SCSI CDB
  11619. 12h+N M BYTEs allocated for sense data
  11620. (return) sense data (to be sent to the initiator)
  11621. ---operation code 02h---
  11622. 01h BYTE address and control (see #P0601)
  11623. 02h BYTE SCSI command length
  11624. 03h BYTE request sense allocation length
  11625. 04h 3 BYTEs data segment list length (in bytes)
  11626. in big-endian format
  11627. 07h 3 BYTEs data segment list pointer
  11628. physical address in big-endian format
  11629. 0Ah 3 BYTEs link pointer
  11630. 0Dh BYTE command linking ID
  11631. (return) MBI status code if this CCB is in a BIOS mailbox
  11632. (see #P0585)
  11633. 0Eh BYTE (return) host adapter status (see #P0589)
  11634. 0Fh BYTE (return) target device status
  11635. 10h 2 BYTEs reserved
  11636. 12h N BYTEs SCSI CDB
  11637. 12h+N M BYTEs allocated for sense data
  11638. (return) sense data (if requested)
  11639. ---operation code 03h---
  11640. 01h BYTE address and control (see #P0601)
  11641. 02h BYTE SCSI command length
  11642. 03h BYTE request sense allocation length
  11643. 04h 3 BYTEs data length
  11644. (return) residual length
  11645. 07h 3 BYTEs data pointer
  11646. 0Ah 3 BYTEs link pointer
  11647. 0Dh BYTE command linking ID
  11648. (return) MBI status code if this CCB is in a BIOS mailbox
  11649. (see #P0585)
  11650. 0Eh BYTE (return) host adapter status (see #P0589)
  11651. 0Fh BYTE (return) target device status
  11652. 10h 2 BYTEs reserved
  11653. 12h N BYTEs SCSI CDB
  11654. 12h+N M BYTEs allocated for sense data
  11655. (return) sense data (if requested)
  11656. ---operation code 04h---
  11657. 01h BYTE address and control (see #P0601)
  11658. 02h BYTE SCSI command length
  11659. 03h BYTE request sense allocation length
  11660. 04h 3 BYTEs data segment list length (in bytes)
  11661. (return) residual length
  11662. 07h 3 BYTEs data segment list pointer
  11663. 0Ah 3 BYTEs link pointer
  11664. 0Dh BYTE command linking ID
  11665. (return) MBI status code if this CCB is in a BIOS mailbox
  11666. (see #P0583)
  11667. 0Eh BYTE (return) host adapter status (see #P0589)
  11668. 0Fh BYTE (return) target device status
  11669. 10h 2 BYTEs reserved
  11670. 12h N BYTEs SCSI CDB
  11671. 12h+N M BYTEs allocated for sense data
  11672. (return) sense data (if requested)
  11673. ---operation code 81h---
  11674. 01h BYTE address and control
  11675. bits 7-5: target ID
  11676. bits 4-0: reserved
  11677. Note: if a SCSI command completes with the BUSY status, the host adapter
  11678. periodically restarts it until it completes with other status
  11679. if a SCSI command completes with the CHECK CONDITION status, the host
  11680. adapter automatically issues a REQUEST SENSE command with the data
  11681. length specified by request sense allocation length field; the actual
  11682. bytes returned are placed in the area allocated for sense data; but
  11683. if the request sense allocation length was 01h, no REQUEST SENSE
  11684. command is issued
  11685. if the host adapter completes a SCSI command with the CHECK CONDITION
  11686. status while it is operating in the target mode, the same sense data
  11687. that will later be received by the initiator is also placed in the
  11688. area allocated for sense data
  11689. command linking is not supported in target mode
  11690. for a target mode CCB target device status field is used to indicate
  11691. to the host what status the host adapter returned to the initiator;
  11692. SCSI CDB field is used to return the CDB from the initiator
  11693. SeeAlso: #P0577,#P0582,#P0584
  11694. (Table P0587)
  11695. Values for CCB type:
  11696. 00h initiator CCB
  11697. 01h target CCB (not on AHA-1540/W1542A)
  11698. 02h initiator CCB with scatter/gather (see #P0590) (not on AHA-1540)
  11699. 03h initiator CCB with residual length (AHA-154xB or higher)
  11700. 04h initiator CCB with scatter/gather and residual length (see #P0590)
  11701. (AHA-154xB or higher)
  11702. 81h bus device reset CCB
  11703. Note: residual length is returned in the data length field of CCB
  11704. initiator CCB with scatter/gather cannot have a zero data length or
  11705. contain more than 16 entries
  11706. SeeAlso: #P0577,#P0586
  11707. Bitfields for the initiator mode address and control CCB field:
  11708. Bit(s) Description (Table P0601)
  11709. 7-5 target ID
  11710. 4-3 transfer direction
  11711. 00 determined by the SCSI command
  11712. 01 inbound data transfer, length is checked
  11713. 10 outbound data transfer, length is checked
  11714. 11 no data transfer (suppress inbound data transfer)
  11715. 2-0 LUN
  11716. SeeAlso: #P0586,#P0589
  11717. (Table P0589)
  11718. Values for host adapter status:
  11719. 00h command complete
  11720. 0Ah linked command complete (linked CCBs only)
  11721. 0Bh linked command complete with flag (linked CCBs only)
  11722. 11h selection time out
  11723. 12h data overrun/underrun
  11724. 13h unexpected bus free
  11725. 14h target bus phase sequence failure
  11726. 15h invalid mailbox out command
  11727. 16h invalid CCB operation code
  11728. 17h linked CCB does not have the same LUN
  11729. 18h (not AHA-1540/W1542A) invalid target direction received from host
  11730. (target mode)
  11731. 19h (not AHA-1540/W1542A) duplicate CCB received (target mode)
  11732. 1Ah invalid CCB or segment list parameter
  11733. Notes: in the initiator mode, if the target attempted to transfer more data
  11734. than was allocated by the data length field or the sum of the data
  11735. segment length fields, and the length checking was enabled via bits
  11736. 4-3 of the address and control field, the CCB will be returned with a
  11737. host status of 12h; if the length checking was not enabled, command
  11738. will be completed without error
  11739. in the target mode, if the transfer length specified by the SEND/
  11740. RECEIVE command is not equal to that specified in the target mode CCB
  11741. the host adapter will notify the CPU, setting the incorrect length
  11742. indication bit (ILI), bit 5 of byte 2 in the area allocated for sense
  11743. data; also, bytes 3..6 in this area will contain the residue of the
  11744. length requested in the SSCI command and the data length in the CCB
  11745. (MSB first); if it is negative the GOOD status will be returned to
  11746. the initiator, else the CHECK CONDITION status will be returned (with
  11747. subsequent REQUEST SENSE returning ILI in byte 2 and residue in bytes
  11748. 3..6 of the sense data); the CCB will be returned with a host status
  11749. of 12h in both cases
  11750. will be completed without error
  11751. in case of target bus sequence failure host adapter will generate a
  11752. SCSI reset condition setting bit 3 in the interrupt flag register and
  11753. generating an interrupt
  11754. in target mode one CCB may be presented for each unique combination of
  11755. LUN, Initiator, and direction; if a second CCB to the same LUN and
  11756. initiator with the same direction bit is sent to the host adapter,
  11757. the CCB will be returned with a host status of 19h
  11758. if a segment list with a zero length segment or invalid segment list
  11759. boundaries was received or a CCB parameter was invalid, the CCB will
  11760. be returned with a host status of 1Ah
  11761. SeeAlso: #P0577,#P0586,#P0601
  11762. Format of AHA-154x scatter/gather segment:
  11763. Offset Size Description (Table P0590)
  11764. 00h 3 BYTEs data length
  11765. in big-endian format
  11766. 03h 3 BYTEs data pointer
  11767. physical address in big-endian format
  11768. Note: if the segment ends at odd/even bondary, the next segment must begin
  11769. on the same boundary
  11770. SeeAlso: #P0577
  11771. ----------P0330033F--------------------------
  11772. PORT 0330-033F - CompaQ SCSI adapter. alternate address at 0130
  11773. --------d-P0330033F--------------------------
  11774. PORT 0330-033F - Philips CD-ROM player CM50
  11775. --------d-P03340337--------------------------
  11776. PORT 0334-0337 - Adaptec 154xB/154xC SCSI adapter.
  11777. Range: four ports at any of 0130, 0134, 0230, 0234, 0330 (default) or 0334
  11778. --------s-P0338------------------------------
  11779. PORT 0338 - AdLib soundblaster card
  11780. --------S-P0338033F--------------------------
  11781. PORT 0338-033F - COM port addresses on UniRAM card by German magazine c't
  11782. Range: selectable from 0238, 02E8, 02F8, 0338, 03E0, 03E8, 03F8
  11783. ----------P0340034F--------------------------
  11784. PORT 0340-034F - Philips CD-ROM player CM50
  11785. ----------P0340034F--------------------------
  11786. PORT 0340-034F - SCSI (1st Small Computer System Interface) adapter
  11787. Range: alternate address at 0140-014F
  11788. --------s-P0340------------------------------
  11789. PORT 0340 - Crystal Semiconductor CDB4922 evaluation board
  11790. Desc: the CDB4922 is an evaluation board for the CS4922 MPEG audio
  11791. decoder (see I2C xxh"CS4922")
  11792. --------s-P0340034F--------------------------
  11793. PORT 0340-034F - Gravis Ultra Sound by Advanced Gravis
  11794. Range: The I/O address range is dipswitch selectable from:
  11795. 0200-020F and 0300-030F
  11796. 0210-021F and 0310-031F
  11797. 0220-022F and 0320-032F
  11798. 0230-023F and 0330-033F
  11799. 0240-024F and 0340-034F
  11800. 0250-025F and 0350-035F
  11801. 0260-026F and 0360-036F
  11802. 0270-027F and 0370-037F
  11803. Note: the AMD InterWave chip provides a superset of the UltraSound's
  11804. functionality, including these ports
  11805. SeeAlso: PORT 0240h-024Fh,PORT 0746h
  11806. 0340 -W MIDI Control (see #P0591)
  11807. 0340 R- MIDI Status (see #P0592)
  11808. 0341 -W MIDI Transmit Data
  11809. 0341 R- MIDI Receive Data
  11810. 0342 RW GF1 Page Register / Voice Select
  11811. 0343 RW GF1/Global Register Select (see #P0593)
  11812. 0344 RW GF1/Global Data Low Byte (16 bits)
  11813. 0345 RW GF1/Global Data High Byte (8 bits)
  11814. 0346 -W Mixer Data Port
  11815. 0347 RW GF1 DRAM
  11816. Direct Read Write at Loction pointed with regs 43 and 44
  11817. Bitfields for Gravis Ultra Sound MIDI control register:
  11818. Bit(s) Description (Table P0591)
  11819. 7 Receive IRQ (1 = enabled)
  11820. 5-6 Xmit IRQ
  11821. 0-1 Master Reset (1 = enabled)
  11822. SeeAlso: #P0546,#P0548,#P0592
  11823. Bitfields for Gravis Ultra Sound MIDI status register:
  11824. Bit(s) Description (Table P0592)
  11825. 7 Interrupt pending
  11826. 5 Overrun Error
  11827. 4 Framing Error
  11828. 1 Transmit Register Empty
  11829. 0 Receive Register Empty
  11830. SeeAlso: #P0591,#P0593
  11831. (Table P0593)
  11832. Values for Gravis Ultra Sound GF1/Global Registers:
  11833. ---Voice specific registers---
  11834. 00h w Voice Control (see #P0595)
  11835. 01h w Frequency Control
  11836. bit 15-10 Integer Portion
  11837. bit 9-1 Fractional Portion
  11838. 02h w Start Address HIGH
  11839. bit 12-0 Address Lines 19-7
  11840. 03h w Start Address LOW
  11841. bit 15-9 Address Lines 6-0
  11842. bit 8-5 Fractional Part of Start Address
  11843. 04h w End Address HIGH
  11844. bit 12-0 Address Lines 19-7
  11845. 05h w End Address LOW
  11846. bit 15-9 Address Lines 6-0
  11847. bit 8-5 Fractional Part of End Address
  11848. 06h w Volume Ramp Rate
  11849. bit 5-0 Amount added
  11850. bit 7-6 Rate
  11851. 07h w Volume Ramp Start
  11852. bit 7-4 Exponent
  11853. bit 3-0 Mantissa
  11854. 08h w Volume Ramp End
  11855. bit 7-4 Exponent
  11856. bit 3-0 Mantissa
  11857. 09h w Current Volume
  11858. bit 15-12 Exponent
  11859. bit 11-4 Mantissa
  11860. 0Ah w Current Address HIGH
  11861. bit 12-0 Address Lines 19-7
  11862. 0Bh w Current Address LOW
  11863. bit 15-9 Address Lines 6-0
  11864. bit 8-0 Fractional Position
  11865. 0Ch w Pan Position
  11866. bit 3-0 Pan Postion
  11867. 0Dh w Volume Control (see #P0596)
  11868. 0Eh w Active Voices
  11869. bit 5-0 #Voices -1 (allowed 13 - 31)
  11870. 0Fh w IRQ Source Register (see #P0597)
  11871. ---NOT voice specific---
  11872. 41h r/w DRAM DMA Control (see #P0598)
  11873. 42h w DMA Start Address
  11874. bits 15-0 DMA Address Lines 19-4
  11875. 43h w DRAM I/O Address LOW
  11876. 44h w DRAM I/O Address HIGH
  11877. bits 0-3 Upper 4 Address Lines
  11878. 45h r/w Timer Control
  11879. bit 3 Enable Timer 2
  11880. bit 2 Enable Timer 1
  11881. 46h w Timer 1 Count (granularity of 80 micro sec)
  11882. 47h w Timer 2 Count (granulatity of 320 micro sec)
  11883. 48h w Sampling Frequency
  11884. rate = 9878400 / (16 * (FREQ + 2))
  11885. 49h r/w Sampling Control (see #P0599)
  11886. 4Bh w Joystick Trim DAC
  11887. 4Ch r/w RESET
  11888. bit 2 GF1 Master IRQ Enable
  11889. bit 1 DAC Enable
  11890. bit 0 Master Reset
  11891. ---Voice specific registers---
  11892. 80h r Voice Control (see 00h)
  11893. 81h r Frequency Control (see 01h)
  11894. 82h r Start Address HIGH (see 02h)
  11895. 83h r Start Address LOW (see 03h)
  11896. 84h r End Address HIGH (see 04h)
  11897. 85h r End Address LOW (see 05h)
  11898. 86h r Volume Ramp Rate (see 06h)
  11899. 87h r Volume Ramp Start (see 07h)
  11900. 88h r Volume Ramp End (see 08h)
  11901. 89h r Current Volume (see 09h)
  11902. 8Ah r Current Address HIGH (see 0Ah)
  11903. 8Bh r Current Address LOW (see 0Bh)
  11904. 8Ch r Pan Position (see 0Ch)
  11905. 8Dh r Volume Control (see 0Dh)
  11906. 8Eh r Active Voices (see 0Eh)
  11907. 8Fh r IRQ Status (see 0Fh)
  11908. SeeAlso: #P0592,#P0594
  11909. (Table P0594)
  11910. Values for InterWave synthesizer registers:
  11911. ---voice-specific registers---
  11912. 10h w synthesizer upper address
  11913. 11h w synthesizer effects address high (16 bits)
  11914. 12h w synthesizer effects address low (16 bits)
  11915. 13h w synthesizer left offset (16 bits)
  11916. 14h w synthesizer effects output accumulator select
  11917. 15h w synthesizer mode select
  11918. 16h w synthesizer effects volume (16 bits)
  11919. 17h w synthesizer frequency LFO
  11920. 18h w synthesizer volume LFO
  11921. ---NOT voice-specific---
  11922. 19h w synthesizer global mode
  11923. 1Ah w synthesizer LFO base address (16 bits)
  11924. ---voice-specific registers---
  11925. 1Bh w synthesizer right offset (16 bits)
  11926. 1Ch w synthesizer left offset (16 bits)
  11927. 1Dh w synthesizer effect volume final (16 bits)
  11928. ---NOT voice-specific---
  11929. 41h r/w local memory control: DMA control
  11930. 42h r/w local memory control: DMA start address bits 19-4 (16 bits)
  11931. 43h w local memory control: I/O address low (16 bits)
  11932. 44h w local memory control: I/O address high (16 bits)
  11933. 45h r/w AdLib/SoundBlaster control
  11934. 46h r/w AdLib timer 1
  11935. 47h r/w AdLib timer 2
  11936. 49h r/w ADC sample control
  11937. 4Bh r/w joystick trim
  11938. 4Ch w GUS reset
  11939. 50h r/w local memory control: DMA start address bits 23-20/3-0 (16 bits)
  11940. 51h r/w local memory control: 16-bit access
  11941. 52h r/w local memory control: configuration
  11942. 53h r/w local memory control: control
  11943. 54h r/w local memory control: record FIFO base address bits 23-8 (16-bit)
  11944. 55h r/w local memory control: playback FIFO base address bits 23-8 (16-bit)
  11945. 56h r/w local memory control: FIFO size (16-bit)
  11946. 57h r/w local memory control: DMA interleave control (16-bit)
  11947. 58h r/w local memory control: DMA interleaev base address bits 23-8
  11948. 59h r/w compatibility control
  11949. 5Ah r/w decode control
  11950. 5Bh r/w version number
  11951. 5Ch r/w MPU-401 emulation control A
  11952. 5Dh r/w MPU-401 emulation control B
  11953. 5Eh w MIDI receive FIFO access
  11954. 5Fh - reserved
  11955. 60h r/w emulation IRQ
  11956. ---voice-specific registers---
  11957. 90h r synthesizer upper address
  11958. 91h r synthesizer effects address high (16 bits)
  11959. 92h r synthesizer effects address low (16 bits)
  11960. 93h r synthesizer left offset (16 bits)
  11961. 94h r synthesizer effects output accumulator select
  11962. 95h r synthesizer mode select
  11963. 96h r synthesizer effects volume (16 bits)
  11964. 97h r synthesizer frequency LFO
  11965. 98h r synthesizer volume LFO
  11966. ---NOT voice-specific---
  11967. 99h r synthesizer global mode
  11968. 9Ah r synthesizer LFO base address (16 bits)
  11969. ---voice-specific registers---
  11970. 9Bh r synthesizer right offset (16 bits)
  11971. 9Ch r synthesizer left offset (16 bits)
  11972. 9Dh r synthesizer effect volume final (16 bits)
  11973. ---NOT voice-specific---
  11974. 9Fh r synthesizer voices IRQ
  11975. Note: these registers are *in*addition* to the Gravis UltraSound registers
  11976. SeeAlso: #P0593
  11977. Bitfields for Gravis Ultra Sound voice control global register:
  11978. Bit(s) Description (Table P0595)
  11979. 7 IRQ pending
  11980. 6 Direction
  11981. 5 Enable WAVE IRQ
  11982. 4 Enable bi-directional Looping
  11983. 3 Enable Looping
  11984. 2 Size data (8/16 bits)
  11985. 1 Stop Voice
  11986. 0 Voice Stopped
  11987. SeeAlso: #P0593,#P0596
  11988. Bitfields for Gravis Ultra Sound volume control global register:
  11989. Bit(s) Description (Table P0596)
  11990. 7 IRQ Pending
  11991. 6 Direction
  11992. 5 Enable Volume Ramp IRQ
  11993. 4 Enable bi-directional Looping
  11994. 3 Enable Looping
  11995. 2 Rollover Condition
  11996. 1 Stop Ramp
  11997. 0 Ramp Stopped
  11998. SeeAlso: #P0593,#P0595
  11999. Bitfields for Gravis Ultra Sound IRQ source register:
  12000. Bit(s) Description (Table P0597)
  12001. 7 WaveTable IRQ pending
  12002. 6 Volume Ramp IRQ pending
  12003. 4-0 Voice Number
  12004. SeeAlso: #P0593,#P0595,#P0598
  12005. Bitfields for Gravis Ultra Sound DRAM DMA control register:
  12006. Bit(s) Description (Table P0598)
  12007. 7 Invert MSB
  12008. 6 Data Size (8/16 bits)
  12009. 5 DMA Pending
  12010. 3-4 DMA Rate Divider
  12011. 2 DMA Channel Width (8/16 bits)
  12012. 1 DMA Direction (1 = read)
  12013. 0 DMA Enable
  12014. SeeAlso: #P0593,#P0597
  12015. Bitfields for Gravis Ultra Sound sampling control register:
  12016. Bit(s) Description (Table P0599)
  12017. 7 Invert MSB
  12018. 6 DMA IRQ pending
  12019. 5 DMA IRQ enable
  12020. 2 DMA width (8/16 bits)
  12021. 1 Mode (mone/stereo)
  12022. 0 Start Sampling
  12023. SeeAlso: #P0593
  12024. ----------P03400357--------------------------
  12025. PORT 0340-0357 - RTC (1st Real Time Clock for XT)
  12026. (used by TIMER.COM v1.2 which is the 'standard' timer program)
  12027. Range: alternate at 0240-0257
  12028. SeeAlso: PORT 0240h-0257h
  12029. 0340 RW 0.001 seconds 0-99
  12030. 0341 RW 0.1 and 0.01 seconds 0-99
  12031. 0342 RW seconds 0-59
  12032. 0343 RW minutes 0-59
  12033. 0343 RW hours 0-23
  12034. 0345 RW day of week 1-7
  12035. 0346 RW day of month 1-31
  12036. 0347 RW month 1-12
  12037. 0348 RW RAM (upper nybble only)
  12038. 0349 RW year 0-99
  12039. 034A RW RAM last month storage
  12040. 034B RW RAM year storage (-80)
  12041. 034C RW RAM reserved
  12042. 034D RW RAM not used
  12043. 034E RW RAM not used
  12044. 034F RW RAM not used
  12045. 0350 R- interrupt status register
  12046. 0351 -W interrupt control register
  12047. 0352 -W counter reset
  12048. 0353 -W RAM reset
  12049. 0354 R- status bit
  12050. 0355 -W GO command
  12051. 0356 ?? standby interrupt
  12052. 0357 ?? test mode
  12053. --------d-P0340035F--------------------------
  12054. PORT 0340-035F - Adaptec AHA-152x SCSI adapter
  12055. Range: alternate address at 0140
  12056. Note: Adaptec AHA-152x SCSI adapter series are based upon Adaptec
  12057. AIC-6260/6360/6370 SCSI controllers
  12058. SeeAlso: PORT xxxxh"Adaptec AIC-78xx"
  12059. +000 RW SCSI sequence control register (SCSISEQ) (see #P0600)
  12060. +001 RW SCSI transfer control register 0 (SXFRCTL0) (see #P0601)
  12061. +002 RW SCSI transfer control register 1 (SXFRCTL1) (see #P0602)
  12062. +003 R- SCSI control signal read register (SCSISIGI) (see #P0603)
  12063. +003 -W SCSI control signal write register (SCSISIGO) (see #P0604)
  12064. +004 RW SCSI rate control register (SCSIRATE) (see #P0605)
  12065. +005 RW SCSI ID register (SCSIID) (see #P0606)
  12066. +006 RW SCSI latched data register (SCSIDAT)
  12067. read/write causes -ACK to pulse
  12068. +007 R? SCSI data bus register (SCSIBUS)
  12069. +008 RW SCSI transfer count register (STCNT) (3 bytes long)
  12070. +00B R- SCSI status register 0 (SSTAT0) (see #P0607)
  12071. +00B -W clear SCSI interrupt register 0 (CLRSINT0) (see #P0608)
  12072. +00C R- SCSI status register 1 (SSTAT1) (see #P0609)
  12073. +00C -W clear SCSI interrupt register 1 (CLRSINT1) (see #P0610)
  12074. +00D R- SCSI status register 2 (SSTAT2) (see #P0611)
  12075. +00E R- SCSI status register 3 (SSTAT3) (see #P0612)
  12076. +00E ?W SCSI test control register (SCSITEST) (see #P0613)
  12077. +00F R- SCSI status register 4 (SSTAT4) (see #P0614)
  12078. +00F -W clear SCSI interrupt register 4 (CLRSINT4) (see #P0615)
  12079. +010 RW SCSI interrupt mode register 0 (SIMODE0) (see #P0616)
  12080. +011 RW SCSI interrupt mode register 1 (SIMODE1) (see #P0617)
  12081. +012 RW DMA control register 0 (DMACNTRL0) (see #P0618)
  12082. +013 RW DMA control register 1 (DMACNTRL1) (see #P0619)
  12083. +014 RW DMA status register (DMASTAT) (see #P0620)
  12084. +015 RW FIFO status register (FIFOSTAT)
  12085. +016w RW data port register (DATAPORT)
  12086. +018 RW burst control register (BRSTCNTRL) (see #P0621)
  12087. +01A RW port A register (PORTA) (see #P0622)
  12088. +01B RW port B register (PORTB) (see #P0623)
  12089. +01C RW revision register (REV)
  12090. +01D RW stack register (STACK)
  12091. +01E RW test register (TEST) (see #P0624)
  12092. +01F R? (AIC-6360+) ID register (ID)
  12093. 32-byte ID string can be read here
  12094. Notes: the SCSI latched data register is used to transfer data on the SCSI bus
  12095. during automatic or manual PIO mode
  12096. the SCSI data bus register reflects the state of SCSI data bus lines
  12097. directly
  12098. Bitfields for SCSI sequence control register (SCSISEQ):
  12099. Bit(s) Description (Table P0600)
  12100. 7 enable target mode (TEMODEO)
  12101. 6 enable selection out (ENSELO)
  12102. 5 enable selection in (ENSELI)
  12103. 4 enable reselection in (ENRESELI)
  12104. 3 "ENAUTOATNO"
  12105. 2 "ENAUTOATNI"
  12106. 1 enable auto -ATN on parity error (ENAUTOATNP)
  12107. 0 SCSI reset out (SCSIRSTO)
  12108. Note: each bit when set starts a specific SCSI sequence on the bus
  12109. SeeAlso: #P0602,#P0607,#P0608,#P0616
  12110. Bitfields for SCSI transfer control register 0 (SXFRCTL0):
  12111. Bit(s) Description (Table P0601)
  12112. 7 SCSI FIFO enable (SCSIEN)
  12113. 6 DMA FIFO enable (DMAEN)
  12114. 5 channel enable (CHEN)
  12115. 4 clear SCSI transfer counter (CLRSTCNT)
  12116. 3 SCSI PIO enable (SPIOEN)
  12117. 2 SCAM enable (SCAMEN)
  12118. 1 clear channel (CLRCH)
  12119. 0 reserved
  12120. SeeAlso: #P0602,#P0607,#P0611,#P0618,#P0620
  12121. Bitfields for SCSI transfer control register 1 (SXFRCTL1):
  12122. Bit(s) Description (Table P0602)
  12123. 7 bit bucket (BITBUCKET)
  12124. 6 SCSI counter wrap enable (SWRAPEN)
  12125. 5 enable SCSI parity check (ENSPCHK)
  12126. 4-3 selection time-out select (STIMESEL)
  12127. 00 256 ms
  12128. 01 128 ms
  12129. 10 64 ms
  12130. 11 32 ms
  12131. 2 enable selection timer (ENSTIMER)
  12132. 1 byte align (BYTEALIGN)
  12133. 0 reserved
  12134. SeeAlso: #P0600,#P0601
  12135. Bitfields for SCSI control signal read register (SCSISIGI):
  12136. Bit(s) Description (Table P0603)
  12137. 7 -C/D input (CDI)
  12138. 6 -I/O input (IOI)
  12139. 5 -MSG input (MSGI)
  12140. 4 -ATN input (ATNI)
  12141. 3 -SEL input (SELI)
  12142. 2 -BSY input (BSYI)
  12143. 1 -REQ input (REQI)
  12144. 0 -ACK input (ACKI)
  12145. Note: this register reflects the actual state of the SCSI bus control lines
  12146. SeeAlso: #P0604
  12147. Bitfields for SCSI control signal write register (SCSISIGO):
  12148. Bit(s) Description (Table P0604)
  12149. 7 -C/D output (CDO)
  12150. 6 -I/O output (IOO)
  12151. 5 -MSG output (MSGO)
  12152. 4 -ATN output (ATNO)
  12153. 3 -SEL output (SELO)
  12154. 2 -BSY output (BSYO)
  12155. 1 -REQ output (REQO)
  12156. 0 -ACK output (ACKO)
  12157. Notes: writing to this register modifies the control signals on the bus; only
  12158. those signals that are allowed in the current mode (initiator/target)
  12159. are asserted
  12160. bits 7-5 in initiator mode represent the expected SCSI bus phase and
  12161. can be used to trigger phase mismatch and phase change interrupts
  12162. SeeAlso: #P0603
  12163. Bitfields for SCSI rate control register (SCSIRATE):
  12164. Bit(s) Description (Table P0605)
  12165. 7 reserved
  12166. 6-4 synchronous transfer rate (SXFR)
  12167. rate = 100 + SXFR * 25 (ns)
  12168. 3-0 synchronous offset (SOFS)
  12169. Note: contents of this register determine the synchronous SCSI data transfer
  12170. rate and the maximum synchronous -REQ/-ACK offset; an offset of 0 in
  12171. the bits 3-0 disables synchronous data transfers, any offset value
  12172. greater than 0 enables snchronous transfers
  12173. SeeAlso: #P0611
  12174. Bitfields for SCSI ID register (SCSIID):
  12175. Bit(s) Description (Table P0606)
  12176. 7 reserved
  12177. 6-4 our ID (OID)
  12178. 3 reserved
  12179. 2-0 target ID (TID)
  12180. Note: this register contains the SCSI ID of the board and the current target
  12181. on the selected channel
  12182. SeeAlso: #P0982
  12183. Bitfields for SCSI status register 0 (SSTAT0):
  12184. Bit(s) Description (Table P0607)
  12185. 7 target mode (TARGET)
  12186. 6 selection out done (SELDO)
  12187. 5 selection in done (SELDI)
  12188. 4 selection in progress (SELINGO)
  12189. 3 SCSI counter wrap (SWRAP)
  12190. 2 SCSI PIO done (SDONE)
  12191. 1 SCSI PIO ready (SPIORDY)
  12192. 0 DMA done (DMADONE)
  12193. Note: bits 1-0 and 6-4 are self-clearing
  12194. bit 2 is set when the SCSI transfer count register decrements to 0
  12195. SeeAlso: #P0600,#P0601,#P0608,#P0616
  12196. Bitfields for clear SCSI interrupt register 0 (CLRSINT0):
  12197. Bit(s) Description (Table P0608)
  12198. 7 set SCSI PIO done? (SETSDONE)
  12199. 6 clear selection out done (CLRSELDO)
  12200. 5 clear selection in done (CLRSELDI)
  12201. 4 clear selection in progress (CLRSELINGO)
  12202. 3 clear SCSI counter wrap (CLRSWRAP)
  12203. 2 clear SCSI PIO done (CLRSDONE)
  12204. 1 clear SCSI PIO ready (CLRSPIORDY)
  12205. 0 reserved
  12206. Note: writing 1 to a bit clears the associated SCSI interrupt; writing 1 to
  12207. the bits 3-2 also clears the asscoiated bits in SSTAT0
  12208. SeeAlso: #P0600,#P0601,#P0607,#P0616
  12209. Bitfields for SCSI status register 1 (SSTAT1):
  12210. Bit(s) Description (Table P0609)
  12211. 7 selection time-out (SELTO)
  12212. 6 (target) "ATNTARG"
  12213. 5 SCSI reset in (SCSIRSTI)
  12214. 4 phase mismatch (PHASEMIS)
  12215. 3 bus free (BUSFREE)
  12216. 2 SCSI parity error (SCSIPERR)
  12217. 1 phase changed (PHASECHG)
  12218. 0 -REQ asserted (REQINIT)
  12219. Notes: bit 0 can be cleared by setting bit 0 in the clear SCSI interrupt 1
  12220. register (CLRSINT1), and by asserting -ACK as well
  12221. bit 4 is self-clearing
  12222. SeeAlso: #P0602,#P0603,#P0604,#P0610,#P0617
  12223. Bitfields for clear SCSI interrupt register 1 (CLRSINT1):
  12224. Bit(s) Description (Table P0610)
  12225. 7 clear selection time-out (CLRSELTIMEO)
  12226. 6 clear -ATN output (CLRATNO)
  12227. 5 clear SCSI reset in (CLRSCSIRSTI)
  12228. 4 reserved
  12229. 3 clear bus free (CLRBUSFREE)
  12230. 2 clear SCSI parity error (CLRSCSIPERR)
  12231. 1 clear phase changed (CLRPHASECHG)
  12232. 0 clear -REQ asserted (CLRREQINIT)
  12233. Note: writing 1 to a bit clears the associated SCSI interrupt; writing 1 to
  12234. the bits 3-0, 5, and 7 also clears the associated bits in SSTAT1
  12235. SeeAlso: #P0603,#P0604,#P0609,#P0617
  12236. Bitfields for SCSI status register 2 (SSTAT2):
  12237. Bit(s) Description (Table P0611)
  12238. 7-6 reserved
  12239. 5 "SOFFSET"
  12240. 4 SCSI FIFO empty (SEMPTY)
  12241. 3 SCSI FIFO full (SFULL)
  12242. 2-0 SCSI FIFO count (SFCNT)
  12243. Note: the SCSI FIFO is 8 bytes long; bit 3 is set when all the 8 bytes are
  12244. full (bits 2-0 are clear)
  12245. SeeAlso: #P0601,#P0605,#P0614,#P0615
  12246. Bitfields for SCSI status register 3 (SSTAT3):
  12247. Bit(s) Description (Table P0612)
  12248. 7-4 "SCSICNT"
  12249. 3-0 "OFFCNT"
  12250. SeeAlso: #P0605,#P0611
  12251. Bitfields for SCSI test control register (SCSITEST):
  12252. Bit(s) Description (Table P0613)
  12253. 7-4 reserved
  12254. 3 "SCTESTU"
  12255. 2 "SCTESTD"
  12256. 1 reserved
  12257. 0 "STCTEST"
  12258. SeeAlso: #P0624
  12259. Bitfields for SCSI status register 4 (SSTAT4):
  12260. Bit(s) Description (Table P0614)
  12261. 7-3 reserved
  12262. 2 "SYNCERR"
  12263. 1 FIFO write error? (FWERR)
  12264. 0 FIFO read error? (FRERR)
  12265. SeeAlso: #P0611,#P0615
  12266. Bitfields for clear SCSI interrupt register 4 (CLRSINT4):
  12267. Bit(s) Description (Table P0615)
  12268. 7-3 reserved
  12269. 2 "CLRSYNCERR"
  12270. 1 clear FIFO write error? (CLRFWERR)
  12271. 0 clear FIFO read error? (CLRFRERR)
  12272. SeeAlso: #P0611,#P0614
  12273. Bitfields for SCSI interrupt mode register 0 (SIMODE0):
  12274. Bit(s) Description (Table P0616)
  12275. 7 reserved
  12276. 6 enable selection out done (ENSELDO)
  12277. 5 enable selection in done (ENSELDI)
  12278. 4 enable selection in progress (ENSELINGO)
  12279. 3 enable SCSI counter wrap (ENSWRAP)
  12280. 2 enable SCSI PIO done (ENSDONE)
  12281. 1 enable SCSI PIO ready (ENSPIORDY)
  12282. 0 enable DMA done (ENDMADONE)
  12283. Note: setting any bit will enable the corresponding function to interrupt
  12284. via the IRQ pin
  12285. SeeAlso: #P0607,#P0608,#P0617,#P0618
  12286. Bitfields for SCSI interrupt mode register 1 (SIMODE1):
  12287. Bit(s) Description (Table P0617)
  12288. 7 enable selection time-out (ENSELTIMO)
  12289. 6 (target) "ENATNTARG"
  12290. 5 enable SCSI reset (ENSCSIRST)
  12291. 4 enable phase mismatch (ENPHASEMIS)
  12292. 3 enable bus free (ENBUSFREE)
  12293. 2 enable SCSI parity error (ENSCSIPERR)
  12294. 1 enable phase changed (ENPHASECHG)
  12295. 0 enable -REQ asserted (ENREQINIT)
  12296. Note: setting a bit enables the corresponding function to interrupt via the
  12297. IRQ pin
  12298. SeeAlso: #P0609,#P0610,#P0616
  12299. Bitfields for DMA control register 0 (DMACNTRL0):
  12300. Bit(s) Description (Table P0618)
  12301. 7 enable DMA (ENDMA)
  12302. 6 =0 16-bit mode
  12303. =1 8-bit mode (8BIT)
  12304. 5 =0 PIO mode
  12305. =1 DMA mode
  12306. 4 double word PIO (DWORDPIO)
  12307. 3 =0 read
  12308. =1 write
  12309. 2 interrupt enable (INTEN)
  12310. 1 reset FIFO (RSTFIFO)
  12311. 0 software interrupt (SWINT)
  12312. Note: write to this register takes the controller from the power down mode
  12313. SeeAlso: #P0601
  12314. Bitfields for DMA control register 1 (DMACNTRL1):
  12315. Bit(s) Description (Table P0619)
  12316. 7 power down (PWRDWN)
  12317. 6 "ENSTK32"
  12318. 5 reserved
  12319. 4-0 stack pointer? (STK)
  12320. Bitfields for DMA status register (DMASTAT):
  12321. Bit(s) Description (Table P0620)
  12322. 7 "ATDONE"
  12323. 6 word ready (WORDRDY)
  12324. 5 interrupt status (INTSTAT)
  12325. 4 DMA FIFO full (DFIFOFULL)
  12326. 3 DMA FIFO empty (DFIFOEMP)
  12327. 2 (AIC-6360+?) DMA FIFO half-full? (DFIFOHF)
  12328. 1 (AIC-6360+?) double word ready (DWORDRDY)
  12329. 0 reserved
  12330. SeeAlso: #P0601,#P0618
  12331. Bitfields for burst control register (BRSTCNTRL):
  12332. Bit(s) Description (Table P0621)
  12333. 7-4 bus on time (BON)
  12334. 3-0 bus off time (BOFF)
  12335. Note: the bus on/off times are in microseconds
  12336. SeeAlso: #P0624
  12337. Bitfields for port A register (PORTA):
  12338. Bit(s) Description (Table P0622)
  12339. 7 transfer mode
  12340. =0 PIO
  12341. =1 DMA
  12342. 6 boot enabled (BOOT)
  12343. 5-4 message classes (MSGCLASSES)
  12344. 00 #4
  12345. 01 #0, #1, #2, #3, #4
  12346. 10 #0, #3, #4
  12347. 11 #0, #4
  12348. 3 initial synchronous negotiation enabled (SYNCNEG)
  12349. 2 target disconnect enabled (TARDISC)
  12350. 1-0 reserved
  12351. SeeAlso: #P0623
  12352. Bitfields for port B register (PORTB):
  12353. Bit(s) Description (Table P0623)
  12354. 7 SCSI parity enabled (PARITY)
  12355. 6-5 DMA channel (DMACHAN)
  12356. 00 DMA channel 0
  12357. 01 DMA channel 5
  12358. 10 DMA channel 6
  12359. 11 DMA channel 7
  12360. 4-3 "IRQ"
  12361. 00,11 IRQ12
  12362. 01 IRQ10
  12363. 10 IRQ11
  12364. 2-0 SCSI ID
  12365. SeeAlso: #P0622
  12366. Bitfields for test register (TEST):
  12367. Bit(s) Description (Table P0624)
  12368. 7 reserved
  12369. 6 bus off timer test (BOFFTMR)
  12370. 5 bus on timer test (BONTMR)
  12371. 4 SCSI transfer count register high byte test (STCNTH)
  12372. 3 SCSI transfer count register middle byte test (STCNTM)
  12373. 2 SCSI transfer count register low byte test (STCNTL)
  12374. 1 SCSI block test (SCSIBLK)
  12375. 0 DMA block test (DMABLK)
  12376. SeeAlso: #P0613,#P0621
  12377. ----------P03480357--------------------------
  12378. PORT 0348-0357 - DCA 3278
  12379. ----------P034C034F--------------------------
  12380. PORT 034C-034F - Gravis UltraMax by Advanced Gravis
  12381. Range: The I/O address range is dipswitch selectable from:
  12382. 0200-020F and 0300-030F
  12383. 0210-021F and 0310-031F
  12384. 0220-022F and 0320-032F
  12385. 0230-023F and 0330-033F
  12386. 0240-024F and 0340-034F
  12387. 0250-025F and 0350-035F
  12388. 0260-026F and 0360-036F
  12389. 0270-027F and 0370-037F
  12390. ----------P035A035B--------------------------
  12391. PORT 035A-035B - Adaptec AH1520 jumper settings
  12392. 035A R I/O channel setup (see #P0625)
  12393. 035B R transfer mode setup (see #P0626)
  12394. Bitfields for Adaptec AH1520 channel setup jumper settings:
  12395. Bit(s) Description (Table P0625)
  12396. 7 SCSI parity disabled
  12397. 6-5 DMA channel (00 = channel 0, 01 = 5, 10 = 6, 11 = 7)
  12398. 4-3 IRQ number (00 = IRQ9, 01 = IRQ10, 10 = IRQ11, 11 = IRQ12)
  12399. 2-0 SCSI ID
  12400. SeeAlso: #P0626
  12401. Bitfields for Adaptec AH1520 transfer mode setup jumper settings:
  12402. Bit(s) Description (Table P0626)
  12403. 7 DMA transfer mode (clear for PIO)
  12404. 6 boot enabled
  12405. 5-4 boot type
  12406. 00 ???
  12407. 01 boot from floppy
  12408. 10 print configured options
  12409. 11 boot from hard disk
  12410. 3 enable sync negotiation
  12411. 2 enable target disconnection
  12412. 1-0 unused???
  12413. SeeAlso: #P0625
  12414. ----------P035F------------------------------
  12415. PORT 035F - ARTEC Handyscanner A400Z. alternate address at 15F.
  12416. ----------P03600367--------------------------
  12417. PORT 0360-0367 - PC network (XT only)
  12418. ----------P0360036F--------------------------
  12419. PORT 0360-036F - PC network (AT)
  12420. ----------P0360036F--------------------------
  12421. PORT 0360-036F - National Semiconductor DP8390(1)C/NS3249C network chipset
  12422. Note: cards based on this IEEE 802.3 networking chipset can use any range
  12423. of 16 consecutive addresses, and provide a total of four pages of
  12424. sixteen registers (see #P0627,#P0628,#P0629,#P0759)
  12425. (Table P0627)
  12426. Values for NS DP8390C/NS3249C network chipset Page 0 registers:
  12427. Number Read Register Write Register
  12428. 00h Command reg. (see #P0631) CR Command reg. CR
  12429. 01h current local DMA address 0 CLDA0 page start reg. PSTART
  12430. 02h current local DMA address 1 CLDA1 page stop reg. PSTOP
  12431. 03h boundary pointer BNRY boundary pointer BNRY
  12432. 04h transmit status reg. TSR Tx page start address TPSR
  12433. 05h number of collisions reg. NCR Tx byte count reg.0 TBCR0
  12434. 06h FIFO Tx byte count reg.1 TBCR1
  12435. 07h interrupt status reg. ISR interrupt status reg. ISR
  12436. 08h current remote DMA address 0 CRDA0 remote start addr.reg.0 RSAR0
  12437. 09h current remote DMA address 1 CRDA1 remote start addr.reg.1 RSAR1
  12438. 0Ah reserved remote byte count reg.0 RBCR0
  12439. 0Bh reserved remote byte count reg.1 RBCR1
  12440. 0Ch receive status reg. RSR Rx configuration reg. RCR
  12441. 0Dh tally counter 0 (frame errors) CNTR0 Tx configuration reg. TCR
  12442. 0Eh tally counter 1 (CRC errors) CNTR1 data configuration reg. DCR
  12443. 0Fh tally counter 2 (missed pkt) CNTR2 interrupt mask reg. IMR
  12444. SeeAlso: #P0628,#P0629,#P0630
  12445. (Table P0628)
  12446. Values for NS DP8390C/NS3249C network chipset Page 1 registers:
  12447. Number Read/Write
  12448. 00h Command CR (see #P0631)
  12449. 01h physical address reg.0 PAR0
  12450. 02h physical address reg.1 PAR1
  12451. 03h physical address reg.2 PAR2
  12452. 04h physical address reg.3 PAR3
  12453. 05h physical address reg.4 PAR4
  12454. 06h physical address reg.5 PAR5
  12455. 07h current page reg. CURR
  12456. 08h multicast address reg.0 MAR0
  12457. 09h multicast address reg.1 MAR1
  12458. 0Ah multicast address reg.2 MAR2
  12459. 0Bh multicast address reg.3 MAR3
  12460. 0Ch multicast address reg.4 MAR4
  12461. 0Dh multicast address reg.5 MAR5
  12462. 0Eh multicast address reg.6 MAR6
  12463. 0Fh multicast address reg.7 MAR7
  12464. SeeAlso: #P0627,#P0629,#P0630
  12465. (Table P0629)
  12466. Values for NS DP8390C/NS3249C network chipset Page 2 registers:
  12467. Number Read Register Write Register
  12468. 00h Command CR Command CR
  12469. 01h page start reg. PSTART current local DMA addr.0 CLDA0
  12470. 02h page stop reg. BPSTOP current local DMA addr.1 CLDA1
  12471. 03h remote next packet pointer remote next packet pointer
  12472. 04h Tx page start address TPSR reserved
  12473. 05h local next packet pointer local next packet pointer
  12474. 06h address counter (upper) address counter (upper)
  12475. 07h address counter (lower) address counter (lower)
  12476. 08h reserved reserved
  12477. 09h reserved reserved
  12478. 0Ah reserved reserved
  12479. 0Bh reserved reserved
  12480. 0Ch Rx configuration reg. RCR reserved
  12481. 0Dh Tx configuration reg. TCR reserved
  12482. 0Eh data configuration reg. DCR reserved
  12483. 0Fh interrupt mask reg. IMR reserved
  12484. Note: this is a diagnostics page, and should never be modfied under normal
  12485. operation.
  12486. SeeAlso: #P0627,#P0628,#P0630
  12487. (Table P0630)
  12488. Values for NS DP8390C/NS3249C network chipset Page 3 registers:
  12489. Number Read Register Write Register
  12490. 00h Command CR (see #P0631) Command CR
  12491. Note: Test Page - should never be modified!
  12492. SeeAlso: #P0627,#P0628,#P0629
  12493. Bitfields for NS DP8390C/NS3249C network chipset command register (00h):
  12494. Bit(s) Description (Table P0631)
  12495. 0 software reset command (1=offline, 0=online)
  12496. 1 do not activate NIC after reset command
  12497. 2 start transmision of a packet
  12498. 3-5 remote DMA command
  12499. 000 not allowed
  12500. 001 remote read
  12501. 010 remote write
  12502. 011 send packet
  12503. 1xx abort/complete rmote DMA
  12504. 6-7 page select
  12505. 00 register page 0
  12506. 01 register page 1
  12507. 10 register page 2
  12508. 11 register page 3
  12509. SeeAlso: #P0630
  12510. ----------P036B------------------------------
  12511. PORT 036B - GI1904 Scanner Interface Adapter
  12512. Range: PORT 022Bh, PORT 026Bh, PORT 02ABh (default), PORT 02EBh, PORT 032Bh,
  12513. PORT 03ABh, PORT 03EBh
  12514. ----------P036C------------------------------
  12515. PORT 036C - GS-IF Scanner Interface adapter
  12516. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  12517. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  12518. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  12519. others use this interface
  12520. ----------P03700377--------------------------
  12521. PORT 0370-0377 - FDC 2 (2nd Floppy Disk Controller) first FDC at 03F0
  12522. Note: floppy disk controller is usually an 8272, 8272A, NEC765 (or
  12523. compatible), or an 82072 or 82077AA for perpendicular recording at
  12524. 2.88M
  12525. SeeAlso: PORT 03F0h-03F7h
  12526. 0370 R- diskette Extra High Density controller board jumpers (AT)
  12527. 0370 R- diskette controller status A (PS/2, PS/2 model 30)
  12528. 0371 R- diskette controller status B (PS/2, PS/2 model 30)
  12529. 0372 -W diskette controller DOR (Digital Output Register)
  12530. 0374 R- diskette controller main status register
  12531. 0374 -W diskette controller datarate select register
  12532. 0375 RW diskette controller command/data register
  12533. 0376 RW (2nd FIXED disk controller status/data register)
  12534. 0377 RW (2nd FIXED disk controller drive address register)
  12535. 0377 R- diskette controller DIR (Digital Input Register)
  12536. 0377 -W select register for diskette data transfer rate
  12537. ----------P0378------------------------------
  12538. PORT 0378 - Covox 'Speech Thing' COMPATIBLE SPEECH OUTPUT
  12539. SeeAlso: PORT 022Fh"mc-soundmachine",PORT 0388h-038Fh"soundmachine"
  12540. 0378 -W speech output via printer port
  12541. (with mc-soundmachine, enabled if bit4=1 in 38F)
  12542. ----------P0378037A--------------------------
  12543. PORT 0378-037A - PARALLEL PRINTER PORT (usually LPT2, sometimes LPT3)
  12544. Range: usually PORT 03BCh, PORT 0278h, or PORT 0378h
  12545. SeeAlso: MEM 0040h:000Ah,INT 17/AH=00h
  12546. 0378 -W data port
  12547. 0379 R- status port (see #P0658 at PORT 03BCh)
  12548. 037A RW control port (see #P0659 at PORT 03BCh)
  12549. 037B ?? bit 7: shadow RAM on/off (UniRAM adapter,according to c't 7/90)
  12550. ----------P0378037F--------------------------
  12551. PORT 0378-037F - Intel 82360SL/82091AA - EPP-mode PARALLEL PORT
  12552. Range: PORT 0278h or PORT 0378h
  12553. SeeAlso: PORT 0278h"LPT1",PORT 0778h"ECP"
  12554. 0378-037A as for standard parallel port
  12555. 037B RW address strobe
  12556. 037C RW data strobe 0
  12557. 037D RW data strobe 1
  12558. 037E RW data strobe 2
  12559. 037F RW data strobe 3
  12560. ----------P037C037F--------------------------
  12561. PORT 037C-037F - C&T F87000 Multi-Mode Peripheral Chip - OUTPUT PORTS
  12562. 037C -W outputs driven to keyboard outputs COL7-COL0
  12563. 037C R- inputs driven by keyboard pins ROW7-ROW0
  12564. 037D -W outputs driven to keyboard outputs COL15-COL8
  12565. 037E -W outputs driven to pins P2[7-1]; bit 0 enables UART clock when low
  12566. 037F -W external output port
  12567. ----------P0380038F--------------------------
  12568. PORT 0380-038F - 2nd BSC (Binary Synchronous Communication) adapter
  12569. SeeAlso: PORT 03A0h"BSC"
  12570. ----------P0380038C--------------------------
  12571. PORT 0380-038C - 2nd SDLC (Synchronous Data Link Control) adapter
  12572. Notes: Initialization of the SDLC adapter is performed in a typical
  12573. sequence like this: Setup 8255 port A-C configuration by writing
  12574. 98h to 383h, followed by initializing 8255 port C by writing 0Dh
  12575. to 382h. Reset 8273 internal registers by pulsing 8255 port B4.
  12576. After this the 8253 has to be programmed to the desired values
  12577. (counter 0 in mode 3). Now the 8273 is ready to be configured for
  12578. the operating mode that defines the communication environment in
  12579. which it will be used.
  12580. Note on 8273: Each 8273 protocol controllers internal register is
  12581. programmed by individual set/reset commands (via 388h) in
  12582. conjunction with a parameter (via 389h) that give an OR/AND mask
  12583. to the internal register value.
  12584. Although the 8273 is a full duplex device, there is only one
  12585. command register. Thus, the command register must be used for
  12586. only one command sequence at a time and the transmitter and
  12587. receiver may never be simultaneously in a command phase.
  12588. The system software starts the command phase by writing a command
  12589. byte into the command register. If further information is required
  12590. by the 8273 prior to execution of the command, the system software
  12591. must write the list of parameters into the parameter register.
  12592. SeeAlso: PORT 03A0h"SDLC"
  12593. 0380 R- on adapter 8255(A5) port A: internal/external sensing (see #P0632)
  12594. 0381 -W on adapter 8255(A5) port B: external modem interface (see #P0633)
  12595. 0382 RW on adapter 8255(A5) port C: internal control (see #P0634)
  12596. 0383 ?W on adapter 8255(A5) mode initialization
  12597. 0384 RW on adapter 8253 (programmable counter) counter 0:
  12598. LSB / MSB square wave generator (input for timer 2, connected
  12599. to 8255 bitC5)
  12600. 0385 RW on adapter 8253 counter 1: LSB / MSB inactivity time-outs
  12601. (connected to 8255 bitA7, IRQ4 level)
  12602. 0386 RW on adapter 8253 counter 2: LSB / MSB inactivity time-outs
  12603. (connected to 8255 bitA6, IRQ4 level)
  12604. 0387 ?W on adapter 8253 mode register (see #P0635)
  12605. 0388 R- on adapter 8273 status register (see #P0636)
  12606. 0388 -W on adapter 8273 command register (see #P0637)
  12607. 0389 R- on adapter 8273 (immediate) result register (see #P0644)
  12608. 0389 -W on adapter 8273 parameter register
  12609. Commands issued via PORT 0388h may need additional parameters,
  12610. which have to be passed through this port (see table).
  12611. 038A R- on adapter 8273 transmit INT status (DMA/INT)
  12612. 038A -W on adapter 8274 reset
  12613. 038B R- on adapter 8273 receive INT status (DMA/INT)
  12614. 038C -W on adapter 8273 data: direct program control (DPC)
  12615. scratch-pad
  12616. Bitfields for SDLC 8255 port A:
  12617. Bit(s) Description (Table P0632)
  12618. 7 =1 timer 1 output active
  12619. 6 =1 timer 2 output active
  12620. 5 =1 modem status changed
  12621. 4 receive clock active (if pulsing)
  12622. 3 =0 clear to send is on from interface
  12623. 2 transmit clock active (if pulsing)
  12624. 1 =0 data carrier detect is on from interface
  12625. 0 =0 ring indicator is on from interface
  12626. SeeAlso: #P0633,#P0634
  12627. Bitfields for SDLC 8255 port B:
  12628. Bit(s) Description (Table P0633)
  12629. 7 enable IRQ 4 level interrupt
  12630. 6 =1 gate timer 1
  12631. 5 =1 gate timer 2
  12632. 4 =1 reset 8273
  12633. 3 =1 reset modem status changed logic
  12634. 2 =0 turn on test
  12635. 1 =0 turn on select standby at modem interface
  12636. 0 =0 turn on data signal rate select at modem interface
  12637. SeeAlso: #P0632,#P0634
  12638. Bitfields for SDLC 8255 port C:
  12639. Bit(s) Description (Table P0634)
  12640. 7 R- =? not used (detection: =1 SDLC, =0 may be SDLC or BSC??)
  12641. 6 R- =0 test indicate active
  12642. 5 R- timer 0 output (if pulsing)
  12643. 4 R- receive data (if pulsing)
  12644. 3 -W =0 gate interrupts 3 and 4
  12645. 2 -W =1 electronic wrap
  12646. 1 -W =1 gate external clock
  12647. 0 -W =1 gate internal clock
  12648. SeeAlso: #P0632,#P0633
  12649. Bitfields for SDLC 8253 mode register:
  12650. Bit(s) Description (Table P0635)
  12651. 7-6 SC1-SC0 00, 01, 10= select counter 0,1,2; 11=illegal
  12652. 5-4 RL1-RL0 00= couner latching operation
  12653. 01= read/load most significant byte (MSB)
  12654. 10= read/load least significant byte (LSB)
  12655. 11= read/load LSB first, then MSB
  12656. 3-1 M2-M0 000= mode 0
  12657. 001= mode 1
  12658. x10= mode 2
  12659. x11= mode 3
  12660. 100= mode 4
  12661. 101= mode 5
  12662. 0 BCD 0= binary counter 16bits
  12663. 1= BCD counter 4 decades
  12664. Bitfields for SDLC 8273 status register:
  12665. Bit(s) Description (Table P0636)
  12666. 7 =1 command busy (CBSY)
  12667. 6 =1 command buffer full (CBF)
  12668. 5 =1 command parameter buffer full (CPBF)
  12669. 4 =1 command result buffer full (CRBF)
  12670. 3 =1 Rx interupt (RxINT)
  12671. 2 =1 Tx interupt (TxINT)
  12672. 1 =1 RxINT result available (RxIRA)
  12673. 0 =1 TxINT result available (TxIRA)
  12674. SeeAlso: #P0637
  12675. (Table P0637)
  12676. Values for SDCL 8273 command register:
  12677. commands: parameters: results: result port: int:
  12678. A4: set one-bit delay set mask - - no
  12679. 64: reset one-bit delay reset mask - - no
  12680. 97: set data transfer set mask - - no
  12681. 57: reset data transfer reset mask - - no
  12682. 91: set operating mode set mask - - no
  12683. 51: reset operating mode reset mask - - no
  12684. A0: set serial I/O mode set mask - - no
  12685. 60: reset serial I/O mode reset mask - - no
  12686. C0: general receive B0,B1 RIC,R0,R1,A,C RXI/R yes
  12687. C1: selective receive B0,B1,A1,A2 RIC,RD,R1,A,C RXI/R yes
  12688. C5: receive disable - - - no
  12689. C8: transmit frame L0, L1, A, C TIC TXI/R yes
  12690. C9: transmit transparent L0, L1 TIC TXI/R yes
  12691. CC: abort transmit frame - TIC TXI/R yes
  12692. CD: abort transmit - TIC TXI/R yes
  12693. 22: read 8273 port A - port value result no
  12694. 23: read 8273 port B - port value result no
  12695. A3: set 8273 port A bit set mask - - no
  12696. 63: set 8273 port B bit reset mask - - no
  12697. Notes: B0/B1 LSB/MSB of the receiver buffer length
  12698. L0/L1 LSB/MSB of the Tx buffer length
  12699. A1/A2 receive frame address match field one/two
  12700. A address fieldof received frame. In non-buffered mode, this
  12701. result is not provided.
  12702. C control field of received frame. In non-buffered mode, this
  12703. result is not provided.
  12704. RXI/R TXI/R receive/transmit interrupt result register
  12705. R0/R1 LBS/MSB of the length of the frame received
  12706. RIC/TIC receiver/transmitter interrupt result code
  12707. SeeAlso: #P0638,#P0639,#P0640,#P0641,#P0642,#P0643
  12708. Bitfields for SDLC 8273 interal port A: Modem Control Input Port:
  12709. Bit(s) Description (Table P0638)
  12710. 7-5 not used
  12711. 4 DSR change (PA4)
  12712. 3 CTS change (PA3)
  12713. 2 Data Set Ready (PA2)
  12714. 1 Carrier Detect (PA1)
  12715. 0 Clear to Send (PA0)
  12716. SeeAlso: #P0637
  12717. Bitfields for SDLC 8273 interal port B: Modem Control Output Port:
  12718. Bit(s) Description (Table P0639)
  12719. 7-6 not used
  12720. 5 Flag Detect (PB5)
  12721. 4-3 reserved
  12722. 2 Data Terminal Ready (PB2)
  12723. 1 reserved (PB1)
  12724. 0 Request to Send (PB0)
  12725. SeeAlso: #P0637
  12726. Bitfields for SDLC 8273 internal: Operating Mode Register:
  12727. Bit(s) Description (Table P0640)
  12728. 7-6 not used
  12729. 5 =1 HDLC abort enable
  12730. 4 =1 EOP interrupt enable
  12731. 3 =1 enable early Tx interrupt
  12732. 2 =1 Buffered Mode
  12733. 1 =1 Two Preframe Sync Characters
  12734. 0 =1 Flag Stream Mode
  12735. SeeAlso: #P0637
  12736. Bitfields for SDLC 8273 internal: Serial I/O Register:
  12737. Bit(s) Description (Table P0641)
  12738. 7-3 not used
  12739. 2 =1 Data Loopback
  12740. 1 =1 Clock Loopback
  12741. 0 =1 NRZI Mode
  12742. SeeAlso: #P0637
  12743. Bitfields for SDLC 8273 internal: Data Transfer Mode Register:
  12744. Bit(s) Description (Table P0642)
  12745. 7-1 not used
  12746. 0 =1 Interrupt Data Transfers
  12747. SeeAlso: #P0637
  12748. Bitfields for SDLC 8273 internal: One-Bit Delay Mode Register:
  12749. Bit(s) Description (Table P0643)
  12750. 7 =1 One-Bit Delay Enable
  12751. 6-0 not used
  12752. SeeAlso: #P0637
  12753. (Table P0644)
  12754. Values for SDLC 8273 result register:
  12755. transmit result codes: status after interrupt:
  12756. 0C: early transmit interrupt transmitter active
  12757. 0D: frame transmit complete idle or flags
  12758. 0E: DMA underrun abort
  12759. 0F: clear to send error abort
  12760. 10: abort complete idle or flags
  12761. receive result codes:
  12762. X0: A1 match / general receive active
  12763. X1: A2 match active
  12764. 03: CRC error active
  12765. 04: abort detected active
  12766. 05: idle detected disabled
  12767. 06: EOP detected disabled
  12768. 07: frame less than 32 bits active
  12769. 08: DMA overrun disabled
  12770. 09: memory buffer overflow disabled
  12771. 0A: carrier detect failure disabled
  12772. 0B: receiver interrupt overrun disabled
  12773. X bits received inlast byte:
  12774. E: all eight bits of last byte (bit7-0)
  12775. 0: bit0 only
  12776. 8: bit1-0
  12777. 4: bit2-0
  12778. C: bit3-0
  12779. 2: bit4-0
  12780. A: bit5-0
  12781. 6: bit6-0
  12782. --------s-P03840387--------------------------
  12783. PORT 0384-0387 - Pro Audio Spectrum 16 (PAS16)
  12784. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  12785. PORT 0388h (default), or PORT 038Ch
  12786. ----------P03880389--------------------------
  12787. PORT 0388-0389 - AdLib - MONO SOUND OUTPUT
  12788. Note: also supported by SoundBlaster and compatibles
  12789. SeeAlso: PORT 0220h-0223h,PORT 0388h-038Fh"soundmachine"
  12790. 0388 R- both speakers -- Status
  12791. bit7 : interrupt request (IRQ)
  12792. bit6 : timer 1 overflow
  12793. bit5 : timer 2 overflow
  12794. bit4-0: reserved
  12795. 0388 -W both speakers -- Address port (see #P0645)
  12796. index in OPL2 (YMF3812), OPL3 (YMF262), OPL4 (YF278-F)
  12797. 0389 -W data port
  12798. Note: the AdLib requires a delay of 3.3 microseconds between writing to
  12799. PORT 0388h and writing to PORT 0389h, and a delay of 23 microseconds
  12800. after a write to PORT 0389h before any other operation is allowed
  12801. (Table P0645)
  12802. Values for AdLib address port index:
  12803. 01h Enable waveform control
  12804. bit 7-6: (OPL4, OPL3 in OPL2 mode only) lsi test
  12805. bit 5: (OPL2 only) wave select enable (WS)
  12806. (OPL4, OPL3) lsi test
  12807. bit 4-0: lsi test
  12808. 02h Timer #1 data (OPL2 and OPL3 in OPL2 mode only)
  12809. 03h Timer #2 data (OPL2 and OPL3 in OPL2 mode only)
  12810. 04h Timer control flags (OPL2 and OPL3 in OPL2 mode only)
  12811. bit 7 : reset interrupt (RST)
  12812. bit 6 : timer 1 mask (MASK1)
  12813. bit 5 : timer 2 mask (MASK2)
  12814. bit 4-2: reserved
  12815. bit 1 : start timer 2 (ST2)
  12816. bit 0 : start timer 1 (ST1)
  12817. 04h (OPL3 in OPL3 mode only) connection select
  12818. bit 7-6: reserved
  12819. bit 5-0: connection selection
  12820. 05h (OPL3) compatibility register
  12821. bit 7-1: reserved
  12822. bit 0: enable OPL3 mode (NEW), default disabled
  12823. 08h Speech synthesis mode
  12824. bit 7: (OPL2 only) speech synthesis or FM music mode (CSM)
  12825. bit 6: select keyboard split point (SEL/NTS)
  12826. bit 5-0: reserved
  12827. 20h-35h Amplitude Modulation / Vibrato
  12828. bit 7: AM modulation (AM)
  12829. bit 6: vibrato (VIB)
  12830. bit 5: sustain (EG)
  12831. bit 4: keyboard scaling rate (KSR)
  12832. bit 3-0: multi (MF)
  12833. 40h-55h Level key scaling / Total level
  12834. bit 7-6: key scale level (KSL)
  12835. bit 5-0: total level (TL)
  12836. 60h-75h Attack / Decay rate
  12837. bit 7-4: attack rate
  12838. bit 3-0: decay rate
  12839. 80h-95h Sustain / Release rate
  12840. bit 7-4: sustain level
  12841. bit 3-0: release rate
  12842. A0h-A8h Octave / Frequency (LSB)
  12843. A9h-AFh ???
  12844. B0h-B8h Octave / Frequency Number
  12845. bit 7-6: reserved
  12846. bit 5 : key on, mute
  12847. bit 4-2: block, octave
  12848. bit 1-0: f-number (MSB)
  12849. BDh percussion, vibrato, AM (OPL2, OPL3 in OPL2 mode only)
  12850. bit 7: amplitude modulation (AM)
  12851. bit 6: vibrato (VIB)
  12852. bit 5: ryhthm, percussion on/off (R)
  12853. bit 4: bass drum on/off (BD)
  12854. bit 3: snare drum on/off (SD)
  12855. bit 2: tom-tom on/off (TOM)
  12856. bit 1: top cymbal on/off (TC)
  12857. bit 0: hi hat on/off (HH)
  12858. C0h-C8h Feedback / Algorithm
  12859. bit 7-4: OPL3: channel D-A
  12860. bit 3-1: feedback
  12861. bit 0: connection
  12862. E0h-F5h Waveform Selection
  12863. bit 7-3: reserved
  12864. bit 2 : (OPL3) waveform bit2
  12865. bit 1-0: waveform
  12866. SeeAlso: #P0646
  12867. (Table P0646)
  12868. Values for Sound Blaster registers inside groups:
  12869. Offset
  12870. +00..+02: operators 1-3 modulator channel 1-3
  12871. +03..+05: operators 4-6 carrier channel 1-3
  12872. +08..+0A: operators 7-9 modulator channel 4-6
  12873. +0B..+0D: operators 10-12 carrier channel 4-6
  12874. +10..+12: operators 13-15 modulator channel 7-9
  12875. +13..+15: operators 16-18 carrier channel 7-9
  12876. +06, +07, +0E, +0F: reserved
  12877. SeeAlso: #P0645
  12878. ----------P03880389--------------------------
  12879. PORT 0388-0389 - Soundblaster PRO FM-Chip
  12880. ----------P0388038B--------------------------
  12881. PORT 0388-038B - Soundblaster 16 ASP FM-Chip
  12882. --------s-P0388038B--------------------------
  12883. PORT 0388-038B - Pro Audio Spectrum 16 (PAS16)
  12884. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  12885. PORT 0388h (default), or PORT 038Ch
  12886. ----------P0388038F--------------------------
  12887. PORT 0388-038F - mc-soundmachine, mc 03-04/1992 - SPEECH I/O
  12888. Note: Adlib-compatible, Covox 'voice master' & 'speech thing' compatible
  12889. soundcard
  12890. SeeAlso: PORT 022Fh"soundmachine",PORT 0278h"Covox"
  12891. 0388 -W Covox 'speech thing' compatible speech output via printer port?
  12892. enabled if bit 6 set in PORT 038Fh
  12893. 0388 RW Adlib compatible (YM3812), enabled if bit 0 set in PORT 038Fh
  12894. (see PORT 0388h-0389h"Sound Blaster")
  12895. 0389 -W Adlib compatible (YM3812), enabled if bit 0 set in PORT 038Fh
  12896. (see PORT 0388h-0389h"Sound Blaster")
  12897. 038A -W IýC control for TDA7302 NF-MUX and X24C04 EEPROM
  12898. bit 7: IýC bus SDA out (data), enabled if bit2=1 in PORT 038Fh
  12899. bit 0: IýC bus SCL out (clock), enabled if bit2=1 in PORT 038Fh
  12900. 038B R- IýC status for TDA7302 NF-MUX and X24C04 EEPROM
  12901. bit 7: IýC bus SDA in (data), enabled if bit2=1 in PORT 038Fh
  12902. bit 0: IýC bus SCL in (clock), enabled if bit2=1 in PORT 038Fh
  12903. 038F RW configuration port (power on default=0, all features disabled)
  12904. (see #P0647)
  12905. Bitfields for mc-soundmachine configuration port:
  12906. Bit(s) Description (Table P0647)
  12907. 7 Covox 'voice master' enabled at PORT 022Fh
  12908. 6 "" 'speech thing' enabled at PORT 03BCh
  12909. 5 "" enabled at PORT 0278h
  12910. 4 "" enabled at PORT 0378h
  12911. 3 not used (0388???)
  12912. 2 IýC bus enabled (see PORT 038Ah,PORT 038Bh)
  12913. 1 gameport enabled (see PORT 0201h)
  12914. 0 AdLib registers (see PORT 0388h,PORT 0389h) enabled
  12915. --------s-P038C038F--------------------------
  12916. PORT 038C-038F - Pro Audio Spectrum 16 (PAS16)
  12917. Range: PORT 0280h, PORT 0284h, PORT 0288h, PORT 028Ch, PORT 384h,
  12918. PORT 0388h (default), or PORT 038Ch
  12919. ----------P03900397--------------------------
  12920. PORT 0390-0397 - Sunshine EW-901B, EW-904B
  12921. EPROM writer card for EPROMs up to 27512
  12922. 0390-0393 ?? adresses of the 8255 on the EW-90xB
  12923. ----------P0390039F--------------------------
  12924. PORT 0390-039F - Cluster adapter (AT)
  12925. 0390 ?? (adapter 0) (XT)
  12926. 0391 ?? (adapter 0) (XT)
  12927. 0392 ?? (adapter 0) (XT)
  12928. 0393 ?? (adapter 0) (XT)
  12929. ----------P03980399--------------------------
  12930. PORT 0398-0399 - Dell Enhanced Parallel Port
  12931. SeeAlso: PORT 002Eh,PORT 015Ch,PORT 026Eh
  12932. 0398 -W index for data port
  12933. 0399 RW EPP command data
  12934. ----------P03980399--------------------------
  12935. PORT 0398-0399 - Intel 82091AA Advanced Integrated Peripheral
  12936. Range: PORT 0022h (X-Bus), PORT 0024h (X-Bus), PORT 026Eh (ISA), or
  12937. PORT 0398h (ISA)
  12938. SeeAlso: PORT 0022h"82091AA",PORT 0024h"82091AA",PORT 026Eh"82091AA"
  12939. 0398 ?W configuration register index
  12940. 0399 RW configuration register data
  12941. ----------P03A003AC--------------------------
  12942. PORT 03A0-03AC - 1st SDLC (Binary Synchronous Data Link Control adapter)
  12943. SeeAlso: PORT 0380h"SDLC"
  12944. ----------P03A003AF--------------------------
  12945. PORT 03A0-03AF - 1st BSC (Binary Synchronous Communication) adapter
  12946. Notes: Initialization of the BSC adapter is performed in a typical
  12947. sequence like this: Setup 8255 port A-C configuration by writing
  12948. 98h to 383h, followed by initializing 8255 port C by writing 0Dh
  12949. to 382h. Reset 8251A internal registers by pulsing 8255 port B4.
  12950. After this the 8253 has to be programmed to the desired values
  12951. (counter 0 not used, counters 1 and 2 to mode 0). Now, the 8251A
  12952. is ready to be loaded with a set of control words that define the
  12953. communication environment.
  12954. 8251A: The control words are split into two formats, mode
  12955. instruction and command instruction. The mode instruction must
  12956. be inserted immediately after a reset operation (via 8255 port B4
  12957. or setting command instruction bit6 to 'internal reset').
  12958. The required synchronization characters are next loaded into the
  12959. 8251A (usually 32h for BSC). All control words written to the
  12960. 8251A after this will load the command instruction.
  12961. reset -> mode instruction
  12962. SYNC character 1
  12963. SYNC character 2
  12964. command instruction
  12965. data ...
  12966. command instruction
  12967. data ...
  12968. command instruction
  12969. ...
  12970. SeeAlso: PORT 0380h"BSC"
  12971. 03A0 R- on adapter 8255(A5) port A: internal/external sensing (see #P0648)
  12972. 03A1 -W on adapter 8255(A5) port B: external modem interface (see #P0649)
  12973. 03A2 RW on adapter 8255(A5) port C: internal control (see #P0650)
  12974. 03A3 ?W on adapter 8255(A5) mode initialization
  12975. 03A4 RW on adapter 8253 (programmable counter) counter 0:
  12976. LSB / MSB square wave generator (unused in sync mode)
  12977. 03A5 RW on adapter 8253 counter 1: LSB / MSB inactivity time-outs
  12978. (connected to 8255 bitA7, IRQ4 level)
  12979. 03A6 RW on adapter 8253 counter 2: LSB / MSB inactivity time-outs
  12980. (connected to 8255 bitA6, IRQ4 level)
  12981. 03A7 ?W on adapter 8253 mode register (see #P0651)
  12982. 03A8 RW on adapter 8251: data (see #P0652)
  12983. 03A9 R- on adapter 8251: command/mode/USART status register (see #P0653)
  12984. Bitfields for BSC 8255 port A:
  12985. Bit(s) Description (Table P0648)
  12986. 7 =1 timer 1 output active
  12987. 6 =1 timer 2 output active
  12988. 5 =1 TxRDY active
  12989. 4 receive clock active (if pulsing)
  12990. 3 =0 clear to send is on from interface
  12991. 2 transmit clock active (if pulsing)
  12992. 1 =0 data carrier detect is on from interface
  12993. 0 =0 ring indicator is on from interface
  12994. SeeAlso: #P0649
  12995. Bitfields for BSC 8255 port B:
  12996. Bit(s) Description (Table P0649)
  12997. 7 =1 enable IRQ 4 level interrupt (timer 1 and 2)
  12998. 6 =1 gate timer 1
  12999. 5 =1 gate timer 2
  13000. 4 =1 reset 8251A
  13001. 3 =1 not used
  13002. 2 =0 turn on test
  13003. 1 =0 turn on select standby
  13004. 0 =0 turn on data signal rate select
  13005. SeeAlso: #P0648,#P0650
  13006. Bitfields for BSC 8255 port C:
  13007. Bit(s) Description (Table P0650)
  13008. 7 R- =0 BSC adapter (=1 may be used to detect SDLC??)
  13009. 6 R- =0 test indicate active
  13010. 5 R- timer 0 output (if pulsing)
  13011. 4 R- receive data (if pulsing)
  13012. 3 -W =0 enable timer 1 and 2 IRQ4 and receive IRQ 4
  13013. 2 -W =1 electronic wrap
  13014. 1 -W =1 gate external clock
  13015. 0 -W =1 gate internal clock
  13016. SeeAlso: #P0648,#P0649
  13017. Bitfields for BSC 8253 mode register:
  13018. Bit(s) Description (Table P0651)
  13019. 7-6 SC1-SC0 00, 01, 10= select counter 0,1,2; 11=illegal
  13020. 5-4 RL1-RL0 00= couner latching operation
  13021. 01= read/load most significant byte (MSB)
  13022. 10= read/load least significant byte (LSB)
  13023. 11= read/load LSB first, then MSB
  13024. 3-1 M2-M0 000= mode 0 (for counter 1 and 2)
  13025. 001= mode 1 (not used for BSC)
  13026. x10= mode 2 (not used for BSC)
  13027. x11= mode 3 (not used for BSC)
  13028. 100= mode 4 (not used for BSC)
  13029. 101= mode 5 (not used for BSC)
  13030. 0 BCD 0= binary counter 16bits
  13031. 1= BCD counter 4 decades
  13032. Bitfields for BSC 8251 data:
  13033. Bit(s) Description (Table P0652)
  13034. ---mode instruction (W)---
  13035. 7 =0 Double SYNC Character
  13036. 6 =1 SYNDET is an Input
  13037. 5 =1 Even Parity
  13038. 4 =1 Parity Enable
  13039. 3-2 Character Length 00=5bits, 01=6bits, 10=7bits, 11=8bits
  13040. 1-0 not used (always 0)
  13041. ---SYNC character 1/2 (W)---
  13042. string of two characters to be sync'ed at (in hunt mode).
  13043. ---command instruction (W)---
  13044. 7 Enter Hunt Mode
  13045. 6 Internal Reset
  13046. 5 Request to Send
  13047. 4 Error Reset
  13048. 3 Send Break Character
  13049. 2 Receive Enable
  13050. 1 Data Terminal Ready
  13051. 0 Transmit Enable
  13052. ---data (RW)---
  13053. any data
  13054. SeeAlso: #P0651,#P0653
  13055. Bitfields for BSC 8251 command/mode/USART status:
  13056. Bit(s) Description (Table P0653)
  13057. 7 Data Set Ready (indicated that DSR is at 0 level)
  13058. 6 SYNDET
  13059. 5 Framing Error (not used for synchronous communications)
  13060. 4 Overrun Error (OE flag on when Overrun Error occurs)
  13061. 3 Parity Error (PE flag on when a parity error occurs)
  13062. 2 TxEmpty
  13063. 1 RxRDY (causing IRQ 3 level)
  13064. 0 TxRDY (has not the same meaning as 8251A TxRDY output pin).
  13065. THIS one is NOT conditioned by CTS and TxEnable (causing IRQ 4 level)
  13066. SeeAlso: #P0652
  13067. ----------P03AB------------------------------
  13068. PORT 03AB - GI1904 Scanner Interface Adapter
  13069. Range: PORT 022Bh, PORT 026Bh, PORT 02ABh (default), PORT 02EBh, PORT 032Bh,
  13070. PORT 036Bh, PORT 03ABh, PORT 03EBh
  13071. ----------P03AC------------------------------
  13072. PORT 03AC - GS-IF Scanner Interface adapter
  13073. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  13074. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  13075. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  13076. others use this interface
  13077. --------V-P03B003BF--------------------------
  13078. PORT 03B0-03BF - MDA (Monochrome Display Adapter based on 6845)
  13079. 03B0 -W same as 03B4
  13080. 03B1 RW same as 03B5
  13081. 03B2 -W same as 03B4
  13082. 03B3 RW same as 03B5
  13083. 03B4 -W MDA CRT index register (MDA/mono EGA/mono VGA)
  13084. selects which register (0-11h) is to be accessed through 03B5h
  13085. Note: this port is read/write on some VGAs
  13086. bit7-6: (VGA) reserved (0)
  13087. bit5 : (VGA) reserved for testing (0)
  13088. bit4-0: selects which register is to be accessed through 03B5h
  13089. 03B5 RW MDA CRT data register (MDA/mono EGA/mono VGA) (see #P0654,#P0708)
  13090. selected by PORT 03B4h. registers 0C-0F may be read
  13091. Color adapters are at 3D4/3D5, but are mentioned here for
  13092. better overview.
  13093. There are differences in names and some bits functionality
  13094. on EGA, VGA in their native modes, but clones in their
  13095. emulation modes emulate the original 6845 at bit level. The
  13096. default values are for MDA, HGC, CGA only, if not otherwise
  13097. mentioned.
  13098. 03B6 -W same as 03B4h
  13099. 03B7 RW same as 03B5h
  13100. 03B8 rW MDA mode control register (see #P0655)
  13101. 03B9 ?W reserved for color select register on color adapter
  13102. 03B9 -W MDA/HGC: set lightpen flipflop (value written is ignored)
  13103. cannot be found on native mono EGA, mono VGA (without
  13104. translation ROM)
  13105. 03BA R- CRT status register (see #P0656)
  13106. (EGA/VGA) input status 1 register
  13107. 03BA -W (mono EGA/mono VGA) feature control register
  13108. (see PORT 03DAh-W for details; VGA, see PORT 03CAh-R)
  13109. 03BB -W light pen strobe reset (on any value)
  13110. (Table P0654)
  13111. Values for mono video adapter CRT data register index:
  13112. defaults: MDA/HGC HGC CGA CGA CGA
  13113. text graph text1 text2 graph
  13114. 7 720x348 1 3 5,6
  13115. 00h horizontal total 61h 35h 38h 71h 38h
  13116. ET4000: in VGA mode scanlines-5
  13117. in EGA mode scanlines-2
  13118. 01h horizontal displayed 50h 2Dh 28h 50h 28h
  13119. horizontal display end-1 (EGA,VGA)
  13120. 02h horizontal sync position 52h 2Eh 2Dh 5Ah/5Ch 2Dh
  13121. 03h sync pulse width 0Fh 07h/0Fh 0Ah 0Ah 0Ah
  13122. bit7-4 vsync, bit3-0 hsync
  13123. end horizontal blanking (EGA,VGA)
  13124. VGA : bit7=1 : enable read access to regs
  13125. 10h, 11h (otherwise VGA clones
  13126. may show lightpen values)
  13127. EGA,VGA: bit6-5=0-3: display enable skew control
  13128. bit4-0 : end blanking
  13129. 04h vertical total (vcycle-1) 19h 5Bh 1Fh 1Fh 7Fh
  13130. bit7 only used on MCGA
  13131. start horizontal retrace (EGA, VGA)
  13132. Genoa SuperEGA only???:
  13133. bit7 : start at odd memory address
  13134. bit6-5: horizontal sync skew
  13135. bit4-0: start retrace+ retrace width
  13136. 05h vertical total adjust 06h 02h 06h 06h 06h
  13137. bit7-5 only used on MCGA
  13138. end horizontal retrace (EGA, VGA)
  13139. bit7 : (EGA) start at odd memory address
  13140. (VGA) bit5 of end horizontal retrace
  13141. bit6-5: horizontal sync skew
  13142. bit4-0: end horizontal retrace
  13143. 06h vertical displayed 19h 57h 19h 19h 64h
  13144. bit7 only used on MCGA
  13145. (EGA) vertical total-1
  13146. (VGA) vertical total-2
  13147. 07h vertical sync pulse width-1 19h 57h 1Ch 1Ch 70h/66h
  13148. bit7 only used on MCGA
  13149. controller overflow (EGA,VGA)
  13150. bit7: (VGA) bit9 of start vertical retrace (10h)
  13151. bit6: (VGA) bit9 of vertical display end (12h)
  13152. bit5: (VGA) bit9 of vertical total (06h)
  13153. (EGA) bit5 of cursor-position (0Ah)
  13154. bit4: bit8 of line compare (18h)
  13155. bit3: bit8 of start vertical blanking (15h)
  13156. bit2: bit8 of vertical retrace start (10h)
  13157. bit1: bit8 of vertical display end (12h)
  13158. bit0: bit8 of vertical total (06h)
  13159. 08h interlace mode (not MCGA) 02h 02h 02h 02h 02h
  13160. bit7-2: reserved
  13161. bit1 : delay
  13162. bit0=1: interlace on
  13163. preset row scan (EGA, VGA)
  13164. bit7 : reserved
  13165. bit6-5: (VGA) byte panning (low-order bits of display start addr
  13166. in odd/even and quad modes
  13167. bit4-0: start row scan after retrace
  13168. 09h maximum scan lines 0Dh 03h 07h 07h 01h
  13169. bit7 : (VGA) double scan active
  13170. bit6 : (VGA) bit9 of line compare (18h)
  13171. bit5 : (VGA) bit9 of start vertical blanking (15h)
  13172. bit4-0: maximum scan line 00..31 (height-1)
  13173. 0Ah cursor start 0Bh 00h 06h 06h 06h/00h
  13174. bit7 : reserved
  13175. bit6-5: original 6845: cursor on/off, blink interval
  13176. (not on all adapters, as original MDA, CGA have
  13177. extra circuitrity to avoid this!!)
  13178. bit6-5: native EGA: not used
  13179. bit6 : (VGA) not used
  13180. bit5=0: (VGA) cursor on
  13181. bit4-0: first cursor scanline
  13182. 0Bh cursor end 0Ch 00h 07h 07h 07h/00h
  13183. bit7 : reserved
  13184. bit6-5: EGA, VGA: cursor skew control
  13185. bit4-0: end cursor row
  13186. 0Ch RW start address high 00h 00h 00h 00h 00h
  13187. bit7-6 not used by original 6845 (MDA,HGC,CGA)
  13188. 0Dh RW start address low 00h 00h 00h 00h 00h
  13189. 0Eh RW cursor location high 00h 00h 00h 00h 00h
  13190. bit7-4 not used by original 6845 (MDA,HGC,CGA)
  13191. bit5-4 reserved on MCGA
  13192. 0Fh RW cursor location low 00h 00h 00h 00h 00h
  13193. 10h R- light pen high (MDA/CGA/EGA only, some HGC, few VGA
  13194. clones in emulation, not with ET4000)
  13195. 10h R- MCGA at 3D5h only: mode control status register (see #P0711)
  13196. 11h R- light pen low (MDA/CGA/EGA only, some HGC, few VGA
  13197. clones in emulation, not with ET4000)
  13198. 14h -W HGC+,InColor: xMode register
  13199. 15h -W HGC+,InColor: underscore register
  13200. 16h -W HGC+,InColor: overstrike register
  13201. 17h -W InColor: exception register
  13202. 18h -W InColor: plane mask register
  13203. 19h -W InColor: read/write control register
  13204. 1Ah -W InColor: read/write color register
  13205. 1Bh -W InColor: Latch Protect register
  13206. 1Ch RW InColor: palette register
  13207. Notes: registers 10h and 11h have varying uses on VGA (see #P0708) and
  13208. MCGA (see #P0710)
  13209. MDA, HGC, CGA: 6845 registers 00h-0Dh are write only, 0Eh, 0Fh
  13210. are r/w, and 10h-11h are read only.
  13211. The alternative initial defaults may be used
  13212. sometimes on modern adapters.
  13213. HGC+(RamFont): as with HGC, but 3 additional registers for font control
  13214. emulations : more registers may be r/w, but most often it's the
  13215. same as with native 6845.
  13216. MCGA (CGA+) : Though this is a mixture of CGA and VGA, most
  13217. registers are same as with CGA, but with some
  13218. enhancements and incompatibilities to EGA, VGA.
  13219. native EGA : registers 00h-0Bh are write only, 0Ch-0Fh are
  13220. r/w, 10h-11h are read/write, 12h-18h are write
  13221. only. More regs may be r/w on enhanced clones.
  13222. GenoaSuperEGA: adapter with chips SEQCRT GN006001 and GRAT
  13223. GN006002, e.g. c't Super-EGA adapter. Is EGA
  13224. clone with up to 800x600 and full 6845 emulation.
  13225. native VGA : all registers 00-18h are r/w, but 00h-07h are
  13226. write-locked if bit7 in 11h is set.
  13227. ET4000 : same as VGA, but with additional r/w registers
  13228. 32h-37h, protected by 'key' except 33h, 35h
  13229. (see 3BFh for details). 35h is protected by
  13230. bit7 in 11h. The 'key' must be issued at least
  13231. after each power on or synchronous reset.
  13232. SeeAlso: #P0708,#P0710,#P0655,#P0656,#P0710
  13233. Bitfields for mono video adapter mode control register:
  13234. Bit(s) Description (Table P0655)
  13235. 7 not used by MDA, page number on HGC
  13236. 6 not used
  13237. 6 R-O (mono ET4000 only) report status of bit 1 (enable 2nd page) of
  13238. Hercules compatibility register (PORT 03BFh)
  13239. 5 enable blink (0 = intense background, 1 = blink)
  13240. 4 not used
  13241. 3 video enable
  13242. 2 not used
  13243. 1 (MDA) not used
  13244. (HGC) graphics enable
  13245. the 6845 has to be reprogrammed completely, if this bit is
  13246. changed, otherwise the TTL-monitor may be damaged by wrong
  13247. sync impulses!
  13248. 0 high resolution mode (always set on MDA)
  13249. ---mono ET4000 only, W-O ---
  13250. 7-0 =A0h: second part of 'key', see Hercules compatibility register
  13251. (PORT 03BFh) for details
  13252. Note: this port might be completely or partially readable on very few MDA,
  13253. HGC clones or emulations (e.g. Genoa SuperEGA), but not with the
  13254. majority of original and clone chips. It cannot be found on
  13255. native mono EGA, mono VGA, but on most clones, where it is usually
  13256. R/W.
  13257. SeeAlso: #P0654,#P0656
  13258. Bitfields for mono video adapter CRT status register:
  13259. Bit(s) Description (Table P0656)
  13260. 7 HGC: vertical sync pulse in progress
  13261. 6-4 adapter identification
  13262. (MSD says) if bit 7 changes within 8000h reads then
  13263. =000 adapter is Hercules or compatible
  13264. =001 adapter is Hercules+
  13265. =101 adapter is Hercules InColor
  13266. else: adapter is unknown
  13267. 6-4 =111 on MDA and some HGC clones
  13268. 5-4 (mono EGA, mono ET4000) diagnose video display feedback
  13269. select from color plane enable
  13270. 3 (MDA,HGC) pixel stream (0=currently black, 1=currently white)
  13271. (mono EGA, mono VGA) vertical retrace in progress
  13272. 2-1 (MDA) reserved
  13273. 2 (HGC, mono EGA) lightpen flipflop set
  13274. (mono ET4000) reserved (0)
  13275. 1 (HGC) lightpen input stream (if set, current value to get from
  13276. PORT 03B5h registers 10h-11h)
  13277. (mono ET4000) reserved (0)
  13278. 0 horizontal drive enabled
  13279. SeeAlso: #P0654,#P0655
  13280. Bitfields for EGA,VGA mode control register:
  13281. Bit(s) Description (Table P0657)
  13282. 7 0=CRTC reset and stop, 1=resume reset
  13283. 6 0=word-mode, 1=byte-mode (VGA: see 14h, bit6)
  13284. 5 0=14bit, 1=16bit address wrap
  13285. 4 (native VGA only) reserved (0)
  13286. 4 (EGA and most VGA clones) output control
  13287. 0: video driver active
  13288. 1: video driver not active
  13289. 3 linear address counter clock (0 = standard, 1 = clock/2)
  13290. (VGA: see register 14h, bit 5)
  13291. 2 horizontal retrace clock (0 = standard, 1 = clock/2)
  13292. 1 row scan counter
  13293. 0: address bit 14 = scan bit 1
  13294. 1: address bit 14 not altered
  13295. 0 6845 compatibility mode
  13296. 0: address bit 13 = scan bit 0 (as with 6845)
  13297. 1: address bit 13 not altered
  13298. SeeAlso: #P0654
  13299. --------P-P03BC03BF--------------------------
  13300. PORT 03BC-03BF - PARALLEL PRINTER PORT (MDA's LPT1)
  13301. Range: PORT 0278h, PORT 0378h, or PORT 03BCh
  13302. SeeAlso: MEM 0040h:0008h
  13303. 03BC -W data port
  13304. 03BC R- bidirectional port: input from connector
  13305. unidirectional port: last value written to port
  13306. 03BD R- status port (see #P0658)
  13307. 03BE RW control port (see #P0659)
  13308. Bitfields for parallel interface status port:
  13309. Bit(s) Description (Table P0658)
  13310. 7 busy
  13311. 6 NOT acknowledge (approx. 5us low pulse)
  13312. 5 out of paper
  13313. 4 printer is selected
  13314. 3 *no* error
  13315. 2 IRQ has *not* occurred
  13316. (PS/2) printer returned -ACK
  13317. 1-0 reserved
  13318. Note: if bit 2 is clear (i.e. an interrupt has occurred), it is set again on
  13319. reading the status register
  13320. SeeAlso: #P0659
  13321. Bitfields for parallel interface control port:
  13322. Bit(s) Description (Table P0659)
  13323. 7-6 reserved
  13324. 7 (see PORT 037Bh bit 7)
  13325. 5 (PS/2) enable bidirectional port
  13326. (also requires enabling via PORT 0102h)
  13327. 4 enable IRQ (via -ACK)
  13328. 3 select printer (SLCT IN line)
  13329. 2 =0 initialize printer (-RESET line)
  13330. 1 automatic line feed
  13331. 0 strobe (must be set for minimum of 5 microseconds)
  13332. SeeAlso: #P0658
  13333. --------V-P03BF------------------------------
  13334. PORT 03BF - Hercules configuration switch register
  13335. Note: can also be found on EGA and VGA clones in Hercules emulation
  13336. 03BF -W configuration switch register (see #P0660)
  13337. 03BF -W (ET4000) Hercules compatibility register (see #P0661)
  13338. 03BF RW (Genoa SuperEGA) miscellaneous register
  13339. Note: only available in MDA, HGC, and CGA emulation; should be
  13340. compatible with Hercules configuration register, but may contain
  13341. additional features
  13342. Bitfields for Hercules configuration switch register:
  13343. Bit(s) Description (Table P0660)
  13344. 7-2 reserved
  13345. 1 =0 disables upper 32K of graphics mode buffer
  13346. =1 enables upper 32K of graphics mode buffer
  13347. 0 =0 prevents graphics mode
  13348. =1 allows graphics mode
  13349. SeeAlso: #P0661
  13350. Bitfields for ET4000 compatibility register:
  13351. Bit(s) Description (Table P0661)
  13352. 1 =0 disables upper 32K of graphics mode buffer
  13353. =1 enables upper 32K of graphics mode buffer
  13354. 0 reserved (not needed for HGC graphics)
  13355. 7-0 =03h: first part of 'key' for access to some extra
  13356. ET4000 regs. To issue the 'key', the following
  13357. code must be executed:
  13358. MOV DX, 3BFh
  13359. MOV AL, 3
  13360. OUT DX, AL
  13361. MOV DX, 3D8h (3B8h in mono mode)
  13362. MOV AL, 0A0h
  13363. OUT DX, AL
  13364. SeeAlso: #P0660
  13365. --------V-P03C003C1--------------------------
  13366. PORT 03C0-03C1 - EGA/VGA - ATTRIBUTE CONTROLLER
  13367. Range: PORT 03C0h or PORT 02C0h (alternate EGA)
  13368. SeeAlso: PORT 03C2h,PORT 03D0h,#P0718
  13369. 03C0 rW ATC index/data register
  13370. Every write access to this register will toggle an internal
  13371. index/data selection flipflop, so that consecutive writes to
  13372. index & data is possible through this port. To get a defined
  13373. start condition, each read access to the input status register
  13374. #1 (3BAh in mono / 3DAh in color) resets the flipflop to load
  13375. index. If values are changed during the vertical retrace
  13376. period only no flicker will occur.
  13377. index register (flipflop reset to 'index'): (default 20h)
  13378. bit7-6: reserved
  13379. bit5 : 0=CPU access (screen dark),
  13380. 1=video access to registers
  13381. bit4-0: index in ATC (0..31)
  13382. indexed registers in ATC (flipflop set to 'data'): (see #P0662)
  13383. 03C1 R- (VGA) ATC index/data read register
  13384. (Table P0662)
  13385. Values for EGA/VGA indexed registers in ATC:
  13386. 00h-0Fh 16 palette registers (see #P0663)
  13387. 10h mode control register (see #P0664)
  13388. 11h (EGA) overscan color register (see #P0665) (default: 00h)
  13389. 11h (VGA) overscan color register (see #P0666) (default: 00h)
  13390. 12h color enable register (see #P0667)
  13391. 13h horizontal pixel panning register
  13392. bit7-4: reserved
  13393. bit3-0: horizontal pixel panning
  13394. 14h (VGA) color select register (default: 00h)
  13395. bit7-4: reserved
  13396. bit3 : s-color 7
  13397. bit2 : s-color 6
  13398. bit1 : s-color 5 (only with 16 pages   16 regs)
  13399. bit0 : s-color 4 (only with 16 pages   16 regs)
  13400. 16h ET3000, ET4000 only: ATC miscellanenous
  13401. (at least on ET4000 'key' protected)
  13402. This register is also supported by ET3000, but the
  13403. description is proved for ET4000 only.
  13404. bit7 : bypass the internal palette
  13405. (e.g. for HiColor modes with Sierra RAMDACs)
  13406. bit6 : reserved
  13407. bit5-4: select high resolution / color mode
  13408. bit3-0: reserved
  13409. SeeAlso: #P0670,#P0700
  13410. Bitfields for EGA/VGA indexed ATC palette register:
  13411. Bit(s) Description (Table P0663)
  13412. 7-6 reserved
  13413. 5 secondary red video
  13414. 4 secondary green/intensity video
  13415. 3 secondary blue/mono video
  13416. 2 primary red video
  13417. 1 primary green video
  13418. 0 primary blue video
  13419. SeeAlso: #P0662
  13420. Bitfields for EGA/VGA ATC mode control register:
  13421. Bit(s) Description (Table P0664)
  13422. 7 (VGA) SB/SG select (0=4 pages of 64 regs, 1=16 pages of 16 regs)
  13423. 6 (VGA) PELCLK/2 (0=4bit color, 1=8bit color)
  13424. 5 (VGA) enable pixel panning (0=all, 1=up to line compare register value)
  13425. 4 reserved
  13426. 3 background intensity (0=16 colors, 1=blink)
  13427. 2 line graphics enable (0=background, 1=line 8=9)
  13428. 1 1=mono, 0=color select
  13429. 0 1=graphics, 0=text select
  13430. SeeAlso: #P0662
  13431. Bitfields for EGA overscan color register:
  13432. Bit(s) Description (Table P0665)
  13433. 7-6 reserved
  13434. 5 secondary red (SR)
  13435. 4 secondary green (SR) / intensity
  13436. 3 secondary blue (SB)
  13437. 2 primary red (PR)
  13438. 1 primary green (PG)
  13439. 0 primary blue (PB)
  13440. SeeAlso: #P0662,#P0666
  13441. Bitfields for VGA overscan color register:
  13442. Bit(s) Description (Table P0666)
  13443. 7 secondary intensity border color (SI)
  13444. 6 secondary red (SR)
  13445. 5 secondary green (SG)
  13446. 4 secondary blue (SB)
  13447. 3 intensity border color (PI)
  13448. 2 primary red (PR)
  13449. 1 primary green (PG)
  13450. 0 primary blue (PB)
  13451. SeeAlso: #P0662,#P0665
  13452. Bitfields for EGA/VGA color enable register:
  13453. Bit(s) Description (Table P0667)
  13454. 7-6 reserved
  13455. 5-4 diagnose / video status select
  13456. EGA: VGA, ET4000:
  13457. 00b = PR/PB PR/PB
  13458. 01b = SB/PG SG/SB
  13459. 10b = SR/SG PI/PG
  13460. 11b = reserved SI/SR
  13461. 3 enable plane 3
  13462. 2 enable plane 2
  13463. 1 enable plane 1
  13464. 0 enable plane 0
  13465. SeeAlso: #P0662
  13466. ----------P03C003C7--------------------------
  13467. PORT 03C0-03C7 - Sunshine EW-901, EW-901A, EW-904, EW-904A
  13468. Desc: EPROM writer card for EPROMs up to 27512
  13469. 03C0-03C3 adresses of the 8255 on the EW-90x
  13470. --------V-P03C203CF--------------------------
  13471. PORT 03C2-03CF - EGA/VGA - MISCELLANEOUS REGISTERS
  13472. Range: PORT 03C2h or PORT 02C2h (alternate EGA)
  13473. SeeAlso: PORT 03C0h,PORT 03C4h,PORT 03C6h,PORT 03D0h
  13474. 03C2 R- input status 0 register (see #P0668)
  13475. 03C2 -W miscellaneous output register (see #P0669)
  13476. 03C3 RW (VGA) video subsystem enable (see also PORT 46E8h)
  13477. for IBM, motherboard VGA only
  13478. bit7-4=0: reserved
  13479. bit3 : select video subsystem (address 46E8h)
  13480. bit2-1 : reserved
  13481. bit0 : select video subsystem (address 03C3h)
  13482. Bitfields for EGA/VGA input status 0 register:
  13483. Bit(s) Description (Table P0668)
  13484. 7 (VGA) vertical retrace interrupt is pending
  13485. (EGA) =0 vertical retrace in progress
  13486. 6-5 (VGA) reserved (0)
  13487. 6 (EGA and ET4000) feature control 1 (pin17)
  13488. 5 (EGA and ET4000) feature control 0 (pin19)
  13489. 4 (VGA) monitor sense signal is asserted
  13490. 4 (EGA, Genoa SuperEGA) DIP switch sense
  13491. 0=closed, 1=open/switches readable
  13492. 3-0 reserved (0)
  13493. Bitfields for EGA/VGA miscellaneous output register:
  13494. Bit(s) Description (Table P0669)
  13495. ---Genoa SuperEGA in all emulation modes---
  13496. 7-6: vertical resolution
  13497. 00 (EGA) 200 lines
  13498. 01 (VGA) 400 lines
  13499. 10 (EGA/VGA) 350 lines
  13500. 11 (VGA) 480 lines
  13501. ------
  13502. 7 vertical sync polarity (0=positive, 1=negative)
  13503. 6 horizontal sync polarity (0=positive, 1=negative)
  13504. 5 odd/even pagebit (=1 select second 64K memory page)
  13505. 4 EGA: 0=video driver on,
  13506. 1=video driver off (feature connector used)
  13507. 3-2 pixelclock
  13508. 00 14/25.175 MHz (EGA/VGA)
  13509. 01 16/28.322 Mhz (EGA/VGA)
  13510. 10 (EGA/VGA) external clock (EGA)
  13511. 10 (Genoa SuperEGA) 39Mhz
  13512. 11 (EGA/VGA) reserved
  13513. 11 (Genoa SuperEGA) 26.824Mhz
  13514. 11 (S3 Trio32/Trio64) enable clock programming via sequencer registers
  13515. 12h and 13h
  13516. 1 enable CPU RAM access
  13517. 0 CRTC port address
  13518. 0=3B4h mono
  13519. 1=3D4h color
  13520. (color EGA: enable feature control at 3DAh,status reg 1 at 3D2h)
  13521. ----------P03C403C5--------------------------
  13522. PORT 03C4-03C5 - EGA/VGA - SEQUENCER REGISTERS
  13523. Range: PORT 03C4h or PORT 02C4h (alternate EGA)
  13524. SeeAlso: PORT 03C0h,PORT 03C2h,PORT 03C4h"Cirrus",PORT 03C4h"S3"
  13525. SeeAlso: PORT 03C4h"Tseng",PORT 03C6h,PORT 03D0h
  13526. 03C4 -W EGA TS index register
  13527. bit7-3 : reserved (VGA only)
  13528. bit2-0 : current TS index
  13529. 03C4 RW VGA sequencer register index (see #P0670)
  13530. 03C5 -W EGA TS data register
  13531. 03C5 RW VGA sequencer register data
  13532. (Table P0670)
  13533. Values for EGA/VGA indexed TS (sequencer) registers:
  13534. 00h reset register
  13535. bit7-2 : reserved
  13536. bit1 =0: synchronous reset (EGA/VGA)
  13537. bit0 =0: asynchronous reset (EGA, ET4000)
  13538. synchronous reset, also (VGA)
  13539. 01h clocking mode register / TS mode (see #P0671)
  13540. 02h map mask register (see #P0672)
  13541. 03h character map select register / font select (see #P0673)
  13542. 04h memory mode register (see #P0674)
  13543. 07h (undoc VGA) reset horizontal character counter
  13544. any write to this register holds horizontal character counter at 00h
  13545. until any other sequencer register is written
  13546. Note: register 07h is documented in the C&T Wingine documentation
  13547. SeeAlso: #P0675,#P0696,#P0685
  13548. Bitfields for EGA/VGA sequencer clocking mode register:
  13549. Bit(s) Description (Table P0671)
  13550. 7-6 reserved
  13551. 5 (VGA) =1: screen refresh off
  13552. 4 (VGA) shift load (0=4x8, 1=1x32)
  13553. 3 internal character clock (0=normal, 1=dotclock/2)
  13554. 2 serial shift video load (0=4x8, 1=2x16)
  13555. 1 (EGA) CRTC bandwidth (0=4/5, 1=2/5)
  13556. 0 dot clocks per character (0=9, 1=8) (ET4000: see 06h)
  13557. SeeAlso: #P0670
  13558. Bitfields for EGA/VGA sequencer map mask register:
  13559. Bit(s) Description (Table P0672)
  13560. 7-4 reserved
  13561. 4 Genoa SuperEGA only: plane4 ???
  13562. 3 write enable display memory plane 3
  13563. 2 write enable display memory plane 2
  13564. 1 write enable display memory plane 1
  13565. 0 write enable display memory plane 0
  13566. SeeAlso: #P0670
  13567. Bitfields for EGA/VGA sequencer character map select register:
  13568. Bit(s) Description (Table P0673)
  13569. 7-6 reserved
  13570. 5 (VGA) bit3 for second text-font
  13571. 4 (VGA) bit3 for first text-font
  13572. 3-2 second text-font (attr bit3=1)
  13573. 1-0 first text-font (attr bit3=0)
  13574. offset in font memory (4-7: VGA only)
  13575. 0 00b = 0KB
  13576. 0 01b = 16KB
  13577. 0 10b = 32KB
  13578. 0 11b = 48KB
  13579. 1 00b = 8KB
  13580. 1 01b = 24KB
  13581. 1 10b = 40KB
  13582. 1 11b = 56KB
  13583. SeeAlso: #P0670
  13584. Bitfields for EGA/VGA sequencer memory mode register:
  13585. Bit(s) Description (Table P0674)
  13586. 7-4 reserved
  13587. 3 =1 (VGA) enable chain 4 linear graphics mode
  13588. (when set, low two bits of CPU address select the plane)
  13589. 2 addressing mode
  13590. 0 odd/even mode (even addresses access planes 0/2, odd planes 1/3)
  13591. 1 sequential mode
  13592. 1 =1 extended memory (0=64KB, 1=more)
  13593. 0 (EGA) 1=textmode, 0=graphics mode
  13594. SeeAlso: #P0670
  13595. ----------P03C403C5--------------------------
  13596. PORT 03C4-03C5 - Cirrus Logic GRAPHICS - EXTENDED SEQUENCER REGISTERS
  13597. SeeAlso: PORT 03C4h"EGA",PORT 03C4h"S3",PORT 03C4h"Tseng"
  13598. 03C4 RW sequencer register index (see #P0696)
  13599. 03C5 RW sequencer register data
  13600. (Table P0675)
  13601. Values for Cirrus CL-GD7556 extended sequencer registers:
  13602. 00h-04h same as EGA/VGA (see #P0670)
  13603. 06h "SR6" key register -- enable access to extension registers
  13604. set to xxx1x010 to unlock extended sequencer and CRTC registers
  13605. 07h "SR7" extended sequencer mode (see #P0676)
  13606. 08h "SR8" DDC2B control (see #P0677)
  13607. 09h "SR9" scratch pad #0
  13608. 0Ah "SRA" scratch pad #1
  13609. 0Bh "SRB" VCLK0 numerator !!!gd7556hrm.pdf p.239
  13610. 0Ch "SRC" VCLK1 numerator
  13611. 0Dh "SRD" VCLK2 numerator
  13612. 0Eh "SRE" VCLK3 numerator
  13613. 0Fh "SRF" display memory control (see #P0678)
  13614. 10h "SR10" hardware cursor/icon coarse horizontal position
  13615. 11h "SR11" hardware cursor/icon coarse vertical position
  13616. 12h "SR12" hardware cursor attributes
  13617. 13h "SR13" hardware cursor pattern address
  13618. 14h "SR14" scratch pad #2
  13619. 15h "SR15" scratch pad #3
  13620. 17h "SR17" BitBLT memory map I/O address
  13621. 18h "SR18" signature generator control
  13622. 19h "SR19" signature generator result (low)
  13623. 1Ah "SR1A" signature generator result (high)
  13624. 1Bh "SR1B" VLK0 denominator/post scaler
  13625. 1Ch "SR1C" VLK1 denominator/post scaler
  13626. 1Dh "SR1D" VLK2 denominator/post scaler
  13627. 1Eh "SR1E" VLK3 denominator/post scaler
  13628. 1Fh "SR1F" MCLK frequency / VCLK source select
  13629. 20h "SR20" miscellaneous control 2
  13630. 21h "SR21" test bus control
  13631. 22h "SR22" hardware configuration read 1
  13632. 23h "SR23" software configuration 1
  13633. 24h "SR24" flat panel type switches enable
  13634. 25h "SR25" FasText(tm) mode control
  13635. 26h "SR26" shader signature (low)
  13636. 27h "SR27" shader signature (high)
  13637. 28h "SR28" scratch pad #4
  13638. 29h "SR29" scratch pad #5
  13639. 2Ah "SR2A" hardware icon #0 control
  13640. 2Bh "SR2B" hardware icon #1 control
  13641. 2Ch "SR2C" hardware icon #2 control / byte-swap enable
  13642. 2Dh "SR2D" hardware icon #3 control / cursor memory access
  13643. 2Eh "SR2E" hardware cursor horizontal position extension
  13644. 2Fh "SR2F" half-frame accel. FIFO threshold for surrounding graphics
  13645. 32h "SR32" half-frame accel. FIFO threshold in video window
  13646. 33h "SR33" spare register
  13647. 34h "SR34" Host CPU cycle stop control
  13648. Note: the scratch pad registers are reserved for use by the VGA BIOS
  13649. SeeAlso: #P0670,#P0685,#P0696
  13650. Bitfields for Cirrus CL-GD7556 extended sequencer mode register:
  13651. Bit(s) Description (Table P0676)
  13652. 7-4 display memory segment
  13653. 3-1 CRT Controller character clock divisor
  13654. 0 select high-resolution packed-pixel mode
  13655. !!!gd7556hrm.pdf p.234
  13656. SeeAlso: #P0675
  13657. Bitfields for Cirrus CL-GD7556 DDC2B Control register:
  13658. Bit(s) Description (Table P0677)
  13659. 7 DDCD output status (read-only)
  13660. 6-3 reserved
  13661. 2 DDCC output status (read-only)
  13662. 1 DDCD (I2C SDA) output control
  13663. 0 DDCC (I2C SCL) output control
  13664. Notes: bits 1 and 0 are used to drive the I2C bus used for DDC communications;
  13665. bits 7 and 2 are used to read back the current state of the bus lines
  13666. SR24 bit 7 must be cleared to enable access to the bus
  13667. SeeAlso: #P0675,#M0079,I2C A0h"DDC"
  13668. Bitfields for Cirrus CL-GD7556 Display Memory Control register:
  13669. Bit(s) Description (Table P0678)
  13670. 7 bank select for display memory
  13671. 6 !!!gd7556hrm.pdf p.241
  13672. 5 reserved
  13673. 4-3 display memory data width
  13674. 2 RAS# cycle select for display memory
  13675. 1 display memory configuration symmetry
  13676. 0 multiple-CAS# / multiple-WE# select for display memory
  13677. SeeAlso: #P0823
  13678. ----------P03C403C5--------------------------
  13679. PORT 03C4-03C5 - NVIDIA - EXTENDED SEQUENCER REGISTERS
  13680. SeeAlso: PORT 03C4h"EGA",PORT 03C4h"S3",PORT 03C4h"Tseng"
  13681. 03C4 RW sequencer register index (see #P0679)
  13682. 03C5 RW sequencer register data
  13683. (Table P0679)
  13684. Values for NVIDIA NV3/RIVA128 extended sequencer registers:
  13685. 06h key register (enable access to extended registers when set to 57h,
  13686. disable access when set to any other value)
  13687. 19h extended start address and offset
  13688. bits 7-5: offset bits 10-8
  13689. bits 4-0: address bits 20-16
  13690. 1Ah flags (see #P0680)
  13691. 1Bh refresh FIFO control (see #P0681)
  13692. 20h FIFO watermark (see #P0682)
  13693. 25h miscellaneous extension bits (see #P0683)
  13694. 28h framebuffer format
  13695. 2Dh extended horizontal bits (see #P0684)
  13696. 30h graphics cursor control 0
  13697. 31h graphics cursor control 1
  13698. ???
  13699. Bitfields for NVIDIA NV3 flags:
  13700. Bit(s) Description (Table P0680)
  13701. !!!nv3ref.h
  13702. SeeAlso: #P0679
  13703. Bitfields for NVIDIA NV3 refresh FIFO control:
  13704. Bit(s) Description (Table P0681)
  13705. 7 underflow warning
  13706. 2-0 burst length
  13707. 000 eight
  13708. 001 32
  13709. 010 64
  13710. 011 128
  13711. 100 256
  13712. SeeAlso: #P0679,#P0682
  13713. Bitfields for NVIDIA NV3 FIFO watermark:
  13714. Bit(s) Description (Table P0682)
  13715. 7 reset FIFO
  13716. 5-0 watermark, in eight-byte units (refresh FIFO will start refilling
  13717. when occupancy falls below twice this value)
  13718. SeeAlso: #P0679,#P0681
  13719. Bitfields for NVIDIA NV3 miscellaneous extension bits:
  13720. Bit(s) Description (Table P0683)
  13721. 5 offset bit 11
  13722. 4 horizontal blanking end, bit 6
  13723. 3 vertical blanking start, bit 10
  13724. 2 vertical retrace start, bit 10
  13725. 1 vertical display end, bit 10
  13726. 0 vertical total, bit 10
  13727. SeeAlso: #P0679,#P0684
  13728. Bitfields for NVIDIA NV3 extended horizontal bits:
  13729. Bit(s) Description (Table P0684)
  13730. 4 "inter_half_start" bit 8
  13731. 3 horizontal retrace start, bit 8
  13732. 2 horizontal blanking start, bit 8
  13733. 1 display end, bit 8
  13734. 0 display total, bit 8
  13735. SeeAlso: #P0679,#P0683
  13736. ----------P03C403C5--------------------------
  13737. PORT 03C4-03C5 - S3 GRAPHICS - EXTENDED SEQUENCER REGISTERS
  13738. SeeAlso: PORT 03C4h"EGA",PORT 03C4h"Cirrus",PORT 03C4h"Tseng",PORT 03C4"NVIDIA"
  13739. 03C4 RW sequencer register index (see #P0685)
  13740. 03C5 RW sequencer register data
  13741. (Table P0685)
  13742. Values for S3 extended sequencer registers:
  13743. 00h-04h same as EGA/VGA (see #P0670)
  13744. 08h S3 864/964/765 (Trio64V): key register -- enable access to S3 extended
  13745. registers when set to x6h
  13746. ---S3 Trio32/Trio64/Trio64V+ ---
  13747. 09h "SR9" MMIO-Only
  13748. bit 7: disable port I/O when memory-mapped I/O is enabled
  13749. bits 6-0: reserved
  13750. bit 1: ??? (set by Stealth64 Video 2001)
  13751. 0Ah "SRA" external bus request control register (see #P0686)
  13752. 0Bh "SRB" miscellaneous extended sequencer register (see #P0687)
  13753. 0Dh "SRD" VSYNC/HSYNC control (see #P0689)
  13754. 10h "SR10" MCLK value (low) (see #P0690)
  13755. 11h "SR11" MCLK value (high) (see #P0691)
  13756. 12h "SR12" DCLK value (low) (see #P0690)
  13757. 13h "SR13" DCLK value (high) (see #P0691)
  13758. 14h "SR14" CLKSYN control 1 (see #P0692)
  13759. 15h "SR15" CLKSYN control 2 (see #P0693)
  13760. 16h "SR16" CLKSYN Test (high) (reserved for testing of clock synth)
  13761. 17h "SR17" CLKSYN Test (low) (reserved for testing of clock synth)
  13762. 18h "SR18" RAMDAC/CLKSYN Control (see #P0694)
  13763. ---S3 Trio64V+ ---
  13764. 1Ch "SR1C" signal select (see #P0695)
  13765. SeeAlso: #P0670,#P0675,#P0696
  13766. Bitfields for S3 Trio32/64/64V+ "SRA" external bus request control register:
  13767. Bit(s) Description (Table P0686)
  13768. 7 fast CPU writes
  13769. when set and MCLK is less than 57 MHz, CPU writes take 2 MCLKs instead
  13770. of 3 MCLKs (for MCLKs of 55-57 MHz, SR15 bit 7 should also be set)
  13771. 6 (Trio64) Pin50 function select
  13772. =0 (CR36 bit 2=1) Pin50 outputs a second -OE0 signal
  13773. =1 (CR36 bit 2=1) Pin50 outputs -RAS1
  13774. 5 =0 tri-state pixel-data lines (reduces power consumption)
  13775. 4-0 maximum 2*MCLKs that secondary memory controllers are granted access to
  13776. Trio's memory bus
  13777. Note: bit 6 must be set for 4M fast page-mode memory; it has no effect if
  13778. EDO memory is selected via CR36 bit 2
  13779. SeeAlso: #P0685
  13780. Bitfields for S3 Trio32/64/64V+ "SRB" misc extended sequencer register:
  13781. Bit(s) Description (Table P0687)
  13782. 7-4 alternate color mode (for feature connector input) (see #P0688)
  13783. 3 (Trio32 only) enable packed 24 bpp (mode 12); also requires CR67 bits
  13784. 7-4=0000
  13785. 2 reserved
  13786. 1 VAFC clocking
  13787. =0 latch pixel data from pass-through feature connector on VCLK
  13788. =1 latch pixel data from VAFC on VCLKI
  13789. 0 dot clock select (testing only)
  13790. =0 use internal dot clock
  13791. =1 use VCLKI
  13792. SeeAlso: #P0685,#P0751
  13793. (Table P0688)
  13794. Values for S3 Trio32/Trio64 color mode:
  13795. 0000 mode 0 = 8-bit, 1 pixel/VCLK
  13796. 0001 mode 8 = 8-bit, 2 pixels/VCLK
  13797. 0011 mode 9 = 15-bit, 1 pixel/VCLK
  13798. 0101 mode 10 = 16-bit, 1 pixel/VCLK
  13799. 0111 mode 12 = 640x480x24-bit (packed), 1 pixel/3 DCLKs (Trio32 only)
  13800. 1101 mode 13 = 24-bit, 1 pixel/VCLK
  13801. else reserved
  13802. Note: mode 8 also requires SR18 bit 7=1 and either SR15 bit 4=1 or
  13803. SR15 bit 6=1
  13804. SeeAlso: #P0687,#P0751
  13805. Bitfields for S3 "SRD" Trio32/Trio64 VSYNC/HSYNC control:
  13806. Bit(s) Description (Table P0689)
  13807. 7-6 vertical sync control
  13808. 00 normal operation
  13809. 01 force to 0
  13810. 10 force to 1
  13811. 11 reserved
  13812. 5-0 horizontal sync control (settings as for vsync)
  13813. 3-1 reserved
  13814. 1 (Trio64V+) feature connector type
  13815. =0 Trio64-compatible
  13816. =1 new LPB type
  13817. 0 enable feature connector
  13818. Note: bits 7-4 are used to select the DPMS power mode as follows:
  13819. 0000 On
  13820. 0001 Standby
  13821. 0100 Suspend
  13822. 0101 Off
  13823. SeeAlso: #P0685
  13824. Bitfields for S3 Trio32/Trio64 "SR10"/"SR12" MCLK/DCLK value (low):
  13825. Bit(s) Description (Table P0690)
  13826. 7 reserved
  13827. 6-5 PLL R value
  13828. 4-0 PLL N-divider value
  13829. SeeAlso: #P0691,#P0685
  13830. Bitfields for S3 Trio32/Trio64 "SR11"/"SR13" MCLK/DCLK value (high):
  13831. Bit(s) Description (Table P0691)
  13832. 7 reserved
  13833. 6-0 PLL M-divider value
  13834. SeeAlso: #P0690,#P0685
  13835. Bitfields for S3 Trio32/Trio64 "SR14" CLKSYN control 1:
  13836. Bit(s) Description (Table P0692)
  13837. 7 select external DCLK (testing only; also requires external strapping)
  13838. 6 select external MCLK (testing only)
  13839. 5 select Pin146 function
  13840. =0 use as -STRD
  13841. =1 tri-state output; use as input (required to enable bit 6)
  13842. 4 clear clock synthesizer counters (testing only)
  13843. 3 "M TEST" MCLK test
  13844. =0 test DCLK
  13845. =1 test MCLK
  13846. 2 enable clock synthesizer counters (testing only)
  13847. 1 power down MCLK PLL (testing only)
  13848. 0 power down DCLK PLL (testing only)
  13849. SeeAlso: #P0693,#P0685
  13850. Bitfields for S3 Trio32/Trio64 "SR15" CLKSYN control 2:
  13851. Bit(s) Description (Table P0693)
  13852. 7 enable fast memory writes (2 MCLKs instead of 3 MCLKs) by bypassing
  13853. VGA lienar addressing logic (requires SRA bit 7 set)
  13854. 6 invert DCLK
  13855. 5 load MCLK and DCLK immediately on transition from 1 to 0
  13856. 4 divide DCLK by 2
  13857. 3 VLCK direction
  13858. =0 Pin148 always outputs internal VCLK
  13859. =1 -EVCLK signal determines VLCK direction
  13860. 2 MCLK output (testing only)
  13861. =0 Pin147 acts as STWR strobe
  13862. =1 Pin147 outputs internal MCLK
  13863. 1 enable new DCLK frequency load (asynchronous)
  13864. 0 enable new MCLK frequency load
  13865. Notes: bits 1 and 5 also require that PORT 03C2h bits 3-2=11
  13866. bit 5 must never be left set; it should only be pulsed to cause the
  13867. MCLK/DCLK load
  13868. bit 0 should be cleared after loading the new MCLK value to avoid
  13869. repeated loading
  13870. either bit 4 or 6 must be set for clock-doubled RAMDAC operation
  13871. (see #P0686)
  13872. SeeAlso: #P0692,#P0694,#P0685
  13873. Bitfields for S3 Trio32/Trio64 "SR18" RAMDAC/CLKSYN control:
  13874. Bit(s) Description (Table P0694)
  13875. 7 enable clock-doubled mode (see also #393)
  13876. 6 fast LUT write cycle (1 DCLK instead of default 2 DCLKs)
  13877. 5 power down RAMDAC (RAMDAC memory is retained even when powered down)
  13878. 4 (testing only) place blue data on internal data bus
  13879. 3 (testing only) place green data on internal data bus
  13880. 2 (testing only) place red data on internal data bus
  13881. 1 (testing only) reset RAMDAC test counter
  13882. 0 (testing only) enable test counter
  13883. SeeAlso: #P0693
  13884. Bitfields for S3 Trio64V+ "SR1C" signal select:
  13885. Bit(s) Description (Table P0695)
  13886. 7-2 reserved
  13887. 1-0 signal select
  13888. VL-Bus:
  13889. 00 Pin151 is ENFEAT#, Pin153 is ROMCS# (default)
  13890. 01 Pin151 is GPIOSTR#, Pin153 is ROMCS#
  13891. 10 Pin151 is GOP0, Pin153 is ROMCS#
  13892. 11 Pin151 is GOP0, Pin153 is GOP1
  13893. PCI:
  13894. 00 Pin151 is ENFEAT#, Pin190 is STWR#, Pin153 is ROMEN# (default)
  13895. 01 Pin151 is reserved, Pin190 is STWR#, Pin153 is ROMEN#
  13896. 1x Pin151 is GOP0, Pin190 is GOP1, Pin153 is ROMEN#
  13897. SeeAlso: #P0073
  13898. ----------P03C403C5--------------------------
  13899. PORT 03C4-03C5 - Tseng Labs GRAPHICS - EXTENDED SEQUENCER REGISTERS
  13900. SeeAlso: PORT 03C4h"EGA",PORT 03C4h"Cirrus",PORT 03C4h"S3"
  13901. 03C4 RW sequencer register index (see #P0696)
  13902. 03C5 RW sequencer register data
  13903. (Table P0696)
  13904. Values for Tseng Labs extended sequencer registers:
  13905. 00h-04h same as EGA/VGA (see #P0670)
  13906. 06h ET3000 only: Zoom control register
  13907. 06h ET4000 only: TS state control (protected by 'key')
  13908. bit7-3 : reserved
  13909. bit2-1 : timing sequencer state bit2-1
  13910. (bit0 is bit0 TS mode register)
  13911. 00 0b= 9 dots
  13912. 00 1b= 8 dots
  13913. 01 0b= 10 (10-16 are ET4000 only)
  13914. 01 1b= 11
  13915. 10 0b= 12
  13916. 11 1b= 16
  13917. bit0 : reserved
  13918. 07h ET3000/ET4000 only: TS auxiliary mode (see #P0697)
  13919. SeeAlso: #P0670,#P0675,#P0685
  13920. Bitfields for ET3000/ET4000 sequencer auxiliary mode:
  13921. Bit(s) Description (Table P0697)
  13922. 7 compatibility mode (1=VGA, 0=EGA)
  13923. 6 select MCLK/2 (with bit0=0)
  13924. 5 BIOS ROM address map 2
  13925. 4 reserved
  13926. 3 BIOS ROM address map 1
  13927. 2 reserved (1)
  13928. 1 select SCLK input from MCLK
  13929. 0 select MCLK/4 (with bit6=1)
  13930. 5+3 ROM address
  13931. 00 C0000-C3FFF
  13932. 01 disabled
  13933. 10 C0000-C5FFF, C6800-C7FFF
  13934. 11 C0000-C7FFF (default)
  13935. Notes: at least on the ET4000, this register is protected by a 'key'
  13936. this register is also supported by ET3000, but the above description
  13937. is based on the ET4000
  13938. SeeAlso: #P0670
  13939. --------V-P03C603C9--------------------------
  13940. PORT 03C6-03C9 - EGA/VGA/MCGA - DAC REGISTERS
  13941. Range: PORT 03C6h or PORT 02C6h (alternate)
  13942. SeeAlso: PORT 03C0h,PORT 03C2h,PORT 03C4h,PORT 03CAh,PORT 03CEh"EGA",PORT 03D0h
  13943. SeeAlso: PORT 83C6h"Wingine"
  13944. 03C6 RW (VGA, MCGA) PEL mask register (default FFh)
  13945. VGA: AND mask for color-register address.
  13946. MCGA: Never change from the default FFh.
  13947. 03C6 RW HiColor ET4000 (Sierra RAMDACs e.g. SC11486, SC11481, SC11488):
  13948. Enable HiColor feature: beside other assignments,
  13949. consequtive read 3C6h 4 times and write magic value 80h to it.
  13950. 03C7 -W (VGA,MCGA,CEG-VGA) PEL address register (read mode)
  13951. Sets DAC in read mode and assign start of color register
  13952. index (0..255) for following read accesses to 3C9h.
  13953. Don't write to 3C9h while in read mode. Next access to
  13954. 03C8h will stop pending mode immediatly.
  13955. 03C7 -W (CEG-Color VGA w/ Edsun Labs RAMDACs)
  13956. Enable and set Countinous Edge Graphics Mode:
  13957. Consecutive writely the following three key sequences in read
  13958. mode (!) to 3C9h register DEh : 'CEG', 'EDS', 'UNx' (x see
  13959. below). Current CEG mode can be read from palette register
  13960. BFh 'blue', write access to that register will disable CEG
  13961. features.
  13962. In CEG modes by combining old with new colors and dynamically
  13963. changing palette values, the effective colors displayable
  13964. are enhanced dramatically (in EDP modes up to virtually 32bit
  13965. truecolor) on standard 16/256 color VGA. Also, effective
  13966. resolution enhancement takes effect by anti-aliasing.
  13967. Necessary EDP escape sequences should be moved to image
  13968. border or single colored areas, if possible.
  13969. REP-mode: if pixel are doubled in current video mode
  13970. EDP-mode: pseudo-truecolor with Edsun dynamic palette
  13971. (see #P0698,#P0699)
  13972. Palette-color-register single-byte-format (each 3 times):
  13973. Mode A: Mode C:
  13974. bit7-4: mix code bit3 : 0=color, 1=code
  13975. bit3-0: color code bit2-0: color / mix code
  13976. Mode B: Mode D:
  13977. bit7-5: mix code bit7-0: see mix code table
  13978. bit4 : 0=new, 1=old Non-CEG modes:
  13979. bit3-0: color code bit7-0: as usual
  13980. In EDP modes, video-memory-palette-changing escape-sequences:
  13981. Mode A: Mode B: Mode C: Mode D:
  13982. 7/escape 7/escape 7/escape 0BFh
  13983. red red red7-4 red
  13984. green green red3-0 green
  13985. blue blue green7-4 blue
  13986. address address green3-0 address
  13987. blue7-4
  13988. blue3-0
  13989. address
  13990. 03C7 R- VGA DAC state register
  13991. bit7-2 reserved
  13992. bit1-0: 00b write palette cycle (write mode)
  13993. 01h reserved
  13994. 10b reserved
  13995. 11b read palette cycle (read mode)
  13996. 03C8 RW (VGA,MCGA) PEL address register (write mode)
  13997. Sets DAC in write mode and assign start of color register
  13998. index (0..255) for following write accesses to 3C9h.
  13999. Don't read from 3C9h while in write mode. Next access to
  14000. 03C8h will stop pending mode immediatly.
  14001. 03C8 RW (Genoa SuperEGA) SuperEGA control register (all emulation modes)
  14002. bit7-2: reserved
  14003. bit1 : 0=EGA mode, 1=backward compatibility mode
  14004. bit0 : not used
  14005. 03C8 R? (S3 Trio32/64) General Input Port (see #P0738)
  14006. 03C9 RW (VGA,MCGA) PEL data register
  14007. Three consequtive reads (in read mode) or writes (in write
  14008. mode) in the order: red, green, blue. The internal DAC index
  14009. is incremented each 3rd access.
  14010. bit7-6: HiColor VGA DACs only: color-value bit7-6
  14011. bit5-0: color-value bit5-0
  14012. (Table P0698)
  14013. Values for EDSUN CEG (Continuous Edge Graphics) modes::
  14014. x: mode: colors: mix: pixel depth: effective colors:
  14015. 0 = disabled 256 - 8 256
  14016. 1 = A 16 16 8 1920
  14017. 2 = A+REP 16 16 8 dblscn 1920
  14018. 3 = A+EDP 15 16 truecolor
  14019. 4 = reserved - - - -
  14020. 5 = B 16 8 8 960
  14021. 6 = B+REP 16 8 8 dblscn 960
  14022. 7 = B+EDP 15 8 truecolor
  14023. 8 = reserved - - - -
  14024. 9 = C 8 8 4 224
  14025. 10 = C+REP 8 8 4 dblscn 224
  14026. 11 = C+EDP 7 8 truecolor
  14027. 12 = reserved - - - -
  14028. 13 = D 223 32 8 792096
  14029. 14 = D+REP 223 32 8 dblscn 792096
  14030. 15 = D+EDP 223 32 truecolor
  14031. SeeAlso: #P0699
  14032. (Table P0699)
  14033. Values for EDSUN CEG mixing codes:
  14034. Mode A: | Mode C:
  14035. mix: new: old: | mix: new: old: colorcode:
  14036. 0 = 32/32 0/32 | 0 = - - 0
  14037. 1 = 30/32 2/32 | 1 = - - 1
  14038. 2 = 28/32 4/32 | 2 = - - 2
  14039. 3 = 26/32 6/32 | 3 = - - 3
  14040. 4 = 24/32 8/32 | 4 = - - 4
  14041. 5 = 22/32 10/32 | 5 = - - 5
  14042. 6 = 20/32 12/32 | 6 = - - 6
  14043. 7 = 18/32 14/32 | 7 = - - 7/EDP
  14044. 8 = 16/32 16/32 | 8 = 30/32 2/32 -
  14045. 9 = 14/32 18/32 | 9 = 28/32 4/32 -
  14046. 10 = 12/32 20/32 | 10 = 26/32 6/32 -
  14047. 11 = 10/32 22/32 | 11 = 24/32 8/32 -
  14048. 12 = 8/32 24/32 | 12 = 22/32 10/32 -
  14049. 13 = 6/32 26/32 | 13 = 20/32 12/32 -
  14050. 14 = 4/32 28/32 | 14 = 18/32 14/32 -
  14051. 15 = 2/32 30/32 | 15 = 16/32 16/32 -
  14052. ---Mode B: | Mode D:
  14053. mix: new: old: | mix: new: old: description:
  14054. 0 = 30/32 2/32 | 00h..BEh = - - normal color
  14055. 1 = 26/32 6/32 | BFh = - - EDP
  14056. 2 = 22/32 10/32 | C0h = 32/32 0/32
  14057. 3 = 18/32 14/32 | C1h = 31/32 1/32
  14058. 4 = 14/32 18/32 | C2h = 30/32 2/32
  14059. 5 = 10/32 22/32 | ... = ... ...
  14060. 6 = 6/32 26/32 | DFh = 0/32 32/32
  14061. 7 = 2/32 30/32 | E0h-FFh = - - normal color
  14062. SeeAlso: #P0698
  14063. --------V-P03CA03CD--------------------------
  14064. PORT 03CA-03CD - EGA/VGA/MCGA - GRAPHICS POSITION
  14065. Range: PORT 03C0h or PORT 02C0h (alternate)
  14066. SeeAlso: PORT 03C0h,PORT 03C2h,PORT 03C4h,PORT 03C6h,PORT 03CEh"EGA",PORT 03D0h
  14067. 03CA -W EGA graphics 2 position register
  14068. 03CA R- VGA feature control register (see PORT 03BAh,PORT 03DAh-W)
  14069. 03CB RW (ET4000/W32) GDC segment select register 2 ('key' protected?)
  14070. The existence of this r/w register 0..255 is often
  14071. used to decide between ET4000 and ET4000/W32.
  14072. bit7-6: reserved, but existent
  14073. bit5-4: bits 5-4 of read segment pointer
  14074. bit3-2: reserved, but existent
  14075. bit1-0: bits 5-4 of write segment pointer
  14076. 03CC -W EGA graphics 1 position register
  14077. 03CC R- VGA miscellaneous output register (see PORT 03C2h-W,#P0669,#P0820)
  14078. 03CD RW (ET3000, ET4000, ET4000/W32) GDC segment select ('key' protected)
  14079. The existence of this r/w register is often used as
  14080. detection of ET3000, ET4000 and ET4000/W32 chips.
  14081. bit7-4: read segment pointer for mapping to A0000h
  14082. bit3-0: write segment pointer for mapping to A0000h
  14083. --------V-P03CE03CF--------------------------
  14084. PORT 03CE-03CF - EGA/VGA/MCGA - GRAPHICS CONTROLLER REGISTERS
  14085. Range: PORT 03CEh or PORT 02CEh (alternate EGA)
  14086. SeeAlso: PORT 03C0h,PORT 03C2h,PORT 03C4h,PORT 03C6h,PORT 03D0h
  14087. SeeAlso: PORT 03CEh"Chips&Technologies"
  14088. 03CE -W EGA GDC index register
  14089. 03CE RW VGA graphics address register / GDC index
  14090. bit7-4: reserved
  14091. bit3-0: index
  14092. 03CF -W EGA GDC data register (see #P0700)
  14093. 03CF RW VGA other graphics register (see #P0700)
  14094. (Table P0700)
  14095. Values for EGA/VGA indexed registers in GDC:
  14096. 00h set/reset register (default 00h)
  14097. functionality depending on write mode (register 05h) (see #P0704)
  14098. bit7-4: reserved
  14099. bit3 : 0=write 00h, 1=write FFh in plane 3
  14100. bit2 : 0=write 00h, 1=write FFh in plane 2
  14101. bit1 : 0=write 00h, 1=write FFh in plane 1
  14102. bit0 : 0=write 00h, 1=write FFh in plane 0
  14103. 01h enable set/reset register (default 00h) (see #P0701)
  14104. 02h color compare register (default 00h) (see #P0702)
  14105. 03h data rotate register (default 00h) (see #P0703)
  14106. 04h read map select register (default 00h)
  14107. bit7-3: reserved
  14108. bit2 : EGA?? & Genoa SuperEGA: map select bit2
  14109. bit1-0: map select (0..3)
  14110. 05h mode register (see #P0704)
  14111. 06h miscellaneous register (see #P0705)
  14112. 07h color don't care register
  14113. bit7-4: reserved
  14114. bit3=1: color plane 3 don't care (ignore bit3)
  14115. bit2=1: color plane 2 don't care (ignore bit2)
  14116. bit1=1: color plane 1 don't care (ignore bit1)
  14117. bit0=1: color plane 0 don't care (ignore bit0)
  14118. 08h bit mask register (default FFh)
  14119. bit7-0: bitmask for latch/databyte
  14120. (bit set=change allowed)
  14121. ---Paradise SuperVGA---
  14122. 0Fh lock register
  14123. The ability to write and reread 00h..07h to this register
  14124. is often used as detection of Paradise chips.
  14125. bit7-0 = 01h lock/hide Paradise specific registers
  14126. = 05h unlock Paradise specific registers
  14127. bit7-3: reserved
  14128. bit2-0: flipflops, reserved
  14129. SeeAlso: #P0706
  14130. Bitfields for EGA/VGA GDC enable set/reset register:
  14131. Bit(s) Description (Table P0701)
  14132. 7-4 reserved (used on Genoa SuperEGA???)
  14133. 3 enable set/reset plane 3
  14134. 2 enable set/reset plane 2
  14135. 1 enable set/reset plane 1
  14136. 0 enable set/reset plane 0
  14137. 3-0 0=CPU access, 1=set/reset access to plane
  14138. SeeAlso: #P0700
  14139. Bitfields for EGA/VGA GDC color compare register:
  14140. Bit(s) Description (Table P0702)
  14141. 7-4 reserved
  14142. 3 color compare 3
  14143. 2 color compare 2
  14144. 1 color compare 1
  14145. 0 color compare 0
  14146. 3-0 (color number)
  14147. SeeAlso: #P0700
  14148. Bitfields for EGA/VGA data rotate register (GR3):
  14149. Bit(s) Description (Table P0703)
  14150. 7-5 reserved
  14151. 4-3 logical function select
  14152. 00 CPU-data overwrites
  14153. 01 CPU-data AND with latch-register
  14154. 10 CPU-data OR with latch-register
  14155. 11 CPU-data XOR with latch-register
  14156. 2-0 rotate count
  14157. SeeAlso: #P0700
  14158. Bitfields for EGA/VGA GDC mode register:
  14159. Bit(s) Description (Table P0704)
  14160. 7 reserved
  14161. 6 (VGA) 0=standard, 1=enable 256 colors
  14162. 5 shift register mode, 0=standard, 1=CGA-graphics
  14163. (not used on Genoa SuperEGA???)
  14164. 4=1 enable odd/even address mode
  14165. 3 read mode, 0=mode0, 1=mode1
  14166. 2 (EGA) test condition, 0=standard, 1=output tristate
  14167. 1-0 write mode
  14168. 00 mode0, plane source is CPU or set/reset
  14169. 01 mode1, plane source is latch-register
  14170. 10 mode2, plane source is CPU as set/reset
  14171. 11 (VGA) mode3, CPU as set/reset AND bitmask
  14172. SeeAlso: #P0700
  14173. Bitfields for EGA/VGA GDC miscellaneous register:
  14174. Bit(s) Description (Table P0705)
  14175. 7-4 reserved (=0)
  14176. 3-2 memory map
  14177. 00b = A0000..BFFFF (128KB)
  14178. 01b = A0000..AFFFF (64KB)
  14179. 10b = B0000..B7FFF (32KB)
  14180. 11b = B8000..BFFFF (32KB)
  14181. 1 chain odd maps to even, 1=subst addess bit0
  14182. 0 0=textmode, 1=graphics mode
  14183. SeeAlso: #P0700
  14184. --------V-P03CE03CF--------------------------
  14185. PORT 03CE-03CF - Chips&Technologies - GRAPHICS CONTROLLER EXTENDED REGISTERS
  14186. SeeAlso: PORT 03CE"EGA"
  14187. 03CE RW graphics address register / GDC index
  14188. 03CF RW other graphics register (see #P0706)
  14189. (Table P0706)
  14190. Values for Cirrus CL-GD7556 extended GDC registers:
  14191. 00h-08h same as EGA/VGA (see #P0700)
  14192. 09h "GR9" display memory offset 0
  14193. 0Ah "GRA" display memory offset 1
  14194. 0Bh "GRB" graphics controller mode extensions
  14195. 0Ch "GRC" color key compare value / chroma key Y minimum
  14196. 0Dh "GRD" color key compare mask / chroma key Y maximum
  14197. 0Eh "GRE" DPMS control
  14198. 10h "GR10" background color expansion 1
  14199. 11h "GR11" foreground color expansion 1
  14200. 13h "GR13" foreground color expansion 2
  14201. 16h "GR16" scanline counter readback (low)
  14202. 17h "GR17" scanline counter readback (high)
  14203. 18h "GR18" EDO RAM control
  14204. 1Ah "GR1A" scratch pad #6
  14205. 1Bh "GR1B" scratch pad #7
  14206. 1Ch "GR1C" chroma-key U minimum
  14207. 1Dh "GR1D" chroma-key U maximum
  14208. 1Eh "GR1E" chroma-key V minimum
  14209. 1Fh "GR1F" chroma-key V maximum
  14210. 20h "GR20" BitBLT width (low)
  14211. 21h "GR21" BitBLT width (high)
  14212. 22h "GR22" BitBLT height (low)
  14213. 23h "GR23" BitBLT height (high)
  14214. 24h "GR24" BitBLT destination pitch (low)
  14215. 25h "GR25" BitBLT destination pitch (high)
  14216. 26h "GR26" BitBLT source pitch (low)
  14217. 27h "GR27" BitBLT source pitch (high)
  14218. 28h "GR28" BitBLT destination address (low)
  14219. 29h "GR29" BitBLT destination address (middle)
  14220. 2Ah "GR2A" BitBLT destination address (high)
  14221. 2Ch "GR2C" BitBLT source address (low)
  14222. 2Dh "GR2D" BitBLT source address (middle)
  14223. 2Eh "GR2E" BitBLT source address (high)
  14224. 2Fh "GR2F" BitBLT destination write mask
  14225. 30h "GR30" BitBLT mode
  14226. 31h "GR31" BitBLT start/status
  14227. 32h "GR32" BitBLT raster operation
  14228. 33h "GR33" BitBLT mode extensions
  14229. !!! (details to be added)
  14230. Note: the scratch pad registers are reserved for use by the VGA BIOS
  14231. SeeAlso: #P0700
  14232. --------V-P03CE03CF--------------------------
  14233. PORT 03CE-03CF - Compaq Qvision - Functionality Level
  14234. 03CE -W graphics address register (index for next port) (see #P0707)
  14235. 03CF RW other graphics register
  14236. (Table P0707)
  14237. Values for Compaq QVision graphics register index:
  14238. 0Ch RO controller version
  14239. 2Fh Advanced VGA
  14240. 37h early QVision 1024
  14241. 71h QVision 1280 or later QVision 1024
  14242. 0Dh extended controller version
  14243. 0Eh extended controller capabilities
  14244. 0Fh environment info
  14245. 54h available memory
  14246. 55h phase-locked-loop clock
  14247. 56h-57h controller capabilities
  14248. --------V-P03D003D3--------------------------
  14249. PORT 03D0-03D3 - CGA (Color Graphics Adapter) - MIRRORS OF 03D4/03D5
  14250. 03D0 -W same as PORT 03D4h
  14251. 03D1 RW same as PORT 03D5h
  14252. 03D2 -W same as PORT 03D4h
  14253. 03D3 RW same as PORT 03D5h
  14254. --------V-P03D403D5--------------------------
  14255. PORT 03D4-03D5 - COLOR VIDEO - CRT CONTROL REGISTERS
  14256. 03D4 rW CRT (6845) register index (CGA/MCGA/color EGA/color VGA)
  14257. selects which register (0-11h) is to be accessed through 03D5
  14258. this port is r/w on some VGA, e.g. ET4000
  14259. bit 7-6 =0: (VGA) reserved
  14260. bit 5 =0: (VGA) reserved for testage
  14261. bit 4-0 : selects which register is to be accessed through 03D5
  14262. 03D5 -W CRT (6845) data register (CGA/MCGA/color EGA/color VGA) (see #P0708)
  14263. selected by PORT 03D4h. registers 0C-0F may be read
  14264. (see also PORT 03B5h)
  14265. MCGA, native EGA and VGA use very different defaults from those
  14266. mentioned for the other adapters; for additional notes and
  14267. registers 00h-0Fh and EGA/VGA registers 10h-18h and ET4000
  14268. registers 32h-37h see PORT 03B5h (see #P0654)
  14269. registers 10h-11h on CGA, EGA, VGA and 12h-14h on EGA, VGA are
  14270. conflictive with MCGA (see #P0710)
  14271. (Table P0708)
  14272. Values for EGA/VGA+ CRT Controller register index:
  14273. 00h-0Fh same as MDA/CGA (see #P0654)
  14274. 10h R- native VGA with bit7=1 in end horizontal blanking (03h) and ET4000:
  14275. start vertical retrace
  14276. 10h -W start vertical retrace
  14277. 11h R- native VGA with bit7=1 in end horizontal blanking (03h):
  14278. end vertical retrace
  14279. 11h -W end vertical retrace
  14280. bit7 : VGA: protection bit
  14281. =0 enable write access to 00h-07h
  14282. =1 read only regs 00h-07h with the exception
  14283. of bit4 in 07h. ET4000: protect 35h also.
  14284. bit6 : VGA: =0 three, =1 five refreshcycles/line
  14285. ET4000: reserved
  14286. bit5=0: (MCGA also) enable vertical interrupt
  14287. bit4=0: (MCGA also) clear vertical interrupt
  14288. =1: no effect
  14289. bit3-0: (MCGA also) vertical retrace end
  14290. 12h vertical display end register
  14291. 13h row offset register
  14292. logical screen line width in
  14293. byte mode : bytes/(line/2)
  14294. word mode : bytes/(line/4)
  14295. dword mode: bytes/(line/8)
  14296. 14h underline location register
  14297. bit7: reserved (0)
  14298. bit6: (VGA) 0=word-mode, 1=dword-mode (see 17h, bit6)
  14299. bit5: (VGA) 0=standard address counter clock
  14300. 1=address counter clock/4 (see 17h, bit3)
  14301. bit4-0: horizontal underline row scan
  14302. 15h (EGA,VGA) start vertical blanking-1
  14303. 16h (EGA,VGA) end vertical blanking register
  14304. bit7-5 : EGA: reserved, but used on original EGA???
  14305. bit4-0 : end vertical blanking
  14306. 17h (EGA,VGA) "CR17" mode control register (see #P0657)
  14307. 18h (EGA,VGA) "CR18" line compare register
  14308. 19h Genoa SuperEGA only: double scan control
  14309. at 3B5h only in MDA, HGC emulation, but at 3D5h even in
  14310. mono EGA modes.
  14311. bit7-5 : reserved
  14312. bit4 : HR/VR width adjust flag for double scan mode
  14313. bit3-1 : 1=test, 0=normal
  14314. bit0 : double scan enable
  14315. 22h (VGA) "CR22" CPU Latch Data Register (read-only)
  14316. 24h (VGA) "CR24" Attribute Controller Toggle register (R-O) (see #P0709)
  14317. 3xh (VGA) !!!chips\64200.pdf p.57
  14318. Notes: registers 10h-14h on the MCGA have conflicting uses (see #P0710)
  14319. registers 22h,24h, and 3xh exist on the standard IBM VGA but were not
  14320. documented
  14321. SeeAlso: #P0756,#P0716,#P0717
  14322. Bitfields for VGA "CR24" Attribute Controller Toggle register:
  14323. Bit(s) Description (Table P0709)
  14324. 7-3 current attribute controller index
  14325. 2 palette address source
  14326. 1 reserved
  14327. 0 state of attribute-controller flip-flop (0 = index, 1 = data)
  14328. Note: this register was not documented for the original IBM VGA; this
  14329. description is from the C&T Wingine documentation
  14330. SeeAlso: #P0708,#P0718
  14331. (Table P0710)
  14332. Values for MCGA (only) CRT Controller register index:
  14333. 00h-0Fh same as MDA/CGA (see #P0654)
  14334. 10h -W mode control register (defaults 18h, 1Ah, 19h) (see #P0711)
  14335. 10h R- mode control status register (see #P0712)
  14336. 11h -W interrupt control register (default 30h) (see #P0713)
  14337. 12h RW character generator/sync polarity register (see #P0714)
  14338. 12h R- display sense register (int. control reg [11h] bit7=1)
  14339. bit 7-2 : not used
  14340. bit 1-0 : pins 11 & 12 in monitor cable
  14341. 00b = reserved
  14342. 01b = analogue monochrom monitor
  14343. 10b = analogue color graphics monitor
  14344. 11b = no monitor
  14345. 13h -W character font pointer register (see #P0710)
  14346. only 00h, 10h, 20h, 30h (default 00h) are allowed here
  14347. for textmode fonts at A0000, A2000, A4000, A6000
  14348. 14h -W number of characters to load during vert. retrace period (default FFh)
  14349. Note: registers 10h-14h can appear at PORT 03D5h only, not at 03B5h
  14350. SeeAlso: #P0654,#P0708,#P0756,#P0715
  14351. Bitfields for MCGA (only) CRT mode control register:
  14352. Bit(s) Description (Table P0711)
  14353. 7 suppress hsync/vsync
  14354. 6 reserved (0)
  14355. 5 reserved
  14356. 4 dot clock rate
  14357. 3 refresh calculations in 80x25 modes
  14358. 2 reserved
  14359. 1 videomode 11h active
  14360. 0 videomode 13h active
  14361. SeeAlso: #P0710,#P0712
  14362. Bitfields for MCGA (only) CRT mode control status register:
  14363. Bit(s) Description (Table P0712)
  14364. 7 status bit0 CGA mode control register
  14365. 6 reserved
  14366. 5 clockrate 640 pixel, =0: clockrate/2 320 pixel
  14367. 4 clock rate is 25,175Mhz
  14368. 3 currently in textmode
  14369. 2 double-scan activated
  14370. 1 videomode 11h active
  14371. 0 videomode 13h active
  14372. SeeAlso: #P0710,#P0711
  14373. Bitfields for MCGA (only) CRT interrupt control register:
  14374. Bit(s) Description (Table P0713)
  14375. 7 set output driver to tristate
  14376. =0: for reading of character generator reg (12h)
  14377. =1: for reading of display sense register (12h)
  14378. 6 R intr generated by memory controller
  14379. 5 =0 requested intr ok to handle
  14380. 4 =0 free interrupt latch register
  14381. 3-0 reserved
  14382. SeeAlso: #P0710
  14383. Bitfields for MCGA (only) CRT character generator/sync polarity register:
  14384. Bit(s) Description (Table P0714)
  14385. 7 character generator active
  14386. 6 =1 load codepage during display
  14387. =0 load codepage during retrace
  14388. 5 codepage number (0,1)
  14389. 4 512 characters active
  14390. 3 reserved (0)
  14391. 2 enable hsync/vsync
  14392. 1 positive vsync polarity
  14393. 0 positive hsync polarity
  14394. Note: default 46h in all modes, except 04h in mode 11h)
  14395. SeeAlso: #P0710
  14396. --------V-P03D403D5--------------------------
  14397. PORT 03D4-03D5 - Chips&Technologies VIDEO CHIPS - EXTENDED CRT CONTROL REGISTERS
  14398. SeeAlso: PORT 03D4h"COLOR VIDEO",PORT 03D4h"Tseng"
  14399. 03D4 RW CRT control register index (see #P0715)
  14400. 03D5 RW CRT control register value
  14401. (Table P0715)
  14402. Values for Chips&Technologies CRT Controller register index:
  14403. 00h-18h same as EGA/VGA (see #P0708)
  14404. 22h same as VGA (see #P0708)
  14405. 24h same as VGA (see #P0708)
  14406. ---C&T 82C4xx---
  14407. D3h RW "RD3" 82C426: gray-level control 1 !!!chips\82c426.pdf p.16
  14408. D4h RW "RD4" 82C426: gray-level control 2
  14409. D5h RW "RD5" 82C426: general purpose
  14410. D6h RW "RD6" 82C426: sleep
  14411. D7h RW "RD7" 82C426: panel size
  14412. D8h RW "RD8" 82C426: panel configuration
  14413. D9h RW "RD9" AC control !!!chips\82c425.pdf p.27
  14414. DAh RW "RDA" threshold
  14415. DBh RW "RDB" shift parameter
  14416. DCh RW "RDC" horizontal sync width
  14417. DDh RW "RDD" vertical sync width / blink control
  14418. DEh RW "RDE" timing control
  14419. DFh RW "RDF" function control
  14420. SeeAlso: #P0654,#P0710,#P0756,#P0716
  14421. --------V-P03D403D5--------------------------
  14422. PORT 03D4-03D5 - Cirrus Logic VIDEO CHIPS - EXTENDED CRT CONTROL REGISTERS
  14423. SeeAlso: PORT 03D4h"COLOR VIDEO",PORT 03D4h"Tseng"
  14424. 03D4 RW CRT control register index (see #P0716)
  14425. 03D5 RW CRT control register value
  14426. (Table P0716)
  14427. Values for Cirrus Logic CRT Controller register index:
  14428. 00h-18h same as EGA/VGA (see #P0708)
  14429. ---Cirrus CL-GD7556---
  14430. 19h "CR19" Interlace End
  14431. 1Ah "CR1A" miscellaneous control
  14432. 1Bh "CR1B" extended display control
  14433. 1Ch "CR1C" horizontal total and sync
  14434. 1Dh "CR1D" color key compare type
  14435. 22h same as VGA (see #P0708)
  14436. 24h same as VGA (see #P0708)
  14437. 25h "CR25" revision
  14438. 26h "CR26" attribute controller index readback
  14439. 27h "CR27" device identification
  14440. 30h "CR30" TV-OUT control
  14441. 31h "CR31" Video Window horizontal upscaling coefficient
  14442. 32h "CR32" Video Window vertical upscaling coefficient
  14443. 33h "CR33" Video Window horizontal start (high)
  14444. 34h "CR34" Video Window horizontal start (low)
  14445. 35h "CR35" Video Window brightness
  14446. 36h "CR36" Video Window vertical position extension
  14447. 37h "CR37" Video Window vertical start
  14448. 38h "CR38" Video Window vertical height
  14449. ...
  14450. 42h "CR42" Video Window FIFO threshold / chroma-key mode
  14451. 50h "CR50" V-Port hardware configuration
  14452. ...
  14453. 5Fh "CR5F" V-Port capture window start address (low)
  14454. 80h "CR80" power management control
  14455. ...
  14456. 91h "CR91" shading map offset
  14457. A0h "CRA0" CRT horizontal 8-dot character clock
  14458. ...
  14459. BFh "CRBF" CRT vertical back porch
  14460. !!! details to be added
  14461. SeeAlso: #P0654,#P0756,#P0717
  14462. --------V-P03D403D5--------------------------
  14463. PORT 03D4-03D5 - S3 VIDEO CHIPS - EXTENDED CRT CONTROL REGISTERS
  14464. SeeAlso: PORT 03D4h"COLOR VIDEO",PORT 03D4h"Tseng"
  14465. 03D4 RW CRT control register index (see #P0717)
  14466. 03D5 RW CRT control register value
  14467. (Table P0717)
  14468. Values for S3, Inc. CRT Controller register index:
  14469. 00h-18h same as EGA/VGA (see #P0708)
  14470. 22h same as VGA (see #P0708)
  14471. 24h "CR24" attribute controller index/data status
  14472. 26h R- "CR24" (duplicate of 24h)
  14473. 2Dh R- "CR2D" new Chip ID (high) (same as high byte of PCI device ID)
  14474. 2Eh R- "CR2E" new chip ID (low) (same as low byte of PCI device ID)
  14475. 10h Trio32
  14476. 11h Trio64
  14477. 2Fh R- "CR2F" S3 7xx/866/x68: chipset revision
  14478. chip ID 8811h is Trio64/64V+; revision 4xh or 5xh is Trio64V+
  14479. 30h RW "CR30" chip ID/revision (see #P0719)
  14480. 31h RW "CR31" memory configuration (see #P0720)
  14481. 32h RW "CR32" backward compatibility 1 (see #P0721)
  14482. 33h RW "CR33" backward compatibility 2 (see #P0722)
  14483. 34h RW "CR34" backward compatibility 3 (see #P0723)
  14484. 35h RW "CR35" CRT register lock (see #P0724)
  14485. 36h R "CR36" Reset State read 1 (see #P0725)
  14486. 37h R "CR37" Reset State read 2 (see #P0726)
  14487. 38h RW "CR38" S3 Register lock 1
  14488. set reg 38h to 48h and reg 39h to A5h to unlock other S3 registers
  14489. 39h RW "CR39" S3 Register lock 2
  14490. 3Ah RW "CR3A" S3 Miscellaneous 1 (see #P0727)
  14491. bit 4: ???
  14492. 3Bh RW "CR3B" Data Transfer Execute position (see #P0728)
  14493. 3Ch RW "CR3C" Interlace Retrace start position (see also #P0730)
  14494. 40h RW "CR40" System Configuration (see #P0729)
  14495. 41h "CR41" BIOS Flag register (used by S3 BIOS)
  14496. 42h RW "CR42" mode control (see #P0730)
  14497. 43h RW "CR43" extended mode (see #P0731)
  14498. 45h RW "CR45" hardware graphics cursor mode (see #P0732)
  14499. 46h RW "CR46" hardware cursor origin X (hi), bits 2-0 only
  14500. 47h RW "CR47" hardware cursor origin X (lo)
  14501. testing that register 47h can be read and written once the S3 registers
  14502. are unlocked is used as an S3 installation check
  14503. 48h RW "CR48" hardware cursor origin Y (hi), bits 2-0 only
  14504. the cursor X/Y position is latched on writing the high byte of Y
  14505. 49h RW "CR49" hardware cursor origin Y (lo)
  14506. 4Ah RW "CR4A" hardware graphics cursor foreground stack
  14507. read register 45h, then write 2 or 3 color bytes (16/24-bit color)
  14508. to specify foreground color of hardware cursor
  14509. 4Bh RW "CR4B" hardware graphics cursor background stack
  14510. read register 45h, then write 2 or 3 color bytes (16/24-bit color)
  14511. to specify background color of hardware cursor
  14512. 4Ch RW "CR4C" hardware graphics cursor map start address (hi), bits 3-0 only
  14513. 4Dh RW "CR4D" hardware graphics cursor map start address (lo)
  14514. 4Eh RW "CR4E" hardware cursor pattern start X (bits 5-0 only)
  14515. 4Fh RW "CR4F" hardware cursor pattern start Y (bits 5-0 only)
  14516. 50h RW "CR50" S3 801+: Extended System Control 1 (see #P0733)
  14517. 51h RW "CR51" S3 801+: Extended System Control 2 (see #P0734)
  14518. 52h RW "CR52" S3 801+: Extended BIOS Flag 1
  14519. bits 7-6 are sync polarities (see #P0669) for Diamond cards
  14520. 53h RW "CR53" S3 801+: Extended Memory Control 1 (see #P0735)
  14521. 54h RW "CR54" S3 801+: Extended Memory Control 2 (see #P0736,#P0737)
  14522. 55h RW "CR55" S3 801+: Extended Video DAC Control (see #P0738)
  14523. 56h RW "CR56" S3 801+: External Sync Control 1 (see #P0739)
  14524. 57h RW "CR57" S3 801+: External Sync Control 2 (see #P0740)
  14525. 58h RW "CR58" S3 801+: Linear Address Window Control (see #P0741)
  14526. 59h RW "CR59" S3 801+: Linear Address Window Position (bits 31-24)
  14527. 5Ah RW "CR5A" S3 801+: Linear Address Window Position (bits 23-16)
  14528. Notes: the address is forced to be a multiple of the memory window
  14529. size (see #P0741) by ignoring the lowest bits
  14530. for Trio64 new memory-mapped I/O, the LAW must be on a 64M
  14531. boundary
  14532. 5Bh RW "CR5B" S3 801+: Extended BIOS Flag 2
  14533. 5Ch RW "CR5C" S3 801+: General Output Port (see #P0742)
  14534. 5Dh RW "CR5D" S3 801+: Extended Horizontal Overflow (see #P0743)
  14535. 5Eh RW "CR5E" S3 801+: Extended Vertical Overflow (see #P0744)
  14536. 5Fh RW "CR5F" S3 928/964: Bus Grant Termination Position
  14537. 60h RW "CR60" S3 864/964: extended memory control 3 (see #P0745)
  14538. 61h RW "CR61" S3 864/964/Trio: extended memory control 4 (see #P0746)
  14539. 62h RW "CR62" S3 864/964: extended memory control 5
  14540. 63h RW "CR63" S3 864/964: external sync delay adjustment (high) (see #P0747)
  14541. 64h RW "CR64" S3 864/964: genlocking adjustment
  14542. 65h RW "CR65" S3 864/964: extended miscellaneous control (see #P0748)
  14543. 66h RW "CR66" S3 864/964: extended miscellaneous control 1 (see #P0749)
  14544. 67h RW "CR67" S3 864/964: extended miscellaneous control 2 (see #P0750)
  14545. 67h RW "CR67" S3 Trio32/64: extended miscellaneous control 2 (see #P0751)
  14546. 68h RW "CR68" S3 864/964: configuration 3 (see #P0752)
  14547. 69h RW "CR69" S3 864/964: extended system control 3 (see #P0753)
  14548. 6Ah RW "CR6A" S3 864/964: extended system control 4
  14549. (bits 5-0 = offset of 64K bank)
  14550. 6Bh RW "CR6B" S3 864/964: extended BIOS flag 3
  14551. 6Ch RW "CR6C" S3 864/964: extended BIOS flag 4
  14552. 6Dh RW "CR6D" S3 864/964: extended miscellaneous control
  14553. 6Dh RW "CR6D" S3 Trio64V+: extended BIOS flag 5 (reserved for BIOS)
  14554. 6Eh RW "CR6E" S3 Trio64V+: extended BIOS flag 6 (reserved for BIOS)
  14555. 6Fh RW "CR6F" S3 Trio64V+: configuration 4 (see #P0755)
  14556. SeeAlso: #P0654,#P0710,#P0756,#P0716,#P0715
  14557. Bitfields for S3 "CR24" Attribute Index register:
  14558. Bit(s) Description (Table P0718)
  14559. 7 inverse of current state of internal address flip-flop
  14560. 6 reserved (0)
  14561. 5 video display is enabled (mirror of PORT 03C0h bit 5)
  14562. 4-0 current attribute contorller index (from PORT 03C0h)
  14563. SeeAlso: #P0708,#P0709,PORT 03C0h
  14564. (Table P0719)
  14565. Values for S3 chip ID/Revision register "CR30":
  14566. 81h 86c911
  14567. 82h 86c911A/924
  14568. 90h 86c928 (original)
  14569. ...
  14570. A0h 86c801/805 A-step or B-step
  14571. ...
  14572. B0h 86c928 PCI
  14573. C0h Vision864
  14574. C1h Vision864P
  14575. D0h Vision964
  14576. D1h Vision964P
  14577. Exh Trio32/64, 86c866, 86c868, 86c968; actual ID and revision stored in
  14578. PORT 03B5h registers 2Dh, 2Eh, and 2Fh
  14579. SeeAlso: #P0720
  14580. Bitfields for S3 "CR31" memory configuration register:
  14581. Bit(s) Description (Table P0720)
  14582. 7 (except 864/964) enable BIOS ROM address space C6800h-C7FFFh
  14583. (Trio64V+) reserved
  14584. 6 enable page-mode memory access for text-mode font access
  14585. 5-4 display start address, bits 17&16. See also registers 51h and 69h
  14586. 3 video memory above 256K accessible
  14587. 2 VGA 16-bit memory bus (clear for 8-bit memory bus)
  14588. 1 two-page screen image (enables 2048-pixel wide screen)
  14589. 0 enable base-address offset (turn on bank-switched operation)
  14590. SeeAlso: #P0708,#P0719,#P0721
  14591. Bitfields for S3 "CR32" Backwards Compatibility 1 register:
  14592. Bit(s) Description (Table P0721)
  14593. 7 (928,964) tri-state serial output pins SC, SOE0, and SXNR
  14594. 6 fix VGA screen page using display start address bits 16&17 (see #P0720)
  14595. (Trio64V+) force wrap on 256K boundary even when display start address
  14596. changed
  14597. 5 ???
  14598. 4 enable hardware interrupts
  14599. 3 backward-compatible modes (set for MDA/CGA/EGA/HGC)
  14600. 2 force full character clock for horizontal timing (CGA/HGC emulation),
  14601. rather than 1/2 dot clock rate
  14602. 1-0 character clock period
  14603. 00 IBM-compatible, 8 or 9 dots
  14604. 01 7 dots
  14605. 10 9 dits
  14606. Note: on the Trio64V+, bits 7, 5, and 3-0 are reserved
  14607. SeeAlso: #P0720,#P0722,#M0076
  14608. Bitfields for S3 "CR33" Backwards Compatibility 2 register:
  14609. Bit(s) Description (Table P0722)
  14610. 7 override CGA "enable video" at PORT 03D8h bit 3
  14611. 6 lock palette/overscan registers
  14612. 5 blank signal does not include border area, is same as display enable
  14613. 4 disable writes to RamDAC
  14614. 3 VCLK is internal DCLK rather than inverted DCLK/2 or external VCLK
  14615. 2 reserved (Trio32/64)
  14616. 1 disable VDE protection (PORT 03D4h register 11h bit 7 will not act
  14617. on PORT 03D4h register 7h bits 1 and 6)
  14618. 0 reserved (Trio32/64)
  14619. Note: on the Trio64V+, bits 7, 2, and 0 are reserved
  14620. SeeAlso: #P0708,#P0721,#P0723
  14621. Bitfields for S3 "CR34" Backwards Compatibility 3 register:
  14622. Bit(s) Description (Table P0723)
  14623. 7-5 (Trio32/64/64V+) reserved
  14624. 7 lock PORT 03C2h bits 2,3
  14625. 5 lock SR1 bit 5
  14626. 4 enable Start Display FIFO Fetch register (CR3B) (see #398)
  14627. 3 (Trio32/64/64V+) reserved
  14628. 2 PCI retries not handled during DAC cycles (requires bit 0 clear)
  14629. 1 do not handle PCI master aborts during DAC cycles (requires bit 0 clear)
  14630. 0 disable PCI master aborts/retries during DAC cycles
  14631. SeeAlso: #P0722,#P0724
  14632. Bitfields for S3 "CR35" Register Lock register:
  14633. Bit(s) Description (Table P0724)
  14634. 7-6 (Trio32/Trio64) reserved
  14635. 5 lock horizontal timing registers
  14636. 4 lock vertical timing registers
  14637. 3-0 CPU base address (in 64K units), bits 17-14
  14638. SeeAlso: #P0708,#P0723,#P0725
  14639. Bitfields for S3 "CR36" Configuration 1 register:
  14640. Bit(s) Description (Table P0725)
  14641. 7-5 video memory size
  14642. 111 less than 1M
  14643. 110 one meg
  14644. 100 two megs
  14645. 010 three megs
  14646. 000 four megs
  14647. 101 six megs
  14648. 011 eight megs
  14649. 4 (Trio32/64, VL-Bus only) enable video BIOS accesses
  14650. 3-2 (Trio32/64) memory type
  14651. 00 reserved
  14652. 01 reserved
  14653. 10 EDO
  14654. 11 fast page mode
  14655. 1-0 (Trio32/64) system bus type
  14656. 00 reserved
  14657. 01 VESA local bus
  14658. 10 PCI
  14659. 11 reserved
  14660. Note: the default value of this register is latched from external pins at
  14661. power-up; bits 1-0 are read-only
  14662. SeeAlso: #P0708,#P0724,#P0726
  14663. Bitfields for S3 "CR37" Configuration 2 register:
  14664. Bit(s) Description (Table P0726)
  14665. 7-5 monitor type
  14666. 7-5 (Trio64V+) reserved
  14667. 4 (VL-Bus) enable RAMDAC write snooping
  14668. 3 use internal DCLK/MCLK (clear this bit for testing only)
  14669. 2 (VL-Bus) video BIOS ROM size (=0 64K, =1 32K)
  14670. 1 test mode select (=0 tri-state all outputs, =1 normal operation)
  14671. 1 (Trio64V+) reserved
  14672. 0 (VL-Bus) enable Trio chip (if 0, disabled except for video BIOS access)
  14673. Notes: the default value of this register is latched from external pins at
  14674. power-up
  14675. the description of this register is based on the Trio32/Trio64/Trio64V+
  14676. documentation and may vary somewhat for other S3 chips
  14677. SeeAlso: #P0708,#P0725
  14678. Bitfields for S3 "CR3A" Miscellaneous 1 register:
  14679. Bit(s) Description (Table P0727)
  14680. 7 disable PCI burst read cycles
  14681. (must set CR66 bit 7 before setting this bit)
  14682. 6 reserved
  14683. 5 enable high-speed text font writes (only required for DCLK > 40MHz)
  14684. 4 enable >= 8 bpp color enhanced modes
  14685. 3 enable top-of-memory access (simultaneous VGA text and enhanced mode)
  14686. 2 enable alternate refresh count control (bits 1-0)
  14687. when enabled, bits 1-0 override CR11 bit 6
  14688. 1-0 alternate refresh count: number of refresh cycles per scan line
  14689. Note: the description of this register is based on the Trio32/Trio64/Trio64V+
  14690. documentation and may vary somewhat for other S3 chips
  14691. SeeAlso: #P0708
  14692. Bitfields for S3 "CR3B" Start Display FIFO Register:
  14693. Bit(s) Description (Table P0728)
  14694. 7-0 bits 7-0 of time in characters clocks from start of active display
  14695. until FIFO data fetching restarts after start of horizontal blanking
  14696. (bit 8 is in CR5D bit 6)
  14697. Note: the value for this register is typically CR0 less 5, and helps ensure
  14698. adequate time for RAM refresh, etc. taht require control of display
  14699. memory
  14700. SeeAlso: #P0708
  14701. Bitfields for S3 "CR40" System Configuration register:
  14702. Bit(s) Description (Table P0729)
  14703. 7-6 reserved (0)
  14704. 5 reserved ("WDL_DELAY") (1)
  14705. 4 (VL-Bus) Ready Control
  14706. =0 zero wait-states from -SADS to -SRDY
  14707. =1 minimum one wait state (controlled by CR58 bit 3)
  14708. 3-1 reserved (0)
  14709. 0 enable enhanced (8514/A superset) register access at PORT x2E8h
  14710. SeeAlso: #P0708
  14711. Bitfields for S3 "CR42" Mode Control register:
  14712. Bit(s) Description (Table P0730)
  14713. 7-6 reserved (0)
  14714. 5 interlaced video
  14715. 4-0 reserved
  14716. Note: bit 5 also enables CR3C
  14717. SeeAlso: #P0708,#P0731
  14718. Bitfields for S3 "CR43" Extended Mode register:
  14719. Bit(s) Description (Table P0731)
  14720. 7 double horizontal CRT parameters (CRTC registers 00h, etc.)
  14721. 6-3 reserved (0)
  14722. 3 (Trio64V+) ??? used by BIOS, officially reserved
  14723. 2 logical screen width (CR13), bit 8
  14724. 1-0 reserved (0)
  14725. Note: bit 2 is disabled unless CR51 bits 5-4=00
  14726. SeeAlso: #P0708,#P0730
  14727. Bitfields for S3 "CR45" Hardware Graphics Cursor Mode register:
  14728. Bit(s) Description (Table P0732)
  14729. 7-5 reserved (0)
  14730. 4 enable Hardware Cursor Right Storage (last 256 bytes of 1K line, or
  14731. last 512 bytes of 2K line)
  14732. 3-1 reserved (0)
  14733. 0 enable hardware graphics cursor in Enhanced (8514/A) mode
  14734. SeeAlso: #P0708
  14735. Bitfields for S3 "CR50" Extended System Control 1 register:
  14736. Bit(s) Description (Table P0733)
  14737. 7-6 Graphics Engine screen width
  14738. (note: bit 0 below is MSB for the following)
  14739. 000 = 1024 (2048 if CR31 bit 1 set)
  14740. 001 = 640
  14741. 010 = 800 (1600x1200x4 if PORT 4AE8h bit 2 set)
  14742. 011 = 1280
  14743. 100 = 1152
  14744. 101 reserved
  14745. 110 = 1600
  14746. 111 reserved
  14747. 5-4 pixel length for command execution through Graphics Engine (8514/A)
  14748. 00 one byte (4 or 8 bits/pixel)
  14749. 01 two bytes (16 bpp)
  14750. 10 reserved
  14751. 11 four bytes (32 bpp)
  14752. 3 reserved (0)
  14753. 2 enable -BREQ/-BGNT functions (reserved on Trio64V+)
  14754. 1 reserved (0)
  14755. 0 bit 2 of Graphics Engine screen width (refer to bits 7-6 above)
  14756. SeeAlso: #P0708,#P0735,#P0734
  14757. Bitfields for S3 "CR51" Extended System Control 2 register:
  14758. Bit(s) Description (Table P0734)
  14759. 7-6 reserved (0)
  14760. 5-4 logical screen width, bits 9-8
  14761. 3-2 CPU base address, bits 19-18
  14762. 1-0 display start address, bits 19-18
  14763. Notes: if the upper four bits of the display start address have been set via
  14764. CR69 bits 3-0, then bits 1-0 and CR31 bits 5-4 are ignored
  14765. if the upper 6 base address bits have been set via CR6A bits 5-0, then
  14766. bits 3-2 and CR35 bits 3-0 are ignored
  14767. SeeAlso: #P0708,#P0733
  14768. Bitfields for S3 "CR53" Extended Memory Control 1 register:
  14769. Bit(s) Description (Table P0735)
  14770. 7 reserved
  14771. 6 (Trio32/64/64V+) swap nybbles in each byte of video memory read or
  14772. written
  14773. 5 (801/805) memory interleaving
  14774. (928) pixel multiplexing
  14775. (Trio64V+) enable memory-mapped I/O at B8000h-BFFFFh instead of
  14776. A0000h-AFFFFh (only takes effect if bits 4-3=10)
  14777. 4 enable memory-mapped I/O (Trio32, Trio64 and Trio64V+)
  14778. 3 enable new memory-mapped I/O (Trio64V+)
  14779. 2-1 (Trio64V+) byte swapping for linear addressing
  14780. 00 none (default)
  14781. 01 swap bytes of word
  14782. 10 swap all bytes of doublewords
  14783. 11 reserved
  14784. (used for big-endian addressing)
  14785. 0 (Trio32/64) enable write per bit
  14786. (Trio64V+) reserved
  14787. SeeAlso: #P0708,#P0736
  14788. Bitfields for S3 Trio32/64 "CR54" Extended Memory Control 2 register:
  14789. Bit(s) Description (Table P0736)
  14790. 7-3 "M" number of 8-byte memory cycles not dedicated to filling display
  14791. FIFO (less one)
  14792. 2-0 reserved (0)
  14793. SeeAlso: #P0737,#P0708,#P0735
  14794. Bitfields for S3 Trio64V+ "CR54" Extended Memory Control 2 register:
  14795. Bit(s) Description (Table P0737)
  14796. 2,7-3 "M" maximum number of 8-byte memory cycles before LPB/CPU/Graphics
  14797. Engine must yield the memory bus
  14798. 1-0 big-endian byte-swapping (except for linear addressing/image writes)
  14799. 00 none (default)
  14800. 01 swap bytes within a word
  14801. 10 swap all bytes within a doubleword
  14802. 11 swap according to bus' byte-enable lines
  14803. BE#[3:0]=0000 swap all bytes
  14804. BE#[3:0]=0011 or 1100 swap bytes within selected word
  14805. else no swapping
  14806. SeeAlso: #P0708,#P0736
  14807. Bitfields for S3 "CR55" Extended RAMDAC Control register:
  14808. Bit(s) Description (Table P0738)
  14809. 7 tri-state VCLK output
  14810. 6-5 reserved (0)
  14811. 4 hardware cursor mode
  14812. =0 MS-Windows
  14813. =1 X11
  14814. 3 reserved (0)
  14815. 2 enable General Input Port read (at PORT 03C8h)
  14816. 1-0 reserved (0)
  14817. SeeAlso: #P0708
  14818. Bitfields for S3 "CR56" External Sync Control 1 register:
  14819. Bit(s) Description (Table P0739)
  14820. 7-5 reserved (0)
  14821. 4 preset frame select
  14822. =0 start with odd frame after V-counter reset
  14823. =1 start with even frame
  14824. 3 reset only vertical counter on falling edge of VSYNC input when
  14825. genlocking
  14826. 2 tri-state VSYNC output
  14827. 1 tri-state HSYNC output
  14828. 0 enable VSYNC input for genlocking
  14829. Note: bits 4-3 are reserved on the Trio64V+
  14830. SeeAlso: #P0708,#P0740
  14831. Bitfields for S3 "CR57" External Sync Control 2 register:
  14832. Bit(s) Description (Table P0740)
  14833. 7-0 delay in scan lines from falling edge of VSYNC to reset of V-counter
  14834. Note: this register must NOT be 00h when genlocking is enabled (CR56 bit 0)
  14835. SeeAlso: #P0708,#P0739
  14836. Bitfields for S3 "CR58" Linear Addressing Control register:
  14837. Bit(s) Description (Table P0741)
  14838. 7 RAS Pre-Charge time adjust
  14839. =0 CR68 bit 3 defines pre-charge time
  14840. =1 decrease pre-charge time by 0.5 MCLKs, increase RAS time by 0.5 MCLKs
  14841. 6-5 reserved
  14842. 4 enable linear addressing (see also #P1022)
  14843. 3 (VL-Bus) addresses latched in T1 cycle, instead of delaying one clock
  14844. until T2 cycle; only in effect when CR40 bit 4 is set
  14845. 2 reserved
  14846. 1-0 linear address window size
  14847. 00 = 64K (not available when new MMIO enabled)
  14848. 01 = 1M
  14849. 10 = 2M
  14850. 11 = 4M (Trio64/64V+, not Trio32)
  14851. Note: this description is based on the Trio32/Trio64 documenation; the
  14852. bits may vary slightly for other S3 chips
  14853. SeeAlso: #P0723
  14854. Bitfields for S3 "CR5C" General Output Port:
  14855. Bit(s) Description (Table P0742)
  14856. 7-0 system-specific
  14857. ---Diamond---
  14858. 0 ???
  14859. 1 ???
  14860. ---STB Pegasus---
  14861. 7 map video memory with bits 31-26 = 011111
  14862. SeeAlso: #P0708
  14863. Bitfields for S3 "CR5D" Extended Horizontal Overflow register:
  14864. Bit(s) Description (Table P0743)
  14865. 7 bit 8 of Bus-Grant Terminate Position (CR5F)
  14866. (Trio64V+) reserved
  14867. 6 bit 8 of Start FIFO Fetch (CR3B)
  14868. 5 extend horizontal sync pulse by 32 DCLKs
  14869. 4 bit 8 of Start Horizontal Sync Position (CR4)
  14870. 3 extend horizontal blank pulse by 64 DCLKs
  14871. 2 bit 8 of Start Horizontal Blank (CR2)
  14872. 1 bit 8 of Horizontal Display End (CR1)
  14873. 0 bit 8 of Horizontal Total (CR0)
  14874. SeeAlso: #P0708,#P0744
  14875. Bitfields for S3 "CR5E" Extended Vertical Overflow register:
  14876. Bit(s) Description (Table P0744)
  14877. 7 reserved (0)
  14878. 6 line compare position (CR18), bit 10
  14879. 5 reserved (0)
  14880. 4 vertical retrace start (CR10), bit 10
  14881. 3 reserved (0)
  14882. 2 start of vertical blank (CR15), bit 10
  14883. 1 vertical display end (CR12), bit 10
  14884. 0 vertical total (CR6), bit 10
  14885. SeeAlso: #P0708,#P0743
  14886. Bitfields for S3 Trio32/64 "CR60" Extended Memory Control 3 register:
  14887. Bit(s) Description (Table P0745)
  14888. 7-0 "N" maximum number of 4-byte (1M video memory) or 8-byte (2M/4M) units
  14889. written to display FIFO in an uninterruptible burst
  14890. SeeAlso: #P0708,#P0746
  14891. Bitfields for S3 Trio64V+ "CR61" Extended Memory Control 4 register:
  14892. Bit(s) Description (Table P0746)
  14893. 7 reserved
  14894. 6-5 byte-swapping for image writes
  14895. 00 none (default)
  14896. 01 swap bytes within each word
  14897. 10 swap all bytes within a doubleword
  14898. 11 reserved
  14899. 4-0 reserved
  14900. SeeAlso: #P0708,#P0745
  14901. Bitfields for S3 Trio32/64 "CR63" External Sync Control 3 register:
  14902. Bit(s) Description (Table P0747)
  14903. 7-4 character clock reset delay
  14904. 3-0 HSYNC reset adjustment, in character clocks
  14905. Notes: these two values are used to align the external and internally-generated
  14906. video during genlocking
  14907. this register is not documented for the Trio64V+, and may not exist
  14908. SeeAlso: #P0708
  14909. Bitfields for S3 Trio32/64/64V+ "CR65" Extended Miscellaneous Control register:
  14910. Bit(s) Description (Table P0748)
  14911. 7-5 reserved (0)
  14912. 4-3 (Trio32/64V+) delay -BLANK by N DCLKs
  14913. a two-DCLK delay is required for color mode 12
  14914. 2 video subsystem setup address
  14915. (Trio64V+) reserved
  14916. =0 PORT 46E8h
  14917. =1 PORT 03C3h
  14918. 1-0 reserved (0)
  14919. SeeAlso: #P0708,#P0749
  14920. Bitfields for S3 Trio32/64/64V+ "CR66" Extended Miscellaneous Control 1 reg:
  14921. Bit(s) Description (Table P0749)
  14922. 7 enable PCI bus disconnect on misaligned burst memory accesses
  14923. 6 tri-state pixel address bus
  14924. ---Trio32/64---
  14925. 5-0 reserved (0)
  14926. ---Trio64V+ ---
  14927. 5 ??? (officially reservd, but set by BIOS)
  14928. 4 reserved
  14929. 3 generate PCI bus disconnect when trying to write to a full FIFO or read
  14930. from an empty FIFO
  14931. (bit 7 must also be set to enable this feature)
  14932. 2 reserved
  14933. 1 software reset graphics engine
  14934. 0 enable enhanced functions (this is a mirror of
  14935. PORT 4AE8h bit 0)
  14936. SeeAlso: #P0708,#P0748,PORT 4AE8h
  14937. Bitfields for S3 864/964 "CR67" Extended Miscellaneous Control 2 register:
  14938. Bit(s) Description (Table P0750)
  14939. 7-4 color mode???
  14940. (values of 0000/0010/0101/0111 indicate a 16-bit pixel port)
  14941. 3-2 ???
  14942. SeeAlso: #P0708,#P0723,#P0751
  14943. Bitfields for S3 Trio32/64/64V+ "CR67" Extended Miscellaneous Control 2 reg:
  14944. Bit(s) Description (Table P0751)
  14945. 7-4 color mode (see #P0688)
  14946. 3-2 (Trio32/Trio64) reserved (0)
  14947. 3-2 (Trio64V+) streams mode
  14948. 00 disable Streams Processor
  14949. 01 overlay secondary stream on VGA-mode background
  14950. 10 reserved
  14951. 11 full Streams Processor operation
  14952. 1 reserved (0)
  14953. 0 VCLK phase (=0 VCLK is inverted DCLK; =1 VCLK in phase with DCLK)
  14954. Note: the streams mode should only be changed during vertical sync
  14955. (PORT 03DAh bit 3)
  14956. SeeAlso: #P0708,#P0750,#P0687
  14957. Bitfields for S3 Trio32/64/64V+ "CR68" Configuration 3 register:
  14958. Bit(s) Description (Table P0752)
  14959. 7 (Trio32/64 VL-Bus) Upper Address Decode
  14960. =0 decode all 32 bits of system address bus
  14961. =1 SAUP input used to decode upper address lines
  14962. 7 (Trio64V+) memory data bus size
  14963. =0 32 bits
  14964. =1 64 bits (if >= 2M of memory)
  14965. 6-4 monitor information (used by S3 bios)
  14966. 3 RAS precharge timing (0 = 3.5 MCLKs, 1 = 2.5 MCLKs)
  14967. 2 RAS low timing (0 = 4.5 MCLKs, 1 = 3.5 MCLKs)
  14968. 1-0 -CAS and -OE stretch, -WE delay
  14969. 00 = 6.5ns stretch, 2 units delay
  14970. 01 = 5ns stretch, 1 unit delay
  14971. 10 = 3.5ns stretch, no delay
  14972. 11 = no stretch, no delay
  14973. Note: the default value of this register is latched from external pins at
  14974. power-up
  14975. SeeAlso: #P0708
  14976. Bitfields for S3 Trio32/Trio64 "CR69" Extended System Control 3 register:
  14977. Bit(s) Description (Table P0753)
  14978. 7-4 reserved (0)
  14979. 3-0 display start address, bits 19-16
  14980. SeeAlso: #P0708,#P0754
  14981. Bitfields for S3 Trio32/Trio64 "CR6A" Extended System Control 4 register:
  14982. Bit(s) Description (Table P0754)
  14983. 7-6 reserved
  14984. 5-0 bits 19-14 of CPU base address
  14985. Note: CR31 bit 0 must be set to enable this register
  14986. SeeAlso: #P0708,#P0753
  14987. Bitfields for S3 Trio64V+ "CR6F" Configuration 4 register:
  14988. Bit(s) Description (Table P0755)
  14989. 7-5 reserved
  14990. 4-3 WE# delay (on both rising and falling edges)
  14991. 00 three units
  14992. 01 two units
  14993. 10 one unit
  14994. 11 no delay
  14995. 2 disable I/O PORT mirror of serial port (MMIO FF20h)
  14996. =0 allow access via either MMIO FF20h or port selected by bit 1
  14997. 1 serial port address select (only has effect if bit 2 clear)
  14998. =0 mirror MMIO FF20h at PORT 00E8h
  14999. =1 mirror MMIO FF20h at PORT 00E2h
  15000. 0 configure for Trio64-compatible mode instead of LPB mode
  15001. !!! p.19-16
  15002. SeeAlso: #P0708,MEM A000h:FF00h"S3"
  15003. --------V-P03D403D5--------------------------
  15004. PORT 03D4-03D5 - Tseng Labs VIDEO CHIPS - EXTENDED CRT CONTROL REGISTERS
  15005. SeeAlso: PORT 03D4h"COLOR VIDEO",PORT 03D4h"S3",PORT 03D4h"Cirrus"
  15006. 03D4 RW CRT control register index (see #P0756)
  15007. 03D5 RW CRT control register value
  15008. (Table P0756)
  15009. Values for Tseng Labs ET3000/ET4000 CRT Controller register index:
  15010. 00h-18h same as EGA/VGA (see #P0708)
  15011. ---ET3000 only---
  15012. 1Bh x-zoom start register
  15013. The existence of this register is often used to decide between ET3000
  15014. and ET4000, as the ET4000 does not offer hardware-zoom features.
  15015. 1Ch x-zoom end register
  15016. 1Dh y-zoom start register low
  15017. 1Eh y-zoom end register low
  15018. 1Fh y-zoom start & end high register
  15019. 20h zoom start address register low
  15020. 21h zoom start address register medium
  15021. 23h extended start address (see register 33h)
  15022. 24h compatibility register (see register 34h)
  15023. 25h overflow high register (see registers 35h, 07h)
  15024. ---ET4000---
  15025. 32h RAS/CAS configuration ('key' protected) (see #P0757)
  15026. 33h extended start address
  15027. This register is often used to decide between ET4000
  15028. and ET3000, when bit3-0 can be reread after write.
  15029. bit7-4 : reserved
  15030. bit3-2 : cursor address bit 17-16
  15031. bit1-0 : linear start address bits 17-16
  15032. 34h 6845 compatibility control register ('key' protected)
  15033. (see #P0758)
  15034. 35h overflow high register (protected by 11h, bit7) (see #P0759)
  15035. 36h video system configuration 1 ('key' protected) (see #P0760)
  15036. 37h video system configuration 2 ('key' protected) (see #P0761)
  15037. SeeAlso: #P0654,#P0716,#P0717
  15038. Bitfields for ET4000 RAS/CAS configuration register:
  15039. Bit(s) Description (Table P0757)
  15040. 7 static column memory
  15041. ET4000/W32i: interleave mode
  15042. 6 RAL RAS&CAS column setup time
  15043. 5 RCD RAS & CAS time
  15044. 4-3 RSP, RAS pre-charge time
  15045. 2 CPS, CAS pre-charge time
  15046. 1-0 CSW, CAS low pulse width
  15047. SeeAlso: #P0708,#P0758
  15048. Bitfields for ET4000 compatibility control register:
  15049. Bit(s) Description (Table P0758)
  15050. 7 6845 compatibility enabled
  15051. 6 ENBA enable double scan/underline in AT&T mode
  15052. 5 ENXL enable translation ROM on writing
  15053. 4 ENXR enable translation ROM on reading
  15054. 3 ENVS VSE register port address
  15055. 2 TRIS tristate ET4000 output pins
  15056. 1 CS2 MCLCK clock select 2
  15057. 0 EMCK enable translation of CS0 bit
  15058. SeeAlso: #P0708,#P0757,#P0759
  15059. Bitfields for ET4000 overflow high register:
  15060. Bit(s) Description (Table P0759)
  15061. 7 vertical interlace mode
  15062. 6 alternate RMW control
  15063. 5 external sync reset (gen-lock) the line/chr counter
  15064. 4 line compare bit10
  15065. 3 vertical sync start bit10
  15066. 2 vertical display end bit10
  15067. 1 vertical total bit10
  15068. 0 vertical blank start bit10
  15069. SeeAlso: #P0708,#P0758,#P0760
  15070. Bitfields for ET4000 video system configuration 1 register:
  15071. Bit(s) Description (Table P0760)
  15072. 7 enable 16bit I/O read/write
  15073. 6 enable 16bit display memory read/write
  15074. 5 addressing mode (0=IBM, 1=TLI)
  15075. 4 0=segment / 1=linear system configuration
  15076. 3 font width control (1=up to 16bit, 0=8bit)
  15077. 2-0 refresh count per line-1
  15078. SeeAlso: #P0708,#P0759,#P0761
  15079. Bitfields for ET4000 video system configuration 2 register:
  15080. Bit(s) Description (Table P0761)
  15081. 7 DRAM display memory type (1=VRAM, 0=DRAM)
  15082. 6 test (1=TLI interal test mode)
  15083. 5 priority threshold control (0=more mem BW)
  15084. 4 disable block read-ahead
  15085. 3 display memory data depth
  15086. 2 bus read data latch control
  15087. 1-0 display memory data bus width
  15088. SeeAlso: #P0708,#P0760
  15089. ----------P03D603D7--------------------------
  15090. PORT 03D6-03D7 - CGA (Color Graphics Adapter) - MIRRORS OF 03D4/03D5
  15091. 03D6 -W same as 03D4
  15092. (under OS/2, reads return 0 if full-screen DOS session,
  15093. nonzero if windowed DOS session)
  15094. 03D7 RW same as 03D5
  15095. ----------P03D603D7--------------------------
  15096. PORT 03D6-03D7 - Chips&Technologies VGA - EXTENSION REGISTERS
  15097. 03D6 -W extension register index (see #P0762,#P0763)
  15098. 03D7 RW extension register data
  15099. (Table P0762)
  15100. Values for Chips&Technologies 64200 extension register index:
  15101. 00h "XR00" chip version (see #P0764)
  15102. 01h "XR01" configuration (see #P0765)
  15103. 02h "XR02" CPU interface control (see #P0767)
  15104. 03h "XR03" master control (see #P0768)
  15105. 04h "XR04" memory control (see #P0770)
  15106. 05h "XR05" clock control (see #P0771)
  15107. 06h "XR06" color palette control / DRAM interface
  15108. 07h "XR07" reserved
  15109. 08h "XR08" general purpose output select B
  15110. 09h "XR09" general purpose output select A
  15111. 0Ah "XR0A" cursor address top
  15112. 0Bh "XR0B" CPU paging (see #P0777)
  15113. 0Ch "XR0C" start address top (see #P0778)
  15114. 0Dh "XR0D" auxiliary offset (see #P0780)
  15115. 0Eh "XR0E" text mode control (see #P0781)
  15116. 0Fh "XR0F" configuration register 2
  15117. 10h "XR10" single/low map register (see #P0782)
  15118. 11h "XR11" high map register (see #P0783)
  15119. 14h "XR14" emulation mode (see #P0784)
  15120. 15h "XR15" write protect (see #P0785)
  15121. 16h "XR16" trap enable
  15122. 17h "XR17" trap status
  15123. 18h "XR18" alternate horizontal display end
  15124. 19h "XR19" alternate horizontal sync start / half-line
  15125. 1Ah "XR1A" alternate horizontal sync end (see #P0789)
  15126. 1Bh "XR1B" alternate horizontal total
  15127. 1Ch "XR1C" alternate horizontal blank start / horizontal panel size
  15128. 1Dh "XR1D" alternate horizontal blank end (see #P0790)
  15129. 1Eh "XR1E" alternate offset
  15130. 1Fh "XR1F" virtual EGA switch (see #P0791)
  15131. 20h "XR20" 453 Interface ID
  15132. 21h "XR21" Sliding Hold A
  15133. 22h "XR22" Sliding Hold B
  15134. 23h "XR23" SHC / WBM Control
  15135. 24h "XR24" Flat-Panel Alternate Max Scanline / SHD / WBM Pattern
  15136. 25h "XR25" Flat-Panel "AltGrHVirtPanelSize" / 453 Pin Definition
  15137. 26h "XR26" 453 Configuration
  15138. 27h "XR27" reserved
  15139. 28h "XR28" video interface (see #P0792)
  15140. 29h "XR29" function control
  15141. 2Ah "XR2A" frame interrupt count
  15142. 2Bh "XR2B" default video color (to be displayed when screen blanked)
  15143. 2Ch "XR2C" Flat-Panel VSync (FLM) Delay / force H high
  15144. 2Dh "XR2D" Flat-Panel HSync (LP) delay / force H low
  15145. 2Eh "XR2E" Flat-Panel HSync (LP) delay / force V high
  15146. 2Fh "XR2F" Flat-Panel HSync (LP) width / force V low
  15147. 30h "XR30" graphics cursor start address (high)
  15148. 31h "XR31" graphics cursor start address (low)
  15149. 32h "XR32" graphics cursor end address
  15150. 33h "XR33" graphics cursor X (high)
  15151. 34h "XR34" graphics cursor X (low)
  15152. 35h "XR35" graphics cursor Y (high)
  15153. 36h "XR36" graphics cursor Y (low)
  15154. 37h "XR37" graphics cursor mode
  15155. 38h "XR38" graphics cursor mask
  15156. 39h "XR39" graphics cursor color 0
  15157. 3Ah "XR3A" graphics cursor color 1
  15158. 3Bh "XR3B" reserved
  15159. 3Ch "XR3C" serial / row count (see #P0799)
  15160. 3Dh "XR3D" multiplexor mode (see #P0801)
  15161. 41h "XR41" virtual EGA switch register (82C453)
  15162. 44h "XR44" software flag register 1
  15163. 45h "XR45" software flag register 2 / foreground color
  15164. 50h "XR50" panel format
  15165. 51h "XR51" display type
  15166. 52h "XR52" power-down control / panel size
  15167. 53h "XR53" line graphics override
  15168. 54h "XR54" flat-panel interface / alternate miscellaneous output
  15169. 55h "XR55" horizontal compensation / text 350_A compensation
  15170. 56h "XR56" horizontal centering / text 350_B compensation
  15171. 57h "XR57" vertical compensation / text 400 compensation
  15172. 58h "XR58" vertical centering / graphics 350 compensation
  15173. 59h "XR59" vertical line insertion / graphics 400 compensation
  15174. 5Ah "XR5A" vertical line replication / FP vertical display start 400
  15175. 5Bh "XR5B" flat-panel vertical display end 400
  15176. 5Ch "XR5C" weight control clock A
  15177. 5Dh "XR5D" weight control clock B
  15178. 5Eh "XR5E" ACDCLK control
  15179. 5Fh "XR5F" power-down mode refresh
  15180. 60h "XR60" blink rate control
  15181. 61h "XR61" SmartMap(tm) control
  15182. 62h "XR62" SmartMap(tm) shift parameter
  15183. 63h "XR63" SmartMap(tm) color mapping control
  15184. 64h "XR64" flat-panel alternate vertical total
  15185. 65h "XR65" flat-panel alternate overflow
  15186. 66h "XR66" flat-panel alternate vertical sync start
  15187. 67h "XR67" flat-panel alternate vertical sync end
  15188. 68h "XR68" flat-panel vertical panel size / alternate vertical DE end
  15189. 69h "XR69" flat-panel vertical display start 350
  15190. 6Ah "XR6A" flat-panel vertical display end 350
  15191. 6Bh "XR6B" flat-panel vertical overflow 2
  15192. 6Ch "XR6C" weight control clock C
  15193. 6Dh "XR6D" FRC control
  15194. 6Eh "XR6E" polynomial FRC control
  15195. 6Fh "XR6F" frame buffer control
  15196. 70h "XR70" setup/disable control (see #P0807)
  15197. 71h-7Ch reserved
  15198. 7Dh "XR7D" flat-panel compensation diagnostic
  15199. 7Eh "XR7E" CGA/Hercules color selection (see #P0815)
  15200. 7Fh "XR7F" diagnostics (see #P0816)
  15201. !!! chips\64200.pdf p.28, p.72
  15202. Note: not all C&T chips support all of the above registers; see the tables
  15203. for the individual registers for a list of supporting chipsets
  15204. SeeAlso: #P0763
  15205. (Table P0763)
  15206. Values for Chips&Technologies 64310 extension register index:
  15207. 00h "XR00" chip version (see #P0764)
  15208. 01h "XR01" configuration (see #P0766)
  15209. 02h "XR02" CPU interface control (see #P0767)
  15210. 03h "XR03" CPU interface control 2 (see #P0769)
  15211. 04h "XR04" memory control (see #P0770)
  15212. 05h "XR05" memory control 2 (see #P0772)
  15213. 06h "XR06" color palette control / DRAM interface (see #P0773)
  15214. 07h "XR07" DRxx I/O base ???
  15215. 08h "XR08" linear frame buffer base address low register (see #P0774)
  15216. 09h "XR09" linear frame buffer base address high register (see #P0775)
  15217. 0Ah "XR0A" XRAM mode register (see #P0776)
  15218. 0Bh "XR0B" CPU paging (see #P0777)
  15219. 0Ch "XR0C" start address top (see #P0779)
  15220. 0Dh "XR0D" auxiliary offset (see #P0780)
  15221. 0Eh "XR0E" text mode control (see #P0781)
  15222. 0Fh "XR0F" software flag register 0 (reserved for BIOS/driver use)
  15223. 10h "XR10" single/low map register (see #P0782)
  15224. 11h "XR11" high map register (see #P0783)
  15225. 12h-13h reserved
  15226. 14h "XR14" emulation mode (see #P0784)
  15227. 15h "XR15" write protect (see #P0785)
  15228. 16h "XR16" vertical overflow register (see #P0786)
  15229. 17h "XR17" horizontal overflow register (see #P0787)
  15230. 18h "XR18" reserved
  15231. 19h "XR19" alternate horizontal sync start / half-line (see #P0788)
  15232. 1Ah-1Bh reserved
  15233. 1Ch "XR1C" alternate horizontal blank start / horizontal panel size
  15234. 1Dh-27h reserved
  15235. 28h "XR28" video interface (see #P0792)
  15236. 29h-2Ah reserved
  15237. 2Bh "XR2B" software flag register 1 (used by device drivers)
  15238. 2Ch-2Fh reserved
  15239. 30h "XR30" clock divide control register (see #P0793)
  15240. 31h "XR31" clock M-divisor register (see #P0794)
  15241. 32h "XR32" clock N-divisor register (see #P0795)
  15242. 33h "XR33" clock control register (see #P0796)
  15243. 34h-39h reserved
  15244. 3Ah "XR3A" color key compare data 0 (see #P0797)
  15245. 3Bh "XR3B" color key compare data 1 (see #P0798)
  15246. 3Ch "XR3C" color key compare data 2 (see #P0800)
  15247. 3Dh "XR3D" color key compare mask 0 (see #P0802)
  15248. 3Eh "XR3E" color key compare mask 1 (see #P0803)
  15249. 3Fh "XR3F" color key compare mask 2 (see #P0804)
  15250. 40h "XR40" BitBlt config register (see #P0805)
  15251. 41h "XR41" reserved
  15252. 42h-43h reserved
  15253. 44h "XR44" software flag register 2 (reserved for BIOS/driver use)
  15254. 45h "XR45" reserved
  15255. 46h-4Fh reserved
  15256. 50h-51h reserved
  15257. 52h "XR52" refresh control register (see #P0806)
  15258. 53h-5Fh reserved
  15259. 60h "XR60" blink rate control
  15260. 61h-6Fh reserved
  15261. 70h "XR70" setup/disable control (see #P0807)
  15262. 71h "XR71" GPIO control register (see #P0808)
  15263. 72h "XR72" GPIO data register (see #P0809)
  15264. 73h "XR73" misc control register (see #P0810)
  15265. 74h "XR74" configuration register 2 (see #P0811)
  15266. 75h "XR75" software flag register 3 (reserved for BIOS/driver use)
  15267. 76h-79h reserved
  15268. 7Ah "XR7A" test index register (see #P0812)
  15269. 7Bh "XR7B" test control register (see #P0813)
  15270. 7Ch "XR7C" test data register (see #P0814)
  15271. 7Dh "XR7D" diagnostic register (reserved; should not be read or written)
  15272. 7Eh "XR7E" reserved
  15273. 7Fh "XR7F" diagnostic register (reserved; should not be read or written)
  15274. SeeAlso: #P0762
  15275. Bitfields for Chips&Technologies "XR00" chip version:
  15276. Bit(s) Description (Table P0764)
  15277. 7-4 chip type
  15278. 0000 = 82C451
  15279. 0001 = 82C452
  15280. 0010 = 82C455
  15281. 0011 = 82C453
  15282. 0100 = 82C450
  15283. 0101 = 82C456
  15284. 0110 = 82C457
  15285. 0111 = 65520
  15286. 1000 = 65530 / 65525
  15287. 1001 = 65510 Flat-Panel Controller
  15288. 1010 = 64200 Wingine
  15289. 1011 = 64300/301 Wingine DGX (if bit 3 clear)
  15290. 1011 = 64310 Wingine DGX-PCI (if bit 3 set)
  15291. 3-0 chip revision (0000 = first silicon)
  15292. Note: this register is read-only
  15293. SeeAlso: #P0762,#P0765
  15294. Bitfields for Chips&Technologies 64200 "XR01" configuration:
  15295. Bit(s) Description (Table P0765)
  15296. 7-4 configuration bits 7-4 (latched from pins on falling edge of RESET)
  15297. 3 memory configuration
  15298. 0 video memory pins always drive
  15299. 1 video memory pins only driven when XR03 bit 0 is clear (VGA mode)
  15300. 2 source of pixel clock
  15301. 0 oscillator (CLK0-CLK3 are pixel-clock inputs, which are selected by
  15302. MSR bits 3-2)
  15303. 1 clock chip (CLK0 is pixel clock input, CLK1-CLK3 are CSELx outputs)
  15304. 1-0 bus type
  15305. 00 PCI
  15306. 01 Microchannel
  15307. 10 local bus
  15308. 11 ISA
  15309. Note: this register is read-only
  15310. SeeAlso: #P0762,#P0764,#P0767,#P0766
  15311. Bitfields for Chips&Technologies 64300/64310 "XR01" configuration:
  15312. Bit(s) Description (Table P0766)
  15313. 7-6 (64310) reserved (0)
  15314. 7 (64300) VL-Bus CPU speed???
  15315. 6 (64300) VL-Bus zero wait state???
  15316. 5 (64310) OSC source
  15317. 0 = external
  15318. 1 = internal
  15319. 4 (64310) clock source
  15320. 0 = external (82C404C)
  15321. 1 = internal
  15322. 3 (64310) chip (bus interface and RAMDAC) enable
  15323. 2 (64310) 64310 isolate
  15324. 0 = 64310 cannot be disabled
  15325. 1 = 64310 can be disabled using port 106h in setup mode
  15326. (64310 may also be disabled using PCI configuration registers)
  15327. 1-0 (64310) bus type
  15328. 00 reserved
  15329. 01 32-bit PCI
  15330. 10 reserved
  15331. 11 32-bit local bus
  15332. SeeAlso: #P0763,#P0765
  15333. Bitfields for Chips&Technologies "XR02" CPU interface register:
  15334. Bit(s) Description (Table P0767)
  15335. 7 status of attribute flip-flop (read-only) (0 = index, 1 = data)
  15336. 6 (64200) palette address decoding
  15337. 0 access only at PORT 03C6h-03C9h
  15338. 1 also access at PORT 83C6h-83C9h (for RAMDACs with 8 registers)
  15339. (64310) reserved (0)
  15340. 5 I/O address decoding
  15341. 0 decode all 16 bits of address
  15342. 1 only decode low ten bits of address for 3B4h,3B5h,3B8h,3BAh,3BFh,
  15343. 3C0h-3C2h,3C4h,3C5h,3CEh,3CFh,3D4h,3D5h,3D8h-3DAh
  15344. 4-3 mapping of Attribute Controller
  15345. 00 VGA mapping - write index and data at 03C0h (8-bit only)
  15346. 01 16-bit mapping - write index at 03C0h, data at 03C1h
  15347. 10 (64200 only) EGA mapping - write index at 03C0h, data at 03C0h or
  15348. 03C1h (8-bit)
  15349. 11 reserved
  15350. 2-0 reserved (0)
  15351. SeeAlso: #P0762,#P0765,PORT 83C6h
  15352. Bitfields for Chips&Technologies "XR03" Master Control register:
  15353. Bit(s) Description (Table P0768)
  15354. 7 XREQ# direction (=0 input, =1 output)
  15355. 6 XREQ# divide (=0 DispEnable for all lines, =1 even-numbered lines)
  15356. 5 XREQ# mode (=0 DispEnable only, =1 split-buffer VRAM transfer timing)
  15357. (see #P0799"XR3C",#P0801"XR3D")
  15358. 4 alternate VGA address
  15359. =1 map at PORT 02C6h-02C9h instead of 03C6h-03C9h
  15360. 3-2 reserved
  15361. 1 alternate palette address
  15362. =1 map at PORT 02Bxh or PORT 02Dxh instead of 03Bxh/03Dxh
  15363. 0 Wingine/VGA select
  15364. =0 VGA
  15365. =1 Wingine (memory pins are tri-stated)
  15366. Note: a write-only copy of this register may be accessed at PORT 0022h
  15367. (index E0h) and PORT 0023h; a read-write copy exists in systems with
  15368. built-in Wingine support
  15369. SeeAlso: #P0762,#P0767,#P0770,#P0769
  15370. Bitfields for Chips&Technologies 64310 "XR03" CPU interface register 2:
  15371. Bit(s) Description (Table P0769)
  15372. 7-2 reserved (0)
  15373. 1 DRxx register access enable (I/O port defined in XR07 ???)
  15374. 0 palette write shadow
  15375. SeeAlso: #P0763,#P0768
  15376. Bitfields for Chips&Technologies "XR04" Memory Control register:
  15377. Bit(s) Description (Table P0770)
  15378. 7-6 (64200) reserved (0)
  15379. 7 (64310) FIFO depth
  15380. 0 = bus FIFO is 8 deep
  15381. 1 = bus FIFO is 4 deep
  15382. 6 (64310) PCI burst enable
  15383. 5 (64200) enable CPU memory write buffer
  15384. (64310) CPU bus FIFO enable
  15385. 4-3 reserved (0)
  15386. 2 memory wraparound
  15387. =1 enable bit 17 of CRTC address counter
  15388. 1-0 (64310) memory configuration
  15389. data path chips config total
  15390. 00 16-bit 4 256Kx4 1/2 MB
  15391. 1 256Kx16 1/2 MB
  15392. 01 32-bit 8 256Kx4 1 MB
  15393. 2 256Kx16 1 MB
  15394. 10 32-bit 16 256Kx4 2 MB
  15395. 4 256Kx16 2 MB
  15396. 11 reserved
  15397. 1 (64200) reserved (0)
  15398. 0 (64200) memory configuration
  15399. =0 8-bit data, two DRAM chips of 256Kx4
  15400. =1 16-bit data, four DRAM chips of 256Kx4
  15401. SeeAlso: #P0762,#P0768,#P0763
  15402. Bitfields for Chips&Technologies "XR05" Clock Control register:
  15403. Bit(s) Description (Table P0771)
  15404. !!!
  15405. SeeAlso: #P0762
  15406. Bitfields for Chips&Technologies 64310 "XR05" Memory Control register 2:
  15407. Bit(s) Description (Table P0772)
  15408. 7 VAFC PCLK/2
  15409. 0 = DCLK=PCLK
  15410. 1 = DCLK=PCLK/2
  15411. 6 VAFC enable (XR71 bits 5, 3 and 2 must be 0)
  15412. 5 reserved (0)
  15413. 4 256Kx16 access format
  15414. 0 = 2 CAS / 1 WE
  15415. 1 = 2 WE / 1 CAS
  15416. 3-0 reserved
  15417. SeeAlso: #P0763
  15418. Bitfields for Chips&Technologies "XR06" color palette control / DRAM interface:
  15419. Bit(s) Description (Table P0773)
  15420. 7-5 (64310) reserved (0)
  15421. 4 (64310) video overlay on color key enable
  15422. 3-2 (64310) display mode color depth
  15423. 00 = 4BPP / 8BPP
  15424. 01 = 15BPP (5-5-5) Sierra compatible
  15425. 10 = 24BPP
  15426. 11 = 16BPP (5-6-5) XGA compatible
  15427. 1 (64310) internal DAC disable
  15428. 0 (64310) enable external pixel data
  15429. 0 = VID15-0 and KEY inputs for live video overlay
  15430. 1 = P7-0 and BLANK# outputs for external feature connector/external
  15431. color keying (XR73 bit 5 must be set)
  15432. SeeAlso: #P0763
  15433. Bitfields for Chips&Technologies 64310 "XR08" linear frame buffer base low:
  15434. Bit(s) Description (Table P0774)
  15435. 7-6 linear frame buffer base address low (VL-Bus only)
  15436. (bits 23-22 of linear frame buffer base address)
  15437. (LFB is 4 MB boundary within 4 GB address space. Upper 2 MB is used
  15438. for memory mapped I/O.)
  15439. 5-0 reserved (0)
  15440. SeeAlso: #P0763,#P0775
  15441. Bitfields for Chips&Technologies 64310 "XR09" linear frame buffer base high:
  15442. Bit(s) Description (Table P0775)
  15443. 7-0 linear frame buffer base address high (VL-Bus only)
  15444. (bits 23-22 of linear frame buffer base address)
  15445. (LFB is 4 MB boundary within 4 GB address space. Upper 2 MB is used
  15446. for memory mapped I/O.)
  15447. SeeAlso: #P0763,#P0774
  15448. Bitfields for Chips&Technologies 64310 "XR0A" XRAM mode register:
  15449. Bit(s) Description (Table P0776)
  15450. 7 reserved (0)
  15451. 6 disable upper XRAM in 2MB modes
  15452. 0 = upper XRAM not enabled
  15453. 1 = upper XRAM enabled
  15454. (used in systems with 2MB frame buffer but only single 256Kx4 XRAM)
  15455. 5 XRAM diagnostic 64 (0)
  15456. 4 synchronous XRAM enable
  15457. 3 asynchronous XRAM enable
  15458. 2-1 BitBlt update
  15459. 00 = no update during BitBlt
  15460. 11 = BitBlt update enabled
  15461. 0 XRAM test enable
  15462. 0 = XRAM normal mode
  15463. 1 = XRAM read/write
  15464. SeeAlso: #P0763
  15465. Bitfields for Chips&Technologies "XR0B" CPU Paging register:
  15466. Bit(s) Description (Table P0777)
  15467. 7-3 (64200) reserved (0)
  15468. 7 (64310) big-endian byte swap (32 bpp swap)
  15469. 0 = no swap
  15470. 1 = swap bytes 0-3 and 1-2
  15471. 6 (64310) big-endian byte swap (16 bpp swap)
  15472. 0 = no swap
  15473. 1 = swap bytes 0-1 and 2-3
  15474. 4 (64310) linear addressing enable
  15475. 3 (64310) reserved (0)
  15476. 2 divide CPU addresses by 4 (chain-4 mode)
  15477. 1 use two maps for CPU to access extended video memory (see #P0782,#P0783)
  15478. 0 memory-mapping mode
  15479. =0 VGA-compatible
  15480. =1 extended mapping for >= 512K video memory
  15481. SeeAlso: #P0762,#P0778,#P0763
  15482. Bitfields for Chips&Technologies 64200 "XR0C" Start Address Top register:
  15483. Bit(s) Description (Table P0778)
  15484. 7-1 reserved (0)
  15485. 0 high-order bit of display start address when 512K display memory used
  15486. SeeAlso: #P0762,#P0777,#P0779
  15487. Bitfields for Chips&Technologies 64310 "XR0C" Start Address Top register:
  15488. Bit(s) Description (Table P0779)
  15489. 7 reserved
  15490. 6 high map bit 8
  15491. 4 low map bit 8
  15492. 3-0 high-order bits of display start address
  15493. SeeAlso: #P0763,#P0778
  15494. Bitfields for Chips&Technologies "XR0D" Auxiliary Offset register:
  15495. Bit(s) Description (Table P0780)
  15496. 7-3 reserved (0)
  15497. 2 (64200) reserved (0)
  15498. (64310) msb of row offset register (CRT controller register 13h)
  15499. 1-0 (64310) reserved (0)
  15500. 1 (64200) LSB of memory offset (CR13) in Chain and Chain-4 modes
  15501. 0 (64200) LSB of alternate memory offset (XR1E) in Chain/Chain-4 modes
  15502. SeeAlso: #P0762
  15503. Bitfields for Chips&Technologies "XR0E" Text Mode Control register:
  15504. Bit(s) Description (Table P0781)
  15505. 7-4 reserved (0)
  15506. 3 cursor style (0 = replace, 1 = XOR)
  15507. 2 disable cursor blink
  15508. 1 reserved (0)
  15509. 0 (64200) reserved (0)
  15510. (64310) extended text mode font scrambling in plane 2 enable
  15511. SeeAlso: #P0762,#P0763
  15512. Bitfields for Chips&Technologies "XR10" Single/Low Map register:
  15513. Bit(s) Description (Table P0782)
  15514. 7-0 (64310) single/low map base address bits 17-10
  15515. (single map mode base address if XR0B bit 1 = 0, dual map mode lower
  15516. map base address if XR0B bit 1 = 1)
  15517. !!!chips\64200.pdf p.80
  15518. SeeAlso: #P0762,#P0783,#P0763
  15519. Bitfields for Chips&Technologies "XR11" High Map register:
  15520. Bit(s) Description (Table P0783)
  15521. 7-0 (64310) dual map mode high map base address bits 17-10
  15522. (if XR0B bit 1 = 1)
  15523. SeeAlso: #P0762,#P0782
  15524. Bitfields for Chips&Technologies "XR14" Emulation Mode register:
  15525. Bit(s) Description (Table P0784)
  15526. 7 enable interrupt output function (=0 tri-state IRQ# line)
  15527. 6 (64200) enable VSync status bit at PORT 03BAh/03DAh
  15528. (64310) reserved (0)
  15529. 5 vertical retrace status
  15530. =0 PORT 03BAh/03DAh bit 3 is vertical retrace (CGA/EGA/VGA)
  15531. =1 PORT 03BAh/03DAh bit 3 is video active (MDA/Herc)
  15532. 4-0 (64310) reserved (0)
  15533. 4 (64200) display enable status
  15534. =0 PORT 03BAh/03DAh bit 0 is display enable (CGA/EGA/VGA)
  15535. =1 PORT 03BAh/03DAh bit 0 is HSync (MDA/Herc)
  15536. 3-2 (64200) (read-only) Hercules configuration register readback
  15537. (see PORT 03BFh)
  15538. 1-0 (64200) emulation mode
  15539. 00 VGA
  15540. 01 CGA
  15541. 10 MDA/Hercules
  15542. 11 EGA
  15543. SeeAlso: #P0762,#P0763
  15544. Bitfields for Chips&Technologies "XR15" Write Protect register:
  15545. Bit(s) Description (Table P0785)
  15546. 7 write protect AR11 (both bits 7 and 0 must be clear to write AR11)
  15547. 6
  15548. 5
  15549. 4
  15550. 3
  15551. 2
  15552. 1
  15553. 0 !!!chips\64200.pdf p.82
  15554. SeeAlso: #P0762
  15555. Bitfields for Chips&Technologies 64310 "XR16" vertical overflow register:
  15556. Bit(s) Description (Table P0786)
  15557. 7 resrved (0)
  15558. 6 line compare bit 10
  15559. 5 resrved (0)
  15560. 4 vertical blank start bit 10
  15561. 3 resrved (0)
  15562. 2 vertical sync start bit 10
  15563. 1 vertical display enable end bit 10
  15564. 0 vertical total bit 10
  15565. SeeAlso: #P0763
  15566. Bitfields for Chips&Technologies 64310 "XR17" horizontal overflow register:
  15567. Bit(s) Description (Table P0787)
  15568. 7 half line compare bit 8 (bits 7-0 in XR19)
  15569. 6 overflow end bits (XR17 bits 5 and 3) enable
  15570. 5 horizontal blank end bit 6
  15571. 4 horizontal blank start bit 8
  15572. 3 horizontal sync end bit 5
  15573. 2 horizontal sync start bit 8
  15574. 1 horizontal display enable end bit 8
  15575. 0 horizontal total bit 8
  15576. SeeAlso: #P0763
  15577. Bitfields for Chips&Technologies "XR19" alt. horizontal sync start/half-line:
  15578. Bit(s) Description (Table P0788)
  15579. 7-0 (64310) CRT half-line value
  15580. SeeAlso: #P0763
  15581. Bitfields for Chips&Technologies "XR1A" Alternate Horizontal Sync End register:
  15582. Bit(s) Description (Table P0789)
  15583. 7
  15584. 6-5
  15585. 4-0
  15586. SeeAlso: #P0762,#P0790
  15587. Bitfields for Chips&Technologies "XR1D" Alternate Horizontal Blank End reg:
  15588. Bit(s) Description (Table P0790)
  15589. 7
  15590. 6-5
  15591. 4-0
  15592. SeeAlso: #P0762,#P0789
  15593. Bitfields for Chips&Technologies "XR1F" Virtual EGA Switch register:
  15594. Bit(s) Description (Table P0791)
  15595. 7
  15596. 6-4 reserved (0)
  15597. 3-0 virtual EGA switches
  15598. SeeAlso: #P0762
  15599. Bitfields for Chips&Technologies "XR28" Video Interface register:
  15600. Bit(s) Description (Table P0792)
  15601. 7 reserved
  15602. 6 (64310) wide video pixel panning (if bit 4 = 1 and port 3C0h
  15603. register 10h bit 6 = 1)
  15604. 0 = pixel panning controlled by port 3C0h register 13h bits 2-1
  15605. 1 = pixel panning controlled by port 3C0h register 13h bits 2-0
  15606. 5 interlaced video
  15607. 4 (64310) wide video path (doubles values in all horizontal CRTC
  15608. registers)
  15609. 0 = 4-bit video data path
  15610. 1 = 8-bit video data path (horizontal pixel panning controlled by
  15611. bit 6; port 3CEh register 5h bit 5 must be 0)
  15612. 3 reserved (0)
  15613. 2 shut off video
  15614. 1 (64310) BLANK#/display enable select
  15615. 0 = BLANK# pin outputs BLANK#
  15616. 1 = BLANK# pin outputs display enable
  15617. 0 (64310) BLANK#/display enable polarity
  15618. 0 = negative polarity
  15619. 1 = positive polarity
  15620. SeeAlso: #P0762,#P0763
  15621. Bitfields for Chips&Technologies 64310 "XR30" clock divide control register:
  15622. Bit(s) Description (Table P0793)
  15623. 7-4 reserved (0)
  15624. 3-1 post divisor select
  15625. 000 = divide by 1
  15626. 001 = divide by 2
  15627. 010 = divide by 4
  15628. 011 = divide by 8
  15629. 100 = divide by 16
  15630. 101 = divide by 32
  15631. 110-111 = reserved
  15632. 0 reference divisor select
  15633. 0 = divide by 4
  15634. 1 = divide by 1
  15635. Note: Registers XR30-32 are used to program either memory clock or video
  15636. clock VCO, selected by XR33 bit 5. Data must be written in sequence
  15637. to all three registers, after which they are transferred to VCO
  15638. simultaneously.
  15639. SeeAlso: #P0763
  15640. Bitfields for Chips&Technologies 64310 "XR31" clock M-divisor register:
  15641. Bit(s) Description (Table P0794)
  15642. 7 reserved (0)
  15643. 6-0 VCO M-divisor (program value - 2)
  15644. Note: Registers XR30-32 are used to program either memory clock or video
  15645. clock VCO, selected by XR33 bit 5. Data must be written in sequence
  15646. to all three registers, after which they are transferred to VCO
  15647. simultaneously.
  15648. SeeAlso: #P0763
  15649. Bitfields for Chips&Technologies 64310 "XR32" clock N-divisor register:
  15650. Bit(s) Description (Table P0795)
  15651. 7 reserved (0)
  15652. 6-0 VCO N-divisor (program value - 2)
  15653. Note: Registers XR30-32 are used to program either memory clock or video
  15654. clock VCO, selected by XR33 bit 5. Data must be written in sequence
  15655. to all three registers, after which they are transferred to VCO
  15656. simultaneously.
  15657. SeeAlso: #P0763
  15658. Bitfields for Chips&Technologies 64310 "XR33" clock control register:
  15659. Bit(s) Description (Table P0796)
  15660. 7-6 reserved (0)
  15661. 5 clock register program pointer
  15662. 0 = VCLK VCO
  15663. 1 = MCLK VCO
  15664. 4 PCLK equals MCLK instead of VCLK
  15665. 3 reserved (0)
  15666. 2 OSC enable (if XR01 bit 5 = 1)
  15667. 1 MCLK VCO enable (if XR01 bit 4 = 1)
  15668. 0 VCLK VCO enable (if XR01 bit 4 = 1)
  15669. SeeAlso: #P0763
  15670. Bitfields for Chips&Technologies 64310 "XR3A" color key compare data 0:
  15671. Bit(s) Description (Table P0797)
  15672. 7-0 color compare data 0
  15673. (Compared to lowest 8 bits of 64310 memory data, masked with XR3D. If
  15674. match occurs and XR06 bit 4 = 1, external video is sent to screen.
  15675. Color comparison occurs before RAMDAC. Palette LUT index is used in
  15676. 4BPP and 8BPP modes.)
  15677. SeeAlso: #P0763
  15678. Bitfields for Chips&Technologies 64310 "XR3B" color key compare data 1:
  15679. Bit(s) Description (Table P0798)
  15680. 7-0 color compare data 1
  15681. (Compared to bits 15-8 of 64310 memory data, masked with XR3E. If
  15682. match occurs and XR06 bit 4 = 1, external video is sent to screen.
  15683. This register should be masked in 4BPP and 8BPP modes by setting
  15684. XR3E to FFh.)
  15685. SeeAlso: #P0763
  15686. Bitfields for Chips&Technologies 64200 "XR3C" Serial/Row Count register:
  15687. Bit(s) Description (Table P0799)
  15688. 7-6 reserved (0)
  15689. 5-3 row count (number of transfer cycles)
  15690. 000 = 64
  15691. 001 = 128
  15692. 010 = 256
  15693. 011 = 512
  15694. 1x0 = 1024
  15695. 1x1 = 2048
  15696. 2-0 serial count (same as for bits 5-3, but in units of serial clocks)
  15697. SeeAlso: #P0762,#P0801,#P0768
  15698. Bitfields for Chips&Technologies 64310 "XR3C" color key compare data 2:
  15699. Bit(s) Description (Table P0800)
  15700. 7-0 color compare data 2
  15701. (Compared to bits 23-16 of 64310 memory data, masked with XR3F. If
  15702. match occurs and XR06 bit 4 = 1, external video is sent to screen.
  15703. This register should only be used in 24BPP modes, and masked in
  15704. other modes by setting XR3F to FFh.)
  15705. SeeAlso: #P0763,#P0802
  15706. Bitfields for Chips&Technologies 64200 "XR3D" Multiplexer Mode register:
  15707. Bit(s) Description (Table P0801)
  15708. 7-5 reserved
  15709. 4
  15710. 3
  15711. 2-0 multiplexer mode
  15712. SeeAlso: #P0762,#P0799,#P0768
  15713. Bitfields for Chips&Technologies 64310 "XR3D" color key compare mask 0:
  15714. Bit(s) Description (Table P0802)
  15715. 7-0 color compare mask 0 (masks XR3A)
  15716. 0 = bit compared
  15717. 1 = bit masked from comparison
  15718. SeeAlso: #P0763,#P0800,#P0803
  15719. Bitfields for Chips&Technologies 64310 "XR3E" color key compare mask 1:
  15720. Bit(s) Description (Table P0803)
  15721. 7-0 color compare mask 1 (masks XR3B)
  15722. 0 = bit compared
  15723. 1 = bit masked from comparison
  15724. SeeAlso: #P0763,#P0802,#P0804
  15725. Bitfields for Chips&Technologies 64310 "XR3F" color key compare mask 2:
  15726. Bit(s) Description (Table P0804)
  15727. 7-0 color compare mask 2 (masks XR3C)
  15728. 0 = bit compared
  15729. 1 = bit masked from comparison
  15730. SeeAlso: #P0763,#P0802,#P0803
  15731. Bitfields for Chips&Technologies 64310 "XR40" BitBlt config register:
  15732. Bit(s) Description (Table P0805)
  15733. 7-2 reserved (0)
  15734. 1-0 BitBlt draw mode
  15735. 00 = reserved
  15736. 01 = 8bpp
  15737. 10 = 16bpp
  15738. 11 = reserved
  15739. (24bpp handled in 8bpp mode; no nibble mode for 4bpp)
  15740. SeeAlso: #P0763
  15741. Bitfields for Chips&Technologies 64310 "XR52" refresh control register:
  15742. Bit(s) Description (Table P0806)
  15743. 7-3 reserved (0)
  15744. 2-0 VGA refresh cycles per scan line
  15745. 000 = default
  15746. 001-101 = 1-5 refresh cycles
  15747. 110-111 = illegal
  15748. SeeAlso: #P0763
  15749. Bitfields for Chips&Technologies "XR70" Setup/Disable Control register:
  15750. Bit(s) Description (Table P0807)
  15751. 7
  15752. 6-0 reserved (0)
  15753. SeeAlso: #P0762
  15754. Bitfields for Chips&Technologies 64310 "XR71" GPIO control register:
  15755. Bit(s) Description (Table P0808)
  15756. 7-5 GPOE
  15757. 0 = respective GPIO pin is input
  15758. 1 = respective GPIO pin is output
  15759. (if standard feature connector is enabled (XR73 bit 5 = 1), GPIO pin 5
  15760. becomes an alternate fixed function input (ECLK#) and bit 5 must be
  15761. set to 0)
  15762. (if external clock is selected (XR01 bit 4 = 0), bits 7-6 have no
  15763. effect and GPIO pins 7-6 become CLKSEL1-0 and output contents of
  15764. port 3CCh bits 3-2)
  15765. 4 reserved (0)
  15766. 3-2 GPOE
  15767. 0 = respective GPIO pin is input
  15768. 1 = respective GPIO pin is output
  15769. (if standard feature connector is enabled (XR73 bit 5 = 1), GPIO pins
  15770. 3 and 2 become alternate fixed function inputs (EVIDEO#, ESYNC#) and
  15771. bits 3-2 must be set to 0)
  15772. 1-0 reserved (0)
  15773. SeeAlso: #P0763
  15774. Bitfields for Chips&Technologies 64310 "XR72" GPIO data register:
  15775. Bit(s) Description (Table P0809)
  15776. 7-5 GPIO (input from/output to respective GPIO pin)
  15777. (if standard feature connector is enabled (XR73 bit 5 = 1), GPIO pin 5
  15778. becomes an alternate fixed function input (ECLK#))
  15779. (if external clock is selected (XR01 bit 4 = 0), GPIO pins 7-6 become
  15780. CLKSEL1-0 and output contents of port 3CCh bits 3-2)
  15781. 4 reserved (0)
  15782. 3-2 GPIO (input from/output to respective GPIO pin)
  15783. (if standard feature connector is enabled (XR73 bit 5 = 1), GPIO pins
  15784. 3 and 2 become alternate fixed function inputs (EVIDEO#, ESYNC#))
  15785. 1-0 reserved (0)
  15786. SeeAlso: #P0763
  15787. Bitfields for Chips&Technologies 64310 "XR73" misc control register:
  15788. Bit(s) Description (Table P0810)
  15789. 7 ROMCS# write access enable
  15790. 6 external color key enable
  15791. 5 standard feature connector enable (must be set before XR06 bit 0)
  15792. 4 reserved (0)
  15793. 3 VSYNC control
  15794. 0 = CRTC VSYNC is output on VSYNC pin 126
  15795. 1 = bit 2 is output on VSYNC pin 126
  15796. 2 VSYNC data (if bit 3 = 1, this bit will be output on VSYNC pin)
  15797. 1 HSYNC control
  15798. 0 = CRTC HSYNC is output on HSYNC pin 125
  15799. 1 = bit 0 is output on HSYNC pin 125
  15800. 0 HSYNC data (if bit 1 = 1, this bit will be output on HSYNC pin)
  15801. SeeAlso: #P0763
  15802. Bitfields for Chips&Technologies 64310 "XR74" configuration register 2:
  15803. Bit(s) Description (Table P0811)
  15804. 7-0 (64300) ???
  15805. (64310) reserved (0)
  15806. SeeAlso: #P0763
  15807. Bitfields for Chips&Technologies 64310 "XR7A" test index register:
  15808. Bit(s) Description (Table P0812)
  15809. 7-0 test index (select XR7B function)
  15810. 00h = reserved
  15811. 01h = CRC signature analysis
  15812. 02h-FFh = reserved
  15813. SeeAlso: #P0763
  15814. Bitfields for Chips&Technologies 64310 "XR7B" test control register:
  15815. Bit(s) Description (Table P0813)
  15816. ---XR7A = 01h---
  15817. 7 CRC status (read-only)
  15818. 0 = CRC ARM=0 or CRC data is being generated (CRC data should not be
  15819. read)
  15820. 1 = CRC ARM=1 and CRC data is ready
  15821. 6 CRC arm
  15822. 1 = arm CRC generation to start after the next VSYNC and stop after the
  15823. VSYNC following that (should not be set to 0 until entire CRC value
  15824. is read)
  15825. 5-4 CRC data select (select data to be read from XR7C)
  15826. 00 = CRC bit 7-0
  15827. 01 = CRC bits 15-8
  15828. 10 = 0 and CRC bits 22-16
  15829. 11 = 00h
  15830. 3-2 CRC qualification
  15831. 00 = take all data
  15832. 01 = take data when not blank (DE + overscan)
  15833. 10 = take data when DE is active
  15834. 11 = take data in PC Video window only
  15835. 1-0 video data select
  15836. 00 = red video data before DAC output
  15837. 01 = green video data before DAC output
  15838. 10 = blue video data before DAC output
  15839. 11 = control data (VSYNC, HSYNC, blank, internal display enable,
  15840. 0, 0, 0, 0)
  15841. SeeAlso: #P0763,#P0812
  15842. Bitfields for Chips&Technologies 64310 "XR7C" test data register:
  15843. Bit(s) Description (Table P0814)
  15844. ---XR7A = 01h---
  15845. 7-0 CRC data (read-only)
  15846. SeeAlso: #P0763,#P0812
  15847. Bitfields for Chips&Technologies "XR7E" CGA Color Select register:
  15848. Bit(s) Description (Table P0815)
  15849. 7-6 reserved
  15850. 5
  15851. 4
  15852. 3-0
  15853. Note: this is a mirror of the register accessed via PORT 03D9h, which is
  15854. always visible, while PORT 03D9h is only visible in CGA emulation
  15855. SeeAlso: #P0762,PORT 03D9h
  15856. Bitfields for Chips&Technologies "XR7F" Diagnostic register:
  15857. Bit(s) Description (Table P0816)
  15858. 7 special test function (should remain cleared)
  15859. 6 enable test function in bits 5-2
  15860. 5-2 test function
  15861. 1 tri-state output pins: !!!
  15862. 0 tri-state output pins: !!! chips\64200.pdf p.90
  15863. SeeAlso: #P0762
  15864. ----------P03D803DF--------------------------
  15865. PORT 03D8-03DF - COLOR VIDEO - CRT MODE AND STATUS REGISTERS
  15866. 03D8 RW CGA mode control register (except PCjr) (see #P0817)
  15867. cannot be found on native color EGA, color VGA, but on most clones
  15868. 03D9 RW CGA palette register (see #P0819)
  15869. (MCGA) CGA border control register
  15870. Cannot be found on native EGA, VGA (without translation ROM) but
  15871. only most clones. Read access on Genoa SuperEGA is 'reset'???
  15872. 03DA R- CGA status register (see #P0818)
  15873. color EGA/VGA: input status 1 register
  15874. 03DA -W color EGA/color VGA feature control register (see #P0820)
  15875. (at PORT 03BAh w in mono mode, VGA: 3CAh r)
  15876. 03DA -W HZ309 (MDA/HGC/CGA clone) card from in Heath/Zenith HZ150 PC
  15877. bit7-1=0: unknown, zero is default and known to function
  15878. properly at least in CGA modes.
  15879. bit 0 = 1 override 3x8h bit3 control register that switches
  15880. CRT beam off if bit3 is cleared. So screens always
  15881. stays on.
  15882. bit 0 = 0 3x8h bit3 indicates if CRT beam is on or off.
  15883. No more info available. Might conflict with EGA/VGA.
  15884. 03DB rW clear light pen latch (not MCGA)
  15885. (R/W only with Genoa SuperEGA)
  15886. 03DC RW (not MCGA) preset light pen latch
  15887. 03DC -W (CGA) set light pen latch
  15888. 03DD -W (MCGA) Extended mode control register
  15889. (Plantronics & Genoa SuperEGA: Plantronics ColorPlus control,
  15890. compatible with MCGA???)
  15891. (default is 00h, in mode 13h: 04h)
  15892. bit7 =1: DAC active, cannot be read
  15893. =0: DAC not active, read allowed
  15894. bit6-3 : reserved
  15895. bit2 =1: videomode 13h with 256 colors active
  15896. bit1 : reserved
  15897. bit0 =0: reserved
  15898. 03DE -- (MCGA) reserved
  15899. 03DE -W (AT&T & color ET4000 in AT&T compatibility mode & C&T 82C426)
  15900. AT&T mode control register (see #P0821)
  15901. (register enabled in ET4000, if bit7=1 in CRTC 3D4h/34h.)
  15902. 03DF -- (MCGA) reserved
  15903. 03DF ?W CRT/CPU page register (PCjr only)
  15904. Bitfields for CGA/Hercules mode control register:
  15905. Bit(s) Description (Table P0817)
  15906. 7-0 =A0h color ET4000: second part of 'key', see Hercules compatibility
  15907. register (see PORT 03BFh) for details. For resetting the key, e.g.
  15908. write 01h to PORT 03BFh and 29h to PORT 03D8h.
  15909. 7 (Hercules) page select
  15910. =0 B0000h
  15911. =1 B8000h
  15912. 6 color ET4000 only, read-only: report status of bit 1 (enable 2nd page)
  15913. of hercules compatibility register (see PORT 03BFh)
  15914. 5 =1 blink enabled instead of foreground high-int.
  15915. 4 =1 640*200 graphics mode (CGA)
  15916. 3 =1 video enabled (HZ309, see PORT 03DAh bit 0)
  15917. 2 =1 monochrome signal
  15918. (MCGA) in mode 6 and 11h color comes from palette
  15919. regs 00 (black) and 07 (white), and can be changed there.
  15920. 1 =0 text mode
  15921. =1 320*200 graphics mode
  15922. 0 text columns (0 = 40*25 text mode, 1 = 80*25 text mode)
  15923. SeeAlso: #P0818
  15924. Bitfields for CGA status register:
  15925. Bit(s) Description (Table P0818)
  15926. 7-6 not used
  15927. 7 (C&T Wingine) vertical sync in progress (if enabled by XR14)
  15928. 5-4 color EGA, color ET4000, C&T: diagnose video display feedback, select
  15929. from color plane enable
  15930. 3 in vertical retrace
  15931. (C&T Wingine) video active (retrace/video selected by XR14)
  15932. 2 (CGA,color EGA) light pen switch is off
  15933. (MCGA,color ET4000) reserved (0)
  15934. (VGA) reserved (1)
  15935. 1 (CGA,color EGA) positive edge from light pen has set trigger
  15936. (VGA,MCGA,color ET4000) reserved (0)
  15937. 0 horizontal retrace in progress
  15938. =0 do not use memory
  15939. =1 memory access without interfering with display
  15940. (VGA,Genoa SuperEGA) horizontal or vertical retrace
  15941. (C&T Wingine) display enabled (retrace/DE selected by XR14)
  15942. SeeAlso: #P0817,#P0819,#P0762
  15943. Bitfields for CGA palette register:
  15944. Bit(s) Description (Table P0819)
  15945. 7-6 not used
  15946. 5 =0 active 320x200x4 color set: red, green brown
  15947. =1 active 320x200x4 color set: cyan, magenta, white
  15948. 4 intense colors in graphics, background colors text
  15949. 3 intense border in 40*25, intense background in 320*200, intense
  15950. foreground in 640*200
  15951. 2 red border in 40*25, red background in 320*200, red foreground in
  15952. 640*200
  15953. 1 green border in 40*25, green background in 320*200, green foreground
  15954. in 640*200
  15955. 0 blue border in 40*25, blue background in 320*200, blue foreground in
  15956. 640*200
  15957. SeeAlso: #P0817,#P0818
  15958. Bitfields for color EGA/VGA feature control register:
  15959. Bit(s) Description (Table P0820)
  15960. 7 ET4000 only: enable NMI generation ('key' protected)
  15961. 6-4 not used
  15962. 3 (VGA) 0 = normal vsync, 1 = vsync OR display enable
  15963. 2 reserved (0)
  15964. (C&T Wingine) disable 16-bit operations
  15965. 1 (EGA,ET4000,Wingine) FEAT1 control bit1 (pin17 feature connector)
  15966. (VGA) reserved (0)
  15967. 0 (EGA,ET4000,Wingine) FEAT0 control bit0 (pin19 feature connector)
  15968. (VGA) reserved (0)
  15969. SeeAlso: #P0818
  15970. Bitfields for AT&T mode control register:
  15971. Bit(s) Description (Table P0821)
  15972. 7 reserved
  15973. 6 underline color attribute enable
  15974. ET4000: enabled, if bit6=1 in CRTC 3D4h/34h.
  15975. 5 reserved
  15976. 4 reserved
  15977. 3 alternate page select (=1: 2nd 16KB page, with bit0=0)
  15978. 2 alternate font select (0=default font block)
  15979. 1 reserved
  15980. 0 double scan line mode (0=IBM 200, 1=AT&T 400 line graphics)
  15981. (ET4000) enabled, if bit7-6=11b in CRTC 3D4h/34h.
  15982. ----------P03E003E1--------------------------
  15983. PORT 03E0-03E1 - OPTi 82C824 - CardBus Bridge registers
  15984. Range: PORT 03E0h or PORT 03E2h
  15985. SeeAlso: PORT 03E2h"CardBus"
  15986. 03E0 ?W index for data register
  15987. 03E1 RW CardBus registers
  15988. --------X-P03E003E1--------------------------
  15989. PORT 03E0-03E1 - Cirrus Logic CL-PD6710/6722/6729 - PC-CARD HOST ADAPTER
  15990. Notes: the CL-PD6729 has compatible registers, but the port address
  15991. is set via the PCI configuration space (two consecutive ports
  15992. starting at Base Address 0)
  15993. the CL-PD6832 supports a superset of this register set
  15994. SeeAlso: PORT 03E0h"CardBus"
  15995. 03E0 ?W index for data register (see #P0822)
  15996. 03E1 RW register data
  15997. Bitfields for Cirrus Logic CL-PD6710/6722 index register:
  15998. Bit(s) Description (Table P0822)
  15999. 7 device number (when dual CL-PD67xx's are used)
  16000. (CL-PD6729) reserved
  16001. 6 socket number (CL-PD6722 dual-socket adapter only)
  16002. 5-0 register index (see #P0823)
  16003. (Table P0823)
  16004. Values for Cirrus Logic CL-PD6710/6722 register number:
  16005. 00h chip revision (affects both sockets) (see #P0824)
  16006. 01h interface status (see #P0825)
  16007. 02h power control (see #P0826)
  16008. 03h interrupt and general control (see #P0827)
  16009. 04h card status change (see #P0828)
  16010. 05h management interrupt configuration (see #P0829)
  16011. 06h mapping enable (see #P0830)
  16012. 07h I/O window control (see #P0831)
  16013. 08h system I/O map 0 start address low
  16014. 09h system I/O map 0 start address high
  16015. 0Ah system I/O map 0 end address low
  16016. 0Bh system I/O map 0 end address high
  16017. 0Ch system I/O map 1 start address low
  16018. 0Dh system I/O map 1 start address high
  16019. 0Eh system I/O map 1 end address low
  16020. 0Fh system I/O map 1 end address high
  16021. 10h system memory map 0 start address low (address bits 19-12)
  16022. 11h system memory map 0 start address high (see #P0832)
  16023. 12h system memory map 0 end address low (address bits 19-12)
  16024. 13h system memory map 0 end address high (see #P0833)
  16025. 14h card memory map 0 offset address low (address bits 19-12)
  16026. 15h card memory map 0 offset address high (see #P0834)
  16027. 16h misc control 1 (see #P0835)
  16028. 17h FIFO control (see #P0836)
  16029. 18h system memory map 1 start address low (address bits 19-12)
  16030. 19h system memory map 1 start address high (see #P0832)
  16031. 1Ah system memory map 1 end address low (address bits 19-12)
  16032. 1Bh system memory map 1 end address high (see #P0833)
  16033. 1Ch card memory map 1 offset address low (address bits 19-12)
  16034. 1Dh card memory map 1 offset address high (see #P0834)
  16035. 1Eh misc control 2 (affects both sockets) (see #P0837)
  16036. 1Fh chip information (affects both sockets) (see #P0838)
  16037. 20h system memory map 2 start address low (address bits 19-12)
  16038. 21h system memory map 2 start address high (see #P0832)
  16039. 22h system memory map 2 end address low (address bits 19-12)
  16040. 23h system memory map 2 end address high (see #P0833)
  16041. 24h card memory map 2 offset address low (address bits 19-12)
  16042. 25h card memory map 2 offset address high (see #P0834)
  16043. 26h ATA control (see #P0839)
  16044. 27h scratchpad
  16045. 28h system memory map 3 start address low (address bits 19-12)
  16046. 29h system memory map 3 start address high (see #P0832)
  16047. 2Ah system memory map 3 end address low (address bits 19-12)
  16048. 2Bh system memory map 3 end address high (see #P0833)
  16049. 2Ch card memory map 3 offset address low (address bits 19-12)
  16050. 2Dh card memory map 3 offset address high (see #P0834)
  16051. 2Eh (CL-PD6722/6729) extended index for extended data register (see #P0842)
  16052. 2Fh extended data
  16053. 30h system memory map 4 start address low (address bits 19-12)
  16054. 31h system memory map 4 start address high (see #P0832)
  16055. 32h system memory map 4 end address low (address bits 19-12)
  16056. 33h system memory map 4 end address high (see #P0833)
  16057. 34h card memory map 4 offset address low (address bits 19-12)
  16058. 35h card memory map 4 offset address high (see #P0834)
  16059. 36h card I/O map 0 offset address low (see #P0840)
  16060. 37h card I/O map 0 offset address high (address bits 15-8)
  16061. 38h card I/O map 1 offset address low (see #P0840)
  16062. 39h card I/O map 1 offset address high (address bits 15-8)
  16063. 3Ah setup timing 0 (see #P0841)
  16064. 3Bh command timing 0 (see #P0841)
  16065. 3Ch recovery timing 0 (see #P0841)
  16066. 3Dh setup timing 1 (see #P0841)
  16067. 3Eh command timing 1 (see #P0841)
  16068. 3Fh recovery timing 1 (see #P0841)
  16069. SeeAlso: #P0822
  16070. Bitfields for Cirrus Logic CL-PD6710/6722/6729 chip revision:
  16071. Bit(s) Description (Table P0824)
  16072. 7-6 interface ID (read-only)
  16073. 00 = I/O only
  16074. 01 = memory only
  16075. 10 = I/O and memory
  16076. 11 = reserved
  16077. 5-4 reserved (read-only)
  16078. 3-0 revision (read-only)
  16079. SeeAlso: #P0823
  16080. Bitfields for Cirrus Logic CL-PD6710/6722/6729 interface status:
  16081. Bit(s) Description (Table P0825)
  16082. 7 -VPP_VALID pin status
  16083. 0 = -VPP_VALID high
  16084. 1 = -VPP_VALID low (asserted)
  16085. (CL-PD6729) reserved (1)
  16086. 6 card power on
  16087. 5 (memory card) ready
  16088. 4 (memory card) write protect
  16089. 3-2 card detect status
  16090. 00 = no card or card not fully inserted
  16091. 01 = card not fully inserted
  16092. 10 = card not fully inserted
  16093. 11 = card fully inserted
  16094. 1-0 (memory card) battery voltage
  16095. 00 = card data lost
  16096. 01 = battery low warning
  16097. 10 = card data lost
  16098. 11 = battery/data ok
  16099. (I/O card) status change (ignore bit 1)
  16100. Note: this register is read-only
  16101. SeeAlso: #P0823
  16102. Bitfields for Cirrus Logic CL-PD6710/6722/6729 power control:
  16103. Bit(s) Description (Table P0826)
  16104. 7 card enable (if card present (register 01h bits 3-2 = 11) and power
  16105. supplied (bit 4 = 1))
  16106. 6 reserved (82365SL compatibility)
  16107. 5 auto-power enable
  16108. 4 Vcc power on (if bit 5 = 0, or bit 5 = 1 and register 01h
  16109. bits 3-2 = 11) (voltage selected by register 16h bit 1)
  16110. 3-2 reserved (82365SL compatibility)
  16111. 1-0 Vpp1 power
  16112. 00 = zero V
  16113. 01 = selected card Vcc
  16114. 10 = +12V
  16115. 11 = zero V
  16116. SeeAlso: #P0823
  16117. Bitfields for Cirrus Logic CL-PD6710/6722/6729 interrupt and general control:
  16118. Bit(s) Description (Table P0827)
  16119. 7 (I/O card) ring indicate enable
  16120. 6 card reset signal
  16121. 0 = active
  16122. 1 = inactive
  16123. 5 card interface mode
  16124. 0 = memory card
  16125. 1 = I/O card
  16126. 4 management interrupt
  16127. 0 = selected by register 05h bits 7-4
  16128. 1 = redirected to -INTR line
  16129. (CL-PD6729) reserved
  16130. 3-0 card IRQ select
  16131. 0000 = IRQ disabled
  16132. 0001-0010 = reserved
  16133. 0011-0101 = IRQ3-IRQ5 (INTA#-INTC# on CL-PD6729)
  16134. 0110 = reserved
  16135. 0111 = IRQ7 (INTD# on CL-PD6729)
  16136. 1000 = reserved
  16137. 1001 = IRQ9 (may be used as ISA bus DACK on CL-PD6722)
  16138. 1010 = IRQ10 (may be used as ISA bus DRQ on CL-PD6722)
  16139. 1011 = IRQ11
  16140. 1100 = IRQ12 (may be used for LED on CL-PD6710/6722)
  16141. 1101 = reserved
  16142. 1110 = IRQ14 (may be used as external clock input on CL-PD6729)
  16143. 1111 = IRQ15 (may be used as ring indicate output)
  16144. SeeAlso: #P0823
  16145. Bitfields for Cirrus Logic CL-PD6710/6722/6729 card status change:
  16146. Bit(s) Description (Table P0828)
  16147. 7-4 reserved (0)
  16148. 3 card detect change
  16149. 2 ready change (always 0 for I/O card)
  16150. 1 battery warning change (ignore on I/O card)
  16151. 0 (memory card) battery dead change
  16152. (I/O card) status change
  16153. Note: reading this read-only register resets all bits to 0
  16154. SeeAlso: #P0823
  16155. Bitfields for Cirrus Logic CL-PD6710/6722/6729 management interrupt config:
  16156. Bit(s) Description (Table P0829)
  16157. 7-4 management IRQ
  16158. 0000 = IRQ disabled
  16159. 0001-0010 = reserved
  16160. 0011-0101 = IRQ3-IRQ5 (INTA#-INTC# on CL-PD6729)
  16161. 0110 = reserved
  16162. 0111 = IRQ7 (INTD# on CL-PD6729)
  16163. 1000 = reserved
  16164. 1001 = IRQ9 (on CL-PD6722 may be used as ISA bus DACK)
  16165. 1010 = IRQ10 (on CL-PD6722 may be used as ISA bus DRQ)
  16166. 1011 = IRQ11
  16167. 1100 = IRQ12 (on CL-PD6710/6722 may be used for LED)
  16168. 1101 = reserved
  16169. 1110 = IRQ14 (on CL-PD6729 may be used as external clock input)
  16170. 1111 = IRQ15 (may be used as ring indicate output)
  16171. 3 management interrupt on card detect change enable
  16172. 2 management interrupt on ready change enable
  16173. 1 management interrupt on battery warning change enable (ignored on
  16174. I/O card)
  16175. 0 (memory card) management interrupt on battery dead change enable
  16176. (I/O card) management interrupt on status change enable
  16177. SeeAlso: #P0823
  16178. Bitfields for Cirrus Logic CL-PD6710/6722/6729 mapping enable:
  16179. Bit(s) Description (Table P0830)
  16180. 7 I/O map 1 enable
  16181. 6 I/O map 0 enable
  16182. 5 reserved (82365SL compatibility: MEMCS16 full decode)
  16183. 4 memory map 4 enable
  16184. 3 memory map 3 enable
  16185. 2 memory map 2 enable
  16186. 1 memory map 1 enable
  16187. 0 memory map 0 enable
  16188. SeeAlso: #P0823
  16189. Bitfields for Cirrus Logic CL-PD6710/6722/6729 I/O window control:
  16190. Bit(s) Description (Table P0831)
  16191. 7 timing register select 1
  16192. 0 = accesses made with timings specified in timer set 0
  16193. 1 = accesses made with timings specified in timer set 1
  16194. 6 reserved (82365SL compatibility)
  16195. 5 I/O window 1 auto-size enable (size determined by -IOIS16 signal) (set
  16196. for proper ATA operation)
  16197. 4 I/O window 1 size (if bit 5 = 0)
  16198. 0 = 8-bit data path
  16199. 1 = 16-bit data path
  16200. 3 timing register select 0 (same values as bit 7)
  16201. 2 reserved (82365SL compatibility)
  16202. 1 I/O window 0 auto-size enable (size determined by -IOIS16 signal)
  16203. 0 I/O window 0 size (if bit 1 = 0) (same values as bit 4)
  16204. SeeAlso: #P0823
  16205. Bitfields for Cirrus Logic CL-PD6710/6722/6729 system memory map start high:
  16206. Bit(s) Description (Table P0832)
  16207. 7 window data size
  16208. 0 = 8-bit
  16209. 1 = 16-bit
  16210. 6 reserved (82365SL compatibility)
  16211. 5-4 scratchpad
  16212. 3-0 start address bits 23-20
  16213. SeeAlso: #P0823
  16214. Bitfields for Cirrus Logic CL-PD6710/6722/6729 system memory map end high:
  16215. Bit(s) Description (Table P0833)
  16216. 7-6 card timer
  16217. 00 = timer set 0
  16218. 01-11 = timer set 1
  16219. 5-4 scratchpad
  16220. 3-0 end address bits 23-20
  16221. SeeAlso: #P0823
  16222. Bitfields for Cirrus Logic CL-PD6710/6722/6729 card memory map offset high:
  16223. Bit(s) Description (Table P0834)
  16224. 7 window write protect enable
  16225. 6 -REG active for window accesses
  16226. 5-0 offset address bits 25-20
  16227. SeeAlso: #P0823
  16228. Bitfields for Cirrus Logic CL-PD6710/6722/6729 misc control 1:
  16229. Bit(s) Description (Table P0835)
  16230. 7 INPACK enable (no effect on CL-PD6729)
  16231. 6-5 scratchpad
  16232. 4 speaker enable
  16233. 3 system IRQ triggering
  16234. 0 = level
  16235. 1 = pulse
  16236. 2 management interrupt triggering (as for bit 3)
  16237. 1 Vcc voltage
  16238. 0 = 5V
  16239. 1 = 3.3V
  16240. 0 (CL-PD6710) voltage detect
  16241. 0 = 3.3V card detected
  16242. 0 = old or 5V card detected
  16243. (CL-PD6722) reserved (A_GPSTB/B_GPSTB level read on some versions)
  16244. (CL-PD6729) multimedia enable (tri-state socket address lines A25-4)
  16245. (register 2Fh extended index 25h bit 7 must be 1)
  16246. SeeAlso: #P0823
  16247. Bitfields for Cirrus Logic CL-PD6710/6722/6729 FIFO control:
  16248. Bit(s) Description (Table P0836)
  16249. 7 (read) FIFO status
  16250. 0 = data in FIFO
  16251. 1 = FIFO empty
  16252. (write) FIFO flush
  16253. 0 = no operation
  16254. 1 = flush FIFO
  16255. 6-0 scratchpad
  16256. SeeAlso: #P0823
  16257. Bitfields for Cirrus Logic CL-PD6710/6722/6729 misc control 2:
  16258. Bit(s) Description (Table P0837)
  16259. 7 IRQ15 connected to ring indicate pin
  16260. 6 (CL-PD6710/6729) reserved
  16261. (CL-PD6722) DMA system enable
  16262. 5 floppy change bit compatibility enable (tri-state bit 7 of socket I/O
  16263. at addresses 3F7h and 377h)
  16264. (CL-PD6729) reserved
  16265. 4 drive LED enable (should be set to 0 in memory card interface mode)
  16266. (CL-PD6729) reserved
  16267. 3 core voltage
  16268. 0 = 3.3V
  16269. 1 = 5V
  16270. 2 suspend mode enable
  16271. 1 low-power dynamic mode
  16272. 0 = clock always runs
  16273. 1 = stop clock when possible (normal operation)
  16274. 0 frequency synthesizer bypass
  16275. 0 = internal clock = CLK input * 7/4 (normal operation)
  16276. 1 = internal clock = CLK input
  16277. (CL-PD6729) external clock enable
  16278. 0 = internal clock = PCI_CLK input / 2
  16279. 1 = internal clock = IRQ14/EXT_CLK / 2
  16280. SeeAlso: #P0823
  16281. Bitfields for Cirrus Logic CL-PD6710/6722/6729 chip information:
  16282. Bit(s) Description (Table P0838)
  16283. 7-6 Cirrus Logic host-adapter identification (read-only)
  16284. 00 = second read after I/O write to this register
  16285. 11 = first read after I/O write to this register
  16286. 5-0 (CL-PD6729) CL-PD6729 revision (read-only)
  16287. 21h = register 2Fh extended indexes 34h-3Bh indicate chip revision and
  16288. features
  16289. 5 (CL-PD6710/6722) CL-PD67xx sockets (read-only)
  16290. 0 = single (CL-PD6710)
  16291. 1 = dual (CL-PD6722)
  16292. 4-1 (CL-PD6710/6722) CL-PD67xx revision (read-only)
  16293. 0 (CL-PD6710) reserved (0) (read-only)
  16294. (CL-PD6722) reserved (1) (read-only)
  16295. SeeAlso: #P0823
  16296. Bitfields for Cirrus Logic CL-PD6710/6722/6729 ATA control:
  16297. Bit(s) Description (Table P0839)
  16298. 7 (ATA mode) A25 / CSEL pin value (vendor specific)
  16299. 6 (ATA mode) A24 / M/S pin value (vendor specific)
  16300. 5 (ATA mode) A23 / VU pin value (vendor specific)
  16301. 4 (ATA mode) A22 pin value (vendor specific)
  16302. 3 (ATA mode) A21 pin value (vendor specific)
  16303. 2 scratchpad
  16304. 1 speaker is LED input (if register 1Eh bit 4 = 1) (should be set to 0
  16305. in memory card interface mode)
  16306. (CL-PD6729) speaker is LED input (if register 2Fh extended index 03h
  16307. bit 4 = 1) (should be set to 0 in memory card interface mode)
  16308. 0 ATA mode enable
  16309. SeeAlso: #P0823
  16310. Bitfields for Cirrus Logic CL-PD6710/6722/6729 card I/O map offset address low:
  16311. Bit(s) Description (Table P0840)
  16312. 7-1 offset address bits 7-1
  16313. 0 reserved (must be 0)
  16314. SeeAlso: #P0823
  16315. Bitfields for Cirrus Logic CL-PD6710/6722/6729 setup/command/recovery timing:
  16316. Bit(s) Description (Table P0841)
  16317. 7-6 prescaler
  16318. 00 = 1
  16319. 01 = 16
  16320. 10 = 256
  16321. 11 = (CL-PD6710/6722) 8192
  16322. (CL-PD6729) 4096
  16323. 5-0 multiplier value
  16324. Notes: internal clock cycles = (prescalar * multiplier) + 1
  16325. changes take effect immediately and should only be changed when FIFO
  16326. is empty (register 17h bit 7 = 1)
  16327. SeeAlso: #P0823
  16328. (Table P0842)
  16329. Values for Cirrus Logic CL-PD6722/6729 extended index:
  16330. 00h scratchpad
  16331. 01h (CL-PD6722) data mask 0 (see #P0843)
  16332. (CL-PD6729) reserved
  16333. 02h (CL-PD6722) data mask 1 (see #P0843)
  16334. (CL-PD6729) reserved
  16335. 03h extension control 1 (see #P0844)
  16336. 04h (CL-PD6722) maximum DMA acknowledge delay (see #P0845)
  16337. (CL-PD6729) reserved
  16338. 05h-09h (CL-PD6722) reserved
  16339. 05h (CL-PD6729) system memory map 0 upper address (start/end address
  16340. bits 31-24)
  16341. 06h (CL-PD6729) system memory map 1 upper address (start/end address
  16342. bits 31-24)
  16343. 07h (CL-PD6729) system memory map 2 upper address (start/end address
  16344. bits 31-24)
  16345. 08h (CL-PD6729) system memory map 3 upper address (start/end address
  16346. bits 31-24)
  16347. 09h (CL-PD6729) system memory map 4 upper address (start/end address
  16348. bits 31-24)
  16349. 0Ah (CL-PD6722) external data (see #P0846)
  16350. (CL-PD6729 socket B) external data (see #P0847)
  16351. 0Bh (CL-PD6722) extension control 2 (see #P0848)
  16352. 25h (CL-PD6729) misc. control 3 (see #P0849)
  16353. ---CL-PD6729 socket A---
  16354. 34h mask revision byte (read-only)
  16355. 35h product ID byte (read-only) (see #P0850)
  16356. 36h device capability byte A (read-only) (see #P0851)
  16357. 37h device capability byte B (read-only) (see #P0852)
  16358. 38h device implementation byte A (see #P0853)
  16359. 39h device implementation byte B (see #P0854)
  16360. 3Ah device implementation byte C (see #P0855)
  16361. 3Bh device implementation byte D (see #P0856)
  16362. SeeAlso: #P0823
  16363. Bitfields for Cirrus Logic CL-PD6722 data mask:
  16364. Bit(s) Description (Table P0843)
  16365. 7-0 data mask for corresponding I/O map
  16366. 0 = no mask
  16367. 1 = mask corresponding bit from data
  16368. SeeAlso: #P0842
  16369. Bitfields for Cirrus Logic CL-PD6722/6729 extension control 1:
  16370. Bit(s) Description (Table P0844)
  16371. 7-6 (CL-PD6722) DMA mode
  16372. 00 = disabled
  16373. 01 = enabled, INPACK used as active-low DREQ input
  16374. 10 = enabled, WP/IOIS16 used as active-low DREQ input
  16375. 11 = enabled, BVD2/SPKR used as active-low DREQ input
  16376. (CL-PD6729) reserved
  16377. 5 pull-ups disable
  16378. 4-3 (CL-PD6722) reserved
  16379. 4 (CL-PD6729) management IRQ output invert
  16380. 0 = management IRQ is active-high
  16381. 1 = management IRQ is active-low and open-drain
  16382. 3 (CL-PD6729) card IRQ output invert
  16383. 0 = card IRQ is active-high
  16384. 1 = card IRQ is active-low and open-drain
  16385. 2 LED activity enable
  16386. 1 auto power clear disable (register 02h bit 4 is not cleared when card
  16387. is removed)
  16388. 0 Vcc power bit (register 02h bit 4) lock enable
  16389. SeeAlso: #P0842
  16390. Bitfields for Cirrus Logic CL-PD6722 maximum DMA acknowledge delay:
  16391. Bit(s) Description (Table P0845)
  16392. 7-0 maximum DMA acknowledge delay
  16393. 10h = 14 clocks
  16394. 20h = 10 clocks
  16395. 30h = 18 clocks
  16396. 40h = 8 clocks
  16397. 50h = 16 clocks
  16398. 60h = 12 clocks
  16399. 80h = 7 clocks
  16400. 90h = 15 clocks
  16401. A0h = 11 clocks
  16402. B0h = 19 clocks
  16403. C0h = 9 clocks
  16404. D0h = 17 clocks
  16405. E0h = 13 clocks
  16406. SeeAlso: #P0842
  16407. Bitfields for Cirrus Logic CL-PD6722 external data (socket A):
  16408. Bit(s) Description (Table P0846)
  16409. --- register 2Fh extended index 0Bh bits 4-3 = 00 ---
  16410. 7-0 (socket A) scratchpad
  16411. 7-4 (socket B) scratchpad
  16412. 3 (socket B) socket B VS2# input level (read-only)
  16413. 2 (socket B) socket B VS1# input level (read-only)
  16414. 1 (socket B) socket A VS2# input level (read-only)
  16415. 0 (socket B) socket A VS1# input level (read-only)
  16416. --- register 2Fh extended index 0Bh bits 4-3 = 01 ---
  16417. 7-0 external read port
  16418. --- register 2Fh extended index 0Bh bits 4-3 = 10 ---
  16419. 7-0 external write port (read returns value written)
  16420. --- register 2Fh extended index 0Bh bits 4-3 = 10 ---
  16421. 7-0 reserved
  16422. ------
  16423. Note: for software compatibility this register should only be used as write
  16424. port, and bits 7-4 should be ignored
  16425. SeeAlso: #P0842
  16426. Bitfields for Cirrus Logic CL-PD6729 external data:
  16427. Bit(s) Description (Table P0847)
  16428. 7-4 reserved
  16429. 3 socket B VS2# input level (read-only)
  16430. 2 socket B VS1# input level (read-only)
  16431. 1 socket A VS2# input level (read-only)
  16432. 0 socket A VS1# input level (read-only)
  16433. SeeAlso: #P0842
  16434. Bitfields for Cirrus Logic CL-PD6722 extension control 2:
  16435. Bit(s) Description (Table P0848)
  16436. 7-6 reserved (0)
  16437. 5 GPSTB output
  16438. 0 = active-low
  16439. 1 = active-high
  16440. 4 GPSTB on IOW
  16441. 0 = A_GPSTB used as voltage sense
  16442. 1 = A_GPSTB used to strobe I/O writes on SD15-8
  16443. 3 GPSTB on IOR
  16444. 0 = B_GPSTB used as voltage sense
  16445. 1 = B_GPSTB used to strobe I/O writes on SD15-8
  16446. 2 totem-pole GPSTB
  16447. 0 = GPSTB outputs are open-collector
  16448. 1 = GPSTB outputs are totem-pole (high level driven to +5V pin level
  16449. instead of high-impedance)
  16450. 1-0 reserved (0)
  16451. SeeAlso: #P0842
  16452. Bitfields for Cirrus Logic CL-PD6729 misc. control 3:
  16453. Bit(s) Description (Table P0849)
  16454. 7 multimedia arm enable
  16455. 6 multimedia expand enable (allows 24-bit video)
  16456. 5-0 reserved
  16457. SeeAlso: #P0842
  16458. Bitfields for Cirrus Logic CL-PD6729 product ID byte:
  16459. Bit(s) Description (Table P0850)
  16460. 7-4 family code (read-only)
  16461. 2h = CL-PD6729 family
  16462. 3-0 product code (read-only)
  16463. --- family code = 2h ---
  16464. 0h = CL-PD6729 PCI/PCMCIA controller, dual isolated sockets, 208 pin
  16465. 1h-Fh = reserved
  16466. SeeAlso: #P0842
  16467. Bitfields for Cirrus Logic CL-PD6729 device capability byte A:
  16468. Bit(s) Description (Table P0851)
  16469. 7 output LEDs (read-only)
  16470. 0 = single LED
  16471. 1 = LED per socket
  16472. 6 reserved (read-only)
  16473. 5 general purpose strobe (GPSTB) capable (read-only)
  16474. 4 reserved (read-only)
  16475. 3 DMA slave (read-only)
  16476. 2 IDE interface (read-only)
  16477. 1-0 number of sockets (read-only)
  16478. 00 = two
  16479. Note: CL-PD6729 does not support GPSTB even if bit 5 = 1
  16480. SeeAlso: #P0842
  16481. Bitfields for Cirrus Logic CL-PD6729 device capability byte B:
  16482. Bit(s) Description (Table P0852)
  16483. 7 extended definitions (read-only)
  16484. 0 = not available (device capability and implementation definitions
  16485. stop to extended register 3Bh)
  16486. 6-3 reserved (read-only)
  16487. 2 CLKRUN support (read-only)
  16488. 1 LOCK# support (read-only)
  16489. 0 CardBus transfer cycle support (read-only)
  16490. SeeAlso: #P0842
  16491. Bitfields for Cirrus Logic CL-PD6729 device implementation byte A:
  16492. Bit(s) Description (Table P0853)
  16493. 7 RI_OUT wired to ring indicate circuitry
  16494. 6 hardware suspend wired to power management circuitry
  16495. 5 GBSTB B wired
  16496. 4 GBSTB A wired
  16497. 3 VS1/VS2 wired
  16498. 2 slave DMA wired
  16499. 1 sockets present 1
  16500. 0 sockets present 0
  16501. SeeAlso: #P0842
  16502. Bitfields for Cirrus Logic CL-PD6729 device implementation byte B:
  16503. Bit(s) Description (Table P0854)
  16504. 7 reserved
  16505. 6 radio frequency rated sockets
  16506. 5 VPP_VCC 1A capable
  16507. 4 VPP 12V support
  16508. 3 x.xV capable
  16509. 2 y.yV capable
  16510. 1 5.0V capable
  16511. 0 3.3V capable
  16512. SeeAlso: #P0842
  16513. Bitfields for Cirrus Logic CL-PD6729 device implementation byte C:
  16514. Bit(s) Description (Table P0855)
  16515. 7-5 reserved
  16516. 4 socket B wired for ZV operation
  16517. 3 socket A wired for ZV operation
  16518. 2 speaker wired to SPKR_OUT
  16519. 1 separate status LED for each socket
  16520. 0 status LED wired to LED_OUT#
  16521. SeeAlso: #P0842
  16522. Bitfields for Cirrus Logic CL-PD6729 device implementation byte D:
  16523. Bit(s) Description (Table P0856)
  16524. 7 reserved
  16525. 6 external clock wired to EXT_CLK
  16526. 5-2 reserved
  16527. 1 LOCK# wired
  16528. 0 CLKRUN wired
  16529. SeeAlso: #P0842
  16530. ----------P03E003E7--------------------------
  16531. PORT 03E0-03E7 - LPT port address on the UniRAM card by German magazine c't
  16532. Range: selectable from PORT 0260h, PORT 02E0h, PORT 02E8h, PORT 02F0h,
  16533. PORT 03E0h, or PORT 03E8h.
  16534. SeeAlso: PORT 03E8h"UniRAM"
  16535. ----------P03E003E7--------------------------
  16536. PORT 03E0-03E7 - COM port addresses on UniRAM card by German magazine c't
  16537. Range: selectable from PORT 0238h, PORT 02E8h, PORT 02F8h, PORT 0338h,
  16538. PORT 03E0h, PORT 03E8h, or PORT 03F8h
  16539. SeeAlso: PORT 03E0h"UniRAM"
  16540. ----------P03E203E3--------------------------
  16541. PORT 03E2-03E3 - OPTi 82C824 - CardBus Bridge registers
  16542. Range: PORT 03E0h or PORT 03E2h
  16543. SeeAlso: PORT 03E0h"CardBus"
  16544. 03E2 ?W index for data register
  16545. 03E3 RW CardBus registers
  16546. ----------P03E803EF--------------------------
  16547. PORT 03E8-03EF - serial port, same as 02E8, 02F8 and 03F8 (COM3)
  16548. SeeAlso: PORT 03F8h-03FFh
  16549. ----------P03E803EF--------------------------
  16550. PORT 03E8-03EF - COM port addresses on UniRAM card by German magazine c't
  16551. Range: selectable from PORT 0238h, PORT 02E8h, PORT 02F8h, PORT 0338h,
  16552. PORT 03E0h, PORT 03E8h, or PORT 03F8h
  16553. SeeAlso: PORT 03E0h"UniRAM"
  16554. ----------P03E803EF--------------------------
  16555. PORT 03E8-03EF - LPT port address on the UniRAM card by German magazine c't
  16556. Range: selectable from PORT 0260h, PORT 02E0h, PORT 02E8h, PORT 02F0h,
  16557. PORT 03E0h, or PORT 03E8h.
  16558. SeeAlso: PORT 03E8h"UniRAM"
  16559. ----------P03EB------------------------------
  16560. PORT 03EB - GI1904 Scanner Interface Adapter
  16561. Range: PORT 022Bh, PORT 026Bh, PORT 02ABh (default), PORT 02EBh, PORT 032Bh,
  16562. PORT 036Bh, PORT 03ABh
  16563. ----------P03EC------------------------------
  16564. PORT 03EC - GS-IF Scanner Interface adapter
  16565. Range: PORT 022Ch, PORT 026Ch, PORT 02ACh, PORT 02ECh (default),
  16566. PORT 032Ch, PORT 036Ch, PORT 03ACh, PORT 03ECh
  16567. Note: many SPI 400dpi/800dpi gray / H/T handy scanner by Marstek, Mustek and
  16568. others use this interface
  16569. ----------P03F003F7--------------------------
  16570. PORT 03F0-03F7 - FDC 1 (1st Floppy Disk Controller) second FDC at 0370
  16571. Note: floppy disk controller is usually an 8272, 8272A, NEC765 (or
  16572. compatible), or an 82072 or 82077AA for perpendicular recording at
  16573. 2.88M
  16574. SeeAlso: PORT 0370h-0377h
  16575. 03F0 R- diskette controller status A (PS/2) (see #P0857)
  16576. 03F0 R- diskette controller status A (PS/2 model 30) (see #P0858)
  16577. 03F0 R- diskette EHD controller board jumper settings (82072AA) (see #P0859)
  16578. 03F1 R- diskette controller status B (PS/2) (see #P0860)
  16579. 03F1 R- diskette controller status B (PS/2 model 30) (see #P0861)
  16580. 03F2 -W diskette controller DOR (Digital Output Register) (see #P0862)
  16581. 03F3 ?W tape drive register (on the 82077AA)
  16582. bit 7-2 reserved, tri-state
  16583. bit 1-0 tape select
  16584. =00 none, drive 0 cannot be a tape drive.
  16585. =01 drive1
  16586. =10 drive2
  16587. =11 drive3
  16588. 03F4 R- diskette controller main status register (see #P0865)
  16589. Note: in non-DMA mode, all data transfers occur through
  16590. PORT 03F5h and the status registers (bit 5 here
  16591. indicates data read/write rather than than
  16592. command/status read/write)
  16593. 03F4 -W diskette controller data rate select register (see #P0866)
  16594. 03F5 R- diskette command/data register 0 (ST0) (see #P0867)
  16595. status register 1 (ST1) (see #P0868)
  16596. status register 2 (ST2) (see #P0869)
  16597. status register 3 (ST3) (see #P0870)
  16598. 03F5 -W diskette command register. The commands summarized here are
  16599. mostly multibyte commands. This is for brief recognition only.
  16600. (see #P0873)
  16601. 03F6 -- reserved on FDC
  16602. 03F6 rW FIXED disk controller data register (see #P0871)
  16603. 03F7 RW harddisk controller (see #P0872)
  16604. 03F7 R- diskette controller DIR (Digital Input Register, PC/AT mode)
  16605. bit 7 = 1 diskette change
  16606. bit 6-0 tri-state on FDC
  16607. 03F7 R- diskette controller DIR (Digital Input Register, PS/2 mode)
  16608. (see #P0863)
  16609. 03F7 R- diskette controller DIR (Digital Input Register, PS/2 model 30)
  16610. (see #P0864)
  16611. 03F7 -W configuration control register (PC/AT, PS/2)
  16612. bit 7-2 reserved, tri-state
  16613. bit 1-0 = 00 500 Kb/S mode (MFM)
  16614. = 01 300 Kb/S mode (MFM)
  16615. = 10 250 Kb/S mode (MFM)
  16616. = 11 1 Mb/S mode (MFM) (on 82072/82077AA)
  16617. conflict bit 0 FIXED DISK drive 0 select
  16618. 03F7 -W configuration control register (PS/2 model 30)
  16619. bit 7-3 reserved, tri-state
  16620. bit 2 NOPREC (has no function. set to 0 by hardreset)
  16621. bit 1-0 = 00 500 Kb/S mode (MFM)
  16622. = 01 300 Kb/S mode (MFM)
  16623. = 10 250 Kb/S mode (MFM)
  16624. = 11 1 Mb/S mode (MFM) (on 82072/82077AA)
  16625. conflict bit 0 FIXED DISK drive 0 select
  16626. Bitfields for diskette controller status A (PS/2):
  16627. Bit(s) Description (Table P0857)
  16628. 7 interrupt pending
  16629. 6 -DRV2 second drive installed
  16630. 5 step
  16631. 4 -track 0
  16632. 3 head 1 select
  16633. 2 -index
  16634. 1 -write protect
  16635. 0 +direction
  16636. SeeAlso: #P0858,#P0860
  16637. Bitfields for diskette controller status A (PS/2 model 30):
  16638. Bit(s) Description (Table P0858)
  16639. 7 interrupt pending
  16640. 6 DRQ
  16641. 5 step F/F
  16642. 4 -track 0
  16643. 3 head 1 select
  16644. 2 +index
  16645. 1 +write protect
  16646. 0 -direction
  16647. SeeAlso: #P0857,#P0859,#P0861
  16648. Bitfields for diskette EHD controller board jumper settings:
  16649. Bit(s) Description (Table P0859)
  16650. 7-6 drive 3
  16651. 5-4 drive 2
  16652. 3-2 drive 1
  16653. 1-0 drive 0
  16654. 00 1.2Mb
  16655. 01 720Kb
  16656. 10 2.8Mb
  16657. 11 1.4Mb
  16658. SeeAlso: #P0857
  16659. Bitfields for diskette controller status B (PS/2):
  16660. Bit(s) Description (Table P0860)
  16661. 7-6 reserved (1)
  16662. 5 drive select (0=A:, 1=B:)
  16663. 4 write data
  16664. 3 read data
  16665. 2 write enable
  16666. 1 motor enable 1
  16667. 0 motor enable 0
  16668. SeeAlso: #P0857,#P0861
  16669. Bitfields for diskette controller status B (PS/2 model 30):
  16670. Bit(s) Description (Table P0861)
  16671. 7 -DRV2 second drive installed
  16672. 6 -DS1
  16673. 5 -DS0
  16674. 4 write data F/F
  16675. 3 read data F/F
  16676. 2 write enable F/F
  16677. 1 -DS3
  16678. 0 -DS2
  16679. SeeAlso: #P0858,#P0860
  16680. Bitfields for diskette controller Digital Output Register (DOR):
  16681. Bit(s) Description (Table P0862)
  16682. 7-6 reserved on PS/2
  16683. 7 drive 3 motor enable
  16684. 6 drive 2 motor enable
  16685. 5 drive 1 motor enable
  16686. 4 drive 0 motor enable
  16687. 3 diskette DMA enable (reserved PS/2)
  16688. 2 =1 FDC enable (controller reset)
  16689. =0 hold FDC at reset
  16690. 1-0 drive select (0=A 1=B ..)
  16691. SeeAlso: #P0857,#P0865,#P0866,#P0863
  16692. Bitfields for diskette controller Digital Input Register (PS/2 mode):
  16693. Bit(s) Description (Table P0863)
  16694. 7 = 1 diskette change
  16695. 6-3 = 1
  16696. 2 datarate select1
  16697. 1 datarate select0
  16698. 0 = 0 high density select (500Kb/s, 1Mb/s)
  16699. 0 (conflict) FIXED DISK drive 0 select
  16700. SeeAlso: #P0864,#P0862
  16701. Bitfields for diskette controller Digital Input Register (PS/2 model 30):
  16702. Bit(s) Description (Table P0864)
  16703. 7 = 0 diskette change
  16704. 6-4 = 0
  16705. 3 -DMA gate (value from DOR register)
  16706. 2 NOPREC (value from CCR register)
  16707. 1 datarate select1
  16708. 0 datarate select0
  16709. 0 (conflict) FIXED DISK drive 0 select
  16710. SeeAlso: #P0863
  16711. Bitfields for diskette controller main status register:
  16712. Bit(s) Description (Table P0865)
  16713. 7 =1 RQM data register is ready
  16714. =0 no access is permitted
  16715. 6 =1 transfer is from controller to system
  16716. =0 transfer is from system to controller
  16717. 5 non-DMA mode
  16718. 4 diskette controller is busy
  16719. 3 drive 3 busy (reserved on PS/2)
  16720. 2 drive 2 busy (reserved on PS/2)
  16721. 1 drive 1 busy (= drive is in seek mode)
  16722. 0 drive 0 busy (= drive is in seek mode)
  16723. SeeAlso: #P0862
  16724. Bitfields for diskette controller data rate select register:
  16725. Bit(s) Description (Table P0866)
  16726. 7-2 reserved on 8272
  16727. 7 software reset (self clearing) 82072/82077AA
  16728. 6 power down 82072/82077AA
  16729. 5 (8272/82077AA) reserved (0)
  16730. (82072) PLL select bit
  16731. 4-2 write precompensation value, 000 default
  16732. 1-0 data rate select
  16733. =00 500 Kb/S MFM 250 Kb/S FM
  16734. =01 300 Kb/S MFM 150 Kb/S FM
  16735. =10 250 Kb/S MFM 125 Kb/S FM
  16736. =11 1Mb/S MFM illegal FM on 8207x
  16737. SeeAlso: #P0862
  16738. Bitfields for diskette command/data register 0 (ST0):
  16739. Bit(s) Description (Table P0867)
  16740. 7-6 last command status
  16741. 00 command terminated successfully
  16742. 01 command terminated abnormally
  16743. 10 invalid command
  16744. 11 terminated abnormally by change in ready signal
  16745. 5 seek completed
  16746. 4 equipment check occurred after error
  16747. 3 not ready
  16748. 2 head number at interrupt
  16749. 1-0 unit select (0=A 1=B .. ) (on PS/2: 01=A 10=B)
  16750. SeeAlso: #P0868,#P0869,#P0870
  16751. Bitfields for diskette status register 1 (ST1):
  16752. Bit(s) Description (Table P0868)
  16753. 7 end of cylinder; sector# greater then sectors/track
  16754. 6 =0
  16755. 5 CRC error in ID or data field
  16756. 4 overrun
  16757. 3 =0
  16758. 2 sector ID not found
  16759. 1 write protect detected during write
  16760. 0 ID address mark not found
  16761. SeeAlso: #P0867,#P0869,#P0870
  16762. Bitfields for diskette status register 2 (ST2):
  16763. Bit(s) Description (Table P0869)
  16764. 7 =0
  16765. 6 deleted Data Address Mark detected
  16766. 5 CRC error in data
  16767. 4 wrong cylinder detected
  16768. 3 scan command equal condition satisfied
  16769. 2 scan command failed, sector not found
  16770. 1 bad cylinder, ID not found
  16771. 0 missing Data Address Mark
  16772. SeeAlso: #P0867,#P0868,#P0870
  16773. Bitfields for diskette status register 3 (ST3):
  16774. Bit(s) Description (Table P0870)
  16775. 7 fault status signal
  16776. 6 write protect status
  16777. 5 ready status
  16778. 4 track zero status
  16779. 3 two sided status signal
  16780. 2 side select (head select)
  16781. 1-0 unit select (0=A 1=B .. )
  16782. SeeAlso: #P0867,#P0868,#P0869
  16783. Bitfields for fixed disk controller data register:
  16784. Bit(s) Description (Table P0871)
  16785. 7-4 reserved
  16786. 3 =0 reduce write current
  16787. =1 head select 3 enable
  16788. 2 disk reset enable
  16789. 1 disk initialization disable
  16790. 0 reserved
  16791. SeeAlso: #P0862,#P0872
  16792. Bitfields for hard disk controller:
  16793. Bit(s) Description (Table P0872)
  16794. 6 FIXED DISK write gate
  16795. 5 FIXED DISK head select 3 / reduced write current
  16796. 4 FIXED DISK head select 2
  16797. 3 FIXED DISK head select 1
  16798. 2 FIXED DISK head select 0
  16799. 1 FIXED DISK drive 1 select
  16800. 0 FIXED DISK drive 0 select
  16801. SeeAlso: #P0871
  16802. (Table P0873)
  16803. Values for diskette commands:
  16804. MFM = MFM mode selected, opposite of MF mode
  16805. HDS = head select
  16806. DS = drive select
  16807. MT = multi track operation
  16808. SK = skip deleted data address mark
  16809. Command # bytes D7 6 5 4 3 2 1 0
  16810. read track 9 0 MFM 0 0 0 0 1 0
  16811. 0 0 0 0 0 HDS DS1 DS0
  16812. specify 3 0 0 0 O O O 1 1
  16813. sense drive status 2 0 0 0 0 0 1 0 0
  16814. 0 0 0 0 0 HDS DS1 DS0
  16815. write data 9 MT MFM 0 0 0 1 0 1
  16816. 0 0 0 0 0 HDS DS1 DS0
  16817. read data 9 MT MFM SK 0 0 1 1 0
  16818. 0 0 0 0 0 HDS DS1 DS0
  16819. recalibrate 2 0 0 0 0 0 1 1 1
  16820. 0 0 0 0 0 0 DS1 DS0
  16821. sense interrupt status 1 0 0 0 0 1 0 0 0
  16822. write deleted data 9 MT MFM 0 0 1 0 0 1
  16823. 0 0 0 0 0 HDS DS1 DS0
  16824. read ID 2 0 MFM 0 0 1 0 1 0
  16825. 0 0 0 0 0 HDS DS1 DS0
  16826. read deleted data 9 MT MFM SK 0 1 1 0 0
  16827. 0 0 0 0 0 HDS DS1 DS0
  16828. format track 10 0 MFM 0 0 1 1 0 1
  16829. 0 0 0 0 0 HDS DS1 DS0
  16830. dumpreg ** 1 0 0 0 0 1 1 1 0
  16831. seek 3 0 0 0 0 1 1 1 1
  16832. 0 0 0 0 0 HDS DS1 DS0
  16833. version** (see #P0874) 1 0 0 0 1 0 0 0 0
  16834. scan equal * 9 MT MFM SK 1 0 0 0 1
  16835. 0 0 0 0 0 HDS DS1 DS0
  16836. perpendicular mode ** 2 0 0 0 1 0 0 1 0
  16837. 0 0 0 0 0 0 WGATE GAP
  16838. configure ** 4 0 0 0 1 0 0 1 1
  16839. 0 0 0 0 0 0 0 0
  16840. unlock FIFO ** 1 0 0 0 1 0 1 0 0
  16841. verify 9 MT MFM SK 1 0 1 1 0
  16842. EC 0 0 0 0 HDS DS1 DS0
  16843. partid ** (see #P0874) 1 0 0 0 1 1 0 0 0
  16844. scan low or equal * 9 MT MFM SK 1 1 0 0 1
  16845. 0 0 0 0 0 HDS DS1 DS0
  16846. scan high or equal * 9 MT MFM SK 1 1 1 0 1
  16847. 0 0 0 0 0 HDS DS1 DS0
  16848. exit standby mode *** 1 0 0 1 1 0 1 0 0
  16849. enter standby mode *** 1 0 0 1 1 0 1 0 1
  16850. hard reset *** 1 0 0 1 1 0 1 1 0
  16851. lock FIFO ** 1 1 0 0 1 0 1 0 0
  16852. relative seek ** 3 1 DIR 0 0 1 1 1 1
  16853. 0 0 0 0 0 HDS DS1 DS0
  16854. BEWARE: not every invalid command is treated as invalid!
  16855. * Note: the scan commands aren't mentioned for the 82077AA.
  16856. ** Note: EHD controller commands.
  16857. *** Note: Supported by NEC72065B only.
  16858. (Table P0874)
  16859. Values for FDC Controller chip type identification:
  16860. version lFIFO partid Chip type
  16861. 80h 80h - NEC D765, Intel 8272A or compatible
  16862. 80h 00h - Intel 82072
  16863. 81h - - Very Early Intel 82077 or compatible
  16864. 90h 80h - Old Intel 82077, no FIFO
  16865. 90h ? ? NEC 72065B
  16866. 90h 00h 80h New Intel 82077 (82077AA if port 3x3h bits 1-0 are R/W)
  16867. 90h 00h 41h Intel 82078
  16868. 90h 00h 73h National Semiconductor PC87306
  16869. 90h 00h other Intel 82078 compatible
  16870. A0h - - SMC FDC37c65C+
  16871. Note: Before issuing the partid command, one must first issue an unlock
  16872. FIFO, immediately followed by a lock FIFO instruction. The status
  16873. byte returned by the lock FIFO instruction is used in the table above
  16874. SeeAlso: #P0873
  16875. ----------P03F003F1--------------------------
  16876. PORT 03F0-03F1 - PCTech RZ1000 IDE controller
  16877. Note: to unlock access to these ports instead of the standard floppy
  16878. controller status ports at these two addresses, you must perform
  16879. two immediately successive 8-bit OUTs of 55h to PORT 03F0h (there
  16880. is a fairly small time limit between the two accesses, so there
  16881. should be no other instructions between the two OUTs); after
  16882. that, values written to PORT 03F0h select the data accessed through
  16883. PORT 03F1h until an AAh is written to 03F0h
  16884. SeeAlso: #00732
  16885. 03F0 ?W index port (see #P0875)
  16886. 03F1 RW data port
  16887. (Table P0875)
  16888. Values for RZ1000 IDE controller registers:
  16889. 00h ???
  16890. bit 7:
  16891. bit 1:
  16892. bit 0:
  16893. 01h ???
  16894. 02h ???
  16895. 03h ???
  16896. 04h ???
  16897. 05h ???
  16898. bit 1:
  16899. AAh lock control port
  16900. ----------P03F803FF--------------------------
  16901. PORT 03F8-03FF - Serial port (8250,8250A,8251,16450,16550,16550A,etc.) COM1
  16902. Range: PORT 02E8h-02EFh (COM2), PORT 02F8h-02FFh (typical non-PS/2 COM3), and
  16903. PORT 03E8h-03EFh (typical non-PS/2 COM4)
  16904. Note: chips overview:
  16905. 8250 original PC, specified up to 56Kbd, but mostly runs
  16906. only 9600Bd, no scratchregister, bug: sometimes shots
  16907. ints without reasons
  16908. 8250A, 16450, 16C451: ATs, most chips run up to 115KBd,
  16909. no bug: shots no causeless ints
  16910. 8250B: PC,XT,AT, pseudo bug: shots one causeless int for
  16911. compatibility with 8250, runs up to 56KBd
  16912. 16550, 16550N, 16550V: early PS/2, FIFO bugs
  16913. 16550A,16550AF,16550AFN,16550C,16C551,16C552: PS/2, FIFO ok
  16914. 82510: laptops & industry, multi emulation mode
  16915. (default=16450), special-FIFO.
  16916. 8251: completely different synchronous SIO chip, not compatible!
  16917. SeeAlso: INT 14/AH=00h"SERIAL"
  16918. 03F8 -W serial port, transmitter holding register (THR), which contains the
  16919. character to be sent. Bit 0 is sent first.
  16920. bit 7-0 data bits when DLAB=0 (Divisor Latch Access Bit)
  16921. 03F8 R- receiver buffer register (RBR), which contains the received
  16922. character. Bit 0 is received first
  16923. bit 7-0 data bits when DLAB=0 (Divisor Latch Access Bit)
  16924. 03F8 RW divisor latch low byte (DLL) when DLAB=1 (see #P0876)
  16925. 03F9 RW divisor latch high byte (DLM) when DLAB=1 (see #P0876)
  16926. 03F9 RW interrupt enable register (IER) when DLAB=0 (see #P0877)
  16927. 03FA R- interrupt identification register (see #P0878)
  16928. Information about a pending interrupt is stored here. When the ID
  16929. register is addressed, thehighest priority interrupt is held, and
  16930. no other interrupts are acknowledged until the CPU services that
  16931. interrupt.
  16932. 03FA -W 16650 FIFO Control Register (FCR) (see #P0879)
  16933. 03FB RW line control register (LCR) (see #P0880)
  16934. 03FC RW modem control register (see #P0881)
  16935. 03FD R- line status register (LSR) (see #P0882)
  16936. 03FE R- modem status register (MSR) (see #P0883)
  16937. 03FF RW scratch register (SCR)
  16938. (not used for serial I/O; available to any application using 16450,
  16939. 16550) (not present on original 8250)
  16940. (Table P0876)
  16941. Values for serial port divisor latch registers:
  16942. Some baudrates (using standard 1.8432 Mhz clock):
  16943. baudrate divisor DLM DLL
  16944. 50 2304 09h 00h
  16945. 75 1536 06h 00h
  16946. 110 1047 04h 17h
  16947. 134,5 857 03h 59h
  16948. 150 768 03h 00h
  16949. 300 384 01h 80h
  16950. 600 192 00h C0h
  16951. 1200 96 00h 60h
  16952. 1800 64 00h 40h
  16953. 2000 58 00h 3Ah
  16954. 2400 48 00h 30h
  16955. 3600 32 00h 20h
  16956. 4800 24 00h 18h
  16957. 7200 16 00h 10h
  16958. 9600 12 00h 0Ch
  16959. 19200 6 00h 06h
  16960. 38400 3 00h 03h
  16961. 57600 2 00h 02h
  16962. 115200 1 00h 01h
  16963. Note: MIDI baudrate 32250Bd with 4Mhz quarz for c't MIDI interface
  16964. following c't 01/1991: '14400' 00h 08h
  16965. Bitfields for serial port interrupt enable register (IER):
  16966. Bit(s) Description (Table P0877)
  16967. 7-6 reserved (0)
  16968. 5 (82510) "timer"
  16969. (other) reserved (0)
  16970. 4 (82510) "transmit machine"
  16971. (other) reserved (0)
  16972. 3 modem-status interrupt enable
  16973. 2 receiver-line-status interrupt enable
  16974. 1 transmitter-holding-register empty interrupt enable
  16975. 0 received-data-available interrupt enable
  16976. (also 16550(A) timeout interrupt)
  16977. Note: 16550(A) will interrupt with a timeout if data exists in the FIFO
  16978. and isn't read within the time it takes to receive four bytes or if
  16979. no data is received within the time it takes to receive four bytes
  16980. SeeAlso: #P0878
  16981. Bitfields for serial port interrupt identification register (IIR):
  16982. Bit(s) Description (Table P0878)
  16983. 7-6 =00 reserved on 8250, 8251, 16450
  16984. =01 if FIFO queues enabled but unusable (16550 only)
  16985. =11 if FIFO queues are enabled (16550A only) (see also #P0879)
  16986. 6-5 used by 82510 for bank select (00 = default bank0)
  16987. 5-4 reserved (0)
  16988. 3-1 identify pending interrupt with the highest priority
  16989. 110 (16550,82510) timeout interrupt pending
  16990. 101 (82510) timer interrupt (see #P0877)
  16991. 100 (82510) transmit machine (see #P0877)
  16992. 011 receiver line status interrupt. priority=highest
  16993. 010 received data available register interrupt. pr.=second
  16994. 001 transmitter holding register empty interrupt. pr.=third
  16995. 000 modem status interrupt. priority=fourth
  16996. 0 =0 interrupt pending. contents of register can be used as a pointer
  16997. to the appropriate interrupt service routine
  16998. =1 no interrupt pending
  16999. Notes: interrupt pending flag uses reverse logic, 0=pending, 1=none
  17000. interrupt will occur if any of the line status bits are set
  17001. THRE bit is set when THRE register is emptied into the TSR
  17002. SeeAlso: #P0877
  17003. Bitfields for serial port FIFO control register (FCR):
  17004. Bit(s) Description (Table P0879)
  17005. 7-6 received data available interrupt trigger level (16550)
  17006. 00 1 byte
  17007. 01 4 bytes
  17008. 10 8 bytes
  17009. 11 14 bytes
  17010. 6-5 =00 (used to enable 4 byte Rx/Tx FIFOs on 82510???)
  17011. =10 ???
  17012. 5-4 reserved (00)
  17013. 3 change RXRDY TXRDY pins from mode 0 to mode 1
  17014. 2 clear XMIT FIFO
  17015. 1 clear RCVR FIFO
  17016. 0 enable clear XMIT and RCVR FIFO queues
  17017. 4-0 (other purpose on 82510???)
  17018. Notes: bit 0 must be set in order to write to other FCR bits
  17019. bit 1 when set the RCVR FIFO is cleared and this bit is reset
  17020. the receiver shift register is not cleared
  17021. bit 2 when set the XMIT FIFO is cleared and this bit is reset
  17022. the transmit shift register is not cleared
  17023. due to a hardware bug, 16550 FIFOs don't work correctly (this
  17024. was fixed in the 16550A)
  17025. SeeAlso: #P0878
  17026. Bitfields for serial port Line Control Register (LCR):
  17027. Bit(s) Description (Table P0880)
  17028. 7 =1 divisor latch access bit (DLAB)
  17029. =0 receiver buffer, transmitter holding, or interrupt enable register
  17030. access
  17031. 6 set break enable. serial ouput is forced to spacing state and remains
  17032. there.
  17033. 5-3 PM2 PM1 PM0
  17034. x x 0 = no parity
  17035. 0 0 1 = odd parity
  17036. 0 1 1 = even parity
  17037. 1 0 1 = high parity (sticky)
  17038. 1 1 1 = low parity (sticky)
  17039. x x 1 = software parity
  17040. 2 stop bit length (STB/SBL)
  17041. 0 one stop bit
  17042. 1 2 stop bits with (word length 6, 7, 8)
  17043. 1.5 stop bits with word length 5
  17044. 1-0 (WLS1-0, CL1-0)
  17045. 00 word length is 5 bits
  17046. 01 word length is 6 bits
  17047. 10 word length is 7 bits
  17048. 11 word length is 8 bits
  17049. SeeAlso: #P0881,#P0882,#P0883
  17050. Bitfields for serial port Modem Control Register (MCR):
  17051. Bit(s) Description (Table P0881)
  17052. 7-6 reserved (0)
  17053. 5 (82510 only) state of OUT0 pin
  17054. 4 loopback mode for diagnostic testing of serial port
  17055. output of transmitter shift register is looped back to receiver
  17056. shift register input. In this mode, transmitted data is received
  17057. immediately so that the CPU can verify the transmit data/receive
  17058. data serial port paths.
  17059. If OUT2 is disabled, there is no official way to generate an IRQ
  17060. during loopback mode.
  17061. 3 auxiliary user-designated output 2 (OUT2)
  17062. because of external circuity OUT2 must be 1 to master-intr-enableing.
  17063. BUG: Some Toshiba Laptops utilize this bit vice versa, newer Toshiba
  17064. machines allow assignment of the bit's polarity in system setup.
  17065. 82050: This bit is only effective, if the chip is being used with an
  17066. externally-generated clock.
  17067. 2 =1/0 auxiliary user-designated output 1 (OUT1)
  17068. should generally be cleared!!
  17069. Some external hardware, e.g. c't MIDI interface (and compatibles) use
  17070. this bit to change the 8250 input clock from 1,8432 MHz to 4Mhz
  17071. (enabling MIDI-conformant baudrates) and switching to
  17072. MIDI-compatible current loop connectors.
  17073. 1 force request-to-send active (RTS)
  17074. 0 force data-terminal-ready active (DTR)
  17075. SeeAlso: #P0880,#P0882,#P0883
  17076. Bitfields for serial port Line Status Register (LSR):
  17077. Bit(s) Description (Table P0882)
  17078. 7 =0 reserved
  17079. =1 on some chips produced by UMC
  17080. 6 transmitter shift and holding registers empty
  17081. 5 transmitter holding register empty (THRE)
  17082. Controller is ready to accept a new character to send.
  17083. 4 break interrupt. the received data input is held in the zero bit
  17084. state longer than the time of start bit + data bits + parity bit +
  17085. stop bits.
  17086. 3 framing error (FE). the stop bit that follows the last parity or data
  17087. bit is a zero bit
  17088. 2 parity error (PE). Character has wrong parity
  17089. 1 overrun error (OE). a character was sent to the receiver buffer
  17090. before the previous character in the buffer could be read. This
  17091. destroys the previous character.
  17092. 0 data ready. a complete incoming character has been received and sent
  17093. to the receiver buffer register.
  17094. SeeAlso: #P0880,#P0881,#P0883
  17095. Bitfields for serial port Modem Status Register (MSR):
  17096. Bit(s) Description (Table P0883)
  17097. 7 data carrier detect (-DCD)
  17098. 6 ring indicator (-RI)
  17099. 5 data set ready (-DSR)
  17100. 4 clear to send (-CTS)
  17101. 3 delta data carrier detect (DDCD)
  17102. 2 trailing edge ring indicator (TERI)
  17103. 1 delta data set ready (DDSR)
  17104. 0 delta clear to send (DCTS)
  17105. Notes: bits 0-3 are reset when the CPU reads the MSR
  17106. bit 4 is the Modem Control Register RTS during loopback test
  17107. bit 5 is the Modem Control Register DTR during loopback test
  17108. bit 6 is the Modem Control Register OUT1 during loopback test
  17109. bit 7 is the Modem Control Register OUT2 during loopback test
  17110. SeeAlso: #P0880,#P0881,#P0882
  17111. --------!---Note-----------------------------
  17112. Note: Adresses above 03FF generally apply to EISA and PCI machines only !
  17113. EISA port assignments:
  17114. 1000-1FFF slot 1 EISA
  17115. 2000-2FFF slot 2 EISA
  17116. 3000-3FFF slot 3 EISA
  17117. 4000-4FFF slot 4 EISA
  17118. 5000-5FFF slot 5 EISA
  17119. 6000-6FFF slot 6 EISA
  17120. 7000-7FFF slot 7 EISA
  17121. ----------P0401040B--------------------------
  17122. PORT 0401-040B - EISA DMA Controller
  17123. SeeAlso: PORT 0481h-048Bh"EISA",PORT 04D4h-04D6h"EISA"
  17124. 0401 RW DMA channel 0 word count byte 2 (high)
  17125. 0403 RW DMA channel 1 word count byte 2 (high)
  17126. 0405 RW DMA channel 2 word count byte 2 (high)
  17127. 0407 RW DMA channel 3 word count byte 2 (high)
  17128. 040A -W extended DMA chaining mode register, channels 0-3 (see #P0884)
  17129. 040A R- channel interrupt (IRQ13) status register (see #P0885)
  17130. 040B -W DMA extended mode register for channels 0-3 (see #P0886)
  17131. (bit settings same as PORT 04D6h)
  17132. Bitfields for EISA extended DMA chaining mode register (channels 0-3):
  17133. Bit(s) Description (Table P0884)
  17134. 7-5 reserved
  17135. 4 =0 generate IRQ13
  17136. =1 generate terminal count
  17137. 3 =0 do not start chaining
  17138. =1 programming complete
  17139. 2 =0 disable buffer chaining mode (default)
  17140. =1 enable buffer chaining mode
  17141. 1-0 DMA channel select
  17142. SeeAlso: #P0885,#P0886,#P0893
  17143. Bitfields for EISA channel interrupt (IRQ13) status register:
  17144. Bit(s) Description (Table P0885)
  17145. 7-5 interrupt on channels 7-5
  17146. 4 reserved
  17147. 3-0 interrupt on channels 3-0
  17148. SeeAlso: #P0884
  17149. Bitfields for EISA DMA extended mode register (channels 0-3):
  17150. Bit(s) Description (Table P0886)
  17151. 7 =0 enable stop register
  17152. 6 =0 terminal count is an output for this channel (default)
  17153. 5-4 DMA cycle timing
  17154. 00 ISA-compatible (default)
  17155. 01 type A timing mode
  17156. 10 type B timing mode
  17157. 11 burst DMA mode
  17158. 3-2 Address mode
  17159. 00 8-bit I/O, count by bytes (default)
  17160. 01 16-bit I/O, count by words, address shifted
  17161. 10 32-bit I/O, count by bytes
  17162. 11 16-bit I/O, count by bytes
  17163. 1-0 DMA channel select
  17164. SeeAlso: #P0884,#P0894
  17165. ----------P040A043F--------------------------
  17166. PORT 040A-043F - Intel 82378ZB embedded DMA controller
  17167. Range: relocatable via Relocation Base Address register (see #01075)
  17168. SeeAlso: PORT 0401h"EISA",#01064,#01075
  17169. 040A R- scatter/gather interrupt status (see #P0887)
  17170. 040B -W DMA1 extended mode
  17171. 0410 -W CH0 scatter/gather command (see #P0888)
  17172. 0411 -W CH1 scatter/gather command
  17173. 0412 -W CH2 scatter/gather command
  17174. 0413 -W CH3 scatter/gather command
  17175. 0414 -W CH4 scatter/gather command
  17176. 0415 -W CH5 scatter/gather command
  17177. 0416 -W CH6 scatter/gather command
  17178. 0417 -W CH7 scatter/gather command (see #P0888)
  17179. 0418 R- CH0 scatter/gather status (see #P0889)
  17180. 0419 R- CH1 scatter/gather status
  17181. 041A R- CH2 scatter/gather status
  17182. 041B R- CH3 scatter/gather status
  17183. 041C R- CH4 scatter/gather status
  17184. 041D R- CH5 scatter/gather status
  17185. 041E R- CH6 scatter/gather status
  17186. 041F R- CH7 scatter/gather status (see #P0889)
  17187. 0420d RW CH0 scatter/gather descriptor table address
  17188. 0424d RW CH1 scatter/gather descriptor table address
  17189. 0428d RW CH2 scatter/gather descriptor table address
  17190. 042Cd RW CH3 scatter/gather descriptor table address
  17191. 0430d RW CH4 scatter/gather descriptor table address
  17192. 0434d RW CH5 scatter/gather descriptor table address
  17193. 0438d RW CH6 scatter/gather descriptor table address
  17194. 043Cd RW CH7 scatter/gather descriptor table address
  17195. (Table P0887)
  17196. Call Intel 82378ZB Scatter/Gather Interrupt Status Register with:
  17197. 7 channel 7 has interrupt due to S/G transfer
  17198. ...
  17199. 0 channel 0 has interrupt due to S/G transfer
  17200. SeeAlso: #P0888,#P0889
  17201. Bitfields for Intel 82378ZB Scatter/Gather Command Register:
  17202. Bit(s) Description (Table P0888)
  17203. 7 select last-buffer termination type
  17204. =0 assert IRQ13 on completion
  17205. =1 assert EOP on completion
  17206. 6 enable bit 7 termination-type selection
  17207. 5-2 reserved (0)
  17208. 1-0 scatter-gather command
  17209. 00 none
  17210. 01 start S/G command
  17211. 10 stop S/G command
  17212. 11 reserved
  17213. SeeAlso: #P0887,#P0889,#01075
  17214. Bitfields for Intel 82378ZB Scatter/Gather Status Register:
  17215. Bit(s) Description (Table P0889)
  17216. 7 no next link
  17217. 6 reserved
  17218. 5 issue IRQ13 instead of EOP at end of last buffer
  17219. 4 reserved
  17220. 3 scatter/gather Base Register status
  17221. =1 buffer link has been loaded
  17222. =0 empty
  17223. 2 scatter/gather Current Register status
  17224. =1 buffer link has been loaded
  17225. =0 empty
  17226. 1 reserved
  17227. 0 scatter/gather is active
  17228. SeeAlso: #P0888
  17229. --------X-P040D040F--------------------------
  17230. PORT 040D-040F - EISA - Intel 82357
  17231. 040D R- chip stepping level
  17232. 040E RW test register 1
  17233. 040F RW test register 2
  17234. ----------P04610462--------------------------
  17235. PORT 0461-0462 - EISA NMI CONTROL
  17236. 0461 RW Extended NMI status/control register (see #P0890)
  17237. 0462 -W Software NMI register. writing to this register causes an NMI if
  17238. NMIs are enabled
  17239. bit 7 = 1 generates an NMI
  17240. Bitfields for EISA extended NMI status control register:
  17241. Bit(s) Description (Table P0890)
  17242. 7 R- NMI pending from fail-safe (watchdog) timer
  17243. 6 R- NMI pending from bus timeout NMI status
  17244. 5 R- NMI pending from I/O port status
  17245. 4 R- busmaster preemption timeout if bit 6 set
  17246. 3 RW bus timeout NMI enable
  17247. 2 RW fail-safe (watchdog) NMI enable
  17248. 1 RW NMI I/O port enable
  17249. 0 RW RSTDRV. bus reset
  17250. =0 NORMAL bus reset operation
  17251. =1 reset bus asserted
  17252. --------X-P04640465--------------------------
  17253. PORT 0464-0465 - EISA BUS MASTER STATUS
  17254. 0464w R bus master status latch register (slots 1-16)
  17255. identifies the last bus master that had control of the bus (bit N =0 if
  17256. slot N+1 had control last)
  17257. ----------P0481048B--------------------------
  17258. PORT 0481-048B - EISA DMA page registers
  17259. Note: these registers are also supported on many non-EISA machines, e.g. by
  17260. most machines using Intel PCI chipsets
  17261. SeeAlso: PORT 0401h-040Bh"EISA",PORT 04C6h-04CFh"EISA"
  17262. 0481 RW DMA channel 2 address byte 3 (high)
  17263. 0482 RW DMA channel 3 address byte 3 (high)
  17264. 0483 RW DMA channel 1 address byte 3 (high)
  17265. 0487 RW DMA channel 0 address byte 3 (high)
  17266. 0489 RW DMA channel 6 address byte 3 (high)
  17267. 048A RW DMA channel 7 address byte 3 (high)
  17268. 048B RW DMA channel 5 address byte 3 (high)
  17269. ----------P04C604CF--------------------------
  17270. PORT 04C6-04CF - EISA DMA count registers
  17271. SeeAlso: PORT 0401h-040Bh"EISA",PORT 0481h-048Bh"EISA",PORT 04E0h-04FFh"EISA"
  17272. 04C6 RW DMA channel 5 word count byte 2 (high)
  17273. 04CA RW DMA channel 6 word count byte 2 (high)
  17274. 04CE RW DMA channel 7 word count byte 2 (high)
  17275. --------X-P04D004D1--------------------------
  17276. PORT 04D0-04D1 - EISA IRQ control
  17277. Note: these registers are also supported on many non-EISA machines, e.g. by
  17278. most machines using Intel PCI chipsets
  17279. SeeAlso: PORT 04D4h-040Bh"EISA"
  17280. 04D0 -W IRQ 0-7 interrupt edge/level registers (see #P0891)
  17281. 04D1 -W IRQ 8-15 interrupt edge/level registers (see #P0892)
  17282. Bitfields for EISA IRQ 0-7 interrupt edge/level register:
  17283. Bit(s) Description (Table P0891)
  17284. 7 IRQ 7 is level sensitive
  17285. 6 IRQ 6 is level sensitive
  17286. 5 IRQ 5 is level sensitive
  17287. 4 IRQ 4 is level sensitive
  17288. 3 IRQ 3 is level sensitive
  17289. 2-0 reserved
  17290. SeeAlso: #P0892
  17291. Bitfields for EISA IRQ 8-15 interrupt edge/level register:
  17292. Bit(s) Description (Table P0892)
  17293. 7 IRQ 15 is level sensitive
  17294. 6 IRQ 14 is level sensitive
  17295. 5 reserved (1)
  17296. 4 IRQ 12 is level sensitive
  17297. 3 IRQ 11 is level sensitive
  17298. 2 IRQ 10 is level sensitive
  17299. 1 IRQ 9 is level sensitive
  17300. 0 reserved
  17301. SeeAlso: #P0891
  17302. ----------P04D404D6--------------------------
  17303. PORT 04D4-04D6 - EISA DMA control
  17304. Note: PORT 04D6h is also supported by the Intel 82378ZB System I/O controller
  17305. SeeAlso: PORT 0401h-040Bh"EISA",PORT 04D0h-04D1h"EISA"
  17306. 04D4 R- DMA chaining status
  17307. 04D4 -W extended DMA chaining mode register, channels 4-7 (see #P0893)
  17308. 04D6 -W DMA extended mode register for channels 4-7 (see #P0894)
  17309. bit settings same as PORT 040Bh
  17310. Bitfields for EISA extended DMA chaining mode register (channels 4-7):
  17311. Bit(s) Description (Table P0893)
  17312. 7-5 reserved (0)
  17313. 4 =0 generate IRQ 13
  17314. =1 generate terminal count
  17315. 3 =0 do not start chaining
  17316. =1 programming complete
  17317. 2 =0 disable buffer chaining mode (default)
  17318. =1 enable buffer chaining mode
  17319. 1-0 DMA channel select
  17320. SeeAlso: #P0884,#P0894
  17321. Bitfields for EISA DMA extended mode register (channels 4-7):
  17322. Bit(s) Description (Table P0894)
  17323. 7 =0 enable stop register
  17324. 6 =0 terminal count is an output for this channel (default)
  17325. 5-4 DMA cycle timing
  17326. 00 ISA-compatible (default)
  17327. 01 type A timing mode
  17328. 10 type B timing mode
  17329. 11 burst DMA mode
  17330. 3-2 Address mode
  17331. 00 8-bit I/O, count by bytes (default)
  17332. 01 16-bit I/O, count by words, address shifted
  17333. 10 32-bit I/O, count by bytes
  17334. 11 16-bit I/O, count by bytes
  17335. 1-0 DMA channel select
  17336. SeeAlso: #P0886,#P0893
  17337. ----------P04E004FF--------------------------
  17338. PORT 04E0-04FF - EISA DMA stop registers
  17339. SeeAlso: PORT 0481h-048Bh"EISA"
  17340. 04E0-04E2 RW channel 0 stops if DMA transfer reaches specified address
  17341. 04E4-04E6 RW channel 1
  17342. 04E8-04EA RW channel 2
  17343. 04EC-04EE RW channel 3
  17344. 04F4-04F6 RW channel 5
  17345. 04F8-04FA RW channel 6
  17346. 04FC-04FE RW channel 7
  17347. ----------P05300533--------------------------
  17348. PORT 0530-0533 - Gravis Ultra Sound Daughter Card by Advanced Gravis
  17349. Range: dipswitch selectable from PORT 0530h-0533h, PORT 0604h-0607h,
  17350. PORT 0E80h-0E83h, and PORT 0F40h-0F43h
  17351. SeeAlso: PORT 0530h"Windows Sound System"
  17352. 0530 RW address select (see #P0895)
  17353. 0531 RW data (selected by PORT 0530h)
  17354. 0532 RW status
  17355. 0533 RW PIO data
  17356. ----------P05300537--------------------------
  17357. PORT 0530-0537 - Windows Sound System ("WSS") (default address)
  17358. Range: dipswitch selectable among PORT 0530h-0537h,PORT 0604h-060Bh,
  17359. PORT 0E80h-0E87h, and PORT 0F40h-0F47h
  17360. Notes: the Sound Galaxy NX16 sound cards contains a Crystal CS4231, and thus
  17361. support the CODEC portion of the WSS on ports 0534h-0537h
  17362. (or 0608h-060Bh, etc.)
  17363. the AMD InterWave chip supports a superset of the WSS CS4231 Codec,
  17364. though by default it is not placed at any of the addresses used by
  17365. the WSS
  17366. SeeAlso: PORT 032Ch"InterWave",PORT 0340h"Gravis",PORT 0530h"Vendetta"
  17367. 0534 ?W register select (index) (see #P0895)
  17368. 0535 RW data register (selected by PORT 0534h)
  17369. 0536 R? (CS4231A) status register
  17370. 0537 RW (CS4231A) PIO data register
  17371. (Table P0895)
  17372. Values for Windows Sound System CS4231 Codec register number:
  17373. 00h Mixer: ADC volume (left)
  17374. 01h Mixer: ADC volume (right)
  17375. 02h Mixer: Line In volume (right) (see #P0896)
  17376. 03h Mixer: Line In volume (left) (see #P0896)
  17377. 04h Mixer: FM volume (right) (see #P0896)
  17378. 05h Mixer: FM volume (left) (see #P0896)
  17379. 06h Mixer: playback DAC volume (left)
  17380. 07h Mixer: playback DAC volume (right)
  17381. 08h playback data format
  17382. 09h configuration register 1
  17383. 0Ah external control
  17384. 0Bh Codec status register 2
  17385. 0Ch mode select
  17386. bit 6: ???
  17387. 0Dh loopback control
  17388. (Sound Galaxy) microphone input enabled by bit 0 ???
  17389. 0Eh playback count (high)
  17390. 0Fh playback count (low)
  17391. 10h configuration register 2
  17392. 11h configuration register 3
  17393. 12h Mixer: CD volume (right) (see #P0896)
  17394. 13h Mixer: CD volume (left) (see #P0896)
  17395. 14h timer (low)
  17396. 15h timer (high)
  17397. 16h Mixer: microphone input control (left)
  17398. 17h Mixer: microphone input control (right)
  17399. 18h Codec status register 3
  17400. 19h Mixer: output attenuation (left)
  17401. 1Ah mono input/output control
  17402. (Sound Galaxy) SB volume (see #P0897)
  17403. 1Bh Mixer: output attenuation (right)
  17404. 1Ch record data format
  17405. 1Dh playback variable frequency
  17406. 1Eh record count (high)
  17407. 1Fh record count (low)
  17408. 48h (Sound Galaxy) ???
  17409. Notes: to enable the microphone input on the Sound Galaxy, ALL of the
  17410. following registers must be set: 00h set to 80h, 01h set to 80h,
  17411. 07h to 00h, 0Dh to 01h, and 48h to 4Bh
  17412. on the Sound Galaxy NX16, only bits 0-4 of the register number are
  17413. fully decoded, so most registers above 1Fh are aliases of the
  17414. first 32 registers
  17415. Bitfields for WSS mixer volume:
  17416. Bit(s) Description (Table P0896)
  17417. 7 disable input source
  17418. 6-5 reserved???
  17419. 4-0 volume (00h = highest, 1Fh = lowest)
  17420. SeeAlso: #P0895,#P0897
  17421. Note: the GW2000 GWBVOL.EXE only permits the setting of volume levels
  17422. 08h (reported as 16) to 18h (reported as 0, and sets bit 7 as well)
  17423. Bitfields for WSS mixer volume (SoundBlaster):
  17424. Bit(s) Description (Table P0897)
  17425. 7 disable input source
  17426. 6-4 reserved???
  17427. 3-0 volume (00h = highest, 0Fh = lowest)
  17428. SeeAlso: #P0895,#P0896
  17429. ----------P05300537--------------------------
  17430. PORT 0530-0537 - OPTi "Vendetta" Windows Sound System emulation (default addr)
  17431. SeeAlso: PORT 0530h"WSS",PORT 0F8Dh"Vendetta",PORT 0F8Eh"Vendetta"
  17432. 0530 -W (OPTi "Vendetta") WSS configuration register (see #P0898)
  17433. 0530 R- (OPTi "Vendetta") WSS version register (see #P0899)
  17434. 0534 RW (OPTi "Vendetta") codec index address register (see #P0900)
  17435. 0535 RW (OPTi "Vendetta") codec indexed data register
  17436. 0536 RW (OPTi "Vendetta") codec status register (see #P0901)
  17437. 0537 R- (OPTi "Vendetta") codec direct data register - capture mode
  17438. 0537 -W (OPTi "Vendetta") codec direct data register - playback mode
  17439. Bitfields for OPTi "Vendetta" WSS configuration register:
  17440. Bit(s) Description (Table P0898)
  17441. 7 reserved
  17442. 6 IRQ sense source
  17443. 0 = normal
  17444. 1 = interrupt auto-selection
  17445. 5-3 WSS IRQ
  17446. 000 = disable
  17447. 001 = IRQ7
  17448. 010-100 = IRQ9-IRQ11
  17449. 101 = IRQ5
  17450. 110-111 = reserved
  17451. 2-0 WSS DRQ
  17452. playback capture
  17453. 000 = disable disable
  17454. 001 = DRQ0 disable
  17455. 010 = DRQ1 disable
  17456. 011 = DRQ3 disable
  17457. 100 = disable DRQ1
  17458. 101 = DRQ0 DRQ1
  17459. 110 = DRQ1 DRQ0
  17460. 111 = DRQ3 DRQ0
  17461. SeeAlso: PORT 0530-0537
  17462. Bitfields for OPTi "Vendetta" WSS version register:
  17463. Bit(s) Description (Table P0899)
  17464. 7 available channel
  17465. 0 = DRQ0/1/3 and IRQ7/9/10/11 available
  17466. 1 = DRQ1/3 and IRQ7/9 available
  17467. 6 IRQ sense
  17468. 0 = no interrupt
  17469. 1 = WSS interrupt active
  17470. 5-0 version (04h)
  17471. SeeAlso: PORT 0530-0537
  17472. Bitfields for OPTi "Vendetta" codec index address register:
  17473. Bit(s) Description (Table P0900)
  17474. 7 initialization
  17475. 1 = codec cannot respond to parallel bus cycles
  17476. 6 mode change enable
  17477. 5 transfer request
  17478. 0 = transfers enabled during interrupt
  17479. 1 = transfers disabled by interrupt
  17480. 4-0 index address (see #P0902)
  17481. (audio module control register 5 bit 5 must be set in order
  17482. to access indexes 10h-1Fh)
  17483. SeeAlso: PORT 0530-0537
  17484. Bitfields for OPTi "Vendetta" codec status register:
  17485. Bit(s) Description (Table P0901)
  17486. 7 PIO capture data ready (read-only)
  17487. 0 = lower byte
  17488. 1 = upper byte (or 8-bit)
  17489. 6 PIO capture data ready (read-only)
  17490. 0 = right
  17491. 1 = left (or mono)
  17492. 5 PIO capture data register data ready (read-only)
  17493. 0 = stale ADC data (do not re-read)
  17494. 1 = fresh ADC data (ready for host data read)
  17495. 4 sample ADC capture overrun/DAC playback underrun occurred (read-only)
  17496. 3 PIO playback data needed (read-only)
  17497. 0 = lower byte
  17498. 1 = upper byte (or 8-bit)
  17499. 2 PIO playback data needed (read-only)
  17500. 0 = right
  17501. 1 = left (or mono)
  17502. 1 PIO playback data register ready for data (read-only)
  17503. 0 = valid DAC data (do not overwrite)
  17504. 1 = stale DAC data (ready for host data write)
  17505. 0 interrupt enable
  17506. SeeAlso: PORT 0530-0537
  17507. (Table P0902)
  17508. Values for OPTi "Vendetta" (82C750) codec indirect registers:
  17509. 00h MIXOUTL output control register (see #P0903)
  17510. 01h MIXOUTR output control register (see #P0903)
  17511. 02h CDL input control register (see #P0904)
  17512. 03h CDR input control register (see #P0904)
  17513. 04h FML input control register (see #P0904)
  17514. 05h FMR input control register (see #P0904)
  17515. 06h DACL input control register (see #P0905)
  17516. 07h DACR input control register (see #P0905)
  17517. 08h frequency synthesizer and playback data format register (see #P0906)
  17518. 09h interface configuration register (see #P0907)
  17519. 0Ah pin control register (see #P0908)
  17520. 0Bh error status and initialization register (read-only) (see #P0909)
  17521. 0Ch ID register (see #P0910)
  17522. 0Dh reserved
  17523. 0Eh playback upper base count register
  17524. (used for playback and capture in SB mode)
  17525. 0Fh playback lower base count register
  17526. (used for playback and capture in SB mode)
  17527. 10h AUXL input control register (see #P0904)
  17528. 11h AUXR input control register (see #P0904)
  17529. 12h LINEL input control register (see #P0904)
  17530. 13h LINER input control register (see #P0904)
  17531. 14h MICL input control register (see #P0911)
  17532. 15h MICR input control register (see #P0912)
  17533. 16h OUTL output control register (see #P0913)
  17534. 17h OUTR output control register (see #P0913)
  17535. 18h-1Bh reserved
  17536. 1Ch capture data format register (see #P0906)
  17537. 1Dh reserved
  17538. 1Eh capture upper base count register
  17539. 1Fh capture lower base count register
  17540. Note: To access expanded mode registers (10h-1Fh), audio module control
  17541. register 5 bit 5 must be set.
  17542. SeeAlso: #P0900
  17543. Bitfields for OPTi "Vendetta" MIXOUTL/R output control register:
  17544. Bit(s) Description (Table P0903)
  17545. 7-6 source select
  17546. 00 = LINE
  17547. 01 = CD
  17548. 10 = MIC
  17549. 11 = MIXER
  17550. 5 MIC +20dB gain enable
  17551. 4 reserved
  17552. 3-0 gain select for MIXOUTL/R
  17553. 0000-1111 = 0dB to +22.5dB in 1.5dB steps
  17554. SeeAlso: #P0902
  17555. Bitfields for OPTi "Vendetta" CD/FM/AUX/LINE L/R input control register:
  17556. Bit(s) Description (Table P0904)
  17557. 7 mute enable
  17558. 6-5 reserved
  17559. 4-1 gain select for CD/FM/AUX/LINE L/R
  17560. 0000-1111 = +12dB to -33dB in 3dB steps
  17561. 0 reserved
  17562. SeeAlso: #P0902
  17563. Bitfields for OPTi "Vendetta" DACL/R input control register:
  17564. Bit(s) Description (Table P0905)
  17565. 7 mute enable
  17566. 6-5 reserved
  17567. 4-0 gain select for DACL/R
  17568. 00000-11111 = 0dB to -46.5dB in 1.5dB steps
  17569. SeeAlso: #P0902
  17570. Bitfields for OPTi "Vendetta" frequency synth and playback/capture data format:
  17571. Bit(s) Description (Table P0906)
  17572. 7-5 audio data format
  17573. 000 = linear, 8-bit unsigned
  17574. 001 = æ-law, 8-bit companded
  17575. 010 = linear, 16-bit two's complement, little endian
  17576. 011 = A-law, 8-bit companded
  17577. 100 = reserved
  17578. 101 = ADPCM, 4-bit, IMA compatible
  17579. 110 = linear, 16-bit two's complement, big endian
  17580. 111 = reserved
  17581. (bit 7 forced to 0 in mode 1)
  17582. 4 0 = mono
  17583. 1 = stereo
  17584. 3-0 (playback) clock frequency divide/audio sample rate frequency
  17585. 0000 = 8.0kHz
  17586. 0001 = 5.5125kHz
  17587. 0010 = 16.0kHz
  17588. 0011 = 11.025kHz
  17589. 0100 = 27.42857kHz
  17590. 0101 = 18.9kHz
  17591. 0110 = 32.0kHz
  17592. 0111 = 22.05kHz
  17593. 1000 = reserved
  17594. 1001 = 37.8kHz
  17595. 1010 = reserved
  17596. 1011 = 44.1kHz
  17597. 1100 = 48.0kHz
  17598. 1101 = 33.075kHz
  17599. 1110 = 9.6kHz
  17600. 1111 = 6.615kHz
  17601. (capture) reserved
  17602. Note: the contents of these registers can be changed only if mode change bit
  17603. is set (see #P0900).
  17604. SeeAlso: #P0902
  17605. Bitfields for OPTi "Vendetta" interface configuration register:
  17606. Bit(s) Description (Table P0907)
  17607. 7 capture data transfer method (0 = DMA, 1 = PIO)
  17608. 6 playback data transfer method (0 = DMA, 1 = PIO)
  17609. 5-4 reserved
  17610. 3 autocalibration enable
  17611. 2 DMA channel mode (0 = dual, 1 = single)
  17612. 1 capture data in selected format enable
  17613. 0 playback data in selected format enable
  17614. SeeAlso: #P0902
  17615. Bitfields for OPTi "Vendetta" pin control register:
  17616. Bit(s) Description (Table P0908)
  17617. 7-2 reserved
  17618. 1 interrupt pin enable
  17619. (goes active high on reaching the number of samples in base count
  17620. register)
  17621. 0 reserved
  17622. SeeAlso: #P0902
  17623. Bitfields for OPTi "Vendetta" error status and initialization register:
  17624. Bit(s) Description (Table P0909)
  17625. 7 capture overrun
  17626. 6 playback underrun
  17627. 5 autocalibration state
  17628. 0 = in progress
  17629. 1 = not in progress
  17630. 4 current PDRQ/CDRQ status
  17631. 0 = inactive (low)
  17632. 1 = active (high)
  17633. 3-2 under/over range on right input channel
  17634. 00 = less than -1dB under range
  17635. 01 = between -1dB and 0dB under range
  17636. 10 = between 0dB and +1dB over range
  17637. 11 = greater than +1dB over range
  17638. 3-2 under/over range on left input channel
  17639. 00 = less than -1dB under range
  17640. 01 = between -1dB and 0dB under range
  17641. 10 = between 0dB and +1dB over range
  17642. 11 = greater than +1dB over range
  17643. SeeAlso: #P0902
  17644. Bitfields for OPTi "Vendetta" ID register:
  17645. Bit(s) Description (Table P0910)
  17646. 7-4 reserved
  17647. 3-0 codec revision ID (read-only)
  17648. SeeAlso: #P0902
  17649. Bitfields for OPTi "Vendetta" MICL input control register:
  17650. Bit(s) Description (Table P0911)
  17651. 7 mute enable
  17652. 6 MICR mix into OUTL enable
  17653. 5 reserved
  17654. 4-1 gain select for MICL
  17655. 0000-1111 = +12dB to -33dB in 3dB steps
  17656. 0 reserved
  17657. SeeAlso: #P0902
  17658. Bitfields for OPTi "Vendetta" MICR input control register:
  17659. Bit(s) Description (Table P0912)
  17660. 7 mute enable
  17661. 6 MICL mix into OUTR enable
  17662. 5 reserved
  17663. 4-1 gain select for MICR
  17664. 0000-1111 = +12dB to -33dB in 3dB steps
  17665. 0 reserved
  17666. SeeAlso: #P0902,#P0913
  17667. Bitfields for OPTi "Vendetta" OUTL/R output control register:
  17668. Bit(s) Description (Table P0913)
  17669. 7 mute enable
  17670. 6 reserved
  17671. 5-1 gain select for OUTL/R
  17672. 00000-11111 = 0dB to -93dB in 3dB steps
  17673. 0 reserved
  17674. SeeAlso: #P0902,#P0913
  17675. ----------P0601------------------------------
  17676. PORT 0601 - Headland HL21, Acer M5105 chipsets - SYSTEM CONTROL
  17677. 0601 -W system control (see #P0914)
  17678. 0601 R- status (see #P0915)
  17679. Bitfields for Headland HL21/Acer M5105 system control register:
  17680. Bit(s) Description (Table P0914)
  17681. 7 =1 power LED on
  17682. 6 =1 LCD backlight off
  17683. 5 ???
  17684. 4 ???
  17685. 3 ???
  17686. 2 =1 video chips disabled, screen blanked.
  17687. 1 ???
  17688. 0 =1 will lock up your machine!
  17689. SeeAlso: #P0915
  17690. Bitfields for Headland HL21/Acer M5105 status register:
  17691. Bit(s) Description (Table P0915)
  17692. 7 =0 if screen enabled always these values
  17693. 6 =0
  17694. 5 =0
  17695. 4 =0
  17696. 3 =0
  17697. 2 =1 (=0 at low power)
  17698. 1 =0 power OK
  17699. 0 =0
  17700. SeeAlso: #P0914
  17701. ----------P06040607--------------------------
  17702. PORT 0604-0607 - Gravis Ultra Sound Daughter Card by Advanced Gravis
  17703. Range: dipswitch selectable from PORT 0530h-0533h, PORT 0604h-0607h,
  17704. PORT 0E80h-0E83h, and PORT 0F40h-0F43h
  17705. ----------P0604060B--------------------------
  17706. PORT 0604-060B - Windows Sound System
  17707. Range: PORT 0530h-0537h,PORT 0604h-060Bh,PORT 0E80h-0E87h,PORT 0F40h-0F47h
  17708. SeeAlso: PORT 0530h"Sound System"
  17709. ----------P06200627--------------------------
  17710. PORT 0620-0627 - PC network (adapter 1)
  17711. 0628-062F - PC network (adapter 2)
  17712. ----------P063E063F--------------------------
  17713. PORT 063E-063F - WINTEL.VXD - API
  17714. Note: the WinTel remote-control program uses these two virtualized ports
  17715. as an API between it main application HOST.EXE and the WINTEL.VXD
  17716. driver
  17717. Index: installation check;WinTel
  17718. 063E R- always reads 42h if WinTel.VXD is loaded (installation check)
  17719. 063E -W simulate keystroke to current Windows VM (scan code as it would
  17720. be read from keyboard, including make/break in bit 7)
  17721. (see also INT 09)
  17722. 063F RW watchdog/scratchpad (see #P0916)
  17723. Bitfields for WimTel watchdog/scratchpad byte:
  17724. Bit(s) Description (Table P0916)
  17725. 7-4 scratchpad; HOST.EXE uses as follows:
  17726. bit 7: physical connection is active
  17727. bit 6: sending file
  17728. bit 5: receiving file
  17729. bit 4: session is active
  17730. 1 retrigger watchdog (write 03h to PORT 063Fh to avoid reboot)
  17731. 0 enable watchdog (PC is rebooted if watchdog not retriggered every 20s)
  17732. ----------P0678067A--------------------------
  17733. PORT 0678-067A - Intel 82091AA - ECP-mode PARALLEL PORT
  17734. Range: PORT 0678h or PORT 0378h, depending on the base address of the parallel
  17735. port (0278h or 0378h)
  17736. SeeAlso: PORT 0278h,PORT 0778h,PORT 07BCh
  17737. 0278 RW (when ECR bits 7-5=011) ECP Address/RLE FIFO (see #P0917)
  17738. (this is the same address normally used for parallel port data)
  17739. 0678 RW (when ECR bits 7-5=010) standard parallel port data FIFO (see #P0918)
  17740. 0678 RW (when ECR bits 7-5=011) ECP data FIFO (see #P0919)
  17741. 0678 RW (when ECR bits 7-5=110) test FIFO (see #P0920)
  17742. 0678 RW (when ECR bits 7-5=111) ECP configuration A (see #P0921)
  17743. 0679 RW (when ECR bits 7-5=111) ECP configuration B (see #P0922)
  17744. 067A RW extended control register (ECR) (see #P0923)
  17745. Bitfields for ECP Address/RLE FIFO:
  17746. Bit(s) Description (Table P0917)
  17747. 7 address/RLE-count select
  17748. =0 RLE count
  17749. =1 channel address
  17750. 6-0 channel address (bit 7 set)
  17751. RLE count, less 1 (bit 7 clear)
  17752. Notes: when using hardware RLE decompression, the associated data is written
  17753. to the data FIFO (see #P0919) after the count is set here
  17754. an RLE count of 1 (two identical bytes) will cause unnecessary
  17755. expansions
  17756. the peripheral device performs the interpretation of this byte as
  17757. address or RLE count; writing to this port simply causes the AUTOFD#
  17758. line to be asserted to tell the peripheral that the byte is not data
  17759. SeeAlso: #P0923,#P0918
  17760. Bitfields for ECP Standard Parallel Port data FIFO:
  17761. Bit(s) Description (Table P0918)
  17762. 7-0 standard parallel port data
  17763. Notes: data written or DMAed to this port are buffered in the FIFO and
  17764. transmitted to the peripheral using a standard ISA-compatible
  17765. hardware handshake
  17766. PORT 027Ah bit 5 must be clear to enable the forward transfer direction
  17767. SeeAlso: #P0917,#P0918,#P0923
  17768. Bitfields for ECP data FIFO:
  17769. Bit(s) Description (Table P0919)
  17770. 7-0 ECP-mode data
  17771. Notes: data written or DMAed to this port are buffered in the FIFO and
  17772. transmitted to the peripheral using an ECP hardware handshake;
  17773. PORT 027Ah bit 5 must be clear to enable the forward transfer
  17774. direction
  17775. when PORT 027Ah bit 5 is set (reverse transfer), data is read from the
  17776. peripheral and placed in the FIFO, from which it may be read by
  17777. reading this port
  17778. SeeAlso: #P0917,#P0923,#P0920
  17779. Bitfields for ECP test FIFO:
  17780. Bit(s) Description (Table P0920)
  17781. 7-0 test FIFO data
  17782. Notes: writes to this port write to the FIFO, reads from this port read from
  17783. the FIFO, without actually transferring any data out the parallel
  17784. port; FIFO overruns and underruns are ignored, simply reading/writing
  17785. over the same slots again and again
  17786. the ECR "full" and "empty" bits always keep track of the current state
  17787. of the FIFO; the write threshold can be determined by filling the
  17788. FIFO and then reading a byte at a time until a service interrupt is
  17789. set in the ECR. Similarly, the read threshold can be determined by
  17790. emptying the FIFO, setting the direction bit in PORT 027Ah, and
  17791. writing a byte at a time until a service interrupt is set.
  17792. SeeAlso: #P0917,#P0923,#P0919
  17793. Bitfields for ECP configuration A:
  17794. Bit(s) Description (Table P0921)
  17795. 7-4 (read-only) implementation identification
  17796. bit 7: ISA-style interrupt
  17797. bit 4: eight-bit implementation
  17798. 3-0 reserved
  17799. Note: this register can only be accessed when the Extended Control
  17800. Register bits 7-5 are set to 111
  17801. SeeAlso: #P0923,#P0922,#P0917,#P0919,#P0920
  17802. Bitfields for ECP configuration B:
  17803. Bit(s) Description (Table P0922)
  17804. 7 reserved (0)
  17805. 6 IRQ status (reflects actual value driven onto either IRQ5 or IRQ7; used
  17806. to check for interrupt conflicts)
  17807. 5-0 reserved (0)
  17808. Notes: this register can only be accessed when the Extended Control
  17809. Register bits 7-5 are set to 111
  17810. bit 4 of the parallel control port (027Ah/037Ah) must be cleared before
  17811. bit 6 will show the interrupt status
  17812. SeeAlso: #P0923,#P0921
  17813. Bitfields for ECP Extended Control Register (ECR):
  17814. Bit(s) Description (Table P0923)
  17815. 7-5 ECP mode
  17816. 000 ISA-compatible
  17817. 001 PS/2-compatible (bidirectional port)
  17818. 010 ISA-compatible FIFO
  17819. 011 ECP
  17820. 100 reserved
  17821. 101 reserved
  17822. 110 test
  17823. 111 configuration
  17824. 4 disable ERROR interrupts
  17825. 3 enable DMA
  17826. when bit 3 set and bit 2 clear, an interrupt is generated on the DMA
  17827. terminal-count condition; this bit must be cleared to reset the TC
  17828. interrupt
  17829. 2 disable FIFO/TerminalCount service interrupts
  17830. 1 (read-only) FIFO is full
  17831. 0 (read-only) FIFO is empty
  17832. Notes: if the port is currently in modes 000 or 001, it may be switched into
  17833. any other mode; if it is in a mode other than 000 or 001, it must
  17834. first be switched into either mode 000 or 001 before selecting a mode
  17835. other than one of those two
  17836. if currently in an extended forward mode (010-111 and direction bit
  17837. clear), software should wait for the FIFO to clear before switching
  17838. back to modes 000 or 001
  17839. if a FIFO overrun or underrun occurs, BOTH bits 1 and 0 are set; to
  17840. clear the FIFO error condition, switch the port to mode 000 or 001
  17841. SeeAlso: #P0921,#P0922,#P0919
  17842. ----------P06800681--------------------------
  17843. PORT 0680-0681 - Microchannel POST Diagnostic (write only)
  17844. 0680 -W Microchannel POST Diagnostic
  17845. 0681 -W secondary MCA POST diagnostic
  17846. ----------P06A006A8--------------------------
  17847. PORT 06A0-06A8 - non-standard COM port addresses
  17848. Range: selectable from 0280, 0288, 0290, 0298, 06A0, 06A8
  17849. Note: V20-XT by German magazine c't
  17850. ----------P06A806AF--------------------------
  17851. PORT 06A8-06AF - non-standard COM port addresses
  17852. Range: selectable from 0280, 0288, 0290, 0298, 06A0, 06A8
  17853. Note: V20-XT by German magazine c't
  17854. ----------P06E206E3--------------------------
  17855. PORT 06E2-06E3 - data aquisition (adapter 1)
  17856. ----------P06E8------------------------------
  17857. PORT 06E8 - S3 86C928 video controller (ELSA Winner 1000)
  17858. ----------P06E806EF--------------------------
  17859. PORT 06E8-06EF - 8514/A and compatible (e.g. ATI Graphics Ultra) - HORZ DISPLYD
  17860. SeeAlso: PORT 02E8h-02EFh,PORT 0AE8h,PORT 96E8h,PORT 9AE8h
  17861. 06E8w -W CRT control: horizontal displayed
  17862. ----------P0746------------------------------
  17863. PORT 0746 - Gravis Ultra Sound by Advanced Gravis - BOARD VERSION / MIXER
  17864. SeeAlso: PORT 0240h-024Fh,PORT 0340h-034Fh
  17865. 0746 R- board version (rev 3.7+)
  17866. FFh Pre 3.6 boards, ICS mixer NOT present
  17867. 05h Rev 3.7 with ICS Mixer. Some R/L: flip problems.
  17868. 06h-09h Revision 3.7 and above. ICS Mixer present
  17869. 0Ah- UltraMax. CS4231 present, no ICS mixer
  17870. 0746 -W Mixer Control Port
  17871. ----------P0778077A--------------------------
  17872. PORT 0778-077A - Intel 82091AA - ECP-mode PARALLEL PORT
  17873. Range: PORT 0678h or PORT 0378h, depending on the base address of the parallel
  17874. port (0278h or 0378h)
  17875. SeeAlso: PORT 0378h,PORT 0678h,PORT 07BCh
  17876. 0378 RW (when ECR bits 7-5=011) ECP Address/RLE FIFO (see #P0917)
  17877. (this is the same address normally used for parallel port data)
  17878. 0778 RW (when ECR bits 7-5=010) standard parallel port data FIFO (see #P0918)
  17879. 0778 RW (when ECR bits 7-5=011) ECP data FIFO (see #P0919)
  17880. 0778 RW (when ECR bits 7-5=110) test FIFO (see #P0920)
  17881. 0778 RW (when ECR bits 7-5=111) ECP configuration A (see #P0921)
  17882. 0779 RW (when ECR bits 7-5=111) ECP configuration B (see #P0922)
  17883. 077A RW extended control register (ECR) (see #P0923)
  17884. ----------P07900793--------------------------
  17885. PORT 0790-0793 - cluster (adapter 1)
  17886. ----------P07BC07BE--------------------------
  17887. PORT 07BC-07BE - Intel 82091AA - ECP-mode PARALLEL PORT
  17888. SeeAlso: PORT 03BCh,PORT 0678h,PORT 0778h
  17889. 03BC RW (when ECR bits 7-5=011) ECP Address/RLE FIFO (see #P0917)
  17890. (this is the same address normally used for parallel port data)
  17891. 07BC RW (when ECR bits 7-5=010) standard parallel port data FIFO (see #P0918)
  17892. 07BC RW (when ECR bits 7-5=011) ECP data FIFO (see #P0919)
  17893. 07BC RW (when ECR bits 7-5=110) test FIFO (see #P0920)
  17894. 07BC RW (when ECR bits 7-5=111) ECP configuration A (see #P0921)
  17895. 07BD RW (when ECR bits 7-5=111) ECP configuration B (see #P0922)
  17896. 07BE RW extended control register (ECR) (see #P0923)
  17897. ----------P080008FF--------------------------
  17898. PORT 0800-08FF - I/O port access registers for extended CMOS RAM or SRAM
  17899. (256 bytes at a time)
  17900. Note: sometimes plain text can be seen here
  17901. --------X-P080008FF--------------------------
  17902. PORT 0800-08FF - reserved for EISA system motherboard
  17903. ----------P0A200A23--------------------------
  17904. PORT 0A20-0A23 - Token Ring (adapter 1)
  17905. 0A24-0A27 - Token Ring (adapter 2)
  17906. ----------P0A79------------------------------
  17907. PORT 0A79 - Plug-and-Play - WRITE DATA PORT
  17908. Desc: all data written to the Plug-and-Play configuration registers is
  17909. written to this port, including the configuration byte which
  17910. indicates the I/O port from which data is to be read when reading
  17911. the configuration registers
  17912. SeeAlso: PORT 0279h
  17913. 0A79 -W Plug-and-Play data writes
  17914. ---------------------------------------------
  17915. Ports List, part 3 of 3
  17916. Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 Ralf Brown
  17917. ----------P0AD60AD7--------------------------
  17918. PORT 0AD6-0AD7 - Chips & Technologies PC Video (82C9001A) - CONTROL REGISTERS
  17919. Range: Address determined by status of CS# input at RESET. If CS# input is
  17920. low on falling edge of RESET, then address is fixed at 0AD6-0AD7h;
  17921. otherwise, the programmable address is used.
  17922. Note: register FFh is write-only and all other registers are disabled if
  17923. register FFh bit 0 is cleared.
  17924. SeeAlso: PORT 03D4h
  17925. 0AD6 -W index for accesses to data port (see #P0924)
  17926. 0AD7 RW data port
  17927. (Table P0924)
  17928. Values for Chips & Technologies PC Video (82C9001A) control registers:
  17929. 00h I/O Address Register (see #P0925)
  17930. 01h Memory Access Register (see #P0926)
  17931. 06h Linear Memory Base Address Register (see #P0927)
  17932. 07h Luminance Data Mask Register (enabled by register 01h bit 4)
  17933. (0 prevents data modification during video data acquisition
  17934. in corresponding bit position)
  17935. 08h Chrominance Data Mask Register (enabled by register 01h bit 4)
  17936. (0 prevents data modification during video data acquisition
  17937. in corresponding bit position)
  17938. 09h Interupt Mask/Polling Register (see #P0928)
  17939. 10h General Purpose I/O Register 0
  17940. 11h General Purpose I/O Register 1
  17941. 12h General Purpose I/O Register 2
  17942. 13h General Purpose I/O Register 3
  17943. 18h General Purpose I/O Control Register (see #P0929)
  17944. 20h Video Acquisition Mode Register (see #P0930)
  17945. 21h Acquisition Window Control Register (see #P0931)
  17946. 22h Acquisition Window X-Start Low Byte Register
  17947. (X-Start is measured in input pixel clocks, referenced to trailing
  17948. edge of video Hsync)
  17949. 23h Acquisition Window X-Start High Byte Register (two high order bits)
  17950. 24h Acquisition Window Y-Start Low Byte Register
  17951. (Y-Start is measured in input lines, referenced to trailing edge of
  17952. video Vsync + V Start Adjust (register 30h))
  17953. 25h Acquisition Window Y-Start High Byte Register (two high order bits)
  17954. 26h Acquisition Window X-End Low Byte Register
  17955. (X-End is measured in input pixel clocks, referenced to trailing edge
  17956. of video Hsync)
  17957. 27h Acquisition Window X-End High Byte Register (two high order bits)
  17958. 28h Acquisition Window Y-End Low Byte Register
  17959. (measured in input lines, referenced to trailing edge of
  17960. video Vsync + V Start Adjust (register 30h))
  17961. 29h Acquisition Window Y-End High Byte Register (two high order bits)
  17962. 2Ah Acquisition Write Address Low Register
  17963. (points to frame memory location where video acquisition starts;
  17964. at end of video line reset to beginning and offset of 1024 bytes
  17965. is added for start address of next line)
  17966. 2Bh Acquisition Write Address Middle Register
  17967. 2Ch Acquisition Write Address High Register (4 high order bits)
  17968. 2Dh Acquisition Horizontal-Scaling Register (see #P0932)
  17969. 2Eh Acquisition Vertical-Scaling Register (see #P0933)
  17970. 2Fh Scaling Field Adjust Register (see #P0934)
  17971. 30h Input Video Start Adjust (see #P0935)
  17972. 38h Scaling Control Register (see #P0936)
  17973. 40h Display Area Control Register (see #P0937)
  17974. 41h Display Window X-Start Low Byte Register
  17975. (defines start of horizontal display window; measured in VGA pixel
  17976. clocks, referenced to trailing edge of VGA Hsync)
  17977. 42h Display Window X-Start High Byte Register (three high order bits)
  17978. 43h Display Window Y-Start Low Byte Register
  17979. (defines start of vertical display window; measured in VGA lines,
  17980. referenced to trailing edge of VGA Vsync)
  17981. 44h Display Window Y-Start High Byte Register (two high order bits)
  17982. 45h Display Window X-End Low Byte Register
  17983. (defines end of horizontal display window; measured in VGA pixel
  17984. clocks, referenced to trailing edge of VGA Hsync)
  17985. 46h Display Window X-End High Byte Register (three high order bits)
  17986. 47h Display Window Y-End Low Byte Register
  17987. (defines start of vertical display window; measured in VGA lines,
  17988. referenced to trailing edge of VGA Vsync)
  17989. 48h Display Window Y-End High Byte Register (two high order bits)
  17990. 49h Display Window X-Panning Low Register
  17991. (defines display buffer column address times 2, loaded during data
  17992. transfer cycle in VRAMs; for 4:1:1 encoding bit 0 should be set to 0)
  17993. 4Ah Display Window Y-Panning Low Register
  17994. (defines display buffer row, loaded for first active display line)
  17995. 4Bh Display Window X/Y-Panning High Register (see #P0938)
  17996. 4Ch Shift Clock Start Register (7 bits)
  17997. (defines end of display blank relative to VGA Hsync trailing edge)
  17998. 4Dh Sync Polarity/Zoom Register (see #P0939)
  17999. 4Eh VGA Color Compare Register (see #P0940)
  18000. 4Fh VGA Color Mask Register (see #P0941)
  18001. 50h Display Window Interlace Control (see #P0942)
  18002. FFh Version/Global Enable Register (see #P0943)
  18003. Bitfields for Chips & Technologies PC Video (82C9001A) I/O Address Register:
  18004. Bit(s) Description (Table P0925)
  18005. 7-1 I/O address bits 7-1
  18006. (These bits are compared with address inputs (A7-1) to detect
  18007. valid I/O address. If CS# is low on RESET, this register is
  18008. initialized to D6h. If CS# is high on RESET, this register is
  18009. loaded with value present on data inputs (D7-1) during first
  18010. I/O on the chip (IOWR# = 0 and CS# = 0).)
  18011. 0 reserved
  18012. SeeAlso: #P0924,#P0926,#P0927
  18013. Bitfields for Chips & Technologies PC Video (82C9001A) Memory Access Register:
  18014. Bit(s) Description (Table P0926)
  18015. 7-5 reserved
  18016. 4 VRAM write mask enable (enables registers 07h and 08h)
  18017. 3-0 reserved
  18018. SeeAlso: #P0924,#P0925,#P0927,#P0928
  18019. Bitfields for Chips & Technologies PC Video (82C9001A) Linear Memory Base:
  18020. Bit(s) Description (Table P0927)
  18021. 7-5 reserved
  18022. 4 reserved (1)
  18023. 3-0 linear memory space starting address (in 1MB units)
  18024. SeeAlso: #P0924,#P0925
  18025. Bitfields for Chips & Technologies PC Video (82C9001A) Interupt Mask/Polling:
  18026. Bit(s) Description (Table P0928)
  18027. 7-6 reserved
  18028. 5 VGA Hsync status
  18029. 4 VGA Vsync status
  18030. 3 video field status
  18031. 0 = even
  18032. 1 = odd
  18033. 2 video Vsync status
  18034. 1 video odd Vsync interrupt enable
  18035. 0 video even Vsync interrupt enable
  18036. SeeAlso: #P0924,#P0221
  18037. Bitfields for Chips & Technologies PC Video (82C9001A) General Purpose I/O:
  18038. Bit(s) Description (Table P0929)
  18039. 7 general purpose I/O 3
  18040. 0 = output decode of register 13h on GPIO3
  18041. 1 = reserved
  18042. 6 general purpose I/O 2
  18043. 0 = output decode of register 12h on GPIO2
  18044. 1 = reserved
  18045. 5 general purpose I/O 1
  18046. 0 = output "PLLHREF" on GPIO1
  18047. 1 = output decode of register 11h on GPIO1
  18048. 4 general purpose I/O 0
  18049. 0 = output decode of register 10h on GPIO0
  18050. 1 = reserved
  18051. 3 reserved
  18052. 2 I2C bus read back
  18053. (status of I2CI pin when I2CK pin goes from 0 to 1)
  18054. 1 I2C bus data (refer to I2C.LST for more details on the I2C bus)
  18055. 0 I2C bus clock
  18056. SeeAlso: #P0924
  18057. Bitfields for Chips & Technologies PC Video (82C9001A) Video Acquisition Mode:
  18058. Bit(s) Description (Table P0930)
  18059. 7 video input is non-interlace
  18060. 6 reserved
  18061. 5 video input Vsync polarity is active high
  18062. 4 video input Hsync polarity is active high
  18063. 3 video input even/odd acquire
  18064. 0 = even (first) field
  18065. 1 = odd (second) field
  18066. 2 video acquire field/frame
  18067. 0 = frame
  18068. 1 = field (interlaced mode only)
  18069. 1 video acquisition single/continuous
  18070. 0 = continuous
  18071. 1 = single (bit 0 cleared at the end)
  18072. 0 video acquisition start/stop
  18073. 0 = stop (allows CPU access to frame buffer)
  18074. 1 = start
  18075. SeeAlso: #P0924
  18076. Bitfields for Chips & Technologies PC Video (82C9001A) Window Control:
  18077. Bit(s) Description (Table P0931)
  18078. 7 invert field polarity
  18079. 6 select external field
  18080. 0 = internal field (field detected 1 XCLK after trailing edge of
  18081. XVSYNC input bit)
  18082. 1 = field bit input through XFLD pin and reclocked by XCLK before
  18083. XFLD use (XFLD input transition after trailing edge of XVSYNC;
  18084. 0 on XFLD = even field, 1 on XFLD = odd field)
  18085. 5 multiplexing ratio for luminance and chrominance input data
  18086. (active if bit 4 = 0)
  18087. 0 = 4:1:1 / 2:1:1
  18088. 1 = 4:2:2
  18089. 4 video input data multiplexing
  18090. 0 = multiplexed (YUV)
  18091. 1 = non-multiplexed (RGB)
  18092. 3 video input vertical scaling enable
  18093. 2 video input horizontal scaling enable
  18094. 1 video capture
  18095. 0 = inside cropping window
  18096. 1 = outside cropping window
  18097. 0 video input cropping enable
  18098. SeeAlso: #P0924,#P0935,#P0937
  18099. Bitfields for Chips & Technologies PC Video (82C9001A) Horizontal Scaling:
  18100. Bit(s) Description (Table P0932)
  18101. 7-6 reserved
  18102. 5-0 number of pixels written per 64 input pixels
  18103. (valid values are 1-63; enabled by register 21h bit 2)
  18104. SeeAlso: #P0924,#P0933,#P0934
  18105. Bitfields for Chips & Technologies PC Video (82C9001A) Vertical Scaling:
  18106. Bit(s) Description (Table P0933)
  18107. 7 reserved
  18108. 6-0 number of pixels written per 64 input pixels
  18109. (valid values are 1-63; enabled by register 21h bit 3)
  18110. SeeAlso: #P0924,#P0932,#P0934
  18111. Bitfields for Chips & Technologies PC Video (82C9001A) Scaling Field Adjust:
  18112. Bit(s) Description (Table P0934)
  18113. 7 reserved
  18114. 6-0 modify scaling value for odd field during acquisition
  18115. (diagnostic register, set to same value as register 2Eh for normal
  18116. operation)
  18117. SeeAlso: #P0924,#P0932,#P0936
  18118. Bitfields for Chips & Technologies PC Video (82C9001A) Input Video Start:
  18119. Bit(s) Description (Table P0935)
  18120. 7-6 reserved
  18121. 5-0 number of scan lines from trailing edge of video Vsync to start of
  18122. active video frame
  18123. (should always be programmed with non-zero value)
  18124. SeeAlso: #P0924,#P0931
  18125. Bitfields for Chips & Technologies PC Video (82C9001A) Scaling Control:
  18126. Bit(s) Description (Table P0936)
  18127. 7 fast write enable
  18128. 6-5 reserved (0 for normal operation)
  18129. 4 Y-max enable
  18130. (prevents wrap around of memory Y-address; should be enabled for
  18131. PAL video data)
  18132. 3 X-max enable (prevents wrap around of memory X-address)
  18133. 2 Y-over-write mode
  18134. (should be set to 1 when vertical scaling less than 1/2 to reduce
  18135. motion artifacts)
  18136. 0 = normal scaling
  18137. 1 = modified scaling
  18138. 1-0 chrominance multiplex adjust bits
  18139. (adjust to maintain luminance/chrominance alignment)
  18140. SeeAlso: #P0924,#P0934
  18141. Bitfields for Chips & Technologies PC Video (82C9001A) Display Area Control:
  18142. Bit(s) Description (Table P0937)
  18143. 7-6 skew between VGA data input and multiplexer control output
  18144. 00 = 2 VGA clock delay
  18145. 01 = 3 VGA clock delay
  18146. 10 = 4 VGA clock delay
  18147. 11 = 5 VGA clock delay
  18148. 5 both X-Y window and color key area (function 3)
  18149. (does not exist if bit 0 = 0 or bit 1 = 0)
  18150. 0 = display VGA
  18151. 1 = display frame buffer data
  18152. 4 color key only area (function 2)
  18153. (does not exist if bit 1 = 0)
  18154. 0 = display VGA
  18155. 1 = display frame buffer data
  18156. 3 X-Y window only area (function 1)
  18157. (does not exist if bit 0 = 0)
  18158. 0 = display VGA
  18159. 1 = display frame buffer data
  18160. 2 non-color key or X-Y window area (function 0)
  18161. 0 = display VGA
  18162. 1 = display frame buffer data
  18163. 1 overlay window using color keying enable
  18164. 0 overlay window using X-Y window enable
  18165. SeeAlso: #P0924,#P0931
  18166. Bitfields for Chips & Technologies PC Video (82C9001A) X/Y-Panning High:
  18167. Bit(s) Description (Table P0938)
  18168. 7-5 reserved
  18169. 4 high bit of row offset (register 4Ah)
  18170. 3-1 reserved
  18171. 0 high bit of column offset (register 49h)
  18172. SeeAlso: #P0924
  18173. Bitfields for Chips & Technologies PC Video (82C9001A) Sync Polarity/Zoom:
  18174. Bit(s) Description (Table P0939)
  18175. 7-6 reserved
  18176. 5 VGA Vsync polarity is active high
  18177. 4 VGA Hsync polarity is active high
  18178. 3-2 vertical zoom
  18179. 00 = no zoom
  18180. 01 = 2x
  18181. 10 = 4x
  18182. 11 = 8x
  18183. 1-0 horizontal zoom (same values as vertical zoom)
  18184. SeeAlso: #P0924
  18185. Bitfields for Chips & Technologies PC Video (82C9001A) VGA Color Compare:
  18186. Bit(s) Description (Table P0940)
  18187. 7-0 defines values VGA data must have for color match
  18188. 0 = VGA data must be 0
  18189. 1 = VGA data must be 1
  18190. SeeAlso: #P0924,#P0941
  18191. Bitfields for Chips & Technologies PC Video (82C9001A) VGA Color Mask Register:
  18192. Bit(s) Description (Table P0941)
  18193. 7-0 defines bit position where VGA and color value must match
  18194. 0 = VGA data must match color value
  18195. 1 = don't care
  18196. SeeAlso: #P0924,#P0940
  18197. Bitfields for Chips & Technologies PC Video (82C9001A) Interlace Control:
  18198. Bit(s) Description (Table P0942)
  18199. 7-5 reserved
  18200. 4 replicate odd/even field (if bit 3 = 1)
  18201. 0 = odd
  18202. 1 = even
  18203. 3 replicate field
  18204. 0 = do not replicate
  18205. 1 = replicate even/odd (depending on bit 4)
  18206. 2 invert display window field signal polarity (if bit 0 = 1)
  18207. 0 = do not modify
  18208. 1 = invert
  18209. 1 select external display window field signal (if bit 0 = 1)
  18210. 0 = internal
  18211. 1 = VFLD input
  18212. 0 display window is interlaced
  18213. SeeAlso: #P0924
  18214. Bitfields for Chips & Technologies PC Video (82C9001A) Version/Global Enable:
  18215. Bit(s) Description (Table P0943)
  18216. 7-4 PC Video version number
  18217. 3 reserved
  18218. 2 IOWR# delay (write-only)
  18219. 0 = IOWR# input delayed inside chip by 2 XCLK cycles
  18220. 1 = IOWR# input not delayed
  18221. 1 enable memory (write-only)
  18222. 0 PC Video global enable (write-only)
  18223. 0 = index register and register FFh are write only and all other
  18224. registers are disabled
  18225. 1 = all registers are read/write
  18226. SeeAlso: #P0924
  18227. ----------P0AE20AE3--------------------------
  18228. PORT 0AE2-0AE3 - cluster (adapter 2)
  18229. ----------P0AE8------------------------------
  18230. PORT 0AE8 - S3 86C928 video controller (ELSA Winner 1000)
  18231. ----------P0AE80AEF--------------------------
  18232. PORT 0AE8-0AEF - 8514/A and compatible (e.g. ATI Graphics Ultra) - HSYNC START
  18233. 0AE8w -W CRT control: horizontal sync start
  18234. ----------P0B900B93--------------------------
  18235. PORT 0B90-0B93 - cluster (adapter 2)
  18236. ----------P0C00------------------------------
  18237. PORT 0C00 - EISA??? - PAGE REGISTER
  18238. 0C00 RW page register to write to SRAM or I/O
  18239. --------X-P0C000CFF--------------------------
  18240. PORT 0C00-0CFF - reserved for EISA system motherboard
  18241. ----------P0C7C------------------------------
  18242. PORT 0C7C bit 7-4 (Compaq)
  18243. --------X-P0C800C83--------------------------
  18244. PORT 0C80-0C83 - EISA system board ID registers
  18245. 0C80 R- bit 7: unused (0)
  18246. bits 6-2: manufacturer ID, first compressed ASCII char
  18247. bits 1-0: manufacturer ID, second compressed ASCII char (high)
  18248. 0C81 R- bits 7-5: manufacturer ID, second compressed ASCII char (low)
  18249. bits 4-0: manufacturer ID, third compressed ASCII char
  18250. 0C82 R- reserved for manufacturer's use
  18251. 0C83 R- bits 7-3: reserved for manufacturer's use
  18252. bits 2-0: EISA bus version
  18253. --------X-P0CF80CFF--------------------------
  18254. PORT 0CF8-0CFF - PCI Configuration Mechanism 1 - Configuration Registers
  18255. SeeAlso: PORT 0CF8h"Mechanism 2"
  18256. 0CF8d -W configuration address port (see #P0944)
  18257. 0CFCd RW configuration data port (when PORT 0CF8h bit 31 is set)
  18258. Bitfields for PCI configuration address port:
  18259. Bit(s) Description (Table P0944)
  18260. 1-0 reserved (00)
  18261. 7-2 configuration register number (see #00878)
  18262. 10-8 function
  18263. 15-11 device number
  18264. 23-16 bus number
  18265. 30-24 reserved (0)
  18266. 31 enable configuration space mapping
  18267. Note: configuration registers are considered DWORDs, so the number in bits
  18268. 7-2 is the configuration space address shifted right two bits
  18269. SeeAlso: #P0945
  18270. --------X-P0CF80CFA--------------------------
  18271. PORT 0CF8-0CFA - PCI Configuration Mechanism 2 - Configuration Registers
  18272. Notes: this configuration mechanism is deprecated as of PCI version 2.1;
  18273. only mechanism 1 should be used for new systems
  18274. to access the configuration space, write the target bus number to
  18275. the Forward Register, then write to the Configuration Space
  18276. Enable register, and finally read or write the appropriate I/O
  18277. port(s) in the range C000h to CFFFh (where Cxrrh accesses location
  18278. 'rr' in physical device 'x's configuration data)
  18279. the Intel "Saturn" and "Neptune" chipsets use configuration mechanism 2
  18280. SeeAlso: PORT 0CF8h"Mechanism 1",PORT C000h"PCI Configuration",PORT 0CFBh
  18281. 0CF8 RW Configuration Space Enable (CSE) (see #P0945)
  18282. 0CFA RW Forward Register (selects target bus number)
  18283. Bitfields for PCI Configuration Space Enable:
  18284. Bit(s) Description (Table P0945)
  18285. 0 Special Cycle Enable (SCE)
  18286. 3-1 target function number (PCI logical device within physical device)
  18287. 7-4 key (non-zero to allow configuration)
  18288. SeeAlso: #P0944
  18289. ----------P0CF9------------------------------
  18290. PORT 0CF9 - Intel chipsets - TURBO/RESET CONTROL REGISTER
  18291. Notes: this port can only be accessed via 8-bit IN or OUT instructions by
  18292. the CPU
  18293. supported by the Intel "Saturn" and "Neptune" (82434NX) chipsets,
  18294. the Intel 82454KX/GX (450GX chipset), Intel 82420EX chipset, etc.
  18295. SeeAlso: PORT C051h,#01055,#01239
  18296. 0CF9 RW reboot system, optionally selecting de-turbo mode (see #P0946)
  18297. Bitfields for Intel 82420EX turbo/reset control register:
  18298. Bit(s) Description (Table P0946)
  18299. 7-4 reserved (0)
  18300. 3 (450KX/GX only) enable CPU BIST on reset
  18301. 2 reset CPU
  18302. 1 reset mode
  18303. 0 soft reset
  18304. 1 hard reset
  18305. 0 deturbo mode
  18306. Note: when resetting the CPU, two writes are required: the first sets the
  18307. state of bit 1 while keeping bit 2 cleared, and the second sets
  18308. bit 2; the reset occurs on bit 2's transition from 0 to 1.
  18309. SeeAlso: PORT C051h
  18310. ----------P0CFB------------------------------
  18311. PORT 0CFB - Intel 82434NX (Neptune) - PCI MECHANISM CONTROL REGISTER
  18312. Note: not present on the 82434LX (Mercury), which supports only mechanism #2
  18313. SeeAlso: PORT 0CF8h
  18314. 0CFB RW specify which PCI access mechanism is to be enabled
  18315. Bitfields for Intel 82434NX PCI mechanism control register:
  18316. Bit(s) Description (Table P0947)
  18317. 7-1 reserved
  18318. 0 PCI Configuration Access Mechanism Select
  18319. =0 use PCI configuration access mechanism #2 (0CF8/0CFA) (default)
  18320. =1 use PCI configuration access mechanism #1 (0CF8/0CFC)
  18321. --------s-P0E800E83--------------------------
  18322. PORT 0E80-0E83 - Gravis Ultra Sound Daughter Card by Advanced Gravis
  18323. Range: dipswitch selectable from PORT 0530h-0533h, PORT 0604h-0607h,
  18324. PORT 0E80h-0E83h, and PORT 0F40h-0F43h
  18325. --------s-P0E800E87--------------------------
  18326. PORT 0E80-0E87 - Windows Sound System
  18327. Range: PORT 0530h-0537h,PORT 0604h-060Bh,PORT 0E80h-0E87h,PORT 0F40h-0F47h
  18328. SeeAlso: PORT 0530h"Sound System"
  18329. --------V-P0EE8------------------------------
  18330. PORT 0EE8 - S3 86C928 video controller (ELSA Winner 1000)
  18331. --------V-P0EE80EEF--------------------------
  18332. PORT 0EE8-0EEF - 8514/A and compatible (e.g. ATI Graphics Ultra) - HSYNC WIDTH
  18333. 0EE8w -W CRT control: horizontal sync width
  18334. --------s-P0F400F43--------------------------
  18335. PORT 0F40-0F43 - Gravis Ultra Sound Daughter Card by Advanced Gravis
  18336. Range: dipswitch selectable from PORT 0530h-0533h, PORT 0604h-0607h,
  18337. PORT 0E80h-0E83h, and PORT 0F40h-0F43h
  18338. --------s-P0F400F47--------------------------
  18339. PORT 0F40-0F47 - Windows Sound System
  18340. Range: PORT 0530h-0537h,PORT 0604h-060Bh,PORT 0E80h-0E87h,PORT 0F40h-0F47h
  18341. SeeAlso: PORT 0530h"Sound System"
  18342. --------s-P0F8D------------------------------
  18343. PORT 0F8D - OPTi 82C750 (Vendetta) - AUDIO MODULE BASE ADDRESS REGISTER
  18344. SeeAlso: PORT 0F8Eh,PORT 0530h"Vendetta"
  18345. 0F8D RW "MCBase" base register (see #P0948)
  18346. Bitfields for OPTi "Vendetta" (82C750) audio module base register:
  18347. Bit(s) Description (Table P0948)
  18348. 7 index/data port access protection disable
  18349. 6-5 reserved
  18350. 4-0 index/data port address bits 8-4
  18351. (bits 15-9 = 0000111; bits 3-0 = 1110 for index port, data port +1)
  18352. SeeAlso: #P0949
  18353. ----------P0F8E0F8F--------------------------
  18354. PORT 0F8E-0F8F - OPTi "Vendetta" (82C750) CHIPSET - Audio Module Data Registers
  18355. Range: The I/O address range is selectable using port 0F8Dh from among
  18356. 0ExE-0ExF and 0FxE-0FxF
  18357. SeeAlso: PORT 0F8Dh,PORT 0530h"Vendetta"
  18358. 0F8E RW "MCIdx" index register (see #P0949)
  18359. 0F8F RW "MCData" data register
  18360. (Table P0949)
  18361. Values for OPTi "Vendetta" (82C750) Audio Module configuration registers:
  18362. 00h disable
  18363. 01h base/type configuration register (see #P0950)
  18364. 02h reserved
  18365. 03h Sound Blaster/Windows Sound System configuration register (see #P0951)
  18366. 04h user programmable general purpose register (see #P0952)
  18367. 05h option register (see #P0953)
  18368. 06h MIDI interface register (write-only) (see #P0954)
  18369. 07h semaphore software register
  18370. 08h reserved
  18371. 09h test control register 1 (see #P0955)
  18372. 0Ah test control register 2 (see #P0956)
  18373. 0Bh status register (read-only) (see #P0957)
  18374. 0Ch test register (see #P0958)
  18375. 0Dh PNP status register (read-only) (see #P0959)
  18376. 0Eh PNP card select number register (read-only)
  18377. 0Fh PNP read port address register (read-only)
  18378. 10h volume control register (see #P0960)
  18379. 11h reserved (serial EEPROM)
  18380. 12h CONFIG status register (see #P0961)
  18381. 13h FM control register (see #P0962)
  18382. 14h reserved (GPIO control)
  18383. 15h serial audio control register 0 (see #P0963)
  18384. 16h serial audio control register 1 (see #P0964)
  18385. 17h reserved
  18386. Bitfields for OPTi "Vendetta" Audio Module base/type configuration register:
  18387. Bit(s) Description (Table P0950)
  18388. 7 Sound Blaster base I/O address
  18389. 0 = 220h
  18390. 1 = 240h
  18391. 6 reserved
  18392. 5-4 Windows Sound System base I/O address
  18393. 00 = 530h
  18394. 01 = E80h
  18395. 10 = F40h
  18396. 11 = 640h
  18397. 3-1 reserved
  18398. 0 game port enable
  18399. SeeAlso: #P0949
  18400. Bitfields for OPTi "Vendetta" Audio Module SB/WSS configuration register:
  18401. Bit(s) Description (Table P0951)
  18402. 7 reserved
  18403. 6 reserved (0 for normal WSS operation)
  18404. 5-3 digital audio processor IRQ
  18405. 000 = disable
  18406. 001 = IRQ7
  18407. 010-100 = IRQ9-IRQ11
  18408. 101 = IRQ5
  18409. 110-111 = reserved
  18410. 2-0 digital audio processor DMA
  18411. 000 = disable
  18412. 001-010 = QRQ0-DRQ1
  18413. 011 = DRQ3
  18414. 100 = disable, DRQ1 (if dual channel DMA mode)
  18415. 101 = DRQ0, DRQ1 (if dual channel DMA mode)
  18416. 110 = DRQ1, DRQ0 (if dual channel DMA mode)
  18417. 111 = DRQ3, DRQ0 (if dual channel DMA mode)
  18418. SeeAlso: #P0949
  18419. Bitfields for OPTi "Vendetta" Audio Module user programmable general purpose:
  18420. Bit(s) Description (Table P0952)
  18421. 7-6 playback FIFO flow
  18422. 00 = empty
  18423. 01 = full-2
  18424. 10 = full-4
  18425. 11 = not full
  18426. 5-4 OPL select
  18427. 00 = OPL2
  18428. 01 = OPL3
  18429. 10 = OPL4
  18430. 11 = OPL5
  18431. 3 D/A controller zero
  18432. 0 = hold
  18433. 1 = clear
  18434. 2 audio enable
  18435. 1-0 Sound Blaster version
  18436. 00 = 2.1
  18437. 01 = 1.5
  18438. 10 = 3.2
  18439. 11 = 4.4
  18440. SeeAlso: #P0949
  18441. Bitfields for OPTi "Vendetta" Audio Module option register:
  18442. Bit(s) Description (Table P0953)
  18443. 7-6 reserved
  18444. 5 codec expanded mode enable
  18445. (must be set to access expanded mode codec indirect registers
  18446. 10h-1Fh)
  18447. 4 Sound Blaster ADPCM enable
  18448. 3 Sound Blaster command FIFO enable
  18449. 2 Sound Blaster Pro mixer voice volume emulation volume effect enable
  18450. 1 DMA watchdog timer enable
  18451. 0 reserved
  18452. SeeAlso: #P0949
  18453. Bitfields for OPTi "Vendetta" Audio Module MIDI interface register:
  18454. Bit(s) Description (Table P0954)
  18455. 7 MPU-401 enable
  18456. 6-5 MPU-401 base address
  18457. 00 = 330h
  18458. 01 = 320h
  18459. 10 = 310h
  18460. 11 = 300h
  18461. 4-3 MPU-401 IRQ
  18462. 00 = IRQ9
  18463. 01 = IRQ10
  18464. 10 = IRQ5
  18465. 11 = IRQ7
  18466. 2 reserved
  18467. 1 Windows Sound System mode enable
  18468. 0 Sound Blaster mode enable
  18469. SeeAlso: #P0949
  18470. Bitfields for OPTi "Vendetta" Audio Module test control register 1:
  18471. Bit(s) Description (Table P0955)
  18472. 7 digital power-down
  18473. 6 analog power-down
  18474. 5-2 reserved
  18475. 1 software reset enable
  18476. 0 reserved
  18477. SeeAlso: #P0949
  18478. Bitfields for OPTi "Vendetta" Audio Module test control register 2:
  18479. Bit(s) Description (Table P0956)
  18480. 7 playback reset
  18481. 6 capture reset
  18482. 3 PNP test
  18483. 2-0 reserved
  18484. SeeAlso: #P0949
  18485. Bitfields for OPTi "Vendetta" Audio Module status register:
  18486. Bit(s) Description (Table P0957)
  18487. 7 playback DMA pending
  18488. 6 capture DMA pending
  18489. 5 MPU interrupt pending
  18490. 4 reserved
  18491. 3 capture interrupt pending
  18492. 2 playback interrupt pending
  18493. 1 playback FIFO empty
  18494. 0 capture FIFO empty
  18495. SeeAlso: #P0949
  18496. Bitfields for OPTi "Vendetta" Audio Module test register:
  18497. Bit(s) Description (Table P0958)
  18498. 7-5 reserved
  18499. 4 digital test output high/low byte (write-only)
  18500. 3-0 digital test output select (write-only)
  18501. SeeAlso: #P0949
  18502. Bitfields for OPTi "Vendetta" Audio Module PNP status register:
  18503. Bit(s) Description (Table P0959)
  18504. 7 CSN not 0, active high
  18505. 1 = CSN assigned by PNP configuration manager
  18506. 6-5 reserved
  18507. 4 audio module logical device enable
  18508. 3 1 = audio module PNP logic in CONFIG mode
  18509. 2 1 = audio module PNP logic in ISOLATE mode
  18510. 1 1 = audio module PNP logic in SLEEP mode
  18511. 0 1 = audio module PNP logic in WAIT4KEY mode
  18512. SeeAlso: #P0949
  18513. Bitfields for OPTi "Vendetta" Audio Module volume control register:
  18514. Bit(s) Description (Table P0960)
  18515. 7-4 reserved
  18516. 3 master volume mute
  18517. 2-0 reserved
  18518. SeeAlso: #P0949
  18519. Bitfields for OPTi "Vendetta" Audio Module CONFIG status register:
  18520. Bit(s) Description (Table P0961)
  18521. 7 reserved
  18522. 6 ASIO enable
  18523. 5-4 reserved
  18524. 3-0 chip revision ID (read-only)
  18525. SeeAlso: #P0949
  18526. Bitfields for OPTi "Vendetta" Audio Module FM control register:
  18527. Bit(s) Description (Table P0962)
  18528. 7-3 reserved
  18529. 2 mega bass enable
  18530. 1 enhanced FM feature OPTi mode enable
  18531. 0 external FM enable
  18532. SeeAlso: #P0949
  18533. Bitfields for OPTi "Vendetta" Audio Module serial audio control register 0:
  18534. Bit(s) Description (Table P0963)
  18535. 7-6 FDAC clock controller
  18536. 00 = reserved
  18537. 01 = internal FM
  18538. 10 = reserved
  18539. 11 = external serial audio
  18540. 5-2 reserved
  18541. 1 FDAC data
  18542. 0 = internal FM
  18543. 1 = external serial audio
  18544. 0 reserved
  18545. SeeAlso: #P0949
  18546. Bitfields for OPTi "Vendetta" Audio Module serial audio control register 1:
  18547. Bit(s) Description (Table P0964)
  18548. 7 ASIO reset
  18549. 6 ASIO test
  18550. 5-4 reserved
  18551. 3 SCLK polarity
  18552. 0 = reverse
  18553. 1 = no change
  18554. 2 FSYNC polarity
  18555. 0 = reverse
  18556. 1 = no change
  18557. 1-0 reserved
  18558. SeeAlso: #P0949
  18559. ----------P0xx00xxF--------------------------
  18560. PORT 0xx0-0xxF - Intel 82595TX - ISA/PCMCIA Ethernet Controller
  18561. Range: at any multiple of 16 in first 1024 I/O addresses
  18562. +000 RW command register (see #P0965)
  18563. --- I/O bank 0 ---
  18564. +001 RW status register (see #P0966)
  18565. +002 RW id register (see #P0967)
  18566. +003 RW mask register (see #P0968)
  18567. +004 RW RCV CAR/BAR low
  18568. +005 RW RCV CAR/BAR high
  18569. +006 RW RCV STOP REG low
  18570. +007 RW RCV STOP REG high
  18571. +008 RW RCV copy treshold REG
  18572. +009 RW reserved
  18573. +00A RW XMT CAR/BAR low
  18574. +00B RW XMT CAR/BAR high
  18575. +00C RW host address reg/32-bit I/O (byte 0) low
  18576. +00D RW host address reg/32-bit I/O (byte 1) high
  18577. +00E RW local memory/32-bit I/O (byte 2) IO port low
  18578. +00F RW local memory/32-bit I/O (byte 3) IO port high
  18579. --- I/O bank 1 ---
  18580. +001 RW bank 1 register 1 (see #P0969)
  18581. +002 RW int select register (see #P0970)
  18582. +003 RW I/O mapping register (see #P0971)
  18583. +004 RW reserved
  18584. +005 RW reserved
  18585. +006 RW reserved
  18586. +007 RW RCV BOF treshold reg
  18587. +008 RW RCV lower limit reg high byte
  18588. +009 RW RCV upper limit reg high byte
  18589. +00A RW XMT lower limit reg high byte
  18590. +00B RW XMT upper limit reg high byte
  18591. +00C RW FLASH control register (see #P0972)
  18592. +00D RW bank 1 register 13 (see #P0973)
  18593. +00E RW reserved
  18594. +00F RW reserved
  18595. --- I/O bank 2 ---
  18596. +001 RW bank 2 register 1 (see #P0974)
  18597. +002 RW bank 2 register 2 (see #P0975)
  18598. +003 RW bank 2 register 3 (see #P0976)
  18599. +004 RW individual address register 0
  18600. +005 RW individual address register 1
  18601. +006 RW individual address register 2
  18602. +007 RW individual address register 3
  18603. +008 RW individual address register 4
  18604. +009 RW individual address register 5
  18605. +00A RW bank 2 register 10 (see #P0977)
  18606. +00B RW RCV NO resource counter
  18607. +00C RW IAPROM IO port
  18608. +00D RW reserved
  18609. +00E RW reserved
  18610. +00F RW reserved
  18611. ------
  18612. Bitfields for Intel 82595TX command register:
  18613. Bit(s) Description (Table P0965)
  18614. 7-6 bank pointer (if switch bank command written; ignored for other
  18615. commands)
  18616. 00 = bank 0
  18617. 01 = bank 1
  18618. 10 = bank 2
  18619. 5 command (other than transmit) aborted (read-only; should be written 0)
  18620. 4-0 (write) command OP code
  18621. 00h = switch bank/nop
  18622. 03h = MC-setup
  18623. 04h = transmit
  18624. 05h = TDR
  18625. 06h = dump
  18626. 07h = diagnose
  18627. 08h = RCV enable
  18628. 0Ah = RCV disable
  18629. 0Bh = RCV stop
  18630. 0Dh = abort
  18631. 0Eh = reset
  18632. 14h = XMT no CRC/SA
  18633. 15h = cont XMT test
  18634. 16h = set tristate
  18635. 17h = reset tristate
  18636. 18h = power down
  18637. 1Ch = resume XMT list
  18638. 1Eh = sel reset
  18639. (read) execution event (MC done, init done, TDR done, DIAG done)
  18640. (if bank 0 register 1 bit 3 = 1)
  18641. SeeAlso: #P0966,#P0968
  18642. Bitfields for Intel 82595TX status register:
  18643. Bit(s) Description (Table P0966)
  18644. 7-6 RCV states
  18645. 5-4 EXEC states
  18646. 3 EXEC INT
  18647. 2 TX INT
  18648. 1 RX INT
  18649. 0 RX STP INT
  18650. SeeAlso: #P0965,#P0967,#P0968
  18651. Bitfields for Intel 82595TX id register:
  18652. Bit(s) Description (Table P0967)
  18653. 7-6 counter
  18654. 5 reserved (1)
  18655. 4 auto enable
  18656. 3-2 reserved (01)
  18657. 1-0 reserved (0)
  18658. SeeAlso: #P0965,#P0966,#P0968
  18659. Bitfields for Intel 82595TX mask register:
  18660. Bit(s) Description (Table P0968)
  18661. 7-6 reserved
  18662. 5 cur/base
  18663. 4 32IO/HAR
  18664. 3 EXEC mask
  18665. 2 TX mask
  18666. 1 RX mask
  18667. 0 RX STP mask
  18668. SeeAlso: #P0965,#P0966,#P0969
  18669. Bitfields for Intel 82595TX bank 1 register 1:
  18670. Bit(s) Description (Table P0969)
  18671. 7 tri-st INT
  18672. 6 alt RDY tm
  18673. 5-2 reserved
  18674. 1 host bus wd
  18675. 0 reserved
  18676. SeeAlso: #P0965,#P0967,#P0970
  18677. Bitfields for Intel 82595TX int select register:
  18678. Bit(s) Description (Table P0970)
  18679. 7 FL/BT detect
  18680. 6-4 boot EPROM/FLASH decode window
  18681. 3 reserved
  18682. 2-0 INT select
  18683. Bitfields for Intel 82595TX I/O mapping register:
  18684. Bit(s) Description (Table P0971)
  18685. 7-6 reserved
  18686. 5-0 I/O mapping window
  18687. Bitfields for Intel 82595TX FLASH control register:
  18688. Bit(s) Description (Table P0972)
  18689. 7-6 FLASH page select high
  18690. 5-4 FLASH write enable
  18691. 3-0 FLASH page select
  18692. Bitfields for Intel 82595TX bank 1 register 13:
  18693. Bit(s) Description (Table P0973)
  18694. 7-3 reserved
  18695. 2 SMOUT out en
  18696. 1 AL RDY test
  18697. 0 AL RDY PAS/FL
  18698. Bitfields for Intel 82595TX bank 2 register 1:
  18699. Bit(s) Description (Table P0974)
  18700. 7 disc bad fr
  18701. 6 TX chn ErStp
  18702. 5 TX chn int md
  18703. 4 PCMCIA/ISA
  18704. 3-1 reserved
  18705. 0 TX con proc en
  18706. Bitfields for Intel 82595TX bank 2 register 2:
  18707. Bit(s) Description (Table P0975)
  18708. 7-6 loopback
  18709. 5 multi IA
  18710. 4 no SA ins
  18711. 3 length enable
  18712. 2 RX CRC InMem
  18713. 1 BC DIS
  18714. 0 PRMSC mode
  18715. Bitfields for Intel 82595TX bank 2 register 3:
  18716. Bit(s) Description (Table P0976)
  18717. 7 test 1
  18718. 6 test 2
  18719. 5 BNC/TPE
  18720. 4 APORT
  18721. 3 jabber disable
  18722. 2 TPE/AUI
  18723. 1 pol/corr
  18724. 0 lnk in disable
  18725. Bitfields for Intel 82595TX bank 2 register 10:
  18726. Bit(s) Description (Table P0977)
  18727. 7-5 stepping
  18728. 4 trnoff enable
  18729. 3 EEDO
  18730. 2 EEDI
  18731. 1 EECS
  18732. 0 EESK
  18733. --------X-P100010FF--------------------------
  18734. PORT 1000-10FF - available for EISA slot 1
  18735. ----------P12E812EF--------------------------
  18736. PORT 12E8-12EF - 8514/A and compatible (e.g. ATI Graphics Ultra) - VERT TOTAL
  18737. 12E8w -W CRT control: vertical total
  18738. --------V-P12EE------------------------------
  18739. PORT 12EE - ATI Mach32 - CONFIGURATION STATUS 0
  18740. SeeAlso: PORT 16EEh"Mach32",PORT 42EEh"Mach32",PORT 52EEh"Mach32"
  18741. ----------P13901393--------------------------
  18742. PORT 1390-1393 - cluster (adapter 3)
  18743. ----------P13C6------------------------------
  18744. PORT 13C6 - Compaq - ???
  18745. Note: this port is read by the Compaq MS-DOS 4.0/5.0 CHARSET utility
  18746. 13C6 R? Compaq video status??? (see #P0978)
  18747. Bitfields for Compaq video status???:
  18748. Bit(s) Description (Table P0978)
  18749. 7 ???
  18750. 6 flag
  18751. 5-3 ???
  18752. 2-0 status of display???
  18753. --------X-P140014FF--------------------------
  18754. PORT 1400-14FF - available for EISA slot 1
  18755. ----------P16E816EF--------------------------
  18756. PORT 16E8-16EF - 8514/A and compatible (e.g. ATI Graphics Ultra) - VERT DISPLYD
  18757. 16E8w -W CRT control: vertical displayed
  18758. --------V-P16EE------------------------------
  18759. PORT 16EE - ATI Mach32 - CONFIGURATION STATUS 1
  18760. SeeAlso: PORT 12EEh"Mach32",PORT 42EEh"Mach32",PORT 52EEh"Mach32"
  18761. --------X-P180018FF--------------------------
  18762. PORT 1800-18FF - available for EISA slot 1
  18763. ----------P1AE81AEF--------------------------
  18764. PORT 1AE8-1AEF - 8514/A and compatible (e.g. ATI Graphics Ultra) - VSYNC START
  18765. 1AE8w -W CRT control: vertical sync start
  18766. --------X-P1C001CFF--------------------------
  18767. PORT 1C00-1CFF - available for EISA slot 1
  18768. --------d-P1C001CBF--------------------------
  18769. PORT 1C00-1CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 1
  18770. Notes: Adaptec AIC-777x SCSI controllers have on-board PhaseEngine SCSI
  18771. sequence processor which executes its instructions from the 2-Kbyte
  18772. sequencer RAM; it treats all of the CPU-addressable registers as its
  18773. data memory
  18774. AIC-777x SCSI controllers have special on-board RAM and queue registers
  18775. for queueing the requests sent from the drivers and BIOS to the
  18776. PhaseEngine processor
  18777. Adaptec AHA-284x is a VLB SCSI controller based on AIC-7770; it has
  18778. a serial EEPROM (93C46) for storing various configuration settings
  18779. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-152x",PORT xxxxh"Adaptec AIC-78xx"
  18780. +000 RW SCSI sequence control register (SCSISEQ) (see #P0600)
  18781. +001 RW SCSI transfer control register 0 (SXFRCTL0) (see #P0979)
  18782. +002 RW SCSI transfer control register 1 (SXFRCTL1) (see #P0980)
  18783. +003 R- SCSI control signal read register (SCSISIGI) (see #P0603)
  18784. +003 -W SCSI control signal write register (SCSISIGO) (see #P0604)
  18785. +004 RW SCSI rate control register (SCSIRATE) (see #P0981)
  18786. +005 RW SCSI ID register (SCSIID) (see #P0982)
  18787. +006 RW SCSI latched data low register (SCSIDATL)
  18788. read/write causes -ACK to pulse
  18789. +007 RW (Wide SCSI) SCSI latched data high register (SCSIDATH)
  18790. read/write causes -ACK to pulse
  18791. +008 RW SCSI transfer count register (STCNT) (3 bytes long)
  18792. +00B R- SCSI status register 0 (SSTAT0) (see #P0607)
  18793. +00B -W clear SCSI interrupt register 0 (CLRSINT0) (see #P0983)
  18794. +00C R- SCSI status register 1 (SSTAT1) (see #P0609)
  18795. +00C -W clear SCSI interrupt register 1 (CLRSINT1) (see #P0610)
  18796. +00D R- SCSI status register 2 (SSTAT2) (see #P0984)
  18797. +00E R- SCSI status register 3 (SSTAT3) (see #P0612)
  18798. +00F RW SCSI test control register (SCSITEST) (see #P0985)
  18799. +010 RW SCSI interrupt mode register 0 (SIMODE0) (see #P0616)
  18800. +011 RW SCSI interrupt mode register 1 (SIMODE1) (see #P0617)
  18801. +012 RW SCSI data bus low register (SCSIBUSL)
  18802. +013 RW (Wide SCSI) SCSI data bus high register (SCSIBUSH)
  18803. +014d R- SCSI/host address register (SHADDR)
  18804. +018 RW selection timeout timer register (SELTIMER) (see #P0986)
  18805. +019 RW selection/reselection ID register (SELID) (see #P0987)
  18806. +01F RW SCSI block control register (SBLKCTL) (see #P0988)
  18807. +020 RW scratch RAM (64 bytes) (see #P1002)
  18808. +060 RW sequencer control register (SEQCTL) (see #P0989)
  18809. +061 RW sequencer RAM data register (SEQRAM)
  18810. +062w RW sequencer address register (SEQADDR) (see #P0990)
  18811. +064 RW accumulator register (ACCUM)
  18812. +065 RW source index register (SINDEX)
  18813. +066 RW destination index register (DINDEX)
  18814. +069 R- all ones register (ALLONES)
  18815. always reads as FFh
  18816. +06A R- all zeros register (ALLZEROS)
  18817. always reads as 00h
  18818. +06B R- flags register (FLAGS) (see #P0991)
  18819. PhaseEngine processor's flags
  18820. +06C R- source indirect register (SINDIR)
  18821. +06D -W destination indirect register (DINDIR)
  18822. +06E RW function 1 register (FUNCTION1)
  18823. +06F R- "STACK"
  18824. +084 RW board control register (BCTL) (see #P0992)
  18825. +085 RW bus on/off time register (BUSTIME) (see #P0993)
  18826. +086 RW bus speed register (BUSSPD) (see #P0994)
  18827. +087 RW host control register (HCNTRL) (see #P0995)
  18828. +088d RW host address register (HADDR)
  18829. +08C RW host counter register (HCNT) (3 bytes long)
  18830. +090 RW sequence control block (SCB) pointer register (SCBPTR)
  18831. +091 RW interrupt status register (INTSTAT) (see #P0996)
  18832. +092 R- hard error register (ERROR) (see #P0997)
  18833. +092 -W clear interrupt status register (CLRINT) (see #P0998)
  18834. +093 RW DMA FIFO control register (DFCNTRL) (see #P0999)
  18835. +094 R- DMA FIFO status register (DFSTATUS) (see #P1000)
  18836. +099 RW DMA FIFO data register (DFDAT)
  18837. +09A RW SCB auto-increment register (SCBCNT) (see #P1001)
  18838. +09B RW queue in FIFO register (QINFIFO)
  18839. write places the value into the FIFO, read removes
  18840. +09C R- queue in count register (QINCNT)
  18841. number of the SCBs in the queue in
  18842. +09D R- queue out FIFO register (QOUTFIFO)
  18843. read removes the value from the FIFO
  18844. +09E R- queue out count register (QOUTCNT)
  18845. number of the SCBs in the queue out
  18846. +0A0 RW SCB array (32 bytes) (see #P1003)
  18847. +0C0 RW (AHA-284x) serial EEPROM control register (SEECTL) (see #P1005)
  18848. +0C1 RW (AHA-284x) "STATUS" (see #P1006)
  18849. Notes: the SCSI latched data registers are used to transfer data on the SCSI
  18850. bus during automatic or manual PIO mode
  18851. in a twin channel configuration the separate register set with the
  18852. addresses 00h-1Eh exists for each channel
  18853. the SCSI/host address register (SHADDR) holds the host address for the
  18854. byte about to be transfered on the SCSI bus; it is counted up in the
  18855. same manner as SCSI transfer count register (STCNT) is counted down
  18856. and should always be used to determine the address of the last byte
  18857. transfered since the host address register (HADDR) can be skewed by
  18858. read ahead
  18859. the source/destination index registers (SINDEX/DINDEX) are used by the
  18860. PhaseEngine processor to indirectly address the data memory (i.e. the
  18861. CPU-addressable registers); the data byte addressed can be accessed
  18862. through the source/destination indirect registers (SINDIR/DINDIR)
  18863. respectively; the source index register (SINDEX) is auto-incremented
  18864. on each read from the source indirect register (SINDIR), while the
  18865. destination index register (DINDEX) is auto-incremented on each write
  18866. to the destination indirect register (DINDIR)
  18867. the function 1 register (FUNCTION1) is used to convert the SCSI target
  18868. number to the corresponding bit mask; first, bits 6-4 are written
  18869. with a number N (other bits seems to be "don't care"), then the
  18870. register is read back, giving the bit mask having bit N set and all
  18871. other bits cleared
  18872. the host address register (HADDR) and the host counter register (HCNT)
  18873. are used for the DMA transfers from/to the host memory
  18874. the SCB pointer register (SCBPTR) selects the 32-byte area of the SCB
  18875. RAM to be mapped at addresses A0h-BFh
  18876. the queue in/out FIFO registers (QINFIO/QOUTFIFO) hold the queue of
  18877. the SCB pointer register's (SCBPTR) values for addressing the SCBs
  18878. sent by CPU to the PhaseEngine processor and returned to CPU (when
  18879. the associated SCSI command completes) respectively; CPU selects
  18880. the SCB RAM area via the SCB pointer register (SCBPTR), downloads
  18881. prepared SCB to addresses A0h-BFh (this requeires the PhaseEngine
  18882. processor to be paused), then places the SCB pointer value to the
  18883. queue in FIFO by writing it to the respective register, from which
  18884. the SCB pointers can be read (and removed) in the FIFO order; the
  18885. PhaseEngine processor places the SCB pointer of the completed CCB
  18886. to the queue out FIFO by writing the respective register, and CPU
  18887. can remove it from the FIFO by reading the register
  18888. Bitfields for SCSI transfer control register 0 (SXFRCTL0):
  18889. Bit(s) Description (Table P0979)
  18890. 7 DMA FIFO on? (DFON)
  18891. 6 "DFPEXP"
  18892. 5 (Ultra SCSI) Ultra SCSI enable (ULTRAEN)
  18893. 4 clear SCSI transfer counter (CLRSTCNT)
  18894. 3 SCSI PIO enable (SPIOEN)
  18895. 2 SCAM enable (SCAMEN)
  18896. 1 clear channel (CLRCHN)
  18897. 0 reserved
  18898. SeeAlso: #P0607,#P0618,#P0620,#P0980,#P0984
  18899. Bitfields for SCSI transfer control register 1 (SXFRCTL1):
  18900. Bit(s) Description (Table P0980)
  18901. 7 bit bucket (BITBUCKET)
  18902. 6 SCSI counter wrap enable (SWRAPEN)
  18903. 5 enable SCSI parity check (ENSPCHK)
  18904. 4-3 selection time-out select (STIMESEL)
  18905. 00 256 ms
  18906. 01 128 ms
  18907. 10 64 ms
  18908. 11 32 ms
  18909. 2 enable selection timer (ENSTIMER)
  18910. 1 active negation enable (ACTNEGEN)
  18911. 0 SCSI terminator power enable? (STPWEN)
  18912. SeeAlso: #P0600,#P0979,#P0986
  18913. Bitfields for SCSI rate control register (SCSIRATE):
  18914. Bit(s) Description (Table P0981)
  18915. 7 (Wide SCSI) wide transfer control (WIDEXFER)
  18916. 6-4 synchronous transfer rate (SXFR)
  18917. 3-0 synchronous offset (SOFS)
  18918. SeeAlso: #P0605,#P0984
  18919. Bitfields for SCSI ID register (SCSIID):
  18920. Bit(s) Description (Table P0982)
  18921. 7-4 target ID (TID)
  18922. 3-0 our ID (OID)
  18923. SeeAlso: #P0606,#P0987,#P1012
  18924. Bitfields for clear SCSI interrupt register 0 (CLRSINT0):
  18925. Bit(s) Description (Table P0983)
  18926. 7 reserved?
  18927. 6 clear selection out done (CLRSELDO)
  18928. 5 clear selection in done (CLRSELDI)
  18929. 4 clear selection in progress (CLRSELINGO)
  18930. 3 clear SCSI counter wrap (CLRSWRAP)
  18931. 2 reserved
  18932. 1 clear SCSI PIO ready (CLRSPIORDY)
  18933. 0 reserved
  18934. SeeAlso: #P0600,#P0601,#P0607,#P0608,#P0616
  18935. Bitfields for SCSI status register 2 (SSTAT2):
  18936. Bit(s) Description (Table P0984)
  18937. 7 "OVERRUN"
  18938. 6-5 reserved
  18939. 4-0 SCSI FIFO count? (SFCNT)
  18940. SeeAlso: #P0979,#P0981
  18941. Bitfields for SCSI test control register (SCSITEST):
  18942. Bit(s) Description (Table P0985)
  18943. 7-3 reserved
  18944. 2 "RQAKCNT"
  18945. 1 "CNTRTEST"
  18946. 0 "CMODE"
  18947. SeeAlso: #P0988
  18948. Bitfields for selection timeout timer register (SELTIMER):
  18949. Bit(s) Description (Table P0986)
  18950. 7-6 reserved
  18951. 5 "STAGE6"
  18952. 4 "STAGE5"
  18953. 3 "STAGE4"
  18954. 2 "STAGE3"
  18955. 1 "STAGE2"
  18956. 0 "STAGE1"
  18957. SeeAlso: #P0980
  18958. Bitfields for selection/reselection ID register (SELID):
  18959. Bit(s) Description (Table P0987)
  18960. 7-4 selecting device ID (SELID)
  18961. 3 one bit (ONEBIT)
  18962. 2-0 reserved
  18963. Note: bit 3 is set when the selecting/reselecting device did not set its own
  18964. ID on the SCSI bus
  18965. SeeAlso: #P0600,#P0607,#P0982
  18966. Bitfields for SCSI block control register (SBLKCTL):
  18967. Bit(s) Description (Table P0988)
  18968. 7-6 reserved
  18969. 5 auto-flush disable (AUTOFLUSHDIS)
  18970. 4 reserved
  18971. 3 select bus (SELBUS)
  18972. =0 select bus A
  18973. =1 select bus B (SELBUSB)
  18974. 2 reserved
  18975. 1 "SELWIDE"
  18976. 0 reserved
  18977. Notes: bit 1 allows for the coexistence of 8-bit and 16-bit devices on a Wide
  18978. SCSI bus
  18979. in a twin channel configuration addresses 00h-1Eh are gated to the
  18980. appropriate channel based on the value of bit 3
  18981. bit 5 is read only on the AIC-7770 revisions prior to E
  18982. Bitfields for sequencer control register (SEQCTL):
  18983. Bit(s) Description (Table P0989)
  18984. 7 parity error disable (PERRORDIS)
  18985. 6 pause disable (PAUSEDIS)
  18986. 5 "FAILDIS"
  18987. 4 fast mode (FASTMODE)
  18988. 3 break address interrupt enable (BRKADRINTEN)
  18989. 2 "STEP"
  18990. 1 sequencer reset (SEQRESET)
  18991. 0 load sequencer RAM (LOADRAM)
  18992. Notes: setting bit 1 causes the sequencer to be paused; the sequencer address
  18993. register is reset to 0
  18994. bit 7 should be reset while loading the sequencer RAM; after loading
  18995. is complete, bit 0 should be cleared before changing the sequencer
  18996. address register (SEQADDR) to avoid sequencer RAM parity errors
  18997. SeeAlso: #P0990,#P0996,#P0997,#P0998,#P1014
  18998. Bitfields for sequencer address register (SEQADDR):
  18999. Bit(s) Description (Table P0990)
  19000. 15-9 reserved
  19001. 8-0 sequencer RAM address
  19002. Notes: bits 8-0 contain the address of a DWORD in the sequencer RAM; it points
  19003. to the next instruction to be execute or load into RAM
  19004. setting bit 1 in the sequencer control register (SEQCTL) resets this
  19005. address to 0
  19006. when the PhaseEngine processor is paused, the sequencer address can be
  19007. altered and a sequencer program can be loaded by writing it, byte by
  19008. byte, to the sequencer RAM data register (SEQRAM); the address is
  19009. auto-incremented after the high BYTE of each DWORD is loaded
  19010. SeeAlso: #P0989,#P1014
  19011. Bitfields for flags register (FLAGS):
  19012. Bit(s) Description (Table P0991)
  19013. 7-2 reserved
  19014. 1 zero flag (ZERO)
  19015. 0 carry flag (CARRY)
  19016. SeeAlso: #P1014
  19017. Bitfields for board control register (BCTL):
  19018. Bit(s) Description (Table P0992)
  19019. 7-4 reserved
  19020. 3 "ACE"
  19021. 2-1 reserved
  19022. 0 enable board (ENABLE)
  19023. Note: bit 3 is somehow related to the support for the external processors
  19024. Bitfields for bus on/off time register (BUSTIME):
  19025. Bit(s) Description (Table P0993)
  19026. 7-4 bus off time (BOFF)
  19027. in 4 BCLK cycle units?
  19028. 3-0 bus on time (BON)
  19029. SeeAlso: #P0994,#P1002
  19030. Bitfields for bus speed register (BUSSPD):
  19031. Bit(s) Description (Table P0994)
  19032. 7-6 DMA FIFO threshold (DFTHRSH)
  19033. 11 100?
  19034. 5-3 "STBOFF"
  19035. 2-0 "STBON"
  19036. SeeAlso: #P0993,#P0999,#P1000,#P1002
  19037. Bitfields for host control register (HCNTRL):
  19038. Bit(s) Description (Table P0995)
  19039. 7 reserved
  19040. 6 power down (POWRDN)
  19041. 5 reserved
  19042. 4 software interrupt (SWINT)
  19043. 3 IRQ mode select (IRQMS)
  19044. =0 level-sensitive
  19045. =1 edge-triggered
  19046. 2 pause sequencer (PAUSE)
  19047. 1 interrupt enable (INTEN)
  19048. 0 chip reset (CHIPRST)
  19049. Notes: bit 0 is self-clearing (though on some AIC-7771 based boards it stucks
  19050. set, and must be manually cleared)
  19051. set bit 2 to pause the sequencer, then poll the register until this bit
  19052. reads as 1 indicating that the sequencer has actually stopped; the
  19053. sequencer can disable pausing for critical sections through bit 6 of
  19054. the sequencer control register (SEQCTL)
  19055. SeeAlso: #P0989,#P1014
  19056. Bitfields for interrupt status register (INTSTAT):
  19057. Bit(s) Description (Table P0996)
  19058. 7-4 sequencer status
  19059. 0000 unknown SCSI bus phase (BAD_PHASE)
  19060. 0001 sending MESSAGE REJECT (SEND_REJECT)
  19061. 0010 no IDENTIFY after reconnect (NO_IDENT)
  19062. 0011 no command match for reconnect (NO_MATCH)
  19063. 0100 SYNCRONOUS DATA TRANSFER REQUEST (SDTR) message received (SDTR_MSG)
  19064. 0101 WIDE DATA TRANSFER REQUEST (WDTR) message received (WDTR_MSG)
  19065. 0110 MESSAGE REJECT received (REJECT_MSG)
  19066. 0111 bad status from target (BAD_STATUS)
  19067. 1000 residual byte count non-zero (RESIDUAL)
  19068. 1001 sent ABORT TAG message (ABORT_TAG)
  19069. 1010 awaiting message
  19070. 1011 immediate command completed (IMMEDDONE)
  19071. 1100 message buffer busy (MSG_BUFFER_BUSY)
  19072. 1101 MESSAGE IN phase mismatch (MSGIN_PHASEMIS)
  19073. 1110 data overrun (DATA_OVERRUN)
  19074. 3 break address interrupt (BRKADRINT)
  19075. 2 SCSI interrupt (SCSIINT)
  19076. 1 command complete interrupt (CMDCMPLT)
  19077. 0 sequencer interrupt (SEQINT)
  19078. Notes: the PhaseEngine processor can set bit 0 to interrupt the CPU requesting
  19079. some service from it; an interrupt reason is passed in bits 7-4
  19080. the PhaseEngine processor sets bit 1 after placing a completed SCB into
  19081. the queue out FIFO
  19082. setting bit 0 pauses the PhaseEngine processor; it needs unpausing via
  19083. resetting bit 2 of the host control register (HCNTRL)
  19084. SeeAlso: #P0986,#P0993,#P0995,#P1014
  19085. Bitfields for hard error register (ERROR):
  19086. Bit(s) Description (Table P0997)
  19087. 7-4 reserved
  19088. 3 sequencer RAM parity error (PARERR)
  19089. 2 illegal opcode in sequencer program (ILLOPCODE)
  19090. 1 illegal sequencer address referenced (ILLSADDR)
  19091. 0 illegal host access (ILLHADDR)
  19092. Note: usually a full board reset is required after detecting a hard error
  19093. SeeAlso: #P1014
  19094. Bitfields for clear interrupt status register (CLRINT):
  19095. Bit(s) Description (Table P0998)
  19096. 7-4 reserved
  19097. 3 clear break address interrupt (CLRBRKADRINT)
  19098. 2 clear SCSI interrupt (CLRSCSIINT)
  19099. 1 clear command complete interrupt (CLRCMDINT)
  19100. 0 clear sequencer interrupt (CLRSEQINT)
  19101. SeeAlso: #P0986,#P0991,#P1014
  19102. Bitfields for DMA FIFO control register (DFCNTRL):
  19103. Bit(s) Description (Table P0999)
  19104. 7 reserved
  19105. 6 "WIDEODD"
  19106. 5 SCSI enable (SCSIEN)
  19107. 4 SCSI DMA enable? (SDMAEN)
  19108. 3 host DMA enable? (HDMAEN)
  19109. 2 "DIRECTION"
  19110. =0 SCSI to host
  19111. =1 host to SCSI
  19112. 1 FIFO flush (FIFOFLUSH)
  19113. 0 FIFO reset (FIFORESET)
  19114. Notes: this register allows the PhaseEngine processor to control DMA transfers
  19115. from/to host memory
  19116. bits 3 and 4 clear automatically when host and SCSI DMA is complete
  19117. respectively
  19118. SeeAlso: #P0994,#P1000
  19119. Bitfields for DMA FIFO status register (DFSTATUS):
  19120. Bit(s) Description (Table P1000)
  19121. 7-6 reserved
  19122. 5 "DWORDEMP"
  19123. 4 "MREQPEND"
  19124. 3 host DMA done (HDONE)
  19125. 2 DMA FIFO threshold? (DFTHRESH)
  19126. 1 FIFO full (FIFOFULL)
  19127. 0 FIFO empty (FIFOEMP)
  19128. SeeAlso: #P0994,#P0999
  19129. Bitfields for SCB auto-increment register (SCBCNT):
  19130. Bit(s) Description (Table P1001)
  19131. 7 SCB auto-increment (SCBAUTO)
  19132. 6-5 reserved
  19133. 4-0 SCB counter (SCBCNT)
  19134. Note: this register allows CPU to quickly upload/download the SCBs to/from
  19135. the SCB RAM; if bit 7 is set any reference to addresses A0h-BFh post-
  19136. increments bits 4-0 of this register containing the offset into the
  19137. SCB array which is to be accessed next; on the AHA-284x only 8-bit
  19138. transfers can be used
  19139. SeeAlso: #P1003
  19140. Format of the scratch RAM:
  19141. Offset Size Description (Table P1002)
  19142. 00h 16 BYTEs target scratch (TARG_SCRATCH) (see #9025)
  19143. 10h WORD channel A Ultra SCSI enable (ULTRA_ENB_A)
  19144. bit N if set means Ultra SCSI transfers are enabled for the
  19145. target ID N
  19146. 10h BYTE rejected byte (REJBYTE)
  19147. 11h BYTE channel B Ultra SCSI enable (ULTRA_ENB_B)
  19148. bit N if set means Ultra SCSI transfers are enabled for the
  19149. target ID N
  19150. 11h BYTE rejected byte extended (REJBYTE_EXT)
  19151. 11h BYTE rejected byte (REJBYTE)
  19152. 12h BYTE channel A disable disconnect (DISC_DSB_A)
  19153. 13h BYTE channel B disable disconnect (DISC_DSB_B)
  19154. 14h BYTE length of pending message (MSG_LEN)
  19155. 15h 8 BYTEs outgoing message (MSG0-MSG7)
  19156. 15h BYTE pending message flag (MSG_FLAGS)
  19157. 16h BYTE length of pending message (MSG_LEN)
  19158. 17h ? BYTEs outgoing message body (MSG_START)
  19159. 1Dh BYTE parameters for DMA logic (DMAPARAMS) (see #P0999)
  19160. 1Dh BYTE last phase (LASTPHASE)
  19161. 1Eh BYTE "SEQ_FLAGS"
  19162. bit 7: "RESELECTED"
  19163. bit 6: "IDENTIFY_SEEN"
  19164. bit 5: "TAGGED_SCB"
  19165. bit 4: data phase seen (DPHASE)
  19166. bit 3: reserved
  19167. bit 2: page SCBs (PAGESCBS)
  19168. bit 1: "WIDE_BUS"
  19169. bit 0: "TWIN_BUS"
  19170. 1Eh BYTE "ARG_1"
  19171. bit 0: "MAXOFFSET"
  19172. 1Fh BYTE saved target/channel/LUN (SAVED_TCL)
  19173. bits 7-4: target ID
  19174. bit 3: channel (0=A, 1=B)
  19175. bits 2-0: LUN
  19176. 1Fh BYTE "RETURN_1"
  19177. 00h do nothing
  19178. 10h SCB paged in (SCB_PAGEDIN)
  19179. 20h send MESSAGE REJECT message (SEND_REJ)
  19180. 40h send REQUEST SENSE command (SEND_SENSE)
  19181. 60h send SYNCHRONOUS DATA TRANSFER REQUEST message (SEND_SDTR)
  19182. 80h send WIDE DATA TRANSFER REQUEST message (SEND_WDTR)
  19183. 20h BYTE scatter/gather count (SG_COUNT)
  19184. 20h BYTE "SIGSTATE"
  19185. 21h DWORD scatter/gather next segment pointer (SG_NEXT)
  19186. 21h BYTE parameters for DMA logic (DMAPARAMS) (see #P0999)
  19187. 22h BYTE scatter/gather count (SG_COUNT)
  19188. 23h DWORD scatter/gather next segment pointer (SG_NEXT)
  19189. 25h BYTE waiting SCB list head (WAITING_SCBH)
  19190. 26h BYTE saved link pointer (SAVED_LINKPTR)
  19191. 27h BYTE saved SCB pointer (SAVED_SCBPTR)
  19192. 27h BYTE SCB count (SCBCOUNT)
  19193. number of SCBs supported in hardware
  19194. 28h BYTE last phase (LASTPHASE) (see #9003)
  19195. bit 7: -C/D input (CDI)
  19196. bit 6: -I/O input (IOI)
  19197. bit 5: -MSG input (MSGI)
  19198. bits 4-0: reserved
  19199. 28h BYTE negative SCB count (COMP_SCBCOUNT)
  19200. 29h BYTE extended message length (MSGIN_EXT_LEN)
  19201. 29h BYTE queue count mask (QCNTMASK)
  19202. works around a bug in AIC-7850
  19203. 2Ah BYTE extended message opcode (MSGIN_EXT_OPCODE)
  19204. 2Ah BYTE "FLAGS"
  19205. bit 7: "RESELECTED"
  19206. bit 6: IDENTIFY message seen (IDENTIFY_SEEN)
  19207. bit 5: "SELECTED"
  19208. bit 4: data phase seen (DPHASE)
  19209. bit 3: reserved
  19210. bit 2: page SCBs (PAGESCBS)
  19211. bit 1: wide bus (WIDE_BUS)
  19212. bit 0: twin bus (TWIN_BUS)
  19213. 2Bh 3 BYTEs extended message tail bytes (MSGIN_EXT_BYTES)
  19214. 2Bh BYTE saved target/channel/LUN (SAVED_TCL)
  19215. bits 7-4: target ID
  19216. bit 3: channel (0=A, 1=B)
  19217. bits 2-0: LUN
  19218. 2Ch WORD channel A active targets (ACTIVE_A)
  19219. bit N is set if there's untagged SCSI command currently active
  19220. on the target ID N
  19221. 2Ch BYTE "ARG_1" or "RETURN_1"
  19222. 2Dh BYTE channel B active targets (ACTIVE_B)
  19223. bit N is set if there's untagged SCSI command currently active
  19224. on the target ID N
  19225. 2Dh BYTE "ARG_2"
  19226. 2Eh BYTE disconnected SCB list head (DISCONNECTED_SCBH)
  19227. 2Eh BYTE waiting SCB list head (WAITING_SCBH)
  19228. 2Eh BYTE signal state (SIGSTATE)
  19229. 2Fh BYTE free SCB list head (FREE_SCBH)
  19230. disconnected SCB list head (DISCONNECTED_SCBH)
  19231. 2Fh BYTE "NEEDSDTR"
  19232. bit N if set means that the synchronous data transfer needs to
  19233. be negotiated with the target ID N
  19234. 30h DWORD "HSCB_ADDR"
  19235. 30h BYTE saved link pointer (SAVED_LINKPTR)
  19236. 31h BYTE saved SCB pointer (SAVED_SCBPTR)
  19237. 32h WORD channel A Ultra enable (ULTRA_ENB)
  19238. bit N if set means Ultra SCSI transfers are enabled for the
  19239. target ID N
  19240. 33h BYTE channel B Ultra enable (ULTRA_ENB_B)
  19241. bit N if set means Ultra SCSI transfers are enabled for the
  19242. target ID N
  19243. 34h BYTE "CUR_SCBID"
  19244. 35h BYTE "CMDOUTCNT"
  19245. count of commands placed in the out FIFO
  19246. 36h BYTE SCB count (SCBCOUNT)
  19247. number of SCBs supported in hardware
  19248. 36h BYTE "ARG_1" or "RETURN_1"
  19249. bit 7: "SEND_MSG"
  19250. bit 6: "SEND_SENSE"
  19251. bit 5: "SEND_REJ"
  19252. bits 4-0: reserved
  19253. 37h WORD channel A active targets (ACTIVE_A)
  19254. bit N is set if there's untagged SCSI command currently active
  19255. on the target ID N
  19256. 39h BYTE reserved
  19257. 3Ah WORD SCSI configuration (SCSICONF)
  19258. bits 15-12: reserved?
  19259. bits 11-8: (Wide SCSI) our ID (see #P0982)
  19260. bit 7: (AIC-777x) enable SCSI low byte termination (see #P1011)
  19261. bit 6: enable SCSI bus reset at power up (RESET_SCSI)
  19262. (see #P1011)
  19263. bit 5: enable SCSI parity check (ENSPCHK) (see #P0980)
  19264. bits 4-3: selection time-out select (STIMESEL) (see #P0980)
  19265. bits 2-0: our ID (see #P0982)
  19266. 3Bh BYTE channel B SCSI configuration
  19267. see bits 7-0 above
  19268. 3Ch BYTE "INTDEF"
  19269. bits 7-4: reserved?
  19270. bits 3-0: IRQ number (IRQ9..IRQ12, IRQ14, and IRQ15 are valid)
  19271. 3Dh BYTE host configuration (HOSTCONF)
  19272. bits 7-6: DMA FIFO threshold (DFTHRSH) (see #9038)
  19273. bits 5-2: bus off time (BOFF) (see #9037)
  19274. bits 1-0: reserved?
  19275. 3Eh BYTE reserved
  19276. 3Fh BYTE (AIC-7771) BIOS control (BIOSCTRL)
  19277. bits 5-4: BIOS mode (BIOSMODE)
  19278. 11 BIOS disabled (BIOSDISABLED)
  19279. bit 3: channel B is primary (CHANNEL_B_PRIMARY)
  19280. Notes: the scratch RAM is used for passing information between the driver and
  19281. BIOS and the code running on the PhaseEngine processor; it serves as
  19282. a working memory for the PhaseEngine processor as well
  19283. location definitions overlap due to various sources giving different
  19284. scratch RAM layouts
  19285. the PhaseEngine processor uses "ARG_1" and "ARG_2" to pass parameters
  19286. to the drivers and BIOS during sequencer interrupts; "RETURN_1" is used
  19287. to return results from the drivers and BIOS to the PhaseEngine code
  19288. the PhaseEngine processor uses SCB pointer register's (SCBPTR) values
  19289. to link SCB in the lists, with value FFh indicating the end of list
  19290. SeeAlso: #9047,#9048
  19291. Format of the SCB array:
  19292. Offset Size Description (Table P1003)
  19293. 00h BYTE "SCB_CONTROL"
  19294. bit 7: need WDTR message (NEEDWDTR) or
  19295. "MK_MESSAGE"
  19296. bit 6: disconnect enable (DISCENB)
  19297. bit 5: tagging enable (TAG_ENB)
  19298. bit 4: need SDTR message (NEEDSDTR) or
  19299. "MUST_DMAUP_SCB"
  19300. bit 3: "ABORT_SCB"
  19301. bit 2: "DISCONNECTED"
  19302. bits 1-0: command tag type (SCB_TAG_TYPE)
  19303. 01h BYTE target/channel/LUN (SCB_TCL)
  19304. bits 7-4: target ID
  19305. bit 3: channel (0=A, 1=B)
  19306. bits 2-0: LUN
  19307. 02h BYTE target status (SCB_TARGET_STATUS)
  19308. SCSI status byte
  19309. 03h BYTE scatter/gather count (SCB_SGCOUNT)
  19310. 04h DWORD scatter/gather pointer (SCB_SGPTR)
  19311. 08h BYTE residual scatter/gather count (SCB_RESID_SGCNT)
  19312. 09h 3 BYTEs residual data count (SCB_RESID_DCNT)
  19313. 0Ch DWORD data pointer (SCB_DATAPTR)
  19314. 10h 3 BYTEs data count (SCB_DATACNT)
  19315. 13h BYTE next linked SCB index (SCB_LINKED_NEXT)
  19316. 14h DWORD command pointer (SCB_CMDPTR)
  19317. 18h BYTE command length (SCB_CMDLEN)
  19318. 19h BYTE command tag (SCB_TAG)
  19319. 1Ah BYTE next SCB index (SCB_NEXT)
  19320. 1Bh BYTE previous SCB index (SCB_PREV)
  19321. 1Ch 2 WORDs busy targets (SCB_BUSYTARGETS)
  19322. bit N is set if there's untagged SCSI command currently active
  19323. on the target ID N
  19324. SeeAlso: #P1004,#P1014
  19325. Format of the scatter/gather segment:
  19326. Offset Size Description (Table P1004)
  19327. 00h DWORD physical address
  19328. 04h DWORD length
  19329. SeeAlso: #P1003,#P1014
  19330. Bitfields for AHA-284x serial EEPROM control register (SEECTL):
  19331. Bit(s) Description (Table P1005)
  19332. 7-3 reserved
  19333. 2 chip select (CS)
  19334. 1 clock (CK)
  19335. 0 data out (DO)
  19336. Notes: 93C46 serial EEPROM chips have 1024 bits organized into 64 16-bit
  19337. words and use 6 bits to address each word
  19338. only the first 32 words of serial EEPROM are used by the Adaptec BIOS
  19339. bits 2-0 are connected to the chip select, clock, and data out pins of
  19340. the serial EEPROM respectively
  19341. bit 1 must be pulled high and then low for a minimum of 750 and 250 ns
  19342. to provide clocking for the EEPROM chip
  19343. bit 1 going from low to high causes the EEPROM chip to sample the data
  19344. out pin and initiates the next bit to be sent through the data in pin
  19345. bit 2 must be set for a minimum of 1 mcs with the bit 1 goig high and
  19346. then low for the EEPROM chip to be selected; then the instruction can
  19347. be sent to the EEPROM chip
  19348. instruction can be terminated by taking the EEPROM chip select pin low,
  19349. with the bit 1 going high and low
  19350. SeeAlso: #P1006,#P1007,#P1008
  19351. Bitfields for AHA-284x "STATUS" register:
  19352. Bit(s) Description (Table P1006)
  19353. 7 EEPROM timer fired? (EEPROM_TF)
  19354. 6-5 "BIOS_SEL"
  19355. 4-1 "ADSEL"
  19356. 0 data in (DI)
  19357. Notes: bit 0 is connected to the data in pin of the serial EEPROM; it can be
  19358. read after the clock pin goes from high to low
  19359. bit 7 is cleared after a read from the serial EEPROM control register
  19360. (SEECTL) and goes high 800 ns later
  19361. SeeAlso: #P1005,#P1007,#P1008
  19362. (Table P1007)
  19363. Values for the 93C46 serial EEPROM instructions:
  19364. Opcode Function Parameter Description
  19365. 0000xxxxb EWDS - disable all programming instructions
  19366. 0001xxxxb WRAL D15..D0 write to all registers
  19367. 0010xxxxb ERAL - erase all registers
  19368. 0011xxxxb EWEN - write enable
  19369. must precede all programming modes
  19370. 01AAAAAAb WRITE D15..D0 write register with address A5..A0
  19371. 10AAAAAAb READ - read registers starting with address A5..A0
  19372. 11AAAAAAb ERASE - erase register with address A5..A0
  19373. Notes: while the chip select pin remains high an instuction and the optional
  19374. parameter word can be clocked in MSB first, beginning with the start
  19375. bit of 1
  19376. 16-bit parameter and data words are transferred MSB first, beginning
  19377. with the start bit of 0
  19378. SeeAlso: #P1005,#P1006
  19379. Format of the AHA-284x serial EEPROM:
  19380. Address Size Description (Table P1008)
  19381. 00h 16 WORDs SCSI ID configuration (see #P1009)
  19382. 10h WORD BIOS control (see #P1011)
  19383. 11h WORD host adapter control (see #P1012)
  19384. 12h WORD bus release time / host adapter ID (see #P1013)
  19385. 13h WORD maximum targets (see #P1014)
  19386. 14h 11 WORDs reserved
  19387. 1Fh WORD checksum
  19388. SeeAlso: #P1005,#P1006
  19389. Bitfields for the serial EEPROM SCSI ID configuration word:
  19390. Bit(s) Description (Table P1009)
  19391. 15-11 reserved
  19392. 10 report even if not found (CFRNFOUND)
  19393. 9 include in BIOS scan (CFINCBIOS)
  19394. 8 send START UNIT SCSI command (CFSTART)
  19395. 7-6 reserved
  19396. 5 (Wide SCSI) wide bus device (CFWIDEB)
  19397. 4 enable disconnection (CFDISC)
  19398. 3 enable synchronous transfer (CFSYNCH)
  19399. 2-0 synchronous transfer rate (CFXFER)
  19400. SeeAlso: #P0605,#P1008
  19401. Bitfields for the serial EEPROM BIOS control word:
  19402. Bit(s) Description (Table P1011)
  19403. 15-6 reserved
  19404. 5 extended translation (CFEXTEND)
  19405. 4 support more than 2 drives (CFSM2DRV)
  19406. 3 reserved
  19407. 2 BIOS enabled (CFBIOSEN)
  19408. 1 support removable drives for boot only (CFSUPREMB)
  19409. 0 support all removable drives (CFSUPREM)
  19410. SeeAlso: #P1008
  19411. Bitfields for the serial EEPROM host adapter control word:
  19412. Bit(s) Description (Table P1011)
  19413. 15-7 reserved
  19414. 6 reset SCSI bus at IC initialization (CFRESETB)
  19415. 5 SCSI low byte termination (CFSTERM)
  19416. =0 disable
  19417. =1 enable
  19418. 4 SCSI parity (CFSPARITY)
  19419. =0 disable
  19420. =1 enable
  19421. 3-2 FIFO threshold (CFFIFO)
  19422. 1-0 selection timeout (CFSELTO)
  19423. SeeAlso: #P0600,#P0980,#P0994,#P1008
  19424. Bitfields for the serial EEPROM bus release time / host adapter ID word:
  19425. Bit(s) Description (Table P1012)
  19426. 15-8 bus release time (CFBRTIME)
  19427. 7-4 reserved
  19428. 3-0 host adapter SCSI ID (CFSCSIID)
  19429. SeeAlso: #P0982,#P0989,#P1007
  19430. Bitfields for the serial EEPROM maximum targets word:
  19431. Bit(s) Description (Table P1013)
  19432. 15-8 reserved
  19433. 7-0 maximum targets (CFMAXTARG)
  19434. SeeAlso: #P1007
  19435. Bitfields for the PhaseEngine SCSI sequence processor instruction:
  19436. Bit(s) Description (Table P1014)
  19437. 31-29 reserved (0)
  19438. 28-25 opcode
  19439. 0000 OR dest,imm[,src] [RET]
  19440. MVI dest,imm [RET]
  19441. 0001 AND dest,imm[,src] [RET]
  19442. MOV dest,src [RET]
  19443. CLR dest [RET]
  19444. NOP [RET]
  19445. RET
  19446. 0010 XOR dest,imm[,src] [RET]
  19447. NOT dest [RET]
  19448. 0011 ADD dest,imm[,src] [RET]
  19449. INC dest[,src] [RET]
  19450. DEC dest[,src] [RET]
  19451. CLC [dest[,imm]] [RET]
  19452. STC dest [RET]
  19453. 0100 ADC dest,imm[,src] [RET]
  19454. 0101 SHL/SHR/ROL/ROR dest,[src,]imm [RET]
  19455. 1000 OR src,imm JMP addr
  19456. MOV src JMP addr
  19457. MVI imm JMP addr
  19458. JMP addr
  19459. 1001 OR src,imm JC addr
  19460. MOV src JC addr
  19461. MVI imm JC addr
  19462. JC addr
  19463. 1010 OR src,imm JNC addr
  19464. MOV src JNC addr
  19465. MVI imm JNC addr
  19466. JNC addr
  19467. 1011 OR src,imm CALL addr
  19468. MOV src CALL addr
  19469. MVI imm CALL addr
  19470. CALL addr
  19471. 1100 CMP src,imm JNE addr
  19472. 1101 TEST src,imm JNZ addr
  19473. 1110 CMP src,imm JE addr
  19474. 1111 TEST src,imm JZ addr
  19475. others reserved
  19476. 24-16 (jump instructions) instruction address
  19477. 24 (non-jump instructions) return flag
  19478. 23-16 (non-jump instructions) destination register address
  19479. 15-8 source register address
  19480. 7-0 (shift instructions) shift control (see #P1015)
  19481. (other instructions) immediate data
  19482. if 0 accumulator register (ACCUM) is used instead
  19483. Notes: the jump instructions with the OR/MOV/MVI prefixes implicitly use the
  19484. source index register (SINDEX) as destination
  19485. SeeAlso: #P0989,#P0990,#P0991,#P0995,#P0996,#P0997,#9042
  19486. Bitfields for the PhaseEngine shift control:
  19487. Bit(s) Description (Table P1015)
  19488. 7 clear all bits?
  19489. 6-4 number of bits to shift the AND mask (FFh)
  19490. 3 =0 shift the AND mask left
  19491. =1 shift the AND mask right
  19492. 2-0 number of bits to rotate the source left
  19493. Notes: the 8-bit source seems to be rotated left and then AND'ed with the mask
  19494. (FFh) which is shifted left or right prior to AND'ing in order to
  19495. perform all kinds of the shift/rotate instructions
  19496. bit 7 is set (and bits 6-4 equal 7) if the shift count is greater than
  19497. 7 specified for the SHL/SHR instructions
  19498. ----------P1C65------------------------------
  19499. PORT 1C65 - Compaq Contura Aero
  19500. SeeAlso: PORT 2065h
  19501. 1C65 R? bit 6: operating on battery power
  19502. --------X-P1C801C8F--------------------------
  19503. PORT 1C80-1C8F - VESA XGA Video in EISA slot 1
  19504. 1C80-1C83 RW EISA Video ID
  19505. 1C84 RW EISA Video expansion board control (see #P1016)
  19506. 1C85 RW EISA Setup control
  19507. 1C88 RW EISA Video Programmable Option Select 0
  19508. 1C89-1C8F RW EISA Video Programmable Option Select 1-7
  19509. --------X-P1C801C83--------------------------
  19510. PORT 1C80-1C83 - EISA board product ID (board in slot 1)
  19511. 1C80 R? bit 7: unused (0)
  19512. bits 6-2: manufacturer ID, first compressed ASCII char
  19513. bits 1-0: manufacturer ID, second compressed ASCII char (high)
  19514. 1C81 R? bits 7-5: manufacturer ID, second compressed ASCII char (low)
  19515. bits 4-0: manufacturer ID, third compressed ASCII char
  19516. 1C82 R? bits 7-4: first hex digit of product type
  19517. bits 3-0: second hex digit of product type
  19518. 1C83 R? bits 7-4: third hex digit of product type
  19519. bits 3-0: product revision number (hex digit)
  19520. --------X-P1C84------------------------------
  19521. PORT 1C84 - EISA CONFIGURATION FLAGS (board in slot 1)
  19522. 1C84 RW configuration flags (see #P1016)
  19523. Bitfields for EISA Add-in Card configuration flags:
  19524. Bit(s) Description (Table P1016)
  19525. 0 enable
  19526. 1 IOCHKERR (read-only) card is generating CHCHK#, causing an NMI
  19527. 2 IOCHKRST reset card
  19528. 7-3 card-specific
  19529. --------X-P1C85------------------------------
  19530. PORT 1C85 - EISA SETUP CONTROL (board in slot 1)
  19531. --------V-P1C85------------------------------
  19532. PORT 1C85 - Compaq Qvision EISA - Virtual Controller ID
  19533. --------X-P1C881C8F--------------------------
  19534. PORT 1C88-1C8F - EISA PROGRAMMABLE OPTION SELECT (board in slot 1)
  19535. --------V-P1EE81EEF--------------------------
  19536. PORT 1EE8-1EEF - 8514/A and compatible (e.g. ATI Graphics Ultra) - VSYNC WIDTH
  19537. 1EE8w -W CRT control: vertical sync width
  19538. --------V-P1EEC------------------------------
  19539. PORT 1EEC - Mach64 - ???
  19540. 1EEC RW display power and other controls
  19541. bits 3-2: DPMS power mode
  19542. 00 normal
  19543. 01 standby
  19544. 10 suspend
  19545. 11 off
  19546. --------X-P200020FF--------------------------
  19547. PORT 2000-20FF - available for EISA slot 2
  19548. ----------P2065------------------------------
  19549. PORT 2065 - Compaq Contura Aero
  19550. SeeAlso: PORT 1C65h"Compaq",PORT 2465h"Compaq"
  19551. 2065 -W ??? (84h seen)
  19552. --------V-P2100------------------------------
  19553. PORT 2100 - XGA Video Operating Mode Register
  19554. Note: this port is for the first XGA in the system; 2110-2170 are used for
  19555. the second through eighth XGAs
  19556. --------V-P2101------------------------------
  19557. PORT 2101 - XGA Video Aperture Control
  19558. Note: this port is for the first XGA in the system; 2111-2171 are used for
  19559. the second through eighth XGAs
  19560. --------V-P21022103--------------------------
  19561. PORT 2102-2103 - XGA ???
  19562. Note: this port is for the first XGA in the system; 211x-217x are used for
  19563. the second through eighth XGAs
  19564. --------V-P2104------------------------------
  19565. PORT 2104 - XGA Video Interrupt Enable
  19566. Note: this port is for the first XGA in the system; 211x-217x are used for
  19567. the second through eighth XGAs
  19568. --------V-P2105------------------------------
  19569. PORT 2105 - XGA Video Interrupt Status
  19570. Note: this port is for the first XGA in the system; 211x-217x are used for
  19571. the second through eighth XGAs
  19572. --------V-P2106------------------------------
  19573. PORT 2106 - XGA Video Virtual Memory Control
  19574. Note: this port is for the first XGA in the system; 211x-217x are used for
  19575. the second through eighth XGAs
  19576. --------V-P2107------------------------------
  19577. PORT 2107 - XGA Video Virtual Memory Interrupt Status
  19578. Note: this port is for the first XGA in the system; 211x-217x are used for
  19579. the second through eighth XGAs
  19580. --------V-P2108------------------------------
  19581. PORT 2108 - XGA Video Aperture Index
  19582. Note: this port is for the first XGA in the system; 211x-217x are used for
  19583. the second through eighth XGAs
  19584. --------V-P2109------------------------------
  19585. PORT 2109 - XGA Video Memory Access Mode
  19586. Note: this port is for the first XGA in the system; 211x-217x are used for
  19587. the second through eighth XGAs
  19588. --------V-P210A------------------------------
  19589. PORT 210A - XGA Video Index for Data
  19590. Note: this port is for the first XGA in the system; 211x-217x are used for
  19591. the second through eighth XGAs
  19592. --------V-P210B------------------------------
  19593. PORT 210B - XGA Video Data (byte)
  19594. Note: this port is for the first XGA in the system; 211x-217x are used for
  19595. the second through eighth XGAs
  19596. --------V-P210C210F--------------------------
  19597. PORT 210C-210F - XGA Video Data (word/dword)
  19598. Note: this port is for the first XGA in the system; 211x-217x are used for
  19599. the second through eighth XGAs
  19600. 210C RW byte data
  19601. 210Cw RW word data
  19602. 210Cd RW dword data
  19603. --------V-P2110211F--------------------------
  19604. PORT 2110-211F - IBM XGA (eXtended Graphics Adapter 8514/A) (second installed)
  19605. Notes: see individual 210x entries above
  19606. c't says default instance number is 6, i.e. addresses 216x
  19607. --------V-P2120212F--------------------------
  19608. PORT 2120-212F - IBM XGA (eXtended Graphics Adapter 8514/A) (third installed)
  19609. Notes: see individual 210x entries above
  19610. c't says default instance number is 6, i.e. addresses 216x
  19611. --------V-P2130213F--------------------------
  19612. PORT 2130-213F - IBM XGA (eXtended Graphics Adapter 8514/A) (fourth installed)
  19613. Notes: see individual 210x entries above
  19614. c't says default instance number is 6, i.e. addresses 216x
  19615. --------V-P2140214F--------------------------
  19616. PORT 2140-214F - IBM XGA (eXtended Graphics Adapter 8514/A) (fifth installed)
  19617. Notes: see individual 210x entries above
  19618. c't says default instance number is 6, i.e. addresses 216x
  19619. --------V-P2150215F--------------------------
  19620. PORT 2150-215F - IBM XGA (eXtended Graphics Adapter 8514/A) (sixth installed)
  19621. Notes: see individual 210x entries above
  19622. c't says default instance number is 6, i.e. addresses 216x
  19623. --------V-P2160216F--------------------------
  19624. PORT 2160-216F - IBM XGA (eXtended Graphics Adapter 8514/A) (seventh installed)
  19625. Notes: see individual 210x entries above
  19626. c't says default instance number is 6, i.e. addresses 216x
  19627. --------V-P2170217F--------------------------
  19628. PORT 2170-217F - IBM XGA (eXtended Graphics Adapter 8514/A) (eighth installed)
  19629. Notes: see individual 210x entries above
  19630. c't says default instance number is 6, i.e. addresses 216x
  19631. --------V-P217A217B--------------------------
  19632. PORT 217A-217B - ET4000/W32 CRTC-B/Sprite
  19633. Note: Alternative addresses may depend on adapter manufacturer,
  19634. Tseng claims 21xA with x=three address bits, selected by IOD2..0
  19635. during power up reset.
  19636. 21xA RW ET4000/W32(i) CRTC-B/Sprite index register
  19637. bit7-0: index
  19638. 21xB RW ET4000/W32(i) CRTC-B/Sprite data register (see #P1017)
  19639. (Table P1017)
  19640. Values for ET4000/W32(i) CRTC-B/Sprite data register index:
  19641. E0h CRTC-B / Sprite Horizontal Pixel Position, Low
  19642. bit7-0: horizontal pixel position bit7-0
  19643. E1h CRTC-B / Sprite Horizontal Pixel Position, High
  19644. bit7-4: reserved
  19645. bit3-0: horizontal pixel position bit11-8
  19646. E2h CRTC-B Width Low / Sprite Horizontal Preset
  19647. bit7-0: width of CRTC-B bit7-0
  19648. bit5-0: horizontal preset for sprite
  19649. E3h CRTC-B Width High / Sprite Horizontal Preset
  19650. bit7-4: reserved
  19651. bit3-0: width of CRTC-B bit11-8
  19652. E4h CRTC-B / Sprite Vertical Pixel Position, Low
  19653. bit7-0: vertical pixel position bit7-0
  19654. E5h CRTC-B / Sprite Vertical Pixel Position, High
  19655. bit7-4: reserved
  19656. bit3-0: vertical pixel position bit11-8
  19657. E6h CRTC-B Height Low / Sprite Vertical Preset
  19658. bit7-0: height of CRTC-B bit7-0
  19659. bit5-0: vertical preset for sprite
  19660. E7h CRTC-B Height High / Sprite Vertical Preset
  19661. bit7-4: reserved
  19662. bit3-0: height of CRTC-B bit11-8
  19663. E8h CRTC-B / Sprite Starting Address Low
  19664. pointer to CRTC-B / sprite image in display memory.
  19665. (maximum size of sprites 64x64x4=1KB with 4 colors:
  19666. 00b=color-0, 01b=color-255, 10b=transparent, 11b=reserved)
  19667. bit7-0: startaddress bit7-0
  19668. E9h CRTC-B / Sprite Starting Address Middle
  19669. bit7-0: startaddress bit15-8
  19670. EAh CRTC-B / Sprite Starting Address High
  19671. bit7-4: reserved
  19672. bit3-0: startaddress bit19-16
  19673. EBh CRTC-B / Sprite Row Offset Low
  19674. bit7-0: offset bit7-0
  19675. ECh CRTC-B / Sprite Row Offset High
  19676. bit7-4: revision ID (any ET4000/W32)
  19677. 0000b=W32 0100b-1111b reserved
  19678. 0001b=W32i
  19679. 0010b=W32p
  19680. 0011b=W32i, new
  19681. bit3-0: offset bit11-8
  19682. EDh CRTC-B Pixel Panning
  19683. bit7-3: reserved
  19684. bit2-0: CRTC-B pixel panning
  19685. EEh CRTC-B Color-Depth-Register / Hardware-Zoom
  19686. bit7-4: reserved (concerning databook ET4000/W32)
  19687. bit7-6: vertical zoom (undocumented)
  19688. (original ET4000/W32 ok, doesn't work properly
  19689. with some ET4000/W32i)
  19690. 00b=zoomx1 10b=zoomx3
  19691. 01b=zoomx2 11b=zoomx4
  19692. bit5-4: horizontal zoom (undocumented)
  19693. (original ET4000/W32 ok, doesn't work properly
  19694. with some ET4000/W32i)
  19695. 00b=zoomx1 10b=zoomx3
  19696. 01b=zoomx2 11b=zoomx4
  19697. bit3-0: bit/pixel
  19698. 0000b=1 0011b=8
  19699. 0001b=2 0100b=16
  19700. 0010b=4
  19701. EFh CRTC-B / Sprite Control
  19702. bit7-2: reserved
  19703. bit1 : 1=2nd CRTC-B image overlays main CRTC-A image
  19704. 0=CRTC-B image at pin SP1/0
  19705. bit0 : 1=enable CRTC-B
  19706. 0=enable sprite (see F7h)
  19707. F7h Image Port Control
  19708. bit7 : 1=CRTC-B or sprite active
  19709. 0=CRTC-B and sprite not active
  19710. bit6-0: reserved
  19711. ----------P22E822EF--------------------------
  19712. PORT 22E8-22EF - 8514/A and compatible (e.g. ATI Graphics Ultra) - DISPLAY CTRL
  19713. 22E8w -W CRT control: display control
  19714. ----------P23902393--------------------------
  19715. PORT 2390-2393 - cluster (adapter 4)
  19716. --------V-P23C023CF--------------------------
  19717. PORT 23C0-23CF - Compaq QVision - BitBLT engine
  19718. --------X-P240024FF--------------------------
  19719. PORT 2400-24FF - available for EISA slot 2
  19720. ----------P2465------------------------------
  19721. PORT 2465 - Compaq Contura Aero
  19722. SeeAlso: PORT 1C65h"Compaq",PORT 2065h"Compaq"
  19723. 2465 R- current battery power level
  19724. (166 fully-charged, 130 = LowBat1)
  19725. ----------P27C6------------------------------
  19726. PORT 27C6 - Compaq LTE Lite - LCD TIMEOUT
  19727. 27C6 RW LCD timeout in minutes
  19728. --------X-P280028FF--------------------------
  19729. PORT 2800-28FF - available for EISA slot 2
  19730. --------V-P28E9------------------------------
  19731. PORT 28E9 - 8514/A - WD Escape Functions
  19732. --------d-P2C002CBF--------------------------
  19733. PORT 2C00-2CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 2
  19734. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  19735. --------V-P2C802C8F--------------------------
  19736. PORT 2C80-2C8F - VESA XGA Video in EISA slot 2
  19737. SeeAlso: PORT 1C80h-1C83h,PORT 1C88h-1C8Fh
  19738. --------X-P2C802C83--------------------------
  19739. PORT 2C80-2C83 - EISA board product ID (board in slot 2)
  19740. SeeAlso: PORT 1C80h-1C83h
  19741. --------X-P2C84------------------------------
  19742. PORT 2C84 - EISA CONFIGURATION FLAGS (board in slot 2)
  19743. 2C84 RW configuration flags (see #P1016)
  19744. --------X-P300030FF--------------------------
  19745. PORT 3000-30FF - available for EISA slot 3
  19746. --------S-P32203227--------------------------
  19747. PORT 3220-3227 - serial port 3, description same as 03F8
  19748. --------S-P3228322F--------------------------
  19749. PORT 3228-322F - serial port 4, description same as 03F8
  19750. --------V-P33C033CF--------------------------
  19751. PORT 33C0-33CF - Compaq QVision - BitBLT engine
  19752. --------X-P340034FF--------------------------
  19753. PORT 3400-34FF - available for EISA slot 3
  19754. --------d-P35103513--------------------------
  19755. PORT 3510-3513 - ESDI primary harddisk controller
  19756. Range: PORT 3510h-3513h (primary) or PORT 3518h-351Bh (secondary)
  19757. SeeAlso: PORT 3518h,PORT 01F0h-01F7h
  19758. 3510w R- status word
  19759. 3510w -W command word
  19760. 3512 R- basic status
  19761. 3512 -W basic control
  19762. 3513 R- interrupt status
  19763. 3513 -W attention
  19764. --------d-P3518351B--------------------------
  19765. PORT 3518-351B - ESDI secondary harddisk controller
  19766. Range: PORT 3510h-3513h (primary) or PORT 3518h-351Bh (secondary)
  19767. SeeAlso: PORT 3510h,PORT 01F0h-01F7h
  19768. 3518w R- status word
  19769. 3518w -W command word
  19770. 351A R- basis status
  19771. 351A -W basic control
  19772. 351B R- interrupt status
  19773. 351B -W attention
  19774. --------d-P3540354F--------------------------
  19775. PORT 3540-354F - IBM SCSI (Small Computer System Interface) adapter
  19776. --------d-P3550355F--------------------------
  19777. PORT 3550-355F - IBM SCSI (Small Computer System Interface) adapter
  19778. --------d-P3560356F--------------------------
  19779. PORT 3560-356F - IBM SCSI (Small Computer System Interface) adapter
  19780. --------d-P3570357F--------------------------
  19781. PORT 3570-357F - IBM SCSI (Small Computer System Interface) adapter
  19782. --------V-P36EE------------------------------
  19783. PORT 36EE - ATI Mach8/Mach32 - FIFO OPTION
  19784. SeeAlso: PORT 6AEEh,PORT 6EEEh,PORT 72EEh,PORT 76EEh,PORT 7AEEh,PORT 8EEEh
  19785. 36EE -W FIFO option
  19786. bit 0: generate wait states if FIFO >= half full
  19787. (0=only when FIFO full)
  19788. bit 1: force 8-bit host data I/O
  19789. --------X-P380038FF--------------------------
  19790. PORT 3800-38FF - available for EISA slot 3
  19791. --------X-P3C003CFF--------------------------
  19792. PORT 3C00-3CFF - available for EISA slot 3
  19793. --------d-P3C003CBF--------------------------
  19794. PORT 3C00-3CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 3
  19795. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  19796. --------V-P3C803C8F--------------------------
  19797. PORT 3C80-3C8F - VESA XGA Video in EISA slot 3
  19798. 3C80-3C83 RW EISA Video ID
  19799. 3C84 RW EISA Video expansion board control
  19800. 3C85 RW EISA Setup control
  19801. 3C88 RW EISA Video Programmable Option Select 0
  19802. 3C89-3C8F RW EISA Video Programmable Option Select 1-7
  19803. SeeAlso: PORT 1C80h-1C8Fh"XGA",PORT 2C80h-2C8Fh"XGA",PORT 7C80h-7C8Fh"XGA"
  19804. --------X-P3C803C83--------------------------
  19805. PORT 3C80-3C83 - EISA board product ID (board in slot 3)
  19806. SeeAlso: PORT 1C80h-1C83h
  19807. --------X-P3C84------------------------------
  19808. PORT 3C84 - EISA CONFIGURATION FLAGS (board in slot 3)
  19809. 3C84 RW configuration flags (see #P1016)
  19810. --------X-P400040FF--------------------------
  19811. PORT 4000-40FF - available for EISA slot 4
  19812. ----------P42204227--------------------------
  19813. PORT 4220-4227 - serial port, description same as 03F8
  19814. ----------P4228422F--------------------------
  19815. PORT 4228-422F - serial port, description same as 03F8
  19816. ----------P42E042EF--------------------------
  19817. PORT 42E0-42EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  19818. 42E1 RW GPIB (adapter 2)
  19819. --------V-P42E8------------------------------
  19820. PORT 42E8 - 8514/A and hardware-compatible video cards
  19821. Note: supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  19822. 42E8w R- Misc. control: Subsystem Status (see #P1018)
  19823. 42E8w -W Misc. control: Subsystem Control (see #P1019)
  19824. Bitfields for 8514/A Subsystem Status register:
  19825. Bit(s) Description (Table P1018)
  19826. 15-8 (8514/A) reserved
  19827. 13 (S3) ???
  19828. 12-8 (S3) ???
  19829. 7 pixel length (0 = four bits, 1 = eight bits)
  19830. 6-4 reserved
  19831. 3 FIFO empty (interrupt generated if enabled)
  19832. 2 FIFO overflow (interrupt generated if enabled)
  19833. 1 Graphics Engine busy (interrupt generated if enabled)
  19834. 0 vertical sync (interrupt generated if enabled)
  19835. SeeAlso: #P1019
  19836. Bitfields for 8514/A Subsystem Control Register:
  19837. Bit(s) Description (Table P1019)
  19838. 15-14 GP_RESET
  19839. W 00 no change
  19840. 01 normal operation
  19841. 10 reset graphics processor and FIFO
  19842. 11 reserved
  19843. 13-12 reserved
  19844. 11 W enable interrupt when graphics processor idle
  19845. 10 W enable interrupt on invalid I/O (FIFO overlow)
  19846. 9 W enable interrupt if inside scissors region
  19847. 8 W enable vertical blanking interval interrupt
  19848. 6-4 R monitor ID (8514/A)
  19849. 7-4 reserved (S3)
  19850. 3 acknowledge idle interrupt (and clear)
  19851. 2 acknowledge invalid I/O interrupt (and clear)
  19852. 1 acknowledge inside-scissors interrupt (and clear)
  19853. 0 acknowledge vertical blanking interrupt (and clear)
  19854. SeeAlso: #P1018
  19855. --------V-P42EC------------------------------
  19856. PORT 42EC - ATI Mach64 - ???
  19857. SeeAlso: PORT 42EDh"Mach64"
  19858. 42EC RW ???
  19859. bits 1-0: ???
  19860. --------V-P42ED------------------------------
  19861. PORT 42ED - ATI Mach64 - ???
  19862. SeeAlso: PORT 42ECh"Mach64",PORT 42EFh
  19863. 42ED R? ???
  19864. --------V-P42EE42EF--------------------------
  19865. PORT 42EE-42EF - ATI Mach32 - MEMORY BOUNDARY REGISTER
  19866. SeeAlso: PORT 5EEEh"Mach32"
  19867. 42EEw RW memory boundary
  19868. bits 3-0: VGA/8514 boundary in 256K units (VGA only below, 8514 above)
  19869. bit 4: partition enable: VGA and 8514 drawing engines may only write
  19870. within their respective partitions
  19871. bits 15-5: reserved
  19872. --------V-P42EF------------------------------
  19873. PORT 42EF - ATI Mach64 - ???
  19874. SeeAlso: PORT 42EDh"Mach64"
  19875. 42EF R? ???
  19876. --------X-P440044FF--------------------------
  19877. PORT 4400-44FF - available for EISA slot 4
  19878. ----------P4F15------------------------------
  19879. PORT 4F15 - Tseng Labs ET6000 - Read EDID through Display Data Channel
  19880. --------V-P46E8------------------------------
  19881. PORT 46E8 - VGA - VIDEO ADAPTER ENABLE
  19882. Note: IBM uses this port for adapter-card VGAs only, and PORT 03C3h for
  19883. motherboard VGA only (see 03C3 for details)
  19884. SeeAlso: PORT 03C3h,PORT 46E8h"8514/A",#P0748
  19885. 46E8 rW Misc. control: enable flags / select ROM page (8514/A) (see #P1020)
  19886. Bitfields for VGA miscellaneous control register:
  19887. Bit(s) Description (Table P1020)
  19888. 7-5 unused or vendor-specific
  19889. 4 setup for POS registers (MCA)
  19890. 3 enable video I/O ports and video buffer
  19891. 2-0 unused or vendor-specific
  19892. --------V-P46E8------------------------------
  19893. PORT 46E8 - 8514/A and compatible (e.g. ATI Graphics Ultra) - ROM PAGE SELECT
  19894. Note: this register is readable on the C&T 82c480 chipset
  19895. SeeAlso: PORT 46E8h"VGA"
  19896. 46E8w -W ROM page select (see #P1021)
  19897. Bitfields for 8514/A ROM page select register:
  19898. Bit(s) Description (Table P1021)
  19899. 2-0 select which 4K page of 32K ROM to map at segment C700h
  19900. 3 enable VGA
  19901. 4 select VGA setup mode
  19902. 15-5 reserved (0)
  19903. --------V-P46EE------------------------------
  19904. PORT 46EE - ATI Mach32 - ???
  19905. 46EEw RW ???
  19906. --------V-P46EF------------------------------
  19907. PORT 46EF - ATI Mach64 - ???
  19908. Note: the Mach64 BIOS reads the value of this port and multiplies it by 100
  19909. SeeAlso: PORT 66ECh"Mach64"
  19910. --------X-P480048FF--------------------------
  19911. PORT 4800-48FF - available for EISA slot 4
  19912. --------V-P4AE84AE9--------------------------
  19913. PORT 4AE8-4AE9 - 8514/A and compatible - CRT CONTROL
  19914. Notes: supported by ATI Mach8 and Mach32 chipsets
  19915. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  19916. SeeAlso: #P0749
  19917. 4AE8w -W CRT control: Advanced function control (see also #P1022)
  19918. (02h = VGA mode, 03h = 480-line mode, 07h = 768-line mode)
  19919. Bitfields for S3 8514/A-compatible Advanced Function Control register:
  19920. Bit(s) Description (Table P1022)
  19921. 15-7 reserved
  19922. 6 (928 only) enable Write Posting
  19923. 5 (928+) enable memory-mapped I/O
  19924. 4 (928+) enable linear addressing (see also #P0741)
  19925. 3 reserved
  19926. 2 (911-928) screen size (1 = 800x600 or 1024x768, 0=640x480)
  19927. (Trio32/Trio64) enhanced modes pixel length (0 = 8+ bpp, 1 = 4 bpp)
  19928. 1 reserved (1)
  19929. 0 enable enhanced functions
  19930. Note: bit 4 is ORed with CR58 bit 4; bit 5 is ORed with CR53 bit 4
  19931. --------V-P4AEE------------------------------
  19932. PORT 4AEE - ATI Mach32 - ???
  19933. 4AEEw RW ???
  19934. --------X-P4C004CFF--------------------------
  19935. PORT 4C00-4CFF - available for EISA slot 4
  19936. --------d-P4C004CBF--------------------------
  19937. PORT 4C00-4CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 4
  19938. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  19939. --------X-P4C804C83--------------------------
  19940. PORT 4C80-4C83 EISA board product ID (board in slot 4)
  19941. SeeAlso: PORT 1C80h-1C83h
  19942. --------V-P4C804C8F--------------------------
  19943. PORT 4C80-4C8F - VESA XGA Video in EISA slot 4 (see 3C80-3C8F)
  19944. SeeAlso: PORT 1C80h-1C8Fh,PORT 6C80h-6C8Fh
  19945. --------X-P4C84------------------------------
  19946. PORT 4C84 - EISA CONFIGURATION FLAGS (board in slot 4)
  19947. 4C84 RW configuration flags (see #P1016)
  19948. --------X-P500050FF--------------------------
  19949. PORT 5000-50FF - available for EISA slot 5
  19950. --------S-P52205227--------------------------
  19951. PORT 5220-5227 - serial port, description same as 03F8
  19952. --------S-P5228522F--------------------------
  19953. PORT 5228-522F - serial port, description same as 03F8
  19954. --------V-P52E852E9--------------------------
  19955. PORT 52E8-52E9 - C&T 82c480 - EXTENDED CONFIGURATION REGISTER 0
  19956. Note: the 82c480 is an 8514/A-compatible video chipset
  19957. SeeAlso: PORT 56E8h"C&T",PORT 5AE8h"C&T",PORT 5EE8h"C&T"
  19958. 52E8w RW Extended Configuration Register 0
  19959. --------V-P52EE52EF--------------------------
  19960. PORT 52EE-52EF - ATI Mach32 - SCRATCH REGISTER 0 (USED FOR ROM LOCATION)
  19961. Note: ATI video BIOS sets this port according to the segment address of the
  19962. BIOS if >= C000h, as ((seg-C000h) shr 7)
  19963. SeeAlso: PORT 56EEh"Mach32"
  19964. 52EEw RW scratch register 0: Video ROM address
  19965. --------X-P540054FF--------------------------
  19966. PORT 5400-54FF - available for EISA slot 5
  19967. --------V-P56E856E9--------------------------
  19968. PORT 56E8-56E9 - C&T 82c480 - EXTENDED CONFIGURATION REGISTER 1
  19969. Note: the 82c480 is an 8514/A-compatible video chipset
  19970. SeeAlso: PORT 52E8h"C&T",PORT 5AE8h"C&T",PORT 5EE8h"C&T"
  19971. 56E8w RW Extended Configuration Register 1
  19972. --------V-P56EE56EF--------------------------
  19973. PORT 56EE-56EF - ATI Mach32 - SCRATCH REGISTER 1
  19974. SeeAlso: PORT 52EEh"Mach32"
  19975. 56EEw RW scratchpad
  19976. --------X-P580058FF--------------------------
  19977. PORT 5800-58FF - available for EISA slot 5
  19978. --------V-P5AE85AE9--------------------------
  19979. PORT 5AE8-5AE9 - C&T 82c480 - EXTENDED CONFIGURATION REGISTER 2
  19980. Note: the 82c480 is an 8514/A-compatible video chipset
  19981. SeeAlso: PORT 52E8h"C&T",PORT 56E8h"C&T",PORT 5EE8h"C&T"
  19982. 5AE8w RW Extended Configuration Register 2
  19983. --------V-P5AEE------------------------------
  19984. PORT 5AEE - ATI Mach32 - ???
  19985. 5AEE RW ???
  19986. --------X-P5C005CFF--------------------------
  19987. PORT 5C00-5CFF - available for EISA slot 5
  19988. --------d-P5C005CBF--------------------------
  19989. PORT 5C00-5CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 5
  19990. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  19991. --------V-P5C805C8F--------------------------
  19992. PORT 5C80-5C8F - VESA XGA Video in EISA slot 5
  19993. SeeAlso: PORT 2C80h-2C8Fh,PORT 4C80h-4C8Fh,PORT 6C80h-6C8Fh
  19994. 5C80d RW EISA Video ID
  19995. 5C84 RW EISA Video expansion board control
  19996. 5C85 RW EISA Setup control
  19997. 5C88 RW EISA Video Programmable Option Select 0
  19998. 5C89 RW EISA Video Programmable Option Select 1
  19999. 5C8A RW EISA Video Programmable Option Select 2
  20000. 5C8B RW EISA Video Programmable Option Select 3
  20001. 5C8C RW EISA Video Programmable Option Select 4
  20002. 5C8D RW EISA Video Programmable Option Select 5
  20003. 5C8E RW EISA Video Programmable Option Select 6
  20004. 5C8F RW EISA Video Programmable Option Select 7
  20005. --------X-P5C805C83--------------------------
  20006. PORT 5C80-5C83 EISA board product ID (board in slot 5)
  20007. SeeAlso: PORT 1C80h-1C83h
  20008. --------X-P5C84------------------------------
  20009. PORT 5C84 - EISA CONFIGURATION FLAGS (board in slot 5)
  20010. 5C84 RW configuration flags (see #P1016)
  20011. --------V-P5EE85EE9--------------------------
  20012. PORT 5EE8-5EE9 - C&T 82c480 - EXTENDED CONFIGURATION REGISTER 3
  20013. Note: the 82c480 is an 8514/A-compatible video chipset
  20014. SeeAlso: PORT 52E8h"C&T",PORT 56E8h"C&T",PORT 5AE8h"C&T"
  20015. 5EE8w RW Extended Configuration Register 3
  20016. ----------P5EEE------------------------------
  20017. PORT 5EEE - ATI Mach32 - MEMORY APERTURE CONFIGURATION REGISTER
  20018. SeeAlso: PORT 42EEh"Mach32"
  20019. 5EEEw RW Memory Aperture Configuration (see #P1023)
  20020. Bitfields for ATI Mach32 Memory Aperture Configuration Register:
  20021. Bit(s) Description (Table P1023)
  20022. 1-0 direct memory interface mapping
  20023. 00 disabled
  20024. 01 1M aperture (not on PCI)
  20025. 10 4M aperture
  20026. 11 reserved
  20027. 3-2 1M page select (not on PCI)
  20028. 00 page 0
  20029. 01 page 1
  20030. 10 page 2
  20031. 11 page 3
  20032. 11-8 (ISA) memory aperture location, 0-15 MB
  20033. 13-8 (EISA) memory aperture location, 0-63 MB
  20034. 14-8 (VLB) memory aperture location, 0-127 MB [*]
  20035. 15-4 (PCI) memory aperture location, 0-4095 MB
  20036. 13-8 (MCA 16-bit) memory aperture location, 0-63 MB
  20037. 14-8 (MCA 32-bit) memory aperture location, 0-127 MB
  20038. Note: [*] if PORT 16EEh bit 3 is set and PORT FAEEh is non-zero, bits 15-4
  20039. are used to specify an address from 0-4095 MB
  20040. --------X-P600060FF--------------------------
  20041. PORT 6000-60FF - available for EISA slot 6
  20042. ----------P62E062EF--------------------------
  20043. PORT 62E0-62EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  20044. 62E1 RW GPIB (adapter 3)
  20045. --------V-P63C063CF--------------------------
  20046. PORT 63C0-63CF - Compaq QVision - BitBLT engine
  20047. --------X-P640064FF--------------------------
  20048. PORT 6400-64FF - available for EISA slot 6
  20049. --------V-P66EC------------------------------
  20050. PORT 66EC - ATI Mach64 - ???
  20051. SeeAlso: PORT 6AECh"Mach64"
  20052. --------X-P680068FF--------------------------
  20053. PORT 6800-68FF - available for EISA slot 6
  20054. --------V-P6AEC6AED--------------------------
  20055. PORT 6AEC-6AED - ATI Mach64 - ???
  20056. SeeAlso: PORT 66ECh"Mach64"
  20057. --------V-P6AEE------------------------------
  20058. PORT 6AEE - ATI Mach8/Mach32 - MAXIMUM WAIT STATES
  20059. SeeAlso: PORT 36EEh,PORT 6EEEh,PORT 76EEh,PORT 7AEEh,PORT 8EEEh
  20060. 6AEE RW maximum wait states (see #P1024)
  20061. Bitfields for ATI Mach8/Mach32 wait state configuration:
  20062. Bit(s) Description (Table P1024)
  20063. 10 leave alone ("PASSTHROUGH_OVERRIDE")
  20064. 9 enable for 16-bit I/O
  20065. 8 0=horizontal degree-mode line draws
  20066. --------X-P6C006CFF--------------------------
  20067. PORT 6C00-6CFF - available for EISA slot 6
  20068. --------d-P6C006CBF--------------------------
  20069. PORT 6C00-6CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 6
  20070. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  20071. --------X-P6C806C83--------------------------
  20072. PORT 6C80-6C83 - EISA board product ID (board in slot 6)
  20073. SeeAlso: PORT 1C80h-1C83h
  20074. --------V-P6C806C8F--------------------------
  20075. PORT 6C80-6C8F - VESA XGA Video in EISA slot 1
  20076. SeeAlso: PORT 1C80h-1C8Fh"XGA",PORT 2C80h-2C8Fh"XGA",PORT 5C80h-5C8Fh"XGA"
  20077. 6C80d RW EISA Video ID (see PORT 1C80h-1C83h)
  20078. 6C84 RW EISA Video expansion board control
  20079. 6C85 RW EISA Setup control
  20080. 6C88 RW EISA Video Programmable Option Select 0
  20081. 6C89 RW EISA Video Programmable Option Select 1
  20082. 6C8A RW EISA Video Programmable Option Select 2
  20083. 6C8B RW EISA Video Programmable Option Select 3
  20084. 6C8C RW EISA Video Programmable Option Select 4
  20085. 6C8D RW EISA Video Programmable Option Select 5
  20086. 6C8E RW EISA Video Programmable Option Select 6
  20087. 6C8F RW EISA Video Programmable Option Select 7
  20088. --------X-P6C84------------------------------
  20089. PORT 6C84 - EISA CONFIGURATION FLAGS (board in slot 6)
  20090. 6C84 RW configuration flags (see #P1016)
  20091. --------V-P6EEC------------------------------
  20092. PORT 6EEC - ATI Mach64 - ???
  20093. SeeAlso: PORT 6AECh"Mach64"
  20094. --------V-P6EEE------------------------------
  20095. PORT 6EEE - ATI Mach8/Mach32 - ENGINE VIDEO BUFFER OFFSET LOW
  20096. SeeAlso: PORT 72EEh
  20097. 6AEEw -W low 16 bits of video buffer starting offset
  20098. --------X-P700070FF--------------------------
  20099. PORT 7000-70FF - available for EISA slot 7
  20100. --------V-P72EC------------------------------
  20101. PORT 72EC - ATI Mach64 - ???
  20102. SeeAlso: PORT 66ECh"Mach64",PORT 72EFh"Mach64"
  20103. --------V-P72EE------------------------------
  20104. PORT 72EE - ATI Mach8/Mach32 - ENGINE VIDEO BUFFER OFFSET HIGH
  20105. SeeAlso: PORT 6EEEh
  20106. 72EE -W high bits of video buffer starting offset
  20107. bits 1-0 for Mach-8
  20108. bits 3-0 for Mach-32
  20109. --------V-P72EE------------------------------
  20110. PORT 72EE - ATI Mach8/Mach32 - BOUNDS ACCUMULATOR (LEFT)
  20111. SeeAlso: PORT 76EEh"BOUNDS",PORT 7AEEh"BOUNDS",PORT 7EEEh"BOUNDS"
  20112. 72EEw R- left edge of bounding box for points written via Line Draw register
  20113. --------V-P72EF------------------------------
  20114. PORT 72EF - ATI Mach64 - ???
  20115. SeeAlso: PORT 66ECh"Mach64",PORT 72ECh"Mach64"
  20116. --------X-P740074FF--------------------------
  20117. PORT 7400-74FF - available for EISA slot 7
  20118. --------V-P76EE------------------------------
  20119. PORT 76EE - ATI Mach8/Mach32 - ENGINE DISPLAY PITCH
  20120. SeeAlso: PORT 6AEEh,PORT 7AEEh
  20121. 76EE -W display pitch
  20122. --------V-P76EE------------------------------
  20123. PORT 76EE - ATI Mach8/Mach32 - BOUNDS ACCUMULATOR (TOP)
  20124. SeeAlso: PORT 72EEh"BOUNDS",PORT 7AEEh"BOUNDS",PORT 7EEEh"BOUNDS"
  20125. 76EEw R- top edge of bounding box for points written via Line Draw register
  20126. --------X-P780078FF--------------------------
  20127. PORT 7800-78FF - available for EISA slot 7
  20128. --------V-P7AEE------------------------------
  20129. PORT 7AEE - ATI Mach8/Mach32 - EXTENDED GRAPHICS ENGINE CONGIFURATION
  20130. SeeAlso: PORT 8EEEh
  20131. 7AEEw -W extended graphics engine configuration (see #P1025)
  20132. Bitfields for Mach8/Mach32 extended graphics engine configuration:
  20133. Bit(s) Description (Table P1025)
  20134. 15 drawing pixel size to be written next (68800-6 only)
  20135. 14 enable 8-bit DAC (Mach-32 only)
  20136. 13-12 DAC address inputs RS(3:2) control (Mach-32 only)
  20137. 11 display pixel size to be written next (68800-6 only)
  20138. 10 24-bit color order (Mach-32 only)
  20139. 0 = RGB
  20140. 1 = BGR
  20141. 9 24-bit color configuration: pixels use 4 bytes instead of three
  20142. 8 DAC processes four pixels in parallel (Mach-32 only)
  20143. 7-6 16-bits-per-color word format (Mach-32 only)
  20144. 00 RGB(5,5,5)
  20145. 01 RGB(5,6,5)
  20146. 10 RGB(6,5,5)
  20147. 11 RGB(6,6,4)
  20148. 5-4 number of bits per pixel (Mach-32 only)
  20149. 00 four
  20150. 01 eight
  20151. 10 sixteen
  20152. 11 twenty-four
  20153. 3 report monitor alias instead of actual monitor
  20154. 2-0 alternate monitor ID (alias)
  20155. --------V-P7AEE------------------------------
  20156. PORT 7AEE - ATI Mach8/Mach32 - BOUNDS ACCUMULATOR (RIGHT)
  20157. SeeAlso: PORT 72EEh"BOUNDS",PORT 76EEh"BOUNDS",PORT 7EEEh"BOUNDS"
  20158. 7AEEw R- right edge of bounding box for points written via Line Draw register
  20159. --------X-P7C007CFF--------------------------
  20160. PORT 7C00-7CFF - available for EISA slot 7
  20161. --------d-P7C007CBF--------------------------
  20162. PORT 7C00-7CBF - Adaptec AIC-777x EISA SCSI controller in EISA slot 7
  20163. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-154x",PORT xxxxh"Adaptec AIC-78xx"
  20164. --------X-P7C807C83--------------------------
  20165. PORT 7C80-7C83 - EISA board product ID (board in slot 7)
  20166. SeeAlso: PORT 1C80h-1C83h
  20167. --------V-P7C807C8F--------------------------
  20168. PORT 7C80-7C8F - VESA XGA Video in EISA slot 7
  20169. SeeAlso: PORT 1C80h-1C8Fh,PORT 6C80h-6C8Fh
  20170. 7C80-7C83 RW EISA Video ID
  20171. 7C84 RW EISA Video expansion board control
  20172. 7C85 RW EISA Setup control
  20173. 7C88 RW EISA Video Programmable Option Select 0
  20174. 7C89-7C8F RW EISA Video Programmable Option Select 1-7
  20175. --------X-P7C84------------------------------
  20176. PORT 7C84 - EISA CONFIGURATION FLAGS (board in slot 7)
  20177. 7C84 RW configuration flags (see #P1016)
  20178. --------V-P7EEE------------------------------
  20179. PORT 7EEE - ATI Mach8/Mach32 - BOUNDS ACCUMULATOR (RIGHT)
  20180. SeeAlso: PORT 72EEh"BOUNDS",PORT 76EEh"BOUNDS",PORT 7AEEh"BOUNDS"
  20181. 7EEEw R- right edge of bounding box for points written via Line Draw register
  20182. --------X-P800080FF--------------------------
  20183. PORT 8000-80FF - available for EISA slot 8
  20184. ----------P82E082EF--------------------------
  20185. PORT 82E0-82EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  20186. 82E1 RW GPIB (adapter 4)
  20187. --------V-P82E882E9--------------------------
  20188. PORT 82E8-82E9 - 8514/A and compatible - CURRENT Y POSITION
  20189. Notes: supported by ATI Mach8 and Mach32 chipsets
  20190. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20191. SeeAlso: PORT 86E8h,PORT 82EAh
  20192. 82E8w -W drawing control: current Y position
  20193. --------V-P82EA82EB--------------------------
  20194. PORT 82EA-82EB - S3 Trio64 - CURRENT Y POSITION 2
  20195. SeeAlso: PORT 82E8h
  20196. 82EAw drawing control: current Y position 2
  20197. --------S-P82F882FF--------------------------
  20198. PORT 82F8-82FF - serial port, description same as 03F8
  20199. --------V-P83C083CF--------------------------
  20200. PORT 83C0-83CF - Compaq QVision - Line Draw Engine
  20201. --------V-P83C4------------------------------
  20202. PORT 83C4 - Compaq Qvision EISA - Virtual Controller Select
  20203. --------V-P83C683C9--------------------------
  20204. PORT 83C6-83C9 - Compaq Qvision EISA - DAC color registers
  20205. SeeAlso: PORT 03C6h
  20206. --------V-P83C683C9--------------------------
  20207. PORT 83C6-83C9 - Chips&Technologies 64200 (Wingine) - DAC color registers
  20208. SeeAlso: PORT 03C6h
  20209. 83C6 RW color palette pixel mask
  20210. 83C7 R- color palette state
  20211. 83C7 -W color palette read-mode index
  20212. 83C8 RW color palette write-mode index
  20213. 83C9 RW color palette data (three bytes)
  20214. ----------P83D09FD3--------------------------
  20215. PORT 83D0-9FD3 - Chips&Techs 64310 - 32-BIT EXTENSION REGS - BitBLT
  20216. Notes: All ports are word or dword accessible.
  20217. These registers are also accessible in the upper 2 MB of the 4 MB
  20218. linear memory frame buffer (address specified in PCI configuration
  20219. registers).
  20220. SeeAlso: PORT 03D6h"Chips",PORT A3D0h"Chips"
  20221. 83D0d RW "DR00" BitBlt offset register (see #P1026)
  20222. 87D0d RW "DR01" BitBlt pattern ROP register (see #P1027)
  20223. 8BD0d RW "DR02" BitBlt background color register (see #P1028)
  20224. 8FD0d RW "DR03" BitBlt foreground color register (see #P1029)
  20225. 93D0d RW "DR04" BitBlt control register (see #P1030)
  20226. 97D0d RW "DR05" BitBlt source register (see #P1031)
  20227. 9BD0d RW "DR06" BitBlt destination register (see #P1032)
  20228. 9FD0d RW "DR07" BitBlt command register (see #P1033)
  20229. Bitfields for Chips&Technologies 64310 "DR00" BitBlt offset register:
  20230. Bit(s) Description (Table P1026)
  20231. 31-28 reserved (0)
  20232. 27-16 destination offset
  20233. 15-12 reserved (0)
  20234. 11-0 source offset
  20235. Bitfields for Chips&Technologies 64310 "DR01" BitBlt pattern ROP register:
  20236. Bit(s) Description (Table P1027)
  20237. 31-21 reserved (0)
  20238. 20-0 pattern pointer (must be pattern size aligned)
  20239. Note: Do not read this register while BitBlt is active.
  20240. Bitfields for Chips&Technologies 64310 "DR02" BitBlt background color register:
  20241. Bit(s) Description (Table P1028)
  20242. 31-16 reserved (contents of bits 15-0 on read)
  20243. 15-0 background color for opaque mono-color expansions
  20244. (all bits must be used; use same data in bits 15-8 and 7-0 for 8BPP)
  20245. Bitfields for Chips&Technologies 64310 "DR03" BitBlt foreground color register:
  20246. Bit(s) Description (Table P1029)
  20247. 31-16 reserved (contents of bits 15-0 on read)
  20248. 15-0 foreground color for mono-color expansions/color for solid paint
  20249. operations
  20250. (all bits must be used; use same data in bits 15-8 and 7-0 for 8BPP)
  20251. Bitfields for Chips&Technologies 64310 "DR04" BitBlt control register:
  20252. Bit(s) Description (Table P1030)
  20253. 31-28 reserved (0)
  20254. 27-24 buffer status (number of dwords that can be written to the chip)
  20255. 23-21 reserved (0)
  20256. 20 BitBlt status (read-only)
  20257. 0 = idle
  20258. 1 = active (do not write BitBlt registers)
  20259. 19 0 = bitmap pattern
  20260. 1 = solid pattern (brush)
  20261. 18-16 pattern starting row
  20262. 15-14 BitBlt source (destination always video frame buffer)
  20263. 00 = video frame buffer
  20264. 01 = system memory
  20265. 1x = reserved
  20266. 13 background for monochrome pattern and font expansion
  20267. 0 = opaque (color in DR02)
  20268. 1 = transparent (unchanged)
  20269. 12 pattern depth
  20270. 0 = color
  20271. 1 = monochrome
  20272. 11 source depth
  20273. 0 = color
  20274. 1 = monochrome (font expansion only if bit 9 = 1)
  20275. 10 source data
  20276. 0 = selected by bit 14
  20277. 1 = foreground color reg (DR03)
  20278. 9 X direction (use when source and destination areas overlap)
  20279. 0 = decrement (right to left)
  20280. 1 = increment (left to right)
  20281. 8 Y direction (use when source and destination areas overlap)
  20282. 0 = decrement (bottom to top)
  20283. 1 = increment (top to bottom)
  20284. 7-0 raster operation (as defined by Windows)
  20285. SeeAlso: #P1031,#P1033
  20286. Bitfields for Chips&Technologies 64310 "DR05" BitBlt source register:
  20287. Bit(s) Description (Table P1031)
  20288. 31-21 reserved (0)
  20289. 20-0 source block address (must be byte aligned)
  20290. Note: Do not read this register while BitBlt is active.
  20291. SeeAlso: #P1030,#P1032
  20292. Bitfields for Chips&Technologies 64310 "DR06" BitBlt destination register:
  20293. Bit(s) Description (Table P1032)
  20294. 31-21 reserved (0)
  20295. 20-0 destination block address (must be byte aligned)
  20296. Note: Do not read this register while BitBlt is active.
  20297. SeeAlso: #P1031,#P1033
  20298. Bitfields for Chips&Technologies 64310 "DR07" BitBlt command register:
  20299. Bit(s) Description (Table P1033)
  20300. 31-28 reserved (0)
  20301. 27-16 lines per block
  20302. 15-12 reserved (0)
  20303. 11-0 bytes per line
  20304. SeeAlso: #P1031,#P1032
  20305. --------S-P83F883FF--------------------------
  20306. PORT 83F8-83FF - serial port, description same as 03F8
  20307. --------X-P840084FF--------------------------
  20308. PORT 8400-84FF - available for EISA slot 8
  20309. --------V-P86E886E9--------------------------
  20310. PORT 86E8-86E9 - 8514/A and compatible - CURRENT X POSITION
  20311. Desc: define the column at which the first pixel of a line, rectangle, etc.
  20312. will be drawn; (Trio64) define the column at which the first of two
  20313. edges for a polygon or trapezoid will begin
  20314. Notes: supported by ATI Mach8 and Mach32 chipsets
  20315. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20316. SeeAlso: PORT 82E8h,PORT 8AE8h,86EAh
  20317. 86E8w -W drawing control: current X position (bits 11-0)
  20318. --------V-P86EA86EB--------------------------
  20319. PORT 86EA-86EB - S3 Trio64 - CURRENT X POSITION 2
  20320. Desc: define the column at which the second of two edges for a polygon or
  20321. trapezoid will begin
  20322. SeeAlso: PORT 86E8h
  20323. 86EAw RW drawing control: current X position 2 (bits 11-0)
  20324. --------X-P880088FF--------------------------
  20325. PORT 8800-88FF - available for EISA slot 8
  20326. --------V-P8AE88AE9--------------------------
  20327. PORT 8AE8-8AE9 - 8514/A and compatible - DESTINATION Y POSITION
  20328. Desc: define the top row of the destination for a BLT, the axial step
  20329. constant for a line, or the ending row of a line segment in a
  20330. polyline; (Trio64) define the ending row of the first edge drawn
  20331. for a polygon or trapezoid
  20332. Notes: supported by ATI Mach8 and Mach32 chipsets
  20333. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20334. SeeAlso: PORT 82E8h,PORT 86E8h
  20335. 8AE8w -W drawing control: destination Y position / axial step constant
  20336. (see #P1034)
  20337. Note: this port may be read on S3 chipsets
  20338. Bitfields for 8514/A destination Y position / axial step constant register:
  20339. Bit(s) Description (Table P1034)
  20340. 11-0 destination Y position
  20341. 13-0 axial step constant for line drawing
  20342. 15-14 reserved
  20343. --------V-P8AEA8AEB--------------------------
  20344. PORT 8AEA-8AEB - S3 Trio64 - DESTINATION Y COORD 2 / AXIAL STEP CONSTANT 2
  20345. Desc: define the row at which the second of two edges for a polygon or
  20346. trapezoid will end, or the axial step constant for the second of
  20347. two edges for a Bresenham trapezoid
  20348. SeeAlso: PORT 8AE8h
  20349. 8AEAw RW drawing control: destination Y position 2 / axial step constant 2
  20350. (see #P1034)
  20351. --------X-P8C008CFF--------------------------
  20352. PORT 8C00-8CFF - available for EISA slot 8
  20353. --------X-P8C808C83--------------------------
  20354. PORT 8C80-8C83 - EISA board product ID (board in slot 8)
  20355. SeeAlso: PORT 1C80h-1C83h
  20356. --------X-P8C84------------------------------
  20357. PORT 8C84 - EISA CONFIGURATION FLAGS (board in slot 8)
  20358. 8C84 RW configuration flags (see #P1016)
  20359. --------V-P8EE88EE9--------------------------
  20360. PORT 8EE8-8EE9 - 8514/A and compatible - DESTINATION X POSITION
  20361. Desc: define the left column of the destination for a BLT, the diagonal step
  20362. constant for a line, or the ending column of a line segment in a
  20363. polyline; (Trio64) define the ending column of the first edge drawn
  20364. for a polygon or trapezoid
  20365. Notes: supported by ATI Mach8 and Mach32 chipsets
  20366. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20367. SeeAlso: PORT DAEEh"Mach32",PORT 8EEAh
  20368. 8EE8w -W drawing control: destination X position / axial step constant
  20369. (see #P1034)
  20370. --------V-P8EEA8EEB--------------------------
  20371. PORT 8EEA-8EEB - S3 Trio64 - DESTINATION X COORD 2 / AXIAL STEP CONSTANT 2
  20372. Desc: define the column at which the second of two edges for a polygon or
  20373. trapezoid will end, or the axial step constant for the second of
  20374. two edges for a Bresenham trapezoid
  20375. SeeAlso: PORT 8EE8h
  20376. 8EEAw RW drawing control: destination X position 2 / diagonal step constant 2
  20377. (see #P1034)
  20378. --------V-P8EEE------------------------------
  20379. PORT 8EEE - ATI Mach32 - READ EXTENDED GRAPHICS CONFIGURATION
  20380. SeeAlso: PORT 72EEh
  20381. 8EEE R- read extended graphics configuration (see #P1025)
  20382. --------X-P900090FF--------------------------
  20383. PORT 9000-90FF - available for EISA slot 9
  20384. --------V-P92E892E9--------------------------
  20385. PORT 92E8-92E9 - 8514/A and compatible - BRESENHAM ERROR TERM
  20386. Desc: specify the initial error term for drawing a line using the Bresenham
  20387. algorithm
  20388. Notes: supported by ATI Mach8 and Mach32 chipsets
  20389. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20390. the error term is 2*min(|dx|,|dy|) - max(|dx|,|dy|) - 1 [startX < endX]
  20391. or 2*min(|dx|,|dy|) - max(|dx|,|dy|) [startX >= endX]
  20392. SeeAlso: PORT 92EAh
  20393. 92E8w -W drawing control: Bresenham error term (bits 13-0)
  20394. --------V-P92EA92EB--------------------------
  20395. PORT 92EA-92EB - S3 Trio64 - LINE ERROR TERM 2
  20396. Desc: specify the initial error term for the second edge of a Bresenham
  20397. trapezoid
  20398. SeeAlso: PORT 92E8h
  20399. 92EAw RW drawing control: Bresenham error term 2 (bits 13-0)
  20400. --------X-P940094FF--------------------------
  20401. PORT 9400-94FF - available for EISA slot 9
  20402. --------V-P96E896E9--------------------------
  20403. PORT 96E8-96E9 - 8514/A and compatible - MAJOR AXIS PIXEL COUNT
  20404. Desc: specify the pixel length of the longest axis of a line, or the width
  20405. of a rectangle, BLT, or image transfer; (Trio64) specify the major
  20406. axis length of the first edge of a Bresenham trapezoid
  20407. Notes: supported by ATI Mach8 and Mach32 chipsets
  20408. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20409. the value programmed into this register is one less than the desired
  20410. width or major-axis length
  20411. SeeAlso: PORT 96EAh
  20412. 96E8w R- enter WD Enhanced Mode
  20413. 96E8w -W drawing control: major axis pixel count (bits 11-0)
  20414. --------V-P96EA96EB--------------------------
  20415. PORT 96EA-96EB - S3 Trio64 - MAJOR AXIS PIXEL COUNT 2
  20416. Desc: specify the major axis length of the second edge for a Bresenham
  20417. trapezoid
  20418. Note: the value programmed into this register is one less than the desired
  20419. width or major-axis length
  20420. SeeAlso: PORT 96E8h
  20421. 96EAw RW drawing control: major axis pixel count 2 (bits 11-0)
  20422. --------X-P980098FF--------------------------
  20423. PORT 9800-98FF - available for EISA slot 9
  20424. --------V-P9AE89AE9--------------------------
  20425. PORT 9AE8-9AE9 - 8514/A and compatible - GRAPHICS PROCESSOR STATUS / COMMAND
  20426. Notes: supported by ATI Mach8 and Mach32 chipsets
  20427. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20428. SeeAlso: PORT 9AEAh
  20429. 9AE8w R- drawing control: graphic processor status (see #P1035)
  20430. 9AE8w -W drawing control: command register (see #P1036)
  20431. Bitfields for 8514/A graphic processor status:
  20432. Bit(s) Description (Table P1035)
  20433. 15-10 (8514/A) reserved
  20434. 15 (S3 Trio64 only) queue status flags 9
  20435. 14-11 (S3 Trio64 only) queue status flags 10-13
  20436. 10 (S3 Trio64 only) all FIFO slots are empty
  20437. 9 hardware busy
  20438. 8 (8514/A) data ready
  20439. (S3 Trio64) reserved
  20440. 7 queue status flag 1
  20441. 6-0 queue status flags 2-8 (0=empty, 1=filled)
  20442. (each bit represents a position in queue)
  20443. Note: queue status flag N is cleared whenever at least N slots are available
  20444. in the FIFO; at any given time, the CPU may write only as many values
  20445. to the FIFO as there are slots available
  20446. SeeAlso: #P1036
  20447. Bitfields for 8514/A command register :
  20448. Bit(s) Description (Table P1036)
  20449. 15-13 command (see #P1037)
  20450. 12 byte sequence (0=high byte first, 1=low byte first)
  20451. 11-10 (8514/A) reserved
  20452. 11 (S3 Trio) high bit of command (see #P1037)
  20453. 10 (S3 Trio) enable 32-bit write access
  20454. 9 enable 16-bit write access (16BIT)
  20455. 8 0=use 8514/A data, 1=pixel data trans reg (PCDATA) (see PORT E2E8h)
  20456. 7 0=draw vector above, 1=draw vector below (INC_Y)
  20457. 6 0=x is maj. axis, 1=y is maj. axis (YMAJAXIS)
  20458. 5 0=draw vector left, 1=draw vector right (INC_X)
  20459. (bits 7-5 are the drawing direction in 45-degree increments
  20460. counterclockwise from the X axis when bit 3 is set)
  20461. 4 0=move only, 1=draw and move (DRAW)
  20462. 3 0=Bresenham line, 1=direct vector (LINETYPE)
  20463. 2 0=draw last pixel, 1=don't draw last pixel (LASTPIX)
  20464. 1 0=single pixel, 1=4pixel (PLANAR)
  20465. 0 0=read data, 1=write data (RD/WR) (must be 1 on S3 Trio)
  20466. SeeAlso: #P1035,#P1038
  20467. (Table P1037)
  20468. Values for 8514/A command:
  20469. 000 no operation (used to force synchronization with graphics processor,
  20470. or to set up short stroke vector drawing without writing any pixels)
  20471. 001 draw vector
  20472. 010 fast rectangle fill
  20473. 011 (8514/A) rectangle fill vertical #1
  20474. (S3 Trio64) polygon fill solid
  20475. 100 (8514/A) rectangle fill vertical #2 (4 pixels)
  20476. (S3 Trio64) 4-point trapezoid fill solid
  20477. 101 (8514/A) draw vector, 1 pixel/scanline
  20478. (S3 Trio64) Bresenham trapezoid fill solid
  20479. 110 copy rectangle
  20480. 111 (8514/A) reserved
  20481. (S3 Trio64) patterned BLT
  20482. ---S3 Trio64---
  20483. 1001 polyline / 2-point line
  20484. 1011 polygon fill pattern
  20485. 1100 4-point trapezoid fill pattern
  20486. 1101 Bresenham trapezoid fill pattern
  20487. SeeAlso: #P1036
  20488. --------V-P9AEA9AEB--------------------------
  20489. PORT 9AEA-9AEB - S3 Trio64 - DRAWING COMMAND 2
  20490. Desc: specify the drawing direction for the second edge of a Bresenham
  20491. trapezoid
  20492. SeeAlso: PORT 9AE8h
  20493. 9AEAw -W drawing command 2 (see #P1038)
  20494. Bitfields for S3 Trio64 Drawing Command 2 register:
  20495. Bit(s) Description (Table P1038)
  20496. 15-8 reserved
  20497. 7-5 drawing direction
  20498. 7 0=draw vector above, 1=draw vector below (INC_Y)
  20499. 6 0=x is maj. axis, 1=y is maj. axis (YMAJAXIS)
  20500. 5 0=draw vector left, 1=draw vector right (INC_X)
  20501. 4-0 reserved
  20502. SeeAlso: #P1036
  20503. --------V-P9AEE------------------------------
  20504. PORT 9AEE - ATI Mach8/Mach32 - LINEDRAW INDEX REGISTER
  20505. SeeAlso: PORT FEEEh
  20506. 9AEE -W linedraw index register (specifies interpretation of PORT FEEEh)
  20507. (see #P1039)
  20508. (Table P1039)
  20509. Values for ATI Mach8/Mach32 Linedraw Index Register:
  20510. 00h set current X
  20511. 01h set current Y
  20512. 02h set Line End X
  20513. 03h set Line End Y, draw line, and reset register to 02h
  20514. 04h set current X (perform moves instead of draws)
  20515. 05h set current Y and reset register to 04h
  20516. --------X-P9C009CFF--------------------------
  20517. PORT 9C00-9CFF - available for EISA slot 9
  20518. --------X-P9C809C83--------------------------
  20519. PORT 9C80-9C83 - EISA board product ID (board in slot 9)
  20520. SeeAlso: PORT 1C80h-1C83h
  20521. --------X-P9C84------------------------------
  20522. PORT 9C84 - EISA CONFIGURATION FLAGS (board in slot 9)
  20523. 9C84 RW configuration flags (see #P1016)
  20524. --------V-P9EE89EE9--------------------------
  20525. PORT 9EE8-9EE9 - 8514/A and compatible - SHORT STROKE VECTORS
  20526. Desc: specify two short-stroke vectors to be drawn one after the other
  20527. Notes: supported by ATI Mach8 and Mach32 chipsets
  20528. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20529. bit 12 of the command register (see PORT 9AE8h,#P1036) specifies which
  20530. vector is drawn first
  20531. 9EE8w -W short line vector transfer (see #P1040)
  20532. Bitfields for 8514/A short-stroke vector:
  20533. Bit(s) Description (Table P1040)
  20534. 15-13 second vector: drawing direction
  20535. 12 second vector: draw/move
  20536. 11-0 second vector: length in pixels (less 1)
  20537. 7-5 first vector: drawing direction
  20538. 000 zero degrees = right
  20539. 001 45 degress = up and right
  20540. 010 90 degrees = up
  20541. ...
  20542. 111 315 degrees = down and right
  20543. 4 first vector: draw/move (=0 move only, =1 draw and move)
  20544. 3-0 first vector: length in pixels (less 1)
  20545. --------S-PA220------------------------------
  20546. PORT A220 - soundblaster support in AMI Hi-Flex BIOS ????
  20547. ----------PA2E0A2EF--------------------------
  20548. PORT A2E0-A2EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  20549. A2E1 RW GPIB (adapter 5)
  20550. --------V-PA2E8A2EB--------------------------
  20551. PORT A2E8-A2EB - 8514/A and compatible - BACKGROUND COLOR
  20552. Notes: supported by ATI Mach8 and Mach32 chipsets
  20553. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20554. SeeAlso: PORT A6E8h
  20555. A2E8w -W drawing control: background color
  20556. A2E8d RW (S3) drawing control: 32bpp background color
  20557. --------V-PA2EEA2EF--------------------------
  20558. PORT A2EE-A2EF - ATI Mach8/Mach32 - LINE DRAW OPTIONS
  20559. SeeAlso: PORT 8EEEh,PORT CEEEh
  20560. A2EEw RW line drawing options (see #P1041)
  20561. Bitfields for ATI Mach8/Mach32 line drawing options:
  20562. Bit(s) Description (Table P1041)
  20563. 10-9 clipping mode
  20564. 00 disable clip exception
  20565. 01 stroked plain lines
  20566. 10 polygon boundary lines
  20567. 11 patterned lines
  20568. 8 reset all Bounds Accumulator registers
  20569. 7-5 OCTANT: direction for BitBlts or lines
  20570. 3 direction specification
  20571. 0 = Bresenham/Octant
  20572. bit 7: increment Y
  20573. bit 6: Y is major axis instead of X
  20574. bit 5: increment X
  20575. 1 = line-length and degrees
  20576. OCTANT field species N*45 degrees
  20577. 2 do NOT draw last pixel of a line
  20578. 1 polyline draw
  20579. ----------PA3D0BFD3--------------------------
  20580. PORT A3D0-BFD3 - Chips&Techs 64310 - 32-BIT EXTENSION REGS - CURSOR CONTROL
  20581. Notes: All ports are word or dword accessible.
  20582. These registers are also accessible in the upper 2 MB of the 4 MB
  20583. linear memory frame buffer (address specified in PCI configuration
  20584. registers).
  20585. SeeAlso: PORT 03D6h"Chips",PORT 83D0h"Chips"
  20586. A3D0d RW "DR08" cursor control register (see #P1042)
  20587. A7D0d RW "DR09" cursor color register (see #P1043)
  20588. ABD0d -- "DR0A" reserved
  20589. AFD0d RW "DR0B" cursor position register (see #P1044)
  20590. B3D0d RW "DR0C" cursor base address (see #P1045)
  20591. B7D0d -- "DR0D" reserved
  20592. BBD0d -- "DR0E" reserved
  20593. BFD0d -- "DR0F" reserved
  20594. Bitfields for Chips&Technologies 64310 "DR08" cursor control register:
  20595. Bit(s) Description (Table P1042)
  20596. 31-8 reserved (0)
  20597. 7-6 test (must be 0)
  20598. 5 upper left corner (ULC) select
  20599. (all x, y positioning is relative to selected ULC)
  20600. 0 = active display (BLANK#) (cursor can be positioned in overscan
  20601. area)
  20602. 1 = display enable (cursor cannot be positioned to overscan area)
  20603. 4-2 reserved (must be 0)
  20604. 1-0 hardware cursor enable
  20605. 00 = disable
  20606. 01 = 32x32 cursor enable
  20607. 10 = 64x64 cursor enable
  20608. 11 = illegal/reserved
  20609. Bitfields for Chips&Technologies 64310 "DR09" cursor color register:
  20610. Bit(s) Description (Table P1043)
  20611. 31-27 cursor color 1 red
  20612. 26-21 cursor color 1 green
  20613. 20-16 cursor color 1 blue
  20614. 15-11 cursor color 0 red
  20615. 10-5 cursor color 0 green
  20616. 4-0 cursor color 0 blue
  20617. SeeAlso: #P1044,#P1045
  20618. Bitfields for Chips&Technologies 64310 "DR0B" cursor position register:
  20619. Bit(s) Description (Table P1044)
  20620. 31 Y sign
  20621. 30-27 reserved (0)
  20622. 26-16 cursor position Y offset from ULC (DR08 bit 5)
  20623. 15 X sign
  20624. 14-11 reserved (0) (ignored)
  20625. 10-0 cursor position X offset from ULC (DR08 bit 5)
  20626. SeeAlso: #P1043,#P1045
  20627. Bitfields for Chips&Technologies 64310 "DR0C" cursor base address:
  20628. Bit(s) Description (Table P1045)
  20629. 31-21 reserved (0)
  20630. 20-10 base address for cursor data in display memory
  20631. (cursor data must be at 1K boundary in off-screen memory)
  20632. 9-0 reserved (0)
  20633. SeeAlso: #P1043,#P1044
  20634. --------V-PA6E8A6EB--------------------------
  20635. PORT A6E8-A6EB - 8514/A and compatible - FOREGROUND COLOR
  20636. Notes: supported by ATI Mach8 and Mach32 chipsets
  20637. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20638. SeeAlso: PORT A2E8h,PORT AAE8h,PORT AEE8h
  20639. A6E8w -W drawing control: foreground color
  20640. A6E8d RW (S3) drawing control: foreground color for 32bpp modes
  20641. --------V-PAAE8AAEB--------------------------
  20642. PORT AAE8-AAEB - 8514/A and compatible - WRITE MASK
  20643. Desc: specify which bit planes are updates when a pixel is written
  20644. Notes: supported by ATI Mach8 and Mach32 chipsets
  20645. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20646. SeeAlso: PORT A6E8h,PORT AEE8h
  20647. AAE8w -W drawing control: write mask
  20648. AAE8d RW (S3) drawing control: write mask for 32bpp modes
  20649. --------V-PAEE8AEEB--------------------------
  20650. PORT AEE8-AEEB - 8514/A and compatible - READ MASK
  20651. Desc: specify which bit planes are used as a data source
  20652. Notes: supported by ATI Mach8 and Mach32 chipsets
  20653. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20654. SeeAlso: PORT AAE8h,PORT B2E8h
  20655. AEE8w -W drawing control: read mask
  20656. AEE8d RW (S3) drawing control: read mask for 32bpp modes
  20657. --------V-PAFFF------------------------------
  20658. PORT AFFF - VIDEO REGISTER
  20659. AFFF RW plane 0-3 system latch (video register)
  20660. --------S-PB220B227--------------------------
  20661. PORT B220-B227 - serial port, description same as 03F8
  20662. --------S-PB228B22F--------------------------
  20663. PORT B228-B22F - serial port, description same as 03F8
  20664. --------V-PB2E8B2EB--------------------------
  20665. PORT B2E8-B2EB - 8514/A and compatible - COLOR COMPARE
  20666. Notes: supported by ATI Graphics Ultra
  20667. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20668. SeeAlso: PORT B6E8h,PORT BAE8h,PORT BEE8h
  20669. B2E8w -W drawing control: color compare
  20670. B2E8d RW (S3) drawing control: color compare for 32bpp modes
  20671. --------V-PB2EE------------------------------
  20672. PORT B2EE - ATI Mach32 - ???
  20673. B2EEw RW ???
  20674. --------V-PB6E8B6E9--------------------------
  20675. PORT B6E8-B6E9 - 8514/A and compatible - BACKGROUND MIX
  20676. Notes: supported by ATI Mach8 and Mach32 chipsets
  20677. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20678. SeeAlso: PORT BAE8h,PORT BEE8h,PORT B2E8h
  20679. B6E8w -W drawing control: background mix (see #P1046)
  20680. Note: this register may be read on S3 chipsets
  20681. --------V-PB6EE------------------------------
  20682. PORT B6EE - ATI Mach32 - ???
  20683. B6EEw RW ???
  20684. --------V-PBAE8BAE9--------------------------
  20685. PORT BAE8-BAE9 - 8514/A and compatible - FOREGROUND MIX
  20686. Notes: supported by ATI Mach8 and Mach32 chipsets
  20687. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20688. SeeAlso: PORT B6E8h
  20689. BAE8w -W drawing control: foreground mix (see #P1046)
  20690. Note: this register may be read on S3 chipsets
  20691. Bitfields for 8514/A color mix register:
  20692. Bit(s) Description (Table P1046)
  20693. 15-7 reserved
  20694. 6-5 color source
  20695. 00 background color
  20696. 01 foreground color
  20697. 10 CPU data
  20698. 11 display memory
  20699. 4 reserved
  20700. 3-0 mix type
  20701. 0000 negate current color
  20702. 0001 logical zero
  20703. 0010 logical one
  20704. 0011 leave unchanged
  20705. 0100 negate new color
  20706. 0101 current XOR new
  20707. 0110 negate (current XOR new)
  20708. 0111 new color
  20709. 1000 (NOT current) OR (NOT new)
  20710. 1001 current OR (NOT new)
  20711. 1010 (NOT current) OR new
  20712. 1011 current OR new
  20713. 1100 current AND new
  20714. 1101 (NOT current) AND new
  20715. 1110 current AND (NOT new)
  20716. 1111 (NOT current) AND (NOT new)
  20717. --------V-PBAEE------------------------------
  20718. PORT BAEE - ATI Mach32 - ???
  20719. BAEEw RW ???
  20720. --------V-PBEE8BEE9--------------------------
  20721. PORT BEE8-BEE9 - 8514/A and compatible - MULTIFUNCTION CONTROL
  20722. Notes: supported by ATI Mach8 and Mach32 chipsets
  20723. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20724. writes to the registers accessed via this port are pipelined; a NOP
  20725. command (see PORT 9AE8h) is required to ensure correct read-back
  20726. immediately after a write
  20727. BEE8w -W drawing control: multi-function control (see #P1048)
  20728. BEE8w R- (S3) value of register specified by current value of multi-function
  20729. read select register (index 0Fh bits 3-0) (see #P1048)
  20730. (Table P1047)
  20731. Values for index into 8514/A multi-function drawing control registers:
  20732. 00h RW minor axis pixel count
  20733. 01h RW top scissors
  20734. 02h RW left scissors
  20735. 03h RW bottom scissors
  20736. 04h RW right scissors
  20737. 05h -W memory control register
  20738. 08h -W fixed pattern low
  20739. 09h -W fixed pattern high
  20740. 0Ah RW data manipulation control
  20741. ---S3 chipsets---
  20742. 0Dh RW (S3 864/964) miscellaneous 2
  20743. 0Eh RW (S3 801+) miscellaneous
  20744. 0Fh -W (S3 801/805/928) read register select (see #P1049)
  20745. SeeAlso: #P1048
  20746. Bitfields for 8514/A Multi-Function Control registers:
  20747. Bit(s) Description (Table P1048)
  20748. 15-12 register index (see #P1047)
  20749. ---register 00h: minor axis pixel count---
  20750. 11-0 rectangle height - 1
  20751. ---register 01h: top scissors---
  20752. 11-0 top edge of clipping box
  20753. ---register 02h: left scissors---
  20754. 11-0 left edge of clipping box
  20755. ---register 03h: bottom scissors---
  20756. 11-0 bottom edge of clipping box
  20757. ---register 04h: right scissors---
  20758. 11-0 right edge of clipping box
  20759. ---register 05h: memory control---
  20760. ???
  20761. ---register 08h: fixed pattern low---
  20762. 11-8 (S3 Trio32/64) reserved
  20763. 7-6 mix register
  20764. 00 always select Foreground Mix register
  20765. 01 reserved
  20766. 10 mix register selected by CPU data
  20767. 11 mix register selected by display memory value
  20768. 5-0 (S3 Trio32/64) reserved
  20769. ---register 09h: fixed pattern high---
  20770. ???
  20771. ---register 0Ah: data manipulation control---
  20772. ???
  20773. ---register 0Dh: miscellaneous 2---
  20774. 11-7 reserved
  20775. 6-4 source base address
  20776. 000 in first meg of display memory
  20777. 001 in second meg
  20778. 010 in third meg
  20779. 011 in fourth meg
  20780. 3 reserved
  20781. 2-0 destination base address (settings as for bits 6-4)
  20782. ---register 0Eh: miscellaneous---
  20783. 11-10 reserved (0)
  20784. 9 select 32-bit command registers; disable byte and word writes to regs
  20785. (see PORT A2E8h,PORT A6E8h,PORT AAE8h,PORT B2E8h)
  20786. 8 enable color comparison
  20787. 7 don't update bitmap if source color differs from Color Compare register
  20788. (see PORT B2E8h)
  20789. 6 slow Graphics Engine read/modify/write cycle (adds one wait state)
  20790. 5 clipping direction
  20791. =0 draw only inside clip rectangle
  20792. =1 draw only outside clip rectangle
  20793. 4 select upper 16 bits of 32-bit registers in 32 bpp graphics mode
  20794. 3-2 source base address, bits 21-20
  20795. 1-0 destination base address, bits 21-20
  20796. Note: these base addresses are ignored if the corresponding base
  20797. address in register 0Dh is nonzero
  20798. ---register 0Fh: multifunction read select---
  20799. 11-4 reserved
  20800. 3-0 (S3) read select (see #P1049)
  20801. 2-0 (8514/A) read select (see #P1049)
  20802. (Table P1049)
  20803. Values for S3 multifunction read select register:
  20804. 00h PORT BEE8h register 00h
  20805. 01h PORT BEE8h register 01h
  20806. 02h PORT BEE8h register 02h
  20807. 03h PORT BEE8h register 03h
  20808. 04h PORT BEE8h register 04h
  20809. 05h PORT BEE8h register 0Ah
  20810. 06h PORT BEE8h register 0Eh
  20811. 07h PORT 9AE8h (bits 11-0 only)
  20812. ---S3 864/964 only---
  20813. 08h PORT 42E8h (bits 11-0 only)
  20814. 09h PORT 46E8h
  20815. 0Ah PORT BEE8h register 0Dh
  20816. SeeAlso: #P1047,#P1048
  20817. --------X-PC000CFFF--------------------------
  20818. PORT C000-CFFF - PCI Configuration Mechanism 2 - CONFIGURATION SPACE
  20819. Note: to access the configuration space, write the target bus number to
  20820. PORT 0CFAh, then write to the Configuration Space Enable register
  20821. (PORT 0CF8h), and finally read or write the appropriate I/O
  20822. port(s) in the range C000h to CFFFh (where Cxrrh accesses location
  20823. 'rr' in physical device 'x's configuration data)
  20824. SeeAlso: PORT 0CF8h"Mechanism 2",PORT 0CFAh"Mechanism 2"
  20825. SeeAlso: #00878 at INT 1A/AX=B10Ah
  20826. --------d-PC100C1FF--------------------------
  20827. PORT C100-C1FF - Intel Pentium mboard - PCTech RZ1000 EIDE controller
  20828. Desc: the PCI configuration registers for the EIDE controller are visible
  20829. on these ports when the PCI configuration space has been opened via
  20830. ports 0CF8h and 0CFAh
  20831. SeeAlso: PORT 03F0h"RZ1000",PORT 0CF8h,#00878 at INT 1A/AX=B10Ah
  20832. ----------PC200C204--------------------------
  20833. PORT C200-C204 - Intel Pentium mboard ("Neptune" chipset)
  20834. Desc: the PCI configuration registers for the motherboard chipset are visible
  20835. on these ports when the PCI configuration space has been opened via
  20836. ports 0CF8h and 0CFAh
  20837. SeeAlso: #00878 at INT 1A/AX=B10Ah
  20838. --------S-PC220C227--------------------------
  20839. PORT C220-C227 - serial port, description same as 03F8
  20840. --------S-PC228C22F--------------------------
  20841. PORT C228-C22F - serial port, description same as 03F8
  20842. ----------PC244------------------------------
  20843. PORT C244 - Intel Pentium mboard ("Neptune" chipset)
  20844. ----------PC2E0C2EF--------------------------
  20845. PORT C2E0-C2EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  20846. C2E1 RW GPIB (adapter 6)
  20847. --------V-PC2EE------------------------------
  20848. PORT C2EE - ATI Mach32 - ???
  20849. C2EEw RW ???
  20850. --------V-PC6EE------------------------------
  20851. PORT C6EE - ATI Mach32 - SHORT-STROKE VECTOR
  20852. C6EEw -W short-stroke vector
  20853. --------V-PCAEE------------------------------
  20854. PORT CAEE - ATI Mach32 - ???
  20855. CAEEw RW ???
  20856. ----------PCEEE------------------------------
  20857. PORT CEEE - ATI Mach8/Mach32 - DATAPATH CONFIGURATION
  20858. SeeAlso: PORT 8EEEh
  20859. CEEEw -W datapath configuration (see #P1050)
  20860. Bitfields for ATI Mach8/Mach32 datapath configuration:
  20861. Bit(s) Description (Table P1050)
  20862. 15-13 foreground color source
  20863. 000 background color reg
  20864. 001 foreground color reg
  20865. 010 pixel transfer reg
  20866. 011 VRAM BitBlt source
  20867. 101 color pattern shift register
  20868. 12 least-significant byte first
  20869. 9 data width is 16 bits instead of 8 bits
  20870. 8-7 background color source
  20871. 00 background color reg
  20872. 01 foreground color reg
  20873. 10 pixel transfer reg
  20874. 11 VRAM BitBlt source
  20875. 6-5 monochrome data source
  20876. 00 always one
  20877. 01 mono pattern register
  20878. 10 pixel transfer register
  20879. 11 VRAM BitBlt source
  20880. 4 enable drawing
  20881. 2 read color data instead of monochrome data
  20882. 1 enable polygon fill BitBlt
  20883. 0 write data to drawing trajectory instead of reading from trajectory
  20884. --------S-PD220D227--------------------------
  20885. PORT D220-D227 - serial port, description same as 03F8
  20886. SeeAlso: PORT 03F8h,PORT D228h
  20887. --------S-PD228D22F--------------------------
  20888. PORT D228-D22F - serial port, description same as 03F8
  20889. SeeAlso: PORT 03F8h,PORT D220h
  20890. --------V-PD2EE------------------------------
  20891. PORT D2EE - ATI Mach32 - ???
  20892. D2EEw RW ???
  20893. --------V-PDAEEDAEF--------------------------
  20894. PORT DAEE-DAEF - ATI Mach8/Mach32 - SCISSORS REGION (LEFT)
  20895. SeeAlso: PORT 8EE8h,PORT DEEEh"SCISSORS",PORT E2EEh"SCISSORS"
  20896. SeeAlso: PORT E6EEh"SCISSORS"
  20897. DAEEw -W left edge of "scissors" drawing area (bits 11-0)
  20898. --------V-PDEEEDEEF--------------------------
  20899. PORT DEEE-DEEF - ATI Mach8/Mach32 - SCISSORS REGION (TOP)
  20900. SeeAlso: PORT DAEEh"SCISSORS",PORT E2EEh"SCISSORS",PORT E6EEh"SCISSORS"
  20901. DEEEw -W top edge of "scissors" drawing area (bits 11-0)
  20902. ----------PE2E0E2EF--------------------------
  20903. PORT E2E0-E2EF - GPIB (General Purpose Interface Bus, IEEE 488 interface)
  20904. E2E1 RW GPIB (adapter 7)
  20905. --------V-PE2E8E2E9--------------------------
  20906. PORT E2E8-E2E9 - 8514/A and compatible - PIXEL DATA TRANSFER
  20907. Desc: all graphics data to be processed by the Graphics Engine is sent
  20908. through this port
  20909. Notes: supported by ATI Graphics Ultra
  20910. supported by S3 chipsets when PORT 03D4h register 40h bit 0 is set
  20911. E2E8w -W drawing control: pixel data transfer
  20912. E2EAw rW drawing control: pixel data transfer (S3 801+) for 32-bit transfers
  20913. --------V-PE2EEE2EF--------------------------
  20914. PORT E2EE-E2EF - ATI Mach8/Mach32 - SCISSORS REGION (BOTTOM)
  20915. SeeAlso: PORT DAEEh"SCISSORS",PORT DEEEh"SCISSORS",PORT E6EEh"SCISSORS"
  20916. E2EEw -W bottom edge of "scissors" drawing area (bits 11-0)
  20917. --------V-PE6EEE6EF--------------------------
  20918. PORT E6EE-E6EF - ATI Mach8/Mach32 - SCISSORS REGION (RIGHT)
  20919. SeeAlso: PORT DAEEh"SCISSORS",PORT DEEEh"SCISSORS",PORT E2EEh"SCISSORS"
  20920. E6EEw -W right edge of "scissors" drawing area (bits 11-0)
  20921. --------V-PEAE8EAEB--------------------------
  20922. PORT EAE8-EAEB - S3 Trio64 - PATTERN
  20923. Desc: define the position of the top-left corner of an 8x8 pixel pattern
  20924. stored in off-screen memory which is to be used for patterned fill
  20925. commands (trapezoid, polygon, etc.)
  20926. EAE8w RW pattern Y coordinate (bits 11-0)
  20927. EAEAw RW pattern X coordinate (bits 11-0)
  20928. --------V-PFAEE------------------------------
  20929. PORT FAEE - ATI Mach32 - CHIP IDENTIFICATION REGISTER
  20930. SeeAlso: PORT 56EEh"Mach32",PORT 5EEEh"Mach32"
  20931. --------V-PFEEEFEEF--------------------------
  20932. PORT FEEE-FEEF - ATI Mach8/Mach32 - DIRECT LINE DRAW REGISTER
  20933. SeeAlso: PORT 9AEEh
  20934. FEEEw -W direct line-draw register
  20935. --------d-Pxxxx------------------------------
  20936. PORT xxxx - Future Domain TMC-3260 PCI SCSI adapter
  20937. Range: anywhere on 8 byte boundary???
  20938. Note: Future Domain TMC-3260 PCI SCSI adapter is based upon Future Domain
  20939. TMC-36C70 SCSI controller which is a PCI version of the TMC-18C30
  20940. ISA SCSI controller
  20941. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  20942. --------d-Pxxxx------------------------------
  20943. PORT xxxx - AMD Am53C974A PC-SCSI II SCSI adapter
  20944. Range: anywhere, on a 128-port boundary
  20945. SeeAlso: #00925
  20946. +000 R- current transfer count register (low)
  20947. +000 -W start transfer count register (low)
  20948. +004 R- current transfer count register (middle)
  20949. +004 -W start transfer count register (middle)
  20950. +008 RW SCSI FIFO register
  20951. +00C RW SCSI command register
  20952. +010 R- SCSI status register
  20953. +010 -W destination ID
  20954. +014 R- interrupt status
  20955. +014 -W SCSI timeout
  20956. +018 R- internal state
  20957. +018 -W synchronous transfer period
  20958. +01C R- current FIFO/internal state
  20959. +01C -W synchronous offset
  20960. +020 RW control register 1
  20961. +024 -W clock factor
  20962. +028 -W reserved
  20963. +02C RW control register 2
  20964. +030 RW control register 3
  20965. +034 RW control register 4
  20966. +038 R- current transfer count register (high) / ID code
  20967. +038 -W start current transfer count (high)
  20968. +03C reserved
  20969. +040 RW DMA command
  20970. +044d RW DMA starting transfer count (bits 23-0)
  20971. +048d RW DMA starting physical address
  20972. +04C R DMA working byte counter
  20973. +050d R DMA working address counter
  20974. +054 R DMA status register
  20975. +058d RW DMA starting memory descriptor list address
  20976. +05Cd R DMA working memory descriptor list counter
  20977. +070d Rw SCSI bus and control (bits 25-24 and 21-0)
  20978. Notes: the SCSI registers are mapped on DWORD boundaries, even though for most
  20979. only the least-significant byte is used
  20980. see "Am53C974A PCscsi(tm) II Technical Manual, Revision 1.0"
  20981. (file 19113A.PDF) for further details, as well as (file 19084A.PDF)
  20982. --------d-Pxxxx------------------------------
  20983. PORT xxxx - Adaptec AHA-2920 PCI SCSI adapter
  20984. Range: anywhere on 8 byte boundary???
  20985. Note: Adaptec AHA-2920 PCI SCSI adapter is based upon Future Domain TMC-36C70
  20986. SCSI controller which is a PCI version of Future Domain TMC-18C30 ISA
  20987. SCSI controller
  20988. SeeAlso: PORT 0140h-014Fh"Future Domain TMC-16x0"
  20989. --------d-Pxxxx------------------------------
  20990. PORT xxxx - Adaptec AIC-78xx PCI SCSI controller
  20991. Range: anywhere on 256-byte boundary
  20992. Note: Adaptec AIC-78xx SCSI controllers are basically compatible with the
  20993. AIC-777x SCSI controllers
  20994. SeeAlso: PORT 0340h-035Fh"Adaptec AHA-152x",PORT 1C00h-1CBFh"Adaptec AIC-777x"
  20995. +000 RW SCSI sequence control register (SCSISEQ) (see #P0600)
  20996. +001 RW SCSI transfer control register 0 (SXFRCTL0) (see #P0979)
  20997. +002 RW SCSI transfer control register 1 (SXFRCTL1) (see #P0980)
  20998. +003 R- SCSI control signal read register (SCSISIGI) (see #P0603)
  20999. +003 -W SCSI control signal write register (SCSISIGO) (see #P0604)
  21000. +004 RW SCSI rate control register (SCSIRATE) (see #P0981)
  21001. +005 RW SCSI ID register (SCSIID) (see #P0982)
  21002. +006 RW SCSI latched data low register (SCSIDATL)
  21003. read/write causes -ACK to pulse
  21004. +007 RW (Wide SCSI) SCSI latched data high register (SCSIDATH)
  21005. read/write causes -ACK to pulse
  21006. +008 RW SCSI transfer count register (STCNT) (3 bytes long)
  21007. +00B R- SCSI status register 0 (SSTAT0) (see #P0607)
  21008. +00B -W clear SCSI interrupt register 0 (CLRSINT0) (see #P0983)
  21009. +00C R- SCSI status register 1 (SSTAT1) (see #P0609)
  21010. +00C -W clear SCSI interrupt register 1 (CLRSINT1) (see #P0610)
  21011. +00D R- SCSI status register 2 (SSTAT2) (see #P0984)
  21012. +00E R- SCSI status register 3 (SSTAT3) (see #P0612)
  21013. +00F RW SCSI test control register (SCSITEST) (see #P0985)
  21014. +010 RW SCSI interrupt mode register 0 (SIMODE0) (see #P0616)
  21015. +011 RW SCSI interrupt mode register 1 (SIMODE1) (see #P0617)
  21016. +012 RW SCSI data bus low register (SCSIBUSL)
  21017. +013 RW (Wide SCSI) SCSI data bus high register (SCSIBUSH)
  21018. +014d R- SCSI/host address register (SHADDR)
  21019. +018 RW selection timeout timer register (SELTIMER) (see #P0986)
  21020. +019 RW selection/reselection ID register (SELID) (see #P0987)
  21021. +01D ?? (AIC-7870) board control register (BRDCTL) (see #P1051)
  21022. +01E RW (AIC-787x/788x) serial EEPROM control register (SEECTL) (see #P1052)
  21023. +01F RW SCSI block control register (SBLKCTL) (see #P1053)
  21024. +020 RW scratch RAM (64 bytes) (see #P1002)
  21025. +060 RW sequencer control register (SEQCTL) (see #P0989)
  21026. +061 RW sequencer RAM data register (SEQRAM)
  21027. +062w RW sequencer address register (SEQADDR) (see #P0990)
  21028. +064 RW accumulator register (ACCUM)
  21029. +065 RW source index register (SINDEX)
  21030. +066 RW destination index register (DINDEX)
  21031. +069 R- all ones register (ALLONES)
  21032. always reads as FFh
  21033. +06A R- all zeros register (ALLZEROS)
  21034. always reads as 00h
  21035. +06B R- flags register (FLAGS) (see #P0991)
  21036. PhaseEngine processor's flags
  21037. +06C R- source indirect register (SINDIR)
  21038. +06D -W destination indirect register (DINDIR)
  21039. +06E RW function 1 register (FUNCTION1)
  21040. +06F R- "STACK"
  21041. +084 RW DSCommand register (DSCOMMAND) (see #P1054)
  21042. +085 RW bus on/off time register (BUSTIME) (see #P0993)
  21043. +086 RW (AIC-7870) "DSPCISTATUS"
  21044. +087 RW host control register (HCNTRL) (see #P0995)
  21045. +088d RW host address register (HADDR)
  21046. +08C RW host counter register (HCNT) (3 bytes long)
  21047. +090 RW sequence control block (SCB) pointer register (SCBPTR)
  21048. +091 RW interrupt status register (INTSTAT) (see #P0996)
  21049. +092 R- hard error register (ERROR) (see #P0997)
  21050. +092 -W clear interrupt status register (CLRINT) (see #P0998)
  21051. +093 RW DMA FIFO control register (DFCNTRL) (see #P0999)
  21052. +094 R- DMA FIFO status register (DFSTATUS) (see #P1000)
  21053. +099 RW DMA FIFO data register (DFDAT)
  21054. +09A RW SCB auto-increment register (SCBCNT) (see #P1001)
  21055. +09B RW queue in FIFO register (QINFIFO)
  21056. write places the value into the FIFO, read removes
  21057. +09C R- queue in count register (QINCNT)
  21058. number of the SCBs in the queue in
  21059. +09D -W queue out FIFO register (QOUTFIFO)
  21060. read removes the value from the FIFO
  21061. +09E R- queue out count register (QOUTCNT)
  21062. number of the SCBs in the queue out
  21063. +0A0 RW SCB array (32 bytes) (see #P1003)
  21064. Note: AIC-7850 SCSI controllers sporatically get garbage in the MSBs of the
  21065. queue in/out count registers (QINCNT/QOUTCNT)
  21066. Bitfields for AIC-7870 board control register (BRDCTL):
  21067. Bit(s) Description (Table P1051)
  21068. 7 "BRDDAT7"
  21069. (read) (ROM bank 0) internal 68-pin connector (INT68)
  21070. =0 present
  21071. =1 absent
  21072. (read) (ROM bank 1) EPROM present (EPROMPS)
  21073. 6 "BRDDAT6"
  21074. (read) (ROM bank 0) internal 50-pin connector (INT50)
  21075. (read) (ROM bank 1) external 68-pin connector (EXT68)
  21076. =0 present
  21077. =1 absent
  21078. (write) wide termination enable
  21079. 5 (write) "BRDDAT5"
  21080. ROM bank setting
  21081. =0 select bank 0
  21082. =1 select bank 1
  21083. 4 strobe (BRDSTB)
  21084. 3 chip select (BRDCS)
  21085. 2 "BRDRW"
  21086. =0 write
  21087. =1 read
  21088. 1 "BRDCTL1"
  21089. 0 "BRDCTL0"
  21090. Notes: accessing this register requires prior setting of bits 3 and 5 of the
  21091. serial EEPROM control register (SEECTL)
  21092. bit 3 must be set to read/write bits 7-5, and reset afterwards
  21093. bit 4 must be set along with bit 3 for writes, then value must be set
  21094. into the bits 7-5, and then bit 4 must be reset
  21095. to read from bits 7-6 first perform a write operation of bit 5 in order
  21096. to select the ROM bank 0, then bit 2 must be set along with bit 3,
  21097. and then the data can be read
  21098. SeeAlso: #P1052
  21099. Bitfields for AIC-787x/788x serial EEPROM control register (SEECTL):
  21100. Bit(s) Description (Table P1052)
  21101. 7 "EXTARBACK"
  21102. 6 "EXTARBREQ"
  21103. 5 serial EEPROM memory port select? (SEEMS)
  21104. 4 serial EEPROM ready (SEERDY)
  21105. 3 serial EEPROM chip select (SEECS)
  21106. 2 serial EEPROM clock (SEECK)
  21107. 1 serial EEPROM data out (SEEDO)
  21108. 0 serial EEPROM data in (SEEDI)
  21109. Notes: AIC-7873/7883 use 93C56/93C66 serial EEPROM chips, others use 93C46;
  21110. 93C46 serial EEPROM chips have 1024 bits organized into 64 16-bit
  21111. words and use 6 bits to address each word, while 93C56/93C66 chips
  21112. have 2048 bits organized into 128 16-bit words and use 8 bits to
  21113. address each word
  21114. only the first 32 words of serial EEPROM are used by the Adaptec BIOS
  21115. bits 3-0 are connected to the chip select, clock, data out, and data in
  21116. pins of the serial EEPROM respectively
  21117. data in pin of the serial EEPROM can be read through the bit 0 of this
  21118. register after the clock pin goes from high to low
  21119. bit 2 must be pulled high and then low for a minimum of 750 and 250 ns
  21120. to provide clocking for the EEPROM chip
  21121. bit 2 going from low to high causes the EEPROM chip to sample the data
  21122. out pin and initiates the next bit to be sent through the data in pin
  21123. bit 3 must be set for a minimum of 1 mcs with the bit 2 goig high and
  21124. then low for the EEPROM chip to be selected; then the instruction can
  21125. be sent to the EEPROM chip
  21126. instruction can be terminated by taking the EEPROM chip select pin low,
  21127. with the bit 2 going high and low
  21128. bit 5 requests access to the memory port; when access is granted, bit 4
  21129. will be set; during the EEPROM access bit 4 is cleared after writing
  21130. this register and goes high 800 ns later
  21131. SeeAlso: #P1007,#P1051,#P1055,#P1056
  21132. Bitfields for SCSI block control register (SBLKCTL):
  21133. Bit(s) Description (Table P1053)
  21134. 7 diagnostic LED enable (DIAGLEDEN)
  21135. 6 diagnostic LED on (DIAGLEDON)
  21136. 5 auto flush disable (AUTOFLUSHDIS)
  21137. 4 reserved
  21138. 3 select bus (SELBUS)
  21139. =0 select bus A
  21140. =1 select bus B (SELBUSB)
  21141. 2 reserved
  21142. 1 "SELWIDE"
  21143. 0 reserved
  21144. Note: clearing bits 7-6 will take the card out of diagnostic mode and make
  21145. the host adapter LED follow bus activity
  21146. SeeAlso: #P0988
  21147. Bitfields for DSCommand register (DSCOMMAND):
  21148. Bit(s) Description (Table P1054)
  21149. 7 cache threshold enable (CACHETHEN)
  21150. 6 data parity check enable (DPARCKEN)
  21151. 5 memory parity check enable (MPARCKEN)
  21152. 4 external request lock (EXTREQLCK)
  21153. 3-0 reserved
  21154. (Table P1055)
  21155. Values for the 93C56/93C66 serial EEPROM instructions:
  21156. Opcode Function Parameter Description
  21157. 0000xxxxxxb EWDS - disable all programming instructions
  21158. 0001xxxxxxb WRAL D15..D0 write to all registers
  21159. 0010xxxxxxb ERAL - erase all registers
  21160. 0011xxxxxxb EWEN - write enable
  21161. must precede all programming modes
  21162. 01AAAAAAAAb WRITE D15..D0 write register with address A7..A0
  21163. 10AAAAAAAAb READ - read registers starting with address A7..A0
  21164. 11AAAAAAAAb ERASE - erase register with address A7..A0
  21165. SeeAlso: #P1007,#P1052
  21166. Format of the serial EEPROM:
  21167. Address Size Description (Table P1056)
  21168. 00h 16 WORDs SCSI ID configuration (see #P1009)
  21169. 10h WORD BIOS control (see #P1057)
  21170. 11h WORD host adapter control (see #P1058)
  21171. 12h WORD bus release time / host adapter ID (see #P1013)
  21172. 13h WORD maximum targets (see #P1014)
  21173. 14h 11 WORDs reserved
  21174. 1Fh WORD checksum
  21175. SeeAlso: #P1052
  21176. Bitfields for the serial EEPROM BIOS control word:
  21177. Bit(s) Description (Table P1057)
  21178. 15-8 reserved
  21179. 7 extended translation enabled (CFEXTEND)
  21180. 6-5 reserved
  21181. 4 support more than 2 drives (CFSM2DRV)
  21182. 3 reserved
  21183. 2 BIOS enabled (CFBIOSEN)
  21184. 1 support removable drives for boot only (CFSUPREMB)
  21185. 0 support all removable drives (CFSUPREM)
  21186. SeeAlso: #P1056
  21187. Bitfields for the serial EEPROM host adapter control word:
  21188. Bit(s) Description (Table P1058)
  21189. 15-7 reserved
  21190. 6 reset SCSI bus at IC initialization (CFRESETB)
  21191. 5 reserved
  21192. 4 SCSI parity (CFSPARITY)
  21193. 3 SCSI high byte termination (CFWSTERM)
  21194. 2 SCSI low byte termination (CFSTERM)
  21195. 1 (Ultra SCSI) Ultra SCSI speed enable (CFULTRAEN)
  21196. 0 reserved
  21197. SeeAlso: #P0600,#P0979,#P0980,#P0994,#P1056
  21198. --------p-Pxxxx------------------------------
  21199. PORT xxxx - AMD-645 - Power Management Registers
  21200. Range: on any 256-byte boundary
  21201. SeeAlso: #01049
  21202. +000w RC power management status (see #P1059)
  21203. +002w RW power management enable (see #P1060)
  21204. +004w RW power management control (see #P1061)
  21205. +006 unused???
  21206. +008d RW power management timer (24 or 32 bits)
  21207. +00C unused???
  21208. +010d RW processor power management control (see #P1062)
  21209. +014 R- "P_LVL2" processor level 2 -- reading switches to C2 power state
  21210. +015 R- "P_LVL3" processor level 3 -- reading switches to C3 power state
  21211. +016 unused???
  21212. +020w RC general purpose status (see #P1063)
  21213. +022w RW general purpose SCI enable (see #P1064)
  21214. +024w RW general purpose SMI enable (see #P1065)
  21215. +026w RW power supply control (see #P1066)
  21216. +028w RC global power management status (see #P1067)
  21217. +02Aw RW global power management enable (see #P1068)
  21218. +02Cw RW global power management control (see #P1069)
  21219. +02E unused???
  21220. +02F RW SMI command
  21221. writing this port sets the SW_SMI_STS bit (see #P1067,#P1068)
  21222. +030d RC primary activity detection status (see #P1070)
  21223. +034d RW primary activity detection enable (see #P1071)
  21224. +038d RW general purpose timer reload enable (see #P1072)
  21225. +03C unused???
  21226. +040 RW control of general-purpose I/O direction (see #P1073)
  21227. +041 ???
  21228. +042 RW output value for GPIO port (see #P1074)
  21229. +043 RW ???
  21230. +044 RW input value for GPIO port (see #P1075)
  21231. +045 RW ???
  21232. +046w RW output value for general-purpose output port
  21233. +048w RW input value for general-purpose input port
  21234. Bitfields for AMD-645 Power Management Control Status:
  21235. Bit(s) Description (Table P1059)
  21236. 15 wakeup request -- system will transition from suspend to normal working
  21237. 14-12 reserved (0)
  21238. 11 power button override (set when PWRBTN# asserted for more than 4 sec)
  21239. system will transition into "soft off" power state
  21240. 10 RTC alarm occurred
  21241. 9 reserved (0)
  21242. 8 "PB_STS" power button -- PWRBTN# asserted (but for less than 4 sec)
  21243. 7-6 reserved (0)
  21244. 5 "GBL_STS" Global Status
  21245. set by hardware when "BIOS_RLS" set; "BIOS_RLS" cleared by hardware
  21246. when this bit cleared
  21247. 4 system bus requested by any bus master
  21248. 3-1 reserved (0)
  21249. 0 ACPI timer carried into highest bit
  21250. Note: all bits are write-clear: write a 1 bit to acknowledge the
  21251. status and clear that bit
  21252. SeeAlso: #P1060,MEM xxxxh:xxx0h"ACPI"
  21253. Bitfields for AMD-645 Power Management Enable register:
  21254. Bit(s) Description (Table P1060)
  21255. 15-11 reserved (0)
  21256. 10 enable SCI/SMI on RTC alarm
  21257. 9 reserved (0)
  21258. 8 enable SCI/SMI when PB_STS set (see #P1059 bit 8)
  21259. 7-6 reserved
  21260. 5 enable SCI/SMI when GBL_STS set (see #P1059 bit 5)
  21261. 4-1 reserved
  21262. 0 enable SCI/SMI when ACPI timer carries
  21263. SeeAlso: #P1059,#P1061,MEM xxxxh:xxx0h"ACPI"
  21264. Bitfields for AMD-645 Power Management Control register:
  21265. Bit(s) Description (Table P1061)
  21266. 15-14 reserved (0)
  21267. 13 (write) force transition into sleep state (bits 12-10) when set
  21268. (read) always 0
  21269. 12-10 sleep type
  21270. 000 "soft off" (suspend-to-disk)
  21271. 010 power-on suspend
  21272. 0x1 reserved
  21273. 1xx reserved
  21274. 9-3 reserved
  21275. 2 "GLB_RLS" release SCI/SMI lock
  21276. when set, BIOS_STS bit set by hardware; when BIOS_STS cleared,
  21277. hardware clears this bit
  21278. 1 enable transition from suspend to normal working state on bus master
  21279. request
  21280. 0 power management event interrupt type
  21281. 0 generate SMI
  21282. 1 generate SCI
  21283. SeeAlso: #P1059,#P1060
  21284. Bitfields for AMD-645 Processor Power Management Control register:
  21285. Bit(s) Description (Table P1062)
  21286. 31-5 reserved (0)
  21287. 4 enable clock throttling
  21288. 0 = suspend processor on reading P_LVL2 port at offset 14h
  21289. 1 = throttle clock by modulating STPCLK# on reading P_LVL2
  21290. 3-1 throttling duty cycle (proportion of time STPCLK# is asserted)
  21291. 000 reserved
  21292. 001 0 - 1/8
  21293. 010 1/8 - 2/8
  21294. ...
  21295. 111 6/8 - 7/8
  21296. 0 reserved (0)
  21297. SeeAlso: #P1061,#P1062
  21298. Bitfields for AMD-645 General Purpose Status register:
  21299. Bit(s) Description (Table P1063)
  21300. 15-10 reserved (0)
  21301. 9 "USB_STS" USB peripheral generated resume event
  21302. 8 "RI_STS" ring detected (RI# asserted)
  21303. 7 "EXT7_STS" EXTSMI7# pin toggled
  21304. 6-0 "EXT?_STS" EXTSMI6# - EXTSMI0# pins toggled
  21305. SeeAlso: #P1061,#P1064
  21306. Bitfields for AMD-645 General Purpose SCI Enable register:
  21307. Bit(s) Description (Table P1064)
  21308. 15-10 reserved (0)
  21309. 9 enable SCI when USB_STS bit becomes set
  21310. 8 enable SCI when RI_STS bit becomes set
  21311. 7-0 enable SCI when EXT?_STS bit becomes set
  21312. SeeAlso: #P1063,#P1065
  21313. Bitfields for AMD-645 General Purpose SMI Enable register:
  21314. Bit(s) Description (Table P1065)
  21315. 15-10 reserved (0)
  21316. 9 enable SMI when USB_STS bit becomes set
  21317. 8 enable SMI when RI_STS bit becomes set
  21318. 7-0 enable SMI when EXT?_STS bit becomes set
  21319. SeeAlso: #P1063,#P1064,#P1066
  21320. Bitfields for AMD-645 Power Supply Control register:
  21321. Bit(s) Description (Table P1066)
  21322. 15-11 reserved (0)
  21323. 10 enable setting of RI_STS bit to turn on power
  21324. 9 set PB_STS bit to resume from suspend
  21325. 8 set RTC_STS bit to resume from suspend on RTC alarm
  21326. 7-1 reserved (0)
  21327. 0 enable setting of EXT0_STS bit to resume from suspend
  21328. SeeAlso: #P1063,#P1067,#P1068
  21329. Bitfields for AMD-645 PM Global Status register:
  21330. Bit(s) Description (Table P1067)
  21331. 15-7 reserved (0)
  21332. 6 "SW_SMI_STS" SMI_CMD port has been written
  21333. 5 "BIOS_STS" set whenever GLB_RLS bit is set; GLB_RLS is cleared when
  21334. this bit is cleared
  21335. 4 legacy USB event occurred
  21336. 3 GP1 timer timed out
  21337. 2 GP0 timer timed out
  21338. 1 secondary event timer timed out
  21339. 0 "PACT_STS" an enabled primary system activity has occurred (see #P1071)
  21340. Note: this register is write-clear: writing a 1 to a bit clears that bit
  21341. SeeAlso: #P1066
  21342. Bitfields for AMD-645 PM Global Enable register:
  21343. Bit(s) Description (Table P1068)
  21344. 15-7 reserved (0)
  21345. 6 enable SMI when SMI_CMD port is written
  21346. 5 enable SMI when BIOS_STS bit set (see #P1067)
  21347. 4 enable SMI on legacy USB events
  21348. 3 enable SMI when GP1 timer times out
  21349. 2 enable SMI when GP0 timer times out
  21350. 1 enable SMI when secondary event timer times out
  21351. 0 enable SMI on occurrence of any primary activity
  21352. SeeAlso: #P1066,#P1067,#P1069
  21353. Bitfields for AMD-645 PM Global Control ("GLB_CTL") register:
  21354. Bit(s) Description (Table P1069)
  21355. 15-9 reserved
  21356. 8 SMI is active
  21357. 7-5 reserved
  21358. 4 SMI lock enabled (write-clear)
  21359. (must be cleared before bit 8 can be cleared and the next SMI allowed)
  21360. 3 reserved
  21361. 2 type of power button triggering
  21362. 0 generate SCI/SMI on PWRBTN# asserted
  21363. 1 generate SCI/SMI when PWRBTN# becomes deasserted
  21364. (must be clear to comply with ACPI v0.9, but setting it avoids the
  21365. situation where holding the power button for four seconds first wakes
  21366. the system and then puts it into the soft-off state)
  21367. 1 "BIOS_RLS" used by legacy software to release the SCI/SMI lock; when
  21368. set, the GBL_STS bit is set by hardware; when GBL_STS is cleared,
  21369. this bit is cleared by hardware
  21370. 0 enable SMI generation
  21371. SeeAlso: #P1066,#P1067,#P1068,MEM xxxxh:xxx0h"ACPI"
  21372. Bitfields for AMD-645 PM Primary Activity Detect Status register:
  21373. Bit(s) Description (Table P1070)
  21374. 31-8 reserved (0)
  21375. 7 keyboard controller accessed via PORT 0060h
  21376. 6 serial port accessed (via PORT 03F8h-03FFh, 02F8h-02FFh, 03E8h-03EFh,
  21377. or PORT 02E8h-02EFh)
  21378. 5 parallel port accessed (via PORT 0278h-027Fh or PORT 0378h-037Fh)
  21379. 4 video controller accessed
  21380. 3 IDE or Floppy controller accessed
  21381. 2 reserved (0)
  21382. 1 a primary interrupt occurred (see #01049 [offset 44h])
  21383. 0 ISA busmaster or DMA activity occurred
  21384. Note: this register is write-clear: write a 1 to a bit to clear it
  21385. SeeAlso: #P1071,#P1069
  21386. Bitfields for AMD-645 PM Primary Activity Detect Enable register:
  21387. Bit(s) Description (Table P1071)
  21388. 31-8 reserved (0)
  21389. ---set PACT_STS (see #P1067) whenever:
  21390. 7 keyboard controller is accessed via PORT 0060h
  21391. 6 serial port is accessed (via PORT 03F8h-03FFh, 02F8h-02FFh,
  21392. PORT 03E8h-03EFh, or PORT 02E8h-02EFh)
  21393. 5 parallel port is accessed (via PORT 0278h-027Fh or PORT 0378h-037Fh)
  21394. 4 video controller is accessed
  21395. 3 IDE or Floppy controller is accessed
  21396. 2 reserved (0)
  21397. 1 a primary interrupt occurrs (see #01049 [offset 44h])
  21398. 0 ISA busmaster or DMA activity occurrs
  21399. SeeAlso: #P1070,#P1069
  21400. Bitfields for AMD-645 GP Timer Reload Enable register:
  21401. Bit(s) Description (Table P1072)
  21402. 31-8 reserved (0)
  21403. 7 reload GP1 whenever keyboard controller is accessed
  21404. 6 reload GP1 whenever a serial port is accessed
  21405. 5 reserved (0)
  21406. 4 reload GP1 whenever video controller is accessed
  21407. 3 reload GP1 whenever IDE or floppy controller is accessed
  21408. 2-1 reserved (0)
  21409. 0 reload GP0 whenever a primary activity is detected
  21410. SeeAlso: #P1071,#P1070
  21411. Bitfields for AMD-645 GPIO Direction Control register:
  21412. Bit(s) Description (Table P1073)
  21413. 7-5 reserved (0)
  21414. 4 direction of GPIO4 (0 = input, 1 = output)
  21415. this bit sets Pin136, which is always output if configured as GPO_WE#
  21416. 3 direction of GPIO3 (0 = input, 1 = output)
  21417. this bit sets Pin92, which is always an output if configured as GPI_RE#
  21418. 2 direction of GPIO2/I2CD1 (0 = input, 1 = output)
  21419. 1 direction of GPIO1/I2CD2 (0 = input, 1 = output)
  21420. 0 direction of GPIO0 (0 = input, 1 = output)
  21421. SeeAlso: #P1071,#P1074
  21422. Bitfields for AMD-645 GPIO Port Output Value register:
  21423. Bit(s) Description (Table P1074)
  21424. 7-5 reserved
  21425. 4 value for GPIO4 pin (ignored if pin configured as GPO_WE#)
  21426. 3 value for GPIO3 pin (ignored if pin configured as GPI_RE#)
  21427. 2 value for GPIO2/I2CD1 pin
  21428. 1 value for GPIO1/I2CD2 pin
  21429. 0 value for GPIO0 pin
  21430. Note: while these bits can be read back, they only indicate the values which
  21431. are driven onto the pins if configured for output; to read the actual
  21432. input values, use the "input value" register at offset 44h
  21433. (see #P1075)
  21434. SeeAlso: #P1075
  21435. Bitfields for GPIO Port Input Value (EXTSMI_VAL) register:
  21436. Bit(s) Description (Table P1075)
  21437. 7 (if GPIO3 set to input) current EXTSMI7# on XD7 (Pin122)
  21438. 6 (if GPIO3 set to input) current EXTSMI6# on XD6 (Pin121)
  21439. 5 (if GPIO3 set to input) current EXTSMI5# on XD5 (Pin119)
  21440. 4 (if GPIO4 set to input) current EXTSMI4# on XD4 (Pin118)
  21441. (if GPIO4 set to output) current EXTSMI4# on GPIO4 (Pin136)
  21442. 3 (if GPIO3 set to input) current EXTSMI3# on XD3 (Pin117)
  21443. (if GPIO3 set to output) current EXTSMI3# on GPIO3 (Pin92)
  21444. 2 GPIO2 input value
  21445. 1 GPIO1 input value
  21446. 0 GPIO0 input value
  21447. SeeAlso: #P1074
  21448. --------X-Pxxxx------------------------------
  21449. PORT xxxx - AMD-645 - USB
  21450. SeeAlso: #01046 at INT 1A/AX=B10Ah/SF=1106h
  21451. Note: further details are supposedly in the UHCI v1.1 standard
  21452. +000w ?W USB command
  21453. +002w R? USB status
  21454. +004w ?W USB interrupt enable
  21455. +006w ?? frame number
  21456. +008d ?? frame list base address
  21457. +00C ?? Start of Frame Modify
  21458. +00D unused???
  21459. +010w RW Port 1 Status/Control
  21460. +012w RW Port 2 Status/Control
  21461. ----------Pxxxx------------------------------
  21462. PORT xxxx - Ensoniq AudioPCI ES1370 - CONTROL REGISTERS
  21463. Range: anywhere on 64 byte boundary
  21464. +000d RW interrupt/chip select control register (see #P1076)
  21465. +004d R- interrupt/chip select status register (see #P1077)
  21466. +008 RW UART data register (MIDI data)
  21467. +009 -W UART control register (see #P1078)
  21468. +009 R- UART status register (see #P1079)
  21469. +00A RW UART reserved register (see #P1080)
  21470. +00Cd RW memory page register (see #P1081)
  21471. +010d -W CODEC write register (see #P1082)
  21472. +020d RW serial interface control register (see #P1083)
  21473. +024d RW DAC1 channel sample count register (see #P1084)
  21474. +028d RW DAC2 channel sample count register (see #P1084)
  21475. +02Cd RW ADC channel sample count register (see #P1084)
  21476. +030d RW internal memory 1 (see #P1085)
  21477. +034d RW internal memory 2 (see #P1086)
  21478. +038d RW internal memory 3 (see #P1087)
  21479. +03Cd RW internal memory 4 (see #P1088)
  21480. Bitfields for Ensoniq ES1370/ES1371 interrupt/chip select control register:
  21481. Bit(s) Description (Table P1076)
  21482. ---AudioPCI ES1370---
  21483. 31 record buffer transfer disable (ADC stop)
  21484. 30 (bit 0 = 0) general purpose output
  21485. (bit 0 = 1) external IRQ output
  21486. 29 reserved
  21487. 28-16 programmable clock divide ratio (DAC2)
  21488. ---AudioPCI-97 ES1371---
  21489. 31-26 reserved
  21490. 25-24 joystick base I/O address
  21491. 00 = 200h
  21492. 01 = 208h
  21493. 10 = 210h
  21494. 11 = 218h
  21495. 23-20 GPIO pin 3-0 (read-only)
  21496. 19-16 GPIO pin 3-0 output
  21497. ------
  21498. 15 MPEG data format
  21499. 0 = Sony (lrclk high = left channel; data left justified)
  21500. 1 = I2S (lrclk low = left channel; data 1 bit clock delayed)
  21501. ---AudioPCI ES1370---
  21502. 14 CODEC DAC (DAC2) source
  21503. 0 = programmable clock generator
  21504. 1 = MPEG clocks
  21505. 13-12 fixed frequency clock generator frequency (DAC1)
  21506. 00 = 5.512 KHz
  21507. 01 = 11.025 KHz
  21508. 10 = 22.05 KHz
  21509. 11 = 44.1 KHz
  21510. 11 CODEC DACs synchronous with fixed frequency clock generator
  21511. ---AudioPCI-97 ES1371---
  21512. 14 AC97 warm reset
  21513. 13 CCB record transfer disable
  21514. 12 power management level change interrupt enable
  21515. 11 record channel source
  21516. 0 = CODEC ADC
  21517. 1 = I2S
  21518. ------
  21519. 10 CCB voice interrupts enable
  21520. ---AudioPCI ES1370---
  21521. 9 record channel source in serial module
  21522. 0 = CODEC ADC
  21523. 1 = MPEG
  21524. 8 general purpose output
  21525. ---AudioPCI-97 ES1371---
  21526. 9-8 current power down level
  21527. 00-11 = D0-D3
  21528. ------
  21529. 7 memory bus request enable (disables memory access) (test purposes only)
  21530. 6 DAC1 (CODEC FM DAC) playback channel enable
  21531. 5 DAC2 (CODEC DAC) playback channel enable
  21532. 4 CODEC ADC record channel enable
  21533. 3 UART enable
  21534. 2 joystick enable
  21535. ---AudioPCI ES1370---
  21536. 1 CODEC interface enable
  21537. 0 PCI serr signal disable
  21538. ---AudioPCI-97 ES1371---
  21539. 1 crystal clock input disable
  21540. 0 PCI clock input disable
  21541. ------
  21542. Note: this register is addressable as byte, word and dword
  21543. Bitfields for Ensoniq ES1370/ES1371 interrupt/chip select status register:
  21544. Bit(s) Description (Table P1077)
  21545. ---AudioPCI ES1370---
  21546. 31 DAC1, DAC2, ADC, UART or CCB interrupt occurred
  21547. 30-11 reserved
  21548. 10 CODEC busy or register write in progress
  21549. 9 CODEC busy
  21550. 8 CODEC register write in progress
  21551. 7 reserved
  21552. 6-5 CCB voice code (if bit 4 = 1)
  21553. 00 = DAC1
  21554. 01 = DAC2
  21555. 10 = ADC
  21556. 11 = reserved
  21557. ---AudioPCI-97 ES1371---
  21558. 31 DAC1, DAC2, ADC, UART, CCB or power management interrupt occurred
  21559. 30-9 reserved
  21560. 8 CODEC synchronization error
  21561. 7-6 CCB voice code (if bit 4 = 1)
  21562. 00 = DAC1
  21563. 01 = DAC2
  21564. 10 = ADC
  21565. 11 = reserved
  21566. 5 power level interrupt status
  21567. ------
  21568. 4 CCB interrupt status
  21569. 3 UART interrupt status
  21570. 2 DAC1 playback channel interrupt status
  21571. 1 DAC2 playback channel interrupt status
  21572. 0 ADC record channel interrupt status
  21573. Bitfields for Ensoniq ES1370/ES1371 UART control register:
  21574. Bit(s) Description (Table P1078)
  21575. 7 UART receiver interrupt enable
  21576. 6-5 UART transmitter operation
  21577. 01 = Txrdy interrupts enabled
  21578. 4-2 reserved
  21579. 1-0 UART control
  21580. 11 = software reset
  21581. Bitfields for Ensoniq ES1370/ES1371 UART status register:
  21582. Bit(s) Description (Table P1079)
  21583. 7 UART receiver interrupt status
  21584. 6-3 reserved
  21585. 2 UART transmitter interrupt status
  21586. 1 UART transmitter ready
  21587. 0 UART receiver ready
  21588. Bitfields for Ensoniq ES1370/ES1371 UART reserved register:
  21589. Bit(s) Description (Table P1080)
  21590. 7-1 reserved
  21591. 0 UART test mode enable (UART clock switched to PCI bus clock)
  21592. Bitfields for Ensoniq ES1370/ES1371 memory page register:
  21593. Bit(s) Description (Table P1081)
  21594. 31-4 reserved
  21595. 3-0 memory page select (accessed in registers 30h-3Fh)
  21596. 0000 = DAC1 sample bytes 15-0 (lower half buffer)
  21597. 0001 = DAC1 sample bytes 31-16
  21598. 0010 = DAC1 sample bytes 47-32 (upper half buffer)
  21599. 0011 = DAC1 sample bytes 63-48
  21600. 0100 = DAC2 sample bytes 15-0 (lower half buffer)
  21601. 0101 = DAC2 sample bytes 31-16
  21602. 0110 = DAC2 sample bytes 47-32 (upper half buffer)
  21603. 0111 = DAC2 sample bytes 63-48
  21604. 1000 = ADC sample bytes 15-0 (lower half buffer)
  21605. 1001 = ADC sample bytes 31-16
  21606. 1010 = ADC sample bytes 47-32 (upper half buffer)
  21607. 1011 = ADC sample bytes 63-48
  21608. 1100 = DAC1/DAC2 frame information
  21609. 1101 = ADC frame information
  21610. 1110 = UART FIFO
  21611. 1111 = UART FIFO
  21612. Note: this register is addressable as byte, word and dword
  21613. Bitfields for Ensoniq ES1370/ES1371 CODEC write register:
  21614. Bit(s) Description (Table P1082)
  21615. ---AudioPCI ES1370---
  21616. 31-16 reserved
  21617. 15-8 CODEC register index
  21618. ---AudioPCI-97 ES1371---
  21619. 31-24 reserved
  21620. 23 AC97 CODEC read/write
  21621. 0 = write
  21622. 1 = read
  21623. 22-16 AC97 CODEC register index
  21624. ------
  21625. 7-0 CODEC register data
  21626. ---index 16h---
  21627. 1 0 = CODEC power down
  21628. ------
  21629. Note: (AudioPCI ES1370) this register is addressable as word and dword
  21630. Bitfields for Ensoniq ES1370/ES1371 serial interface control register:
  21631. Bit(s) Description (Table P1083)
  21632. 31-22 reserved
  21633. 22 (ES1371) DAC test mode enable (selects I2S lrclk input as source for
  21634. playback and record channels)
  21635. 21-19 sample address counter loop binary offset
  21636. 18-16 sample address counter channel start/restart binary offset
  21637. 15 ADC channel action when sample count reaches zero
  21638. 0 = loop (interrupt set, keep recording)
  21639. 1 = stop (inteerupt set, stop recording)
  21640. 14 DAC2 channel action when sample count reaches zero
  21641. 0 = loop (interrupt set, keep playing)
  21642. 1 = stop (inteerupt set, play last sample)
  21643. 13 DAC1 channel action when sample count reaches zero (same values as
  21644. bit 14)
  21645. 12 DAC2 channel playback pause
  21646. 11 DAC1 channel playback pause
  21647. 10 ADC interrupt enable
  21648. 9 DAC2 interrupt enable
  21649. 8 DAC1 interrupt enable
  21650. 7 DAC1 sample counter reload
  21651. 6 DAC2 sample counter reload
  21652. 5-4 ADC channel data format
  21653. 00 = 8-bit mono
  21654. 01 = 8-bit stereo
  21655. 10 = 16-bit mono
  21656. 11 = 16-bit stereo
  21657. 3-2 DAC2 channel data format (same values as bits 5-4)
  21658. 1-0 DAC1 channel data format (same values as bits 5-4)
  21659. Note: this register is addressable as byte, word and dword
  21660. Bitfields for Ensoniq ES1370/ES1371 DAC1/2/ADC channel sample count register:
  21661. Bit(s) Description (Table P1084)
  21662. 31-16 sample counter current value (read-only)
  21663. 15-0 sample counter (samples - 1)
  21664. Note: these registers are addressable as word and dword
  21665. Bitfields for Ensoniq ES1370/ES1371 internal memory 1:
  21666. Bit(s) Description (Table P1085)
  21667. ---register +00Ch bits 3-0 = 0000---
  21668. 31-0 DAC1 sample bytes 3-0
  21669. ---register +00Ch bits 3-0 = 0001---
  21670. 31-0 DAC1 sample bytes 19-16
  21671. ---register +00Ch bits 3-0 = 0010---
  21672. 31-0 DAC1 sample bytes 35-32
  21673. ---register +00Ch bits 3-0 = 0011---
  21674. 31-0 DAC1 sample bytes 51-48
  21675. ---register +00Ch bits 3-0 = 0100---
  21676. 31-0 DAC2 sample bytes 3-0
  21677. ---register +00Ch bits 3-0 = 0101---
  21678. 31-0 DAC2 sample bytes 19-16
  21679. ---register +00Ch bits 3-0 = 0110---
  21680. 31-0 DAC2 sample bytes 35-32
  21681. ---register +00Ch bits 3-0 = 0111---
  21682. 31-0 DAC2 sample bytes 51-48
  21683. ---register +00Ch bits 3-0 = 1000---
  21684. 31-0 ADC sample bytes 3-0
  21685. ---register +00Ch bits 3-0 = 1001---
  21686. 31-0 ADC sample bytes 19-16
  21687. ---register +00Ch bits 3-0 = 1010---
  21688. 31-0 ADC sample bytes 35-32
  21689. ---register +00Ch bits 3-0 = 1011---
  21690. 31-0 ADC sample bytes 51-48
  21691. ---register +00Ch bits 3-0 = 1100---
  21692. 31-0 DAC1 sample buffer memory address
  21693. ---register +00Ch bits 3-0 = 1101---
  21694. 31-0 ADC sample buffer memory address
  21695. ---register +00Ch bits 3-0 = 1110---
  21696. 31-9 reserved
  21697. 8 UART data valid
  21698. 7-0 UART data received through MIDI interface
  21699. ---register +00Ch bits 3-0 = 1111---
  21700. 31-9 reserved
  21701. 8 UART data valid
  21702. 7-0 UART data received through MIDI interface
  21703. ------
  21704. SeeAlso: #P1086
  21705. Bitfields for Ensoniq ES1370/ES1371 internal memory 2:
  21706. Bit(s) Description (Table P1086)
  21707. ---register +00Ch bits 3-0 = 0000---
  21708. 31-0 DAC1 sample bytes 7-4
  21709. ---register +00Ch bits 3-0 = 0001---
  21710. 31-0 DAC1 sample bytes 23-20
  21711. ---register +00Ch bits 3-0 = 0010---
  21712. 31-0 DAC1 sample bytes 39-36
  21713. ---register +00Ch bits 3-0 = 0011---
  21714. 31-0 DAC1 sample bytes 55-52
  21715. ---register +00Ch bits 3-0 = 0100---
  21716. 31-0 DAC2 sample bytes 7-4
  21717. ---register +00Ch bits 3-0 = 0101---
  21718. 31-0 DAC2 sample bytes 23-20
  21719. ---register +00Ch bits 3-0 = 0110---
  21720. 31-0 DAC2 sample bytes 39-36
  21721. ---register +00Ch bits 3-0 = 0111---
  21722. 31-0 DAC2 sample bytes 55-52
  21723. ---register +00Ch bits 3-0 = 1000---
  21724. 31-0 ADC sample bytes 7-4
  21725. ---register +00Ch bits 3-0 = 1001---
  21726. 31-0 ADC sample bytes 23-20
  21727. ---register +00Ch bits 3-0 = 1010---
  21728. 31-0 ADC sample bytes 39-36
  21729. ---register +00Ch bits 3-0 = 1011---
  21730. 31-0 ADC sample bytes 55-52
  21731. ---register +00Ch bits 3-0 = 1100---
  21732. 31-16 DAC1 dwords transferred
  21733. 15-0 DAC1 dwords in buffer - 1
  21734. ---register +00Ch bits 3-0 = 1101---
  21735. 31-16 ADC dwords transferred
  21736. 15-0 ADC dwords in buffer - 1
  21737. ---register +00Ch bits 3-0 = 1110---
  21738. 31-9 reserved
  21739. 8 UART data valid
  21740. 7-0 UART data received through MIDI interface
  21741. ---register +00Ch bits 3-0 = 1111---
  21742. 31-9 reserved
  21743. 8 UART data valid
  21744. 7-0 UART data received through MIDI interface
  21745. ------
  21746. SeeAlso: #P1085,#P1087
  21747. Bitfields for Ensoniq ES1370/ES1371 internal memory 3:
  21748. Bit(s) Description (Table P1087)
  21749. ---register +00Ch bits 3-0 = 0000---
  21750. 31-0 DAC1 sample bytes 11-8
  21751. ---register +00Ch bits 3-0 = 0001---
  21752. 31-0 DAC1 sample bytes 27-24
  21753. ---register +00Ch bits 3-0 = 0010---
  21754. 31-0 DAC1 sample bytes 43-40
  21755. ---register +00Ch bits 3-0 = 0011---
  21756. 31-0 DAC1 sample bytes 59-56
  21757. ---register +00Ch bits 3-0 = 0100---
  21758. 31-0 DAC2 sample bytes 11-8
  21759. ---register +00Ch bits 3-0 = 0101---
  21760. 31-0 DAC2 sample bytes 27-24
  21761. ---register +00Ch bits 3-0 = 0110---
  21762. 31-0 DAC2 sample bytes 43-40
  21763. ---register +00Ch bits 3-0 = 0111---
  21764. 31-0 DAC2 sample bytes 59-56
  21765. ---register +00Ch bits 3-0 = 1000---
  21766. 31-0 ADC sample bytes 11-8
  21767. ---register +00Ch bits 3-0 = 1001---
  21768. 31-0 ADC sample bytes 27-24
  21769. ---register +00Ch bits 3-0 = 1010---
  21770. 31-0 ADC sample bytes 43-40
  21771. ---register +00Ch bits 3-0 = 1011---
  21772. 31-0 ADC sample bytes 59-56
  21773. ---register +00Ch bits 3-0 = 1100---
  21774. 31-0 DAC2 sample buffer memory address
  21775. ---register +00Ch bits 3-0 = 1101---
  21776. 31-0 reserved
  21777. ---register +00Ch bits 3-0 = 1110---
  21778. 31-9 reserved
  21779. 8 UART data valid
  21780. 7-0 UART data received through MIDI interface
  21781. ---register +00Ch bits 3-0 = 1111---
  21782. 31-9 reserved
  21783. 8 UART data valid
  21784. 7-0 UART data received through MIDI interface
  21785. ------
  21786. SeeAlso: #P1086,#P1088
  21787. Bitfields for Ensoniq ES1370/ES1371 internal memory 4:
  21788. Bit(s) Description (Table P1088)
  21789. ---register +00Ch bits 3-0 = 0000---
  21790. 31-0 DAC1 sample bytes 15-12
  21791. ---register +00Ch bits 3-0 = 0001---
  21792. 31-0 DAC1 sample bytes 31-28
  21793. ---register +00Ch bits 3-0 = 0010---
  21794. 31-0 DAC1 sample bytes 47-44
  21795. ---register +00Ch bits 3-0 = 0011---
  21796. 31-0 DAC1 sample bytes 63-60
  21797. ---register +00Ch bits 3-0 = 0100---
  21798. 31-0 DAC2 sample bytes 15-12
  21799. ---register +00Ch bits 3-0 = 0101---
  21800. 31-0 DAC2 sample bytes 31-28
  21801. ---register +00Ch bits 3-0 = 0110---
  21802. 31-0 DAC2 sample bytes 47-44
  21803. ---register +00Ch bits 3-0 = 0111---
  21804. 31-0 DAC2 sample bytes 63-60
  21805. ---register +00Ch bits 3-0 = 1100---
  21806. 31-16 DAC2 dwords transferred
  21807. 15-0 DAC2 dwords in buffer - 1
  21808. ---register +00Ch bits 3-0 = 1101---
  21809. 31-0 reserved
  21810. ---register +00Ch bits 3-0 = 1110---
  21811. 31-9 reserved
  21812. 8 UART data valid
  21813. 7-0 UART data received through MIDI interface
  21814. ---register +00Ch bits 3-0 = 1111---
  21815. 31-9 reserved
  21816. 8 UART data valid
  21817. 7-0 UART data received through MIDI interface
  21818. ------
  21819. SeeAlso: #P1087
  21820. ----------Pxxxx------------------------------
  21821. PORT xxxx - Ensoniq AudioPCI-97 ES1371 - CONTROL REGISTERS
  21822. Range: anywhere on 64 byte boundary
  21823. +000d RW interrupt/chip select control register (see #P1076)
  21824. +004d R- interrupt/chip select status register (see #P1077)
  21825. +008 RW UART data register (MIDI data)
  21826. +009 -W UART control register (see #P1078)
  21827. +009 R- UART status register (see #P1079)
  21828. +00A RW UART reserved register (see #P1080)
  21829. +00Cd RW memory page register (see #P1081)
  21830. +010d RW sample rate converter interface register (see #P1089)
  21831. +014d -W CODEC write register (see #P1082)
  21832. +014d R- CODEC read register (see #P1090)
  21833. +018d RW legacy control/status register (see #P1091)
  21834. +020d RW serial interface control register (see #P1083)
  21835. +024d RW DAC1 channel sample count register (see #P1084)
  21836. +028d RW DAC2 channel sample count register (see #P1084)
  21837. +02Cd RW ADC channel sample count register (see #P1084)
  21838. +030d RW internal memory 1 (see #P1085)
  21839. +034d RW internal memory 2 (see #P1086)
  21840. +038d RW internal memory 3 (see #P1087)
  21841. +03Cd RW internal memory 4 (see #P1088)
  21842. Bitfields for Ensoniq AudioPCI-97 ES1371 sample rate converter interface:
  21843. Bit(s) Description (Table P1089)
  21844. 31-25 sample rate converter RAM address
  21845. 24 sample rate converter read/write control
  21846. 23 sample rate converter busy (read-only)
  21847. 22 sample rate converter disable
  21848. 21 playback channel 1 accumulator update disable
  21849. 20 playback channel 2 accumulator update disable
  21850. 19 record channel accumulator update disable
  21851. 18-16 reserved
  21852. 15-0 sample rate converter RAM data
  21853. Bitfields for Ensoniq AudioPCI-97 ES1371 CODEC read register:
  21854. Bit(s) Description (Table P1090)
  21855. 31 AC97 CODEC data ready
  21856. 30 AC97 CODEC register access in progress
  21857. 29-24 reserved
  21858. 23 AC97 CODEC read/write
  21859. 0 = write
  21860. 1 = read
  21861. 22-16 AC97 CODEC register index
  21862. 7-0 AC97 CODEC register data
  21863. Bitfields for Ensoniq AudioPCI-97 ES1371 legacy control/status register:
  21864. Bit(s) Description (Table P1091)
  21865. 31 joystick timing
  21866. 0 = ISA
  21867. 1 = fast
  21868. 30 host interrupt blocking enable ???
  21869. 29 Sound Blaster capture address range
  21870. 0 = 220h-22Fh
  21871. 1 = 240h-24Fh
  21872. 28-27 SoundScape base register capture address range
  21873. 00 = 320h-327h
  21874. 01 = 330h-337h
  21875. 10 = 340h-347h
  21876. 11 = 350h-357h
  21877. 26-25 CODEC capture address range
  21878. 00 = 530h-537h
  21879. 01 = reserved
  21880. 10 = E80h-E87h
  21881. 11 = F40h-F47h
  21882. 24 force interrupt
  21883. 23 slave DMA controller event capture enable (address range C0h-DFh)
  21884. 22 slave interrupt controller event capture enable (address range A0h-A1h)
  21885. 21 master DMA controller event capture enable (address range 0h-Fh)
  21886. 20 master interrupt controller event capture enable (address range
  21887. 20h-21h)
  21888. 19 AdLib register event capture enable (address range 388h-38Bh)
  21889. 18 Sound Blaster register event capture enable (address range selected by
  21890. bit 29)
  21891. 17 CODEC event capture enable (address range selected by bits 26-25)
  21892. 16 SoundScape base address register event capture enable (address range
  21893. selected by bits 28-27)
  21894. 15-11 reserved
  21895. 10-8 captured event (read-only)
  21896. 000 = SoundScape base address
  21897. 001 = CODEC
  21898. 010 = Sound Blaster register
  21899. 011 = AdLib register
  21900. 100 = master interrupt controller
  21901. 101 = master DMA controller
  21902. 110 = slave interrupt controller
  21903. 111 = slave DMA controller
  21904. 7-3 captured event I/O address bits 4-0 (read-only)
  21905. 2 captured event read/write (read-only)
  21906. 0 = read
  21907. 1 = write
  21908. 1 reserved
  21909. 0 interrupt flag (write to reset)
  21910. 0 = interrupt occurred
  21911. 0 = interrupt not occurred
  21912. Note: this register is addressable as byte, word and dword
  21913. --------d-Pxxxx------------------------------
  21914. PORT xxxx - Intel 82371, OPTi "Vendetta" (82C750) - Bus Master IDE Registers
  21915. +000 RW command register, primary channel (see #P1092)
  21916. +002 Rw status register, primary channel (see #P1093)
  21917. +004d RW IDE descriptor table pointer, primary channel (see #P1094)
  21918. +008 RW command register, secondary channel (see #P1092)
  21919. +00A Rw status register, secondary channel (see #P1093)
  21920. +00Cd RW IDE descriptor table pointer, secondary channel (see #P1094)
  21921. Bitfields for Intel 82371 Bus Master IDE command register:
  21922. Bit(s) Description (Table P1092)
  21923. 7-4 reserved
  21924. 3 bus master read/write control
  21925. =0 read
  21926. =1 write
  21927. 2-1 reserved
  21928. 0 start/stop bus master
  21929. =1 start
  21930. =0 stop
  21931. SeeAlso: #P1093,#P1094
  21932. Bitfields for Bus Master IDE status register:
  21933. Bit(s) Description (Table P1093)
  21934. 7 (Intel) reserved (0)
  21935. (OPTI "Vendetta") both channels operable at same time (read-only)
  21936. 6 drive 1 is DMA-capable
  21937. 5 drive 0 is DMA_capable
  21938. 4-3 reserved
  21939. 2 IDE interrupt pending
  21940. write 1 to this bit to clear it
  21941. 1 IDE DMA error
  21942. write 1 to this bit to clear it
  21943. 0 bus master IDE active (read-only)
  21944. SeeAlso: #P1092,#P1094
  21945. Bitfields for Bus Master IDE descriptor table pointer register:
  21946. Bit(s) Description (Table P1094)
  21947. 31-2 descriptor table base address bits 31-2
  21948. 1-0 reserved (0)
  21949. Notes: (Intel 82371) the descriptor table must not cross a 4K boundary
  21950. (OPTi "Vendetta") the descriptor table must not cross a 64K boundary
  21951. SeeAlso: #P1092,#P1093
  21952. ----------Pxxxx------------------------------
  21953. PORT xxxx - Intel 82371SB - USB Host I/O Registers
  21954. InstallCheck: see #01215 at INT 1A/AX=B10Ah
  21955. SeeAlso: #01215
  21956. +000w RW USB command register (see #P1095)
  21957. +002w Rw USB status (see #P1096)
  21958. +004w RW USB interrupt enable (see #P1097)
  21959. +006w RW Frame Number (see #P1098)
  21960. +008d RW Frame List Base Address
  21961. (bits 11-0 must be written as zeros)
  21962. +00C RW Start of Frame Modify (see #P1099)
  21963. +010w RW port 1 status/control (see #P1100)
  21964. +012w RW port 2 status/control (see #P1100)
  21965. Bitfields for Intel 82371SB USB command register:
  21966. Bit(s) Description (Table P1095)
  21967. 15-8 reserved
  21968. 7 maximum packet size (0=32 bytes, 1=64 bytes)
  21969. 6 Host Controller has been configured (set by software)
  21970. 5 software debug mode
  21971. 4 force global resume
  21972. 3 enter global suspend mode
  21973. 2 global reset
  21974. 1 host controller reset
  21975. 0 run/stop schedule (0=stop, 1=run)
  21976. SeeAlso: #P1096
  21977. Bitfields for Intel 82371SB USB status register:
  21978. Bit(s) Description (Table P1096)
  21979. 15-6 reserved
  21980. 5 host controller halted
  21981. 4 host controller process error
  21982. 3 PCI bus error
  21983. 2 resume received
  21984. 1 USB error interrupt
  21985. 0 USB interrupt
  21986. Note: to clear a bit in this register, write a 1 to it
  21987. SeeAlso: #P1095
  21988. Bitfields for Intel 82371SB USB interrupt enable register:
  21989. Bit(s) Description (Table P1097)
  21990. 15-4 reserved
  21991. 3 enable short packet interrupts
  21992. 2 enable Interrupt On Complete
  21993. 1 enable Resume
  21994. 0 enable Timeout/CRC
  21995. SeeAlso: #P1096,#P1098
  21996. Bitfields for Intel 82371SB Frame Number register:
  21997. Bit(s) Description (Table P1098)
  21998. 15-11 reserved
  21999. 10-0 Frame List Current Index/Frame Number
  22000. incremented at end of each time frame (~1ms)
  22001. Note: only WORD writes are allowed to this register
  22002. SeeAlso: #P1095,#P1097
  22003. Bitfields for Intel 82371SB Start of Frame Modify register:
  22004. Bit(s) Description (Table P1099)
  22005. 7 reserved
  22006. 6-0 SOF timing value (default 64)
  22007. Note: SOF cycle time equals 11936+timing value
  22008. SeeAlso: #P1095
  22009. Bitfields for Intel 82371SB Port 1/2 status/control register:
  22010. Bit(s) Description (Table P1100)
  22011. 15-13 reserved (0)
  22012. 12 suspend port
  22013. 11-10 reserved
  22014. 9 port in Reset State
  22015. 8 low-speed device is attached (read-only)
  22016. 7 reserved (1)
  22017. 6 resume detected (read-only)
  22018. 5-4 line status (read-only)
  22019. bit 4: D+ signal line
  22020. bit 5: D- signal line
  22021. 3 port enabled/disabled status has changed
  22022. write 1 to this bit to clear it
  22023. 2 port is enabled
  22024. 1 connect status has changed
  22025. write 1 to this bit to clear it
  22026. 0 current connect status (read-only)
  22027. Note: only WORD writes are permitted to this register
  22028. SeeAlso: #P1095
  22029. --------!---CREDITS--------------------------
  22030. Wim Osterholt <wim@djo.wtm.tudelft.nl> Original File
  22031. Chuck Proctor <71534.2302@CompuServe.COM>
  22032. Richard W. Watson <73042.1420@CompuServe.COM>
  22033. Matthias Paul <mpaul@ibh.rwth-aachen.de>
  22034. Serguei Shtyliov <serge.fido@coudert.msk.ru> Xirlink XL-22x
  22035. Serguei Shtyliov <serge.fido@coudert.msk.ru> TMC-16x0 SCSI
  22036. Serguei Shtyliov <serge.fido@coudert.msk.ru> AHA-154x SCSI
  22037. MPU-401 MIDI
  22038. Some of the information in this list was extracted from Frank van Gilluwe's
  22039. _The_Undocumented_PC_, a must-have book for anyone programming down to the
  22040. "bare metal" of a PC.
  22041. Some of the information in this list from the shareware version of Dave
  22042. Williams' DOSREF, v3.0.
  22043. 8514/A hardware ports found in FractInt v18.0 source file FR8514A.ASM
  22044. Compaq QVision info from the _COMPAQ_QVision_Graphics_System_Technical_
  22045. _Reference_Guide_, second edition (October 1993). Compaq part number
  22046. 073A/0693. Much more to come!
  22047. AMI keyboard controller PORT 0064h commands from the American Megatrends, Inc.
  22048. _Version_KF_and_KH_Keyboard_Controller_BIOS_Reference_, available on the
  22049. AMI BBS and american.megatrends.com as KFKHMAN.ZIP.
  22050. Various chipset infos from "Het BIOS Boekje" 2nd edition, by Alle Metzlar,
  22051. ISBN 90-72260-59-7 (1995).
  22052. ATA-3 info from "AT Attachment-3 Interface (ATA-3) Revision 1", dated
  22053. April 21, 1995.
  22054. Some additional EISA info from _EISA_System_Architecture_ (second edition),
  22055. by MindShare, Inc. (Addison-Wesley 1995, ISBN 0-201-40995-X).
  22056. AMI BIOS diagnostics codes (port 0080h) from file CHECKPTS on AMI BBS.
  22057. Some S3 and additional ATI Mach8/Mach32 info from Richard F. Ferraro's
  22058. _Programmer's_Guide_to_the_EGA,_VGA,_and_Super_VGA_Cards_, third edition.
  22059. PCnet-ISA info from _Am79C960_PCnet-ISA(tm)_Technical_Manual_, May 1992,
  22060. available from www.amd.com as 16850B.PDF; additional details from file
  22061. 16907B.PDF.
  22062. PCnet-SCSI info from _Am79C974 PCnet(tm)-SCSI_Combination_Ethernet_and_SCSI_
  22063. _Controller_for_PCI_Systems_, available from www.amd.com as 18681B.PDF.
  22064. PCnet-FAST info from _Am79C971 PCnet(tm)-FAST_Single-Chip_Full-Duplex_10/100_
  22065. _Mbps_Ethernet_Controller_for_PCI_Local_Bus_, available from www.amd.com as
  22066. 20550B.PDF.
  22067. S.M.A.R.T. information from _Self-Monitoring,_Analysis,_and_Reporting_
  22068. _Technology_(S.M.A.R.T.)_(SFF-8035i)_, Revision 2.0, April 1, 1996.
  22069. Available as 8035r2_0.PDF from fission.dt.wdc.com/pub/standards/SFF/.
  22070. A variety of ports from Frank van Giluwe's _The_Undocumented_PC_, second
  22071. edition.
  22072. [many more sources listed in BIBLIO.LST]
  22073. --------!---Admin----------------------------
  22074. Highest Table Number = P1016
  22075. --------!---FILELIST-------------------------
  22076. Please redistribute all of the files comprising the interrupt list (listed at
  22077. the beginning of the list and in INTERRUP.1ST) unmodified as a group, in a
  22078. quartet of archives named INTER60A through INTER60D (preferably the original
  22079. authenticated PKZIP archives), and the utility and hypertext programs in a trio
  22080. of additional archives called INTER60E.ZIP to INTER60G.ZIP.
  22081. Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 Ralf Brown
  22082. --------!---CONTACT_INFO---------------------
  22083. Internet: ralf@pobox.com (currently forwards to ralf@telerama.lm.com)
  22084. FIDO: Ralf Brown 1:129/26.1