M
Es ist zwar möglich mit TASM Win32Asm Programme zu schreiben, aber meiner Meinung nach nicht sehr empfehlenswert.
Dazu folgende Gründe:
- MASM stellt eine Direktive zur Verfügung (INVOKE), die die Parameter überprüft. Dadurch ist gewährleistet, dass du einer Funktion immer die richtige Anzahl an Parameter übergibst. In TASM werden einfach CALLs benutzt und die Parameter entweder auf dem Stack abgelegt oder mit Kommata getrennt, hinter die Funktion übergeben und es findet KEINE Parameterüberprüfung statt.
Ich habe vorher auch nur mit TASM programmiert und wollte den auch beibehalten, aber die Anzahl der Fehler, die sich durch die INVOKE-Direktive reduzieren ist enorm.
- TASM hat nur zwei Include-Dateien (ich glaub es waren nur 2), in denen Konstanten, etc. definiert sind. Und das sind bei weitem nicht alle. Bei MASM hingegen, gibt es unzählige Include-Dateien, die immer noch erweitert und gepflegt werden.
- Da Windowsprogrammierung mit Assembler nicht allzu verbreitet ist, gibt es nicht allzu viele Ressourcen (im Gegensatz zu C, Delphi, etc.). Die meisten dieser Quellen benutzen allerdings MASM.
Ich würde dir also empfehlen, sich das MASM32-Package zu besorgen (gibt es legal und kostenlos im Netz) und für die Windows-Programmierung MASM zu verwenden. Die Unterschiede zwischen MASM und TASM sind bei der DOS-Programmierung minimal und zu vernachlässigen.
Ich für meinen Teil benutze TASM immer noch, wenn ich irgendwas unter DOS mache und MASM, wenn es ein Windows-Programm werden soll.
Ich hoffe, damit konnte ich weiterhelfen (ansonsten noch mal fragen).
Kleiner Tipp am Rande noch: http://board.win32asmcommunity.net/ <- sehr gutes (englisches) Board nur für Win32Asm.