Hi
I'm the main developer for DScaler, which is a video processing application and uses a lot of MMX type assembler, currently we use inline aseembler and some MASM but this is pretty messy.
I'm currently in the process of a major redesign of a lot of the code and would like to make the assembler code portable to linux. In my research so far I've found that there are a few multi-platform assemblers yasm, nasm, gas. But none appear to have source level debugging under windows which is absolutely essential for me.
One thing I've looked into is using HLA, HLA looks like a good solution for me as it is cross platform and the preprocessor looks very good which will ease some elements of the conversion. At the moment I can pass -Zi down to masm and get debug symbols added to the assembler file but when I debug I can't see the original code in the masm file. I think some kind of comments in the masm file would be great, ideally I'd like something like the .cod output from C. Is this something that can be added or is this something that I'll have to wait for version 2?
Is version 2 less than 2 months away and will there be an alpha programme?
Or have I missed something and there is a much easier way to do what I want.
Thanks
John
I'm the main developer for DScaler, which is a video processing application and uses a lot of MMX type assembler, currently we use inline aseembler and some MASM but this is pretty messy.
I'm currently in the process of a major redesign of a lot of the code and would like to make the assembler code portable to linux. In my research so far I've found that there are a few multi-platform assemblers yasm, nasm, gas. But none appear to have source level debugging under windows which is absolutely essential for me.
One thing I've looked into is using HLA, HLA looks like a good solution for me as it is cross platform and the preprocessor looks very good which will ease some elements of the conversion. At the moment I can pass -Zi down to masm and get debug symbols added to the assembler file but when I debug I can't see the original code in the masm file. I think some kind of comments in the masm file would be great, ideally I'd like something like the .cod output from C. Is this something that can be added or is this something that I'll have to wait for version 2?
Is version 2 less than 2 months away and will there be an alpha programme?
Or have I missed something and there is a much easier way to do what I want.
Thanks
John
If you are using VC, use that as your MASM IDE. The VC debugger knows how to use the .PDB files made by the linker.
Source level debugging.
Source level debugging.
ThoughtCriminal
Yes, I can do that, but the "source" is the MASM file output by HLA not the hla source that I want to debug. If the source makes heavy use of macros then trying to work out what's going on is pretty hard, that's the point I'm making.
John
Yes, I can do that, but the "source" is the MASM file output by HLA not the hla source that I want to debug. If the source makes heavy use of macros then trying to work out what's going on is pretty hard, that's the point I'm making.
John
Okay, I thought you were using MASM directly, but considering HLA for development.
ThoughtCriminal
Yes, that's pretty much the story, most of the current code is in an inline C++ compiler macro laden mess, with the same code for but diferrent macros for MMX, SSE and 3dnow. This looks like it would be cleaner to show in HLA, but since I'm not primarily coding in asm and tend to amke loads of errors I really need decent source level debugging.
John
Yes, that's pretty much the story, most of the current code is in an inline C++ compiler macro laden mess, with the same code for but diferrent macros for MMX, SSE and 3dnow. This looks like it would be cleaner to show in HLA, but since I'm not primarily coding in asm and tend to amke loads of errors I really need decent source level debugging.
John
Hi
I'm the main developer for DScaler, which is a video processing application and uses a lot of MMX type assembler, currently we use inline aseembler and some MASM but this is pretty messy.
I'm currently in the process of a major redesign of a lot of the code and would like to make the assembler code portable to linux. In my research so far I've found that there are a few multi-platform assemblers yasm, nasm, gas. But none appear to have source level debugging under windows which is absolutely essential for me.
One thing I've looked into is using HLA, HLA looks like a good solution for me as it is cross platform and the preprocessor looks very good which will ease some elements of the conversion. At the moment I can pass -Zi down to masm and get debug symbols added to the assembler file but when I debug I can't see the original code in the masm file. I think some kind of comments in the masm file would be great, ideally I'd like something like the .cod output from C. Is this something that can be added or is this something that I'll have to wait for version 2?
Is version 2 less than 2 months away and will there be an alpha programme?
Or have I missed something and there is a much easier way to do what I want.
Thanks
John
I'm afraid you're out of luck.
HLA v2.0 keeps getting pushed off because of higher priority projects.
But even if I were working on it full-time, the time scale would probably be closer to a year rather than two months (this is a complete rewrite, mind you). Because HLA emits assembly code, it's very difficult to create a source level debugger for HLA. There are some debuggers out there that might make this possible, but I haven't looked into them.
You could use OllyDbg and get a slightly better disassembly (it disassembles into a pseudo-HLA format), but that's still a disassembly, not source.
I had thought that Gas and GDB provided source capabilities, but I've never used Gas/GDB together (just GDB+GCC) so I'm no expert there.
Cheers,
Randy Hyde
Randy
Thanks for the info. I think gas/gdb might be an option but from my brief tests I'm not ready to lose my productivity in DevStudio quite yet. I think I'm going to have to do something messy with macros and includes to get this going and maybe move to yasm,nasm when/if they get source debugging support.
btw thanks for all your great work on AoA, that's what got me started on assembler, I don't think I'd have been able to do anything without it. Good luck with v2.0 and I look forward to trying it out when it's ready.
Cheers
John
Thanks for the info. I think gas/gdb might be an option but from my brief tests I'm not ready to lose my productivity in DevStudio quite yet. I think I'm going to have to do something messy with macros and includes to get this going and maybe move to yasm,nasm when/if they get source debugging support.
btw thanks for all your great work on AoA, that's what got me started on assembler, I don't think I'd have been able to do anything without it. Good luck with v2.0 and I look forward to trying it out when it's ready.
Cheers
John