NASM version 2.09 available | A86 (Announce)
Firstly I don't want to get into this is better than that type of discussions particularly as I'm not a fan of any particular tool; I use what is to hand.
Still just for fun I thought I would do a quick compare using your example:
> label:
LABEL is reserved word in MASM, A86, TASM? So A86 will only compiles your program if LABEL is fixed, e.g. LABEL1. The next issue is the line length is then calculated wrong-only because A86 doesn't understand the syntax you used.
However this slightly altered version compiles fine with both A86 and NASM:
org 100h
label1:
mov dx, message
mov cx, message_end - message
mov bx, 1
mov ah, 40h
int 21h
jmp short .locallabel
; The jump isn't required of course.
.locallabel:
mov ax, 4C00h
int 21h
message:
db "Now tell me this is complex syntax.",13,10
message_end:
The above version compiles to 57 bytes with both compilers (binary match).
IMHO this is a more readable version which compiles with both (note I a recent NASM version) and is 52 bytes (binary match):
org 100h
displaymsg:
mov dx, message
mov ah, 9h
int 21h
mov ax, 4C00h
int 21h
message:
db "Now tell me this isn't more readable!",13,10,"$"
> I don't doubt that you can write simple programs in A86 easily,
> but so can I in NASM.
I think it is important to remember you can write complex programs in pretty much anything. Obviously most of the time it makes sense to do things the easy way if easier tools exist. There are times/people who like to do things the complex way as well though. Depending on what I'm doing I can be either!
> The difference is that NASM is better at complex programs while
> still allowing the simple syntax for simple stuff.
FYI, I have used A386 (A86's brother) to write Win32 stuff quite happily. I can't compare NASM in that regards as to be honest I've not used it for Win32.
> Int21.09 but I don't like it that much.)
Any particular reason?
> I would think running on as low as an 8086 is related to it being available
> for that long too.
Well run ability shouldn't always be assumed particularly as some boxes, e.g. CPM/bespoke systems don't boot in full IBM modes or don't have them. The typewriter I mentioned for example uses a 40x3 LCD screen which operates using A000h all the time including text modes. Obviously not easy to use ;)
> Like all I've written by now, this points to A86 being outdated.
Fully agree, thus NASM is a good choice now. Still for those of us with A86 and A86 formatted code/libraries be aware we may occasionally still use it.
Complete thread:
- NASM version 2.09 available - rr, 25.08.2010, 13:27 (Announce)
- NASM version 2.09 available - DOS386, 26.08.2010, 09:10
- NASM version 2.09 available - ecm, 26.08.2010, 20:10
- NASM version 2.09 available - DOS386, 27.08.2010, 03:16
- NASM version 2.09 available - marcov, 27.08.2010, 17:10
- NASM version 2.09 available - Rugxulo, 28.08.2010, 04:53
- NASM version 2.09 available - ecm, 30.08.2010, 21:40
- NASM version 2.09 available - Rugxulo, 03.09.2010, 05:51
- NASM version 2.09 available - Arjay, 03.09.2010, 13:14
- NASM version 2.09 available - ecm, 03.09.2010, 14:40
- NASM version 2.09 available | 8086 is COOOOL - DOS386, 06.09.2010, 20:06
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 06.09.2010, 22:27
- NASM version 2.09 available | 8086 is COOOOL - DOS386, 06.09.2010, 22:37
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 18:19
- NASM version 2.09 available | 8086 is COOOOL - ecm, 07.09.2010, 18:53
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 18:19
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 07:33
- NASM version 2.09 available | 8086 is COOOOL - ecm, 07.09.2010, 16:22
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 07.09.2010, 16:59
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 18:04
- NASM version 2.09 available | A86 - ecm, 07.09.2010, 19:15
- NASM version 2.09 available | A86 - Arjay, 07.09.2010, 19:58
- NASM version 2.09 available | A86 - ecm, 07.09.2010, 22:42
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - DOS386, 08.09.2010, 01:05
- FASM and OMF - Japheth, 08.09.2010, 09:26
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - DOS386, 08.09.2010, 19:40
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - ecm, 08.09.2010, 19:45
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - DOS386, 08.09.2010, 19:53
- FASM is copylefted - ecm, 08.09.2010, 20:02
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - DOS386, 08.09.2010, 19:53
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - ecm, 08.09.2010, 19:45
- 16-bit DOS COBOL, 16-bit DOS PASCAL, 16-bit DOS C, 16-bit - DOS386, 08.09.2010, 19:40
- NASM - FASM - ecm, 08.09.2010, 15:09
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - Arjay, 08.09.2010, 22:12
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - DOS386, 11.09.2010, 01:23
- NASM - FASM license - ecm, 11.09.2010, 01:53
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - Arjay, 13.09.2010, 13:31
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - DOS386, 11.09.2010, 01:23
- FASM and OMF - Japheth, 08.09.2010, 09:26
- NASM 2.09 available | A86 | FASM | Arjay's 8086+80386 PC's - DOS386, 08.09.2010, 01:05
- NASM version 2.09 available | A86 - ecm, 07.09.2010, 22:42
- NASM version 2.09 available | A86 - Rugxulo, 08.09.2010, 06:56
- NASM version 2.09 available | A86 - Arjay, 07.09.2010, 19:58
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 08.09.2010, 06:28
- NASM version 2.09 available | A86 - ecm, 07.09.2010, 19:15
- NASM version 2.09 available | A86 and kernels - ecm, 07.09.2010, 18:42
- NASM version 2.09 available | A86 and kernels - Rugxulo, 08.09.2010, 06:49
- NASM version 2.09 available | A86 and kernels - ecm, 08.09.2010, 20:30
- NASM version 2.09 available | A86 and kernels - ecm, 11.09.2010, 12:27
- Debian/OW ... FASM - Rugxulo, 11.09.2010, 23:44
- Debian/OW ... FASM - ecm, 12.09.2010, 02:40
- Debian/OW ... FASM - Rugxulo, 12.09.2010, 04:18
- Debian/OW ... FASM - ecm, 12.09.2010, 14:29
- FASM's license - Rugxulo, 12.09.2010, 22:18
- FASM's license - ecm, 12.09.2010, 23:12
- FASM's license - Rugxulo, 13.09.2010, 01:49
- FASM's license - ecm, 13.09.2010, 14:13
- FASM's license - Rugxulo, 13.09.2010, 22:27
- FASM's license - ecm, 14.09.2010, 15:50
- FASM's license - Rugxulo, 15.09.2010, 23:29
- FASM's license - ecm, 16.09.2010, 00:03
- code density - Rugxulo, 16.09.2010, 21:10
- code density - ecm, 17.09.2010, 14:15
- code density - Rugxulo, 17.09.2010, 23:06
- code density - ecm, 18.09.2010, 02:18
- code density - Rugxulo, 19.09.2010, 20:23
- code density - ecm, 19.09.2010, 20:27
- this messy thread - DOS386, 13.10.2010, 04:17
- this messy thread - Rugxulo, 13.10.2010, 04:50
- this messy thread - ecm, 14.10.2010, 13:01
- this messy thread - Rugxulo, 13.10.2010, 04:50
- this messy thread - DOS386, 13.10.2010, 04:17
- code density - ecm, 19.09.2010, 20:27
- code density - Rugxulo, 19.09.2010, 20:23
- code density - ecm, 18.09.2010, 02:18
- code density - Rugxulo, 17.09.2010, 23:06
- code density - ecm, 17.09.2010, 14:15
- code density - Rugxulo, 16.09.2010, 21:10
- FASM's license - ecm, 16.09.2010, 00:03
- FASM's license - Rugxulo, 15.09.2010, 23:29
- FASM's license - ecm, 14.09.2010, 15:50
- FASM's license - Rugxulo, 13.09.2010, 22:27
- FASM's license - ecm, 13.09.2010, 14:13
- FASM's license - Rugxulo, 13.09.2010, 01:49
- FASM's license - ecm, 12.09.2010, 23:12
- FASM's license - Rugxulo, 12.09.2010, 22:18
- Debian/OW ... FASM - ecm, 12.09.2010, 14:29
- Debian/OW ... FASM - Rugxulo, 12.09.2010, 04:18
- Debian/OW ... FASM - ecm, 12.09.2010, 02:40
- Debian/OW ... FASM - Rugxulo, 11.09.2010, 23:44
- NASM version 2.09 available | A86 and kernels - Rugxulo, 08.09.2010, 06:49
- NASM version 2.09 available | 8086 is COOOOL - tom, 07.09.2010, 19:58
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 08.09.2010, 06:58
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 18:04
- 8086 is fairly useless - tom, 07.09.2010, 19:47
- 8086 is fairly useless - ecm, 07.09.2010, 19:55
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 07.09.2010, 16:59
- NASM version 2.09 available | 8086 is COOOOL - DOS386, 06.09.2010, 22:37
- NASM version 2.09 available | 8086 is COOOOL - Arjay, 07.09.2010, 07:26
- NASM version 2.09 available | NASM manual - ecm, 07.09.2010, 16:30
- NASM version 2.09 available | 8086 is COOOOL - Rugxulo, 06.09.2010, 22:27
- NASM version 2.09 available - Rugxulo, 13.10.2010, 06:15
- NASM version 2.09 available | 8086 is COOOOL - DOS386, 06.09.2010, 20:06
- NASM version 2.09 available - Rugxulo, 03.09.2010, 05:51
- NASM version 2.09 available - ecm, 30.08.2010, 21:40
- NASM version 2.09 available - Rugxulo, 28.08.2010, 04:53
- 8086-NASM - Japheth, 14.09.2010, 15:04
- 8086-JWASM - ecm, 14.09.2010, 15:33
- NASM version 2.09 available - ecm, 26.08.2010, 20:10
- NASM version 2.09 available - DOS386, 26.08.2010, 09:10