home *** CD-ROM | disk | FTP | other *** search
- **** New mg2a port for ATARI and MINT ****
- **** Kees Lemmens; April 1993 ****
-
- MG_MINT.TTP
- -----------
-
- This is a complete (and working) version of MG especially for ATARI and MINT,
- which is based on the BSD-UNIX (SUN) sources.
-
- Features :
- - Dired : works well. opens a pipe to the \bin\ls command, so this must be on
- your system. For filecopy it relies on \bin\cp.ttp so if you want to use this
- it must be on your system as well.
-
- - Termcap : It has termcap handling, so you can use it on every terminal you
- use to login on your ATARI. (I also use it over a modemline !)
- It looks for environment variable TERM and uses this to look in \etc\termcap.
- If either TERM or \etc\termcap is not found, it assumes vt52 handling.
-
- - It can do all the regular expressions, just as the original code on SUN.
- To do this I fixed a few bugs in the regex handling, mainly in the string
- functions.
-
- - It first looks for a startupfile specified in environment variable MGINIT and
- if this is not found for a file in the directory HOME with the name "mg.ini".
-
- - It can use different sizes of terminals. It also looks for env. vars LINES
- and COLUMNS (which is a SYS V feature !) to override the original settings
- as defined in TERMCAP.
-
- - Also runs on a normal ATARI, although then several features like subshells
- and dired won't work.
-
- - It makes backupfiles by changing the last character of a file or file exten-
- sion into ~. This was necessary to deal with the stupid MSDOS-like filesystem.
-
- - It can do the prefix-region command.
-
- - The ATARI cursor keys are already defined in the code, so you don't need a
- startupfile to define these.
-
- - The apropos command works well, also if you just supply a <RET> as subject.
- Previous releases of mg often crashed if you tried to do this.
-
- - You can use \ and / in directory paths: both are recognised as regular
- filenames.
-
- - You can use ~username or ~ for your own homedirectory, but then it is neces-
- sary to have an \etc\passwd file on your system. In the case of ~ there must
- be an environment variable HOME.
-
- - Ctrl-Z starts a new shell (as defined in SHELL) if SHLVL doesn't exist or
- equals 0.
- Otherwise mg sends itself a STOP signal, so you wil be temporarily returned
- to the cal.ling shell. The default shell is \bin\MINTSHEL.TPP
-
-
- Bugfixes compared with the original (BSD) release:
-
-
- - The sizeof operator is now redefined to supply always an INT. This was neces-
- sary because many systems return a LONG value nowadays and especially the
- variable argumentlists would be completely corrupt if this would happen.
- This is because these functions always expect INT if a sizeof is being passed.
-
- - Regex code uses a 0 value to pass an empty string. This causes bus errors on
- many computersystems, so I changed these into dummy pointers.
-
- - A strlen of a NULL pointer also causes buserrors. This is why I added a new
- function "nstrlen", which first checks to see if the string is not a NULL
- pointer before passing it to strlen. This was the main problem in the
- apropos command.
-
- - The variable argumentlist syntax wasn't correct on the TURBO C compiler, so
- I completely rewrote echo.c.
-
- - include files stdio.h , stdlib.h and string.h are now always included to
- avoid syntax conflicts.
- Especially malloc caused problems as it is defined on many ANSI systems as
- void * malloc() and not as char * malloc() .
-
- - prefix was defined as a pointer to a function, so if we wanted to use the
- prefix-region code this caused conflicts.
- Fixed by undefining this macro locally.
-
- MG_ST.TTP
- ---------
-
- - This is functionally identical to MG_MINT.TTP, but it uses the normal screen
- handling and no termcap. This is why it only runs on the ATARI console and not
- on other (remote) terminals. However it works in a ST52 window as opened by
- TOSWIN.
- Screen handling is faster than MG_MINT (especially on vt52) , but is not
- portable.
-
- - Dired uses internal functions for copy and ls, so it doesn't need externals.
- The original bug in dired is fixed, so it is fully functional now.
-
- - It starts a subshell if the variable SHELL is defined. If not, it is not
- possible to start a shell.
-
- - Regular expressions work now, just as good in the MINT or SUN) version.
-
- - Cursor keys are predefined in the code, so the cursor keys will work now
- without defining them in mg.ini.
- Also the HELP key is predefined.
-
-
- Bugfixes compared with the original code :
-
-
- - Many problems mentioned above also apply to the MG_ST version.
-
- - There was a bug in the dired code : the attributes were not interpreted cor-
- rectly so it was impossible to open a normal file from within a dired window.
-
-
-
- -------------
-
- If you have any questions or if you want the MINT sources, you can send mail
- or Email to :
-
- Kees Lemmens,
- Fac. Technical Maths and Informatics.
- Group Applied Analysis,
- Delft University of Technology.
- Mekelweg 4; Delft,
- The Netherlands.
-
- Email : lemmens@dv.twi.tudelft.nl
-
- Files in this archive :
-
- MG_MINT.TTP
- MG_ST.TTP
- MG_MINT.INI (define MGINIT or rename to mg.ini)
- MG_ST.INI (same)
- README.ST
-
-