commit e6a2a986d3b9bc3aba0e8b670edfdeec03bf63be Author: jdg Date: Sun Sep 12 19:48:40 2021 +0200 First commit 10/04/1997 diff --git a/GO.CPP b/GO.CPP new file mode 100644 index 0000000..8079db4 --- /dev/null +++ b/GO.CPP @@ -0,0 +1,192 @@ +#include +#include +#include +#include +#include + +typedef struct +{ + int x, y; // Posicion en la pantalla + + char Direc[80]; // Directorio donde localizarlo + char Passw[10]; // Password + +} DATOS_CD; + + +DATOS_CD ArbolActual[] = { + { 2, 3, "\\arcade\\ALIEN.RAR", "neila" }, + { 2, 4, "\\arcade\\BLAM.RAR", "malb" }, + { 2, 5, "\\arcade\\BUBBLE.RAR", "elbbub" }, + { 2, 6, "\\arcade\\ERADICAT.RAR", "tacidare" }, + { 2, 7, "\\arcade\\SYNDICA2.RAR", "2acidnys" }, + { 2, 8, "\\arcade\\TOMBRAID.RAR", "diarbmot" }, + + { 2, 12, "\\deportiv\\AIRBORNE.RAR", "enrobria" }, + { 2, 13, "\\deportiv\\RLA.RAR", "lra" }, + { 2, 14, "\\deportiv\\FIFA97.RAR", "79afif" }, + { 2, 15, "\\deportiv\\FUTBOL5.RAR", "5lobtuf" }, + { 2, 16, "\\deportiv\\SPACEJAM.RAR", "majecaps" }, + + {47, 3, "\\estrateg\\BC.RAR", "cb" }, + {47, 4, "\\estrateg\\DEADLY.RAR", "yldaed" }, + {47, 5, "\\estrateg\\REICH.RAR", "hcier" }, + {47, 6, "\\estrateg\\RIFLES.RAR", "selfir" }, + {47, 7, "\\estrateg\\HARPOON2.RAR", "2nooprah" }, + {47, 8, "\\estrateg\\REDALERT.RAR", "trelader" }, + + {47, 12, "\\simulado\\AMOK.RAR", "koma" }, + {47, 13, "\\simulado\\SCREAM2.RAR", "2maercs" }, + {47, 14, "\\simulado\\SWIV3.RAR", "3viws" }, + + {47, 18, "\\aventura\\FABLE.RAR", "elbaf" }, + {47, 19, "\\aventura\\HAVE.RAR", "evah" } + }; + + +void DibujaPantalla(void) +{ + textbackground( LIGHTGRAY ); + clrscr(); + textcolor( BLACK ); + + cprintf( " \n\r"); + cprintf( " Arcade Estrategia \n\r"); + cprintf( " \n\r"); + cprintf( " Alien Trilogy Battle Cruiser 3000 AD \n\r"); + cprintf( " Balm Machine Head Jagged Alliance \n\r"); + cprintf( " Bubble Bobble Combo Third Reich \n\r"); + cprintf( " Eradicator Age of Rifles \n\r"); + cprintf( " Syndicate Wars 2 Harpoon 2 \n\r"); + cprintf( " Tomb Raider Command Conquer Red Alert \n\r"); + cprintf( " \n\r"); + cprintf( " Deportivos Simuladores \n\r"); + cprintf( " \n\r"); + cprintf( " Espn NBA AirBorne'96 Amok \n\r"); + cprintf( " Australian Rugby League Screamer 2 \n\r"); + cprintf( " Fifa Soccer 97 Swiv 3D \n\r"); + cprintf( " Pc Futbol v5.0 \n\r"); + cprintf( " Space Jam Aventuras \n\r"); + cprintf( " \n\r"); + cprintf( " Fable \n\r"); + cprintf( " No tengo boca y quiero gr. \n\r"); + cprintf( " \n\r"); + cprintf( " \n\r"); + + textcolor( WHITE ); + cprintf( " ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");textcolor(BLACK); cprintf("¿\n\r");textcolor( WHITE ); + cprintf( " ³ ");textcolor(BLACK); cprintf(" ³\n\r");textcolor( WHITE ); + cprintf( " À");textcolor(BLACK); cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"); +}; + +char far *screen = (char far *)0xB8000000; + + +void Kit(void) +{ + static char Dir = 1; + static char Pos = 0; + char longt; + + for ( longt = 0; longt < 10; longt++ ) + { + if ( (Dir*longt + Pos) >= 0 && (Dir*longt + Pos) <= 75 ) + { + screen[ 23*80*2 + ( Pos + Dir*longt + 2)*2 + 1 ] &= 0x8F; + screen[ 23*80*2 + ( Pos + Dir*longt + 2)*2 + 1 ] |= 7<<4; +/* + gotoxy( Pos + Dir*longt + 3, 24 ); + cprintf( " " ); +*/ + } + } + + Pos += Dir; + if ( Pos < 0 -2 ) Dir = 1; + if ( Pos > 75 +2 ) Dir = -1; + + for ( longt = 0; longt < 10; longt++ ) + { + if ( (Dir*longt + Pos) >= 0 && (Dir*longt + Pos) <= 75 ) + { +/* + gotoxy( Pos + Dir*longt + 3, 24 ); + cprintf( "þ" ); +*/ + screen[ 23*80*2 + ( Pos + Dir*longt + 2)*2 + 1 ] &= 0x8F; + screen[ 23*80*2 + ( Pos + Dir*longt + 2)*2 + 1 ] |= 3<<4; + } + } + + delay( /*1000*/25 ); +} + +void main(void) +{ + int ok = 0; + int Item = 0, i; + char buffer[80]; + char *p; + + p = searchpath("rar.EXE"); + printf("Search for TLINK.EXE : %s\n", p); + if ( p == NULL ) + { + printf( "Debes copiar el archivo rar.ex al path como rar.exe\n"); + printf( "Ejemplo: \n"); + printf( " copy rar.ex C:\\dos\\RAR.EXE \n"); + return; + } + + + DibujaPantalla(); + + for ( i = 0; i < 27; i++ ) + { + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] &= 0x8F; + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] |= 5<<4; + gotoxy( 4, 24 ); cprintf(" "); + textcolor( RED ); + gotoxy( 4, 24 ); cprintf( "Linea de comandos: rar x -p%s %s C:", /*strrev( */ArbolActual[Item].Passw/* )*/, ArbolActual[Item].Direc ); + } + while ( !ok ) + { + Kit(); + if ( kbhit() && (ok = getch()) == 0 ) + { + for ( i = 0; i < 27; i++ ) + { + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] &= 0x8F; + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] |= 7<<4; + } + switch ( getch() ) + { + case 72: + Item--; if ( Item < 0 ) Item = 21; + break; + case 80: + Item++; if ( Item >= 22 ) Item = 0; + break; + } + for ( i = 0; i < 27; i++ ) + { + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] &= 0x8F; + screen[ ArbolActual[Item].y*80*2 + (ArbolActual[Item].x+i)*2 + 1 ] |= 5<<4; + gotoxy( 4, 24 ); cprintf(" "); + textcolor( RED ); + gotoxy( 4, 24 ); cprintf( "Linea de comandos: rar x -p%s %s C:", /*strrev( */ArbolActual[Item].Passw/* )*/, ArbolActual[Item].Direc ); + } + } + if ( ok == 13 ) + { + sprintf( buffer, "-p%s", ArbolActual[Item].Passw ); + execl ( p, p, "x", buffer, ArbolActual[Item].Direc, "C:", NULL); + ok = 1; + } + if ( ok == 27 ) ok = 1; else ok = 0; + } + textbackground( BLACK ); + textcolor( LIGHTGRAY ); + clrscr(); +} + diff --git a/GO.EXE b/GO.EXE new file mode 100644 index 0000000..37d03ff Binary files /dev/null and b/GO.EXE differ diff --git a/RAR.EX b/RAR.EX new file mode 100644 index 0000000..98bb1db Binary files /dev/null and b/RAR.EX differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..0e61bc4 --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +#GAMEPACK + + +*10/04/1997* + +ToDo: wwtcf? + + +![screenshot](/GAMEPACK.png "Screenshot")