Path: utzoo!attcan!uunet!microsoft!bradch From: bradch@microsoft.UUCP (Bradford Christian ms1) Newsgroups: comp.sys.amiga Subject: Re: Turbo 'c' type interface for Amiga Message-ID: <846@microsoft.UUCP> Date: 10 Mar 89 23:37:55 GMT References: <406@corpane.UUCP> Reply-To: bradch@microsoft.UUCP (Bradford Christian ms1) Distribution: na Organization: Microsoft Corp., Redmond WA Lines: 54 John Sparks (sparks@corpane.UUCP writes: [lots of stuff about Turbo C and why don't we have something like it] : I wonder if it would be possible to use write a kind of 'shell' around : lattice or manx 'c' and an editor to make it work like turbo 'c'? I did something like this. I hacked up an old version of MicroEMACS with a "make" command. Running this command (Ctrl-X, Ctrl-E) would run make in the background with the output redirected to a buffer in the editor. This does not use a temporary file, so the output appears in any windows that are looking at that buffer as the make program runs. Another command, "goto next error" (Ctrl-X, Ctrl-N) will find errors in that buffer and position the cursor where the compiler thinks the error is. (I use Manx, so I use the little caret (^) that it prints pointing to the error to find out what column to place the cursor.) This is not quite Turbo-C (or QuickC :-), but it works very well. Besides, you can fix your syntax errors while the rest of you program is being made! BTW, the way I get around using a temporary file really shows off the power of the Amiga. I simply created a device (not a separate driver, the editor contains it) called BE: (which happens to be the name of the editor). The BE: device can be used just like any other AmigaDOS device and works with Open(), Close(), Read(), and Write(). Any editing buffer can be connected to BE: by specifying the name of the buffer when opening the "file" as in "BE:MakeOutput". What I have now works great for getting the output of a program into a buffer. I am currently working on a more general purpose "device buffer" system that makes the editing buffers look like a directory (you'll be able to use "Dir BE:" in a shell to get a list of buffers) and supports interactive connections to buffers. If you've ever seen Epsilon on a DOS machine, you know how neat that can be. If you haven't seen it, it lets you run a DOS shell concurently in a window. All of the editing features are, of course, available to edit your DOS commands and all of your session is saved in the buffer for reviewing, etc. But anyway, before this turns into too much of an RSN posting, I will make the executable of my editor available to the net if anyone wants to check it out. Please send me e-mail if you'ld like a copy. If I get enough responces, I'll just send it in for comp.binaries.amiga. Otherwise, I'll just mail it around. It may take a week or so to get documentation ready, but the code works (I've been using it for a few weeks). I would make the source code available too, but I write code that few (outside of Microsoft) could read. Maybe later. BradCh DISCLAIMER: My editor, my amiga, and this posting have nothing to do with Microsoft. (Although, I wish I could use the first two in my work here!) Epsilon is (possibly) a trademark of Lugaru Software Ltd.