./tmp/_lbl/prd=xsightefs/typ=n386/rel=2.3.0j/vol=02 400 0 1 0 4776221117 14311 ./tmp/init.Xefs 700 2 2 13253 4776213404 6564 # # @(#)init.Xefs 5.2 3/27/91 17:05:27 # # # init.Xefs # onetime initialization script to be run by '/tmp/install' or 'custom' # PATH=/bin:/usr/bin:/etc # Initialize some variables PERM=/etc/perms/Xefs tmp=./tmp/efs. usernfiles=100 userninodes=100 # Variables used by SAMI _MKDEV= _3RDPARTY= # Define return values : ${OK=0} ${FAIL=1} ${STOP=10} ${HALT=11} trap "cleanup $FAIL" 1 2 3 15 # FUNCTION DEFINITIONS # Prompt with mesg, return non-zero on q. Also allows setting -x and +x, # shell escapes and the passing of default values # # Usage: prompt "message" # Argument is a quoted message # Dependencies: expr # Notes: returns 1 if the user answers q or Q, returns 0 otherwise # if $quit is not set, it is set to "quit" # prompt() { _mesg=$1 while echo "\n${_mesg}or enter q to ${quit:=quit}: \c" >&2 do read cmd case $cmd in +x|-x) set $cmd ;; Q|q) return 1 ;; !*) eval `expr "$cmd" : "!\(.*\)"` ;; "") # If there is an second argument use it # as the default else loop until 'cmd' is set [ "$2" ] && { cmd=$2 return 0 } : continue ;; *) unset _mesg return 0 ;; esac done } # Prompt for yes or no answer - returns non-zero for no getyn() { while echo "\n$* (y/n)? \c">&2 do read yn rest case $yn in [yY]) return 0 ;; [nN]) return 1 ;; *) echo "Please answer y or n" >&2 ;; esac done } # Print an error message error() { echo "\nError: $*" >&2 return 1 } # Remove temp files and exit with the status passed as argument # # Usage: cleanup status # References: $tmp indicates prefix of files to remove # Notes: cleanup exits with whatever value it is passed. # cleanup() { trap '' 1 2 3 15 [ "$tmp" ] && rm -f $tmp* exit $1 } # # perms list needed if link kit must be installed # permschk () { if [ -f /etc/perms/extmd ]; then PERM=/etc/perms/extmd elif [ -f /etc/perms/inst ]; then PERM=/etc/perms/inst else error "Cannot locate linkkit permlist needed to verify linkkit installation" cleanup $FAIL fi } # test to see if link kit is installed linkchk() { cd / until fixperm -i -d LINK $PERM do case $? in 4) echo "\nThe Link Kit is not installed." >&2 ;; 5) echo "\nThe Link Kit is only partially installed." >&2 ;; *) echo "\nError testing for Link Kit. Exiting." >&2 cleanup $FAIL ;; esac # Not fully installed. Do so here getyn "\nDo you wish to install it now?" || { # answered no echo " The link kit must be installed to run this program. Exiting ..." cleanup $OK } # answered yes, so install link kit echo "\nInvoking /etc/custom\n" /etc/custom -o -i LINK || { # custom exited unsuccessfully error "custom failed to install Link Kit successfully. Please try again." cleanup $FAIL } done } asklink() { getyn " You must create a new kernel to effect the driver change you specified. Do you wish to create a new kernel now?" || { echo " To create a new kernel execute $LINK_DIR/$LINK_COMMAND. Then you must reboot your system by executing /etc/shutdown -i0 before the changes you have specified will be implemented.\n" return $FAIL } return $OK } # re-link new kernel klink() { cd $LINK_DIR ./$LINK_COMMAND || { echo "\nError: Kernel link failed." cleanup $FAIL } return $OK } domkdev() { if [ -f /usr/lib/mkdev/graphics ] then mkdev graphics fi cleanup $OK } ######## # main() ######## cd /usr/bin/X11 [ -x scoterm ] || ln xterm odtterm # If the user is running versions 2.0.1e or 2.0.1f of merge # then update /usr/lib/merge/xcrt if [ -f /etc/perms/merge386 ] then rel=`sed -n '/^#rel=/s/#rel=//p' /etc/perms/merge386` \ || echo " Failed to set version number for /etc/perms/merge386." >&2 if [ $rel = "2.0.1e" ] || [ $rel = "2.0.1f" ] then cp /tmp/xcrt /usr/lib/merge/xcrt chmod 755 /usr/lib/merge/xcrt chgrp sys /usr/lib/merge/xcrt chown bin /usr/lib/merge/xcrt rm /tmp/xcrt fi fi # Remove obsolete grafinfo files if [ -d /usr/lib/grafinfo/olivetti ] then rm -rf /usr/lib/grafinfo/olivetti fi if [ -f /usr/lib/grafinfo/cnrstone/mono.xgi ] then rm -rf /usr/lib/grafinfo/cnrstone/mono.xgi fi if [ -f /usr/lib/grafinfo/hp/igc.xgi ] then rm -rf /usr/lib/grafinfo/hp/igc.xgi fi # Serialization is done using the script efs.serialize because # serialization and activation keys are not provided with the # EFS as it would be stated if /etc/serialize were used. # efs.serialize is a modified version of /etc/serialize and informs # the user that the serialization and activation keys are to # be used from previous ODT or Xsight 2.2 installations. # We have to use Xrun as the perms list to be recognized by ODT bundle list cd / ./tmp/efs.serialize /etc/perms/Xrun LINK_COMMAND=link_unix LINK_DIR=/etc/conf/cf.d CLASS_DIR=/etc/conf/pack.d/cn CLASSFILE=class.h MODEFILE=./usr/lib/grafinfo/modelist # # The following is a special case for ODT 1.0 and Unix 3.2.1 installations. # ODT 1.0 and 3.2.1 installations require new modelist and class.h # files. Subsequent relinking is necessary. OS_VERSION=`grep rel= /etc/perms/rts | sed -e "s/.*rel=//" -e "s/.$//"` if [ $OS_VERSION = "3.2.1" ] then if [ ! -f /usr/lib/vidconf/update.sh ] then mv $MODEFILE $MODEFILE.00 cp ./tmp/efs.modelist $MODEFILE if [ -f $CLASS_DIR/$CLASSFILE ] then diff ./tmp/efs.class.h $CLASS_DIR/$CLASSFILE > /dev/null && domkdev fi mv $CLASS_DIR/$CLASSFILE $CLASS_DIR/$CLASSFILE.00 cp ./tmp/efs.class.h $CLASS_DIR/$CLASSFILE # # Create graphics device driver. # if [ -f /usr/lib/mkdev/graphics ] then mkdev graphics fi # # Relinking is only necessary for ODT 1.0 and 3.2.1 installations. # permschk linkchk asklink && klink cleanup $OK fi fi # # Otherwise, you just need to run mkdev graphics. # if [ -f /usr/lib/mkdev/graphics ] then mkdev graphics fi cleanup $OK p/efs.class.h $CLASS_DIR/$CLASSFILE > /dev/null && domkdev fi mv $CLASS_DIR/$CLASSFILE $CLASS_DIR/$CLASSFILE.00 cp ./tmp/efs.class.h $CLASS_DIR/$CLASSFILE # # Create graphics device driver. # if [ -f /usr/lib/mkdev/graphics ] then mkdev graphics fi # # Relinking is only necessary for ODT 1.0 and 3.2.1 installations. # permschk li./usr/lib/grafinfo/video7/vram.xgi 644 2 2 37043 4776213560 12234 /* * @(#) vram.xgi 23.1 90/09/20 * * Copyright (C) The Santa Cruz Operation, 1989. * This Module contains Proprietary Information of * The Santa Cruz Operation, and should be treated as Confidential. */ /* *********************************************************************** * * VIDEO7/VRAM.XGI - XEGIA(tm) GrafInfo File for Video 7 VRAM * * * * Copyright (c) 1989 Metagraphics Software Corporation * * 269 Mount Hermon Road, PO 66779, Scotts Valley, CA 95066 * * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * * * * VIDEO7.VRAM.VGA.640x350-16 VGA 640x350 16-color * * VIDEO7.VRAM.VGA.640x480-16 VGA 640x480 16-color * * VIDEO7.VRAM.VGA.800x600-16 VGA 640x480 16-color * * * * *********************************************************************** */ VENDOR VIDEO7 "Video 7" MODEL VRAM "VRAM" CLASS VGA "VGA" MODE 640x350-16 "640x350 16-color" /* VGA 640x350 16 color */ MEMORY(0xA0000,0x10000); /* Base Address, Length */ PORT(0x3C2,0x3CA,0x3CC,0x3DA) /* General/External registers */ PORT(0x3C0,0x3C1); /* Attribute */ PORT(0x3C4,0x3C5); /* Sequencer */ PORT(0x3C7,0x3C8,0x3C9); /* Color registers */ PORT(0x3CE,0x3CF); /* Graphics */ PORT(0x3D4,0x3D5); /* CRTC */ PROCEDURE InitGraphics { DEVCLASS = 19; DEVTYPE = 01; DEVTECH = 0x0D; /* VGA */ PIXBYTES = 80; PIXWIDTH = 640; PIXHEIGHT = 350; PIXRESX = 68; PIXRESY = 50; PIXBITS = 1; PIXPLANES = 4; MAPFLAGS = 0; BASEADDRESS = 0xA0000; INTERLEAVE = 1; INTERSIZE = 80; } PROCEDURE SetGraphics { in(r63,0x3DA); /* reset attr F/F */ out(0x3C0,0); /* disable palette */ r0 = 1; r1 = 1; r2 = 0x0F; r3 = 0; r4 = 6; bout(6,0x3C4,0x3C5); /* reset, sequencer regs */ out(0x3C2,0xA3); /* misc out reg */ r0=3; bout(1,0x3C4,0x3C5) /* sequencer enable */ out(0x3D4,0x11); out(0x3D5,0); /* unprotect crtc regs 0-7 */ r0 = 0x5F; r1 = 0x4F; r2 = 0x50; r3 = 0x82; /* crtc */ r4 = 0x54; r5 = 0x80; r6 = 0xBF; r7 = 0x1F; r8 = 0x00; r9 = 0x40; r10 = 0x00; r11 = 0x00; r12 = 0x00; r13 = 0x00; r14 = 0x00; r15 = 0x00; r16 = 0x83; r17 = 0x85; r18 = 0x5D; r19 = 0x28; r20 = 0x0F; r21 = 0x63; r22 = 0xBA; r23 = 0xE3; r24 = 0xFF; bout(25,0x3D4,0x3D5); out(0x3CC,0x00); out(0x3CA,0x01); /* graphics controller */ r0 = 0x00; r1 = 0x00; r2 = 0x00; r3 = 0x00; r4 = 0x00; r5 = 0x00; r6 = 0x05; r7 = 0x0F; r8 = 0xFF; bout( 9, 0x3CE, 0x3CF ) in(r63,0x3DA); /* reset attr F/F */ r0 = 0x00; r1 = 0x01; r2 = 0x02; r3 = 0x03; /* palette */ r4 = 0x04; r5 = 0x05; r6 = 0x14; r7 = 0x07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x01; r17 = 0x00; r18 = 0x0F; r19 = 0x00; /* attr cntlr */ bout(20,0x3C0,0x3C0) out(0x3C0,0x20); /* enable palette */ } PROCEDURE SetText { in(r63,0x3DA); /* reset attr F/F */ out(0x3C0,0); /* disable palette */ r0 = 0x01; r1 = 0x01; r2 = 0x03; r3 = 0x00; r4 = 0x02; bout(5,0x3C4,0x3C5); /* reset, sequencer regs */ out(0x3C2,0xA3); /* misc out reg */ r0=0x03; bout(1,0x3C4,0x3C5); /* sequencer reg 0, enable */ out(0x3D4,0x11); out(0x3D5,0); /* unprotect crtc regs 0-7 */ r0 = 0x5F; r1 = 0x4F; r2 = 0x50; r3 = 0x82; /* crtc regs */ r4 = 0x55; r5 = 0x81; r6 = 0xBF; r7 = 0x1F; r8 = 0x00; r9 = 0x4F; r10 = 0x0D; r11 = 0x0E; r12 = 0x00; r13 = 0x00; r14 = 0x00; r15 = 0x00; r16 = 0x9C; r17 = 0x8E; r18 = 0x8F; r19 = 0x28; r20 = 0x1F; r21 = 0x96; r22 = 0xB9; r23 = 0xA3; r24 = 0xFF; bout(25,0x3D4,0x3D5); out(0x3CC,0x00); out(0x3CA,0x01); /* graphics controller */ r0 = 0x00; r1 = 0x00; r2 = 0x00; r3 = 0x00; r4 = 0x00; r5 = 0x10; r6 = 0x0E; r7 = 0x00; r8 = 0xFF; bout(9,0x3CE,0x3CF); in(r63,0x3DA); /* reset attribute flip/flop */ r00 = 0x00; r01 = 0x01; r02 = 0x02; r03 = 0x03; /* palette */ r04 = 0x04; r05 = 0x05; r06 = 0x14; r07 = 0x07; r08 = 0x38; r09 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x0C; r17 = 0x00; r18 = 0x0F; r19 = 0x08; /* attr cntlr */ bout(20,0x3C0,0x3C0); out(0x3C0,0x20); /* enable palette */ } /* ********************************************************************* */ VENDOR VIDEO7 "Video 7" MODEL VRAM "VRAM" CLASS VGA "VGA" MODE 640x480-16 "640x480 16-color" /* VGA 640x480 16 color */ MEMORY(0xA0000,0x10000); /* Base Address, Length */ PORT(0x3C2,0x3CA,0x3CC,0x3DA); /* General/External registers */ PORT(0x3C0,0x3C1); /* Attribute */ PORT(0x3C4,0x3C5); /* Sequencer */ PORT(0x3C7,0x3C8,0x3C9); /* Color registers */ PORT(0x3CE,0x3CF); /* Graphics */ PORT(0x3D4,0x3D5); /* CRTC */ PROCEDURE InitGraphics { DEVCLASS = 75; DEVTYPE = 01; DEVTECH = 0x0D; /* VGA */ PIXBYTES = 80; PIXWIDTH = 640; PIXHEIGHT = 480; PIXRESX = 68; PIXRESY = 68; PIXBITS = 1; PIXPLANES = 4; MAPFLAGS = 0; BASEADDRESS = 0xA0000; INTERLEAVE = 1; INTERSIZE = 80; } PROCEDURE SetGraphics { in(r63,0x3DA); /* reset attr F/F */ out(0x3C0,0); /* disable palette */ r0 = 1; r1 = 1; r2 = 0x0F; r3 = 0; r4 = 6; bout(5,0x3C4,0x3C5); /* reset, sequencer regs */ out(0x3C2,0xE3); /* misc out reg */ r0=3; bout(1,0x3C4,0x3C5); /* sequencer enable */ out(0x3D4,0x11); out(0x3D5,0); /* unprotect crtc regs 0-7 */ r0 = 0x5F; r1 = 0x4F; r2 = 0x50; r3 = 0x82; /* crtc */ r4 = 0x54; r5 = 0x80; r6 = 0x0B; r7 = 0x3E; r8 = 0x00; r9 = 0x40; r10 = 0x00; r11 = 0x00; r12 = 0x00; r13 = 0x00; r14 = 0x00; r15 = 0x00; r16 = 0xEA; r17 = 0x8C; r18 = 0xDF; r19 = 0x28; r20 = 0x00; r21 = 0xE7; r22 = 0x04; r23 = 0xE3; r24 = 0xFF; bout(25,0x3D4,0x3D5); out(0x3CC,0x00); out(0x3CA,0x01); /* graphics controller */ r0 = 0x00; r1 = 0x00; r2 = 0x00; r3 = 0x00; r4 = 0x00; r5 = 0x00; r6 = 0x05; r7 = 0x0F; r8 = 0xFF; bout(9,0x3CE,0x3CF); in(r63,0x3DA); /* reset attribute flip/flop */ r0 = 0x00; r1 = 0x01; r2 = 0x02; r3 = 0x03; /* palette */ r4 = 0x04; r5 = 0x05; r6 = 0x14; r7 = 0x07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x01; r17 = 0x00; r18 = 0x0F; r19 = 0x00; /* attr cntlr */ bout(20,0x3C0,0x3C0); out(0x3C0,0x20); /* enable palette */ } PROCEDURE SetText { in(r63,0x3DA); /* reset attr F/F */ out(0x3C0,0); /* disable palette */ r0 = 0x01; r1 = 0x00; r2 = 0x03; r3 = 0x00; r4 = 0x02; bout( 5, 0x3C4, 0x3C5 ) /* sequencer regs */ out(0x3C2,0x67); /* misc out reg */ r0=0x03; bout(1,0x3C4,0x3C5); /* sequencer enable */ out(0x3D4,0x11); out(0x3D5,0); /* unprotect crtc regs 0-7 */ r0 = 0x5F; r1 = 0x4F; r2 = 0x50; r3 = 0x82; /* crtc */ r4 = 0x55; r5 = 0x81; r6 = 0xBF; r7 = 0x1F; r8 = 0x00; r9 = 0x4F; r10 = 0x0D; r11 = 0x0E; r12 = 0x00; r13 = 0x00; r14 = 0x00; r15 = 0x00; r16 = 0x9C; r17 = 0x8E; r18 = 0x8F; r19 = 0x28; r20 = 0x1F; r21 = 0x96; r22 = 0xB9; r23 = 0xA3; r24 = 0xFF; bout(25,0x3D4,0x3D5); out(0x3CC,0x00); out(0x3CA,0x01); /* graphics controller */ r0 = 0x00; r1 = 0x00; r2 = 0x00; r3 = 0x00; r4 = 0x00; r5 = 0x10; r6 = 0x0E; r7 = 0x00; r8 = 0xFF; bout(9,0x3CE,0x3CF); in(r63,0x3DA); /* reset attr F/F */ r0 = 0x00; r1 = 0x01; r2 = 0x02; r3 = 0x03; /* palette */ r4 = 0x04; r5 = 0x05; r6 = 0x14; r7 = 0x07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x0C; r17 = 0x00; r18 = 0x0F; r19 = 0x08; /* attr cntlr */ bout(20,0x3C0,0x3C0); out(0x3C0,0x20); /* enable palette */ } /* ********************************************************************* */ VENDOR VIDEO7 "Video 7" MODEL VRAM "VRAM" CLASS VGA "VGA" MODE 800x600-16 "800x600 16 color" MEMORY(0xA0000,0x10000); /* Base Address, Length */ PORT(0x3C2,0x3CA,0x3CC,0x3DA); /* General/External registers */ PORT(0x3C0,0x3C1); /* Attribute */ PORT(0x3C4,0x3C5); /* Sequencer */ PORT(0x3C7,0x3C8,0x3C9); /* Color registers */ PORT(0x3CE,0x3CF); /* Graphics */ PORT(0x3D4,0x3D5); /* CRTC */ PROCEDURE InitGraphics { DEVCLASS = 99; DEVTYPE = 01; DEVTECH = 0x0D; /* VGA */ PIXBYTES = 100; PIXWIDTH = 800; PIXHEIGHT = 600; PIXRESX = 64; PIXRESY = 54; PIXBITS = 1; PIXPLANES = 4; MAPFLAGS = 0; BASEADDRESS = 0xA0000; INTERLEAVE = 1; INTERSIZE = 80; PROCEDURE SetGraphics { /* enable extended sequencer registers */ out(0x3C4,6); out(0x3C5,0xEA); /* sequencer */ r0 = 0x1; /* reset */ r1 = 0x1; r2 = 0xF; r3 = 0x0; r4 = 0x6; bout(5, 0x3C4, 0x3C5); /* misc output reg */ out(0x3C2,0x2F); /* set extended sequencer regs */ out(0x3C4, 0xA4); out(0x3C5, 0x10); out(0x3C4, 0xFD); out(0x3C5, 0x90); out(0x3C4, 0xFC); out(0x3C5, 0x08); out(0x3C4, 0xF6); out(0x3C5, 0x00); out(0x3C4, 0xF8); out(0x3C5, 0x10); out(0x3C4, 0xFF); out(0x3C5, 0x00); out(0x3C4, 0xE0); out(0x3C5, 0x00); /* remove sequencer reset */ r0 = 0x3; bout(1,0x3C4,0x3C5); /* enable extended sequencer registers */ out(0x3C4,6); out(0x3C5,0xEA); /* unprotect crtc regs 0-7 */ out(0x3D4, 0x11); out(0x3D5, 0x20); /* crtc */ r0 = 0x85; r1 = 0x63; r2 = 0x65; r3 = 0x88; r4 = 0x66; r5 = 0x17; r6 = 0x77; r7 = 0xF0; r8 = 0; r9 = 0x60; r10 = 0; r11 = 0; r12 = 0; r13 = 0; r14 = 0; r15 = 0; r16 = 0x5C; r17 = 0x0E; r18 = 0x57; r19 = 0x32; r20 = 0; r21 = 0x5C; r22 = 0x74; r23 = 0xE3; r24 = 0xFF; bout( 25, 0x3d4, 0x3D5 ); /* graphics controller */ r0 = 0x0; r1 = 0x0; r2 = 0x0; r3 = 0x0; r4 = 0x0; r5 = 0x0; r6 = 0x5; r7 = 0xF; r8 = 0xFF; bout( 9, 0x3CE, 0x3CF ); /* attribute controller */ in(r63,0x3DA); /* reset f/f */ /* palette */ r0 = 00; r1 = 01; r2 = 02; r3 = 03; r4 = 04; r5 = 05; r6 = 0x14; r7 = 07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; /* attribute controller */ r16 = 01; r17 = 00; r18 = 0x0F; r19 = 00; r20 = 0; bout( 21, 0x3C0, 0x3C0 ); /* palette mask */ out( 0x3C6, 0xFF); /* enable palette */ out( 0x3C0, 0x20); /* protect extended regs */ out 0x3c4, 0x6 out 0x3c5, 0xae } PROCEDURE SetText { /* unprotect crtc regs 0-7 */ out( 0x3D4,0x11); out(0x3D5,0x20); /* enable extended sequencer registers */ out(0x3C4,6); out(0x3C5,0xEA); in(r63,0x3DA); /* reset attr F/F */ out(0x3C0,0); /* disable palette */ r0 = 0x01; r1 = 0x00; r2 = 0x03; r3 = 0x00; r4 = 0x02; bout( 5, 0x3C4, 0x3C5 ) /* sequencer regs */ out(0x3C2,0x67); /* misc out reg */ /* set extended sequencer regs */ out(0x3C4, 0xEB); out(0x3C5, 0); out(0x3C4, 0xF9); out(0x3C5, 0); out(0x3C4, 0xA5); out(0x3C5, 0); out(0x3C4, 0xF3); out(0x3C5, 0); out(0x3C4, 0xFD); out(0x3C5, 0x00); out(0x3C4, 0xA4); out(0x3C5, 0x00); out(0x3C4, 0xFC); out(0x3C5, 0x08); out(0x3C4, 0xF6); out(0x3C5, 0x00); out(0x3C4, 0xF8); out(0x3C5, 0x00); out(0x3C4, 0xFF); out(0x3C5, 0); out(0x3C4, 0xE0); out(0x3C5, 0); r0=0x03; bout(1,0x3C4,0x3C5); /* sequencer enable */ /* enable extended sequencer registers */ out(0x3C4,6); out(0x3C5,0xEA); /* unprotect crtc regs 0-7 */ out(0x3D4, 0x11); out(0x3D5, 0x20); r0 = 0x5F; r1 = 0x4F; r2 = 0x50; r3 = 0x82; /* crtc */ r4 = 0x55; r5 = 0x81; r6 = 0xBF; r7 = 0x1F; r8 = 0x00; r9 = 0x4F; r10 = 0x0D; r11 = 0x0E; r12 = 0x00; r13 = 0x00; r14 = 0x00; r15 = 0x00; r16 = 0x9C; r17 = 0x8E; r18 = 0x8F; r19 = 0x28; r20 = 0x1F; r21 = 0x96; r22 = 0xB9; r23 = 0xA3; r24 = 0xFF; bout(25,0x3D4,0x3D5); out(0x3CC,0x00); out(0x3CA,0x01); /* graphics controller */ r0 = 0x00; r1 = 0x00; r2 = 0x00; r3 = 0x00; r4 = 0x00; r5 = 0x10; r6 = 0x0E; r7 = 0x00; r8 = 0xFF; bout(9,0x3CE,0x3CF); in(r63,0x3DA); /* reset attr F/F */ r0 = 0x00; r1 = 0x01; r2 = 0x02; r3 = 0x03; /* palette */ r4 = 0x04; r5 = 0x05; r6 = 0x14; r7 = 0x07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x0C; r17 = 0x00; r18 = 0x0F; r19 = 0x08; /* attr cntlr */ bout(20,0x3C0,0x3C0); out(0x3C0,0x20); /* enable palette */ } /* End of File - VRAM.XGI */ /* reset attr F/F */ r0 = 0x00; r1 = 0x01; r2 = 0x02; r3 = 0x03; /* palette */ r4 = 0x04; r5 = 0x05; r6 = 0x14; r7 = 0x07; r8 = 0x38; r9 = 0x39; r10 = 0x3A; r11 = 0x3B; r12 = 0x3C; r13 = 0x3D; r14 = 0x3E; r15 = 0x3F; r16 = 0x0C; r17 = 0x00; r18 = 0x0F; r19 = 0x08; /* attr cntlr */ bout(20,0x3C0,0x3C0); out(0x3C0,0x20); /* enable palette */ ./usr/lib/XKeyBind.o 644 2 2 10531 4776213561 7415 LBH& (.text # .data(t @.data @.bss .comment UWVu}| 9E~3^_Ð} 9w9rE +EE^_ÐUEu PuE Pu|ÐU Eu PEEJEEM9~3EM+EEMU 9uċEÐEEM9| E륐3UVuF u P_u v4v ^USWVuEEu PEǀ>Q}u EǀCE9~+SF8Pu= E=uEǀG;~3뽐EPu EE u^_[ÐUVu~u'F tF ǀ~u2F tF ǀv ^ÐÐÐUSWVE<M+@EEPuPQ-}u`E tEPEދEE9]wVuEeEmEj?ar?zvJ?r?w G 8?r?v ?r?vց?r?w GE9}vu?Ar?Zw럐EEM􉈨Eu PQEu P|^_[UWVuF ? t*G9F0uG 9Euwu w G^_Ð^_ÐU SWVuE~ u Wjv4Wb ؉]F0uF0tujv4W7 EE2MF0tEHPv4W EE싇9E~Ã}t]F0t9u-arzv rvr w }tESPV E@ÈEE t=u`rvPPr`r@rv0rv `rr t!u3^_[ÁuE }ueF0tO}@r}v} ue7}2uE*}3r}7wm}8uE }/uEEEE9E~Euu Pe E^_[ÐU WVEu PEj+E7}~EPGuPu EGEE PGuPu E G EGWu^_ÐUWVE$>vvwVn u^_ÐUSWVu} +@E(E98u+^_[ÐE9]r3^_[USWVu EEF3:EEE;E~%E@E8uE}ȸ FːG9~~"F4u$ tE륐^_[Ð@(#)XKeyBind.c 1.3 12/16/88 17:36:46@(#) types.h 1.17 89/08/10 @(#) param.h 1.11 89/08/10 @(#) s5param.h 1.7 89/07/27 @(#) memory.h 1.10 89/07/12 @(#) memory.h 1.10 89/07/12 @(#) fcntl.h 1.7 89/07/12 @(#) fcntl.h 1.9 89/07/27 @(#) file.h 1.10 89/07/27 @(#) stropts.h 1.7 89/07/27 @(#)in.h 6.8 :/source/uts/common/sys/s.in.h 5/14/87 13:00:24@(#) ioctl.h 1.6 89/07/27 @(#) param.h 1.11 89/08/10 @(#) s5param.h 1.7 89/07/27 @(#) errno.h 1.9 89/07/12 @(#) errno.h 1.9 89/07/27 @(#) limits.h 1.14 89/07/12 m->Uu 8e}*Lr *<T zx.filegXKeyBind.c.text#.data%.data.bssDGROUP$ <TeqmallocHfreebcopy*`<hJb\s~_XFreeKeyBindingsXLookupStringComputeMaskFromKeytransXRefreshKeyboardMappingXFreeModifiermapFindKeyCodeInitTranslationListXKeycodeToKeysymKeyCodetoKeySymXUseKeymapXLookupKeysymXGetKeyboardMappingInitializeXKeysymToKeycodeXGetModifierMappingInitModMapKeySymReboundXRebindKeysym_XFreeKeyBindingsXLookupStringXRefreshKeyboardMappingXKeycodeToKeysymXUseKeymapXLookupKeysymXKeysymToKeycodeXRebindKeysym\s~_XFreeKeyBindingsXLookupStringComputeMaskFromKeytransXRefreshKeyboardMappin./usr/lib/386/XKeyBind.o 644 2 2 7624 4776213562 7727 XKeyBind.cۈMS Cn SLIBCE3sOCV7@(#) types.h 1.17 89/08/10 X@(#) param.h 1.11 89/08/10 @(#) s5param.h 1.7 89/07/27 @(#) memory.h 1.10 89/07/12 @(#) memory.h 1.10 89/07/12 @(#) fcntl.h 1.7 89/07/12 @(#) fcntl.h 1.9 89/07/27 @(#) lockcmn.h 1.2 89/07/27 Ԉ@(#) file.h 1.10 89/07/27 @(#) stropts.h 1.7 89/07/27 ?@(#)in.h 6.8 :/source/uts/common/sys/s.in.h 5/14/87 13:00:24b@(#) ioctl.h 1.6 89/07/27 @(#) param.h 1.11 89/08/10 @(#) s5param.h 1.7 89/07/27 @(#) errno.h 1.9 89/07/12 @(#) errno.h 1.9 89/07/27 @(#) limits.h 1.14 89/07/12 .DGROUP_TEXTCODE_DATADATACONST_BSSBSS?  %   V @E%__XFreeKeyBindings_XLookupStringComputeMaskFromKeytranš._XRefreshKeyboardMapping_XFreeModifiermap# FindKeyCodeInitTranslationList&_XKeycodeToKeysymKeyCodetoKeySymA4 _XUseKeymap_XLookupKeysym_XGetKeyboardMappingA Initialize"3_XKeysymToKeycode_XGetModifierMapping_malloc InitModMap KeySymRebound _free_XRebindKeysym_bcopy1/__XFreeKeyBindings`_XLookupStringh ComputeMaskFromKeytrans !_XRefreshKeyboardMapping- FindKeyCodeInitTranslationList_XKeycodeToKeysym\'KeyCodetoKeySym8( _XUseKeymap_XLookupKeysym Initialize_XKeysymToKeycode& InitModMapH KeySymRebound_XRebindKeysymѡ+@(#)XKeyBind.c 1.3 12/16/88 17:36:46䡶UWVu}| 9E~3^_Ð} 9w9rE +EE^_ÐUEu PuE PuÐU Eu PEEJEEM9~3EM+EEMU 9uċEÐEEM9| E륐3UVuF u Pu v4v ^USWVuEEu PEǀ>Q}u EǀCE9~+SF8Pu E=uEǀG;~3뽐EPuEE u^_[ÐUVu~u'F tF ǀ~u2F tF ǀv ^ÐÐÐUSWVE<M+@EEPuPQ}u`E tEPEދEE9]wVuEeEmEj?ar?zvJ?r?w G 8?r?v ?r?vց?r?w G=*VVV }VeV8VVV uV UV>V -V V V mV 0E9}vu?Ar?Zw럐EEM􉈨Eu PEu P^_[UWVuF ? t*G9F0uG 9Euwu w G^_Ð^_ÐU SWVuE~ u Wjv4W ؉]F0uF0tujv4W EE2MF0tEHPv4W EE싇9E~Ã}t]F0t9u-arzv rvr w }tESPV E@ÈEE t=u`rvPPr`r@rv0rv `rr t!u3^_[ÁuE }ueF0tO}@r}v} ue7}2uE*}3r}7wm}8uE }/uEEEE9E~Euu P E^_[ÐU WVEu PEjE7}~EPGuPu EGEE PGuPu E G EGWu^_ɧAVVzVYVGV!VV VVMV V V V VXVCV@^ÐUWVE$>vvV u^_ÐUSWVu} +@E(E98u+^_[ÐE9]r3^_[USWVu EEF3:EEE;E~%E@E8uE}ȸ FːG9~~"F4u tE륐^_[ÐV0V'VVtGuPu EGEE PGuPu E G EGWu^_ɧAVV