Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<allegro.h>
- #include<stdio.h>
- #include<string.h>
- #define Helix "HELIX"
- #define press "Press Any Key"
- #define space "\t \t \t"
- void read_string(char *str_to, int size);
- char ch;
- int main(void)
- {
- if (allegro_init() != 0)
- return 1;
- install_keyboard();
- install_timer();
- if (set_gfx_mode(GFX_AUTODETECT, 320, 200, 0, 0) != 0)
- {
- if (set_gfx_mode(GFX_SAFE, 320, 200, 0, 0) != 0)
- {
- set_gfx_mode(GFX_TEXT, 0, 0, 0, 0);
- allegro_message("Unable to set any graphic mode\n%s\n", allegro_error);
- return 1;
- }
- }
- char users[100];
- //set_palette(desktop_palette);
- clear_to_color(screen, makecol(255, 255, 0));
- char start[100]="WELCOME";//we can use this also
- acquire_screen();
- textout_centre_ex(screen, font, start, SCREEN_W/2, SCREEN_H/4, makecol(0,0,255),-1);
- textout_centre_ex(screen, font, " TO ", SCREEN_W/2, SCREEN_H/3, makecol(0,255,0), -1);
- textout_centre_ex(screen, font, Helix, SCREEN_W/2, SCREEN_H/2, makecol(255,0,0), -1);
- textout_centre_ex(screen, font, press, SCREEN_W/2, SCREEN_H/1.5, makecol(255,0,0), -1);
- release_screen();
- readkey();
- Main_page(users);
- return 0;
- }
- END_OF_MAIN()
- void Main_page(char *users)
- {
- Main_sec:
- while(1)
- {
- fflush(stdin);
- set_gfx_mode(GFX_AUTODETECT_FULLSCREEN,320,200,0,0);
- acquire_screen();
- clear_to_color(screen, makecol(0, 0, 0));
- textout_centre_ex(screen,font, Helix, SCREEN_W/2, SCREEN_H/5, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, "1)lOGIN", SCREEN_W/2, SCREEN_H/3, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, "2)SIGNUP", SCREEN_W/2, SCREEN_H/2, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, "3)EXIT", SCREEN_W/2, SCREEN_H/1.5, makecol(0,0,255),-1);
- release_screen();
- ch=readkey();
- if((ch==49 )||(ch ==50)||(ch==51))
- {
- break;
- }
- else
- {
- textout_centre_ex(screen,font, "Please Enter valid Data", SCREEN_W/2, SCREEN_H/1, makecol(0,0,255),-1);
- }
- }
- if(ch==50)
- {
- Signup_page(users);
- goto Main_sec;
- }
- else if(ch==49)
- {
- login_page(users);
- goto Main_sec;
- }
- else
- {
- }
- }
- END_OF_FUNCTION(Main_page);
- void Signup_page(char *users)
- {
- set_gfx_mode(GFX_AUTODETECT_FULLSCREEN,320,200,0,0);
- acquire_screen();
- clear_to_color(screen, makecol(255, 255, 255));
- textout_centre_ex(screen,font, "SIGNUP", SCREEN_W/2, SCREEN_H/5, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, " NAME:", SCREEN_W/4, SCREEN_H/3, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, "PASSWORD:", SCREEN_W/4, SCREEN_H/2, makecol(0,0,255),-1);
- release_screen();
- ch=readkey();
- }
- void login_page(char *users)
- {
- char my_str[40],*poin;
- char name[100]="NAME:";
- char pass[100]="PASSWORD:";
- set_gfx_mode(GFX_AUTODETECT_FULLSCREEN,320,200,0,0);
- acquire_screen();
- clear_to_color(screen, makecol(255, 255, 255));
- textout_centre_ex(screen,font, "LOGIN", SCREEN_W/2, SCREEN_H/5, makecol(0,0,255),-1);
- textout_centre_ex(screen,font, name, SCREEN_W/4, SCREEN_H/3, makecol(0,0,255),-1);
- char my[40];
- read_string(my,40);
- textout_centre_ex(screen,font, pass, SCREEN_W/2, SCREEN_H/5, makecol(0,0,255),-1);
- char var[40];
- read_string(var,40);
- release_screen();
- }
- void read_string(char *str_to, int size) {
- int cur_pos = 0; // position of caret
- int the_key = 0;
- int i;
- for (i = 0; i < size; i++)
- str_to[i] = '\0'; // 'clean' the string
- while (the_key>>8 != KEY_ENTER)
- {
- the_key = readkey();
- if ((the_key & 0xff) >= ' ') // get only valid chars
- {
- str_to[cur_pos] = the_key & 0xff;
- cur_pos++;
- if (cur_pos > size-2) cur_pos = size-2;
- }
- if (the_key >> 8 == KEY_BACKSPACE)
- {
- str_to[cur_pos] = '\0'; // chop the string
- cur_pos --;
- if (cur_pos < 0) cur_pos = 0;
- }
- // lame redraw (use double buffer, whatever)
- clear(screen);
- textout(screen,font, str_to, 0,0, makecol(255,255,255));
- }
- }
Add Comment
Please, Sign In to add comment