set_mode y fp->Custom_Error

This commit is contained in:
Gabriel Lorenzo 2003-05-27 22:25:07 +00:00
parent ac426e4b03
commit d2d23c3ac6
13 changed files with 246 additions and 142 deletions

View file

@ -10,20 +10,19 @@
#include <SDL/SDL.h> #include <SDL/SDL.h>
#include <assert.h>
#include <export.h> #include <export.h>
#include "graphics.h" #include "graphics.h"
#include "SDL_rotozoom.h" #include "SDL_rotozoom.h"
#define ERR_CANNOTOPENFPG 105 #define ERR_FILENOTFOUND 105
#define ERR_INVALIDFPGHEADER 106 #define ERR_INVALIDFPGHEADER 106
#define ERR_INVALIDMAPCODE 110 #define ERR_INVALIDMAPCODE 110
#define Miedzy(x,a,b) (((x) >= (a)) && ((x) <= (b))) #define Miedzy(x,a,b) (((x) >= (a)) && ((x) <= (b)))
#define FUNCTION_PARAMS2 struct _fun_params *fp
#define MAX_DRAWS 1024 #define MAX_DRAWS 1024
@ -35,6 +34,7 @@ struct _file file0[0xFFF] ;
int last_map[0xFF] ; int last_map[0xFF] ;
int color_transparente ; int color_transparente ;
int define_region ; int define_region ;
BOOL primer_frame=TRUE;
typedef struct { typedef struct {
unsigned char r,g,b; unsigned char r,g,b;
@ -64,6 +64,15 @@ typedef struct _FPGMAPINFO{
int number_of_points; int number_of_points;
}FPGMAPINFO; }FPGMAPINFO;
typedef struct _MODOVIDEO {
int ancho;
int alto;
int bpp;
int flags;
BOOL cambiado;
} MODOVIDEO;
MODOVIDEO modovideo;
char *graphic; /* wide*height */ char *graphic; /* wide*height */
@ -175,6 +184,9 @@ int ExportaFuncs(EXPORTAFUNCS_PARAMS)
FUNCTION("fade",4,eDIV_FADE) ; FUNCTION("fade",4,eDIV_FADE) ;
FUNCTION("xput",6,eDIV_XPUT); FUNCTION("xput",6,eDIV_XPUT);
FUNCTION("get_rgb",4,eDIV_GET_RGB); 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( frame ) ;
ENTRYPOINT( first_load ) ; ENTRYPOINT( first_load ) ;
@ -869,7 +881,7 @@ int eDIV_SCREEN_COPY(FUNCTION_PARAMS)
return 1 ; return 1 ;
} }
int eDIV_OUT_REGION(FUNCTION_PARAMS2) int eDIV_OUT_REGION(FUNCTION_PARAMS)
{ {
int id , r ; int id , r ;
int f, g , x , y ; int f, g , x , y ;
@ -892,7 +904,7 @@ int eDIV_OUT_REGION(FUNCTION_PARAMS2)
return 1 ; return 1 ;
} }
int eDIV_DRAW(FUNCTION_PARAMS2) int eDIV_DRAW(FUNCTION_PARAMS)
{ {
int i ; int i ;
int t , c , o , r , x0, y0 , x1 , y1 ; int t , c , o , r , x0, y0 , x1 , y1 ;
@ -937,7 +949,7 @@ int eDIV_DRAW(FUNCTION_PARAMS2)
return -1 ; return -1 ;
} }
int eDIV_MOVE_DRAW(FUNCTION_PARAMS2) int eDIV_MOVE_DRAW(FUNCTION_PARAMS)
{ {
SDL_Rect dstrect ; SDL_Rect dstrect ;
int id , c , o , x0 , y0 , x1 , y1 ; int id , c , o , x0 , y0 , x1 , y1 ;
@ -983,7 +995,7 @@ int eDIV_MOVE_DRAW(FUNCTION_PARAMS2)
return 1 ; return 1 ;
} }
int eDIV_DELETE_DRAW(FUNCTION_PARAMS2) int eDIV_DELETE_DRAW(FUNCTION_PARAMS)
{ {
int n ; int n ;
n = getparm() ; 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 ; char * archivo ;
FILE *f; FILE *f;
@ -1034,7 +1046,7 @@ int eDIV_LOAD_FPG(FUNCTION_PARAMS2)
f=fopen(archivo,"rb"); f=fopen(archivo,"rb");
if(f==NULL) { if(f==NULL) {
fp->Runtime_Error(ERR_CANNOTOPENFPG); fp->Runtime_Error(ERR_FILENOTFOUND);
} }
fseek(f,0,SEEK_END); fseek(f,0,SEEK_END);
@ -1114,7 +1126,7 @@ int eDIV_LOAD_FPG(FUNCTION_PARAMS2)
return 0; return 0;
} }
int eDIV_GET_POINT(FUNCTION_PARAMS2) int eDIV_GET_POINT(FUNCTION_PARAMS)
{ {
int f , g , n , dx , dy ; int f , g , n , dx , dy ;
dy = getparm() ; dy = getparm() ;
@ -1132,7 +1144,7 @@ int eDIV_GET_POINT(FUNCTION_PARAMS2)
return 0 ; 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; int f , g , n , dx , dy , x , y , id;
dy = getparm() ; dy = getparm() ;
@ -1153,7 +1165,7 @@ int eDIV_GET_REAL_POINT(FUNCTION_PARAMS2)
return 0 ; return 0 ;
} }
int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS2) int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS)
{ {
int f , g , i ; int f , g , i ;
i = getparm() ; 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 ; int r , g , b , v ;
v = getparm() ; v = getparm() ;
@ -1211,6 +1223,61 @@ void frame(FUNCTION_PARAMS)
static int una_vez = 1 ; static int una_vez = 1 ;
int i , id , f , g , r , z , trans,angle,size,resolution; int i , id , f , g , r , z , trans,angle,size,resolution;
SDL_Rect dstrect , srcrect ; 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" ) ; 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 ; int i ;
fp->Dibuja = Dibuja ; fp->Dibuja = Dibuja ;
@ -1383,20 +1449,6 @@ void first_load(FUNCTION_PARAMS2)
last_map[i] = 0 ; last_map[i] = 0 ;
color_transparente = 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++ ) for ( i = 0 ; i < 0xFF ; i++ )
{ {
files[i].existe = 0 ; files[i].existe = 0 ;
@ -1418,8 +1470,11 @@ void first_load(FUNCTION_PARAMS2)
define_region = 1 ; define_region = 1 ;
SDL_WM_SetCaption(fp->nombre_program, NULL); modovideo.ancho=320;
SDL_ShowCursor(0); 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) if (size>100)
size=100; size=100;
zoom=size*0.01; zoom=size*0.01f;
angulo=angle/1000; angulo=angle/1000;
@ -1499,3 +1554,32 @@ SDL_Surface *xput(SDL_Surface *src,double size,double angle)
return dst; return dst;
} }
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;
}

View file

@ -37,6 +37,7 @@ int eDIV_GET_REAL_POINT(FUNCTION_PARAMS) ;
int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS) ; int eDIV_GRAPHIC_INFO(FUNCTION_PARAMS) ;
int eDIV_FADE(FUNCTION_PARAMS) ; int eDIV_FADE(FUNCTION_PARAMS) ;
int eDIV_XPUT(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); 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); SDL_Surface *xput(SDL_Surface *src,double size,double angle);

View file

@ -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); typedef int (TYPEOF_Dibuja)(SDL_Surface *, SDL_Rect, SDL_Rect, int, int, int, int);
/* Errores */ /* 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_Runtime_Error)(int, ...);
typedef void (TYPEOF_Critical_Error)(int, ...); typedef void (TYPEOF_Critical_Error)(int, ...);
typedef void (TYPEOF_Custom_Error)(tipoerror,char*);
/* Obtiene offset de variable indexada dinámicamente */ /* Obtiene offset de variable indexada dinámicamente */
typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre); typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre);
@ -233,6 +239,7 @@ struct _fun_params{
TYPEOF_Call_Entrypoint *Call_Entrypoint ; TYPEOF_Call_Entrypoint *Call_Entrypoint ;
TYPEOF_Runtime_Error *Runtime_Error ; TYPEOF_Runtime_Error *Runtime_Error ;
TYPEOF_Critical_Error *Critical_Error ; TYPEOF_Critical_Error *Critical_Error ;
TYPEOF_Custom_Error *Custom_Error;
TYPEOF_GetVarOffset *GetVarOffset ; TYPEOF_GetVarOffset *GetVarOffset ;
TYPEOF_Stub_Quit *Stub_Quit ; TYPEOF_Stub_Quit *Stub_Quit ;
int imem_max; int imem_max;

View file

@ -81,6 +81,7 @@ typedef int (TYPEOF_Dibuja)(SDL_Surface *, SDL_Rect , SDL_Rect , int , int ) ;
/* Errores */ /* Errores */
typedef void (TYPEOF_Runtime_Error)(int, ...); typedef void (TYPEOF_Runtime_Error)(int, ...);
typedef void (TYPEOF_Critical_Error)(int, ...); typedef void (TYPEOF_Critical_Error)(int, ...);
typedef void (TYPEOF_Custom_Error)(int,char*);
/* Obtiene offset de variable indexada dinámicamente */ /* Obtiene offset de variable indexada dinámicamente */
typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre); typedef int (TYPEOF_GetVarOffset)(tipo_t tipo,char* nombre);
@ -238,6 +239,7 @@ struct _fun_params{
TYPEOF_Call_Entrypoint *Call_Entrypoint ; TYPEOF_Call_Entrypoint *Call_Entrypoint ;
TYPEOF_Runtime_Error *Runtime_Error ; TYPEOF_Runtime_Error *Runtime_Error ;
TYPEOF_Critical_Error *Critical_Error ; TYPEOF_Critical_Error *Critical_Error ;
TYPEOF_Custom_Error *Custom_Error;
TYPEOF_GetVarOffset *GetVarOffset ; TYPEOF_GetVarOffset *GetVarOffset ;
TYPEOF_Stub_Quit *Stub_Quit ; TYPEOF_Stub_Quit *Stub_Quit ;
int imem_max; int imem_max;

View file

@ -99,3 +99,29 @@ void critical_error(int num, ...)
stub_quit(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 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);
}

View file

@ -84,6 +84,7 @@ int ini_interprete()
fp.existe.dibuja = 0 ; fp.existe.dibuja = 0 ;
fp.Runtime_Error=error; fp.Runtime_Error=error;
fp.Critical_Error=critical_error; fp.Critical_Error=critical_error;
fp.Custom_Error=custom_error;
fp.GetVarOffset=GetVarOffset; fp.GetVarOffset=GetVarOffset;
fp.Stub_Quit=stub_quit; fp.Stub_Quit=stub_quit;
fp.imem_max=imem_max; fp.imem_max=imem_max;

View file

@ -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' 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 #ifdef DBG
int debug; // 1 = el programa esta compilado en modo debug int debug; // 1 = el programa esta compilado en modo debug
#endif #endif
@ -61,8 +66,9 @@ int pila_max ; //maximo indice de pila
int sp ; // indice de la pila ; int sp ; // indice de la pila ;
int proceso_actual ; // indice para proc_orden int proceso_actual ; // indice para proc_orden
//struct _fun_params fp ; //struct _fun_params fp ;
// //
// SDL // SDL (esto debe desaparecer en breve :p)
// //
SDL_Surface * screen; SDL_Surface * screen;
SDL_Surface * screen1; SDL_Surface * screen1;
@ -97,6 +103,7 @@ int linsize;
void error(int num, ...); // Mensaje de error no crítico (trazable) void error(int num, ...); // Mensaje de error no crítico (trazable)
void critical_error(int num, ...); // Mensaje de error crítico 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 stub_quit(int n); // Salir del stub
void* e_malloc(size_t size); // identico a malloc pero con errormsg utomático void* e_malloc(size_t size); // identico a malloc pero con errormsg utomático

View file

@ -66,7 +66,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0 # PROP Ignore_Export_Lib 0
# PROP Target_Dir "" # 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 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 BASE RSC /l 0xc0a /d "_DEBUG"
# ADD RSC /l 0xc0a /d "_DEBUG" # ADD RSC /l 0xc0a /d "_DEBUG"
BSC32=bscmake.exe BSC32=bscmake.exe
@ -74,7 +74,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo # ADD BSC32 /nologo
LINK32=link.exe 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 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 # SUBTRACT LINK32 /pdb:none /nodefaultlib
!ENDIF !ENDIF

View file

@ -6,32 +6,19 @@
--------------------Configuration: ediv - Win32 Debug-------------------- --------------------Configuration: ediv - Win32 Debug--------------------
</h3> </h3>
<h3>Command Lines</h3> <h3>Command Lines</h3>
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 /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
"D:\ediv\src\ediv\edivcfg\dictionary.c" "C:\Temp\ediv\ediv\src\ediv\compiler.c"
"D:\ediv\src\ediv\edivcfg\e_error.c" "C:\Temp\ediv\ediv\src\ediv\ediv.c"
"D:\ediv\src\ediv\edivcfg\edivcfg.c" "C:\Temp\ediv\ediv\src\ediv\ediv_export.c"
"D:\ediv\src\ediv\edivcfg\mainparse.c" "C:\Temp\ediv\ediv\src\ediv\modulos.c"
"D:\ediv\src\ediv\edivcfg\strlib.c" "C:\Temp\ediv\ediv\src\ediv\parser.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"
] ]
Creating command line "cl.exe @C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB5.tmp" Creating command line "cl.exe @C:\WINDOWS\TEMP\RSPD050.TMP"
Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSPB6.tmp" with contents 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\dictionary.obj"
".\Debug\e_error.obj" ".\Debug\e_error.obj"
".\Debug\edivcfg.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\parser.obj"
".\Debug\varindex.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"
<h3>Output Window</h3> <h3>Output Window</h3>
Compiling... 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 compiler.c
dll_load.c
ediv.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 ediv_export.c
encrypt.c
expresion.c
language.c
listados.c
lower.c
ltlex.c
modulos.c modulos.c
parser.c parser.c
varindex.c
Linking... 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...
<h3>Output Window</h3>
<h3>Results</h3> <h3>Results</h3>
ediv.exe - 10 error(s), 3 warning(s) ediv.exe - 0 error(s), 1 warning(s)
</pre> </pre>
</body> </body>
</html> </html>

View file

@ -65,7 +65,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0 # PROP Ignore_Export_Lib 0
# PROP Target_Dir "" # 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 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 BASE RSC /l 0xc0a /d "_DEBUG"
# ADD RSC /l 0xc0a /d "_DEBUG" # ADD RSC /l 0xc0a /d "_DEBUG"
BSC32=bscmake.exe BSC32=bscmake.exe

View file

@ -6,18 +6,18 @@
--------------------Configuration: encrypt - Win32 Debug-------------------- --------------------Configuration: encrypt - Win32 Debug--------------------
</h3> </h3>
<h3>Command Lines</h3> <h3>Command Lines</h3>
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 /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
"D:\ediv\src\encrypt\encrypt.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 command line "cl.exe @C:\WINDOWS\TEMP\RSP91B3.TMP"
Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP40.tmp" with contents 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" 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" ".\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"
<h3>Output Window</h3> <h3>Output Window</h3>
Compiling... Compiling...
encrypt.c encrypt.c

View file

@ -183,11 +183,11 @@ SOURCE=..\..\stub\error.c
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\inte.c SOURCE=..\..\stub\fatal.c
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\kernel.c SOURCE=..\..\stub\inte.c
# End Source File # End Source File
# Begin Source File # Begin Source File
@ -195,8 +195,20 @@ SOURCE=..\..\stub\language.c
# End Source File # End Source File
# Begin 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 SOURCE=..\..\stub\stub.c
# End Source File # End Source File
# Begin Source File
SOURCE=..\..\stub\varindex.c
# End Source File
# End Group # End Group
# Begin Group "Header Files" # Begin Group "Header Files"
@ -211,6 +223,10 @@ SOURCE=..\..\shared\dll_load.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\dll_load.h
# End Source File
# Begin Source File
SOURCE=..\..\shared\edivfont.h SOURCE=..\..\shared\edivfont.h
# End Source File # End Source File
# Begin Source File # Begin Source File
@ -219,11 +235,11 @@ SOURCE=..\..\shared\extern.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\inte.h SOURCE=..\..\stub\fatal.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\kernel.h SOURCE=..\..\stub\inte.h
# End Source File # End Source File
# Begin Source File # Begin Source File
@ -231,10 +247,18 @@ SOURCE=..\..\shared\language.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\lower.h
# End Source File
# Begin Source File
SOURCE=..\..\stub\main.h SOURCE=..\..\stub\main.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\stub\modulos.h
# End Source File
# Begin Source File
SOURCE=..\..\shared\shared.h SOURCE=..\..\shared\shared.h
# End Source File # End Source File
# Begin Source File # Begin Source File

View file

@ -6,13 +6,21 @@
--------------------Configuration: stub - Win32 Debug-------------------- --------------------Configuration: stub - Win32 Debug--------------------
</h3> </h3>
<h3>Command Lines</h3> <h3>Command Lines</h3>
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 /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 command line "cl.exe @C:\WINDOWS\TEMP\RSPE175.TMP"
Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP48.tmp" with contents 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" 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" ".\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\ediv_export.obj"
".\Debug\error.obj" ".\Debug\error.obj"
".\Debug\inte.obj" ".\Debug\inte.obj"
".\Debug\kernel.obj"
".\Debug\language.obj" ".\Debug\language.obj"
".\Debug\stub.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"
<h3>Output Window</h3> <h3>Output Window</h3>
Compiling... 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 stub.c
D:\ediv\src\stub\stub.c(159) : warning C4018: '<' : signed/unsigned mismatch fatal.c
lower.c
modulos.c
varindex.c
Linking... Linking...
LINK : LNK6004: ..\..\..\bin\stub.exe not found or not built by the last incremental link; performing full link 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 LINK : warning LNK4098: defaultlib "MSVCRT" 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 temporary file "C:\WINDOWS\TEMP\RSPE233.BAT" with contents
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...
<h3>Output Window</h3>
Creating temporary file "C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp\RSP4A.bat" with contents
[ [
@echo off @echo off
cd ..\..\..\bin cd ..\..\..\bin
makelib win32.rel 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
<h3>Results</h3> <h3>Results</h3>
stub.exe - 0 error(s), 3 warning(s) stub.exe - 0 error(s), 2 warning(s)
</pre> </pre>
</body> </body>
</html> </html>