#include "camera_info.h"
#include "keyboard.h"
#include "lang.h"
#include "conf.h"
#include "gui.h"
#include "gui_draw.h"
#include "gui_lang.h"
#include "gui_batt.h"
#include "gui_mbox.h"
#include "modes.h"
#include "fileutil.h"
#include "time.h"
#include "module_def.h"
#include "simple_module.h"
gehe zum Quellcode dieser Datei
#define MAX_START_NUMBERS 32 |
int _module_can_unload |
( |
) | |
|
Definiert in Zeile 198 der Datei gui_sudoku.c.
209 for (i=0; i<10; ++i){
248 if (
user[y][x]==0)
continue;
Definiert in Zeile 136 der Datei gui_sudoku.c.
154 for (y=0; y<3; y++)
for (x=0; x<3; x++)
void exchange_column |
( |
int |
c1, |
|
|
int |
c2 |
|
) |
| |
void exchange_row |
( |
int |
r1, |
|
|
int |
r2 |
|
) |
| |
void exchange_square_column |
( |
int |
sc1, |
|
|
int |
sc2 |
|
) |
| |
void exchangeSquareRow |
( |
int |
sr1, |
|
|
int |
sr2 |
|
) |
| |
void exit_sudoku |
( |
int |
save) | |
|
int get_dec_num |
( |
int |
number) | |
|
int get_missing_nums_column |
( |
int |
columnNumber) | |
|
int get_missing_nums_line |
( |
int |
lineNum) | |
|
int get_missing_nums_square |
( |
int |
squareX, |
|
|
int |
squareY |
|
) |
| |
Definiert in Zeile 404 der Datei gui_sudoku.c.
408 for (y=squareY*3; y<squareY*3+3; y++)
410 for (x=squareX*3; x<squareX*3+3; x++)
void gui_module_menu_kbd_process |
( |
) | |
|
Definiert in Zeile 984 der Datei gui_sudoku.c.
1008 for (x = 0; x < 9; x++)
for (y = 0; y < 9; y++)
1016 char *
buf =
load_file(
"A/CHDK/GAMES/SUDOKU.SAV", 0, 0);
int gui_sudoku_kbd_process |
( |
) | |
|
int is_one_num |
( |
int |
number) | |
|
Definiert in Zeile 112 der Datei gui_sudoku.c.
121 if (counter==1)
return 0;
int one_plus_nums |
( |
int |
number) | |
|
Definiert in Zeile 95 der Datei gui_sudoku.c.
104 if (counter==1)
return 1;
int remove_nums |
( |
int |
count) | |
|
void set_pad_num |
( |
int |
number) | |
|
int sudoku_finished |
( |
int * |
pointer) | |
|
int sudoku_follows_rules |
( |
int * |
pointer) | |
|
Definiert in Zeile 296 der Datei gui_sudoku.c.
298 int counter, chkflag,
x,
y, xs, ys, linenum, columnnum;
301 for (linenum=0; linenum<=8; linenum++)
303 for (chkflag=1; chkflag<10; chkflag++)
308 if (*(pointer+linenum*9+x)&
flag[chkflag])
311 if (counter>1)
return 0;
319 for (columnnum=0; columnnum<=8; columnnum++)
321 for (chkflag=1; chkflag<10; chkflag++)
326 if (*(pointer+y*9+columnnum)&
flag[chkflag])
329 if (counter>1)
return 0;
337 for (chkflag=1; chkflag<10; chkflag++)
340 for (ys=0; ys<3; ys++)
342 for (xs=0; xs<3; xs++)
346 for (y=ys*3; y<ys*3+3; y++)
348 for (x=xs*3; x<xs*3+3; x++)
350 if (*(pointer+y*9+x)&
flag[chkflag])
353 if (counter>1)
return 0;
int sudoku_follows_rules_xy |
( |
int |
x, |
|
|
int |
y, |
|
|
int |
number |
|
) |
| |
Definiert in Zeile 367 der Datei gui_sudoku.c.
370 for (xc=0; xc<9; xc++)
if (
field[
y][xc]&(
number))
return 0;
371 for (yc=0; yc<9; yc++)
if (
field[yc][
x]&(
number))
return 0;
374 for (yc =
y/3 * 3; yc <
y/3 * 3 + 3; yc++)
375 for (xc =
x/3 * 3; xc <
x/3 * 3 + 3; xc++)
int sudoku_insert_lonely_numbers |
( |
) | |
|
Definiert in Zeile 480 der Datei gui_sudoku.c.
488 for (ys=0; ys<3; ys++)
for (xs=0; xs<3;xs++)
for (num=1; num<10; num++)
491 for (y=ys*3; y<ys*3+3; y++)
for (x=xs*3; x<xs*3+3; x++)
516 for (y=0; y<9; y++)
for (num=1; num<10; num++)
544 for (x=0; x<9; x++)
for (num=1; num<10; num++)
void sudoku_menu_execute |
( |
) | |
|
Definiert in Zeile 798 der Datei gui_sudoku.c.
832 for (x = 0; x < 9; x++)
for (y = 0; y < 9; y++)
848 if (
stat(
"A/CHDK/GAMES/SUDOKU.SAV", 0)==0) {
849 remove(
"A/CHDK/GAMES/SUDOKU.SAV");
Definiert in Zeile 698 der Datei gui_sudoku.c.
707 for (x = 0; x < 9; x++)
for (y = 0; y < 9; y++)
field[y][x] = 0;
710 for (x=0; x<9; x++)
field[0][x]=
flag[x+1];
713 for (i=1; i<=10; i++)
717 if (rdm1==rdm2)rdm2=(rdm2+1)%9;
740 if ((y+1)%3==0)xnum=(xnum+4)%9;
741 else xnum=(xnum+3)%9;
749 for (i=1; i<=10; i++)
753 if (rdm1==rdm2)rdm2=(rdm2+1)%3;
758 if (rdm1==rdm2)rdm2=(rdm2+1)%3;
767 if (rdm1==rdm2)rdm2=(rdm2+1)%3;
773 if (rdm1==rdm2)rdm2=(rdm2+1)%3;
781 for (i=1; i<=74; i++)
int sudoku_search_candidates |
( |
) | |
|
Definiert in Zeile 422 der Datei gui_sudoku.c.
437 if (temp !=
mess[y][x])
444 for(xs=0; xs<3; xs++)
for(ys=0; ys<3; ys++)
447 for(x=xs*3; x<xs*3+3; x++)
for (y=ys*3; y<ys*3+3; y++)
453 if (temp !=
mess[y][x])
469 if (temp !=
mess[y][x])
int sudoku_solve |
( |
int * |
pointer) | |
|
int flag[10] ={0x0, 0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80,0x100} |