Ejemplo n.º 1
0
/*---------------------------------------------------------------------------
     TITLE   :	main          
     WORK    : 	
     			메인 함수
     ARG     : 	void
     RET     : 	
     			int
---------------------------------------------------------------------------*/
int main(void)
{
	u8 Ch;
	u8 Ret;
	u32 i;


	Main_Init();


	//-- 명령어 처리
	//  
	//Ap_Menu_ExeCmd();    

	while(1)
	{
		Hw_Led_On(0);
		Hw_Wait_ms(1000);
		Hw_Led_Off(0);
		Hw_Wait_ms(1000);		
	}
    
    while(1);

    return 0;
}
Ejemplo n.º 2
0
Archivo: main.c Proyecto: jsdf/previous
/**
 * Main
 * 
 * Note: 'argv' cannot be declared const, MinGW would then fail to link.
 */
int main(int argc, char *argv[])
{
	/* Generate random seed */
	srand(time(NULL));

	/* Initialize directory strings */
	Paths_Init(argv[0]);

	/* Set default configuration values: */
	Configuration_SetDefault();

	/* Now load the values from the configuration file */
	Main_LoadInitialConfig();
    
#if 0 /* FIXME: This sometimes causes exits when starting from application bundles */
	/* Check for any passed parameters */
	if (!Opt_ParseParameters(argc, (const char * const *)argv))
	{
		return 1;
	}
#endif
	/* monitor type option might require "reset" -> true */
	Configuration_Apply(true);

#ifdef WIN32
	Win_OpenCon();
#endif

	/* Needed on maemo but useful also with normal X11 window managers
	 * for window grouping when you have multiple Hatari SDL windows open
	 */
#if HAVE_SETENV
	setenv("SDL_VIDEO_X11_WMCLASS", "previous", 1);
#endif

	/* Init emulator system */
	Main_Init();

	/* Set initial Statusbar information */
	Main_StatusbarSetup();
	
	/* Check if SDL_Delay is accurate */
	Main_CheckForAccurateDelays();


	/* Run emulation */
	Main_UnPauseEmulation();
	M68000_Start();                 /* Start emulation */


	/* Un-init emulation system */
	Main_UnInit();

	return 0;
}
Ejemplo n.º 3
0
/*---------------------------------------------------------------------------
     TITLE   :	main          
     WORK    : 	
     			메인 함수
     ARG     : 	void
     RET     : 	
     			int
---------------------------------------------------------------------------*/
int main(void)
{
	int key;
	u32 TimeStart;
	u32 TimeEnd;
	
	Main_Init();

	//-- 명령어 처리
	//  
	Ap_Menu_ExeCmd();    


    while(1);
    
    return 0;
}
Ejemplo n.º 4
0
/*---------------------------------------------------------------------------
     TITLE   : main
     WORK    :
     ARG     : void
     RET     : void
---------------------------------------------------------------------------*/
int main(void)
{

	Main_Init();



	//-- Thread 정의
	//
	osThreadDef( THREAD_LED  , Thread_LED  , osPriorityNormal, 0, configMINIMAL_STACK_SIZE );
	osThreadDef( THREAD_MAIN , Thread_Main , osPriorityNormal, 0, configMINIMAL_STACK_SIZE );


	//-- Thread 생성
	//
	Thread_Handle_Led   = osThreadCreate(osThread(THREAD_LED) , NULL);
	Thread_Handle_Main  = osThreadCreate(osThread(THREAD_MAIN), NULL);


	osMutexDef(osMutex_VCom);
	osMutex_VCom = osMutexCreate(osMutex(osMutex_VCom));


	PowerON = 1;


	//-- 스케줄러 시작
	//
    osKernelStart();


    while(1)
    {
    }

}
Ejemplo n.º 5
0
int main(void)
{	
	U16 Dis = 0;
	U16 cnt;
	U16 ccnt;
	
	Main_Init();
	/*
				X_Move_deg();
			}
				_delay_ms(500);
	*/
	while(1)	
	{	/*
		for(cnt=0; cnt<200; cnt++)
			{
				X_Move_deg();
			}
			*/

		
		if( startpoint1 == 1 )
		{
			startpoint1 = 0;
			X_Move_Startpoint();
			_delay_ms(100);
			Y_Move_Startpoint();

		}

		else if( startpoint2 == 1)
		{
			startpoint2 = 0;
			Moving(); // until start point 

			for(ccnt=0; ccnt<17; ccnt++)
			{
				for(cnt=0; cnt<200; cnt++)
				{
					X_Move_deg();
				}
				_delay_ms(1);
				
				if( BREAK_NUM0 == 1)
				{
					BREAK_NUM0 = 0;
					_delay_ms(1);
					X_Move_Return();
				}	
				_delay_ms(500);
				///////////////////////////// X_sensing and return until this line
				Y_Move_Simple(CCW);
				_delay_ms(1);
				
				if( BREAK_NUM1 == 1 )
				{
					BREAK_NUM1 = 0;
					break;
				}
			}
				
		}
		
		else if( startpoint3 == 1)
		{
			startpoint3 = 0;
			for(cnt=0; cnt<200; cnt++)
			{
				X_Move_deg();
			}
			_delay_ms(1);
			
			if( BREAK_NUM0 == 1)
			{
				BREAK_NUM0 = 0;
				_delay_ms(1);
				X_Move_Return();
			}	
		}
	

		else if(startpoint4 == 1)
		{	
			startpoint4 = 0;
			X_Move_deg();
			//Read_ADC_NOSTOP(0);
			//Dis = (( (11.65/(( ADC/204.8) - 0.147 )) - 0.42 ) * 10)-4;
			//Uart_U16Bit_PutNum(1,Dis);
		}
		
		else if(startpoint5 == 1)
		{	
			startpoint5 = 0;
			X_Move_Return();
			
		}
	}
	
		/*	
		Read_ADC(0);
		Dis = (( (11.65/((ADC/204.8) - 0.147) ) - 0.42 ) * 10)-4;
		Uart_U16Bit_PutNum(1,Dis);
	*/
	
	
	return 0;
}
Ejemplo n.º 6
0
/* Main Entry into program */
int main( int argc, char **argv )
{
	int				time, oldtime, newtime;

	/* whether or not the window is active */
    int isActive = True;
	/* main loop variable */
    int done = False;
	/* used to collect events */
    SDL_Event event;
	/* Flags to pass to SDL_SetVideoMode */
	int initFlags;

	/* Timing */
	int thisframe = 0;
	static int lastframe = 0;

	/* check endian */
    if( Swap_SysBigEndian() )
		printf( "System Byte Order: Big Endian\n" );
    else
		printf( "System Byte Order: Little Endian\n" );

	

	window_created = False;

	vidinfo.height		=  DEFAULT_VIEWPORT_WIDTH;
	vidinfo.width		=  DEFAULT_VIEWPORT_HEIGHT;
	vidinfo.bpp			=  DEFAULT_VIEWPORT_BPP;

	
	vidinfo.fullscreen	=  DEFAULT_VIEWPORT_FULLSCREEN;
	vidinfo.mode		=  DEFAULT_VIDMODE;

	initFlags = SDL_INIT_VIDEO;

	if( JOYSTICK_SUPPORT )
		initFlags |= SDL_INIT_JOYSTICK;

    /* initialize SDL */
    if ( SDL_Init( initFlags ) < 0 )
	{
	    fprintf( stderr, "Video initialization failed: %s\n",
		     SDL_GetError( ) );
	    OS_Error( 1, va("Video initialization failed: %s\n",
		     SDL_GetError()) );
	}

	OS_SetVidMode( vidinfo.mode, vidinfo.fullscreen );

	/* Name our Window */
	SDL_WM_SetCaption( S_VERSION, 0 );

		/* set up keyboard delay */
	//SDL_EnableKeyRepeat( 0, 0 );


	/* Hide cursor and grab input */
	SDL_ShowCursor(0);
	SDL_WM_GrabInput(SDL_GRAB_ON);
	SDL_WarpMouse( (unsigned short)(vidinfo.width/2), (unsigned short)(vidinfo.height/2) );
	
	Main_Init();

	oldtime = OS_Milliseconds ();

    /* wait for events */
    while ( !done )
	{
		thisframe = OS_Milliseconds();

	    /* handle the events in the queue */
	    while ( SDL_PollEvent( &event ) )
		{
		    switch( event.type )
			{
			case SDL_ACTIVEEVENT:
			    /* Something's happend with our focus
			     * If we lost focus or we are iconified, we
			     * shouldn't draw the screen
			     */
/*			    if ( event.active.gain == 0 )
				isActive = FALSE;
			    else
				isActive = True;
*/			    break;
				/*
			case SDL_VIDEORESIZE:
			    // handle resize event 
			    surface = SDL_SetVideoMode( event.resize.w,
							event.resize.h,
							VIEWPORT_BPP, videoFlags );
			    if ( !surface )
				{
				    fprintf( stderr, "Could not get a surface after resize: %s\n", SDL_GetError( ) );
					G_Shutdown();
				    OS_Quit( 1 );
				}
			    Ren_WindowSize( event.resize.w, event.resize.h );
			    break;
				*/
			case SDL_KEYDOWN:
			case SDL_KEYUP:
				OS_HandleKeyEvent( &event.key );
				break;
			case SDL_MOUSEBUTTONDOWN:
			case SDL_MOUSEBUTTONUP:
				OS_HandleMouseButton( &event.button );
				break;
		//	case SDL_JOYAXISMOTION:
		//		OS_HandleJoyMotion( &event.jaxis );
		//		break;
			case SDL_JOYBUTTONDOWN:
			case SDL_JOYBUTTONUP:
				OS_HandleJoyButton( &event.jbutton );
				break;
			case SDL_QUIT:
			    /* handle quit requests */
			    done = True;
			    break;
			default:
			    break;
			}
		}

		do
		{
			newtime = OS_Milliseconds ();
			time = newtime - oldtime;
		} while (time < 1);

		Main_Frame(time);
		
	}

    /* clean ourselves up and exit */
    OS_Quit( 0 );

    /* Should never get here */
    return( 0 );

}
Ejemplo n.º 7
0
Archivo: Main.c Proyecto: bochaqos/tol
/*------------------------------------------------------------------------------

 FUNCTION NAME: Main_Main

 DESCRIPTION: Main application routine

 PARAMETERS:
   - INPUT:

   - OUTPUT:

 RETURN: Nothing

 NOTES:

------------------------------------------------------------------------------*/
void Main_Main (void)
{
t_uchar     Lines[2] = {9,ETC};
unsigned long AuxInitialFreeMemory = 0;

  /* Precalculate Terminal Type */
  (void) Util_GetTerminalType();
 
#if defined (FEDORA_VERSION)
  /* Cleans /etc/rc.local by deleting old MAEL settings */
  /* Util_RemoveIpLinesFromRcLocal(); */
#endif
  
#if defined (NT_VERSION)
  _setcursortype (_NOCURSOR);
  clrscr ();
#endif

  /* Debug */ /*printf ("_stklen = %lu\n", (t_ulong) _stklen); getch (); */
  /* Debug */ /*printf ("stackavail = %lu\n", (t_ulong) stackavail()); getch (); */
  
  /*
  for (;;)
  {
    int Key;
    printf ("%d\n", (Key = getch ()));
    if (Key == '!')
      exit (0);
  }
  */

  /* Debug: Heap test */
  /*
  #if !defined (NT_VERSION)
    printf ("Total memory available before init = %lu bytes\n", (t_ulong) coreleft ());
    getch ();
  #endif
  */
  /* MAEL Version */
  #if defined(FEDORA_VERSION)
    /* TO DO */

  #else

  #if !defined (NT_VERSION)
    /* Gets free memory before initializations */
    AuxInitialFreeMemory = coreleft ();
  #endif

  #endif /* MAEL Version */

  /* Initializtions */
  Main_Init ();

  /* DEBUG Parallel ports */
  /*
  {
    int STATUS;
  
    STATUS = Parallel_SendBuffer (1, "MAMONEZ MAMONEZ MAMONEZ", 23);
    printf("\nSTATUS = %d\n", STATUS);
    getch();
    Main_EndApp ();
    exit (0);
  }
  */
  /* Stores initil free memory in dynamic database */
  DB_GLOBAL_DYNAMIC.DB_INITIAL_FREE_MEMORY = AuxInitialFreeMemory;

  /* Debug: Heap test */
  /*
  #if !defined (NT_VERSION)
    printf ("Total memory available after init  = %lu bytes\n", (t_ulong) coreleft ());
    getch ();
  #endif
  */
  /* Debug */
  /*
  {
    t_uchar KbStatus = 0, Aux = 0;
    t_ushort Idx;
    
    for (;;)
    {
      bioskey (2);
      _asm cli;
      for (Idx = 0; 
           Idx < 1000 &&
           (inportb (0x64) & 0x02); 
           Idx++);
      if (!(inportb (0x64) & 0x02))
        outport (0x64, 0xe0);
      _asm sti;
      _asm cli;
      outport (0x60, 0xee);
      _asm sti;
      delay (100);
      Aux = inportb (0x64);
      if (KbStatus != Aux)
      {
        KbStatus = Aux;
        printf ("0x64 = %x\n", KbStatus);
      }
    }
  }
  for (;;)
  {
    int Mask;
    char Key;
    Mask = inportb (0x0279);
    printf ("%X\n", Mask);
    Key = getch ();
    if (Key == '!')
      exit (0);
  } */ /* endfor */

  /*
  {
    char Buffer[100], str[100];
  
    Buffer[0] = '&';
    Buffer[1] = '%';
    Buffer[2] = 'O';
    Buffer[3] = 'M';
    Buffer[4] = 0x80;
    strcpy (str, "123456789012345678901234567890123456789012345678901234567890");
    Printer_Write (0, (char *) Buffer,  5);
    Printer_Write (0, (char *) str,  strlen (str));
    Printer_LineFeed (0);
    Printer_Write (0, (char *) Buffer,  5);
    Printer_Write (0, (char *) Buffer,  5);
    Printer_Write (0, (char *) Buffer,  5); 
  } */ /* Debug */

#ifdef PC_TERMINAL

  /*size = imagesize (1, 0, 17, 25);
  clearviewport ();
  putpixel(0, 0, WHITE);
  putpixel(1, 0, 1);
  putpixel(1, 1, 1);
  putpixel(10, 11, BLUE);
  putpixel(12, 10, BLUE);
  putpixel(13, 10, WHITE);
  putpixel(14, 10, BLUE);
  putpixel(15, 10, BLUE);
  putpixel(16, 10, WHITE);
  putpixel(17, 10, BLUE);
  getimage (1, 0, 17, 25, image);
  getch ();

  Main_EndApp();
  printf ("image size = %d\n", (int) size);
  for (idx = 0; idx < size; idx++)
    printf ("%02x ", (int) image[idx]);
  return 0;*/

  /* Test printer port */
  /*{ */
    /*outportb (0x037A, inportb (0x037A) | 0x04); */
  /*
    int Key, Mask;
    Key = 0;
    while (Key != '!')
    {
      Mask = biosprint (2, 0, 0);
   */
      /*Mask = inportb (0x0379); */
   /*
      printf ("Printer Status = %x\n", Mask);
      if (Mask & 0x01) printf ("                 Device timeout\n");
      if (Mask & 0x08) printf ("                 I/O error     \n");
      if (Mask & 0x10) printf ("                 Selected      \n");
      if (Mask & 0x20) printf ("                 Out of paper  \n");
      if (Mask & 0x40) printf ("                 Acknowledge   \n");
      if (Mask & 0x80) printf ("                 Not busy      \n");
      if (Mask & 0x01) printf ("                 Device timeout\n");
      if (Mask & 0x01) printf ("                 Device timeout\n");
      printf ("\n! to exit: ");
   */
      /*Mask = inportb (0x037A); */
      /*printf ("Printer Control = %x\n", Mask); */
   /*
      Key = getch ();
   */
      /*if (Key == 'c' || Key == 'C') */
      /*{ */
      /*  outportb (0x0378, 25); */
      /*  outportb (0x037A, inportb (0x037A) | 0x01); */
      /*  outportb (0x037A, inportb (0x037A) & (~0x01)); */
      /*  delay (1); */
      /*  continue; */
      /*} */
/*
    }
    return 0;
  } 
*/

#endif
  
#ifdef STANDALONE_VERSION
  {

  int GameIdx;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para Standalone Version                              */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL.DB_TERMINAL.OperationMode = OPERATIONMODE_STANDALONE;

  DB_GLOBAL.DB_TERMINAL.TimeZone       = 0;
  DB_GLOBAL.DB_TERMINAL.MaxTicketPrice = 1000000;
  DB_GLOBAL.DB_TERMINAL.AppMinVersion  = 10;
  DB_GLOBAL.DB_TERMINAL.Agency         = 123;
  DB_GLOBAL.DB_TERMINAL.Province       = 51;
  DB_GLOBAL.DB_TERMINAL.AgencyHostId   = 1234567;
  strcpy (DB_GLOBAL.DB_TERMINAL.PhoneNumber, "935408394");
  DB_GLOBAL.DB_TERMINAL.DialMode       = 'T';
  strcpy (DB_GLOBAL.DB_TERMINAL.OwnerName, "CBA DEMO");
  strcpy (DB_GLOBAL.DB_TERMINAL.OwnerAddress, "C. CBA s/n");
  Util_TranslateSpecialChars (DB_GLOBAL.DB_TERMINAL.OwnerAddress);
  strcpy (DB_GLOBAL.DB_TERMINAL.OwnerCityZip, "08320");
  strcpy (DB_GLOBAL.DB_TERMINAL.OwnerPhone, "935550538");
  strcpy (DB_GLOBAL.DB_TERMINAL.CurrencyString, "$");
  DB_GLOBAL.DB_TERMINAL.TicketConfBeforePrint = TRUE;
/*  DB_GLOBAL.DB_TERMINAL.MaxIdleTime    = 15 * 60000; */ /* 15 minutes in msec */
  DB_GLOBAL.DB_TERMINAL.MaxIdleTime    = 0; /* No autologin */

  for (GameIdx = 0; GameIdx < MAX_GAMES; GameIdx++)
  { /* Non zero init. data */
    DB_GLOBAL_DYNAMIC.DB_GAMES.Game[GameIdx].MaxTicketPrice = 100000;
  } /* endfor */

  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames = 0;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos por juego para Standalone Version                    */
  /*-------------------------------------------------------------------------*/

#if defined (LNSE)
  /* 25-06-03 Duvi Appending Standalone Data on DB_GLOBAL_DYNAMIC for 
     Cucu Game  replacing SUPER8 game. 
     29-07-10 Duvi. Codigo Eliminado. Buscar en SourceSafe como se poblaba la 
     tabla para Super8 o CuCu
  */

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_BORRATINA                                  */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_BORRATINA;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Borratina");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[0].DrawName, "MATUTINO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[1].DrawName, "VESPERTINO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[2].DrawName, "URUGUAY");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[3].DrawName, "NOCTURNO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[4].DrawName, "PRIMERA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 10;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "NACIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "P. BB.AA.");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].LotteryName, "CORDOBA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].LotteryName, "SANTA FE");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[4].LotteryName, "PIZZI");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[4].BetPrice = 0.5;
  /* RFS 218 - Q10L */
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[5].LotteryName, "EXT 6");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[5].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[6].LotteryName, "EXT 7");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[6].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[7].LotteryName, "EXT 8");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[7].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[8].LotteryName, "EXT 9");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[8].BetPrice = 0.5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[9].LotteryName, "EXT 10");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[9].BetPrice = 0.5;

  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
  /* End RFS 17 - CUCU */

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_QUINI6                                     */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_QUINI6;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Quini6");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 4;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 3;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "Premio Extra");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].LotteryName, "REVANCHA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].BetPrice = 3;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].LotteryName, "Sale o Sale");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].BetPrice = 3;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_Q6NG                                       */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_Q6NG;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Q6 Perdedoras");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 4;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 3;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "Premio Extra");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].LotteryName, "REVANCHA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].BetPrice = 3;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].LotteryName, "Sale o Sale");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].BetPrice = 3;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_LOTO                                       */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_LOTO;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Loto");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  /*DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 0x8F; 

  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 4;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 2;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "YAPA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].LotteryName, "DESQUITE");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].BetPrice = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].LotteryName, "SOS");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;  

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_QUINIELA                                   */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_QUINIELA;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "La Quiniela");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[0].DrawName, "MATUTINO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[1].DrawName, "VESPERTINO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[2].DrawName, "URUGUAY");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[3].DrawName, "NOCTURNO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[4].DrawName, "SABADO");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].DrawData[5].DrawName, "PRIMERA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 10;
  
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "NACIONAL");
  /* RFS 0913: $0.50 not allowed for Amounts. Min Bet Price is $1 now */
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;

  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "P. BB.AA.");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0;
  
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].LotteryName, "CORDOBA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[2].BetPrice = 0;
  
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].LotteryName, "SANTA FE");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[3].BetPrice = 0;
  
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[4].LotteryName, "PIZZI");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[4].BetPrice = 0;

  /* 01-03-04 Duvi RFS 218 - Q10L - Appending Standalone Data on DB_GLOBAL_DYNAMIC for Q10L.*/
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[5].LotteryName, "EXT6");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[5].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[6].LotteryName, "EXT7");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[6].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[7].LotteryName, "EXT8");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[7].BetPrice = 0;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[8].LotteryName, "EXT9");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[8].BetPrice = 0; 
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[9].LotteryName, "EXT10");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[9].BetPrice = 0;
  /* End. RFS 218 */ 
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_POCEADA                                    */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_POCEADA;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "La Quiniela Poceada");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
  
  /* RFS 1141 - Leo_20120911_1703
   * Game key definition
   */
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_TOMBOLINA                                    */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_TOMBOLINA;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "La Tombolina");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 3;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_BRINCO                                     */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_BRINCO;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Brinco");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_PRODE_TRD                                  */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_PRODE_TRD;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Prode Tradicional");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

#if defined (ENABLE_GAME_PRODE_BANCA)
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_PRODE_BNC                                  */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_PRODE_BNC;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Banca de Prode");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
#endif

#if defined (ENABLE_GAME_PRODE_RESULTADOS)
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_PRODE_RSL                                  */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_PRODE_RSL;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Prode Resultados");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
#endif

#if defined (ENABLE_GAME_PRODE_GOL)
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_PRODE_GOL                                  */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_PRODE_GOL;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Prode Primer Gol");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
#endif

#if defined (ENABLE_GAME_TRIFECTA)
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_TRIFECTA                                   */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_TRIFECTA;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Trifecta");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;
#endif

  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_LOTO5;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "Loto 5");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 2;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 2;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].LotteryName, "PREMIO EXTRA");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[1].BetPrice = 0;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

#if defined (HORSES_GAMES)
  /*-------------------------------------------------------------------------*/
  /* Poblacion de Datos para GAME_HORSES                                     */
  /*-------------------------------------------------------------------------*/
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameType = GAME_HORSES;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameDescription, "HIPICOS");
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].GameAuxName, "TICKET NO VALIDO");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Permissive = 15;
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].NumLotteries = 1;
  strcpy (DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].LotteryName, "TRADICIONAL");
  DB_GLOBAL_DYNAMIC.DB_GAMES.Game[DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames].Lottery[0].BetPrice = 1;
  DB_GLOBAL_DYNAMIC.DB_GAMES.NumGames++;

#endif

#endif

  }

  DB_GLOBAL.DB_TERMINAL.InitializedTerminal = TRUE;

#endif

  /* Infinite loop until exit flag */
  Auto_PushReaderState (READER_DISABLE);
  for (;;)
  {
    DB_GLOBAL_DYNAMIC.DB_MODE_SALE    = FALSE;
    DB_GLOBAL_DYNAMIC.DB_PERM_TICKET  = FALSE;
    DB_GLOBAL_DYNAMIC.DB_PERM_BETSLIP = FALSE;

    GrphText_CursorAttribute (FALSE, LINE_1, FONT_7X5);
    GrphText_Cls (TRUE);
    GrphText_Format (Lines);

#if defined (SCANNER_DEBUG)
    (void) Util_MaintainDebugLog(PDISCAN_DEBUG_LOG, 
                                 CBA_MAX_LOG_SIZE, 
                                 CBA_MIN_LOG_SIZE);
#endif

    /* XPS 22-JUL-2003 */
    /* Inicialize game horses */
    #if defined (HORSES_GAMES)
      Config_InitHorsesEnvironment ();
      Config_InitHorsesGamesList ();
    #endif

    /* User login procedure */
    Display_UserLogin ();

    /* Clear Display */
    GrphText_CursorAttribute (FALSE, LINE_1, FONT_7X5);
    GrphText_Cls (TRUE);

    DB_GLOBAL_DYNAMIC.DB_MODE_SALE = TRUE;
    Display_Cabecera ();
    Auto_ResetReader ();
    Auto_PushReaderState (READER_ENABLE);

    /* Loop in manual module */
    Manual_SetSimKeysState (TRUE);
    Manual_Secuencia();
    Manual_SetSimKeysState (FALSE);

    /* Clears display */
    GrphText_Cls(TRUE);
    Auto_PopReaderState ();

    /* Logout operation */
    Prot_LogInOut (USER_LOGOUT, 0, 0);

  } /* endfor */
  Auto_PopReaderState ();

  Main_EndApp (FALSE, FALSE);

} /* Main_Main */
Ejemplo n.º 8
0
int main(void)
{	
	
	S16 cnt; // when operation for x_move_deg(ccw), it makes cnt<0
	U16 ccnt;
	U16 stCNT;
	U08 i;
	Main_Init();

	lcd_iw(0x01);
	lcd_str(str1);	//Welcome to 3D
	lcd_iw(0xc0);	
	lcd_str(str2);	//Scanning world
	
	while(1)	
	{	

		//------------------------------------------------------------------------------ 
		//		=== AUTO MODE ===
		//------------------------------------------------------------------------------
		if( Instruction[0] == 1)
		{	
			Instruction[0] = 0;
			
			Uart_Putch( 0,SIG_To2[0] );	//SIG_To2
			
			lcd_iw(0x01);
			lcd_str(str3);	//<Sensing...>
			lcd_iw(0xc0);	
			lcd_str(str4);	//<Please, Wait^^>"
			
			Lets_Do_FirstStep(); // until start point 
			_delay_ms(1);
			
			for( stCNT=0; stCNT<55000; stCNT++ )
			{
				Y_StepMotor_Move_1step(CCW);
				_delay_us(600);
		
				if( BREAK_NUM1 == 1 )
				{	
					cbi( TIMSK, TOIE0 );
					_delay_ms(10);
					
					Height = (56 * result_op_cnt);
					arr[1] = (Height/1000);
					arr[2] = (Height%1000)/100;
					arr[4] = ((Height%100)/10);
					arr[5] = ((Height%10));

					lcd_iw(0x01); // ALL CLEAR
					lcd_str(str5);	//<The Height is: >				
					lcd_iw(0xc0);
					
					lcd_dw('<');	//1//0
					for(i=1 ;i<3 ;i++)
					{
						lcd_dw(arr[i]+48);	//1//1,2
					}			//4
					lcd_dw('.');	//3//3
					for(i=4 ;i<6 ;i++)
					{
						lcd_dw(arr[i]+48);	//1//4,5
					}			//4//4,5
					lcd_dw('c');	//6		
					lcd_dw('m');	//7
					lcd_dw('>');	//8
					break;
				}
			}
			_delay_ms(10);	//system delay
			
			Y_Move_Startpoint();
			///////////////////////////////measuring op_time until this line
			Uart_Putch(0,SIG_To2[0]);	
			
			lcd_iw(0x01);
			lcd_str(str6);	//<Scanning..>
			lcd_iw(0xc0);	
			lcd_str(str4);	//<Please, Wait^^>"
			
			Lets_Do_FirstStep();
			
			for(ccnt=0; ccnt<25; ccnt++)
			{
				while(1)
				{	
					WRONG_SIG = 0;

					X_Move_Startpoint(CCW);
		
					_delay_ms(10);	//system delay
					
					for(cnt=0; cnt<200; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}
					for(cnt=0; cnt<210; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}

					_delay_ms(10);
					Filter();
					_delay_ms(10);
					
					X_Move_Startpoint(CCW);
						
					//Compare_Dis();
					
					//if( WRONG_SIG == 0 )
						//{
						Percent[ccnt] = ((5200/Height)*(ccnt+2));
						Percent10[ccnt] = Percent[ccnt]/10;
						Percent1[ccnt] = Percent[ccnt]%10;
						
						lcd_iw(0x01);
						lcd_str(str6);
						lcd_dw(Percent10[ccnt]+48);
						lcd_dw(Percent1[ccnt]+48);
						lcd_dw('%');
						lcd_dw('>');
						
						break;					//wonder the closest repeat sentence ..while(1)? yeap!
					//}
					
				}	
				_delay_ms(10);
				///////////////////////////// X_sensing and return until this line
				Y_Move_Simple(CCW);
				
				if( BREAK_NUM1 == 1 )
				{
					BREAK_NUM1 = 0;
					
					X_Move_Startpoint(CCW);
					
					_delay_ms(10);
					
					for(cnt=0; cnt<200; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}
					for(cnt=0; cnt<210; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}

					_delay_ms(10);
					Filter();
					_delay_ms(10);
					
					X_Move_Startpoint(CCW);
					
					
					lcd_iw(0x01);
					lcd_str(str8);	//100% Done
					Y_Move_Startpoint();
			
					Uart_Putch(0,SIG_To2[2]);	//sig to2 : laser off

					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);	//laser off complete
					_delay_ms(1000);
					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);
					_delay_ms(1000);
					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);
					_delay_ms(1000);

				 break;
				}
			}
		}

		//------------------------------------------------------------------------------ 
		//		=== FAST MODE ===
		//------------------------------------------------------------------------------		
		else if( Instruction[1] == 1)
		{
			Instruction[1] = 0;
			
			Uart_Putch(0,SIG_To2[0]);	
			
			lcd_iw(0x01), lcd_str(str11), lcd_iw(0xc0), lcd_str(str6);	//< Fast Mode > <Scanning..>
			
			Lets_Do_FirstStep();
			
			for(ccnt=0; ccnt<25; ccnt++)
			{
				while(1)
				{	
					WRONG_SIG = 0;

					X_Move_Startpoint(CCW);
		
					_delay_ms(10);	//system delay
					
					for(cnt=0; cnt<200; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}
					for(cnt=0; cnt<210; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}

					_delay_ms(10);
					Filter();
					_delay_ms(10);
				
					X_Move_Startpoint(CCW);

					break;
					/*
					Compare_Dis();
					if( WRONG_SIG == 0 )
					{			
						break;					//wonder the closest repeat sentence ..while(1)? yeap!
					}
					*/
				}	
				_delay_ms(10);
				///////////////////////////// X_sensing and return until this line
				Y_Move_Simple(CCW);
				
				if( BREAK_NUM1 == 1 )
				{
					BREAK_NUM1 = 0;
					
					X_Move_Startpoint(CCW);
					_delay_ms(10);
					
					for(cnt=0; cnt<200; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}
					for(cnt=0; cnt<210; cnt++)
					{
						X_Move_deg(CW);
						SENSING_CW[cnt] = Dis;
					}
					
					_delay_ms(10);
					Filter();
					_delay_ms(10);
					
					X_Move_Startpoint(CCW);

					//X_Move_Startpoint(CCW);
					
					lcd_iw(0x01);
					lcd_str(str8);	//100% Done
					
					Y_Move_Startpoint();
					_delay_ms(10);
					
					Uart_Putch(0,SIG_To2[2]);	//sig to2 : laser off

					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);	//laser off	Complete
					_delay_ms(1000);
					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);	//laser off	Complete
					_delay_ms(1000);
					lcd_iw(0x01), lcd_str(str9), lcd_iw(0xc0), lcd_str(str10);	//laser off	Complete

					break;
				}
			}
		}
		
		//------------------------------------------------------------------------------ 
		//		=== X_MOVE_LEFT ===
		//------------------------------------------------------------------------------
		else if( Instruction[2] == 1 )
		{
			Instruction[2] = 0;
			
			X_Move_Startpoint(CCW);
			_delay_ms(3);
			//X_Move_Startpoint();
			//_delay_ms(3);
			
		}
		
		//------------------------------------------------------------------------------ 
		//		=== X_MOVE_RIGHT ===
		//------------------------------------------------------------------------------
		else if( Instruction[3] == 1 )
		{	
			Instruction[3] = 0;
			X_Move_Startpoint(CW);
			_delay_ms(3);
		}
		/////////////////////////////////////////////////////////////////////////////
		else if(Instruction[4] == 1)
		{	
			Instruction[4] = 0;
			//Data_to_PC();
			
					/*
					for(i=1 ;i<6 ;i++)
					{
						Uart_Putch(1,arr[i]);
					}		
					*/
					for(ccnt=0;ccnt<10;ccnt++)
					{
						Height = 896;
						Percent[ccnt] = ((Height/80)*(ccnt+1));
					
						Percent10[ccnt] = Percent[ccnt]/10;
						Percent1[ccnt] = Percent[ccnt]%10;
						
						lcd_iw(0x01);
						lcd_str(str6);
						//lcd_iw(0xc0);
						lcd_dw(Percent10[ccnt]+48);
						lcd_dw(Percent1[ccnt]+48);
						lcd_dw('%');
						lcd_dw('>');
						_delay_ms(2000);
					}
		}
		
	}

	return 0;
}