OCTAMED V6 - WHAT IS NEW? I will here describe the most significant changes in V6. My military service ended on February 1994, and that's when I began working on V6. It took therefore slightly more than a year to complete it. This is more than with the previous major versions, mostly due to my studies, which has somewhat badly delayed the work. Anyway, only one major improvement that was planned for V6 had to be left out, because of lack time. ( A much improved notation editor, see below.) Let's talk about the improvements. One fundamental shortcoming in V5 was its fixed 640 × 256 medres screen. Many people requested for screen mode selection. It would have been reasonably easy to add, but imagine the V5 screen on a 1280 × 512 screen - it would have filled one quarter of the screen, and the extra screen space would end up being mostly useless. Therefore, the need for a more flexible method of adjusting windows and also using bigger fonts (Topaz 8 would be too tiny on a Super Hi-Res screen - and nowadays I consider it ugly anyway) was imminent. Also, even though V5 was much more "programmer-friendly" than V4, the window layout could be still simplified. The first thing I did were a set of routines called: RTFSWB This strange acronym stands for "Real Time Font Sensitive Window Builder". ( not a mixture of My and Rays initials ) ;) It is a simple GUI design "language" which contains commands like GBOOL (creates a boolean gadget) or TXT (creates a text item). When a window is opened, RTFSWB does the layout of the window according to the currently selected font. As the name says, it is fully font sensitive, supporting both non-proportional and proportional fonts. RTFSWB greatly improves the outlook of OctaMED, especially on high resolution screens with bigger fonts. There are some more GUI changes besides RTFSWB; there is no longer a default backdrop window, but all parts of the user interface are now in windows for better configurability. OctaMED screen has also become public; other applications may open windows on it. ARexx Yes, as most self-respecting applications, OctaMED now has an ARexx port! Most (but not all) features of OctaMED are available for use by external programs or scripts. This means that users can add new features by simply writing an ARexx script. (Of course, not everything can be made this way, but features based on existing features are usually possible.) In V6, OctaMED's keyboard shortcuts are also totally implemented via the ARexx interface; each shortcut is mapped to an ARexx command. The shortcuts are user-modifiable. Improved soundcard support The last V5 revisions added Aura support. V6 supports MacroSystem's Toccata as well. Currently only one sample can be played through it at a time, but this will change in the future (see below). Both soundcards support stereo output, and OctaMED now supports stereo samples. (They can be used even without a soundcard.) Because 16-bit samples are now becoming more and more common on the Amiga, OctaMED supports many new sample formats: MAUD (Toccata's file format), Audio IFF (perhaps the most common multi-platform sample format) and RIFF WAVE (these are the PC .WAV files). Improved sample editor The sample editor has a lot of new features. The sample display is now significantly faster and it has a new zooming slider. The speed improvement is optional, however, as it consumes some memory. New editing operations include an overwriting Paste, vertical adjustment of the sample, tuning tone, Add Workspace window, plus more. Also, the ultra- slow sampling Monitor window has been replaced with a faster monitor screen. File handling Packer support is now "finished", I suppose (nothing more to add). XPK is supported for both compression and decompression, with a parameter window for selecting the compression type. A similar window exists for PowerPacker parameters. Standard MIDI File (SMF) saving was added during Spring -94. Due to lack of time, I didn't intend to add SMF loading to V6. However, eventually Ray decided that this feature should be added, so it exists now, and it seems to work pretty well, although SMF->OctaMED conversion is not quite straight- forward. (I had an old, practically non-functional routine as a basis.) A popular request to Ray was the ability to save modules directly as executable files, and this is now possible. Executables are about 12 kilobytes longer than the corresponding module itself and they cannot be loaded and re-mixed by other composers and then re-released then anothers work. This was the main reason given to Ray for this request, but also by those making music disks who hated having to use the player. Many users have the need of writing information about a song or its author, or perhaps about the MIDI setup the song uses. During distribution, Read Me files tend to get lost easily. So, thanks to Ray you can now embed text files in modules. They certainly won't get lost! Finally, OctaMED now uses four different icons for different types of files. The icons now have eight colours, and they can be modified/replaced by the user. Player There are no new player commands, however, One feature is worth mentioning, you can now have several commands besides a note. This is carried out by having "command pages". Each block can have 1 - 32767 pages, each one containing a different set of commands (usually no more than three are used), Shift-Tab cycles between the command pages. For example, to combine slide, vibrato and volume change, you could have the following command pages: Page 1 (slide): Page 2 (vibr.): Page 3 (vol chg): C-2 10000 04A6 0D01 --- 00102 0400 0D01 --- 00102 0400 0D01 --- 00102 0400 0D01 --- 00102 0400 0D40 Miscellaneous Above I've described the most significant changes in V6. There are so "many" minor changes I can't mention them all here. However, I'll mention briefly just a few of the minor features here... * You can free and reallocate audio channels at any time. This is handy, as you don't need to quit OctaMED in order to use another program that requires the audio channels. * Slow HQ allows pre-V5 HQ mode tempo compatibility. Speaking of tempos, there's a new window for rough tempo conversions between SPD<->BPM and four channel <-> eight channel modes. * Instruments can be disabled. This is much like setting the instrument's volume to 0, but not quite, as the default volume setting can be overridden with player commands. By the way, Instrument Parameters window updating has been optimized, and it's now faster. * A new Miscellaneous Options window with a lot of... hmm... miscellaneous options :-) such as: Close Workbench, Overwrite Requesters, Use ReqTools, Warn if Disk Full etc. * Block/track/range editing operations now have three separate buffers. * The Block List window can mark unused blocks, if desired. Future Well, I don't usually promise anything until I have actually made it already, but there are some plans already for future versions. Particularly, there are two major features I would like to mention here. The first is an improved notation editor. This was planned for V6, but it it would have delayed the release for another few Months at least and Ray said that this was too long a break from the old, ( very old ), V5, so it is going to appear within the next major version. The old and outdated notation editor is temporarily removed in this V6. This is because it would have taken a "lot" of effort to convert the old editor for RTFSWB, and converting the editor for RTFSWB first, and then completely rewriting it in the next version would have wasted MORE time. I still have no clear vision what the notation editor should look like. It won't probably get its form until actually programming it, but Ray says he wants it as good, if not better than "Bars and Pipes"®, does'nt want much does he? ;) The other major feature is a new mixing routine. This would work similarly to the existing eight channel routines, but with a lot more flexibility. I consider "at least" these extra additions to be important: * full 16-bit resolution * fully selectable mixing rate up to ~50 kHz * far more than just the present eight channels * individual volume control for all channels * several output devices (including Toccata) Naturally, a routine with all these features would be much slower than the existing routine, and probably quite useless on an A500. However, not all features should be unjustified by the lowest common denominator... I have not yet decided the exact way of implementing this. I know that shared mixing libraries are currently under development. Whether or not I'll use some, or all of them, depends on if it fulfills our, ( and your ), needs. Have Fun and many thanks for your continued support, Teijo