Short: MuLib based math speedup patch for 040/060 Author: thor@math.tu-berlin.de (Thomas Richter) Uploader: thor math tu-berlin de (Thomas Richter) Type: util/boot Version: 40.4 Requires: util/libs/MMULib.lha Kickstart V37, MuLib 68040/68060 lib Architecture: m68k-amigaos >= 2.0.4 ------------------------------------------------------------------------------ MuRedox is a MuLib based "on the fly" speedup patch for 68040 and 68060 based Amiga boards. The 68040 and 68060 do not implement all instructions of the MC 68K family. The unimplemented instructions - mainly FPU instructions - generate an exception and need to be emulated by the 68040 resp. 68060.library. This is the job of the so- called "FPSP routines" (floating point support package) within the CPU libraries. MuRedox detects these instructions as soon as they generate the emulator exceptions, runs a "just-in-time" compiler that generates a "stub replacement routine" for this specific instruction and patches the replacement routine into the running program. Hence, MuRedox replaces the overhead of the emulator trap on the next use of the same instruction sequence. Therefore, MuRedox requires: - At least an 68040 or an 68060. A 68030 or below implements all instructions anyhow and does not require emulator traps at all. - The mmu.library which is required to setup the special memory mapping. - The fpsp.resource. This resource contains the program code required for most unimplemented math functions. This resource is made avail- available by the mmu.library-based 68040 and 68060.library. Therefore, installation of the "MuLib" libraries is *required*. Please see the "MMULib.lha" package on Aminet how to install them. ------------------------------------------------------------------------------ Top reasons why not to use this program: - It is a hack. MuRedox replaces program code on the fly, hoping that all will go well. This need not to be the case - especially commercial programs may keep a checksum over their code and may fail if their code gets altered. MuRedox will perform such code modifications. - MuRedox will therefore not work for all programs - some incompatibilities should be expected. If you need faster programs, you should rather: - Ask the vendor for a 68060 or 68040 specific release of the program that does not require the software emulated instructions of the 68040 resp. 68060. Typically, these versions will run faster than a 68020/68030 version with MuRedox, anyhow. - Remember: Programs are made fast by fast and smart algorithms, not by your favourite speedup-patch. MuRedox will give some speed impact, in realistic situations in the range of about 10%. Specific bench- marks may show more dramatic improvements, but they typically test situations that are untypical in a real-life situation. Motorola choose less frequently used instructions for software emulation in first place, hence improvements are typically marginal. ------------------------------------------------------------------------------ The THOR-Software Licence (v2, 24th June 1998) This License applies to the computer programs known as "mmu.library", "MuRedox", "FPSPSnoop" and the corresponding documentation, known as ".readme" files. The "Program", below, refers to such program. The "Archive" refers to the package of distribution, as prepared by the author of the Program, Thomas Richter. Each licensee is addressed as "you". The Program and the data in the archive are freely distributable under the restrictions stated below, but are also Copyright (c) Thomas Richter. Distribution of the Program, the Archive and the data in the Archive by a commercial organization without written permission from the author to any third party is prohibited if any payment is made in connection with such distribution, whether directly (as in payment for a copy of the Program) or indirectly (as in payment for some service related to the Program, or payment for some product or service that includes a copy of the Program "without charge"; these are only examples, and not an exhaustive enumeration of prohibited activities). However, the following methods of distribution involving payment shall not in and of themselves be a violation of this restriction: (i) Posting the Program on a public access information storage and retrieval service for which a fee is received for retrieving information (such as an on-line service), provided that the fee is not content-dependent (i.e., the fee would be the same for retrieving the same volume of information consisting of random data). (ii) Distributing the Program on a CD-ROM, provided that a) the Archive is reproduced entirely and verbatim on such CD-ROM, including especially this licence agreement; b) the CD-ROM is made available to the public for a nominal fee only, c) a copy of the CD is made available to the author for free except for shipment costs, and d) provided further that all information on such CD-ROM is re-distributable for non-commercial purposes without charge. Redistribution of a modified version of the Archive, the Program or the contents of the Archive is prohibited in any way, by any organization, regardless whether commercial or non-commercial. Everything must be kept together, in original and unmodified form. Limitations. THE PROGRAM IS PROVIDED TO YOU "AS IS", WITHOUT WARRANTY. THERE IS NO WARRANTY FOR THE PROGRAM, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IF YOU DO NOT ACCEPT THIS LICENCE, YOU MUST DELETE THE PROGRAM, THE ARCHIVE AND ALL DATA OF THIS ARCHIVE FROM YOUR STORAGE SYSTEM. YOU ACCEPT THIS LICENCE BY USING OR REDISTRIBUTING THE PROGRAM. Thomas Richter ______________________________________________________________________________ So long, Thomas Richter (October 2009)