iFUSION PowerMac Emulation Guide Copyright ©2001 Blittersoft All Rights Reserved Developed by Microcode-Solutions, Inc. USA iFUSION PowerMac Emulation Guide Copyright ©2001 Blittersoft All Rights Reserved Developed by Microcode-Solutions, Inc. USA Important Information Legal Issues Registration Registering iFUSION Introduction About iFUSION Features Basic specification Emulation Installation Installing iFUSION Emulation Configuration Before starting iFUSION Running the emulation Launching the Mac Limitations What to be aware of FAQ Frequently Asked Questions Support Where to go for help Version Information What has changed Those who helped Thank you! Copyrights and Trademarks Acknowledgements Use of Licensed Software: By using this product, you acknowledge that the emulation may require the use of software which may be the property of others, including, but not limited to, Apple Computer, Inc. The use of this emulation will require you to obtain the right to use such software from Apple Computer, Inc. and/or other authorised parties. Failure on part of the user to lawfully obtain the right to use licensed software may be a violation of law, including the copyright laws. Blittersoft and/or Microcode Solutions makes no representations concerning the availability or cost of obtaining such rights. Disclaimer: Although Blittersoft and/or Microcode Solutions believes this software performs the functions described in this user manual, the software is provided "as is" without warranties on performance, either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or suitability for any purpose. The user assumes all risks. Blittersoft and/or Microcode Solutions cannot be held liable for any damages from misuse, installation, or operation of this emulation. Blittersoft and/or Microcode Solutions do not guarantee that this emulation is 100% compatible, either in program functionality and/or emulation speed. Product Warranty: Blittersoft will replace defective media with the exact product replacement for a period of 30 days. Thereafter a media charge may be applied. This only applies to the original purchaser of the product, and will require proof of purchase. Registration Information iFUSION must be registered online at our Website or by printing and sending the completed registration file found in the Documents draw. To do this, please visit http://www.blittersoft.com The registration process is located within the iFUSION section. You must register your product in order to receive product updates or replacement for defective media. Please keep your original purchase invoice for this reason. New Generation Mac emulation The product iFUSION represents the next step in Macintosh emulation for the Amiga range of computers. Being a natural successor to the highly popular 68K emulation, FUSION, this new breed of PowerMac emulator takes the user a step closer to today's Macintosh computers. iFUSION takes advantage of the current PowerPC accelerators available to the Amiga user to deliver the first modern NewWorld class PowerMac emulator available. With iFUSION, the modern Mac OS systems designed for NewWorld PowerMac's can be used, along with a vast selection of excellent application packages and games software. iFusion basic features Specification o Support for up to 2Gb of physical/virtual memory o Supports AHI o Support for Hardfiles/CD-ROM and partitions o Support for Keyboard/Mouse o Support for floppies and removable media (via devices) o Support for Apple's built-in Virtual Memory o Support for on-the-fly switching with compatible graphics system o Supports OS8.6 through OS9.1 o No external ROM image required - Just a compatible MacOS CD Requirements o WarpUp v5 (special version supplied on CD) o PPC card with at least 32Mb RAM (64 preferred) o CybergraphX v4 or later Installing iFUSION 1) Insert the iFusion CD into your CDROM drive. 2) Run the iFusion_Installer script. Be sure that you do not install iFUSION to a partition that you intend to use as a Mac partition as it will be erased when the MacOS initialises the partition. 2) The WarpUP libraries are beta versions of WarpOS v5 that may or may not be fully functional with other WarpOS software. Report any problems with other WarpUP programs to Sam Jordan at H&P (see Support section). 3) Ensure that the environment variables "powerpc/memprot" and "powerpc/EnAlignExc" are both "1". They must be set for iFUSION to operate properly. Be sure to change them in SYS:Prefs/Env-Archives or the settings will be lost when you reboot your Amiga. 4) Insert a MacOS 8.6 through 9.1 Install CD in your Amiga CDROM. If your CD filesystem does not support HFS CD's, please update it. The public domain CD filesystem, AmiCDFS, can be found on AmiNet and supports HFS CD's. Copy the file "Mac OS ROM" from the System Folder of the MacOS CD to the ROM drawer inside the iFUSION drawer. You need to change the name to remove the spaces. It may be called anything you like as long as there are no spaces in the name. You are now ready to run the iFUSION config program. Editing the Configuration File You can use the iFusion_Config script utility to create a new configuration file or to change (overwrite) an existing one. After you have installed iFUSION, this utility will be found in your "iFUSION" drawer. You may also use any text editor to alter the settings for iFUSION and to create additional configuration files. All file paths are relative to the the iFUSION drawer, unless you specify a complete path. For example, ROM/rom_91 would be iFUSION/ROM/rom_91, while DH1:mac_roms/rom_91 would be a complete path not in the iFUSION drawer. Any variables not specified here should not be altered unless you know what you are doing. RAM: 64 This variable specifies the emulator memory in MegaBytes; the minimum is 24 and the maximum is 2048. If the value you specify cannot be allocated, the minimum amount will be allocated instead. NVRAM: NVRAM This variable specifies the file that will hold the battery backup ram for the Mac; you may call this anything you wish. If the file is not found, it will be created and the emulation will start with a clear nvram image. ROM: ROM/rom_91 This variable specifies the rom file the emulator will use; this rom file MUST be from an NewWorld class MacOS install cd as described in the installation section. You can call the rom anything and place it anywhere by specifying the appropriate filepath with this variable. Device: {Device or File} {switches} This variable can appear multiple times (up to 12); it specifies a device or hardfile to be used and the options in how it is to be used. If the name after Devices: ends in a colon (:), it is assumed to be a block device; if it does not end in a colon, it is assumed to be a hardfile. Please note: hardfiles are SLOW; SLOW, SLOW, SLOW. You should use a device for best speed. The following switches can be used after the device or file name: -rw The device/hardfile is writeable. If the device is also specified as removeable, the protection status of the device can override this setting. E.G., if you specify -rw for a floppy, and then insert a write-protected floppy, it will show as locked in the emulation. -ro The device/hardfile will always show as locked in the emulation. -chg or -rem The device is removeable; is ignored for hardfiles. Be sure to throw the volume away on the Mac side before ejecting it; there is no warning if you eject it while it is still mounted on the Mac side. If a device has multiple HFS partitions on it, do not make it removeable. If you wish to use a floppy with the emulation, you need to specify PC0: as a removable device. You must also ensure all floppies are preformatted PC or Mac. -direct The device will transfer data straight to/from the Mac memory for large transfers. This may not work with all device controllers, and only works if the device block size is 512. -cd or -cdrom This switch is the same as -ro -chg. DisplaySize: width/height/vbl-rate This variable specifies the screen that the emulator will start with when booting up. The vbl-rate can be left off if you only have one rate created for the specified resolution, or if you don't know what it is. If you have multiple vertical blank rates defined for a particular screen resolution, you will probably want to find what they are and specify one here. DisplaySize: 640/480 Will use the 640 by 480 mode that is closest to the default rate of 60Hz. DisplaySize: 640/480/75 Will use the 640 by 480 mode that is closest to 75Hz. Depth: depth This variable specifies the depth of the boot screen the emulation willValid values are 1, 2, 4, 8, 15 and 32. You should use a display size and depth that matches the screen size and depth you will normally use with the emulation; if you do not, the emulation will switch screens part of the way through the boot process. VideoRefreshRate: frames-per-second This variable specifies the rate at which refreshed displays will be updated. Is currently ignored. VideoCardAPI: API This variable specifies the video API to use for the Mac video. Valid values are CGX, P96 or none. Is currently ignored as only CGX or none is currently supported. VideoDirectModes: {yes or no} This variable specifies whether the Mac will be allowed to use direct access to video memory. Should normally be set to yes. VideoRefreshedModes: {yes or no} This variable specifies whether the Mac will be allowed to use modes that require refreshing by the emulation. Should be set to no currently as refreshed modes are not yet supported. VideoAmigaModes: {yes or no} This variable specifies whether the Mac will be allowed to use Amiga video modes. Should be set to no if you have a video card. You can currently use Amiga 2 color modes with the emulation as they do not require refreshing. This also will allow the use of some old games that only work in B&W mode. CacheVidMem: {yes or no} This variable specifies whether the video memoy will be mapped by the PPC as cacheable (yes) or non- cacheable (no). Some cards are faster when set as cacheable; try it both ways with the video speed test in Speedometer to find which way is faster on your system. GammaCorrection: {one or three numbers} This variable specifies the brightness of the Mac display. 1.0 will leave the Mac palette unchanged; higher numbers will make the display brighter and smaller numbers will make the display darker. If one number is specified, all three colors (red, green, and blue) will use the same value; use three numbers to specify the three seperately. MouseResolution: 140 This variable specifies the counts per inch the Mac believes the mouse reports. You can change this to change the sensitivity of the mouse. HardwareMouse: {yes or no} This variable specifies whether the emulation will try to read the Amiga mouse at the hardware level (yes), or rely on mouse events from the input.device (no). Should normally be set to no; set to no also allows the use of some mouse alternatives like graphics tablets. KeyboardType: 2 This variable specifies the type of keyboard the emulation will report to the Mac; it also controls how the emulation maps certain keys. US or UK keyboards should use 2, and European keyboards should use 5. StartupSnd: file This variable specifies the file to be played when the emulation starts. This file can be anywhere and anything; it needs to be a raw sound file with stereo 16bit samples at 22KHz. PlayStartupSnd: {yes or no} This variable tells the emulator whether or not to play the startup sound file. If you hate hearing the tone every time you start the Mac, set it to no. DisableSnd: {yes or no} This variable specifies whether sound should be played; it should currently be set to yes as the sound driver for the Mac side is still being worked on. DisableSCSIDrvr: {yes or no} This variable specifies whether a SCSI interface is used; it should currently be set to yes as SCSI is still being developed. SCSIDEV: {Mac SCSI Unit} {SCSI Device/Amiga SCSI unit} {switches} This variable specifies the Mac side SCSI device unit number, the Amiga SCSI device name and unit number and -hw specifies real SCSI. This is currently ignored whilst SCSI is being developed. Running the Emulation iFusion must be run from cli. After launching the cli, set the current directory to the iFUSION drawer. Type iFUSION and press Return. This will run iFUSION with the default configuration file - config-vars. To run with another configuration file, type the filename after iFUSION on the command line before pressing Return. Configuration files must be in the same draw as the iFUSION executable. iFUSION comes with a project icon set to run iFUSION using IconX for Workbench users. iFUSION cannot be run from Workbench directly. When iFUSION launches, it needs to initially boot from the MacOS CD. Ensure that a compatible version is in the CD-ROM drive and mounted (on the Amiga side) prior to launching. Once the CD has booted, it will recognise your designated Mac partition and request to initialise it. Once this has completed, you can install the MacOS. When the OS has succesfully installed, you may restart the Mac. You may find that you need to disable the extensions as on first installation there may be incompatible extensions that try to launch. This is achieved by holding down the "shift" key immediately you see the "Happy Mac" upon startup. When the system has booted, it is a good idea to run the control panel "Extensions manager" and disable all unwanted extensions. Things to disable include: o All graphics card extensions (ATI) o Modem extensions o Networking extensions o Apple CD extensions o DVD extensions o Printer extensions You may need to play around with the setup that suits you best. It is worth remembering that many extensions, whilst not causing a problem, will eat precious memory and also slow down the system, so it is wise to take out what you do not need. If you are not familiar with the Mac, a good reference book is also a wise purchase. Current Limitations Only CGX V3 or V4 direct modes and two colour Amiga modes are useable. Attempting to select a refreshed mode will result in a blank screen. Picasso96 is not directly supported yet and the CGX emulation has not been tested with iFUSION. Sound is not yet debugged. Do not try to set the volume above 0. No warning is given when you eject a removeable media drive while it is still mounted on the Mac Desktop. This may result in corrupted data. Always throw the drive away on the Mac side first. You can also select the drive and press Amiga-E to dismount the volume on the Mac side. iFUSION has been tested with generic versions of MacOS 8.6 through 9.1 MacOS CD's that came with a Mac may or may not work. Drives larger than 4G have not been tested. iFUSION has code to support them, but it has not been verified yet. iFusion Frequently Asked Questions Below are some of the more frequently asked questions, along with other information we think you should be aware of. 1. What operating system versions can I run, and can I use any CD from any Mac? Is there a particular install option I need to select? Generic Install CD for versions 8.6 through 9.1 are currently recommended. Other versions have not been tested. Install CDs that come with a Mac most often do not work, you need the generic Install CD sold in computer stores. 2. Can I use my SCSI devices with the emulation? If not, will I be able to in the future? SCSI Block devices can be used by making an AmigaDOS mountlist covering the whole device; the emulation will find all the partitions on it. Other SCSI devices cannot be used currently, but we have a PowerMac SCSI device in the works. 3. I prefer Picasso 96. Will you support this? Eventually; currently, CGX is supported because it is what we normally use and has become the most common system. 4. Will Warp3D ever be supported and if so can I expect to run 3D Mac games at reasonable rates? A PowerMac 3D driver could be made, but other features have priority. When the other features are finished, work can be done on a 3D driver. 5. My hard drives seem slow compared to Fusion 68K. Why is this? The PowerMac still runs the device manager in 68K emulation; this means a native Mac program calls the native filesystem, the filesystems call the device manager with a switch to emulated 68K operation, the device manager calls a native PPC block driver with a switch back to ppc mode, the native ppc block driver calls the Amiga side to read/write the data, the ppc emulation call the Amiga device driver with a context switch to the 68K processor. Use a large disk buffer on the Mac side, (set in the Memory Control Panel) for best speed. An Amiga side drive cache program like FastCache can also help. 6. Can I use a printer with the emulation? If not, will I be able to in the future? Not currently; once serial/parallel support is added, printing with an appropriate driver will be available. 7. Can I use a modem with the emulation? If not, will I be able to in the future? Not yet; this is the same as question 7 since both serial and parallel for modems and printers are equivalent. 8. Will you ever support file transfer from Mac to amiga desktop? Yes; this feature is on the list. When we get through some of the other features, this one will be added. 9. Will you support colour Amiga screenmodes like in the 68K version? Yes; refreshed video modes and Picasso96 support are high on the list. Technical Support If you have problems running iFUSION, please first of all refer to the FAQ within this guide. This addresses the most commonly found problems. However, if you do not find the answer to your problem here, the best way to receive the direct support of the people who wrote the emulation is at the Microcode-Solutions support list. This can be joined by simply sending am email to: MSTech@topica.com You will also get the benefit of other users experience and assistance. You may also directly email: tech@microcode-solutions.com or technical@blittersoft.com WarpOS related problems should be directed to Sam Jordan at: s.jordan@haage-partner.com New product information may from time to time be available at: http://www.blittersoft.com and/or http://www.microcode-solutions.com Changes History Changes to V1.0 (12/03/01) First release No changes. Thanks! Blittersoft and Microcode-Solutions would like to thank the following people who have assisted during the making of iFUSION: Haage & Partner GmbH for Storm C GCC Sam Jordan for his excellent support/fixes with WarpOS issues Steffen Haeuser for his continued support Copyright and Trademark Acknowledgements Apple, and the Apple logo, Mac, and Macintosh are the registered trademarks and Finder, and MultiFinder are trademarks of Apple Computer, Inc. Amiga is a registered trademark of Amiga Inc. This manual may not be reproduced in any form including, but not limited to, facsimiles, electro-magnetic media, optical media, telephone modem, or scanners, without express written permission of Blittersoft.