	MicroEMACS version 3.11 	Release Notes

			31-Oct-91

------------------------------------------------------------------------

	(C)Copyright 1988, 1989, 1990, 1991 by Daniel M. Lawrence
	MicroEMACS 3.11 can be copied and distributed freely for any
	non-commercial purposes. Commercial users may use MicroEMACS
	3.11 inhouse. Shareware distributors may redistribute
	MicroEMACS 3.11 for media costs only. MicroEMACS 3.11 can only
	be incorporated into commercial software or resold with the
	permission of the current author.

------------------------------------------------------------------------

	MicroEMACS 3.11 is available in a couple of different ways. 
First, it is available via my bulletin board system..... 

	The Programmer's Room
	FIDO 201/10
	(317) 742-5533
	24 hours  300/1200/2400 baud

	There it is arranged as five MSDOS .ARC (SEA format) files,
UE311DOC.ARC which contains the documentation files, UE311C.ARC which
contains the C sources, UE311H.ARC which contains the header files and
assembly sources, UE311MAK.ARC which contains various files to help
make EMACS, and UE311CMD.ARC which contains startup and command files. 
All the various executables are available individually.

UE311DOC.ARC includes the files:

	READ.ME		This file
	EMACS.MSS	Final Word II source of USER'S/REFERENCE MANUAL

UE311MAK.ARC includes the files:

	All of these files will need to be examined to set proper
	directories and options for your individual system and setup.

	MAKE150		HP150 Turbo C makefile
	MAKEAMIG	Commodore AMIGA AZTEC makefile
	MAKEANSI	IBM-PC Turbo-C ANSI version makefile
	MAKEDGEN	Data General UNIX makefile
	MAKEFMR		Fugitsu MSDOS MicroSoft C makefile
	MAKEGCC		Unix GCC makefile
	MAKEM5		IBM-PC MicroSoft version 5 makefile
	MAKEM6		IBM-PC MicroSoft version 5 makefile
	MAKENEC		NEC-9800 series MSDOS MicroSoft C makefile
	MAKEOS2		OS/2 MicroSoft C makefile
	MAKETC		IBM-PC DOS Turbo C makefile
	MAKETCPP	IBM-PC DOS Turbo C++ makefile
	MAKEUNIX	General UNIX makefile
	MAKEXENX	XENIX makefile
	MAKEZOR		IBM-PC Zortech C makefile

	cmdfix.lnk	Link file for CMDFIX.EXE under MSDOS/Turbo C
	emacs.lnk	Link file for CMDFIX.EXE under MSDOS/Turbo C

UE311CMD.ARC includes the files:

	BPAGE.CMD	Block and box manipulation page
	BUFDEL.CMD	Select and delete multiple buffers
	CAL1.CMD	Single month calender
	CAL3.CMD	Three month calander
	CALUTIL.CMD	Calander utility procedures
	CPAGE.CMD	C language page
	EDT.CMD		DEC EDT emulator
	EHELP.CMD	Online help system macro functions
	EHELP1.TXT	Text for online help system (part 1)
	EHELP2.TXT	Text for online help system (part 2)
	EMACS.RC	Standard startup file
	ENCODE.CMD	Demonstration of the &xlate function
	EPAGE.CMD	Emacs macro debugging page
	ERROR.CMD	Mark Williams C error parsing file
	FUNC.CMD	Allow function keys on systems with none (like UNIX)
	IWRAP.CMD	Indented wrapping procedure
	LPAGE.CMD	Lisp language mode
	NEWPAGE.CMD	Shifted Function key Pager
	OPAGE.CMD	Cobol Language page (not finished)
	PLATIN.CMD	Procedures for Pig Latin translations
	POS.CMD		Display current line and column constantly
	PPAGE.CMD	Pascal language page
	SCAN.CMD	Spell check scanner for MicroSPELL 2.0
	SENTENCE.CMD	Sentence operations
	SHELL.CMD	Sample interactive MSDOS shell
	SMOOTH.CMD	smooth scrolling control macro
	TABLE.CMD	Creates a table of bound function keys
	WPAGE.CMD	Word processing page

UE311H.ARC includes the files:

	DUTCH.H		DUTCH text header file
	EBIND.H		binding list
	EDEF.H		global variable declarations
	EFUNC.H		function name list
	ELANG.H		Text header control file
	ENGLISH.H	ENGLISH text header file
	EPATH.H		default path settings
	EPROTO.H	C language prototypes for MicroEMACS functions
	ESTRUCT.H	configuration and structure definitions
	EVAR.H		EMACS macro variable declarations
	FRENCH.H	FRENCH text header file
	GERMAN.H	GERMAN text header file
	JAPAN.H		JAPANESE text header file
	LATIN.H		LATIN text header file
	PLATIN.H	PIG LATIN text header file
	SPANISH.H	SPANISH text header file

UE311C.ARC includes the files:

	AMIGADOS.C	Amiga system I/O functions
	ANSI.C		ANSI screen driver
	AOSVS.C		Data General Mainframe driver
	BASIC.C		basic cursor movement
	BIND.C		key binding commands
	BUFFER.C	buffer manipulation commands
	CHAR.C		character set mapping and manipulation functions
	CMDFIX.C	old to new .CMD file translation program
	CRYPT.C		encryption functions
	DG10.C		Data General 10 screen driver
	DISPLAY.C	main display driver
	DOLOCK.C	file locking stub routines
	EVAL.C		expression evaluator
	EXEC.C		macro execution functions
	EXECPR.ASM	MSDOS execute function
	FILE.C		user file functions
	FILEIO.C	low level file I/O driver
	FMR.C		Fujitsu FMR terminal driver
	FMRDOS.C	Fujitsu FMR OS functions
	HISTORY.C	MicroEMACS edit history
	HP110.C		HP110 screen driver
	HP150.C		HP150(A or C) screen driver
	IBMPC.C		IBM-PC CGA and MONOCHROME driver
	INPUT.C		low level user input driver
	ISEARCH.C	incremental search functions
	KEYBOARD.C	extended keyboard code(MSDOS only)
	LINE.C		text line manipulation functions
	LOCK.C		file locking functions
	MAIN.C		argument parsing and command loop
	ME.C		VMS optional main file
	MOUSE.C		mouse handling user level functions
	MPE.C		HP3000 MPE terminal driver/OS functions
	MSDOS.C		MS/PCDOS I/O functions
	NEC.C		NEC 9800 series terminal driver
	NECDOS.C	NEC 9800 series OS functions
	OS2.C		OS/2 functions
	OS2NPM.C	OS/2 non-presentation manager terminal driver
	RANDOM.C	other random user functions
	REGION.C	region cut & paste functions
	SCREEN.C	screen management functions
	SEARCH.C	search and replace functions
	SMG.C		DEC VMS terminal driver/OS functions
	ST52.C		Atari 520/1040ST screen driver
	STMOUSE.S	ATARI ST1040 assemble code
	TAGS.C		TAG lookup functions
	TCAP.C		Termcap screen driver
	TIPC.C		TI-PC screen driver
	TOS.C		ATARI ST1040 TOS driver
	UNIX.C		UNIX I/O functions
	VMS.C		DEC VMS terminal driver/OS functions
	VT52.C		VT52 screen driver
	WINDOW.C	window manipulation functions
	WMCS.C		WICAT system I/O functions
	WORD.C		word manipulation functions
	Z309.C		Zenith 100 PC series terminal driver

Various Executables available include:

	CMDFIX.EXE	Fixes old command files (MSDOS)
	ME110.EXE	HP110 portable version
	ME150.EXE	HP150 version
	ME520.PRG	Atari 520/1040ST version
	MEAMIGA.	Amiga 500/1000/2000 version
	MEANSI.EXE	MSDOS ANSI graphics version
	MEDG10.EXE	Data General 10 PC version
	MEIBM.EXE	IBM-PC CGA/MONO/EGA/VGA version
	METIPC.EXE	TI Professional version
	MEZ309.EXE	Zenith 100 PC series version

	MicroSPELL 2.0 is also available.  This version is the first
major update released in several years. These program allows you to
spell check text files and use MicroEMACS to scan the file, making
suggestions and doing various corrections.

	As before, I will continue to support these programs, and
encourage everyone to spread them around as much as they can. If you
make what you think are changes that are useful to many, send me the
updates, and as time permits, I will incorporate the ones I understand,
and agree with into the master sources.

	MicroEMACS is available on disk directly from my by sending me
$25 per order and a note specifying the disk format and the product
that you need.  I can fill orders for IBM-PC high/low density 5 1/4 and
3 1/5, ATARI ST single and double density, and AMIGA disks. (You do not
need to send disks or mailers, I will provide these.)  The distribution
set includes on disk all docs, executables and sources.  Also I will
register you and you will receive automatic notices of new versions of
all the programs I am releasing.

	Commercial licences to allow MicroEMACS to be incorporated into
other software packages are also available at a reasonable per package
price. Also I am available to do customization of MicroEMACS at an
hourly rate. Send all requests to the address below:

	USmail:	Daniel Lawrence
		617 New York St
		Lafayette, IN 47901

	ARPA:	mdbs!dan@ee.ecn.purdue.edu
	FIDO:	The Programmer's Room 201/10
		(317) 742-5533
	Voice:	(317) 742-5153 evenings and weekends

		IMPORTANT NOTE
		==============

	On the Atari ST, be sure that MicroEMACS is installed as a GEM
application from the GEM desktop.  If this is not done, MicroEMACS will
grow confused about the state of the mouse, and ring the bell alot to
alert the user to the problem.  (Mouse handling on the Atari is both
complex and triple layered....).

		New Features since version 3.10
		--------------------------------

***	New Help System

	A much more interesting and usefull help system is called by
striking F6 when the standard command files are installed.

***	New Windowing system

	The ability to use multiple screens and manipulate the with the
mouse is active in all versions which we can gain access to the mouse.
Read the chapter on Using a Mouse in the reference guide, or look up the
same in the help system for more information.

	New commands:

	  cycle-screens		(A-C) bring rearmost screen to front
	  find-screen		(A-F) switch or create a named screen
	  delete-screen		(A-D) delete the named screen
	  list-screens		(A-B) how list of screens

	New variable:

	  $scrname		name of the current screen

	This mechinism will eventually evolve into separate editing
windows under graphics based user interfaces like Windows 3.0, X-Windows
and OS/2 Presentation Manager.

***	Default command files updated and improved

	The default commands files attempt to take advantage of more new
features, and interact better with the mouse. Clicking on an option
should usually activate it. These files should prove good examples of
MicroEMACS procedure code.

***	Portable File Locking

	If you enable file locking, emacs will warn you when someone
else is already editing the file you want to read in. This even works on
files across networks to other PCs and UNIX systems. To make this work
best, be sure to set your USER environment variable to your account name
and your HOST environment variable to the name of the machine you are
on. (These will be read automatically under most UNIXs).

***	Yet more machines supported

	MicroEMACS is now supported on the NEC 9801, the Fujitsu FMR
series and in the IBM 5550, which is the japanese version of the IBM-PC.
These machines do not all support multiple background colors yet. But
they do support the use and editing of roman, hirigana, katakana and
Kanji (double byte) characters. 

***	Yes, more systems

	Bravely, Curtis Smith gives us support for the HP3000 series
computers running MPE. I am in shock. (This machine does not even have a
heirachial file system).

***	New Languages

	Ok, just new to MicroEMACS..... We now support Latin (yes a dead
language) and Japanese. Japanese only displays properly on Japanese
hardware which supports KANJI JIS display codes.

***	Change Line terminators on output

	Many people are using MicroEMACS on networks, allowing access
to drives on different systems. The $lterm variable tells emacs what line
terminators to use when writting files. If you are writting a file to a
UNIX file system:

	set $lterm &chr 10

or to a MSDOS file system

	set $lterm &cat &chr 13 &chr 10

	MicroEMACS will default to the line terminators native to the
system MicroEMACS was run under.

***	Reads unusual line terminators properly

	Files with line terminators from foriegn file systems will
usuallt be read properly when loading the file into emacs.

***	Long lines are faster

	A new algorith used when reading fles with very long lines makes
this operation much faster then it was.

***	Replace Mode

	Is similar to overwrite mode, except characters occupying more
than one screen space are replaced with a single character. This effects
replacing tabs and DBCS Double Byte characters (Kanji).

***	File locks not checked in VIEW mode

	If a file is read in view mode (using the view-file command, or
-v from the command line) emacs does not attempt a file lock on it.

***	Word characters customization

	By default, emacs considers all letters, numbers and the
underscore character as characters in a word. The $wchars variable can
be set to all characters you wish emacs to consider as part of a word.

***	Temporary windows can now pop up

	By default, temporary windows (buffer lists, variable and
function lists, etc) now temporarily pop up, and are cleared by the
space bar, or by any command. The space bar will be ignored, but any
other keypress will be executed. The $popflag variable can be set to
FALSE to cause emacs to use the old split-window style. The pop-buffer
command allows the user to display a pop-up window as well.

***	File name completion

	is now functional under OS/2

***	New Magic Mode characters

	'+' signifies "one to many" and '?' means zero to one of the
previous pattern.

***	$yankflag variable

	if set to true tells emacs to leave the point at the begining of
a region just yanked instead of the end.

***	Clearing replacement strings

	If you are doing a replace-string (M-R) and want to replace the
choosen string with an empty string, striking ^K at the replace string
prompt will clear out the default string and execute the replace with a
blank string.

***	Indentation is now easier

	Due to great public demand, indenting and undenting are now
built in commands.

	indent-region	M-)	indents the current region
	undent-region	M-(	removes an indent from the current region

***	New test function

	&ISNum allows you to test a string to see if it is numeric in
nature. Both positive, negative integers and real numbers will return
TRUE when fed to this function.

***	New window variables

	$curwind and $numwind to give the current ordinal and total
number of windows on the current screen.

***	Groups!

	Replacement of groups is now allowed during replace commands when
in MAGIC mode. Check the help information on MAGIC mode for details. The
&GROUP function allows retrieval of the last matched groups.

***	Backward Kills

	All the kill word and line commands take negative arguments,
acumulating their text at the beginning of the kill buffer.

***	Acommodating formatter languages

	The string $fmtlead contains all characters considered leadin
characters for formatting commands. These commands are not moved around
by paragraph reformating when they are at the biginning of a line.
$paralead specifies all characters considered the first char of a
paragraph.

***	Crash Debugging improved

	When a procedure crashes, $discmd and $disinp are set back to
TRUE and a traceback of the lines in all the nested calls leading to the
crash is displayed.

