Fixes for compile on non-Intel platforms.

This commit is contained in:
Patrik Stridvall 1999-07-04 11:05:57 +00:00 committed by Alexandre Julliard
parent 4a73973f23
commit a4b80d4495
5 changed files with 47 additions and 48 deletions

View File

@ -276,10 +276,14 @@ BOOLEAN WINAPI RtlDestroyHeap(
/******************************************************************************
* DbgPrint [NTDLL]
*/
void __cdecl DbgPrint(LPCSTR fmt,LPVOID args) {
void WINAPIV DbgPrint(LPCSTR fmt, ...) {
char buf[512];
va_list args;
va_start(args, fmt);
wvsprintfA(buf,fmt, args);
va_end(args);
wvsprintfA(buf,fmt,&args);
MESSAGE("DbgPrint says: %s",buf);
/* hmm, raise exception? */
}

View File

@ -625,21 +625,6 @@ INT WINAPIV wsprintfW( LPWSTR buffer, LPCWSTR spec, ... )
}
/***********************************************************************
* wsnprintf16 (Not a Windows API)
*/
INT16 WINAPIV wsnprintf16( LPSTR buffer, UINT16 maxlen, LPCSTR spec, ... )
{
va_list valist;
INT16 res;
va_start( valist, spec );
res = wvsnprintf16( buffer, maxlen, spec, valist );
va_end( valist );
return res;
}
/***********************************************************************
* wsnprintfA (Not a Windows API)
*/

View File

@ -1529,8 +1529,6 @@ LONG CALLBACK MCIMIDI_DriverProc(DWORD dwDevID, HDRVR hDriv, DWORD wMsg,
switch (wMsg) {
case DRV_LOAD: return 1;
case DRV_FREE: return 1;
case DRV_OPEN: return MIDI_drvOpen((LPSTR)dwParam1, (LPMCI_OPEN_DRIVER_PARMSA)dwParam2);
case DRV_CLOSE: return MIDI_drvClose(dwDevID);
case DRV_ENABLE: return 1;
case DRV_DISABLE: return 1;
case DRV_QUERYCONFIGURE: return 1;
@ -1538,6 +1536,8 @@ LONG CALLBACK MCIMIDI_DriverProc(DWORD dwDevID, HDRVR hDriv, DWORD wMsg,
case DRV_INSTALL: return DRVCNF_RESTART;
case DRV_REMOVE: return DRVCNF_RESTART;
#ifdef SNDCTL_MIDI_INFO
case DRV_OPEN: return MIDI_drvOpen((LPSTR)dwParam1, (LPMCI_OPEN_DRIVER_PARMSA)dwParam2);
case DRV_CLOSE: return MIDI_drvClose(dwDevID);
case MCI_OPEN_DRIVER: return MIDI_mciOpen (dwDevID, dwParam1, (LPMCI_OPEN_PARMSA) dwParam2);
case MCI_CLOSE_DRIVER: return MIDI_mciClose (dwDevID, dwParam1, (LPMCI_GENERIC_PARMS) dwParam2);
case MCI_PLAY: return MIDI_mciPlay (dwDevID, dwParam1, (LPMCI_PLAY_PARMS) dwParam2);
@ -1551,6 +1551,8 @@ LONG CALLBACK MCIMIDI_DriverProc(DWORD dwDevID, HDRVR hDriv, DWORD wMsg,
case MCI_INFO: return MIDI_mciInfo (dwDevID, dwParam1, (LPMCI_INFO_PARMSA) dwParam2);
case MCI_SEEK: return MIDI_mciSeek (dwDevID, dwParam1, (LPMCI_SEEK_PARMS) dwParam2);
#else
case DRV_OPEN: return 1;
case DRV_CLOSE: return 1;
case MCI_OPEN_DRIVER:
case MCI_CLOSE_DRIVER:
case MCI_PLAY:

View File

@ -25,7 +25,7 @@ type win32
017 stub CsrSetPriorityClass
018 stub CsrpProcessCallbackRequest
019 stub DbgBreakPoint
020 cdecl DbgPrint(str long) DbgPrint
020 varargs DbgPrint() DbgPrint
021 stub DbgPrompt
022 stub DbgSsHandleKmApiMsg
023 stub DbgSsInitialize

View File

@ -25,17 +25,18 @@ char Underscore[] = "";
#endif
char s_file_head_str[] =
"#\n"
"# This file is generated with wrc version " WRC_FULLVERSION ". Do not edit!\n"
"# Source : %s\n"
"# Cmdline: %s\n"
"# Date : %s"
"#\n\n"
"\t.data\n\n"
"/* This file is generated with wrc version " WRC_FULLVERSION ". Do not edit! */\n"
"/* Source : %s */\n"
"/* Cmdline: %s */\n"
"/* Date : %s */\n"
"\n"
"\t.data\n"
"\n"
;
char s_file_tail_str[] =
"# <eof>\n\n"
"/* <eof> */\n"
"\n"
;
char s_file_autoreg_str[] =
@ -575,7 +576,7 @@ void write_pe_segment(FILE *fp, resource_t *top)
/* Version */
fprintf(fp, "\t.long\t0\n"); /* FIXME: must version be filled out? */
/* # of id entries, # of name entries */
fprintf(fp, "\t.short\t%d, %d\n", n_name_entries, n_id_entries);
fprintf(fp, "\t.word\t%d, %d\n", n_name_entries, n_id_entries);
/* Write the type level of the tree */
for(i = 0; i < rccount; i++)
@ -622,7 +623,7 @@ void write_pe_segment(FILE *fp, resource_t *top)
fprintf(fp, "\t.long\t0\n"); /* Flags */
fprintf(fp, "\t.long\t0x%08lx\n", (long)now); /* TimeDate */
fprintf(fp, "\t.long\t0\n"); /* FIXME: must version be filled out? */
fprintf(fp, "\t.short\t%d, %d\n", rcp->n_name_entries, rcp->n_id_entries);
fprintf(fp, "\t.word\t%d, %d\n", rcp->n_name_entries, rcp->n_id_entries);
for(j = 0; j < rcp->count32; j++)
{
resource_t *rsc = rcp->rsc32array[j].rsc[0];
@ -676,7 +677,7 @@ void write_pe_segment(FILE *fp, resource_t *top)
fprintf(fp, "\t.long\t0\n"); /* Flags */
fprintf(fp, "\t.long\t0x%08lx\n", (long)now); /* TimeDate */
fprintf(fp, "\t.long\t0\n"); /* FIXME: must version be filled out? */
fprintf(fp, "\t.short\t0, %d\n", r32cp->count);
fprintf(fp, "\t.word\t0, %d\n", r32cp->count);
for(k = 0; k < r32cp->count; k++)
{
@ -771,7 +772,7 @@ void write_ne_segment(FILE *fp, resource_t *top)
fprintf(fp, "\t.globl\t%s%s\n", prefix, _NEResTab);
/* AlignmentShift */
fprintf(fp, "\t.short\t%d\n", alignment_pwr);
fprintf(fp, "\t.word\t%d\n", alignment_pwr);
/* TypeInfo */
for(i = 0; i < rccount; i++)
@ -780,15 +781,15 @@ void write_ne_segment(FILE *fp, resource_t *top)
/* TypeId */
if(rcp->type.type == name_ord)
fprintf(fp, "\t.short\t0x%04x\n", rcp->type.name.i_name | 0x8000);
fprintf(fp, "\t.word\t0x%04x\n", rcp->type.name.i_name | 0x8000);
else
fprintf(fp, "\t.short\t%s_%s_typename - %s%s\n",
fprintf(fp, "\t.word\t%s_%s_typename - %s%s\n",
prefix,
rcp->type.name.s_name->str.cstr,
prefix,
_NEResTab);
/* ResourceCount */
fprintf(fp, "\t.short\t%d\n", rcp->count);
fprintf(fp, "\t.word\t%d\n", rcp->count);
/* Reserved */
fprintf(fp, "\t.long\t0\n");
/* NameInfo */
@ -803,32 +804,32 @@ void write_ne_segment(FILE *fp, resource_t *top)
* All other things are as the MS doc describes (alignment etc.)
*/
/* Offset */
fprintf(fp, "\t.short\t(%s%s_data - %s%s) >> %d\n",
fprintf(fp, "\t.word\t(%s%s_data - %s%s) >> %d\n",
prefix,
rcp->rscarray[j]->c_name,
prefix,
_NEResTab,
alignment_pwr);
/* Length */
fprintf(fp, "\t.short\t%d\n",
fprintf(fp, "\t.word\t%d\n",
rcp->rscarray[j]->binres->size - rcp->rscarray[j]->binres->dataidx);
/* Flags */
fprintf(fp, "\t.short\t0x%04x\n", (WORD)rcp->rscarray[j]->memopt);
fprintf(fp, "\t.word\t0x%04x\n", (WORD)rcp->rscarray[j]->memopt);
/* Id */
if(rcp->rscarray[j]->name->type == name_ord)
fprintf(fp, "\t.short\t0x%04x\n", rcp->rscarray[j]->name->name.i_name | 0x8000);
fprintf(fp, "\t.word\t0x%04x\n", rcp->rscarray[j]->name->name.i_name | 0x8000);
else
fprintf(fp, "\t.short\t%s%s_name - %s%s\n",
fprintf(fp, "\t.word\t%s%s_name - %s%s\n",
prefix,
rcp->rscarray[j]->c_name,
prefix,
_NEResTab);
/* Handle and Usage */
fprintf(fp, "\t.short\t0, 0\n");
fprintf(fp, "\t.word\t0, 0\n");
}
}
/* EndTypes */
fprintf(fp, "\t.short\t0\n");
fprintf(fp, "\t.word\t0\n");
}
/*
@ -935,11 +936,18 @@ void write_s_file(char *outname, resource_t *top)
if(!fo)
{
error("Could not open %s\n", outname);
return;
}
now = time(NULL);
fprintf(fo, s_file_head_str, input_name ? input_name : "stdin",
cmdline, ctime(&now));
{
char *s, *p;
now = time(NULL);
s = ctime(&now);
p = strchr(s, '\n');
if(p) *p = '\0';
fprintf(fo, s_file_head_str, input_name ? input_name : "stdin",
cmdline, s);
}
/* Get an idea how many we have and restructure the tables */
count_resources(top);
@ -962,7 +970,7 @@ void write_s_file(char *outname, resource_t *top)
if(!indirect_only)
{
/* Write the resource data */
fprintf(fo, "#\n# Resource binary data\n#\n");
fprintf(fo, "\n/* Resource binary data */\n\n");
for(rsc = top; rsc; rsc = rsc->next)
{
if(!rsc->binres)
@ -1009,7 +1017,7 @@ void write_s_file(char *outname, resource_t *top)
if(indirect)
{
/* Write the indirection structures */
fprintf(fo, "\n#\n# Resource indirection structures\n#\n");
fprintf(fo, "\n/* Resource indirection structures */\n\n");
fprintf(fo, "\t.align\t4\n");
for(rsc = top; rsc; rsc = rsc->next)
{
@ -1074,7 +1082,7 @@ void write_s_file(char *outname, resource_t *top)
fprintf(fo, "\n");
/* Write the indirection table */
fprintf(fo, "#\n# Resource indirection table\n#\n");
fprintf(fo, "/* Resource indirection table */\n\n");
fprintf(fo, "\t.align\t4\n");
fprintf(fo, "%s%s:\n", prefix, _ResTable);
fprintf(fo, "\t.globl\t%s%s\n", prefix, _ResTable);