00001 #ifndef __MK_DSPStructMisc_H___
00002 #define __MK_DSPStructMisc_H___
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 extern void DSPDataRecordInit(DSPDataRecord *dr);
00013
00014
00015 extern void DSPSectionInit(DSPSection *sec);
00016
00017
00018
00019
00020
00021 extern void DSPLoadSpecInit(DSPLoadSpec *dsp);
00022
00023
00024
00025
00026
00027
00028
00029 extern void DSPSymbolPrint(DSPSymbol sym);
00030 extern void DSPDataRecordPrint(DSPDataRecord *dr);
00031 extern void DSPSectionPrint(DSPSection *section);
00032 extern void DSPLoadSpecPrint(DSPLoadSpec *dsp);
00033
00034
00035
00036 extern int DSPDataRecordWrite(DSPDataRecord *dr, FILE *fp);
00037 extern int DSPSymbolWrite(DSPSymbol sym, FILE *fp);
00038 extern int DSPFixupWrite(DSPFixup fxp, FILE *fp);
00039 extern int DSPSectionWrite(DSPSection *sec, FILE *fp);
00040 extern int DSPLoadSpecWrite(DSPLoadSpec *dsp, FILE *fp);
00041
00042 extern int DSPLoadSpecWriteFile(
00043 DSPLoadSpec *dspptr,
00044 char *dspfn);
00045
00046
00047
00048
00049
00050
00051
00052
00053 extern int DSPSymbolRead(DSPSymbol *symp, FILE *fp);
00054 extern int DSPFixupRead(DSPFixup *fxpp, FILE *fp);
00055 extern int DSPSectionRead(DSPSection **secpp, FILE *fp);
00056 extern int DSPLoadSpecRead(DSPLoadSpec **dpp, FILE *fp);
00057
00058 extern int DSPDataRecordRead(
00059 DSPDataRecord **drpp,
00060 FILE *fp,
00061 DSPSection *sp);
00062
00063
00064 extern int DSPLoadSpecReadFile(
00065 DSPLoadSpec **dspptr,
00066 char *dspfn);
00067
00068
00069
00070
00071
00072 extern int DSPDataRecordFree(DSPDataRecord *dr);
00073
00074
00075
00076
00077 extern int DSPSymbolFree(DSPSymbol *sym);
00078 extern int DSPFixupFree(DSPFixup *fxp);
00079 extern int DSPSectionFree(DSPSection *sec);
00080 extern int DSPLoadSpecFree(DSPLoadSpec *dsp);
00081
00082
00083
00084 extern DSPSection *DSPGetUserSection(DSPLoadSpec *dspStruct);
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101 extern DSPAddress DSPGetFirstAddress(DSPLoadSpec *dspStruct,
00102 DSPLocationCounter locationCounter);
00103
00104 extern DSPAddress DSPGetLastAddress(DSPLoadSpec *dspStruct,
00105 DSPLocationCounter locationCounter);
00106
00107 extern int DSPDataRecordInsert(DSPDataRecord *dr,
00108 DSPDataRecord **head,
00109 DSPDataRecord **tail);
00110
00111
00112
00113
00114
00115 extern int DSPDataRecordMerge(DSPDataRecord *dr);
00116
00117
00118
00119
00120
00121 extern int DSPCopyLoadSpec(DSPLoadSpec **dspPTo,DSPLoadSpec *dspFrom);
00122
00123 #endif