Joc constituit de impingerea unor blocuri de diverse tipuri printr-un labirint.
Scopul final este aducerea blocurilor pe anumite pozitii fixate, pe harta.
Jucatorul va fi perturbat de anumite spoturi de laser care pot fi manipulate
cu switch-uri.
Site-ul oficial al jocului: http://www.sokofun.de/
Asa arata versiunea jocului original
Am folosit biblioteca pcd8544 de interfatare cu LCD-ul.
Functiile folosite:
void LCD_init ( void ); void LCD_clear ( void ); void LCD_update ( void ); void LCD_gotoXY ( unsigned char x, unsigned char y ); void LCD_writeChar ( unsigned char character ); void LCD_writeChar_megaFont ( unsigned char character ); void LCD_writeData ( unsigned char data ); void LCD_writeCommand ( unsigned char command ); void LCD_writeString_megaFont ( char *string ); void LCD_writeString_F ( const char *string); void LCD_setPixel ( unsigned char x, unsigned char y); void LCD_clearPixel ( unsigned char x, unsigned char y); void LCD_drawLine ( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2 ); void LCD_drawBorder (void ); void LCD_drawSplash (void ); void delay_ms ( int millisec ); void spi_init(void);
Am pierdut foarte mult timp la construirea placutei, care a fost corodata prost. Au sărit unele lipituri, porţiuni de circuit care lipseau complet... Am reuşit să o fac să meargă în cele din urmă. Cred că LCD-ul de Nokia cumpărat a fost stricat. Am cumpărat încă unul care tot nu merge. Am încercat să alimentez şi cu altă plăcuţă şi tot nu se aprinde. Am renunţat la continuarea implementarii hardware. O să construiesc codul jocului şi o să-l testez în Proteus.