Date: Mon, 21 Apr 1997 11:15:38 +1200 From: physmsa AT cantua DOT canterbury DOT ac DOT nz (Mr M S Aitchison) Subject: ASM and compilers (was Re: Usage of directory entries To: opendos-developer AT delorie DOT com Message-id: <199704202315.LAA03292@cantua.canterbury.ac.nz> Precedence: bulk If NASM doesn't support macros etc, what about simply writing a source pre-procesor to handle all of the oddities (and cope with source control at the same time if desired)? It seems to be silly writing a new assembler, and a preprocessor is useful in its own right, as well as easy to create something whose output can feed any of the common assemblers. The same argument goes for C sources as well - rather than try to hurriedly port everything simply produce a source preprocessing program to generate C sources suitable for the main compilers, and try to get all new sources to conform to gcc. If many people will be working on bits of the code it seems sensible to retain some source control system rather than none at all, and even a simple preproceessor could cope with many of the systems out there. Even better would be a true internet solution where anybody wanting to work on a module locks the code for the duration of the edit and others can see what is being worked on and why, as well as a history of changes (in case we need to track down a bug). This is better than a "free for all" scramble for the code! I imagine a system where people could cache the source on their own system, but to generate anything other than their own personal hack have to submit a request electronically, get some token to update the file, and have the system check that their copy was the most recent at the start of the edit, submitting the updated source only after some electronic checks for validity. ------------------------------------------------------------------------------- Mark Aitchison, Physics & Astronomy \_ Phone : +64 3 3642-947 a.h. 3371-225 University of Canterbury, (/' -------------------------------------------------------------------------------