1a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat/* This example shows how to use 15-bit (which is handled as 16-bit 2a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat internally). */ 3a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat 4a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat#include <rfb/rfb.h> 5a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat 6a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehatint main(int argc,char** argv) 7a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat{ 8a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat int i,j; 9a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat uint16_t* f; 10a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat 11a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat rfbScreenInfoPtr server=rfbGetScreen(&argc,argv,400,300,5,3,2); 12a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat if(!server) 13a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat return 0; 14a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat server->frameBuffer=(char*)malloc(400*300*2); 15a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat f=(uint16_t*)server->frameBuffer; 16a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat for(j=0;j<300;j++) 17a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat for(i=0;i<400;i++) 18a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat f[j*400+i]=/* red */ ((j*32/300) << 10) | 19a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat /* green */ (((j+400-i)*32/700) << 5) | 20a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat /* blue */ ((i*32/400)); 21a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat 22a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat rfbInitServer(server); 23a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat rfbRunEventLoop(server,-1,FALSE); 24a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat return(0); 25a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat} 26