Haven't Asm'd since the 6502 days so please bear with me. I was wondering why the EXEs generated by HLA/MASM are noteably higher then similar applications written using MASM directly. Is there anyway to reduce this.

Randy,
In one of your other threads somewhere on Usenet, I noticed that you HLA has been designed as a teching tool. You mentioned that you expect that once your students learn ASM through HLA they will most likely move on to codeing directly with one of the other Assemblers. Have you noticed this to be true and is there any real benefits for doing so?

Thank you,
Charlie
Posted on 2003-05-27 05:31:50 by C. Wardell

Haven't Asm'd since the 6502 days so please bear with me. I was wondering why the EXEs generated by HLA/MASM are noteably higher then similar applications written using MASM directly. Is there anyway to reduce this.


Most likely, you're including "stdlib.hhf" in your files, which includes the full exception handling system, including a couple dozen English text messages that display whenever an exception fires. You can tell HLA to use a single, generic, message for all the exceptions by placing the following statement after the #include statement:

?@exceptions := false;

Though this reduces the amount of code that HLA generates, the EXE files will still be large because HLA uses the (more efficient, speed-wise) scheme of allocating a full 4K disk block/memory page for each section in the program (there are typically three or four sections).
If you want to find out more about controlling the output, check out this link:

http://webster.cs.ucr.edu/Page_hla/WhitePapers/DoingUnits.html



Randy,
In one of your other threads somewhere on Usenet, I noticed that you HLA has been designed as a teching tool. You mentioned that you expect that once your students learn ASM through HLA they will most likely move on to codeing directly with one of the other Assemblers. Have you noticed this to be true and is there any real benefits for doing so?

Thank you,
Charlie


I don't so much expect students to switch to another assembler as much as I assure them that if they have to, doing so isn't a big deal. The truth is, HLA is quite a bit more powerful than most other assemblers so someone who really masters HLA is going to notice a big step down in power when they switch elsewhere. However, no single assembler is going to provide a single solution, so it's nice to know that if you learn assembly programming with HLA that switching to another assembler isn't *that* much work.

HLA has an advantage that it generates source code for MASM, TASM, FASM, and Gas from the HLA source, making it easier to translate HLA code to some other assembler (rather than coming in the opposite direction) -- yet another good reason to learn HLA, it's a bit more universal in this sense.
Cheers,
Randy Hyde
Posted on 2003-05-27 12:16:45 by rhyde