X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=link%2Fz80%2Flkrloc.c;h=0746dbbebefa4df0de7719734ea31505a169a2c3;hb=c2029a0ae596f1a45bf8f0db2c4dd6d2a43f8f47;hp=847e070f79c032cdb79148d823cb7a26bf252e85;hpb=0abb805fd2d72a89b41a10144ded610ebfc072bc;p=fw%2Fsdcc diff --git a/link/z80/lkrloc.c b/link/z80/lkrloc.c index 847e070f..0746dbbe 100644 --- a/link/z80/lkrloc.c +++ b/link/z80/lkrloc.c @@ -15,7 +15,9 @@ #include #include -#include +#include +//#include +#include #include "aslink.h" /*)Module lkrloc.c @@ -24,15 +26,15 @@ * perform the relocation calculations. * * lkrloc.c contains the following functions: - * addr_t adb_b() - * addr_t adb_lo() - * addr_t adb_hi() - * addr_t adw_w() - * addr_t adw_lo() - * addr_t adw_hi() + * Addr_T adb_b() + * Addr_T adb_lo() + * Addr_T adb_hi() + * Addr_T adw_w() + * Addr_T adw_lo() + * Addr_T adw_hi() * VOID erpdmp() * VOID errdmp() - * addr_t evword() + * Addr_T evword() * VOID prntval() * VOID rele() * VOID relerr() @@ -207,14 +209,14 @@ relt() * int lkerr error flag * int mode relocation mode * adrr_t paga paging base area address - * addr_t pags paging symbol address - * addr_t pc relocated base address - * addr_t r PCR relocation value - * addr_t reli relocation initial value - * addr_t relv relocation final value + * Addr_T pags paging symbol address + * Addr_T pc relocated base address + * Addr_T r PCR relocation value + * Addr_T reli relocation initial value + * Addr_T relv relocation final value * int rindex symbol / area index - * addr_t rtbase base code address - * addr_t rtofst rtval[] index offset + * Addr_T rtbase base code address + * Addr_T rtofst rtval[] index offset * int rtp index into T data * sym **s pointer to array of symbol pointers * @@ -224,11 +226,11 @@ relt() * FILE *stderr standard error device * * called functions: - * addr_t adb_b() lkrloc.c - * addr_t adb_lo() lkrloc.c - * addr_t adb_hi() lkrloc.c - * addr_t adw_w() lkrloc.c - * addr_t evword() lkrloc.c + * Addr_T adb_b() lkrloc.c + * Addr_T adb_lo() lkrloc.c + * Addr_T adb_hi() lkrloc.c + * Addr_T adw_w() lkrloc.c + * Addr_T evword() lkrloc.c * int eval() lkeval.c * int fprintf() c_library * VOID ihx() lkihx.c @@ -249,9 +251,9 @@ VOID relr() { register int mode; - register addr_t reli, relv; + register Addr_T reli, relv; int aindex, rindex, rtp, error; - addr_t r, rtbase, rtofst, paga, pags, pc; + Addr_T r, rtbase, rtofst, paga = 0, pags = 0, pc; struct areax **a; struct sym **s; @@ -397,7 +399,7 @@ relr() */ if (mode & R_PCR && mode & R_BYTE) { r = relv & ~0x7F; - if (r != (addr_t) ~0x7F && r != 0) + if (r != (Addr_T) ~0x7F && r != 0) error = 2; } @@ -478,7 +480,7 @@ char *errmsg[] = { * areax **a pointer to array of area pointers * int aindex area index * int mode relocation mode - * addr_t relv relocation value + * Addr_T relv relocation value * int rindex symbol / area index * int rtp index into T data * sym **s pointer to array of symbol pointers @@ -490,8 +492,8 @@ char *errmsg[] = { * FILE *stderr standard error device * * called functions: - * addr_t adw_w() lkrloc.c - * addr_t evword() lkrloc.c + * Addr_T adw_w() lkrloc.c + * Addr_T evword() lkrloc.c * int eval() lkeval.c * int fprintf() c_library * int more() lklex.c @@ -509,7 +511,7 @@ relp() { register int aindex, rindex; int mode, rtp; - addr_t relv; + Addr_T relv; struct areax **a; struct sym **s; @@ -628,13 +630,13 @@ rele() } } -/*)Function addr_t evword() +/*)Function Addr_T evword() * * The function evword() combines two byte values * into a single word value. * * local variable: - * addr_t v temporary evaluation variable + * Addr_T v temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -648,10 +650,10 @@ rele() * */ -addr_t +Addr_T evword() { - register addr_t v; + register Addr_T v; if (hilo) { v = (eval() << 8); @@ -663,7 +665,7 @@ evword() return(v); } -/*)Function addr_t adb_b(v, i) +/*)Function Addr_T adb_b(v, i) * * int v value to add to byte * int i rtval[] index @@ -686,15 +688,15 @@ evword() * */ -addr_t +Addr_T adb_b(v, i) -register addr_t v; +register Addr_T v; register int i; { return(rtval[i] += v); } -/*)Function addr_t adb_lo(v, i) +/*)Function Addr_T adb_lo(v, i) * * int v value to add to byte * int i rtval[] index @@ -705,7 +707,7 @@ register int i; * The MSB rtflg[] is cleared. * * local variable: - * addr_t j temporary evaluation variable + * Addr_T j temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -721,12 +723,12 @@ register int i; * */ -addr_t +Addr_T adb_lo(v, i) -addr_t v; +Addr_T v; int i; { - register addr_t j; + register Addr_T j; j = adw_w(v, i); /* @@ -740,7 +742,7 @@ int i; return (j); } -/*)Function addr_t adb_hi(v, i) +/*)Function Addr_T adb_hi(v, i) * * int v value to add to byte * int i rtval[] index @@ -751,7 +753,7 @@ int i; * The LSB rtflg[] is cleared. * * local variable: - * addr_t j temporary evaluation variable + * Addr_T j temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -767,12 +769,12 @@ int i; * */ -addr_t +Addr_T adb_hi(v, i) -addr_t v; +Addr_T v; int i; { - register addr_t j; + register Addr_T j; j = adw_w(v, i); /* @@ -786,7 +788,7 @@ int i; return (j); } -/*)Function addr_t adw_w(v, i) +/*)Function Addr_T adw_w(v, i) * * int v value to add to word * int i rtval[] index @@ -796,7 +798,7 @@ int i; * The new value of rtval[i] / rtval[i+1] is returned. * * local variable: - * addr_t j temporary evaluation variable + * Addr_T j temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -809,12 +811,12 @@ int i; * */ -addr_t +Addr_T adw_w(v, i) -register addr_t v; +register Addr_T v; register int i; { - register addr_t j; + register Addr_T j; if (hilo) { j = v + (rtval[i] << 8) + (rtval[i+1] & 0xff); @@ -828,7 +830,7 @@ register int i; return(j); } -/*)Function addr_t adw_lo(v, i) +/*)Function Addr_T adw_lo(v, i) * * int v value to add to byte * int i rtval[] index @@ -839,7 +841,7 @@ register int i; * The MSB rtval[] is zeroed. * * local variable: - * addr_t j temporary evaluation variable + * Addr_T j temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -854,12 +856,12 @@ register int i; * */ -addr_t +Addr_T adw_lo(v, i) -addr_t v; +Addr_T v; int i; { - register addr_t j; + register Addr_T j; j = adw_w(v, i); /* @@ -873,7 +875,7 @@ int i; return (j); } -/*)Function addr_t adw_hi(v, i) +/*)Function Addr_T adw_hi(v, i) * * int v value to add to byte * int i rtval[] index @@ -885,7 +887,7 @@ int i; * The MSB rtval[] is zeroed. * * local variable: - * addr_t j temporary evaluation variable + * Addr_T j temporary evaluation variable * * global variables: * hilo byte ordering parameter @@ -900,12 +902,12 @@ int i; * */ -addr_t +Addr_T adw_hi(v, i) -addr_t v; +Addr_T v; int i; { - register addr_t j; + register Addr_T j; j = adw_w(v, i); /* @@ -1050,7 +1052,7 @@ char *str; /*)Function VOID prntval(fptr, v) * * FILE *fptr output file handle - * addr_t v value to output + * Addr_T v value to output * * The function prntval() outputs the value v, in the * currently selected radix, to the device specified @@ -1073,7 +1075,7 @@ char *str; VOID prntval(fptr, v) FILE *fptr; -addr_t v; +Addr_T v; { if (xflag == 0) { fprintf(fptr, "%04X\n", v);