A hello to everyone who's requested beta's of SPHINX2.6, I never knew it was so popular. Since most of you are using 2.5y I'll run down the major changes: (a note to WB1.3 users: SPHINX may have the 2.0 embossed look, but it still works under 1.3. However I got 2.0 a few weeks ago, so this isn't going to last forever.) 1)First, the config window is finished! Everything can be changed on the fly, and configs can be saved and loaded at any time. Also there is an internal "default" config, so there is no SPHINXConfig program any more. Instead when you start SPHINX the first time it will complain that it found no config file (NCfg). Just press [OK]. Then once the SPHINX window appears, press RightAmiga-C, edit the config to be how you like it, and then press [Save Config]. If you have the arp.library around you'll get a file requester, if not the filename s:SPHINX.config is used. The 2.5y config files cannot be loaded by 2.6x_April19th, so if you have a special config you love very much you'll have to copy it by hand into the config window. 2)Second some 2.0 parameters are supported: CLOSE (and it always closes the window---if opencount is non-zero it closes the window, frees the saved text, and waits around for the requisite number of close packets.---the close should be handled.), INACTIVE, WAIT, AUTO, BACKDROP, NODRAG, NOBORDER, NOSIZE, and NODEPTH. Only NOCLOSE (which doesn't need support right now, since the default is no-close gg), SMART & SIMPLE, because simple_refresh windows are still slower than smart_refresh, WINDOW and SCREEN are not supported yet. In addition there are two sphinx specific parameters: SPHINXNOGADGETS, which removes the sphinx gadgets (iconify, scroll and undo) from the window, and SPHINXCONFIG, which lets you specify the config file to use. The way this works is the next "parameter"; i.e. the next thing between "/"s, is considered a filename, and that file is searched for in the s: directory. It doesn't allow you to specify the whole path because I don't see a simple way of encoding a filepath+name into something which is already a filepath+name without dos choking on it. So you'd use this this way: SPHINX:////WdTitle/SPHINXCONFIG/SPHINX.dissassembler.config and the window would use the config found in the file s:SPHINX.dissassembler.config (you can put the SPHINXCONFIG parameter anywhere in the list of parameters after the window title---just make sure that it is followed immeadiately by the config filename. Because you can specify the config at sphinx invocation time there is no point in having multiple mounts of SPHINX: devices any more, and so all the (somewhat illegal) code which played with the seglist in order to unload the unneeded code is gone. 3)Thirdly the memory interaction has been changed. SPHINX used to use AllocMem every time it needed to store something, which was fine except that it lead to fragmented free memory rather quickly because the shell would load in a command, the the command would output something, so sphinx would save that, then the command would end, and now there was a hole the size of the command in the free mem list. Now sphinx allocates memory in large chunks and uses those up, using an internal memory handler to "allocate" small pieces out of the chunks, before it goes back to AllocMem for more. The size of the chunks sphinx takes from AllocMem can be set by the Memory Chunk Size field in the [Buffer Size] config window pannel. Bugs/problems in this beta: (for 2.0 users) If the default font is not 8x8 the config window will not realize it, and so the text will be drawn all over the place. Workaround: set the Screen Font in the Font prefs to be an 8x8 font. The Ctrl-C,D,E,F doesn't seem to work all the time with the 2.0 Shell. I don't know why yet, so I can't help you here. The top line of the iconify gadget's imagery dissapears under the depth-gadget under 2.0. The cursor-left-n-chars, and cr<>lf routines are not ready yet, so dearchivers, format, diskcopy etc... will still spew out many lines of uninterresting numbers. I've set my ENV:LhAOPTS to include "-n" so I get no byte progress indicator, which is a temporary workaround. I know how I'm going to do it, I just have to finish the code. Sphinx does not have a RAW_MODE. This means that if you are using it with a "smart" shell which tries to do its own window handling stuff you have to tell the shell to dummy-up and treat the window as a file (the C= shell does not need any changes--it's just dumb enough to work, however WShell needs to be told to dummy-up; I'm told by people who have it that this can be done, but I don't know the option myself. Csh also is a "smart" shell and tries to do fancy things. If it has a dummy-up option, then try it, else sphinx doesn't work nicely with csh yet.) The "cycle" gadgets at the bottom of the config window do not cycle backwards when you shift-click on them. (It's not in the 2.0 user manual, but it is in the 2.0 programmer's style guide: cycle gadgets are supposed to cycle backwards when you shift-click on them.) The bug in the scrolling using the scroll gg is still there. Sigh. And now, the bug fixes and minor changes (taken from the forever expanding Changes.doc): 36)Fixed bug error recovery code for not finding configfile upon startup (was freeing wrong mem). 37)Fixed typo in read_from_clipboard routine which lead the buffer length to be wrong, and so was eating 8 bytes every time the clipboard was read. 38)Changed SRA-L: now if you are in unlocked-literal state you go to locked- literal state, instead of to no-literal. 42)Changed FF line across the window so that it has an embossed look, and really doesn't look like a line of `ญญญญญญญญ'. 44)Fixed bug! If many SPHINXs were all having the spot-10 image visible, then some could have the parsing image visible too, even though they weren't parsing. I fixed this, and then removed the spot-10 image altogether, anyhow. 46)Fixed bug in the recovery code used when the iconized window cannot be reopened (after an attempt at opening the main window has failed) 47)Changed the look and the positioning of the main wd's gadgets. Now they come out better positioned under 2.0, and they have the 2.0 embossed look. 48)Dropped the ClipOneTime clip modes, making then all "locked", to use the old vocabulary. The imagery is of the old one-time clip modes. 50)WdAg gurucode was not handled correctly (in fact, you didn't even see a WdAg guru, but rather some other garbage). 51)DiskInfo packets were not being sent back with res1 set to TRUE (-1). Fixed 52)Fixed two bugs in the low level drawing code: one happened when non-blocking typeahead was in use, and the upperleft character was inside the inputsave, and not the first character of the inputsave; the other happened when the half window scroll was enabled. Both did not change all internal variables correctly. 53)Fixed bug in Lie About Window toggle wherein the lying did not actually happen until the next time the window was resized. Now lying starts and starts with the toggle. 56)RA-V inserts from clipboard, unit 0, same as RA-I 57)Made the Ctrl-C/D/E/F code less paranoid. It will actually signal someone more often now. (apparently not enough for 2.0, though) Now the obvious question is "Why is this an April 19th version when it's May 13th? Well I'm graduating May 17th (physics: anyone want a bilingual (french-english) physics major who's also not too bad at math and computer-science? good with TeX, Amigas, cats, children and small mesons), and so I've spent this last month finishing up things. Also I started rewriting the config window so that the pannels were replaced by having all the gadgets float around in a "gadget-space", where they use whatever font you want, and move around, in logical groupings, as you resize the window, in order to best use the space available, and that will take a week or more of work to finish up & debug. I don't know what's going to happen to my signon (nsd20463@uxa.cso.uiuc.edu) after May 16th since the site itself is going to be changed into a NeXT lab, so the uxa machine might dissappear, or they might leave it running in a corner. I'll know in 4 days, I guess. Also you may distribute this version anywhere you wish within the limits imposed by the opening message, but remember that it is a beta, so don't go wild. (but putting it on a ftp site would be ok). =Nicolas Dade