12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482 |
- {
- $Id$
- This file is part of the Free Pascal run time library.
- (c) 2000-2003 by Marco van de Voort
- member of the Free Pascal development team.
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
- Header conversions (with FpIoctl macro expansion) for FreeBSD 4.2's
- sys/fbio.h sys/consio.h sys/kbdio.h (together these three form
- machine/console.h) and
- machine/mouse.h
- Converted to use in a future FreeBSD API to get the IDE running on
- the physical console with mousesupport.
- As soon as cross unit inlining is ready, all functions should be made
- inline. (so the FpIoctl and the other very small macro's)
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY;without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- }
- UNIT Console;
- {$packrecords C}
- interface
- {I tried to keep original types as much as possible, only "int" is converted
- to longint because INT is a standard function in TP/FPC}
- TYPE
- uchar = char;
- uint = dword;
- u_int = uint;
- ushort= word;
- short = integer;
- long = dword; {?}
- size_t= longint; {Dunno sure, but it is 32-bit}
- caddr_t= longint; {idem}
- vm_offset_t=dword; {idem}
- {----------------------------- sys/fbio.h ----------------------------------}
- {
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software developed by the Computer Systems
- * Engineering group at Lawrence Berkeley Laboratory under DARPA
- * contract BG 91-66 and contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)fbio.h 8.2 (Berkeley) 10/30/93
- *
- * $FreeBSD: src/sys/sys/fbio.h,v 1.9.2.1 2000/05/05 09:16:16 nyan Exp $
- }
- {
- * Frame buffer FpIoctls (from Sprite, trimmed to essentials for X11).
- }
- {
- * Frame buffer type codes.
- }
- CONST
- FBTYPE_SUN1BW =0; { multibus mono }
- FBTYPE_SUN1COLOR =1; { multibus color }
- FBTYPE_SUN2BW =2; { memory mono }
- FBTYPE_SUN2COLOR =3; { color w/rasterop chips }
- FBTYPE_SUN2GP =4; { GP1/GP2 }
- FBTYPE_SUN5COLOR =5; { RoadRunner accelerator }
- FBTYPE_SUN3COLOR =6; { memory color }
- FBTYPE_MEMCOLOR =7; { memory 24-bit }
- FBTYPE_SUN4COLOR =8; { memory color w/overlay }
- FBTYPE_NOTSUN1 =9; { reserved for customer }
- FBTYPE_NOTSUN2 =10; { reserved for customer }
- FBTYPE_NOTSUN3 =11; { reserved for customer }
- FBTYPE_SUNFAST_COLOR =12; { accelerated 8bit }
- FBTYPE_SUNROP_COLOR =13; { MEMCOLOR with rop h/w }
- FBTYPE_SUNFB_VIDEO =14; { Simple video mixing }
- FBTYPE_RESERVED5 =15; { reserved, do not use }
- FBTYPE_RESERVED4 =16; { reserved, do not use }
- FBTYPE_RESERVED3 =17; { reserved, do not use }
- FBTYPE_RESERVED2 =18; { reserved, do not use }
- FBTYPE_RESERVED1 =19; { reserved, do not use }
- FBTYPE_MDA =20;
- FBTYPE_HERCULES =21;
- FBTYPE_CGA =22;
- FBTYPE_EGA =23;
- FBTYPE_VGA =24;
- FBTYPE_PC98 =25;
- FBTYPE_TGA =26;
- FBTYPE_LASTPLUSONE =27; { max number of fbs (change as add) }
- {
- * Frame buffer descriptor as returned by FBIOGTYPE.
- }
- type fbtype = record
- fb_type : longint; { as defined above }
- fb_height : longint; { in pixels }
- fb_width : longint; { in pixels }
- fb_depth : longint; { bits per pixel }
- fb_cmsize : longint; { size of color map (entries) }
- fb_size : longint; { total size in bytes }
- end;
- Function FBIOGTYPE(fd:longint;var param1 : fbtype):boolean;
- {
- * General purpose structure for passing info in and out of frame buffers
- * (used for gp1) -- unsupported.
- }
- type fbinfo = record
- fb_physaddr : longint; { physical frame buffer address }
- fb_hwwidth : longint; { fb board width }
- fb_hwheight : longint; { fb board height }
- fb_addrdelta : longint; { phys addr diff between boards }
- fb_ropaddr : ^uchar; { fb virtual addr }
- fb_unit : longint; { minor devnum of fb }
- end;
- Function FBIOGINFO(fd:longint;var param1 : fbinfo):boolean;
- type
- {
- * Color map I/O.
- }
- fbcmap = record
- index : longint; { first element (0 origin) }
- count : longint; { number of elements }
- red : ^uchar; { red color map elements }
- green : ^uchar; { green color map elements }
- blue : ^uchar; { blue color map elements }
- end;
- Function FBIOPUTCMAP(fd:longint;var param1 : fbcmap):boolean;
- Function FBIOGETCMAP(fd:longint;var param1 : fbcmap):boolean;
- {
- * Set/get attributes.
- }
- const
- FB_ATTR_NDEVSPECIFIC =8; { no. of device specific values }
- FB_ATTR_NEMUTYPES =4; { no. of emulation types }
- type fbsattr = record
- flags:longint; { flags; see below }
- emu_type : longint; { emulation type (-1 if unused) }
- dev_specific : array[0..FB_ATTR_NDEVSPECIFIC-1] of longint; { catchall }
- end;
- const
- FB_ATTR_AUTOINIT =1; { emulation auto init flag }
- FB_ATTR_DEVSPECIFIC =2; { dev. specific stuff valid flag }
- type fbgattr = record
- real_type : longint; { real device type }
- owner : longint; { PID of owner, 0 if myself }
- _fbtype : fbtype; { fbtype info for real device }
- sattr : fbsattr; { see above }
- emu_types : array [0..FB_ATTR_NEMUTYPES-1] OF Longint; { possible emulations }
- { (-1 if unused) }
- end;
- { FBIOSATTR _IOW('F', 5, struct fbsattr) -- unsupported }
- Function FBIOGATTR(fd:longint;var param1 : fbgattr):boolean;
- {
- * Video control.
- }
- const
- FBVIDEO_OFF =0;
- FBVIDEO_ON =1;
- Function FBIOSVIDEO(fd:longint;var param1 : longint):boolean;
- Function FBIOGVIDEO(fd:longint;var param1 : longint):boolean;
- {
- * Hardware cursor control (for, e.g., CG6). A rather complex and icky
- * interface that smells like VMS, but there it is....
- }
- type fbcurpos = record
- x : short;
- y : short;
- end;
- fbcursor = record
- _set : short; { flags; see below }
- enable : short; { nonzero => cursor on, 0 => cursor off }
- _pos : fbcurpos; { position on display }
- hot : fbcurpos; { hot-spot within cursor }
- cmap : fbcmap; { cursor color map }
- _size : fbcurpos; { number of valid bits in image & mask }
- image : caddr_t; { cursor image bits }
- mask : caddr_t; { cursor mask bits }
- end;
- const
- FB_CUR_SETCUR =$01; { set on/off (i.e., obey fbcursor.enable) }
- FB_CUR_SETPOS =$02; { set position }
- FB_CUR_SETHOT =$04; { set hot-spot }
- FB_CUR_SETCMAP =$08; { set cursor color map }
- FB_CUR_SETSHAPE =$10; { set size & bits }
- FB_CUR_SETALL =(FB_CUR_SETCUR OR FB_CUR_SETPOS OR FB_CUR_SETHOT OR
- FB_CUR_SETCMAP OR FB_CUR_SETSHAPE);
- { controls for cursor attributes & shape (including position) }
- Function FBIOSCURSOR(fd:longint;var param1 : fbcursor):boolean;
- Function FBIOGCURSOR(fd:longint;var param1 : fbcursor):boolean;
- { controls for cursor position only }
- Function FBIOSCURPOS(fd:longint;var param1 : fbcurpos):boolean;
- Function FBIOGCURPOS(fd:longint;var param1 : fbcurpos):boolean;
- { get maximum cursor size }
- Function FBIOGCURMAX(fd:longint;var param1 : fbcurpos):boolean;
- { The new style frame buffer FpIoctls. }
- CONST
- V_INFO_COLOR =(1 SHL 0);
- V_INFO_GRAPHICS =(1 SHL 1);
- V_INFO_LINEAR =(1 SHL 2);
- V_INFO_VESA =(1 SHL 3);
- V_INFO_MM_OTHER =(-1);
- V_INFO_MM_TEXT =0;
- V_INFO_MM_PLANAR =1;
- V_INFO_MM_PACKED =2;
- V_INFO_MM_DIRECT =3;
- V_INFO_MM_CGA =100;
- V_INFO_MM_HGC =101;
- V_INFO_MM_VGAX =102;
- TYPE
- { video mode information block }
- video_info = record
- vi_mode : longint; { mode number, see below }
- vi_flags : longint;
- vi_width : longint;
- vi_height : longint;
- vi_cwidth : longint;
- vi_cheight : longint;
- vi_depth : longint;
- vi_planes : longint;
- vi_window : uint; { physical address }
- vi_window_size : size_t;
- vi_window_gran : size_t;
- vi_buffer : uint; { physical address }
- vi_buffer_size : size_t;
- vi_mem_model : longint;
- { for MM_PACKED and MM_DIRECT only }
- vi_pixel_size : longint; { in bytes }
- { for MM_DIRECT only }
- vi_pixel_fields : array[0..3] of longint; { RGB and reserved fields }
- vi_pixel_fsizes : array[0..3] of longint;
- { reserved }
- vi_reserved : array[0..63] of uchar;
- end;
- video_info_t = video_info;
- const
- KD_OTHER =0; { unknown }
- KD_MONO =1; { monochrome adapter }
- KD_HERCULES =2; { hercules adapter }
- KD_CGA =3; { color graphics adapter }
- KD_EGA =4; { enhanced graphics adapter }
- KD_VGA =5; { video graphics adapter }
- KD_PC98 =6; { PC-98 display }
- KD_TGA =7; { TGA }
- V_ADP_COLOR =(1 SHL 0);
- V_ADP_MODECHANGE=(1 SHL 1);
- V_ADP_STATESAVE =(1 SHL 2);
- V_ADP_STATELOAD =(1 SHL 3);
- V_ADP_FONT =(1 SHL 4);
- V_ADP_PALETTE =(1 SHL 5);
- V_ADP_BORDER =(1 SHL 6);
- V_ADP_VESA =(1 SHL 7);
- V_ADP_PROBED =(1 SHL 16);
- V_ADP_INITIALIZED=(1 SHL 17);
- V_ADP_REGISTERED =(1 SHL 18);
- { adapter infromation block }
- type video_adapter = record
- va_index : longint;
- va_type : longint;
- va_name : pchar;
- va_unit : longint;
- va_minor : longint;
- va_flags : longint;
- va_io_base : longint;
- va_io_size : longint;
- va_crtc_addr : longint;
- va_mem_base : longint;
- va_mem_size : longint;
- va_window : vm_offset_t; { virtual address }
- va_window_size : size_t;
- va_window_gran : size_t;
- va_window_orig : uint;
- va_buffer : vm_offset_t; { virtual address }
- va_buffer_size : size_t;
- va_initial_mode : longint;
- va_initial_bios_mode : longint;
- va_mode : longint;
- va_info : video_info;
- va_line_width : longint;
- va_disp_start : record
- x : longint;
- y : longint;
- end;
- va_token : pointer;
- end;
- video_adapter_t = video_adapter;
- video_adapter_info = record
- va_index : longint;
- va_type : longint;
- va_name : array[0..15] of char;
- va_unit : longint;
- va_flags : longint;
- va_io_base : longint;
- va_io_size : longint;
- va_crtc_addr : longint;
- va_mem_base : longint;
- va_mem_size : longint;
- va_window : uint; { virtual address }
- va_window_size : size_t;
- va_window_gran : size_t;
- va_unused0 : uint;
- va_buffer_size : size_t;
- va_initial_mode : longint;
- va_initial_bios_mode : longint;
- va_mode : longint;
- va_line_width : longint;
- va_disp_start : record
- x : longint;
- y : longint;
- end;
- va_window_orig : uint;
- { reserved }
- va_reserved : array[0..63] OF uchar;
- end;
- video_adapter_info_t = video_adapter_info;
- CONST
- { some useful video adapter index }
- V_ADP_PRIMARY =0;
- V_ADP_SECONDARY =1;
- { video mode numbers }
- M_B40x25 =0; { black & white 40 columns }
- M_C40x25 =1; { color 40 columns }
- M_B80x25 =2; { black & white 80 columns }
- M_C80x25 =3; { color 80 columns }
- M_BG320 =4; { black & white graphics 320x200 }
- M_CG320 =5; { color graphics 320x200 }
- M_BG640 =6; { black & white graphics 640x200 hi-res }
- M_EGAMONO80x25 =7; { ega-mono 80x25 }
- M_CG320_D =13; { ega mode D }
- M_CG640_E =14; { ega mode E }
- M_EGAMONOAPA =15; { ega mode F }
- M_CG640x350 =16; { ega mode 10 }
- M_ENHMONOAPA2 =17; { ega mode F with extended memory }
- M_ENH_CG640 =18; { ega mode 10* }
- M_ENH_B40x25 =19; { ega enhanced black & white 40 columns }
- M_ENH_C40x25 =20; { ega enhanced color 40 columns }
- M_ENH_B80x25 =21; { ega enhanced black & white 80 columns }
- M_ENH_C80x25 =22; { ega enhanced color 80 columns }
- M_VGA_C40x25 =23; { vga 8x16 font on color }
- M_VGA_C80x25 =24; { vga 8x16 font on color }
- M_VGA_M80x25 =25; { vga 8x16 font on mono }
- M_VGA11 =26; { vga 640x480 2 colors }
- M_BG640x480 =26;
- M_VGA12 =27; { vga 640x480 16 colors }
- M_CG640x480 =27;
- M_VGA13 =28; { vga 320x200 256 colors }
- M_VGA_CG320 =28;
- M_VGA_C80x50 =30; { vga 8x8 font on color }
- M_VGA_M80x50 =31; { vga 8x8 font on color }
- M_VGA_C80x30 =32; { vga 8x16 font on color }
- M_VGA_M80x30 =33; { vga 8x16 font on color }
- M_VGA_C80x60 =34; { vga 8x8 font on color }
- M_VGA_M80x60 =35; { vga 8x8 font on color }
- M_VGA_CG640 =36; { vga 640x400 256 color }
- M_VGA_MODEX =37; { vga 320x240 256 color }
- M_VGA_C90x25 =40; { vga 8x16 font on color }
- M_VGA_M90x25 =41; { vga 8x16 font on mono }
- M_VGA_C90x30 =42; { vga 8x16 font on color }
- M_VGA_M90x30 =43; { vga 8x16 font on mono }
- M_VGA_C90x43 =44; { vga 8x8 font on color }
- M_VGA_M90x43 =45; { vga 8x8 font on mono }
- M_VGA_C90x50 =46; { vga 8x8 font on color }
- M_VGA_M90x50 =47; { vga 8x8 font on mono }
- M_VGA_C90x60 =48; { vga 8x8 font on color }
- M_VGA_M90x60 =49; { vga 8x8 font on mono }
- M_ENH_B80x43 =$70; { ega black & white 80x43 }
- M_ENH_C80x43 =$71; { ega color 80x43 }
- M_PC98_80x25 =98; { PC98 text 80x25 }
- M_PC98_80x30 =99; { PC98 text 80x30 }
- M_PC98_EGC640x400 =100; { PC98 graphic 640x400 16 colors }
- M_PC98_PEGC640x400 =101; { PC98 graphic 640x400 256 colors }
- M_PC98_PEGC640x480 =102; { PC98 graphic 640x480 256 colors }
- M_HGC_P0 =$e0; { hercules graphics - page 0 @ B0000 }
- M_HGC_P1 =$e1; { hercules graphics - page 1 @ B8000 }
- M_MCA_MODE =$ff; { monochrome adapter mode }
- M_TEXT_80x25 =200; { generic text modes }
- M_TEXT_80x30 =201;
- M_TEXT_80x43 =202;
- M_TEXT_80x50 =203;
- M_TEXT_80x60 =204;
- M_TEXT_132x25 =205;
- M_TEXT_132x30 =206;
- M_TEXT_132x43 =207;
- M_TEXT_132x50 =208;
- M_TEXT_132x60 =209;
- M_VESA_BASE =$100; { VESA mode number base }
- M_VESA_CG640x400 =$100; { 640x400, 256 color }
- M_VESA_CG640x480 =$101; { 640x480, 256 color }
- M_VESA_800x600 =$102; { 800x600, 16 color }
- M_VESA_CG800x600 =$103; { 800x600, 256 color }
- M_VESA_1024x768 =$104; { 1024x768, 16 color }
- M_VESA_CG1024x768 =$105; { 1024x768, 256 color }
- M_VESA_1280x1024 =$106; { 1280x1024, 16 color }
- M_VESA_CG1280x1024 =$107; { 1280x1024, 256 color }
- M_VESA_C80x60 =$108; { 8x8 font }
- M_VESA_C132x25 =$109; { 8x16 font }
- M_VESA_C132x43 =$10a; { 8x14 font }
- M_VESA_C132x50 =$10b; { 8x8 font }
- M_VESA_C132x60 =$10c; { 8x8 font }
- M_VESA_32K_320 =$10d; { 320x200, 5:5:5 }
- M_VESA_64K_320 =$10e; { 320x200, 5:6:5 }
- M_VESA_FULL_320 =$10f; { 320x200, 8:8:8 }
- M_VESA_32K_640 =$110; { 640x480, 5:5:5 }
- M_VESA_64K_640 =$111; { 640x480, 5:6:5 }
- M_VESA_FULL_640 =$112; { 640x480, 8:8:8 }
- M_VESA_32K_800 =$113; { 800x600, 5:5:5 }
- M_VESA_64K_800 =$114; { 800x600, 5:6:5 }
- M_VESA_FULL_800 =$115; { 800x600, 8:8:8 }
- M_VESA_32K_1024 =$116; { 1024x768, 5:5:5 }
- M_VESA_64K_1024 =$117; { 1024x768, 5:6:5 }
- M_VESA_FULL_1024 =$118; { 1024x768, 8:8:8 }
- M_VESA_32K_1280 =$119; { 1280x1024, 5:5:5 }
- M_VESA_64K_1280 =$11a; { 1280x1024, 5:6:5 }
- M_VESA_FULL_1280 =$11b; { 1280x1024, 8:8:8 }
- M_VESA_MODE_MAX =$1ff;
- type
- video_display_start = record
- x :longint;
- y : longint;
- end;
- video_display_start_t= video_display_start;
- video_color_palette = record
- index : longint; { first element (zero-based) }
- count : longint; { number of elements }
- red : ^uchar; { red }
- green : ^uchar; { green }
- blue : ^uchar; { blue }
- transparent : ^uchar; { may be NULL }
- end;
- video_color_palette_t = video_color_palette;
- { adapter info. }
- Function FBIO_ADAPTER(fd:longint;var param1 : longint):boolean;
- Function FBIO_ADPTYPE(fd:longint;var param1 : longint):boolean;
- Function FBIO_ADPINFO(fd:longint;var param1 : video_adapter_info):boolean;
- { video mode control }
- Function FBIO_MODEINFO(fd:longint;var param1 : video_info):boolean;
- Function FBIO_FINDMODE(fd:longint;var param1 : video_info):boolean;
- Function FBIO_GETMODE(fd:longint;var param1 : longint):boolean;
- Function FBIO_SETMODE(fd:longint;var param1 : longint):boolean;
- { get/set frame buffer window origin }
- Function FBIO_GETWINORG(fd:longint;var param1 : u_int):boolean;
- Function FBIO_SETWINORG(fd:longint;var param1 : u_int):boolean;
- { get/set display start address }
- Function FBIO_GETDISPSTART(fd:longint;var param1 : video_display_start_t):boolean;
- Function FBIO_SETDISPSTART(fd:longint;var param1 : video_display_start_t):boolean;
- { get/set scan line width }
- Function FBIO_GETLINEWIDTH(fd:longint;var param1 : u_int):boolean;
- Function FBIO_SETLINEWIDTH(fd:longint;var param1 : u_int):boolean;
- { color palette control }
- Function FBIO_GETPALETTE(fd:longint;var param1 : video_color_palette_t):boolean;
- Function FBIO_SETPALETTE(fd:longint;var param1 : video_color_palette_t):boolean;
- {----------------------------- sys/consio.h ----------------------------------}
- { version packaged with FreeBSD 4.2-RELEASE
- Translation to FreePascal by Marco van de Voort. (2000-2001), original
- copyright follows:
- * Copyright (c) 1991-1996 Søren Schmidt
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer
- * in this position and unchanged.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $FreeBSD: src/sys/sys/consio.h,v 1.5.2.1 2000/05/05 09:16:15 nyan Exp $
- }
- {$define definconsole}
- {
- * Console FpIoctl commands. Some commands are named as KDXXXX, GIO_XXX, and
- * PIO_XXX, rather than CONS_XXX, for historical and compatibility reasons.
- * Some other CONS_XXX commands are works as wrapper around frame buffer
- * FpIoctl commands FBIO_XXX. Do not try to change all these commands,
- * otherwise we shall have compatibility problems.
- }
- const
- { get/set video mode }
- KD_TEXT =0; { set text mode restore fonts }
- KD_TEXT0 =0; { ditto }
- KD_GRAPHICS =1; { set graphics mode }
- KD_TEXT1 =2; { set text mode !restore fonts }
- KD_PIXEL =3; { set pixel mode }
- Function KDGETMODE(fd:longint;var param1 : longint):boolean;
- Function KDSETMODE(fd:longint;param1 : longint):boolean;
- { set border color }
- Function KDSBORDER(fd:longint;param1 : longint):boolean;
- { set up raster(pixel) text mode }
- type
- scr_size = record
- _scrsize : array[0..2] of longint;
- end;
- scr_size_t = scr_size;
- Function KDRASTER(fd:longint;var param1 : scr_size_t):boolean;
- type
- { get/set screen char map }
- scrmap = record
- _scrmap : array[0..255] of char;
- end;
- scrmap_t = scrmap;
- Function GIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- Function PIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- { get the current text attribute }
- Function GIO_ATTR(fd:longint;var param1 : longint):boolean;
- { get the current text color }
- Function GIO_COLOR(fd:longint;var param1 : longint):boolean;
- { get the adapter type (equivalent to FBIO_ADPTYPE) }
- Function CONS_CURRENT(fd:longint;var param1 : longint):boolean;
- { get the current video mode (equivalent to FBIO_GETMODE) }
- Function CONS_GET(fd:longint;var param1 : longint):boolean;
- { not supported? }
- Function CONS_IO(fd:longint):boolean;
- { set blank time interval }
- Function CONS_BLANKTIME(fd:longint;var param1 : longint):boolean;
- { set/get the screen saver (these FpIoctls are current noop) }
- CONST maxsaver=16;
- type ssaver =record
- name : array[0..maxsaver-1] of char;
- num : Longint;
- time : Long;
- end;
- ssaver_t = ssaver;
- Function CONS_SSAVER(fd:longint;var param1 : ssaver_t):boolean;
- Function CONS_GSAVER(fd:longint;var param1 : ssaver_t):boolean;
- { set the text cursor shape }
- CONST
- CONS_BLINK_CURSOR = (1 shl 0);
- CONS_CHAR_CURSOR = (1 shl 1);
- Function CONS_CURSORTYPE(fd:longint;var param1 : longint):boolean;
- { set the bell type to audible or visual }
- CONST
- CONS_VISUAL_BELL =(1 shl 0);
- CONS_QUIET_BELL =(1 shl 1);
- Function CONS_BELLTYPE(fd:longint;var param1 : longint):boolean;
- { set the history (scroll back) buffer size (in lines) }
- Function CONS_HISTORY(fd:longint;var param1 : longint):boolean;
- { mouse cursor FpIoctl }
- type
- mouse_data = record
- x : longint;
- y : Longint;
- z : longint;
- buttons : longint;
- end;
- mouse_data_t = mouse_data;
- mouse_mode = record
- mode : longint;
- signal : longint;
- end;
- mouse_mode_t = mouse_mode;
- mouse_event = record
- id : Longint; { one based }
- value : longint;
- end;
- mouse_event_t = mouse_event;
- CONST
- MOUSE_SHOW =$01;
- MOUSE_HIDE =$02;
- MOUSE_MOVEABS =$03;
- MOUSE_MOVEREL =$04;
- MOUSE_GETINFO =$05;
- _MOUSE_MODE =$06;
- MOUSE_ACTION =$07;
- MOUSE_MOTION_EVENT =$08;
- MOUSE_BUTTON_EVENT =$09;
- MOUSE_MOUSECHAR =$0a;
- TYPE
- mouse_info = record
- operation : longint;
- u : record
- case integer of
- 0: (data : mouse_data_t);
- 1: (mode : mouse_mode_t);
- 2: (event: mouse_event_t);
- 3: (mouse_char : longint);
- end;
- end;
- mouse_info_t = mouse_info;
- Function CONS_MOUSECTL(fd:longint;var param1 : mouse_info_t):boolean;
- { see if the vty has been idle }
- Function CONS_IDLE(fd:longint;var param1 : longint):boolean;
- { set the screen saver mode }
- CONST
- CONS_LKM_SAVER = 0;
- CONS_USR_SAVER = 1;
- Function CONS_SAVERMODE(fd:longint;var param1 : longint):boolean;
- { start the screen saver }
- Function CONS_SAVERSTART(fd:longint;var param1 : longint):boolean;
- TYPE
- { set/get font data }
- fnt8 = record
- fnt8x8 : array[0..8*256-1] of char;
- end;
- fnt8_t = fnt8;
- fnt14 = record
- fnt8x14: array[0..14*256-1] of char;
- end;
- fnt14_t = fnt14;
- fnt16 = record
- fnt8x16: array[0..16*256-1] of char;
- end;
- fnt16_t = fnt16;
- Function PIO_FONT8x8(fd:longint;var param1 : fnt8_t):boolean;
- Function GIO_FONT8x8(fd:longint;var param1 : fnt8_t):boolean;
- Function PIO_FONT8x14(fd:longint;var param1 : fnt14_t):boolean;
- Function GIO_FONT8x14(fd:longint;var param1 : fnt14_t):boolean;
- Function PIO_FONT8x16(fd:longint;var param1 : fnt16_t):boolean;
- Function GIO_FONT8x16(fd:longint;var param1 : fnt16_t):boolean;
- { get video mode information }
- type colors = record
- fore : char;
- back : char;
- end;
- vid_info = record
- _size : short;
- m_num : short;
- mv_row,
- mv_col : ushort;
- mv_rsz,
- mv_csz : ushort;
- mv_norm,
- mv_rev,
- mv_grfc : colors;
- mv_ovscan : uchar;
- mk_keylock : uchar;
- end;
- vid_info_t = vid_info;
- Function CONS_GETINFO(fd:longint;var param1 : vid_info_t):boolean;
- { get version }
- Function CONS_GETVERS(fd:longint;var param1 : longint):boolean;
- { get the video adapter index (equivalent to FBIO_ADAPTER) }
- Function CONS_CURRENTADP(fd:longint;var param1 : longint):boolean;
- { get the video adapter information (equivalent to FBIO_ADPINFO) }
- Function CONS_ADPINFO(fd:longint;var param1 : video_adapter_info_t):boolean;
- { get the video mode information (equivalent to FBIO_MODEINFO) }
- Function CONS_MODEINFO(fd:longint;var param1 : video_info_t):boolean;
- { find a video mode (equivalent to FBIO_FINDMODE) }
- Function CONS_FINDMODE(fd:longint;var param1 : video_info_t):boolean;
- { set the frame buffer window origin (equivalent to FBIO_SETWINORG) }
- Function CONS_SETWINORG(fd:longint;param1 : longint):boolean;
- { use the specified keyboard }
- Function CONS_SETKBD(fd:longint;param1 : longint):boolean;
- { release the current keyboard }
- Function CONS_RELKBD(fd:longint):boolean;
- { get/set the current terminal emulator info. }
- CONST
- TI_NAME_LEN = 32;
- TI_DESC_LEN = 64;
- TYPE
- term_info = record
- ti_index : Longint;
- ti_flags : longint;
- ti_name : array[0..TI_NAME_LEN-1] of uchar;
- ti_desc : array[0..TI_DESC_LEN-1] of uchar;
- end;
- term_info_t = term_info;
- Function CONS_GETTERM(fd:longint;var param1 : term_info_t):boolean;
- Function CONS_SETTERM(fd:longint;var param1 : term_info_t):boolean;
- {$ifdef PC98}
- Function ADJUST_CLOCK(fd:longint):boolean;
- {$endif}
- {
- * Vty switching FpIoctl commands.
- }
- { get the next available vty }
- Function VT_OPENQRY(fd:longint;var param1 : longint):boolean;
- { set/get vty switching mode }
- const
- VT_AUTO =0; { switching is automatic }
- VT_PROCESS =1; { switching controlled by prog }
- VT_KERNEL =255; { switching controlled in kernel }
- TYPE
- vt_mode = record
- mode : Char;
- waitv : char; { not implemented yet SOS }
- relsig : short;
- acqsig : short;
- frsig : short; { not implemented yet SOS }
- end;
- vtmode_t = vt_mode;
- Function VT_SETMODE(fd:longint;var param1 : vtmode_t):boolean;
- Function VT_GETMODE(fd:longint;var param1 : vtmode_t):boolean;
- { acknowledge release or acquisition of a vty }
- const
- VT_FALSE = 0;
- VT_TRUE = 1;
- VT_ACKACQ = 2;
- Function VT_RELDISP(fd:longint;param1 : longint):boolean;
- { activate the specified vty }
- Function VT_ACTIVATE(fd:longint;param1 : longint):boolean;
- { wait until the specified vty is activate }
- Function VT_WAITACTIVE(fd:longint;param1 : longint):boolean;
- { get the currently active vty }
- Function VT_GETACTIVE(fd:longint;var param1 : longint):boolean;
- { get the index of the vty }
- Function VT_GETINDEX(fd:longint;var param1 : longint):boolean;
- {
- * Video mode switching FpIoctl. See sys/fbio.h for mode numbers.
- }
- Function SW_B40x25(fd:longint):boolean;
- Function SW_C40x25(fd:longint):boolean;
- Function SW_B80x25(fd:longint):boolean;
- Function SW_C80x25(fd:longint):boolean;
- Function SW_BG320(fd:longint):boolean;
- Function SW_CG320(fd:longint):boolean;
- Function SW_BG640(fd:longint):boolean;
- Function SW_EGAMONO80x25(fd:longint):boolean;
- Function SW_CG320_D(fd:longint):boolean;
- Function SW_CG640_E(fd:longint):boolean;
- Function SW_EGAMONOAPA(fd:longint):boolean;
- Function SW_CG640x350(fd:longint):boolean;
- Function SW_ENH_MONOAPA2(fd:longint):boolean;
- Function SW_ENH_CG640(fd:longint):boolean;
- Function SW_ENH_B40x25(fd:longint):boolean;
- Function SW_ENH_C40x25(fd:longint):boolean;
- Function SW_ENH_B80x25(fd:longint):boolean;
- Function SW_ENH_C80x25(fd:longint):boolean;
- Function SW_ENH_B80x43(fd:longint):boolean;
- Function SW_ENH_C80x43(fd:longint):boolean;
- Function SW_MCAMODE(fd:longint):boolean;
- Function SW_VGA_C40x25(fd:longint):boolean;
- Function SW_VGA_C80x25(fd:longint):boolean;
- Function SW_VGA_C80x30(fd:longint):boolean;
- Function SW_VGA_C80x50(fd:longint):boolean;
- Function SW_VGA_C80x60(fd:longint):boolean;
- Function SW_VGA_M80x25(fd:longint):boolean;
- Function SW_VGA_M80x30(fd:longint):boolean;
- Function SW_VGA_M80x50(fd:longint):boolean;
- Function SW_VGA_M80x60(fd:longint):boolean;
- Function SW_VGA11(fd:longint):boolean;
- Function SW_BG640x480(fd:longint):boolean;
- Function SW_VGA12(fd:longint):boolean;
- Function SW_CG640x480(fd:longint):boolean;
- Function SW_VGA13(fd:longint):boolean;
- Function SW_VGA_CG320(fd:longint):boolean;
- Function SW_VGA_CG640(fd:longint):boolean;
- Function SW_VGA_MODEX(fd:longint):boolean;
- Function SW_PC98_80x25(fd:longint):boolean;
- Function SW_PC98_80x30(fd:longint):boolean;
- Function SW_PC98_EGC640x400(fd:longint):boolean;
- Function SW_PC98_PEGC640x400(fd:longint):boolean;
- Function SW_PC98_PEGC640x480(fd:longint):boolean;
- Function SW_VGA_C90x25(fd:longint):boolean;
- Function SW_VGA_M90x25(fd:longint):boolean;
- Function SW_VGA_C90x30(fd:longint):boolean;
- Function SW_VGA_M90x30(fd:longint):boolean;
- Function SW_VGA_C90x43(fd:longint):boolean;
- Function SW_VGA_M90x43(fd:longint):boolean;
- Function SW_VGA_C90x50(fd:longint):boolean;
- Function SW_VGA_M90x50(fd:longint):boolean;
- Function SW_VGA_C90x60(fd:longint):boolean;
- Function SW_VGA_M90x60(fd:longint):boolean;
- Function SW_TEXT_80x25(fd:longint):boolean;
- Function SW_TEXT_80x30(fd:longint):boolean;
- Function SW_TEXT_80x43(fd:longint):boolean;
- Function SW_TEXT_80x50(fd:longint):boolean;
- Function SW_TEXT_80x60(fd:longint):boolean;
- Function SW_TEXT_132x25(fd:longint):boolean;
- Function SW_TEXT_132x30(fd:longint):boolean;
- Function SW_TEXT_132x43(fd:longint):boolean;
- Function SW_TEXT_132x50(fd:longint):boolean;
- Function SW_TEXT_132x60(fd:longint):boolean;
- Function SW_VESA_CG640x400(fd:longint):boolean;
- Function SW_VESA_CG640x480(fd:longint):boolean;
- Function SW_VESA_800x600(fd:longint):boolean;
- Function SW_VESA_CG800x600(fd:longint):boolean;
- Function SW_VESA_1024x768(fd:longint):boolean;
- Function SW_VESA_CG1024x768(fd:longint):boolean;
- Function SW_VESA_1280x1024(fd:longint):boolean;
- Function SW_VESA_CG1280x1024(fd:longint):boolean;
- Function SW_VESA_C80x60(fd:longint):boolean;
- Function SW_VESA_C132x25(fd:longint):boolean;
- Function SW_VESA_C132x43(fd:longint):boolean;
- Function SW_VESA_C132x50(fd:longint):boolean;
- Function SW_VESA_C132x60(fd:longint):boolean;
- Function SW_VESA_32K_320(fd:longint):boolean;
- Function SW_VESA_64K_320(fd:longint):boolean;
- Function SW_VESA_FULL_320(fd:longint):boolean;
- Function SW_VESA_32K_640(fd:longint):boolean;
- Function SW_VESA_64K_640(fd:longint):boolean;
- Function SW_VESA_FULL_640(fd:longint):boolean;
- Function SW_VESA_32K_800(fd:longint):boolean;
- Function SW_VESA_64K_800(fd:longint):boolean;
- Function SW_VESA_FULL_800(fd:longint):boolean;
- Function SW_VESA_32K_1024(fd:longint):boolean;
- Function SW_VESA_64K_1024(fd:longint):boolean;
- Function SW_VESA_FULL_1024(fd:longint):boolean;
- Function SW_VESA_32K_1280(fd:longint):boolean;
- Function SW_VESA_64K_1280(fd:longint):boolean;
- Function SW_VESA_FULL_1280(fd:longint):boolean;
- {----------------------------- sys/kbio.h ----------------------------------}
- { version packaged with FreeBSD 4.2-RELEASE
- Translation to FreePascal by Marco van de Voort. (2000-2001), original
- copyright follows: ( I assume BSD licensed)
- Based on
- * $FreeBSD: src/sys/sys/kbio.h,v 1.5.2.1 2000/10/29 16:59:32 dwmalone Exp $
- }
- { get/set keyboard I/O mode}
- const K_RAW =0; { keyboard returns scancodes}
- K_XLATE =1; { keyboard returns ascii}
- K_CODE =2; { keyboard returns keycodes}
- {After each FpIoctl value, I've put the type of the parameters to be passed:
- @int -> pass a pointer to an int.
- int -> pass pointer(int)
- - -> nothing
- @keymap_t -> pass a pointer to a keymap_t
- etc.
- }
- Function KDGKBMODE(fd:longint;var param1 : longint):boolean;
- Function KDSKBMODE(fd:longint;param1 : longint):boolean;
- { make tone}
- Function KDMKTONE(fd:longint;param1 : longint):boolean;
- { see console.h for the definitions of the following FpIoctls}
- {$ifndef definconsole}
- Function KDGETMODE(fd:longint;var param1 : longint):boolean;
- Function KDSETMODE(fd:longint;param1 : longint):boolean;
- Function KDSBORDER(fd:longint;param1 : longint):boolean;
- {$endif}
- const
- { get/set keyboard lock state}
- CLKED =1; { Caps locked}
- NLKED =2; { Num locked}
- SLKED =4; { Scroll locked}
- ALKED =8; { AltGr locked}
- LOCK_MASK =CLKED or NLKED or SLKED or ALKED;
- Function KDGKBSTATE(fd:longint;var param1 : longint):boolean;
- Function KDSKBSTATE(fd:longint;param1 : longint):boolean;
- { enable/disable I/O access}
- Function KDENABIO(fd:longint):boolean;
- Function KDDISABIO(fd:longint):boolean;
- { make sound}
- Function KIOCSOUND(fd:longint;param1 : longint):boolean;
- Const
- { get keyboard model}
- KB_OTHER =0; { keyboard not known}
- KB_84 =1; { 'old' 84 key AT-keyboard}
- KB_101 =2; { MF-101 or MF-102 keyboard}
- Function KDGKBTYPE(fd:longint;var param1 : longint):boolean;
- const
- { get/set keyboard LED state}
- LED_CAP =1; { Caps lock LED}
- LED_NUM =2; { Num lock LED}
- LED_SCR =4; { Scroll lock LED}
- LED_MASK =LED_CAP or LED_NUM or LED_SCR;
- Function KDGETLED(fd:longint;var param1 : longint):boolean;
- Function KDSETLED(fd:longint;param1 : longint):boolean;
- { set keyboard repeat rate (obsolete, use KDSETREPEAT below)}
- Function KDSETRAD(fd:longint;param1 : longint):boolean;
- { see console.h for the definition of the following FpIoctl}
- {$ifndef definconsole}
- Function KDRASTER(fd:longint;var param1 : scr_size_t):boolean;
- {$endif}
- TYPE
- { get keyboard information}
- keyboard_info = Record
- kb_index : longint; { kbdio index#}
- kb_name : array[0..15] of char; { driver name}
- kb_unit : longint; { unit#}
- kb_type : longint; { KB_84, KB_101, KB_OTHER,...}
- kb_config: longint; { device configuration flags}
- kb_flags : longint; { internal flags}
- end;
- keyboard_info_t=keyboard_info;
- Function KDGKBINFO(fd:longint;var param1 : keyboard_info_t):boolean;
- Type
- { set/get keyboard repeat rate (new interface)}
- keyboard_repeat = record
- kb_repeat: array[0..1] of longint;
- end;
- keyboard_repeat_t = keyboard_repeat;
- Function KDSETREPEAT(fd:longint;var param1 : keyboard_repeat_t):boolean;
- Function KDGETREPEAT(fd:longint;var param1 : keyboard_repeat_t):boolean;
- { get/set key map/accent map/function key strings}
- const
- NUM_KEYS =256; { number of keys in table}
- NUM_STATES =8; { states per key}
- ALTGR_OFFSET =128; { offset for altlock keys}
- NUM_DEADKEYS =15; { number of accent keys}
- NUM_ACCENTCHARS =52; { max number of accent chars}
- NUM_FKEYS =96; { max number of function keys}
- MAXFK =16; { max length of a function key str}
- type
- keyent_t = record
- map : array[0..NUM_STATES-1] of uchar;
- spcl : uchar;
- flgs : uchar;
- end;
- const
- FLAG_LOCK_O =0;
- FLAG_LOCK_C =1;
- FLAG_LOCK_N =2;
- type keymap = record
- n_keys : ushort;
- key : array[0..NUM_KEYS-1] OF keyent_t;
- end;
- keymap_t= keymap;
- CONST
- { defines for "special" keys (spcl bit set in keymap)}
- NOP =$00; { nothing (dead key)}
- LSH =$02; { left shift key}
- RSH =$03; { right shift key}
- CLK =$04; { caps lock key}
- NLK =$05; { num lock key}
- SLK =$06; { scroll lock key}
- LALT =$07; { left alt key}
- BTAB =$08; { backwards tab}
- LCTR =$09; { left control key}
- NEXT =$0a; { switch to next screen}
- F_SCR =$0b; { switch to first screen}
- L_SCR =$1a; { switch to last screen}
- F_FN =$1b; { first function key}
- L_FN =$7a; { last function key}
- { $7b-$7f reserved do not use !}
- RCTR =$80; { right control key}
- RALT =$81; { right alt (altgr) key}
- ALK =$82; { alt lock key}
- ASH =$83; { alt shift key}
- META =$84; { meta key}
- RBT =$85; { boot machine}
- DBG =$86; { call debugger}
- SUSP =$87; { suspend power (APM)}
- SPSC =$88; { toggle splash/text screen}
- DGRA =$89; { grave}
- F_ACC =DGRA; { first accent key}
- DACU =$8a; { acute}
- DCIR =$8b; { circumflex}
- DTIL =$8c; { tilde}
- DMAC =$8d; { macron}
- DBRE =$8e; { breve}
- DDOT =$8f; { dot}
- DUML =$90; { umlaut/diaresis}
- DDIA =$90; { diaresis}
- DSLA =$91; { slash}
- DRIN =$92; { ring}
- DCED =$93; { cedilla}
- DAPO =$94; { apostrophe}
- DDAC =$95; { double acute}
- DOGO =$96; { ogonek}
- DCAR =$97; { caron}
- L_ACC =DCAR; { last accent key}
- STBY =$98; { Go into standby mode (apm)}
- PREV =$99; { switch to previous screen}
- PNC =$9a; { force system panic}
- LSHA =$9b; { left shift key / alt lock}
- RSHA =$9c; { right shift key / alt lock}
- LCTRA =$9d; { left ctrl key / alt lock}
- RCTRA =$9e; { right ctrl key / alt lock}
- LALTA =$9f; { left alt key / alt lock}
- RALTA =$a0; { right alt key / alt lock}
- HALT =$a1; { halt machine}
- PDWN =$a2; { halt machine and power down}
- function kbio_F(x:longint):longint;
- function kbio_S(x:longint):longint;
- function kbio_ACC(x:longint):longint;
- type acc_t = record
- accchar : uchar;
- map : array[0..NUM_ACCENTCHARS-1,0..1] of uchar;
- end;
- accentmap = record
- n_accs : ushort;
- acc : array[0..NUM_DEADKEYS-1] of acc_t
- end;
- accentmap_t = accentmap ;
- keyarg = record
- keynum : ushort;
- key : keyent_t;
- end;
- keyarg_t = keyarg;
- fkeytab = record
- str : array [0..MAXFK-1] of uchar;
- len : uchar;
- end;
- fkeytab_t = fkeytab;
- fkeyarg =record
- keynum : ushort;
- keydef : array[0..MAXFK-1] of char;
- flen :char;
- end;
- fkeyarg_t = fkeyarg;
- Function GETFKEY(fd:longint;var param1 : fkeyarg_t):boolean;
- Function SETFKEY(fd:longint;var param1 : fkeyarg_t):boolean;
- {$ifndef definconsole}
- Function GIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- Function PIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- {$endif}
- Function GIO_KEYMAP(fd:longint;var param1 : keymap_t):boolean;
- Function PIO_KEYMAP(fd:longint;var param1 : keymap_t):boolean;
- Function GIO_DEADKEYMAP(fd:longint;var param1 : accentmap_t):boolean;
- Function PIO_DEADKEYMAP(fd:longint;var param1 : accentmap_t):boolean;
- Function GIO_KEYMAPENT(fd:longint;var param1 : keyarg_t):boolean;
- Function PIO_KEYMAPENT(fd:longint;var param1 : keyarg_t):boolean;
- { flags set to the return value in the KD_XLATE mode}
- Const
- NOKEY =$100; { no key pressed marker}
- FKEY =$200; { function key marker}
- MKEY =$400; { meta key marker (prepend ESC)}
- BKEY =$800; { backtab (ESC [ Z)}
- SPCLKEY =$8000; { special key}
- RELKEY =$4000; { key released}
- ERRKEY =$2000; { error}
- function KEYCHAR(c:longint):longint;
- function KEYFLAGS(c:longint):longint;
- {----------------------------- machine/mouse.h -------------------------------}
- { Based on machine/mouse.h from FreeBSD release 4.2
- * Copyright (c) 1992, 1993 Erik Forsberg.
- * Copyright (c) 1996, 1997 Kazutaka YOKOTA
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
- * NO EVENT SHALL I BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $FreeBSD: src/sys/i386/include/mouse.h,v 1.15.2.1 2000/03/21 14:44:10 yokota Exp $
- }
- { FpIoctls }
- { mouse status block }
- type
- mousestatus = record
- flags : longint; { state change flags }
- button : longint; { button status }
- obutton : longint; { previous button status }
- dx : longint; { x movement }
- dy : longint; { y movement }
- dz : longint; { z movement }
- end;
- mousestatus_t = mousestatus;
- CONST
- { button }
- MOUSE_BUTTON1DOWN =$0001; { left }
- MOUSE_BUTTON2DOWN =$0002; { middle }
- MOUSE_BUTTON3DOWN =$0004; { right }
- MOUSE_BUTTON4DOWN =$0008;
- MOUSE_BUTTON5DOWN =$0010;
- MOUSE_BUTTON6DOWN =$0020;
- MOUSE_BUTTON7DOWN =$0040;
- MOUSE_BUTTON8DOWN =$0080;
- MOUSE_MAXBUTTON =31;
- MOUSE_STDBUTTONS =$0007; { buttons 1-3 }
- MOUSE_EXTBUTTONS =$7ffffff8; { the others (28 of them!) }
- MOUSE_BUTTONS =(MOUSE_STDBUTTONS or MOUSE_EXTBUTTONS);
- { flags }
- MOUSE_STDBUTTONSCHANGED =MOUSE_STDBUTTONS;
- MOUSE_EXTBUTTONSCHANGED =MOUSE_EXTBUTTONS;
- MOUSE_BUTTONSCHANGED =MOUSE_BUTTONS;
- MOUSE_POSCHANGED =$80000000;
- type
- mousehw =record
- buttons : longint; { -1 if unknown }
- iftype : longint; { MOUSE_IF_XXX }
- _type : longint; { mouse/track ball/pad... }
- model : longint; { I/F dependent model ID: MOUSE_MODEL_XXX }
- hwid : longint; { I/F dependent hardware ID}
- { for the PS/2 mouse, it will be PSM_XXX_ID }
- end;
- mousehw_t = mousehw;
- const
- { iftype }
- MOUSE_IF_UNKNOWN =(-1);
- MOUSE_IF_SERIAL =0;
- MOUSE_IF_BUS =1;
- MOUSE_IF_INPORT =2;
- MOUSE_IF_PS2 =3;
- MOUSE_IF_SYSMOUSE =4;
- MOUSE_IF_USB =5;
- { type }
- MOUSE_UNKNOWN =(-1); { should be treated as a mouse }
- MOUSE_MOUSE =0;
- MOUSE_TRACKBALL =1;
- MOUSE_STICK =2;
- MOUSE_PAD =3;
- { model }
- MOUSE_MODEL_UNKNOWN =(-1);
- MOUSE_MODEL_GENERIC =0;
- MOUSE_MODEL_GLIDEPOINT =1;
- MOUSE_MODEL_NETSCROLL =2;
- MOUSE_MODEL_NET =3;
- MOUSE_MODEL_INTELLI =4;
- MOUSE_MODEL_THINK =5;
- MOUSE_MODEL_EASYSCROLL =6;
- MOUSE_MODEL_MOUSEMANPLUS =7;
- MOUSE_MODEL_KIDSPAD =8;
- MOUSE_MODEL_VERSAPAD =9;
- MOUSE_MODEL_EXPLORER =10;
- MOUSE_MODEL_4D =11;
- MOUSE_MODEL_4DPLUS =12;
- type mousemode = record
- protocol : longint; { MOUSE_PROTO_XXX }
- rate : longint; { report rate (per sec), -1 if unknown }
- resolution : longint; { MOUSE_RES_XXX, -1 if unknown }
- accelfactor : longint; { accelation factor (must be 1 or greater) }
- level : longint; { driver operation level }
- packetsize : longint; { the length of the data packet }
- syncmask : array[0..1] of uchar; { sync. data bits in the header byte }
- end;
- type mousemode_t = mousemode;
- { protocol }
- {
- * Serial protocols:
- * Microsoft, MouseSystems, Logitech, MM series, MouseMan, Hitachi Tablet,
- * GlidePoint, IntelliMouse, Thinking Mouse, MouseRemote, Kidspad,
- * VersaPad
- * Bus mouse protocols:
- * bus, InPort
- * PS/2 mouse protocol:
- * PS/2
- }
- const
- MOUSE_PROTO_UNKNOWN =(-1);
- MOUSE_PROTO_MS =0; { Microsoft Serial, 3 bytes }
- MOUSE_PROTO_MSC =1; { Mouse Systems, 5 bytes }
- MOUSE_PROTO_LOGI =2; { Logitech, 3 bytes }
- MOUSE_PROTO_MM =3; { MM series, 3 bytes }
- MOUSE_PROTO_LOGIMOUSEMAN =4; { Logitech MouseMan 3/4 bytes }
- MOUSE_PROTO_BUS =5; { MS/Logitech bus mouse }
- MOUSE_PROTO_INPORT =6; { MS/ATI InPort mouse }
- MOUSE_PROTO_PS2 =7; { PS/2 mouse, 3 bytes }
- MOUSE_PROTO_HITTAB =8; { Hitachi Tablet 3 bytes }
- MOUSE_PROTO_GLIDEPOINT =9; { ALPS GlidePoint, 3/4 bytes }
- MOUSE_PROTO_INTELLI =10; { MS IntelliMouse, 4 bytes }
- MOUSE_PROTO_THINK =11; { Kensignton Thinking Mouse, 3/4 bytes }
- MOUSE_PROTO_SYSMOUSE =12; { /dev/sysmouse }
- MOUSE_PROTO_X10MOUSEREM =13; { X10 MouseRemote, 3 bytes }
- MOUSE_PROTO_KIDSPAD =14; { Genius Kidspad }
- MOUSE_PROTO_VERSAPAD =15; { Interlink VersaPad, 6 bytes }
- MOUSE_RES_UNKNOWN =(-1);
- MOUSE_RES_DEFAULT =0;
- MOUSE_RES_LOW =(-2);
- MOUSE_RES_MEDIUMLOW =(-3);
- MOUSE_RES_MEDIUMHIGH =(-4);
- MOUSE_RES_HIGH =(-5);
- type mousedata = record
- len : longint; { # of data in the buffer }
- buf : array [0..15] of longint; { data buffer }
- end;
- mousedata_t=mousedata;
- mousevar = record
- _var : array[0..15] of longint;
- end;
- type mousevar_t = mousevar;
- Function MOUSE_GETSTATUS(fd:longint;var param1 : mousestatus_t):boolean;
- Function MOUSE_GETHWINFO(fd:longint;var param1 : mousehw_t):boolean;
- Function MOUSE_GETMODE(fd:longint;var param1 : mousemode_t):boolean;
- Function MOUSE_SETMODE(fd:longint;var param1 : mousemode_t):boolean;
- Function MOUSE_GETLEVEL(fd:longint;var param1 : longint):boolean;
- Function MOUSE_SETLEVEL(fd:longint;var param1 : longint):boolean;
- Function MOUSE_GETVARS(fd:longint;var param1 : mousevar_t):boolean;
- Function MOUSE_SETVARS(fd:longint;var param1 : mousevar_t):boolean;
- Function MOUSE_READSTATE(fd:longint;var param1 : mousedata_t):boolean;
- Function MOUSE_READDATA(fd:longint;var param1 : mousedata_t):boolean;
- Function MOUSE_SETRESOLUTION(fd:longint;var param1 : longint):boolean;
- Function MOUSE_SETSCALING(fd:longint;var param1 : longint):boolean;
- Function MOUSE_SETRATE(fd:longint;var param1 : longint):boolean;
- Function MOUSE_GETHWID(fd:longint;var param1 : longint):boolean;
- const
- { magic numbers in var[0] }
- MOUSE_VARS_PS2_SIG = $00325350; { 'PS2' }
- MOUSE_VARS_BUS_SIG = $00535542; { 'BUS' }
- MOUSE_VARS_INPORT_SIG = $00504e49; { 'INP' }
- { Microsoft Serial mouse data packet }
- MOUSE_MSS_PACKETSIZE = 3;
- MOUSE_MSS_SYNCMASK = $40;
- MOUSE_MSS_SYNC = $40;
- MOUSE_MSS_BUTTONS = $30;
- MOUSE_MSS_BUTTON1DOWN = $20; { left }
- MOUSE_MSS_BUTTON2DOWN = $00; { no middle button }
- MOUSE_MSS_BUTTON3DOWN = $10; { right }
- { Logitech MouseMan data packet (M+ protocol) }
- MOUSE_LMAN_BUTTON2DOWN = $20; { middle button, the 4th byte }
- { ALPS GlidePoint extention (variant of M+ protocol) }
- MOUSE_ALPS_BUTTON2DOWN = $20; { middle button, the 4th byte }
- MOUSE_ALPS_TAP = $10; { `tapping' action, the 4th byte }
- { Kinsington Thinking Mouse extention (variant of M+ protocol) }
- MOUSE_THINK_BUTTON2DOWN = $20; { lower-left button, the 4th byte }
- MOUSE_THINK_BUTTON4DOWN = $10; { lower-right button, the 4th byte }
- { MS IntelliMouse (variant of MS Serial) }
- MOUSE_INTELLI_PACKETSIZE = 4;
- MOUSE_INTELLI_BUTTON2DOWN = $10; { middle button in the 4th byte }
- { Mouse Systems Corp. mouse data packet }
- MOUSE_MSC_PACKETSIZE = 5;
- MOUSE_MSC_SYNCMASK = $f8;
- MOUSE_MSC_SYNC = $80;
- MOUSE_MSC_BUTTONS = $07;
- MOUSE_MSC_BUTTON1UP = $04; { left }
- MOUSE_MSC_BUTTON2UP = $02; { middle }
- MOUSE_MSC_BUTTON3UP = $01; { right }
- MOUSE_MSC_MAXBUTTON = 3;
- { MM series mouse data packet }
- MOUSE_MM_PACKETSIZE = 3;
- MOUSE_MM_SYNCMASK = $e0;
- MOUSE_MM_SYNC = $80;
- MOUSE_MM_BUTTONS = $07;
- MOUSE_MM_BUTTON1DOWN = $04; { left }
- MOUSE_MM_BUTTON2DOWN = $02; { middle }
- MOUSE_MM_BUTTON3DOWN = $01; { right }
- MOUSE_MM_XPOSITIVE = $10;
- MOUSE_MM_YPOSITIVE = $08;
- { PS/2 mouse data packet }
- MOUSE_PS2_PACKETSIZE = 3;
- MOUSE_PS2_SYNCMASK = $c8;
- MOUSE_PS2_SYNC = $08;
- MOUSE_PS2_BUTTONS = $07; { = $03 for 2 button mouse }
- MOUSE_PS2_BUTTON1DOWN = $01; { left }
- MOUSE_PS2_BUTTON2DOWN = $04; { middle }
- MOUSE_PS2_BUTTON3DOWN = $02; { right }
- MOUSE_PS2_TAP = MOUSE_PS2_SYNC; { GlidePoint (PS/2) `tapping'
- * Yes! this is the same bit
- * as SYNC!
- }
- MOUSE_PS2_XNEG = $10;
- MOUSE_PS2_YNEG = $20;
- MOUSE_PS2_XOVERFLOW = $40;
- MOUSE_PS2_YOVERFLOW = $80;
- { Logitech MouseMan+ (PS/2) data packet (PS/2++ protocol) }
- MOUSE_PS2PLUS_SYNCMASK = $48;
- MOUSE_PS2PLUS_SYNC = $48;
- MOUSE_PS2PLUS_ZNEG = $08; { sign bit }
- MOUSE_PS2PLUS_BUTTON4DOWN = $10; { 4th button on MouseMan+ }
- MOUSE_PS2PLUS_BUTTON5DOWN = $20;
- { IBM ScrollPoint (PS/2) also uses PS/2++ protocol }
- MOUSE_SPOINT_ZNEG = $80; { sign bits }
- MOUSE_SPOINT_WNEG = $08;
- { MS IntelliMouse (PS/2) data packet }
- MOUSE_PS2INTELLI_PACKETSIZE = 4;
- { some compatible mice have additional buttons }
- MOUSE_PS2INTELLI_BUTTON4DOWN = $40;
- MOUSE_PS2INTELLI_BUTTON5DOWN = $80;
- { MS IntelliMouse Explorer (PS/2) data packet (variation of IntelliMouse) }
- MOUSE_EXPLORER_ZNEG = $08; { sign bit }
- { IntelliMouse Explorer has additional button data in the fourth byte }
- MOUSE_EXPLORER_BUTTON4DOWN = $10;
- MOUSE_EXPLORER_BUTTON5DOWN = $20;
- { Interlink VersaPad (serial I/F) data packet }
- MOUSE_VERSA_PACKETSIZE = 6;
- MOUSE_VERSA_IN_USE = $04;
- MOUSE_VERSA_SYNCMASK = $c3;
- MOUSE_VERSA_SYNC = $c0;
- MOUSE_VERSA_BUTTONS = $30;
- MOUSE_VERSA_BUTTON1DOWN = $20; { left }
- MOUSE_VERSA_BUTTON2DOWN = $00; { middle }
- MOUSE_VERSA_BUTTON3DOWN = $10; { right }
- MOUSE_VERSA_TAP = $08;
- { Interlink VersaPad (PS/2 I/F) data packet }
- MOUSE_PS2VERSA_PACKETSIZE = 6;
- MOUSE_PS2VERSA_IN_USE = $10;
- MOUSE_PS2VERSA_SYNCMASK = $e8;
- MOUSE_PS2VERSA_SYNC = $c8;
- MOUSE_PS2VERSA_BUTTONS = $05;
- MOUSE_PS2VERSA_BUTTON1DOWN = $04; { left }
- MOUSE_PS2VERSA_BUTTON2DOWN = $00; { middle }
- MOUSE_PS2VERSA_BUTTON3DOWN = $01; { right }
- MOUSE_PS2VERSA_TAP = $02;
- { A4 Tech 4D Mouse (PS/2) data packet }
- MOUSE_4D_PACKETSIZE = 3;
- MOUSE_4D_WHEELBITS = $f0;
- { A4 Tech 4D+ Mouse (PS/2) data packet }
- MOUSE_4DPLUS_PACKETSIZE = 3;
- MOUSE_4DPLUS_ZNEG = $04; { sign bit }
- MOUSE_4DPLUS_BUTTON4DOWN = $08;
- { sysmouse extended data packet }
- {
- * /dev/sysmouse sends data in two formats, depending on the protocol
- * level. At the level 0, format is exactly the same as MousSystems'
- * five byte packet. At the level 1, the first five bytes are the same
- * as at the level 0. There are additional three bytes which shows
- * `dz' and the states of additional buttons. `dz' is expressed as the
- * sum of the byte 5 and 6 which contain signed seven bit values.
- * The states of the button 4 though 10 are in the bit 0 though 6 in
- * the byte 7 respectively: 1 indicates the button is up.
- }
- MOUSE_SYS_PACKETSIZE = 8;
- MOUSE_SYS_SYNCMASK = $f8;
- MOUSE_SYS_SYNC = $80;
- MOUSE_SYS_BUTTON1UP = $04; { left, 1st byte }
- MOUSE_SYS_BUTTON2UP = $02; { middle, 1st byte }
- MOUSE_SYS_BUTTON3UP = $01; { right, 1st byte }
- MOUSE_SYS_BUTTON4UP = $0001; { 7th byte }
- MOUSE_SYS_BUTTON5UP = $0002;
- MOUSE_SYS_BUTTON6UP = $0004;
- MOUSE_SYS_BUTTON7UP = $0008;
- MOUSE_SYS_BUTTON8UP = $0010;
- MOUSE_SYS_BUTTON9UP = $0020;
- MOUSE_SYS_BUTTON10UP = $0040;
- MOUSE_SYS_MAXBUTTON = 10;
- MOUSE_SYS_STDBUTTONS = $07;
- MOUSE_SYS_EXTBUTTONS = $7f; { the others }
- { Mouse remote socket }
- _PATH_MOUSEREMOTE ='/var/run/MouseRemote';
- {fbio FpIoctl numbers}
- nr_FBIOGTYPE =$40184600;
- nr_FBIOGINFO =$40184602;
- nr_FBIOPUTCMAP =$80144603;
- nr_FBIOGETCMAP =$80144604;
- nr_FBIOGATTR =$40584606;
- nr_FBIOSVIDEO =$80044607;
- nr_FBIOGVIDEO =$40044608;
- nr_FBIOSCURSOR =$802c4618;
- nr_FBIOGCURSOR =$c02c4619;
- nr_FBIOSCURPOS =$8004461a;
- nr_FBIOGCURPOS =$8004461b;
- nr_FBIOGCURMAX =$4004461c;
- nr_FBIO_ADAPTER =$40044664;
- nr_FBIO_ADPTYPE =$40044665;
- nr_FBIO_ADPINFO =$40a44666;
- nr_FBIO_MODEINFO =$c09c4667;
- nr_FBIO_FINDMODE =$c09c4668;
- nr_FBIO_GETMODE =$40044669;
- nr_FBIO_SETMODE =$8004466a;
- nr_FBIO_GETWINORG =$4004466b;
- nr_FBIO_SETWINORG =$8004466c;
- nr_FBIO_GETDISPSTART =$4008466d;
- nr_FBIO_SETDISPSTART =$8008466e;
- nr_FBIO_GETLINEWIDTH =$4004466f;
- nr_FBIO_SETLINEWIDTH =$80044670;
- nr_FBIO_GETPALETTE =$80184671;
- nr_FBIO_SETPALETTE =$80184672;
- {consio FpIoctl numbers}
- nr_KDGETMODE =$40044b09;
- nr_KDSETMODE =$20004b0a;
- nr_KDSBORDER =$20004b0d;
- nr_KDRASTER =$800c4b64;
- nr_GIO_SCRNMAP =$41006b02;
- nr_PIO_SCRNMAP =$81006b03;
- nr_GIO_ATTR =$40046100;
- nr_GIO_COLOR =$40046300;
- nr_CONS_CURRENT =$40046301;
- nr_CONS_GET =$40046302;
- nr_CONS_IO =$20006303;
- nr_CONS_BLANKTIME =$80046304;
- nr_CONS_SSAVER =$80186305;
- nr_CONS_GSAVER =$c0186306;
- nr_CONS_CURSORTYPE =$80046307;
- nr_CONS_BELLTYPE =$80046308;
- nr_CONS_HISTORY =$80046309;
- nr_CONS_MOUSECTL =$c014630a;
- nr_CONS_IDLE =$4004630b;
- nr_CONS_SAVERMODE =$8004630c;
- nr_CONS_SAVERSTART =$8004630d;
- nr_PIO_FONT8x8 =$88006340;
- nr_GIO_FONT8x8 =$48006341;
- nr_PIO_FONT8x14 =$8e006342;
- nr_GIO_FONT8x14 =$4e006343;
- nr_PIO_FONT8x16 =$90006344;
- nr_GIO_FONT8x16 =$50006345;
- nr_CONS_GETINFO =$c0146349;
- nr_CONS_GETVERS =$4004634a;
- nr_CONS_CURRENTADP =$40046364;
- nr_CONS_ADPINFO =$c0a46365;
- nr_CONS_MODEINFO =$c09c6366;
- nr_CONS_FINDMODE =$c09c6367;
- nr_CONS_SETWINORG =$20006368;
- nr_CONS_SETKBD =$2000636e;
- nr_CONS_RELKBD =$2000636f;
- nr_CONS_GETTERM =$c0686370;
- nr_CONS_SETTERM =$80686371;
- nr_ADJUST_CLOCK =$20007464;
- nr_VT_OPENQRY =$40047601;
- nr_VT_SETMODE =$80087602;
- nr_VT_GETMODE =$40087603;
- nr_VT_RELDISP =$20007604;
- nr_VT_ACTIVATE =$20007605;
- nr_VT_WAITACTIVE =$20007606;
- nr_VT_GETACTIVE =$40047607;
- nr_VT_GETINDEX =$40047608;
- nr_SW_B40x25 =$20005300;
- nr_SW_C40x25 =$20005301;
- nr_SW_B80x25 =$20005302;
- nr_SW_C80x25 =$20005303;
- nr_SW_BG320 =$20005304;
- nr_SW_CG320 =$20005305;
- nr_SW_BG640 =$20005306;
- nr_SW_EGAMONO80x25 =$20005307;
- nr_SW_CG320_D =$2000530d;
- nr_SW_CG640_E =$2000530e;
- nr_SW_EGAMONOAPA =$2000530f;
- nr_SW_CG640x350 =$20005310;
- nr_SW_ENH_MONOAPA2 =$20005311;
- nr_SW_ENH_CG640 =$20005312;
- nr_SW_ENH_B40x25 =$20005313;
- nr_SW_ENH_C40x25 =$20005314;
- nr_SW_ENH_B80x25 =$20005315;
- nr_SW_ENH_C80x25 =$20005316;
- nr_SW_ENH_B80x43 =$20005370;
- nr_SW_ENH_C80x43 =$20005371;
- nr_SW_MCAMODE =$200053ff;
- nr_SW_VGA_C40x25 =$20005317;
- nr_SW_VGA_C80x25 =$20005318;
- nr_SW_VGA_C80x30 =$20005320;
- nr_SW_VGA_C80x50 =$2000531e;
- nr_SW_VGA_C80x60 =$20005322;
- nr_SW_VGA_M80x25 =$20005319;
- nr_SW_VGA_M80x30 =$20005321;
- nr_SW_VGA_M80x50 =$2000531f;
- nr_SW_VGA_M80x60 =$20005323;
- nr_SW_VGA11 =$2000531a;
- nr_SW_BG640x480 =$2000531a;
- nr_SW_VGA12 =$2000531b;
- nr_SW_CG640x480 =$2000531b;
- nr_SW_VGA13 =$2000531c;
- nr_SW_VGA_CG320 =$2000531c;
- nr_SW_VGA_CG640 =$20005324;
- nr_SW_VGA_MODEX =$20005325;
- nr_SW_PC98_80x25 =$20005362;
- nr_SW_PC98_80x30 =$20005363;
- nr_SW_PC98_EGC640x400 =$20005364;
- nr_SW_PC98_PEGC640x400 =$20005365;
- nr_SW_PC98_PEGC640x480 =$20005366;
- nr_SW_VGA_C90x25 =$20005328;
- nr_SW_VGA_M90x25 =$20005329;
- nr_SW_VGA_C90x30 =$2000532a;
- nr_SW_VGA_M90x30 =$2000532b;
- nr_SW_VGA_C90x43 =$2000532c;
- nr_SW_VGA_M90x43 =$2000532d;
- nr_SW_VGA_C90x50 =$2000532e;
- nr_SW_VGA_M90x50 =$2000532f;
- nr_SW_VGA_C90x60 =$20005330;
- nr_SW_VGA_M90x60 =$20005331;
- nr_SW_TEXT_80x25 =$200053c8;
- nr_SW_TEXT_80x30 =$200053c9;
- nr_SW_TEXT_80x43 =$200053ca;
- nr_SW_TEXT_80x50 =$200053cb;
- nr_SW_TEXT_80x60 =$200053cc;
- nr_SW_TEXT_132x25 =$200053cd;
- nr_SW_TEXT_132x30 =$200053ce;
- nr_SW_TEXT_132x43 =$200053cf;
- nr_SW_TEXT_132x50 =$200053d0;
- nr_SW_TEXT_132x60 =$200053d1;
- nr_SW_VESA_CG640x400 =$20005600;
- nr_SW_VESA_CG640x480 =$20005601;
- nr_SW_VESA_800x600 =$20005602;
- nr_SW_VESA_CG800x600 =$20005603;
- nr_SW_VESA_1024x768 =$20005604;
- nr_SW_VESA_CG1024x768 =$20005605;
- nr_SW_VESA_1280x1024 =$20005606;
- nr_SW_VESA_CG1280x1024 =$20005607;
- nr_SW_VESA_C80x60 =$20005608;
- nr_SW_VESA_C132x25 =$20005609;
- nr_SW_VESA_C132x43 =$2000560a;
- nr_SW_VESA_C132x50 =$2000560b;
- nr_SW_VESA_C132x60 =$2000560c;
- nr_SW_VESA_32K_320 =$2000560d;
- nr_SW_VESA_64K_320 =$2000560e;
- nr_SW_VESA_FULL_320 =$2000560f;
- nr_SW_VESA_32K_640 =$20005610;
- nr_SW_VESA_64K_640 =$20005611;
- nr_SW_VESA_FULL_640 =$20005612;
- nr_SW_VESA_32K_800 =$20005613;
- nr_SW_VESA_64K_800 =$20005614;
- nr_SW_VESA_FULL_800 =$20005615;
- nr_SW_VESA_32K_1024 =$20005616;
- nr_SW_VESA_64K_1024 =$20005617;
- nr_SW_VESA_FULL_1024 =$20005618;
- nr_SW_VESA_32K_1280 =$20005619;
- nr_SW_VESA_64K_1280 =$2000561a;
- nr_SW_VESA_FULL_1280 =$2000561b;
- {kbdsio FpIoctl numbers}
- nr_KDGKBMODE =$40044b06;
- nr_KDSKBMODE =$20004b07;
- nr_KDMKTONE =$20004b08;
- {$ifndef definconsole}
- nr_KDGETMODE =$40044b09;
- nr_KDSETMODE =$20004b0a;
- nr_KDSBORDER =$20004b0d;
- {$endif}
- nr_KDGKBSTATE =$40044b13;
- nr_KDSKBSTATE =$20004b14;
- nr_KDENABIO =$20004b3c;
- nr_KDDISABIO =$20004b3d;
- nr_KIOCSOUND =$20004b3f;
- nr_KDGKBTYPE =$40044b40;
- nr_KDGETLED =$40044b41;
- nr_KDSETLED =$20004b42;
- nr_KDSETRAD =$20004b43;
- {$ifndef definconsole}
- nr_KDRASTER =$800c4b64;
- {$endif}
- nr_KDGKBINFO =$40244b65;
- nr_KDSETREPEAT =$80084b66;
- nr_KDGETREPEAT =$40084b67;
- nr_GETFKEY =$c0146b00;
- nr_SETFKEY =$c0146b01;
- {$ifndef definconsole}
- nr_GIO_SCRNMAP =$41006b02;
- nr_PIO_SCRNMAP =$81006b03;
- {$endif}
- nr_GIO_KEYMAP =$4a026b06;
- nr_PIO_KEYMAP =$8a026b07;
- nr_GIO_DEADKEYMAP =$462a6b08;
- nr_PIO_DEADKEYMAP =$862a6b09;
- nr_GIO_KEYMAPENT =$c00c6b0a;
- nr_PIO_KEYMAPENT =$800c6b0b;
- {mouse FpIoctl numbers}
- nr_MOUSE_GETSTATUS =$40184d00;
- nr_MOUSE_GETHWINFO =$40144d01;
- nr_MOUSE_GETMODE =$401c4d02;
- nr_MOUSE_SETMODE =$801c4d03;
- nr_MOUSE_GETLEVEL =$40044d04;
- nr_MOUSE_SETLEVEL =$80044d05;
- nr_MOUSE_GETVARS =$40404d06;
- nr_MOUSE_SETVARS =$80404d07;
- nr_MOUSE_READSTATE =$c0444d08;
- nr_MOUSE_READDATA =$c0444d09;
- nr_MOUSE_SETRESOLUTION =$80044d0a;
- nr_MOUSE_SETSCALING =$80044d0b;
- nr_MOUSE_SETRATE =$80044d0c;
- nr_MOUSE_GETHWID =$40044d0d;
- {------------- Added procedures ---------------}
- function physicalconsole(fd:longint) : boolean;
- IMPLEMENTATION
- Uses BaseUnix,termio;
- function physicalconsole(fd:longint) : boolean;
- var name:string;
- begin
- if (isatty(fd)<>-1) then
- begin
- name:=ttyname(fd);
- if Copy(name,1,8)<>'/dev/tty' then
- physicalconsole:=false {isatty is true, but not /dev/tty.
- Could be /dev/pts support, but
- I reserve the case}
- else
- begin
- if name[9]='v' then {ttyv is phys console. see /etc/ttys}
- physicalconsole:=true
- else
- physicalconsole:=false;
- end;
- end
- else
- physicalconsole:=false; {Not a tty, then I don't know what it is}
- end;
- {other macros (not FpIoctl)}
- function KEYCHAR(c:longint):longint;
- begin
- c:=c and $FF;
- end;
- function KEYFLAGS(c:longint):longint;
- begin
- c:=c and NOT $FF;
- end;
- function kbio_F(x:longint):longint;
- begin
- kbio_f:=x+F_FN-1;
- end;
- function kbio_S(x:longint):longint;
- begin
- kbio_S:=x+F_SCR-1;
- end;
- function kbio_ACC(x:longint):longint;
- begin
- kbio_ACC:=x+F_ACC;
- end;
- {fbio.h FpIoctl's}
- Function FBIOGTYPE(fd:longint;var param1 : fbtype):boolean;
- {IOR('F',0,sizeof(struct fbtype) }
- Begin
- FBIOGTYPE:=FpIoctl(fd,nr_FBIOGTYPE,@param1)=0;
- end;
- Function FBIOGINFO(fd:longint;var param1 : fbinfo):boolean;
- {IOR('F',2,sizeof(struct fbinfo) }
- Begin
- FBIOGINFO:=FpIoctl(fd,nr_FBIOGINFO,@param1)=0;
- end;
- Function FBIOPUTCMAP(fd:longint;var param1 : fbcmap):boolean;
- {IOW('F',3,sizeof(struct fbcmap) }
- Begin
- FBIOPUTCMAP:=FpIoctl(fd,nr_FBIOPUTCMAP,@param1)=0;
- end;
- Function FBIOGETCMAP(fd:longint;var param1 : fbcmap):boolean;
- {IOW('F',4,sizeof(struct fbcmap) }
- Begin
- FBIOGETCMAP:=FpIoctl(fd,nr_FBIOGETCMAP,@param1)=0;
- end;
- Function FBIOGATTR(fd:longint;var param1 : fbgattr):boolean;
- {IOR('F',6,sizeof(struct fbgattr) }
- Begin
- FBIOGATTR:=FpIoctl(fd,nr_FBIOGATTR,@param1)=0;
- end;
- Function FBIOSVIDEO(fd:longint;var param1 : longint):boolean;
- {IOW('F',7,sizeof(int) }
- Begin
- FBIOSVIDEO:=FpIoctl(fd,nr_FBIOSVIDEO,@param1)=0;
- end;
- Function FBIOGVIDEO(fd:longint;var param1 : longint):boolean;
- {IOR('F',8,sizeof(int) }
- Begin
- FBIOGVIDEO:=FpIoctl(fd,nr_FBIOGVIDEO,@param1)=0;
- end;
- Function FBIOSCURSOR(fd:longint;var param1 : fbcursor):boolean;
- {IOW('F',24,sizeof(struct fbcursor) }
- Begin
- FBIOSCURSOR:=FpIoctl(fd,nr_FBIOSCURSOR,@param1)=0;
- end;
- Function FBIOGCURSOR(fd:longint;var param1 : fbcursor):boolean;
- {IOWR('F',25,sizeof(struct fbcursor) }
- Begin
- FBIOGCURSOR:=FpIoctl(fd,nr_FBIOGCURSOR,@param1)=0;
- end;
- Function FBIOSCURPOS(fd:longint;var param1 : fbcurpos):boolean;
- {IOW('F',26,sizeof(struct fbcurpos) }
- Begin
- FBIOSCURPOS:=FpIoctl(fd,nr_FBIOSCURPOS,@param1)=0;
- end;
- Function FBIOGCURPOS(fd:longint;var param1 : fbcurpos):boolean;
- {IOW('F',27,sizeof(struct fbcurpos) }
- Begin
- FBIOGCURPOS:=FpIoctl(fd,nr_FBIOGCURPOS,@param1)=0;
- end;
- Function FBIOGCURMAX(fd:longint;var param1 : fbcurpos):boolean;
- {IOR('F',28,sizeof(struct fbcurpos) }
- Begin
- FBIOGCURMAX:=FpIoctl(fd,nr_FBIOGCURMAX,@param1)=0;
- end;
- Function FBIO_ADAPTER(fd:longint;var param1 : longint):boolean;
- {IOR('F',100,sizeof(int) }
- Begin
- FBIO_ADAPTER:=FpIoctl(fd,nr_FBIO_ADAPTER,@param1)=0;
- end;
- Function FBIO_ADPTYPE(fd:longint;var param1 : longint):boolean;
- {IOR('F',101,sizeof(int) }
- Begin
- FBIO_ADPTYPE:=FpIoctl(fd,nr_FBIO_ADPTYPE,@param1)=0;
- end;
- Function FBIO_ADPINFO(fd:longint;var param1 : video_adapter_info):boolean;
- {IOR('F',102,sizeof(struct video_adapter_info) }
- Begin
- FBIO_ADPINFO:=FpIoctl(fd,nr_FBIO_ADPINFO,@param1)=0;
- end;
- Function FBIO_MODEINFO(fd:longint;var param1 : video_info):boolean;
- {IOWR('F',103,sizeof(struct video_info) }
- Begin
- FBIO_MODEINFO:=FpIoctl(fd,nr_FBIO_MODEINFO,@param1)=0;
- end;
- Function FBIO_FINDMODE(fd:longint;var param1 : video_info):boolean;
- {IOWR('F',104,sizeof(struct video_info) }
- Begin
- FBIO_FINDMODE:=FpIoctl(fd,nr_FBIO_FINDMODE,@param1)=0;
- end;
- Function FBIO_GETMODE(fd:longint;var param1 : longint):boolean;
- {IOR('F',105,sizeof(int) }
- Begin
- FBIO_GETMODE:=FpIoctl(fd,nr_FBIO_GETMODE,@param1)=0;
- end;
- Function FBIO_SETMODE(fd:longint;var param1 : longint):boolean;
- {IOW('F',106,sizeof(int) }
- Begin
- FBIO_SETMODE:=FpIoctl(fd,nr_FBIO_SETMODE,@param1)=0;
- end;
- Function FBIO_GETWINORG(fd:longint;var param1 : u_int):boolean;
- {IOR('F',107,sizeof(u_int) }
- Begin
- FBIO_GETWINORG:=FpIoctl(fd,nr_FBIO_GETWINORG,@param1)=0;
- end;
- Function FBIO_SETWINORG(fd:longint;var param1 : u_int):boolean;
- {IOW('F',108,sizeof(u_int) }
- Begin
- FBIO_SETWINORG:=FpIoctl(fd,nr_FBIO_SETWINORG,@param1)=0;
- end;
- Function FBIO_GETDISPSTART(fd:longint;var param1 : video_display_start_t):boolean;
- {IOR('F',109,sizeof(video_display_start_t) }
- Begin
- FBIO_GETDISPSTART:=FpIoctl(fd,nr_FBIO_GETDISPSTART,@param1)=0;
- end;
- Function FBIO_SETDISPSTART(fd:longint;var param1 : video_display_start_t):boolean;
- {IOW('F',110,sizeof(video_display_start_t) }
- Begin
- FBIO_SETDISPSTART:=FpIoctl(fd,nr_FBIO_SETDISPSTART,@param1)=0;
- end;
- Function FBIO_GETLINEWIDTH(fd:longint;var param1 : u_int):boolean;
- {IOR('F',111,sizeof(u_int) }
- Begin
- FBIO_GETLINEWIDTH:=FpIoctl(fd,nr_FBIO_GETLINEWIDTH,@param1)=0;
- end;
- Function FBIO_SETLINEWIDTH(fd:longint;var param1 : u_int):boolean;
- {IOW('F',112,sizeof(u_int) }
- Begin
- FBIO_SETLINEWIDTH:=FpIoctl(fd,nr_FBIO_SETLINEWIDTH,@param1)=0;
- end;
- Function FBIO_GETPALETTE(fd:longint;var param1 : video_color_palette_t):boolean;
- {IOW('F',113,sizeof(video_color_palette_t) }
- Begin
- FBIO_GETPALETTE:=FpIoctl(fd,nr_FBIO_GETPALETTE,@param1)=0;
- end;
- Function FBIO_SETPALETTE(fd:longint;var param1 : video_color_palette_t):boolean;
- {IOW('F',114,sizeof(video_color_palette_t) }
- Begin
- FBIO_SETPALETTE:=FpIoctl(fd,nr_FBIO_SETPALETTE,@param1)=0;
- end;
- {consio.h FpIoctl's}
- Function KDGETMODE(fd:longint;var param1 : longint):boolean;
- {IOR('K',9,sizeof(int) }
- Begin
- KDGETMODE:=FpIoctl(fd,nr_KDGETMODE,@param1)=0;
- end;
- Function KDSETMODE(fd:longint;param1 : longint):boolean;
- {IO('K',10 /* int */));
- }
- Begin
- KDSETMODE:=FpIoctl(fd,nr_KDSETMODE,pointer(param1))=0;
- end;
- Function KDSBORDER(fd:longint;param1 : longint):boolean;
- {IO('K',13 /* int */));
- }
- Begin
- KDSBORDER:=FpIoctl(fd,nr_KDSBORDER,pointer(param1))=0;
- end;
- Function KDRASTER(fd:longint;var param1 : scr_size_t):boolean;
- {IOW('K',100,sizeof(scr_size_t) }
- Begin
- KDRASTER:=FpIoctl(fd,nr_KDRASTER,@param1)=0;
- end;
- Function GIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- {IOR('k',2,sizeof(scrmap_t) }
- Begin
- GIO_SCRNMAP:=FpIoctl(fd,nr_GIO_SCRNMAP,@param1)=0;
- end;
- Function PIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- {IOW('k',3,sizeof(scrmap_t) }
- Begin
- PIO_SCRNMAP:=FpIoctl(fd,nr_PIO_SCRNMAP,@param1)=0;
- end;
- Function GIO_ATTR(fd:longint;var param1 : longint):boolean;
- {IOR('a',0,sizeof(int) }
- Begin
- GIO_ATTR:=FpIoctl(fd,nr_GIO_ATTR,@param1)=0;
- end;
- Function GIO_COLOR(fd:longint;var param1 : longint):boolean;
- {IOR('c',0,sizeof(int) }
- Begin
- GIO_COLOR:=FpIoctl(fd,nr_GIO_COLOR,@param1)=0;
- end;
- Function CONS_CURRENT(fd:longint;var param1 : longint):boolean;
- {IOR('c',1,sizeof(int) }
- Begin
- CONS_CURRENT:=FpIoctl(fd,nr_CONS_CURRENT,@param1)=0;
- end;
- Function CONS_GET(fd:longint;var param1 : longint):boolean;
- {IOR('c',2,sizeof(int) }
- Begin
- CONS_GET:=FpIoctl(fd,nr_CONS_GET,@param1)=0;
- end;
- Function CONS_IO(fd:longint):boolean;
- {IO('c',3));
- }
- Begin
- CONS_IO:=FpIoctl(fd,nr_CONS_IO,nil)=0;
- end;
- Function CONS_BLANKTIME(fd:longint;var param1 : longint):boolean;
- {IOW('c',4,sizeof(int) }
- Begin
- CONS_BLANKTIME:=FpIoctl(fd,nr_CONS_BLANKTIME,@param1)=0;
- end;
- Function CONS_SSAVER(fd:longint;var param1 : ssaver_t):boolean;
- {IOW('c',5,sizeof(ssaver_t) }
- Begin
- CONS_SSAVER:=FpIoctl(fd,nr_CONS_SSAVER,@param1)=0;
- end;
- Function CONS_GSAVER(fd:longint;var param1 : ssaver_t):boolean;
- {IOWR('c',6,sizeof(ssaver_t) }
- Begin
- CONS_GSAVER:=FpIoctl(fd,nr_CONS_GSAVER,@param1)=0;
- end;
- Function CONS_CURSORTYPE(fd:longint;var param1 : longint):boolean;
- {IOW('c',7,sizeof(int) }
- Begin
- CONS_CURSORTYPE:=FpIoctl(fd,nr_CONS_CURSORTYPE,@param1)=0;
- end;
- Function CONS_BELLTYPE(fd:longint;var param1 : longint):boolean;
- {IOW('c',8,sizeof(int) }
- Begin
- CONS_BELLTYPE:=FpIoctl(fd,nr_CONS_BELLTYPE,@param1)=0;
- end;
- Function CONS_HISTORY(fd:longint;var param1 : longint):boolean;
- {IOW('c',9,sizeof(int) }
- Begin
- CONS_HISTORY:=FpIoctl(fd,nr_CONS_HISTORY,@param1)=0;
- end;
- Function CONS_MOUSECTL(fd:longint;var param1 : mouse_info_t):boolean;
- {IOWR('c',10,sizeof(mouse_info_t) }
- Begin
- CONS_MOUSECTL:=FpIoctl(fd,nr_CONS_MOUSECTL,@param1)=0;
- end;
- Function CONS_IDLE(fd:longint;var param1 : longint):boolean;
- {IOR('c',11,sizeof(int) }
- Begin
- CONS_IDLE:=FpIoctl(fd,nr_CONS_IDLE,@param1)=0;
- end;
- Function CONS_SAVERMODE(fd:longint;var param1 : longint):boolean;
- {IOW('c',12,sizeof(int) }
- Begin
- CONS_SAVERMODE:=FpIoctl(fd,nr_CONS_SAVERMODE,@param1)=0;
- end;
- Function CONS_SAVERSTART(fd:longint;var param1 : longint):boolean;
- {IOW('c',13,sizeof(int) }
- Begin
- CONS_SAVERSTART:=FpIoctl(fd,nr_CONS_SAVERSTART,@param1)=0;
- end;
- Function PIO_FONT8x8(fd:longint;var param1 : fnt8_t):boolean;
- {IOW('c',64,sizeof(fnt8_t) }
- Begin
- PIO_FONT8x8:=FpIoctl(fd,nr_PIO_FONT8x8,@param1)=0;
- end;
- Function GIO_FONT8x8(fd:longint;var param1 : fnt8_t):boolean;
- {IOR('c',65,sizeof(fnt8_t) }
- Begin
- GIO_FONT8x8:=FpIoctl(fd,nr_GIO_FONT8x8,@param1)=0;
- end;
- Function PIO_FONT8x14(fd:longint;var param1 : fnt14_t):boolean;
- {IOW('c',66,sizeof(fnt14_t) }
- Begin
- PIO_FONT8x14:=FpIoctl(fd,nr_PIO_FONT8x14,@param1)=0;
- end;
- Function GIO_FONT8x14(fd:longint;var param1 : fnt14_t):boolean;
- {IOR('c',67,sizeof(fnt14_t) }
- Begin
- GIO_FONT8x14:=FpIoctl(fd,nr_GIO_FONT8x14,@param1)=0;
- end;
- Function PIO_FONT8x16(fd:longint;var param1 : fnt16_t):boolean;
- {IOW('c',68,sizeof(fnt16_t) }
- Begin
- PIO_FONT8x16:=FpIoctl(fd,nr_PIO_FONT8x16,@param1)=0;
- end;
- Function GIO_FONT8x16(fd:longint;var param1 : fnt16_t):boolean;
- {IOR('c',69,sizeof(fnt16_t) }
- Begin
- GIO_FONT8x16:=FpIoctl(fd,nr_GIO_FONT8x16,@param1)=0;
- end;
- Function CONS_GETINFO(fd:longint;var param1 : vid_info_t):boolean;
- {IOWR('c',73,sizeof(vid_info_t) }
- Begin
- CONS_GETINFO:=FpIoctl(fd,nr_CONS_GETINFO,@param1)=0;
- end;
- Function CONS_GETVERS(fd:longint;var param1 : longint):boolean;
- {IOR('c',74,sizeof(int) }
- Begin
- CONS_GETVERS:=FpIoctl(fd,nr_CONS_GETVERS,@param1)=0;
- end;
- Function CONS_CURRENTADP(fd:longint;var param1 : longint):boolean;
- {IOR('c',100,sizeof(int) }
- Begin
- CONS_CURRENTADP:=FpIoctl(fd,nr_CONS_CURRENTADP,@param1)=0;
- end;
- Function CONS_ADPINFO(fd:longint;var param1 : video_adapter_info_t):boolean;
- {IOWR('c',101,sizeof(video_adapter_info_t) }
- Begin
- CONS_ADPINFO:=FpIoctl(fd,nr_CONS_ADPINFO,@param1)=0;
- end;
- Function CONS_MODEINFO(fd:longint;var param1 : video_info_t):boolean;
- {IOWR('c',102,sizeof(video_info_t) }
- Begin
- CONS_MODEINFO:=FpIoctl(fd,nr_CONS_MODEINFO,@param1)=0;
- end;
- Function CONS_FINDMODE(fd:longint;var param1 : video_info_t):boolean;
- {IOWR('c',103,sizeof(video_info_t) }
- Begin
- CONS_FINDMODE:=FpIoctl(fd,nr_CONS_FINDMODE,@param1)=0;
- end;
- Function CONS_SETWINORG(fd:longint;param1 : longint):boolean;
- {IO('c',104 /* int */));
- }
- Begin
- CONS_SETWINORG:=FpIoctl(fd,nr_CONS_SETWINORG,pointer(param1))=0;
- end;
- Function CONS_SETKBD(fd:longint;param1 : longint):boolean;
- {IO('c',110 /* int */));
- }
- Begin
- CONS_SETKBD:=FpIoctl(fd,nr_CONS_SETKBD,pointer(param1))=0;
- end;
- Function CONS_RELKBD(fd:longint):boolean;
- {IO('c',111));
- }
- Begin
- CONS_RELKBD:=FpIoctl(fd,nr_CONS_RELKBD,nil)=0;
- end;
- Function CONS_GETTERM(fd:longint;var param1 : term_info_t):boolean;
- {IOWR('c',112,sizeof(term_info_t) }
- Begin
- CONS_GETTERM:=FpIoctl(fd,nr_CONS_GETTERM,@param1)=0;
- end;
- Function CONS_SETTERM(fd:longint;var param1 : term_info_t):boolean;
- {IOW('c',113,sizeof(term_info_t) }
- Begin
- CONS_SETTERM:=FpIoctl(fd,nr_CONS_SETTERM,@param1)=0;
- end;
- Function ADJUST_CLOCK(fd:longint):boolean;
- {IO('t',100));
- }
- Begin
- ADJUST_CLOCK:=FpIoctl(fd,nr_ADJUST_CLOCK,nil)=0;
- end;
- Function VT_OPENQRY(fd:longint;var param1 : longint):boolean;
- {IOR('v',1,sizeof(int) }
- Begin
- VT_OPENQRY:=FpIoctl(fd,nr_VT_OPENQRY,@param1)=0;
- end;
- Function VT_SETMODE(fd:longint;var param1 : vtmode_t):boolean;
- {IOW('v',2,sizeof(vtmode_t) }
- Begin
- VT_SETMODE:=FpIoctl(fd,nr_VT_SETMODE,@param1)=0;
- end;
- Function VT_GETMODE(fd:longint;var param1 : vtmode_t):boolean;
- {IOR('v',3,sizeof(vtmode_t) }
- Begin
- VT_GETMODE:=FpIoctl(fd,nr_VT_GETMODE,@param1)=0;
- end;
- Function VT_RELDISP(fd:longint;param1 : longint):boolean;
- {IO('v',4 /* int */));
- }
- Begin
- VT_RELDISP:=FpIoctl(fd,nr_VT_RELDISP,pointer(param1))=0;
- end;
- Function VT_ACTIVATE(fd:longint;param1 : longint):boolean;
- {IO('v',5 /* int */));
- }
- Begin
- VT_ACTIVATE:=FpIoctl(fd,nr_VT_ACTIVATE,pointer(param1))=0;
- end;
- Function VT_WAITACTIVE(fd:longint;param1 : longint):boolean;
- {IO('v',6 /* int */));
- }
- Begin
- VT_WAITACTIVE:=FpIoctl(fd,nr_VT_WAITACTIVE,pointer(param1))=0;
- end;
- Function VT_GETACTIVE(fd:longint;var param1 : longint):boolean;
- {IOR('v',7,sizeof(int) }
- Begin
- VT_GETACTIVE:=FpIoctl(fd,nr_VT_GETACTIVE,@param1)=0;
- end;
- Function VT_GETINDEX(fd:longint;var param1 : longint):boolean;
- {IOR('v',8,sizeof(int) }
- Begin
- VT_GETINDEX:=FpIoctl(fd,nr_VT_GETINDEX,@param1)=0;
- end;
- Function SW_B40x25(fd:longint):boolean;
- {IO('S',M_B40x25));
- }
- Begin
- SW_B40x25:=FpIoctl(fd,nr_SW_B40x25,nil)=0;
- end;
- Function SW_C40x25(fd:longint):boolean;
- {IO('S',M_C40x25));
- }
- Begin
- SW_C40x25:=FpIoctl(fd,nr_SW_C40x25,nil)=0;
- end;
- Function SW_B80x25(fd:longint):boolean;
- {IO('S',M_B80x25));
- }
- Begin
- SW_B80x25:=FpIoctl(fd,nr_SW_B80x25,nil)=0;
- end;
- Function SW_C80x25(fd:longint):boolean;
- {IO('S',M_C80x25));
- }
- Begin
- SW_C80x25:=FpIoctl(fd,nr_SW_C80x25,nil)=0;
- end;
- Function SW_BG320(fd:longint):boolean;
- {IO('S',M_BG320));
- }
- Begin
- SW_BG320:=FpIoctl(fd,nr_SW_BG320,nil)=0;
- end;
- Function SW_CG320(fd:longint):boolean;
- {IO('S',M_CG320));
- }
- Begin
- SW_CG320:=FpIoctl(fd,nr_SW_CG320,nil)=0;
- end;
- Function SW_BG640(fd:longint):boolean;
- {IO('S',M_BG640));
- }
- Begin
- SW_BG640:=FpIoctl(fd,nr_SW_BG640,nil)=0;
- end;
- Function SW_EGAMONO80x25(fd:longint):boolean;
- {IO('S',M_EGAMONO80x25));
- }
- Begin
- SW_EGAMONO80x25:=FpIoctl(fd,nr_SW_EGAMONO80x25,nil)=0;
- end;
- Function SW_CG320_D(fd:longint):boolean;
- {IO('S',M_CG320_D));
- }
- Begin
- SW_CG320_D:=FpIoctl(fd,nr_SW_CG320_D,nil)=0;
- end;
- Function SW_CG640_E(fd:longint):boolean;
- {IO('S',M_CG640_E));
- }
- Begin
- SW_CG640_E:=FpIoctl(fd,nr_SW_CG640_E,nil)=0;
- end;
- Function SW_EGAMONOAPA(fd:longint):boolean;
- {IO('S',M_EGAMONOAPA));
- }
- Begin
- SW_EGAMONOAPA:=FpIoctl(fd,nr_SW_EGAMONOAPA,nil)=0;
- end;
- Function SW_CG640x350(fd:longint):boolean;
- {IO('S',M_CG640x350));
- }
- Begin
- SW_CG640x350:=FpIoctl(fd,nr_SW_CG640x350,nil)=0;
- end;
- Function SW_ENH_MONOAPA2(fd:longint):boolean;
- {IO('S',M_ENHMONOAPA2));
- }
- Begin
- SW_ENH_MONOAPA2:=FpIoctl(fd,nr_SW_ENH_MONOAPA2,nil)=0;
- end;
- Function SW_ENH_CG640(fd:longint):boolean;
- {IO('S',M_ENH_CG640));
- }
- Begin
- SW_ENH_CG640:=FpIoctl(fd,nr_SW_ENH_CG640,nil)=0;
- end;
- Function SW_ENH_B40x25(fd:longint):boolean;
- {IO('S',M_ENH_B40x25));
- }
- Begin
- SW_ENH_B40x25:=FpIoctl(fd,nr_SW_ENH_B40x25,nil)=0;
- end;
- Function SW_ENH_C40x25(fd:longint):boolean;
- {IO('S',M_ENH_C40x25));
- }
- Begin
- SW_ENH_C40x25:=FpIoctl(fd,nr_SW_ENH_C40x25,nil)=0;
- end;
- Function SW_ENH_B80x25(fd:longint):boolean;
- {IO('S',M_ENH_B80x25));
- }
- Begin
- SW_ENH_B80x25:=FpIoctl(fd,nr_SW_ENH_B80x25,nil)=0;
- end;
- Function SW_ENH_C80x25(fd:longint):boolean;
- {IO('S',M_ENH_C80x25));
- }
- Begin
- SW_ENH_C80x25:=FpIoctl(fd,nr_SW_ENH_C80x25,nil)=0;
- end;
- Function SW_ENH_B80x43(fd:longint):boolean;
- {IO('S',M_ENH_B80x43));
- }
- Begin
- SW_ENH_B80x43:=FpIoctl(fd,nr_SW_ENH_B80x43,nil)=0;
- end;
- Function SW_ENH_C80x43(fd:longint):boolean;
- {IO('S',M_ENH_C80x43));
- }
- Begin
- SW_ENH_C80x43:=FpIoctl(fd,nr_SW_ENH_C80x43,nil)=0;
- end;
- Function SW_MCAMODE(fd:longint):boolean;
- {IO('S',M_MCA_MODE));
- }
- Begin
- SW_MCAMODE:=FpIoctl(fd,nr_SW_MCAMODE,nil)=0;
- end;
- Function SW_VGA_C40x25(fd:longint):boolean;
- {IO('S',M_VGA_C40x25));
- }
- Begin
- SW_VGA_C40x25:=FpIoctl(fd,nr_SW_VGA_C40x25,nil)=0;
- end;
- Function SW_VGA_C80x25(fd:longint):boolean;
- {IO('S',M_VGA_C80x25));
- }
- Begin
- SW_VGA_C80x25:=FpIoctl(fd,nr_SW_VGA_C80x25,nil)=0;
- end;
- Function SW_VGA_C80x30(fd:longint):boolean;
- {IO('S',M_VGA_C80x30));
- }
- Begin
- SW_VGA_C80x30:=FpIoctl(fd,nr_SW_VGA_C80x30,nil)=0;
- end;
- Function SW_VGA_C80x50(fd:longint):boolean;
- {IO('S',M_VGA_C80x50));
- }
- Begin
- SW_VGA_C80x50:=FpIoctl(fd,nr_SW_VGA_C80x50,nil)=0;
- end;
- Function SW_VGA_C80x60(fd:longint):boolean;
- {IO('S',M_VGA_C80x60));
- }
- Begin
- SW_VGA_C80x60:=FpIoctl(fd,nr_SW_VGA_C80x60,nil)=0;
- end;
- Function SW_VGA_M80x25(fd:longint):boolean;
- {IO('S',M_VGA_M80x25));
- }
- Begin
- SW_VGA_M80x25:=FpIoctl(fd,nr_SW_VGA_M80x25,nil)=0;
- end;
- Function SW_VGA_M80x30(fd:longint):boolean;
- {IO('S',M_VGA_M80x30));
- }
- Begin
- SW_VGA_M80x30:=FpIoctl(fd,nr_SW_VGA_M80x30,nil)=0;
- end;
- Function SW_VGA_M80x50(fd:longint):boolean;
- {IO('S',M_VGA_M80x50));
- }
- Begin
- SW_VGA_M80x50:=FpIoctl(fd,nr_SW_VGA_M80x50,nil)=0;
- end;
- Function SW_VGA_M80x60(fd:longint):boolean;
- {IO('S',M_VGA_M80x60));
- }
- Begin
- SW_VGA_M80x60:=FpIoctl(fd,nr_SW_VGA_M80x60,nil)=0;
- end;
- Function SW_VGA11(fd:longint):boolean;
- {IO('S',M_VGA11));
- }
- Begin
- SW_VGA11:=FpIoctl(fd,nr_SW_VGA11,nil)=0;
- end;
- Function SW_BG640x480(fd:longint):boolean;
- {IO('S',M_VGA11));
- }
- Begin
- SW_BG640x480:=FpIoctl(fd,nr_SW_BG640x480,nil)=0;
- end;
- Function SW_VGA12(fd:longint):boolean;
- {IO('S',M_VGA12));
- }
- Begin
- SW_VGA12:=FpIoctl(fd,nr_SW_VGA12,nil)=0;
- end;
- Function SW_CG640x480(fd:longint):boolean;
- {IO('S',M_VGA12));
- }
- Begin
- SW_CG640x480:=FpIoctl(fd,nr_SW_CG640x480,nil)=0;
- end;
- Function SW_VGA13(fd:longint):boolean;
- {IO('S',M_VGA13));
- }
- Begin
- SW_VGA13:=FpIoctl(fd,nr_SW_VGA13,nil)=0;
- end;
- Function SW_VGA_CG320(fd:longint):boolean;
- {IO('S',M_VGA13));
- }
- Begin
- SW_VGA_CG320:=FpIoctl(fd,nr_SW_VGA_CG320,nil)=0;
- end;
- Function SW_VGA_CG640(fd:longint):boolean;
- {IO('S',M_VGA_CG640));
- }
- Begin
- SW_VGA_CG640:=FpIoctl(fd,nr_SW_VGA_CG640,nil)=0;
- end;
- Function SW_VGA_MODEX(fd:longint):boolean;
- {IO('S',M_VGA_MODEX));
- }
- Begin
- SW_VGA_MODEX:=FpIoctl(fd,nr_SW_VGA_MODEX,nil)=0;
- end;
- Function SW_PC98_80x25(fd:longint):boolean;
- {IO('S',M_PC98_80x25));
- }
- Begin
- SW_PC98_80x25:=FpIoctl(fd,nr_SW_PC98_80x25,nil)=0;
- end;
- Function SW_PC98_80x30(fd:longint):boolean;
- {IO('S',M_PC98_80x30));
- }
- Begin
- SW_PC98_80x30:=FpIoctl(fd,nr_SW_PC98_80x30,nil)=0;
- end;
- Function SW_PC98_EGC640x400(fd:longint):boolean;
- {IO('S',M_PC98_EGC640x400));
- }
- Begin
- SW_PC98_EGC640x400:=FpIoctl(fd,nr_SW_PC98_EGC640x400,nil)=0;
- end;
- Function SW_PC98_PEGC640x400(fd:longint):boolean;
- {IO('S',M_PC98_PEGC640x400));
- }
- Begin
- SW_PC98_PEGC640x400:=FpIoctl(fd,nr_SW_PC98_PEGC640x400,nil)=0;
- end;
- Function SW_PC98_PEGC640x480(fd:longint):boolean;
- {IO('S',M_PC98_PEGC640x480));
- }
- Begin
- SW_PC98_PEGC640x480:=FpIoctl(fd,nr_SW_PC98_PEGC640x480,nil)=0;
- end;
- Function SW_VGA_C90x25(fd:longint):boolean;
- {IO('S',M_VGA_C90x25));
- }
- Begin
- SW_VGA_C90x25:=FpIoctl(fd,nr_SW_VGA_C90x25,nil)=0;
- end;
- Function SW_VGA_M90x25(fd:longint):boolean;
- {IO('S',M_VGA_M90x25));
- }
- Begin
- SW_VGA_M90x25:=FpIoctl(fd,nr_SW_VGA_M90x25,nil)=0;
- end;
- Function SW_VGA_C90x30(fd:longint):boolean;
- {IO('S',M_VGA_C90x30));
- }
- Begin
- SW_VGA_C90x30:=FpIoctl(fd,nr_SW_VGA_C90x30,nil)=0;
- end;
- Function SW_VGA_M90x30(fd:longint):boolean;
- {IO('S',M_VGA_M90x30));
- }
- Begin
- SW_VGA_M90x30:=FpIoctl(fd,nr_SW_VGA_M90x30,nil)=0;
- end;
- Function SW_VGA_C90x43(fd:longint):boolean;
- {IO('S',M_VGA_C90x43));
- }
- Begin
- SW_VGA_C90x43:=FpIoctl(fd,nr_SW_VGA_C90x43,nil)=0;
- end;
- Function SW_VGA_M90x43(fd:longint):boolean;
- {IO('S',M_VGA_M90x43));
- }
- Begin
- SW_VGA_M90x43:=FpIoctl(fd,nr_SW_VGA_M90x43,nil)=0;
- end;
- Function SW_VGA_C90x50(fd:longint):boolean;
- {IO('S',M_VGA_C90x50));
- }
- Begin
- SW_VGA_C90x50:=FpIoctl(fd,nr_SW_VGA_C90x50,nil)=0;
- end;
- Function SW_VGA_M90x50(fd:longint):boolean;
- {IO('S',M_VGA_M90x50));
- }
- Begin
- SW_VGA_M90x50:=FpIoctl(fd,nr_SW_VGA_M90x50,nil)=0;
- end;
- Function SW_VGA_C90x60(fd:longint):boolean;
- {IO('S',M_VGA_C90x60));
- }
- Begin
- SW_VGA_C90x60:=FpIoctl(fd,nr_SW_VGA_C90x60,nil)=0;
- end;
- Function SW_VGA_M90x60(fd:longint):boolean;
- {IO('S',M_VGA_M90x60));
- }
- Begin
- SW_VGA_M90x60:=FpIoctl(fd,nr_SW_VGA_M90x60,nil)=0;
- end;
- Function SW_TEXT_80x25(fd:longint):boolean;
- {IO('S',M_TEXT_80x25));
- }
- Begin
- SW_TEXT_80x25:=FpIoctl(fd,nr_SW_TEXT_80x25,nil)=0;
- end;
- Function SW_TEXT_80x30(fd:longint):boolean;
- {IO('S',M_TEXT_80x30));
- }
- Begin
- SW_TEXT_80x30:=FpIoctl(fd,nr_SW_TEXT_80x30,nil)=0;
- end;
- Function SW_TEXT_80x43(fd:longint):boolean;
- {IO('S',M_TEXT_80x43));
- }
- Begin
- SW_TEXT_80x43:=FpIoctl(fd,nr_SW_TEXT_80x43,nil)=0;
- end;
- Function SW_TEXT_80x50(fd:longint):boolean;
- {IO('S',M_TEXT_80x50));
- }
- Begin
- SW_TEXT_80x50:=FpIoctl(fd,nr_SW_TEXT_80x50,nil)=0;
- end;
- Function SW_TEXT_80x60(fd:longint):boolean;
- {IO('S',M_TEXT_80x60));
- }
- Begin
- SW_TEXT_80x60:=FpIoctl(fd,nr_SW_TEXT_80x60,nil)=0;
- end;
- Function SW_TEXT_132x25(fd:longint):boolean;
- {IO('S',M_TEXT_132x25));
- }
- Begin
- SW_TEXT_132x25:=FpIoctl(fd,nr_SW_TEXT_132x25,nil)=0;
- end;
- Function SW_TEXT_132x30(fd:longint):boolean;
- {IO('S',M_TEXT_132x30));
- }
- Begin
- SW_TEXT_132x30:=FpIoctl(fd,nr_SW_TEXT_132x30,nil)=0;
- end;
- Function SW_TEXT_132x43(fd:longint):boolean;
- {IO('S',M_TEXT_132x43));
- }
- Begin
- SW_TEXT_132x43:=FpIoctl(fd,nr_SW_TEXT_132x43,nil)=0;
- end;
- Function SW_TEXT_132x50(fd:longint):boolean;
- {IO('S',M_TEXT_132x50));
- }
- Begin
- SW_TEXT_132x50:=FpIoctl(fd,nr_SW_TEXT_132x50,nil)=0;
- end;
- Function SW_TEXT_132x60(fd:longint):boolean;
- {IO('S',M_TEXT_132x60));
- }
- Begin
- SW_TEXT_132x60:=FpIoctl(fd,nr_SW_TEXT_132x60,nil)=0;
- end;
- Function SW_VESA_CG640x400(fd:longint):boolean;
- {IO('V',M_VESA_CG640x400 - M_VESA_BASE));
- }
- Begin
- SW_VESA_CG640x400:=FpIoctl(fd,nr_SW_VESA_CG640x400,nil)=0;
- end;
- Function SW_VESA_CG640x480(fd:longint):boolean;
- {IO('V',M_VESA_CG640x480 - M_VESA_BASE));
- }
- Begin
- SW_VESA_CG640x480:=FpIoctl(fd,nr_SW_VESA_CG640x480,nil)=0;
- end;
- Function SW_VESA_800x600(fd:longint):boolean;
- {IO('V',M_VESA_800x600 - M_VESA_BASE));
- }
- Begin
- SW_VESA_800x600:=FpIoctl(fd,nr_SW_VESA_800x600,nil)=0;
- end;
- Function SW_VESA_CG800x600(fd:longint):boolean;
- {IO('V',M_VESA_CG800x600 - M_VESA_BASE));
- }
- Begin
- SW_VESA_CG800x600:=FpIoctl(fd,nr_SW_VESA_CG800x600,nil)=0;
- end;
- Function SW_VESA_1024x768(fd:longint):boolean;
- {IO('V',M_VESA_1024x768 - M_VESA_BASE));
- }
- Begin
- SW_VESA_1024x768:=FpIoctl(fd,nr_SW_VESA_1024x768,nil)=0;
- end;
- Function SW_VESA_CG1024x768(fd:longint):boolean;
- {IO('V',M_VESA_CG1024x768 - M_VESA_BAS));
- }
- Begin
- SW_VESA_CG1024x768:=FpIoctl(fd,nr_SW_VESA_CG1024x768,nil)=0;
- end;
- Function SW_VESA_1280x1024(fd:longint):boolean;
- {IO('V',M_VESA_1280x1024 - M_VESA_BASE));
- }
- Begin
- SW_VESA_1280x1024:=FpIoctl(fd,nr_SW_VESA_1280x1024,nil)=0;
- end;
- Function SW_VESA_CG1280x1024(fd:longint):boolean;
- {IO('V',M_VESA_CG1280x1024 - M_VESA_BA));
- }
- Begin
- SW_VESA_CG1280x1024:=FpIoctl(fd,nr_SW_VESA_CG1280x1024,nil)=0;
- end;
- Function SW_VESA_C80x60(fd:longint):boolean;
- {IO('V',M_VESA_C80x60 - M_VESA_BASE));
- }
- Begin
- SW_VESA_C80x60:=FpIoctl(fd,nr_SW_VESA_C80x60,nil)=0;
- end;
- Function SW_VESA_C132x25(fd:longint):boolean;
- {IO('V',M_VESA_C132x25 - M_VESA_BASE));
- }
- Begin
- SW_VESA_C132x25:=FpIoctl(fd,nr_SW_VESA_C132x25,nil)=0;
- end;
- Function SW_VESA_C132x43(fd:longint):boolean;
- {IO('V',M_VESA_C132x43 - M_VESA_BASE));
- }
- Begin
- SW_VESA_C132x43:=FpIoctl(fd,nr_SW_VESA_C132x43,nil)=0;
- end;
- Function SW_VESA_C132x50(fd:longint):boolean;
- {IO('V',M_VESA_C132x50 - M_VESA_BASE));
- }
- Begin
- SW_VESA_C132x50:=FpIoctl(fd,nr_SW_VESA_C132x50,nil)=0;
- end;
- Function SW_VESA_C132x60(fd:longint):boolean;
- {IO('V',M_VESA_C132x60 - M_VESA_BASE));
- }
- Begin
- SW_VESA_C132x60:=FpIoctl(fd,nr_SW_VESA_C132x60,nil)=0;
- end;
- Function SW_VESA_32K_320(fd:longint):boolean;
- {IO('V',M_VESA_32K_320 - M_VESA_BASE));
- }
- Begin
- SW_VESA_32K_320:=FpIoctl(fd,nr_SW_VESA_32K_320,nil)=0;
- end;
- Function SW_VESA_64K_320(fd:longint):boolean;
- {IO('V',M_VESA_64K_320 - M_VESA_BASE));
- }
- Begin
- SW_VESA_64K_320:=FpIoctl(fd,nr_SW_VESA_64K_320,nil)=0;
- end;
- Function SW_VESA_FULL_320(fd:longint):boolean;
- {IO('V',M_VESA_FULL_320 - M_VESA_BASE));
- }
- Begin
- SW_VESA_FULL_320:=FpIoctl(fd,nr_SW_VESA_FULL_320,nil)=0;
- end;
- Function SW_VESA_32K_640(fd:longint):boolean;
- {IO('V',M_VESA_32K_640 - M_VESA_BASE));
- }
- Begin
- SW_VESA_32K_640:=FpIoctl(fd,nr_SW_VESA_32K_640,nil)=0;
- end;
- Function SW_VESA_64K_640(fd:longint):boolean;
- {IO('V',M_VESA_64K_640 - M_VESA_BASE));
- }
- Begin
- SW_VESA_64K_640:=FpIoctl(fd,nr_SW_VESA_64K_640,nil)=0;
- end;
- Function SW_VESA_FULL_640(fd:longint):boolean;
- {IO('V',M_VESA_FULL_640 - M_VESA_BASE));
- }
- Begin
- SW_VESA_FULL_640:=FpIoctl(fd,nr_SW_VESA_FULL_640,nil)=0;
- end;
- Function SW_VESA_32K_800(fd:longint):boolean;
- {IO('V',M_VESA_32K_800 - M_VESA_BASE));
- }
- Begin
- SW_VESA_32K_800:=FpIoctl(fd,nr_SW_VESA_32K_800,nil)=0;
- end;
- Function SW_VESA_64K_800(fd:longint):boolean;
- {IO('V',M_VESA_64K_800 - M_VESA_BASE));
- }
- Begin
- SW_VESA_64K_800:=FpIoctl(fd,nr_SW_VESA_64K_800,nil)=0;
- end;
- Function SW_VESA_FULL_800(fd:longint):boolean;
- {IO('V',M_VESA_FULL_800 - M_VESA_BASE));
- }
- Begin
- SW_VESA_FULL_800:=FpIoctl(fd,nr_SW_VESA_FULL_800,nil)=0;
- end;
- Function SW_VESA_32K_1024(fd:longint):boolean;
- {IO('V',M_VESA_32K_1024 - M_VESA_BASE));
- }
- Begin
- SW_VESA_32K_1024:=FpIoctl(fd,nr_SW_VESA_32K_1024,nil)=0;
- end;
- Function SW_VESA_64K_1024(fd:longint):boolean;
- {IO('V',M_VESA_64K_1024 - M_VESA_BASE));
- }
- Begin
- SW_VESA_64K_1024:=FpIoctl(fd,nr_SW_VESA_64K_1024,nil)=0;
- end;
- Function SW_VESA_FULL_1024(fd:longint):boolean;
- {IO('V',M_VESA_FULL_1024 - M_VESA_BASE));
- }
- Begin
- SW_VESA_FULL_1024:=FpIoctl(fd,nr_SW_VESA_FULL_1024,nil)=0;
- end;
- Function SW_VESA_32K_1280(fd:longint):boolean;
- {IO('V',M_VESA_32K_1280 - M_VESA_BASE));
- }
- Begin
- SW_VESA_32K_1280:=FpIoctl(fd,nr_SW_VESA_32K_1280,nil)=0;
- end;
- Function SW_VESA_64K_1280(fd:longint):boolean;
- {IO('V',M_VESA_64K_1280 - M_VESA_BASE));
- }
- Begin
- SW_VESA_64K_1280:=FpIoctl(fd,nr_SW_VESA_64K_1280,nil)=0;
- end;
- Function SW_VESA_FULL_1280(fd:longint):boolean;
- {IO('V',M_VESA_FULL_1280 - M_VESA_BASE));
- }
- Begin
- SW_VESA_FULL_1280:=FpIoctl(fd,nr_SW_VESA_FULL_1280,nil)=0;
- end;
- {----------------------------- kbio.h FpIoctl's ---------------------------}
- Function KDGKBMODE(fd:longint;var param1 : longint):boolean;
- {IOR('K',6,sizeof(int) }
- Begin
- KDGKBMODE:=FpIoctl(fd,nr_KDGKBMODE,@param1)=0;
- end;
- Function KDSKBMODE(fd:longint;param1 : longint):boolean;
- {IO('K',7 /* int */));
- }
- Begin
- KDSKBMODE:=FpIoctl(fd,nr_KDSKBMODE,pointer(param1))=0;
- end;
- Function KDMKTONE(fd:longint;param1 : longint):boolean;
- {IO('K',8 /* int */));
- }
- Begin
- KDMKTONE:=FpIoctl(fd,nr_KDMKTONE,pointer(param1))=0;
- end;
- {$ifndef definconsole}
- Function KDGETMODE(fd:longint;var param1 : longint):boolean;
- {IOR('K',9,sizeof(int) }
- Begin
- KDGETMODE:=FpIoctl(fd,nr_KDGETMODE,@param1)=0;
- end;
- Function KDSETMODE(fd:longint;param1 : longint):boolean;
- {IO('K',10 /* int */));
- }
- Begin
- KDSETMODE:=FpIoctl(fd,nr_KDSETMODE,pointer(param1))=0;
- end;
- Function KDSBORDER(fd:longint;param1 : longint):boolean;
- {IO('K',13 /* int */));
- }
- Begin
- KDSBORDER:=FpIoctl(fd,nr_KDSBORDER,pointer(param1))=0;
- end;
- {$endif}
- Function KDGKBSTATE(fd:longint;var param1 : longint):boolean;
- {IOR('K',19,sizeof(int) }
- Begin
- KDGKBSTATE:=FpIoctl(fd,nr_KDGKBSTATE,@param1)=0;
- end;
- Function KDSKBSTATE(fd:longint;param1 : longint):boolean;
- {IO('K',20 /* int */));
- }
- Begin
- KDSKBSTATE:=FpIoctl(fd,nr_KDSKBSTATE,pointer(param1))=0;
- end;
- Function KDENABIO(fd:longint):boolean;
- {IO('K',60));
- }
- Begin
- KDENABIO:=FpIoctl(fd,nr_KDENABIO,nil)=0;
- end;
- Function KDDISABIO(fd:longint):boolean;
- {IO('K',61));
- }
- Begin
- KDDISABIO:=FpIoctl(fd,nr_KDDISABIO,nil)=0;
- end;
- Function KIOCSOUND(fd:longint;param1 : longint):boolean;
- {IO('K',63 /* int */));
- }
- Begin
- KIOCSOUND:=FpIoctl(fd,nr_KIOCSOUND,pointer(param1))=0;
- end;
- Function KDGKBTYPE(fd:longint;var param1 : longint):boolean;
- {IOR('K',64,sizeof(int) }
- Begin
- KDGKBTYPE:=FpIoctl(fd,nr_KDGKBTYPE,@param1)=0;
- end;
- Function KDGETLED(fd:longint;var param1 : longint):boolean;
- {IOR('K',65,sizeof(int) }
- Begin
- KDGETLED:=FpIoctl(fd,nr_KDGETLED,@param1)=0;
- end;
- Function KDSETLED(fd:longint;param1 : longint):boolean;
- {IO('K',66 /* int */));
- }
- Begin
- KDSETLED:=FpIoctl(fd,nr_KDSETLED,pointer(param1))=0;
- end;
- Function KDSETRAD(fd:longint;param1 : longint):boolean;
- {IO('K',67 /* int */));
- }
- Begin
- KDSETRAD:=FpIoctl(fd,nr_KDSETRAD,pointer(param1))=0;
- end;
- {$ifndef definconsole}
- Function KDRASTER(fd:longint;var param1 : scr_size_t):boolean;
- {IOW('K',100,sizeof(scr_size_t) }
- Begin
- KDRASTER:=FpIoctl(fd,nr_KDRASTER,@param1)=0;
- end;
- {$endif}
- Function KDGKBINFO(fd:longint;var param1 : keyboard_info_t):boolean;
- {IOR('K',101,sizeof(keyboard_info_t) }
- Begin
- KDGKBINFO:=FpIoctl(fd,nr_KDGKBINFO,@param1)=0;
- end;
- Function KDSETREPEAT(fd:longint;var param1 : keyboard_repeat_t):boolean;
- {IOW('K',102,sizeof(keyboard_repeat_t) }
- Begin
- KDSETREPEAT:=FpIoctl(fd,nr_KDSETREPEAT,@param1)=0;
- end;
- Function KDGETREPEAT(fd:longint;var param1 : keyboard_repeat_t):boolean;
- {IOR('K',103,sizeof(keyboard_repeat_t) }
- Begin
- KDGETREPEAT:=FpIoctl(fd,nr_KDGETREPEAT,@param1)=0;
- end;
- Function GETFKEY(fd:longint;var param1 : fkeyarg_t):boolean;
- {IOWR('k',0,sizeof(fkeyarg_t) }
- Begin
- GETFKEY:=FpIoctl(fd,nr_GETFKEY,@param1)=0;
- end;
- Function SETFKEY(fd:longint;var param1 : fkeyarg_t):boolean;
- {IOWR('k',1,sizeof(fkeyarg_t) }
- Begin
- SETFKEY:=FpIoctl(fd,nr_SETFKEY,@param1)=0;
- end;
- {$ifndef definconsole}
- Function GIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- {IOR('k',2,sizeof(scrmap_t) }
- Begin
- GIO_SCRNMAP:=FpIoctl(fd,nr_GIO_SCRNMAP,@param1)=0;
- end;
- Function PIO_SCRNMAP(fd:longint;var param1 : scrmap_t):boolean;
- {IOW('k',3,sizeof(scrmap_t) }
- Begin
- PIO_SCRNMAP:=FpIoctl(fd,nr_PIO_SCRNMAP,@param1)=0;
- end;
- {$endif}
- Function GIO_KEYMAP(fd:longint;var param1 : keymap_t):boolean;
- {IOR('k',6,sizeof(keymap_t) }
- Begin
- GIO_KEYMAP:=FpIoctl(fd,nr_GIO_KEYMAP,@param1)=0;
- end;
- Function PIO_KEYMAP(fd:longint;var param1 : keymap_t):boolean;
- {IOW('k',7,sizeof(keymap_t) }
- Begin
- PIO_KEYMAP:=FpIoctl(fd,nr_PIO_KEYMAP,@param1)=0;
- end;
- Function GIO_DEADKEYMAP(fd:longint;var param1 : accentmap_t):boolean;
- {IOR('k',8,sizeof(accentmap_t) }
- Begin
- GIO_DEADKEYMAP:=FpIoctl(fd,nr_GIO_DEADKEYMAP,@param1)=0;
- end;
- Function PIO_DEADKEYMAP(fd:longint;var param1 : accentmap_t):boolean;
- {IOW('k',9,sizeof(accentmap_t) }
- Begin
- PIO_DEADKEYMAP:=FpIoctl(fd,nr_PIO_DEADKEYMAP,@param1)=0;
- end;
- Function GIO_KEYMAPENT(fd:longint;var param1 : keyarg_t):boolean;
- {IOWR('k',10,sizeof(keyarg_t) }
- Begin
- GIO_KEYMAPENT:=FpIoctl(fd,nr_GIO_KEYMAPENT,@param1)=0;
- end;
- Function PIO_KEYMAPENT(fd:longint;var param1 : keyarg_t):boolean;
- {IOW('k',11,sizeof(keyarg_t) }
- Begin
- PIO_KEYMAPENT:=FpIoctl(fd,nr_PIO_KEYMAPENT,@param1)=0;
- end;
- {----------------------------- mouse.h FpIoctl's ---------------------------}
- Function MOUSE_GETSTATUS(fd:longint;var param1 : mousestatus_t):boolean;
- {IOR('M',0,sizeof(mousestatus_t)));
- }
- Begin
- MOUSE_GETSTATUS:=FpIoctl(fd,nr_MOUSE_GETSTATUS,@param1)=0;
- end;
- Function MOUSE_GETHWINFO(fd:longint;var param1 : mousehw_t):boolean;
- {IOR('M',1,sizeof(mousehw_t)));
- }
- Begin
- MOUSE_GETHWINFO:=FpIoctl(fd,nr_MOUSE_GETHWINFO,@param1)=0;
- end;
- Function MOUSE_GETMODE(fd:longint;var param1 : mousemode_t):boolean;
- {IOR('M',2,sizeof(mousemode_t)));
- }
- Begin
- MOUSE_GETMODE:=FpIoctl(fd,nr_MOUSE_GETMODE,@param1)=0;
- end;
- Function MOUSE_SETMODE(fd:longint;var param1 : mousemode_t):boolean;
- {IOW('M',3,sizeof(mousemode_t)));
- }
- Begin
- MOUSE_SETMODE:=FpIoctl(fd,nr_MOUSE_SETMODE,@param1)=0;
- end;
- Function MOUSE_GETLEVEL(fd:longint;var param1 : longint):boolean;
- {IOR('M',4,sizeof(int)));
- }
- Begin
- MOUSE_GETLEVEL:=FpIoctl(fd,nr_MOUSE_GETLEVEL,@param1)=0;
- end;
- Function MOUSE_SETLEVEL(fd:longint;var param1 : longint):boolean;
- {IOW('M',5,sizeof(int)));
- }
- Begin
- MOUSE_SETLEVEL:=FpIoctl(fd,nr_MOUSE_SETLEVEL,@param1)=0;
- end;
- Function MOUSE_GETVARS(fd:longint;var param1 : mousevar_t):boolean;
- {IOR('M',6,sizeof(mousevar_t)));
- }
- Begin
- MOUSE_GETVARS:=FpIoctl(fd,nr_MOUSE_GETVARS,@param1)=0;
- end;
- Function MOUSE_SETVARS(fd:longint;var param1 : mousevar_t):boolean;
- {IOW('M',7,sizeof(mousevar_t)));
- }
- Begin
- MOUSE_SETVARS:=FpIoctl(fd,nr_MOUSE_SETVARS,@param1)=0;
- end;
- Function MOUSE_READSTATE(fd:longint;var param1 : mousedata_t):boolean;
- {IOWR('M',8,sizeof(mousedata_t)));
- }
- Begin
- MOUSE_READSTATE:=FpIoctl(fd,nr_MOUSE_READSTATE,@param1)=0;
- end;
- Function MOUSE_READDATA(fd:longint;var param1 : mousedata_t):boolean;
- {IOWR('M',9,sizeof(mousedata_t)));
- }
- Begin
- MOUSE_READDATA:=FpIoctl(fd,nr_MOUSE_READDATA,@param1)=0;
- end;
- Function MOUSE_SETRESOLUTION(fd:longint;var param1 : longint):boolean;
- {IOW('M',10,sizeof(int)));
- }
- Begin
- MOUSE_SETRESOLUTION:=FpIoctl(fd,nr_MOUSE_SETRESOLUTION,@param1)=0;
- end;
- Function MOUSE_SETSCALING(fd:longint;var param1 : longint):boolean;
- {IOW('M',11,sizeof(int)));
- }
- Begin
- MOUSE_SETSCALING:=FpIoctl(fd,nr_MOUSE_SETSCALING,@param1)=0;
- end;
- Function MOUSE_SETRATE(fd:longint;var param1 : longint):boolean;
- {IOW('M',12,sizeof(int)));
- }
- Begin
- MOUSE_SETRATE:=FpIoctl(fd,nr_MOUSE_SETRATE,@param1)=0;
- end;
- Function MOUSE_GETHWID(fd:longint;var param1 : longint):boolean;
- {IOR('M',13,sizeof(int)));
- }
- Begin
- MOUSE_GETHWID:=FpIoctl(fd,nr_MOUSE_GETHWID,@param1)=0;
- end;
- end.
- {
- $Log$
- Revision 1.11 2005-02-14 17:13:22 peter
- * truncate log
- }
|