okvm-cvs Mailing List for okvm
Status: Pre-Alpha
Brought to you by:
david-m
You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(7) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: David M. <da...@us...> - 2006-05-28 12:09:31
|
Update of /cvsroot/okvm/okvm/server In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv31717/server Modified Files: V4LDesktop.cpp V4LDesktop.h Log Message: The goal is to have some number of controlled devices, and have the screen split into an appropriately sized table and display a miniturised version of them all. If they are being controlled by the OKVM card, then it would cycle through, updating each for 5 seconds then moving on to the next. This patch is after some optimisations, dropping it to ~10%CPU for 7.8 fps. I have a fourth patch close which improves performance to 8 fps at ~8% CPU. With the montage patches, you start off in full screen mode, showing only 1 of 4 screens. Left clicking takes you to the montage. Right clicking takes you to the montage and starts cycling through the 4 screens. When in montage mode, left clicking a screen only updates that screen. Right clicking starts the cycle. Double clicking on a screen takes you to full screen mode again. The + and - keys add or remove screens. Scott Burns <sb...@ii...> Index: V4LDesktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** V4LDesktop.h 24 May 2006 06:57:07 -0000 1.3 --- V4LDesktop.h 28 May 2006 12:09:26 -0000 1.4 *************** *** 45,48 **** --- 45,50 ---- virtual void lookup(int index, int* r, int* g, int* b); virtual void poll(); + void montageImage( void * dest, void * src, int sector ); + void copyPixelFragment( unsigned char * dest, int dbpp, unsigned char * src, int sbpp, int strength ); protected: *************** *** 55,62 **** private: int fd; ! int width; ! int height; ! int palette; ! void* framebuffer; }; --- 57,85 ---- private: int fd; ! ! // The following are used for the video source ! int width; ! int height; ! int palette; ! int depth; ! void * framebuffer; ! ! // The following are the equivalents for the montage bugger ! int mwidth; ! int mheight; ! int mpalette; ! int mdepth; ! void * mbuffer; ! ! int buttons; ! struct timeval buttonTime; ! int element; ! int frames; ! ! enum { ! FULL_SCREEN, ! MONTAGE_SINGLE, ! MONTAGE_SCAN, ! } montageMode; }; Index: V4LDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** V4LDesktop.cpp 28 May 2006 11:53:07 -0000 1.4 --- V4LDesktop.cpp 28 May 2006 12:09:26 -0000 1.5 *************** *** 27,30 **** --- 27,31 ---- #include <errno.h> #include <unistd.h> + #include <math.h> #include <string> *************** *** 127,138 **** --- 128,142 ---- // 16bpp, rgb565 pf = PixelFormat(16, 16, false, true, 31, 63, 31, 11, 5, 0); + depth = 2; break; case VIDEO_PALETTE_RGB24: // 24bpp, RGB24 pf = PixelFormat(24, 24, false, true, 255, 255, 255, 0, 8, 16); + depth = 3; break; case VIDEO_PALETTE_RGB32: // 32bpp, ARGB24 pf = PixelFormat(32, 24, false, true, 255, 255, 255, 0, 8, 16); + depth = 4; break; } *************** *** 140,143 **** --- 144,165 ---- (rdr::U8 *) framebuffer, 0); + buttons = 0; + buttonTime.tv_sec = 0; + buttonTime.tv_usec = 0; + element = 0; + frames = 4; + montageMode = FULL_SCREEN; + + mdepth = 3; + mwidth = 400; + mheight = 300; + mpalette = VIDEO_PALETTE_RGB24; + + mbuffer = malloc( mdepth * mwidth * mheight ); + if( mbuffer == NULL ) { + throw rdr::SystemException("Failed to allocate montage buffer", + errno); + } + memset( mbuffer, 0xff, mdepth * mwidth * mheight ); } *************** *** 159,163 **** { server = s; ! server->setPixelBuffer(pb); } --- 181,195 ---- { server = s; ! if( montageMode == FULL_SCREEN ) { ! delete pb; ! pb = new FullFramePixelBuffer(pf, width, height, ! (rdr::U8 *) framebuffer, 0); ! server->setPixelBuffer(pb); ! } else { ! delete pb; ! pb = new FullFramePixelBuffer(pf, mwidth, mheight, ! (rdr::U8 *) mbuffer, 0); ! server->setPixelBuffer(pb); ! } } *************** *** 166,174 **** --- 198,294 ---- V4LDesktop::pointerEvent(const Point& pos, rdr::U8 buttonMask) { + int frameWidth = (int)ceil( sqrt( frames * 1.0 ) ); + int elementHeight = mheight / frameWidth; + int elementWidth = mwidth / frameWidth; + int clickElement = 0; + int leftClick = 0; + int doubleClick = 0; + int rightClick = 0; + #ifdef notyet vlog.info("pointerEvent pos=%d,%d buttons=0x%x", pos.x, pos.y, buttonMask); #endif + + clickElement = (pos.y / elementHeight) * frameWidth; + clickElement += pos.x / elementWidth; + + if( buttonMask & 0x01 ) { + buttons |= 0x01; + } else if( buttons & 0x01 ) { + struct timeval rightNow; + leftClick = true; + buttons &= ~(0x01); + gettimeofday( &rightNow, NULL ); + switch( rightNow.tv_sec - buttonTime.tv_sec ) { + case 0: + doubleClick = true; + break; + case 1: + if( rightNow.tv_usec < buttonTime.tv_sec ) + doubleClick = true; + break; + } + buttonTime = rightNow; + } + if( buttonMask & 0x04 ) { + buttons |= 0x04; + } else if( buttons & 0x04 ) { + rightClick = true; + buttons &= ~(0x04); + } + + switch( montageMode ) { + case MONTAGE_SCAN: + // Left click, stop scan, change target + if( leftClick && !doubleClick ) { + element = clickElement; + montageMode = MONTAGE_SINGLE; + } + break; + case MONTAGE_SINGLE: + // Second left click, change target + if( doubleClick && ( clickElement == element ) ) { + montageMode = FULL_SCREEN; + delete pb; + pb = new FullFramePixelBuffer(pf, width, height, + (rdr::U8 *) framebuffer, 0); + server->setPixelBuffer(pb); + } else if( leftClick ) { + element = clickElement; + } + + // right click, return to scan + if( rightClick ) { + montageMode = MONTAGE_SCAN; + element = clickElement; + } + break; + case FULL_SCREEN: + // left click, return to single + if( leftClick && !doubleClick ) { + montageMode = MONTAGE_SINGLE; + memset( mbuffer, 0xff, mdepth * mwidth * mheight ); + buttonTime.tv_sec = 0; + delete pb; + pb = new FullFramePixelBuffer(pf, mwidth, mheight, + (rdr::U8 *) mbuffer, 0); + server->setPixelBuffer(pb); + } + // right click, return to scan + if( rightClick ) { + montageMode = MONTAGE_SCAN; + delete pb; + pb = new FullFramePixelBuffer(pf, mwidth, mheight, + (rdr::U8 *) mbuffer, 0); + server->setPixelBuffer(pb); + } + // Make sure we don't doubleclick + break; + } + mouse->mouseEvent(pos.x, pos.y, buttonMask); + + } *************** *** 178,181 **** --- 298,313 ---- vlog.info("keyEvent 0x%x (%s)", key, down ? "down" : "up"); keyboard->keyboardEvent(key, down); + if( !down ) { + switch( key ) { + case 0xffab: + frames++; + memset( mbuffer, 0xff, mdepth * mwidth * mheight ); + break; + case 0xffad: + frames--; + memset( mbuffer, 0xff, mdepth * mwidth * mheight ); + break; + } + } } *************** *** 187,192 **** --- 319,490 ---- void + V4LDesktop::copyPixelFragment( unsigned char * dest, int dbpp, unsigned char * src, int sbpp, int strength ) + { + int pixel; + unsigned char * sp; + + // Convert to 32bpp + switch( sbpp ) { + case 2: + pixel = *src; + pixel = (pixel << 8) & 0x00ff00; + pixel += *(src + 1) & 0x00ff; + pixel = ( ( pixel & 0x00f800 ) << 5 ) | + ( ( pixel & 0x0007e0 ) << 3 ) | + ( ( pixel & 0x00001f ) ); + break; + case 4: + pixel = *((int *)src); + case 3: + pixel = *src; + pixel = (pixel << 8) & 0x00ff00; + pixel += *(src + 1) & 0x00ff; + pixel = (pixel << 8) & 0x00ffff00; + pixel += *(src + 2) & 0x00ff; + break; + } + + // scale image + sp = (unsigned char *)&pixel; + sp[0] = (unsigned char)( ( sp[0] * strength ) >> 16 ) & 0x00ff; + sp[1] = (unsigned char)( ( sp[1] * strength ) >> 16 ) & 0x00ff; + sp[2] = (unsigned char)( ( sp[2] * strength ) >> 16 ) & 0x00ff; + sp[3] = (unsigned char)( ( sp[3] * strength ) >> 16 ) & 0x00ff; + + // convert to dest bpp and save + switch( dbpp ) { + case 2: + *dest += ( sp[1] & 0x00f8 ) | ( ( sp[2] >> 3 ) & 0x0007 ); + *(dest+1) += ( sp[3] & 0x001f ) | ( ( sp[2] << 5 ) & 0x00e0 ); + break; + case 3: + *dest += sp[2]; + *(dest+1) += sp[1]; + *(dest+2) += sp[0]; + break; + case 4: + *dest += sp[3]; + *(dest+1) += sp[2]; + *(dest+2) += sp[1]; + *(dest+3) += sp[0]; + break; + } + + } + + void + V4LDesktop::montageImage( void * dest, void * src, int sector ) + { + int lineLength; // number of pixels wide the element is + int frameWidth; // Number of elements wide + int lineHeight; // number of pixels high the element is + int remWidth; // remainder pixels per element + int remHeight; // remainder pixels per element + int borderW; // + int borderH; // + int row; // row the element is in, zero based + int col; // col the element is in, zero based + unsigned char * cp; + unsigned char * tp; + unsigned char * sp; + unsigned char portion; + unsigned int a, b, c, d; + int horizScale; + int vertScale; + int horizWeight; + int vertWeight; + int type; + + if( sector >= frames ) return; + if( sector < 0 ) return; + + frameWidth = (int)ceil( sqrt( frames * 1.0 ) ); + lineLength = ( mwidth / frameWidth ); + lineHeight = ( mheight / frameWidth ); + + row = sector / frameWidth; + col = sector % frameWidth; + + remWidth = width % frameWidth; + remHeight = height % frameWidth; + + horizScale = (width << 8) / lineLength; + vertScale = (height << 8) / lineHeight; + + // Blank out the target area. + cp = (unsigned char *)dest; + // Offset to start of element + cp += row * lineHeight * mwidth * mdepth; + cp += col * lineLength * mdepth; + for( int i = 0;i < lineHeight;i++ ) { + memset( cp, 0, lineLength * mdepth ); + cp += mwidth * mdepth; + } + + // For each source pixel + // figure out type 1, 2, 3 or 4 + // figure out dest pixel(s) + // for type 2-4 figure out percentage in each pixel + sp = (unsigned char *)src; + tp = (unsigned char *)dest; + tp += row * lineHeight * mwidth * mdepth; + tp += col * lineLength * mdepth; + + for( int j=0;j< (height);j++) { + for( int i=0;i < (width);i++) { + // Okay, We have a source pixel. This pixel may be completely + // contained inside a destination pixel. It may be apportioned + // either horizontally or vertically (or both) over more than + // one pixel. + + // Calc start and end dest pixel horizontally + a = ( i << 16 ) / horizScale; + b = ( (i + 1) << 16 ) / horizScale; + // Calc start and end pixel vertically + c = ( j << 16 ) / vertScale; + d = ( (j + 1) << 16 ) / vertScale; + + // one horizontal line of pixels at a time + for( row = (c >> 8);row <= (d >> 8);row++ ) { + // what is my value assigned to this line? + if( (c & 0x00ff00) == (d & 0x00ff00 ) ) { + vertWeight = d-c; + } else if( ( row << 8 ) < c ) { + vertWeight = 0x00ff - ( c & 0x00ff); + } else if( row >= ( d >> 8 ) ) { + vertWeight = d & 0x00ff; + } else { + vertWeight = 0x00ff; + } + + // one pixel in the line at a time + for( col = (a >> 8);col <= (b >> 8);col++ ) { + // what is my value in this pixel? + if( (a & 0x00ff00) == (b & 0x00ff00 )) { + horizWeight = b-a; + } else if( ( col << 8 ) < a ) { + horizWeight = 0x00ff - ( a & 0x00ff ); + } else if( col >= ( b >> 8 ) ) { + horizWeight = b & 0x00ff; + } else { + horizWeight = 0x00ff; + } + + cp = tp + (col * mdepth) + (row * mwidth * mdepth); + copyPixelFragment( cp, mdepth, sp, depth, horizWeight * vertWeight ); + } + } + sp += depth; + } + } + + } + + + + void V4LDesktop::poll() { + static long timestamp = 0; if (server == NULL || !server->clientsReadyForUpdate()) { return; *************** *** 196,199 **** --- 494,498 ---- // Check for a size change in the video // + //SB check for pallette change struct video_window vw; v4lioctl(fd, VIDIOCGWIN, &vw); *************** *** 208,215 **** pb = new FullFramePixelBuffer(pf, width, height, (rdr::U8 *) framebuffer, 0); ! server->setPixelBuffer(pb); mouse->syncCursor = true; } struct video_mmap vm = { 0 }; vm.frame = 0; --- 507,527 ---- pb = new FullFramePixelBuffer(pf, width, height, (rdr::U8 *) framebuffer, 0); ! ! if( montageMode == FULL_SCREEN ) { ! server->setPixelBuffer(pb); ! } mouse->syncCursor = true; } + if( montageMode == MONTAGE_SCAN ) + if( !(time(NULL) % 5) && time(NULL) != timestamp) { + element = (element + 1)%frames; + timestamp = time(NULL); + } + + if( montageMode != FULL_SCREEN ) { + montageImage( mbuffer, framebuffer, element ); + } + struct video_mmap vm = { 0 }; vm.frame = 0; *************** *** 247,248 **** --- 559,574 ---- return rc; } + + + // SBSBSB Limitations to overcome: + // stock resolution + // stock multiplier ( type 2, 3, 4 ) + // stock depth + // no third buffer for changed image + // only work with 24bpp (untested) + // limited update on montage + // properly implemented changes + // double click delay + // reduction or no-change scaling + // arbitrary screen size + // not 4:3 ratios |
From: David M. <da...@us...> - 2006-05-28 11:53:13
|
Update of /cvsroot/okvm/okvm/realvnc/rfb In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25632/realvnc/rfb Modified Files: ConnParams.cxx Makefile.in TransImageGetter.cxx transInitTempl.h transTempl.h Added Files: 24bpp.cxx Log Message: This patch allows using 24bpp data sources. This lets me use my webcams and ensures my colors are what they should be. It wasn't the easiest as there is no native 24 bit datatype. The patch uses C++ object for the 24bit data type. Scott Burns <sb...@ii...> Index: Makefile.in =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rfb/Makefile.in,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile.in 4 Nov 2005 12:17:50 -0000 1.1.1.1 --- Makefile.in 28 May 2006 11:53:07 -0000 1.2 *************** *** 47,51 **** secTypes.cxx \ util.cxx \ ! vncAuth.cxx SRCS = d3des.c $(CXXSRCS) --- 47,52 ---- secTypes.cxx \ util.cxx \ ! vncAuth.cxx \ ! 24bpp.cxx SRCS = d3des.c $(CXXSRCS) Index: transTempl.h =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rfb/transTempl.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** transTempl.h 4 Nov 2005 12:17:48 -0000 1.1.1.1 --- transTempl.h 28 May 2006 11:53:07 -0000 1.2 *************** *** 20,25 **** // // This file is #included after having set the following macros: ! // BPPIN - 8, 16 or 32 ! // BPPOUT - 8, 16 or 32 #if !defined(BPPIN) || !defined(BPPOUT) --- 20,25 ---- // // This file is #included after having set the following macros: ! // BPPIN - 8, 16, 24 or 32 ! // BPPOUT - 8, 16, 24 or 32 #if !defined(BPPIN) || !defined(BPPOUT) *************** *** 132,138 **** --- 132,145 ---- OUTPIXEL* opEndOfRow = op + width; while (op < opEndOfRow) { + #if BPPOUT == 24 + *op++ = cubeTable->operator[]( + (redTable [(*ip >> inPF.redShift) & inPF.redMax] + + greenTable[(*ip >> inPF.greenShift) & inPF.greenMax] + + blueTable [(*ip >> inPF.blueShift) & inPF.blueMax])); + #else *op++ = cubeTable[(redTable [(*ip >> inPF.redShift) & inPF.redMax] + greenTable[(*ip >> inPF.greenShift) & inPF.greenMax] + blueTable [(*ip >> inPF.blueShift) & inPF.blueMax])]; + #endif ip++; } --- NEW FILE: 24bpp.cxx --- /* Copyright (C) 2006 Scott Burns. All Rights Reserved. * * This is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This software 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. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this software; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. */ #include "rdr/types.h" using namespace rdr; U24::U24() { red = 0; green = 0; blue = 0; } U24 U24::operator+ (U24 param) { U24 temp; temp.red = red + param.red; temp.blue = red + param.blue; temp.green = red + param.green; return temp; } int U24::operator>> (int param) { int temp = blue << 16 | green << 8 | red; return temp >> param; } U24 U24::operator= (int param) { U24 temp; temp.red = param & 0x00ff; param >> 8; temp.green = param & 0x00ff; param >> 8; temp.blue = param & 0x00ff; return temp; } U24 U24::operator[] (U24 param) { U24 * temp; int offset = param >> 0; temp = this + offset; return *this; } Index: transInitTempl.h =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rfb/transInitTempl.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** transInitTempl.h 4 Nov 2005 12:17:48 -0000 1.1.1.1 --- transInitTempl.h 28 May 2006 11:53:07 -0000 1.2 *************** *** 21,25 **** // // This file is #included after having set the following macros: ! // BPPOUT - 8, 16 or 32 #if !defined(BPPOUT) --- 21,25 ---- // // This file is #included after having set the following macros: ! // BPPOUT - 8, 16, 24 or 32 #if !defined(BPPOUT) *************** *** 40,43 **** --- 40,48 ---- #endif + #ifndef SWAP24 + // SBSBSB swapping packed 24 bit colours just doesn't make sense... + #define SWAP24(n) n + #endif + #ifndef SWAP32 #define SWAP32(n) (((n) >> 24) | (((n) & 0x00ff0000) >> 8) | \ Index: TransImageGetter.cxx =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rfb/TransImageGetter.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** TransImageGetter.cxx 4 Nov 2005 12:17:52 -0000 1.1.1.1 --- TransImageGetter.cxx 28 May 2006 11:53:07 -0000 1.2 *************** *** 59,62 **** --- 59,65 ---- #include "transTempl.h" #undef BPPIN + #define BPPIN 24 + #include "transTempl.h" + #undef BPPIN #define BPPIN 32 #include "transTempl.h" *************** *** 72,75 **** --- 75,97 ---- #include "transTempl.h" #undef BPPIN + #define BPPIN 24 + #include "transTempl.h" + #undef BPPIN + #define BPPIN 32 + #include "transTempl.h" + #undef BPPIN + #undef BPPOUT + + #define BPPOUT 24 + #include "transInitTempl.h" + #define BPPIN 8 + #include "transTempl.h" + #undef BPPIN + #define BPPIN 16 + #include "transTempl.h" + #undef BPPIN + #define BPPIN 24 + #include "transTempl.h" + #undef BPPIN #define BPPIN 32 #include "transTempl.h" *************** *** 85,88 **** --- 107,113 ---- #include "transTempl.h" #undef BPPIN + #define BPPIN 24 + #include "transTempl.h" + #undef BPPIN #define BPPIN 32 #include "transTempl.h" *************** *** 94,108 **** // transRGB* is used for 16/32bpp ! static transFnType transSimpleFns[][3] = { ! { transSimple8to8, transSimple8to16, transSimple8to32 }, ! { transSimple16to8, transSimple16to16, transSimple16to32 }, }; ! static transFnType transRGBFns[][3] = { ! { transRGB16to8, transRGB16to16, transRGB16to32 }, ! { transRGB32to8, transRGB32to16, transRGB32to32 } }; ! static transFnType transRGBCubeFns[][3] = { ! { transRGBCube16to8, transRGBCube16to16, transRGBCube16to32 }, ! { transRGBCube32to8, transRGBCube32to16, transRGBCube32to32 } }; --- 119,140 ---- // transRGB* is used for 16/32bpp ! static transFnType transSimpleFns[][5] = { ! { NULL, transSimple8to8, transSimple8to16, transSimple8to24, transSimple8to32 }, ! { NULL, transSimple16to8, transSimple16to16, transSimple16to24, transSimple16to32 }, }; ! static transFnType transRGBFns[][5] = { ! { NULL, NULL, NULL, NULL, NULL }, ! { NULL, NULL, NULL, NULL, NULL }, ! { NULL, transRGB16to8, transRGB16to16, transRGB16to24, transRGB16to32 }, ! { NULL, transRGB24to8, transRGB24to16, transRGB24to24, transRGB24to32 }, ! { NULL, transRGB32to8, transRGB32to16, transRGB32to24, transRGB32to32 } }; ! // { NULL, transRGBCube16to8, transRGBCube16to16, transRGBCube16to24, transRGBCube16to32 }, ! static transFnType transRGBCubeFns[][5] = { ! { NULL, NULL, NULL, NULL, NULL }, ! { NULL, NULL, NULL, NULL, NULL }, ! { NULL, transRGBCube16to8, transRGBCube16to16, transRGBCube16to24, transRGBCube16to32 }, ! { NULL, transRGBCube24to8, transRGBCube24to16, transRGBCube24to24, transRGBCube24to32 }, ! { NULL, transRGBCube32to8, transRGBCube32to16, transRGBCube32to24, transRGBCube32to32 } }; *************** *** 120,144 **** static initCMtoTCFnType initSimpleCMtoTCFns[] = { ! initSimpleCMtoTC8, initSimpleCMtoTC16, initSimpleCMtoTC32 }; static initTCtoTCFnType initSimpleTCtoTCFns[] = { ! initSimpleTCtoTC8, initSimpleTCtoTC16, initSimpleTCtoTC32 }; static initCMtoCubeFnType initSimpleCMtoCubeFns[] = { ! initSimpleCMtoCube8, initSimpleCMtoCube16, initSimpleCMtoCube32 }; static initTCtoCubeFnType initSimpleTCtoCubeFns[] = { ! initSimpleTCtoCube8, initSimpleTCtoCube16, initSimpleTCtoCube32 }; static initTCtoTCFnType initRGBTCtoTCFns[] = { ! initRGBTCtoTC8, initRGBTCtoTC16, initRGBTCtoTC32 }; static initTCtoCubeFnType initRGBTCtoCubeFns[] = { ! initRGBTCtoCube8, initRGBTCtoCube16, initRGBTCtoCube32 }; --- 152,176 ---- static initCMtoTCFnType initSimpleCMtoTCFns[] = { ! NULL, initSimpleCMtoTC8, initSimpleCMtoTC16, initSimpleCMtoTC24, initSimpleCMtoTC32 }; static initTCtoTCFnType initSimpleTCtoTCFns[] = { ! NULL, initSimpleTCtoTC8, initSimpleTCtoTC16, initSimpleTCtoTC24, initSimpleTCtoTC32 }; static initCMtoCubeFnType initSimpleCMtoCubeFns[] = { ! NULL, initSimpleCMtoCube8, initSimpleCMtoCube16, initSimpleCMtoCube24, initSimpleCMtoCube32 }; static initTCtoCubeFnType initSimpleTCtoCubeFns[] = { ! NULL, initSimpleTCtoCube8, initSimpleTCtoCube16, initSimpleTCtoCube24, initSimpleTCtoCube32 }; static initTCtoTCFnType initRGBTCtoTCFns[] = { ! NULL, initRGBTCtoTC8, initRGBTCtoTC16, initRGBTCtoTC24, initRGBTCtoTC32 }; static initTCtoCubeFnType initRGBTCtoCubeFns[] = { ! NULL, initRGBTCtoCube8, initRGBTCtoCube16, initRGBTCtoCube24, initRGBTCtoCube32 }; *************** *** 163,171 **** const PixelFormat& inPF = pb->getPF(); ! if ((inPF.bpp != 8) && (inPF.bpp != 16) && (inPF.bpp != 32)) ! throw Exception("TransImageGetter: bpp in not 8, 16 or 32"); ! if ((outPF.bpp != 8) && (outPF.bpp != 16) && (outPF.bpp != 32)) ! throw Exception("TransImageGetter: bpp out not 8, 16 or 32"); if (!outPF.trueColour) { --- 195,203 ---- const PixelFormat& inPF = pb->getPF(); ! if ((inPF.bpp != 8) && (inPF.bpp != 16) && (inPF.bpp != 24) && (inPF.bpp != 32)) ! throw Exception("TransImageGetter: bpp in not 8, 24, 16 or 32"); ! if ((outPF.bpp != 8) && (outPF.bpp != 16) && (outPF.bpp != 24) && (outPF.bpp != 32)) ! throw Exception("TransImageGetter: bpp out not 8, 16, 24 or 32"); if (!outPF.trueColour) { *************** *** 180,185 **** if (cube) { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/16]; ! (*initSimpleCMtoCubeFns[outPF.bpp/16]) (&table, inPF, pb->getColourMap(), cube); } else { --- 212,217 ---- if (cube) { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/8]; ! (*initSimpleCMtoCubeFns[outPF.bpp/8]) (&table, inPF, pb->getColourMap(), cube); } else { *************** *** 196,204 **** if ((inPF.bpp > 16) || (economic && (inPF.bpp == 16))) { ! transFn = transRGBCubeFns[inPF.bpp/32][outPF.bpp/16]; ! (*initRGBTCtoCubeFns[outPF.bpp/16]) (&table, inPF, cube); } else { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/16]; ! (*initSimpleTCtoCubeFns[outPF.bpp/16]) (&table, inPF, cube); } --- 228,236 ---- if ((inPF.bpp > 16) || (economic && (inPF.bpp == 16))) { ! transFn = transRGBCubeFns[inPF.bpp/8][outPF.bpp/8]; ! (*initRGBTCtoCubeFns[outPF.bpp/8]) (&table, inPF, cube); } else { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/8]; ! (*initSimpleTCtoCubeFns[outPF.bpp/8]) (&table, inPF, cube); } *************** *** 222,227 **** if (inPF.bpp != 8) throw Exception("TransImageGetter: inPF has colourMap but not 8bpp"); ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/16]; ! (*initSimpleCMtoTCFns[outPF.bpp/16]) (&table, inPF, pb->getColourMap(), outPF); return; --- 254,259 ---- if (inPF.bpp != 8) throw Exception("TransImageGetter: inPF has colourMap but not 8bpp"); ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/8]; ! (*initSimpleCMtoTCFns[outPF.bpp/8]) (&table, inPF, pb->getColourMap(), outPF); return; *************** *** 231,239 **** if ((inPF.bpp > 16) || (economic && (inPF.bpp == 16))) { ! transFn = transRGBFns[inPF.bpp/32][outPF.bpp/16]; ! (*initRGBTCtoTCFns[outPF.bpp/16]) (&table, inPF, outPF); } else { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/16]; ! (*initSimpleTCtoTCFns[outPF.bpp/16]) (&table, inPF, outPF); } } --- 263,271 ---- if ((inPF.bpp > 16) || (economic && (inPF.bpp == 16))) { ! transFn = transRGBFns[inPF.bpp/8][outPF.bpp/8]; ! (*initRGBTCtoTCFns[outPF.bpp/8]) (&table, inPF, outPF); } else { ! transFn = transSimpleFns[inPF.bpp/16][outPF.bpp/8]; ! (*initSimpleTCtoTCFns[outPF.bpp/8]) (&table, inPF, outPF); } } *************** *** 247,254 **** if (outPF.trueColour) { ! (*initSimpleCMtoTCFns[outPF.bpp/16]) (&table, pb->getPF(), pb->getColourMap(), outPF); } else if (cube) { ! (*initSimpleCMtoCubeFns[outPF.bpp/16]) (&table, pb->getPF(), pb->getColourMap(), cube); } else if (writer && pb->getColourMap()) { --- 279,286 ---- if (outPF.trueColour) { ! (*initSimpleCMtoTCFns[outPF.bpp/8]) (&table, pb->getPF(), pb->getColourMap(), outPF); } else if (cube) { ! (*initSimpleCMtoCubeFns[outPF.bpp/8]) (&table, pb->getPF(), pb->getColourMap(), cube); } else if (writer && pb->getColourMap()) { Index: ConnParams.cxx =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rfb/ConnParams.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** ConnParams.cxx 4 Nov 2005 12:17:52 -0000 1.1.1.1 --- ConnParams.cxx 28 May 2006 11:53:07 -0000 1.2 *************** *** 69,74 **** pf_ = pf; ! if (pf.bpp != 8 && pf.bpp != 16 && pf.bpp != 32) ! throw Exception("setPF: not 8, 16 or 32 bpp?"); } --- 69,74 ---- pf_ = pf; ! if (pf.bpp != 8 && pf.bpp != 16 && pf.bpp != 24 && pf.bpp != 32) ! throw Exception("setPF: not 8, 16, 24 or 32 bpp?"); } |
From: David M. <da...@us...> - 2006-05-28 11:53:13
|
Update of /cvsroot/okvm/okvm/server In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25632/server Modified Files: V4LDesktop.cpp Log Message: This patch allows using 24bpp data sources. This lets me use my webcams and ensures my colors are what they should be. It wasn't the easiest as there is no native 24 bit datatype. The patch uses C++ object for the 24bit data type. Scott Burns <sb...@ii...> Index: V4LDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** V4LDesktop.cpp 24 May 2006 06:57:07 -0000 1.3 --- V4LDesktop.cpp 28 May 2006 11:53:07 -0000 1.4 *************** *** 101,104 **** --- 101,107 ---- std::cout << "Palette is RGB565" << std::endl; break; + case VIDEO_PALETTE_RGB24: + std::cout << "Palette is RGB24" << std::endl; + break; case VIDEO_PALETTE_RGB32: std::cout << "Palette is ARGB32" << std::endl; *************** *** 125,128 **** --- 128,135 ---- pf = PixelFormat(16, 16, false, true, 31, 63, 31, 11, 5, 0); break; + case VIDEO_PALETTE_RGB24: + // 24bpp, RGB24 + pf = PixelFormat(24, 24, false, true, 255, 255, 255, 0, 8, 16); + break; case VIDEO_PALETTE_RGB32: // 32bpp, ARGB24 |
From: David M. <da...@us...> - 2006-05-28 11:53:13
|
Update of /cvsroot/okvm/okvm/realvnc/rdr In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25632/realvnc/rdr Modified Files: types.h Log Message: This patch allows using 24bpp data sources. This lets me use my webcams and ensures my colors are what they should be. It wasn't the easiest as there is no native 24 bit datatype. The patch uses C++ object for the 24bit data type. Scott Burns <sb...@ii...> Index: types.h =================================================================== RCS file: /cvsroot/okvm/okvm/realvnc/rdr/types.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** types.h 4 Nov 2005 12:17:46 -0000 1.1.1.1 --- types.h 28 May 2006 11:53:06 -0000 1.2 *************** *** 52,55 **** --- 52,67 ---- }; + class U24 { + public: + unsigned char blue; + unsigned char green; + unsigned char red; + U24(); + U24 operator + (U24); + int operator >> (int); + U24 operator = (int); + U24 operator [] (U24); + }; + } // end of namespace rdr |
From: David M. <da...@us...> - 2006-05-24 07:05:09
|
Update of /cvsroot/okvm/okvm/tools In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv7894/tools Modified Files: Makefile Added Files: README.vidSource vidSource.c vidSource.h Log Message: vidSource adds a tool which uses the vloopback kernel module to provide a V4L device which cycles through solid red, green and blue. It can change resolution and color depth on command. It still needs work, but it works and it helped me. Scott Burns <sb...@ii...> Index: Makefile =================================================================== RCS file: /cvsroot/okvm/okvm/tools/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile 4 Nov 2005 12:18:04 -0000 1.1.1.1 --- Makefile 24 May 2006 07:05:04 -0000 1.2 *************** *** 14,18 **** LIBS += $(CXXLIBS) ! PROGRAMS = scan kbtest vidreg okvm-vidmode all: $(PROGRAMS) --- 14,18 ---- LIBS += $(CXXLIBS) ! PROGRAMS = scan kbtest vidreg okvm-vidmode vidSource all: $(PROGRAMS) *************** *** 38,41 **** --- 38,44 ---- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ vidreg.c $(LDLIBS) + vidSource: vidSource.c vidSource.h + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ vidSource.c $(LDLIBS) -lm + $(REALVNC_LIBS): $(MAKE) -C $(VNCDIR) --- NEW FILE: README.vidSource --- This program is designed to be used with the vloopback kernel driver. It can be used to testing the graphics section of OKVM. Initially, a fake graphics device is set up with 32bpp at 1120x840 pixels. Each second the color of the pixels with cycle through the three basic colors of red, blue and green. 32bpp, 24bpp and 16bpp have been tested. 15bpp has not. Neither 8, nor any of the more exotic depths are supported at all at this time. A shared memory section is also set up. This contains two integers representing depth and resolution. Both are enumerated types, although resolution is set to (n+1)*112 pixels wide. Resolutions are currently always 4:3 aspect ratio. The four depths are 15, 16, 24 and 32bpp, represented with zero through three respectively. Future versions should support command line options for initial depth and resolution, custom resolutions, different aspect ratios, runtime adjustments via stdin, variable update times (currently one frame per second), insertion of text into the picture, and different image adjustments in addition to R->G->B->R. --- NEW FILE: vidSource.c --- /* vidSource.c: * * Modified from resize.c distributed in cloopback package: * Example program for videoloopback device. * Copyright 2000 by Jeroen Vreeken (pe...@am...) * Copyright 2005 by Angel Carpintero (ac...@te...) * This software is distributed under the GNU public license version 2 * See also the file 'COPYING'. * * Simple program to open a loopback source, and every second * to change the picture to diferent color. Also supports * resizing and changing color depth on request depth via a * shared memory segment. * */ #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <fcntl.h> #include <string.h> #include <errno.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/shm.h> #include <signal.h> #include <sys/wait.h> #include <linux/videodev.h> #include <math.h> #include "vidSource.h" static int bpps[] = { 15, 16, 24, 32, 0 }; SHMSTRUCT * request; int curBpp = 3; int curRes = 9; static int formats[] = { VIDEO_PALETTE_RGB555, VIDEO_PALETTE_RGB565, VIDEO_PALETTE_RGB24, VIDEO_PALETTE_RGB32, 0 }; static int resolutions[] = { 112, 224, 336, 448, 560, 672, 784, 896, 1008, 1120, 0 }; unsigned char * framebuffer = NULL; int fbsize; // attach to shared memory int init_mem() { int shmid; // SBSBSB error checks shmid = shmget( SHMKEY, sizeof( SHMSTRUCT ), 0666 | IPC_CREAT ); if( shmid == -1 ) { fprintf( stderr, "Unable to find shared memory segment\n" ); exit( errno ); } request = (SHMSTRUCT *)shmat( shmid, 0, 0 ); // Seriously - why does a memory allocator return -1 on error // and not NULL? if( (int)request == -1 ) { fprintf( stderr, "Unable to attach to shared memory segment\n" ); exit( errno ); } request->depth = curBpp; request->res = curRes; return 0; } int check_mem(int dev) { int i; if( request->depth != curBpp || request->res != curRes ) { for( i = 0;i < request->depth;i++ ) { if( bpps[i] == 0 ) { fprintf( stderr, "Invalid depth requested - %d\n", request->depth ); request->depth = curBpp; } } for( i = 0;i < request->res;i++ ) { if( resolutions[i] == 0 ) { fprintf( stderr, "Invalid depth requested - %d\n", request->depth ); request->depth = curRes; } } if( request->depth != curBpp || request->res != curRes ) { start_pipe( dev ); } } return 0; } int start_pipe (int dev) { struct video_capability vid_caps; struct video_window vid_win; struct video_picture vid_pic; int pixSize; int i; int resx; int resy; int bpp; unsigned char * cp; curBpp = request->depth; curRes = request->res; printf( "Starting pipe %d %d\n", curBpp, curRes ); pixSize = (int)ceil( bpps[curBpp] / 8.0 ); bpp = formats[curBpp]; resx = resolutions[curRes]; resy = (resx * 3 ) / 4; if (ioctl (dev, VIDIOCGCAP, &vid_caps) == -1) { printf ("ioctl (VIDIOCGCAP)\nError[%s]\n",strerror(errno)); return (1); } if (ioctl (dev, VIDIOCGPICT, &vid_pic)== -1) { printf ("ioctl VIDIOCGPICT\nError[%s]\n",strerror(errno)); return (1); } vid_pic.palette = bpp; if (ioctl (dev, VIDIOCSPICT, &vid_pic)== -1) { printf ("ioctl VIDIOCSPICT\nError[%s]\n",strerror(errno)); return (1); } if (ioctl (dev, VIDIOCGWIN, &vid_win)== -1) { printf ("ioctl VIDIOCGWIN"); return (1); } vid_win.width = resx; vid_win.height = resy; // this always errors but still works ioctl (dev, VIDIOCSWIN, &vid_win); if( framebuffer ) { free( framebuffer ); } printf( "Mallocing %d\n", pixSize * resx * resy ); framebuffer = malloc( pixSize * resx * resy ); if( framebuffer == NULL ) { fprintf( stderr, "Unable to allocate memory\n" ); exit( errno ); } cp = framebuffer; printf( "Running through %d at %d bpp\n", resx * resy, curBpp ); for( i = 0; i < resx * resy;i++ ) { switch( curBpp ) { case 3: *cp++ = 0x00; case 2: *cp++ = 0x00; *cp++ = 0xff; *cp++ = 0x00; break; case 1: case 0: *cp++ = 0xf8; *cp++ = 0x00; break; default: break; } } printf( "Ran through %d\n", (int)cp - (int)framebuffer ); return 0; } int put_image(int dev ) { int pixSize = ceil( bpps[curBpp] / 8.0 ); int resx = resolutions[curRes]; int resy = ( resx * 3 ) / 4; int i; unsigned char temp; unsigned char * cp = framebuffer; for( i = 0; i < resx * resy;i++ ) { switch( curBpp ) { case 3: case 2: temp = *cp; *cp = *(cp + 1 ); *(cp+1) = *(cp + 2 ); *(cp+2) = temp; cp+=pixSize; break; case 1: // RGB565 temp = *cp >> 3; // R *cp = *cp << 5; *cp |= (*(cp+1) & 0xc0 ) >> 3; // G *cp |= (*(cp+1) & 0x1c ) >> 2; cp++; *cp = (*cp & 0x03) << 6; // Copy the last bit from the second last *cp |= *cp & 0x01 << 5; // B *cp |= temp; cp++; break; case 0: // RGB555 temp = *cp >> 2; // R *cp = *cp << 5; *cp |= (*(cp+1) & 0xc0 ) >> 3; // G *cp |= (*(cp+1) & 0x1c ) >> 2; cp++; *cp = *cp & 0x03 << 6; // B *cp |= temp; break; default: // SBSBSB break; } } printf( "Writing %d\n", pixSize * resx * resy ); write( dev, framebuffer, pixSize * resx * resy ); return 1; } int main (int argc, char **argv) { int devout; if (argc != 2) { printf("Usage:\n\n"); printf("vidSource <device>\n\n"); printf("example: vidSource /dev/video0\n\n"); exit(1); } devout=open (argv[1], O_RDWR); if (devout < 0) { printf ("Failed to open video device%s \nError[%s]\n",argv[1],strerror(errno)); exit(1); } init_mem(); if( start_pipe(devout) ) exit(0); while ( 1 ) { put_image( devout ); printf( "%d %d\n", curBpp, curRes ); sleep( 1 ); check_mem(devout); } close (devout); exit(0); } --- NEW FILE: vidSource.h --- /* vidSource.h: * * Copyright 2006 by Scott Burns (sb...@ii...) * This software is distributed under the GNU public license version 2 * See also the file 'COPYING'. * * Simple program to open a loopback source, and every second * to change the picture to diferent color. Also supports * resizing and changing color depth on request depth via a * shared memory segment. * */ #ifndef __H_VID_SOURCE_H__ #define __H_VID_SOURCE_H__ typedef struct shmstruct { int depth; int res; } SHMSTRUCT; #define SHMKEY 0x1234 int init_mem( void ); int check_mem( int ); int start_pipe( int ); int put_image( int ); #endif |
From: David M. <da...@us...> - 2006-05-24 06:57:10
|
Update of /cvsroot/okvm/okvm/server In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv5250/server Modified Files: V4LDesktop.cpp V4LDesktop.h Log Message: Fixup palette handling so the we work with devices other than the okvm hardware. Scott Burns <sb...@ii...> Index: V4LDesktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** V4LDesktop.h 5 Nov 2005 10:59:53 -0000 1.2 --- V4LDesktop.h 24 May 2006 06:57:07 -0000 1.3 *************** *** 57,60 **** --- 57,61 ---- int width; int height; + int palette; void* framebuffer; }; Index: V4LDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** V4LDesktop.cpp 5 Nov 2005 10:59:53 -0000 1.2 --- V4LDesktop.cpp 24 May 2006 06:57:07 -0000 1.3 *************** *** 96,99 **** --- 96,100 ---- v4lioctl(fd, VIDIOCGPICT, &vp); v4lioctl(fd, VIDIOCSPICT, &vp); + palette = vp.palette; switch (vp.palette) { case VIDEO_PALETTE_RGB565: *************** *** 208,211 **** --- 209,213 ---- vm.width = width; vm.height = height; + vm.format = palette; v4lioctl(fd, VIDIOCMCAPTURE, &vm); |
From: David M. <da...@us...> - 2006-05-24 06:55:04
|
Update of /cvsroot/okvm/okvm/drivers/okvm In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv4522/drivers/okvm Modified Files: Makefile Log Message: Fix up the make clean to remove a few extra files Scott Burns <sb...@ii...> Index: Makefile =================================================================== RCS file: /cvsroot/okvm/okvm/drivers/okvm/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile 4 Nov 2005 12:18:05 -0000 1.1.1.1 --- Makefile 24 May 2006 06:55:00 -0000 1.2 *************** *** 45,47 **** --- 45,49 ---- clean: rm -f *.o *.ko *.mod.* + rm -rf .tmp_versions + rm -f .*.{ko,o}.cmd |
From: David M. <da...@us...> - 2006-01-11 12:40:19
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2234 Modified Files: Makefile Log Message: Make sure we install the 2.6 driver as well :-) Index: Makefile =================================================================== RCS file: /cvsroot/okvm/okvm/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 7 Nov 2005 23:20:06 -0000 1.2 --- Makefile 11 Jan 2006 12:40:07 -0000 1.3 *************** *** 61,65 **** install -D tools/okvm-vidmode $(PREFIX)/bin/okvm-vidmode install -D realvnc/vncpasswd/vncpasswd $(PREFIX)/bin/okvm-vncpasswd ! install -D drivers/okvm/okvm.o /lib/modules/$(KERNEL_VERSION)/okvm/okvm.o depmod -a install -d /dev/okvm --- 61,66 ---- install -D tools/okvm-vidmode $(PREFIX)/bin/okvm-vidmode install -D realvnc/vncpasswd/vncpasswd $(PREFIX)/bin/okvm-vncpasswd ! -install -D drivers/okvm/okvm.o /lib/modules/$(KERNEL_VERSION)/okvm/okvm.o ! -install -D drivers/okvm/okvm.ko /lib/modules/$(KERNEL_VERSION)/okvm/okvm.ko depmod -a install -d /dev/okvm |
From: David M. <da...@us...> - 2006-01-11 12:22:15
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31426 Modified Files: README Log Message: remove tabs and replace with spaces Index: README =================================================================== RCS file: /cvsroot/okvm/okvm/README,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** README 11 Jan 2006 12:10:01 -0000 1.5 --- README 11 Jan 2006 12:22:07 -0000 1.6 *************** *** 184,188 **** - Soekris Geode 266MHz, 2.4 - uClinux - AMD Athlon 3000+ / Debian Testing / 2.4 ! - AMD Athlon 1.4GHz 512MB RAM / Debian / 2.4 and 2.6 kernels The OKVM PCI card has been successfully tested with the following KVM switches: --- 184,188 ---- - Soekris Geode 266MHz, 2.4 - uClinux - AMD Athlon 3000+ / Debian Testing / 2.4 ! - AMD Athlon 1.4GHz 512MB RAM / Debian / 2.4 and 2.6 kernels The OKVM PCI card has been successfully tested with the following KVM switches: |
From: David M. <da...@us...> - 2006-01-11 12:10:11
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27495 Modified Files: README Log Message: More test platforms Index: README =================================================================== RCS file: /cvsroot/okvm/okvm/README,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** README 10 Jan 2006 11:29:27 -0000 1.4 --- README 11 Jan 2006 12:10:01 -0000 1.5 *************** *** 184,187 **** --- 184,188 ---- - Soekris Geode 266MHz, 2.4 - uClinux - AMD Athlon 3000+ / Debian Testing / 2.4 + - AMD Athlon 1.4GHz 512MB RAM / Debian / 2.4 and 2.6 kernels The OKVM PCI card has been successfully tested with the following KVM switches: |
From: David M. <da...@us...> - 2006-01-10 11:29:42
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18107 Modified Files: README Log Message: Add a status section to highlight working/non-working parts of the project. More spelling fixes ;-) Index: README =================================================================== RCS file: /cvsroot/okvm/okvm/README,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** README 10 Jan 2006 11:07:40 -0000 1.3 --- README 10 Jan 2006 11:29:27 -0000 1.4 *************** *** 7,19 **** Contents: ! 1) What you need ! 2) Compiling and Installing ! 3) Running ! 4) Adjusting Video modes ! 5) Tested Hardware ! 6) Finding more Information ! 1) What you need ---------------- --- 7,46 ---- Contents: ! 1) Project Status ! 2) What you need ! 3) Compiling and Installing ! 4) Running ! 5) Adjusting Video modes ! 6) Tested Hardware ! 7) Finding more Information ! 1) Project Status ! ----------------- ! ! The current state of the OKVM Project is still early development. ! Here is a rough list of what works and what doesn't. ! ! * There is only a very limited set of video modes. Generally it is enough ! to get sync and see most of the screen for basic resolutions up to 1024x768. ! It is fairly easy to add new modes (see below). ! ! * DMA is not working on the okvm hardware at this point. This means the ! frame rate is low and the cpu usage is rather high. At present about ! 3 frames/second is expected. Though this is reasonably usable for ! console mode VGA and low resolution graphics. ! ! The slow frame rate also limits the keyboard/mouse response, though ! type ahead, mouse ahead and click ahead help a lot, it still prevents ! some mouse operations (ie., double click) from working as expected. ! ! * There appears to be a lockup after some time when using 2.6 kernels. ! 2.4 kernels appear to be quite stable. ! ! * The sampling phase usually needs to be adjusted for each installation ! to reduce the bandwidth requirements, however, it still seems to be ! producing more changes per frame than expected. ! ! 2) What you need ---------------- *************** *** 21,57 **** things. ! a) A recent 2.4 or 2.6 linux system. You will need a working C++ ! devsystem. You will also need to be build modules for your running ! kernel. ! On a Debian system, installing the appropriate kernel-headers ! package should provide this for you. ! b) You need the "libevent" development headers and libraries installed. ! ! On a Debian system "apt-get install libevent-dev" will get you the ! correct files. ! c) You will need the ssl development libraries and headers. ! On a Debian system "apt-get install libssl-dev" will get you the ! correct files. ! d) You will need the zlib development libraries and headers. ! On a Debian system "apt-get install zlib1g-dev" will get you the ! correct files. ! On a Mandrake system "urpmi --fuzzy zlib-devel" will get you the ! correct files. ! e) Lastly, you need the "videodev" module for your kernel. This should ! come with most modern linux kernel configurations. ! On a debian system the latest kernel packages include this module. ! Run "modinfo videodev" to see if you have the driver available. ! 2) Compiling and Installing --------------------------- --- 48,84 ---- things. ! a) A recent 2.4 or 2.6 Linux system. You will need a working C++ ! devsystem. You will also need to be build modules for your running ! kernel. ! On a Debian system, installing the appropriate kernel-headers ! package should provide this for you. ! b) You need the "libevent" development headers and libraries installed. ! ! On a Debian system "apt-get install libevent-dev" will get you the ! correct files. ! c) You will need the ssl development libraries and headers. ! On a Debian system "apt-get install libssl-dev" will get you the ! correct files. ! d) You will need the zlib development libraries and headers. ! On a Debian system "apt-get install zlib1g-dev" will get you the ! correct files. ! On a Mandrake system "urpmi --fuzzy zlib-devel" will get you the ! correct files. ! e) Lastly, you need the "videodev" module for your kernel. This should ! come with most modern Linux kernel configurations. ! On a Debian system the latest kernel packages include this module. ! Run "modinfo videodev" to see if you have the driver available. ! 3) Compiling and Installing --------------------------- *************** *** 66,70 **** top level Makefile and change the PREFIX value. ! 3) Running ---------- --- 93,97 ---- top level Makefile and change the PREFIX value. ! 4) Running ---------- *************** *** 74,100 **** as root to run these commands. ! # okvm-vncpasswd /etc/okvm-passwd ! Password: ! Verify: ! # Once you have a password, load the drivers and start the server: ! modprobe videodev ! modprobe okvm ! okvm-server -passwordfile=/etc/okvm-passwd & You should now be able to connect to the server with most VNC clients. The experience will be much better if your VNC client can handle Window ! resizes appropriately. For example the debian "xvncviewer" does not handle resizes and will exit, but "xvnc4viewer" will handle them just fine. ! On Debian system "apt-get install xvnc4viewer" will get the appropriate ! version. Then you can run: ! xvnc4viewer <ip-address-of-machine-running-okvm-server> You should be prompted for the password, and after entering it a screen --- 101,127 ---- as root to run these commands. ! # okvm-vncpasswd /etc/okvm-passwd ! Password: ! Verify: ! # Once you have a password, load the drivers and start the server: ! modprobe videodev ! modprobe okvm ! okvm-server -passwordfile=/etc/okvm-passwd & You should now be able to connect to the server with most VNC clients. The experience will be much better if your VNC client can handle Window ! resizes appropriately. For example the Debian "xvncviewer" does not handle resizes and will exit, but "xvnc4viewer" will handle them just fine. ! On Debian system "apt-get install xvnc4viewer" will get the appropriate ! version. Then you can run: ! xvnc4viewer <ip-address-of-machine-running-okvm-server> You should be prompted for the password, and after entering it a screen *************** *** 104,108 **** mode. ! 4) Adjusting Video modes ------------------------ --- 131,135 ---- mode. ! 5) Adjusting Video modes ------------------------ *************** *** 112,116 **** the best possible video quality. ! This is currently a fairly manualy process. First run okvm-vidtune and note the ifh/vfh settings. --- 139,143 ---- the best possible video quality. ! This is currently a fairly manually process. First run okvm-vidtune and note the ifh/vfh settings. *************** *** 119,137 **** what you want and then fill out the fields as best you can. Here is a guide: ! width display width in pixels ie., the 800 in 800x600 ! height display height in pixels ie., the 600 in 800x600 ! pixclk pixel clock (MHz), you monitor or video settings may provide ! these. If running xfree86 (or derivative), xvidtune should ! give you these values. ! full_width full width (pixels) including front/back porch etc ! this should be 20-30% more than the width. ! left_margin offset of first real pixel from left ! top_margin offset of first real line from top ! hpol hsync polarity, 0=-ve 1=positive ! vpol vsync polarity, 0=-ve 1=positive ! ifh value of ifh detection register ! ifv value of ifv detection register ! phase pixel phase sampling (16 is a good starting point) ! name mode name Once you have you mode in and compiled, restart and run okvm-vidtune and --- 146,164 ---- what you want and then fill out the fields as best you can. Here is a guide: ! width display width in pixels ie., the 800 in 800x600 ! height display height in pixels ie., the 600 in 800x600 ! pixclk pixel clock (MHz), you monitor or video settings may provide ! these. If running xfree86 (or derivative), xvidtune should ! give you these values. ! full_width full width (pixels) including front/back porch etc ! this should be 20-30% more than the width. ! left_margin offset of first real pixel from left ! top_margin offset of first real line from top ! hpol hsync polarity, 0=-ve 1=positive ! vpol vsync polarity, 0=-ve 1=positive ! ifh value of ifh detection register ! ifv value of ifv detection register ! phase pixel phase sampling (16 is a good starting point) ! name mode name Once you have you mode in and compiled, restart and run okvm-vidtune and *************** *** 147,175 **** ! 5) Tested Hardware ------------------ The OKVM PCI card and driver is known to work on the following configurations: ! - DELL Dimension XPS T500 / Mandriva Limited Edition 2005 / 2.6.11-6mdk ! - DELL Simension L466c / Ubuntu 5.10 "Breezy Badger" / 2.6.12-9-386 ! - Celeron 2.66GHz 512M RAM / Fedora Core 4 / 2.6.11-1.1369_FC4 ! - Soekris Geode 266MHz, 2.4 - uClinux ! - AMD Athlon 3000+ / Debian Testing / 2.4 The OKVM PCI card has been successfully tested with the following KVM switches: ! - Belkin OmniView PRO2 8 port switch ! 6) Finding more Information --------------------------- For more information on the okvm project, visit these links. ! Web: http://okvm.sourceforge.net/ ! SourceForge: http://sourceforge.net/projects/okvm/ ! Email: da...@us... ! Mailing List: okv...@li... For more information on the components that make up the OKVM PCI card, --- 174,202 ---- ! 6) Tested Hardware ------------------ The OKVM PCI card and driver is known to work on the following configurations: ! - DELL Dimension XPS T500 / Mandriva Limited Edition 2005 / 2.6.11-6mdk ! - DELL Simension L466c / Ubuntu 5.10 "Breezy Badger" / 2.6.12-9-386 ! - Celeron 2.66GHz 512M RAM / Fedora Core 4 / 2.6.11-1.1369_FC4 ! - Soekris Geode 266MHz, 2.4 - uClinux ! - AMD Athlon 3000+ / Debian Testing / 2.4 The OKVM PCI card has been successfully tested with the following KVM switches: ! - Belkin OmniView PRO2 8 port switch ! 7) Finding more Information --------------------------- For more information on the okvm project, visit these links. ! Web: http://okvm.sourceforge.net/ ! SourceForge: http://sourceforge.net/projects/okvm/ ! Email: da...@us... ! Mailing List: okv...@li... For more information on the components that make up the OKVM PCI card, *************** *** 178,210 **** can also download the hardware design info (okvm-internal-doc*.zip). ! AD9884A ! http://www.analog.com/en/prod/0%2C2877%2CAD9884A%2C00.html ! PCI9054 ! http://www.plxtech.com/products/io_accelerators/PCI9054/default.htm ! XC9536XL ! http://www.xilinx.com/bvdocs/publications/ds058.pdf ! XILINX ISE SW ! http://www.xilinx.com/ise/logic_design_prod/webpack.htm ! IDT71V30 ! http://www1.idt.com/pcms/products.taf?catID=58642&genID=71V30#Datasheet ! AT89LS52 ! http://www.atmel.com/dyn/products/product_card.asp?family_id=604&family_name=8051+Architecture&part_id=1922 ! 93LC46B ! http://ww1.microchip.com/downloads/en/DeviceDoc/21794b.pdf ! LM1117DT-ADJ & LM1117MPX-ADJ ! http://www.national.com/pf/LM/LM1117.html ! CRYSTAL ! http://www.hy-q.com.au/pdf/10120069.pdf ! OSCILLATOR ! http://www.hy-q.com.au/pdf/10120058.pdf ! SDRAM ! http://www.hynix.com/datasheet/eng/dram/details/dram_01_HY57V283220T(P).jsp ! 74LCX573 ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! PCA9564D ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! j-L201 PRODUCT BROCHURE ! http://www.jepico.co.jp/product/ap/english/index.html ! Copyright (C) 2005, David McCullough <da...@us...> --- 205,236 ---- can also download the hardware design info (okvm-internal-doc*.zip). ! AD9884A ! http://www.analog.com/en/prod/0%2C2877%2CAD9884A%2C00.html ! PCI9054 ! http://www.plxtech.com/products/io_accelerators/PCI9054/default.htm ! XC9536XL ! http://www.xilinx.com/bvdocs/publications/ds058.pdf ! XILINX ISE SW ! http://www.xilinx.com/ise/logic_design_prod/webpack.htm ! IDT71V30 ! http://www1.idt.com/pcms/products.taf?catID=58642&genID=71V30#Datasheet ! AT89LS52 ! http://www.atmel.com/dyn/products/product_card.asp?family_id=604&family_name=8051+Architecture&part_id=1922 ! 93LC46B ! http://ww1.microchip.com/downloads/en/DeviceDoc/21794b.pdf ! LM1117DT-ADJ & LM1117MPX-ADJ ! http://www.national.com/pf/LM/LM1117.html ! CRYSTAL ! http://www.hy-q.com.au/pdf/10120069.pdf ! OSCILLATOR ! http://www.hy-q.com.au/pdf/10120058.pdf ! SDRAM ! http://www.hynix.com/datasheet/eng/dram/details/dram_01_HY57V283220T(P).jsp ! 74LCX573 ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! PCA9564D ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! j-L201 PRODUCT BROCHURE ! http://www.jepico.co.jp/product/ap/english/index.html Copyright (C) 2005, David McCullough <da...@us...> |
From: David M. <da...@us...> - 2006-01-10 11:07:52
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14655 Modified Files: README Log Message: Add tested hardware sections and fixed a few more typos and required packages. Index: README =================================================================== RCS file: /cvsroot/okvm/okvm/README,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** README 7 Nov 2005 23:19:00 -0000 1.2 --- README 10 Jan 2006 11:07:40 -0000 1.3 *************** *** 11,15 **** 3) Running 4) Adjusting Video modes ! 5) Finding more Information --- 11,16 ---- 3) Running 4) Adjusting Video modes ! 5) Tested Hardware ! 6) Finding more Information *************** *** 29,41 **** b) You need the "libevent" development headers and libraries installed. ! On a Debian system "apt-get install libevent-dev" will get you teh correct files. c) You will need the ssl development libraries and headers. ! On a Debian system "apt-get install libssl-dev" will get you teh correct files. ! d) Lastly, you need the "videodev" module for your kernel. This should come with most modern linux kernel configurations. --- 30,50 ---- b) You need the "libevent" development headers and libraries installed. ! On a Debian system "apt-get install libevent-dev" will get you the correct files. c) You will need the ssl development libraries and headers. ! On a Debian system "apt-get install libssl-dev" will get you the correct files. ! d) You will need the zlib development libraries and headers. ! ! On a Debian system "apt-get install zlib1g-dev" will get you the ! correct files. ! ! On a Mandrake system "urpmi --fuzzy zlib-devel" will get you the ! correct files. ! ! e) Lastly, you need the "videodev" module for your kernel. This should come with most modern linux kernel configurations. *************** *** 54,58 **** the driver, applications and special device files appropriately. ! If you do not want teh files installed into /usr/local/bin, edit the top level Makefile and change the PREFIX value. --- 63,67 ---- the driver, applications and special device files appropriately. ! If you do not want the files installed into /usr/local/bin, edit the top level Makefile and change the PREFIX value. *************** *** 62,66 **** Firstly you will want to create a password file for simple authentication in the server. Put in an appropriate filename and then enter your password ! for accessing the server when it is running. # okvm-vncpasswd /etc/okvm-passwd --- 71,76 ---- Firstly you will want to create a password file for simple authentication in the server. Put in an appropriate filename and then enter your password ! for accessing the server when it is running. You will need to be logged in ! as root to run these commands. # okvm-vncpasswd /etc/okvm-passwd *************** *** 137,141 **** ! 5) Finding more Information --------------------------- --- 147,167 ---- ! 5) Tested Hardware ! ------------------ ! ! The OKVM PCI card and driver is known to work on the following configurations: ! ! - DELL Dimension XPS T500 / Mandriva Limited Edition 2005 / 2.6.11-6mdk ! - DELL Simension L466c / Ubuntu 5.10 "Breezy Badger" / 2.6.12-9-386 ! - Celeron 2.66GHz 512M RAM / Fedora Core 4 / 2.6.11-1.1369_FC4 ! - Soekris Geode 266MHz, 2.4 - uClinux ! - AMD Athlon 3000+ / Debian Testing / 2.4 ! ! The OKVM PCI card has been successfully tested with the following KVM switches: ! ! - Belkin OmniView PRO2 8 port switch ! ! ! 6) Finding more Information --------------------------- |
From: David M. <da...@us...> - 2005-11-07 23:20:14
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9951 Modified Files: Makefile Log Message: Up the revision for a 0.2 release, mostly doco updates. Index: Makefile =================================================================== RCS file: /cvsroot/okvm/okvm/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile 4 Nov 2005 12:17:41 -0000 1.1.1.1 --- Makefile 7 Nov 2005 23:20:06 -0000 1.2 *************** *** 4,8 **** # ! OKVM_VERSION = 0.1 KERNEL_VERSION = $(shell uname -r) REQUIRED_LIBS = libevent.a libcrypto.a --- 4,8 ---- # ! OKVM_VERSION = 0.2 KERNEL_VERSION = $(shell uname -r) REQUIRED_LIBS = libevent.a libcrypto.a |
From: David M. <da...@us...> - 2005-11-07 23:19:13
|
Update of /cvsroot/okvm/okvm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9760 Modified Files: README Log Message: Add links to all the relevant HW doc Index: README =================================================================== RCS file: /cvsroot/okvm/okvm/README,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** README 4 Nov 2005 12:17:41 -0000 1.1.1.1 --- README 7 Nov 2005 23:19:00 -0000 1.2 *************** *** 140,147 **** --------------------------- ! Web: http://okvm.sourceforge.net/ ! SourceForge: http://sourceforge.net/projects/okvm/ ! Email: da...@us... ! Mailing List: okv...@li... --- 140,183 ---- --------------------------- ! For more information on the okvm project, visit these links. ! ! Web: http://okvm.sourceforge.net/ ! SourceForge: http://sourceforge.net/projects/okvm/ ! Email: da...@us... ! Mailing List: okv...@li... ! ! For more information on the components that make up the OKVM PCI card, ! these links should be a big help. The sourceforge downloads page contains ! a file with all this documentation included (okvm-external-doc*.zip). You ! can also download the hardware design info (okvm-internal-doc*.zip). ! ! AD9884A ! http://www.analog.com/en/prod/0%2C2877%2CAD9884A%2C00.html ! PCI9054 ! http://www.plxtech.com/products/io_accelerators/PCI9054/default.htm ! XC9536XL ! http://www.xilinx.com/bvdocs/publications/ds058.pdf ! XILINX ISE SW ! http://www.xilinx.com/ise/logic_design_prod/webpack.htm ! IDT71V30 ! http://www1.idt.com/pcms/products.taf?catID=58642&genID=71V30#Datasheet ! AT89LS52 ! http://www.atmel.com/dyn/products/product_card.asp?family_id=604&family_name=8051+Architecture&part_id=1922 ! 93LC46B ! http://ww1.microchip.com/downloads/en/DeviceDoc/21794b.pdf ! LM1117DT-ADJ & LM1117MPX-ADJ ! http://www.national.com/pf/LM/LM1117.html ! CRYSTAL ! http://www.hy-q.com.au/pdf/10120069.pdf ! OSCILLATOR ! http://www.hy-q.com.au/pdf/10120058.pdf ! SDRAM ! http://www.hynix.com/datasheet/eng/dram/details/dram_01_HY57V283220T(P).jsp ! 74LCX573 ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! PCA9564D ! http://www.onsemi.com/PowerSolutions/product.do?id=MC74LCX573 ! j-L201 PRODUCT BROCHURE ! http://www.jepico.co.jp/product/ap/english/index.html |
Update of /cvsroot/okvm/okvm/server In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17936/server Modified Files: Desktop.h KVMDesktop.cpp KVMDesktop.h OkvmPS2Interface.cpp OkvmPS2Interface.h PS2Device.h PS2Interface.h PS2Keyboard.cpp PS2Keyboard.h PS2Mouse.cpp PS2Mouse.h SSLSocketListener.cpp SSLSocketListener.h TestDesktop.cpp TestDesktop.h V4LDesktop.cpp V4LDesktop.h okvm-server.cpp Log Message: Fix up some missing GPL headers in the source Index: SSLSocketListener.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/SSLSocketListener.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** SSLSocketListener.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- SSLSocketListener.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <network/Socket.h> Index: PS2Interface.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Interface.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Interface.h 4 Nov 2005 12:18:06 -0000 1.1.1.1 --- PS2Interface.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 3,6 **** --- 3,21 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #ifndef _OKVM_PS2INTERFACE_H_ Index: Desktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/Desktop.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Desktop.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- Desktop.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <rfb/VNCServer.h> Index: PS2Keyboard.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Keyboard.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Keyboard.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- PS2Keyboard.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <iostream> #include <map> Index: PS2Keyboard.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Keyboard.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Keyboard.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- PS2Keyboard.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <map> Index: TestDesktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/TestDesktop.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** TestDesktop.h 4 Nov 2005 12:18:06 -0000 1.1.1.1 --- TestDesktop.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <rfb/VNCServer.h> Index: OkvmPS2Interface.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/OkvmPS2Interface.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** OkvmPS2Interface.cpp 4 Nov 2005 12:18:06 -0000 1.1.1.1 --- OkvmPS2Interface.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <stdio.h> #include <fcntl.h> Index: SSLSocketListener.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/SSLSocketListener.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** SSLSocketListener.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- SSLSocketListener.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <sys/types.h> #include <sys/time.h> Index: KVMDesktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/KVMDesktop.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** KVMDesktop.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- KVMDesktop.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <rfb/VNCServer.h> Index: PS2Mouse.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Mouse.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Mouse.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- PS2Mouse.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <list> Index: OkvmPS2Interface.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/OkvmPS2Interface.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** OkvmPS2Interface.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- OkvmPS2Interface.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 3,6 **** --- 3,21 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #ifndef _OKVM_OKVMPS2INTERFACE_H_ Index: okvm-server.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/okvm-server.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** okvm-server.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- okvm-server.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <sys/types.h> #include <sys/time.h> Index: V4LDesktop.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** V4LDesktop.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- V4LDesktop.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 4,7 **** --- 4,22 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <rfb/VNCServer.h> Index: V4LDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/V4LDesktop.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** V4LDesktop.cpp 4 Nov 2005 12:18:06 -0000 1.1.1.1 --- V4LDesktop.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <sys/types.h> #include <sys/time.h> Index: TestDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/TestDesktop.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** TestDesktop.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- TestDesktop.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <sys/types.h> #include <sys/time.h> Index: KVMDesktop.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/KVMDesktop.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** KVMDesktop.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- KVMDesktop.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <sys/types.h> #include <sys/time.h> Index: PS2Device.h =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Device.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Device.h 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- PS2Device.h 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 3,6 **** --- 3,21 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #ifndef _OKVM_PS2DEVICE_H_ Index: PS2Mouse.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/server/PS2Mouse.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2Mouse.cpp 4 Nov 2005 12:18:07 -0000 1.1.1.1 --- PS2Mouse.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 2,5 **** --- 2,20 ---- // Copyright (C) 2005, OpenGear (http://www.opengear.com/) // + // This is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2 of the License, or + // (at your option) any later version. + // + // This software 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. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with this software; if not, write to the Free Software + // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + // #include <iostream> #include <map> |
From: David M. <da...@us...> - 2005-11-05 11:00:04
|
Update of /cvsroot/okvm/okvm/tools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17936/tools Modified Files: PS2KeyboardTest.cpp PS2MouseTest.cpp kbtest.cpp main.cpp scan.c vidreg.c Log Message: Fix up some missing GPL headers in the source Index: main.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/tools/main.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** main.cpp 4 Nov 2005 12:18:04 -0000 1.1.1.1 --- main.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 1,2 **** --- 1,21 ---- + /* + * Copyright (C) 2005, OpenGear (http://www.opengear.com/) + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. + */ + #include <sys/param.h> #include <sys/time.h> Index: kbtest.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/tools/kbtest.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** kbtest.cpp 4 Nov 2005 12:18:05 -0000 1.1.1.1 --- kbtest.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 1,2 **** --- 1,21 ---- + /* + * Copyright (C) 2005, OpenGear (http://www.opengear.com/) + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. + */ + #include <sys/types.h> #include <termios.h> Index: PS2MouseTest.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/tools/PS2MouseTest.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2MouseTest.cpp 4 Nov 2005 12:18:04 -0000 1.1.1.1 --- PS2MouseTest.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 1,2 **** --- 1,21 ---- + /* + * Copyright (C) 2005, OpenGear (http://www.opengear.com/) + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. + */ + // PS2MouseTest.cpp #include <vector> Index: scan.c =================================================================== RCS file: /cvsroot/okvm/okvm/tools/scan.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** scan.c 4 Nov 2005 12:18:05 -0000 1.1.1.1 --- scan.c 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 6,9 **** --- 6,24 ---- * Copyright (C) 2005, Greg Ungerer <gre...@op...> * Copyright (C) 2005, OpenGear (http://www.opengear.com/) + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. */ Index: vidreg.c =================================================================== RCS file: /cvsroot/okvm/okvm/tools/vidreg.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** vidreg.c 4 Nov 2005 12:18:05 -0000 1.1.1.1 --- vidreg.c 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 1,2 **** --- 1,21 ---- + /* + * Copyright (C) 2005, David McCullough <da...@us...> + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. + */ + #include <stdio.h> #include <stdlib.h> Index: PS2KeyboardTest.cpp =================================================================== RCS file: /cvsroot/okvm/okvm/tools/PS2KeyboardTest.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PS2KeyboardTest.cpp 4 Nov 2005 12:18:04 -0000 1.1.1.1 --- PS2KeyboardTest.cpp 5 Nov 2005 10:59:53 -0000 1.2 *************** *** 1,2 **** --- 1,21 ---- + /* + * Copyright (C) 2005, OpenGear (http://www.opengear.com/) + * + * This is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This software 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. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + * USA. + */ + // PS2KeyboardTest.cpp #include <vector> |