From: Petteri DOT Kangaslampi AT research DOT nokia DOT com (Petteri Kangaslampi) Newsgroups: comp.os.msdos.djgpp Subject: Re: Is there O2S like OBJ2ASM? Date: 20 Nov 1996 22:47:18 GMT Organization: Nokia Research Center Lines: 38 Message-ID: <5701pm$hkv@hauva.research.nokia.com> References: NNTP-Posting-Host: nrcph081.research.nokia.com To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp In article , bartosz AT hostr DOT bielbit DOT bielsko DOT pl says... >I've found that Watcom disassembler (wdisasm) could emit source code in >INTEL and AT&T like syntax. I haven't checked AT&T syntax because I've >no gas installed. The code it produces is actually pretty usable. You'll have to do a few changes to get it actually compile correctly, but these can be automated with sed or similar. We actually use this for MIDAS Sound System Linux version mixing routines. The conversion we used is: sed -e s/_// -e s/+// -e s/.bss/.lcomm/ -e s/repe/rep\;/ \ dsmmix.wdisasm > dsmmix.S (you can try to figure out that one yourself :) Also, I know that one piece of code gets transformed wrong. If you have a pointer to a function in a variable, and want to call that, the resulting AT&T assembler code just tries to call the address of the variable. So in effect call [dword pointer] gets replaced by call pointer (TASM IDEAL mode syntax). I actually don't know how to implement the first one with AT&T syntax assembler. We ended up changing the code to mov eax,[pointer] call eax Other than that, no major problems, apart from WDISASM being a commercial program and part of Watcom C. Petteri (Disclaimer: "We" refers to myself and Jarno Paananen, not Nokia)