manual.html has lots of HTML errors
Brought to you by:
japheth
If you validate manual.html you will get quite a lot of HTML errors - http://validator.w3.org/
Also why do you use the obsolete HTML 3.2 instead of HTML 4.01 ?
I cleaned up many of the errors and typos but you still have an issue with your usage of FONT tags within PRE and DL blocks.
I cleaned up many of the errors and typos but you still have an issue with your usage of FONT tags within PRE and DL blocks.
I cleaned up many of the errors and typos but you still have an issue with your usage of FONT tags within PRE and DL blocks.
I'm not sure why the comment repeated 3 times, sorry about that.
I modified the sample Masm2htm.asm ( which was used to create the samples included in manual.html ). It will now emit color="#xxxxxx" instead of color=#xxxxxx.
This probably won't reduce the error count, because apparently it's illegal to have font tags in preformated text. But currently I don't want to change the program to make it emit <br> after each line.
Fixing color=#rrggbb will reduce the error count. Note there were also some bgcolor=#rrggbb which needed to be fixed.
As for the font tags, they were deprecated in HTML 4.0 in favor of CSS. CSS is a pain to use but consider that once HTML 5 is finalized and adopted by all of the major browser then obsolete HTML 3.2 stuff could conceivably be dropped.
If you want to fix the remaining errors then change <font color="#rrggbb"> </font> to <span style="color:#rrggbb"> </span> and move <p> outside of <pre> blocks. I'm uploading an updated version which only has 5 validation errors - the nested <DL> tags.
Uploaded a new version with the correct DL/DD nesting so it now fully validates.
In section 10 "Known Bugs and missing Features" it says:
- directives PAGE, TITLE, SUBTITLE, SUBTTL.
the directives are ignored and a warning (level 3) is displayed.
Should this be warning (level 4) ? MASM only supports warning levels 0-3 so I would assume that JWasm -W4 is for the ignored directives warning.
Thanks! I tested your modified manual.html.
I agree that it's good to remove the html errors - but there is a small problem with the jwasm DOS version now: since v2.08, the DOS version also contains manual.html, and the ancient DOS browser Arachne doesn't know the span-tag.
So there is the decision to either remove the html errors and worsen the manual rendering for DOS - or leave everything as it is. I'm not sure the error removal is worth it.
I seriously doubt that anyone is using the obsolete DOS web browser Arachne as it is much too old and doesn't support too many things (HTML 4.01, CSS, JavaScript, plugins, etc.) to be of any use anymore. There is nobody who isn't using a modern OS with access to a modern browser. Keep in mind that HTML 4.01 is from 1999.
You should definitely fix the errors since it is conceivable that with the recent finalizing of HTML 5 newer browsers may start to drop obsolete features like FONT.
I also doubt that Arachne is used - but this is not the point. The point is: since I supply a pre-compiled jwasm for DOS, the manual has to be read with a tool that is able to run in DOS as well. That's just a matter of professional honour.
I have PC DOS 7 on my system along with Windows and I don't expect anyone to provide HTML, PDF and Word documents which are readable under DOS. DOS is simply much too old. It pretty much ended when Win 95 came out. Only a few hobbyists use DOS now. I really think it is worse to provide a manual which doesn't meet present-day standards just to support an obsolete browser which is a bigger piece of junk than IE6.
What about all of the other HTML errors besides FONT which were fixed ?
> Only a few hobbyists use DOS now.
Well, the same could be said for assembly language. No need to teach me the status of DOS - I'm pretty well aware of it.
> which is a bigger piece of junk than IE6.
I'M not a big fan or Arachne, but I woulön't call it junk - I find the code pretty interesting.
> What about all of the other HTML errors besides FONT which were fixed ?
I'll consider carefully what can be used and what can't. This is not at all a pressing issue.
The updated manual is better but still some minor errors which can be fixed:
typos:
line 495: <DL> instead of <P>
line 848: </P> instead of <P>
line 1139: <pre > instead of <pre>
line 1541: <H2 instead of </H2>
line 4689: >: instead of >
tag nesting order:
lines 695, 706, 862, 926, 944:
</DL></font> instead of </font></DL>
line 810: <P> instead of <DD><P>
line 945-947: <DT> outside of <DL> block
should be:
<DL>
<DT> there is currently only one switch :</DT>
<DD><P>
the index in the beginning does not nest DL/DD properly, see the updated manual I sent before.
By the way you can put style on other tags so you can have stuff like:
<DL style="color:#008040">
<DD> OPTION FIELDALIGN: [1|2|4|8|16|32]
</DL>
<pre style="color:#008040">
...
</pre>
Also changed section 10 text to say "warning (level 4)" after verifying that this warning only appears when -W4 is used.
In the samples section you can use <code style="color:#rrggbb"> </code> - The CODE tag uses a fixed space font like PRE and since the samples are already within PRE blocks this will render the same and this is HTML 3.2 so even old and obsolete Arachne should handle this.
Also <TT style="color:#008040"> </TT> is used. These changes along with my earlier changes eliminates most of the SPAN blocks (only 5 are left now).
Thanks for the hints.
I fixed the typos and the other suggestions will also be implemented eventually.
Updated zip to include 1/14 updates, no longer using SPAN tags and changed DOCTYPE to HTML 4.0 instead of 4.01
HTML errors in 2/2 manual.html:
line 1: old DOCTYPE, need to use at least 4.0 when using the style attribute
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 FINAL//EN">
line 1251: </H1> at end of line instead of </H2>
<H2 ID="OUTPUTFORMATCOFF"> 6.1 32-Bit COFF Output Format </H2>
line 1258: extra </b>
<LI>the <b>GROUP</b> directive</LI>
line 1287: missing </A>
<A NAME="WIN64SEH"></A>
The remaining errors involve incorrect nesting of DL/DD in the index at the beginning of the file, using <P> within <PRE> blocks and the use of the obsolete <FONT> tag. Your samples generator should output lines with <code style="color:#rrggbb"> ... </code>
Sorry the HTML 4.0 DOCTYPE should be: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Also constructs like:
<P><pre><font color="#008040">
...
<P></font></pre>
can be replaced with:
<P><pre style="color:#008040">
...
</pre>
<P>
Basically you can put a style attribute on PRE and not need the FONT tag.
The 13 occurrences of the following construct:
<P></font></pre>
should be replaced with:
</font></pre><P>
<P> should not be within a <pre> block, you fixed some of them but missed others. The remaining occurrences are on lines: 1094, 1106, 1115, 1125, 1133, 1141, 1151, 1168, 1207, 1316, 1335, 1488, 4149
2 occurrences of the following construct (lines 963 and 968):
<P></font>
should be replaced with:
</font><P>
<P> also should not be within a <font> block.
Since you are already using <DL style="color:#008040"> ... </DL> in several places you should replace the 23 occurrences of the following construct:
<pre><font color="#008040"> ... </font></pre>
with:
<pre style="color:#008040"> ... </pre>
That would further reduce the number of errors due to <font> tags within <pre> blocks. Only the samples in Appendix B would still have a problem.