Subversion Repositories Kolibri OS

Rev

Rev 9585 | Rev 9702 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9585 Rev 9680
Line 220... Line 220...
220
void CheckPageCode(unsigned int ofs);
220
void CheckPageCode(unsigned int ofs);
221
int MakePE();
221
int MakePE();
222
int MakeObj();
222
int MakeObj();
223
void CheckUndefClassProc();
223
void CheckUndefClassProc();
Line -... Line 224...
-
 
224
 
-
 
225
// Added by Coldy
-
 
226
void ParseObjCommand(int cmd);
224
 
227
 
225
#ifdef _KOS_
228
#ifdef _KOS_
226
extern "C"{
229
extern "C"{
227
    void con_set_title(char* title);
230
    void con_set_title(char* title);
228
}
231
}
Line 320... Line 323...
320
					}
323
					}
321
				}
324
				}
322
			}
325
			}
323
		}
326
		}
324
	}
327
	}
-
 
328
  //{	Added by Coldy
-
 
329
	//	If -coff (for fully mscoff)
-
 
330
	if (ocoff && !sobj) {
-
 
331
		am32 = TRUE;
-
 
332
		ParseObjCommand(c_sobj);
-
 
333
 
-
 
334
	}
-
 
335
	//}
325
	if(rawfilename==NULL){
336
	if(rawfilename==NULL){
326
		PrintInfo((char **)usage);
337
		PrintInfo((char **)usage);
327
		exit( e_noinputspecified );
338
		exit( e_noinputspecified );
328
	}
339
	}
329
	time(&systime); //òåêóùåå âðåìÿ
340
	time(&systime); //òåêóùåå âðåìÿ
Line 620... Line 631...
620
	input=oinput;
631
	input=oinput;
621
	endinptr=oendinptr;
632
	endinptr=oendinptr;
622
	return retnum;
633
	return retnum;
623
}
634
}
Line -... Line 635...
-
 
635
 
-
 
636
void ParseObjCommand(int cmd){
-
 
637
	switch (cmd) {
-
 
638
	case c_sobj:
-
 
639
		sobj = TRUE;
-
 
640
		FixUp = TRUE;
-
 
641
		jumptomain = CALL_NONE;
-
 
642
	case c_obj:
-
 
643
		fobj = TRUE;
-
 
644
		//					if(comfile==file_d32)FixUp=TRUE;
-
 
645
		FastCallApi = FALSE;
-
 
646
	}
-
 
647
}
624
 
648
 
625
int SelectComand(char *pptr,int *count)
649
int SelectComand(char *pptr,int *count)
626
{
650
{
627
int i;
651
int i;
628
unsigned char neg=FALSE;
652
unsigned char neg=FALSE;
Line 701... Line 725...
701
					startptrdata=0; 	// data start address
725
					startptrdata=0; 	// data start address
702
					jumptomain=CALL_NONE;
726
					jumptomain=CALL_NONE;
703
					header=0;
727
					header=0;
704
					break;
728
					break;
705
				case c_sobj:
729
				case c_sobj:
706
					sobj=TRUE;
730
/*					sobj=TRUE;
707
					FixUp=TRUE;
731
					FixUp=TRUE;
708
					jumptomain=CALL_NONE;
732
					jumptomain=CALL_NONE;
709
				case c_obj:
733
*/			case c_obj:
710
					fobj=TRUE;
734
/*					fobj=TRUE;
711
//					if(comfile==file_d32)FixUp=TRUE;
735
//					if(comfile==file_d32)FixUp=TRUE;
712
					FastCallApi=FALSE;
736
					FastCallApi=FALSE;
-
 
737
*/
-
 
738
          ParseObjCommand(i);
713
					break;
739
					break;
714
				case c_me:
740
				case c_me:
715
					puts(meinfo);
741
					puts(meinfo);
716
					exit( e_ok );
742
					exit( e_ok );
717
				case c_key:
743
				case c_key:
Line 1281... Line 1307...
1281
 
1307
 
1282
int writeoutput()
1308
int writeoutput()
1283
{
1309
{
1284
EXE_DOS_HEADER exeheader;  // header for EXE format
1310
EXE_DOS_HEADER exeheader;  // header for EXE format
1285
	if(fobj){
1311
	if(fobj){
-
 
1312
		if(comfile==file_w32&&ocoff
-
 
1313
       // Edited by Coldy
1286
		if(comfile==file_w32&&ocoff)return MakeCoff();
1314
			||ocoff&&sobj)return MakeCoff();
1287
		return MakeObj();
1315
		return MakeObj();
1288
	}
1316
	}
1289
	if(comfile==file_w32)return MakePE();
1317
	if(comfile==file_w32)return MakePE();
1290
	if(comfile==file_meos)return MakeMEOS();
1318
	if(comfile==file_meos)return MakeMEOS();