int main(void) { printf("characters:\n\n"); printchars(0x61,0x7a); printchars(0x41,0x5a); printf("numbers:\n\n"); printchars(0x30,0x39); printf("other:\n\n"); printchars(0x20,0x2f); /*printchars(0x3a,0x40);*/ printchars(0x3a,0x3f); /*printchars(0x5b,0x60);*/ /*printchars(0x7b,0x7f);*/ printf("\n\n"); printf("slash: '%c'\n",'/'); printf("backslash: '%c'\n",'\\'); printf("curly braces open: '%c'\n",'{'); printf("curly braces close: '%c'\n",'}'); printf("square braces open: '%c'\n",'['); printf("square braces close: '%c'\n",']'); printf("underscore: '%c'\n",'_'); printf("tilde: '%c'\n",'~'); printf("pipe: '%c'\n",'|'); printf("apostroph: '%c'\n",'\''); printf("single quote '%c'\n",'`'); printf("xor '%c'\n",'^'); printf("at '%c'\n",'@'); return 0; }
int main(int argc, char* argv[]){ int lg; FILE *fd; garden_t garden; if(argc < 2 || strstr("garden.dat", argv[1]) == NULL){ printf("%d %s\n", argc, argv[1]); printf("ERROR: Please specify a garden.dat file.\n"); return 1; } fd = fopen(argv[1], "rb"); if(fd == NULL){ printf("ERROR: Could not open garden.dat for reading!\n"); return 1; } garden = load_data(fd); printf("Garden.dat file loaded!\n"); printchars("Town name: ", garden.town_name, 0x12); printf("Seconds played: %d\n", garden.seconds_played); printf("Play days: %d\n", garden.play_days); fclose(fd); return 0; }
/*case of n small*/ enum state smalln(int ch) { switch (ch){ case MKgr : putchar(NMlat); return Mbig; case MMgr : putchar(NMlat); return Msmall; case NKgr : putchar(NMlat); return Nbig; case NMgr : putchar(NMlat); return Nsmall; case TKgr : putchar(DMlat); return Any_state; case TMgr : putchar(DMlat); return Any_state; default : putchar(NMlat); printchars(ch); return Any_state; } }
/*case of m small*/ enum state msmall(int ch) { if(ch==MKgr){ putchar(MMlat); return Mbig; } else if(ch==MMgr){ putchar(MMlat); return Msmall; } else if(ch==NKgr){ putchar(MMlat); return Nbig; } else if(ch==NMgr){ putchar(MMlat); return Nsmall; } else if(ch==PKgr){ putchar(BMlat); return Any_state; } else if(ch==PMgr){ putchar(BMlat); return Any_state; } else{ putchar(MMlat); printchars(ch); return Any_state; } }
enum state mbig(int character) { if (character==MMgr){ putchar(MKlat); return Msmall; } else if(character==MKgr){ putchar(MKlat); return Mbig; } else if(character==NMgr){ putchar(MKlat); return Nsmall; } else if(character==PMgr){ putchar(BKlat); return Any_state; } else if(character==NKgr){ putchar(MKlat); return Nbig; } else if(character==PKgr){ putchar(BKlat); return Any_state; } else{ putchar(MKlat); printchars(character); return Any_state; } }
void loadsound(unsigned f[], unsigned t[], int n){ int i; char filename[80]; FILE *snd; gotoxy(1,1); cprintf("Archivo: "); _setcursortype(_NORMALCURSOR); gets(filename); _setcursortype(_NOCURSOR); snd = fopen(filename, "rt"); if(snd == NULL){ textcolor(4 + BLINK); gotoxy(1,1); cprintf("Archivo no existe!!"); delay(100); textcolor(7); printchars(' ', 79); return; } for(i = 0; i < n; i++) fscanf(snd, "%u %u\n", &f[i], &t[i]); fclose(snd); gotoxy(1,1); printchars(' ', 79); }
void savesound(unsigned f[], unsigned t[], int n){ int i; char filename[80]; FILE *snd; gotoxy(1,1); cprintf("Archivo: "); _setcursortype(_NORMALCURSOR); gets(filename); _setcursortype(_NOCURSOR); snd = fopen(filename, "wt"); for(i = 0; i < n; i++) fprintf(snd, "%u %u\n", f[i], t[i]); fclose(snd); gotoxy(1,1); printchars(' ', 79); }
void spectral(int l){ if(l <= 0) return; printchars(32, 78); gotoxy(2, wherey()); textcolor(1); for(int i = 0; i < l; i++){ if(i > 8) textcolor(9); if(i > 16) textcolor(LIGHTCYAN); if(i > 24) textcolor(CYAN); if(i > 32) textcolor(GREEN); if(i > 40) textcolor(LIGHTGREEN); if(i > 48) textcolor(YELLOW); if(i > 56) textcolor(LIGHTRED); if(i > 64) textcolor(RED); putch(254); } textcolor(7); }
int main(void) { char ch; int numchars; int numlines; printf("\n\n"); // Blank lines for readability printf("Enter the character you want to print: "); scanf("%c", &ch); printf("Enter the number of times you want to print it on each line: "); scanf("%d", &numchars); printf("Enter the number of lines you want to print the characters: "); scanf("%d", &numlines); printchars(ch, numchars, numlines); printf("\n\n"); // Blank lines for readability return 0; }
/*case of N capital*/ enum state nbig(int ch) { if(ch==MKgr){ putchar(NKlat); return Mbig; } else if(ch==MMgr){ putchar(NKlat); return Msmall; } else if(ch==NKgr){ putchar(NKlat); return Nbig; } else if(ch==NMgr){ putchar(NKlat); return Nsmall; } else if (ch==TKgr){ putchar(DKlat); return Any_state; } else if(ch==TMgr){ putchar(DKlat); return Any_state; } else{ putchar(NKlat); printchars(ch); return Any_state; } }
/*check anystate*/ enum state anystate(int ch) { /*check all the cases*/ if(ch==MKgr){ return Mbig; } else if(ch==NKgr){ return Nbig; } else if(ch==MMgr){ return Msmall; } else if(ch==NMgr){ return Nsmall; } else{ printchars(ch); return Any_state; } }
void main(){ int i; int key = 0, flag = 0; int sel = 0; int reps = 1; unsigned freq[32] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0}; unsigned t[32] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0}; textmode(C4350); clrscr(); graphsound(freq, 32); gotoxy(1, sel + 18); putch(26); _setcursortype(_NOCURSOR); gotoxy(50, 4); cprintf("Frecuencia: %5u Hz", freq[sel]); gotoxy(50, 5); cprintf("Tiempo: %03.3f secs", (float)t[sel] / 1000); gotoxy(50, 6); cprintf("Repeticiones: %3d ", reps); int lastsel = 0; gotoxy(2,2); cputs("F1 Reset\n\r"); cputs(" F2 Guardar\n\r"); cputs(" F3 Cargar\n\r "); putch(24); putch(25); cputs(" Seleccionar\n\r "); putch(27); putch(26); cputs(" Disminuir/Incrementar frecuencia\n\r"); cputs(" -+ Disminuir/Incrementar tiempo\n\r"); cputs(" ENTER Ejecutar sonido\n\r"); cputs(" Fin/Inicio Disminuir/Incrementar tiempo total\n\r"); cputs(" F9/F10 Disminuir/Incrementar frecuencia en todos\n\r"); cputs(" ESPACIO Ejecutar seleccionado\n\r"); cputs(" F4 Editar frecuencia\n\r"); cputs(" F5 Editar tiempo\n\r"); cputs(" F6 Invertir frecuencia\n\r"); cputs(" RePag Incrementa las repeticiones\n\r"); cputs(" AvPag Disminuye las repeticiones\n\r"); cputs(" ESC Salir"); do{ key = 0; key = bioskey(0); if(key == SC_ARRIBA) sel--; if(key == SC_ABAJO) sel++; if(key == SC_DER){ freq[sel]+=4; gotoxy(2, sel + 18); spectral((int)((float)freq[sel] * 78 / MAX_FREQ)); } if(key == SC_IZQ){ freq[sel]-=4; gotoxy(2, sel + 18); spectral((int)((float)freq[sel] * 78 / MAX_FREQ)); } if(sel > 31) sel = 0; if(sel < 0) sel = 31; if(freq[sel] < 0) freq[sel] = 0; if(freq[sel] > MAX_FREQ) freq[sel] = MAX_FREQ; gotoxy(1, lastsel + 18); putch(32); gotoxy(1, sel + 18); putch(26); if(key == SC_MINUS) t[sel]--; if(key == SC_PLUS) t[sel]++; if(key == SC_ENTER) play(freq, t, 32, reps); if(key == 0x011B) flag = 1; if(key == 0x5100) reps--; if(key == 0x4900) reps++; if(key == 0x3C00) savesound(freq, t, 32); if(key == 0x3D00){ loadsound(freq, t, 32); graphsound(freq, 32); } if(key == 0x3920){ sound(freq[sel]); delay(t[sel]); nosound(); } if(key == 0x3B00){ for(i = 0; i < 32; i++){ freq[i] = 0; t[i] = 0; } graphsound(freq,32); } if(key == 0x3E00){ gotoxy(1,1); printf("Frecuencia: "); _setcursortype(_NORMALCURSOR); scanf("%d", &freq[sel]); _setcursortype(_NOCURSOR); fflush(stdin); gotoxy(1,1); printchars(32, 79); graphsound(freq, 32); } if(key == 0x3F00){ gotoxy(1,1); printf("Tiempo (milisegundos): "); _setcursortype(_NORMALCURSOR); scanf("%d", &t[sel]); _setcursortype(_NOCURSOR); fflush(stdin); gotoxy(1,1); printchars(32, 79); } if(key == 0x4000){ freq[sel] = MAX_FREQ - freq[sel]; gotoxy(2, sel + 18); spectral((int)((float)freq[sel] * 78 / MAX_FREQ)); } if(key == 0x4700){ for(i = 0; i < 32; i++){ if(freq[i] != 0) t[i]++; } } if(key == 0x4F00){ for(i = 0; i < 32; i++){ if((freq[i] != 0) && (t[i] != 0)) t[i]--; } } if(key == 0x4300){ for(i = 0; i < 32; i++){ if(freq[i] != 0) freq[i]-=4; if(kbhit())getch(); } graphsound(freq, 32); } if(key == 0x4400){ for(i = 0; i < 32; i++){ freq[i]+=4; if(freq[i] > MAX_FREQ) freq[i] = MAX_FREQ; if(kbhit())getch(); } graphsound(freq, 32); } if(t[sel] > 5000) t[sel] = 5000; gotoxy(1, lastsel + 18); putch(32); gotoxy(1, sel + 18); putch(26); gotoxy(50, 4); cprintf("Frecuencia: %5u Hz", freq[sel]); gotoxy(50, 5); cprintf("Tiempo: %03.3f secs", (float)t[sel] / 1000); gotoxy(50, 6); cprintf("Repeticiones: %3d ", reps); lastsel = sel; }while(flag == 0); _setcursortype(_NORMALCURSOR); clrscr(); }