Article 4582 of comp.sys.amiga: Path: mcdsun!noao!hao!gatech!rutgers!sri-spam!ames!ucbcad!ucbvax!decvax!decwrl!cgfsv1.dec.com!drew From: drew@cgfsv1.dec.com (Steve Drew) Newsgroups: comp.sys.amiga Subject: Notes on AUX: handler, Emacs. Message-ID: <9846@decwrl.DEC.COM> Date: 13 May 87 00:08:09 GMT Sender: daemon@decwrl.DEC.COM Organization: Digital Equipment Corporation Lines: 78 Heres a couple of notes for those with manx 3.4a in regards to my aux-handler: Making AUX HANDLER shrink from 5736 bytes to approx 4450 bytes: --------------------------------------------------------------- One thing I meant to do before posting my Aux-handler was to remove the Large Code/Date switches. I had compiled this way while debugging just to play it safe. Anyway I tried it now with-out +C +D and the executable shrinks from 5736 bytes to 4344 bytes. (Link with c32.lib instead of cl32.lib) (This is all with manx 3.4a.) Small (minor) Bug fix: ---------------------- Problem: Handler eats up ^C in RAW mode when it should'nt. Fix: add the line in read_ser() that's indicated below: if (c == 3) { /* ^C typed so immediately send the signal */ ==> if (!(aux_stat & AUX_RAW)) c = 0; if (reader) Signal(reader,SIGBREAKF_CTRL_C); } PATCH TO MAKE MicroEmacs 3.x run through AUX: --------------------------------------------- (This was even easier than I thought it would be!) Just add the indicated lines below (=>) to the 'termio.c' module and recompile. What it does: When invoked emacs will now only open a RAW window if 'Run', if you just invoke emacs eg: '1> emacs file' from it will change the console to RAW mode and use that. Since my aux-handler supports RAW mode it works the same way to a ansi (vt100) style terminal. ttopen() { #if AMIGA => extern int Enable_Abort; => => Enable_Abort = 0; => if (IsInteractive(Input()) && IsInteractive(Output())) { => terminal = (long)Output(); => set_raw(); => } => else terminal = Open("RAW:0/0/640/200/MicroEMACS 3.8b", NEW); #endif ttclose() { #if AMIGA amg_flush(); => if (Output() != terminal) Close(terminal); => else => set_con(); #endif Ok, so now we can dail up, use shell, emacs a file, compile it, hummm... all we need now it a mini kermit server. (And a hard drive, sniff) /Steve. ============================================================================ Steve Drew at ENET: CGFSV1::DREW ARPA: drew%cfgsv1.dec.com@decwrl.dec.com USENET: {decvax!decwrl}!cgfsv1.dec.com!drew ============================================================================