From d2d23c3ac630c3654101308fcb13248451bc254684d42ccac56c64d90d6ea910 Mon Sep 17 00:00:00 2001 From: Gabriel Lorenzo Date: Tue, 27 May 2003 22:25:07 +0000 Subject: [PATCH] set_mode y fp->Custom_Error --- dlls/src/graphics/graphics.c | 156 ++++++++++++++++++------ dlls/src/graphics/graphics.h | 1 + dlls/src/include/export.h | 7 ++ ediv/src/shared/extern.h | 2 + ediv/src/stub/error.c | 26 ++++ ediv/src/stub/inte.c | 1 + ediv/src/stub/main.h | 9 +- ediv/src/visual c 6/ediv/ediv.dsp | 4 +- ediv/src/visual c 6/ediv/ediv.plg | 89 ++------------ ediv/src/visual c 6/encrypt/encrypt.dsp | 2 +- ediv/src/visual c 6/encrypt/encrypt.plg | 12 +- ediv/src/visual c 6/stub/stub.dsp | 32 ++++- ediv/src/visual c 6/stub/stub.plg | 47 ++++--- 13 files changed, 246 insertions(+), 142 deletions(-) diff --git a/dlls/src/graphics/graphics.c b/dlls/src/graphics/graphics.c index aabc04b..05d136a 100644 --- a/dlls/src/graphics/graphics.c +++ b/dlls/src/graphics/graphics.c @@ -10,20 +10,19 @@ #include +#include + #include #include "graphics.h" #include "SDL_rotozoom.h" -#define ERR_CANNOTOPENFPG 105 -#define ERR_INVALIDFPGHEADER 106 -#define ERR_INVALIDMAPCODE 110 +#define ERR_FILENOTFOUND 105 +#define ERR_INVALIDFPGHEADER 106 +#define ERR_INVALIDMAPCODE 110 #define Miedzy(x,a,b) (((x) >= (a)) && ((x) <= (b))) - -#define FUNCTION_PARAMS2 struct _fun_params *fp - #define MAX_DRAWS 1024 @@ -35,6 +34,7 @@ struct _file file0[0xFFF] ; int last_map[0xFF] ; int color_transparente ; int define_region ; +BOOL primer_frame=TRUE; typedef struct { unsigned char r,g,b; @@ -64,6 +64,15 @@ typedef struct _FPGMAPINFO{ int number_of_points; }FPGMAPINFO; +typedef struct _MODOVIDEO { + int ancho; + int alto; + int bpp; + int flags; + BOOL cambiado; +} MODOVIDEO; + +MODOVIDEO modovideo; char *graphic; /* wide*height */ @@ -175,6 +184,9 @@ int ExportaFuncs(EXPORTAFUNCS_PARAMS) FUNCTION("fade",4,eDIV_FADE) ; FUNCTION("xput",6,eDIV_XPUT); FUNCTION("get_rgb",4,eDIV_GET_RGB); + FUNCTION("set_mode",1,eDIV_SET_MODE); + FUNCTION("set_mode",3,eDIV_SET_MODE); + FUNCTION("set_mode",4,eDIV_SET_MODE); ENTRYPOINT( frame ) ; ENTRYPOINT( first_load ) ; @@ -869,7 +881,7 @@ int eDIV_SCREEN_COPY(FUNCTION_PARAMS) return 1 ; } -int eDIV_OUT_REGION(FUNCTION_PARAMS2) +int eDIV_OUT_REGION(FUNCTION_PARAMS) { int id , r ; int f, g , x , y ; @@ -892,7 +904,7 @@ int eDIV_OUT_REGION(FUNCTION_PARAMS2) return 1 ; } -int eDIV_DRAW(FUNCTION_PARAMS2) +int eDIV_DRAW(FUNCTION_PARAMS) { int i ; int t , c , o , r , x0, y0 , x1 , y1 ; @@ -937,7 +949,7 @@ int eDIV_DRAW(FUNCTION_PARAMS2) return -1 ; } -int eDIV_MOVE_DRAW(FUNCTION_PARAMS2) +int eDIV_MOVE_DRAW(FUNCTION_PARAMS) { SDL_Rect dstrect ; int id , c , o , x0 , y0 , x1 , y1 ; @@ -983,7 +995,7 @@ int eDIV_MOVE_DRAW(FUNCTION_PARAMS2) return 1 ; } -int eDIV_DELETE_DRAW(FUNCTION_PARAMS2) +int eDIV_DELETE_DRAW(FUNCTION_PARAMS) { int n ; n = getparm() ; @@ -1017,7 +1029,7 @@ int eDIV_DELETE_DRAW(FUNCTION_PARAMS2) } -int eDIV_LOAD_FPG(FUNCTION_PARAMS2) +int eDIV_LOAD_FPG(FUNCTION_PARAMS) { char * archivo ; FILE *f; @@ -1034,7 +1046,7 @@ int eDIV_LOAD_FPG(FUNCTION_PARAMS2) f=fopen(archivo,"rb"); if(f==NULL) { - fp->Runtime_Error(ERR_CANNOTOPENFPG); + fp->Runtime_Error(ERR_FILENOTFOUND); } fseek(f,0,SEEK_END); @@ -1114,7 +1126,7 @@ int eDIV_LOAD_FPG(FUNCTION_PARAMS2) return 0; } -int eDIV_GET_POINT(FUNCTION_PARAMS2) +int eDIV_GET_POINT(FUNCTION_PARAMS) { int f , g , n , dx , dy ; dy = getparm() ; @@ -1132,7 +1144,7 @@ int eDIV_GET_POINT(FUNCTION_PARAMS2) return 0 ; } -int eDIV_GET_REAL_POINT(FUNCTION_PARAMS2) +int eDIV_GET_REAL_POINT(FUNCTION_PARAMS) { int f , g , n , dx , dy , x , y , id; dy = getparm() ; @@ -1153,7 +1165,7 @@ int eDIV_GET_REAL_POINT(FUNCTION_PARAMS2) return 0 ; } -int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS2) +int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS) { int f , g , i ; i = getparm() ; @@ -1178,7 +1190,7 @@ int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS2) } -int eDIV_FADE(FUNCTION_PARAMS2) +int eDIV_FADE(FUNCTION_PARAMS) { int r , g , b , v ; v = getparm() ; @@ -1211,6 +1223,61 @@ void frame(FUNCTION_PARAMS) static int una_vez = 1 ; int i , id , f , g , r , z , trans,angle,size,resolution; SDL_Rect dstrect , srcrect ; + Uint32 rmask , gmask , bmask , amask ; + + //assert(0); + + if(primer_frame) { + primer_frame=FALSE; + + /* + * TODO: Añadir comprobacion de errores en los 2 if siguientes (Daijo) + */ + if (SDL_Init(SDL_INIT_VIDEO)) { + fp->Critical_Error(7); /* No se pudo inicializar SDL */ + return; + } + + screen = SDL_SetVideoMode(modovideo.ancho, modovideo.alto, modovideo.bpp, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_HWACCEL); + + rmask = 0x00ff0000; + gmask = 0x0000ff00; + bmask = 0x000000ff; + amask = 0x00000000; + + if ( screen == NULL ) { + fp->Critical_Error(7); /* No se pudo inicializar SDL */ + return; + } + + fondo = SDL_CreateRGBSurface( SDL_HWSURFACE , modovideo.ancho , modovideo.alto , modovideo.bpp , rmask , gmask , bmask , amask ) ; + + SDL_WM_SetCaption(fp->nombre_program, NULL); + SDL_ShowCursor(0); + } + else if(modovideo.cambiado) { + + /* TODO: Avisar a las DLLs */ + + SDL_FreeSurface(fondo); + SDL_FreeSurface(screen); + + screen = SDL_SetVideoMode(modovideo.ancho, modovideo.alto, modovideo.bpp, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_HWACCEL); + + rmask = 0x00ff0000; + gmask = 0x0000ff00; + bmask = 0x000000ff; + amask = 0x00000000; + + if ( screen == NULL ) { + fp->Critical_Error(7); /* No se pudo inicializar SDL */ + return; + } + + fondo = SDL_CreateRGBSurface( SDL_HWSURFACE , modovideo.ancho , modovideo.alto , modovideo.bpp , rmask , gmask , bmask , amask ) ; + + modovideo.cambiado=FALSE; + } fichero = fopen( "draw.txt" , "w" ) ; @@ -1368,9 +1435,8 @@ void frame(FUNCTION_PARAMS) } -void first_load(FUNCTION_PARAMS2) +void first_load(FUNCTION_PARAMS) { - Uint32 rmask , gmask , bmask , amask ; int i ; fp->Dibuja = Dibuja ; @@ -1383,20 +1449,6 @@ void first_load(FUNCTION_PARAMS2) last_map[i] = 0 ; color_transparente = 0 ; - /* - * TODO: Añadir comprobacion de errores en los 2 if siguientes (Daijo) - */ - if (SDL_Init(SDL_INIT_VIDEO)) ; - if ( screen == NULL ) ; - - - screen = SDL_SetVideoMode(320, 200, 24, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_HWACCEL); - rmask = 0x00ff0000; - gmask = 0x0000ff00; - bmask = 0x000000ff; - amask = 0x00000000; - fondo = SDL_CreateRGBSurface( SDL_HWSURFACE , 320 , 200 , 24 , rmask , gmask , bmask , amask ) ; - for ( i = 0 ; i < 0xFF ; i++ ) { files[i].existe = 0 ; @@ -1418,8 +1470,11 @@ void first_load(FUNCTION_PARAMS2) define_region = 1 ; - SDL_WM_SetCaption(fp->nombre_program, NULL); - SDL_ShowCursor(0); + modovideo.ancho=320; + modovideo.alto=200; + modovideo.bpp=8; + modovideo.flags=0; + modovideo.cambiado=FALSE; } @@ -1450,7 +1505,7 @@ int Dibuja(SDL_Surface *src , SDL_Rect srcrect , SDL_Rect dstrect , int z , int if (size>100) size=100; - zoom=size*0.01; + zoom=size*0.01f; angulo=angle/1000; @@ -1498,4 +1553,33 @@ SDL_Surface *xput(SDL_Surface *src,double size,double angle) SDL_FreeSurface (tmp); return dst; -} \ No newline at end of file +} + +int eDIV_SET_MODE(FUNCTION_PARAMS) +{ + int modo; + + switch(fp->num_params) { + case 4: + modovideo.flags=getparm(); + case 3: + modovideo.bpp=getparm(); + modovideo.alto=getparm(); + modovideo.ancho=getparm(); + modovideo.cambiado=TRUE; + break; + case 1: + modo=getparm(); + if(modo>1280960) { + modovideo.ancho=modo/10000; + modovideo.alto=modo%10000; + } + else { + modovideo.ancho=modo/1000; + modovideo.alto=modo%1000; + } + modovideo.bpp=8; + modovideo.cambiado=TRUE; + } + return 0; +} diff --git a/dlls/src/graphics/graphics.h b/dlls/src/graphics/graphics.h index 53669bd..9270c5a 100644 --- a/dlls/src/graphics/graphics.h +++ b/dlls/src/graphics/graphics.h @@ -37,6 +37,7 @@ int eDIV_GET_REAL_POINT(FUNCTION_PARAMS) ; int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS) ; int eDIV_FADE(FUNCTION_PARAMS) ; int eDIV_XPUT(FUNCTION_PARAMS); +int eDIV_SET_MODE(FUNCTION_PARAMS); int Dibuja(SDL_Surface *src , SDL_Rect srcrect , SDL_Rect dstrect , int z , int trans,int size,int angle); SDL_Surface *xput(SDL_Surface *src,double size,double angle); diff --git a/dlls/src/include/export.h b/dlls/src/include/export.h index 0d79e26..0c90c9b 100644 --- a/dlls/src/include/export.h +++ b/dlls/src/include/export.h @@ -90,8 +90,14 @@ typedef int (TYPEOF_Call_Entrypoint)(int ep, ...); typedef int (TYPEOF_Dibuja)(SDL_Surface *, SDL_Rect, SDL_Rect, int, int, int, int); /* Errores */ +typedef enum { /* Tipos de error para custom_error() */ + _runtime_error=1, + _critical_error=2 +} tipoerror; + typedef void (TYPEOF_Runtime_Error)(int, ...); typedef void (TYPEOF_Critical_Error)(int, ...); +typedef void (TYPEOF_Custom_Error)(tipoerror,char*); /* Obtiene offset de variable indexada dinámicamente */ typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre); @@ -233,6 +239,7 @@ struct _fun_params{ TYPEOF_Call_Entrypoint *Call_Entrypoint ; TYPEOF_Runtime_Error *Runtime_Error ; TYPEOF_Critical_Error *Critical_Error ; + TYPEOF_Custom_Error *Custom_Error; TYPEOF_GetVarOffset *GetVarOffset ; TYPEOF_Stub_Quit *Stub_Quit ; int imem_max; diff --git a/ediv/src/shared/extern.h b/ediv/src/shared/extern.h index 69f5284..8ea5a76 100644 --- a/ediv/src/shared/extern.h +++ b/ediv/src/shared/extern.h @@ -81,6 +81,7 @@ typedef int (TYPEOF_Dibuja)(SDL_Surface *, SDL_Rect , SDL_Rect , int , int ) ; /* Errores */ typedef void (TYPEOF_Runtime_Error)(int, ...); typedef void (TYPEOF_Critical_Error)(int, ...); +typedef void (TYPEOF_Custom_Error)(int,char*); /* Obtiene offset de variable indexada dinámicamente */ typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre); @@ -238,6 +239,7 @@ struct _fun_params{ TYPEOF_Call_Entrypoint *Call_Entrypoint ; TYPEOF_Runtime_Error *Runtime_Error ; TYPEOF_Critical_Error *Critical_Error ; + TYPEOF_Custom_Error *Custom_Error; TYPEOF_GetVarOffset *GetVarOffset ; TYPEOF_Stub_Quit *Stub_Quit ; int imem_max; diff --git a/ediv/src/stub/error.c b/ediv/src/stub/error.c index 2615e55..c4dde9f 100644 --- a/ediv/src/stub/error.c +++ b/ediv/src/stub/error.c @@ -99,3 +99,29 @@ void critical_error(int num, ...) stub_quit(num); } + +/* custom_error (tipo, mensaje) + * + * Permite a las DLLs generar sus propios errores, para que no dependan de los + * que hay definidos en el stub. El parámetro tipo permite indicar si se trata de + * un error crítico (que debe interrumpir la ejecución del programa) o un error + * runtime (que llama al trazador si estamos en modo debug). A ser posible hay + * que usar los que incluye el stub, ya que estos errores no pueden usarse con + * ignore_error (no tienen un código asociado), aunque sí se ven afectados por + * compiler_options _ignore_errors. + * NOTA: una DLL puede incluir su propio sistema de gestión de errores, por tanto + * puede asignar códigos a sus propios errores e incluso incluir su propia versión + * de ignore_error. + * DESVENTAJA: se pierde la capacidad multilingüe, a menos que la incluya la propia DLL. + */ + +void custom_error(tipoerror tipo, char* mensaje) +{ + #ifdef WIN32 + MessageBox(0,mensaje,translate(tipo),MB_ICONERROR); + #else + printf("%s\n",mensaje); + #endif + + stub_quit(500+tipo); +} diff --git a/ediv/src/stub/inte.c b/ediv/src/stub/inte.c index c25dc56..42d84b1 100644 --- a/ediv/src/stub/inte.c +++ b/ediv/src/stub/inte.c @@ -84,6 +84,7 @@ int ini_interprete() fp.existe.dibuja = 0 ; fp.Runtime_Error=error; fp.Critical_Error=critical_error; + fp.Custom_Error=custom_error; fp.GetVarOffset=GetVarOffset; fp.Stub_Quit=stub_quit; fp.imem_max=imem_max; diff --git a/ediv/src/stub/main.h b/ediv/src/stub/main.h index 0d63f0c..fc858aa 100644 --- a/ediv/src/stub/main.h +++ b/ediv/src/stub/main.h @@ -37,6 +37,11 @@ byte nombre_program[256]; // nombre del programa, titulo por defecto de la venta int ignore_errors; // 1 = se ignoran los errores 'evitables' +typedef enum { /* Tipos de error para custom_error() */ + _runtime_error=1, + _critical_error=2 +} tipoerror; + #ifdef DBG int debug; // 1 = el programa esta compilado en modo debug #endif @@ -61,8 +66,9 @@ int pila_max ; //maximo indice de pila int sp ; // indice de la pila ; int proceso_actual ; // indice para proc_orden //struct _fun_params fp ; + // -// SDL +// SDL (esto debe desaparecer en breve :p) // SDL_Surface * screen; SDL_Surface * screen1; @@ -97,6 +103,7 @@ int linsize; void error(int num, ...); // Mensaje de error no crítico (trazable) void critical_error(int num, ...); // Mensaje de error crítico +void custom_error(tipoerror tipo, char* mensaje); /* Errores personalizados de las DLLs */ void stub_quit(int n); // Salir del stub void* e_malloc(size_t size); // identico a malloc pero con errormsg utomático diff --git a/ediv/src/visual c 6/ediv/ediv.dsp b/ediv/src/visual c 6/ediv/ediv.dsp index 1755fa5..d56d81a 100644 --- a/ediv/src/visual c 6/ediv/ediv.dsp +++ b/ediv/src/visual c 6/ediv/ediv.dsp @@ -66,7 +66,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c -# ADD CPP /nologo /GB /ML /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c +# ADD CPP /nologo /MD /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c # ADD BASE RSC /l 0xc0a /d "_DEBUG" # ADD RSC /l 0xc0a /d "_DEBUG" BSC32=bscmake.exe @@ -74,7 +74,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib sdlmain.lib sdl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\..\..\bin\ediv.exe" /pdbtype:sept /libpath:"..\..\..\lib" +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib sdlmain.lib sdl.lib ws2_32.lib zlib.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\..\..\bin\ediv.exe" /pdbtype:sept /libpath:"..\..\..\lib" # SUBTRACT LINK32 /pdb:none /nodefaultlib !ENDIF diff --git a/ediv/src/visual c 6/ediv/ediv.plg b/ediv/src/visual c 6/ediv/ediv.plg index 3df7b58..1e063f5 100644 --- a/ediv/src/visual c 6/ediv/ediv.plg +++ b/ediv/src/visual c 6/ediv/ediv.plg @@ -6,32 +6,19 @@ --------------------Configuration: ediv - Win32 Debug--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB5.tmp" with contents +Creating temporary file "C:\WINDOWS\TEMP\RSPD050.TMP" with contents [ -/nologo /G5 /ML /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"Debug/" /Fp"Debug/ediv.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c -"D:\ediv\src\ediv\edivcfg\dictionary.c" -"D:\ediv\src\ediv\edivcfg\e_error.c" -"D:\ediv\src\ediv\edivcfg\edivcfg.c" -"D:\ediv\src\ediv\edivcfg\mainparse.c" -"D:\ediv\src\ediv\edivcfg\strlib.c" -"D:\ediv\src\ediv\compiler.c" -"D:\ediv\src\shared\dll_load.c" -"D:\ediv\src\ediv\ediv.c" -"D:\ediv\src\ediv\ediv_export.c" -"D:\ediv\src\ediv\encrypt.c" -"D:\ediv\src\ediv\expresion.c" -"D:\ediv\src\ediv\language.c" -"D:\ediv\src\ediv\listados.c" -"D:\ediv\src\ediv\lower.c" -"D:\ediv\src\ediv\ltlex.c" -"D:\ediv\src\ediv\modulos.c" -"D:\ediv\src\ediv\parser.c" -"D:\ediv\src\ediv\varindex.c" +/nologo /MD /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"Debug/" /Fp"Debug/ediv.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +"C:\Temp\ediv\ediv\src\ediv\compiler.c" +"C:\Temp\ediv\ediv\src\ediv\ediv.c" +"C:\Temp\ediv\ediv\src\ediv\ediv_export.c" +"C:\Temp\ediv\ediv\src\ediv\modulos.c" +"C:\Temp\ediv\ediv\src\ediv\parser.c" ] -Creating command line "cl.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB5.tmp" -Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB6.tmp" with contents +Creating command line "cl.exe @C:\WINDOWS\TEMP\RSPD050.TMP" +Creating temporary file "C:\WINDOWS\TEMP\RSPD051.TMP" with contents [ -zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib sdlmain.lib sdl.lib ws2_32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/ediv.pdb" /debug /machine:I386 /out:"..\..\..\bin\ediv.exe" /pdbtype:sept /libpath:"..\..\..\lib" +kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib sdlmain.lib sdl.lib ws2_32.lib zlib.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/ediv.pdb" /debug /machine:I386 /out:"..\..\..\bin\ediv.exe" /pdbtype:sept /libpath:"..\..\..\lib" ".\Debug\dictionary.obj" ".\Debug\e_error.obj" ".\Debug\edivcfg.obj" @@ -51,71 +38,21 @@ zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.li ".\Debug\parser.obj" ".\Debug\varindex.obj" ] -Creating command line "link.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB6.tmp" +Creating command line "link.exe @C:\WINDOWS\TEMP\RSPD051.TMP"

Output Window

Compiling... -dictionary.c -e_error.c -edivcfg.c -mainparse.c -d:\ediv\src\ediv\edivcfg\mainparse.c(304) : warning C4018: '==' : signed/unsigned mismatch -strlib.c compiler.c -dll_load.c ediv.c -d:\ediv\src\ediv\ediv.c(211) : warning C4018: '<=' : signed/unsigned mismatch +c:\temp\ediv\ediv\src\ediv\ediv.c(206) : warning C4018: '<=' : signed/unsigned mismatch ediv_export.c -encrypt.c -expresion.c -language.c -listados.c -lower.c -ltlex.c modulos.c parser.c -varindex.c Linking... -msvcrt.lib(MSVCRT.dll) : error LNK2005: _exit already defined in LIBC.lib(crt0dat.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _strncpy already defined in LIBC.lib(strncpy.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _strrchr already defined in LIBC.lib(strrchr.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _fprintf already defined in LIBC.lib(fprintf.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _remove already defined in LIBC.lib(unlink.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _fgetc already defined in LIBC.lib(fgetc.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _fopen already defined in LIBC.lib(fopen.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in LIBC.lib(fclose.obj) -msvcrt.lib(MSVCRT.dll) : error LNK2005: __isctype already defined in LIBC.lib(isctype.obj) -LIBC.lib(crt0init.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library -..\..\..\bin\ediv.exe : fatal error LNK1169: one or more multiply defined symbols found -Error executing link.exe. -Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB8.tmp" with contents -[ -/nologo /o"Debug/ediv.bsc" -".\Debug\dictionary.sbr" -".\Debug\e_error.sbr" -".\Debug\edivcfg.sbr" -".\Debug\mainparse.sbr" -".\Debug\strlib.sbr" -".\Debug\compiler.sbr" -".\Debug\dll_load.sbr" -".\Debug\ediv.sbr" -".\Debug\ediv_export.sbr" -".\Debug\encrypt.sbr" -".\Debug\expresion.sbr" -".\Debug\language.sbr" -".\Debug\listados.sbr" -".\Debug\lower.sbr" -".\Debug\ltlex.sbr" -".\Debug\modulos.sbr" -".\Debug\parser.sbr" -".\Debug\varindex.sbr"] -Creating command line "bscmake.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB8.tmp" -Creating browse info file... -

Output Window

Results

-ediv.exe - 10 error(s), 3 warning(s) +ediv.exe - 0 error(s), 1 warning(s) diff --git a/ediv/src/visual c 6/encrypt/encrypt.dsp b/ediv/src/visual c 6/encrypt/encrypt.dsp index da6cfd2..08ec7f2 100644 --- a/ediv/src/visual c 6/encrypt/encrypt.dsp +++ b/ediv/src/visual c 6/encrypt/encrypt.dsp @@ -65,7 +65,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD CPP /nologo /MD /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c # ADD BASE RSC /l 0xc0a /d "_DEBUG" # ADD RSC /l 0xc0a /d "_DEBUG" BSC32=bscmake.exe diff --git a/ediv/src/visual c 6/encrypt/encrypt.plg b/ediv/src/visual c 6/encrypt/encrypt.plg index 545c903..621f860 100644 --- a/ediv/src/visual c 6/encrypt/encrypt.plg +++ b/ediv/src/visual c 6/encrypt/encrypt.plg @@ -6,18 +6,18 @@ --------------------Configuration: encrypt - Win32 Debug--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP3F.tmp" with contents +Creating temporary file "C:\WINDOWS\TEMP\RSP91B3.TMP" with contents [ -/nologo /MLd /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"Debug/encrypt.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c -"D:\ediv\src\encrypt\encrypt.c" +/nologo /MD /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"Debug/encrypt.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +"C:\Temp\ediv\ediv\src\encrypt\encrypt.c" ] -Creating command line "cl.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP3F.tmp" -Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP40.tmp" with contents +Creating command line "cl.exe @C:\WINDOWS\TEMP\RSP91B3.TMP" +Creating temporary file "C:\WINDOWS\TEMP\RSP91B4.TMP" with contents [ zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib sdlmain.lib sdl.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/encrypt.pdb" /debug /machine:I386 /out:"..\..\..\bin\encrypt.exe" /pdbtype:sept /libpath:"..\..\..\lib" ".\Debug\encrypt.obj" ] -Creating command line "link.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP40.tmp" +Creating command line "link.exe @C:\WINDOWS\TEMP\RSP91B4.TMP"

Output Window

Compiling... encrypt.c diff --git a/ediv/src/visual c 6/stub/stub.dsp b/ediv/src/visual c 6/stub/stub.dsp index ebfa8eb..e6f42d5 100644 --- a/ediv/src/visual c 6/stub/stub.dsp +++ b/ediv/src/visual c 6/stub/stub.dsp @@ -183,11 +183,11 @@ SOURCE=..\..\stub\error.c # End Source File # Begin Source File -SOURCE=..\..\stub\inte.c +SOURCE=..\..\stub\fatal.c # End Source File # Begin Source File -SOURCE=..\..\stub\kernel.c +SOURCE=..\..\stub\inte.c # End Source File # Begin Source File @@ -195,8 +195,20 @@ SOURCE=..\..\stub\language.c # End Source File # Begin Source File +SOURCE=..\..\stub\lower.c +# End Source File +# Begin Source File + +SOURCE=..\..\stub\modulos.c +# End Source File +# Begin Source File + SOURCE=..\..\stub\stub.c # End Source File +# Begin Source File + +SOURCE=..\..\stub\varindex.c +# End Source File # End Group # Begin Group "Header Files" @@ -211,6 +223,10 @@ SOURCE=..\..\shared\dll_load.h # End Source File # Begin Source File +SOURCE=..\..\stub\dll_load.h +# End Source File +# Begin Source File + SOURCE=..\..\shared\edivfont.h # End Source File # Begin Source File @@ -219,11 +235,11 @@ SOURCE=..\..\shared\extern.h # End Source File # Begin Source File -SOURCE=..\..\stub\inte.h +SOURCE=..\..\stub\fatal.h # End Source File # Begin Source File -SOURCE=..\..\stub\kernel.h +SOURCE=..\..\stub\inte.h # End Source File # Begin Source File @@ -231,10 +247,18 @@ SOURCE=..\..\shared\language.h # End Source File # Begin Source File +SOURCE=..\..\stub\lower.h +# End Source File +# Begin Source File + SOURCE=..\..\stub\main.h # End Source File # Begin Source File +SOURCE=..\..\stub\modulos.h +# End Source File +# Begin Source File + SOURCE=..\..\shared\shared.h # End Source File # Begin Source File diff --git a/ediv/src/visual c 6/stub/stub.plg b/ediv/src/visual c 6/stub/stub.plg index e8ddf65..62e3be7 100644 --- a/ediv/src/visual c 6/stub/stub.plg +++ b/ediv/src/visual c 6/stub/stub.plg @@ -6,13 +6,21 @@ --------------------Configuration: stub - Win32 Debug--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP47.tmp" with contents +Creating temporary file "C:\WINDOWS\TEMP\RSPE175.TMP" with contents [ /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\inc" /I "..\..\shared" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /FR"Debug/" /Fp"Debug/stub.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c -"D:\ediv\src\stub\stub.c" +"C:\Temp\ediv\ediv\src\stub\dll.c" +"C:\Temp\ediv\ediv\src\stub\ediv_export.c" +"C:\Temp\ediv\ediv\src\stub\error.c" +"C:\Temp\ediv\ediv\src\stub\inte.c" +"C:\Temp\ediv\ediv\src\stub\stub.c" +"C:\Temp\ediv\ediv\src\stub\fatal.c" +"C:\Temp\ediv\ediv\src\stub\lower.c" +"C:\Temp\ediv\ediv\src\stub\modulos.c" +"C:\Temp\ediv\ediv\src\stub\varindex.c" ] -Creating command line "cl.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP47.tmp" -Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP48.tmp" with contents +Creating command line "cl.exe @C:\WINDOWS\TEMP\RSPE175.TMP" +Creating temporary file "C:\WINDOWS\TEMP\RSPE176.TMP" with contents [ sdlmain.lib sdl.lib zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/stub.pdb" /debug /machine:I386 /out:"..\..\..\bin\stub.exe" /pdbtype:sept /libpath:"..\..\..\lib" ".\Debug\dll.obj" @@ -20,36 +28,43 @@ sdlmain.lib sdl.lib zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comd ".\Debug\ediv_export.obj" ".\Debug\error.obj" ".\Debug\inte.obj" -".\Debug\kernel.obj" ".\Debug\language.obj" ".\Debug\stub.obj" +".\Debug\fatal.obj" +".\Debug\lower.obj" +".\Debug\modulos.obj" +".\Debug\varindex.obj" ] -Creating command line "link.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP48.tmp" +Creating command line "link.exe @C:\WINDOWS\TEMP\RSPE176.TMP"

Output Window

Compiling... +dll.c +ediv_export.c +error.c +inte.c +c:\temp\ediv\ediv\src\stub\inte.c(46) : warning C4101: 'i' : unreferenced local variable stub.c -D:\ediv\src\stub\stub.c(159) : warning C4018: '<' : signed/unsigned mismatch +fatal.c +lower.c +modulos.c +varindex.c Linking... LINK : LNK6004: ..\..\..\bin\stub.exe not found or not built by the last incremental link; performing full link -LINK : warning LNK4098: defaultlib "LIBC" conflicts with use of other libs; use /NODEFAULTLIB:library -MSVCRTD.lib(cinitexe.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library -Creating command line "bscmake.exe /nologo /o"Debug/stub.bsc" ".\Debug\dll.sbr" ".\Debug\dll_load.sbr" ".\Debug\ediv_export.sbr" ".\Debug\error.sbr" ".\Debug\inte.sbr" ".\Debug\kernel.sbr" ".\Debug\language.sbr" ".\Debug\stub.sbr"" -Creating browse info file... -

Output Window

-Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP4A.bat" with contents +LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library +Creating temporary file "C:\WINDOWS\TEMP\RSPE233.BAT" with contents [ @echo off cd ..\..\..\bin makelib win32.rel ] -Creating command line "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP4A.bat" +Creating command line "C:\WINDOWS\TEMP\RSPE233.BAT" -STUB_SIZE: 172089 +STUB_SIZE: 208965

Results

-stub.exe - 0 error(s), 3 warning(s) +stub.exe - 0 error(s), 2 warning(s)