Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!lll-tis!ames!rutgers!aramis.rutgers.edu!athos.rutgers.edu!hedrick From: hedrick@athos.rutgers.edu (Charles Hedrick) Newsgroups: comp.emacs Subject: freemacs (PC Emacs) patches Message-ID: <712@athos.rutgers.edu> Date: 1 Feb 88 21:20:20 GMT Organization: Rutgers Univ., New Brunswick, N.J. Lines: 91 I was unable to reach the author directly, so here are my patches for Freemacs. The following changes to emacs.ed implement an option to ^Q that allows entering any character using its octal value, and they change the default colors to something that works on monochrome screens. Actually, quoted-char should also accept meta chars typed using the ALT key, as well as octal values. The only other change that I'd like is to make Emacs work with big files. However I'd have to spend a lot more time studying the program before I would feel qualified to do that. NOte that I changed an ESC to ^] to get it to go through our mail. Name:Fquoted-char Prompt the user for a control character, and return the character. [*]#(an,Enter control character?) #(ds,temp,#(g)) #(an) #(==,##(gn,temp,1),\,( #(ds,value) #(Freadline,Octal code:,foo) #(bc,#(value),o,a) ),( #(rs,temp) #(==,##(gn,temp,2),C-,( ##(bc,##(--,#(Ftoupper,##(bc,##(gs,temp),a,d)),64),d,a) ),( #(rs,temp) #(Fcase,##(temp), (LPar,(##(bc,40,d,a))), (RPar,(##(bc,41,d,a))), (Comma,((,))), (Tab,(( ))), (Escape,^]), (##(temp)) ) ))))[*] Name:F-fore-color Text foreground color [*]7[*] Name:F-back-color Text background color. [*]0[*] Name:F-mode-fore-color Mode line foreground color [*]0[*] Name:F-mode-back-color Mode line background color [*]1[*] Changes to ibm.asm. < is the old version, > is the new version. The changes display control chars using high intensity mode, which is 08h, and meta chars using inverse video. 1c1,3 < ;History:545,1 --- > ;History:2,1 > ;01-30-88 18:49:54 make control be bright, meta inverse > ;01-30-88 17:50:14 use inverse vid for ctl chars (for MDA) 795a795,801 > cmp al,80h ;meta char? > jb xychrout_nometa ;no > mov cl,4 ;yes, inverse video > rol ah,cl > and al,7fh ;but move into normal char range > xychrout_nometa: 803,804d803 < cmp al,0ffh ;print 255 specially < je xychrout_del 805,806c805 < mov ah,color < or ah,10h ;bold chars. --- > or ah,0fh ;bright 808,812d808 < xychrout_del: < mov ah,color < or ah,10h < mov al,7fh ;bold del. < jmp short xychrout_1 809,809d809 < mov ah,color For emacs14d, a patch is also needed to emacs.asm to make inital_ids public. Perhaps this is because I was using emacs14c from Simtel and emacs14d from you?