First commit 11/11/1991
This commit is contained in:
commit
255bc1b372
BIN
EGAVGA.BGI
Normal file
BIN
EGAVGA.BGI
Normal file
Binary file not shown.
2118
EPROM-II.CPP
Normal file
2118
EPROM-II.CPP
Normal file
File diff suppressed because it is too large
Load Diff
BIN
EPROM-II.DSK
Normal file
BIN
EPROM-II.DSK
Normal file
Binary file not shown.
BIN
EPROM-II.EXE
Normal file
BIN
EPROM-II.EXE
Normal file
Binary file not shown.
86
EPROM-II.H
Normal file
86
EPROM-II.H
Normal file
@ -0,0 +1,86 @@
|
||||
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ MACROS ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
|
||||
#define Texto_Normal setcolor(63);
|
||||
#define Operacion_Fallida -1;
|
||||
|
||||
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ Estructuras ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
|
||||
struct JD {
|
||||
char esc; char color[8];char prog[50];char nl;char rt;char pt;char ef;
|
||||
char Comentario[4][31]; // 30 * 4 --> Estandar <--
|
||||
};
|
||||
|
||||
struct Eprom_Structura {
|
||||
|
||||
char TP; char FI; char NP;
|
||||
char DM; char BD; long ID;
|
||||
char ID_TEXT[15];
|
||||
|
||||
};
|
||||
|
||||
struct Eprom_inx { long Fin; };
|
||||
|
||||
struct Eprom_s { unsigned long Direccion; unsigned int Dato; };
|
||||
|
||||
struct JD cabecera;
|
||||
struct JD cabecera2;
|
||||
struct Eprom_s Eprom1;
|
||||
struct Eprom_inx Eprom1_inx;
|
||||
struct Eprom_Structura far *S_Eprom;
|
||||
struct boton { int left; int up; int right; int down; } PC[4];
|
||||
|
||||
|
||||
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ Prototipos ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
|
||||
|
||||
void EditCursorEprom_CE(int SH, int CurrRowCE, int CurrTopLineCE);
|
||||
void Carga_Cien_Elementos(struct Eprom_s *Datos);
|
||||
void Poner_a_cero_estructura_actual_Eprom(void);
|
||||
void Imprimir_Eprom(int desde, int hasta);
|
||||
void Lee_Archivos_Presentes(int add_new);
|
||||
void PrintEprom_CE_WholeScreen(int tmp);
|
||||
void PrintWholeScreenCabecera(void);
|
||||
void EditCursorEprom(int ShowHide);
|
||||
void Fuente( int Font, int size);
|
||||
void PrintWholeScreenEprom(void);
|
||||
void PrintWholeScreenFile(void);
|
||||
void CompruebaLineasEprom(void);
|
||||
void Imprime_Eprom_Actual(void);
|
||||
void Mueve_Arriba_Eprom(void);
|
||||
void Mueve_Abajo_Eprom(void);
|
||||
void DeleteRecordEprom(void);
|
||||
void Salvar_Cargar(int S_C);
|
||||
void EditCursorFile(int SH);
|
||||
void Salvar_Cargar(int S_C);
|
||||
void Edit_Item_Eprom(void);
|
||||
void Menu_de_Edicion(void);
|
||||
void PrintLineEprom(void);
|
||||
void AddRecordEprom(void);
|
||||
void Edit_Item_File(void);
|
||||
void PutLineEprom(void);
|
||||
void GetLineEprom(void);
|
||||
void InicializaPc(void);
|
||||
void Escoge_Eprom(void);
|
||||
void BEEP(void);
|
||||
|
||||
int Leer_en_Eprom(void);
|
||||
int Abre_Ficha_Eprom(void);
|
||||
int Comprueba_Impresora(void);
|
||||
int Lee_Eproms(FILE *fichero);
|
||||
int LeeCabecera(char *fichero);
|
||||
int fcopy(char *origen, char *destino);
|
||||
int InputCadenaG_l(char *s, int numalp, int lmax, int cc, int cf, struct boton Campo, int RoW);
|
||||
|
||||
|
||||
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ V. Globales ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
|
||||
|
||||
int CurrRowFile, CurrColFile, CurrTopFile,
|
||||
CurrRowCom, N_Files;
|
||||
int N_Eprom = 0; int CurrEprom = 0;
|
||||
int CurrRowEprom1 = 1, CurrColEprom1 = 1, CurrTopLineEprom = 1;
|
||||
int key, Modifica_Direccion = 0;
|
||||
long longitud = 0;
|
||||
|
||||
char ArchivoDatos[]="Eprom_JD.TMP", Archivo[13];;
|
||||
char *Archivo_list;
|
||||
|
||||
|
||||
FILE *Eprom, *EpromC;
|
||||
|
BIN
EPROM-II.PRJ
Normal file
BIN
EPROM-II.PRJ
Normal file
Binary file not shown.
73
EPROM.DAT
Normal file
73
EPROM.DAT
Normal file
@ -0,0 +1,73 @@
|
||||
* ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
|
||||
* Û Û
|
||||
* Û Este es el fichero de Datos, para las EPROM. Û
|
||||
* Û Û
|
||||
* Û Û
|
||||
* Û þ Con una sencilla sintaxis, se pueden a¤ dir nuevos tipos de Eprom Û
|
||||
* Û Û
|
||||
* Û sin que ello afecte a la programaci¢n global. Û
|
||||
* Û Û
|
||||
* Û þ Nuevas tecnicas de auto-reconfiguraci¢n para el programa. Û
|
||||
* Û þ C¢digo de reconfiguraci¢n totalmente fiable Û
|
||||
* Û þ Mejor sintaxis, para un uso mas sencillo Û
|
||||
* Û Û
|
||||
* ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
|
||||
* ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
|
||||
* Û Û
|
||||
* Û Cada vez que se a¤ada una nueva Eprom solo hay que incremetar en uno Û
|
||||
* Û la variable N Û
|
||||
* Û Û
|
||||
* Û N --> N§ de Eprom's que se pueden programar Û
|
||||
* Û Û
|
||||
* ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
|
||||
|
||||
* ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
|
||||
* Û Û
|
||||
* Û Sintaxis operativa: Û
|
||||
* Û Û
|
||||
* Û % [TP], [FI], [NP], [DM], [BD], [ID], [ID_TEXT]. Û
|
||||
* Û Û
|
||||
* Û TP -------> Tensi¢n de programaci¢n Û
|
||||
* Û FI -------> Frecuencia de impulso (en micro-segundos). Û
|
||||
* Û NP -------> N§ de patillas Û
|
||||
* Û DM -------> Direcci¢n mas alta ( en Bit's ) Û
|
||||
* Û BD -------> N§ de Bit's del dato Û
|
||||
* Û ID -------> C¢digo n£merico identificativo de la Eprom Û
|
||||
* Û ID_TEXT --> Texto indicativo del tipo de Eprom (12 dig + '.') Û
|
||||
* Û Û
|
||||
* ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
|
||||
|
||||
N24
|
||||
|
||||
% 50, 50, 72, 8, 8, 50312345, Jos‚ David .
|
||||
|
||||
% 50, 50, 72, 16, 16, 23425000, 123PC18 DX/2.
|
||||
|
||||
% 50, 50, 72, 11, 8, 50312340, JD FUTURE 01.
|
||||
|
||||
% 50, 50, 72, 16, 8, 50312345, MICRO CHIPPP.
|
||||
|
||||
% 50, 50, 72, 16, 16, 50312345, Eprom 'HOLA'.
|
||||
|
||||
% 50, 50, 72, 16, 16, 50312345, JD ùF.Vù .
|
||||
|
||||
% 50, 50, 72, 16, 16, 50312345, Sol Negro .
|
||||
|
||||
% 50, 50, 72, 16, 8, 50312345, CAPTAIN ZAP .
|
||||
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 8 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 9 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 10 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 11 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 12 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 13 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 14 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 15 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 16 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 17 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 18 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 19 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 20 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 21 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 22 .
|
||||
% 50, 50, 72, 16, 8, 50312345, Eprom 23 .
|
183
EPROM.JDF
Normal file
183
EPROM.JDF
Normal file
@ -0,0 +1,183 @@
|
||||
*ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
|
||||
*Û Û
|
||||
*Û Este es el interfaz de rutinas Gr ficas del programador de Eprom's Û
|
||||
*Û Û
|
||||
*Û lenguaje de interfaz gr ficos ( JDf ) creado por JD ùFuTuRe ViSiOnù Û
|
||||
*Û Û
|
||||
*Û Por Favor, no modifique el c¢digo original. Û
|
||||
*Û Û
|
||||
*ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
|
||||
|
||||
*ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
|
||||
*Û Û
|
||||
*Û Rutinas creadas y totalmente escritas en C estandar. Û
|
||||
*Û Û
|
||||
*Û Libreria BETA ya disponible, Grandes rendimientos GRAFICOS a muy bajo Û
|
||||
*Û Û
|
||||
*Û coste de produccion. ( Precio de la libreria: 1_FUENTE EN C, CPP, ASM ) Û
|
||||
*Û Û
|
||||
*ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
|
||||
|
||||
|
||||
1
|
||||
************ Toda la Pantalla **********
|
||||
& 0, 0, 640, 480, 57, 56, 63, 2, 2
|
||||
************ Barra de Ayuda **********
|
||||
& 450, 5, 635, 475, 7, 63, 56, 2, 2
|
||||
|
||||
|
||||
|
||||
|
||||
2
|
||||
************ Azul Tapa **********
|
||||
& 10, 301, 309, 445, 57, 57, 57, 2, 2
|
||||
|
||||
************ Direccion **********
|
||||
& 10, 5, 300, 445, 7, 63, 56, 1, 2
|
||||
|
||||
& 15, 10, 122, 40, 0, 56, 63, 1, 2
|
||||
& 15, 132, 295, 40, 0, 56, 63, 2, 2
|
||||
|
||||
& 50, 10, 122, 440, 0, 56, 63, 2, 2
|
||||
& 50, 132, 295, 440, 0, 56, 63, 2, 2
|
||||
|
||||
************ Dato **********
|
||||
& 10, 310, 540, 445, 7, 63, 56, 1, 2
|
||||
|
||||
& 15, 315, 398, 40, 0, 56, 63, 2, 2
|
||||
& 15, 408, 535, 40, 0, 56, 63, 2, 2
|
||||
|
||||
& 50, 315, 398, 440, 0, 56, 63, 2, 2
|
||||
& 50, 408, 535, 440, 0, 56, 63, 2, 2
|
||||
|
||||
************ Letras **********
|
||||
| 10, 17, 2, 6, 0, 63, Hex.,
|
||||
| 132, 17, 2, 6, 0, 63, Dec.,
|
||||
|
||||
| 315, 17, 2, 6, 0, 63, Hex.,
|
||||
| 440, 17, 2, 6, 0, 63, Dec.,
|
||||
|
||||
| 545, 15, 2, 6, 0, 63, Eprom,
|
||||
| 545, 22, 2, 6, 0, 1, Ä,
|
||||
| 546, 16, 2, 6, 0, 0, Eprom,
|
||||
| 546, 23, 2, 6, 0, 63, Ä,
|
||||
|
||||
& 40, 550, 630, 55, 0, 63, 56, 1, 1
|
||||
|
||||
| 549, 75, 2, 5, 0, 63, Direcci¢n,
|
||||
| 549, 82, 2, 5, 0, 1, Ä,
|
||||
| 550, 76, 2, 5, 0, 0, Direcci¢n,
|
||||
| 550, 83, 2, 5, 0, 63, Ä,
|
||||
|
||||
& 100, 615, 630, 115, 0, 63, 56, 1, 1
|
||||
| 545, 195, 2, 6, 0, 63, Cargar,
|
||||
| 545, 202, 2, 6, 0, 1, Ä,
|
||||
| 546, 196, 2, 6, 0, 0, Cargar,
|
||||
| 546, 203, 2, 6, 0, 63, Ä,
|
||||
|
||||
| 545, 237, 2, 6, 0, 63, Grabar,
|
||||
| 545, 244, 2, 6, 0, 1, Ä,
|
||||
| 546, 238, 2, 6, 0, 0, Grabar,
|
||||
| 546, 245, 2, 6, 0, 63, Ä,
|
||||
|
||||
| 545, 286, 2, 5, 0, 63, Leer Eprom,
|
||||
| 545, 293, 2, 5, 0, 1, Ä,
|
||||
| 546, 287, 2, 5, 0, 0, Leer Eprom,
|
||||
| 546, 294, 2, 5, 0, 63, Ä,
|
||||
|
||||
|
||||
| 545, 335, 2, 5, 0, 63, Enviar,
|
||||
| 545, 350, 2, 5, 0, 63, Datos a,
|
||||
| 544, 356, 2, 5, 0, 1, Ä,
|
||||
| 545, 365, 2, 5, 0, 63, Eprom,
|
||||
| 546, 336, 2, 5, 0, 0, Enviar,
|
||||
| 546, 351, 2, 5, 0, 0, Datos a,
|
||||
| 545, 357, 2, 5, 0, 63, Ä,
|
||||
| 546, 366, 2, 5, 0, 0, Eprom,
|
||||
|
||||
| 545, 400, 2, 6, 0, 63, Salir,
|
||||
| 545, 407, 2, 6, 0, 1, Ä,
|
||||
| 546, 401, 2, 6, 0, 0, Salir,
|
||||
| 546, 408, 2, 6, 0, 63, Ä,
|
||||
|
||||
| 545, 140, 2, 6, 0, 63, Imprimir,
|
||||
| 545, 147, 2, 6, 0, 1, Ä,
|
||||
| 546, 141, 2, 6, 0, 0, Imprimir,
|
||||
| 546, 148, 2, 6, 0, 63, Ä,
|
||||
|
||||
3
|
||||
& 150, 170, 470, 330, 7, 63, 56, 2, 2
|
||||
& 155, 245, 290, 170, 0, 56, 63, 1, 2
|
||||
|
||||
|
||||
& 175, 175, 465, 190, 0, 56, 63, 2, 2
|
||||
|
||||
& 195, 175, 465, 325, 0, 56, 63, 2, 2
|
||||
|
||||
| 175, 152, 2, 6, 0, 63, Eprom de [ ],
|
||||
| 176, 153, 2, 6, 0, 0, Eprom de [ ],
|
||||
|
||||
| 175, 176, 2, 4, 0, 63, TP FI NP DM BD Numero ID Tipo de Eprom,
|
||||
|
||||
|
||||
4
|
||||
|
||||
& 150, 170, 470, 330, 7, 63, 56, 2, 2
|
||||
|
||||
& 155, 270, 465, 170, 0, 56, 63, 1, 2
|
||||
|
||||
& 175, 175, 265, 325, 0, 56, 63, 2, 2
|
||||
|
||||
****** Comentario 4 * 30digitos
|
||||
& 200, 270, 465, 250, 0, 56, 63, 2, 2
|
||||
|
||||
& 295, 270, 365, 325, 7, 63, 56, 2, 2
|
||||
& 295, 370, 465, 325, 7, 63, 56, 2, 2
|
||||
|
||||
|
||||
|
||||
**** Versi¢n ShareWare
|
||||
| 260, 250, 2, 6, 0, 1, Versi¢n ShareWare,
|
||||
| 260, 265, 2, 4, 0, 2, V. Completa: Software 5.000 ptas.
|
||||
| 260, 275, 2, 4, 0, 2, Placa 15.000 ptas.
|
||||
|
||||
| 175, 152, 2, 6, 0, 63, Archivo: ,
|
||||
| 176, 153, 2, 6, 0, 0, Archivo: ,
|
||||
|
||||
| 275, 300, 2, 6, 0, 63, Aceptar ,
|
||||
| 276, 301, 2, 6, 0, 0, Aceptar ,
|
||||
| 275, 302, 2, 6, 0, 63, _,
|
||||
| 276, 303, 2, 6, 0, 0, _,
|
||||
|
||||
| 370, 300, 2, 6, 0, 63, Cancelar ,
|
||||
| 371, 301, 2, 6, 0, 0, Cancelar ,
|
||||
| 370, 302, 2, 6, 0, 63, _,
|
||||
| 371, 303, 2, 6, 0, 0, _,
|
||||
|
||||
| 270, 180, 2, 6, 0, 63, Comentario: ,
|
||||
| 271, 181, 2, 6, 0, 0, Comentario: ,
|
||||
|
||||
*| 175, 176, 2, 4, 0, 63, TP FI NP DM BD Numero ID Tipo de Eprom,
|
||||
|
||||
#2
|
||||
!1,8
|
||||
$ 10, 545, 635, 60, 7, 56, 63, 2, 1, 00, 18
|
||||
$ 70, 545, 635, 120, 7, 56, 63, 2, 1, 00, 32
|
||||
|
||||
******** Modificar c¢digo de chequeo ******************
|
||||
$ 130, 545, 635, 180, 7, 56, 63, 2, 1, 00, 23
|
||||
|
||||
$ 190, 545, 635, 222, 7, 56, 63, 2, 1, 00, 46
|
||||
$ 232, 545, 635, 265, 7, 56, 63, 2, 1, 00, 34
|
||||
|
||||
$ 275, 545, 635, 325, 7, 56, 63, 2, 1, 00, 38
|
||||
$ 335, 545, 635, 385, 7, 56, 63, 2, 1, 00, 30
|
||||
$ 395, 545, 635, 445, 7, 56, 63, 2, 1, 00, 31
|
||||
|
||||
!2,2
|
||||
|
||||
$ 295, 270, 365, 325, 7, 63, 56, 2, 2, 00, 30
|
||||
$ 295, 370, 465, 325, 7, 63, 56, 2, 2, 00, 46
|
||||
|
||||
|
||||
|
BIN
EPROM_JD.TMP
Normal file
BIN
EPROM_JD.TMP
Normal file
Binary file not shown.
447
EP_2.CPP
Normal file
447
EP_2.CPP
Normal file
@ -0,0 +1,447 @@
|
||||
#include<bios.h>
|
||||
#include<dos.h>
|
||||
#include<stdlib.h>
|
||||
#include<conio.h>
|
||||
#include<string.h>
|
||||
#include<ctype.h>
|
||||
|
||||
#define DIBUJA 1
|
||||
#define DEPRIME 2
|
||||
#define Dibuja_Todos 3
|
||||
#define COMPRUEBA 4
|
||||
#define STD_BY 5
|
||||
|
||||
void Edit_Item(void);
|
||||
void espera_soltar(void);
|
||||
void espera_pulsar(void);
|
||||
void activa_raton(void);
|
||||
void desactiva_raton(void);
|
||||
void inicializa_raton_texto(void);
|
||||
void Pantalla_Leer(void);
|
||||
void Pantalla_Escribir(void);
|
||||
void dibuja_pantalla(void);
|
||||
struct Boton_Texto{
|
||||
char x; char y;
|
||||
char Texto[80];
|
||||
|
||||
int ID_T1;
|
||||
int ID_T2;
|
||||
};
|
||||
|
||||
int Funcion_Botones(int Funcion, int nBotones, struct Boton_Texto *Boton_Texto);
|
||||
|
||||
struct byte_de_long { unsigned char P3; unsigned char P2;
|
||||
unsigned char P1; unsigned char P0;
|
||||
};
|
||||
union lngchr{ long Numero; struct byte_de_long Byte; } Division;
|
||||
//////////////////////////////
|
||||
// long --> FF FF FF FF --> 3 34 65 59
|
||||
// P0 P1 P2 P3 Dec.89 101 52 3
|
||||
////////////////////////////// Hex.59 65 34 3
|
||||
int boton_izq; int boton_der;
|
||||
int x_raton, y_raton, RATON = 1;
|
||||
int SWAP = 0;
|
||||
int Dir, Dato;
|
||||
|
||||
void main(void){
|
||||
|
||||
struct Boton_Texto BT[6];
|
||||
int devolver = 0, i;
|
||||
|
||||
BT[0].x = 58; BT[0].y = 3; strcpy( BT[0].Texto, " P. &Leer "); BT[0].ID_T1 = 76; BT[0].ID_T2 = 0;
|
||||
BT[1].x = 58; BT[1].y = 6; strcpy( BT[1].Texto, " Iniciar Lec&tura "); BT[1].ID_T1 = 84; BT[1].ID_T2 = 0;
|
||||
|
||||
BT[2].x = 58; BT[2].y = 9; strcpy( BT[2].Texto, " P. &Escribir "); BT[2].ID_T1 = 69; BT[2].ID_T2 = 0;
|
||||
BT[3].x = 58; BT[3].y =12; strcpy( BT[3].Texto, " Iniciar E&scritura "); BT[3].ID_T1 = 83; BT[3].ID_T2 = 0;
|
||||
|
||||
BT[4].x = 58; BT[4].y =15; strcpy( BT[4].Texto, " &C R E D I T O S "); BT[4].ID_T1 = 67; BT[4].ID_T2 = 0;
|
||||
BT[5].x = 58; BT[5].y =18; strcpy( BT[5].Texto, " S&ALIR de PDE ... "); BT[5].ID_T1 = 65; BT[5].ID_T2 = 0;
|
||||
|
||||
inicializa_raton_texto();
|
||||
if( RATON ) desactiva_raton();
|
||||
dibuja_pantalla();
|
||||
_setcursortype(_NOCURSOR);
|
||||
Pantalla_Leer();
|
||||
// while( !kbhit() );
|
||||
// Pantalla_Escribir();
|
||||
|
||||
while(devolver != 6) {
|
||||
devolver = Funcion_Botones(STD_BY, 6, BT);
|
||||
switch(devolver){
|
||||
case 1: Pantalla_Leer(); SWAP = 0; break;
|
||||
case 2:
|
||||
Pantalla_Leer(); SWAP = 0;
|
||||
_setcursortype(_NORMALCURSOR);
|
||||
Edit_Item();
|
||||
_setcursortype(_NOCURSOR);
|
||||
|
||||
break;
|
||||
case 3: Pantalla_Escribir(); SWAP = 1; break;
|
||||
case 4:
|
||||
Pantalla_Escribir(); SWAP = 1;
|
||||
_setcursortype(_NORMALCURSOR);
|
||||
Edit_Item();
|
||||
_setcursortype(_NOCURSOR);
|
||||
|
||||
break;
|
||||
case 6: break;
|
||||
default:
|
||||
while( kbhit() ) getch();
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
textbackground(BLACK);
|
||||
_setcursortype(_NORMALCURSOR);
|
||||
clrscr();
|
||||
|
||||
}
|
||||
|
||||
|
||||
void dibuja_pantalla(void){
|
||||
|
||||
int i;
|
||||
clrscr();
|
||||
highvideo();
|
||||
|
||||
window(1, 1, 80, 25);
|
||||
textcolor(9);
|
||||
textbackground(7);
|
||||
for(i=0; i<27; i++) // "-.-.-.-.-.-.-.-.-.-.-.-."
|
||||
cprintf("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ");
|
||||
|
||||
textcolor(BLACK);
|
||||
gotoxy(1,25);
|
||||
cprintf("Utilidad para "); textcolor(RED);
|
||||
cprintf("PDE _ EPROM2.EXE"); textcolor(BLACK);
|
||||
gotoxy( (80-22), 25); cprintf("Jos‚ David & Francisco");
|
||||
|
||||
}
|
||||
|
||||
void Pantalla_Leer(void){
|
||||
highvideo();
|
||||
textcolor(BLACK);
|
||||
textbackground(7);
|
||||
gotoxy(3,3); cprintf("Û");
|
||||
gotoxy(17,3); cprintf("Û");
|
||||
gotoxy(3,4); cprintf("Û Leer ");
|
||||
textcolor(WHITE); cprintf("Û"); textcolor(BLACK);
|
||||
gotoxy(17,4); cprintf("Û Escribir ");
|
||||
textcolor(WHITE); cprintf("Û"); textcolor(BLACK);
|
||||
gotoxy(3,5); cprintf("Û ÀÄ ÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿");
|
||||
gotoxy(3,6); cprintf("Û ³");
|
||||
gotoxy(3,7); cprintf("Û Direcci¢n: ³");
|
||||
gotoxy(3,8); cprintf("Û ³");
|
||||
gotoxy(3,9); cprintf("Û ³");
|
||||
gotoxy(3,10); cprintf("Û ³");
|
||||
gotoxy(3,11); cprintf("Û ³");
|
||||
textcolor(RED);
|
||||
gotoxy(5,11); cprintf("Dato Leido:");
|
||||
textcolor(BLACK);
|
||||
gotoxy(3,12); cprintf("Û ³");
|
||||
gotoxy(3,13); cprintf("ÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ");
|
||||
|
||||
textcolor(WHITE);
|
||||
gotoxy(4,3); cprintf("ßßßßßßßßßßÛ");
|
||||
gotoxy(18,3); cprintf("ßßßßßßßßßßÛ");
|
||||
|
||||
gotoxy(14,5); cprintf("ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßÛ");
|
||||
gotoxy(46,6); cprintf("Û");
|
||||
gotoxy(46,7); cprintf("Û");
|
||||
gotoxy(46,8); cprintf("Û");
|
||||
gotoxy(46,9); cprintf("Û");
|
||||
gotoxy(46,10); cprintf("Û");
|
||||
gotoxy(46,11); cprintf("Û");
|
||||
gotoxy(46,12); cprintf("Û");
|
||||
gotoxy(46,13); cprintf("Û");
|
||||
|
||||
}
|
||||
|
||||
|
||||
void Pantalla_Escribir(void){
|
||||
highvideo();
|
||||
textcolor(BLACK);
|
||||
textbackground(7);
|
||||
gotoxy(3,3); cprintf("Û");
|
||||
gotoxy(17,3); cprintf("Û");
|
||||
gotoxy(3,4); cprintf("Û Leer ");
|
||||
textcolor(WHITE); cprintf("Û"); textcolor(BLACK);
|
||||
gotoxy(17,4); cprintf("Û Escribir ");
|
||||
textcolor(WHITE); cprintf("Û"); textcolor(BLACK);
|
||||
gotoxy(3,5); cprintf("Û ÀÄ ÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿");
|
||||
gotoxy(3,6); cprintf("Û ³");
|
||||
gotoxy(3,7); cprintf("Û Direcci¢n: ³");
|
||||
gotoxy(3,8); cprintf("Û ³");
|
||||
gotoxy(3,9); cprintf("Û Dato: ³");
|
||||
gotoxy(3,10); cprintf("Û ³");
|
||||
gotoxy(3,11); cprintf("Û ³");
|
||||
textcolor(RED);
|
||||
gotoxy(5,11); cprintf("Dato escrito:");
|
||||
textcolor(BLACK);
|
||||
gotoxy(3,12); cprintf("Û ³");
|
||||
gotoxy(3,13); cprintf("ÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ");
|
||||
|
||||
textcolor(WHITE);
|
||||
gotoxy(4,3); cprintf("ßßßßßßßßßßÛ");
|
||||
gotoxy(18,3); cprintf("ßßßßßßßßßßÛ");
|
||||
|
||||
gotoxy(4,5); cprintf("ßßßßßßßßßßßßßß ßßßßßßßßßßßßßßßßßßÛ");
|
||||
gotoxy(46,6); cprintf("Û");
|
||||
gotoxy(46,7); cprintf("Û");
|
||||
gotoxy(46,8); cprintf("Û");
|
||||
gotoxy(46,9); cprintf("Û");
|
||||
gotoxy(46,10); cprintf("Û");
|
||||
gotoxy(46,11); cprintf("Û");
|
||||
gotoxy(46,12); cprintf("Û");
|
||||
gotoxy(46,13); cprintf("Û");
|
||||
|
||||
}
|
||||
|
||||
|
||||
int Funcion_Botones(int Funcion, int nBotones, struct Boton_Texto *Boton_Texto){
|
||||
|
||||
char i, DEVOLVER = -1;
|
||||
int longitud, key;
|
||||
|
||||
switch( Funcion ) {
|
||||
case DIBUJA:
|
||||
highvideo();
|
||||
textcolor(BLACK);
|
||||
textbackground(11);
|
||||
gotoxy(Boton_Texto[nBotones].x, Boton_Texto[nBotones].y);
|
||||
DEVOLVER = 0;
|
||||
longitud = strlen( Boton_Texto[nBotones].Texto );
|
||||
while( DEVOLVER <= longitud ) {
|
||||
if( Boton_Texto[nBotones].Texto[DEVOLVER] == '&' ) {
|
||||
DEVOLVER ++;
|
||||
textcolor(RED);
|
||||
cprintf("%c", Boton_Texto[nBotones].Texto[DEVOLVER]);
|
||||
textcolor(BLACK);
|
||||
} else cprintf("%c", Boton_Texto[nBotones].Texto[DEVOLVER]);
|
||||
DEVOLVER ++;
|
||||
}
|
||||
|
||||
// cprintf("%s", Texto);
|
||||
|
||||
textbackground(7); // ±SALIR±Ü
|
||||
cprintf("Ü"); // ßßßßßßß
|
||||
gotoxy(Boton_Texto[nBotones].x+1, Boton_Texto[nBotones].y+1);
|
||||
for(i = 0; i < longitud; i ++ ) // ±±±±±±±Ü
|
||||
cprintf("ß"); // ßßßßßßß
|
||||
break;
|
||||
case DEPRIME:
|
||||
highvideo();
|
||||
textcolor(BLACK);
|
||||
textbackground(11);
|
||||
gotoxy(Boton_Texto[nBotones].x, Boton_Texto[nBotones].y);
|
||||
DEVOLVER = 0;
|
||||
longitud = strlen( Boton_Texto[nBotones].Texto );
|
||||
textbackground(7);
|
||||
while( DEVOLVER <= (longitud+1) ) {
|
||||
if( Boton_Texto[nBotones].Texto[DEVOLVER] == '&' ) {
|
||||
DEVOLVER ++;
|
||||
}
|
||||
cprintf(" ");
|
||||
DEVOLVER ++;
|
||||
}
|
||||
textbackground(11);
|
||||
gotoxy(Boton_Texto[nBotones].x+1, Boton_Texto[nBotones].y+1);
|
||||
DEVOLVER = 0;
|
||||
while( DEVOLVER <= longitud ) {
|
||||
|
||||
if( Boton_Texto[nBotones].Texto[DEVOLVER] == '&' ) {
|
||||
DEVOLVER ++;
|
||||
textcolor(RED);
|
||||
cprintf("%c", Boton_Texto[nBotones].Texto[DEVOLVER]);
|
||||
textcolor(BLACK);
|
||||
} else cprintf("%c", Boton_Texto[nBotones].Texto[DEVOLVER]);
|
||||
DEVOLVER ++;
|
||||
}
|
||||
// cprintf("%s", Texto); //
|
||||
// ±±±±±±±
|
||||
break;
|
||||
case Dibuja_Todos:
|
||||
for( i=0; i < nBotones; i++)
|
||||
Funcion_Botones( DIBUJA, i, Boton_Texto);
|
||||
break;
|
||||
case COMPRUEBA:
|
||||
if( bioskey(1)!=0 ) {
|
||||
key = toupper( getch() );
|
||||
for( i=0; i < nBotones && DEVOLVER <= -1; i++){
|
||||
if( key == Boton_Texto[i].ID_T1 ) {
|
||||
if( key == 0 ) {
|
||||
key = toupper( getch() );
|
||||
if( key == Boton_Texto[i].ID_T2 ){
|
||||
DEVOLVER = (i + 1);
|
||||
Funcion_Botones( DEPRIME, (DEVOLVER-1), Boton_Texto);
|
||||
delay(150);
|
||||
//sleep(1);
|
||||
Funcion_Botones( DIBUJA, (DEVOLVER-1), Boton_Texto);
|
||||
} else DEVOLVER = -2;
|
||||
} else
|
||||
{ DEVOLVER = (i + 1);
|
||||
Funcion_Botones( DEPRIME, (DEVOLVER-1), Boton_Texto);
|
||||
delay(150);
|
||||
//sleep(1);
|
||||
Funcion_Botones( DIBUJA, (DEVOLVER-1), Boton_Texto);
|
||||
}
|
||||
}
|
||||
}
|
||||
if( DEVOLVER == -1 )
|
||||
{ ungetch(key); }
|
||||
|
||||
if( DEVOLVER == -2 )
|
||||
{ ungetch(0); ungetch(key); DEVOLVER = -1; }
|
||||
|
||||
} else if( RATON ) {
|
||||
for( i=0; i < nBotones && DEVOLVER == -1; i++) {
|
||||
longitud = strlen( Boton_Texto[i].Texto );
|
||||
if ( (x_raton+1) >= Boton_Texto[i].x && (x_raton+1) <= ( Boton_Texto[i].x + longitud -1) &&
|
||||
y_raton == (Boton_Texto[i].y-1) ) { DEVOLVER = (i + 1);
|
||||
Funcion_Botones( DEPRIME, (DEVOLVER-1), Boton_Texto);
|
||||
if( RATON ) activa_raton();
|
||||
espera_soltar();
|
||||
if( RATON ) desactiva_raton();
|
||||
// delay(150);
|
||||
Funcion_Botones( DIBUJA, (DEVOLVER-1), Boton_Texto);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case STD_BY:
|
||||
Funcion_Botones(Dibuja_Todos, 6, Boton_Texto);
|
||||
do{
|
||||
if( RATON ) activa_raton();
|
||||
if( RATON ) espera_pulsar(); else while( bioskey(1)==0 );
|
||||
if( RATON ) desactiva_raton();
|
||||
DEVOLVER = Funcion_Botones(COMPRUEBA, 6, Boton_Texto);
|
||||
}while(DEVOLVER==-1 && bioskey(1)==0 );
|
||||
|
||||
}
|
||||
return DEVOLVER;
|
||||
}
|
||||
|
||||
void inicializa_raton_texto(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
ent.x.ax = 0;
|
||||
int86(0x33, &ent, &sal); /* averigua si hay rat¢n conectado */
|
||||
|
||||
if(sal.x.ax==0) { RATON = 0; return; }
|
||||
|
||||
ent.x.ax = 15;
|
||||
ent.x.cx = 8;
|
||||
ent.x.dx = 16;
|
||||
int86(0x33, &ent, &sal); /* fija la raz¢n mickey/pixel */
|
||||
|
||||
ent.x.ax = 7;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 639;
|
||||
int86(0x33, &ent, &sal); /* fija la posici¢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¢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¢n del rat¢n */
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal); /* muestra el puntero del rat¢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¢n y estados del bot¢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) / 4; // / 8
|
||||
y_raton= (sal.x.dx)/8; // /8
|
||||
}
|
||||
|
||||
void espera_soltar(void)
|
||||
{
|
||||
union REGS ent, sal;
|
||||
|
||||
do{
|
||||
ent.x.ax = 3;
|
||||
int86(0x33, &ent, &sal); /* lee posici¢n y estados del bot¢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 Edit_Item(void){
|
||||
|
||||
char buffer[80];
|
||||
char *endptr;
|
||||
|
||||
if( !SWAP ) {
|
||||
|
||||
do{
|
||||
strcpy( buffer, "\0");
|
||||
gotoxy(16,7); textcolor(RED);
|
||||
cprintf(" ");
|
||||
gotoxy(16,7);
|
||||
cscanf("%10s", buffer );
|
||||
|
||||
Dir = strtol(buffer, &endptr, 16);
|
||||
}while(*endptr!=NULL);
|
||||
|
||||
// LEER
|
||||
} else {
|
||||
// ESCRIBIR
|
||||
|
||||
textcolor(RED);
|
||||
gotoxy(16,7);
|
||||
do{
|
||||
strcpy( buffer, "\0");
|
||||
gotoxy(16,7); textcolor(RED);
|
||||
cprintf(" ");
|
||||
gotoxy(16,7);
|
||||
cscanf("%10s", buffer );
|
||||
Dir = strtol(buffer, &endptr, 16);
|
||||
}while(*endptr!=NULL);
|
||||
|
||||
do{
|
||||
strcpy( buffer, "\0");
|
||||
gotoxy(16,9); textcolor(RED);
|
||||
cprintf(" ");
|
||||
gotoxy(16,9);
|
||||
cscanf("%10s", buffer );
|
||||
Dato = strtol(buffer, &endptr, 16);
|
||||
}while(*endptr!=NULL);
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
33
NONAME00.CPP
Normal file
33
NONAME00.CPP
Normal file
@ -0,0 +1,33 @@
|
||||
#include<conio.h>
|
||||
|
||||
|
||||
|
||||
|
||||
struct byte_de_long { unsigned char P3; unsigned char P2;
|
||||
unsigned char P1; unsigned char P0;
|
||||
};
|
||||
union lngchr{ long Numero; struct byte_de_long Byte; } Division;
|
||||
//////////////////////////////
|
||||
// long --> FF FF FF FF --> 3 34 65 59
|
||||
// P0 P1 P2 P3 Dec.89 101 52 3
|
||||
////////////////////////////// Hex.59 65 34 3
|
||||
|
||||
void main(void){
|
||||
int iP0, iP1, iP2, iP3;
|
||||
clrscr();
|
||||
cscanf("%ld", &Division.Numero );
|
||||
cprintf("\r\n");
|
||||
cprintf("LONG --> %ld", Division.Numero);
|
||||
cprintf("\r\n");
|
||||
cprintf("Bytes de un long:\r\n");
|
||||
iP0 = Division.Byte.P0;
|
||||
iP1 = Division.Byte.P1;
|
||||
iP2 = Division.Byte.P2;
|
||||
iP3 = Division.Byte.P3;
|
||||
cprintf("P3 --> %d P2 --> %d P1 --> %d P0 --> %d\r\n", iP3, iP2, iP1, iP0);
|
||||
cprintf("\r\n");
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
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¢n y estados del bot¢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¢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¢n mickey/pixel */
|
||||
|
||||
ent.x.ax = 7;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 639;
|
||||
int86(0x33, &ent, &sal); /* fija la posici¢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¢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¢n del rat¢n */
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal); /* muestra el puntero del rat¢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¢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¢n mickey/pixel */
|
||||
|
||||
ent.x.ax = 7;
|
||||
ent.x.cx = 0;
|
||||
ent.x.dx = 639;
|
||||
int86(0x33, &ent, &sal); /* fija la posici¢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¢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¢n del rat¢n */
|
||||
|
||||
ent.x.ax = 1;
|
||||
int86(0x33, &ent, &sal); /* muestra el puntero del rat¢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¢n y estados del bot¢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¢n y estados del bot¢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¢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¢n para asignar los colores */
|
||||
}
|
||||
|
||||
void cinta_cine(void)
|
||||
{
|
||||
textcolor(color_izq);
|
||||
gotoxy(21, 1); cprintf ("ÜÛÛÛÜ ßÛÛÛÛÛß");
|
||||
gotoxy(19, 2); cprintf ("ÜÛÛÛÛÛÛÛÜ ßÛß");
|
||||
gotoxy(17, 3); cprintf (" ßÛÛÛÛÛÛÛÛÛÛÜ ");
|
||||
gotoxy(15, 4); cprintf ("Ü ßÛÛÛÛÛÛÛÛÛß");
|
||||
gotoxy(13, 5); cprintf ("ÜÛÛÛÜ ßÛÛÛÛÛß");
|
||||
gotoxy(11, 6); cprintf ("ÜÛÛÛÛÛÛÛÜ ßÛß");
|
||||
gotoxy( 9, 7); cprintf (" ßÛÛÛÛÛÛÛÛÛÛÜ ");
|
||||
gotoxy( 7, 8); cprintf ("Ü ßÛÛÛÛÛÛÛÛÛß");
|
||||
gotoxy( 5, 9); cprintf ("ÜÛÛÛÜ ßÛÛÛÛÛß");
|
||||
gotoxy( 3,10); cprintf ("ÜÛÛÛÛÛÛÛÜ ßÛß");
|
||||
gotoxy( 1,11); cprintf(" ßÛÛÛÛÛÛÛÛÛÛÜ ");
|
||||
gotoxy( 1,12); cprintf(" ßÛÛÛÛÛÛÛÛÛß");
|
||||
gotoxy( 1,13); cprintf("Ü ßÛÛÛÛÛß");
|
||||
gotoxy( 1,14); cprintf("ÛÛÜ ßÛß");
|
||||
gotoxy( 1,15); cprintf("ÛÛÛÛÜ ");
|
||||
gotoxy( 1,16); cprintf("ÛÛÛÛÛß");
|
||||
gotoxy( 1,17); cprintf("ÛÛÛß");
|
||||
gotoxy( 1,18); cprintf("Ûß");
|
||||
|
||||
textcolor(color_der);
|
||||
gotoxy(79,14); cprintf ("Ü ");
|
||||
gotoxy(77,15); cprintf ("ÜÛÛÛ");
|
||||
gotoxy(75,16); cprintf ("ÜÛÛÛÛÛ");
|
||||
gotoxy(73,17); cprintf (" ßÛÛÛÛÛÛ");
|
||||
gotoxy(71,18); cprintf ("Ü ßÛÛÛÛ");
|
||||
gotoxy(69,19); cprintf ("ÜÛÛÛÜ ßÛÛ");
|
||||
gotoxy(67,20); cprintf ("ÜÛÛÛÛÛÛÛÜ ß");
|
||||
gotoxy(65,21); cprintf (" ßÛÛÛÛÛÛÛÛÛÛÜ ");
|
||||
gotoxy(63,22); cprintf ("Ü ßÛÛÛÛÛÛÛÛÛß");
|
||||
gotoxy(61,23); cprintf ("ÜÛÛÛÜ ßÛÛÛÛÛß");
|
||||
gotoxy(59,24); cprintf ("ÜÛÛÛÛÛÛÛÜ ßÛß");
|
||||
gotoxy(57,25); cprintf(" ßÛÛÛÛÛÛÛÛÛÛÜ ");
|
||||
}
|
||||
|
||||
void pantalla_cine(void)
|
||||
{
|
||||
textbackground(BLACK); textcolor(BLACK); clrscr();
|
||||
textcolor(BLUE);
|
||||
gotoxy( 1, 1); cprintf(" Ü Ü");
|
||||
gotoxy( 1, 2); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 3); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 4); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 5); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 6); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 7); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 8); cprintf(" Ü Ü ");
|
||||
gotoxy( 1, 9); cprintf(" Ü Ü ");
|
||||
gotoxy( 1,10); cprintf(" Ü ");
|
||||
gotoxy( 1,11); cprintf(" Ü ");
|
||||
gotoxy( 1,12); cprintf(" Ü ");
|
||||
gotoxy( 1,13); cprintf(" Ü ");
|
||||
gotoxy( 1,14); cprintf(" Ü ");
|
||||
gotoxy( 1,15); cprintf(" Ü ");
|
||||
gotoxy( 1,16); cprintf(" Ü ");
|
||||
gotoxy( 1,17); cprintf(" Ü ");
|
||||
gotoxy( 1,18); cprintf(" Ü ");
|
||||
gotoxy( 1,19); cprintf(" Ü ");
|
||||
|
||||
textcolor(BLUE);
|
||||
gotoxy(54,12); cprintf(" Ü");
|
||||
gotoxy(54,13); cprintf(" Ü ");
|
||||
gotoxy(54,14); cprintf(" Ü ");
|
||||
gotoxy(54,15); cprintf(" Ü ");
|
||||
gotoxy(54,16); cprintf(" Ü ");
|
||||
gotoxy(54,17); cprintf(" Ü ");
|
||||
gotoxy(54,18); cprintf(" Ü ");
|
||||
gotoxy(54,19); cprintf(" Ü ");
|
||||
gotoxy(54,20); cprintf(" Ü ");
|
||||
gotoxy(54,21); cprintf(" Ü ");
|
||||
gotoxy(54,22); cprintf(" Ü Ü");
|
||||
gotoxy(54,23); cprintf(" Ü Ü ");
|
||||
gotoxy(54,24); cprintf(" Ü Ü ");
|
||||
gotoxy(54,25); cprintf("Ü Ü ");
|
||||
}
|
||||
|
||||
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("®La lista de Schindler¯ "); break;
|
||||
case 3: gotoxy(43, 4); cprintf("Spielberg, ®La lista de Schindler¯ "); break;
|
||||
case 4: gotoxy(41, 5); cprintf("Holly Hunter, ®El Piano¯ "); break;
|
||||
case 5: gotoxy(39, 6); cprintf("Tom Hanks, ®Philadelphia¯ "); break;
|
||||
case 6: gotoxy(37, 7); cprintf("Anna Paquin, ®El Piano¯ "); break;
|
||||
case 7: gotoxy(35, 8); cprintf("Tommy Lee Jones, ®El Fugitivo¯ "); break;
|
||||
case 8: gotoxy(33, 9); cprintf("®Belle <20>poque¯ (Espa¤a), Fernando Trueba "); break;
|
||||
case 9: gotoxy(31,10); cprintf("Jane Campion, ®El Piano¯ "); break;
|
||||
case 10: gotoxy(29,11); cprintf("Steven Zaillian, ®La lista de Schindler¯ "); break;
|
||||
case 11: gotoxy(27,12); cprintf("Allan Starski y Ewa Braun, ®La lista de Schindler¯ "); break;
|
||||
case 12: gotoxy(25,13); cprintf("®Parque Jur sico¯ "); break;
|
||||
case 13: gotoxy(23,14); cprintf("Michael Kahn, ®La lista de Schindler¯ "); break;
|
||||
case 14: gotoxy(21,15); cprintf("Janusz Kaminski, ®La lista de Schindler¯ "); break;
|
||||
case 15: gotoxy(19,16); cprintf("®Parque Jur sico¯ "); break;
|
||||
case 16: gotoxy(17,17); cprintf("John Williams, ®La lista de Schindler¯ "); break;
|
||||
case 17: gotoxy(15,18); cprintf("®Streets of Philadelphia¯, Bruce Springsteen "); break;
|
||||
case 18: gotoxy(13,19); cprintf("Gabriella Pescucci, ®La edad de la inocencia¯ "); break;
|
||||
case 19: gotoxy(11,20); cprintf("®Parque Jur sico¯ "); break;
|
||||
case 20: gotoxy( 9,21); cprintf("®Sra. Doubtfire¯ "); break;
|
||||
case 21: gotoxy( 7,22); cprintf("®The wrong trousers¯ "); break;
|
||||
case 22: gotoxy( 5,23); cprintf("®Schwarzfahrer¯ "); break;
|
||||
case 23: gotoxy( 3,24); cprintf("®I am a promise:child. of Stanton Elementary School¯"); break;
|
||||
case 24: gotoxy( 1,25); cprintf("®Defending our lives¯ "); break;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user