MacApp->C++->A/UX

Matthias Urlichs urlichs at smurf.sub.org
Sat Apr 20 05:09:56 AEST 1991


In comp.unix.aux, article <51729 at apple.Apple.COM>,
  ksand at Apple.COM (Kent Sandvik) writes:
< 
< Hmm, a better question would be "Are there any plans to support COFF
< format from the MPW environment?"

It's possible to convert COFF to MPW.

The main problem is that due to the nonrelocatability of COFF code, if you
want to link COFF stuff you have to put everything in data space (i.e.
A5-relative). This includes the executable code.
If you want to convert /lib/libc.a, you'll have to split it into its
constituent object files first.

Converter script follows. (Warning: It's written in perl.)
After conversion, you'll have to say "setfile -t 'OBJ ' name".

The converter is able to prefix external names with some standard symbol so
you can avoid naming conflicts.

Is there any good way to feed object code back into the assembler? Dumpobj
isn't very good at producing reasemblable output. Maybe an additional option
for dumpobj is in order here; it would certainly simplify things.
Apple?

begin 755 coff2obj.Z
M'YV0(T*\J#-'S at LV;\:$8?-"3!HW+^"4D<-&@8(1(*B at 23,'A)PP=-!,!($F
M3!HY>4#,&2,G#1PZ(.A\=#/'S!LY;3H&>5$%"X at A3XP8`?%&C)HR8V":2<.F
MS)R+(*)*C?J0SAL03:!<(6H4J5*F3EU`??(RS1N:.J!&;6$5!)$D4D#`J4.G
M8\@R'IW684/GX1D02YMVK'J5S$FO-U.^E2(6XUK#<^"`4$,0YAPT;^[8%0EB
MS%DZ9=S4)6HF)F>@0@&#53M5ZITT(=_0[7S6SL2^;OZ&<9,GI-_&4EO`D5-F
M*1X06)*K#)/'[M7A922Z(8-<>=LRME&"*(,'M!PW"U7F:2/F#1L0X-N4`;YV
M3ATSQJO[)//&J6F\<\*H9P%"S.PP<$A'1D?)8<$>""UX1 at 9><XV&W42];90;
M"`_1MJ!*<(0QQGJLM4`&2&'(15='#Z+DVX05?DA'B)%IR.$(4"516AZR at 7#'
M;C#=A956(+#QT!HCM44?"+M%Z)=*H<V1AAA-V0@;&J9QQ`)K(-!8!WIEE$%=
M6_FEY"&(P,E898TWBA93876T`4=1:D3946!E\*?C at F:$L==H81#7GU-TA`G3
M<$6%P61*;80!9$=S)(E76P3A-8,,+3@$DXHL9KCA at 2"@L%-/(-#GE!LGP"1'
M'6X056J(-N``PZI$\G9C'BZD8!$)A8Z1Z%\]@"!"%6ZD at 0<32XJP at P(DR$:'
M87*`D*L(PA(+77S+-DN">_#YJJRNTGKF1G8PY1K#L"0\1`2(UWX+0KAN#/'&
MA;G"L,.Y#Q71W42EMCOL16](AX(353#!!`LB^/#"@G:\X,9>;(B0PKUW;-0D
M"B0$(<415FQ!PA9=*.L'""]XT<(+*8"PAP()I%$:Q!)3;#'&V\6A:X*U*2PR
MR0E<9C(=PR:0``G:<EMNSGULQX:2)T<\<<479UR&RR)XR!$<,H^LL\UFX$PS
MS[7==JV[)`==QM`F9VJTRDFW_+*"941-,]56ZXRNNNR"X"Z\;HR[XM;OHBNO
M=_7*#;301(N=,M(L+_TRI6I/O5'5.>_\$-QX>9NWN.1*3O?>]/[<->!AHWST
MRDHSS=8;B=>\>-L[&XOLM6,3WD7C;/_]=>">DUVXZ,_Z*@((?/!Q[N"@F]TT
M=*7'?G7NQ^7:.NBPGRX[V$4#7[;A35-KW.Z]__[Y]*)36[SS5UMOK?+28]S\
MS4`KT(=%&#EQ%4B at J0D31R`4>F%;,NTV!QL at X3=>>3X:`X7<8!.<@,0L;C at 0
M"I)P`NJ4Q#9GBLE,]M<_-PVP+4/84P'Q`K\RR.]((0&)J=8CJQC!I`UI.`,:
M3F at H_"@J at HTBDAQ0$(.0<0D./H*)C\3PD9;8AS#W.0EM:-(7.M0A-'_*4UVF
MY)C^S,9*G=E-IZX20IA820Z)8H,97`""';2 at A",(HQC'2,8RPBB,%VFB6\X2
MJKR$@3IB*`.-IF-!'[FA#&E,HQGW.,8\AK$U40D"&\Z#A'SA)0ABV`U]W,"?
M+.#E"I@!01%$,Q(D3.1%9^2C)O-(+#BA at 0S)6M849-"C&8!@E-+R)"B;TC=6
MGB$D<M'0&L2F2CFP``4I6!A4FA"&,Z1!@&Z0PQ2\@D"[I$$]<UB1FN3RACE,
M83PK$@-ZA#D>1*5!#V4@"QV0`$K`\.\,'8$1L<)@K$^&4E=S("4;;"`M<M+%
MG*R\EBMA::E90LR=(0'E+7,Y+(SPTI<"S(Z2SA(3[M!A"M?$"Z40BLW^S,&9
M"=V.:%`"A3=4I:#=F<**Y#`I$&E4B2`0Y[3&X`9S7DL$8<!!CVQP2G5*:R4E
M765HY!F:5T*IGA"#J3GWJ<OVZ8=!:&A.$,C033N<A`Y#[::2&DJIBG:$.`@9
M at U-[])`R.)4U!VN#%+Z6$/2D"5AW?-,WGT*L.8P'B2=-:8]4<LK.R."E9Q5-
M/',USYO*,J=QI0-/^PD")_P4!'98R!&1E!0$QB0/$ND,_Q[JU38$H0YXF)59
MU2.:TBPK##&@05O'\%:^&@$L?E7/81,[AL5V)*N/C2RQH)H0M"Z+#:2<@K18
MNR&YSI2N-:7G74E`6R3N%2I&Y6A2DS79:"9A.MS)"QNH@%@\*L`]TLP0=:06
MU85`C)4ARQ40OI`SDUUWIB4`@0Q")K4$#.>B3Z@"%6(YAC6 at 0`1C$`$+8!"R
ML&%M6[=)W_H4\-FFI*6`*`#"X,A+,A+LI at ARD,---.>XOI&`NR2#V$.$$(9$
ML>XAV=W8'%[`!1>X0`4O>$'.2,"''ICKO&82 at 8=7C"XNR&%W]NU9?DF&8IB(
MH+]ET`'=N."&W9%*,!VY+[=R9D at W+-`)+$!7R+)WQ^Z``,<CIE0/F/6N/S(A
M3RCA#P[+4&&\Q*>*F9((11!T!UDE``7$>>.1DTRI)-<2N\I2WIM#LV3?-1DF
M4(XPK7KY2_Z0()C#+.Q9YI#DOB!3F7!(\IJ<"4U!)1G0U4SR4K/Y$F[:D at 1F
M&*N9$Y`K4N$4TV#9*0DHI4OSMB3%?Q8F,0=]RE73Q,^0SHEXR&.>.?#8QVX`
M\KEDS-&<0<Q8%W9#AE4R@@^_X(\QSEJO259D%*27"BPX at 0].X()BT059U396
MG3N5!KS<&"SHN<H=6@(:&)=&R#,V-7K5RU[WPK<SIY0O"&(P7Q:,ET+GYG7;
M:@R"9[?[O0(\CFQ9,(-;UI5N(5L!"&B0`C]7*-GX778"3"!=%!Q<R?=R7'YP
MC+<"HQ:R'=_9$1"2R*'9BV2DHA,(2C!9).8LY<59>7$%M>B7([<T0)@#%(B3
M*-'87.4Y=_7/8\YR5X>V#$/'>:($[88GP"=1;8,YSFG[S#9D/%%E<&\2D`SJ
MIL`S-"N85D*U:>GYEAK`,?!PJ@/=ET$3V*>BA4-0YS!<P!ZU[I/N%(BF2MNI
MVM&JS<1JFK8:U<:"U3Z9[N53W`9H5[,.PCI#,Y?)L.91 at TC2)/VZL.-\+IW*
M=/-,-NB3P=*XG!Y=T7,?;I*#BU2B7AJBV&3SWIN9Y+[3G at 1_=^J4=+:SK!(^
M(;#^:E4)?:[$@S.[(/#T;CU_:5(W;EI'UYA*.`P#8XLX?$;_Z1Z at _].@*:_Q
M3'_^TMO>]*>7 at 0X6`S_Y,Z8\N0O5]0 at Z%^OKW at +YW]WUC</(6;S=@MW%42$Q
M=`=X428P(45O8'YZ=1]$<1?)\G]V8F%W03..P7IU$!YO!$I.T1$+D69DD!+T
MLX&3EQ+0T7/S4RIH0S.=0P+N1W?P%P+*,W^N1V"\QV]30`5$4`12$!<BP':&
MM7:NIF-.9P90UQ&+U$:%0@=C@`8N<&N-LSYNPQ%V$P;IIVI,QWZ9`C'&UQ$F
M(#=X,`3T!0(_0#=1"`(Z]C;K4@:EIFXIQH,$Y8-,)S9S<'0-IRL.-P=1.(5L
MZ`89$X8B$(6[DQ:\)P*0(V_R-BT,Q4$P00(P"$JWEGRYEH&[IFQMXX3A8H<@
M at H>N-@<K$`-6B"Y1>"\T=FHVQF-5!T!SH`.-^&.0B&X25W6`"&#55VVQ-@<M
M4$,S`W=X$5AL,%CC9UATT%R*56&GE2:I%3[CX03G]&"-XUU_1HP at YP-R`P(F
ML(4A4(EA@&,RR'C.>!PM4'_V]7''`8U<PWO6R'$GQWMW=DKCT81KDR5:QW6+
M5G71%':3A8PJ,"UYQ4IF5WH<6'EMAH^410=PU@/*TW*V!7IV)GIYIC.=4XT<
M<8U at D8UGQGW[,2U6(%AQTGFNYF>_*!%^5EK"&'R.!5F;IC.=Y@:?9I!Z97DK
MDH9>,S1X45X3&8<_Q9'-]9&F)9*I59*<YH at IF5=F('LMV3@[TXL$=8X)X(0:
M!Y%-DBLYY7@$B2#C57I=QP9^MFC(IWSM]5Y,``),4(@TJ1YIZ%W5&!AL()%8
M]XZ*UDQA%X^-)@9A-XOWJ)+Z2%]$V8];)VFG)P,U8`,N&3[1UP,:1GW6EW$E
M4S0 at R5A124K9PS.FQ7DS()',F)@=$961.3.\UV`VH5&GABNZ4A7-PGLO:6$R
MJ9EOP)E'LBP&%9HZHY1J:&,`B8QE&)9E\`+HLIDR<206B9$#I)%,=VMBD9E1
MP2R.J&NLB#J'"8=0V2[2N(6[N8MXX8)R(Y%%^9:+M@<B``-?L#M<])Q'Y'V=
M=XQR0)0S>9'0Z6<C%RA#@WP0DYXE1WPDX)X+T1$*YYUH2)[3`I7GHG[%!`(*
M]RTTDY0!FH*4"9G-V2G%4564EY],=W3;1YM]D$N828Y&Z09!@'X,NGZL4X_C
M&:`[4P>!23<49F'=29M$.9H$^IB+29TD`*)_U7[$$1\E&GTE^A[&<:*`$Y,>
MVJ(A2I%(%Z"N^6?Z,5<]DEM0PJ,_193\YF\X!5]X,`6;)5\T\&A#"G8W(&GB
M2:5M@%U)YJ*B!7%#%J`4IV9"NJ5 at 5T-$"9!(]*!'!YZQV:'D^!!Y:#$<VHD5
MFJ:T2:?B::='AZ?F>41ZV@;(:*=_^J,4. at 2F%:B#RCJ4B:<[YQ1(I*AR8(4`
M2J'6V4P/ZGA<)`+;"0(E6JANRJ'XYIOD!P+BR(X"F@`>5Z6M9*3G4BNWDC-+
MRFY-. at 9/&J4L,*5ERDHK<*5K%VF[2F=)!JME\!=@FFYCNJ#IP:MH6F#RR093
M]7W4E!.@^)JZ\GL*07ZGF(J/R%C'F3-Y&`-A\(HW04-JQY]N=XM]]5<K6'>+
M2%P1U53-I%P)X7=5=55-Y'M<!4S"%U;>I'A7 at ZX.!GDUXXZ5-V=N0(]C5VF@
MM`(0(["UF`)SF7F?MX\T(WEJEI<L&0:8%U,406><-U(>"V>AYV0+.9.GIX*I
MYWJU]ZZ2=HA"&0:ZQUO[.K.Y1WL!VHQ:M:\B>7CPF859B9++1['-!R*Z!)@O
M.IA<4'T@=GTZ at W;G.GC[*I$D<!?8^GA$F9:59WN:"#%6NZ\1>X^]=9`6BQ'O
M.FO&A5S'`57,)1$!BK&4I['_.+8"";)12;-1A40DFY`F2WIOJXCWIT_AV09I
MNR!XX&>TU;9HZ*$G^6ET&[-IF)Q/R707:C%RZFJ!6KC<T07L5Y!O>5R&2YUI
MF2ER.WNTR%OO&G8N:Y<>FH*)"XQ1"0,R\(6E>69XR75M=F\KRCM\BV=^FYGE
MB9%!VZ0#M[&1FY2<4S2OFUBQ*P.V6+MPZX^7QW"<1[TEZ[M-09[!"YW#>U<B
M\)602YZCJ:/`2X,VB(,ZR"MKX`:942JT=4`$U9%X@;<)H;@AP(0>6I2%&G*B
MN:-W$810QSIG6W^H&[AP.H.BJ"MN2'ZV^05`B(#G\K\0W!;H,J<`J;EXT`4Z
M8)^Z4IRKJ&^&R9`G$P)THJ!P>*ESL'V7RW29*RB at N[F>JBN=^JD8&:$'2L()
M>D<+.G-B<)T5C+D7[,)JFS&;^@4SW'F@*J&U^ZLYL0(KH+T_S,),/`>=N,+D
MU\)B\,(9#,5Y.L56*`(_X`+<N9_3.@=<7*AX6$V$BI%<C*C"F,8Y884SP,6/
M2H)P3,4,EIE!W,.8&L57O,=:3,0R?,3VZ::S",7+>EM%FANPY*-W_#KYRV\B
M<$=W0,959VL]YL'>"L*1G,!,ZKVV"J50&E^YJJ6\ZJNS:,K"FK_`ZS9=/(L9
M<ZP2EYG)^K"LNHG'NS-4-Q[;)[`QS*EC7+4B@:V&7,;BFZ,3BL`7)0)TPJW&
MR<G`2[]C4'6]3(6E6L3!_+51!9ZLC%>$2W-];,4(A,6!_,M&',QS`*J\R\J#
M&TT^+,YG0<Y#;,Z[$\.%?+RN.;[)O#,2+(3G)\`&''\%+%SXYZ&2O,`(U,`Z
MH`,`_,_"G$T3?!6`K+;._,&2B)^[W`;5G(?T;,_:G!"A^KEJ>Z(TXX3[E0!Y
M2*XSE':R:,W%A,OJ&GWM"G]GFW?R^E0U.Z\W^Q3Y*K6%EU4^^Z_@%+`N?93G
M`F$H6#2^S`/2FH=S@)8&J[$(J[#81'8-"S%?$+8BJWD6RWO16[HKTK&:EUT%
M2;1[BR5]F[U_2YNH]W[Z--"M]]:P%R<;.[-<FV0[O7ODJ*]1U;/#YV=`>RU:
MZ5Y;_=;.5]+(+).F5Y,JZ]:7)@<N:X@)%;-VG=.$AGOWBK-ZS-?`MY_]ZA2`
MK6G*\K8J=@8DMQ#R!0/U%I^G/33UIMJP_=IXH"I_23/IR-&JR%A8.%;2R(5&
M$`-&0-9^0S.SNEZU"F^B+&\U4(=WB-!GT05Z[<JN5KG.K8?1K7'-+;![&(UE
M^*Q.55_Y=M'$[<FT"LKP!KX@<*6JW7F'"-Z1&'&HPXPW#=59)[TKHGNL2Z$'
MF"?\NS-FL&C7`AJ#U&_L)LO(V3#@EE/MO<_"3#].J>`1!8TQ8`,S@`/4&X83
M7N&:-9OM39Y?C;N7U^!/';*^,>+7.WIJG9G%_6_O)D!0VI5A(.+RA0/S-=MA
M!X676-W0G;\BO@(T/BW[;4OG0FJC^JT>6LLB?KR2W5`MH#PECI]S$.3^Z>0;
M8<9`6M(6H3.27(JU!A at +5MVHF,FY'630O)3F.-QN at T(/E5K\6W4R`(@)`(MJ
M-P(ZQW-(1+6BJCP$FP"W/1ZD-.:=5\>1^J:0[-4^*FF%ZF<5BI/"R)-.V7E'
M)ZG0C<08*>G7W6`67*>2YL8/)>F1&Z!]W at 9_WJU!5J$A*[!$&>JD9%\52MWP
M[`:2WKF#BXQIVL\!7)#[2\"0;<!*2M[&;=XN[I7R90/\@0(04Z"[&X8P,-MD
M.)WY6Y\XOB*86(77_::*GNOGLNL$#4KN;>3*C&JB*D)^/,Z$OL&V?GX5O<GB
MW9I9;JTB@*UO\N4"&^:X]LSK'N?ERM(ZBZU4^]$"I.=9&]5<Q[4.^]#8JM5T
M6Y<]97?;3EPB;;C*I;AO>[LQ6WO[JK=VJSP)#[(G?K(3Z;+M+,2&B[C[JKB.
M[I.[];C&&\($*HDL:@;L6\FY(N#G\6Q0[HX`+F>+IKH!79\5VM`8JMW/7A7&
M#K at -[Y^DBD!`/^WK%S(OD.$6[I^VJ`(X0)ZCZVSJ)6DX3WOYS7NN6_*PVRZS
M2YW6^LE;N8.IC<_)*S;+&SEB_[R=O&Z_?O;@V_7LGIE:^VR`'?/\8?=!FF9L
M4'6LD]$;K:DRG,W#O*]]T.O+_&!T:']'[_.NMO0Z?MTBH&-M(?@3#?$5$FAT
MD^D/O[EE"/A5E^YD?N_\+!)`#]!'K^OORO+*"_;,*_:T:]"^SN("%.PO+F\Y
M<.G+'@,J!>V6*.V5'U)(+V%N`/K?G,7S'(:5V-RO+L^&R[G-KC?S\ATA<^DQ
MH-H>BA'C'L^;#\/.W^I!7]1Z2(8>&A4TNQ!55^UG*_E,1_G:W>UECKRS\_51
MI;B<)[MPK^*W?]RZ3]CQA]Z7OY8=#`A^\&+X2:'BAQ$4#O)3?AALNSV_'!?]
MPE\&RQAE*%Y</V&C_;A?9O)^%9"'E;/Q-]W*7Q["@.DOVW&9P#<>W%_/2WIG
M0?Z9ORY`_U"?/BM-DLQ]@`!L=;_<`/[J7W>/$AV8!+- at 3D[0T!:X8;!(C=+2
M3/#"UI%5_\^\X0%Y<V\,7,Y@@A;&WUA!DL&,AJ""D0/9Z,?\B%]S;4Y"MJ$+
M-1"^-0Y)5B>8PA+*9%O0_L&D"55C1,`36`)OT-R\MS`EH-0'^\@()8$.G(#!
AT"=`P!7@(`/N#IR%!9$L&H8'@@F*4`ZL`0U4@`9)8U``
`
end

-- 
Matthias Urlichs -- urlichs at smurf.sub.org -- urlichs at smurf.ira.uka.de     /(o\
Humboldtstrasse 7 - 7500 Karlsruhe 1 - FRG -- +49-721-621127(0700-2330)   \o)/



More information about the Comp.unix.aux mailing list