Note: The history log is reverse sorted: newer changes are added from the top. New for version 4.0 =================== CHANGE: Split the Makefile into several smaller Makefiles, one for each subdirectory. Added "config.mk" file with global definitions for make. CHANGE: Recompiled with SAS/C 6.58. I had to quit using GST because it seems whis new version has bugs with them. ADD: Added 3 new versions of the XModule main executable: - XModule_020 optimized for 68020 or better processors - XModule_OS30 does not include support code for V36-38 - XModule_020_OS30 both 68020 code and OS 3.0-only code Patch files are distributed to generate these new versions from the generic executable. The generic version still has support for OS 3.0 and works fine with any 68K CPU. CHANGE: Changed the Makefile to use PhxLnk instead of Slink. This made the exetuable a bit smaller and the linking process much faster. CHANGE: Recompiled with SAS/C 6.57... Those guys at SAS again did a very good job, and thanks to the new warnings, I was able to catch a couple of nasty bugs hidden inside the code. ADD: The installer script will now choose a sensible default path for the XModule drawer. CHANGE: Changed the Makefile to support GNU make and to use the ADE version of makeinfo. Hopefully one day I'll switch definitely to GCC... CHANGE: Changed the installation script to use the spatch program to generate 020 versions of some executables. This makes the distribution archive a bit smaller and the users a bit happier :) New for version 3.9 =================== FIX: Fixed assembler startup to use FindTask(NULL) instead of grabbing the pointer from ExecBase->ThisTask because this field has been declared private by Amiga Technologies. ADD: Brand new user interface with scalable windows (like MUI) and localized labels! WOW! CHANGE: Songs are now represented internally as `boopsi' objects. And, once again, XModule has been almost rewritten! :-) ADD: External loader/saver hooks are now supported through the xmodule.library interface routines. Other kinds of external hooks are possible, but not used at the moment. Useless to say, it required very hard work. ADD: xmodule.library. This library is contained inside the XModule executable, so you can't see it in your Libs: drawer. It is used by all external hooks and by internal functions. Implementing it almost required a total rewrite of all the XModule code. ADD: Internal support for volume column. The pattern editor does not show it yet, but it's there. FIX: Fixed a stupid bug in automatic pattern breaking routines. (It inserted a '0' effect instead of 'D' to break the pattern :-) ADD: Copying, cutting and pasting in the pattern editor is now possible. ADD: Patterns can now be loaded/saved. ADD: Menu items are now localized. ADD: Added french catalog translation. Thanks to Julien Wilk. ADD: Added german catalog translation and Installer script. Thanks to Michael Reichenbach. FIX: Fixed font handling problems. XModule does not require diskfont.library anymore. CHANGE: Changed the "Get" buttons in the Prefs window into nice vectorial images. FIX: Fixed a tiny bug in the #?Tracker loader. It would not look for position table entries beyond the end when calculating the number of patterns, so it would fail when loading some modules. New for version 3.5 =================== Version 3.5 was released to beta testers only, therefore version 3.9 is the official release version of 3.5. New for version 3.4 =================== ADD: Full featured Pattern Editor!!! Another big step towards a complete n-channels music editor... ADD: New loader for ScreamTracker 3.01! Conversion is not very good, but at least it works. ADD: Supports loading and saving TakeTracker with up to 32 channels. ADD: Locale support. There is only an italian catalog yet, translated by my friend Steven Cantini. If you want more translations, please do them yourself and send me the .ct files! :-) ADD: The installer script has been localized. Thanks to Steven Cantini for translating Italiano strings. FIX: XModule did not load the last sample in (Octa)MED modules. Thanks to Brian Tietz for reporting this. ADD: XModule now stores the current directory and pattern of all file requesters in the settings file. ADD: Added window cycling through ALT-TAB and ALT-SHIFT-TAB. CHANGE: Rearranged song sequence handling. Now it is possible to have an arbitrary song length (let's say 32768) and it will be easy to add support for song Sections ala OctaMED 5, but I don't think this is a useful option. Tell me if you want it. CHANGE: Now uses memory pools for storing songs. This will reduce memory fragmentation and will make XModule a little bit faster at the cost of a little (say 15%) memory waste. ADD: Fonts preferences are now loaded and saved (sorry, I forgot to do it in the last version :-). FIX: Fixed a bug in the ASL file requester handling routines which caused XModule to save songs to its own current directory instead of the directories where they were loaded from. FIX: Loading garbage as a Sound/ProTracker module will no longer lead to a crash. I've put a lot of efford in trying to catch all dangerous situations, like modules with no patterns or with invalid sequence. ADD: Added support for MMD1 (OctaMED) modules. Improved MED loader and saver. FIX: The "Play All" button in the Sample Editor no longer crashes. I'm sorry, it was a really stupid bug. :-)) FIX: Fixed a nasty bug in the instrument clearing routine that also affected module optimization. The Repeat/Replen of killed instruments was not cleared, causing ProTracker 3.0 to refuse loading them. Added some sanity checks in the Sound/Noise/ProTracker loader to fix these corrupted modules. Thanks to Steven Cantini for reporting this bug. CHANGE: Default icons are now kept in a separate "Icons" drawer. ADD: The SaveIcons switch in the Instruments window does now work properly. CHANGE: Double clicking in the Instruments list brings up the Sample Editor. CHANGE: Changed the way to insert patterns in the song sequence. Now when double-click on the song position, the current pattern gets inserted there. Double clicking on a pattern causes opens the pattern editor window. FIX: The SongInfo ListView would not hilight the correct song when opened. FIX: Some string gadgets (The Song Name string gadget in the SongInfo window, to name one) allowed too many characters. ADD: Context sensitive help in all windows: pressing HELP now brings up help on the active window. CHANGE: When cloning the default screen, the overscan ClipRect is used to calculate the screen size. This behavior is more pleasing for those who use a very big autoscrolling workbench screen. (Hi Alfonso!) FIX: OctaMed loader now recognizes and converts decimal volumes. ADD: Instruments window "Add" button now spawns a file requester and lets you load an instrument. CHANGE: When an instrument has no name and has no sample associated, it will be marked "--empty--" in the Instruments list. FIX: Removed a serious bug that could crash the machine when a compressed module was loaded. ADD: The Instruments window is now an AppWindow and you can drop sample icons over it. ADD: The SongInfo window is now an AppWindow and you can drop module icons over it. FIX: Dropping multiple module icons in the ToolBox window or on XModule's AppIcon now loads all the modules correctly instead of loading all them one over the other. FIX: Low memory handling generally improved: XModule now has much more chances of surviving when memory is very short. FIX: Fixed a really serious bug in Clear Pattern option of Clear Module panel. The song was left with no patterns at all. Now one empty pattern is always allocated after clearing the patterns. FIX: When you delete an instrument, the "Total Module Size" and "Total Instrument Size" boxes in the SongInfo panel are now correctly updated to show the change. FIX: The setting editor did not notice when one of the fonts was changed with another font with the same width and heigth. CHANGE: The progress indicator will not be updated when the user is playing with Intuition. This way operations do not lock while a window is being resized or dragged. ADD: Menu items in Sample window are now updated correctly when preferences are loaded/saved. New for versions 3.2, 3.3 ========================= Version 3.2 and 3.3 were never officially released. Some of the changes logged for version 3.4 were actually introduced in these internal versions. New for version 3.1 =================== Version 3.0 was released to beta testers only, therefore version 3.1 is the official release version of 3.0. New for version 3.0 =================== Version 3.0 took a lot more time than I originally planned. My machine has been used for an animation for a local TV, and the people working on it have been so clever that they deleted almost all my WORK: partition. I had a backup on a streamer tape, but somehow I couldn't restore it. The only thing that actually survived the catastrophe was XModule and its source, except the history log and a short assembly file. I've rewritten the assembler part, but I'm not going to type the history again (who remembers?). There were really lots of news (the list was two pages long), but you'll have to discover all them by yourself. New for version 2.8 =================== FIX: Fixed a problem with NT/PT FineTune. FIX: Some memory did not free when user aborted loading/saving of a ST/NT/PT module. ADD: Support for 6CHN/8CHN modules (not tested). Thanks to A.Booker for suggesting this. ADD: XModule now supports loading signed and unsigned 8-bit samples. FIX: Instrument longer than 128K are correctly clipped when saving to ST/NT/PT. FIX: Memory wasn't freed when loading an instrument over an already existing one. CHANGE: Windows are now simple refreshed. Slower but eats a lot less memory. FIX: Now the DefaultTool for icons created by XModule contain the correct pathname. CHANGE: Code has been optimized and rearranged in many parts, especially the user interface. This should fix some potential bugs and make it easier to add new features quickly. Locale support and context-sensitive help are almost ready. ADD: Some new shortcut keys; more keyboard control over gadgets available for Kickstart V39+. ADD: Documentation cleaned up and some parts added. FIX: Possible small memory loss when closing a window. FIX: When iconifies, XModule now tries to use its-own icon instead of the Workbench default Tool icon. FIX: Screen re-opening bug which caused XModule to illegally close someone else's screen in some cases. ADD: Many new gadgets in Sample editor (yet some are inactive). ADD: Range marker in Sample window. FIX: SaveFormat window text positions were incorrect. FIX: Newly created songs now have 1 empty pattern allocated. This fixed enforcer hits when saving empty songs. ADD: Three different methods for rendering samples (the code was already there since version 2.7 but I didn't add the menu items). CHANGE: Removed DETACH Shell option, it caused too many bugs. ADD: Some new (undocumented) ARexx commands. ADD: Added settings file saving/loading. ADD: Added Log window. New for version 2.7 =================== FIX: Fixed occasional hits when closing a window. FIX: Bug in IFF 8SVX saver found & killed. CHANGE: Faster sample graph drawing under V39+. ADD: ScreenMode requester. New for version 2.6 =================== CHANGE: XModule now requires Kickstart V37 instead of V36. FIX: Instruments ViewList under Kick 2.0 is now displayed correctly. CHANGE: Assembler startup as been rewritten (smaller & bugs fixed). ADD: Sequence editor is now fully operative! ADD: Progress indicator finally sports a percentage bar! ADD: Can now detach from the Shell. FIX: The documentation has been revised and corrected. FIX: Enforcer hits occurrred in Progress Panel under some rare conditions. New for version 2.5 =================== FIX: Problem (read: guru) when trying to save as Sound/Noise/ProTracker a module having the first pattern longer than 64 lines. FIX: Oktalyzer saver used to set mode 8 for all instruments. FIX: Sample editor did not update Repeat and Replen when opened. FIX: the Repeat value was doubled when loading SoundTracker modules and halved when saving. CHANGE: Numbers in sequence list are now displayed in decimal format. FIX: Some weird SoundTracker 15 instrument module did not load correctly. ADD: Installer script included in the distribution. ADD: MagicWB icons for XModule and its documentation. CHANGE: Documentation improved a little. New for version 2.4 =================== ADD: Can now load raw samples. ADD: Added DataTypes support to load instruments. ADD: Can now load raw data as instrument. FIX: Illegal characters in instrument names are now filtered out. FIX: Sample graphic now clips correctly. FIX: Fine tune was not saved in SoundTracker modules. New for version 2.3 =================== ADD: Asyncronous FileRequesters. ADD: Asl & ReqTools FileRequester support. FIX: Didn't accept some SoundTracker effects. New for version 2.2 =================== ADD: XModule now sports an ARexx port featuring two (2) commands, one of which does not work yet! ADD: When opening on the Workbench screen, the main window is now an AppWindow. You can drop module icons on it and see them loaded auto-magically! ADD: Command line & Tool Types arguments are now supported. FIX: Save Fromat panel works a little better now. New for version 2.1 =================== FIX: Status display routines did sometimes crash. ADD: Sample graphic display is now a little nicer and clips (almost) correctly. ADD: There is now a Save Format requester, but it is still not fully functional. ADD: Sound/Noise/ProTracker loader now warns notes with 0 as instrument number. I discovered that some composers (for istance AudioMonster) use this trick instead of command C00 to kill sound on a track. The problem is that some players (e.g.: MultiPlayer 1.32) will play some random data instead. I had no time to investigate deeper, but a solution could be to replace such notes with a C00 effect, loosing the original effect if any (such as speed commands). In this cases you will have to fix the module manually. CHANGE: Sequence window look has drastically changed and includes a list to pick patterns from ( It is not operative, thoug :-( ). CHANGE: Repeat and Replen moved to Sample window. *** Versions below 2.1 have never been released ***