From 333b605b2afd472b823aeda0adf0e8b1ea9843c0 Mon Sep 17 00:00:00 2001 From: fishsoupisgood Date: Mon, 27 May 2019 02:41:51 +0100 Subject: initial commit from asl-1.41r8.tar.gz --- README | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 README (limited to 'README') diff --git a/README b/README new file mode 100644 index 0000000..3656479 --- /dev/null +++ b/README @@ -0,0 +1,98 @@ +Hello, AS-Users, + +OK, here it is, the C-Version of AS that is theoretically compilable +on any system that has an ANSI-C-compiler! After a couple of +optimizations, the performance degradations due to the way C handles +strings have been compensated, so the C version should effectively run +a bit faster than the original Pascal version. + +LICENSING + +Those who have already used the original DOS/Pascal version of AS +will know that AS is completely free: you may use and modify AS for +whatever purpose you like (regardless whether it is commercial or +not), given that you do not remove my copyright from the sources and +that programs that build upon the AS sources are given out under the +same license terms. Of course, if you add something significant, +you may also add your own name to the copyright list! + +To make things a bit more interesting (for me), I have added a detail +to the license terms of the C version: it is wineware! If you want +and have time, you may send me a bottle of your favourite wine... + + +PLATFORMS + +The C version of AS was designed primarily to work with a Unix-like system +with an ANSI-C compilant compiler. Specifically, I have tested this version +of AS on the following machines: + +- Digital Unix 3.2/4.0 with DEC-C +- Digital Ultrix for Mips 4.3/4.5 with gcc 2.7.2 +- Digital Ultrix for VAX 4.1/4.5 with gcc 2.7.2 +- Linux/Alpha with gcc 2.7.2 +- Linux/Intel with gcc 2.7.2 +- HP9000/7xx HP-UX 9.0/10.0 with HP-C +- MS-DOS with Borland-C 3.1 resp. 4.5 +- OS/2 with emx 0.9 +- Munix V.3 with cc +- NetBSD/Sun3 with gcc 2.7.2 +- NetBSD/pmax with gcc 2.7.2 +- SGI Irix 5.3/6.2 with SGI-C +- SunOS 4.1.3/Sparc with gcc 2.6.3 or cc +- Solaris 2.5/Sparc with Sun-C 3.0.1 +- IBM RS/6000 AIX 4.1 with IBM XLC + +DIFFERENCES / THINGS TO DO + +The portable C version of AS has the following, known differences to +the original BP version: + +- Floating point values are internally only stored as IEEE double + precision values, not in the 80-bit format Intel NPUs use. + Therefore, floating point ranges and accuracy are not as good as in + the BP version. Currently, there seems to be no portable, + standardized 128-bit-format for FP numbers. Every vendor (IBM, + SUN, CRAY, SGI...) uses his own format, so supporting them all + looks like a lot of work... + ++ On most systems, integer arithmetic is done with 64-bit-numbers. + This should hurt only programs that explicitly exploit overflow + and sign effects on 32-bit-versions of AS. + +- String variables must not contain NUL characters. This is due to + the fact that C uses the NUL character as an end-of-string marker, + and is probably the hardest thing to resolve :-( + +~ most UNIX systems name their own assembler already 'as', so I had + to modify the name to 'asl'. The additional letter is to the honor + of a person that did quite a lot to spread the UNIX philosophy ;-) + I also had to rename 'bind' to 'pbind', but I guess that this won't + matter too much as it is a rarely used tool. + +- the C version was designed to have exactly the same command line + interface as the original BP version; however, UNIX shells + interprete some special characters like the dollar sign for hex + values in their own way, so you might have to work with escape (\) + and quote characters. + ++ the USEXMS resp. USEEMS and ASXSWAP environment variables do not + exist for Unix platforms (thankfully). + +- the AS2MSG filter does not exist (wouldn't make sense because there + is no Borland Pascal for Unix.) + ++ This version now contains dynamic switching of program messages, i.e. + you do not have to compile AS any more for a specific language. Instead, + AS will test the LC_MESSAGES, LC_ALL, or LANG environment variables + on Unix resp. the COUNTRY settings on OS/2 and MSDOS to dynamically + load the correct set of messages at runtime. + + +INSTALLATION + +See the file 'INSTALL' + +FEEDBACK + +In case of problems or questions, send them to alfred@ccac.rwth-aachen.de . -- cgit v1.2.3