[comp.binaries.ibm.pc.d] Why Freemacs uses the 8th bit.

nelson@sun.soe.clarkson.edu (Russ Nelson) (06/19/91)

In article <3271@krafla.rhi.hi.is> einari@rhi.hi.is (Einar Indridason) writes:

   In article <NELSON.91Jun17140028@sun.clarkson.edu> nelson@clutx.clarkson.edu (aka NELSON@CLUTX.BITNET) writes:
   >In article <3257@krafla.rhi.hi.is> einari@rhi.hi.is (Einar Indridason) writes:
   >
   >
   >   By the way, the stream of 7-bit programs from the USA gives me a poor
   >   impression of the intelligence of USA programmers.
   >
   >   Some products are great and works fine. BUT then there are those
   >   morons that *insist* on masking that bl*ody 8th bit!!
   >
   >Excuse me.  I had thought that, since the 8th bit was unused by USASCII,
   >there would be no trouble using it for marking purposes, etc.  Now I
   >find that it causes trouble with non-english alphabets.  Why am I a moron
   >when I tried to make my program simpler and hence more reliable?

   Why is your program simpler if you use the 8th bit for yourself?  (for
   internal purposes?) instead of just leaving it alone?

Freemacs needs meta characters, that fall outside the charater set.
It needs these in two places -- in the neutral string (to delimit
pending functions and arguments), and in functions (to indicate
argument place-holders).  Some time ago, I rewrote the neutral string code
so that all 8 bits are usable.  The code is faster but more complicated.

But functions still require the 8th bit as an argument place-holder.
I suppose that I *should* rewrite it so that it doesn't, because it would
make the program faster, but it also introduces other complications.
The next release will be much more circumspect about nuking 8th-bit-set
characters, and I will probably code around the places where it fails.

But I'll need help from you 8th-bitters, because I don't have any real
use for the 8th bit.  Should I put you on the Freemacs announcement
mailing list?  Here's the Freemacs "howtoget.it" blurb:

Freemacs is a programmable editor.  The .EXE file is only 21K because
it only contains a language interpreter and text editor primitives.  The
bulk of the programming is done in MINT, which is a string-oriented
language.  Freemacs is yet another Emacs clone.  Emacs was first written
at MIT by Richard M. Stallman.

There are a number of Emacs clones for the PC available.  Freemacs
has three distinguishing characteristics:

o Freemacs is free, and it was designed from the start to be programmable.
o Freemacs is the only IBM-PC editor that tries to be like GNU Emacs.
o Freemacs can only edit files less than 64K in length.

You may freely copy this software.  I only ask that you send improvements
back to me for incorporation into the package for the rest of us.  The
distribution is available from one or more of the following sources:

EMACS16A ARC   The executables and MINT code.
EMACS100 ARC   Zenith Z-100 version.  Requires EMACS16.
EMACSPEL ARC   Spelling checker.
EMACSEGA ARC   A collection of EGA utilities
EMAC16AS ARC   The .ASM source.

CUHUG BBS:

(315)268-6667 - 1200/2400 8N1, 24 hrs.  File area 25.  No registration
required to download Freemacs.

Internet:

Anonymous FTP to simtel20.army.mil from PD:<MSDOS.FREEMACS>

Internet:

Anonymous FTP to grape.ecs.clarkson.edu [128.153.13.196] from
/e/freemacs

Bitnet && UUCP:

Send mail to archive-server@sun.soe.clarkson.edu.  You may use
archive-server%sun.soe@omnigate if you are on Bitnet, or
{smart-host}!sun.soe.clarkson.edu!archive-server if you are using
UUCP.  The mail message should consist of 'help'.  If you do not
get a reply within a day, then your return path is broken.  You'll
need to use the path command to give a mail address that our mailer
can grok.  Our mailer can send mail to any address with an '@' in it,
with the exception of ".UUCP" pseudo-addresses.

Or else send $15 (copying fee) to the author.  This will assure you of the
latest version.  Please specify floppy format:
  5.25", 1.2 Meg
  5.25", 360K
  3.50", 720K

			Russell Nelson
			11 Grant St.
			Potsdam, NY 13676


--
--russ <nelson@clutx.clarkson.edu> I'm proud to be a humble Quaker.
I am leaving the employ of Clarkson as of June 30.  Hopefully this email
address will remain.  If it doesn't, use nelson@gnu.ai.mit.edu.

einari@rhi.hi.is (Einar Indridason) (06/21/91)

In article <NELSON.91Jun19110054@sun.clarkson.edu> nelson@clutx.clarkson.edu (aka NELSON@CLUTX.BITNET) writes:
>In article <3271@krafla.rhi.hi.is> einari@rhi.hi.is (Einar Indridason) writes:
>
>   Why is your program simpler if you use the 8th bit for yourself?  (for
>   internal purposes?) instead of just leaving it alone?
>
>Freemacs needs meta characters, that fall outside the charater set.
>It needs these in two places -- in the neutral string (to delimit
>pending functions and arguments), and in functions (to indicate
>argument place-holders).  Some time ago, I rewrote the neutral string code
>so that all 8 bits are usable.  The code is faster but more complicated.

Humm, meta characters?  Can you use 16bit characters in freemacs?  (then
you could use the upper 9-16 bits as some sort of a meta bit?)
No.  Then the maximum size of text to edit is then limited to 32K  (Right?)
But what about useing some character below 0x20 as a 'lead-in' character
(some kind of an escape?)  and if that character is to appear, then it
could be protected by duplicating that character?

>But I'll need help from you 8th-bitters, because I don't have any real
>use for the 8th bit.  Should I put you on the Freemacs announcement
>mailing list?  Here's the Freemacs "howtoget.it" blurb:

That is ok by me.  (If you do, please use einari@hugbun.is instead of the
more normal einari@rhi.hi.is.  For other mail, (for now), use
einari@rhi.hi.is)

May I bring up a suggestion?  How about getting the device-driver that
frisk has uploaded to SIMTEL and use that to test freemacs?
I can suply you with a sentence that gives you all icelandic characters?


Thank you for taking so kindly to my rash posting :-)


--
Internet:    einari@rhi.hi.is        |   "Just give me my command line and drag
UUCP:    ..!mcsun!isgate!rhi!einari  |   the GUIs to the waste basket!!!!"

Surgeon Generals warning:  Masking the 8th bit can seriously damage your brain!!

nelson@sun.soe.clarkson.edu (Russ Nelson) (06/23/91)

In article <3287@krafla.rhi.hi.is> einari@rhi.hi.is (Einar Indridason) writes:

   In article <NELSON.91Jun19110054@sun.clarkson.edu> nelson@clutx.clarkson.edu (aka NELSON@CLUTX.BITNET) writes:
   >In article <3271@krafla.rhi.hi.is> einari@rhi.hi.is (Einar Indridason) writes:
   >
   >   Why is your program simpler if you use the 8th bit for yourself?  (for
   >   internal purposes?) instead of just leaving it alone?
   >
   >Freemacs needs meta characters, that fall outside the charater set.
   >It needs these in two places -- in the neutral string (to delimit
   >pending functions and arguments), and in functions (to indicate
   >argument place-holders).  Some time ago, I rewrote the neutral string code
   >so that all 8 bits are usable.  The code is faster but more complicated.

   Humm, meta characters?  Can you use 16bit characters in freemacs?  (then
   you could use the upper 9-16 bits as some sort of a meta bit?)
   No.  Then the maximum size of text to edit is then limited to 32K  (Right?)

Right, ick.

   But what about useing some character below 0x20 as a 'lead-in' character
   (some kind of an escape?)  and if that character is to appear, then it
   could be protected by duplicating that character?

That makes scanning backwards tough.

   May I bring up a suggestion?  How about getting the device-driver that
   frisk has uploaded to SIMTEL and use that to test freemacs?
   I can suply you with a sentence that gives you all icelandic characters?

Perhaps frisk's ICELAND.ZIP should have an example bit of text, along
with a known-good method for viewing it on the screen.

Maybe he should supply a copy of the documentation written in icelandic?  :)

--
--russ <nelson@clutx.clarkson.edu> I'm proud to be a humble Quaker.
I am leaving the employ of Clarkson as of June 30.  Hopefully this email
address will remain.  If it doesn't, use nelson@gnu.ai.mit.edu.

boyd@cs.unca.edu (Mark Boyd) (06/24/91)

This discussion of why freemacs uses the 8th bit for meta characters
reminded me of the file size limit in MicroEmacs. On a IBM PC clone
with 550,000 bytes of memory available, MicroEmacs 3.10 will load about
200,000 characters. The executable takes about 150K of memory, so that
leaves about 400,000 bytes for the buffer. All of these numbers are
approximate, but they do show the dramatic effect of 16 bits per
character.

	Mark

mcdonald@aries.scs.uiuc.edu (Doug McDonald) (06/24/91)

In article <1991Jun23.174824.21869@rock.concert.net> boyd@cs.unca.edu (Mark Boyd) writes:
>This discussion of why freemacs uses the 8th bit for meta characters
>reminded me of the file size limit in MicroEmacs. On a IBM PC clone
>with 550,000 bytes of memory available, MicroEmacs 3.10 will load about
>200,000 characters. The executable takes about 150K of memory, so that
>leaves about 400,000 bytes for the buffer. All of these numbers are
>approximate, but they do show the dramatic effect of 16 bits per
>character.
>
On my 8 megabyte PC, with about 6.3 free, MicroEmacs 3.10 will
edit a 4.5 megabyte file. So it uses appreciably less than 2 bytes
of storage per character.

Doug McDonald