First commit 11/11/1991
This commit is contained in:
574
RATON.C
Normal file
574
RATON.C
Normal file
@ -0,0 +1,574 @@
|
||||
|
||||
#include <dos.h>
|
||||
#include <bios.h>
|
||||
#include <stdio.h>
|
||||
#include <conio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define ALFANUMERICO 0x03
|
||||
#define GRAFICO 0x13
|
||||
|
||||
void DIBUJA_BLOQUE_SIN_MASK_CUT(int *, char *, char *);
|
||||
void DIBUJA_BLOQUE_CON_MASK_CUT(int *, char *, char *);
|
||||
void VUELCA_PANTALLA(int,int, int,int, int,int, char *);
|
||||
void pantalla_cine(void);
|
||||
void cinta_cine(void);
|
||||
void premios(void);
|
||||
void premiados(void);
|
||||
void espera_pulsar(void);
|
||||
void espera_soltar(void);
|
||||
void no_hay_raton(void);
|
||||
void desactiva_raton(void);
|
||||
void activa_raton(void);
|
||||
void dibuja_graficos(void);
|
||||
void inicializa_raton_texto(void);
|
||||
void inicializa_raton_grafico(void);
|
||||
void salir_al_dos(void);
|
||||
void asigna_modo_video(char);
|
||||
void lee_dibujos(char *);
|
||||
void descomprime_dibujo(char *);
|
||||
void asigna_rgb(char *);
|
||||
void asigna_memoria(void);
|
||||
void libera_memoria(void);
|
||||
|
||||
int x_raton;
|
||||
int y_raton;
|
||||
int y_raton_ant;
|
||||
int boton_izq;
|
||||
int boton_der;
|
||||
int pos_playa [6] = { 0, 0, 0, 0, 320,200 };
|
||||
int pos_toalla [8] = { 188, 0, 188,47, 130,152, 87, 47 };
|
||||
int pos_sombrilla [8] = { 0, 0, 94, 0, 175,110, 94, 70 };
|
||||
int pos_pelota [8] = { 275, 0, 275,23, 185,170, 25, 23 };
|
||||
char fichero1 [] = { "raton1.pcx" };
|
||||
char fichero2 [] = { "raton2.pcx" };
|
||||
int dir_raton [32+32] = { 0x3FFF, /* m<>scara del cursor */
|
||||
0x1FFF,
|
||||
0x0FFF,
|
||||
0x07FF,
|
||||
0x03FF,
|
||||
0x01FF,
|
||||
0x00FF,
|
||||
0x007F,
|
||||
0x003F,
|
||||
0x001F,
|
||||
0x000F,
|
||||
0x0007,
|
||||
0x0007,
|
||||
0xF81F,
|
||||
0xFC0F,
|
||||
0xFE0F,
|
||||
|
||||
0x0000, /* dibujo del cursor */
|
||||
0x4000,
|
||||
0x6000,
|
||||
0x7000,
|
||||
0x7800,
|
||||
0x7C00,
|
||||
0x7E00,
|
||||
0x7F00,
|
||||
0x7F80,
|
||||
0x7FC0,
|
||||
0x7FE0,
|
||||
0x7FF0,
|
||||
0x0780,
|
||||
0x03C0,
|
||||
0x01E0,
|
||||
0x0000 };
|
||||
char color_izq=DARKGRAY;
|
||||
char color_der=BROWN;
|
||||
char *dir_carga_dibujos;
|
||||
char *dir_dibujo1;
|
||||
char *dir_dibujo2;
|
||||
char *dir_zona_pantalla;
|
||||
FILE *handle_dibujos;
|
||||
|
||||
/*//////////////////////////////// PROGRAMA ////////////////////////////////*/
|
||||
|
||||
void main(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
asigna_memoria();
|
||||
|
||||
asigna_modo_video(ALFANUMERICO);
|
||||
inicializa_raton_texto();
|
||||
desactiva_raton();
|
||||
pantalla_cine();
|
||||
cinta_cine();
|
||||
premios();
|
||||
activa_raton();
|
||||
while(bioskey(1)!=0) bioskey(0);
|
||||
|
||||
do{
|
||||
espera_pulsar();
|
||||
desactiva_raton();
|
||||
if(boton_izq==1) color_izq=LIGHTGRAY;
|
||||
if(boton_der==1) color_der=YELLOW;
|
||||
cinta_cine();
|
||||
premiados();
|
||||
activa_raton();
|
||||
espera_soltar();
|
||||
desactiva_raton();
|
||||
if(boton_izq==0) color_izq=DARKGRAY;
|
||||
if(boton_der==0) color_der=BROWN;
|
||||
cinta_cine();
|
||||
premios();
|
||||
activa_raton();
|
||||
}while(bioskey(1)==0);
|
||||
|
||||
asigna_modo_video(GRAFICO);
|
||||
lee_dibujos(fichero1);
|
||||
descomprime_dibujo(dir_dibujo1);
|
||||
lee_dibujos(fichero2);
|
||||
descomprime_dibujo(dir_dibujo2);
|
||||
|
||||
inicializa_raton_grafico();
|
||||
DIBUJA_BLOQUE_SIN_MASK_CUT(pos_playa, dir_dibujo1, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_toalla, dir_dibujo2, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_pelota, dir_dibujo2, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_sombrilla, dir_dibujo2, dir_zona_pantalla);
|
||||
desactiva_raton();
|
||||
VUELCA_PANTALLA(0,0, 0,0, 320,200, dir_zona_pantalla);
|
||||
activa_raton();
|
||||
while(bioskey(1)!=0) bioskey(0);
|
||||
|
||||
do{
|
||||
ent.x.ax = 3;
|
||||
int86(0x33, &ent, &sal); /* lee posici<63>n y estados del bot<6F>n */
|
||||
boton_izq=sal.x.bx & 1;
|
||||
boton_der=(sal.x.bx >> 1) & 1;
|
||||
|
||||
if((boton_izq==1 || boton_der==1) &&
|
||||
x_raton>=pos_toalla[4]+(pos_toalla[6]/2)-4 &&
|
||||
x_raton<=pos_toalla[4]+(pos_toalla[6]/2)+4 &&
|
||||
y_raton>=pos_toalla[5]+(pos_toalla[7]/2)-4 &&
|
||||
y_raton<=pos_toalla[5]+(pos_toalla[7]/2)+4) {
|
||||
pos_toalla[4]=(sal.x.cx >> 1)-(pos_toalla[6]/2);
|
||||
pos_toalla[5]=(sal.x.dx )-(pos_toalla[7]/2);
|
||||
dibuja_graficos();
|
||||
desactiva_raton();
|
||||
VUELCA_PANTALLA(0,0, 0,0, 320,200, dir_zona_pantalla);
|
||||
activa_raton();
|
||||
}
|
||||
else if((boton_izq==1 || boton_der==1) &&
|
||||
x_raton>=pos_pelota[4]+(pos_pelota[6]/2)-4 &&
|
||||
x_raton<=pos_pelota[4]+(pos_pelota[6]/2)+4 &&
|
||||
y_raton>=pos_pelota[5]+(pos_pelota[7]/2)-4 &&
|
||||
y_raton<=pos_pelota[5]+(pos_pelota[7]/2)+4) {
|
||||
pos_pelota[4]=(sal.x.cx >> 1)-(pos_pelota[6]/2);
|
||||
pos_pelota[5]=(sal.x.dx )-(pos_pelota[7]/2);
|
||||
dibuja_graficos();
|
||||
desactiva_raton();
|
||||
VUELCA_PANTALLA(0,0, 0,0, 320,200, dir_zona_pantalla);
|
||||
activa_raton();
|
||||
}
|
||||
else if((boton_izq==1 || boton_der==1) &&
|
||||
x_raton>=pos_sombrilla[4]+(pos_sombrilla[6]/2)-4 &&
|
||||
x_raton<=pos_sombrilla[4]+(pos_sombrilla[6]/2)+4 &&
|
||||
y_raton>=pos_sombrilla[5]+(pos_sombrilla[7]/2)-4 &&
|
||||
y_raton<=pos_sombrilla[5]+(pos_sombrilla[7]/2)+4) {
|
||||
pos_sombrilla[4]=(sal.x.cx >> 1)-(pos_sombrilla[6]/2);
|
||||
pos_sombrilla[5]=(sal.x.dx )-(pos_sombrilla[7]/2);
|
||||
dibuja_graficos();
|
||||
desactiva_raton();
|
||||
VUELCA_PANTALLA(0,0, 0,0, 320,200, dir_zona_pantalla);
|
||||
activa_raton();
|
||||
}
|
||||
x_raton=sal.x.cx >> 1;
|
||||
y_raton=sal.x.dx;
|
||||
}while(bioskey(1)==0);
|
||||
while(bioskey(1)!=0) bioskey(0);
|
||||
|
||||
salir_al_dos();
|
||||
}
|
||||
|
||||
void dibuja_graficos(void)
|
||||
{
|
||||
DIBUJA_BLOQUE_SIN_MASK_CUT(pos_playa, dir_dibujo1, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_toalla, dir_dibujo2, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_pelota, dir_dibujo2, dir_zona_pantalla);
|
||||
DIBUJA_BLOQUE_CON_MASK_CUT(pos_sombrilla, dir_dibujo2, dir_zona_pantalla);
|
||||
}
|
||||
|
||||
void inicializa_raton_texto(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
ent.x.ax = 0;
|
||||
int86(0x33, &ent, &sal); /* averigua si hay rat<61>n conectado */
|
||||
|
||||
if(sal.x.ax==0) no_hay_raton();
|
||||
|
||||
ent.x.ax = 15;
|
||||
ent.x.cx = 8;
|
||||
ent.x.dx = 16;
|
||||
int86(0x33, &ent, &sal); /* fija la raz<61>n mickey/pixel */
|
||||
|
||||
ent.x.ax = 7;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 639;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n m<>x. y m<>n. horizontal */
|
||||
|
||||
ent.x.ax = 8;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 199;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n m<>x. y m<>n. vertical */
|
||||
|
||||
ent.x.ax = 4;
|
||||
ent.x.cx = 320;
|
||||
ent.x.dx = 100;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n del rat<61>n */
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal); /* muestra el puntero del rat<61>n */
|
||||
}
|
||||
|
||||
void inicializa_raton_grafico(void)
|
||||
{
|
||||
struct SREGS seg;
|
||||
union REGS ent, sal;
|
||||
long dir;
|
||||
|
||||
ent.x.ax = 0;
|
||||
int86(0x33, &ent, &sal); /* averigua si hay rat<61>n conectado */
|
||||
|
||||
if(sal.x.ax==0) no_hay_raton();
|
||||
|
||||
ent.x.ax = 15;
|
||||
ent.x.cx = 5;
|
||||
ent.x.dx = 12;
|
||||
int86(0x33, &ent, &sal); /* fija la raz<61>n mickey/pixel */
|
||||
|
||||
ent.x.ax = 7;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 639;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n m<>x. y m<>n. horizontal */
|
||||
|
||||
ent.x.ax = 8;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 199;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n m<>x. y m<>n. vertical */
|
||||
|
||||
dir = (long)dir_raton;
|
||||
ent.x.ax = 9;
|
||||
ent.x.bx = 0;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = (int) dir;
|
||||
seg.es = (int)(dir >> 16);
|
||||
int86x(0x33, &ent, &sal, &seg); /* asigna un cursor diferente */
|
||||
|
||||
ent.x.ax = 4;
|
||||
ent.x.cx = 320;
|
||||
x_raton=ent.x.cx >> 1;
|
||||
ent.x.dx = 100;
|
||||
y_raton=ent.x.dx;
|
||||
int86(0x33, &ent, &sal); /* fija la posici<63>n del rat<61>n */
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal); /* muestra el puntero del rat<61>n */
|
||||
}
|
||||
|
||||
void activa_raton(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal);
|
||||
}
|
||||
|
||||
void desactiva_raton(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
ent.x.ax = 2;
|
||||
int86(0x33, &ent, &sal);
|
||||
}
|
||||
|
||||
void espera_pulsar(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
do{
|
||||
if(bioskey(1)!=0) break;
|
||||
ent.x.ax = 3;
|
||||
int86(0x33, &ent, &sal); /* lee posici<63>n y estados del bot<6F>n */
|
||||
}while((sal.x.bx & 3)==0);
|
||||
boton_izq=sal.x.bx & 1;
|
||||
boton_der=(sal.x.bx >> 1) & 1;
|
||||
x_raton=sal.x.cx >> 1;
|
||||
y_raton=sal.x.dx;
|
||||
}
|
||||
|
||||
void espera_soltar(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
do{
|
||||
ent.x.ax = 3;
|
||||
int86(0x33, &ent, &sal); /* lee posici<63>n y estados del bot<6F>n */
|
||||
}while((sal.x.bx & 3)!=0);
|
||||
boton_izq=sal.x.bx & 1;
|
||||
boton_der=(sal.x.bx >> 1) & 1;
|
||||
x_raton=sal.x.cx >> 1;
|
||||
y_raton=sal.x.dx;
|
||||
}
|
||||
|
||||
void no_hay_raton(void)
|
||||
{
|
||||
asigna_modo_video(ALFANUMERICO);
|
||||
libera_memoria();
|
||||
gotoxy(1,1); printf("No hay RATON instalado");
|
||||
exit(0);
|
||||
}
|
||||
|
||||
void salir_al_dos(void)
|
||||
{
|
||||
asigna_modo_video(ALFANUMERICO);
|
||||
libera_memoria();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
void asigna_memoria(void)
|
||||
{
|
||||
if((dir_zona_pantalla = malloc (64000))==NULL) {
|
||||
printf("No hay suficiente memoria. Libere programas residentes.");
|
||||
exit(1);
|
||||
}
|
||||
if((dir_carga_dibujos = malloc (65000))==NULL) {
|
||||
printf("No hay suficiente memoria. Libere programas residentes.");
|
||||
exit(1);
|
||||
}
|
||||
if((dir_dibujo1 = malloc (64000))==NULL) {
|
||||
printf("No hay suficiente memoria. Libere programas residentes.");
|
||||
exit(1);
|
||||
}
|
||||
if((dir_dibujo2 = malloc (64000))==NULL) {
|
||||
printf("No hay suficiente memoria. Libere programas residentes.");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
void libera_memoria(void)
|
||||
{
|
||||
free(dir_zona_pantalla);
|
||||
free(dir_carga_dibujos);
|
||||
free(dir_dibujo1);
|
||||
free(dir_dibujo2);
|
||||
}
|
||||
|
||||
void asigna_modo_video(char modo) /* asigna el modo de v<>deo indicado */
|
||||
{ /* en la variable "modo" */
|
||||
union REGS ent, sal;
|
||||
|
||||
ent.h.al = modo;
|
||||
ent.h.ah = 0;
|
||||
int86(16, &ent, &sal); /* funci<63>n para asignar el modo de video */
|
||||
}
|
||||
|
||||
void lee_dibujos(char *fichero)
|
||||
{
|
||||
char *p;
|
||||
|
||||
if((handle_dibujos = fopen(fichero, "rb"))==NULL) {
|
||||
printf("No se puede abrir el archivo.");
|
||||
exit(1);
|
||||
}
|
||||
p=dir_carga_dibujos;
|
||||
while(!feof(handle_dibujos)) {
|
||||
*p++=getc(handle_dibujos);
|
||||
}
|
||||
if(fclose(handle_dibujos)!=NULL) {
|
||||
printf("No se puede cerrar el archivo.");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
void descomprime_dibujo(char *dir_escritura)
|
||||
{
|
||||
unsigned char byte;
|
||||
char *dir_lectura;
|
||||
int columnas, filas, contador;
|
||||
|
||||
dir_lectura=dir_carga_dibujos+128; /* inicio del dibujo comprimido */
|
||||
|
||||
for(filas=200; filas>0; filas--) {
|
||||
columnas=320;
|
||||
dir_escritura-=columnas; dir_escritura+=320;
|
||||
while(columnas>0) {
|
||||
byte=(unsigned)*dir_lectura++;
|
||||
if(byte<=192) { *dir_escritura++=byte; columnas--; }
|
||||
else {
|
||||
contador=byte&63; byte=*dir_lectura++;
|
||||
for(;contador>0;contador--) { *dir_escritura++=byte;columnas--; }
|
||||
}
|
||||
}
|
||||
}
|
||||
dir_lectura++;
|
||||
asigna_rgb(dir_lectura); /* remapea los 256 colores del dibujo */
|
||||
}
|
||||
|
||||
void asigna_rgb(char *dir_lectura)
|
||||
{
|
||||
struct SREGS seg;
|
||||
union REGS ent, sal;
|
||||
unsigned int reg_dx, n;
|
||||
long int dir;
|
||||
char *dir_col;
|
||||
|
||||
dir_col=dir_lectura; /* divide entre */
|
||||
for(n=256*3; n>0; n--) { /* 4 los colores */
|
||||
*dir_col=*dir_col >> 2; dir_col++;
|
||||
}
|
||||
|
||||
reg_dx=(int)dir_lectura; /* offset de los colores */
|
||||
dir =(long)dir_lectura; /* obtiene el segmento */
|
||||
seg.es=(int)(dir >> 16); /* donde estan los colores */
|
||||
|
||||
ent.h.al = 18;
|
||||
ent.h.ah = 16;
|
||||
ent.x.bx = 0;
|
||||
ent.x.cx = 256;
|
||||
ent.x.dx = reg_dx;
|
||||
int86x(0x10, &ent, &sal, &seg); /* funci<63>n para asignar los colores */
|
||||
}
|
||||
|
||||
void cinta_cine(void)
|
||||
{
|
||||
textcolor(color_izq);
|
||||
gotoxy(21, 1); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(19, 2); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy(17, 3); cprintf (" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
gotoxy(15, 4); cprintf ("<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(13, 5); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(11, 6); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy( 9, 7); cprintf (" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
gotoxy( 7, 8); cprintf ("<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 5, 9); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 3,10); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy( 1,11); cprintf(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
gotoxy( 1,12); cprintf(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 1,13); cprintf("<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 1,14); cprintf("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy( 1,15); cprintf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
gotoxy( 1,16); cprintf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 1,17); cprintf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy( 1,18); cprintf("<EFBFBD><EFBFBD>");
|
||||
|
||||
textcolor(color_der);
|
||||
gotoxy(79,14); cprintf ("<EFBFBD> ");
|
||||
gotoxy(77,15); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(75,16); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(73,17); cprintf (" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(71,18); cprintf ("<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(69,19); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy(67,20); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>");
|
||||
gotoxy(65,21); cprintf (" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
gotoxy(63,22); cprintf ("<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(61,23); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
gotoxy(59,24); cprintf ("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
|
||||
gotoxy(57,25); cprintf(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
||||
}
|
||||
|
||||
void pantalla_cine(void)
|
||||
{
|
||||
textbackground(BLACK); textcolor(BLACK); clrscr();
|
||||
textcolor(BLUE);
|
||||
gotoxy( 1, 1); cprintf(" <20> <20>");
|
||||
gotoxy( 1, 2); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 3); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 4); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 5); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 6); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 7); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 8); cprintf(" <20> <20> ");
|
||||
gotoxy( 1, 9); cprintf(" <20> <20> ");
|
||||
gotoxy( 1,10); cprintf(" <20> ");
|
||||
gotoxy( 1,11); cprintf(" <20> ");
|
||||
gotoxy( 1,12); cprintf(" <20> ");
|
||||
gotoxy( 1,13); cprintf(" <20> ");
|
||||
gotoxy( 1,14); cprintf(" <20> ");
|
||||
gotoxy( 1,15); cprintf(" <20> ");
|
||||
gotoxy( 1,16); cprintf(" <20> ");
|
||||
gotoxy( 1,17); cprintf(" <20> ");
|
||||
gotoxy( 1,18); cprintf(" <20> ");
|
||||
gotoxy( 1,19); cprintf(" <20> ");
|
||||
|
||||
textcolor(BLUE);
|
||||
gotoxy(54,12); cprintf(" <20>");
|
||||
gotoxy(54,13); cprintf(" <20> ");
|
||||
gotoxy(54,14); cprintf(" <20> ");
|
||||
gotoxy(54,15); cprintf(" <20> ");
|
||||
gotoxy(54,16); cprintf(" <20> ");
|
||||
gotoxy(54,17); cprintf(" <20> ");
|
||||
gotoxy(54,18); cprintf(" <20> ");
|
||||
gotoxy(54,19); cprintf(" <20> ");
|
||||
gotoxy(54,20); cprintf(" <20> ");
|
||||
gotoxy(54,21); cprintf(" <20> ");
|
||||
gotoxy(54,22); cprintf(" <20> <20>");
|
||||
gotoxy(54,23); cprintf(" <20> <20> ");
|
||||
gotoxy(54,24); cprintf(" <20> <20> ");
|
||||
gotoxy(54,25); cprintf("<EFBFBD> <20> ");
|
||||
}
|
||||
|
||||
void premios(void)
|
||||
{
|
||||
textcolor(WHITE);
|
||||
gotoxy(49, 1); cprintf("LXVI EDICION DE LOS OSCARS");
|
||||
|
||||
textcolor(YELLOW);
|
||||
gotoxy(45, 3); cprintf("MEJOR PELICULA ");
|
||||
gotoxy(43, 4); cprintf("MEJOR DIRECTOR ");
|
||||
gotoxy(41, 5); cprintf("MEJOR ACTRIZ ");
|
||||
gotoxy(39, 6); cprintf("MEJOR ACTOR ");
|
||||
gotoxy(37, 7); cprintf("MEJOR ACTRIZ SECUNDARIA ");
|
||||
gotoxy(35, 8); cprintf("MEJOR ACTOR SECUNDARIO ");
|
||||
gotoxy(33, 9); cprintf("MEJOR PELICULA EXTRANJERA ");
|
||||
gotoxy(31,10); cprintf("MEJOR GUION ORIGINAL ");
|
||||
gotoxy(29,11); cprintf("MEJOR GUION ADAPTADO ");
|
||||
gotoxy(27,12); cprintf("MEJOR DIRECCION ARTISTICA ");
|
||||
gotoxy(25,13); cprintf("MEJOR SONIDO ");
|
||||
gotoxy(23,14); cprintf("MEJOR MONTAJE ");
|
||||
gotoxy(21,15); cprintf("MEJOR FOTOGRAFIA ");
|
||||
gotoxy(19,16); cprintf("MEJOR EFECTOS DE SONIDO ");
|
||||
gotoxy(17,17); cprintf("MEJOR MUSICA ORIGINAL ");
|
||||
gotoxy(15,18); cprintf("MEJOR CANCION ");
|
||||
gotoxy(13,19); cprintf("MEJOR VESTUARIO ");
|
||||
gotoxy(11,20); cprintf("MEJOR EFECTOS VISUALES ");
|
||||
gotoxy( 9,21); cprintf("MEJOR MAQUILLAJE ");
|
||||
gotoxy( 7,22); cprintf("MEJOR CORTO DE ANIMACION ");
|
||||
gotoxy( 5,23); cprintf("MEJOR CORTO DE ACCION EN VIVO ");
|
||||
gotoxy( 3,24); cprintf("MEJOR LARGOMETRAJE DOCUMENTAL ");
|
||||
gotoxy( 1,25); cprintf("MEJOR CORTO DOCUMENTAL ");
|
||||
}
|
||||
|
||||
void premiados(void)
|
||||
{
|
||||
textcolor(WHITE);
|
||||
switch(y_raton/8) {
|
||||
case 2: gotoxy(45, 3); cprintf("<EFBFBD>La lista de Schindler<65> "); break;
|
||||
case 3: gotoxy(43, 4); cprintf("Spielberg, <20>La lista de Schindler<65> "); break;
|
||||
case 4: gotoxy(41, 5); cprintf("Holly Hunter, <20>El Piano<6E> "); break;
|
||||
case 5: gotoxy(39, 6); cprintf("Tom Hanks, <20>Philadelphia<69> "); break;
|
||||
case 6: gotoxy(37, 7); cprintf("Anna Paquin, <20>El Piano<6E> "); break;
|
||||
case 7: gotoxy(35, 8); cprintf("Tommy Lee Jones, <20>El Fugitivo<76> "); break;
|
||||
case 8: gotoxy(33, 9); cprintf("<EFBFBD>Belle <20>poque<75> (Espa<70>a), Fernando Trueba "); break;
|
||||
case 9: gotoxy(31,10); cprintf("Jane Campion, <20>El Piano<6E> "); break;
|
||||
case 10: gotoxy(29,11); cprintf("Steven Zaillian, <20>La lista de Schindler<65> "); break;
|
||||
case 11: gotoxy(27,12); cprintf("Allan Starski y Ewa Braun, <20>La lista de Schindler<65> "); break;
|
||||
case 12: gotoxy(25,13); cprintf("<EFBFBD>Parque Jur<75>sico<63> "); break;
|
||||
case 13: gotoxy(23,14); cprintf("Michael Kahn, <20>La lista de Schindler<65> "); break;
|
||||
case 14: gotoxy(21,15); cprintf("Janusz Kaminski, <20>La lista de Schindler<65> "); break;
|
||||
case 15: gotoxy(19,16); cprintf("<EFBFBD>Parque Jur<75>sico<63> "); break;
|
||||
case 16: gotoxy(17,17); cprintf("John Williams, <20>La lista de Schindler<65> "); break;
|
||||
case 17: gotoxy(15,18); cprintf("<EFBFBD>Streets of Philadelphia<69>, Bruce Springsteen "); break;
|
||||
case 18: gotoxy(13,19); cprintf("Gabriella Pescucci, <20>La edad de la inocencia<69> "); break;
|
||||
case 19: gotoxy(11,20); cprintf("<EFBFBD>Parque Jur<75>sico<63> "); break;
|
||||
case 20: gotoxy( 9,21); cprintf("<EFBFBD>Sra. Doubtfire<72> "); break;
|
||||
case 21: gotoxy( 7,22); cprintf("<EFBFBD>The wrong trousers<72> "); break;
|
||||
case 22: gotoxy( 5,23); cprintf("<EFBFBD>Schwarzfahrer<EFBFBD> "); break;
|
||||
case 23: gotoxy( 3,24); cprintf("<EFBFBD>I am a promise:child. of Stanton Elementary School<6F>"); break;
|
||||
case 24: gotoxy( 1,25); cprintf("<EFBFBD>Defending our lives<65> "); break;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user