78 p = strstr( binaryName,
".asm" );
90 p = strstr( binaryName,
".asm" );
104 strcopy( pipes,
">/dev/null 2>/dev/null");
108 p = strstr( binaryName,
".asm" );
117 p = strrchr( binaryName2,
'/' );
119 p = strrchr( binaryName2,
'\\' );
124 strcopy( binaryName2,
"main.bin" );
128 p = strstr( binaryName,
".asm" );
138 TRACE2(
" renaming %s to %s", binaryName, binaryName2 );
143 p = strrchr( binaryName,
'/' );
145 p = strrchr( binaryName,
'\\' );
150 strcopy( binaryName,
"main.bin" );
156 p = strrchr( diskName,
'/' );
158 p = strrchr( diskName,
'\\' );
167 TRACE1(
"diskName = %s", diskName );
169 sprintf( commandLine,
"\"%s\" +cpc --org %d --exec %d --disk -b \"%s\" -o \"%s\" %s",
178 printf(
"The compilation of assembly program failed.\n\n");
179 printf(
"Please use option '-I' to install chain tool.\n\n");
186 p = strrchr( diskName,
'/' );
188 p = strrchr( diskName,
'\\' );
193 strcopy( diskName,
"main.dsk" );
199 p = strstr( binaryName,
".asm" );
203 strcopy( binaryName,
"main." );
216 strcat( temporaryPath,
" " );
218 strcat( temporaryPath,
"dsk" );
220 mkdir( temporaryPath );
222 mkdir( temporaryPath, 0777 );
224 strcat( temporaryPath,
" " );
248 p = strstr( binaryName,
".asm" );
260 p = strstr( binaryName,
".asm" );
274 strcopy( pipes,
">/dev/null 2>/dev/null");
278 p = strstr( binaryName,
".asm" );
287 p = strrchr( binaryName2,
'/' );
289 p = strrchr( binaryName2,
'\\' );
294 strcopy( binaryName2,
"main.bin" );
298 p = strstr( binaryName,
".asm" );
308 TRACE2(
" renaming %s to %s", binaryName, binaryName2 );
313 p = strrchr( binaryName,
'/' );
315 p = strrchr( binaryName,
'\\' );
320 strcopy( binaryName,
"main.bin" );
334 strcat( basePath, storage->
fileName );
336 strcat( basePath,
"disk%d.dsk" );
342 strcopy( filemask,
"disk%d.dsk" );
345 sprintf( diskName, filemask, 0 );
349 if ( !strstr( diskName,
".dsk" ) ) {
350 strcat( diskName,
".dsk" );
354 if ( !strstr( diskName,
".dsk") ) {
355 strcat( diskName,
".dsk" );
360 TRACE1(
"diskName = %s", diskName );
364 sprintf( commandLine,
"\"%s\" +cpc --org %d --exec %d --disk --blockname \"%s\" -b \"%s\" -o \"%s\" %s",
374 printf(
"The compilation of assembly program failed.\n\n");
375 printf(
"Please use option '-I' to install chain tool.\n\n");
385 char * additionalFiles = NULL;
387 additionalFiles = NULL;
389 while( fileStorage ) {
396 memset( buffer, 0,
size );
397 memcpy( buffer, fileStorage->
content, fileStorage->
size );
399 FILE * file = fopen( fileStorage->
sourceName,
"rb" );
403 fseek( file, 0, SEEK_END );
404 size = ftell( file );
405 fseek( file, 0, SEEK_SET );
407 memset( buffer, 0,
size );
408 (void)!fread( buffer,
size, 1, file );
412 sprintf( dataFilename,
"%s%s", temporaryPath, fileStorage->
targetName );
413 FILE * fileOut = fopen( dataFilename,
"wb" );
415 fwrite( buffer, 1,
size, fileOut );
418 if ( additionalFiles ) {
419 additionalFiles = realloc( additionalFiles, strlen(additionalFiles) + strlen( dataFilename ) + 3 );
420 strcat( additionalFiles,
"," );
421 strcat( additionalFiles, dataFilename );
423 additionalFiles = strdup( dataFilename );
425 fileStorage = fileStorage->
next;
428 sprintf( commandLine,
"\"%s\" +cpc --afile %s --org %d --exec %d --disk --blockname \"%s\" -b \"%s\" -o \"%s\" %s",
439 printf(
"The compilation of assembly program failed.\n\n");
440 printf(
"Please use option '-I' to install chain tool.\n\n");
444 storage = storage->
next;
448 printf(
"%s\n", diskName );
460 strcat( basePath, storage->
fileName );
462 strcat( basePath,
"disk%d.dsk" );
468 strcopy( filemask,
"disk%d.dsk" );
471 sprintf( diskName, filemask, i );
472 if ( !strstr( diskName,
".dsk" ) ) {
473 strcat( diskName,
".dsk" );
477 sprintf( commandLine,
"del /f /q %s*.* %s", temporaryPath, pipes );
479 sprintf( commandLine,
"rm %s* %s", temporaryPath, pipes );